From eae0cfeb286e66ffb5155f1a79b90583a127a68b Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Fri, 5 Jul 2024 16:46:27 +0200 Subject: [PATCH] fix: update the pnpm bundled with the action to 7.33.5 (#138) close #135 --- dist/pnpm.js | 305163 +++++++++++++++++++++++++++++++----------------- 1 file changed, 198226 insertions(+), 106937 deletions(-) diff --git a/dist/pnpm.js b/dist/pnpm.js index 0bceb05..bb2df8a 100644 --- a/dist/pnpm.js +++ b/dist/pnpm.js @@ -1,28 +1,58 @@ +"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; -var __markAsModule = (target) => __defProp(target, "__esModule", { value: true }); +var __esm = (fn2, res) => function __init() { + return fn2 && (res = (0, fn2[__getOwnPropNames(fn2)[0]])(fn2 = 0)), res; +}; var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); }; -var __reExport = (target, module2, desc) => { - if (module2 && typeof module2 === "object" || typeof module2 === "function") { - for (let key of __getOwnPropNames(module2)) - if (!__hasOwnProp.call(target, key) && key !== "default") - __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable }); +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } - return target; + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // 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. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var __accessCheck = (obj, member, msg) => { + if (!member.has(obj)) + throw TypeError("Cannot " + msg); +}; +var __privateGet = (obj, member, getter) => { + __accessCheck(obj, member, "read from private field"); + return getter ? getter.call(obj) : member.get(obj); }; -var __toModule = (module2) => { - return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2); +var __privateAdd = (obj, member, value) => { + if (member.has(obj)) + throw TypeError("Cannot add the same private member more than once"); + member instanceof WeakSet ? member.add(obj) : member.set(obj, value); +}; +var __privateMethod = (obj, member, method) => { + __accessCheck(obj, member, "access private method"); + return method; }; -// ../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/polyfills.js +// ../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/polyfills.js var require_polyfills = __commonJS({ - "../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/polyfills.js"(exports2, module2) { + "../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/polyfills.js"(exports2, module2) { var constants = require("constants"); var origCwd = process.cwd; var cwd = null; @@ -47,56 +77,56 @@ var require_polyfills = __commonJS({ } var chdir; module2.exports = patch; - function patch(fs) { + function patch(fs2) { if (constants.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { - patchLchmod(fs); - } - if (!fs.lutimes) { - patchLutimes(fs); - } - fs.chown = chownFix(fs.chown); - fs.fchown = chownFix(fs.fchown); - fs.lchown = chownFix(fs.lchown); - fs.chmod = chmodFix(fs.chmod); - fs.fchmod = chmodFix(fs.fchmod); - fs.lchmod = chmodFix(fs.lchmod); - fs.chownSync = chownFixSync(fs.chownSync); - fs.fchownSync = chownFixSync(fs.fchownSync); - fs.lchownSync = chownFixSync(fs.lchownSync); - fs.chmodSync = chmodFixSync(fs.chmodSync); - fs.fchmodSync = chmodFixSync(fs.fchmodSync); - fs.lchmodSync = chmodFixSync(fs.lchmodSync); - fs.stat = statFix(fs.stat); - fs.fstat = statFix(fs.fstat); - fs.lstat = statFix(fs.lstat); - fs.statSync = statFixSync(fs.statSync); - fs.fstatSync = statFixSync(fs.fstatSync); - fs.lstatSync = statFixSync(fs.lstatSync); - if (!fs.lchmod) { - fs.lchmod = function(path, mode, cb) { + patchLchmod(fs2); + } + if (!fs2.lutimes) { + patchLutimes(fs2); + } + fs2.chown = chownFix(fs2.chown); + fs2.fchown = chownFix(fs2.fchown); + fs2.lchown = chownFix(fs2.lchown); + fs2.chmod = chmodFix(fs2.chmod); + fs2.fchmod = chmodFix(fs2.fchmod); + fs2.lchmod = chmodFix(fs2.lchmod); + fs2.chownSync = chownFixSync(fs2.chownSync); + fs2.fchownSync = chownFixSync(fs2.fchownSync); + fs2.lchownSync = chownFixSync(fs2.lchownSync); + fs2.chmodSync = chmodFixSync(fs2.chmodSync); + fs2.fchmodSync = chmodFixSync(fs2.fchmodSync); + fs2.lchmodSync = chmodFixSync(fs2.lchmodSync); + fs2.stat = statFix(fs2.stat); + fs2.fstat = statFix(fs2.fstat); + fs2.lstat = statFix(fs2.lstat); + fs2.statSync = statFixSync(fs2.statSync); + fs2.fstatSync = statFixSync(fs2.fstatSync); + fs2.lstatSync = statFixSync(fs2.lstatSync); + if (fs2.chmod && !fs2.lchmod) { + fs2.lchmod = function(path2, mode, cb) { if (cb) process.nextTick(cb); }; - fs.lchmodSync = function() { + fs2.lchmodSync = function() { }; } - if (!fs.lchown) { - fs.lchown = function(path, uid, gid, cb) { + if (fs2.chown && !fs2.lchown) { + fs2.lchown = function(path2, uid, gid, cb) { if (cb) process.nextTick(cb); }; - fs.lchownSync = function() { + fs2.lchownSync = function() { }; } if (platform === "win32") { - fs.rename = function(fs$rename) { - return function(from, to, cb) { + fs2.rename = typeof fs2.rename !== "function" ? fs2.rename : function(fs$rename) { + function rename(from, to, cb) { var start = Date.now(); var backoff = 0; fs$rename(from, to, function CB(er) { - if (er && (er.code === "EACCES" || er.code === "EPERM") && Date.now() - start < 6e4) { + if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) { setTimeout(function() { - fs.stat(to, function(stater, st) { + fs2.stat(to, function(stater, st) { if (stater && stater.code === "ENOENT") fs$rename(from, to, CB); else @@ -110,10 +140,13 @@ var require_polyfills = __commonJS({ if (cb) cb(er); }); - }; - }(fs.rename); + } + if (Object.setPrototypeOf) + Object.setPrototypeOf(rename, fs$rename); + return rename; + }(fs2.rename); } - fs.read = function(fs$read) { + fs2.read = typeof fs2.read !== "function" ? fs2.read : function(fs$read) { function read(fd, buffer, offset, length, position, callback_) { var callback; if (callback_ && typeof callback_ === "function") { @@ -121,23 +154,23 @@ var require_polyfills = __commonJS({ callback = function(er, _, __) { if (er && er.code === "EAGAIN" && eagCounter < 10) { eagCounter++; - return fs$read.call(fs, fd, buffer, offset, length, position, callback); + return fs$read.call(fs2, fd, buffer, offset, length, position, callback); } callback_.apply(this, arguments); }; } - return fs$read.call(fs, fd, buffer, offset, length, position, callback); + return fs$read.call(fs2, fd, buffer, offset, length, position, callback); } if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read); return read; - }(fs.read); - fs.readSync = function(fs$readSync) { + }(fs2.read); + fs2.readSync = typeof fs2.readSync !== "function" ? fs2.readSync : function(fs$readSync) { return function(fd, buffer, offset, length, position) { var eagCounter = 0; while (true) { try { - return fs$readSync.call(fs, fd, buffer, offset, length, position); + return fs$readSync.call(fs2, fd, buffer, offset, length, position); } catch (er) { if (er.code === "EAGAIN" && eagCounter < 10) { eagCounter++; @@ -147,85 +180,90 @@ var require_polyfills = __commonJS({ } } }; - }(fs.readSync); - function patchLchmod(fs2) { - fs2.lchmod = function(path, mode, callback) { - fs2.open(path, constants.O_WRONLY | constants.O_SYMLINK, mode, function(err, fd) { - if (err) { - if (callback) - callback(err); - return; - } - fs2.fchmod(fd, mode, function(err2) { - fs2.close(fd, function(err22) { + }(fs2.readSync); + function patchLchmod(fs3) { + fs3.lchmod = function(path2, mode, callback) { + fs3.open( + path2, + constants.O_WRONLY | constants.O_SYMLINK, + mode, + function(err, fd) { + if (err) { if (callback) - callback(err2 || err22); + callback(err); + return; + } + fs3.fchmod(fd, mode, function(err2) { + fs3.close(fd, function(err22) { + if (callback) + callback(err2 || err22); + }); }); - }); - }); + } + ); }; - fs2.lchmodSync = function(path, mode) { - var fd = fs2.openSync(path, constants.O_WRONLY | constants.O_SYMLINK, mode); + fs3.lchmodSync = function(path2, mode) { + var fd = fs3.openSync(path2, constants.O_WRONLY | constants.O_SYMLINK, mode); var threw = true; var ret; try { - ret = fs2.fchmodSync(fd, mode); + ret = fs3.fchmodSync(fd, mode); threw = false; } finally { if (threw) { try { - fs2.closeSync(fd); + fs3.closeSync(fd); } catch (er) { } } else { - fs2.closeSync(fd); + fs3.closeSync(fd); } } return ret; }; } - function patchLutimes(fs2) { - if (constants.hasOwnProperty("O_SYMLINK")) { - fs2.lutimes = function(path, at, mt, cb) { - fs2.open(path, constants.O_SYMLINK, function(er, fd) { + function patchLutimes(fs3) { + if (constants.hasOwnProperty("O_SYMLINK") && fs3.futimes) { + fs3.lutimes = function(path2, at, mt, cb) { + fs3.open(path2, constants.O_SYMLINK, function(er, fd) { if (er) { if (cb) cb(er); return; } - fs2.futimes(fd, at, mt, function(er2) { - fs2.close(fd, function(er22) { + fs3.futimes(fd, at, mt, function(er2) { + fs3.close(fd, function(er22) { if (cb) cb(er2 || er22); }); }); }); }; - fs2.lutimesSync = function(path, at, mt) { - var fd = fs2.openSync(path, constants.O_SYMLINK); + fs3.lutimesSync = function(path2, at, mt) { + var fd = fs3.openSync(path2, constants.O_SYMLINK); var ret; var threw = true; try { - ret = fs2.futimesSync(fd, at, mt); + ret = fs3.futimesSync(fd, at, mt); threw = false; } finally { if (threw) { try { - fs2.closeSync(fd); + fs3.closeSync(fd); } catch (er) { } } else { - fs2.closeSync(fd); + fs3.closeSync(fd); } } return ret; }; - } else { - fs2.lutimes = function(_a, _b, _c, cb) { + } else if (fs3.futimes) { + fs3.lutimes = function(_a, _b, _c, cb) { if (cb) process.nextTick(cb); }; - fs2.lutimesSync = function() { + fs3.lutimesSync = function() { }; } } @@ -233,7 +271,7 @@ var require_polyfills = __commonJS({ if (!orig) return orig; return function(target, mode, cb) { - return orig.call(fs, target, mode, function(er) { + return orig.call(fs2, target, mode, function(er) { if (chownErOk(er)) er = null; if (cb) @@ -246,7 +284,7 @@ var require_polyfills = __commonJS({ return orig; return function(target, mode) { try { - return orig.call(fs, target, mode); + return orig.call(fs2, target, mode); } catch (er) { if (!chownErOk(er)) throw er; @@ -257,7 +295,7 @@ var require_polyfills = __commonJS({ if (!orig) return orig; return function(target, uid, gid, cb) { - return orig.call(fs, target, uid, gid, function(er) { + return orig.call(fs2, target, uid, gid, function(er) { if (chownErOk(er)) er = null; if (cb) @@ -270,7 +308,7 @@ var require_polyfills = __commonJS({ return orig; return function(target, uid, gid) { try { - return orig.call(fs, target, uid, gid); + return orig.call(fs2, target, uid, gid); } catch (er) { if (!chownErOk(er)) throw er; @@ -295,18 +333,20 @@ var require_polyfills = __commonJS({ if (cb) cb.apply(this, arguments); } - return options ? orig.call(fs, target, options, callback) : orig.call(fs, target, callback); + return options ? orig.call(fs2, target, options, callback) : orig.call(fs2, target, callback); }; } function statFixSync(orig) { if (!orig) return orig; return function(target, options) { - var stats = options ? orig.call(fs, target, options) : orig.call(fs, target); - if (stats.uid < 0) - stats.uid += 4294967296; - if (stats.gid < 0) - stats.gid += 4294967296; + var stats = options ? orig.call(fs2, target, options) : orig.call(fs2, target); + if (stats) { + if (stats.uid < 0) + stats.uid += 4294967296; + if (stats.gid < 0) + stats.gid += 4294967296; + } return stats; }; } @@ -326,22 +366,22 @@ var require_polyfills = __commonJS({ } }); -// ../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/legacy-streams.js +// ../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/legacy-streams.js var require_legacy_streams = __commonJS({ - "../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { + "../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { var Stream = require("stream").Stream; module2.exports = legacy; - function legacy(fs) { + function legacy(fs2) { return { ReadStream, WriteStream }; - function ReadStream(path, options) { + function ReadStream(path2, options) { if (!(this instanceof ReadStream)) - return new ReadStream(path, options); + return new ReadStream(path2, options); Stream.call(this); var self2 = this; - this.path = path; + this.path = path2; this.fd = null; this.readable = true; this.paused = false; @@ -357,12 +397,12 @@ var require_legacy_streams = __commonJS({ if (this.encoding) this.setEncoding(this.encoding); if (this.start !== void 0) { - if (typeof this.start !== "number") { + if ("number" !== typeof this.start) { throw TypeError("start must be a Number"); } if (this.end === void 0) { this.end = Infinity; - } else if (typeof this.end !== "number") { + } else if ("number" !== typeof this.end) { throw TypeError("end must be a Number"); } if (this.start > this.end) { @@ -376,7 +416,7 @@ var require_legacy_streams = __commonJS({ }); return; } - fs.open(this.path, this.flags, this.mode, function(err, fd) { + fs2.open(this.path, this.flags, this.mode, function(err, fd) { if (err) { self2.emit("error", err); self2.readable = false; @@ -387,11 +427,11 @@ var require_legacy_streams = __commonJS({ self2._read(); }); } - function WriteStream(path, options) { + function WriteStream(path2, options) { if (!(this instanceof WriteStream)) - return new WriteStream(path, options); + return new WriteStream(path2, options); Stream.call(this); - this.path = path; + this.path = path2; this.fd = null; this.writable = true; this.flags = "w"; @@ -405,7 +445,7 @@ var require_legacy_streams = __commonJS({ this[key] = options[key]; } if (this.start !== void 0) { - if (typeof this.start !== "number") { + if ("number" !== typeof this.start) { throw TypeError("start must be a Number"); } if (this.start < 0) { @@ -416,7 +456,7 @@ var require_legacy_streams = __commonJS({ this.busy = false; this._queue = []; if (this.fd === null) { - this._open = fs.open; + this._open = fs2.open; this._queue.push([this._open, this.path, this.flags, this.mode, void 0]); this.flush(); } @@ -425,9 +465,9 @@ var require_legacy_streams = __commonJS({ } }); -// ../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/clone.js +// ../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/clone.js var require_clone = __commonJS({ - "../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/clone.js"(exports2, module2) { + "../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/clone.js"(exports2, module2) { "use strict"; module2.exports = clone; var getPrototypeOf = Object.getPrototypeOf || function(obj) { @@ -439,7 +479,7 @@ var require_clone = __commonJS({ if (obj instanceof Object) var copy = { __proto__: getPrototypeOf(obj) }; else - var copy = Object.create(null); + var copy = /* @__PURE__ */ Object.create(null); Object.getOwnPropertyNames(obj).forEach(function(key) { Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key)); }); @@ -448,10 +488,10 @@ var require_clone = __commonJS({ } }); -// ../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/graceful-fs.js +// ../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/graceful-fs.js var require_graceful_fs = __commonJS({ - "../../node_modules/.pnpm/graceful-fs@4.2.8/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { - var fs = require("fs"); + "../node_modules/.pnpm/graceful-fs@4.2.11(patch_hash=66ismxrei24sd5iv7rpq4zc5hq)/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { + var fs2 = require("fs"); var polyfills = require_polyfills(); var legacy = require_legacy_streams(); var clone = require_clone(); @@ -483,12 +523,12 @@ var require_graceful_fs = __commonJS({ m = "GFS4: " + m.split(/\n/).join("\nGFS4: "); console.error(m); }; - if (!fs[gracefulQueue]) { + if (!fs2[gracefulQueue]) { queue = global[gracefulQueue] || []; - publishQueue(fs, queue); - fs.close = function(fs$close) { + publishQueue(fs2, queue); + fs2.close = function(fs$close) { function close(fd, cb) { - return fs$close.call(fs, fd, function(err) { + return fs$close.call(fs2, fd, function(err) { if (!err) { resetQueue(); } @@ -500,48 +540,48 @@ var require_graceful_fs = __commonJS({ value: fs$close }); return close; - }(fs.close); - fs.closeSync = function(fs$closeSync) { + }(fs2.close); + fs2.closeSync = function(fs$closeSync) { function closeSync(fd) { - fs$closeSync.apply(fs, arguments); + fs$closeSync.apply(fs2, arguments); resetQueue(); } Object.defineProperty(closeSync, previousSymbol, { value: fs$closeSync }); return closeSync; - }(fs.closeSync); + }(fs2.closeSync); if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) { process.on("exit", function() { - debug(fs[gracefulQueue]); - require("assert").equal(fs[gracefulQueue].length, 0); + debug(fs2[gracefulQueue]); + require("assert").equal(fs2[gracefulQueue].length, 0); }); } } var queue; if (!global[gracefulQueue]) { - publishQueue(global, fs[gracefulQueue]); - } - module2.exports = patch(clone(fs)); - if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs.__patched) { - module2.exports = patch(fs); - fs.__patched = true; - } - function patch(fs2) { - polyfills(fs2); - fs2.gracefulify = patch; - fs2.createReadStream = createReadStream; - fs2.createWriteStream = createWriteStream; - var fs$readFile = fs2.readFile; - fs2.readFile = readFile; - function readFile(path, options, cb) { + publishQueue(global, fs2[gracefulQueue]); + } + module2.exports = patch(clone(fs2)); + if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs2.__patched) { + module2.exports = patch(fs2); + fs2.__patched = true; + } + function patch(fs3) { + polyfills(fs3); + fs3.gracefulify = patch; + fs3.createReadStream = createReadStream; + fs3.createWriteStream = createWriteStream; + var fs$readFile = fs3.readFile; + fs3.readFile = readFile; + function readFile(path2, options, cb) { if (typeof options === "function") cb = options, options = null; - return go$readFile(path, options, cb); - function go$readFile(path2, options2, cb2, startTime) { - return fs$readFile(path2, options2, function(err) { + return go$readFile(path2, options, cb); + function go$readFile(path3, options2, cb2, startTime) { + return fs$readFile(path3, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) - enqueue([go$readFile, [path2, options2, cb2], err, startTime || Date.now(), Date.now()]); + enqueue([go$readFile, [path3, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); @@ -549,16 +589,16 @@ var require_graceful_fs = __commonJS({ }); } } - var fs$writeFile = fs2.writeFile; - fs2.writeFile = writeFile; - function writeFile(path, data, options, cb) { + var fs$writeFile = fs3.writeFile; + fs3.writeFile = writeFile; + function writeFile(path2, data, options, cb) { if (typeof options === "function") cb = options, options = null; - return go$writeFile(path, data, options, cb); - function go$writeFile(path2, data2, options2, cb2, startTime) { - return fs$writeFile(path2, data2, options2, function(err) { + return go$writeFile(path2, data, options, cb); + function go$writeFile(path3, data2, options2, cb2, startTime) { + return fs$writeFile(path3, data2, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) - enqueue([go$writeFile, [path2, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + enqueue([go$writeFile, [path3, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); @@ -566,17 +606,17 @@ var require_graceful_fs = __commonJS({ }); } } - var fs$appendFile = fs2.appendFile; + var fs$appendFile = fs3.appendFile; if (fs$appendFile) - fs2.appendFile = appendFile; - function appendFile(path, data, options, cb) { + fs3.appendFile = appendFile; + function appendFile(path2, data, options, cb) { if (typeof options === "function") cb = options, options = null; - return go$appendFile(path, data, options, cb); - function go$appendFile(path2, data2, options2, cb2, startTime) { - return fs$appendFile(path2, data2, options2, function(err) { + return go$appendFile(path2, data, options, cb); + function go$appendFile(path3, data2, options2, cb2, startTime) { + return fs$appendFile(path3, data2, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) - enqueue([go$appendFile, [path2, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + enqueue([go$appendFile, [path3, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); @@ -584,9 +624,9 @@ var require_graceful_fs = __commonJS({ }); } } - var fs$copyFile = fs2.copyFile; + var fs$copyFile = fs3.copyFile; if (fs$copyFile) - fs2.copyFile = copyFile; + fs3.copyFile = copyFile; function copyFile(src, dest, flags, cb) { if (typeof flags === "function") { cb = flags; @@ -595,7 +635,7 @@ var require_graceful_fs = __commonJS({ return go$copyFile(src, dest, flags, cb); function go$copyFile(src2, dest2, flags2, cb2, startTime) { return fs$copyFile(src2, dest2, flags2, function(err) { - if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + if (err && (err.code === "EMFILE" || err.code === "ENFILE" || err.code === "EBUSY")) enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") @@ -604,41 +644,63 @@ var require_graceful_fs = __commonJS({ }); } } - var fs$readdir = fs2.readdir; - fs2.readdir = readdir; - function readdir(path, options, cb) { + var fs$readdir = fs3.readdir; + fs3.readdir = readdir; + var noReaddirOptionVersions = /^v[0-5]\./; + function readdir(path2, options, cb) { if (typeof options === "function") cb = options, options = null; - return go$readdir(path, options, cb); - function go$readdir(path2, options2, cb2, startTime) { - return fs$readdir(path2, options2, function(err, files) { + var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path3, options2, cb2, startTime) { + return fs$readdir(path3, fs$readdirCallback( + path3, + options2, + cb2, + startTime + )); + } : function go$readdir2(path3, options2, cb2, startTime) { + return fs$readdir(path3, options2, fs$readdirCallback( + path3, + options2, + cb2, + startTime + )); + }; + return go$readdir(path2, options, cb); + function fs$readdirCallback(path3, options2, cb2, startTime) { + return function(err, files) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) - enqueue([go$readdir, [path2, options2, cb2], err, startTime || Date.now(), Date.now()]); + enqueue([ + go$readdir, + [path3, options2, cb2], + err, + startTime || Date.now(), + Date.now() + ]); else { if (files && files.sort) files.sort(); if (typeof cb2 === "function") cb2.call(this, err, files); } - }); + }; } } if (process.version.substr(0, 4) === "v0.8") { - var legStreams = legacy(fs2); + var legStreams = legacy(fs3); ReadStream = legStreams.ReadStream; WriteStream = legStreams.WriteStream; } - var fs$ReadStream = fs2.ReadStream; + var fs$ReadStream = fs3.ReadStream; if (fs$ReadStream) { ReadStream.prototype = Object.create(fs$ReadStream.prototype); ReadStream.prototype.open = ReadStream$open; } - var fs$WriteStream = fs2.WriteStream; + var fs$WriteStream = fs3.WriteStream; if (fs$WriteStream) { WriteStream.prototype = Object.create(fs$WriteStream.prototype); WriteStream.prototype.open = WriteStream$open; } - Object.defineProperty(fs2, "ReadStream", { + Object.defineProperty(fs3, "ReadStream", { get: function() { return ReadStream; }, @@ -648,7 +710,7 @@ var require_graceful_fs = __commonJS({ enumerable: true, configurable: true }); - Object.defineProperty(fs2, "WriteStream", { + Object.defineProperty(fs3, "WriteStream", { get: function() { return WriteStream; }, @@ -659,7 +721,7 @@ var require_graceful_fs = __commonJS({ configurable: true }); var FileReadStream = ReadStream; - Object.defineProperty(fs2, "FileReadStream", { + Object.defineProperty(fs3, "FileReadStream", { get: function() { return FileReadStream; }, @@ -670,7 +732,7 @@ var require_graceful_fs = __commonJS({ configurable: true }); var FileWriteStream = WriteStream; - Object.defineProperty(fs2, "FileWriteStream", { + Object.defineProperty(fs3, "FileWriteStream", { get: function() { return FileWriteStream; }, @@ -680,7 +742,7 @@ var require_graceful_fs = __commonJS({ enumerable: true, configurable: true }); - function ReadStream(path, options) { + function ReadStream(path2, options) { if (this instanceof ReadStream) return fs$ReadStream.apply(this, arguments), this; else @@ -700,7 +762,7 @@ var require_graceful_fs = __commonJS({ } }); } - function WriteStream(path, options) { + function WriteStream(path2, options) { if (this instanceof WriteStream) return fs$WriteStream.apply(this, arguments), this; else @@ -718,22 +780,22 @@ var require_graceful_fs = __commonJS({ } }); } - function createReadStream(path, options) { - return new fs2.ReadStream(path, options); + function createReadStream(path2, options) { + return new fs3.ReadStream(path2, options); } - function createWriteStream(path, options) { - return new fs2.WriteStream(path, options); + function createWriteStream(path2, options) { + return new fs3.WriteStream(path2, options); } - var fs$open = fs2.open; - fs2.open = open; - function open(path, flags, mode, cb) { + var fs$open = fs3.open; + fs3.open = open; + function open(path2, flags, mode, cb) { if (typeof mode === "function") cb = mode, mode = null; - return go$open(path, flags, mode, cb); - function go$open(path2, flags2, mode2, cb2, startTime) { - return fs$open(path2, flags2, mode2, function(err, fd) { + return go$open(path2, flags, mode, cb); + function go$open(path3, flags2, mode2, cb2, startTime) { + return fs$open(path3, flags2, mode2, function(err, fd) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) - enqueue([go$open, [path2, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]); + enqueue([go$open, [path3, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); @@ -741,20 +803,20 @@ var require_graceful_fs = __commonJS({ }); } } - return fs2; + return fs3; } function enqueue(elem) { debug("ENQUEUE", elem[0].name, elem[1]); - fs[gracefulQueue].push(elem); + fs2[gracefulQueue].push(elem); retry(); } var retryTimer; function resetQueue() { var now = Date.now(); - for (var i = 0; i < fs[gracefulQueue].length; ++i) { - if (fs[gracefulQueue][i].length > 2) { - fs[gracefulQueue][i][3] = now; - fs[gracefulQueue][i][4] = now; + for (var i = 0; i < fs2[gracefulQueue].length; ++i) { + if (fs2[gracefulQueue][i].length > 2) { + fs2[gracefulQueue][i][3] = now; + fs2[gracefulQueue][i][4] = now; } } retry(); @@ -762,9 +824,9 @@ var require_graceful_fs = __commonJS({ function retry() { clearTimeout(retryTimer); retryTimer = void 0; - if (fs[gracefulQueue].length === 0) + if (fs2[gracefulQueue].length === 0) return; - var elem = fs[gracefulQueue].shift(); + var elem = fs2[gracefulQueue].shift(); var fn2 = elem[0]; var args2 = elem[1]; var err = elem[2]; @@ -786,7 +848,7 @@ var require_graceful_fs = __commonJS({ debug("RETRY", fn2.name, args2); fn2.apply(null, args2.concat([startTime])); } else { - fs[gracefulQueue].push(elem); + fs2[gracefulQueue].push(elem); } } if (retryTimer === void 0) { @@ -796,9 +858,9 @@ var require_graceful_fs = __commonJS({ } }); -// ../../node_modules/.pnpm/strip-bom@4.0.0/node_modules/strip-bom/index.js +// ../node_modules/.pnpm/strip-bom@4.0.0/node_modules/strip-bom/index.js var require_strip_bom = __commonJS({ - "../../node_modules/.pnpm/strip-bom@4.0.0/node_modules/strip-bom/index.js"(exports2, module2) { + "../node_modules/.pnpm/strip-bom@4.0.0/node_modules/strip-bom/index.js"(exports2, module2) { "use strict"; module2.exports = (string) => { if (typeof string !== "string") { @@ -812,9 +874,9 @@ var require_strip_bom = __commonJS({ } }); -// ../../node_modules/.pnpm/is-arrayish@0.2.1/node_modules/is-arrayish/index.js +// ../node_modules/.pnpm/is-arrayish@0.2.1/node_modules/is-arrayish/index.js var require_is_arrayish = __commonJS({ - "../../node_modules/.pnpm/is-arrayish@0.2.1/node_modules/is-arrayish/index.js"(exports2, module2) { + "../node_modules/.pnpm/is-arrayish@0.2.1/node_modules/is-arrayish/index.js"(exports2, module2) { "use strict"; module2.exports = function isArrayish(obj) { if (!obj) { @@ -825,9 +887,9 @@ var require_is_arrayish = __commonJS({ } }); -// ../../node_modules/.pnpm/error-ex@1.3.2/node_modules/error-ex/index.js +// ../node_modules/.pnpm/error-ex@1.3.2/node_modules/error-ex/index.js var require_error_ex = __commonJS({ - "../../node_modules/.pnpm/error-ex@1.3.2/node_modules/error-ex/index.js"(exports2, module2) { + "../node_modules/.pnpm/error-ex@1.3.2/node_modules/error-ex/index.js"(exports2, module2) { "use strict"; var util = require("util"); var isArrayish = require_is_arrayish(); @@ -935,9 +997,9 @@ var require_error_ex = __commonJS({ } }); -// ../../node_modules/.pnpm/json-parse-even-better-errors@2.3.1/node_modules/json-parse-even-better-errors/index.js +// ../node_modules/.pnpm/json-parse-even-better-errors@2.3.1/node_modules/json-parse-even-better-errors/index.js var require_json_parse_even_better_errors = __commonJS({ - "../../node_modules/.pnpm/json-parse-even-better-errors@2.3.1/node_modules/json-parse-even-better-errors/index.js"(exports2, module2) { + "../node_modules/.pnpm/json-parse-even-better-errors@2.3.1/node_modules/json-parse-even-better-errors/index.js"(exports2, module2) { "use strict"; var hexify = (char) => { const h = char.charCodeAt(0).toString(16).toUpperCase(); @@ -997,16 +1059,18 @@ var require_json_parse_even_better_errors = __commonJS({ context = context || 20; try { const [, newline = "\n", indent = " "] = parseText.match(emptyRE) || parseText.match(formatRE) || [, "", ""]; - const result = JSON.parse(parseText, reviver); - if (result && typeof result === "object") { - result[kNewline] = newline; - result[kIndent] = indent; + const result2 = JSON.parse(parseText, reviver); + if (result2 && typeof result2 === "object") { + result2[kNewline] = newline; + result2[kIndent] = indent; } - return result; + return result2; } catch (e) { if (typeof txt !== "string" && !Buffer.isBuffer(txt)) { const isEmptyArray = Array.isArray(txt) && txt.length === 0; - throw Object.assign(new TypeError(`Cannot parse ${isEmptyArray ? "an empty array" : String(txt)}`), { + throw Object.assign(new TypeError( + `Cannot parse ${isEmptyArray ? "an empty array" : String(txt)}` + ), { code: "EJSONPARSE", systemError: e }); @@ -1026,73 +1090,78 @@ var require_json_parse_even_better_errors = __commonJS({ } }); -// ../../node_modules/.pnpm/lines-and-columns@1.1.6/node_modules/lines-and-columns/dist/index.js -var require_dist = __commonJS({ - "../../node_modules/.pnpm/lines-and-columns@1.1.6/node_modules/lines-and-columns/dist/index.js"(exports2) { +// ../node_modules/.pnpm/lines-and-columns@1.2.4/node_modules/lines-and-columns/build/index.js +var require_build = __commonJS({ + "../node_modules/.pnpm/lines-and-columns@1.2.4/node_modules/lines-and-columns/build/index.js"(exports2) { "use strict"; + exports2.__esModule = true; + exports2.LinesAndColumns = void 0; var LF = "\n"; var CR = "\r"; - var LinesAndColumns = function() { - function LinesAndColumns2(string) { - this.string = string; - var offsets = [0]; - for (var offset = 0; offset < string.length; ) { - switch (string[offset]) { - case LF: - offset += LF.length; - offsets.push(offset); - break; - case CR: - offset += CR.length; - if (string[offset] === LF) { + var LinesAndColumns = ( + /** @class */ + function() { + function LinesAndColumns2(string) { + this.string = string; + var offsets = [0]; + for (var offset = 0; offset < string.length; ) { + switch (string[offset]) { + case LF: offset += LF.length; - } - offsets.push(offset); - break; - default: - offset++; - break; + offsets.push(offset); + break; + case CR: + offset += CR.length; + if (string[offset] === LF) { + offset += LF.length; + } + offsets.push(offset); + break; + default: + offset++; + break; + } } + this.offsets = offsets; } - this.offsets = offsets; - } - LinesAndColumns2.prototype.locationForIndex = function(index) { - if (index < 0 || index > this.string.length) { - return null; - } - var line = 0; - var offsets = this.offsets; - while (offsets[line + 1] <= index) { - line++; - } - var column = index - offsets[line]; - return { line, column }; - }; - LinesAndColumns2.prototype.indexForLocation = function(location) { - var line = location.line, column = location.column; - if (line < 0 || line >= this.offsets.length) { - return null; - } - if (column < 0 || column > this.lengthOfLine(line)) { - return null; - } - return this.offsets[line] + column; - }; - LinesAndColumns2.prototype.lengthOfLine = function(line) { - var offset = this.offsets[line]; - var nextOffset = line === this.offsets.length - 1 ? this.string.length : this.offsets[line + 1]; - return nextOffset - offset; - }; - return LinesAndColumns2; - }(); - exports2.__esModule = true; + LinesAndColumns2.prototype.locationForIndex = function(index) { + if (index < 0 || index > this.string.length) { + return null; + } + var line = 0; + var offsets = this.offsets; + while (offsets[line + 1] <= index) { + line++; + } + var column = index - offsets[line]; + return { line, column }; + }; + LinesAndColumns2.prototype.indexForLocation = function(location) { + var line = location.line, column = location.column; + if (line < 0 || line >= this.offsets.length) { + return null; + } + if (column < 0 || column > this.lengthOfLine(line)) { + return null; + } + return this.offsets[line] + column; + }; + LinesAndColumns2.prototype.lengthOfLine = function(line) { + var offset = this.offsets[line]; + var nextOffset = line === this.offsets.length - 1 ? this.string.length : this.offsets[line + 1]; + return nextOffset - offset; + }; + return LinesAndColumns2; + }() + ); + exports2.LinesAndColumns = LinesAndColumns; exports2["default"] = LinesAndColumns; } }); -// ../../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js +// ../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js var require_js_tokens = __commonJS({ - "../../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js"(exports2) { + "../node_modules/.pnpm/js-tokens@4.0.0/node_modules/js-tokens/index.js"(exports2) { Object.defineProperty(exports2, "__esModule", { value: true }); @@ -1120,23 +1189,23 @@ var require_js_tokens = __commonJS({ } }); -// ../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/identifier.js +// ../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/identifier.js var require_identifier = __commonJS({ - "../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/identifier.js"(exports2) { + "../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/identifier.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isIdentifierStart = isIdentifierStart; exports2.isIdentifierChar = isIdentifierChar; exports2.isIdentifierName = isIdentifierName; + exports2.isIdentifierStart = isIdentifierStart; var nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC"; - var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F"; + var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F"; var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; - var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 85, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 190, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1070, 4050, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 46, 2, 18, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 482, 44, 11, 6, 17, 0, 322, 29, 19, 43, 1269, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4152, 8, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938]; - var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 154, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 19306, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 262, 6, 10, 9, 357, 0, 62, 13, 1495, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; + var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938, 6, 4191]; + var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; function isInAstralSet(code, set) { let pos = 65536; for (let i = 0, length = set.length; i < length; i += 2) { @@ -1205,18 +1274,18 @@ var require_identifier = __commonJS({ } }); -// ../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/keyword.js +// ../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/keyword.js var require_keyword = __commonJS({ - "../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/keyword.js"(exports2) { + "../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/keyword.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isKeyword = isKeyword; exports2.isReservedWord = isReservedWord; - exports2.isStrictReservedWord = isStrictReservedWord; exports2.isStrictBindOnlyReservedWord = isStrictBindOnlyReservedWord; exports2.isStrictBindReservedWord = isStrictBindReservedWord; - exports2.isKeyword = isKeyword; + exports2.isStrictReservedWord = isStrictReservedWord; var reservedWords = { keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"], strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"], @@ -1243,23 +1312,23 @@ var require_keyword = __commonJS({ } }); -// ../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/index.js +// ../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/index.js var require_lib = __commonJS({ - "../../node_modules/.pnpm/@babel+helper-validator-identifier@7.15.7/node_modules/@babel/helper-validator-identifier/lib/index.js"(exports2) { + "../node_modules/.pnpm/@babel+helper-validator-identifier@7.19.1/node_modules/@babel/helper-validator-identifier/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - Object.defineProperty(exports2, "isIdentifierName", { + Object.defineProperty(exports2, "isIdentifierChar", { enumerable: true, get: function() { - return _identifier.isIdentifierName; + return _identifier.isIdentifierChar; } }); - Object.defineProperty(exports2, "isIdentifierChar", { + Object.defineProperty(exports2, "isIdentifierName", { enumerable: true, get: function() { - return _identifier.isIdentifierChar; + return _identifier.isIdentifierName; } }); Object.defineProperty(exports2, "isIdentifierStart", { @@ -1268,6 +1337,12 @@ var require_lib = __commonJS({ return _identifier.isIdentifierStart; } }); + Object.defineProperty(exports2, "isKeyword", { + enumerable: true, + get: function() { + return _keyword.isKeyword; + } + }); Object.defineProperty(exports2, "isReservedWord", { enumerable: true, get: function() { @@ -1292,20 +1367,14 @@ var require_lib = __commonJS({ return _keyword.isStrictReservedWord; } }); - Object.defineProperty(exports2, "isKeyword", { - enumerable: true, - get: function() { - return _keyword.isKeyword; - } - }); var _identifier = require_identifier(); var _keyword = require_keyword(); } }); -// ../../node_modules/.pnpm/escape-string-regexp@1.0.5/node_modules/escape-string-regexp/index.js +// ../node_modules/.pnpm/escape-string-regexp@1.0.5/node_modules/escape-string-regexp/index.js var require_escape_string_regexp = __commonJS({ - "../../node_modules/.pnpm/escape-string-regexp@1.0.5/node_modules/escape-string-regexp/index.js"(exports2, module2) { + "../node_modules/.pnpm/escape-string-regexp@1.0.5/node_modules/escape-string-regexp/index.js"(exports2, module2) { "use strict"; var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g; module2.exports = function(str) { @@ -1317,9 +1386,9 @@ var require_escape_string_regexp = __commonJS({ } }); -// ../../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js +// ../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js var require_color_name = __commonJS({ - "../../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js"(exports2, module2) { + "../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js"(exports2, module2) { "use strict"; module2.exports = { "aliceblue": [240, 248, 255], @@ -1474,9 +1543,9 @@ var require_color_name = __commonJS({ } }); -// ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js +// ../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js var require_conversions = __commonJS({ - "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js"(exports2, module2) { + "../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js"(exports2, module2) { var cssKeywords = require_color_name(); var reverseKeywords = {}; for (key in cssKeywords) { @@ -2187,15 +2256,17 @@ var require_conversions = __commonJS({ } }); -// ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js +// ../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js var require_route = __commonJS({ - "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js"(exports2, module2) { + "../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js"(exports2, module2) { var conversions = require_conversions(); function buildGraph() { var graph = {}; var models = Object.keys(conversions); for (var len = models.length, i = 0; i < len; i++) { graph[models[i]] = { + // http://jsperf.com/1-vs-infinity + // micro-opt, but this is simple. distance: -1, parent: null }; @@ -2227,15 +2298,15 @@ var require_route = __commonJS({ }; } function wrapConversion(toModel, graph) { - var path = [graph[toModel].parent, toModel]; + var path2 = [graph[toModel].parent, toModel]; var fn2 = conversions[graph[toModel].parent][toModel]; var cur = graph[toModel].parent; while (graph[cur].parent) { - path.unshift(graph[cur].parent); + path2.unshift(graph[cur].parent); fn2 = link(conversions[graph[cur].parent][cur], fn2); cur = graph[cur].parent; } - fn2.conversion = path; + fn2.conversion = path2; return fn2; } module2.exports = function(fromModel) { @@ -2255,9 +2326,9 @@ var require_route = __commonJS({ } }); -// ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js +// ../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js var require_color_convert = __commonJS({ - "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js"(exports2, module2) { + "../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js"(exports2, module2) { var conversions = require_conversions(); var route = require_route(); var convert = {}; @@ -2285,13 +2356,13 @@ var require_color_convert = __commonJS({ if (arguments.length > 1) { args2 = Array.prototype.slice.call(arguments); } - var result = fn2(args2); - if (typeof result === "object") { - for (var len = result.length, i = 0; i < len; i++) { - result[i] = Math.round(result[i]); + var result2 = fn2(args2); + if (typeof result2 === "object") { + for (var len = result2.length, i = 0; i < len; i++) { + result2[i] = Math.round(result2[i]); } } - return result; + return result2; }; if ("conversion" in fn2) { wrappedFn.conversion = fn2.conversion; @@ -2314,28 +2385,29 @@ var require_color_convert = __commonJS({ } }); -// ../../node_modules/.pnpm/ansi-styles@3.2.1/node_modules/ansi-styles/index.js +// ../node_modules/.pnpm/ansi-styles@3.2.1/node_modules/ansi-styles/index.js var require_ansi_styles = __commonJS({ - "../../node_modules/.pnpm/ansi-styles@3.2.1/node_modules/ansi-styles/index.js"(exports2, module2) { + "../node_modules/.pnpm/ansi-styles@3.2.1/node_modules/ansi-styles/index.js"(exports2, module2) { "use strict"; var colorConvert = require_color_convert(); var wrapAnsi16 = (fn2, offset) => function() { const code = fn2.apply(colorConvert, arguments); - return `[${code + offset}m`; + return `\x1B[${code + offset}m`; }; var wrapAnsi256 = (fn2, offset) => function() { const code = fn2.apply(colorConvert, arguments); - return `[${38 + offset};5;${code}m`; + return `\x1B[${38 + offset};5;${code}m`; }; var wrapAnsi16m = (fn2, offset) => function() { const rgb = fn2.apply(colorConvert, arguments); - return `[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; + return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; }; function assembleStyles() { - const codes = new Map(); + const codes = /* @__PURE__ */ new Map(); const styles = { modifier: { reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing bold: [1, 22], dim: [2, 22], italic: [3, 23], @@ -2354,6 +2426,7 @@ var require_ansi_styles = __commonJS({ cyan: [36, 39], white: [37, 39], gray: [90, 39], + // Bright color redBright: [91, 39], greenBright: [92, 39], yellowBright: [93, 39], @@ -2371,6 +2444,7 @@ var require_ansi_styles = __commonJS({ bgMagenta: [45, 49], bgCyan: [46, 49], bgWhite: [47, 49], + // Bright color bgBlackBright: [100, 49], bgRedBright: [101, 49], bgGreenBright: [102, 49], @@ -2387,8 +2461,8 @@ var require_ansi_styles = __commonJS({ for (const styleName of Object.keys(group)) { const style = group[styleName]; styles[styleName] = { - open: `[${style[0]}m`, - close: `[${style[1]}m` + open: `\x1B[${style[0]}m`, + close: `\x1B[${style[1]}m` }; group[styleName] = styles[styleName]; codes.set(style[0], style[1]); @@ -2404,8 +2478,8 @@ var require_ansi_styles = __commonJS({ } const ansi2ansi = (n) => n; const rgb2rgb = (r, g, b) => [r, g, b]; - styles.color.close = ""; - styles.bgColor.close = ""; + styles.color.close = "\x1B[39m"; + styles.bgColor.close = "\x1B[49m"; styles.color.ansi = { ansi: wrapAnsi16(ansi2ansi, 0) }; @@ -2454,9 +2528,9 @@ var require_ansi_styles = __commonJS({ } }); -// ../../node_modules/.pnpm/has-flag@3.0.0/node_modules/has-flag/index.js +// ../node_modules/.pnpm/has-flag@3.0.0/node_modules/has-flag/index.js var require_has_flag = __commonJS({ - "../../node_modules/.pnpm/has-flag@3.0.0/node_modules/has-flag/index.js"(exports2, module2) { + "../node_modules/.pnpm/has-flag@3.0.0/node_modules/has-flag/index.js"(exports2, module2) { "use strict"; module2.exports = (flag, argv2) => { argv2 = argv2 || process.argv; @@ -2468,9 +2542,9 @@ var require_has_flag = __commonJS({ } }); -// ../../node_modules/.pnpm/supports-color@5.5.0/node_modules/supports-color/index.js +// ../node_modules/.pnpm/supports-color@5.5.0/node_modules/supports-color/index.js var require_supports_color = __commonJS({ - "../../node_modules/.pnpm/supports-color@5.5.0/node_modules/supports-color/index.js"(exports2, module2) { + "../node_modules/.pnpm/supports-color@5.5.0/node_modules/supports-color/index.js"(exports2, module2) { "use strict"; var os = require("os"); var hasFlag = require_has_flag(); @@ -2529,10 +2603,10 @@ var require_supports_color = __commonJS({ return 3; } if ("TERM_PROGRAM" in env) { - const version = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + const version2 = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); switch (env.TERM_PROGRAM) { case "iTerm.app": - return version >= 3 ? 3 : 2; + return version2 >= 3 ? 3 : 2; case "Apple_Terminal": return 2; } @@ -2563,15 +2637,15 @@ var require_supports_color = __commonJS({ } }); -// ../../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/templates.js +// ../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/templates.js var require_templates = __commonJS({ - "../../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/templates.js"(exports2, module2) { + "../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/templates.js"(exports2, module2) { "use strict"; var TEMPLATE_REGEX = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; var ESCAPE_REGEX = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; - var ESCAPES = new Map([ + var ESCAPES = /* @__PURE__ */ new Map([ ["n", "\n"], ["r", "\r"], ["t", " "], @@ -2580,7 +2654,7 @@ var require_templates = __commonJS({ ["v", "\v"], ["0", "\0"], ["\\", "\\"], - ["e", ""], + ["e", "\x1B"], ["a", "\x07"] ]); function unescape2(c) { @@ -2674,9 +2748,9 @@ var require_templates = __commonJS({ } }); -// ../../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/index.js +// ../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/index.js var require_chalk = __commonJS({ - "../../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/index.js"(exports2, module2) { + "../node_modules/.pnpm/chalk@2.4.2/node_modules/chalk/index.js"(exports2, module2) { "use strict"; var escapeStringRegexp = require_escape_string_regexp(); var ansiStyles = require_ansi_styles(); @@ -2684,8 +2758,8 @@ var require_chalk = __commonJS({ var template = require_templates(); var isSimpleWindowsTerm = process.platform === "win32" && !(process.env.TERM || "").toLowerCase().startsWith("xterm"); var levelMapping = ["ansi", "ansi", "ansi256", "ansi16m"]; - var skipModels = new Set(["gray"]); - var styles = Object.create(null); + var skipModels = /* @__PURE__ */ new Set(["gray"]); + var styles = /* @__PURE__ */ Object.create(null); function applyOptions(obj, options) { options = options || {}; const scLevel = stdoutColor ? stdoutColor.level : 0; @@ -2708,7 +2782,7 @@ var require_chalk = __commonJS({ applyOptions(this, options); } if (isSimpleWindowsTerm) { - ansiStyles.blue.open = ""; + ansiStyles.blue.open = "\x1B[94m"; } for (const key of Object.keys(ansiStyles)) { ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), "g"); @@ -2841,20 +2915,20 @@ var require_chalk = __commonJS({ } }); -// ../../node_modules/.pnpm/@babel+highlight@7.14.5/node_modules/@babel/highlight/lib/index.js +// ../node_modules/.pnpm/@babel+highlight@7.18.6/node_modules/@babel/highlight/lib/index.js var require_lib2 = __commonJS({ - "../../node_modules/.pnpm/@babel+highlight@7.14.5/node_modules/@babel/highlight/lib/index.js"(exports2) { + "../node_modules/.pnpm/@babel+highlight@7.18.6/node_modules/@babel/highlight/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.shouldHighlight = shouldHighlight; - exports2.getChalk = getChalk; exports2.default = highlight; + exports2.getChalk = getChalk; + exports2.shouldHighlight = shouldHighlight; var _jsTokens = require_js_tokens(); var _helperValidatorIdentifier = require_lib(); var _chalk = require_chalk(); - var sometimesKeywords = new Set(["as", "async", "from", "get", "of", "set"]); + var sometimesKeywords = /* @__PURE__ */ new Set(["as", "async", "from", "get", "of", "set"]); function getDefs(chalk) { return { keyword: chalk.cyan, @@ -2878,7 +2952,7 @@ var require_lib2 = __commonJS({ if ((0, _helperValidatorIdentifier.isKeyword)(token.value) || (0, _helperValidatorIdentifier.isStrictReservedWord)(token.value, true) || sometimesKeywords.has(token.value)) { return "keyword"; } - if (JSX_TAG.test(token.value) && (text[offset - 1] === "<" || text.substr(offset - 2, 2) == " { + let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index) => { const number = start + 1 + index; const paddedNumber = ` ${number}`.slice(-numberMaxWidth); const gutter = ` ${paddedNumber} |`; @@ -3086,13 +3160,13 @@ ${frame}`; } }); -// ../../node_modules/.pnpm/parse-json@5.2.0/node_modules/parse-json/index.js +// ../node_modules/.pnpm/parse-json@5.2.0/node_modules/parse-json/index.js var require_parse_json = __commonJS({ - "../../node_modules/.pnpm/parse-json@5.2.0/node_modules/parse-json/index.js"(exports2, module2) { + "../node_modules/.pnpm/parse-json@5.2.0/node_modules/parse-json/index.js"(exports2, module2) { "use strict"; var errorEx = require_error_ex(); var fallback = require_json_parse_even_better_errors(); - var { default: LinesAndColumns } = require_dist(); + var { default: LinesAndColumns } = require_build(); var { codeFrameColumns } = require_lib3(); var JSONError = errorEx("JSONError", { fileName: errorEx.append("in %s"), @@ -3121,7 +3195,11 @@ var require_parse_json = __commonJS({ const lines = new LinesAndColumns(string); const index = Number(indexMatch[1]); const location = lines.locationForIndex(index); - const codeFrame = codeFrameColumns(string, { start: { line: location.line + 1, column: location.column + 1 } }, { highlightCode: true }); + const codeFrame = codeFrameColumns( + string, + { start: { line: location.line + 1, column: location.column + 1 } }, + { highlightCode: true } + ); jsonError.codeFrame = codeFrame; } throw jsonError; @@ -3132,40 +3210,41 @@ var require_parse_json = __commonJS({ } }); -// ../../node_modules/.pnpm/load-json-file@6.2.0/node_modules/load-json-file/index.js +// ../node_modules/.pnpm/load-json-file@6.2.0/node_modules/load-json-file/index.js var require_load_json_file = __commonJS({ - "../../node_modules/.pnpm/load-json-file@6.2.0/node_modules/load-json-file/index.js"(exports2, module2) { + "../node_modules/.pnpm/load-json-file@6.2.0/node_modules/load-json-file/index.js"(exports2, module2) { "use strict"; - var path = require("path"); + var path2 = require("path"); var { promisify } = require("util"); - var fs = require_graceful_fs(); + var fs2 = require_graceful_fs(); var stripBom = require_strip_bom(); var parseJson = require_parse_json(); - var parse = (data, filePath, options = {}) => { + var parse2 = (data, filePath, options = {}) => { data = stripBom(data); if (typeof options.beforeParse === "function") { data = options.beforeParse(data); } - return parseJson(data, options.reviver, path.relative(process.cwd(), filePath)); + return parseJson(data, options.reviver, path2.relative(process.cwd(), filePath)); }; - module2.exports = async (filePath, options) => parse(await promisify(fs.readFile)(filePath, "utf8"), filePath, options); - module2.exports.sync = (filePath, options) => parse(fs.readFileSync(filePath, "utf8"), filePath, options); + module2.exports = async (filePath, options) => parse2(await promisify(fs2.readFile)(filePath, "utf8"), filePath, options); + module2.exports.sync = (filePath, options) => parse2(fs2.readFileSync(filePath, "utf8"), filePath, options); } }); -// ../cli-meta/lib/index.js +// ../cli/cli-meta/lib/index.js var require_lib4 = __commonJS({ - "../cli-meta/lib/index.js"(exports2) { + "../cli/cli-meta/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var load_json_file_1 = __importDefault(require_load_json_file()); + exports2.packageManager = void 0; + var path_1 = __importDefault4(require("path")); + var load_json_file_1 = __importDefault4(require_load_json_file()); var defaultManifest = { - name: "pnpm" != null && true ? "pnpm" : "pnpm", - version: "6.16.0" != null && true ? "6.16.0" : "0.0.0" + name: true ? "pnpm" : "pnpm", + version: true ? "7.33.5" : "0.0.0" }; var pkgJson; if (require.main == null) { @@ -3180,18 +3259,19 @@ var require_lib4 = __commonJS({ pkgJson = defaultManifest; } } - var packageManager = { + exports2.packageManager = { name: pkgJson.name, - stableVersion: pkgJson.version.includes("-") ? pkgJson.version.substr(0, pkgJson.version.indexOf("-")) : pkgJson.version, + // Never a prerelease version + stableVersion: pkgJson.version.includes("-") ? pkgJson.version.slice(0, pkgJson.version.indexOf("-")) : pkgJson.version, + // This may be a 3.0.0-beta.2 version: pkgJson.version }; - exports2.default = packageManager; } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/constants.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/constants.js var require_constants = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/constants.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/constants.js"(exports2, module2) { var BASH_LOCATION = "~/.bashrc"; var FISH_LOCATION = "~/.config/fish/config.fish"; var ZSH_LOCATION = "~/.zshrc"; @@ -3213,13 +3293,13 @@ var require_constants = __commonJS({ } }); -// ../../node_modules/.pnpm/ansi-colors@4.1.1/node_modules/ansi-colors/symbols.js +// ../node_modules/.pnpm/ansi-colors@4.1.3/node_modules/ansi-colors/symbols.js var require_symbols = __commonJS({ - "../../node_modules/.pnpm/ansi-colors@4.1.1/node_modules/ansi-colors/symbols.js"(exports2, module2) { + "../node_modules/.pnpm/ansi-colors@4.1.3/node_modules/ansi-colors/symbols.js"(exports2, module2) { "use strict"; - var isHyper = process.env.TERM_PROGRAM === "Hyper"; - var isWindows = process.platform === "win32"; - var isLinux = process.platform === "linux"; + var isHyper = typeof process !== "undefined" && process.env.TERM_PROGRAM === "Hyper"; + var isWindows = typeof process !== "undefined" && process.platform === "win32"; + var isLinux = typeof process !== "undefined" && process.platform === "linux"; var common = { ballotDisabled: "\u2612", ballotOff: "\u2610", @@ -3242,6 +3322,7 @@ var require_symbols = __commonJS({ pilcrow2: "\u2761", pilcrow: "\xB6", plusMinus: "\xB1", + question: "?", section: "\xA7", starsOff: "\u2606", starsOn: "\u2605", @@ -3253,7 +3334,6 @@ var require_symbols = __commonJS({ ellipsisLarge: "...", ellipsis: "...", info: "i", - question: "?", questionSmall: "?", pointer: ">", pointerSmall: "\xBB", @@ -3268,7 +3348,6 @@ var require_symbols = __commonJS({ ellipsisLarge: "\u22EF", ellipsis: "\u2026", info: "\u2139", - question: "?", questionFull: "\uFF1F", questionSmall: "\uFE56", pointer: isLinux ? "\u25B8" : "\u276F", @@ -3284,20 +3363,28 @@ var require_symbols = __commonJS({ } }); -// ../../node_modules/.pnpm/ansi-colors@4.1.1/node_modules/ansi-colors/index.js +// ../node_modules/.pnpm/ansi-colors@4.1.3/node_modules/ansi-colors/index.js var require_ansi_colors = __commonJS({ - "../../node_modules/.pnpm/ansi-colors@4.1.1/node_modules/ansi-colors/index.js"(exports2, module2) { + "../node_modules/.pnpm/ansi-colors@4.1.3/node_modules/ansi-colors/index.js"(exports2, module2) { "use strict"; var isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); var ANSI_REGEX = /[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g; - var create = () => { - const colors = { enabled: true, visible: true, styles: {}, keys: {} }; - if ("FORCE_COLOR" in process.env) { - colors.enabled = process.env.FORCE_COLOR !== "0"; + var hasColor = () => { + if (typeof process !== "undefined") { + return process.env.FORCE_COLOR !== "0"; } + return false; + }; + var create = () => { + const colors = { + enabled: hasColor(), + visible: true, + styles: {}, + keys: {} + }; const ansi = (style2) => { - let open = style2.open = `[${style2.codes[0]}m`; - let close = style2.close = `[${style2.codes[1]}m`; + let open = style2.open = `\x1B[${style2.codes[0]}m`; + let close = style2.close = `\x1B[${style2.codes[1]}m`; let regex = style2.regex = new RegExp(`\\u001b\\[${style2.codes[1]}m`, "g"); style2.wrap = (input, newline) => { if (input.includes(close)) @@ -3321,7 +3408,7 @@ var require_ansi_colors = __commonJS({ let nl = str.includes("\n"); let n = stack2.length; if (n > 0 && stack2.includes("unstyle")) { - stack2 = [...new Set(["unstyle", ...stack2])].reverse(); + stack2 = [.../* @__PURE__ */ new Set(["unstyle", ...stack2])].reverse(); } while (n-- > 0) str = wrap(colors.styles[stack2[n]], str, nl); @@ -3443,9 +3530,9 @@ var require_ansi_colors = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/utils.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/utils.js var require_utils = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/utils.js"(exports2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/utils.js"(exports2) { "use strict"; var toString = Object.prototype.toString; var colors = require_ansi_colors(); @@ -3681,9 +3768,9 @@ var require_utils = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/combos.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/combos.js var require_combos = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/combos.js"(exports2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/combos.js"(exports2) { "use strict"; exports2.ctrl = { a: "first", @@ -3731,9 +3818,13 @@ var require_combos = __commonJS({ }; exports2.keys = { pageup: "pageUp", + // + (mac), (windows) pagedown: "pageDown", + // + (mac), (windows) home: "home", + // + (mac), (windows) end: "end", + // + (mac), (windows) cancel: "cancel", delete: "deleteForward", backspace: "delete", @@ -3751,28 +3842,32 @@ var require_combos = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/keypress.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/keypress.js var require_keypress = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/keypress.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/keypress.js"(exports2, module2) { "use strict"; - var readline = require("readline"); + var readline2 = require("readline"); var combos = require_combos(); var metaKeyCodeRe = /^(?:\x1b)([a-zA-Z0-9])$/; var fnKeyRe = /^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/; var keyName = { + /* xterm/gnome ESC O letter */ "OP": "f1", "OQ": "f2", "OR": "f3", "OS": "f4", + /* xterm/rxvt ESC [ number ~ */ "[11~": "f1", "[12~": "f2", "[13~": "f3", "[14~": "f4", + /* from Cygwin and used in libuv */ "[[A": "f1", "[[B": "f2", "[[C": "f3", "[[D": "f4", "[[E": "f5", + /* common */ "[15~": "f5", "[17~": "f6", "[18~": "f7", @@ -3781,6 +3876,7 @@ var require_keypress = __commonJS({ "[21~": "f10", "[23~": "f11", "[24~": "f12", + /* xterm ESC [ letter */ "[A": "up", "[B": "down", "[C": "right", @@ -3788,6 +3884,7 @@ var require_keypress = __commonJS({ "[E": "clear", "[F": "end", "[H": "home", + /* xterm/gnome ESC O letter */ "OA": "up", "OB": "down", "OC": "right", @@ -3795,16 +3892,20 @@ var require_keypress = __commonJS({ "OE": "clear", "OF": "end", "OH": "home", + /* xterm/rxvt ESC [ number ~ */ "[1~": "home", "[2~": "insert", "[3~": "delete", "[4~": "end", "[5~": "pageup", "[6~": "pagedown", + /* putty */ "[[5~": "pageup", "[[6~": "pagedown", + /* rxvt */ "[7~": "home", "[8~": "end", + /* rxvt keys with modifiers */ "[a": "up", "[b": "down", "[c": "right", @@ -3827,6 +3928,7 @@ var require_keypress = __commonJS({ "[6^": "pagedown", "[7^": "home", "[8^": "end", + /* misc. */ "[Z": "tab" }; function isShiftKey(code) { @@ -3850,7 +3952,7 @@ var require_keypress = __commonJS({ if (Buffer.isBuffer(s)) { if (s[0] > 127 && s[1] === void 0) { s[0] -= 128; - s = "" + String(s); + s = "\x1B" + String(s); } else { s = String(s); } @@ -3867,13 +3969,13 @@ var require_keypress = __commonJS({ key.name = "enter"; } else if (s === " ") { key.name = "tab"; - } else if (s === "\b" || s === "\x7F" || s === "\x7F" || s === "\b") { + } else if (s === "\b" || s === "\x7F" || s === "\x1B\x7F" || s === "\x1B\b") { key.name = "backspace"; - key.meta = s.charAt(0) === ""; - } else if (s === "" || s === "") { + key.meta = s.charAt(0) === "\x1B"; + } else if (s === "\x1B" || s === "\x1B\x1B") { key.name = "escape"; key.meta = s.length === 2; - } else if (s === " " || s === " ") { + } else if (s === " " || s === "\x1B ") { key.name = "space"; key.meta = s.length === 2; } else if (s <= "") { @@ -3891,7 +3993,7 @@ var require_keypress = __commonJS({ key.shift = /^[A-Z]$/.test(parts[1]); } else if (parts = fnKeyRe.exec(s)) { let segs = [...s]; - if (segs[0] === "" && segs[1] === "") { + if (segs[0] === "\x1B" && segs[1] === "\x1B") { key.option = true; } let code = [parts[1], parts[2], parts[4], parts[6]].filter(Boolean).join(""); @@ -3911,8 +4013,8 @@ var require_keypress = __commonJS({ if (!stdin || stdin !== process.stdin && !stdin.isTTY) { throw new Error("Invalid stream passed"); } - let rl = readline.createInterface({ terminal: true, input: stdin }); - readline.emitKeypressEvents(stdin, rl); + let rl = readline2.createInterface({ terminal: true, input: stdin }); + readline2.emitKeypressEvents(stdin, rl); let on = (buf, key) => onKeypress(buf, keypress(buf, key), rl); let isRaw = stdin.isRaw; if (stdin.isTTY) @@ -3949,9 +4051,9 @@ var require_keypress = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/timer.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/timer.js var require_timer = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/timer.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/timer.js"(exports2, module2) { "use strict"; module2.exports = (prompt) => { prompt.timers = prompt.timers || {}; @@ -3987,9 +4089,9 @@ var require_timer = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/state.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/state.js var require_state = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/state.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/state.js"(exports2, module2) { "use strict"; var { define: define2, width } = require_utils(); var State = class { @@ -4016,7 +4118,7 @@ var require_state = __commonJS({ this.message = this.message || this.name; this.symbols = prompt.symbols; this.styles = prompt.styles; - this.required = new Set(); + this.required = /* @__PURE__ */ new Set(); this.cancelled = false; this.submitted = false; } @@ -4061,15 +4163,18 @@ var require_state = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/styles.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/styles.js var require_styles = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/styles.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/styles.js"(exports2, module2) { "use strict"; var utils = require_utils(); var colors = require_ansi_colors(); var styles = { default: colors.noop, noop: colors.noop, + /** + * Modifiers + */ set inverse(custom) { this._inverse = custom; }, @@ -4082,7 +4187,13 @@ var require_styles = __commonJS({ get complement() { return this._complement || utils.complement(this.primary); }, + /** + * Main color + */ primary: colors.cyan, + /** + * Main palette + */ success: colors.green, danger: colors.magenta, strong: colors.bold, @@ -4109,6 +4220,9 @@ var require_styles = __commonJS({ get heading() { return this._heading || this.muted.underline; }, + /** + * Statuses + */ set pending(custom) { this._pending = custom; }, @@ -4127,6 +4241,9 @@ var require_styles = __commonJS({ get cancelled() { return this._cancelled || this.danger; }, + /** + * Special styling + */ set typing(custom) { this._typing = custom; }, @@ -4153,27 +4270,27 @@ var require_styles = __commonJS({ if (options.styles && typeof options.styles.visible === "boolean") { colors.visible = options.styles.visible; } - let result = utils.merge({}, styles, options.styles); - delete result.merge; + let result2 = utils.merge({}, styles, options.styles); + delete result2.merge; for (let key of Object.keys(colors)) { - if (!result.hasOwnProperty(key)) { - Reflect.defineProperty(result, key, { get: () => colors[key] }); + if (!result2.hasOwnProperty(key)) { + Reflect.defineProperty(result2, key, { get: () => colors[key] }); } } for (let key of Object.keys(colors.styles)) { - if (!result.hasOwnProperty(key)) { - Reflect.defineProperty(result, key, { get: () => colors[key] }); + if (!result2.hasOwnProperty(key)) { + Reflect.defineProperty(result2, key, { get: () => colors[key] }); } } - return result; + return result2; }; module2.exports = styles; } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/symbols.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/symbols.js var require_symbols2 = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/symbols.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/symbols.js"(exports2, module2) { "use strict"; var isWindows = process.platform === "win32"; var colors = require_ansi_colors(); @@ -4230,17 +4347,17 @@ var require_symbols2 = __commonJS({ numbers: ["\u24EA", "\u2460", "\u2461", "\u2462", "\u2463", "\u2464", "\u2465", "\u2466", "\u2467", "\u2468", "\u2469", "\u246A", "\u246B", "\u246C", "\u246D", "\u246E", "\u246F", "\u2470", "\u2471", "\u2472", "\u2473", "\u3251", "\u3252", "\u3253", "\u3254", "\u3255", "\u3256", "\u3257", "\u3258", "\u3259", "\u325A", "\u325B", "\u325C", "\u325D", "\u325E", "\u325F", "\u32B1", "\u32B2", "\u32B3", "\u32B4", "\u32B5", "\u32B6", "\u32B7", "\u32B8", "\u32B9", "\u32BA", "\u32BB", "\u32BC", "\u32BD", "\u32BE", "\u32BF"] }; symbols.merge = (options) => { - let result = utils.merge({}, colors.symbols, symbols, options.symbols); - delete result.merge; - return result; + let result2 = utils.merge({}, colors.symbols, symbols, options.symbols); + delete result2.merge; + return result2; }; module2.exports = symbols; } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/theme.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/theme.js var require_theme = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/theme.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/theme.js"(exports2, module2) { "use strict"; var styles = require_styles(); var symbols = require_symbols2(); @@ -4253,15 +4370,15 @@ var require_theme = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/ansi.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/ansi.js var require_ansi = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/ansi.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/ansi.js"(exports2, module2) { "use strict"; var isTerm = process.env.TERM_PROGRAM === "Apple_Terminal"; var colors = require_ansi_colors(); var utils = require_utils(); var ansi = module2.exports = exports2; - var ESC = "["; + var ESC = "\x1B["; var BEL = "\x07"; var hidden = false; var code = ansi.code = { @@ -4365,9 +4482,9 @@ var require_ansi = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompt.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompt.js var require_prompt = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompt.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompt.js"(exports2, module2) { "use strict"; var Events = require("events"); var colors = require_ansi_colors(); @@ -4470,11 +4587,11 @@ var require_prompt = __commonJS({ if (this.options.onSubmit) { await this.options.onSubmit.call(this, this.name, this.value, this); } - let result = this.state.error || await this.validate(this.value, this.state); - if (result !== true) { + let result2 = this.state.error || await this.validate(this.value, this.state); + if (result2 !== true) { let error = "\n" + this.symbols.pointer + " "; - if (typeof result === "string") { - error += result.trim(); + if (typeof result2 === "string") { + error += result2.trim(); } else { error += "Invalid input"; } @@ -4528,9 +4645,9 @@ var require_prompt = __commonJS({ return this.skipped; } async initialize() { - let { format, options, result } = this; + let { format, options, result: result2 } = this; this.format = () => format.call(this, this.value); - this.result = () => result.call(this, this.value); + this.result = () => result2.call(this, this.value); if (typeof options.initial === "function") { this.initial = await options.initial.call(this, this); } @@ -4716,8 +4833,8 @@ var require_prompt = __commonJS({ } get value() { let { input, value } = this.state; - let result = [value, input].find(this.isValue.bind(this)); - return this.isValue(result) ? result : this.initial; + let result2 = [value, input].find(this.isValue.bind(this)); + return this.isValue(result2) ? result2 : this.initial; } static get prompt() { return (options) => new this(options).run(); @@ -4787,9 +4904,9 @@ var require_prompt = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/roles.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/roles.js var require_roles = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/roles.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/roles.js"(exports2, module2) { "use strict"; var utils = require_utils(); var roles = { @@ -4837,9 +4954,9 @@ var require_roles = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/array.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/array.js var require_array = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/array.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/array.js"(exports2, module2) { "use strict"; var colors = require_ansi_colors(); var Prompt = require_prompt(); @@ -5287,11 +5404,11 @@ var require_array = __commonJS({ let isChoice = (ele, i) => [ele.name, i].includes(value); let fn2 = typeof value === "function" ? value : isChoice; let choices = this.options.multiple ? this.state._choices : this.choices; - let result = choices.filter(fn2); + let result2 = choices.filter(fn2); if (prop) { - return result.map((ch) => ch[prop]); + return result2.map((ch) => ch[prop]); } - return result; + return result2; } find(value, prop) { if (isObject(value)) @@ -5423,9 +5540,9 @@ var require_array = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/select.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/select.js var require_select = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/select.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/select.js"(exports2, module2) { "use strict"; var ArrayPrompt = require_array(); var utils = require_utils(); @@ -5498,12 +5615,12 @@ var require_select = __commonJS({ let visible = await Promise.all(choices); if (!visible.length) visible.push(this.styles.danger("No matching choices")); - let result = this.margin[0] + visible.join("\n"); + let result2 = this.margin[0] + visible.join("\n"); let header; if (this.options.choicesHeader) { header = await this.resolve(this.options.choicesHeader, this.state); } - return [header, result].filter(Boolean).join("\n"); + return [header, result2].filter(Boolean).join("\n"); } format() { if (!this.state.submitted || this.state.cancelled) @@ -5545,9 +5662,9 @@ var require_select = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/autocomplete.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/autocomplete.js var require_autocomplete = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/autocomplete.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/autocomplete.js"(exports2, module2) { "use strict"; var Select = require_select(); var highlight = (input, color) => { @@ -5648,9 +5765,9 @@ var require_autocomplete = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/placeholder.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/placeholder.js var require_placeholder = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/placeholder.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/placeholder.js"(exports2, module2) { "use strict"; var utils = require_utils(); module2.exports = (prompt, options = {}) => { @@ -5692,9 +5809,9 @@ var require_placeholder = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/form.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/form.js var require_form = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/form.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/form.js"(exports2, module2) { "use strict"; var colors = require_ansi_colors(); var SelectPrompt = require_select(); @@ -5818,7 +5935,7 @@ var require_form = __commonJS({ let { muted, submitted, primary, danger } = styles; let help = hint; let focused = this.index === i; - let validate = choice.validate || (() => true); + let validate2 = choice.validate || (() => true); let sep = await this.choiceSeparator(choice, i); let msg = choice.message; if (this.align === "right") @@ -5827,7 +5944,7 @@ var require_form = __commonJS({ msg = msg.padEnd(this.longest + 1, " "); let value = this.values[name] = input || initial; let color = input ? "success" : "dark"; - if (await validate.call(choice, value, this.state) !== true) { + if (await validate2.call(choice, value, this.state) !== true) { color = "danger"; } let style = styles[color]; @@ -5872,9 +5989,9 @@ var require_form = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/auth.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/auth.js var require_auth = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/auth.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/auth.js"(exports2, module2) { "use strict"; var FormPrompt = require_form(); var defaultAuthenticate = () => { @@ -5899,9 +6016,9 @@ var require_auth = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/basicauth.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/basicauth.js var require_basicauth = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/basicauth.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/basicauth.js"(exports2, module2) { "use strict"; var AuthPrompt = require_auth(); function defaultAuthenticate(value, state) { @@ -5939,9 +6056,9 @@ var require_basicauth = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/boolean.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/boolean.js var require_boolean = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/boolean.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/boolean.js"(exports2, module2) { "use strict"; var Prompt = require_prompt(); var { isPrimitive, hasColor } = require_utils(); @@ -6017,9 +6134,9 @@ var require_boolean = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/confirm.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/confirm.js var require_confirm = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/confirm.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/confirm.js"(exports2, module2) { "use strict"; var BooleanPrompt = require_boolean(); var ConfirmPrompt = class extends BooleanPrompt { @@ -6032,9 +6149,9 @@ var require_confirm = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/editable.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/editable.js var require_editable = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/editable.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/editable.js"(exports2, module2) { "use strict"; var Select = require_select(); var Form = require_form(); @@ -6094,7 +6211,7 @@ var require_editable = __commonJS({ return this.state.error; } async validate() { - let result = true; + let result2 = true; for (let choice of this.choices) { if (typeof choice.validate !== "function") { continue; @@ -6108,15 +6225,15 @@ var require_editable = __commonJS({ } else if (!this.isDisabled(choice)) { val = choice.enabled === true; } - result = await choice.validate(val, this.state); - if (result !== true) { + result2 = await choice.validate(val, this.state); + if (result2 !== true) { break; } } - if (result !== true) { - this.state.error = typeof result === "string" ? result : "Invalid Input"; + if (result2 !== true) { + this.state.error = typeof result2 === "string" ? result2 : "Invalid Input"; } - return result; + return result2; } submit() { if (this.focused.newChoice === true) @@ -6144,9 +6261,9 @@ var require_editable = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/string.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/string.js var require_string = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/string.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/string.js"(exports2, module2) { "use strict"; var Prompt = require_prompt(); var placeholder = require_placeholder(); @@ -6316,9 +6433,9 @@ var require_string = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/completer.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/completer.js var require_completer = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/completer.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/completer.js"(exports2, module2) { "use strict"; var unique = (arr) => arr.filter((v, i) => arr.lastIndexOf(v) === i); var compact = (arr) => unique(arr).filter(Boolean); @@ -6365,9 +6482,9 @@ var require_completer = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/input.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/input.js var require_input = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/input.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/input.js"(exports2, module2) { "use strict"; var Prompt = require_string(); var completer = require_completer(); @@ -6420,9 +6537,9 @@ var require_input = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/invisible.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/invisible.js var require_invisible = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/invisible.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/invisible.js"(exports2, module2) { "use strict"; var StringPrompt = require_string(); var InvisiblePrompt = class extends StringPrompt { @@ -6434,9 +6551,9 @@ var require_invisible = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/list.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/list.js var require_list = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/list.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/list.js"(exports2, module2) { "use strict"; var StringPrompt = require_string(); var ListPrompt = class extends StringPrompt { @@ -6453,9 +6570,9 @@ var require_list = __commonJS({ return this.list.map(style).join(", "); } async submit(value) { - let result = this.state.error || await this.validate(this.list, this.state); - if (result !== true) { - this.state.error = result; + let result2 = this.state.error || await this.validate(this.list, this.state); + if (result2 !== true) { + this.state.error = result2; return super.submit(); } this.value = this.list; @@ -6469,9 +6586,9 @@ var require_list = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/multiselect.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/multiselect.js var require_multiselect = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/multiselect.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/multiselect.js"(exports2, module2) { "use strict"; var Select = require_select(); var MultiSelect = class extends Select { @@ -6483,9 +6600,9 @@ var require_multiselect = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/number.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/number.js var require_number = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/number.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/number.js"(exports2, module2) { "use strict"; var StringPrompt = require_string(); var NumberPrompt = class extends StringPrompt { @@ -6565,16 +6682,16 @@ var require_number = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/numeral.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/numeral.js var require_numeral = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/numeral.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/numeral.js"(exports2, module2) { module2.exports = require_number(); } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/password.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/password.js var require_password = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/password.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/password.js"(exports2, module2) { "use strict"; var StringPrompt = require_string(); var PasswordPrompt = class extends StringPrompt { @@ -6593,9 +6710,9 @@ var require_password = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/scale.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/scale.js var require_scale = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/scale.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/scale.js"(exports2, module2) { "use strict"; var colors = require_ansi_colors(); var ArrayPrompt = require_array(); @@ -6673,6 +6790,10 @@ var require_scale = __commonJS({ pointer() { return ""; } + /** + * Render the scale "Key". Something like: + * @return {String} + */ renderScaleKey() { if (this.scaleKey === false) return ""; @@ -6682,6 +6803,10 @@ var require_scale = __commonJS({ let key = ["", ...scale].map((item) => this.styles.muted(item)); return key.join("\n"); } + /** + * Render the heading row for the scale. + * @return {String} + */ renderScaleHeading(max) { let keys = this.scale.map((ele) => ele.name); if (typeof this.options.renderScaleHeading === "function") { @@ -6694,6 +6819,9 @@ var require_scale = __commonJS({ let padding = " ".repeat(this.widths[0]); return this.margin[3] + padding + this.margin[1] + headings; } + /** + * Render a scale indicator => ◯ or ◉ by default + */ scaleIndicator(choice, item, i) { if (typeof this.options.scaleIndicator === "function") { return this.options.scaleIndicator.call(this, choice, item, i); @@ -6705,11 +6833,18 @@ var require_scale = __commonJS({ return this.styles.success(this.symbols.radio.on); return this.symbols.radio.off; } + /** + * Render the actual scale => ◯────◯────◉────◯────◯ + */ renderScale(choice, i) { let scale = choice.scale.map((item) => this.scaleIndicator(choice, item, i)); let padding = this.term === "Hyper" ? "" : " "; return scale.join(padding + this.symbols.line.repeat(this.edgeLength)); } + /** + * Render a choice, including scale => + * "The website is easy to navigate. ◯───◯───◉───◯───◯" + */ async renderChoice(choice, i) { await this.onChoice(choice, i); let focused = this.index === i; @@ -6789,9 +6924,9 @@ var require_scale = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/interpolate.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/interpolate.js var require_interpolate = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/interpolate.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/interpolate.js"(exports2, module2) { "use strict"; var colors = require_ansi_colors(); var clean = (str = "") => { @@ -6809,7 +6944,7 @@ var require_interpolate = __commonJS({ } }; var tokenize = async (options = {}, defaults = {}, fn2 = (token) => token) => { - let unique = new Set(); + let unique = /* @__PURE__ */ new Set(); let fields = options.fields || []; let input = options.template; let tabstops = []; @@ -6898,7 +7033,7 @@ var require_interpolate = __commonJS({ let required = new Set(options.required === true ? [] : options.required || []); let defaults = { ...options.values, ...options.initial }; let { tabstops, items, keys } = await tokenize(options, defaults); - let result = createFn("result", prompt, options); + let result2 = createFn("result", prompt, options); let format = createFn("format", prompt, options); let isValid = createFn("validate", prompt, options, true); let isVal = prompt.isValue.bind(prompt); @@ -6908,7 +7043,7 @@ var require_interpolate = __commonJS({ state.items = items; state.keys = keys; state.output = ""; - let validate = async (value, state2, item, index2) => { + let validate2 = async (value, state2, item, index2) => { let error = await isValid(value, state2, item, index2); if (error === false) { return "Invalid field " + item.name; @@ -6932,13 +7067,13 @@ var require_interpolate = __commonJS({ let field = item.field || {}; let message2 = field.message || token.inner; if (submitted) { - let error = await validate(state.values[key], state, item, index); + let error = await validate2(state.values[key], state, item, index); if (error && typeof error === "string" || error === false) { state.invalid.set(key, error); continue; } state.invalid.delete(key); - let res = await result(state.values[key], state, item, index); + let res = await result2(state.values[key], state, item, index); state.output += colors.unstyle(res); continue; } @@ -7008,9 +7143,9 @@ var require_interpolate = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/snippet.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/snippet.js var require_snippet = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/snippet.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/snippet.js"(exports2, module2) { "use strict"; var colors = require_ansi_colors(); var interpolate = require_interpolate(); @@ -7027,8 +7162,8 @@ var require_snippet = __commonJS({ } async reset(first) { this.state.keys = []; - this.state.invalid = new Map(); - this.state.missing = new Set(); + this.state.invalid = /* @__PURE__ */ new Map(); + this.state.missing = /* @__PURE__ */ new Set(); this.state.completed = 0; this.state.values = {}; if (first !== true) { @@ -7166,8 +7301,8 @@ var require_snippet = __commonJS({ return super.submit(); } let lines = colors.unstyle(output).split("\n"); - let result = lines.map((v) => v.slice(1)).join("\n"); - this.value = { values, result }; + let result2 = lines.map((v) => v.slice(1)).join("\n"); + this.value = { values, result: result2 }; return super.submit(); } }; @@ -7175,9 +7310,9 @@ var require_snippet = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/sort.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/sort.js var require_sort = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/sort.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/sort.js"(exports2, module2) { "use strict"; var hint = "(Use + to sort)"; var Prompt = require_select(); @@ -7212,9 +7347,9 @@ var require_sort = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/survey.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/survey.js var require_survey = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/survey.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/survey.js"(exports2, module2) { "use strict"; var ArrayPrompt = require_array(); var Survey = class extends ArrayPrompt { @@ -7360,16 +7495,16 @@ var require_survey = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/text.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/text.js var require_text = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/text.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/text.js"(exports2, module2) { module2.exports = require_input(); } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/toggle.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/toggle.js var require_toggle = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/toggle.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/toggle.js"(exports2, module2) { "use strict"; var BooleanPrompt = require_boolean(); var TogglePrompt = class extends BooleanPrompt { @@ -7469,9 +7604,9 @@ var require_toggle = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/quiz.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/quiz.js var require_quiz = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/quiz.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/quiz.js"(exports2, module2) { "use strict"; var SelectPrompt = require_select(); var Quiz = class extends SelectPrompt { @@ -7506,9 +7641,9 @@ var require_quiz = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/index.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/index.js var require_prompts = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/index.js"(exports2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/prompts/index.js"(exports2) { "use strict"; var utils = require_utils(); var define2 = (key, fn2) => { @@ -7537,9 +7672,9 @@ var require_prompts = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/index.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/index.js var require_types = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/index.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/lib/types/index.js"(exports2, module2) { module2.exports = { ArrayPrompt: require_array(), AuthPrompt: require_auth(), @@ -7550,9 +7685,9 @@ var require_types = __commonJS({ } }); -// ../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/index.js +// ../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/index.js var require_enquirer = __commonJS({ - "../../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/index.js"(exports2, module2) { + "../node_modules/.pnpm/enquirer@2.3.6/node_modules/enquirer/index.js"(exports2, module2) { "use strict"; var assert = require("assert"); var Events = require("events"); @@ -7563,6 +7698,20 @@ var require_enquirer = __commonJS({ this.options = utils.merge({}, options); this.answers = { ...answers }; } + /** + * Register a custom prompt type. + * + * ```js + * const Enquirer = require('enquirer'); + * const enquirer = new Enquirer(); + * enquirer.register('customType', require('./custom-prompt')); + * ``` + * @name register() + * @param {String} `type` + * @param {Function|Prompt} `fn` `Prompt` class, or a function that returns a `Prompt` class. + * @return {Object} Returns the Enquirer instance + * @api public + */ register(type, fn2) { if (utils.isObject(type)) { for (let key of Object.keys(type)) @@ -7578,6 +7727,26 @@ var require_enquirer = __commonJS({ } return this; } + /** + * Prompt function that takes a "question" object or array of question objects, + * and returns an object with responses from the user. + * + * ```js + * const Enquirer = require('enquirer'); + * const enquirer = new Enquirer(); + * + * const response = await enquirer.prompt({ + * type: 'input', + * name: 'username', + * message: 'What is your username?' + * }); + * console.log(response); + * ``` + * @name prompt() + * @param {Array|Object} `questions` Options objects for one or more prompts to run. + * @return {Promise} Promise that returns an "answers" object with the user's responses. + * @api public + */ async prompt(questions = []) { for (let question of [].concat(questions)) { try { @@ -7629,6 +7798,22 @@ var require_enquirer = __commonJS({ } return value; } + /** + * Use an enquirer plugin. + * + * ```js + * const Enquirer = require('enquirer'); + * const enquirer = new Enquirer(); + * const plugin = enquirer => { + * // do stuff to enquire instance + * }; + * enquirer.use(plugin); + * ``` + * @name use() + * @param {Function} `plugin` Plugin function that takes an instance of Enquirer. + * @return {Object} Returns the Enquirer instance. + * @api public + */ use(plugin) { plugin.call(this, this); return this; @@ -7654,6 +7839,24 @@ var require_enquirer = __commonJS({ static get types() { return require_types(); } + /** + * Prompt function that takes a "question" object or array of question objects, + * and returns an object with responses from the user. + * + * ```js + * const { prompt } = require('enquirer'); + * const response = await prompt({ + * type: 'input', + * name: 'username', + * message: 'What is your username?' + * }); + * console.log(response); + * ``` + * @name Enquirer#prompt + * @param {Array|Object} `questions` Options objects for one or more prompts to run. + * @return {Promise} Promise that returns an "answers" object with the user's responses. + * @api public + */ static get prompt() { const fn2 = (questions, ...rest) => { let enquirer = new this(...rest); @@ -7691,9 +7894,9 @@ var require_enquirer = __commonJS({ } }); -// ../../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js +// ../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js var require_ms = __commonJS({ - "../../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js"(exports2, module2) { + "../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js"(exports2, module2) { var s = 1e3; var m = s * 60; var h = m * 60; @@ -7704,18 +7907,22 @@ var require_ms = __commonJS({ options = options || {}; var type = typeof val; if (type === "string" && val.length > 0) { - return parse(val); + return parse2(val); } else if (type === "number" && isFinite(val)) { return options.long ? fmtLong(val) : fmtShort(val); } - throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(val)); + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); }; - function parse(str) { + function parse2(str) { str = String(str); if (str.length > 100) { return; } - var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str); + var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); if (!match) { return; } @@ -7803,9 +8010,9 @@ var require_ms = __commonJS({ } }); -// ../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/common.js +// ../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/common.js var require_common = __commonJS({ - "../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/common.js"(exports2, module2) { + "../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/common.js"(exports2, module2) { function setup(env) { createDebug.debug = createDebug; createDebug.default = createDebug; @@ -7840,7 +8047,7 @@ var require_common = __commonJS({ return; } const self2 = debug; - const curr = Number(new Date()); + const curr = Number(/* @__PURE__ */ new Date()); const ms = curr - (prevTime || curr); self2.diff = ms; self2.prev = prevTime; @@ -7915,7 +8122,7 @@ var require_common = __commonJS({ } namespaces = split[i].replace(/\*/g, ".*?"); if (namespaces[0] === "-") { - createDebug.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + createDebug.skips.push(new RegExp("^" + namespaces.slice(1) + "$")); } else { createDebug.names.push(new RegExp("^" + namespaces + "$")); } @@ -7966,9 +8173,9 @@ var require_common = __commonJS({ } }); -// ../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/browser.js +// ../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/browser.js var require_browser = __commonJS({ - "../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/browser.js"(exports2, module2) { + "../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/browser.js"(exports2, module2) { exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; @@ -8068,7 +8275,11 @@ var require_browser = __commonJS({ if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { return false; } - return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); } function formatArgs(args2) { args2[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args2[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff); @@ -8131,9 +8342,9 @@ var require_browser = __commonJS({ } }); -// ../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/node.js +// ../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/node.js var require_node = __commonJS({ - "../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/node.js"(exports2, module2) { + "../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/node.js"(exports2, module2) { var tty = require("tty"); var util = require("util"); exports2.init = init; @@ -8142,8 +8353,11 @@ var require_node = __commonJS({ exports2.save = save; exports2.load = load; exports2.useColors = useColors; - exports2.destroy = util.deprecate(() => { - }, "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); + exports2.destroy = util.deprecate( + () => { + }, + "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`." + ); exports2.colors = [6, 2, 3, 4, 5, 1]; try { const supportsColor = require("supports-color"); @@ -8255,10 +8469,10 @@ var require_node = __commonJS({ const { namespace: name, useColors: useColors2 } = this; if (useColors2) { const c = this.color; - const colorCode = "[3" + (c < 8 ? c : "8;5;" + c); - const prefix = ` ${colorCode};1m${name} `; + const colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); + const prefix = ` ${colorCode};1m${name} \x1B[0m`; args2[0] = prefix + args2[0].split("\n").join("\n" + prefix); - args2.push(colorCode + "m+" + module2.exports.humanize(this.diff) + ""); + args2.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m"); } else { args2[0] = getDate() + name + " " + args2[0]; } @@ -8267,7 +8481,7 @@ var require_node = __commonJS({ if (exports2.inspectOpts.hideDate) { return ""; } - return new Date().toISOString() + " "; + return (/* @__PURE__ */ new Date()).toISOString() + " "; } function log2(...args2) { return process.stderr.write(util.format(...args2) + "\n"); @@ -8302,9 +8516,9 @@ var require_node = __commonJS({ } }); -// ../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/index.js +// ../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/index.js var require_src = __commonJS({ - "../../node_modules/.pnpm/debug@4.3.2/node_modules/debug/src/index.js"(exports2, module2) { + "../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/index.js"(exports2, module2) { if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { module2.exports = require_browser(); } else { @@ -8313,16 +8527,16 @@ var require_src = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js var require_tabtabDebug = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js"(exports2, module2) { - var fs = require("fs"); + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js"(exports2, module2) { + var fs2 = require("fs"); var util = require("util"); var tabtabDebug = (name) => { let debug = require_src()(name); if (process.env.TABTAB_DEBUG) { const file = process.env.TABTAB_DEBUG; - const stream = fs.createWriteStream(file, { + const stream = fs2.createWriteStream(file, { flags: "a+" }); const log2 = (...args2) => { @@ -8347,11 +8561,11 @@ var require_tabtabDebug = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/prompt.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/prompt.js var require_prompt2 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/prompt.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/prompt.js"(exports2, module2) { var enquirer = require_enquirer(); - var path = require("path"); + var path2 = require("path"); var { SHELL_LOCATIONS } = require_constants(); var debug = require_tabtabDebug()("tabtab:prompt"); var prompt = async () => { @@ -8385,7 +8599,7 @@ var require_prompt2 = __commonJS({ type: "input", validate: (input) => { debug("Validating input", input); - return path.isAbsolute(input); + return path2.isAbsolute(input); } }); console.log(`Very well, we will install using ${userLocation}`); @@ -8396,9 +8610,9 @@ var require_prompt2 = __commonJS({ } }); -// ../../node_modules/.pnpm/untildify@4.0.0/node_modules/untildify/index.js +// ../node_modules/.pnpm/untildify@4.0.0/node_modules/untildify/index.js var require_untildify = __commonJS({ - "../../node_modules/.pnpm/untildify@4.0.0/node_modules/untildify/index.js"(exports2, module2) { + "../node_modules/.pnpm/untildify@4.0.0/node_modules/untildify/index.js"(exports2, module2) { "use strict"; var os = require("os"); var homeDirectory = os.homedir(); @@ -8411,21 +8625,21 @@ var require_untildify = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/systemShell.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/systemShell.js var require_systemShell = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/systemShell.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/systemShell.js"(exports2, module2) { var systemShell = () => (process.env.SHELL || "").split("/").slice(-1)[0]; module2.exports = systemShell; } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/exists.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/exists.js var require_exists = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/exists.js"(exports2, module2) { - var fs = require("fs"); + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/exists.js"(exports2, module2) { + var fs2 = require("fs"); var untildify = require_untildify(); var { promisify } = require("util"); - var readFile = promisify(fs.readFile); + var readFile = promisify(fs2.readFile); module2.exports = async (file) => { let fileExists; try { @@ -8439,9 +8653,9 @@ var require_exists = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/index.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/index.js var require_utils2 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/index.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/utils/index.js"(exports2, module2) { var tabtabDebug = require_tabtabDebug(); var systemShell = require_systemShell(); var exists = require_exists(); @@ -8453,19 +8667,19 @@ var require_utils2 = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/installer.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/installer.js var require_installer = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/installer.js"(exports2, module2) { - var fs = require("fs"); - var path = require("path"); + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/installer.js"(exports2, module2) { + var fs2 = require("fs"); + var path2 = require("path"); var untildify = require_untildify(); var { promisify } = require("util"); var { tabtabDebug, systemShell, exists } = require_utils2(); var debug = tabtabDebug("tabtab:installer"); - var readFile = promisify(fs.readFile); - var writeFile = promisify(fs.writeFile); - var unlink = promisify(fs.unlink); - var mkdir = promisify(fs.mkdir); + var readFile = promisify(fs2.readFile); + var writeFile = promisify(fs2.writeFile); + var unlink = promisify(fs2.unlink); + var mkdir = promisify(fs2.mkdir); var { BASH_LOCATION, FISH_LOCATION, @@ -8475,12 +8689,12 @@ var require_installer = __commonJS({ } = require_constants(); var scriptFromShell = (shell = systemShell()) => { if (shell === "fish") { - return path.join(__dirname, "scripts/fish.sh"); + return path2.join(__dirname, "scripts/fish.sh"); } if (shell === "zsh") { - return path.join(__dirname, "scripts/zsh.sh"); + return path2.join(__dirname, "scripts/zsh.sh"); } - return path.join(__dirname, "scripts/bash.sh"); + return path2.join(__dirname, "scripts/bash.sh"); }; var locationFromShell = (shell = systemShell()) => { if (shell === "bash") @@ -8515,7 +8729,11 @@ var require_installer = __commonJS({ filecontent = await readFile(untildify(filename), "utf8"); } catch (err) { if (err.code !== "ENOENT") { - return console.error("Got an error while trying to read from %s file", filename, err); + return console.error( + "Got an error while trying to read from %s file", + filename, + err + ); } } return !!filecontent.match(`${line}`); @@ -8523,8 +8741,8 @@ var require_installer = __commonJS({ var writeLineToFilename = ({ filename, scriptname, name, shell }) => (resolve, reject) => { const filepath = untildify(filename); debug("Creating directory for %s file", filepath); - mkdir(path.dirname(filepath), { recursive: true }).then(() => { - const stream = fs.createWriteStream(filepath, { flags: "a" }); + mkdir(path2.dirname(filepath), { recursive: true }).then(() => { + const stream = fs2.createWriteStream(filepath, { flags: "a" }); stream.on("error", reject); stream.on("finish", () => resolve()); debug("Writing to shell configuration file (%s)", filename); @@ -8548,37 +8766,51 @@ ${sourceLineForShell(scriptname, shell)}`); }); }; var writeToShellConfig = async ({ location, name, shell }) => { - const scriptname = path.join(COMPLETION_DIR, shell, `${TABTAB_SCRIPT_NAME}.${shell}`); + const scriptname = path2.join( + COMPLETION_DIR, + shell, + `${TABTAB_SCRIPT_NAME}.${shell}` + ); const filename = location; const existing = await checkFilenameForLine(filename, scriptname); if (existing) { return console.log("=> Tabtab line already exists in %s file", filename); } - return new Promise(writeLineToFilename({ - filename, - scriptname, - name, - shell - })); + return new Promise( + writeLineToFilename({ + filename, + scriptname, + name, + shell + }) + ); }; var writeToTabtabScript = async ({ name, shell }) => { - const filename = path.join(COMPLETION_DIR, shell, `${TABTAB_SCRIPT_NAME}.${shell}`); - const scriptname = path.join(COMPLETION_DIR, shell, `${name}.${shell}`); + const filename = path2.join( + COMPLETION_DIR, + shell, + `${TABTAB_SCRIPT_NAME}.${shell}` + ); + const scriptname = path2.join(COMPLETION_DIR, shell, `${name}.${shell}`); const existing = await checkFilenameForLine(filename, scriptname); if (existing) { return console.log("=> Tabtab line already exists in %s file", filename); } - return new Promise(writeLineToFilename({ filename, scriptname, name, shell })); + return new Promise( + writeLineToFilename({ filename, scriptname, name, shell }) + ); }; var writeToCompletionScript = async ({ name, completer, shell }) => { - const filename = untildify(path.join(COMPLETION_DIR, shell, `${name}.${shell}`)); + const filename = untildify( + path2.join(COMPLETION_DIR, shell, `${name}.${shell}`) + ); const script = scriptFromShell(shell); debug("Writing completion script to", filename); debug("with", script); try { let filecontent = await readFile(script, "utf8"); filecontent = filecontent.replace(/\{pkgname\}/g, name).replace(/{completer}/g, completer).replace(/\r?\n/g, "\n"); - await mkdir(path.dirname(filename), { recursive: true }); + await mkdir(path2.dirname(filename), { recursive: true }); await writeFile(filename, filecontent); console.log("=> Wrote completion script to %s file", filename); } catch (err) { @@ -8648,17 +8880,25 @@ ${sourceLineForShell(scriptname, shell)}`); if (!shell) { throw new Error("Unable to uninstall if options.shell is missing"); } - const completionScript = untildify(path.join(COMPLETION_DIR, shell, `${name}.${shell}`)); + const completionScript = untildify( + path2.join(COMPLETION_DIR, shell, `${name}.${shell}`) + ); if (await exists(completionScript)) { await unlink(completionScript); console.log("=> Removed completion script (%s)", completionScript); } - const tabtabScript = untildify(path.join(COMPLETION_DIR, shell, `${TABTAB_SCRIPT_NAME}.${shell}`)); + const tabtabScript = untildify( + path2.join(COMPLETION_DIR, shell, `${TABTAB_SCRIPT_NAME}.${shell}`) + ); await removeLinesFromFilename(tabtabScript, name); const isEmpty = (await readFile(tabtabScript, "utf8")).trim() === ""; if (isEmpty) { const shellScript = locationFromShell(); - debug("File %s is empty. Removing source line from %s file", tabtabScript, shellScript); + debug( + "File %s is empty. Removing source line from %s file", + tabtabScript, + shellScript + ); await removeLinesFromFilename(shellScript, name); } console.log("=> Uninstalled completion for %s package", name); @@ -8675,9 +8915,9 @@ ${sourceLineForShell(scriptname, shell)}`); } }); -// ../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/index.js +// ../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/index.js var require_lib5 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/index.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+tabtab@0.1.2/node_modules/@pnpm/tabtab/lib/index.js"(exports2, module2) { var { SHELL_LOCATIONS } = require_constants(); var prompt = require_prompt2(); var installer = require_installer(); @@ -8724,7 +8964,12 @@ var require_lib5 = __commonJS({ if (!env) { throw new Error("parseEnv: You must pass in an environment object."); } - debug("Parsing env. CWORD: %s, COMP_POINT: %s, COMP_LINE: %s", env.COMP_CWORD, env.COMP_POINT, env.COMP_LINE); + debug( + "Parsing env. CWORD: %s, COMP_POINT: %s, COMP_LINE: %s", + env.COMP_CWORD, + env.COMP_POINT, + env.COMP_LINE + ); let cword = Number(env.COMP_CWORD); let point = Number(env.COMP_POINT); const line = env.COMP_LINE || ""; @@ -8814,13 +9059,13 @@ var require_lib5 = __commonJS({ } }); -// ../../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js +// ../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js var require_fast_safe_stringify = __commonJS({ - "../../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js"(exports2, module2) { - module2.exports = stringify; - stringify.default = stringify; - stringify.stable = deterministicStringify; - stringify.stableStringify = deterministicStringify; + "../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js"(exports2, module2) { + module2.exports = stringify2; + stringify2.default = stringify2; + stringify2.stable = deterministicStringify; + stringify2.stableStringify = deterministicStringify; var LIMIT_REPLACE_NODE = "[...]"; var CIRCULAR_REPLACE_NODE = "[Circular]"; var arr = []; @@ -8831,7 +9076,7 @@ var require_fast_safe_stringify = __commonJS({ edgesLimit: Number.MAX_SAFE_INTEGER }; } - function stringify(obj, replacer, spacer, options) { + function stringify2(obj, replacer, spacer, options) { if (typeof options === "undefined") { options = defaultOptions(); } @@ -9008,9 +9253,9 @@ var require_fast_safe_stringify = __commonJS({ } }); -// ../../node_modules/.pnpm/individual@3.0.0/node_modules/individual/index.js +// ../node_modules/.pnpm/individual@3.0.0/node_modules/individual/index.js var require_individual = __commonJS({ - "../../node_modules/.pnpm/individual@3.0.0/node_modules/individual/index.js"(exports2, module2) { + "../node_modules/.pnpm/individual@3.0.0/node_modules/individual/index.js"(exports2, module2) { "use strict"; var root = typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {}; module2.exports = Individual; @@ -9024,9 +9269,9 @@ var require_individual = __commonJS({ } }); -// ../../node_modules/.pnpm/bole@4.0.0/node_modules/bole/format.js +// ../node_modules/.pnpm/bole@5.0.4/node_modules/bole/format.js var require_format = __commonJS({ - "../../node_modules/.pnpm/bole@4.0.0/node_modules/bole/format.js"(exports2, module2) { + "../node_modules/.pnpm/bole@5.0.4/node_modules/bole/format.js"(exports2, module2) { var utilformat = require("util").format; function format(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) { if (a16 !== void 0) { @@ -9080,19 +9325,25 @@ var require_format = __commonJS({ } }); -// ../../node_modules/.pnpm/bole@4.0.0/node_modules/bole/bole.js +// ../node_modules/.pnpm/bole@5.0.4/node_modules/bole/bole.js var require_bole = __commonJS({ - "../../node_modules/.pnpm/bole@4.0.0/node_modules/bole/bole.js"(exports2, module2) { + "../node_modules/.pnpm/bole@5.0.4/node_modules/bole/bole.js"(exports2, module2) { "use strict"; var _stringify = require_fast_safe_stringify(); var individual = require_individual()("$$bole", { fastTime: false }); var format = require_format(); var levels = "debug info warn error".split(" "); - var hostname = require("os").hostname(); - var hostnameSt = _stringify(hostname); + var os = require("os"); var pid = process.pid; var hasObjMode = false; var scache = []; + var hostname; + try { + hostname = os.hostname(); + } catch (e) { + hostname = os.version().indexOf("Windows 7 ") === 0 ? "windows7" : "hostname-unknown"; + } + var hostnameSt = _stringify(hostname); for (const level of levels) { scache[level] = ',"hostname":' + hostnameSt + ',"pid":' + pid + ',"level":"' + level; Number(scache[level]); @@ -9113,6 +9364,7 @@ var require_bole = __commonJS({ name: err.name, message: err.message, code: err.code, + // perhaps stack: stackToString(err) }; } @@ -9135,8 +9387,8 @@ var require_bole = __commonJS({ function objectMode(stream) { return stream._writableState && stream._writableState.objectMode === true; } - function stringify(level, name, message2, obj) { - let s = '{"time":' + (individual.fastTime ? Date.now() : '"' + new Date().toISOString() + '"') + scache[level] + '","name":' + name + (message2 !== void 0 ? ',"message":' + _stringify(message2) : ""); + function stringify2(level, name, message2, obj) { + let s = '{"time":' + (individual.fastTime ? Date.now() : '"' + (/* @__PURE__ */ new Date()).toISOString() + '"') + scache[level] + '","name":' + name + (message2 !== void 0 ? ',"message":' + _stringify(message2) : ""); for (const k in obj) { s += "," + _stringify(k) + ":" + _stringify(obj[k]); } @@ -9146,7 +9398,7 @@ var require_bole = __commonJS({ } function extend(level, name, message2, obj) { const newObj = { - time: individual.fastTime ? Date.now() : new Date().toISOString(), + time: individual.fastTime ? Date.now() : (/* @__PURE__ */ new Date()).toISOString(), hostname, pid, level, @@ -9207,7 +9459,7 @@ var require_bole = __commonJS({ } } if (l === 1 && !hasObjMode) { - outputs[0].write(Buffer.from(stringify(level, nameSt, message2, out) + "\n")); + outputs[0].write(Buffer.from(stringify2(level, nameSt, message2, out) + "\n")); return; } for (; i < l; i++) { @@ -9218,7 +9470,7 @@ var require_bole = __commonJS({ outputs[i].write(objectOut); } else { if (stringified === void 0) { - stringified = Buffer.from(stringify(level, nameSt, message2, out) + "\n"); + stringified = Buffer.from(stringify2(level, nameSt, message2, out) + "\n"); } outputs[i].write(stringified); } @@ -9276,15 +9528,15 @@ var require_bole = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/logger.js +// ../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/logger.js var require_logger = __commonJS({ - "../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/logger.js"(exports2) { + "../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/logger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.globalInfo = exports2.globalWarn = void 0; + exports2.globalInfo = exports2.globalWarn = exports2.logger = void 0; var bole = require_bole(); bole.setFastTime(); - exports2.default = bole("pnpm"); + exports2.logger = bole("pnpm"); var globalLogger = bole("pnpm:global"); function globalWarn(message2) { globalLogger.warn(message2); @@ -9297,47 +9549,40 @@ var require_logger = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/stream.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js var require_stream = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { module2.exports = require("stream"); } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/buffer_list.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js var require_buffer_list = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports2, module2) { "use strict"; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); - if (enumerableOnly) - symbols = symbols.filter(function(sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); + enumerableOnly && (symbols = symbols.filter(function(sym) { + return Object.getOwnPropertyDescriptor(object, sym).enumerable; + })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - if (i % 2) { - ownKeys(Object(source), true).forEach(function(key) { - _defineProperty(target, key, source[key]); - }); - } else if (Object.getOwnPropertyDescriptors) { - Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); - } else { - ownKeys(Object(source)).forEach(function(key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } + var source = null != arguments[i] ? arguments[i] : {}; + i % 2 ? ownKeys(Object(source), true).forEach(function(key) { + _defineProperty(target, key, source[key]); + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) { + Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); + }); } return target; } function _defineProperty(obj, key, value) { + key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { @@ -9357,7 +9602,7 @@ var require_buffer_list = __commonJS({ descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); + Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { @@ -9365,8 +9610,25 @@ var require_buffer_list = __commonJS({ _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); + Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } + function _toPropertyKey(arg) { + var key = _toPrimitive(arg, "string"); + return typeof key === "symbol" ? key : String(key); + } + function _toPrimitive(input, hint) { + if (typeof input !== "object" || input === null) + return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== void 0) { + var res = prim.call(input, hint || "default"); + if (typeof res !== "object") + return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); + } var _require = require("buffer"); var Buffer2 = _require.Buffer; var _require2 = require("util"); @@ -9434,9 +9696,8 @@ var require_buffer_list = __commonJS({ return ""; var p = this.head; var ret = "" + p.data; - while (p = p.next) { + while (p = p.next) ret += s + p.data; - } return ret; } }, { @@ -9454,6 +9715,7 @@ var require_buffer_list = __commonJS({ } return ret; } + // Consumes a specified amount of bytes or characters from the buffered data. }, { key: "consume", value: function consume(n, hasStrings) { @@ -9473,6 +9735,7 @@ var require_buffer_list = __commonJS({ value: function first() { return this.head.data; } + // Consumes a specified amount of characters from the buffered data. }, { key: "_getString", value: function _getString(n) { @@ -9506,6 +9769,7 @@ var require_buffer_list = __commonJS({ this.length -= c; return ret; } + // Consumes a specified amount of bytes from the buffered data. }, { key: "_getBuffer", value: function _getBuffer(n) { @@ -9537,11 +9801,14 @@ var require_buffer_list = __commonJS({ this.length -= c; return ret; } + // Make sure the linked list only shows the minimal necessary information. }, { key: custom, value: function value(_, options) { - return inspect(this, _objectSpread({}, options, { + return inspect(this, _objectSpread(_objectSpread({}, options), {}, { + // Only inspect one level. depth: 0, + // It should not recurse. customInspect: false })); } @@ -9551,9 +9818,9 @@ var require_buffer_list = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/destroy.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { "use strict"; function destroy(err, cb) { var _this = this; @@ -9644,9 +9911,9 @@ var require_destroy = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/errors.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js var require_errors = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/errors.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js"(exports2, module2) { "use strict"; var codes = {}; function createErrorType(code, message2, Base) { @@ -9744,9 +10011,9 @@ var require_errors = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/state.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js var require_state2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/state.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js"(exports2, module2) { "use strict"; var ERR_INVALID_OPT_VALUE = require_errors().codes.ERR_INVALID_OPT_VALUE; function highWaterMarkFrom(options, isDuplex, duplexKey) { @@ -9769,9 +10036,9 @@ var require_state2 = __commonJS({ } }); -// ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js +// ../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js var require_inherits_browser = __commonJS({ - "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js"(exports2, module2) { + "../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js"(exports2, module2) { if (typeof Object.create === "function") { module2.exports = function inherits(ctor, superCtor) { if (superCtor) { @@ -9801,9 +10068,9 @@ var require_inherits_browser = __commonJS({ } }); -// ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js +// ../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js var require_inherits = __commonJS({ - "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js"(exports2, module2) { + "../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js"(exports2, module2) { try { util = require("util"); if (typeof util.inherits !== "function") @@ -9816,16 +10083,16 @@ var require_inherits = __commonJS({ } }); -// ../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js +// ../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js var require_node2 = __commonJS({ - "../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js"(exports2, module2) { + "../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js"(exports2, module2) { module2.exports = require("util").deprecate; } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_writable.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js var require_stream_writable = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { "use strict"; module2.exports = Writable; function CorkedRequest(state) { @@ -9843,7 +10110,7 @@ var require_stream_writable = __commonJS({ }; var Stream = require_stream(); var Buffer2 = require("buffer").Buffer; - var OurUint8Array = global.Uint8Array || function() { + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); @@ -10027,6 +10294,9 @@ var require_stream_writable = __commonJS({ return this; }; Object.defineProperty(Writable.prototype, "writableBuffer", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); @@ -10039,6 +10309,9 @@ var require_stream_writable = __commonJS({ return chunk; } Object.defineProperty(Writable.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState.highWaterMark; @@ -10217,6 +10490,9 @@ var require_stream_writable = __commonJS({ return this; }; Object.defineProperty(Writable.prototype, "writableLength", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState.length; @@ -10289,6 +10565,9 @@ var require_stream_writable = __commonJS({ state.corkedRequestsFree.next = corkReq; } Object.defineProperty(Writable.prototype, "destroyed", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { if (this._writableState === void 0) { @@ -10311,15 +10590,14 @@ var require_stream_writable = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_duplex.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js var require_stream_duplex = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { "use strict"; var objectKeys = Object.keys || function(obj) { var keys2 = []; - for (var key in obj) { + for (var key in obj) keys2.push(key); - } return keys2; }; module2.exports = Duplex; @@ -10355,18 +10633,27 @@ var require_stream_duplex = __commonJS({ } } Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState.highWaterMark; } }); Object.defineProperty(Duplex.prototype, "writableBuffer", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); } }); Object.defineProperty(Duplex.prototype, "writableLength", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._writableState.length; @@ -10381,6 +10668,9 @@ var require_stream_duplex = __commonJS({ self2.end(); } Object.defineProperty(Duplex.prototype, "destroyed", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { if (this._readableState === void 0 || this._writableState === void 0) { @@ -10399,9 +10689,327 @@ var require_stream_duplex = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +// ../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js +var require_safe_buffer = __commonJS({ + "../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js"(exports2, module2) { + var buffer = require("buffer"); + var Buffer2 = buffer.Buffer; + function copyProps(src, dst) { + for (var key in src) { + dst[key] = src[key]; + } + } + if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { + module2.exports = buffer; + } else { + copyProps(buffer, exports2); + exports2.Buffer = SafeBuffer; + } + function SafeBuffer(arg, encodingOrOffset, length) { + return Buffer2(arg, encodingOrOffset, length); + } + SafeBuffer.prototype = Object.create(Buffer2.prototype); + copyProps(Buffer2, SafeBuffer); + SafeBuffer.from = function(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + throw new TypeError("Argument must not be a number"); + } + return Buffer2(arg, encodingOrOffset, length); + }; + SafeBuffer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + var buf = Buffer2(size); + if (fill !== void 0) { + if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + } else { + buf.fill(0); + } + return buf; + }; + SafeBuffer.allocUnsafe = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return Buffer2(size); + }; + SafeBuffer.allocUnsafeSlow = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return buffer.SlowBuffer(size); + }; + } +}); + +// ../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js +var require_string_decoder = __commonJS({ + "../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js"(exports2) { + "use strict"; + var Buffer2 = require_safe_buffer().Buffer; + var isEncoding = Buffer2.isEncoding || function(encoding) { + encoding = "" + encoding; + switch (encoding && encoding.toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + case "raw": + return true; + default: + return false; + } + }; + function _normalizeEncoding(enc) { + if (!enc) + return "utf8"; + var retried; + while (true) { + switch (enc) { + case "utf8": + case "utf-8": + return "utf8"; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return "utf16le"; + case "latin1": + case "binary": + return "latin1"; + case "base64": + case "ascii": + case "hex": + return enc; + default: + if (retried) + return; + enc = ("" + enc).toLowerCase(); + retried = true; + } + } + } + function normalizeEncoding(enc) { + var nenc = _normalizeEncoding(enc); + if (typeof nenc !== "string" && (Buffer2.isEncoding === isEncoding || !isEncoding(enc))) + throw new Error("Unknown encoding: " + enc); + return nenc || enc; + } + exports2.StringDecoder = StringDecoder; + function StringDecoder(encoding) { + this.encoding = normalizeEncoding(encoding); + var nb; + switch (this.encoding) { + case "utf16le": + this.text = utf16Text; + this.end = utf16End; + nb = 4; + break; + case "utf8": + this.fillLast = utf8FillLast; + nb = 4; + break; + case "base64": + this.text = base64Text; + this.end = base64End; + nb = 3; + break; + default: + this.write = simpleWrite; + this.end = simpleEnd; + return; + } + this.lastNeed = 0; + this.lastTotal = 0; + this.lastChar = Buffer2.allocUnsafe(nb); + } + StringDecoder.prototype.write = function(buf) { + if (buf.length === 0) + return ""; + var r; + var i; + if (this.lastNeed) { + r = this.fillLast(buf); + if (r === void 0) + return ""; + i = this.lastNeed; + this.lastNeed = 0; + } else { + i = 0; + } + if (i < buf.length) + return r ? r + this.text(buf, i) : this.text(buf, i); + return r || ""; + }; + StringDecoder.prototype.end = utf8End; + StringDecoder.prototype.text = utf8Text; + StringDecoder.prototype.fillLast = function(buf) { + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); + this.lastNeed -= buf.length; + }; + function utf8CheckByte(byte) { + if (byte <= 127) + return 0; + else if (byte >> 5 === 6) + return 2; + else if (byte >> 4 === 14) + return 3; + else if (byte >> 3 === 30) + return 4; + return byte >> 6 === 2 ? -1 : -2; + } + function utf8CheckIncomplete(self2, buf, i) { + var j = buf.length - 1; + if (j < i) + return 0; + var nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 1; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 2; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) { + if (nb === 2) + nb = 0; + else + self2.lastNeed = nb - 3; + } + return nb; + } + return 0; + } + function utf8CheckExtraBytes(self2, buf, p) { + if ((buf[0] & 192) !== 128) { + self2.lastNeed = 0; + return "\uFFFD"; + } + if (self2.lastNeed > 1 && buf.length > 1) { + if ((buf[1] & 192) !== 128) { + self2.lastNeed = 1; + return "\uFFFD"; + } + if (self2.lastNeed > 2 && buf.length > 2) { + if ((buf[2] & 192) !== 128) { + self2.lastNeed = 2; + return "\uFFFD"; + } + } + } + } + function utf8FillLast(buf) { + var p = this.lastTotal - this.lastNeed; + var r = utf8CheckExtraBytes(this, buf, p); + if (r !== void 0) + return r; + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, p, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, p, 0, buf.length); + this.lastNeed -= buf.length; + } + function utf8Text(buf, i) { + var total = utf8CheckIncomplete(this, buf, i); + if (!this.lastNeed) + return buf.toString("utf8", i); + this.lastTotal = total; + var end = buf.length - (total - this.lastNeed); + buf.copy(this.lastChar, 0, end); + return buf.toString("utf8", i, end); + } + function utf8End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + "\uFFFD"; + return r; + } + function utf16Text(buf, i) { + if ((buf.length - i) % 2 === 0) { + var r = buf.toString("utf16le", i); + if (r) { + var c = r.charCodeAt(r.length - 1); + if (c >= 55296 && c <= 56319) { + this.lastNeed = 2; + this.lastTotal = 4; + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + return r.slice(0, -1); + } + } + return r; + } + this.lastNeed = 1; + this.lastTotal = 2; + this.lastChar[0] = buf[buf.length - 1]; + return buf.toString("utf16le", i, buf.length - 1); + } + function utf16End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) { + var end = this.lastTotal - this.lastNeed; + return r + this.lastChar.toString("utf16le", 0, end); + } + return r; + } + function base64Text(buf, i) { + var n = (buf.length - i) % 3; + if (n === 0) + return buf.toString("base64", i); + this.lastNeed = 3 - n; + this.lastTotal = 3; + if (n === 1) { + this.lastChar[0] = buf[buf.length - 1]; + } else { + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + } + return buf.toString("base64", i, buf.length - n); + } + function base64End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); + return r; + } + function simpleWrite(buf) { + return buf.toString(this.encoding); + } + function simpleEnd(buf) { + return buf && buf.length ? this.write(buf) : ""; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js var require_end_of_stream = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports2, module2) { "use strict"; var ERR_STREAM_PREMATURE_CLOSE = require_errors().codes.ERR_STREAM_PREMATURE_CLOSE; function once(callback) { @@ -10500,12 +11108,13 @@ var require_end_of_stream = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/async_iterator.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js var require_async_iterator = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports2, module2) { "use strict"; var _Object$setPrototypeO; function _defineProperty(obj, key, value) { + key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { @@ -10513,6 +11122,22 @@ var require_async_iterator = __commonJS({ } return obj; } + function _toPropertyKey(arg) { + var key = _toPrimitive(arg, "string"); + return typeof key === "symbol" ? key : String(key); + } + function _toPrimitive(input, hint) { + if (typeof input !== "object" || input === null) + return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== void 0) { + var res = prim.call(input, hint || "default"); + if (typeof res !== "object") + return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); + } var finished = require_end_of_stream(); var kLastResolve = Symbol("lastResolve"); var kLastReject = Symbol("lastReject"); @@ -10668,9 +11293,9 @@ var require_async_iterator = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/from.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js var require_from = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/from.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js"(exports2, module2) { "use strict"; function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { @@ -10705,32 +11330,25 @@ var require_from = __commonJS({ var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); - if (enumerableOnly) - symbols = symbols.filter(function(sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); + enumerableOnly && (symbols = symbols.filter(function(sym) { + return Object.getOwnPropertyDescriptor(object, sym).enumerable; + })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - if (i % 2) { - ownKeys(Object(source), true).forEach(function(key) { - _defineProperty(target, key, source[key]); - }); - } else if (Object.getOwnPropertyDescriptors) { - Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); - } else { - ownKeys(Object(source)).forEach(function(key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } + var source = null != arguments[i] ? arguments[i] : {}; + i % 2 ? ownKeys(Object(source), true).forEach(function(key) { + _defineProperty(target, key, source[key]); + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) { + Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); + }); } return target; } function _defineProperty(obj, key, value) { + key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { @@ -10738,6 +11356,22 @@ var require_from = __commonJS({ } return obj; } + function _toPropertyKey(arg) { + var key = _toPrimitive(arg, "string"); + return typeof key === "symbol" ? key : String(key); + } + function _toPrimitive(input, hint) { + if (typeof input !== "object" || input === null) + return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== void 0) { + var res = prim.call(input, hint || "default"); + if (typeof res !== "object") + return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); + } var ERR_INVALID_ARG_TYPE = require_errors().codes.ERR_INVALID_ARG_TYPE; function from(Readable, iterable, opts) { var iterator; @@ -10765,7 +11399,7 @@ var require_from = __commonJS({ function _next2() { _next2 = _asyncToGenerator(function* () { try { - var _ref = yield iterator.next(), value = _ref.value, done = _ref.done; + var _yield$iterator$next = yield iterator.next(), value = _yield$iterator$next.value, done = _yield$iterator$next.done; if (done) { readable.push(null); } else if (readable.push(yield value)) { @@ -10785,9 +11419,9 @@ var require_from = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_readable.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js var require_stream_readable = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { "use strict"; module2.exports = Readable; var Duplex; @@ -10798,7 +11432,7 @@ var require_stream_readable = __commonJS({ }; var Stream = require_stream(); var Buffer2 = require("buffer").Buffer; - var OurUint8Array = global.Uint8Array || function() { + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); @@ -10872,7 +11506,7 @@ var require_stream_readable = __commonJS({ this.encoding = null; if (options.encoding) { if (!StringDecoder) - StringDecoder = require("string_decoder/").StringDecoder; + StringDecoder = require_string_decoder().StringDecoder; this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } @@ -10893,6 +11527,9 @@ var require_stream_readable = __commonJS({ Stream.call(this); } Object.defineProperty(Readable.prototype, "destroyed", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { if (this._readableState === void 0) { @@ -11003,7 +11640,7 @@ var require_stream_readable = __commonJS({ }; Readable.prototype.setEncoding = function(enc) { if (!StringDecoder) - StringDecoder = require("string_decoder/").StringDecoder; + StringDecoder = require_string_decoder().StringDecoder; var decoder = new StringDecoder(enc); this._readableState.decoder = decoder; this._readableState.encoding = this._readableState.decoder.encoding; @@ -11312,11 +11949,10 @@ var require_stream_readable = __commonJS({ state.pipes = null; state.pipesCount = 0; state.flowing = false; - for (var i = 0; i < len; i++) { + for (var i = 0; i < len; i++) dests[i].emit("unpipe", this, { hasUnpiped: false }); - } return this; } var index = indexOf(state.pipes, dest); @@ -11419,9 +12055,8 @@ var require_stream_readable = __commonJS({ function flow(stream) { var state = stream._readableState; debug("flow", state.flowing); - while (state.flowing && stream.read() !== null) { + while (state.flowing && stream.read() !== null) ; - } } Readable.prototype.wrap = function(stream) { var _this = this; @@ -11480,18 +12115,27 @@ var require_stream_readable = __commonJS({ }; } Object.defineProperty(Readable.prototype, "readableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._readableState.highWaterMark; } }); Object.defineProperty(Readable.prototype, "readableBuffer", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._readableState && this._readableState.buffer; } }); Object.defineProperty(Readable.prototype, "readableFlowing", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._readableState.flowing; @@ -11504,6 +12148,9 @@ var require_stream_readable = __commonJS({ }); Readable._fromList = fromList; Object.defineProperty(Readable.prototype, "readableLength", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail enumerable: false, get: function get() { return this._readableState.length; @@ -11568,9 +12215,9 @@ var require_stream_readable = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_transform.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js var require_stream_transform = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { "use strict"; module2.exports = Transform; var _require$codes = require_errors().codes; @@ -11676,9 +12323,9 @@ var require_stream_transform = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_passthrough.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js var require_stream_passthrough = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { "use strict"; module2.exports = PassThrough; var Transform = require_stream_transform(); @@ -11694,9 +12341,9 @@ var require_stream_passthrough = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/pipeline.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js var require_pipeline = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports2, module2) { "use strict"; var eos; function once(callback) { @@ -11793,9 +12440,9 @@ var require_pipeline = __commonJS({ } }); -// ../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/readable.js +// ../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js var require_readable = __commonJS({ - "../../node_modules/.pnpm/readable-stream@3.6.0/node_modules/readable-stream/readable.js"(exports2, module2) { + "../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js"(exports2, module2) { var Stream = require("stream"); if (process.env.READABLE_STREAM === "disable" && Stream) { module2.exports = Stream.Readable; @@ -11815,9 +12462,9 @@ var require_readable = __commonJS({ } }); -// ../../node_modules/.pnpm/through2@4.0.2/node_modules/through2/through2.js +// ../node_modules/.pnpm/through2@4.0.2/node_modules/through2/through2.js var require_through2 = __commonJS({ - "../../node_modules/.pnpm/through2@4.0.2/node_modules/through2/through2.js"(exports2, module2) { + "../node_modules/.pnpm/through2@4.0.2/node_modules/through2/through2.js"(exports2, module2) { var { Transform } = require_readable(); function inherits(fn2, sup) { fn2.super_ = sup; @@ -11878,9 +12525,9 @@ var require_through2 = __commonJS({ } }); -// ../../node_modules/.pnpm/split2@3.2.2/node_modules/split2/index.js +// ../node_modules/.pnpm/split2@3.2.2/node_modules/split2/index.js var require_split2 = __commonJS({ - "../../node_modules/.pnpm/split2@3.2.2/node_modules/split2/index.js"(exports2, module2) { + "../node_modules/.pnpm/split2@3.2.2/node_modules/split2/index.js"(exports2, module2) { "use strict"; var { Transform } = require_readable(); var { StringDecoder } = require("string_decoder"); @@ -11973,12 +12620,12 @@ var require_split2 = __commonJS({ } }); -// ../../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js +// ../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js var require_stringify = __commonJS({ - "../../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js"(exports2, module2) { - exports2 = module2.exports = stringify; + "../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js"(exports2, module2) { + exports2 = module2.exports = stringify2; exports2.getSerialize = serializer; - function stringify(obj, replacer, spaces, cycleReplacer) { + function stringify2(obj, replacer, spaces, cycleReplacer) { return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces); } function serializer(replacer, cycleReplacer) { @@ -12004,15 +12651,15 @@ var require_stringify = __commonJS({ } }); -// ../../node_modules/.pnpm/ndjson@2.0.0/node_modules/ndjson/index.js +// ../node_modules/.pnpm/ndjson@2.0.0/node_modules/ndjson/index.js var require_ndjson = __commonJS({ - "../../node_modules/.pnpm/ndjson@2.0.0/node_modules/ndjson/index.js"(exports2, module2) { + "../node_modules/.pnpm/ndjson@2.0.0/node_modules/ndjson/index.js"(exports2, module2) { var through = require_through2(); var split = require_split2(); var { EOL } = require("os"); - var stringify = require_stringify(); + var stringify2 = require_stringify(); module2.exports.stringify = (opts) => through.obj(opts, (obj, _, cb) => { - cb(null, stringify(obj) + EOL); + cb(null, stringify2(obj) + EOL); }); module2.exports.parse = (opts) => { opts = opts || {}; @@ -12032,15 +12679,15 @@ var require_ndjson = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/streamParser.js +// ../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/streamParser.js var require_streamParser = __commonJS({ - "../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/streamParser.js"(exports2) { + "../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/streamParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createStreamParser = void 0; + exports2.createStreamParser = exports2.streamParser = void 0; var bole = require_bole(); var ndjson = require_ndjson(); - exports2.default = createStreamParser(); + exports2.streamParser = createStreamParser(); function createStreamParser() { const sp = ndjson.parse(); bole.output([ @@ -12055,13 +12702,14 @@ var require_streamParser = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/writeToConsole.js +// ../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/writeToConsole.js var require_writeToConsole = __commonJS({ - "../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/writeToConsole.js"(exports2) { + "../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/writeToConsole.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.writeToConsole = void 0; var bole = require_bole(); - function default_1() { + function writeToConsole() { bole.output([ { level: "debug", @@ -12069,17 +12717,20 @@ var require_writeToConsole = __commonJS({ } ]); } - exports2.default = default_1; + exports2.writeToConsole = writeToConsole; } }); -// ../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/index.js +// ../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/index.js var require_lib6 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+logger@4.0.0/node_modules/@pnpm/logger/lib/index.js"(exports2) { + "../node_modules/.pnpm/@pnpm+logger@5.0.0/node_modules/@pnpm/logger/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.writeToConsole = exports2.createStreamParser = exports2.streamParser = exports2.globalWarn = exports2.globalInfo = void 0; + exports2.writeToConsole = exports2.streamParser = exports2.createStreamParser = exports2.globalWarn = exports2.globalInfo = exports2.logger = void 0; var logger_1 = require_logger(); + Object.defineProperty(exports2, "logger", { enumerable: true, get: function() { + return logger_1.logger; + } }); Object.defineProperty(exports2, "globalInfo", { enumerable: true, get: function() { return logger_1.globalInfo; } }); @@ -12087,46 +12738,296 @@ var require_lib6 = __commonJS({ return logger_1.globalWarn; } }); var streamParser_1 = require_streamParser(); - exports2.streamParser = streamParser_1.default; Object.defineProperty(exports2, "createStreamParser", { enumerable: true, get: function() { return streamParser_1.createStreamParser; } }); + Object.defineProperty(exports2, "streamParser", { enumerable: true, get: function() { + return streamParser_1.streamParser; + } }); var writeToConsole_1 = require_writeToConsole(); - exports2.writeToConsole = writeToConsole_1.default; - exports2.default = logger_1.default; + Object.defineProperty(exports2, "writeToConsole", { enumerable: true, get: function() { + return writeToConsole_1.writeToConsole; + } }); } }); -// lib/err.js -var require_err = __commonJS({ - "lib/err.js"(exports2) { +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/bin.js +var require_bin = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/bin.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var logger_1 = __importDefault(require_lib6()); - function err(error) { - if (!global["reporterInitialized"]) { - console.log(error); - process.exit(1); + var spawn = require("child_process").spawn; + function stripStderr(stderr) { + if (!stderr) + return; + stderr = stderr.trim(); + var regex = /your \d+x\d+ screen size is bogus\. expect trouble/gi; + stderr = stderr.replace(regex, ""); + return stderr.trim(); + } + function run(cmd, args2, options, done) { + if (typeof options === "function") { + done = options; + options = void 0; } - if (global["reporterInitialized"] === "silent") { - process.exit(1); + var executed = false; + var ch = spawn(cmd, args2, options); + var stdout = ""; + var stderr = ""; + ch.stdout.on("data", function(d) { + stdout += d.toString(); + }); + ch.stderr.on("data", function(d) { + stderr += d.toString(); + }); + ch.on("error", function(err) { + if (executed) + return; + executed = true; + done(new Error(err)); + }); + ch.on("close", function(code) { + if (executed) + return; + executed = true; + stderr = stripStderr(stderr); + if (stderr) { + return done(new Error(stderr)); + } + done(null, stdout, code); + }); + } + module2.exports = run; + } +}); + +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/ps.js +var require_ps = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/ps.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var bin = require_bin(); + function ps(callback) { + var args2 = ["-A", "-o", "ppid,pid"]; + bin("ps", args2, function(err, stdout, code) { + if (err) + return callback(err); + if (code !== 0) { + return callback(new Error("pidtree ps command exited with code " + code)); + } + try { + stdout = stdout.split(os.EOL); + var list = []; + for (var i = 1; i < stdout.length; i++) { + stdout[i] = stdout[i].trim(); + if (!stdout[i]) + continue; + stdout[i] = stdout[i].split(/\s+/); + stdout[i][0] = parseInt(stdout[i][0], 10); + stdout[i][1] = parseInt(stdout[i][1], 10); + list.push(stdout[i]); + } + callback(null, list); + } catch (error) { + callback(error); + } + }); + } + module2.exports = ps; + } +}); + +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/wmic.js +var require_wmic = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/wmic.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var bin = require_bin(); + function wmic(callback) { + var args2 = ["PROCESS", "get", "ParentProcessId,ProcessId"]; + var options = { windowsHide: true, windowsVerbatimArguments: true }; + bin("wmic", args2, options, function(err, stdout, code) { + if (err) { + callback(err); + return; + } + if (code !== 0) { + callback(new Error("pidtree wmic command exited with code " + code)); + return; + } + try { + stdout = stdout.split(os.EOL); + var list = []; + for (var i = 1; i < stdout.length; i++) { + stdout[i] = stdout[i].trim(); + if (!stdout[i]) + continue; + stdout[i] = stdout[i].split(/\s+/); + stdout[i][0] = parseInt(stdout[i][0], 10); + stdout[i][1] = parseInt(stdout[i][1], 10); + list.push(stdout[i]); + } + callback(null, list); + } catch (error) { + callback(error); + } + }); + } + module2.exports = wmic; + } +}); + +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/get.js +var require_get = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/get.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var platformToMethod = { + darwin: "ps", + sunos: "ps", + freebsd: "ps", + netbsd: "ps", + win: "wmic", + linux: "ps", + aix: "ps" + }; + var methodToRequireFn = { + ps: () => require_ps(), + wmic: () => require_wmic() + }; + var platform = os.platform(); + if (platform.startsWith("win")) { + platform = "win"; + } + var method = platformToMethod[platform]; + function get(callback) { + if (method === void 0) { + callback( + new Error( + os.platform() + " is not supported yet, please open an issue (https://github.com/simonepri/pidtree)" + ) + ); + } + var list = methodToRequireFn[method](); + list(callback); + } + module2.exports = get; + } +}); + +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/pidtree.js +var require_pidtree = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/lib/pidtree.js"(exports2, module2) { + "use strict"; + var getAll = require_get(); + function list(PID, options, callback) { + if (typeof options === "function") { + callback = options; + options = {}; } - if (error.name != null && error.name !== "pnpm" && !error.name.startsWith("pnpm:")) { - error.name = "pnpm"; + if (typeof options !== "object") { + options = {}; + } + PID = parseInt(PID, 10); + if (isNaN(PID) || PID < -1) { + callback(new TypeError("The pid provided is invalid")); + return; + } + getAll(function(err, list2) { + if (err) { + callback(err); + return; + } + if (PID === -1) { + for (var i = 0; i < list2.length; i++) { + list2[i] = options.advanced ? { ppid: list2[i][0], pid: list2[i][1] } : list2[i] = list2[i][1]; + } + callback(null, list2); + return; + } + var root; + for (var l = 0; l < list2.length; l++) { + if (list2[l][1] === PID) { + root = options.advanced ? { ppid: list2[l][0], pid: PID } : PID; + break; + } + if (list2[l][0] === PID) { + root = options.advanced ? { pid: PID } : PID; + } + } + if (!root) { + callback(new Error("No matching pid found")); + return; + } + var tree = {}; + while (list2.length > 0) { + var element = list2.pop(); + if (tree[element[0]]) { + tree[element[0]].push(element[1]); + } else { + tree[element[0]] = [element[1]]; + } + } + var idx = 0; + var pids = [root]; + while (idx < pids.length) { + var curpid = options.advanced ? pids[idx++].pid : pids[idx++]; + if (!tree[curpid]) + continue; + var length = tree[curpid].length; + for (var j = 0; j < length; j++) { + pids.push( + options.advanced ? { ppid: curpid, pid: tree[curpid][j] } : tree[curpid][j] + ); + } + delete tree[curpid]; + } + if (!options.root) { + pids.shift(); + } + callback(null, pids); + }); + } + module2.exports = list; + } +}); + +// ../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/index.js +var require_pidtree2 = __commonJS({ + "../node_modules/.pnpm/pidtree@0.6.0/node_modules/pidtree/index.js"(exports2, module2) { + "use strict"; + function pify(fn2, arg1, arg2) { + return new Promise(function(resolve, reject) { + fn2(arg1, arg2, function(err, data) { + if (err) + return reject(err); + resolve(data); + }); + }); + } + if (!String.prototype.startsWith) { + String.prototype.startsWith = function(suffix) { + return this.substring(0, suffix.length) === suffix; + }; + } + var pidtree = require_pidtree(); + function list(pid, options, callback) { + if (typeof options === "function") { + callback = options; + options = void 0; } - logger_1.default.error(error, error); - setTimeout(() => process.exit(1), 0); + if (typeof callback === "function") { + pidtree(pid, options, callback); + return; + } + return pify(pidtree, pid, options); } - exports2.default = err; + module2.exports = list; } }); -// ../../node_modules/.pnpm/signal-exit@3.0.4/node_modules/signal-exit/signals.js +// ../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js var require_signals = __commonJS({ - "../../node_modules/.pnpm/signal-exit@3.0.4/node_modules/signal-exit/signals.js"(exports2, module2) { + "../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js"(exports2, module2) { module2.exports = [ "SIGABRT", "SIGALRM", @@ -12135,20 +13036,43 @@ var require_signals = __commonJS({ "SIGTERM" ]; if (process.platform !== "win32") { - module2.exports.push("SIGVTALRM", "SIGXCPU", "SIGXFSZ", "SIGUSR2", "SIGTRAP", "SIGSYS", "SIGQUIT", "SIGIOT"); + module2.exports.push( + "SIGVTALRM", + "SIGXCPU", + "SIGXFSZ", + "SIGUSR2", + "SIGTRAP", + "SIGSYS", + "SIGQUIT", + "SIGIOT" + // should detect profiler and enable/disable accordingly. + // see #21 + // 'SIGPROF' + ); } if (process.platform === "linux") { - module2.exports.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT", "SIGUNUSED"); + module2.exports.push( + "SIGIO", + "SIGPOLL", + "SIGPWR", + "SIGSTKFLT", + "SIGUNUSED" + ); } } }); -// ../../node_modules/.pnpm/signal-exit@3.0.4/node_modules/signal-exit/index.js +// ../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js var require_signal_exit = __commonJS({ - "../../node_modules/.pnpm/signal-exit@3.0.4/node_modules/signal-exit/index.js"(exports2, module2) { + "../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js"(exports2, module2) { var process2 = global.process; - if (typeof process2 !== "object" || !process2) { - module2.exports = () => { + var processOk = function(process3) { + return process3 && typeof process3 === "object" && typeof process3.removeListener === "function" && typeof process3.emit === "function" && typeof process3.reallyExit === "function" && typeof process3.listeners === "function" && typeof process3.kill === "function" && typeof process3.pid === "number" && typeof process3.on === "function"; + }; + if (!processOk(process2)) { + module2.exports = function() { + return function() { + }; }; } else { assert = require("assert"); @@ -12170,8 +13094,9 @@ var require_signal_exit = __commonJS({ emitter.infinite = true; } module2.exports = function(cb, opts) { - if (global.process !== process2) { - return; + if (!processOk(global.process)) { + return function() { + }; } assert.equal(typeof cb, "function", "a callback must be provided for exit handler"); if (loaded === false) { @@ -12191,7 +13116,7 @@ var require_signal_exit = __commonJS({ return remove; }; unload = function unload2() { - if (!loaded || global.process !== process2) { + if (!loaded || !processOk(global.process)) { return; } loaded = false; @@ -12216,7 +13141,7 @@ var require_signal_exit = __commonJS({ sigListeners = {}; signals.forEach(function(sig) { sigListeners[sig] = function listener() { - if (process2 !== global.process) { + if (!processOk(global.process)) { return; } var listeners = process2.listeners(sig); @@ -12236,7 +13161,7 @@ var require_signal_exit = __commonJS({ }; loaded = false; load = function load2() { - if (loaded || process2 !== global.process) { + if (loaded || !processOk(global.process)) { return; } loaded = true; @@ -12255,17 +13180,18 @@ var require_signal_exit = __commonJS({ module2.exports.load = load; originalProcessReallyExit = process2.reallyExit; processReallyExit = function processReallyExit2(code) { - if (process2 !== global.process) { + if (!processOk(global.process)) { return; } - process2.exitCode = code || 0; + process2.exitCode = code || /* istanbul ignore next */ + 0; emit("exit", process2.exitCode, null); emit("afterexit", process2.exitCode, null); originalProcessReallyExit.call(process2, process2.exitCode); }; originalProcessEmit = process2.emit; processEmit = function processEmit2(ev, arg) { - if (ev === "exit" && process2 === global.process) { + if (ev === "exit" && processOk(global.process)) { if (arg !== void 0) { process2.exitCode = arg; } @@ -12295,9 +13221,9 @@ var require_signal_exit = __commonJS({ } }); -// ../../node_modules/.pnpm/array-find-index@1.0.2/node_modules/array-find-index/index.js +// ../node_modules/.pnpm/array-find-index@1.0.2/node_modules/array-find-index/index.js var require_array_find_index = __commonJS({ - "../../node_modules/.pnpm/array-find-index@1.0.2/node_modules/array-find-index/index.js"(exports2, module2) { + "../node_modules/.pnpm/array-find-index@1.0.2/node_modules/array-find-index/index.js"(exports2, module2) { "use strict"; module2.exports = function(arr, predicate, ctx) { if (typeof Array.prototype.findIndex === "function") { @@ -12321,9 +13247,9 @@ var require_array_find_index = __commonJS({ } }); -// ../../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/core.js +// ../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/core.js var require_core = __commonJS({ - "../../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/core.js"(exports2, module2) { + "../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/core.js"(exports2, module2) { "use strict"; var arrayFindIndex = require_array_find_index(); module2.exports = function() { @@ -12354,9 +13280,9 @@ var require_core = __commonJS({ } }); -// ../../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/index.js +// ../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/index.js var require_currently_unhandled = __commonJS({ - "../../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/index.js"(exports2, module2) { + "../node_modules/.pnpm/currently-unhandled@0.4.1/node_modules/currently-unhandled/index.js"(exports2, module2) { "use strict"; var core = require_core(); module2.exports = function(p) { @@ -12369,9 +13295,9 @@ var require_currently_unhandled = __commonJS({ } }); -// ../../node_modules/.pnpm/loud-rejection@2.2.0/node_modules/loud-rejection/index.js +// ../node_modules/.pnpm/loud-rejection@2.2.0/node_modules/loud-rejection/index.js var require_loud_rejection = __commonJS({ - "../../node_modules/.pnpm/loud-rejection@2.2.0/node_modules/loud-rejection/index.js"(exports2, module2) { + "../node_modules/.pnpm/loud-rejection@2.2.0/node_modules/loud-rejection/index.js"(exports2, module2) { "use strict"; var util = require("util"); var onExit = require_signal_exit(); @@ -12402,35 +13328,37 @@ var require_loud_rejection = __commonJS({ } }); -// ../constants/lib/index.js +// ../packages/constants/lib/index.js var require_lib7 = __commonJS({ - "../constants/lib/index.js"(exports2) { + "../packages/constants/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.WORKSPACE_MANIFEST_FILENAME = exports2.LAYOUT_VERSION = exports2.ENGINE_NAME = exports2.LOCKFILE_VERSION = exports2.WANTED_LOCKFILE = void 0; + exports2.WORKSPACE_MANIFEST_FILENAME = exports2.LAYOUT_VERSION = exports2.ENGINE_NAME = exports2.LOCKFILE_VERSION_V6 = exports2.LOCKFILE_VERSION = exports2.WANTED_LOCKFILE = void 0; exports2.WANTED_LOCKFILE = "pnpm-lock.yaml"; - exports2.LOCKFILE_VERSION = 5.3; + exports2.LOCKFILE_VERSION = 5.4; + exports2.LOCKFILE_VERSION_V6 = "6.0"; exports2.ENGINE_NAME = `${process.platform}-${process.arch}-node-${process.version.split(".")[0]}`; exports2.LAYOUT_VERSION = 5; exports2.WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml"; } }); -// ../error/lib/index.js +// ../packages/error/lib/index.js var require_lib8 = __commonJS({ - "../error/lib/index.js"(exports2) { + "../packages/error/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.FetchError = void 0; + exports2.LockfileMissingDependencyError = exports2.FetchError = exports2.PnpmError = void 0; + var constants_1 = require_lib7(); var PnpmError = class extends Error { constructor(code, message2, opts) { super(message2); this.code = `ERR_PNPM_${code}`; - this.hint = opts === null || opts === void 0 ? void 0 : opts.hint; - this.attempts = opts === null || opts === void 0 ? void 0 : opts.attempts; + this.hint = opts?.hint; + this.attempts = opts?.attempts; } }; - exports2.default = PnpmError; + exports2.PnpmError = PnpmError; var FetchError = class extends PnpmError { constructor(request, response, hint) { const message2 = `GET ${request.url}: ${response.statusText} - ${response.status}`; @@ -12455,259 +13383,884 @@ var require_lib8 = __commonJS({ const [authType, token] = authHeaderValue.split(" "); return `${authType} ${token.substring(0, 4)}[hidden]`; } - } -}); - -// ../../node_modules/.pnpm/crypto-random-string@2.0.0/node_modules/crypto-random-string/index.js -var require_crypto_random_string = __commonJS({ - "../../node_modules/.pnpm/crypto-random-string@2.0.0/node_modules/crypto-random-string/index.js"(exports2, module2) { - "use strict"; - var crypto = require("crypto"); - module2.exports = (length) => { - if (!Number.isFinite(length)) { - throw new TypeError("Expected a finite number"); + var LockfileMissingDependencyError = class extends PnpmError { + constructor(depPath) { + const message2 = `Broken lockfile: no entry for '${depPath}' in ${constants_1.WANTED_LOCKFILE}`; + super("LOCKFILE_MISSING_DEPENDENCY", message2, { + hint: "This issue is probably caused by a badly resolved merge conflict.\nTo fix the lockfile, run 'pnpm install --no-frozen-lockfile'." + }); } - return crypto.randomBytes(Math.ceil(length / 2)).toString("hex").slice(0, length); }; + exports2.LockfileMissingDependencyError = LockfileMissingDependencyError; } }); -// ../../node_modules/.pnpm/unique-string@2.0.0/node_modules/unique-string/index.js -var require_unique_string = __commonJS({ - "../../node_modules/.pnpm/unique-string@2.0.0/node_modules/unique-string/index.js"(exports2, module2) { - "use strict"; - var cryptoRandomString = require_crypto_random_string(); - module2.exports = () => cryptoRandomString(32); - } -}); - -// ../../node_modules/.pnpm/path-temp@2.0.0/node_modules/path-temp/index.js -var require_path_temp = __commonJS({ - "../../node_modules/.pnpm/path-temp@2.0.0/node_modules/path-temp/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var uniqueString = require_unique_string(); - module2.exports = function pathTemp(folder) { - return path.join(folder, `_tmp_${process.pid}_${uniqueString()}`); +// ../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/polyfills.js +var require_polyfills2 = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/polyfills.js"(exports2, module2) { + var constants = require("constants"); + var origCwd = process.cwd; + var cwd = null; + var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform; + process.cwd = function() { + if (!cwd) + cwd = origCwd.call(process); + return cwd; }; + try { + process.cwd(); + } catch (er) { + } + if (typeof process.chdir === "function") { + chdir = process.chdir; + process.chdir = function(d) { + cwd = null; + chdir.call(process, d); + }; + if (Object.setPrototypeOf) + Object.setPrototypeOf(process.chdir, chdir); + } + var chdir; + module2.exports = patch; + function patch(fs2) { + if (constants.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { + patchLchmod(fs2); + } + if (!fs2.lutimes) { + patchLutimes(fs2); + } + fs2.chown = chownFix(fs2.chown); + fs2.fchown = chownFix(fs2.fchown); + fs2.lchown = chownFix(fs2.lchown); + fs2.chmod = chmodFix(fs2.chmod); + fs2.fchmod = chmodFix(fs2.fchmod); + fs2.lchmod = chmodFix(fs2.lchmod); + fs2.chownSync = chownFixSync(fs2.chownSync); + fs2.fchownSync = chownFixSync(fs2.fchownSync); + fs2.lchownSync = chownFixSync(fs2.lchownSync); + fs2.chmodSync = chmodFixSync(fs2.chmodSync); + fs2.fchmodSync = chmodFixSync(fs2.fchmodSync); + fs2.lchmodSync = chmodFixSync(fs2.lchmodSync); + fs2.stat = statFix(fs2.stat); + fs2.fstat = statFix(fs2.fstat); + fs2.lstat = statFix(fs2.lstat); + fs2.statSync = statFixSync(fs2.statSync); + fs2.fstatSync = statFixSync(fs2.fstatSync); + fs2.lstatSync = statFixSync(fs2.lstatSync); + if (fs2.chmod && !fs2.lchmod) { + fs2.lchmod = function(path2, mode, cb) { + if (cb) + process.nextTick(cb); + }; + fs2.lchmodSync = function() { + }; + } + if (fs2.chown && !fs2.lchown) { + fs2.lchown = function(path2, uid, gid, cb) { + if (cb) + process.nextTick(cb); + }; + fs2.lchownSync = function() { + }; + } + if (platform === "win32") { + fs2.rename = typeof fs2.rename !== "function" ? fs2.rename : function(fs$rename) { + function rename(from, to, cb) { + var start = Date.now(); + var backoff = 0; + fs$rename(from, to, function CB(er) { + if (er && (er.code === "EACCES" || er.code === "EPERM") && Date.now() - start < 6e4) { + setTimeout(function() { + fs2.stat(to, function(stater, st) { + if (stater && stater.code === "ENOENT") + fs$rename(from, to, CB); + else + cb(er); + }); + }, backoff); + if (backoff < 100) + backoff += 10; + return; + } + if (cb) + cb(er); + }); + } + if (Object.setPrototypeOf) + Object.setPrototypeOf(rename, fs$rename); + return rename; + }(fs2.rename); + } + fs2.read = typeof fs2.read !== "function" ? fs2.read : function(fs$read) { + function read(fd, buffer, offset, length, position, callback_) { + var callback; + if (callback_ && typeof callback_ === "function") { + var eagCounter = 0; + callback = function(er, _, __) { + if (er && er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + return fs$read.call(fs2, fd, buffer, offset, length, position, callback); + } + callback_.apply(this, arguments); + }; + } + return fs$read.call(fs2, fd, buffer, offset, length, position, callback); + } + if (Object.setPrototypeOf) + Object.setPrototypeOf(read, fs$read); + return read; + }(fs2.read); + fs2.readSync = typeof fs2.readSync !== "function" ? fs2.readSync : function(fs$readSync) { + return function(fd, buffer, offset, length, position) { + var eagCounter = 0; + while (true) { + try { + return fs$readSync.call(fs2, fd, buffer, offset, length, position); + } catch (er) { + if (er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + continue; + } + throw er; + } + } + }; + }(fs2.readSync); + function patchLchmod(fs3) { + fs3.lchmod = function(path2, mode, callback) { + fs3.open( + path2, + constants.O_WRONLY | constants.O_SYMLINK, + mode, + function(err, fd) { + if (err) { + if (callback) + callback(err); + return; + } + fs3.fchmod(fd, mode, function(err2) { + fs3.close(fd, function(err22) { + if (callback) + callback(err2 || err22); + }); + }); + } + ); + }; + fs3.lchmodSync = function(path2, mode) { + var fd = fs3.openSync(path2, constants.O_WRONLY | constants.O_SYMLINK, mode); + var threw = true; + var ret; + try { + ret = fs3.fchmodSync(fd, mode); + threw = false; + } finally { + if (threw) { + try { + fs3.closeSync(fd); + } catch (er) { + } + } else { + fs3.closeSync(fd); + } + } + return ret; + }; + } + function patchLutimes(fs3) { + if (constants.hasOwnProperty("O_SYMLINK") && fs3.futimes) { + fs3.lutimes = function(path2, at, mt, cb) { + fs3.open(path2, constants.O_SYMLINK, function(er, fd) { + if (er) { + if (cb) + cb(er); + return; + } + fs3.futimes(fd, at, mt, function(er2) { + fs3.close(fd, function(er22) { + if (cb) + cb(er2 || er22); + }); + }); + }); + }; + fs3.lutimesSync = function(path2, at, mt) { + var fd = fs3.openSync(path2, constants.O_SYMLINK); + var ret; + var threw = true; + try { + ret = fs3.futimesSync(fd, at, mt); + threw = false; + } finally { + if (threw) { + try { + fs3.closeSync(fd); + } catch (er) { + } + } else { + fs3.closeSync(fd); + } + } + return ret; + }; + } else if (fs3.futimes) { + fs3.lutimes = function(_a, _b, _c, cb) { + if (cb) + process.nextTick(cb); + }; + fs3.lutimesSync = function() { + }; + } + } + function chmodFix(orig) { + if (!orig) + return orig; + return function(target, mode, cb) { + return orig.call(fs2, target, mode, function(er) { + if (chownErOk(er)) + er = null; + if (cb) + cb.apply(this, arguments); + }); + }; + } + function chmodFixSync(orig) { + if (!orig) + return orig; + return function(target, mode) { + try { + return orig.call(fs2, target, mode); + } catch (er) { + if (!chownErOk(er)) + throw er; + } + }; + } + function chownFix(orig) { + if (!orig) + return orig; + return function(target, uid, gid, cb) { + return orig.call(fs2, target, uid, gid, function(er) { + if (chownErOk(er)) + er = null; + if (cb) + cb.apply(this, arguments); + }); + }; + } + function chownFixSync(orig) { + if (!orig) + return orig; + return function(target, uid, gid) { + try { + return orig.call(fs2, target, uid, gid); + } catch (er) { + if (!chownErOk(er)) + throw er; + } + }; + } + function statFix(orig) { + if (!orig) + return orig; + return function(target, options, cb) { + if (typeof options === "function") { + cb = options; + options = null; + } + function callback(er, stats) { + if (stats) { + if (stats.uid < 0) + stats.uid += 4294967296; + if (stats.gid < 0) + stats.gid += 4294967296; + } + if (cb) + cb.apply(this, arguments); + } + return options ? orig.call(fs2, target, options, callback) : orig.call(fs2, target, callback); + }; + } + function statFixSync(orig) { + if (!orig) + return orig; + return function(target, options) { + var stats = options ? orig.call(fs2, target, options) : orig.call(fs2, target); + if (stats) { + if (stats.uid < 0) + stats.uid += 4294967296; + if (stats.gid < 0) + stats.gid += 4294967296; + } + return stats; + }; + } + function chownErOk(er) { + if (!er) + return true; + if (er.code === "ENOSYS") + return true; + var nonroot = !process.getuid || process.getuid() !== 0; + if (nonroot) { + if (er.code === "EINVAL" || er.code === "EPERM") + return true; + } + return false; + } + } } }); -// ../../node_modules/.pnpm/can-write-to-dir@1.1.1/node_modules/can-write-to-dir/index.js -var require_can_write_to_dir = __commonJS({ - "../../node_modules/.pnpm/can-write-to-dir@1.1.1/node_modules/can-write-to-dir/index.js"(exports2, module2) { - "use strict"; - var defaultFS = require("fs"); - var pathTemp = require_path_temp(); - module2.exports = async (dir, customFS) => { - const fs = customFS || defaultFS; - const tempFile = pathTemp(dir); - try { - await fs.promises.writeFile(tempFile, "", "utf8"); - fs.promises.unlink(tempFile).catch(() => { - }); - return true; - } catch (err) { - if (err.code === "EACCES" || err.code === "EPERM" || err.code === "EROFS") { - return false; +// ../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/legacy-streams.js +var require_legacy_streams2 = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { + var Stream = require("stream").Stream; + module2.exports = legacy; + function legacy(fs2) { + return { + ReadStream, + WriteStream + }; + function ReadStream(path2, options) { + if (!(this instanceof ReadStream)) + return new ReadStream(path2, options); + Stream.call(this); + var self2 = this; + this.path = path2; + this.fd = null; + this.readable = true; + this.paused = false; + this.flags = "r"; + this.mode = 438; + this.bufferSize = 64 * 1024; + options = options || {}; + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; } - throw err; + if (this.encoding) + this.setEncoding(this.encoding); + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.end === void 0) { + this.end = Infinity; + } else if ("number" !== typeof this.end) { + throw TypeError("end must be a Number"); + } + if (this.start > this.end) { + throw new Error("start must be <= end"); + } + this.pos = this.start; + } + if (this.fd !== null) { + process.nextTick(function() { + self2._read(); + }); + return; + } + fs2.open(this.path, this.flags, this.mode, function(err, fd) { + if (err) { + self2.emit("error", err); + self2.readable = false; + return; + } + self2.fd = fd; + self2.emit("open", fd); + self2._read(); + }); } - }; - module2.exports.sync = (dir, customFS) => { - const fs = customFS || defaultFS; - const tempFile = pathTemp(dir); - try { - fs.writeFileSync(tempFile, "", "utf8"); - fs.unlinkSync(tempFile); - return true; - } catch (err) { - if (err.code === "EACCES" || err.code === "EPERM" || err.code === "EROFS") { - return false; + function WriteStream(path2, options) { + if (!(this instanceof WriteStream)) + return new WriteStream(path2, options); + Stream.call(this); + this.path = path2; + this.fd = null; + this.writable = true; + this.flags = "w"; + this.encoding = "binary"; + this.mode = 438; + this.bytesWritten = 0; + options = options || {}; + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; + } + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.start < 0) { + throw new Error("start must be >= zero"); + } + this.pos = this.start; + } + this.busy = false; + this._queue = []; + if (this.fd === null) { + this._open = fs2.open; + this._queue.push([this._open, this.path, this.flags, this.mode, void 0]); + this.flush(); } - throw err; } - }; + } } }); -// ../../node_modules/.pnpm/path-name@1.0.0/node_modules/path-name/index.js -var require_path_name = __commonJS({ - "../../node_modules/.pnpm/path-name@1.0.0/node_modules/path-name/index.js"(exports2, module2) { +// ../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/clone.js +var require_clone2 = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/clone.js"(exports2, module2) { "use strict"; - var PATH; - if (process.platform === "win32") { - PATH = "Path"; - Object.keys(process.env).forEach((e) => { - if (e.match(/^PATH$/i)) { - PATH = e; - } + module2.exports = clone; + var getPrototypeOf = Object.getPrototypeOf || function(obj) { + return obj.__proto__; + }; + function clone(obj) { + if (obj === null || typeof obj !== "object") + return obj; + if (obj instanceof Object) + var copy = { __proto__: getPrototypeOf(obj) }; + else + var copy = /* @__PURE__ */ Object.create(null); + Object.getOwnPropertyNames(obj).forEach(function(key) { + Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key)); }); - } else { - PATH = "PATH"; + return copy; } - module2.exports = PATH; } }); -// ../global-bin-dir/lib/index.js -var require_lib9 = __commonJS({ - "../global-bin-dir/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = __importDefault(require("fs")); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var can_write_to_dir_1 = require_can_write_to_dir(); - var path_name_1 = __importDefault(require_path_name()); - function default_1(knownCandidates = [], { shouldAllowWrite = true } = {}) { - var _a, _b; - if (!process.env[path_name_1.default]) { - throw new error_1.default("NO_PATH_ENV", `Couldn't find a global directory for executables because the "${path_name_1.default}" environment variable is not set.`); +// ../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/graceful-fs.js +var require_graceful_fs2 = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.10/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { + var fs2 = require("fs"); + var polyfills = require_polyfills2(); + var legacy = require_legacy_streams2(); + var clone = require_clone2(); + var util = require("util"); + var gracefulQueue; + var previousSymbol; + if (typeof Symbol === "function" && typeof Symbol.for === "function") { + gracefulQueue = Symbol.for("graceful-fs.queue"); + previousSymbol = Symbol.for("graceful-fs.previous"); + } else { + gracefulQueue = "___graceful-fs.queue"; + previousSymbol = "___graceful-fs.previous"; + } + function noop() { + } + function publishQueue(context, queue2) { + Object.defineProperty(context, gracefulQueue, { + get: function() { + return queue2; + } + }); + } + var debug = noop; + if (util.debuglog) + debug = util.debuglog("gfs4"); + else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) + debug = function() { + var m = util.format.apply(util, arguments); + m = "GFS4: " + m.split(/\n/).join("\nGFS4: "); + console.error(m); + }; + if (!fs2[gracefulQueue]) { + queue = global[gracefulQueue] || []; + publishQueue(fs2, queue); + fs2.close = function(fs$close) { + function close(fd, cb) { + return fs$close.call(fs2, fd, function(err) { + if (!err) { + resetQueue(); + } + if (typeof cb === "function") + cb.apply(this, arguments); + }); + } + Object.defineProperty(close, previousSymbol, { + value: fs$close + }); + return close; + }(fs2.close); + fs2.closeSync = function(fs$closeSync) { + function closeSync(fd) { + fs$closeSync.apply(fs2, arguments); + resetQueue(); + } + Object.defineProperty(closeSync, previousSymbol, { + value: fs$closeSync + }); + return closeSync; + }(fs2.closeSync); + if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) { + process.on("exit", function() { + debug(fs2[gracefulQueue]); + require("assert").equal(fs2[gracefulQueue].length, 0); + }); } - const dirs = (_b = (_a = process.env[path_name_1.default]) === null || _a === void 0 ? void 0 : _a.split(path_1.default.delimiter)) !== null && _b !== void 0 ? _b : []; - const nodeBinDir = path_1.default.dirname(process.execPath); - return pickBestGlobalBinDir(dirs, [ - ...knownCandidates, - nodeBinDir - ], shouldAllowWrite); } - exports2.default = default_1; - var areDirsEqual = (dir1, dir2) => path_1.default.relative(dir1, dir2) === ""; - function pickBestGlobalBinDir(dirs, knownCandidates, shouldAllowWrite) { - const noWriteAccessDirs = []; - const pnpmDir = dirs.find((dir) => isUnderDir("pnpm", dir.toLowerCase())); - if (pnpmDir != null) { - if (canWriteToDirAndExists(pnpmDir)) - return pnpmDir; - throw new error_1.default("PNPM_DIR_NOT_WRITABLE", `The CLI has no write access to the pnpm home directory at ${pnpmDir}`); + var queue; + if (!global[gracefulQueue]) { + publishQueue(global, fs2[gracefulQueue]); + } + module2.exports = patch(clone(fs2)); + if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs2.__patched) { + module2.exports = patch(fs2); + fs2.__patched = true; + } + function patch(fs3) { + polyfills(fs3); + fs3.gracefulify = patch; + fs3.createReadStream = createReadStream; + fs3.createWriteStream = createWriteStream; + var fs$readFile = fs3.readFile; + fs3.readFile = readFile; + function readFile(path2, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$readFile(path2, options, cb); + function go$readFile(path3, options2, cb2, startTime) { + return fs$readFile(path3, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$readFile, [path3, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } } - for (const dir of dirs) { - const lowCaseDir = dir.toLowerCase(); - if ((isUnderDir("node", lowCaseDir) || isUnderDir("nodejs", lowCaseDir) || isUnderDir("npm", lowCaseDir) || knownCandidates.some((candidate) => areDirsEqual(candidate, dir)) || dirHasNodeRelatedCommand(dir)) && !isUnderDir("_npx", lowCaseDir)) { - if (canWriteToDirAndExists(dir)) - return dir; - noWriteAccessDirs.push(dir); + var fs$writeFile = fs3.writeFile; + fs3.writeFile = writeFile; + function writeFile(path2, data, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$writeFile(path2, data, options, cb); + function go$writeFile(path3, data2, options2, cb2, startTime) { + return fs$writeFile(path3, data2, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$writeFile, [path3, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$appendFile = fs3.appendFile; + if (fs$appendFile) + fs3.appendFile = appendFile; + function appendFile(path2, data, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$appendFile(path2, data, options, cb); + function go$appendFile(path3, data2, options2, cb2, startTime) { + return fs$appendFile(path3, data2, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$appendFile, [path3, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$copyFile = fs3.copyFile; + if (fs$copyFile) + fs3.copyFile = copyFile; + function copyFile(src, dest, flags, cb) { + if (typeof flags === "function") { + cb = flags; + flags = 0; + } + return go$copyFile(src, dest, flags, cb); + function go$copyFile(src2, dest2, flags2, cb2, startTime) { + return fs$copyFile(src2, dest2, flags2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$readdir = fs3.readdir; + fs3.readdir = readdir; + var noReaddirOptionVersions = /^v[0-5]\./; + function readdir(path2, options, cb) { + if (typeof options === "function") + cb = options, options = null; + var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path3, options2, cb2, startTime) { + return fs$readdir(path3, fs$readdirCallback( + path3, + options2, + cb2, + startTime + )); + } : function go$readdir2(path3, options2, cb2, startTime) { + return fs$readdir(path3, options2, fs$readdirCallback( + path3, + options2, + cb2, + startTime + )); + }; + return go$readdir(path2, options, cb); + function fs$readdirCallback(path3, options2, cb2, startTime) { + return function(err, files) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([ + go$readdir, + [path3, options2, cb2], + err, + startTime || Date.now(), + Date.now() + ]); + else { + if (files && files.sort) + files.sort(); + if (typeof cb2 === "function") + cb2.call(this, err, files); + } + }; } } - if (noWriteAccessDirs.length === 0) { - throw new error_1.default("NO_GLOBAL_BIN_DIR", "Couldn't find a suitable global executables directory.", { - hint: `There should be a node, nodejs, npm, or pnpm directory in the "${path_name_1.default}" environment variable` + if (process.version.substr(0, 4) === "v0.8") { + var legStreams = legacy(fs3); + ReadStream = legStreams.ReadStream; + WriteStream = legStreams.WriteStream; + } + var fs$ReadStream = fs3.ReadStream; + if (fs$ReadStream) { + ReadStream.prototype = Object.create(fs$ReadStream.prototype); + ReadStream.prototype.open = ReadStream$open; + } + var fs$WriteStream = fs3.WriteStream; + if (fs$WriteStream) { + WriteStream.prototype = Object.create(fs$WriteStream.prototype); + WriteStream.prototype.open = WriteStream$open; + } + Object.defineProperty(fs3, "ReadStream", { + get: function() { + return ReadStream; + }, + set: function(val) { + ReadStream = val; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(fs3, "WriteStream", { + get: function() { + return WriteStream; + }, + set: function(val) { + WriteStream = val; + }, + enumerable: true, + configurable: true + }); + var FileReadStream = ReadStream; + Object.defineProperty(fs3, "FileReadStream", { + get: function() { + return FileReadStream; + }, + set: function(val) { + FileReadStream = val; + }, + enumerable: true, + configurable: true + }); + var FileWriteStream = WriteStream; + Object.defineProperty(fs3, "FileWriteStream", { + get: function() { + return FileWriteStream; + }, + set: function(val) { + FileWriteStream = val; + }, + enumerable: true, + configurable: true + }); + function ReadStream(path2, options) { + if (this instanceof ReadStream) + return fs$ReadStream.apply(this, arguments), this; + else + return ReadStream.apply(Object.create(ReadStream.prototype), arguments); + } + function ReadStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err, fd) { + if (err) { + if (that.autoClose) + that.destroy(); + that.emit("error", err); + } else { + that.fd = fd; + that.emit("open", fd); + that.read(); + } }); } - if (shouldAllowWrite) { - throw new error_1.default("GLOBAL_BIN_DIR_PERMISSION", "No write access to the found global executable directories", { - hint: `The found directories: - ${noWriteAccessDirs.join("\n")}` + function WriteStream(path2, options) { + if (this instanceof WriteStream) + return fs$WriteStream.apply(this, arguments), this; + else + return WriteStream.apply(Object.create(WriteStream.prototype), arguments); + } + function WriteStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err, fd) { + if (err) { + that.destroy(); + that.emit("error", err); + } else { + that.fd = fd; + that.emit("open", fd); + } }); } - return noWriteAccessDirs[0]; + function createReadStream(path2, options) { + return new fs3.ReadStream(path2, options); + } + function createWriteStream(path2, options) { + return new fs3.WriteStream(path2, options); + } + var fs$open = fs3.open; + fs3.open = open; + function open(path2, flags, mode, cb) { + if (typeof mode === "function") + cb = mode, mode = null; + return go$open(path2, flags, mode, cb); + function go$open(path3, flags2, mode2, cb2, startTime) { + return fs$open(path3, flags2, mode2, function(err, fd) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$open, [path3, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + return fs3; } - var NODE_RELATED_COMMANDS = new Set(["pnpm", "npm", "node"]); - function dirHasNodeRelatedCommand(dir) { - try { - return fs_1.default.readdirSync(dir, { withFileTypes: true }).filter((entry) => !entry.isDirectory()).map(({ name }) => name.toLowerCase()).some((file) => NODE_RELATED_COMMANDS.has(file.split(".")[0])); - } catch (err) { - return false; + function enqueue(elem) { + debug("ENQUEUE", elem[0].name, elem[1]); + fs2[gracefulQueue].push(elem); + retry(); + } + var retryTimer; + function resetQueue() { + var now = Date.now(); + for (var i = 0; i < fs2[gracefulQueue].length; ++i) { + if (fs2[gracefulQueue][i].length > 2) { + fs2[gracefulQueue][i][3] = now; + fs2[gracefulQueue][i][4] = now; + } } + retry(); } - function isUnderDir(dir, target) { - target = target.endsWith(path_1.default.sep) ? target : `${target}${path_1.default.sep}`; - return target.includes(`${path_1.default.sep}${dir}${path_1.default.sep}`) || target.includes(`${path_1.default.sep}.${dir}${path_1.default.sep}`); + function retry() { + clearTimeout(retryTimer); + retryTimer = void 0; + if (fs2[gracefulQueue].length === 0) + return; + var elem = fs2[gracefulQueue].shift(); + var fn2 = elem[0]; + var args2 = elem[1]; + var err = elem[2]; + var startTime = elem[3]; + var lastTime = elem[4]; + if (startTime === void 0) { + debug("RETRY", fn2.name, args2); + fn2.apply(null, args2); + } else if (Date.now() - startTime >= 6e4) { + debug("TIMEOUT", fn2.name, args2); + var cb = args2.pop(); + if (typeof cb === "function") + cb.call(null, err); + } else { + var sinceAttempt = Date.now() - lastTime; + var sinceStart = Math.max(lastTime - startTime, 1); + var desiredDelay = Math.min(sinceStart * 1.2, 100); + if (sinceAttempt >= desiredDelay) { + debug("RETRY", fn2.name, args2); + fn2.apply(null, args2.concat([startTime])); + } else { + fs2[gracefulQueue].push(elem); + } + } + if (retryTimer === void 0) { + retryTimer = setTimeout(retry, 0); + } } - function canWriteToDirAndExists(dir) { + } +}); + +// ../node_modules/.pnpm/@pnpm+network.ca-file@1.0.2/node_modules/@pnpm/network.ca-file/dist/ca-file.js +var require_ca_file = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.ca-file@1.0.2/node_modules/@pnpm/network.ca-file/dist/ca-file.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readCAFileSync = void 0; + var graceful_fs_1 = __importDefault4(require_graceful_fs2()); + function readCAFileSync(filePath) { try { - return can_write_to_dir_1.sync(dir); + const contents = graceful_fs_1.default.readFileSync(filePath, "utf8"); + const delim = "-----END CERTIFICATE-----"; + const output = contents.split(delim).filter((ca) => Boolean(ca.trim())).map((ca) => `${ca.trimLeft()}${delim}`); + return output; } catch (err) { - if (err.code !== "ENOENT") - throw err; - return false; + if (err.code === "ENOENT") + return void 0; + throw err; } } + exports2.readCAFileSync = readCAFileSync; } }); -// ../../node_modules/.pnpm/camelcase@6.2.0/node_modules/camelcase/index.js -var require_camelcase = __commonJS({ - "../../node_modules/.pnpm/camelcase@6.2.0/node_modules/camelcase/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@pnpm+network.ca-file@1.0.2/node_modules/@pnpm/network.ca-file/dist/index.js +var require_dist = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.ca-file@1.0.2/node_modules/@pnpm/network.ca-file/dist/index.js"(exports2) { "use strict"; - var preserveCamelCase = (string, locale) => { - let isLastCharLower = false; - let isLastCharUpper = false; - let isLastLastCharUpper = false; - for (let i = 0; i < string.length; i++) { - const character = string[i]; - if (isLastCharLower && /[\p{Lu}]/u.test(character)) { - string = string.slice(0, i) + "-" + string.slice(i); - isLastCharLower = false; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = true; - i++; - } else if (isLastCharUpper && isLastLastCharUpper && /[\p{Ll}]/u.test(character)) { - string = string.slice(0, i - 1) + "-" + string.slice(i - 1); - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = false; - isLastCharLower = true; - } else { - isLastCharLower = character.toLocaleLowerCase(locale) === character && character.toLocaleUpperCase(locale) !== character; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = character.toLocaleUpperCase(locale) === character && character.toLocaleLowerCase(locale) !== character; - } - } - return string; - }; - var preserveConsecutiveUppercase = (input) => { - return input.replace(/^[\p{Lu}](?![\p{Lu}])/gu, (m1) => m1.toLowerCase()); - }; - var postProcess = (input, options) => { - return input.replace(/[_.\- ]+([\p{Alpha}\p{N}_]|$)/gu, (_, p1) => p1.toLocaleUpperCase(options.locale)).replace(/\d+([\p{Alpha}\p{N}_]|$)/gu, (m) => m.toLocaleUpperCase(options.locale)); - }; - var camelCase = (input, options) => { - if (!(typeof input === "string" || Array.isArray(input))) { - throw new TypeError("Expected the input to be `string | string[]`"); - } - options = { - pascalCase: false, - preserveConsecutiveUppercase: false, - ...options - }; - if (Array.isArray(input)) { - input = input.map((x) => x.trim()).filter((x) => x.length).join("-"); - } else { - input = input.trim(); - } - if (input.length === 0) { - return ""; - } - if (input.length === 1) { - return options.pascalCase ? input.toLocaleUpperCase(options.locale) : input.toLocaleLowerCase(options.locale); - } - const hasUpperCase = input !== input.toLocaleLowerCase(options.locale); - if (hasUpperCase) { - input = preserveCamelCase(input, options.locale); - } - input = input.replace(/^[_.\- ]+/, ""); - if (options.preserveConsecutiveUppercase) { - input = preserveConsecutiveUppercase(input); - } else { - input = input.toLocaleLowerCase(); - } - if (options.pascalCase) { - input = input.charAt(0).toLocaleUpperCase(options.locale) + input.slice(1); + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return postProcess(input, options); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; - module2.exports = camelCase; - module2.exports.default = camelCase; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_ca_file(), exports2); } }); -// ../../node_modules/.pnpm/proto-list@1.2.4/node_modules/proto-list/proto-list.js +// ../node_modules/.pnpm/proto-list@1.2.4/node_modules/proto-list/proto-list.js var require_proto_list = __commonJS({ - "../../node_modules/.pnpm/proto-list@1.2.4/node_modules/proto-list/proto-list.js"(exports2, module2) { + "../node_modules/.pnpm/proto-list@1.2.4/node_modules/proto-list/proto-list.js"(exports2, module2) { module2.exports = ProtoList; function setProto(obj, proto) { if (typeof Object.setPrototypeOf === "function") @@ -12805,9 +14358,9 @@ var require_proto_list = __commonJS({ } }); -// ../../node_modules/.pnpm/ini@1.3.8/node_modules/ini/ini.js +// ../node_modules/.pnpm/ini@1.3.8/node_modules/ini/ini.js var require_ini = __commonJS({ - "../../node_modules/.pnpm/ini@1.3.8/node_modules/ini/ini.js"(exports2) { + "../node_modules/.pnpm/ini@1.3.8/node_modules/ini/ini.js"(exports2) { exports2.parse = exports2.decode = decode; exports2.stringify = exports2.encode = encode; exports2.safe = safe; @@ -12967,12 +14520,12 @@ var require_ini = __commonJS({ } }); -// ../../node_modules/.pnpm/config-chain@1.1.13/node_modules/config-chain/index.js +// ../node_modules/.pnpm/config-chain@1.1.13/node_modules/config-chain/index.js var require_config_chain = __commonJS({ - "../../node_modules/.pnpm/config-chain@1.1.13/node_modules/config-chain/index.js"(exports2, module2) { + "../node_modules/.pnpm/config-chain@1.1.13/node_modules/config-chain/index.js"(exports2, module2) { var ProtoList = require_proto_list(); - var path = require("path"); - var fs = require("fs"); + var path2 = require("path"); + var fs2 = require("fs"); var ini = require_ini(); var EE = require("events").EventEmitter; var url = require("url"); @@ -12982,25 +14535,25 @@ var require_config_chain = __commonJS({ while (args2.length) { var a = args2.shift(); if (a) - conf.push(typeof a === "string" ? json(a) : a); + conf.push("string" === typeof a ? json(a) : a); } return conf; }; var find = exports2.find = function() { - var rel = path.join.apply(null, [].slice.call(arguments)); + var rel = path2.join.apply(null, [].slice.call(arguments)); function find2(start, rel2) { - var file = path.join(start, rel2); + var file = path2.join(start, rel2); try { - fs.statSync(file); + fs2.statSync(file); return file; } catch (err) { - if (path.dirname(start) !== start) - return find2(path.dirname(start), rel2); + if (path2.dirname(start) !== start) + return find2(path2.dirname(start), rel2); } } return find2(__dirname, rel); }; - var parse = exports2.parse = function(content, file, type) { + var parse2 = exports2.parse = function(content, file, type) { content = "" + content; if (!type) { try { @@ -13026,14 +14579,14 @@ var require_config_chain = __commonJS({ var args2 = [].slice.call(arguments).filter(function(arg) { return arg != null; }); - var file = path.join.apply(null, args2); + var file = path2.join.apply(null, args2); var content; try { - content = fs.readFileSync(file, "utf-8"); + content = fs2.readFileSync(file, "utf-8"); } catch (err) { return; } - return parse(content, file, "json"); + return parse2(content, file, "json"); }; var env = exports2.env = function(prefix, env2) { env2 = env2 || process.env; @@ -13125,7 +14678,7 @@ var require_config_chain = __commonJS({ data = ini.stringify(data); } this._saving++; - fs.writeFile(target.path, data, "utf8", function(er) { + fs2.writeFile(target.path, data, "utf8", function(er) { this._saving--; if (er) { if (cb) @@ -13147,7 +14700,7 @@ var require_config_chain = __commonJS({ this.sources[name] = { path: file, type }; this.push(marker); this._await(); - fs.readFile(file, "utf8", function(er, data) { + fs2.readFile(file, "utf8", function(er, data) { if (er) this.emit("error", er); this.addString(data, file, type, marker); @@ -13219,9 +14772,9 @@ var require_config_chain = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/envKeyToSetting.js +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/envKeyToSetting.js var require_envKeyToSetting = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/envKeyToSetting.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/envKeyToSetting.js"(exports2, module2) { module2.exports = function(x) { const colonIndex = x.indexOf(":"); if (colonIndex === -1) { @@ -13244,34 +14797,67 @@ var require_envKeyToSetting = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/util.js -var require_util = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/util.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+config.env-replace@1.1.0/node_modules/@pnpm/config.env-replace/dist/env-replace.js +var require_env_replace = __commonJS({ + "../node_modules/.pnpm/@pnpm+config.env-replace@1.1.0/node_modules/@pnpm/config.env-replace/dist/env-replace.js"(exports2) { "use strict"; - var fs = require("fs"); - var path = require("path"); - var envReplace = (str) => { - if (typeof str !== "string" || !str) { - return str; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envReplace = void 0; + var ENV_EXPR = /(? { - esc = esc.length > 0 && esc.length % 2; - if (esc) { - return orig; - } - if (process.env[name] === void 0) { - throw new Error(`Failed to replace env in config: ${orig}`); - } - return process.env[name]; - }); - }; + const envValue = getEnvValue(env, name); + if (envValue === void 0) { + throw new Error(`Failed to replace env in config: ${orig}`); + } + return `${escape.slice(escape.length / 2)}${envValue}`; + } + var ENV_VALUE = /([^:-]+)(:?)-(.+)/; + function getEnvValue(env, name) { + const matched = name.match(ENV_VALUE); + if (!matched) + return env[name]; + const [, variableName, colon, fallback] = matched; + if (Object.prototype.hasOwnProperty.call(env, variableName)) { + return !env[variableName] && colon ? fallback : env[variableName]; + } + return fallback; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+config.env-replace@1.1.0/node_modules/@pnpm/config.env-replace/dist/index.js +var require_dist2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+config.env-replace@1.1.0/node_modules/@pnpm/config.env-replace/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envReplace = void 0; + var env_replace_1 = require_env_replace(); + Object.defineProperty(exports2, "envReplace", { enumerable: true, get: function() { + return env_replace_1.envReplace; + } }); + } +}); + +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/util.js +var require_util = __commonJS({ + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/util.js"(exports2) { + "use strict"; + var fs2 = require("fs"); + var path2 = require("path"); + var { envReplace } = require_dist2(); var parseField = (types, field, key) => { if (typeof field !== "string") { return field; } const typeList = [].concat(types[key]); - const isPath = typeList.indexOf(path) !== -1; + const isPath = typeList.indexOf(path2) !== -1; const isBool = typeList.indexOf(Boolean) !== -1; const isString = typeList.indexOf(String) !== -1; const isNumber = typeList.indexOf(Number) !== -1; @@ -13300,13 +14886,13 @@ var require_util = __commonJS({ return void 0; } } - field = envReplace(field); + field = envReplace(field, process.env); if (isPath) { const regex = process.platform === "win32" ? /^~(\/|\\)/ : /^~\//; if (regex.test(field) && process.env.HOME) { - field = path.resolve(process.env.HOME, field.substr(2)); + field = path2.resolve(process.env.HOME, field.substr(2)); } - field = path.resolve(field); + field = path2.resolve(field); } if (isNumber && !isNaN(field)) { field = Number(field); @@ -13314,10 +14900,10 @@ var require_util = __commonJS({ return field; }; var findPrefix = (name) => { - name = path.resolve(name); + name = path2.resolve(name); let walkedUp = false; - while (path.basename(name) === "node_modules") { - name = path.dirname(name); + while (path2.basename(name) === "node_modules") { + name = path2.dirname(name); walkedUp = true; } if (walkedUp) { @@ -13329,11 +14915,11 @@ var require_util = __commonJS({ return original; } try { - const files = fs.readdirSync(name2); + const files = fs2.readdirSync(name2); if (files.includes("node_modules") || files.includes("package.json") || files.includes("package.json5") || files.includes("package.yaml") || files.includes("pnpm-workspace.yaml")) { return name2; } - const dirname = path.dirname(name2); + const dirname = path2.dirname(name2); if (dirname === name2) { return original; } @@ -13356,11 +14942,11 @@ var require_util = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/types.js +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/types.js var require_types2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/types.js"(exports2) { + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/types.js"(exports2) { "use strict"; - var path = require("path"); + var path2 = require("path"); var Stream = require("stream").Stream; var url = require("url"); var Umask = () => { @@ -13378,8 +14964,8 @@ var require_types2 = __commonJS({ "bin-links": Boolean, browser: [null, String], ca: [null, String, Array], - cafile: path, - cache: path, + cafile: path2, + cache: path2, "cache-lock-stale": Number, "cache-lock-retries": Number, "cache-lock-wait": Number, @@ -13403,7 +14989,7 @@ var require_types2 = __commonJS({ "git-tag-version": Boolean, "commit-hooks": Boolean, global: Boolean, - globalconfig: path, + globalconfig: path2, "global-style": Boolean, group: [Number, String], "https-proxy": [null, url], @@ -13413,7 +14999,7 @@ var require_types2 = __commonJS({ "if-present": Boolean, "ignore-prepublish": Boolean, "ignore-scripts": Boolean, - "init-module": path, + "init-module": path2, "init-author-name": String, "init-author-email": String, "init-author-url": ["", url], @@ -13423,6 +15009,8 @@ var require_types2 = __commonJS({ key: [null, String], "legacy-bundling": Boolean, link: Boolean, + // local-address must be listed as an IP for a local network interface + // must be IPv4 due to node bug "local-address": getLocalAddresses(), loglevel: ["silent", "error", "warn", "notice", "http", "timing", "info", "verbose", "silly"], logstream: Stream, @@ -13444,10 +15032,12 @@ var require_types2 = __commonJS({ parseable: Boolean, "prefer-offline": Boolean, "prefer-online": Boolean, - prefix: path, + prefix: path2, production: Boolean, progress: Boolean, proxy: [null, false, url], + provenance: Boolean, + // allow proxy to be disabled explicitly "read-only": Boolean, "rebuild-bundle": Boolean, registry: [null, url], @@ -13475,12 +15065,12 @@ var require_types2 = __commonJS({ "strict-ssl": Boolean, tag: String, timing: Boolean, - tmp: path, + tmp: path2, unicode: Boolean, "unsafe-perm": Boolean, usage: Boolean, user: [Number, String], - userconfig: path, + userconfig: path2, umask: Umask, version: Boolean, "tag-version-prefix": String, @@ -13491,21 +15081,24 @@ var require_types2 = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/conf.js +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/conf.js var require_conf = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/conf.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/conf.js"(exports2, module2) { "use strict"; - var fs = require("fs"); - var path = require("path"); + var { readCAFileSync } = require_dist(); + var fs2 = require("fs"); + var path2 = require("path"); var { ConfigChain } = require_config_chain(); var envKeyToSetting = require_envKeyToSetting(); var util = require_util(); var Conf = class extends ConfigChain { + // https://github.com/npm/cli/blob/latest/lib/config/core.js#L203-L217 constructor(base, types) { super(base); this.root = base; this._parseField = util.parseField.bind(null, types || require_types2()); } + // https://github.com/npm/cli/blob/latest/lib/config/core.js#L326-L338 add(data, marker) { try { for (const x of Object.keys(data)) { @@ -13516,6 +15109,7 @@ var require_conf = __commonJS({ } return super.add(data, marker); } + // https://github.com/npm/cli/blob/latest/lib/config/core.js#L306-L319 addFile(file, name) { name = name || file; const marker = { __source__: name }; @@ -13523,13 +15117,17 @@ var require_conf = __commonJS({ this.push(marker); this._await(); try { - const contents = fs.readFileSync(file, "utf8"); + const contents = fs2.readFileSync(file, "utf8"); this.addString(contents, file, "ini", marker); } catch (error) { - this.add({}, marker); + if (error.code === "ENOENT") { + this.add({}, marker); + } else { + return `Issue while reading "${file}". ${error.message}`; + } } - return this; } + // https://github.com/npm/cli/blob/latest/lib/config/core.js#L341-L357 addEnv(env) { env = env || process.env; const conf = {}; @@ -13541,6 +15139,7 @@ var require_conf = __commonJS({ }); return super.addEnv("", conf, "env"); } + // https://github.com/npm/cli/blob/latest/lib/config/load-prefix.js loadPrefix() { const cli = this.list[0]; Object.defineProperty(this, "prefix", { @@ -13560,7 +15159,7 @@ var require_conf = __commonJS({ this.set("prefix", prefix); }, get: () => { - return path.resolve(this.get("prefix")); + return path2.resolve(this.get("prefix")); } }); let p; @@ -13574,7 +15173,7 @@ var require_conf = __commonJS({ } }); if (Object.prototype.hasOwnProperty.call(cli, "prefix")) { - p = path.resolve(cli.prefix); + p = path2.resolve(cli.prefix); } else { try { const prefix = util.findPrefix(process.cwd()); @@ -13585,22 +15184,17 @@ var require_conf = __commonJS({ } return p; } + // https://github.com/npm/cli/blob/latest/lib/config/load-cafile.js loadCAFile(file) { if (!file) { return; } - try { - const contents = fs.readFileSync(file, "utf8"); - const delim = "-----END CERTIFICATE-----"; - const output = contents.split(delim).filter((x) => Boolean(x.trim())).map((x) => x.trimLeft() + delim); - this.set("ca", output); - } catch (error) { - if (error.code === "ENOENT") { - return; - } - throw error; + const ca = readCAFileSync(file); + if (ca) { + this.set("ca", ca); } } + // https://github.com/npm/cli/blob/latest/lib/config/set-user.js loadUser() { const defConf = this.root; if (this.get("global")) { @@ -13610,9 +15204,9 @@ var require_conf = __commonJS({ defConf.user = Number(process.env.SUDO_UID); return; } - const prefix = path.resolve(this.get("prefix")); + const prefix = path2.resolve(this.get("prefix")); try { - const stats = fs.statSync(prefix); + const stats = fs2.statSync(prefix); defConf.user = stats.uid; } catch (error) { if (error.code === "ENOENT") { @@ -13626,12 +15220,12 @@ var require_conf = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/defaults.js +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/defaults.js var require_defaults = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/lib/defaults.js"(exports2) { + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/lib/defaults.js"(exports2) { "use strict"; var os = require("os"); - var path = require("path"); + var path2 = require("path"); var temp = os.tmpdir(); var uidOrPid = process.getuid ? process.getuid() : process.pid; var hasUnicode = () => true; @@ -13647,11 +15241,11 @@ var require_defaults = __commonJS({ if (home) { process.env.HOME = home; } else { - home = path.resolve(temp, "npm-" + uidOrPid); + home = path2.resolve(temp, "npm-" + uidOrPid); } var cacheExtra = process.platform === "win32" ? "npm-cache" : ".npm"; - var cacheRoot = process.platform === "win32" ? process.env.APPDATA : home; - var cache = path.resolve(cacheRoot, cacheExtra); + var cacheRoot = process.platform === "win32" && process.env.APPDATA || home; + var cache = path2.resolve(cacheRoot, cacheExtra); var defaults; var globalPrefix; Object.defineProperty(exports2, "defaults", { @@ -13661,11 +15255,11 @@ var require_defaults = __commonJS({ if (process.env.PREFIX) { globalPrefix = process.env.PREFIX; } else if (process.platform === "win32") { - globalPrefix = path.dirname(process.execPath); + globalPrefix = path2.dirname(process.execPath); } else { - globalPrefix = path.dirname(path.dirname(process.execPath)); + globalPrefix = path2.dirname(path2.dirname(process.execPath)); if (process.env.DESTDIR) { - globalPrefix = path.join(process.env.DESTDIR, globalPrefix); + globalPrefix = path2.join(process.env.DESTDIR, globalPrefix); } } defaults = { @@ -13703,7 +15297,7 @@ var require_defaults = __commonJS({ "git-tag-version": true, "commit-hooks": true, global: false, - globalconfig: path.resolve(globalPrefix, "etc", "npmrc"), + globalconfig: path2.resolve(globalPrefix, "etc", "npmrc"), "global-style": false, group: process.platform === "win32" ? 0 : process.env.SUDO_GID || process.getgid && process.getgid(), "ham-it-up": false, @@ -13711,7 +15305,7 @@ var require_defaults = __commonJS({ "if-present": false, "ignore-prepublish": false, "ignore-scripts": false, - "init-module": path.resolve(home, ".npm-init.js"), + "init-module": path2.resolve(home, ".npm-init.js"), "init-author-name": "", "init-author-email": "", "init-author-url": "", @@ -13730,7 +15324,7 @@ var require_defaults = __commonJS({ message: "%s", "metrics-registry": null, "node-options": null, - "node-version": process.version, + // We remove node-version to fix the issue described here: https://github.com/pnpm/pnpm/issues/4203#issuecomment-1133872769 "offline": false, "onload-script": false, only: null, @@ -13744,6 +15338,7 @@ var require_defaults = __commonJS({ prefix: globalPrefix, production: process.env.NODE_ENV === "production", "progress": !process.env.TRAVIS && !process.env.CI, + provenance: false, proxy: null, "https-proxy": null, "no-proxy": null, @@ -13781,7 +15376,7 @@ var require_defaults = __commonJS({ "unsafe-perm": process.platform === "win32" || process.platform === "cygwin" || !(process.getuid && process.setuid && process.getgid && process.setgid) || process.getuid() !== 0, usage: false, user: process.platform === "win32" ? 0 : "nobody", - userconfig: path.resolve(home, ".npmrc"), + userconfig: path2.resolve(home, ".npmrc"), umask: process.umask ? process.umask() : umask.fromString("022"), version: false, versions: false, @@ -13794,53 +15389,60 @@ var require_defaults = __commonJS({ } }); -// ../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/index.js +// ../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/index.js var require_npm_conf = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-conf@2.0.2/node_modules/@zkochan/npm-conf/index.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+npm-conf@2.2.2/node_modules/@pnpm/npm-conf/index.js"(exports2, module2) { "use strict"; - var path = require("path"); + var path2 = require("path"); var Conf = require_conf(); var _defaults = require_defaults(); module2.exports = (opts, types, defaults) => { const conf = new Conf(Object.assign({}, _defaults.defaults, defaults), types); conf.add(Object.assign({}, opts), "cli"); + const warnings = []; + let failedToLoadBuiltInConfig = false; if (require.resolve.paths) { const paths = require.resolve.paths("npm"); let npmPath; try { npmPath = require.resolve("npm", { paths: paths.slice(-1) }); } catch (error) { + failedToLoadBuiltInConfig = true; } if (npmPath) { - conf.addFile(path.resolve(path.dirname(npmPath), "..", "npmrc"), "builtin"); + warnings.push(conf.addFile(path2.resolve(path2.dirname(npmPath), "..", "npmrc"), "builtin")); } } conf.addEnv(); conf.loadPrefix(); - const projectConf = path.resolve(conf.localPrefix, ".npmrc"); + const projectConf = path2.resolve(conf.localPrefix, ".npmrc"); const userConf = conf.get("userconfig"); if (!conf.get("global") && projectConf !== userConf) { - conf.addFile(projectConf, "project"); + warnings.push(conf.addFile(projectConf, "project")); } else { conf.add({}, "project"); } if (conf.get("workspace-prefix") && conf.get("workspace-prefix") !== projectConf) { - const workspaceConf = path.resolve(conf.get("workspace-prefix"), ".npmrc"); - conf.addFile(workspaceConf, "workspace"); + const workspaceConf = path2.resolve(conf.get("workspace-prefix"), ".npmrc"); + warnings.push(conf.addFile(workspaceConf, "workspace")); } - conf.addFile(conf.get("userconfig"), "user"); + warnings.push(conf.addFile(conf.get("userconfig"), "user")); if (conf.get("prefix")) { - const etc = path.resolve(conf.get("prefix"), "etc"); - conf.root.globalconfig = path.resolve(etc, "npmrc"); - conf.root.globalignorefile = path.resolve(etc, "npmignore"); + const etc = path2.resolve(conf.get("prefix"), "etc"); + conf.root.globalconfig = path2.resolve(etc, "npmrc"); + conf.root.globalignorefile = path2.resolve(etc, "npmignore"); } - conf.addFile(conf.get("globalconfig"), "global"); + warnings.push(conf.addFile(conf.get("globalconfig"), "global")); conf.loadUser(); const caFile = conf.get("cafile"); if (caFile) { conf.loadCAFile(caFile); } - return conf; + return { + config: conf, + warnings: warnings.filter(Boolean), + failedToLoadBuiltInConfig + }; }; Object.defineProperty(module2.exports, "defaults", { get() { @@ -13851,21931 +15453,20382 @@ var require_npm_conf = __commonJS({ } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isPlaceholder.js -var require_isPlaceholder = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isPlaceholder.js"(exports2, module2) { - function _isPlaceholder(a) { - return a != null && typeof a === "object" && a["@@functional/placeholder"] === true; - } - module2.exports = _isPlaceholder; +// ../packages/core-loggers/lib/contextLogger.js +var require_contextLogger = __commonJS({ + "../packages/core-loggers/lib/contextLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.contextLogger = void 0; + var logger_1 = require_lib6(); + exports2.contextLogger = (0, logger_1.logger)("context"); } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry1.js -var require_curry1 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry1.js"(exports2, module2) { - var _isPlaceholder = require_isPlaceholder(); - function _curry1(fn2) { - return function f1(a) { - if (arguments.length === 0 || _isPlaceholder(a)) { - return f1; - } else { - return fn2.apply(this, arguments); - } - }; - } - module2.exports = _curry1; +// ../packages/core-loggers/lib/deprecationLogger.js +var require_deprecationLogger = __commonJS({ + "../packages/core-loggers/lib/deprecationLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.deprecationLogger = void 0; + var logger_1 = require_lib6(); + exports2.deprecationLogger = (0, logger_1.logger)("deprecation"); } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/fromPairs.js -var require_fromPairs = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/fromPairs.js"(exports2, module2) { - var _curry1 = require_curry1(); - var fromPairs = /* @__PURE__ */ _curry1(function fromPairs2(pairs) { - var result = {}; - var idx = 0; - while (idx < pairs.length) { - result[pairs[idx][0]] = pairs[idx][1]; - idx += 1; - } - return result; - }); - module2.exports = fromPairs; +// ../packages/core-loggers/lib/fetchingProgressLogger.js +var require_fetchingProgressLogger = __commonJS({ + "../packages/core-loggers/lib/fetchingProgressLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchingProgressLogger = void 0; + var logger_1 = require_lib6(); + exports2.fetchingProgressLogger = (0, logger_1.logger)("fetching-progress"); } }); -// ../../node_modules/.pnpm/realpath-missing@1.1.0/node_modules/realpath-missing/index.js -var require_realpath_missing = __commonJS({ - "../../node_modules/.pnpm/realpath-missing@1.1.0/node_modules/realpath-missing/index.js"(exports2, module2) { - var fs = require("fs"); - module2.exports = async function realpathMissing(path) { - try { - return await fs.promises.realpath(path); - } catch (err) { - if (err.code === "ENOENT") { - return path; - } - throw err; - } - }; +// ../packages/core-loggers/lib/hookLogger.js +var require_hookLogger = __commonJS({ + "../packages/core-loggers/lib/hookLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hookLogger = void 0; + var logger_1 = require_lib6(); + exports2.hookLogger = (0, logger_1.logger)("hook"); } }); -// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js -var require_windows = __commonJS({ - "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js"(exports2, module2) { - module2.exports = isexe; - isexe.sync = sync; - var fs = require("fs"); - function checkPathExt(path, options) { - var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT; - if (!pathext) { - return true; - } - pathext = pathext.split(";"); - if (pathext.indexOf("") !== -1) { - return true; - } - for (var i = 0; i < pathext.length; i++) { - var p = pathext[i].toLowerCase(); - if (p && path.substr(-p.length).toLowerCase() === p) { - return true; - } - } - return false; - } - function checkStat(stat, path, options) { - if (!stat.isSymbolicLink() && !stat.isFile()) { - return false; - } - return checkPathExt(path, options); - } - function isexe(path, options, cb) { - fs.stat(path, function(er, stat) { - cb(er, er ? false : checkStat(stat, path, options)); - }); - } - function sync(path, options) { - return checkStat(fs.statSync(path), path, options); - } +// ../packages/core-loggers/lib/installCheckLogger.js +var require_installCheckLogger = __commonJS({ + "../packages/core-loggers/lib/installCheckLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.installCheckLogger = void 0; + var logger_1 = require_lib6(); + exports2.installCheckLogger = (0, logger_1.logger)("install-check"); } }); -// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js -var require_mode = __commonJS({ - "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js"(exports2, module2) { - module2.exports = isexe; - isexe.sync = sync; - var fs = require("fs"); - function isexe(path, options, cb) { - fs.stat(path, function(er, stat) { - cb(er, er ? false : checkStat(stat, options)); - }); - } - function sync(path, options) { - return checkStat(fs.statSync(path), options); - } - function checkStat(stat, options) { - return stat.isFile() && checkMode(stat, options); - } - function checkMode(stat, options) { - var mod = stat.mode; - var uid = stat.uid; - var gid = stat.gid; - var myUid = options.uid !== void 0 ? options.uid : process.getuid && process.getuid(); - var myGid = options.gid !== void 0 ? options.gid : process.getgid && process.getgid(); - var u = parseInt("100", 8); - var g = parseInt("010", 8); - var o = parseInt("001", 8); - var ug = u | g; - var ret = mod & o || mod & g && gid === myGid || mod & u && uid === myUid || mod & ug && myUid === 0; - return ret; - } +// ../packages/core-loggers/lib/lifecycleLogger.js +var require_lifecycleLogger = __commonJS({ + "../packages/core-loggers/lib/lifecycleLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lifecycleLogger = void 0; + var logger_1 = require_lib6(); + exports2.lifecycleLogger = (0, logger_1.logger)("lifecycle"); } }); -// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js -var require_isexe = __commonJS({ - "../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js"(exports2, module2) { - var fs = require("fs"); - var core; - if (process.platform === "win32" || global.TESTING_WINDOWS) { - core = require_windows(); - } else { - core = require_mode(); - } - module2.exports = isexe; - isexe.sync = sync; - function isexe(path, options, cb) { - if (typeof options === "function") { - cb = options; - options = {}; - } - if (!cb) { - if (typeof Promise !== "function") { - throw new TypeError("callback not provided"); - } - return new Promise(function(resolve, reject) { - isexe(path, options || {}, function(er, is) { - if (er) { - reject(er); - } else { - resolve(is); - } - }); - }); - } - core(path, options || {}, function(er, is) { - if (er) { - if (er.code === "EACCES" || options && options.ignoreErrors) { - er = null; - is = false; - } - } - cb(er, is); - }); - } - function sync(path, options) { - try { - return core.sync(path, options || {}); - } catch (er) { - if (options && options.ignoreErrors || er.code === "EACCES") { - return false; - } else { - throw er; - } - } - } +// ../packages/core-loggers/lib/linkLogger.js +var require_linkLogger = __commonJS({ + "../packages/core-loggers/lib/linkLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.linkLogger = void 0; + var logger_1 = require_lib6(); + exports2.linkLogger = (0, logger_1.logger)("link"); } }); -// ../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js -var require_which = __commonJS({ - "../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js"(exports2, module2) { - var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys"; - var path = require("path"); - var COLON = isWindows ? ";" : ":"; - var isexe = require_isexe(); - var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); - var getPathInfo = (cmd, opt) => { - const colon = opt.colon || COLON; - const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : [ - ...isWindows ? [process.cwd()] : [], - ...(opt.path || process.env.PATH || "").split(colon) - ]; - const pathExtExe = isWindows ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : ""; - const pathExt = isWindows ? pathExtExe.split(colon) : [""]; - if (isWindows) { - if (cmd.indexOf(".") !== -1 && pathExt[0] !== "") - pathExt.unshift(""); - } - return { - pathEnv, - pathExt, - pathExtExe - }; - }; - var which = (cmd, opt, cb) => { - if (typeof opt === "function") { - cb = opt; - opt = {}; - } - if (!opt) - opt = {}; - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); - const found = []; - const step = (i) => new Promise((resolve, reject) => { - if (i === pathEnv.length) - return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd)); - const ppRaw = pathEnv[i]; - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; - const pCmd = path.join(pathPart, cmd); - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; - resolve(subStep(p, i, 0)); - }); - const subStep = (p, i, ii) => new Promise((resolve, reject) => { - if (ii === pathExt.length) - return resolve(step(i + 1)); - const ext = pathExt[ii]; - isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { - if (!er && is) { - if (opt.all) - found.push(p + ext); - else - return resolve(p + ext); - } - return resolve(subStep(p, i, ii + 1)); - }); - }); - return cb ? step(0).then((res) => cb(null, res), cb) : step(0); - }; - var whichSync = (cmd, opt) => { - opt = opt || {}; - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); - const found = []; - for (let i = 0; i < pathEnv.length; i++) { - const ppRaw = pathEnv[i]; - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; - const pCmd = path.join(pathPart, cmd); - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; - for (let j = 0; j < pathExt.length; j++) { - const cur = p + pathExt[j]; - try { - const is = isexe.sync(cur, { pathExt: pathExtExe }); - if (is) { - if (opt.all) - found.push(cur); - else - return cur; - } - } catch (ex) { - } - } - } - if (opt.all && found.length) - return found; - if (opt.nothrow) - return null; - throw getNotFoundError(cmd); - }; - module2.exports = which; - which.sync = whichSync; +// ../packages/core-loggers/lib/packageImportMethodLogger.js +var require_packageImportMethodLogger = __commonJS({ + "../packages/core-loggers/lib/packageImportMethodLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.packageImportMethodLogger = void 0; + var logger_1 = require_lib6(); + exports2.packageImportMethodLogger = (0, logger_1.logger)("package-import-method"); } }); -// ../config/lib/getScopeRegistries.js -var require_getScopeRegistries = __commonJS({ - "../config/lib/getScopeRegistries.js"(exports2) { +// ../packages/core-loggers/lib/packageManifestLogger.js +var require_packageManifestLogger = __commonJS({ + "../packages/core-loggers/lib/packageManifestLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.normalizeRegistry = void 0; - function getScopeRegistries(rawConfig) { - const registries = {}; - for (const configKey of Object.keys(rawConfig)) { - if (configKey[0] === "@" && configKey.endsWith(":registry")) { - registries[configKey.substr(0, configKey.indexOf(":"))] = normalizeRegistry(rawConfig[configKey]); - } - } - return registries; - } - exports2.default = getScopeRegistries; - function normalizeRegistry(registry) { - return registry.endsWith("/") ? registry : `${registry}/`; - } - exports2.normalizeRegistry = normalizeRegistry; + exports2.packageManifestLogger = void 0; + var logger_1 = require_lib6(); + exports2.packageManifestLogger = (0, logger_1.logger)("package-manifest"); } }); -// ../../node_modules/.pnpm/is-windows@1.0.2/node_modules/is-windows/index.js -var require_is_windows = __commonJS({ - "../../node_modules/.pnpm/is-windows@1.0.2/node_modules/is-windows/index.js"(exports2, module2) { - (function(factory) { - if (exports2 && typeof exports2 === "object" && typeof module2 !== "undefined") { - module2.exports = factory(); - } else if (typeof define === "function" && define.amd) { - define([], factory); - } else if (typeof window !== "undefined") { - window.isWindows = factory(); - } else if (typeof global !== "undefined") { - global.isWindows = factory(); - } else if (typeof self !== "undefined") { - self.isWindows = factory(); - } else { - this.isWindows = factory(); - } - })(function() { - "use strict"; - return function isWindows() { - return process && (process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE)); - }; - }); +// ../packages/core-loggers/lib/peerDependencyIssues.js +var require_peerDependencyIssues = __commonJS({ + "../packages/core-loggers/lib/peerDependencyIssues.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.peerDependencyIssuesLogger = void 0; + var logger_1 = require_lib6(); + exports2.peerDependencyIssuesLogger = (0, logger_1.logger)("peer-dependency-issues"); } }); -// ../../node_modules/.pnpm/better-path-resolve@1.0.0/node_modules/better-path-resolve/index.js -var require_better_path_resolve = __commonJS({ - "../../node_modules/.pnpm/better-path-resolve@1.0.0/node_modules/better-path-resolve/index.js"(exports2, module2) { +// ../packages/core-loggers/lib/progressLogger.js +var require_progressLogger = __commonJS({ + "../packages/core-loggers/lib/progressLogger.js"(exports2) { "use strict"; - var path = require("path"); - var isWindows = require_is_windows(); - module2.exports = isWindows() ? winResolve : path.resolve; - function winResolve(p) { - if (arguments.length === 0) - return path.resolve(); - if (typeof p !== "string") { - return path.resolve(p); - } - if (p[1] === ":") { - const cc = p[0].charCodeAt(); - if (cc < 65 || cc > 90) { - p = `${p[0].toUpperCase()}${p.substr(1)}`; - } - } - if (p.endsWith(":")) { - return p; - } - return path.resolve(p); - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.progressLogger = void 0; + var logger_1 = require_lib6(); + exports2.progressLogger = (0, logger_1.logger)("progress"); } }); -// ../../node_modules/.pnpm/is-subdir@1.2.0/node_modules/is-subdir/index.js -var require_is_subdir = __commonJS({ - "../../node_modules/.pnpm/is-subdir@1.2.0/node_modules/is-subdir/index.js"(exports2, module2) { +// ../packages/core-loggers/lib/registryLogger.js +var require_registryLogger = __commonJS({ + "../packages/core-loggers/lib/registryLogger.js"(exports2) { "use strict"; - var betterPathResolve = require_better_path_resolve(); - var path = require("path"); - function isSubdir(parentDir, subdir) { - const rParent = `${betterPathResolve(parentDir)}${path.sep}`; - const rDir = `${betterPathResolve(subdir)}${path.sep}`; - return rDir.startsWith(rParent); - } - isSubdir.strict = function isSubdirStrict(parentDir, subdir) { - const rParent = `${betterPathResolve(parentDir)}${path.sep}`; - const rDir = `${betterPathResolve(subdir)}${path.sep}`; - return rDir !== rParent && rDir.startsWith(rParent); - }; - module2.exports = isSubdir; + Object.defineProperty(exports2, "__esModule", { value: true }); } }); -// ../config/lib/findBestGlobalPrefix.js -var require_findBestGlobalPrefix = __commonJS({ - "../config/lib/findBestGlobalPrefix.js"(exports2) { +// ../packages/core-loggers/lib/removalLogger.js +var require_removalLogger = __commonJS({ + "../packages/core-loggers/lib/removalLogger.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var is_subdir_1 = __importDefault(require_is_subdir()); - function findBestGlobalPrefixOnWindows(defaultNpmGlobalPrefix, env) { - if (process.platform !== "win32") - return defaultNpmGlobalPrefix; - if (env.LOCALAPPDATA != null && is_subdir_1.default(env.LOCALAPPDATA, defaultNpmGlobalPrefix) || env.APPDATA != null && is_subdir_1.default(env.APPDATA, defaultNpmGlobalPrefix)) { - return defaultNpmGlobalPrefix; - } - if (env.APPDATA) - return path_1.default.join(env.APPDATA, "npm"); - return defaultNpmGlobalPrefix; - } - exports2.default = findBestGlobalPrefixOnWindows; + exports2.removalLogger = void 0; + var logger_1 = require_lib6(); + exports2.removalLogger = (0, logger_1.logger)("removal"); } }); -// ../config/lib/dirs.js -var require_dirs = __commonJS({ - "../config/lib/dirs.js"(exports2) { +// ../packages/core-loggers/lib/requestRetryLogger.js +var require_requestRetryLogger = __commonJS({ + "../packages/core-loggers/lib/requestRetryLogger.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getDataDir = exports2.getStateDir = exports2.getCacheDir = void 0; - var os_1 = __importDefault(require("os")); - var path_1 = __importDefault(require("path")); - function getCacheDir(opts) { - if (opts.env.XDG_CACHE_HOME) { - return path_1.default.join(opts.env.XDG_CACHE_HOME, "pnpm"); - } - if (opts.platform === "darwin") { - return path_1.default.join(os_1.default.homedir(), "Library/Caches/pnpm"); - } - if (opts.platform !== "win32") { - return path_1.default.join(os_1.default.homedir(), ".cache/pnpm"); - } - if (opts.env.LOCALAPPDATA) { - return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm-cache"); - } - return path_1.default.join(os_1.default.homedir(), ".pnpm-cache"); - } - exports2.getCacheDir = getCacheDir; - function getStateDir(opts) { - if (opts.env.XDG_STATE_HOME) { - return path_1.default.join(opts.env.XDG_STATE_HOME, "pnpm"); - } - if (opts.platform !== "win32" && opts.platform !== "darwin") { - return path_1.default.join(os_1.default.homedir(), ".local/state/pnpm"); - } - if (opts.env.LOCALAPPDATA) { - return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm-state"); - } - return path_1.default.join(os_1.default.homedir(), ".pnpm-state"); - } - exports2.getStateDir = getStateDir; - function getDataDir(opts) { - if (opts.env.XDG_DATA_HOME) { - return path_1.default.join(opts.env.XDG_DATA_HOME, "pnpm"); - } - if (opts.platform === "darwin") { - return path_1.default.join(os_1.default.homedir(), "Library/pnpm"); - } - if (opts.platform !== "win32") { - return path_1.default.join(os_1.default.homedir(), ".local/share/pnpm"); - } - if (opts.env.LOCALAPPDATA) { - return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm"); - } - return path_1.default.join(os_1.default.homedir(), ".pnpm"); - } - exports2.getDataDir = getDataDir; + exports2.requestRetryLogger = void 0; + var logger_1 = require_lib6(); + exports2.requestRetryLogger = (0, logger_1.logger)("request-retry"); } }); -// ../config/lib/concurrency.js -var require_concurrency = __commonJS({ - "../config/lib/concurrency.js"(exports2) { +// ../packages/core-loggers/lib/rootLogger.js +var require_rootLogger = __commonJS({ + "../packages/core-loggers/lib/rootLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getWorkspaceConcurrency = void 0; - var os_1 = require("os"); - function getWorkspaceConcurrency(option) { - if (typeof option !== "number") - return 4; - if (option <= 0) { - return Math.max(1, os_1.cpus().length - Math.abs(option)); - } - return option; - } - exports2.getWorkspaceConcurrency = getWorkspaceConcurrency; + exports2.rootLogger = void 0; + var logger_1 = require_lib6(); + exports2.rootLogger = (0, logger_1.logger)("root"); } }); -// ../config/lib/index.js -var require_lib10 = __commonJS({ - "../config/lib/index.js"(exports2) { +// ../packages/core-loggers/lib/scopeLogger.js +var require_scopeLogger = __commonJS({ + "../packages/core-loggers/lib/scopeLogger.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.types = void 0; - var path_1 = __importDefault(require("path")); - var fs_1 = __importDefault(require("fs")); - var os_1 = __importDefault(require("os")); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var global_bin_dir_1 = __importDefault(require_lib9()); - var camelcase_1 = __importDefault(require_camelcase()); - var npm_conf_1 = __importDefault(require_npm_conf()); - var types_1 = __importDefault(require_types2()); - var can_write_to_dir_1 = require_can_write_to_dir(); - var fromPairs_1 = __importDefault(require_fromPairs()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var which_1 = __importDefault(require_which()); - var getScopeRegistries_1 = __importStar2(require_getScopeRegistries()); - var findBestGlobalPrefix_1 = __importDefault(require_findBestGlobalPrefix()); - var dirs_1 = require_dirs(); - var concurrency_1 = require_concurrency(); - var npmDefaults = npm_conf_1.default.defaults; - var PNPM_GLOBAL = "pnpm-global"; - async function which(cmd) { - return new Promise((resolve, reject) => { - which_1.default(cmd, (err, resolvedPath) => err != null ? reject(err) : resolve(resolvedPath)); - }); - } - exports2.types = Object.assign({ - bail: Boolean, - "cache-dir": String, - "child-concurrency": Number, - color: ["always", "auto", "never"], - dev: [null, true], - dir: String, - "enable-modules-dir": Boolean, - "enable-pre-post-scripts": Boolean, - "extend-node-path": Boolean, - "fetch-timeout": Number, - "fetching-concurrency": Number, - filter: [String, Array], - "filter-prod": [String, Array], - "frozen-lockfile": Boolean, - "frozen-shrinkwrap": Boolean, - "git-checks": Boolean, - "global-bin-dir": String, - "global-dir": String, - "global-path": String, - "global-pnpmfile": String, - hoist: Boolean, - "hoist-pattern": Array, - "ignore-pnpmfile": Boolean, - "ignore-workspace-root-check": Boolean, - "link-workspace-packages": [Boolean, "deep"], - lockfile: Boolean, - "lockfile-dir": String, - "lockfile-directory": String, - "lockfile-only": Boolean, - loglevel: ["silent", "error", "warn", "info", "debug"], - "modules-cache-max-age": Number, - "modules-dir": String, - "network-concurrency": Number, - "node-linker": ["pnp"], - noproxy: String, - "npm-path": String, - offline: Boolean, - "package-import-method": ["auto", "hardlink", "clone", "copy"], - pnpmfile: String, - "prefer-frozen-lockfile": Boolean, - "prefer-frozen-shrinkwrap": Boolean, - "prefer-offline": Boolean, - "prefer-workspace-packages": Boolean, - production: [null, true], - "public-hoist-pattern": Array, - "publish-branch": String, - "recursive-install": Boolean, - reporter: String, - "save-peer": Boolean, - "save-workspace-protocol": Boolean, - "script-shell": String, - "shamefully-flatten": Boolean, - "shamefully-hoist": Boolean, - "shared-workspace-lockfile": Boolean, - "shared-workspace-shrinkwrap": Boolean, - "shell-emulator": Boolean, - "shrinkwrap-directory": String, - "shrinkwrap-only": Boolean, - "side-effects-cache": Boolean, - "side-effects-cache-readonly": Boolean, - symlink: Boolean, - sort: Boolean, - "state-dir": String, - store: String, - "store-dir": String, - stream: Boolean, - "strict-peer-dependencies": Boolean, - "use-beta-cli": Boolean, - "use-node-version": String, - "use-running-store-server": Boolean, - "use-store-server": Boolean, - "use-stderr": Boolean, - "verify-store-integrity": Boolean, - "virtual-store-dir": String, - "workspace-concurrency": Number, - "workspace-packages": [String, Array], - "workspace-root": Boolean, - "test-pattern": [String, Array], - "changed-files-ignore-pattern": [String, Array] - }, types_1.default.types); - exports2.default = async (opts) => { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o; - const packageManager = (_a = opts.packageManager) !== null && _a !== void 0 ? _a : { name: "pnpm", version: "undefined" }; - const cliOptions = (_b = opts.cliOptions) !== null && _b !== void 0 ? _b : {}; - const warnings = new Array(); - if (cliOptions["hoist"] === false) { - if (cliOptions["shamefully-hoist"] === true) { - throw new error_1.default("CONFIG_CONFLICT_HOIST", "--shamefully-hoist cannot be used with --no-hoist"); - } - if (cliOptions["shamefully-flatten"] === true) { - throw new error_1.default("CONFIG_CONFLICT_HOIST", "--shamefully-flatten cannot be used with --no-hoist"); - } - if (cliOptions["hoist-pattern"]) { - throw new error_1.default("CONFIG_CONFLICT_HOIST", "--hoist-pattern cannot be used with --no-hoist"); - } - } - const originalExecPath = process.execPath; - try { - const node = await which(process.argv[0]); - if (node.toUpperCase() !== process.execPath.toUpperCase()) { - process.execPath = node; - } - } catch (err) { - } - if (cliOptions.dir) { - cliOptions.dir = await realpath_missing_1.default(cliOptions.dir); - cliOptions["prefix"] = cliOptions.dir; - } - const rcOptionsTypes = { ...exports2.types, ...opts.rcOptionsTypes }; - const npmConfig = npm_conf_1.default(cliOptions, rcOptionsTypes, { - bail: true, - color: "auto", - "enable-modules-dir": true, - "extend-node-path": true, - "fetch-retries": 2, - "fetch-retry-factor": 10, - "fetch-retry-maxtimeout": 6e4, - "fetch-retry-mintimeout": 1e4, - "fetch-timeout": 6e4, - globalconfig: npmDefaults.globalconfig, - hoist: true, - "hoist-pattern": ["*"], - "ignore-workspace-root-check": false, - "link-workspace-packages": true, - "modules-cache-max-age": 7 * 24 * 60, - "package-lock": npmDefaults["package-lock"], - pending: false, - "prefer-workspace-packages": false, - "public-hoist-pattern": [ - "*types*", - "*eslint*", - "@prettier/plugin-*", - "*prettier-plugin-*" - ], - "recursive-install": true, - registry: npmDefaults.registry, - "save-peer": false, - "save-workspace-protocol": true, - symlink: true, - "shared-workspace-lockfile": true, - "shared-workspace-shrinkwrap": true, - "shell-emulator": false, - shrinkwrap: npmDefaults.shrinkwrap, - reverse: false, - sort: true, - "strict-peer-dependencies": false, - "unsafe-perm": npmDefaults["unsafe-perm"], - "use-beta-cli": false, - userconfig: npmDefaults.userconfig, - "virtual-store-dir": "node_modules/.pnpm", - "workspace-concurrency": 4, - "workspace-prefix": opts.workspaceDir - }); - delete cliOptions.prefix; - process.execPath = originalExecPath; - const rcOptions = Object.keys(rcOptionsTypes); - const pnpmConfig = fromPairs_1.default([ - ...rcOptions.map((configKey) => [camelcase_1.default(configKey), npmConfig.get(configKey)]), - ...Object.entries(cliOptions).filter(([name, value]) => typeof value !== "undefined").map(([name, value]) => [camelcase_1.default(name), value]) - ]); - const cwd = (_c = cliOptions.dir && path_1.default.resolve(cliOptions.dir)) !== null && _c !== void 0 ? _c : npmConfig.localPrefix; - pnpmConfig.workspaceDir = opts.workspaceDir; - pnpmConfig.workspaceRoot = cliOptions["workspace-root"]; - pnpmConfig.rawLocalConfig = Object.assign.apply(Object, [ - {}, - ...npmConfig.list.slice(3, pnpmConfig.workspaceDir && pnpmConfig.workspaceDir !== cwd ? 5 : 4).reverse(), - cliOptions - ]); - pnpmConfig.userAgent = pnpmConfig.rawLocalConfig["user-agent"] ? pnpmConfig.rawLocalConfig["user-agent"] : `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}`; - pnpmConfig.rawConfig = Object.assign.apply(Object, [ - { registry: "https://registry.npmjs.org/" }, - ...[...npmConfig.list].reverse(), - cliOptions, - { "user-agent": pnpmConfig.userAgent } - ]); - pnpmConfig.registries = { - default: getScopeRegistries_1.normalizeRegistry(pnpmConfig.rawConfig.registry), - ...getScopeRegistries_1.default(pnpmConfig.rawConfig) - }; - pnpmConfig.lockfileDir = (_e = (_d = pnpmConfig.lockfileDir) !== null && _d !== void 0 ? _d : pnpmConfig.lockfileDirectory) !== null && _e !== void 0 ? _e : pnpmConfig.shrinkwrapDirectory; - pnpmConfig.useLockfile = (() => { - if (typeof pnpmConfig["lockfile"] === "boolean") - return pnpmConfig["lockfile"]; - if (typeof pnpmConfig["packageLock"] === "boolean") - return pnpmConfig["packageLock"]; - if (typeof pnpmConfig["shrinkwrap"] === "boolean") - return pnpmConfig["shrinkwrap"]; - return false; - })(); - pnpmConfig.lockfileOnly = typeof pnpmConfig["lockfileOnly"] === "undefined" ? pnpmConfig.shrinkwrapOnly : pnpmConfig["lockfileOnly"]; - pnpmConfig.frozenLockfile = typeof pnpmConfig["frozenLockfile"] === "undefined" ? pnpmConfig.frozenShrinkwrap : pnpmConfig["frozenLockfile"]; - pnpmConfig.preferFrozenLockfile = typeof pnpmConfig["preferFrozenLockfile"] === "undefined" ? pnpmConfig.preferFrozenShrinkwrap : pnpmConfig["preferFrozenLockfile"]; - pnpmConfig.sharedWorkspaceLockfile = typeof pnpmConfig["sharedWorkspaceLockfile"] === "undefined" ? pnpmConfig.sharedWorkspaceShrinkwrap : pnpmConfig["sharedWorkspaceLockfile"]; - pnpmConfig.pnpmHomeDir = dirs_1.getDataDir(process); - if (cliOptions["global"]) { - const knownGlobalBinDirCandidates = []; - let globalDirRoot; - if (pnpmConfig["globalDir"]) { - globalDirRoot = pnpmConfig["globalDir"]; - } else if (pnpmConfig.useBetaCli) { - globalDirRoot = path_1.default.join(pnpmConfig.pnpmHomeDir, "global-packages"); - } else { - let npmGlobalPrefix = findBestGlobalPrefix_1.default(npmConfig.globalPrefix, process.env); - const globalDirName = `${path_1.default.sep}${PNPM_GLOBAL}${path_1.default.sep}`; - if (npmGlobalPrefix.includes(globalDirName)) { - npmGlobalPrefix = npmGlobalPrefix.substring(0, npmGlobalPrefix.indexOf(globalDirName)); - } else { - const npmGlobalBinDir = process.platform === "win32" ? npmGlobalPrefix : path_1.default.resolve(npmGlobalPrefix, "bin"); - knownGlobalBinDirCandidates.push(npmGlobalBinDir); - } - globalDirRoot = path_1.default.join(firstWithWriteAccess([npmGlobalPrefix, os_1.default.homedir()]), PNPM_GLOBAL); - } - pnpmConfig.dir = path_1.default.join(globalDirRoot, constants_1.LAYOUT_VERSION.toString()); - const npmConfigGlobalBinDir = npmConfig.get("global-bin-dir"); - if (typeof npmConfigGlobalBinDir === "string") { - fs_1.default.mkdirSync(npmConfigGlobalBinDir, { recursive: true }); - pnpmConfig.bin = npmConfigGlobalBinDir; - } else { - pnpmConfig.bin = cliOptions.dir ? process.platform === "win32" ? cliOptions.dir : path_1.default.resolve(cliOptions.dir, "bin") : global_bin_dir_1.default(knownGlobalBinDirCandidates, { shouldAllowWrite: opts.globalDirShouldAllowWrite === true }); - } - pnpmConfig.save = true; - pnpmConfig.allowNew = true; - pnpmConfig.ignoreCurrentPrefs = true; - pnpmConfig.saveProd = true; - pnpmConfig.saveDev = false; - pnpmConfig.saveOptional = false; - pnpmConfig.extendNodePath = false; - if (pnpmConfig.hoistPattern != null && (pnpmConfig.hoistPattern.length > 1 || pnpmConfig.hoistPattern[0] !== "*")) { - if (opts.cliOptions["hoist-pattern"]) { - throw new error_1.default("CONFIG_CONFLICT_HOIST_PATTERN_WITH_GLOBAL", 'Configuration conflict. "hoist-pattern" may not be used with "global"'); - } - } - if (pnpmConfig.linkWorkspacePackages) { - if (opts.cliOptions["link-workspace-packages"]) { - throw new error_1.default("CONFIG_CONFLICT_LINK_WORKSPACE_PACKAGES_WITH_GLOBAL", 'Configuration conflict. "link-workspace-packages" may not be used with "global"'); - } - pnpmConfig.linkWorkspacePackages = false; - } - if (pnpmConfig.sharedWorkspaceLockfile) { - if (opts.cliOptions["shared-workspace-lockfile"]) { - throw new error_1.default("CONFIG_CONFLICT_SHARED_WORKSPACE_LOCKFILE_WITH_GLOBAL", 'Configuration conflict. "shared-workspace-lockfile" may not be used with "global"'); - } - pnpmConfig.sharedWorkspaceLockfile = false; - } - if (pnpmConfig.lockfileDir) { - if (opts.cliOptions["lockfile-dir"]) { - throw new error_1.default("CONFIG_CONFLICT_LOCKFILE_DIR_WITH_GLOBAL", 'Configuration conflict. "lockfile-dir" may not be used with "global"'); - } - delete pnpmConfig.lockfileDir; - } - if (opts.cliOptions["virtual-store-dir"]) { - throw new error_1.default("CONFIG_CONFLICT_VIRTUAL_STORE_DIR_WITH_GLOBAL", 'Configuration conflict. "virtual-store-dir" may not be used with "global"'); - } - delete pnpmConfig.virtualStoreDir; - } else { - pnpmConfig.dir = cwd; - pnpmConfig.bin = path_1.default.join(pnpmConfig.dir, "node_modules", ".bin"); - } - if (opts.cliOptions["save-peer"]) { - if (opts.cliOptions["save-prod"]) { - throw new error_1.default("CONFIG_CONFLICT_PEER_CANNOT_BE_PROD_DEP", "A package cannot be a peer dependency and a prod dependency at the same time"); - } - if (opts.cliOptions["save-optional"]) { - throw new error_1.default("CONFIG_CONFLICT_PEER_CANNOT_BE_OPTIONAL_DEP", "A package cannot be a peer dependency and an optional dependency at the same time"); - } - } - if (pnpmConfig.sharedWorkspaceLockfile && !pnpmConfig.lockfileDir && pnpmConfig.workspaceDir) { - pnpmConfig.lockfileDir = pnpmConfig.workspaceDir; - } - pnpmConfig.packageManager = packageManager; - if (pnpmConfig.only === "prod" || pnpmConfig.only === "production" || !pnpmConfig.only && pnpmConfig.production) { - pnpmConfig.production = true; - pnpmConfig.dev = false; - } else if (pnpmConfig.only === "dev" || pnpmConfig.only === "development" || pnpmConfig.dev) { - pnpmConfig.production = false; - pnpmConfig.dev = true; - pnpmConfig.optional = false; - } else { - pnpmConfig.production = true; - pnpmConfig.dev = true; - } - if (typeof pnpmConfig.filter === "string") { - pnpmConfig.filter = pnpmConfig.filter.split(" "); - } - if (typeof pnpmConfig.filterProd === "string") { - pnpmConfig.filterProd = pnpmConfig.filterProd.split(" "); - } - if (!pnpmConfig.ignoreScripts && pnpmConfig.workspaceDir) { - pnpmConfig.extraBinPaths = [path_1.default.join(pnpmConfig.workspaceDir, "node_modules", ".bin")]; - } else { - pnpmConfig.extraBinPaths = []; - } - if (pnpmConfig["shamefullyFlatten"]) { - warnings.push(`The "shamefully-flatten" setting has been renamed to "shamefully-hoist". Also, in most cases you won't need "shamefully-hoist". Since v4, a semistrict node_modules structure is on by default (via hoist-pattern=[*]).`); - pnpmConfig.shamefullyHoist = true; - } - if (!pnpmConfig.storeDir && pnpmConfig["store"]) { - warnings.push('The "store" setting has been renamed to "store-dir". Please use the new name.'); - pnpmConfig.storeDir = pnpmConfig["store"]; - } - if (!pnpmConfig.cacheDir) { - pnpmConfig.cacheDir = dirs_1.getCacheDir(process); - } - if (!pnpmConfig.stateDir) { - pnpmConfig.stateDir = dirs_1.getStateDir(process); - } - if (pnpmConfig["hoist"] === false) { - delete pnpmConfig.hoistPattern; - } - switch (pnpmConfig.shamefullyHoist) { - case false: - delete pnpmConfig.publicHoistPattern; - break; - case true: - pnpmConfig.publicHoistPattern = ["*"]; - break; - default: - if (pnpmConfig.publicHoistPattern == null || pnpmConfig.publicHoistPattern === "" || Array.isArray(pnpmConfig.publicHoistPattern) && pnpmConfig.publicHoistPattern.length === 1 && pnpmConfig.publicHoistPattern[0] === "") { - delete pnpmConfig.publicHoistPattern; - } - break; - } - if (!pnpmConfig.symlink) { - delete pnpmConfig.hoistPattern; - delete pnpmConfig.publicHoistPattern; - } - if (typeof pnpmConfig["color"] === "boolean") { - switch (pnpmConfig["color"]) { - case true: - pnpmConfig.color = "always"; - break; - case false: - pnpmConfig.color = "never"; - break; - default: - pnpmConfig.color = "auto"; - break; - } - } - if (!pnpmConfig.httpsProxy) { - pnpmConfig.httpsProxy = (_f = pnpmConfig.proxy) !== null && _f !== void 0 ? _f : getProcessEnv("https_proxy"); - } - if (!pnpmConfig.httpProxy) { - pnpmConfig.httpProxy = (_h = (_g = pnpmConfig.httpsProxy) !== null && _g !== void 0 ? _g : getProcessEnv("http_proxy")) !== null && _h !== void 0 ? _h : getProcessEnv("proxy"); - } - if (!pnpmConfig.noProxy) { - pnpmConfig.noProxy = (_j = pnpmConfig["noproxy"]) !== null && _j !== void 0 ? _j : getProcessEnv("no_proxy"); - } - pnpmConfig.enablePnp = pnpmConfig["nodeLinker"] === "pnp"; - if (opts.checkUnknownSetting) { - const settingKeys = Object.keys({ - ...(_l = (_k = npmConfig === null || npmConfig === void 0 ? void 0 : npmConfig.sources) === null || _k === void 0 ? void 0 : _k.workspace) === null || _l === void 0 ? void 0 : _l.data, - ...(_o = (_m = npmConfig === null || npmConfig === void 0 ? void 0 : npmConfig.sources) === null || _m === void 0 ? void 0 : _m.project) === null || _o === void 0 ? void 0 : _o.data - }).filter((key) => key.trim() !== ""); - const unknownKeys = []; - for (const key of settingKeys) { - if (!rcOptions.includes(key) && !key.startsWith("//") && !(key.startsWith("@") && key.endsWith(":registry"))) { - unknownKeys.push(key); - } - } - if (unknownKeys.length > 0) { - warnings.push(`Your .npmrc file contains unknown setting: ${unknownKeys.join(", ")}`); - } - } - pnpmConfig.workspaceConcurrency = concurrency_1.getWorkspaceConcurrency(pnpmConfig.workspaceConcurrency); - return { config: pnpmConfig, warnings }; - }; - function getProcessEnv(env) { - var _a, _b; - return (_b = (_a = process.env[env]) !== null && _a !== void 0 ? _a : process.env[env.toUpperCase()]) !== null && _b !== void 0 ? _b : process.env[env.toLowerCase()]; - } - function firstWithWriteAccess(dirs) { - const first = dirs.find((dir) => { - try { - return can_write_to_dir_1.sync(dir); - } catch (err) { - if (err.code !== "ENOENT") - throw err; - } - try { - fs_1.default.mkdirSync(dir, { recursive: true }); - return true; - } catch (err) { - return false; - } - }); - if (first == null) { - throw new error_1.default("NO_SUITABLE_GLOBAL_DIR", `pnpm has no write access to global direcotry. Tried locations: ${dirs.join(", ")}`); - } - return first; - } + exports2.scopeLogger = void 0; + var logger_1 = require_lib6(); + exports2.scopeLogger = (0, logger_1.logger)("scope"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isFunction.js -var require_isFunction = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isFunction.js"(exports2) { +// ../packages/core-loggers/lib/skippedOptionalDependencyLogger.js +var require_skippedOptionalDependencyLogger = __commonJS({ + "../packages/core-loggers/lib/skippedOptionalDependencyLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isFunction = void 0; - function isFunction(value) { - return typeof value === "function"; - } - exports2.isFunction = isFunction; + exports2.skippedOptionalDependencyLogger = void 0; + var logger_1 = require_lib6(); + exports2.skippedOptionalDependencyLogger = (0, logger_1.logger)("skipped-optional-dependency"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js -var require_createErrorClass = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js"(exports2) { +// ../packages/core-loggers/lib/stageLogger.js +var require_stageLogger = __commonJS({ + "../packages/core-loggers/lib/stageLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createErrorClass = void 0; - function createErrorClass(createImpl) { - var _super = function(instance) { - Error.call(instance); - instance.stack = new Error().stack; - }; - var ctorFunc = createImpl(_super); - ctorFunc.prototype = Object.create(Error.prototype); - ctorFunc.prototype.constructor = ctorFunc; - return ctorFunc; - } - exports2.createErrorClass = createErrorClass; + exports2.stageLogger = void 0; + var logger_1 = require_lib6(); + exports2.stageLogger = (0, logger_1.logger)("stage"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js -var require_UnsubscriptionError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js"(exports2) { +// ../packages/core-loggers/lib/statsLogger.js +var require_statsLogger = __commonJS({ + "../packages/core-loggers/lib/statsLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UnsubscriptionError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.UnsubscriptionError = createErrorClass_1.createErrorClass(function(_super) { - return function UnsubscriptionErrorImpl(errors) { - _super(this); - this.message = errors ? errors.length + " errors occurred during unsubscription:\n" + errors.map(function(err, i) { - return i + 1 + ") " + err.toString(); - }).join("\n ") : ""; - this.name = "UnsubscriptionError"; - this.errors = errors; - }; - }); + exports2.statsLogger = void 0; + var logger_1 = require_lib6(); + exports2.statsLogger = (0, logger_1.logger)("stats"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js -var require_arrRemove = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js"(exports2) { +// ../packages/core-loggers/lib/summaryLogger.js +var require_summaryLogger = __commonJS({ + "../packages/core-loggers/lib/summaryLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.arrRemove = void 0; - function arrRemove(arr, item) { - if (arr) { - var index = arr.indexOf(item); - 0 <= index && arr.splice(index, 1); - } - } - exports2.arrRemove = arrRemove; + exports2.summaryLogger = void 0; + var logger_1 = require_lib6(); + exports2.summaryLogger = (0, logger_1.logger)("summary"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subscription.js -var require_Subscription = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subscription.js"(exports2) { +// ../packages/core-loggers/lib/updateCheckLogger.js +var require_updateCheckLogger = __commonJS({ + "../packages/core-loggers/lib/updateCheckLogger.js"(exports2) { "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isSubscription = exports2.EMPTY_SUBSCRIPTION = exports2.Subscription = void 0; - var isFunction_1 = require_isFunction(); - var UnsubscriptionError_1 = require_UnsubscriptionError(); - var arrRemove_1 = require_arrRemove(); - var Subscription = function() { - function Subscription2(initialTeardown) { - this.initialTeardown = initialTeardown; - this.closed = false; - this._parentage = null; - this._teardowns = null; - } - Subscription2.prototype.unsubscribe = function() { - var e_1, _a, e_2, _b; - var errors; - if (!this.closed) { - this.closed = true; - var _parentage = this._parentage; - if (_parentage) { - this._parentage = null; - if (Array.isArray(_parentage)) { - try { - for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) { - var parent_1 = _parentage_1_1.value; - parent_1.remove(this); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) - _a.call(_parentage_1); - } finally { - if (e_1) - throw e_1.error; - } - } - } else { - _parentage.remove(this); - } - } - var initialTeardown = this.initialTeardown; - if (isFunction_1.isFunction(initialTeardown)) { - try { - initialTeardown(); - } catch (e) { - errors = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e]; - } - } - var _teardowns = this._teardowns; - if (_teardowns) { - this._teardowns = null; - try { - for (var _teardowns_1 = __values(_teardowns), _teardowns_1_1 = _teardowns_1.next(); !_teardowns_1_1.done; _teardowns_1_1 = _teardowns_1.next()) { - var teardown_1 = _teardowns_1_1.value; - try { - execTeardown(teardown_1); - } catch (err) { - errors = errors !== null && errors !== void 0 ? errors : []; - if (err instanceof UnsubscriptionError_1.UnsubscriptionError) { - errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors)); - } else { - errors.push(err); - } - } - } - } catch (e_2_1) { - e_2 = { error: e_2_1 }; - } finally { - try { - if (_teardowns_1_1 && !_teardowns_1_1.done && (_b = _teardowns_1.return)) - _b.call(_teardowns_1); - } finally { - if (e_2) - throw e_2.error; - } - } - } - if (errors) { - throw new UnsubscriptionError_1.UnsubscriptionError(errors); - } - } - }; - Subscription2.prototype.add = function(teardown) { - var _a; - if (teardown && teardown !== this) { - if (this.closed) { - execTeardown(teardown); - } else { - if (teardown instanceof Subscription2) { - if (teardown.closed || teardown._hasParent(this)) { - return; - } - teardown._addParent(this); - } - (this._teardowns = (_a = this._teardowns) !== null && _a !== void 0 ? _a : []).push(teardown); - } - } - }; - Subscription2.prototype._hasParent = function(parent) { - var _parentage = this._parentage; - return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent); - }; - Subscription2.prototype._addParent = function(parent) { - var _parentage = this._parentage; - this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent; - }; - Subscription2.prototype._removeParent = function(parent) { - var _parentage = this._parentage; - if (_parentage === parent) { - this._parentage = null; - } else if (Array.isArray(_parentage)) { - arrRemove_1.arrRemove(_parentage, parent); - } - }; - Subscription2.prototype.remove = function(teardown) { - var _teardowns = this._teardowns; - _teardowns && arrRemove_1.arrRemove(_teardowns, teardown); - if (teardown instanceof Subscription2) { - teardown._removeParent(this); - } - }; - Subscription2.EMPTY = function() { - var empty = new Subscription2(); - empty.closed = true; - return empty; - }(); - return Subscription2; - }(); - exports2.Subscription = Subscription; - exports2.EMPTY_SUBSCRIPTION = Subscription.EMPTY; - function isSubscription(value) { - return value instanceof Subscription || value && "closed" in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe); - } - exports2.isSubscription = isSubscription; - function execTeardown(teardown) { - if (isFunction_1.isFunction(teardown)) { - teardown(); - } else { - teardown.unsubscribe(); - } - } + exports2.updateCheckLogger = void 0; + var logger_1 = require_lib6(); + exports2.updateCheckLogger = (0, logger_1.logger)("update-check"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/config.js -var require_config = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/config.js"(exports2) { +// ../packages/core-loggers/lib/executionTimeLogger.js +var require_executionTimeLogger = __commonJS({ + "../packages/core-loggers/lib/executionTimeLogger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.config = void 0; - exports2.config = { - onUnhandledError: null, - onStoppedNotification: null, - Promise: void 0, - useDeprecatedSynchronousErrorHandling: false, - useDeprecatedNextContext: false - }; + exports2.executionTimeLogger = void 0; + var logger_1 = require_lib6(); + exports2.executionTimeLogger = (0, logger_1.logger)("execution-time"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js -var require_timeoutProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js"(exports2) { +// ../packages/core-loggers/lib/all.js +var require_all = __commonJS({ + "../packages/core-loggers/lib/all.js"(exports2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_contextLogger(), exports2); + __exportStar4(require_deprecationLogger(), exports2); + __exportStar4(require_fetchingProgressLogger(), exports2); + __exportStar4(require_hookLogger(), exports2); + __exportStar4(require_installCheckLogger(), exports2); + __exportStar4(require_lifecycleLogger(), exports2); + __exportStar4(require_linkLogger(), exports2); + __exportStar4(require_packageImportMethodLogger(), exports2); + __exportStar4(require_packageManifestLogger(), exports2); + __exportStar4(require_peerDependencyIssues(), exports2); + __exportStar4(require_progressLogger(), exports2); + __exportStar4(require_registryLogger(), exports2); + __exportStar4(require_removalLogger(), exports2); + __exportStar4(require_requestRetryLogger(), exports2); + __exportStar4(require_rootLogger(), exports2); + __exportStar4(require_scopeLogger(), exports2); + __exportStar4(require_skippedOptionalDependencyLogger(), exports2); + __exportStar4(require_stageLogger(), exports2); + __exportStar4(require_statsLogger(), exports2); + __exportStar4(require_summaryLogger(), exports2); + __exportStar4(require_updateCheckLogger(), exports2); + __exportStar4(require_executionTimeLogger(), exports2); + } +}); + +// ../packages/core-loggers/lib/index.js +var require_lib9 = __commonJS({ + "../packages/core-loggers/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.timeoutProvider = void 0; - exports2.timeoutProvider = { - setTimeout: function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - var delegate = exports2.timeoutProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) || setTimeout).apply(void 0, __spreadArray([], __read(args2))); - }, - clearTimeout: function(handle) { - var delegate = exports2.timeoutProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle); - }, - delegate: void 0 - }; + __exportStar4(require_all(), exports2); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js -var require_reportUnhandledError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js"(exports2) { +// ../node_modules/.pnpm/path-absolute@1.0.1/node_modules/path-absolute/index.js +var require_path_absolute = __commonJS({ + "../node_modules/.pnpm/path-absolute@1.0.1/node_modules/path-absolute/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.reportUnhandledError = void 0; - var config_1 = require_config(); - var timeoutProvider_1 = require_timeoutProvider(); - function reportUnhandledError(err) { - timeoutProvider_1.timeoutProvider.setTimeout(function() { - var onUnhandledError = config_1.config.onUnhandledError; - if (onUnhandledError) { - onUnhandledError(err); - } else { - throw err; - } - }); + var os = require("os"); + var path2 = require("path"); + module2.exports = function(filepath, cwd) { + const home = getHomedir(); + if (isHomepath(filepath)) { + return path2.join(home, filepath.substr(2)); + } + if (path2.isAbsolute(filepath)) { + return filepath; + } + if (cwd) { + return path2.join(cwd, filepath); + } + return path2.resolve(filepath); + }; + function getHomedir() { + const home = os.homedir(); + if (!home) + throw new Error("Could not find the homedir"); + return home; + } + function isHomepath(filepath) { + return filepath.indexOf("~/") === 0 || filepath.indexOf("~\\") === 0; } - exports2.reportUnhandledError = reportUnhandledError; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/noop.js -var require_noop = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/noop.js"(exports2) { +// ../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js +var require_color_name2 = __commonJS({ + "../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.noop = void 0; - function noop() { - } - exports2.noop = noop; + module2.exports = { + "aliceblue": [240, 248, 255], + "antiquewhite": [250, 235, 215], + "aqua": [0, 255, 255], + "aquamarine": [127, 255, 212], + "azure": [240, 255, 255], + "beige": [245, 245, 220], + "bisque": [255, 228, 196], + "black": [0, 0, 0], + "blanchedalmond": [255, 235, 205], + "blue": [0, 0, 255], + "blueviolet": [138, 43, 226], + "brown": [165, 42, 42], + "burlywood": [222, 184, 135], + "cadetblue": [95, 158, 160], + "chartreuse": [127, 255, 0], + "chocolate": [210, 105, 30], + "coral": [255, 127, 80], + "cornflowerblue": [100, 149, 237], + "cornsilk": [255, 248, 220], + "crimson": [220, 20, 60], + "cyan": [0, 255, 255], + "darkblue": [0, 0, 139], + "darkcyan": [0, 139, 139], + "darkgoldenrod": [184, 134, 11], + "darkgray": [169, 169, 169], + "darkgreen": [0, 100, 0], + "darkgrey": [169, 169, 169], + "darkkhaki": [189, 183, 107], + "darkmagenta": [139, 0, 139], + "darkolivegreen": [85, 107, 47], + "darkorange": [255, 140, 0], + "darkorchid": [153, 50, 204], + "darkred": [139, 0, 0], + "darksalmon": [233, 150, 122], + "darkseagreen": [143, 188, 143], + "darkslateblue": [72, 61, 139], + "darkslategray": [47, 79, 79], + "darkslategrey": [47, 79, 79], + "darkturquoise": [0, 206, 209], + "darkviolet": [148, 0, 211], + "deeppink": [255, 20, 147], + "deepskyblue": [0, 191, 255], + "dimgray": [105, 105, 105], + "dimgrey": [105, 105, 105], + "dodgerblue": [30, 144, 255], + "firebrick": [178, 34, 34], + "floralwhite": [255, 250, 240], + "forestgreen": [34, 139, 34], + "fuchsia": [255, 0, 255], + "gainsboro": [220, 220, 220], + "ghostwhite": [248, 248, 255], + "gold": [255, 215, 0], + "goldenrod": [218, 165, 32], + "gray": [128, 128, 128], + "green": [0, 128, 0], + "greenyellow": [173, 255, 47], + "grey": [128, 128, 128], + "honeydew": [240, 255, 240], + "hotpink": [255, 105, 180], + "indianred": [205, 92, 92], + "indigo": [75, 0, 130], + "ivory": [255, 255, 240], + "khaki": [240, 230, 140], + "lavender": [230, 230, 250], + "lavenderblush": [255, 240, 245], + "lawngreen": [124, 252, 0], + "lemonchiffon": [255, 250, 205], + "lightblue": [173, 216, 230], + "lightcoral": [240, 128, 128], + "lightcyan": [224, 255, 255], + "lightgoldenrodyellow": [250, 250, 210], + "lightgray": [211, 211, 211], + "lightgreen": [144, 238, 144], + "lightgrey": [211, 211, 211], + "lightpink": [255, 182, 193], + "lightsalmon": [255, 160, 122], + "lightseagreen": [32, 178, 170], + "lightskyblue": [135, 206, 250], + "lightslategray": [119, 136, 153], + "lightslategrey": [119, 136, 153], + "lightsteelblue": [176, 196, 222], + "lightyellow": [255, 255, 224], + "lime": [0, 255, 0], + "limegreen": [50, 205, 50], + "linen": [250, 240, 230], + "magenta": [255, 0, 255], + "maroon": [128, 0, 0], + "mediumaquamarine": [102, 205, 170], + "mediumblue": [0, 0, 205], + "mediumorchid": [186, 85, 211], + "mediumpurple": [147, 112, 219], + "mediumseagreen": [60, 179, 113], + "mediumslateblue": [123, 104, 238], + "mediumspringgreen": [0, 250, 154], + "mediumturquoise": [72, 209, 204], + "mediumvioletred": [199, 21, 133], + "midnightblue": [25, 25, 112], + "mintcream": [245, 255, 250], + "mistyrose": [255, 228, 225], + "moccasin": [255, 228, 181], + "navajowhite": [255, 222, 173], + "navy": [0, 0, 128], + "oldlace": [253, 245, 230], + "olive": [128, 128, 0], + "olivedrab": [107, 142, 35], + "orange": [255, 165, 0], + "orangered": [255, 69, 0], + "orchid": [218, 112, 214], + "palegoldenrod": [238, 232, 170], + "palegreen": [152, 251, 152], + "paleturquoise": [175, 238, 238], + "palevioletred": [219, 112, 147], + "papayawhip": [255, 239, 213], + "peachpuff": [255, 218, 185], + "peru": [205, 133, 63], + "pink": [255, 192, 203], + "plum": [221, 160, 221], + "powderblue": [176, 224, 230], + "purple": [128, 0, 128], + "rebeccapurple": [102, 51, 153], + "red": [255, 0, 0], + "rosybrown": [188, 143, 143], + "royalblue": [65, 105, 225], + "saddlebrown": [139, 69, 19], + "salmon": [250, 128, 114], + "sandybrown": [244, 164, 96], + "seagreen": [46, 139, 87], + "seashell": [255, 245, 238], + "sienna": [160, 82, 45], + "silver": [192, 192, 192], + "skyblue": [135, 206, 235], + "slateblue": [106, 90, 205], + "slategray": [112, 128, 144], + "slategrey": [112, 128, 144], + "snow": [255, 250, 250], + "springgreen": [0, 255, 127], + "steelblue": [70, 130, 180], + "tan": [210, 180, 140], + "teal": [0, 128, 128], + "thistle": [216, 191, 216], + "tomato": [255, 99, 71], + "turquoise": [64, 224, 208], + "violet": [238, 130, 238], + "wheat": [245, 222, 179], + "white": [255, 255, 255], + "whitesmoke": [245, 245, 245], + "yellow": [255, 255, 0], + "yellowgreen": [154, 205, 50] + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js -var require_NotificationFactories = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createNotification = exports2.nextNotification = exports2.errorNotification = exports2.COMPLETE_NOTIFICATION = void 0; - exports2.COMPLETE_NOTIFICATION = function() { - return createNotification("C", void 0, void 0); - }(); - function errorNotification(error) { - return createNotification("E", void 0, error); +// ../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js +var require_conversions2 = __commonJS({ + "../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js"(exports2, module2) { + var cssKeywords = require_color_name2(); + var reverseKeywords = {}; + for (const key of Object.keys(cssKeywords)) { + reverseKeywords[cssKeywords[key]] = key; } - exports2.errorNotification = errorNotification; - function nextNotification(value) { - return createNotification("N", value, void 0); + var convert = { + rgb: { channels: 3, labels: "rgb" }, + hsl: { channels: 3, labels: "hsl" }, + hsv: { channels: 3, labels: "hsv" }, + hwb: { channels: 3, labels: "hwb" }, + cmyk: { channels: 4, labels: "cmyk" }, + xyz: { channels: 3, labels: "xyz" }, + lab: { channels: 3, labels: "lab" }, + lch: { channels: 3, labels: "lch" }, + hex: { channels: 1, labels: ["hex"] }, + keyword: { channels: 1, labels: ["keyword"] }, + ansi16: { channels: 1, labels: ["ansi16"] }, + ansi256: { channels: 1, labels: ["ansi256"] }, + hcg: { channels: 3, labels: ["h", "c", "g"] }, + apple: { channels: 3, labels: ["r16", "g16", "b16"] }, + gray: { channels: 1, labels: ["gray"] } + }; + module2.exports = convert; + for (const model of Object.keys(convert)) { + if (!("channels" in convert[model])) { + throw new Error("missing channels property: " + model); + } + if (!("labels" in convert[model])) { + throw new Error("missing channel labels property: " + model); + } + if (convert[model].labels.length !== convert[model].channels) { + throw new Error("channel and label counts mismatch: " + model); + } + const { channels, labels } = convert[model]; + delete convert[model].channels; + delete convert[model].labels; + Object.defineProperty(convert[model], "channels", { value: channels }); + Object.defineProperty(convert[model], "labels", { value: labels }); } - exports2.nextNotification = nextNotification; - function createNotification(kind, value, error) { - return { - kind, - value, - error + convert.rgb.hsl = function(rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const min = Math.min(r, g, b); + const max = Math.max(r, g, b); + const delta = max - min; + let h; + let s; + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else if (b === max) { + h = 4 + (r - g) / delta; + } + h = Math.min(h * 60, 360); + if (h < 0) { + h += 360; + } + const l = (min + max) / 2; + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + return [h, s * 100, l * 100]; + }; + convert.rgb.hsv = function(rgb) { + let rdif; + let gdif; + let bdif; + let h; + let s; + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const v = Math.max(r, g, b); + const diff = v - Math.min(r, g, b); + const diffc = function(c) { + return (v - c) / 6 / diff + 1 / 2; }; - } - exports2.createNotification = createNotification; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/errorContext.js -var require_errorContext = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/errorContext.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.captureError = exports2.errorContext = void 0; - var config_1 = require_config(); - var context = null; - function errorContext(cb) { - if (config_1.config.useDeprecatedSynchronousErrorHandling) { - var isRoot = !context; - if (isRoot) { - context = { errorThrown: false, error: null }; + if (diff === 0) { + h = 0; + s = 0; + } else { + s = diff / v; + rdif = diffc(r); + gdif = diffc(g); + bdif = diffc(b); + if (r === v) { + h = bdif - gdif; + } else if (g === v) { + h = 1 / 3 + rdif - bdif; + } else if (b === v) { + h = 2 / 3 + gdif - rdif; } - cb(); - if (isRoot) { - var _a = context, errorThrown = _a.errorThrown, error = _a.error; - context = null; - if (errorThrown) { - throw error; - } + if (h < 0) { + h += 1; + } else if (h > 1) { + h -= 1; } - } else { - cb(); } + return [ + h * 360, + s * 100, + v * 100 + ]; + }; + convert.rgb.hwb = function(rgb) { + const r = rgb[0]; + const g = rgb[1]; + let b = rgb[2]; + const h = convert.rgb.hsl(rgb)[0]; + const w = 1 / 255 * Math.min(r, Math.min(g, b)); + b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); + return [h, w * 100, b * 100]; + }; + convert.rgb.cmyk = function(rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const k = Math.min(1 - r, 1 - g, 1 - b); + const c = (1 - r - k) / (1 - k) || 0; + const m = (1 - g - k) / (1 - k) || 0; + const y = (1 - b - k) / (1 - k) || 0; + return [c * 100, m * 100, y * 100, k * 100]; + }; + function comparativeDistance(x, y) { + return (x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2 + (x[2] - y[2]) ** 2; } - exports2.errorContext = errorContext; - function captureError(err) { - if (config_1.config.useDeprecatedSynchronousErrorHandling && context) { - context.errorThrown = true; - context.error = err; + convert.rgb.keyword = function(rgb) { + const reversed = reverseKeywords[rgb]; + if (reversed) { + return reversed; } - } - exports2.captureError = captureError; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subscriber.js -var require_Subscriber = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subscriber.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + let currentClosestDistance = Infinity; + let currentClosestKeyword; + for (const keyword of Object.keys(cssKeywords)) { + const value = cssKeywords[keyword]; + const distance = comparativeDistance(rgb, value); + if (distance < currentClosestDistance) { + currentClosestDistance = distance; + currentClosestKeyword = keyword; } } - return ar; + return currentClosestKeyword; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + convert.keyword.rgb = function(keyword) { + return cssKeywords[keyword]; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EMPTY_OBSERVER = exports2.SafeSubscriber = exports2.Subscriber = void 0; - var isFunction_1 = require_isFunction(); - var Subscription_1 = require_Subscription(); - var config_1 = require_config(); - var reportUnhandledError_1 = require_reportUnhandledError(); - var noop_1 = require_noop(); - var NotificationFactories_1 = require_NotificationFactories(); - var timeoutProvider_1 = require_timeoutProvider(); - var errorContext_1 = require_errorContext(); - var Subscriber = function(_super) { - __extends(Subscriber2, _super); - function Subscriber2(destination) { - var _this = _super.call(this) || this; - _this.isStopped = false; - if (destination) { - _this.destination = destination; - if (Subscription_1.isSubscription(destination)) { - destination.add(_this); - } - } else { - _this.destination = exports2.EMPTY_OBSERVER; - } - return _this; + convert.rgb.xyz = function(rgb) { + let r = rgb[0] / 255; + let g = rgb[1] / 255; + let b = rgb[2] / 255; + r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92; + g = g > 0.04045 ? ((g + 0.055) / 1.055) ** 2.4 : g / 12.92; + b = b > 0.04045 ? ((b + 0.055) / 1.055) ** 2.4 : b / 12.92; + const x = r * 0.4124 + g * 0.3576 + b * 0.1805; + const y = r * 0.2126 + g * 0.7152 + b * 0.0722; + const z = r * 0.0193 + g * 0.1192 + b * 0.9505; + return [x * 100, y * 100, z * 100]; + }; + convert.rgb.lab = function(rgb) { + const xyz = convert.rgb.xyz(rgb); + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116; + const l = 116 * y - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + return [l, a, b]; + }; + convert.hsl.rgb = function(hsl) { + const h = hsl[0] / 360; + const s = hsl[1] / 100; + const l = hsl[2] / 100; + let t2; + let t3; + let val; + if (s === 0) { + val = l * 255; + return [val, val, val]; } - Subscriber2.create = function(next, error, complete) { - return new SafeSubscriber(next, error, complete); - }; - Subscriber2.prototype.next = function(value) { - if (this.isStopped) { - handleStoppedNotification(NotificationFactories_1.nextNotification(value), this); - } else { - this._next(value); + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + const t1 = 2 * l - t2; + const rgb = [0, 0, 0]; + for (let i = 0; i < 3; i++) { + t3 = h + 1 / 3 * -(i - 1); + if (t3 < 0) { + t3++; } - }; - Subscriber2.prototype.error = function(err) { - if (this.isStopped) { - handleStoppedNotification(NotificationFactories_1.errorNotification(err), this); - } else { - this.isStopped = true; - this._error(err); + if (t3 > 1) { + t3--; } - }; - Subscriber2.prototype.complete = function() { - if (this.isStopped) { - handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this); + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; } else { - this.isStopped = true; - this._complete(); - } - }; - Subscriber2.prototype.unsubscribe = function() { - if (!this.closed) { - this.isStopped = true; - _super.prototype.unsubscribe.call(this); - this.destination = null; - } - }; - Subscriber2.prototype._next = function(value) { - this.destination.next(value); - }; - Subscriber2.prototype._error = function(err) { - try { - this.destination.error(err); - } finally { - this.unsubscribe(); + val = t1; } - }; - Subscriber2.prototype._complete = function() { - try { - this.destination.complete(); - } finally { - this.unsubscribe(); + rgb[i] = val * 255; + } + return rgb; + }; + convert.hsl.hsv = function(hsl) { + const h = hsl[0]; + let s = hsl[1] / 100; + let l = hsl[2] / 100; + let smin = s; + const lmin = Math.max(l, 0.01); + l *= 2; + s *= l <= 1 ? l : 2 - l; + smin *= lmin <= 1 ? lmin : 2 - lmin; + const v = (l + s) / 2; + const sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s); + return [h, sv * 100, v * 100]; + }; + convert.hsv.rgb = function(hsv) { + const h = hsv[0] / 60; + const s = hsv[1] / 100; + let v = hsv[2] / 100; + const hi = Math.floor(h) % 6; + const f = h - Math.floor(h); + const p = 255 * v * (1 - s); + const q = 255 * v * (1 - s * f); + const t = 255 * v * (1 - s * (1 - f)); + v *= 255; + switch (hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } + }; + convert.hsv.hsl = function(hsv) { + const h = hsv[0]; + const s = hsv[1] / 100; + const v = hsv[2] / 100; + const vmin = Math.max(v, 0.01); + let sl; + let l; + l = (2 - s) * v; + const lmin = (2 - s) * vmin; + sl = s * vmin; + sl /= lmin <= 1 ? lmin : 2 - lmin; + sl = sl || 0; + l /= 2; + return [h, sl * 100, l * 100]; + }; + convert.hwb.rgb = function(hwb) { + const h = hwb[0] / 360; + let wh = hwb[1] / 100; + let bl = hwb[2] / 100; + const ratio = wh + bl; + let f; + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + const i = Math.floor(6 * h); + const v = 1 - bl; + f = 6 * h - i; + if ((i & 1) !== 0) { + f = 1 - f; + } + const n = wh + f * (v - wh); + let r; + let g; + let b; + switch (i) { + default: + case 6: + case 0: + r = v; + g = n; + b = wh; + break; + case 1: + r = n; + g = v; + b = wh; + break; + case 2: + r = wh; + g = v; + b = n; + break; + case 3: + r = wh; + g = n; + b = v; + break; + case 4: + r = n; + g = wh; + b = v; + break; + case 5: + r = v; + g = wh; + b = n; + break; + } + return [r * 255, g * 255, b * 255]; + }; + convert.cmyk.rgb = function(cmyk) { + const c = cmyk[0] / 100; + const m = cmyk[1] / 100; + const y = cmyk[2] / 100; + const k = cmyk[3] / 100; + const r = 1 - Math.min(1, c * (1 - k) + k); + const g = 1 - Math.min(1, m * (1 - k) + k); + const b = 1 - Math.min(1, y * (1 - k) + k); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.rgb = function(xyz) { + const x = xyz[0] / 100; + const y = xyz[1] / 100; + const z = xyz[2] / 100; + let r; + let g; + let b; + r = x * 3.2406 + y * -1.5372 + z * -0.4986; + g = x * -0.9689 + y * 1.8758 + z * 0.0415; + b = x * 0.0557 + y * -0.204 + z * 1.057; + r = r > 31308e-7 ? 1.055 * r ** (1 / 2.4) - 0.055 : r * 12.92; + g = g > 31308e-7 ? 1.055 * g ** (1 / 2.4) - 0.055 : g * 12.92; + b = b > 31308e-7 ? 1.055 * b ** (1 / 2.4) - 0.055 : b * 12.92; + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.lab = function(xyz) { + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116; + const l = 116 * y - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + return [l, a, b]; + }; + convert.lab.xyz = function(lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let x; + let y; + let z; + y = (l + 16) / 116; + x = a / 500 + y; + z = y - b / 200; + const y2 = y ** 3; + const x2 = x ** 3; + const z2 = z ** 3; + y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787; + x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787; + z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787; + x *= 95.047; + y *= 100; + z *= 108.883; + return [x, y, z]; + }; + convert.lab.lch = function(lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let h; + const hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + if (h < 0) { + h += 360; + } + const c = Math.sqrt(a * a + b * b); + return [l, c, h]; + }; + convert.lch.lab = function(lch) { + const l = lch[0]; + const c = lch[1]; + const h = lch[2]; + const hr = h / 360 * 2 * Math.PI; + const a = c * Math.cos(hr); + const b = c * Math.sin(hr); + return [l, a, b]; + }; + convert.rgb.ansi16 = function(args2, saturation = null) { + const [r, g, b] = args2; + let value = saturation === null ? convert.rgb.hsv(args2)[2] : saturation; + value = Math.round(value / 50); + if (value === 0) { + return 30; + } + let ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255)); + if (value === 2) { + ansi += 60; + } + return ansi; + }; + convert.hsv.ansi16 = function(args2) { + return convert.rgb.ansi16(convert.hsv.rgb(args2), args2[2]); + }; + convert.rgb.ansi256 = function(args2) { + const r = args2[0]; + const g = args2[1]; + const b = args2[2]; + if (r === g && g === b) { + if (r < 8) { + return 16; } - }; - return Subscriber2; - }(Subscription_1.Subscription); - exports2.Subscriber = Subscriber; - var SafeSubscriber = function(_super) { - __extends(SafeSubscriber2, _super); - function SafeSubscriber2(observerOrNext, error, complete) { - var _this = _super.call(this) || this; - var next; - if (isFunction_1.isFunction(observerOrNext)) { - next = observerOrNext; - } else if (observerOrNext) { - next = observerOrNext.next, error = observerOrNext.error, complete = observerOrNext.complete; - var context_1; - if (_this && config_1.config.useDeprecatedNextContext) { - context_1 = Object.create(observerOrNext); - context_1.unsubscribe = function() { - return _this.unsubscribe(); - }; - } else { - context_1 = observerOrNext; - } - next = next === null || next === void 0 ? void 0 : next.bind(context_1); - error = error === null || error === void 0 ? void 0 : error.bind(context_1); - complete = complete === null || complete === void 0 ? void 0 : complete.bind(context_1); + if (r > 248) { + return 231; } - _this.destination = { - next: next ? wrapForErrorHandling(next, _this) : noop_1.noop, - error: wrapForErrorHandling(error !== null && error !== void 0 ? error : defaultErrorHandler, _this), - complete: complete ? wrapForErrorHandling(complete, _this) : noop_1.noop - }; - return _this; + return Math.round((r - 8) / 247 * 24) + 232; } - return SafeSubscriber2; - }(Subscriber); - exports2.SafeSubscriber = SafeSubscriber; - function wrapForErrorHandling(handler, instance) { - return function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - try { - handler.apply(void 0, __spreadArray([], __read(args2))); - } catch (err) { - if (config_1.config.useDeprecatedSynchronousErrorHandling) { - errorContext_1.captureError(err); - } else { - reportUnhandledError_1.reportUnhandledError(err); - } + const ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5); + return ansi; + }; + convert.ansi16.rgb = function(args2) { + let color = args2 % 10; + if (color === 0 || color === 7) { + if (args2 > 50) { + color += 3.5; } - }; - } - function defaultErrorHandler(err) { - throw err; - } - function handleStoppedNotification(notification, subscriber) { - var onStoppedNotification = config_1.config.onStoppedNotification; - onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function() { - return onStoppedNotification(notification, subscriber); - }); - } - exports2.EMPTY_OBSERVER = { - closed: true, - next: noop_1.noop, - error: defaultErrorHandler, - complete: noop_1.noop + color = color / 10.5 * 255; + return [color, color, color]; + } + const mult = (~~(args2 > 50) + 1) * 0.5; + const r = (color & 1) * mult * 255; + const g = (color >> 1 & 1) * mult * 255; + const b = (color >> 2 & 1) * mult * 255; + return [r, g, b]; }; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/symbol/observable.js -var require_observable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/symbol/observable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.observable = void 0; - exports2.observable = function() { - return typeof Symbol === "function" && Symbol.observable || "@@observable"; - }(); - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/identity.js -var require_identity = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/identity.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.identity = void 0; - function identity(x) { - return x; - } - exports2.identity = identity; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/pipe.js -var require_pipe = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/pipe.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.pipeFromArray = exports2.pipe = void 0; - var identity_1 = require_identity(); - function pipe() { - var fns = []; - for (var _i = 0; _i < arguments.length; _i++) { - fns[_i] = arguments[_i]; + convert.ansi256.rgb = function(args2) { + if (args2 >= 232) { + const c = (args2 - 232) * 10 + 8; + return [c, c, c]; } - return pipeFromArray(fns); - } - exports2.pipe = pipe; - function pipeFromArray(fns) { - if (fns.length === 0) { - return identity_1.identity; + args2 -= 16; + let rem; + const r = Math.floor(args2 / 36) / 5 * 255; + const g = Math.floor((rem = args2 % 36) / 6) / 5 * 255; + const b = rem % 6 / 5 * 255; + return [r, g, b]; + }; + convert.rgb.hex = function(args2) { + const integer = ((Math.round(args2[0]) & 255) << 16) + ((Math.round(args2[1]) & 255) << 8) + (Math.round(args2[2]) & 255); + const string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.hex.rgb = function(args2) { + const match = args2.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!match) { + return [0, 0, 0]; } - if (fns.length === 1) { - return fns[0]; + let colorString = match[0]; + if (match[0].length === 3) { + colorString = colorString.split("").map((char) => { + return char + char; + }).join(""); } - return function piped(input) { - return fns.reduce(function(prev, fn2) { - return fn2(prev); - }, input); - }; - } - exports2.pipeFromArray = pipeFromArray; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Observable.js -var require_Observable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Observable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Observable = void 0; - var Subscriber_1 = require_Subscriber(); - var Subscription_1 = require_Subscription(); - var observable_1 = require_observable(); - var pipe_1 = require_pipe(); - var config_1 = require_config(); - var isFunction_1 = require_isFunction(); - var errorContext_1 = require_errorContext(); - var Observable = function() { - function Observable2(subscribe) { - if (subscribe) { - this._subscribe = subscribe; - } + const integer = parseInt(colorString, 16); + const r = integer >> 16 & 255; + const g = integer >> 8 & 255; + const b = integer & 255; + return [r, g, b]; + }; + convert.rgb.hcg = function(rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const max = Math.max(Math.max(r, g), b); + const min = Math.min(Math.min(r, g), b); + const chroma = max - min; + let grayscale; + let hue; + if (chroma < 1) { + grayscale = min / (1 - chroma); + } else { + grayscale = 0; } - Observable2.prototype.lift = function(operator) { - var observable = new Observable2(); - observable.source = this; - observable.operator = operator; - return observable; - }; - Observable2.prototype.subscribe = function(observerOrNext, error, complete) { - var _this = this; - var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete); - errorContext_1.errorContext(function() { - var _a = _this, operator = _a.operator, source = _a.source; - subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber)); - }); - return subscriber; - }; - Observable2.prototype._trySubscribe = function(sink) { - try { - return this._subscribe(sink); - } catch (err) { - sink.error(err); - } - }; - Observable2.prototype.forEach = function(next, promiseCtor) { - var _this = this; - promiseCtor = getPromiseCtor(promiseCtor); - return new promiseCtor(function(resolve, reject) { - var subscription; - subscription = _this.subscribe(function(value) { - try { - next(value); - } catch (err) { - reject(err); - subscription === null || subscription === void 0 ? void 0 : subscription.unsubscribe(); - } - }, reject, resolve); - }); - }; - Observable2.prototype._subscribe = function(subscriber) { - var _a; - return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber); - }; - Observable2.prototype[observable_1.observable] = function() { - return this; - }; - Observable2.prototype.pipe = function() { - var operations = []; - for (var _i = 0; _i < arguments.length; _i++) { - operations[_i] = arguments[_i]; + if (chroma <= 0) { + hue = 0; + } else if (max === r) { + hue = (g - b) / chroma % 6; + } else if (max === g) { + hue = 2 + (b - r) / chroma; + } else { + hue = 4 + (r - g) / chroma; + } + hue /= 6; + hue %= 1; + return [hue * 360, chroma * 100, grayscale * 100]; + }; + convert.hsl.hcg = function(hsl) { + const s = hsl[1] / 100; + const l = hsl[2] / 100; + const c = l < 0.5 ? 2 * s * l : 2 * s * (1 - l); + let f = 0; + if (c < 1) { + f = (l - 0.5 * c) / (1 - c); + } + return [hsl[0], c * 100, f * 100]; + }; + convert.hsv.hcg = function(hsv) { + const s = hsv[1] / 100; + const v = hsv[2] / 100; + const c = s * v; + let f = 0; + if (c < 1) { + f = (v - c) / (1 - c); + } + return [hsv[0], c * 100, f * 100]; + }; + convert.hcg.rgb = function(hcg) { + const h = hcg[0] / 360; + const c = hcg[1] / 100; + const g = hcg[2] / 100; + if (c === 0) { + return [g * 255, g * 255, g * 255]; + } + const pure = [0, 0, 0]; + const hi = h % 1 * 6; + const v = hi % 1; + const w = 1 - v; + let mg = 0; + switch (Math.floor(hi)) { + case 0: + pure[0] = 1; + pure[1] = v; + pure[2] = 0; + break; + case 1: + pure[0] = w; + pure[1] = 1; + pure[2] = 0; + break; + case 2: + pure[0] = 0; + pure[1] = 1; + pure[2] = v; + break; + case 3: + pure[0] = 0; + pure[1] = w; + pure[2] = 1; + break; + case 4: + pure[0] = v; + pure[1] = 0; + pure[2] = 1; + break; + default: + pure[0] = 1; + pure[1] = 0; + pure[2] = w; + } + mg = (1 - c) * g; + return [ + (c * pure[0] + mg) * 255, + (c * pure[1] + mg) * 255, + (c * pure[2] + mg) * 255 + ]; + }; + convert.hcg.hsv = function(hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + const v = c + g * (1 - c); + let f = 0; + if (v > 0) { + f = c / v; + } + return [hcg[0], f * 100, v * 100]; + }; + convert.hcg.hsl = function(hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + const l = g * (1 - c) + 0.5 * c; + let s = 0; + if (l > 0 && l < 0.5) { + s = c / (2 * l); + } else if (l >= 0.5 && l < 1) { + s = c / (2 * (1 - l)); + } + return [hcg[0], s * 100, l * 100]; + }; + convert.hcg.hwb = function(hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + const v = c + g * (1 - c); + return [hcg[0], (v - c) * 100, (1 - v) * 100]; + }; + convert.hwb.hcg = function(hwb) { + const w = hwb[1] / 100; + const b = hwb[2] / 100; + const v = 1 - b; + const c = v - w; + let g = 0; + if (c < 1) { + g = (v - c) / (1 - c); + } + return [hwb[0], c * 100, g * 100]; + }; + convert.apple.rgb = function(apple) { + return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255]; + }; + convert.rgb.apple = function(rgb) { + return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535]; + }; + convert.gray.rgb = function(args2) { + return [args2[0] / 100 * 255, args2[0] / 100 * 255, args2[0] / 100 * 255]; + }; + convert.gray.hsl = function(args2) { + return [0, 0, args2[0]]; + }; + convert.gray.hsv = convert.gray.hsl; + convert.gray.hwb = function(gray) { + return [0, 100, gray[0]]; + }; + convert.gray.cmyk = function(gray) { + return [0, 0, 0, gray[0]]; + }; + convert.gray.lab = function(gray) { + return [gray[0], 0, 0]; + }; + convert.gray.hex = function(gray) { + const val = Math.round(gray[0] / 100 * 255) & 255; + const integer = (val << 16) + (val << 8) + val; + const string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.rgb.gray = function(rgb) { + const val = (rgb[0] + rgb[1] + rgb[2]) / 3; + return [val / 255 * 100]; + }; + } +}); + +// ../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js +var require_route2 = __commonJS({ + "../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js"(exports2, module2) { + var conversions = require_conversions2(); + function buildGraph() { + const graph = {}; + const models = Object.keys(conversions); + for (let len = models.length, i = 0; i < len; i++) { + graph[models[i]] = { + // http://jsperf.com/1-vs-infinity + // micro-opt, but this is simple. + distance: -1, + parent: null + }; + } + return graph; + } + function deriveBFS(fromModel) { + const graph = buildGraph(); + const queue = [fromModel]; + graph[fromModel].distance = 0; + while (queue.length) { + const current = queue.pop(); + const adjacents = Object.keys(conversions[current]); + for (let len = adjacents.length, i = 0; i < len; i++) { + const adjacent = adjacents[i]; + const node = graph[adjacent]; + if (node.distance === -1) { + node.distance = graph[current].distance + 1; + node.parent = current; + queue.unshift(adjacent); + } } - return pipe_1.pipeFromArray(operations)(this); - }; - Observable2.prototype.toPromise = function(promiseCtor) { - var _this = this; - promiseCtor = getPromiseCtor(promiseCtor); - return new promiseCtor(function(resolve, reject) { - var value; - _this.subscribe(function(x) { - return value = x; - }, function(err) { - return reject(err); - }, function() { - return resolve(value); - }); - }); - }; - Observable2.create = function(subscribe) { - return new Observable2(subscribe); - }; - return Observable2; - }(); - exports2.Observable = Observable; - function getPromiseCtor(promiseCtor) { - var _a; - return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a !== void 0 ? _a : Promise; + } + return graph; } - function isObserver(value) { - return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete); + function link(from, to) { + return function(args2) { + return to(from(args2)); + }; } - function isSubscriber(value) { - return value && value instanceof Subscriber_1.Subscriber || isObserver(value) && Subscription_1.isSubscription(value); + function wrapConversion(toModel, graph) { + const path2 = [graph[toModel].parent, toModel]; + let fn2 = conversions[graph[toModel].parent][toModel]; + let cur = graph[toModel].parent; + while (graph[cur].parent) { + path2.unshift(graph[cur].parent); + fn2 = link(conversions[graph[cur].parent][cur], fn2); + cur = graph[cur].parent; + } + fn2.conversion = path2; + return fn2; } + module2.exports = function(fromModel) { + const graph = deriveBFS(fromModel); + const conversion = {}; + const models = Object.keys(graph); + for (let len = models.length, i = 0; i < len; i++) { + const toModel = models[i]; + const node = graph[toModel]; + if (node.parent === null) { + continue; + } + conversion[toModel] = wrapConversion(toModel, graph); + } + return conversion; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/lift.js -var require_lift = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/lift.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.operate = exports2.hasLift = void 0; - var isFunction_1 = require_isFunction(); - function hasLift(source) { - return isFunction_1.isFunction(source === null || source === void 0 ? void 0 : source.lift); +// ../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js +var require_color_convert2 = __commonJS({ + "../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js"(exports2, module2) { + var conversions = require_conversions2(); + var route = require_route2(); + var convert = {}; + var models = Object.keys(conversions); + function wrapRaw(fn2) { + const wrappedFn = function(...args2) { + const arg0 = args2[0]; + if (arg0 === void 0 || arg0 === null) { + return arg0; + } + if (arg0.length > 1) { + args2 = arg0; + } + return fn2(args2); + }; + if ("conversion" in fn2) { + wrappedFn.conversion = fn2.conversion; + } + return wrappedFn; } - exports2.hasLift = hasLift; - function operate(init) { - return function(source) { - if (hasLift(source)) { - return source.lift(function(liftedSource) { - try { - return init(liftedSource, this); - } catch (err) { - this.error(err); - } - }); + function wrapRounded(fn2) { + const wrappedFn = function(...args2) { + const arg0 = args2[0]; + if (arg0 === void 0 || arg0 === null) { + return arg0; } - throw new TypeError("Unable to lift unknown Observable type"); + if (arg0.length > 1) { + args2 = arg0; + } + const result2 = fn2(args2); + if (typeof result2 === "object") { + for (let len = result2.length, i = 0; i < len; i++) { + result2[i] = Math.round(result2[i]); + } + } + return result2; }; + if ("conversion" in fn2) { + wrappedFn.conversion = fn2.conversion; + } + return wrappedFn; } - exports2.operate = operate; + models.forEach((fromModel) => { + convert[fromModel] = {}; + Object.defineProperty(convert[fromModel], "channels", { value: conversions[fromModel].channels }); + Object.defineProperty(convert[fromModel], "labels", { value: conversions[fromModel].labels }); + const routes = route(fromModel); + const routeModels = Object.keys(routes); + routeModels.forEach((toModel) => { + const fn2 = routes[toModel]; + convert[fromModel][toModel] = wrapRounded(fn2); + convert[fromModel][toModel].raw = wrapRaw(fn2); + }); + }); + module2.exports = convert; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js -var require_OperatorSubscriber = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js"(exports2) { +// ../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js +var require_ansi_styles2 = __commonJS({ + "../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js"(exports2, module2) { "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + var wrapAnsi16 = (fn2, offset) => (...args2) => { + const code = fn2(...args2); + return `\x1B[${code + offset}m`; + }; + var wrapAnsi256 = (fn2, offset) => (...args2) => { + const code = fn2(...args2); + return `\x1B[${38 + offset};5;${code}m`; + }; + var wrapAnsi16m = (fn2, offset) => (...args2) => { + const rgb = fn2(...args2); + return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; + }; + var ansi2ansi = (n) => n; + var rgb2rgb = (r, g, b) => [r, g, b]; + var setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + return value; + }, + enumerable: true, + configurable: true + }); + }; + var colorConvert; + var makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === void 0) { + colorConvert = require_color_convert2(); + } + const offset = isBackground ? 10 : 0; + const styles = {}; + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === "ansi16" ? "ansi" : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === "object") { + styles[name] = wrap(suite[targetSpace], offset); } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.OperatorSubscriber = void 0; - var Subscriber_1 = require_Subscriber(); - var OperatorSubscriber = function(_super) { - __extends(OperatorSubscriber2, _super); - function OperatorSubscriber2(destination, onNext, onComplete, onError, onFinalize) { - var _this = _super.call(this, destination) || this; - _this.onFinalize = onFinalize; - _this._next = onNext ? function(value) { - try { - onNext(value); - } catch (err) { - destination.error(err); - } - } : _super.prototype._next; - _this._error = onError ? function(err) { - try { - onError(err); - } catch (err2) { - destination.error(err2); - } finally { - this.unsubscribe(); - } - } : _super.prototype._error; - _this._complete = onComplete ? function() { - try { - onComplete(); - } catch (err) { - destination.error(err); - } finally { - this.unsubscribe(); - } - } : _super.prototype._complete; - return _this; } - OperatorSubscriber2.prototype.unsubscribe = function() { - var _a; - var closed = this.closed; - _super.prototype.unsubscribe.call(this); - !closed && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this)); + return styles; + }; + function assembleStyles() { + const codes = /* @__PURE__ */ new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + // Bright color + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } }; - return OperatorSubscriber2; - }(Subscriber_1.Subscriber); - exports2.OperatorSubscriber = OperatorSubscriber; + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\x1B[${style[0]}m`, + close: `\x1B[${style[1]}m` + }; + group[styleName] = styles[styleName]; + codes.set(style[0], style[1]); + } + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + Object.defineProperty(styles, "codes", { + value: codes, + enumerable: false + }); + styles.color.close = "\x1B[39m"; + styles.bgColor.close = "\x1B[49m"; + setLazyProperty(styles.color, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, false)); + setLazyProperty(styles.color, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, false)); + setLazyProperty(styles.color, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, false)); + setLazyProperty(styles.bgColor, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, true)); + setLazyProperty(styles.bgColor, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, true)); + setLazyProperty(styles.bgColor, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, true)); + return styles; + } + Object.defineProperty(module2, "exports", { + enumerable: true, + get: assembleStyles + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/refCount.js -var require_refCount = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/refCount.js"(exports2) { +// ../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +var require_has_flag2 = __commonJS({ + "../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.refCount = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function refCount() { - return lift_1.operate(function(source, subscriber) { - var connection = null; - source._refCount++; - var refCounter = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, void 0, void 0, function() { - if (!source || source._refCount <= 0 || 0 < --source._refCount) { - connection = null; - return; - } - var sharedConnection = source._connection; - var conn = connection; - connection = null; - if (sharedConnection && (!conn || sharedConnection === conn)) { - sharedConnection.unsubscribe(); - } - subscriber.unsubscribe(); - }); - source.subscribe(refCounter); - if (!refCounter.closed) { - connection = source.connect(); - } - }); - } - exports2.refCount = refCount; + module2.exports = (flag, argv2 = process.argv) => { + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const position = argv2.indexOf(prefix + flag); + const terminatorPosition = argv2.indexOf("--"); + return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js -var require_ConnectableObservable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js"(exports2) { +// ../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js +var require_supports_color2 = __commonJS({ + "../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js"(exports2, module2) { "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + var os = require("os"); + var tty = require("tty"); + var hasFlag = require_has_flag2(); + var { env } = process; + var forceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { + forceColor = 0; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + forceColor = 1; + } + if ("FORCE_COLOR" in env) { + if (env.FORCE_COLOR === "true") { + forceColor = 1; + } else if (env.FORCE_COLOR === "false") { + forceColor = 0; + } else { + forceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3); + } + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ConnectableObservable = void 0; - var Observable_1 = require_Observable(); - var Subscription_1 = require_Subscription(); - var refCount_1 = require_refCount(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var lift_1 = require_lift(); - var ConnectableObservable = function(_super) { - __extends(ConnectableObservable2, _super); - function ConnectableObservable2(source, subjectFactory) { - var _this = _super.call(this) || this; - _this.source = source; - _this.subjectFactory = subjectFactory; - _this._subject = null; - _this._refCount = 0; - _this._connection = null; - if (lift_1.hasLift(source)) { - _this.lift = source.lift; + } + function supportsColor(haveStream, streamIsTTY) { + if (forceColor === 0) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (haveStream && !streamIsTTY && forceColor === void 0) { + return 0; + } + const min = forceColor || 0; + if (env.TERM === "dumb") { + return min; + } + if (process.platform === "win32") { + const osRelease = os.release().split("."); + if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; } - return _this; + return 1; } - ConnectableObservable2.prototype._subscribe = function(subscriber) { - return this.getSubject().subscribe(subscriber); - }; - ConnectableObservable2.prototype.getSubject = function() { - var subject = this._subject; - if (!subject || subject.isStopped) { - this._subject = this.subjectFactory(); + if ("CI" in env) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env) || env.CI_NAME === "codeship") { + return 1; } - return this._subject; - }; - ConnectableObservable2.prototype._teardown = function() { - this._refCount = 0; - var _connection = this._connection; - this._subject = this._connection = null; - _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe(); - }; - ConnectableObservable2.prototype.connect = function() { - var _this = this; - var connection = this._connection; - if (!connection) { - connection = this._connection = new Subscription_1.Subscription(); - var subject_1 = this.getSubject(); - connection.add(this.source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subject_1, void 0, function() { - _this._teardown(); - subject_1.complete(); - }, function(err) { - _this._teardown(); - subject_1.error(err); - }, function() { - return _this._teardown(); - }))); - if (connection.closed) { - this._connection = null; - connection = Subscription_1.Subscription.EMPTY; - } + return min; + } + if ("TEAMCITY_VERSION" in env) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; + } + if (env.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env) { + const version2 = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env.TERM_PROGRAM) { + case "iTerm.app": + return version2 >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; } - return connection; - }; - ConnectableObservable2.prototype.refCount = function() { - return refCount_1.refCount()(this); - }; - return ConnectableObservable2; - }(Observable_1.Observable); - exports2.ConnectableObservable = ConnectableObservable; + } + if (/-256(color)?$/i.test(env.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { + return 1; + } + if ("COLORTERM" in env) { + return 1; + } + return min; + } + function getSupportLevel(stream) { + const level = supportsColor(stream, stream && stream.isTTY); + return translateLevel(level); + } + module2.exports = { + supportsColor: getSupportLevel, + stdout: translateLevel(supportsColor(true, tty.isatty(1))), + stderr: translateLevel(supportsColor(true, tty.isatty(2))) + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js -var require_performanceTimestampProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js"(exports2) { +// ../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js +var require_util2 = __commonJS({ + "../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.performanceTimestampProvider = void 0; - exports2.performanceTimestampProvider = { - now: function() { - return (exports2.performanceTimestampProvider.delegate || performance).now(); - }, - delegate: void 0 + var stringReplaceAll = (string, substring, replacer) => { + let index = string.indexOf(substring); + if (index === -1) { + return string; + } + const substringLength = substring.length; + let endIndex = 0; + let returnValue = ""; + do { + returnValue += string.substr(endIndex, index - endIndex) + substring + replacer; + endIndex = index + substringLength; + index = string.indexOf(substring, endIndex); + } while (index !== -1); + returnValue += string.substr(endIndex); + return returnValue; + }; + var stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => { + let endIndex = 0; + let returnValue = ""; + do { + const gotCR = string[index - 1] === "\r"; + returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix; + endIndex = index + 1; + index = string.indexOf("\n", endIndex); + } while (index !== -1); + returnValue += string.substr(endIndex); + return returnValue; + }; + module2.exports = { + stringReplaceAll, + stringEncaseCRLFWithFirstIndex }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js -var require_animationFrameProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js"(exports2) { +// ../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js +var require_templates2 = __commonJS({ + "../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + var TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; + var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; + var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; + var ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi; + var ESCAPES = /* @__PURE__ */ new Map([ + ["n", "\n"], + ["r", "\r"], + ["t", " "], + ["b", "\b"], + ["f", "\f"], + ["v", "\v"], + ["0", "\0"], + ["\\", "\\"], + ["e", "\x1B"], + ["a", "\x07"] + ]); + function unescape2(c) { + const u = c[0] === "u"; + const bracket = c[1] === "{"; + if (u && !bracket && c.length === 5 || c[0] === "x" && c.length === 3) { + return String.fromCharCode(parseInt(c.slice(1), 16)); + } + if (u && bracket) { + return String.fromCodePoint(parseInt(c.slice(2, -1), 16)); + } + return ESCAPES.get(c) || c; + } + function parseArguments(name, arguments_) { + const results = []; + const chunks = arguments_.trim().split(/\s*,\s*/g); + let matches; + for (const chunk of chunks) { + const number = Number(chunk); + if (!Number.isNaN(number)) { + results.push(number); + } else if (matches = chunk.match(STRING_REGEX)) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape2(escape) : character)); + } else { + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); } } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.animationFrameProvider = void 0; - var Subscription_1 = require_Subscription(); - exports2.animationFrameProvider = { - schedule: function(callback) { - var request = requestAnimationFrame; - var cancel = cancelAnimationFrame; - var delegate = exports2.animationFrameProvider.delegate; - if (delegate) { - request = delegate.requestAnimationFrame; - cancel = delegate.cancelAnimationFrame; + return results; + } + function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + const results = []; + let matches; + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + if (matches[2]) { + const args2 = parseArguments(name, matches[2]); + results.push([name].concat(args2)); + } else { + results.push([name]); } - var handle = request(function(timestamp) { - cancel = void 0; - callback(timestamp); - }); - return new Subscription_1.Subscription(function() { - return cancel === null || cancel === void 0 ? void 0 : cancel(handle); - }); - }, - requestAnimationFrame: function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + } + return results; + } + function buildStyle(chalk, styles) { + const enabled = {}; + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); } - var delegate = exports2.animationFrameProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray([], __read(args2))); - }, - cancelAnimationFrame: function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + } + let current = chalk; + for (const [styleName, styles2] of Object.entries(enabled)) { + if (!Array.isArray(styles2)) { + continue; } - var delegate = exports2.animationFrameProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray([], __read(args2))); - }, - delegate: void 0 - }; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js -var require_animationFrames = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.animationFrames = void 0; - var Observable_1 = require_Observable(); - var Subscription_1 = require_Subscription(); - var performanceTimestampProvider_1 = require_performanceTimestampProvider(); - var animationFrameProvider_1 = require_animationFrameProvider(); - function animationFrames(timestampProvider) { - return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES; + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); + } + current = styles2.length > 0 ? current[styleName](...styles2) : current[styleName]; + } + return current; } - exports2.animationFrames = animationFrames; - function animationFramesFactory(timestampProvider) { - var schedule = animationFrameProvider_1.animationFrameProvider.schedule; - return new Observable_1.Observable(function(subscriber) { - var subscription = new Subscription_1.Subscription(); - var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider; - var start = provider.now(); - var run = function(timestamp) { - var now = provider.now(); - subscriber.next({ - timestamp: timestampProvider ? now : timestamp, - elapsed: now - start - }); - if (!subscriber.closed) { - subscription.add(schedule(run)); + module2.exports = (chalk, temporary) => { + const styles = []; + const chunks = []; + let chunk = []; + temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => { + if (escapeCharacter) { + chunk.push(unescape2(escapeCharacter)); + } else if (style) { + const string = chunk.join(""); + chunk = []; + chunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string)); + styles.push({ inverse, styles: parseStyle(style) }); + } else if (close) { + if (styles.length === 0) { + throw new Error("Found extraneous } in Chalk template literal"); } - }; - subscription.add(schedule(run)); - return subscription; + chunks.push(buildStyle(chalk, styles)(chunk.join(""))); + chunk = []; + styles.pop(); + } else { + chunk.push(character); + } }); - } - var DEFAULT_ANIMATION_FRAMES = animationFramesFactory(); - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js -var require_ObjectUnsubscribedError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ObjectUnsubscribedError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function(_super) { - return function ObjectUnsubscribedErrorImpl() { - _super(this); - this.name = "ObjectUnsubscribedError"; - this.message = "object unsubscribed"; - }; - }); + chunks.push(chunk.join("")); + if (styles.length > 0) { + const errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; + throw new Error(errMessage); + } + return chunks.join(""); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subject.js -var require_Subject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Subject.js"(exports2) { +// ../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js +var require_source = __commonJS({ + "../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js"(exports2, module2) { "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + var ansiStyles = require_ansi_styles2(); + var { stdout: stdoutColor, stderr: stderrColor } = require_supports_color2(); + var { + stringReplaceAll, + stringEncaseCRLFWithFirstIndex + } = require_util2(); + var { isArray } = Array; + var levelMapping = [ + "ansi", + "ansi", + "ansi256", + "ansi16m" + ]; + var styles = /* @__PURE__ */ Object.create(null); + var applyOptions = (object, options = {}) => { + if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) { + throw new Error("The `level` option should be an integer from 0 to 3"); + } + const colorLevel = stdoutColor ? stdoutColor.level : 0; + object.level = options.level === void 0 ? colorLevel : options.level; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AnonymousSubject = exports2.Subject = void 0; - var Observable_1 = require_Observable(); - var Subscription_1 = require_Subscription(); - var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); - var arrRemove_1 = require_arrRemove(); - var errorContext_1 = require_errorContext(); - var Subject = function(_super) { - __extends(Subject2, _super); - function Subject2() { - var _this = _super.call(this) || this; - _this.closed = false; - _this.observers = []; - _this.isStopped = false; - _this.hasError = false; - _this.thrownError = null; - return _this; + var ChalkClass = class { + constructor(options) { + return chalkFactory(options); } - Subject2.prototype.lift = function(operator) { - var subject = new AnonymousSubject(this, this); - subject.operator = operator; - return subject; + }; + var chalkFactory = (options) => { + const chalk2 = {}; + applyOptions(chalk2, options); + chalk2.template = (...arguments_) => chalkTag(chalk2.template, ...arguments_); + Object.setPrototypeOf(chalk2, Chalk.prototype); + Object.setPrototypeOf(chalk2.template, chalk2); + chalk2.template.constructor = () => { + throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead."); }; - Subject2.prototype._throwIfClosed = function() { - if (this.closed) { - throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError(); + chalk2.template.Instance = ChalkClass; + return chalk2.template; + }; + function Chalk(options) { + return chalkFactory(options); + } + for (const [styleName, style] of Object.entries(ansiStyles)) { + styles[styleName] = { + get() { + const builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty); + Object.defineProperty(this, styleName, { value: builder }); + return builder; } }; - Subject2.prototype.next = function(value) { - var _this = this; - errorContext_1.errorContext(function() { - var e_1, _a; - _this._throwIfClosed(); - if (!_this.isStopped) { - var copy = _this.observers.slice(); - try { - for (var copy_1 = __values(copy), copy_1_1 = copy_1.next(); !copy_1_1.done; copy_1_1 = copy_1.next()) { - var observer = copy_1_1.value; - observer.next(value); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (copy_1_1 && !copy_1_1.done && (_a = copy_1.return)) - _a.call(copy_1); - } finally { - if (e_1) - throw e_1.error; - } - } - } - }); - }; - Subject2.prototype.error = function(err) { - var _this = this; - errorContext_1.errorContext(function() { - _this._throwIfClosed(); - if (!_this.isStopped) { - _this.hasError = _this.isStopped = true; - _this.thrownError = err; - var observers = _this.observers; - while (observers.length) { - observers.shift().error(err); - } - } - }); - }; - Subject2.prototype.complete = function() { - var _this = this; - errorContext_1.errorContext(function() { - _this._throwIfClosed(); - if (!_this.isStopped) { - _this.isStopped = true; - var observers = _this.observers; - while (observers.length) { - observers.shift().complete(); - } - } - }); + } + styles.visible = { + get() { + const builder = createBuilder(this, this._styler, true); + Object.defineProperty(this, "visible", { value: builder }); + return builder; + } + }; + var usedModels = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"]; + for (const model of usedModels) { + styles[model] = { + get() { + const { level } = this; + return function(...arguments_) { + const styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler); + return createBuilder(this, styler, this._isEmpty); + }; + } }; - Subject2.prototype.unsubscribe = function() { - this.isStopped = this.closed = true; - this.observers = null; + } + for (const model of usedModels) { + const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const { level } = this; + return function(...arguments_) { + const styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler); + return createBuilder(this, styler, this._isEmpty); + }; + } }; - Object.defineProperty(Subject2.prototype, "observed", { - get: function() { - var _a; - return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0; + } + var proto = Object.defineProperties(() => { + }, { + ...styles, + level: { + enumerable: true, + get() { + return this._generator.level; }, - enumerable: false, - configurable: true - }); - Subject2.prototype._trySubscribe = function(subscriber) { - this._throwIfClosed(); - return _super.prototype._trySubscribe.call(this, subscriber); - }; - Subject2.prototype._subscribe = function(subscriber) { - this._throwIfClosed(); - this._checkFinalizedStatuses(subscriber); - return this._innerSubscribe(subscriber); - }; - Subject2.prototype._innerSubscribe = function(subscriber) { - var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers; - return hasError || isStopped ? Subscription_1.EMPTY_SUBSCRIPTION : (observers.push(subscriber), new Subscription_1.Subscription(function() { - return arrRemove_1.arrRemove(observers, subscriber); - })); - }; - Subject2.prototype._checkFinalizedStatuses = function(subscriber) { - var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped; - if (hasError) { - subscriber.error(thrownError); - } else if (isStopped) { - subscriber.complete(); + set(level) { + this._generator.level = level; } - }; - Subject2.prototype.asObservable = function() { - var observable = new Observable_1.Observable(); - observable.source = this; - return observable; - }; - Subject2.create = function(destination, source) { - return new AnonymousSubject(destination, source); - }; - return Subject2; - }(Observable_1.Observable); - exports2.Subject = Subject; - var AnonymousSubject = function(_super) { - __extends(AnonymousSubject2, _super); - function AnonymousSubject2(destination, source) { - var _this = _super.call(this) || this; - _this.destination = destination; - _this.source = source; - return _this; } - AnonymousSubject2.prototype.next = function(value) { - var _a, _b; - (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value); - }; - AnonymousSubject2.prototype.error = function(err) { - var _a, _b; - (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err); - }; - AnonymousSubject2.prototype.complete = function() { - var _a, _b; - (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a); - }; - AnonymousSubject2.prototype._subscribe = function(subscriber) { - var _a, _b; - return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION; - }; - return AnonymousSubject2; - }(Subject); - exports2.AnonymousSubject = AnonymousSubject; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js -var require_BehaviorSubject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); + }); + var createStyler = (open, close, parent) => { + let openAll; + let closeAll; + if (parent === void 0) { + openAll = open; + closeAll = close; + } else { + openAll = parent.openAll + open; + closeAll = close + parent.closeAll; + } + return { + open, + close, + openAll, + closeAll, + parent }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + }; + var createBuilder = (self2, _styler, _isEmpty) => { + const builder = (...arguments_) => { + if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) { + return applyStyle(builder, chalkTag(builder, ...arguments_)); } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + return applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" ")); }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BehaviorSubject = void 0; - var Subject_1 = require_Subject(); - var BehaviorSubject = function(_super) { - __extends(BehaviorSubject2, _super); - function BehaviorSubject2(_value) { - var _this = _super.call(this) || this; - _this._value = _value; - return _this; + Object.setPrototypeOf(builder, proto); + builder._generator = self2; + builder._styler = _styler; + builder._isEmpty = _isEmpty; + return builder; + }; + var applyStyle = (self2, string) => { + if (self2.level <= 0 || !string) { + return self2._isEmpty ? "" : string; } - Object.defineProperty(BehaviorSubject2.prototype, "value", { - get: function() { - return this.getValue(); - }, - enumerable: false, - configurable: true - }); - BehaviorSubject2.prototype._subscribe = function(subscriber) { - var subscription = _super.prototype._subscribe.call(this, subscriber); - !subscription.closed && subscriber.next(this._value); - return subscription; - }; - BehaviorSubject2.prototype.getValue = function() { - var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value; - if (hasError) { - throw thrownError; + let styler = self2._styler; + if (styler === void 0) { + return string; + } + const { openAll, closeAll } = styler; + if (string.indexOf("\x1B") !== -1) { + while (styler !== void 0) { + string = stringReplaceAll(string, styler.close, styler.open); + styler = styler.parent; } - this._throwIfClosed(); - return _value; - }; - BehaviorSubject2.prototype.next = function(value) { - _super.prototype.next.call(this, this._value = value); - }; - return BehaviorSubject2; - }(Subject_1.Subject); - exports2.BehaviorSubject = BehaviorSubject; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js -var require_dateTimestampProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.dateTimestampProvider = void 0; - exports2.dateTimestampProvider = { - now: function() { - return (exports2.dateTimestampProvider.delegate || Date).now(); - }, - delegate: void 0 + } + const lfIndex = string.indexOf("\n"); + if (lfIndex !== -1) { + string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex); + } + return openAll + string + closeAll; + }; + var template; + var chalkTag = (chalk2, ...strings) => { + const [firstString] = strings; + if (!isArray(firstString) || !isArray(firstString.raw)) { + return strings.join(" "); + } + const arguments_ = strings.slice(1); + const parts = [firstString.raw[0]]; + for (let i = 1; i < firstString.length; i++) { + parts.push( + String(arguments_[i - 1]).replace(/[{}\\]/g, "\\$&"), + String(firstString.raw[i]) + ); + } + if (template === void 0) { + template = require_templates2(); + } + return template(chalk2, parts.join("")); }; + Object.defineProperties(Chalk.prototype, styles); + var chalk = Chalk(); + chalk.supportsColor = stdoutColor; + chalk.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 }); + chalk.stderr.supportsColor = stderrColor; + module2.exports = chalk; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js -var require_ReplaySubject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js"(exports2) { +// ../hooks/pnpmfile/lib/requirePnpmfile.js +var require_requirePnpmfile = __commonJS({ + "../hooks/pnpmfile/lib/requirePnpmfile.js"(exports2) { "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ReplaySubject = void 0; - var Subject_1 = require_Subject(); - var dateTimestampProvider_1 = require_dateTimestampProvider(); - var ReplaySubject = function(_super) { - __extends(ReplaySubject2, _super); - function ReplaySubject2(_bufferSize, _windowTime, _timestampProvider) { - if (_bufferSize === void 0) { - _bufferSize = Infinity; - } - if (_windowTime === void 0) { - _windowTime = Infinity; + exports2.requirePnpmfile = exports2.BadReadPackageHookError = void 0; + var fs_1 = __importDefault4(require("fs")); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var chalk_1 = __importDefault4(require_source()); + var BadReadPackageHookError = class extends error_1.PnpmError { + constructor(pnpmfile, message2) { + super("BAD_READ_PACKAGE_HOOK_RESULT", `${message2} Hook imported via ${pnpmfile}`); + this.pnpmfile = pnpmfile; + } + }; + exports2.BadReadPackageHookError = BadReadPackageHookError; + var PnpmFileFailError = class extends error_1.PnpmError { + constructor(pnpmfile, originalError) { + super("PNPMFILE_FAIL", `Error during pnpmfile execution. pnpmfile: "${pnpmfile}". Error: "${originalError.message}".`); + this.pnpmfile = pnpmfile; + this.originalError = originalError; + } + }; + function requirePnpmfile(pnpmFilePath, prefix) { + try { + const pnpmfile = require(pnpmFilePath); + if (typeof pnpmfile === "undefined") { + logger_1.logger.warn({ + message: `Ignoring the pnpmfile at "${pnpmFilePath}". It exports "undefined".`, + prefix + }); + return void 0; } - if (_timestampProvider === void 0) { - _timestampProvider = dateTimestampProvider_1.dateTimestampProvider; + if (pnpmfile?.hooks?.readPackage && typeof pnpmfile.hooks.readPackage !== "function") { + throw new TypeError("hooks.readPackage should be a function"); } - var _this = _super.call(this) || this; - _this._bufferSize = _bufferSize; - _this._windowTime = _windowTime; - _this._timestampProvider = _timestampProvider; - _this._buffer = []; - _this._infiniteTimeWindow = true; - _this._infiniteTimeWindow = _windowTime === Infinity; - _this._bufferSize = Math.max(1, _bufferSize); - _this._windowTime = Math.max(1, _windowTime); - return _this; - } - ReplaySubject2.prototype.next = function(value) { - var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime; - if (!isStopped) { - _buffer.push(value); - !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime); + if (pnpmfile?.hooks?.readPackage) { + const readPackage = pnpmfile.hooks.readPackage; + pnpmfile.hooks.readPackage = async function(pkg, ...args2) { + pkg.dependencies = pkg.dependencies ?? {}; + pkg.devDependencies = pkg.devDependencies ?? {}; + pkg.optionalDependencies = pkg.optionalDependencies ?? {}; + pkg.peerDependencies = pkg.peerDependencies ?? {}; + const newPkg = await readPackage(pkg, ...args2); + if (!newPkg) { + throw new BadReadPackageHookError(pnpmFilePath, "readPackage hook did not return a package manifest object."); + } + const dependencies = ["dependencies", "optionalDependencies", "peerDependencies"]; + for (const dep of dependencies) { + if (newPkg[dep] && typeof newPkg[dep] !== "object") { + throw new BadReadPackageHookError(pnpmFilePath, `readPackage hook returned package manifest object's property '${dep}' must be an object.`); + } + } + return newPkg; + }; } - this._trimBuffer(); - _super.prototype.next.call(this, value); - }; - ReplaySubject2.prototype._subscribe = function(subscriber) { - this._throwIfClosed(); - this._trimBuffer(); - var subscription = this._innerSubscribe(subscriber); - var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer; - var copy = _buffer.slice(); - for (var i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) { - subscriber.next(copy[i]); + pnpmfile.filename = pnpmFilePath; + return pnpmfile; + } catch (err) { + if (err instanceof SyntaxError) { + console.error(chalk_1.default.red("A syntax error in the .pnpmfile.cjs\n")); + console.error(err); + process.exit(1); } - this._checkFinalizedStatuses(subscriber); - return subscription; - }; - ReplaySubject2.prototype._trimBuffer = function() { - var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow; - var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize; - _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize); - if (!_infiniteTimeWindow) { - var now = _timestampProvider.now(); - var last = 0; - for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) { - last = i; - } - last && _buffer.splice(0, last + 1); + if (err.code !== "MODULE_NOT_FOUND" || pnpmFileExistsSync(pnpmFilePath)) { + throw new PnpmFileFailError(pnpmFilePath, err); } - }; - return ReplaySubject2; - }(Subject_1.Subject); - exports2.ReplaySubject = ReplaySubject; + return void 0; + } + } + exports2.requirePnpmfile = requirePnpmfile; + function pnpmFileExistsSync(pnpmFilePath) { + const pnpmFileRealName = pnpmFilePath.endsWith(".cjs") ? pnpmFilePath : `${pnpmFilePath}.cjs`; + return fs_1.default.existsSync(pnpmFileRealName); + } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js -var require_AsyncSubject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js"(exports2) { +// ../hooks/pnpmfile/lib/requireHooks.js +var require_requireHooks = __commonJS({ + "../hooks/pnpmfile/lib/requireHooks.js"(exports2) { "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AsyncSubject = void 0; - var Subject_1 = require_Subject(); - var AsyncSubject = function(_super) { - __extends(AsyncSubject2, _super); - function AsyncSubject2() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this._value = null; - _this._hasValue = false; - _this._isComplete = false; - return _this; - } - AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber) { - var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete; - if (hasError) { - subscriber.error(thrownError); - } else if (isStopped || _isComplete) { - _hasValue && subscriber.next(_value); - subscriber.complete(); - } - }; - AsyncSubject2.prototype.next = function(value) { - if (!this.isStopped) { - this._value = value; - this._hasValue = true; - } + exports2.requireHooks = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var requirePnpmfile_1 = require_requirePnpmfile(); + function requireHooks(prefix, opts) { + const globalPnpmfile = opts.globalPnpmfile && (0, requirePnpmfile_1.requirePnpmfile)((0, path_absolute_1.default)(opts.globalPnpmfile, prefix), prefix); + let globalHooks = globalPnpmfile?.hooks; + const pnpmFile = opts.pnpmfile && (0, requirePnpmfile_1.requirePnpmfile)((0, path_absolute_1.default)(opts.pnpmfile, prefix), prefix) || (0, requirePnpmfile_1.requirePnpmfile)(path_1.default.join(prefix, ".pnpmfile.cjs"), prefix); + let hooks = pnpmFile?.hooks; + if (!globalHooks && !hooks) + return { afterAllResolved: [], filterLog: [], readPackage: [] }; + globalHooks = globalHooks || {}; + hooks = hooks || {}; + const cookedHooks = { + afterAllResolved: [], + filterLog: [], + readPackage: [] }; - AsyncSubject2.prototype.complete = function() { - var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete; - if (!_isComplete) { - this._isComplete = true; - _hasValue && _super.prototype.next.call(this, _value); - _super.prototype.complete.call(this); + for (const hookName of ["readPackage", "afterAllResolved"]) { + if (globalHooks[hookName]) { + const globalHook = globalHooks[hookName]; + const context = createReadPackageHookContext(globalPnpmfile.filename, prefix, hookName); + cookedHooks[hookName].push((pkg) => globalHook(pkg, context)); } - }; - return AsyncSubject2; - }(Subject_1.Subject); - exports2.AsyncSubject = AsyncSubject; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js -var require_Action = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + if (hooks[hookName]) { + const hook = hooks[hookName]; + const context = createReadPackageHookContext(pnpmFile.filename, prefix, hookName); + cookedHooks[hookName].push((pkg) => hook(pkg, context)); } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Action = void 0; - var Subscription_1 = require_Subscription(); - var Action = function(_super) { - __extends(Action2, _super); - function Action2(scheduler, work) { - return _super.call(this) || this; } - Action2.prototype.schedule = function(state, delay) { - if (delay === void 0) { - delay = 0; + if (globalHooks.filterLog != null) { + cookedHooks.filterLog.push(globalHooks.filterLog); + } + if (hooks.filterLog != null) { + cookedHooks.filterLog.push(hooks.filterLog); + } + cookedHooks.importPackage = globalHooks.importPackage; + const preResolutionHook = globalHooks.preResolution; + cookedHooks.preResolution = preResolutionHook ? (ctx) => preResolutionHook(ctx, createPreResolutionHookLogger(prefix)) : void 0; + cookedHooks.fetchers = globalHooks.fetchers; + return cookedHooks; + } + exports2.requireHooks = requireHooks; + function createReadPackageHookContext(calledFrom, prefix, hook) { + return { + log: (message2) => { + core_loggers_1.hookLogger.debug({ + from: calledFrom, + hook, + message: message2, + prefix + }); } - return this; }; - return Action2; - }(Subscription_1.Subscription); - exports2.Action = Action; + } + function createPreResolutionHookLogger(prefix) { + const hook = "preResolution"; + return { + info: (message2) => core_loggers_1.hookLogger.info({ message: message2, prefix, hook }), + warn: (message2) => core_loggers_1.hookLogger.warn({ message: message2, prefix, hook }) + // eslint-disable-line + }; + } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js -var require_intervalProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js"(exports2) { +// ../hooks/pnpmfile/lib/index.js +var require_lib10 = __commonJS({ + "../hooks/pnpmfile/lib/index.js"(exports2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.intervalProvider = void 0; - exports2.intervalProvider = { - setInterval: function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - var delegate = exports2.intervalProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) || setInterval).apply(void 0, __spreadArray([], __read(args2))); - }, - clearInterval: function(handle) { - var delegate = exports2.intervalProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle); - }, - delegate: void 0 - }; + exports2.BadReadPackageHookError = exports2.requirePnpmfile = exports2.requireHooks = void 0; + var requireHooks_1 = require_requireHooks(); + Object.defineProperty(exports2, "requireHooks", { enumerable: true, get: function() { + return requireHooks_1.requireHooks; + } }); + var requirePnpmfile_1 = require_requirePnpmfile(); + Object.defineProperty(exports2, "requirePnpmfile", { enumerable: true, get: function() { + return requirePnpmfile_1.requirePnpmfile; + } }); + Object.defineProperty(exports2, "BadReadPackageHookError", { enumerable: true, get: function() { + return requirePnpmfile_1.BadReadPackageHookError; + } }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js -var require_AsyncAction = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; +// ../node_modules/.pnpm/strip-comments-strings@1.2.0/node_modules/strip-comments-strings/index.cjs +var require_strip_comments_strings = __commonJS({ + "../node_modules/.pnpm/strip-comments-strings@1.2.0/node_modules/strip-comments-strings/index.cjs"(exports2, module2) { + var COMMENT_TYPE = { + COMMENT_BLOCK: "commentBlock", + COMMENT_LINE: "commentLine" + }; + var REGEX_TYPE = "regex"; + var firstFound = (str, stringStarters = null) => { + stringStarters = stringStarters || [ + { name: "quote", char: "'" }, + { name: "literal", char: "`" }, + { name: "doubleQuote", char: '"' }, + { name: COMMENT_TYPE.COMMENT_BLOCK, char: "/*" }, + { name: COMMENT_TYPE.COMMENT_LINE, char: "//" }, + { name: REGEX_TYPE, char: "/" } + ]; + let lastIndex = -1; + let winner = -1; + let item = {}; + for (let i = 0; i < stringStarters.length; ++i) { + item = stringStarters[i]; + const index = str.indexOf(item.char); + if (index > -1 && lastIndex < 0) { + lastIndex = index; + winner = i; + } + if (index > -1 && index < lastIndex) { + lastIndex = index; + winner = i; + } + item.index = index; + } + if (winner === -1) { + return { + index: -1 }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AsyncAction = void 0; - var Action_1 = require_Action(); - var intervalProvider_1 = require_intervalProvider(); - var arrRemove_1 = require_arrRemove(); - var AsyncAction = function(_super) { - __extends(AsyncAction2, _super); - function AsyncAction2(scheduler, work) { - var _this = _super.call(this, scheduler, work) || this; - _this.scheduler = scheduler; - _this.work = work; - _this.pending = false; - return _this; } - AsyncAction2.prototype.schedule = function(state, delay) { - if (delay === void 0) { - delay = 0; - } - if (this.closed) { - return this; - } - this.state = state; - var id = this.id; - var scheduler = this.scheduler; - if (id != null) { - this.id = this.recycleAsyncId(scheduler, id, delay); - } - this.pending = true; - this.delay = delay; - this.id = this.id || this.requestAsyncId(scheduler, this.id, delay); - return this; + return { + char: stringStarters[winner].char, + name: stringStarters[winner].name, + index: lastIndex }; - AsyncAction2.prototype.requestAsyncId = function(scheduler, _id, delay) { - if (delay === void 0) { - delay = 0; + }; + var getNextClosingElement = (str, chars, { specialCharStart = null, specialCharEnd = null } = {}) => { + if (!Array.isArray(chars)) { + chars = [chars]; + } + const n = str.length; + for (let i = 0; i < n; ++i) { + const currentChar = str[i]; + if (currentChar === "\\") { + ++i; + continue; } - return intervalProvider_1.intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay); - }; - AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + if (specialCharStart && currentChar === specialCharStart) { + const newStr = str.substring(i); + const stp = getNextClosingElement(newStr, specialCharEnd); + i += stp.index; } - if (delay != null && this.delay === delay && this.pending === false) { - return id; + if (chars.includes(currentChar)) { + return { + index: i + }; } - intervalProvider_1.intervalProvider.clearInterval(id); - return void 0; + } + return { + index: -1 }; - AsyncAction2.prototype.execute = function(state, delay) { - if (this.closed) { - return new Error("executing a cancelled action"); - } - this.pending = false; - var error = this._execute(state, delay); - if (error) { - return error; - } else if (this.pending === false && this.id != null) { - this.id = this.recycleAsyncId(this.scheduler, this.id, null); + }; + var movePointerIndex = (str, index) => { + str = str.substring(index); + return str; + }; + var parseString = (str) => { + const originalString = str; + const originalStringLength = originalString.length; + const detectedString = []; + const detectedComments = []; + const detectedRegex = []; + do { + let item = firstFound(str); + if (item.index === -1) { + break; } - }; - AsyncAction2.prototype._execute = function(state, _delay) { - var errored = false; - var errorValue; - try { - this.work(state); - } catch (e) { - errored = true; - errorValue = !!e && e || new Error(e); + const enter = { + item + }; + if (item.name === COMMENT_TYPE.COMMENT_BLOCK) { + enter.type = item.name; + str = movePointerIndex(str, item.index); + enter.index = originalStringLength - str.length; + const nextIndex = str.indexOf("*/"); + if (nextIndex === -1) { + throw new Error("Comment Block opened at position ... not enclosed"); + } + str = movePointerIndex(str, nextIndex + 2); + enter.indexEnd = originalStringLength - str.length; + enter.content = originalString.substring(enter.index, enter.indexEnd); + detectedComments.push(enter); + continue; + } else if (item.name === COMMENT_TYPE.COMMENT_LINE) { + enter.type = item.name; + str = movePointerIndex(str, item.index); + enter.index = originalStringLength - str.length; + let newLinePos = str.indexOf("\n"); + if (newLinePos === -1) { + enter.indexEnd = originalStringLength; + enter.content = originalString.substring(enter.index, enter.indexEnd - 1); + detectedComments.push(enter); + break; + } + str = movePointerIndex(str, newLinePos + 1); + enter.indexEnd = originalStringLength - str.length - 1; + enter.content = originalString.substring(enter.index, enter.indexEnd); + detectedComments.push(enter); + continue; + } else if (item.name === REGEX_TYPE) { + enter.type = item.name; + str = movePointerIndex(str, item.index + 1); + enter.index = originalStringLength - str.length - 1; + const nextItem2 = getNextClosingElement(str, ["/", "\n"], { specialCharStart: "[", specialCharEnd: "]" }); + if (nextItem2.index === -1) { + throw new Error(`SCT: (1005) Regex opened at position ${enter.index} not enclosed`); + } + str = movePointerIndex(str, nextItem2.index + 1); + enter.indexEnd = originalStringLength - str.length; + enter.content = originalString.substring(enter.index, enter.indexEnd); + detectedRegex.push(enter); + continue; } - if (errored) { - this.unsubscribe(); - return errorValue; + str = str.substring(item.index + 1); + enter.index = originalStringLength - str.length; + const nextItem = getNextClosingElement(str, item.char); + if (nextItem.index === -1) { + throw new Error(`SCT: (1001) String opened at position ${enter.index} with a ${item.name} not enclosed`); } - }; - AsyncAction2.prototype.unsubscribe = function() { - if (!this.closed) { - var _a = this, id = _a.id, scheduler = _a.scheduler; - var actions = scheduler.actions; - this.work = this.state = this.scheduler = null; - this.pending = false; - arrRemove_1.arrRemove(actions, this); - if (id != null) { - this.id = this.recycleAsyncId(scheduler, id, null); - } - this.delay = null; - _super.prototype.unsubscribe.call(this); + str = movePointerIndex(str, nextItem.index + 1); + enter.indexEnd = originalStringLength - str.length - 1; + enter.content = originalString.substring(enter.index, enter.indexEnd); + detectedString.push(enter); + } while (true); + return { + text: str, + strings: detectedString, + comments: detectedComments, + regexes: detectedRegex + }; + }; + function replaceOccurences(strings, str, replacer, { includeDelimiter = true }) { + const isCallable = typeof replacer === "function"; + const n = strings.length; + for (let i = n - 1; i >= 0; --i) { + const info = strings[i]; + const replacement = isCallable ? replacer(info, str) : replacer; + if (includeDelimiter) { + str = str.substring(0, info.index - 1) + replacement + str.substring(info.indexEnd + 1); + } else { + str = str.substring(0, info.index) + replacement + str.substring(info.indexEnd); } - }; - return AsyncAction2; - }(Action_1.Action); - exports2.AsyncAction = AsyncAction; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/Immediate.js -var require_Immediate = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/Immediate.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.TestTools = exports2.Immediate = void 0; - var nextHandle = 1; - var resolved; - var activeHandles = {}; - function findAndClearHandle(handle) { - if (handle in activeHandles) { - delete activeHandles[handle]; - return true; } - return false; + return str; } - exports2.Immediate = { - setImmediate: function(cb) { - var handle = nextHandle++; - activeHandles[handle] = true; - if (!resolved) { - resolved = Promise.resolve(); - } - resolved.then(function() { - return findAndClearHandle(handle) && cb(); - }); - return handle; - }, - clearImmediate: function(handle) { - findAndClearHandle(handle); - } + var stripComments = (str, replacer = "") => { + const comments = parseString(str).comments; + str = replaceOccurences(comments, str, replacer, { includeDelimiter: false }); + return str; }; - exports2.TestTools = { - pending: function() { - return Object.keys(activeHandles).length; - } + var stripStrings = (str, replacer = "", { includeDelimiter = true } = {}) => { + const strings = parseString(str).strings; + str = replaceOccurences(strings, str, replacer, { includeDelimiter }); + return str; }; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js -var require_immediateProvider = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; + var clearStrings = (str, replacer = "", { includeDelimiter = false } = {}) => { + const strings = parseString(str).strings; + str = replaceOccurences(strings, str, replacer, { includeDelimiter }); + return str; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + var stripRegexes = (str, replacer = "", { includeDelimiter = true } = {}) => { + const strings = parseString(str).regexes; + str = replaceOccurences(strings, str, replacer, { includeDelimiter }); + return str; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.immediateProvider = void 0; - var Immediate_1 = require_Immediate(); - var setImmediate2 = Immediate_1.Immediate.setImmediate; - var clearImmediate2 = Immediate_1.Immediate.clearImmediate; - exports2.immediateProvider = { - setImmediate: function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - var delegate = exports2.immediateProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate2).apply(void 0, __spreadArray([], __read(args2))); - }, - clearImmediate: function(handle) { - var delegate = exports2.immediateProvider.delegate; - return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate2)(handle); - }, - delegate: void 0 + var clearRegexes = (str, replacer = "//", { includeDelimiter = false } = {}) => { + const strings = parseString(str).regexes; + str = replaceOccurences(strings, str, replacer, { includeDelimiter }); + return str; }; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js -var require_AsapAction = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; + module2.exports = { + parseString, + stripComments, + stripStrings, + clearStrings, + clearRegexes + }; + module2.exports.parseString = parseString; + module2.exports.stripComments = stripComments; + module2.exports.stripStrings = stripStrings; + module2.exports.stripRegexes = stripRegexes; + module2.exports.clearStrings = clearStrings; + module2.exports.clearRegexes = clearRegexes; + } +}); + +// ../text/comments-parser/lib/extractComments.js +var require_extractComments = __commonJS({ + "../text/comments-parser/lib/extractComments.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extractComments = void 0; + var strip_comments_strings_1 = require_strip_comments_strings(); + function extractComments(text) { + const hasFinalNewline = text.endsWith("\n"); + if (!hasFinalNewline) { + text += "\n"; + } + const { comments: rawComments } = (0, strip_comments_strings_1.parseString)(text); + const comments = []; + let stripped = (0, strip_comments_strings_1.stripComments)(text); + if (!hasFinalNewline) { + stripped = stripped.slice(0, -1); + } + let offset = 0; + for (const comment of rawComments) { + const preamble = stripped.slice(0, comment.index - offset); + const lineStart = Math.max(preamble.lastIndexOf("\n"), 0); + const priorLines = preamble.split("\n"); + let lineNumber = priorLines.length; + let after = ""; + let hasAfter = false; + if (lineNumber === 1) { + if (preamble.trim().length === 0) { + lineNumber = 0; + } + } else { + after = priorLines[lineNumber - 2]; + hasAfter = true; + if (priorLines[0].trim().length === 0) { + lineNumber -= 1; + } + } + let lineEnd = stripped.indexOf("\n", lineStart === 0 ? 0 : lineStart + 1); + if (lineEnd < 0) { + lineEnd = stripped.length; + } + const whitespaceMatch = stripped.slice(lineStart, comment.index - offset).match(/^\s*/); + const newComment = { + type: comment.type, + content: comment.content, + lineNumber, + on: stripped.slice(lineStart, lineEnd), + whitespace: whitespaceMatch ? whitespaceMatch[0] : "" }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AsapAction = void 0; - var AsyncAction_1 = require_AsyncAction(); - var immediateProvider_1 = require_immediateProvider(); - var AsapAction = function(_super) { - __extends(AsapAction2, _super); - function AsapAction2(scheduler, work) { - var _this = _super.call(this, scheduler, work) || this; - _this.scheduler = scheduler; - _this.work = work; - return _this; - } - AsapAction2.prototype.requestAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; - } - if (delay !== null && delay > 0) { - return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); - } - scheduler.actions.push(this); - return scheduler._scheduled || (scheduler._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler.flush.bind(scheduler, void 0))); - }; - AsapAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + if (hasAfter) { + newComment.after = after; } - if (delay != null && delay > 0 || delay == null && this.delay > 0) { - return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); - } - if (scheduler.actions.length === 0) { - immediateProvider_1.immediateProvider.clearImmediate(id); - scheduler._scheduled = void 0; + const nextLineEnd = stripped.indexOf("\n", lineEnd + 1); + if (nextLineEnd >= 0) { + newComment.before = stripped.slice(lineEnd, nextLineEnd); } - return void 0; + comments.push(newComment); + offset += comment.indexEnd - comment.index; + } + return { + text: stripped, + comments: comments.length ? comments : void 0, + hasFinalNewline }; - return AsapAction2; - }(AsyncAction_1.AsyncAction); - exports2.AsapAction = AsapAction; + } + exports2.extractComments = extractComments; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Scheduler.js -var require_Scheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Scheduler.js"(exports2) { +// ../text/comments-parser/lib/insertComments.js +var require_insertComments = __commonJS({ + "../text/comments-parser/lib/insertComments.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Scheduler = void 0; - var dateTimestampProvider_1 = require_dateTimestampProvider(); - var Scheduler = function() { - function Scheduler2(schedulerActionCtor, now) { - if (now === void 0) { - now = Scheduler2.now; + exports2.insertComments = void 0; + function insertComments(json, comments) { + const jsonLines = json.split("\n"); + const index = {}; + const canonicalizer = /[\s'"]/g; + for (let i = 0; i < jsonLines.length; ++i) { + const key = jsonLines[i].replace(canonicalizer, ""); + if (key in index) { + index[key] = -1; + } else { + index[key] = i; } - this.schedulerActionCtor = schedulerActionCtor; - this.now = now; } - Scheduler2.prototype.schedule = function(work, delay, state) { - if (delay === void 0) { - delay = 0; - } - return new this.schedulerActionCtor(this, work).schedule(state, delay); - }; - Scheduler2.now = dateTimestampProvider_1.dateTimestampProvider.now; - return Scheduler2; - }(); - exports2.Scheduler = Scheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js -var require_AsyncScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + const jsonPrefix = {}; + for (const comment of comments) { + let key = comment.on.replace(canonicalizer, ""); + if (key && index[key] !== void 0 && index[key] >= 0) { + jsonLines[index[key]] += " " + comment.content; + continue; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AsyncScheduler = void 0; - var Scheduler_1 = require_Scheduler(); - var AsyncScheduler = function(_super) { - __extends(AsyncScheduler2, _super); - function AsyncScheduler2(SchedulerAction, now) { - if (now === void 0) { - now = Scheduler_1.Scheduler.now; + if (comment.before === void 0) { + jsonLines[jsonLines.length - 1] += comment.whitespace + comment.content; + continue; } - var _this = _super.call(this, SchedulerAction, now) || this; - _this.actions = []; - _this._active = false; - _this._scheduled = void 0; - return _this; - } - AsyncScheduler2.prototype.flush = function(action) { - var actions = this.actions; - if (this._active) { - actions.push(action); - return; + let location = comment.lineNumber === 0 ? 0 : -1; + if (location < 0) { + key = comment.before.replace(canonicalizer, ""); + if (key && index[key] !== void 0) { + location = index[key]; + } } - var error; - this._active = true; - do { - if (error = action.execute(action.state, action.delay)) { - break; + if (location >= 0) { + if (jsonPrefix[location]) { + jsonPrefix[location] += " " + comment.content; + } else { + const inlineWhitespace = comment.whitespace.startsWith("\n") ? comment.whitespace.slice(1) : comment.whitespace; + jsonPrefix[location] = inlineWhitespace + comment.content; } - } while (action = actions.shift()); - this._active = false; - if (error) { - while (action = actions.shift()) { - action.unsubscribe(); + continue; + } + if (comment.after) { + key = comment.after.replace(canonicalizer, ""); + if (key && index[key] !== void 0 && index[key] >= 0) { + jsonLines[index[key]] += comment.whitespace + comment.content; + continue; } - throw error; } - }; - return AsyncScheduler2; - }(Scheduler_1.Scheduler); - exports2.AsyncScheduler = AsyncScheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js -var require_AsapScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + location = comment.lineNumber - 1; + let separator = " "; + if (location >= jsonLines.length) { + location = jsonLines.length - 1; + separator = "\n"; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AsapScheduler = void 0; - var AsyncScheduler_1 = require_AsyncScheduler(); - var AsapScheduler = function(_super) { - __extends(AsapScheduler2, _super); - function AsapScheduler2() { - return _super !== null && _super.apply(this, arguments) || this; + jsonLines[location] += separator + comment.content + " /* [comment possibly relocated by pnpm] */"; } - AsapScheduler2.prototype.flush = function(action) { - this._active = true; - this._scheduled = void 0; - var actions = this.actions; - var error; - var index = -1; - action = action || actions.shift(); - var count = actions.length; - do { - if (error = action.execute(action.state, action.delay)) { - break; - } - } while (++index < count && (action = actions.shift())); - this._active = false; - if (error) { - while (++index < count && (action = actions.shift())) { - action.unsubscribe(); - } - throw error; + for (let i = 0; i < jsonLines.length; ++i) { + if (jsonPrefix[i]) { + jsonLines[i] = jsonPrefix[i] + "\n" + jsonLines[i]; } - }; - return AsapScheduler2; - }(AsyncScheduler_1.AsyncScheduler); - exports2.AsapScheduler = AsapScheduler; + } + return jsonLines.join("\n"); + } + exports2.insertComments = insertComments; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js -var require_asap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js"(exports2) { +// ../text/comments-parser/lib/CommentSpecifier.js +var require_CommentSpecifier = __commonJS({ + "../text/comments-parser/lib/CommentSpecifier.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.asap = exports2.asapScheduler = void 0; - var AsapAction_1 = require_AsapAction(); - var AsapScheduler_1 = require_AsapScheduler(); - exports2.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction); - exports2.asap = exports2.asapScheduler; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/async.js -var require_async = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/async.js"(exports2) { +// ../text/comments-parser/lib/index.js +var require_lib11 = __commonJS({ + "../text/comments-parser/lib/index.js"(exports2) { "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.async = exports2.asyncScheduler = void 0; - var AsyncAction_1 = require_AsyncAction(); - var AsyncScheduler_1 = require_AsyncScheduler(); - exports2.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction); - exports2.async = exports2.asyncScheduler; + __exportStar4(require_extractComments(), exports2); + __exportStar4(require_insertComments(), exports2); + __exportStar4(require_CommentSpecifier(), exports2); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js -var require_QueueAction = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.QueueAction = void 0; - var AsyncAction_1 = require_AsyncAction(); - var QueueAction = function(_super) { - __extends(QueueAction2, _super); - function QueueAction2(scheduler, work) { - var _this = _super.call(this, scheduler, work) || this; - _this.scheduler = scheduler; - _this.work = work; - return _this; +// ../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/unicode.js +var require_unicode = __commonJS({ + "../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/unicode.js"(exports2, module2) { + module2.exports.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/; + module2.exports.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/; + module2.exports.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/; + } +}); + +// ../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/util.js +var require_util3 = __commonJS({ + "../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/util.js"(exports2, module2) { + var unicode = require_unicode(); + module2.exports = { + isSpaceSeparator(c) { + return typeof c === "string" && unicode.Space_Separator.test(c); + }, + isIdStartChar(c) { + return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c === "$" || c === "_" || unicode.ID_Start.test(c)); + }, + isIdContinueChar(c) { + return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c >= "0" && c <= "9" || c === "$" || c === "_" || c === "\u200C" || c === "\u200D" || unicode.ID_Continue.test(c)); + }, + isDigit(c) { + return typeof c === "string" && /[0-9]/.test(c); + }, + isHexDigit(c) { + return typeof c === "string" && /[0-9A-Fa-f]/.test(c); } - QueueAction2.prototype.schedule = function(state, delay) { - if (delay === void 0) { - delay = 0; - } - if (delay > 0) { - return _super.prototype.schedule.call(this, state, delay); - } - this.delay = delay; - this.state = state; - this.scheduler.flush(this); - return this; - }; - QueueAction2.prototype.execute = function(state, delay) { - return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay); - }; - QueueAction2.prototype.requestAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; - } - if (delay != null && delay > 0 || delay == null && this.delay > 0) { - return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); - } - return scheduler.flush(this); - }; - return QueueAction2; - }(AsyncAction_1.AsyncAction); - exports2.QueueAction = QueueAction; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js -var require_QueueScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; +// ../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/parse.js +var require_parse = __commonJS({ + "../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/parse.js"(exports2, module2) { + var util = require_util3(); + var source; + var parseState; + var stack2; + var pos; + var line; + var column; + var token; + var key; + var root; + module2.exports = function parse2(text, reviver) { + source = String(text); + parseState = "start"; + stack2 = []; + pos = 0; + line = 1; + column = 0; + token = void 0; + key = void 0; + root = void 0; + do { + token = lex(); + parseStates[parseState](); + } while (token.type !== "eof"); + if (typeof reviver === "function") { + return internalize({ "": root }, "", reviver); + } + return root; + }; + function internalize(holder, name, reviver) { + const value = holder[name]; + if (value != null && typeof value === "object") { + if (Array.isArray(value)) { + for (let i = 0; i < value.length; i++) { + const key2 = String(i); + const replacement = internalize(value, key2, reviver); + if (replacement === void 0) { + delete value[key2]; + } else { + Object.defineProperty(value, key2, { + value: replacement, + writable: true, + enumerable: true, + configurable: true + }); + } + } + } else { + for (const key2 in value) { + const replacement = internalize(value, key2, reviver); + if (replacement === void 0) { + delete value[key2]; + } else { + Object.defineProperty(value, key2, { + value: replacement, + writable: true, + enumerable: true, + configurable: true + }); + } + } } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.QueueScheduler = void 0; - var AsyncScheduler_1 = require_AsyncScheduler(); - var QueueScheduler = function(_super) { - __extends(QueueScheduler2, _super); - function QueueScheduler2() { - return _super !== null && _super.apply(this, arguments) || this; } - return QueueScheduler2; - }(AsyncScheduler_1.AsyncScheduler); - exports2.QueueScheduler = QueueScheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js -var require_queue = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.queue = exports2.queueScheduler = void 0; - var QueueAction_1 = require_QueueAction(); - var QueueScheduler_1 = require_QueueScheduler(); - exports2.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction); - exports2.queue = exports2.queueScheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js -var require_AnimationFrameAction = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + return reviver.call(holder, name, value); + } + var lexState; + var buffer; + var doubleQuote; + var sign; + var c; + function lex() { + lexState = "default"; + buffer = ""; + doubleQuote = false; + sign = 1; + for (; ; ) { + c = peek(); + const token2 = lexStates[lexState](); + if (token2) { + return token2; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AnimationFrameAction = void 0; - var AsyncAction_1 = require_AsyncAction(); - var animationFrameProvider_1 = require_animationFrameProvider(); - var AnimationFrameAction = function(_super) { - __extends(AnimationFrameAction2, _super); - function AnimationFrameAction2(scheduler, work) { - var _this = _super.call(this, scheduler, work) || this; - _this.scheduler = scheduler; - _this.work = work; - return _this; } - AnimationFrameAction2.prototype.requestAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + } + function peek() { + if (source[pos]) { + return String.fromCodePoint(source.codePointAt(pos)); + } + } + function read() { + const c2 = peek(); + if (c2 === "\n") { + line++; + column = 0; + } else if (c2) { + column += c2.length; + } else { + column++; + } + if (c2) { + pos += c2.length; + } + return c2; + } + var lexStates = { + default() { + switch (c) { + case " ": + case "\v": + case "\f": + case " ": + case "\xA0": + case "\uFEFF": + case "\n": + case "\r": + case "\u2028": + case "\u2029": + read(); + return; + case "/": + read(); + lexState = "comment"; + return; + case void 0: + read(); + return newToken("eof"); } - if (delay !== null && delay > 0) { - return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + if (util.isSpaceSeparator(c)) { + read(); + return; } - scheduler.actions.push(this); - return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function() { - return scheduler.flush(void 0); - })); - }; - AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + return lexStates[parseState](); + }, + comment() { + switch (c) { + case "*": + read(); + lexState = "multiLineComment"; + return; + case "/": + read(); + lexState = "singleLineComment"; + return; } - if (delay != null && delay > 0 || delay == null && this.delay > 0) { - return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); + throw invalidChar(read()); + }, + multiLineComment() { + switch (c) { + case "*": + read(); + lexState = "multiLineCommentAsterisk"; + return; + case void 0: + throw invalidChar(read()); } - if (scheduler.actions.length === 0) { - animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); - scheduler._scheduled = void 0; + read(); + }, + multiLineCommentAsterisk() { + switch (c) { + case "*": + read(); + return; + case "/": + read(); + lexState = "default"; + return; + case void 0: + throw invalidChar(read()); } - return void 0; - }; - return AnimationFrameAction2; - }(AsyncAction_1.AsyncAction); - exports2.AnimationFrameAction = AnimationFrameAction; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js -var require_AnimationFrameScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + read(); + lexState = "multiLineComment"; + }, + singleLineComment() { + switch (c) { + case "\n": + case "\r": + case "\u2028": + case "\u2029": + read(); + lexState = "default"; + return; + case void 0: + read(); + return newToken("eof"); } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AnimationFrameScheduler = void 0; - var AsyncScheduler_1 = require_AsyncScheduler(); - var AnimationFrameScheduler = function(_super) { - __extends(AnimationFrameScheduler2, _super); - function AnimationFrameScheduler2() { - return _super !== null && _super.apply(this, arguments) || this; - } - AnimationFrameScheduler2.prototype.flush = function(action) { - this._active = true; - this._scheduled = void 0; - var actions = this.actions; - var error; - var index = -1; - action = action || actions.shift(); - var count = actions.length; - do { - if (error = action.execute(action.state, action.delay)) { + read(); + }, + value() { + switch (c) { + case "{": + case "[": + return newToken("punctuator", read()); + case "n": + read(); + literal("ull"); + return newToken("null", null); + case "t": + read(); + literal("rue"); + return newToken("boolean", true); + case "f": + read(); + literal("alse"); + return newToken("boolean", false); + case "-": + case "+": + if (read() === "-") { + sign = -1; + } + lexState = "sign"; + return; + case ".": + buffer = read(); + lexState = "decimalPointLeading"; + return; + case "0": + buffer = read(); + lexState = "zero"; + return; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + buffer = read(); + lexState = "decimalInteger"; + return; + case "I": + read(); + literal("nfinity"); + return newToken("numeric", Infinity); + case "N": + read(); + literal("aN"); + return newToken("numeric", NaN); + case '"': + case "'": + doubleQuote = read() === '"'; + buffer = ""; + lexState = "string"; + return; + } + throw invalidChar(read()); + }, + identifierNameStartEscape() { + if (c !== "u") { + throw invalidChar(read()); + } + read(); + const u = unicodeEscape(); + switch (u) { + case "$": + case "_": + break; + default: + if (!util.isIdStartChar(u)) { + throw invalidIdentifier(); + } break; - } - } while (++index < count && (action = actions.shift())); - this._active = false; - if (error) { - while (++index < count && (action = actions.shift())) { - action.unsubscribe(); - } - throw error; } - }; - return AnimationFrameScheduler2; - }(AsyncScheduler_1.AsyncScheduler); - exports2.AnimationFrameScheduler = AnimationFrameScheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js -var require_animationFrame = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.animationFrame = exports2.animationFrameScheduler = void 0; - var AnimationFrameAction_1 = require_AnimationFrameAction(); - var AnimationFrameScheduler_1 = require_AnimationFrameScheduler(); - exports2.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction); - exports2.animationFrame = exports2.animationFrameScheduler; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js -var require_VirtualTimeScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + buffer += u; + lexState = "identifierName"; + }, + identifierName() { + switch (c) { + case "$": + case "_": + case "\u200C": + case "\u200D": + buffer += read(); + return; + case "\\": + read(); + lexState = "identifierNameEscape"; + return; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.VirtualAction = exports2.VirtualTimeScheduler = void 0; - var AsyncAction_1 = require_AsyncAction(); - var Subscription_1 = require_Subscription(); - var AsyncScheduler_1 = require_AsyncScheduler(); - var VirtualTimeScheduler = function(_super) { - __extends(VirtualTimeScheduler2, _super); - function VirtualTimeScheduler2(schedulerActionCtor, maxFrames) { - if (schedulerActionCtor === void 0) { - schedulerActionCtor = VirtualAction; + if (util.isIdContinueChar(c)) { + buffer += read(); + return; } - if (maxFrames === void 0) { - maxFrames = Infinity; + return newToken("identifier", buffer); + }, + identifierNameEscape() { + if (c !== "u") { + throw invalidChar(read()); } - var _this = _super.call(this, schedulerActionCtor, function() { - return _this.frame; - }) || this; - _this.maxFrames = maxFrames; - _this.frame = 0; - _this.index = -1; - return _this; - } - VirtualTimeScheduler2.prototype.flush = function() { - var _a = this, actions = _a.actions, maxFrames = _a.maxFrames; - var error; - var action; - while ((action = actions[0]) && action.delay <= maxFrames) { - actions.shift(); - this.frame = action.delay; - if (error = action.execute(action.state, action.delay)) { + read(); + const u = unicodeEscape(); + switch (u) { + case "$": + case "_": + case "\u200C": + case "\u200D": + break; + default: + if (!util.isIdContinueChar(u)) { + throw invalidIdentifier(); + } break; - } } - if (error) { - while (action = actions.shift()) { - action.unsubscribe(); - } - throw error; + buffer += u; + lexState = "identifierName"; + }, + sign() { + switch (c) { + case ".": + buffer = read(); + lexState = "decimalPointLeading"; + return; + case "0": + buffer = read(); + lexState = "zero"; + return; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + buffer = read(); + lexState = "decimalInteger"; + return; + case "I": + read(); + literal("nfinity"); + return newToken("numeric", sign * Infinity); + case "N": + read(); + literal("aN"); + return newToken("numeric", NaN); } - }; - VirtualTimeScheduler2.frameTimeFactor = 10; - return VirtualTimeScheduler2; - }(AsyncScheduler_1.AsyncScheduler); - exports2.VirtualTimeScheduler = VirtualTimeScheduler; - var VirtualAction = function(_super) { - __extends(VirtualAction2, _super); - function VirtualAction2(scheduler, work, index) { - if (index === void 0) { - index = scheduler.index += 1; + throw invalidChar(read()); + }, + zero() { + switch (c) { + case ".": + buffer += read(); + lexState = "decimalPoint"; + return; + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; + case "x": + case "X": + buffer += read(); + lexState = "hexadecimal"; + return; } - var _this = _super.call(this, scheduler, work) || this; - _this.scheduler = scheduler; - _this.work = work; - _this.index = index; - _this.active = true; - _this.index = scheduler.index = index; - return _this; - } - VirtualAction2.prototype.schedule = function(state, delay) { - if (delay === void 0) { - delay = 0; + return newToken("numeric", sign * 0); + }, + decimalInteger() { + switch (c) { + case ".": + buffer += read(); + lexState = "decimalPoint"; + return; + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; } - if (Number.isFinite(delay)) { - if (!this.id) { - return _super.prototype.schedule.call(this, state, delay); - } - this.active = false; - var action = new VirtualAction2(this.scheduler, this.work); - this.add(action); - return action.schedule(state, delay); - } else { - return Subscription_1.Subscription.EMPTY; + if (util.isDigit(c)) { + buffer += read(); + return; } - }; - VirtualAction2.prototype.requestAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + return newToken("numeric", sign * Number(buffer)); + }, + decimalPointLeading() { + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalFraction"; + return; } - this.delay = scheduler.frame + delay; - var actions = scheduler.actions; - actions.push(this); - actions.sort(VirtualAction2.sortActions); - return true; - }; - VirtualAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { - if (delay === void 0) { - delay = 0; + throw invalidChar(read()); + }, + decimalPoint() { + switch (c) { + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; } - return void 0; - }; - VirtualAction2.prototype._execute = function(state, delay) { - if (this.active === true) { - return _super.prototype._execute.call(this, state, delay); + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalFraction"; + return; } - }; - VirtualAction2.sortActions = function(a, b) { - if (a.delay === b.delay) { - if (a.index === b.index) { - return 0; - } else if (a.index > b.index) { - return 1; - } else { - return -1; - } - } else if (a.delay > b.delay) { - return 1; - } else { - return -1; + return newToken("numeric", sign * Number(buffer)); + }, + decimalFraction() { + switch (c) { + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; } - }; - return VirtualAction2; - }(AsyncAction_1.AsyncAction); - exports2.VirtualAction = VirtualAction; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/empty.js -var require_empty = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/empty.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.empty = exports2.EMPTY = void 0; - var Observable_1 = require_Observable(); - exports2.EMPTY = new Observable_1.Observable(function(subscriber) { - return subscriber.complete(); - }); - function empty(scheduler) { - return scheduler ? emptyScheduled(scheduler) : exports2.EMPTY; - } - exports2.empty = empty; - function emptyScheduled(scheduler) { - return new Observable_1.Observable(function(subscriber) { - return scheduler.schedule(function() { - return subscriber.complete(); - }); - }); - } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js -var require_scheduleArray = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduleArray = void 0; - var Observable_1 = require_Observable(); - function scheduleArray(input, scheduler) { - return new Observable_1.Observable(function(subscriber) { - var i = 0; - return scheduler.schedule(function() { - if (i === input.length) { - subscriber.complete(); - } else { - subscriber.next(input[i++]); - if (!subscriber.closed) { - this.schedule(); + if (util.isDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + decimalExponent() { + switch (c) { + case "+": + case "-": + buffer += read(); + lexState = "decimalExponentSign"; + return; + } + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalExponentInteger"; + return; + } + throw invalidChar(read()); + }, + decimalExponentSign() { + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalExponentInteger"; + return; + } + throw invalidChar(read()); + }, + decimalExponentInteger() { + if (util.isDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + hexadecimal() { + if (util.isHexDigit(c)) { + buffer += read(); + lexState = "hexadecimalInteger"; + return; + } + throw invalidChar(read()); + }, + hexadecimalInteger() { + if (util.isHexDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + string() { + switch (c) { + case "\\": + read(); + buffer += escape(); + return; + case '"': + if (doubleQuote) { + read(); + return newToken("string", buffer); } - } - }); - }); - } - exports2.scheduleArray = scheduleArray; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js -var require_isArrayLike = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isArrayLike = void 0; - exports2.isArrayLike = function(x) { - return x && typeof x.length === "number" && typeof x !== "function"; - }; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isPromise.js -var require_isPromise = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isPromise.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isPromise = void 0; - var isFunction_1 = require_isFunction(); - function isPromise(value) { - return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then); - } - exports2.isPromise = isPromise; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js -var require_scheduleObservable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduleObservable = void 0; - var Observable_1 = require_Observable(); - var Subscription_1 = require_Subscription(); - var observable_1 = require_observable(); - function scheduleObservable(input, scheduler) { - return new Observable_1.Observable(function(subscriber) { - var sub = new Subscription_1.Subscription(); - sub.add(scheduler.schedule(function() { - var observable = input[observable_1.observable](); - sub.add(observable.subscribe({ - next: function(value) { - sub.add(scheduler.schedule(function() { - return subscriber.next(value); - })); - }, - error: function(err) { - sub.add(scheduler.schedule(function() { - return subscriber.error(err); - })); - }, - complete: function() { - sub.add(scheduler.schedule(function() { - return subscriber.complete(); - })); + buffer += read(); + return; + case "'": + if (!doubleQuote) { + read(); + return newToken("string", buffer); } - })); - })); - return sub; - }); + buffer += read(); + return; + case "\n": + case "\r": + throw invalidChar(read()); + case "\u2028": + case "\u2029": + separatorChar(c); + break; + case void 0: + throw invalidChar(read()); + } + buffer += read(); + }, + start() { + switch (c) { + case "{": + case "[": + return newToken("punctuator", read()); + } + lexState = "value"; + }, + beforePropertyName() { + switch (c) { + case "$": + case "_": + buffer = read(); + lexState = "identifierName"; + return; + case "\\": + read(); + lexState = "identifierNameStartEscape"; + return; + case "}": + return newToken("punctuator", read()); + case '"': + case "'": + doubleQuote = read() === '"'; + lexState = "string"; + return; + } + if (util.isIdStartChar(c)) { + buffer += read(); + lexState = "identifierName"; + return; + } + throw invalidChar(read()); + }, + afterPropertyName() { + if (c === ":") { + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + beforePropertyValue() { + lexState = "value"; + }, + afterPropertyValue() { + switch (c) { + case ",": + case "}": + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + beforeArrayValue() { + if (c === "]") { + return newToken("punctuator", read()); + } + lexState = "value"; + }, + afterArrayValue() { + switch (c) { + case ",": + case "]": + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + end() { + throw invalidChar(read()); + } + }; + function newToken(type, value) { + return { + type, + value, + line, + column + }; } - exports2.scheduleObservable = scheduleObservable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js -var require_schedulePromise = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.schedulePromise = void 0; - var Observable_1 = require_Observable(); - function schedulePromise(input, scheduler) { - return new Observable_1.Observable(function(subscriber) { - return scheduler.schedule(function() { - return input.then(function(value) { - subscriber.add(scheduler.schedule(function() { - subscriber.next(value); - subscriber.add(scheduler.schedule(function() { - return subscriber.complete(); - })); - })); - }, function(err) { - subscriber.add(scheduler.schedule(function() { - return subscriber.error(err); - })); - }); - }); - }); + function literal(s) { + for (const c2 of s) { + const p = peek(); + if (p !== c2) { + throw invalidChar(read()); + } + read(); + } } - exports2.schedulePromise = schedulePromise; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js -var require_iterator = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.iterator = exports2.getSymbolIterator = void 0; - function getSymbolIterator() { - if (typeof Symbol !== "function" || !Symbol.iterator) { - return "@@iterator"; + function escape() { + const c2 = peek(); + switch (c2) { + case "b": + read(); + return "\b"; + case "f": + read(); + return "\f"; + case "n": + read(); + return "\n"; + case "r": + read(); + return "\r"; + case "t": + read(); + return " "; + case "v": + read(); + return "\v"; + case "0": + read(); + if (util.isDigit(peek())) { + throw invalidChar(read()); + } + return "\0"; + case "x": + read(); + return hexEscape(); + case "u": + read(); + return unicodeEscape(); + case "\n": + case "\u2028": + case "\u2029": + read(); + return ""; + case "\r": + read(); + if (peek() === "\n") { + read(); + } + return ""; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + throw invalidChar(read()); + case void 0: + throw invalidChar(read()); } - return Symbol.iterator; + return read(); } - exports2.getSymbolIterator = getSymbolIterator; - exports2.iterator = getSymbolIterator(); - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/caughtSchedule.js -var require_caughtSchedule = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/caughtSchedule.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.caughtSchedule = void 0; - function caughtSchedule(subscriber, scheduler, execute, delay) { - if (delay === void 0) { - delay = 0; + function hexEscape() { + let buffer2 = ""; + let c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); } - var subscription = scheduler.schedule(function() { - try { - execute.call(this); - } catch (err) { - subscriber.error(err); - } - }, delay); - subscriber.add(subscription); - return subscription; + buffer2 += read(); + c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); + } + buffer2 += read(); + return String.fromCodePoint(parseInt(buffer2, 16)); } - exports2.caughtSchedule = caughtSchedule; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js -var require_scheduleIterable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduleIterable = void 0; - var Observable_1 = require_Observable(); - var iterator_1 = require_iterator(); - var isFunction_1 = require_isFunction(); - var caughtSchedule_1 = require_caughtSchedule(); - function scheduleIterable(input, scheduler) { - return new Observable_1.Observable(function(subscriber) { - var iterator; - subscriber.add(scheduler.schedule(function() { - iterator = input[iterator_1.iterator](); - caughtSchedule_1.caughtSchedule(subscriber, scheduler, function() { - var _a = iterator.next(), value = _a.value, done = _a.done; - if (done) { - subscriber.complete(); - } else { - subscriber.next(value); - this.schedule(); - } + function unicodeEscape() { + let buffer2 = ""; + let count = 4; + while (count-- > 0) { + const c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); + } + buffer2 += read(); + } + return String.fromCodePoint(parseInt(buffer2, 16)); + } + var parseStates = { + start() { + if (token.type === "eof") { + throw invalidEOF(); + } + push(); + }, + beforePropertyName() { + switch (token.type) { + case "identifier": + case "string": + key = token.value; + parseState = "afterPropertyName"; + return; + case "punctuator": + pop(); + return; + case "eof": + throw invalidEOF(); + } + }, + afterPropertyName() { + if (token.type === "eof") { + throw invalidEOF(); + } + parseState = "beforePropertyValue"; + }, + beforePropertyValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + push(); + }, + beforeArrayValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + if (token.type === "punctuator" && token.value === "]") { + pop(); + return; + } + push(); + }, + afterPropertyValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + switch (token.value) { + case ",": + parseState = "beforePropertyName"; + return; + case "}": + pop(); + } + }, + afterArrayValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + switch (token.value) { + case ",": + parseState = "beforeArrayValue"; + return; + case "]": + pop(); + } + }, + end() { + } + }; + function push() { + let value; + switch (token.type) { + case "punctuator": + switch (token.value) { + case "{": + value = {}; + break; + case "[": + value = []; + break; + } + break; + case "null": + case "boolean": + case "numeric": + case "string": + value = token.value; + break; + } + if (root === void 0) { + root = value; + } else { + const parent = stack2[stack2.length - 1]; + if (Array.isArray(parent)) { + parent.push(value); + } else { + Object.defineProperty(parent, key, { + value, + writable: true, + enumerable: true, + configurable: true }); - })); - return function() { - return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); - }; - }); + } + } + if (value !== null && typeof value === "object") { + stack2.push(value); + if (Array.isArray(value)) { + parseState = "beforeArrayValue"; + } else { + parseState = "beforePropertyName"; + } + } else { + const current = stack2[stack2.length - 1]; + if (current == null) { + parseState = "end"; + } else if (Array.isArray(current)) { + parseState = "afterArrayValue"; + } else { + parseState = "afterPropertyValue"; + } + } } - exports2.scheduleIterable = scheduleIterable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js -var require_scheduleAsyncIterable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduleAsyncIterable = void 0; - var Observable_1 = require_Observable(); - var Subscription_1 = require_Subscription(); - function scheduleAsyncIterable(input, scheduler) { - if (!input) { - throw new Error("Iterable cannot be null"); + function pop() { + stack2.pop(); + const current = stack2[stack2.length - 1]; + if (current == null) { + parseState = "end"; + } else if (Array.isArray(current)) { + parseState = "afterArrayValue"; + } else { + parseState = "afterPropertyValue"; } - return new Observable_1.Observable(function(subscriber) { - var sub = new Subscription_1.Subscription(); - sub.add(scheduler.schedule(function() { - var iterator = input[Symbol.asyncIterator](); - sub.add(scheduler.schedule(function() { - var _this = this; - iterator.next().then(function(result) { - if (result.done) { - subscriber.complete(); - } else { - subscriber.next(result.value); - _this.schedule(); - } - }); - })); - })); - return sub; - }); } - exports2.scheduleAsyncIterable = scheduleAsyncIterable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js -var require_isInteropObservable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isInteropObservable = void 0; - var observable_1 = require_observable(); - var isFunction_1 = require_isFunction(); - function isInteropObservable(input) { - return isFunction_1.isFunction(input[observable_1.observable]); + function invalidChar(c2) { + if (c2 === void 0) { + return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); + } + return syntaxError(`JSON5: invalid character '${formatChar(c2)}' at ${line}:${column}`); } - exports2.isInteropObservable = isInteropObservable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isIterable.js -var require_isIterable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isIterable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isIterable = void 0; - var iterator_1 = require_iterator(); - var isFunction_1 = require_isFunction(); - function isIterable(input) { - return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]); + function invalidEOF() { + return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); } - exports2.isIterable = isIterable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js -var require_isAsyncIterable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isAsyncIterable = void 0; - var isFunction_1 = require_isFunction(); - function isAsyncIterable(obj) { - return Symbol.asyncIterator && isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]); + function invalidIdentifier() { + column -= 5; + return syntaxError(`JSON5: invalid identifier character at ${line}:${column}`); } - exports2.isAsyncIterable = isAsyncIterable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js -var require_throwUnobservableError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createInvalidObservableTypeError = void 0; - function createInvalidObservableTypeError(input) { - return new TypeError("You provided " + (input !== null && typeof input === "object" ? "an invalid object" : "'" + input + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."); + function separatorChar(c2) { + console.warn(`JSON5: '${formatChar(c2)}' in strings is not valid ECMAScript; consider escaping`); + } + function formatChar(c2) { + const replacements = { + "'": "\\'", + '"': '\\"', + "\\": "\\\\", + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + " ": "\\t", + "\v": "\\v", + "\0": "\\0", + "\u2028": "\\u2028", + "\u2029": "\\u2029" + }; + if (replacements[c2]) { + return replacements[c2]; + } + if (c2 < " ") { + const hexString = c2.charCodeAt(0).toString(16); + return "\\x" + ("00" + hexString).substring(hexString.length); + } + return c2; + } + function syntaxError(message2) { + const err = new SyntaxError(message2); + err.lineNumber = line; + err.columnNumber = column; + return err; } - exports2.createInvalidObservableTypeError = createInvalidObservableTypeError; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js -var require_isReadableStreamLike = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js"(exports2) { - "use strict"; - var __generator = exports2 && exports2.__generator || function(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; +// ../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/stringify.js +var require_stringify2 = __commonJS({ + "../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/stringify.js"(exports2, module2) { + var util = require_util3(); + module2.exports = function stringify2(value, replacer, space) { + const stack2 = []; + let indent = ""; + let propertyList; + let replacerFunc; + let gap = ""; + let quote; + if (replacer != null && typeof replacer === "object" && !Array.isArray(replacer)) { + space = replacer.space; + quote = replacer.quote; + replacer = replacer.replacer; } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; + if (typeof replacer === "function") { + replacerFunc = replacer; + } else if (Array.isArray(replacer)) { + propertyList = []; + for (const v of replacer) { + let item; + if (typeof v === "string") { + item = v; + } else if (typeof v === "number" || v instanceof String || v instanceof Number) { + item = String(v); } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; + if (item !== void 0 && propertyList.indexOf(item) < 0) { + propertyList.push(item); + } + } } - }; - var __await = exports2 && exports2.__await || function(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); - }; - var __asyncGenerator = exports2 && exports2.__asyncGenerator || function(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; + if (space instanceof Number) { + space = Number(space); + } else if (space instanceof String) { + space = String(space); } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); + if (typeof space === "number") { + if (space > 0) { + space = Math.min(10, Math.floor(space)); + gap = " ".substr(0, space); } + } else if (typeof space === "string") { + gap = space.substr(0, 10); } - function step(r) { - r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + return serializeProperty("", { "": value }); + function serializeProperty(key, holder) { + let value2 = holder[key]; + if (value2 != null) { + if (typeof value2.toJSON5 === "function") { + value2 = value2.toJSON5(key); + } else if (typeof value2.toJSON === "function") { + value2 = value2.toJSON(key); + } + } + if (replacerFunc) { + value2 = replacerFunc.call(holder, key, value2); + } + if (value2 instanceof Number) { + value2 = Number(value2); + } else if (value2 instanceof String) { + value2 = String(value2); + } else if (value2 instanceof Boolean) { + value2 = value2.valueOf(); + } + switch (value2) { + case null: + return "null"; + case true: + return "true"; + case false: + return "false"; + } + if (typeof value2 === "string") { + return quoteString(value2, false); + } + if (typeof value2 === "number") { + return String(value2); + } + if (typeof value2 === "object") { + return Array.isArray(value2) ? serializeArray(value2) : serializeObject(value2); + } + return void 0; } - function fulfill(value) { - resume("next", value); + function quoteString(value2) { + const quotes = { + "'": 0.1, + '"': 0.2 + }; + const replacements = { + "'": "\\'", + '"': '\\"', + "\\": "\\\\", + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + " ": "\\t", + "\v": "\\v", + "\0": "\\0", + "\u2028": "\\u2028", + "\u2029": "\\u2029" + }; + let product = ""; + for (let i = 0; i < value2.length; i++) { + const c = value2[i]; + switch (c) { + case "'": + case '"': + quotes[c]++; + product += c; + continue; + case "\0": + if (util.isDigit(value2[i + 1])) { + product += "\\x00"; + continue; + } + } + if (replacements[c]) { + product += replacements[c]; + continue; + } + if (c < " ") { + let hexString = c.charCodeAt(0).toString(16); + product += "\\x" + ("00" + hexString).substring(hexString.length); + continue; + } + product += c; + } + const quoteChar = quote || Object.keys(quotes).reduce((a, b) => quotes[a] < quotes[b] ? a : b); + product = product.replace(new RegExp(quoteChar, "g"), replacements[quoteChar]); + return quoteChar + product + quoteChar; } - function reject(value) { - resume("throw", value); + function serializeObject(value2) { + if (stack2.indexOf(value2) >= 0) { + throw TypeError("Converting circular structure to JSON5"); + } + stack2.push(value2); + let stepback = indent; + indent = indent + gap; + let keys = propertyList || Object.keys(value2); + let partial = []; + for (const key of keys) { + const propertyString = serializeProperty(key, value2); + if (propertyString !== void 0) { + let member = serializeKey(key) + ":"; + if (gap !== "") { + member += " "; + } + member += propertyString; + partial.push(member); + } + } + let final; + if (partial.length === 0) { + final = "{}"; + } else { + let properties; + if (gap === "") { + properties = partial.join(","); + final = "{" + properties + "}"; + } else { + let separator = ",\n" + indent; + properties = partial.join(separator); + final = "{\n" + indent + properties + ",\n" + stepback + "}"; + } + } + stack2.pop(); + indent = stepback; + return final; } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); + function serializeKey(key) { + if (key.length === 0) { + return quoteString(key, true); + } + const firstChar = String.fromCodePoint(key.codePointAt(0)); + if (!util.isIdStartChar(firstChar)) { + return quoteString(key, true); + } + for (let i = firstChar.length; i < key.length; i++) { + if (!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))) { + return quoteString(key, true); + } + } + return key; } - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isReadableStreamLike = exports2.readableStreamLikeToAsyncGenerator = void 0; - var isFunction_1 = require_isFunction(); - function readableStreamLikeToAsyncGenerator(readableStream) { - return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() { - var reader, _a, value, done; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - reader = readableStream.getReader(); - _b.label = 1; - case 1: - _b.trys.push([1, , 9, 10]); - _b.label = 2; - case 2: - if (false) - return [3, 8]; - return [4, __await(reader.read())]; - case 3: - _a = _b.sent(), value = _a.value, done = _a.done; - if (!done) - return [3, 5]; - return [4, __await(void 0)]; - case 4: - return [2, _b.sent()]; - case 5: - return [4, __await(value)]; - case 6: - return [4, _b.sent()]; - case 7: - _b.sent(); - return [3, 2]; - case 8: - return [3, 10]; - case 9: - reader.releaseLock(); - return [7]; - case 10: - return [2]; + function serializeArray(value2) { + if (stack2.indexOf(value2) >= 0) { + throw TypeError("Converting circular structure to JSON5"); + } + stack2.push(value2); + let stepback = indent; + indent = indent + gap; + let partial = []; + for (let i = 0; i < value2.length; i++) { + const propertyString = serializeProperty(String(i), value2); + partial.push(propertyString !== void 0 ? propertyString : "null"); + } + let final; + if (partial.length === 0) { + final = "[]"; + } else { + if (gap === "") { + let properties = partial.join(","); + final = "[" + properties + "]"; + } else { + let separator = ",\n" + indent; + let properties = partial.join(separator); + final = "[\n" + indent + properties + ",\n" + stepback + "]"; } - }); - }); - } - exports2.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator; - function isReadableStreamLike(obj) { - return isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader); - } - exports2.isReadableStreamLike = isReadableStreamLike; + } + stack2.pop(); + indent = stepback; + return final; + } + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js -var require_scheduleReadableStreamLike = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduleReadableStreamLike = void 0; - var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); - var isReadableStreamLike_1 = require_isReadableStreamLike(); - function scheduleReadableStreamLike(input, scheduler) { - return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler); - } - exports2.scheduleReadableStreamLike = scheduleReadableStreamLike; +// ../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/index.js +var require_lib12 = __commonJS({ + "../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/index.js"(exports2, module2) { + var parse2 = require_parse(); + var stringify2 = require_stringify2(); + var JSON5 = { + parse: parse2, + stringify: stringify2 + }; + module2.exports = JSON5; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js -var require_scheduled = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scheduled = void 0; - var scheduleObservable_1 = require_scheduleObservable(); - var schedulePromise_1 = require_schedulePromise(); - var scheduleArray_1 = require_scheduleArray(); - var scheduleIterable_1 = require_scheduleIterable(); - var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); - var isInteropObservable_1 = require_isInteropObservable(); - var isPromise_1 = require_isPromise(); - var isArrayLike_1 = require_isArrayLike(); - var isIterable_1 = require_isIterable(); - var isAsyncIterable_1 = require_isAsyncIterable(); - var throwUnobservableError_1 = require_throwUnobservableError(); - var isReadableStreamLike_1 = require_isReadableStreamLike(); - var scheduleReadableStreamLike_1 = require_scheduleReadableStreamLike(); - function scheduled(input, scheduler) { - if (input != null) { - if (isInteropObservable_1.isInteropObservable(input)) { - return scheduleObservable_1.scheduleObservable(input, scheduler); - } - if (isArrayLike_1.isArrayLike(input)) { - return scheduleArray_1.scheduleArray(input, scheduler); +// ../node_modules/.pnpm/imurmurhash@0.1.4/node_modules/imurmurhash/imurmurhash.js +var require_imurmurhash = __commonJS({ + "../node_modules/.pnpm/imurmurhash@0.1.4/node_modules/imurmurhash/imurmurhash.js"(exports2, module2) { + (function() { + var cache; + function MurmurHash3(key, seed) { + var m = this instanceof MurmurHash3 ? this : cache; + m.reset(seed); + if (typeof key === "string" && key.length > 0) { + m.hash(key); } - if (isPromise_1.isPromise(input)) { - return schedulePromise_1.schedulePromise(input, scheduler); + if (m !== this) { + return m; } - if (isAsyncIterable_1.isAsyncIterable(input)) { - return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler); + } + ; + MurmurHash3.prototype.hash = function(key) { + var h1, k1, i, top, len; + len = key.length; + this.len += len; + k1 = this.k1; + i = 0; + switch (this.rem) { + case 0: + k1 ^= len > i ? key.charCodeAt(i++) & 65535 : 0; + case 1: + k1 ^= len > i ? (key.charCodeAt(i++) & 65535) << 8 : 0; + case 2: + k1 ^= len > i ? (key.charCodeAt(i++) & 65535) << 16 : 0; + case 3: + k1 ^= len > i ? (key.charCodeAt(i) & 255) << 24 : 0; + k1 ^= len > i ? (key.charCodeAt(i++) & 65280) >> 8 : 0; } - if (isIterable_1.isIterable(input)) { - return scheduleIterable_1.scheduleIterable(input, scheduler); + this.rem = len + this.rem & 3; + len -= this.rem; + if (len > 0) { + h1 = this.h1; + while (1) { + k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295; + k1 = k1 << 15 | k1 >>> 17; + k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295; + h1 ^= k1; + h1 = h1 << 13 | h1 >>> 19; + h1 = h1 * 5 + 3864292196 & 4294967295; + if (i >= len) { + break; + } + k1 = key.charCodeAt(i++) & 65535 ^ (key.charCodeAt(i++) & 65535) << 8 ^ (key.charCodeAt(i++) & 65535) << 16; + top = key.charCodeAt(i++); + k1 ^= (top & 255) << 24 ^ (top & 65280) >> 8; + } + k1 = 0; + switch (this.rem) { + case 3: + k1 ^= (key.charCodeAt(i + 2) & 65535) << 16; + case 2: + k1 ^= (key.charCodeAt(i + 1) & 65535) << 8; + case 1: + k1 ^= key.charCodeAt(i) & 65535; + } + this.h1 = h1; } - if (isReadableStreamLike_1.isReadableStreamLike(input)) { - return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler); + this.k1 = k1; + return this; + }; + MurmurHash3.prototype.result = function() { + var k1, h1; + k1 = this.k1; + h1 = this.h1; + if (k1 > 0) { + k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295; + k1 = k1 << 15 | k1 >>> 17; + k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295; + h1 ^= k1; } + h1 ^= this.len; + h1 ^= h1 >>> 16; + h1 = h1 * 51819 + (h1 & 65535) * 2246770688 & 4294967295; + h1 ^= h1 >>> 13; + h1 = h1 * 44597 + (h1 & 65535) * 3266445312 & 4294967295; + h1 ^= h1 >>> 16; + return h1 >>> 0; + }; + MurmurHash3.prototype.reset = function(seed) { + this.h1 = typeof seed === "number" ? seed : 0; + this.rem = this.k1 = this.len = 0; + return this; + }; + cache = new MurmurHash3(); + if (typeof module2 != "undefined") { + module2.exports = MurmurHash3; + } else { + this.MurmurHash3 = MurmurHash3; } - throw throwUnobservableError_1.createInvalidObservableTypeError(input); + })(); + } +}); + +// ../node_modules/.pnpm/signal-exit@4.0.1/node_modules/signal-exit/dist/cjs/signals.js +var require_signals2 = __commonJS({ + "../node_modules/.pnpm/signal-exit@4.0.1/node_modules/signal-exit/dist/cjs/signals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.signals = void 0; + exports2.signals = []; + exports2.signals.push("SIGHUP", "SIGINT", "SIGTERM"); + if (process.platform !== "win32") { + exports2.signals.push( + "SIGALRM", + "SIGABRT", + "SIGVTALRM", + "SIGXCPU", + "SIGXFSZ", + "SIGUSR2", + "SIGTRAP", + "SIGSYS", + "SIGQUIT", + "SIGIOT" + // should detect profiler and enable/disable accordingly. + // see #21 + // 'SIGPROF' + ); + } + if (process.platform === "linux") { + exports2.signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT"); } - exports2.scheduled = scheduled; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/from.js -var require_from2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/from.js"(exports2) { +// ../node_modules/.pnpm/signal-exit@4.0.1/node_modules/signal-exit/dist/cjs/index.js +var require_cjs = __commonJS({ + "../node_modules/.pnpm/signal-exit@4.0.1/node_modules/signal-exit/dist/cjs/index.js"(exports2) { "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); + var _a; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unload = exports2.load = exports2.onExit = exports2.signals = void 0; + var signals_js_1 = require_signals2(); + Object.defineProperty(exports2, "signals", { enumerable: true, get: function() { + return signals_js_1.signals; + } }); + var processOk = (process3) => !!process3 && typeof process3 === "object" && typeof process3.removeListener === "function" && typeof process3.emit === "function" && typeof process3.reallyExit === "function" && typeof process3.listeners === "function" && typeof process3.kill === "function" && typeof process3.pid === "number" && typeof process3.on === "function"; + var kExitEmitter = Symbol.for("signal-exit emitter"); + var global2 = globalThis; + var ObjectDefineProperty = Object.defineProperty.bind(Object); + var Emitter = class { + emitted = { + afterExit: false, + exit: false + }; + listeners = { + afterExit: [], + exit: [] + }; + count = 0; + id = Math.random(); + constructor() { + if (global2[kExitEmitter]) { + console.error("reusing global emitter"); + return global2[kExitEmitter]; + } + ObjectDefineProperty(global2, kExitEmitter, { + value: this, + writable: false, + enumerable: false, + configurable: false }); } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } + on(ev, fn2) { + this.listeners[ev].push(fn2); + } + removeListener(ev, fn2) { + const list = this.listeners[ev]; + const i = list.indexOf(fn2); + if (i === -1) { + return; } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + if (i === 0 && list.length === 1) { + list.length = 0; + } else { + list.splice(i, 1); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __generator = exports2 && exports2.__generator || function(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; + emit(ev, code, signal) { + if (this.emitted[ev]) { + return; + } + this.emitted[ev] = true; + for (const fn2 of this.listeners[ev]) { + fn2(code, signal); + } } }; - var __asyncValues = exports2 && exports2.__asyncValues || function(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); - }); + var SignalExitBase = class { + }; + var signalExitWrap = (handler) => { + return { + onExit(cb, opts) { + return handler.onExit(cb, opts); + }, + load() { + return handler.load(); + }, + unload() { + return handler.unload(); + } + }; + }; + var SignalExitFallback = class extends SignalExitBase { + onExit() { + return () => { }; } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); + load() { + } + unload() { } }; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromArrayLike = exports2.innerFrom = exports2.from = void 0; - var isArrayLike_1 = require_isArrayLike(); - var isPromise_1 = require_isPromise(); - var observable_1 = require_observable(); - var Observable_1 = require_Observable(); - var scheduled_1 = require_scheduled(); - var isFunction_1 = require_isFunction(); - var reportUnhandledError_1 = require_reportUnhandledError(); - var isInteropObservable_1 = require_isInteropObservable(); - var isAsyncIterable_1 = require_isAsyncIterable(); - var throwUnobservableError_1 = require_throwUnobservableError(); - var isIterable_1 = require_isIterable(); - var isReadableStreamLike_1 = require_isReadableStreamLike(); - function from(input, scheduler) { - return scheduler ? scheduled_1.scheduled(input, scheduler) : innerFrom(input); - } - exports2.from = from; - function innerFrom(input) { - if (input instanceof Observable_1.Observable) { - return input; + var SignalExit = class extends SignalExitBase { + // "SIGHUP" throws an `ENOSYS` error on Windows, + // so use a supported signal instead + /* c8 ignore start */ + #hupSig = process2.platform === "win32" ? "SIGINT" : "SIGHUP"; + /* c8 ignore stop */ + #emitter = new Emitter(); + #process; + #originalProcessEmit; + #originalProcessReallyExit; + #sigListeners = {}; + #loaded = false; + constructor(process3) { + super(); + this.#process = process3; + this.#sigListeners = {}; + for (const sig of signals_js_1.signals) { + this.#sigListeners[sig] = () => { + const listeners = this.#process.listeners(sig); + let { count } = this.#emitter; + if (typeof process3.__signal_exit_emitter__ === "object") + count++; + if (listeners.length === count) { + this.unload(); + this.#emitter.emit("exit", null, sig); + this.#emitter.emit("afterExit", null, sig); + process3.kill(process3.pid, sig === "SIGHUP" ? this.#hupSig : sig); + } + }; + } + this.#originalProcessReallyExit = process3.reallyExit; + this.#originalProcessEmit = process3.emit; } - if (input != null) { - if (isInteropObservable_1.isInteropObservable(input)) { - return fromInteropObservable(input); + onExit(cb, opts) { + if (!processOk(this.#process)) { + return () => { + }; } - if (isArrayLike_1.isArrayLike(input)) { - return fromArrayLike(input); + if (this.#loaded === false) { + this.load(); } - if (isPromise_1.isPromise(input)) { - return fromPromise(input); + const ev = opts?.alwaysLast ? "afterExit" : "exit"; + this.#emitter.on(ev, cb); + return () => { + this.#emitter.removeListener(ev, cb); + if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) { + this.unload(); + } + }; + } + load() { + if (this.#loaded) { + return; } - if (isAsyncIterable_1.isAsyncIterable(input)) { - return fromAsyncIterable(input); + this.#loaded = true; + this.#emitter.count += 1; + for (const sig of signals_js_1.signals) { + try { + const fn2 = this.#sigListeners[sig]; + if (fn2) + this.#process.on(sig, fn2); + } catch (_) { + } } - if (isIterable_1.isIterable(input)) { - return fromIterable(input); + this.#process.emit = (ev, ...a) => { + return this.#processEmit(ev, ...a); + }; + this.#process.reallyExit = (code) => { + return this.#processReallyExit(code); + }; + } + unload() { + if (!this.#loaded) { + return; } - if (isReadableStreamLike_1.isReadableStreamLike(input)) { - return fromReadableStreamLike(input); + this.#loaded = false; + signals_js_1.signals.forEach((sig) => { + const listener = this.#sigListeners[sig]; + if (!listener) { + throw new Error("Listener not defined for signal: " + sig); + } + try { + this.#process.removeListener(sig, listener); + } catch (_) { + } + }); + this.#process.emit = this.#originalProcessEmit; + this.#process.reallyExit = this.#originalProcessReallyExit; + this.#emitter.count -= 1; + } + #processReallyExit(code) { + if (!processOk(this.#process)) { + return 0; } + this.#process.exitCode = code || 0; + this.#emitter.emit("exit", this.#process.exitCode, null); + this.#emitter.emit("afterExit", this.#process.exitCode, null); + return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode); } - throw throwUnobservableError_1.createInvalidObservableTypeError(input); + #processEmit(ev, ...args2) { + const og = this.#originalProcessEmit; + if (ev === "exit" && processOk(this.#process)) { + if (typeof args2[0] === "number") { + this.#process.exitCode = args2[0]; + } + const ret = og.call(this.#process, ev, ...args2); + this.#emitter.emit("exit", this.#process.exitCode, null); + this.#emitter.emit("afterExit", this.#process.exitCode, null); + return ret; + } else { + return og.call(this.#process, ev, ...args2); + } + } + }; + var process2 = globalThis.process; + _a = signalExitWrap(processOk(process2) ? new SignalExit(process2) : new SignalExitFallback()), /** + * 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. + */ + exports2.onExit = _a.onExit, /** + * 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 + */ + exports2.load = _a.load, /** + * 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 + */ + exports2.unload = _a.unload; + } +}); + +// ../node_modules/.pnpm/write-file-atomic@5.0.1/node_modules/write-file-atomic/lib/index.js +var require_lib13 = __commonJS({ + "../node_modules/.pnpm/write-file-atomic@5.0.1/node_modules/write-file-atomic/lib/index.js"(exports2, module2) { + "use strict"; + module2.exports = writeFile; + module2.exports.sync = writeFileSync; + module2.exports._getTmpname = getTmpname; + module2.exports._cleanupOnExit = cleanupOnExit; + var fs2 = require("fs"); + var MurmurHash3 = require_imurmurhash(); + var { onExit } = require_cjs(); + var path2 = require("path"); + var { promisify } = require("util"); + var activeFiles = {}; + var threadId = function getId() { + try { + const workerThreads = require("worker_threads"); + return workerThreads.threadId; + } catch (e) { + return 0; + } + }(); + var invocations = 0; + function getTmpname(filename) { + return filename + "." + MurmurHash3(__filename).hash(String(process.pid)).hash(String(threadId)).hash(String(++invocations)).result(); } - exports2.innerFrom = innerFrom; - function fromInteropObservable(obj) { - return new Observable_1.Observable(function(subscriber) { - var obs = obj[observable_1.observable](); - if (isFunction_1.isFunction(obs.subscribe)) { - return obs.subscribe(subscriber); + function cleanupOnExit(tmpfile) { + return () => { + try { + fs2.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile); + } catch { } - throw new TypeError("Provided object does not correctly implement Symbol.observable"); - }); + }; } - function fromArrayLike(array) { - return new Observable_1.Observable(function(subscriber) { - for (var i = 0; i < array.length && !subscriber.closed; i++) { - subscriber.next(array[i]); + function serializeActiveFile(absoluteName) { + return new Promise((resolve) => { + if (!activeFiles[absoluteName]) { + activeFiles[absoluteName] = []; + } + activeFiles[absoluteName].push(resolve); + if (activeFiles[absoluteName].length === 1) { + resolve(); } - subscriber.complete(); - }); - } - exports2.fromArrayLike = fromArrayLike; - function fromPromise(promise) { - return new Observable_1.Observable(function(subscriber) { - promise.then(function(value) { - if (!subscriber.closed) { - subscriber.next(value); - subscriber.complete(); - } - }, function(err) { - return subscriber.error(err); - }).then(null, reportUnhandledError_1.reportUnhandledError); }); } - function fromIterable(iterable) { - return new Observable_1.Observable(function(subscriber) { - var e_1, _a; - try { - for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) { - var value = iterable_1_1.value; - subscriber.next(value); - if (subscriber.closed) { - return; + function isChownErrOk(err) { + if (err.code === "ENOSYS") { + return true; + } + const nonroot = !process.getuid || process.getuid() !== 0; + if (nonroot) { + if (err.code === "EINVAL" || err.code === "EPERM") { + return true; + } + } + return false; + } + async function writeFileAsync(filename, data, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + let fd; + let tmpfile; + const removeOnExitHandler = onExit(cleanupOnExit(() => tmpfile)); + const absoluteName = path2.resolve(filename); + try { + await serializeActiveFile(absoluteName); + const truename = await promisify(fs2.realpath)(filename).catch(() => filename); + tmpfile = getTmpname(truename); + if (!options.mode || !options.chown) { + const stats = await promisify(fs2.stat)(truename).catch(() => { + }); + if (stats) { + if (options.mode == null) { + options.mode = stats.mode; + } + if (options.chown == null && process.getuid) { + options.chown = { uid: stats.uid, gid: stats.gid }; } - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) - _a.call(iterable_1); - } finally { - if (e_1) - throw e_1.error; } } - subscriber.complete(); - }); - } - function fromAsyncIterable(asyncIterable) { - return new Observable_1.Observable(function(subscriber) { - process2(asyncIterable, subscriber).catch(function(err) { - return subscriber.error(err); + fd = await promisify(fs2.open)(tmpfile, "w", options.mode); + if (options.tmpfileCreated) { + await options.tmpfileCreated(tmpfile); + } + if (ArrayBuffer.isView(data)) { + await promisify(fs2.write)(fd, data, 0, data.length, 0); + } else if (data != null) { + await promisify(fs2.write)(fd, String(data), 0, String(options.encoding || "utf8")); + } + if (options.fsync !== false) { + await promisify(fs2.fsync)(fd); + } + await promisify(fs2.close)(fd); + fd = null; + if (options.chown) { + await promisify(fs2.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err) => { + if (!isChownErrOk(err)) { + throw err; + } + }); + } + if (options.mode) { + await promisify(fs2.chmod)(tmpfile, options.mode).catch((err) => { + if (!isChownErrOk(err)) { + throw err; + } + }); + } + await promisify(fs2.rename)(tmpfile, truename); + } finally { + if (fd) { + await promisify(fs2.close)(fd).catch( + /* istanbul ignore next */ + () => { + } + ); + } + removeOnExitHandler(); + await promisify(fs2.unlink)(tmpfile).catch(() => { }); - }); + activeFiles[absoluteName].shift(); + if (activeFiles[absoluteName].length > 0) { + activeFiles[absoluteName][0](); + } else { + delete activeFiles[absoluteName]; + } + } } - function fromReadableStreamLike(readableStream) { - return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream)); + async function writeFile(filename, data, options, callback) { + if (options instanceof Function) { + callback = options; + options = {}; + } + const promise = writeFileAsync(filename, data, options); + if (callback) { + try { + const result2 = await promise; + return callback(result2); + } catch (err) { + return callback(err); + } + } + return promise; } - function process2(asyncIterable, subscriber) { - var asyncIterable_1, asyncIterable_1_1; - var e_2, _a; - return __awaiter(this, void 0, void 0, function() { - var value, e_2_1; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - _b.trys.push([0, 5, 6, 11]); - asyncIterable_1 = __asyncValues(asyncIterable); - _b.label = 1; - case 1: - return [4, asyncIterable_1.next()]; - case 2: - if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) - return [3, 4]; - value = asyncIterable_1_1.value; - subscriber.next(value); - if (subscriber.closed) { - return [2]; - } - _b.label = 3; - case 3: - return [3, 1]; - case 4: - return [3, 11]; - case 5: - e_2_1 = _b.sent(); - e_2 = { error: e_2_1 }; - return [3, 11]; - case 6: - _b.trys.push([6, , 9, 10]); - if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) - return [3, 8]; - return [4, _a.call(asyncIterable_1)]; - case 7: - _b.sent(); - _b.label = 8; - case 8: - return [3, 10]; - case 9: - if (e_2) - throw e_2.error; - return [7]; - case 10: - return [7]; - case 11: - subscriber.complete(); - return [2]; + function writeFileSync(filename, data, options) { + if (typeof options === "string") { + options = { encoding: options }; + } else if (!options) { + options = {}; + } + try { + filename = fs2.realpathSync(filename); + } catch (ex) { + } + const tmpfile = getTmpname(filename); + if (!options.mode || !options.chown) { + try { + const stats = fs2.statSync(filename); + options = Object.assign({}, options); + if (!options.mode) { + options.mode = stats.mode; } - }); - }); + if (!options.chown && process.getuid) { + options.chown = { uid: stats.uid, gid: stats.gid }; + } + } catch (ex) { + } + } + let fd; + const cleanup = cleanupOnExit(tmpfile); + const removeOnExitHandler = onExit(cleanup); + let threw = true; + try { + fd = fs2.openSync(tmpfile, "w", options.mode || 438); + if (options.tmpfileCreated) { + options.tmpfileCreated(tmpfile); + } + if (ArrayBuffer.isView(data)) { + fs2.writeSync(fd, data, 0, data.length, 0); + } else if (data != null) { + fs2.writeSync(fd, String(data), 0, String(options.encoding || "utf8")); + } + if (options.fsync !== false) { + fs2.fsyncSync(fd); + } + fs2.closeSync(fd); + fd = null; + if (options.chown) { + try { + fs2.chownSync(tmpfile, options.chown.uid, options.chown.gid); + } catch (err) { + if (!isChownErrOk(err)) { + throw err; + } + } + } + if (options.mode) { + try { + fs2.chmodSync(tmpfile, options.mode); + } catch (err) { + if (!isChownErrOk(err)) { + throw err; + } + } + } + fs2.renameSync(tmpfile, filename); + threw = false; + } finally { + if (fd) { + try { + fs2.closeSync(fd); + } catch (ex) { + } + } + removeOnExitHandler(); + if (threw) { + cleanup(); + } + } } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromArray.js -var require_fromArray = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromArray.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.internalFromArray = void 0; - var scheduleArray_1 = require_scheduleArray(); - var from_1 = require_from2(); - function internalFromArray(input, scheduler) { - return scheduler ? scheduleArray_1.scheduleArray(input, scheduler) : from_1.fromArrayLike(input); +// ../node_modules/.pnpm/is-typedarray@1.0.0/node_modules/is-typedarray/index.js +var require_is_typedarray = __commonJS({ + "../node_modules/.pnpm/is-typedarray@1.0.0/node_modules/is-typedarray/index.js"(exports2, module2) { + module2.exports = isTypedArray; + isTypedArray.strict = isStrictTypedArray; + isTypedArray.loose = isLooseTypedArray; + var toString = Object.prototype.toString; + var names = { + "[object Int8Array]": true, + "[object Int16Array]": true, + "[object Int32Array]": true, + "[object Uint8Array]": true, + "[object Uint8ClampedArray]": true, + "[object Uint16Array]": true, + "[object Uint32Array]": true, + "[object Float32Array]": true, + "[object Float64Array]": true + }; + function isTypedArray(arr) { + return isStrictTypedArray(arr) || isLooseTypedArray(arr); + } + function isStrictTypedArray(arr) { + return arr instanceof Int8Array || arr instanceof Int16Array || arr instanceof Int32Array || arr instanceof Uint8Array || arr instanceof Uint8ClampedArray || arr instanceof Uint16Array || arr instanceof Uint32Array || arr instanceof Float32Array || arr instanceof Float64Array; + } + function isLooseTypedArray(arr) { + return names[toString.call(arr)]; } - exports2.internalFromArray = internalFromArray; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js -var require_isScheduler = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isScheduler = void 0; - var isFunction_1 = require_isFunction(); - function isScheduler(value) { - return value && isFunction_1.isFunction(value.schedule); - } - exports2.isScheduler = isScheduler; +// ../node_modules/.pnpm/typedarray-to-buffer@3.1.5/node_modules/typedarray-to-buffer/index.js +var require_typedarray_to_buffer = __commonJS({ + "../node_modules/.pnpm/typedarray-to-buffer@3.1.5/node_modules/typedarray-to-buffer/index.js"(exports2, module2) { + var isTypedArray = require_is_typedarray().strict; + module2.exports = function typedarrayToBuffer(arr) { + if (isTypedArray(arr)) { + var buf = Buffer.from(arr.buffer); + if (arr.byteLength !== arr.buffer.byteLength) { + buf = buf.slice(arr.byteOffset, arr.byteOffset + arr.byteLength); + } + return buf; + } else { + return Buffer.from(arr); + } + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/args.js -var require_args = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/args.js"(exports2) { +// ../node_modules/.pnpm/write-file-atomic@3.0.3/node_modules/write-file-atomic/index.js +var require_write_file_atomic = __commonJS({ + "../node_modules/.pnpm/write-file-atomic@3.0.3/node_modules/write-file-atomic/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.popNumber = exports2.popScheduler = exports2.popResultSelector = void 0; - var isFunction_1 = require_isFunction(); - var isScheduler_1 = require_isScheduler(); - function last(arr) { - return arr[arr.length - 1]; + module2.exports = writeFile; + module2.exports.sync = writeFileSync; + module2.exports._getTmpname = getTmpname; + module2.exports._cleanupOnExit = cleanupOnExit; + var fs2 = require("fs"); + var MurmurHash3 = require_imurmurhash(); + var onExit = require_signal_exit(); + var path2 = require("path"); + var isTypedArray = require_is_typedarray(); + var typedArrayToBuffer = require_typedarray_to_buffer(); + var { promisify } = require("util"); + var activeFiles = {}; + var threadId = function getId() { + try { + const workerThreads = require("worker_threads"); + return workerThreads.threadId; + } catch (e) { + return 0; + } + }(); + var invocations = 0; + function getTmpname(filename) { + return filename + "." + MurmurHash3(__filename).hash(String(process.pid)).hash(String(threadId)).hash(String(++invocations)).result(); } - function popResultSelector(args2) { - return isFunction_1.isFunction(last(args2)) ? args2.pop() : void 0; + function cleanupOnExit(tmpfile) { + return () => { + try { + fs2.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile); + } catch (_) { + } + }; } - exports2.popResultSelector = popResultSelector; - function popScheduler(args2) { - return isScheduler_1.isScheduler(last(args2)) ? args2.pop() : void 0; + function serializeActiveFile(absoluteName) { + return new Promise((resolve) => { + if (!activeFiles[absoluteName]) + activeFiles[absoluteName] = []; + activeFiles[absoluteName].push(resolve); + if (activeFiles[absoluteName].length === 1) + resolve(); + }); } - exports2.popScheduler = popScheduler; - function popNumber(args2, defaultValue) { - return typeof last(args2) === "number" ? args2.pop() : defaultValue; + function isChownErrOk(err) { + if (err.code === "ENOSYS") { + return true; + } + const nonroot = !process.getuid || process.getuid() !== 0; + if (nonroot) { + if (err.code === "EINVAL" || err.code === "EPERM") { + return true; + } + } + return false; } - exports2.popNumber = popNumber; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/of.js -var require_of = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/of.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.of = void 0; - var fromArray_1 = require_fromArray(); - var scheduleArray_1 = require_scheduleArray(); - var args_1 = require_args(); - function of() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + async function writeFileAsync(filename, data, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + let fd; + let tmpfile; + const removeOnExitHandler = onExit(cleanupOnExit(() => tmpfile)); + const absoluteName = path2.resolve(filename); + try { + await serializeActiveFile(absoluteName); + const truename = await promisify(fs2.realpath)(filename).catch(() => filename); + tmpfile = getTmpname(truename); + if (!options.mode || !options.chown) { + const stats = await promisify(fs2.stat)(truename).catch(() => { + }); + if (stats) { + if (options.mode == null) { + options.mode = stats.mode; + } + if (options.chown == null && process.getuid) { + options.chown = { uid: stats.uid, gid: stats.gid }; + } + } + } + fd = await promisify(fs2.open)(tmpfile, "w", options.mode); + if (options.tmpfileCreated) { + await options.tmpfileCreated(tmpfile); + } + if (isTypedArray(data)) { + data = typedArrayToBuffer(data); + } + if (Buffer.isBuffer(data)) { + await promisify(fs2.write)(fd, data, 0, data.length, 0); + } else if (data != null) { + await promisify(fs2.write)(fd, String(data), 0, String(options.encoding || "utf8")); + } + if (options.fsync !== false) { + await promisify(fs2.fsync)(fd); + } + await promisify(fs2.close)(fd); + fd = null; + if (options.chown) { + await promisify(fs2.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err) => { + if (!isChownErrOk(err)) { + throw err; + } + }); + } + if (options.mode) { + await promisify(fs2.chmod)(tmpfile, options.mode).catch((err) => { + if (!isChownErrOk(err)) { + throw err; + } + }); + } + await promisify(fs2.rename)(tmpfile, truename); + } finally { + if (fd) { + await promisify(fs2.close)(fd).catch( + /* istanbul ignore next */ + () => { + } + ); + } + removeOnExitHandler(); + await promisify(fs2.unlink)(tmpfile).catch(() => { + }); + activeFiles[absoluteName].shift(); + if (activeFiles[absoluteName].length > 0) { + activeFiles[absoluteName][0](); + } else + delete activeFiles[absoluteName]; } - var scheduler = args_1.popScheduler(args2); - return scheduler ? scheduleArray_1.scheduleArray(args2, scheduler) : fromArray_1.internalFromArray(args2); } - exports2.of = of; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/throwError.js -var require_throwError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/throwError.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.throwError = void 0; - var Observable_1 = require_Observable(); - var isFunction_1 = require_isFunction(); - function throwError(errorOrErrorFactory, scheduler) { - var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function() { - return errorOrErrorFactory; - }; - var init = function(subscriber) { - return subscriber.error(errorFactory()); - }; - return new Observable_1.Observable(scheduler ? function(subscriber) { - return scheduler.schedule(init, 0, subscriber); - } : init); + function writeFile(filename, data, options, callback) { + if (options instanceof Function) { + callback = options; + options = {}; + } + const promise = writeFileAsync(filename, data, options); + if (callback) { + promise.then(callback, callback); + } + return promise; + } + function writeFileSync(filename, data, options) { + if (typeof options === "string") + options = { encoding: options }; + else if (!options) + options = {}; + try { + filename = fs2.realpathSync(filename); + } catch (ex) { + } + const tmpfile = getTmpname(filename); + if (!options.mode || !options.chown) { + try { + const stats = fs2.statSync(filename); + options = Object.assign({}, options); + if (!options.mode) { + options.mode = stats.mode; + } + if (!options.chown && process.getuid) { + options.chown = { uid: stats.uid, gid: stats.gid }; + } + } catch (ex) { + } + } + let fd; + const cleanup = cleanupOnExit(tmpfile); + const removeOnExitHandler = onExit(cleanup); + let threw = true; + try { + fd = fs2.openSync(tmpfile, "w", options.mode || 438); + if (options.tmpfileCreated) { + options.tmpfileCreated(tmpfile); + } + if (isTypedArray(data)) { + data = typedArrayToBuffer(data); + } + if (Buffer.isBuffer(data)) { + fs2.writeSync(fd, data, 0, data.length, 0); + } else if (data != null) { + fs2.writeSync(fd, String(data), 0, String(options.encoding || "utf8")); + } + if (options.fsync !== false) { + fs2.fsyncSync(fd); + } + fs2.closeSync(fd); + fd = null; + if (options.chown) { + try { + fs2.chownSync(tmpfile, options.chown.uid, options.chown.gid); + } catch (err) { + if (!isChownErrOk(err)) { + throw err; + } + } + } + if (options.mode) { + try { + fs2.chmodSync(tmpfile, options.mode); + } catch (err) { + if (!isChownErrOk(err)) { + throw err; + } + } + } + fs2.renameSync(tmpfile, filename); + threw = false; + } finally { + if (fd) { + try { + fs2.closeSync(fd); + } catch (ex) { + } + } + removeOnExitHandler(); + if (threw) { + cleanup(); + } + } } - exports2.throwError = throwError; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Notification.js -var require_Notification = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/Notification.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/common.js +var require_common2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/common.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.observeNotification = exports2.Notification = exports2.NotificationKind = void 0; - var empty_1 = require_empty(); - var of_1 = require_of(); - var throwError_1 = require_throwError(); - var isFunction_1 = require_isFunction(); - var NotificationKind; - (function(NotificationKind2) { - NotificationKind2["NEXT"] = "N"; - NotificationKind2["ERROR"] = "E"; - NotificationKind2["COMPLETE"] = "C"; - })(NotificationKind = exports2.NotificationKind || (exports2.NotificationKind = {})); - var Notification = function() { - function Notification2(kind, value, error) { - this.kind = kind; - this.value = value; - this.error = error; - this.hasValue = kind === "N"; - } - Notification2.prototype.observe = function(observer) { - return observeNotification(this, observer); - }; - Notification2.prototype.do = function(nextHandler, errorHandler, completeHandler) { - var _a = this, kind = _a.kind, value = _a.value, error = _a.error; - return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === "E" ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler(); - }; - Notification2.prototype.accept = function(nextOrObserver, error, complete) { - var _a; - return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete); - }; - Notification2.prototype.toObservable = function() { - var _a = this, kind = _a.kind, value = _a.value, error = _a.error; - var result = kind === "N" ? of_1.of(value) : kind === "E" ? throwError_1.throwError(function() { - return error; - }) : kind === "C" ? empty_1.EMPTY : 0; - if (!result) { - throw new TypeError("Unexpected notification kind " + kind); + function isNothing(subject) { + return typeof subject === "undefined" || subject === null; + } + function isObject(subject) { + return typeof subject === "object" && subject !== null; + } + function toArray(sequence) { + if (Array.isArray(sequence)) + return sequence; + else if (isNothing(sequence)) + return []; + return [sequence]; + } + function extend(target, source) { + var index, length, key, sourceKeys; + if (source) { + sourceKeys = Object.keys(source); + for (index = 0, length = sourceKeys.length; index < length; index += 1) { + key = sourceKeys[index]; + target[key] = source[key]; } - return result; - }; - Notification2.createNext = function(value) { - return new Notification2("N", value); - }; - Notification2.createError = function(err) { - return new Notification2("E", void 0, err); - }; - Notification2.createComplete = function() { - return Notification2.completeNotification; - }; - Notification2.completeNotification = new Notification2("C"); - return Notification2; - }(); - exports2.Notification = Notification; - function observeNotification(notification, observer) { - var _a, _b, _c; - var _d = notification, kind = _d.kind, value = _d.value, error = _d.error; - if (typeof kind !== "string") { - throw new TypeError('Invalid notification, missing "kind"'); } - kind === "N" ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer); + return target; } - exports2.observeNotification = observeNotification; + function repeat(string, count) { + var result2 = "", cycle; + for (cycle = 0; cycle < count; cycle += 1) { + result2 += string; + } + return result2; + } + function isNegativeZero(number) { + return number === 0 && Number.NEGATIVE_INFINITY === 1 / number; + } + module2.exports.isNothing = isNothing; + module2.exports.isObject = isObject; + module2.exports.toArray = toArray; + module2.exports.repeat = repeat; + module2.exports.isNegativeZero = isNegativeZero; + module2.exports.extend = extend; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isObservable.js -var require_isObservable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isObservable.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/exception.js +var require_exception = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/exception.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isObservable = void 0; - var Observable_1 = require_Observable(); - var isFunction_1 = require_isFunction(); - function isObservable(obj) { - return !!obj && (obj instanceof Observable_1.Observable || isFunction_1.isFunction(obj.lift) && isFunction_1.isFunction(obj.subscribe)); + function formatError(exception, compact) { + var where = "", message2 = exception.reason || "(unknown reason)"; + if (!exception.mark) + return message2; + if (exception.mark.name) { + where += 'in "' + exception.mark.name + '" '; + } + where += "(" + (exception.mark.line + 1) + ":" + (exception.mark.column + 1) + ")"; + if (!compact && exception.mark.snippet) { + where += "\n\n" + exception.mark.snippet; + } + return message2 + " " + where; } - exports2.isObservable = isObservable; + function YAMLException(reason, mark) { + Error.call(this); + this.name = "YAMLException"; + this.reason = reason; + this.mark = mark; + this.message = formatError(this, false); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack || ""; + } + } + YAMLException.prototype = Object.create(Error.prototype); + YAMLException.prototype.constructor = YAMLException; + YAMLException.prototype.toString = function toString(compact) { + return this.name + ": " + formatError(this, compact); + }; + module2.exports = YAMLException; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js -var require_EmptyError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/snippet.js +var require_snippet2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/snippet.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EmptyError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.EmptyError = createErrorClass_1.createErrorClass(function(_super) { - return function EmptyErrorImpl() { - _super(this); - this.name = "EmptyError"; - this.message = "no elements in sequence"; + var common = require_common2(); + function getLine(buffer, lineStart, lineEnd, position, maxLineLength) { + var head = ""; + var tail = ""; + var maxHalfLength = Math.floor(maxLineLength / 2) - 1; + if (position - lineStart > maxHalfLength) { + head = " ... "; + lineStart = position - maxHalfLength + head.length; + } + if (lineEnd - position > maxHalfLength) { + tail = " ..."; + lineEnd = position + maxHalfLength - tail.length; + } + return { + str: head + buffer.slice(lineStart, lineEnd).replace(/\t/g, "\u2192") + tail, + pos: position - lineStart + head.length + // relative position }; - }); + } + function padStart(string, max) { + return common.repeat(" ", max - string.length) + string; + } + function makeSnippet(mark, options) { + options = Object.create(options || null); + if (!mark.buffer) + return null; + if (!options.maxLength) + options.maxLength = 79; + if (typeof options.indent !== "number") + options.indent = 1; + if (typeof options.linesBefore !== "number") + options.linesBefore = 3; + if (typeof options.linesAfter !== "number") + options.linesAfter = 2; + var re = /\r?\n|\r|\0/g; + var lineStarts = [0]; + var lineEnds = []; + var match; + var foundLineNo = -1; + while (match = re.exec(mark.buffer)) { + lineEnds.push(match.index); + lineStarts.push(match.index + match[0].length); + if (mark.position <= match.index && foundLineNo < 0) { + foundLineNo = lineStarts.length - 2; + } + } + if (foundLineNo < 0) + foundLineNo = lineStarts.length - 1; + var result2 = "", i, line; + var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length; + var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3); + for (i = 1; i <= options.linesBefore; i++) { + if (foundLineNo - i < 0) + break; + line = getLine( + mark.buffer, + lineStarts[foundLineNo - i], + lineEnds[foundLineNo - i], + mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i]), + maxLineLength + ); + result2 = common.repeat(" ", options.indent) + padStart((mark.line - i + 1).toString(), lineNoLength) + " | " + line.str + "\n" + result2; + } + line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength); + result2 += common.repeat(" ", options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + " | " + line.str + "\n"; + result2 += common.repeat("-", options.indent + lineNoLength + 3 + line.pos) + "^\n"; + for (i = 1; i <= options.linesAfter; i++) { + if (foundLineNo + i >= lineEnds.length) + break; + line = getLine( + mark.buffer, + lineStarts[foundLineNo + i], + lineEnds[foundLineNo + i], + mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i]), + maxLineLength + ); + result2 += common.repeat(" ", options.indent) + padStart((mark.line + i + 1).toString(), lineNoLength) + " | " + line.str + "\n"; + } + return result2.replace(/\n$/, ""); + } + module2.exports = makeSnippet; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js -var require_lastValueFrom = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type.js +var require_type = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.lastValueFrom = void 0; - var EmptyError_1 = require_EmptyError(); - function lastValueFrom(source, config) { - var hasConfig = typeof config === "object"; - return new Promise(function(resolve, reject) { - var _hasValue = false; - var _value; - source.subscribe({ - next: function(value) { - _value = value; - _hasValue = true; - }, - error: reject, - complete: function() { - if (_hasValue) { - resolve(_value); - } else if (hasConfig) { - resolve(config.defaultValue); - } else { - reject(new EmptyError_1.EmptyError()); - } - } + var YAMLException = require_exception(); + var TYPE_CONSTRUCTOR_OPTIONS = [ + "kind", + "multi", + "resolve", + "construct", + "instanceOf", + "predicate", + "represent", + "representName", + "defaultStyle", + "styleAliases" + ]; + var YAML_NODE_KINDS = [ + "scalar", + "sequence", + "mapping" + ]; + function compileStyleAliases(map) { + var result2 = {}; + if (map !== null) { + Object.keys(map).forEach(function(style) { + map[style].forEach(function(alias) { + result2[String(alias)] = style; + }); }); + } + return result2; + } + function Type(tag, options) { + options = options || {}; + Object.keys(options).forEach(function(name) { + if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { + throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + } }); + this.tag = tag; + this.kind = options["kind"] || null; + this.resolve = options["resolve"] || function() { + return true; + }; + this.construct = options["construct"] || function(data) { + return data; + }; + this.instanceOf = options["instanceOf"] || null; + this.predicate = options["predicate"] || null; + this.represent = options["represent"] || null; + this.representName = options["representName"] || null; + this.defaultStyle = options["defaultStyle"] || null; + this.multi = options["multi"] || false; + this.styleAliases = compileStyleAliases(options["styleAliases"] || null); + if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { + throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); + } } - exports2.lastValueFrom = lastValueFrom; + module2.exports = Type; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js -var require_firstValueFrom = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema.js +var require_schema = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.firstValueFrom = void 0; - var EmptyError_1 = require_EmptyError(); - var Subscriber_1 = require_Subscriber(); - function firstValueFrom(source, config) { - var hasConfig = typeof config === "object"; - return new Promise(function(resolve, reject) { - var subscriber = new Subscriber_1.SafeSubscriber({ - next: function(value) { - resolve(value); - subscriber.unsubscribe(); - }, - error: reject, - complete: function() { - if (hasConfig) { - resolve(config.defaultValue); - } else { - reject(new EmptyError_1.EmptyError()); - } + var YAMLException = require_exception(); + var Type = require_type(); + function compileList(schema, name, result2) { + var exclude = []; + schema[name].forEach(function(currentType) { + result2.forEach(function(previousType, previousIndex) { + if (previousType.tag === currentType.tag && previousType.kind === currentType.kind && previousType.multi === currentType.multi) { + exclude.push(previousIndex); } }); - source.subscribe(subscriber); + result2.push(currentType); + }); + return result2.filter(function(type, index) { + return exclude.indexOf(index) === -1; }); } - exports2.firstValueFrom = firstValueFrom; + function compileMap() { + var result2 = { + scalar: {}, + sequence: {}, + mapping: {}, + fallback: {}, + multi: { + scalar: [], + sequence: [], + mapping: [], + fallback: [] + } + }, index, length; + function collectType(type) { + if (type.multi) { + result2.multi[type.kind].push(type); + result2.multi["fallback"].push(type); + } else { + result2[type.kind][type.tag] = result2["fallback"][type.tag] = type; + } + } + for (index = 0, length = arguments.length; index < length; index += 1) { + arguments[index].forEach(collectType); + } + return result2; + } + function Schema(definition) { + return this.extend(definition); + } + Schema.prototype.extend = function extend(definition) { + var implicit = []; + var explicit = []; + if (definition instanceof Type) { + explicit.push(definition); + } else if (Array.isArray(definition)) { + explicit = explicit.concat(definition); + } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) { + if (definition.implicit) + implicit = implicit.concat(definition.implicit); + if (definition.explicit) + explicit = explicit.concat(definition.explicit); + } else { + throw new YAMLException("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })"); + } + implicit.forEach(function(type) { + if (!(type instanceof Type)) { + throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); + } + if (type.loadKind && type.loadKind !== "scalar") { + throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); + } + if (type.multi) { + throw new YAMLException("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit."); + } + }); + explicit.forEach(function(type) { + if (!(type instanceof Type)) { + throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); + } + }); + var result2 = Object.create(Schema.prototype); + result2.implicit = (this.implicit || []).concat(implicit); + result2.explicit = (this.explicit || []).concat(explicit); + result2.compiledImplicit = compileList(result2, "implicit", []); + result2.compiledExplicit = compileList(result2, "explicit", []); + result2.compiledTypeMap = compileMap(result2.compiledImplicit, result2.compiledExplicit); + return result2; + }; + module2.exports = Schema; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js -var require_ArgumentOutOfRangeError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/str.js +var require_str = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/str.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ArgumentOutOfRangeError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function(_super) { - return function ArgumentOutOfRangeErrorImpl() { - _super(this); - this.name = "ArgumentOutOfRangeError"; - this.message = "argument out of range"; - }; + var Type = require_type(); + module2.exports = new Type("tag:yaml.org,2002:str", { + kind: "scalar", + construct: function(data) { + return data !== null ? data : ""; + } }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js -var require_NotFoundError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/seq.js +var require_seq = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/seq.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NotFoundError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.NotFoundError = createErrorClass_1.createErrorClass(function(_super) { - return function NotFoundErrorImpl(message2) { - _super(this); - this.name = "NotFoundError"; - this.message = message2; - }; + var Type = require_type(); + module2.exports = new Type("tag:yaml.org,2002:seq", { + kind: "sequence", + construct: function(data) { + return data !== null ? data : []; + } }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js -var require_SequenceError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/map.js +var require_map = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/map.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SequenceError = void 0; - var createErrorClass_1 = require_createErrorClass(); - exports2.SequenceError = createErrorClass_1.createErrorClass(function(_super) { - return function SequenceErrorImpl(message2) { - _super(this); - this.name = "SequenceError"; - this.message = message2; - }; + var Type = require_type(); + module2.exports = new Type("tag:yaml.org,2002:map", { + kind: "mapping", + construct: function(data) { + return data !== null ? data : {}; + } }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isDate.js -var require_isDate = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/isDate.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/failsafe.js +var require_failsafe = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/failsafe.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isValidDate = void 0; - function isValidDate(value) { - return value instanceof Date && !isNaN(value); - } - exports2.isValidDate = isValidDate; + var Schema = require_schema(); + module2.exports = new Schema({ + explicit: [ + require_str(), + require_seq(), + require_map() + ] + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeout.js -var require_timeout = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeout.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/null.js +var require_null = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/null.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.timeout = exports2.TimeoutError = void 0; - var async_1 = require_async(); - var isDate_1 = require_isDate(); - var lift_1 = require_lift(); - var from_1 = require_from2(); - var createErrorClass_1 = require_createErrorClass(); - var caughtSchedule_1 = require_caughtSchedule(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - exports2.TimeoutError = createErrorClass_1.createErrorClass(function(_super) { - return function TimeoutErrorImpl(info) { - if (info === void 0) { - info = null; - } - _super(this); - this.message = "Timeout has occurred"; - this.name = "TimeoutError"; - this.info = info; - }; - }); - function timeout(config, schedulerArg) { - var _a = isDate_1.isValidDate(config) ? { first: config } : typeof config === "number" ? { each: config } : config, first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d; - if (first == null && each == null) { - throw new TypeError("No timeout provided."); - } - return lift_1.operate(function(source, subscriber) { - var originalSourceSubscription; - var timerSubscription; - var lastValue = null; - var seen = 0; - var startTimer = function(delay) { - timerSubscription = caughtSchedule_1.caughtSchedule(subscriber, scheduler, function() { - originalSourceSubscription.unsubscribe(); - from_1.innerFrom(_with({ - meta, - lastValue, - seen - })).subscribe(subscriber); - }, delay); - }; - originalSourceSubscription = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); - seen++; - subscriber.next(lastValue = value); - each > 0 && startTimer(each); - }, void 0, void 0, function() { - if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) { - timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); - } - lastValue = null; - })); - startTimer(first != null ? typeof first === "number" ? first : +first - scheduler.now() : each); - }); + var Type = require_type(); + function resolveYamlNull(data) { + if (data === null) + return true; + var max = data.length; + return max === 1 && data === "~" || max === 4 && (data === "null" || data === "Null" || data === "NULL"); } - exports2.timeout = timeout; - function timeoutErrorFactory(info) { - throw new exports2.TimeoutError(info); + function constructYamlNull() { + return null; } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js -var require_subscribeOn = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.subscribeOn = void 0; - var lift_1 = require_lift(); - function subscribeOn(scheduler, delay) { - if (delay === void 0) { - delay = 0; - } - return lift_1.operate(function(source, subscriber) { - subscriber.add(scheduler.schedule(function() { - return source.subscribe(subscriber); - }, delay)); - }); + function isNull(object) { + return object === null; } - exports2.subscribeOn = subscribeOn; + module2.exports = new Type("tag:yaml.org,2002:null", { + kind: "scalar", + resolve: resolveYamlNull, + construct: constructYamlNull, + predicate: isNull, + represent: { + canonical: function() { + return "~"; + }, + lowercase: function() { + return "null"; + }, + uppercase: function() { + return "NULL"; + }, + camelcase: function() { + return "Null"; + }, + empty: function() { + return ""; + } + }, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/map.js -var require_map = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/map.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/bool.js +var require_bool = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/bool.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.map = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function map(project, thisArg) { - return lift_1.operate(function(source, subscriber) { - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - subscriber.next(project.call(thisArg, value, index++)); - })); - }); + var Type = require_type(); + function resolveYamlBoolean(data) { + if (data === null) + return false; + var max = data.length; + return max === 4 && (data === "true" || data === "True" || data === "TRUE") || max === 5 && (data === "false" || data === "False" || data === "FALSE"); } - exports2.map = map; + function constructYamlBoolean(data) { + return data === "true" || data === "True" || data === "TRUE"; + } + function isBoolean(object) { + return Object.prototype.toString.call(object) === "[object Boolean]"; + } + module2.exports = new Type("tag:yaml.org,2002:bool", { + kind: "scalar", + resolve: resolveYamlBoolean, + construct: constructYamlBoolean, + predicate: isBoolean, + represent: { + lowercase: function(object) { + return object ? "true" : "false"; + }, + uppercase: function(object) { + return object ? "TRUE" : "FALSE"; + }, + camelcase: function(object) { + return object ? "True" : "False"; + } + }, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js -var require_mapOneOrManyArgs = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/int.js +var require_int = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/int.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + var common = require_common2(); + var Type = require_type(); + function isHexCode(c) { + return 48 <= c && c <= 57 || 65 <= c && c <= 70 || 97 <= c && c <= 102; + } + function isOctCode(c) { + return 48 <= c && c <= 55; + } + function isDecCode(c) { + return 48 <= c && c <= 57; + } + function resolveYamlInteger(data) { + if (data === null) + return false; + var max = data.length, index = 0, hasDigits = false, ch; + if (!max) + return false; + ch = data[index]; + if (ch === "-" || ch === "+") { + ch = data[++index]; + } + if (ch === "0") { + if (index + 1 === max) + return true; + ch = data[++index]; + if (ch === "b") { + index++; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (ch !== "0" && ch !== "1") + return false; + hasDigits = true; + } + return hasDigits && ch !== "_"; + } + if (ch === "x") { + index++; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (!isHexCode(data.charCodeAt(index))) + return false; + hasDigits = true; + } + return hasDigits && ch !== "_"; + } + if (ch === "o") { + index++; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (!isOctCode(data.charCodeAt(index))) + return false; + hasDigits = true; + } + return hasDigits && ch !== "_"; } } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mapOneOrManyArgs = void 0; - var map_1 = require_map(); - var isArray = Array.isArray; - function callOrApply(fn2, args2) { - return isArray(args2) ? fn2.apply(void 0, __spreadArray([], __read(args2))) : fn2(args2); - } - function mapOneOrManyArgs(fn2) { - return map_1.map(function(args2) { - return callOrApply(fn2, args2); - }); + if (ch === "_") + return false; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (!isDecCode(data.charCodeAt(index))) { + return false; + } + hasDigits = true; + } + if (!hasDigits || ch === "_") + return false; + return true; } - exports2.mapOneOrManyArgs = mapOneOrManyArgs; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js -var require_observeOn = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.observeOn = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function observeOn(scheduler, delay) { - if (delay === void 0) { - delay = 0; + function constructYamlInteger(data) { + var value = data, sign = 1, ch; + if (value.indexOf("_") !== -1) { + value = value.replace(/_/g, ""); } - return lift_1.operate(function(source, subscriber) { - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return subscriber.add(scheduler.schedule(function() { - return subscriber.next(value); - }, delay)); - }, function() { - return subscriber.add(scheduler.schedule(function() { - return subscriber.complete(); - }, delay)); - }, function(err) { - return subscriber.add(scheduler.schedule(function() { - return subscriber.error(err); - }, delay)); - })); - }); + ch = value[0]; + if (ch === "-" || ch === "+") { + if (ch === "-") + sign = -1; + value = value.slice(1); + ch = value[0]; + } + if (value === "0") + return 0; + if (ch === "0") { + if (value[1] === "b") + return sign * parseInt(value.slice(2), 2); + if (value[1] === "x") + return sign * parseInt(value.slice(2), 16); + if (value[1] === "o") + return sign * parseInt(value.slice(2), 8); + } + return sign * parseInt(value, 10); } - exports2.observeOn = observeOn; + function isInteger(object) { + return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object)); + } + module2.exports = new Type("tag:yaml.org,2002:int", { + kind: "scalar", + resolve: resolveYamlInteger, + construct: constructYamlInteger, + predicate: isInteger, + represent: { + binary: function(obj) { + return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1); + }, + octal: function(obj) { + return obj >= 0 ? "0o" + obj.toString(8) : "-0o" + obj.toString(8).slice(1); + }, + decimal: function(obj) { + return obj.toString(10); + }, + /* eslint-disable max-len */ + hexadecimal: function(obj) { + return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1); + } + }, + defaultStyle: "decimal", + styleAliases: { + binary: [2, "bin"], + octal: [8, "oct"], + decimal: [10, "dec"], + hexadecimal: [16, "hex"] + } + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js -var require_bindCallbackInternals = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/float.js +var require_float = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/float.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + var common = require_common2(); + var Type = require_type(); + var YAML_FLOAT_PATTERN = new RegExp( + // 2.5e4, 2.5 and integers + "^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$" + ); + function resolveYamlFloat(data) { + if (data === null) + return false; + if (!YAML_FLOAT_PATTERN.test(data) || // Quick hack to not allow integers end with `_` + // Probably should update regexp & check speed + data[data.length - 1] === "_") { + return false; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bindCallbackInternals = void 0; - var isScheduler_1 = require_isScheduler(); - var Observable_1 = require_Observable(); - var subscribeOn_1 = require_subscribeOn(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var observeOn_1 = require_observeOn(); - var AsyncSubject_1 = require_AsyncSubject(); - function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) { - if (resultSelector) { - if (isScheduler_1.isScheduler(resultSelector)) { - scheduler = resultSelector; - } else { - return function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler).apply(this, args2).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); - }; - } + return true; + } + function constructYamlFloat(data) { + var value, sign; + value = data.replace(/_/g, "").toLowerCase(); + sign = value[0] === "-" ? -1 : 1; + if ("+-".indexOf(value[0]) >= 0) { + value = value.slice(1); } - if (scheduler) { - return function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - return bindCallbackInternals(isNodeStyle, callbackFunc).apply(this, args2).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); - }; + if (value === ".inf") { + return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; + } else if (value === ".nan") { + return NaN; } - return function() { - var _this = this; - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + return sign * parseFloat(value, 10); + } + var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; + function representYamlFloat(object, style) { + var res; + if (isNaN(object)) { + switch (style) { + case "lowercase": + return ".nan"; + case "uppercase": + return ".NAN"; + case "camelcase": + return ".NaN"; } - var subject = new AsyncSubject_1.AsyncSubject(); - var uninitialized = true; - return new Observable_1.Observable(function(subscriber) { - var subs = subject.subscribe(subscriber); - if (uninitialized) { - uninitialized = false; - var isAsync_1 = false; - var isComplete_1 = false; - callbackFunc.apply(_this, __spreadArray(__spreadArray([], __read(args2)), [ - function() { - var results = []; - for (var _i2 = 0; _i2 < arguments.length; _i2++) { - results[_i2] = arguments[_i2]; - } - if (isNodeStyle) { - var err = results.shift(); - if (err != null) { - subject.error(err); - return; - } - } - subject.next(1 < results.length ? results : results[0]); - isComplete_1 = true; - if (isAsync_1) { - subject.complete(); - } - } - ])); - if (isComplete_1) { - subject.complete(); - } - isAsync_1 = true; - } - return subs; - }); - }; + } else if (Number.POSITIVE_INFINITY === object) { + switch (style) { + case "lowercase": + return ".inf"; + case "uppercase": + return ".INF"; + case "camelcase": + return ".Inf"; + } + } else if (Number.NEGATIVE_INFINITY === object) { + switch (style) { + case "lowercase": + return "-.inf"; + case "uppercase": + return "-.INF"; + case "camelcase": + return "-.Inf"; + } + } else if (common.isNegativeZero(object)) { + return "-0.0"; + } + res = object.toString(10); + return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res; } - exports2.bindCallbackInternals = bindCallbackInternals; + function isFloat(object) { + return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object)); + } + module2.exports = new Type("tag:yaml.org,2002:float", { + kind: "scalar", + resolve: resolveYamlFloat, + construct: constructYamlFloat, + predicate: isFloat, + represent: representYamlFloat, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js -var require_bindCallback = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/json.js +var require_json = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/json.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bindCallback = void 0; - var bindCallbackInternals_1 = require_bindCallbackInternals(); - function bindCallback(callbackFunc, resultSelector, scheduler) { - return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler); - } - exports2.bindCallback = bindCallback; + module2.exports = require_failsafe().extend({ + implicit: [ + require_null(), + require_bool(), + require_int(), + require_float() + ] + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js -var require_bindNodeCallback = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/core.js +var require_core2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/core.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bindNodeCallback = void 0; - var bindCallbackInternals_1 = require_bindCallbackInternals(); - function bindNodeCallback(callbackFunc, resultSelector, scheduler) { - return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler); - } - exports2.bindNodeCallback = bindNodeCallback; + module2.exports = require_json(); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js -var require_argsArgArrayOrObject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.argsArgArrayOrObject = void 0; - var isArray = Array.isArray; - var getPrototypeOf = Object.getPrototypeOf; - var objectProto = Object.prototype; - var getKeys = Object.keys; - function argsArgArrayOrObject(args2) { - if (args2.length === 1) { - var first_1 = args2[0]; - if (isArray(first_1)) { - return { args: first_1, keys: null }; - } - if (isPOJO(first_1)) { - var keys = getKeys(first_1); - return { - args: keys.map(function(key) { - return first_1[key]; - }), - keys - }; +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/timestamp.js +var require_timestamp = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/timestamp.js"(exports2, module2) { + "use strict"; + var Type = require_type(); + var YAML_DATE_REGEXP = new RegExp( + "^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$" + ); + var YAML_TIMESTAMP_REGEXP = new RegExp( + "^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$" + ); + function resolveYamlTimestamp(data) { + if (data === null) + return false; + if (YAML_DATE_REGEXP.exec(data) !== null) + return true; + if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) + return true; + return false; + } + function constructYamlTimestamp(data) { + var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date; + match = YAML_DATE_REGEXP.exec(data); + if (match === null) + match = YAML_TIMESTAMP_REGEXP.exec(data); + if (match === null) + throw new Error("Date resolve error"); + year = +match[1]; + month = +match[2] - 1; + day = +match[3]; + if (!match[4]) { + return new Date(Date.UTC(year, month, day)); + } + hour = +match[4]; + minute = +match[5]; + second = +match[6]; + if (match[7]) { + fraction = match[7].slice(0, 3); + while (fraction.length < 3) { + fraction += "0"; } + fraction = +fraction; } - return { args: args2, keys: null }; + if (match[9]) { + tz_hour = +match[10]; + tz_minute = +(match[11] || 0); + delta = (tz_hour * 60 + tz_minute) * 6e4; + if (match[9] === "-") + delta = -delta; + } + date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); + if (delta) + date.setTime(date.getTime() - delta); + return date; } - exports2.argsArgArrayOrObject = argsArgArrayOrObject; - function isPOJO(obj) { - return obj && typeof obj === "object" && getPrototypeOf(obj) === objectProto; + function representYamlTimestamp(object) { + return object.toISOString(); } + module2.exports = new Type("tag:yaml.org,2002:timestamp", { + kind: "scalar", + resolve: resolveYamlTimestamp, + construct: constructYamlTimestamp, + instanceOf: Date, + represent: representYamlTimestamp + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/createObject.js -var require_createObject = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/createObject.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/merge.js +var require_merge = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/merge.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createObject = void 0; - function createObject(keys, values) { - return keys.reduce(function(result, key, i) { - return result[key] = values[i], result; - }, {}); + var Type = require_type(); + function resolveYamlMerge(data) { + return data === "<<" || data === null; } - exports2.createObject = createObject; + module2.exports = new Type("tag:yaml.org,2002:merge", { + kind: "scalar", + resolve: resolveYamlMerge + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js -var require_combineLatest = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/binary.js +var require_binary = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/binary.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.combineLatestInit = exports2.combineLatest = void 0; - var Observable_1 = require_Observable(); - var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); - var from_1 = require_from2(); - var identity_1 = require_identity(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var args_1 = require_args(); - var createObject_1 = require_createObject(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function combineLatest() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - var scheduler = args_1.popScheduler(args2); - var resultSelector = args_1.popResultSelector(args2); - var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args2), observables = _a.args, keys = _a.keys; - if (observables.length === 0) { - return from_1.from([], scheduler); + var Type = require_type(); + var BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; + function resolveYamlBinary(data) { + if (data === null) + return false; + var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; + for (idx = 0; idx < max; idx++) { + code = map.indexOf(data.charAt(idx)); + if (code > 64) + continue; + if (code < 0) + return false; + bitlen += 6; } - var result = new Observable_1.Observable(combineLatestInit(observables, scheduler, keys ? function(values) { - return createObject_1.createObject(keys, values); - } : identity_1.identity)); - return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; + return bitlen % 8 === 0; } - exports2.combineLatest = combineLatest; - function combineLatestInit(observables, scheduler, valueTransform) { - if (valueTransform === void 0) { - valueTransform = identity_1.identity; + function constructYamlBinary(data) { + var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max = input.length, map = BASE64_MAP, bits = 0, result2 = []; + for (idx = 0; idx < max; idx++) { + if (idx % 4 === 0 && idx) { + result2.push(bits >> 16 & 255); + result2.push(bits >> 8 & 255); + result2.push(bits & 255); + } + bits = bits << 6 | map.indexOf(input.charAt(idx)); } - return function(subscriber) { - maybeSchedule(scheduler, function() { - var length = observables.length; - var values = new Array(length); - var active = length; - var remainingFirstValues = length; - var _loop_1 = function(i2) { - maybeSchedule(scheduler, function() { - var source = from_1.from(observables[i2], scheduler); - var hasFirstValue = false; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - values[i2] = value; - if (!hasFirstValue) { - hasFirstValue = true; - remainingFirstValues--; - } - if (!remainingFirstValues) { - subscriber.next(valueTransform(values.slice())); - } - }, function() { - if (!--active) { - subscriber.complete(); - } - })); - }, subscriber); - }; - for (var i = 0; i < length; i++) { - _loop_1(i); - } - }, subscriber); - }; - } - exports2.combineLatestInit = combineLatestInit; - function maybeSchedule(scheduler, execute, subscription) { - if (scheduler) { - subscription.add(scheduler.schedule(execute)); - } else { - execute(); + tailbits = max % 4 * 6; + if (tailbits === 0) { + result2.push(bits >> 16 & 255); + result2.push(bits >> 8 & 255); + result2.push(bits & 255); + } else if (tailbits === 18) { + result2.push(bits >> 10 & 255); + result2.push(bits >> 2 & 255); + } else if (tailbits === 12) { + result2.push(bits >> 4 & 255); } + return new Uint8Array(result2); } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js -var require_mergeInternals = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeInternals = void 0; - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalTeardown) { - var buffer = []; - var active = 0; - var index = 0; - var isComplete = false; - var checkComplete = function() { - if (isComplete && !buffer.length && !active) { - subscriber.complete(); + function representYamlBinary(object) { + var result2 = "", bits = 0, idx, tail, max = object.length, map = BASE64_MAP; + for (idx = 0; idx < max; idx++) { + if (idx % 3 === 0 && idx) { + result2 += map[bits >> 18 & 63]; + result2 += map[bits >> 12 & 63]; + result2 += map[bits >> 6 & 63]; + result2 += map[bits & 63]; } - }; - var outerNext = function(value) { - return active < concurrent ? doInnerSub(value) : buffer.push(value); - }; - var doInnerSub = function(value) { - expand && subscriber.next(value); - active++; - var innerComplete = false; - from_1.innerFrom(project(value, index++)).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(innerValue) { - onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue); - if (expand) { - outerNext(innerValue); - } else { - subscriber.next(innerValue); - } - }, function() { - innerComplete = true; - }, void 0, function() { - if (innerComplete) { - try { - active--; - var _loop_1 = function() { - var bufferedValue = buffer.shift(); - innerSubScheduler ? subscriber.add(innerSubScheduler.schedule(function() { - return doInnerSub(bufferedValue); - })) : doInnerSub(bufferedValue); - }; - while (buffer.length && active < concurrent) { - _loop_1(); - } - checkComplete(); - } catch (err) { - subscriber.error(err); - } - } - })); - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, outerNext, function() { - isComplete = true; - checkComplete(); - })); - return function() { - additionalTeardown === null || additionalTeardown === void 0 ? void 0 : additionalTeardown(); - }; - } - exports2.mergeInternals = mergeInternals; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js -var require_mergeMap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeMap = void 0; - var map_1 = require_map(); - var from_1 = require_from2(); - var lift_1 = require_lift(); - var mergeInternals_1 = require_mergeInternals(); - var isFunction_1 = require_isFunction(); - function mergeMap(project, resultSelector, concurrent) { - if (concurrent === void 0) { - concurrent = Infinity; + bits = (bits << 8) + object[idx]; } - if (isFunction_1.isFunction(resultSelector)) { - return mergeMap(function(a, i) { - return map_1.map(function(b, ii) { - return resultSelector(a, b, i, ii); - })(from_1.innerFrom(project(a, i))); - }, concurrent); - } else if (typeof resultSelector === "number") { - concurrent = resultSelector; + tail = max % 3; + if (tail === 0) { + result2 += map[bits >> 18 & 63]; + result2 += map[bits >> 12 & 63]; + result2 += map[bits >> 6 & 63]; + result2 += map[bits & 63]; + } else if (tail === 2) { + result2 += map[bits >> 10 & 63]; + result2 += map[bits >> 4 & 63]; + result2 += map[bits << 2 & 63]; + result2 += map[64]; + } else if (tail === 1) { + result2 += map[bits >> 2 & 63]; + result2 += map[bits << 4 & 63]; + result2 += map[64]; + result2 += map[64]; } - return lift_1.operate(function(source, subscriber) { - return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent); - }); + return result2; } - exports2.mergeMap = mergeMap; + function isBinary(obj) { + return Object.prototype.toString.call(obj) === "[object Uint8Array]"; + } + module2.exports = new Type("tag:yaml.org,2002:binary", { + kind: "scalar", + resolve: resolveYamlBinary, + construct: constructYamlBinary, + predicate: isBinary, + represent: representYamlBinary + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js -var require_mergeAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/omap.js +var require_omap = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/omap.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeAll = void 0; - var mergeMap_1 = require_mergeMap(); - var identity_1 = require_identity(); - function mergeAll(concurrent) { - if (concurrent === void 0) { - concurrent = Infinity; + var Type = require_type(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var _toString = Object.prototype.toString; + function resolveYamlOmap(data) { + if (data === null) + return true; + var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data; + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + pairHasKey = false; + if (_toString.call(pair) !== "[object Object]") + return false; + for (pairKey in pair) { + if (_hasOwnProperty.call(pair, pairKey)) { + if (!pairHasKey) + pairHasKey = true; + else + return false; + } + } + if (!pairHasKey) + return false; + if (objectKeys.indexOf(pairKey) === -1) + objectKeys.push(pairKey); + else + return false; } - return mergeMap_1.mergeMap(identity_1.identity, concurrent); + return true; } - exports2.mergeAll = mergeAll; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js -var require_concatAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concatAll = void 0; - var mergeAll_1 = require_mergeAll(); - function concatAll() { - return mergeAll_1.mergeAll(1); + function constructYamlOmap(data) { + return data !== null ? data : []; } - exports2.concatAll = concatAll; + module2.exports = new Type("tag:yaml.org,2002:omap", { + kind: "sequence", + resolve: resolveYamlOmap, + construct: constructYamlOmap + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/concat.js -var require_concat = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/concat.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/pairs.js +var require_pairs = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/pairs.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concat = void 0; - var concatAll_1 = require_concatAll(); - var fromArray_1 = require_fromArray(); - var args_1 = require_args(); - function concat() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + var Type = require_type(); + var _toString = Object.prototype.toString; + function resolveYamlPairs(data) { + if (data === null) + return true; + var index, length, pair, keys, result2, object = data; + result2 = new Array(object.length); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + if (_toString.call(pair) !== "[object Object]") + return false; + keys = Object.keys(pair); + if (keys.length !== 1) + return false; + result2[index] = [keys[0], pair[keys[0]]]; } - return concatAll_1.concatAll()(fromArray_1.internalFromArray(args2, args_1.popScheduler(args2))); + return true; } - exports2.concat = concat; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/defer.js -var require_defer = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/defer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defer = void 0; - var Observable_1 = require_Observable(); - var from_1 = require_from2(); - function defer(observableFactory) { - return new Observable_1.Observable(function(subscriber) { - from_1.innerFrom(observableFactory()).subscribe(subscriber); - }); + function constructYamlPairs(data) { + if (data === null) + return []; + var index, length, pair, keys, result2, object = data; + result2 = new Array(object.length); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + keys = Object.keys(pair); + result2[index] = [keys[0], pair[keys[0]]]; + } + return result2; } - exports2.defer = defer; + module2.exports = new Type("tag:yaml.org,2002:pairs", { + kind: "sequence", + resolve: resolveYamlPairs, + construct: constructYamlPairs + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/connectable.js -var require_connectable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/connectable.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/set.js +var require_set = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/type/set.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.connectable = void 0; - var Subject_1 = require_Subject(); - var Observable_1 = require_Observable(); - var defer_1 = require_defer(); - var DEFAULT_CONFIG = { - connector: function() { - return new Subject_1.Subject(); - }, - resetOnDisconnect: true - }; - function connectable(source, config) { - if (config === void 0) { - config = DEFAULT_CONFIG; - } - var connection = null; - var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a; - var subject = connector(); - var result = new Observable_1.Observable(function(subscriber) { - return subject.subscribe(subscriber); - }); - result.connect = function() { - if (!connection || connection.closed) { - connection = defer_1.defer(function() { - return source; - }).subscribe(subject); - if (resetOnDisconnect) { - connection.add(function() { - return subject = connector(); - }); - } + var Type = require_type(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + function resolveYamlSet(data) { + if (data === null) + return true; + var key, object = data; + for (key in object) { + if (_hasOwnProperty.call(object, key)) { + if (object[key] !== null) + return false; } - return connection; - }; - return result; + } + return true; } - exports2.connectable = connectable; + function constructYamlSet(data) { + return data !== null ? data : {}; + } + module2.exports = new Type("tag:yaml.org,2002:set", { + kind: "mapping", + resolve: resolveYamlSet, + construct: constructYamlSet + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js -var require_forkJoin = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/default.js +var require_default = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/schema/default.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.forkJoin = void 0; - var Observable_1 = require_Observable(); - var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); - var from_1 = require_from2(); - var args_1 = require_args(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var createObject_1 = require_createObject(); - function forkJoin() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - var resultSelector = args_1.popResultSelector(args2); - var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args2), sources = _a.args, keys = _a.keys; - var result = new Observable_1.Observable(function(subscriber) { - var length = sources.length; - if (!length) { - subscriber.complete(); - return; - } - var values = new Array(length); - var remainingCompletions = length; - var remainingEmissions = length; - var _loop_1 = function(sourceIndex2) { - var hasValue = false; - from_1.innerFrom(sources[sourceIndex2]).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (!hasValue) { - hasValue = true; - remainingEmissions--; - } - values[sourceIndex2] = value; - }, function() { - if (!--remainingCompletions || !hasValue) { - if (!remainingEmissions) { - subscriber.next(keys ? createObject_1.createObject(keys, values) : values); - } - subscriber.complete(); - } - })); - }; - for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) { - _loop_1(sourceIndex); - } - }); - return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; - } - exports2.forkJoin = forkJoin; + module2.exports = require_core2().extend({ + implicit: [ + require_timestamp(), + require_merge() + ], + explicit: [ + require_binary(), + require_omap(), + require_pairs(), + require_set() + ] + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js -var require_fromEvent = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/loader.js +var require_loader = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/loader.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + var common = require_common2(); + var YAMLException = require_exception(); + var makeSnippet = require_snippet2(); + var DEFAULT_SCHEMA = require_default(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var CONTEXT_FLOW_IN = 1; + var CONTEXT_FLOW_OUT = 2; + var CONTEXT_BLOCK_IN = 3; + var CONTEXT_BLOCK_OUT = 4; + var CHOMPING_CLIP = 1; + var CHOMPING_STRIP = 2; + var CHOMPING_KEEP = 3; + var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; + var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; + var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; + var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; + var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; + function _class(obj) { + return Object.prototype.toString.call(obj); + } + function is_EOL(c) { + return c === 10 || c === 13; + } + function is_WHITE_SPACE(c) { + return c === 9 || c === 32; + } + function is_WS_OR_EOL(c) { + return c === 9 || c === 32 || c === 10 || c === 13; + } + function is_FLOW_INDICATOR(c) { + return c === 44 || c === 91 || c === 93 || c === 123 || c === 125; + } + function fromHexCode(c) { + var lc; + if (48 <= c && c <= 57) { + return c - 48; } - return ar; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromEvent = void 0; - var Observable_1 = require_Observable(); - var mergeMap_1 = require_mergeMap(); - var isArrayLike_1 = require_isArrayLike(); - var isFunction_1 = require_isFunction(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var fromArray_1 = require_fromArray(); - var nodeEventEmitterMethods = ["addListener", "removeListener"]; - var eventTargetMethods = ["addEventListener", "removeEventListener"]; - var jqueryMethods = ["on", "off"]; - function fromEvent(target, eventName, options, resultSelector) { - if (isFunction_1.isFunction(options)) { - resultSelector = options; - options = void 0; + lc = c | 32; + if (97 <= lc && lc <= 102) { + return lc - 97 + 10; } - if (resultSelector) { - return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + return -1; + } + function escapedHexLen(c) { + if (c === 120) { + return 2; } - var _a = __read(isEventTarget(target) ? eventTargetMethods.map(function(methodName) { - return function(handler) { - return target[methodName](eventName, handler, options); - }; - }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add = _a[0], remove = _a[1]; - if (!add) { - if (isArrayLike_1.isArrayLike(target)) { - return mergeMap_1.mergeMap(function(subTarget) { - return fromEvent(subTarget, eventName, options); - })(fromArray_1.internalFromArray(target)); - } + if (c === 117) { + return 4; } - if (!add) { - throw new TypeError("Invalid event target"); + if (c === 85) { + return 8; } - return new Observable_1.Observable(function(subscriber) { - var handler = function() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; - } - return subscriber.next(1 < args2.length ? args2 : args2[0]); - }; - add(handler); - return function() { - return remove(handler); - }; - }); - } - exports2.fromEvent = fromEvent; - function toCommonHandlerRegistry(target, eventName) { - return function(methodName) { - return function(handler) { - return target[methodName](eventName, handler); - }; - }; + return 0; } - function isNodeStyleEventEmitter(target) { - return isFunction_1.isFunction(target.addListener) && isFunction_1.isFunction(target.removeListener); + function fromDecimalCode(c) { + if (48 <= c && c <= 57) { + return c - 48; + } + return -1; } - function isJQueryStyleEventEmitter(target) { - return isFunction_1.isFunction(target.on) && isFunction_1.isFunction(target.off); + function simpleEscapeSequence(c) { + return c === 48 ? "\0" : c === 97 ? "\x07" : c === 98 ? "\b" : c === 116 ? " " : c === 9 ? " " : c === 110 ? "\n" : c === 118 ? "\v" : c === 102 ? "\f" : c === 114 ? "\r" : c === 101 ? "\x1B" : c === 32 ? " " : c === 34 ? '"' : c === 47 ? "/" : c === 92 ? "\\" : c === 78 ? "\x85" : c === 95 ? "\xA0" : c === 76 ? "\u2028" : c === 80 ? "\u2029" : ""; } - function isEventTarget(target) { - return isFunction_1.isFunction(target.addEventListener) && isFunction_1.isFunction(target.removeEventListener); + function charFromCodepoint(c) { + if (c <= 65535) { + return String.fromCharCode(c); + } + return String.fromCharCode( + (c - 65536 >> 10) + 55296, + (c - 65536 & 1023) + 56320 + ); } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js -var require_fromEventPattern = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromEventPattern = void 0; - var Observable_1 = require_Observable(); - var isFunction_1 = require_isFunction(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - function fromEventPattern(addHandler, removeHandler, resultSelector) { - if (resultSelector) { - return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + var simpleEscapeCheck = new Array(256); + var simpleEscapeMap = new Array(256); + for (i = 0; i < 256; i++) { + simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; + simpleEscapeMap[i] = simpleEscapeSequence(i); + } + var i; + function State(input, options) { + this.input = input; + this.filename = options["filename"] || null; + this.schema = options["schema"] || DEFAULT_SCHEMA; + this.onWarning = options["onWarning"] || null; + this.legacy = options["legacy"] || false; + this.json = options["json"] || false; + this.listener = options["listener"] || null; + this.implicitTypes = this.schema.compiledImplicit; + this.typeMap = this.schema.compiledTypeMap; + this.length = input.length; + this.position = 0; + this.line = 0; + this.lineStart = 0; + this.lineIndent = 0; + this.firstTabInLine = -1; + this.documents = []; + } + function generateError(state, message2) { + var mark = { + name: state.filename, + buffer: state.input.slice(0, -1), + // omit trailing \0 + position: state.position, + line: state.line, + column: state.position - state.lineStart + }; + mark.snippet = makeSnippet(mark); + return new YAMLException(message2, mark); + } + function throwError(state, message2) { + throw generateError(state, message2); + } + function throwWarning(state, message2) { + if (state.onWarning) { + state.onWarning.call(null, generateError(state, message2)); } - return new Observable_1.Observable(function(subscriber) { - var handler = function() { - var e = []; - for (var _i = 0; _i < arguments.length; _i++) { - e[_i] = arguments[_i]; - } - return subscriber.next(e.length === 1 ? e[0] : e); - }; - var retValue = addHandler(handler); - return isFunction_1.isFunction(removeHandler) ? function() { - return removeHandler(handler, retValue); - } : void 0; - }); } - exports2.fromEventPattern = fromEventPattern; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/generate.js -var require_generate = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/generate.js"(exports2) { - "use strict"; - var __generator = exports2 && exports2.__generator || function(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; + var directiveHandlers = { + YAML: function handleYamlDirective(state, name, args2) { + var match, major, minor; + if (state.version !== null) { + throwError(state, "duplication of %YAML directive"); + } + if (args2.length !== 1) { + throwError(state, "YAML directive accepts exactly one argument"); + } + match = /^([0-9]+)\.([0-9]+)$/.exec(args2[0]); + if (match === null) { + throwError(state, "ill-formed argument of the YAML directive"); + } + major = parseInt(match[1], 10); + minor = parseInt(match[2], 10); + if (major !== 1) { + throwError(state, "unacceptable YAML version of the document"); + } + state.version = args2[0]; + state.checkLineBreaks = minor < 2; + if (minor !== 1 && minor !== 2) { + throwWarning(state, "unsupported YAML version of the document"); + } + }, + TAG: function handleTagDirective(state, name, args2) { + var handle, prefix; + if (args2.length !== 2) { + throwError(state, "TAG directive accepts exactly two arguments"); + } + handle = args2[0]; + prefix = args2[1]; + if (!PATTERN_TAG_HANDLE.test(handle)) { + throwError(state, "ill-formed tag handle (first argument) of the TAG directive"); + } + if (_hasOwnProperty.call(state.tagMap, handle)) { + throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); + } + if (!PATTERN_TAG_URI.test(prefix)) { + throwError(state, "ill-formed tag prefix (second argument) of the TAG directive"); + } + try { + prefix = decodeURIComponent(prefix); + } catch (err) { + throwError(state, "tag prefix is malformed: " + prefix); + } + state.tagMap[handle] = prefix; } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; + }; + function captureSegment(state, start, end, checkJson) { + var _position, _length, _character, _result; + if (start < end) { + _result = state.input.slice(start, end); + if (checkJson) { + for (_position = 0, _length = _result.length; _position < _length; _position += 1) { + _character = _result.charCodeAt(_position); + if (!(_character === 9 || 32 <= _character && _character <= 1114111)) { + throwError(state, "expected valid JSON character"); } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; + } else if (PATTERN_NON_PRINTABLE.test(_result)) { + throwError(state, "the stream contains non-printable characters"); + } + state.result += _result; } - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.generate = void 0; - var identity_1 = require_identity(); - var isScheduler_1 = require_isScheduler(); - var defer_1 = require_defer(); - var scheduleIterable_1 = require_scheduleIterable(); - function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) { - var _a, _b; - var resultSelector; - var initialState; - if (arguments.length === 1) { - _a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler = _a.scheduler; - } else { - initialState = initialStateOrOptions; - if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) { - resultSelector = identity_1.identity; - scheduler = resultSelectorOrScheduler; - } else { - resultSelector = resultSelectorOrScheduler; + } + function mergeMappings(state, destination, source, overridableKeys) { + var sourceKeys, key, index, quantity; + if (!common.isObject(source)) { + throwError(state, "cannot merge mappings; the provided source object is unacceptable"); + } + sourceKeys = Object.keys(source); + for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { + key = sourceKeys[index]; + if (!_hasOwnProperty.call(destination, key)) { + destination[key] = source[key]; + overridableKeys[key] = true; } } - function gen() { - var state; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - state = initialState; - _a2.label = 1; - case 1: - if (!(!condition || condition(state))) - return [3, 4]; - return [4, resultSelector(state)]; - case 2: - _a2.sent(); - _a2.label = 3; - case 3: - state = iterate(state); - return [3, 1]; - case 4: - return [2]; + } + function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startLineStart, startPos) { + var index, quantity; + if (Array.isArray(keyNode)) { + keyNode = Array.prototype.slice.call(keyNode); + for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { + if (Array.isArray(keyNode[index])) { + throwError(state, "nested arrays are not supported inside keys"); } - }); + if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") { + keyNode[index] = "[object Object]"; + } + } } - return defer_1.defer(scheduler ? function() { - return scheduleIterable_1.scheduleIterable(gen(), scheduler); - } : gen); - } - exports2.generate = generate; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/iif.js -var require_iif = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/iif.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.iif = void 0; - var defer_1 = require_defer(); - function iif(condition, trueResult, falseResult) { - return defer_1.defer(function() { - return condition() ? trueResult : falseResult; - }); - } - exports2.iif = iif; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/timer.js -var require_timer2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/timer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.timer = void 0; - var Observable_1 = require_Observable(); - var async_1 = require_async(); - var isScheduler_1 = require_isScheduler(); - var isDate_1 = require_isDate(); - function timer(dueTime, intervalOrScheduler, scheduler) { - if (dueTime === void 0) { - dueTime = 0; + if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") { + keyNode = "[object Object]"; } - if (scheduler === void 0) { - scheduler = async_1.async; + keyNode = String(keyNode); + if (_result === null) { + _result = {}; } - var intervalDuration = -1; - if (intervalOrScheduler != null) { - if (isScheduler_1.isScheduler(intervalOrScheduler)) { - scheduler = intervalOrScheduler; + if (keyTag === "tag:yaml.org,2002:merge") { + if (Array.isArray(valueNode)) { + for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { + mergeMappings(state, _result, valueNode[index], overridableKeys); + } } else { - intervalDuration = intervalOrScheduler; + mergeMappings(state, _result, valueNode, overridableKeys); } - } - return new Observable_1.Observable(function(subscriber) { - var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime; - if (due < 0) { - due = 0; + } else { + if (!state.json && !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { + state.line = startLine || state.line; + state.lineStart = startLineStart || state.lineStart; + state.position = startPos || state.position; + throwError(state, "duplicated mapping key"); } - var n = 0; - return scheduler.schedule(function() { - if (!subscriber.closed) { - subscriber.next(n++); - if (0 <= intervalDuration) { - this.schedule(void 0, intervalDuration); - } else { - subscriber.complete(); - } - } - }, due); - }); + if (keyNode === "__proto__") { + Object.defineProperty(_result, keyNode, { + configurable: true, + enumerable: true, + writable: true, + value: valueNode + }); + } else { + _result[keyNode] = valueNode; + } + delete overridableKeys[keyNode]; + } + return _result; } - exports2.timer = timer; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/interval.js -var require_interval = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/interval.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.interval = void 0; - var async_1 = require_async(); - var timer_1 = require_timer2(); - function interval(period, scheduler) { - if (period === void 0) { - period = 0; + function readLineBreak(state) { + var ch; + ch = state.input.charCodeAt(state.position); + if (ch === 10) { + state.position++; + } else if (ch === 13) { + state.position++; + if (state.input.charCodeAt(state.position) === 10) { + state.position++; + } + } else { + throwError(state, "a line break is expected"); } - if (scheduler === void 0) { - scheduler = async_1.asyncScheduler; + state.line += 1; + state.lineStart = state.position; + state.firstTabInLine = -1; + } + function skipSeparationSpace(state, allowComments, checkIndent) { + var lineBreaks = 0, ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + if (ch === 9 && state.firstTabInLine === -1) { + state.firstTabInLine = state.position; + } + ch = state.input.charCodeAt(++state.position); + } + if (allowComments && ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 10 && ch !== 13 && ch !== 0); + } + if (is_EOL(ch)) { + readLineBreak(state); + ch = state.input.charCodeAt(state.position); + lineBreaks++; + state.lineIndent = 0; + while (ch === 32) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); + } + } else { + break; + } } - if (period < 0) { - period = 0; + if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { + throwWarning(state, "deficient indentation"); } - return timer_1.timer(period, period, scheduler); + return lineBreaks; } - exports2.interval = interval; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/merge.js -var require_merge = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/merge.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.merge = void 0; - var mergeAll_1 = require_mergeAll(); - var fromArray_1 = require_fromArray(); - var from_1 = require_from2(); - var empty_1 = require_empty(); - var args_1 = require_args(); - function merge() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + function testDocumentSeparator(state) { + var _position = state.position, ch; + ch = state.input.charCodeAt(_position); + if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) { + _position += 3; + ch = state.input.charCodeAt(_position); + if (ch === 0 || is_WS_OR_EOL(ch)) { + return true; + } } - var scheduler = args_1.popScheduler(args2); - var concurrent = args_1.popNumber(args2, Infinity); - var sources = args2; - return !sources.length ? empty_1.EMPTY : sources.length === 1 ? from_1.innerFrom(sources[0]) : mergeAll_1.mergeAll(concurrent)(fromArray_1.internalFromArray(sources, scheduler)); - } - exports2.merge = merge; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/never.js -var require_never = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/never.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.never = exports2.NEVER = void 0; - var Observable_1 = require_Observable(); - var noop_1 = require_noop(); - exports2.NEVER = new Observable_1.Observable(noop_1.noop); - function never() { - return exports2.NEVER; + return false; } - exports2.never = never; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js -var require_argsOrArgArray = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.argsOrArgArray = void 0; - var isArray = Array.isArray; - function argsOrArgArray(args2) { - return args2.length === 1 && isArray(args2[0]) ? args2[0] : args2; + function writeFoldedLines(state, count) { + if (count === 1) { + state.result += " "; + } else if (count > 1) { + state.result += common.repeat("\n", count - 1); + } } - exports2.argsOrArgArray = argsOrArgArray; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNext.js -var require_onErrorResumeNext = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNext.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + function readPlainScalar(state, nodeIndent, withinFlowCollection) { + var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch; + ch = state.input.charCodeAt(state.position); + if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) { + return false; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.onErrorResumeNext = void 0; - var lift_1 = require_lift(); - var from_1 = require_from2(); - var argsOrArgArray_1 = require_argsOrArgArray(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - function onErrorResumeNext() { - var sources = []; - for (var _i = 0; _i < arguments.length; _i++) { - sources[_i] = arguments[_i]; + if (ch === 63 || ch === 45) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { + return false; + } } - var nextSources = argsOrArgArray_1.argsOrArgArray(sources); - return lift_1.operate(function(source, subscriber) { - var remaining = __spreadArray([source], __read(nextSources)); - var subscribeNext = function() { - if (!subscriber.closed) { - if (remaining.length > 0) { - var nextSource = void 0; - try { - nextSource = from_1.innerFrom(remaining.shift()); - } catch (err) { - subscribeNext(); - return; - } - var innerSub = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, noop_1.noop, noop_1.noop); - subscriber.add(nextSource.subscribe(innerSub)); - innerSub.add(subscribeNext); - } else { - subscriber.complete(); - } + state.kind = "scalar"; + state.result = ""; + captureStart = captureEnd = state.position; + hasPendingContent = false; + while (ch !== 0) { + if (ch === 58) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { + break; } - }; - subscribeNext(); - }); - } - exports2.onErrorResumeNext = onErrorResumeNext; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js -var require_onErrorResumeNext2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.onErrorResumeNext = void 0; - var empty_1 = require_empty(); - var onErrorResumeNext_1 = require_onErrorResumeNext(); - var argsOrArgArray_1 = require_argsOrArgArray(); - function onErrorResumeNext() { - var sources = []; - for (var _i = 0; _i < arguments.length; _i++) { - sources[_i] = arguments[_i]; + } else if (ch === 35) { + preceding = state.input.charCodeAt(state.position - 1); + if (is_WS_OR_EOL(preceding)) { + break; + } + } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) { + break; + } else if (is_EOL(ch)) { + _line = state.line; + _lineStart = state.lineStart; + _lineIndent = state.lineIndent; + skipSeparationSpace(state, false, -1); + if (state.lineIndent >= nodeIndent) { + hasPendingContent = true; + ch = state.input.charCodeAt(state.position); + continue; + } else { + state.position = captureEnd; + state.line = _line; + state.lineStart = _lineStart; + state.lineIndent = _lineIndent; + break; + } + } + if (hasPendingContent) { + captureSegment(state, captureStart, captureEnd, false); + writeFoldedLines(state, state.line - _line); + captureStart = captureEnd = state.position; + hasPendingContent = false; + } + if (!is_WHITE_SPACE(ch)) { + captureEnd = state.position + 1; + } + ch = state.input.charCodeAt(++state.position); } - return onErrorResumeNext_1.onErrorResumeNext(argsOrArgArray_1.argsOrArgArray(sources))(empty_1.EMPTY); - } - exports2.onErrorResumeNext = onErrorResumeNext; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/pairs.js -var require_pairs = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/pairs.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.pairs = void 0; - var from_1 = require_from2(); - function pairs(obj, scheduler) { - return from_1.from(Object.entries(obj), scheduler); - } - exports2.pairs = pairs; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/not.js -var require_not = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/util/not.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.not = void 0; - function not(pred, thisArg) { - return function(value, index) { - return !pred.call(thisArg, value, index); - }; - } - exports2.not = not; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/filter.js -var require_filter = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/filter.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.filter = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function filter(predicate, thisArg) { - return lift_1.operate(function(source, subscriber) { - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return predicate.call(thisArg, value, index++) && subscriber.next(value); - })); - }); - } - exports2.filter = filter; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/partition.js -var require_partition = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/partition.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.partition = void 0; - var not_1 = require_not(); - var filter_1 = require_filter(); - var from_1 = require_from2(); - function partition(source, predicate, thisArg) { - return [filter_1.filter(predicate, thisArg)(from_1.innerFrom(source)), filter_1.filter(not_1.not(predicate, thisArg))(from_1.innerFrom(source))]; + captureSegment(state, captureStart, captureEnd, false); + if (state.result) { + return true; + } + state.kind = _kind; + state.result = _result; + return false; } - exports2.partition = partition; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/race.js -var require_race = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/race.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.raceInit = exports2.race = void 0; - var Observable_1 = require_Observable(); - var from_1 = require_from2(); - var argsOrArgArray_1 = require_argsOrArgArray(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function race() { - var sources = []; - for (var _i = 0; _i < arguments.length; _i++) { - sources[_i] = arguments[_i]; + function readSingleQuotedScalar(state, nodeIndent) { + var ch, captureStart, captureEnd; + ch = state.input.charCodeAt(state.position); + if (ch !== 39) { + return false; } - sources = argsOrArgArray_1.argsOrArgArray(sources); - return sources.length === 1 ? from_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources)); + state.kind = "scalar"; + state.result = ""; + state.position++; + captureStart = captureEnd = state.position; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 39) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); + if (ch === 39) { + captureStart = state.position; + state.position++; + captureEnd = state.position; + } else { + return true; + } + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, "unexpected end of the document within a single quoted scalar"); + } else { + state.position++; + captureEnd = state.position; + } + } + throwError(state, "unexpected end of the stream within a single quoted scalar"); } - exports2.race = race; - function raceInit(sources) { - return function(subscriber) { - var subscriptions = []; - var _loop_1 = function(i2) { - subscriptions.push(from_1.innerFrom(sources[i2]).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (subscriptions) { - for (var s = 0; s < subscriptions.length; s++) { - s !== i2 && subscriptions[s].unsubscribe(); + function readDoubleQuotedScalar(state, nodeIndent) { + var captureStart, captureEnd, hexLength, hexResult, tmp, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 34) { + return false; + } + state.kind = "scalar"; + state.result = ""; + state.position++; + captureStart = captureEnd = state.position; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 34) { + captureSegment(state, captureStart, state.position, true); + state.position++; + return true; + } else if (ch === 92) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); + if (is_EOL(ch)) { + skipSeparationSpace(state, false, nodeIndent); + } else if (ch < 256 && simpleEscapeCheck[ch]) { + state.result += simpleEscapeMap[ch]; + state.position++; + } else if ((tmp = escapedHexLen(ch)) > 0) { + hexLength = tmp; + hexResult = 0; + for (; hexLength > 0; hexLength--) { + ch = state.input.charCodeAt(++state.position); + if ((tmp = fromHexCode(ch)) >= 0) { + hexResult = (hexResult << 4) + tmp; + } else { + throwError(state, "expected hexadecimal character"); } - subscriptions = null; } - subscriber.next(value); - }))); - }; - for (var i = 0; subscriptions && !subscriber.closed && i < sources.length; i++) { - _loop_1(i); + state.result += charFromCodepoint(hexResult); + state.position++; + } else { + throwError(state, "unknown escape sequence"); + } + captureStart = captureEnd = state.position; + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, "unexpected end of the document within a double quoted scalar"); + } else { + state.position++; + captureEnd = state.position; } - }; + } + throwError(state, "unexpected end of the stream within a double quoted scalar"); } - exports2.raceInit = raceInit; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/range.js -var require_range = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/range.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.range = void 0; - var Observable_1 = require_Observable(); - var empty_1 = require_empty(); - function range(start, count, scheduler) { - if (count == null) { - count = start; - start = 0; + function readFlowCollection(state, nodeIndent) { + var readNext = true, _line, _lineStart, _pos, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = /* @__PURE__ */ Object.create(null), keyNode, keyTag, valueNode, ch; + ch = state.input.charCodeAt(state.position); + if (ch === 91) { + terminator = 93; + isMapping = false; + _result = []; + } else if (ch === 123) { + terminator = 125; + isMapping = true; + _result = {}; + } else { + return false; } - if (count <= 0) { - return empty_1.EMPTY; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - var end = count + start; - return new Observable_1.Observable(scheduler ? function(subscriber) { - var n = start; - return scheduler.schedule(function() { - if (n < end) { - subscriber.next(n++); - this.schedule(); - } else { - subscriber.complete(); + ch = state.input.charCodeAt(++state.position); + while (ch !== 0) { + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if (ch === terminator) { + state.position++; + state.tag = _tag; + state.anchor = _anchor; + state.kind = isMapping ? "mapping" : "sequence"; + state.result = _result; + return true; + } else if (!readNext) { + throwError(state, "missed comma between flow collection entries"); + } else if (ch === 44) { + throwError(state, "expected the node content, but found ','"); + } + keyTag = keyNode = valueNode = null; + isPair = isExplicitPair = false; + if (ch === 63) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following)) { + isPair = isExplicitPair = true; + state.position++; + skipSeparationSpace(state, true, nodeIndent); } - }); - } : function(subscriber) { - var n = start; - while (n < end && !subscriber.closed) { - subscriber.next(n++); } - subscriber.complete(); - }); + _line = state.line; + _lineStart = state.lineStart; + _pos = state.position; + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + keyTag = state.tag; + keyNode = state.result; + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if ((isExplicitPair || state.line === _line) && ch === 58) { + isPair = true; + ch = state.input.charCodeAt(++state.position); + skipSeparationSpace(state, true, nodeIndent); + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + valueNode = state.result; + } + if (isMapping) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos); + } else if (isPair) { + _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos)); + } else { + _result.push(keyNode); + } + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if (ch === 44) { + readNext = true; + ch = state.input.charCodeAt(++state.position); + } else { + readNext = false; + } + } + throwError(state, "unexpected end of the stream within a flow collection"); } - exports2.range = range; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/using.js -var require_using = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/using.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.using = void 0; - var Observable_1 = require_Observable(); - var from_1 = require_from2(); - var empty_1 = require_empty(); - function using(resourceFactory, observableFactory) { - return new Observable_1.Observable(function(subscriber) { - var resource = resourceFactory(); - var result = observableFactory(resource); - var source = result ? from_1.innerFrom(result) : empty_1.EMPTY; - source.subscribe(subscriber); - return function() { - if (resource) { - resource.unsubscribe(); + function readBlockScalar(state, nodeIndent) { + var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch; + ch = state.input.charCodeAt(state.position); + if (ch === 124) { + folding = false; + } else if (ch === 62) { + folding = true; + } else { + return false; + } + state.kind = "scalar"; + state.result = ""; + while (ch !== 0) { + ch = state.input.charCodeAt(++state.position); + if (ch === 43 || ch === 45) { + if (CHOMPING_CLIP === chomping) { + chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP; + } else { + throwError(state, "repeat of a chomping mode identifier"); } - }; - }); - } - exports2.using = using; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/zip.js -var require_zip = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/zip.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + } else if ((tmp = fromDecimalCode(ch)) >= 0) { + if (tmp === 0) { + throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one"); + } else if (!detectedIndent) { + textIndent = nodeIndent + tmp - 1; + detectedIndent = true; + } else { + throwError(state, "repeat of an indentation width identifier"); + } + } else { + break; } } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.zip = void 0; - var Observable_1 = require_Observable(); - var from_1 = require_from2(); - var argsOrArgArray_1 = require_argsOrArgArray(); - var empty_1 = require_empty(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var args_1 = require_args(); - function zip() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + if (is_WHITE_SPACE(ch)) { + do { + ch = state.input.charCodeAt(++state.position); + } while (is_WHITE_SPACE(ch)); + if (ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (!is_EOL(ch) && ch !== 0); + } } - var resultSelector = args_1.popResultSelector(args2); - var sources = argsOrArgArray_1.argsOrArgArray(args2); - return sources.length ? new Observable_1.Observable(function(subscriber) { - var buffers = sources.map(function() { - return []; - }); - var completed = sources.map(function() { - return false; - }); - subscriber.add(function() { - buffers = completed = null; - }); - var _loop_1 = function(sourceIndex2) { - from_1.innerFrom(sources[sourceIndex2]).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - buffers[sourceIndex2].push(value); - if (buffers.every(function(buffer) { - return buffer.length; - })) { - var result = buffers.map(function(buffer) { - return buffer.shift(); - }); - subscriber.next(resultSelector ? resultSelector.apply(void 0, __spreadArray([], __read(result))) : result); - if (buffers.some(function(buffer, i) { - return !buffer.length && completed[i]; - })) { - subscriber.complete(); - } - } - }, function() { - completed[sourceIndex2] = true; - !buffers[sourceIndex2].length && subscriber.complete(); - })); - }; - for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) { - _loop_1(sourceIndex); + while (ch !== 0) { + readLineBreak(state); + state.lineIndent = 0; + ch = state.input.charCodeAt(state.position); + while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); } - return function() { - buffers = completed = null; - }; - }) : empty_1.EMPTY; - } - exports2.zip = zip; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/types.js -var require_types3 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/audit.js -var require_audit = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/audit.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.audit = void 0; - var lift_1 = require_lift(); - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function audit(durationSelector) { - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - var lastValue = null; - var durationSubscriber = null; - var isComplete = false; - var endDuration = function() { - durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); - durationSubscriber = null; - if (hasValue) { - hasValue = false; - var value = lastValue; - lastValue = null; - subscriber.next(value); + if (!detectedIndent && state.lineIndent > textIndent) { + textIndent = state.lineIndent; + } + if (is_EOL(ch)) { + emptyLines++; + continue; + } + if (state.lineIndent < textIndent) { + if (chomping === CHOMPING_KEEP) { + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } else if (chomping === CHOMPING_CLIP) { + if (didReadContent) { + state.result += "\n"; + } } - isComplete && subscriber.complete(); - }; - var cleanupDuration = function() { - durationSubscriber = null; - isComplete && subscriber.complete(); - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - hasValue = true; - lastValue = value; - if (!durationSubscriber) { - from_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, endDuration, cleanupDuration)); + break; + } + if (folding) { + if (is_WHITE_SPACE(ch)) { + atMoreIndented = true; + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } else if (atMoreIndented) { + atMoreIndented = false; + state.result += common.repeat("\n", emptyLines + 1); + } else if (emptyLines === 0) { + if (didReadContent) { + state.result += " "; + } + } else { + state.result += common.repeat("\n", emptyLines); } - }, function() { - isComplete = true; - (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete(); - })); - }); - } - exports2.audit = audit; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js -var require_auditTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.auditTime = void 0; - var async_1 = require_async(); - var audit_1 = require_audit(); - var timer_1 = require_timer2(); - function auditTime(duration, scheduler) { - if (scheduler === void 0) { - scheduler = async_1.async; + } else { + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } + didReadContent = true; + detectedIndent = true; + emptyLines = 0; + captureStart = state.position; + while (!is_EOL(ch) && ch !== 0) { + ch = state.input.charCodeAt(++state.position); + } + captureSegment(state, captureStart, state.position, false); } - return audit_1.audit(function() { - return timer_1.timer(duration, scheduler); - }); - } - exports2.auditTime = auditTime; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/buffer.js -var require_buffer = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/buffer.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.buffer = void 0; - var lift_1 = require_lift(); - var noop_1 = require_noop(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function buffer(closingNotifier) { - return lift_1.operate(function(source, subscriber) { - var currentBuffer = []; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return currentBuffer.push(value); - }, function() { - subscriber.next(currentBuffer); - subscriber.complete(); - })); - closingNotifier.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - var b = currentBuffer; - currentBuffer = []; - subscriber.next(b); - }, noop_1.noop)); - return function() { - currentBuffer = null; - }; - }); + return true; } - exports2.buffer = buffer; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js -var require_bufferCount = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js"(exports2) { - "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bufferCount = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var arrRemove_1 = require_arrRemove(); - function bufferCount(bufferSize, startBufferEvery) { - if (startBufferEvery === void 0) { - startBufferEvery = null; + function readBlockSequence(state, nodeIndent) { + var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch; + if (state.firstTabInLine !== -1) + return false; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize; - return lift_1.operate(function(source, subscriber) { - var buffers = []; - var count = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var e_1, _a, e_2, _b; - var toEmit = null; - if (count++ % startBufferEvery === 0) { - buffers.push([]); + ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + if (state.firstTabInLine !== -1) { + state.position = state.firstTabInLine; + throwError(state, "tab characters must not be used in indentation"); + } + if (ch !== 45) { + break; + } + following = state.input.charCodeAt(state.position + 1); + if (!is_WS_OR_EOL(following)) { + break; + } + detected = true; + state.position++; + if (skipSeparationSpace(state, true, -1)) { + if (state.lineIndent <= nodeIndent) { + _result.push(null); + ch = state.input.charCodeAt(state.position); + continue; } - try { - for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { - var buffer = buffers_1_1.value; - buffer.push(value); - if (bufferSize <= buffer.length) { - toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : []; - toEmit.push(buffer); - } - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) - _a.call(buffers_1); - } finally { - if (e_1) - throw e_1.error; + } + _line = state.line; + composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); + _result.push(state.result); + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { + throwError(state, "bad indentation of a sequence entry"); + } else if (state.lineIndent < nodeIndent) { + break; + } + } + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = "sequence"; + state.result = _result; + return true; + } + return false; + } + function readBlockMapping(state, nodeIndent, flowIndent) { + var following, allowCompact, _line, _keyLine, _keyLineStart, _keyPos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = /* @__PURE__ */ Object.create(null), keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch; + if (state.firstTabInLine !== -1) + return false; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; + } + ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + if (!atExplicitKey && state.firstTabInLine !== -1) { + state.position = state.firstTabInLine; + throwError(state, "tab characters must not be used in indentation"); + } + following = state.input.charCodeAt(state.position + 1); + _line = state.line; + if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) { + if (ch === 63) { + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; } + detected = true; + atExplicitKey = true; + allowCompact = true; + } else if (atExplicitKey) { + atExplicitKey = false; + allowCompact = true; + } else { + throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"); } - if (toEmit) { - try { - for (var toEmit_1 = __values(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) { - var buffer = toEmit_1_1.value; - arrRemove_1.arrRemove(buffers, buffer); - subscriber.next(buffer); + state.position += 1; + ch = following; + } else { + _keyLine = state.line; + _keyLineStart = state.lineStart; + _keyPos = state.position; + if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { + break; + } + if (state.line === _line) { + ch = state.input.charCodeAt(state.position); + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (ch === 58) { + ch = state.input.charCodeAt(++state.position); + if (!is_WS_OR_EOL(ch)) { + throwError(state, "a whitespace character is expected after the key-value separator within a block mapping"); } - } catch (e_2_1) { - e_2 = { error: e_2_1 }; - } finally { - try { - if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) - _b.call(toEmit_1); - } finally { - if (e_2) - throw e_2.error; + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; } + detected = true; + atExplicitKey = false; + allowCompact = false; + keyTag = state.tag; + keyNode = state.result; + } else if (detected) { + throwError(state, "can not read an implicit mapping pair; a colon is missed"); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; } + } else if (detected) { + throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key"); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; } - }, function() { - var e_3, _a; - try { - for (var buffers_2 = __values(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) { - var buffer = buffers_2_1.value; - subscriber.next(buffer); + } + if (state.line === _line || state.lineIndent > nodeIndent) { + if (atExplicitKey) { + _keyLine = state.line; + _keyLineStart = state.lineStart; + _keyPos = state.position; + } + if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { + if (atExplicitKey) { + keyNode = state.result; + } else { + valueNode = state.result; } - } catch (e_3_1) { - e_3 = { error: e_3_1 }; - } finally { - try { - if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) - _a.call(buffers_2); - } finally { - if (e_3) - throw e_3.error; + } + if (!atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; + } + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + } + if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { + throwError(state, "bad indentation of a mapping entry"); + } else if (state.lineIndent < nodeIndent) { + break; + } + } + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + } + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = "mapping"; + state.result = _result; + } + return detected; + } + function readTagProperty(state) { + var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 33) + return false; + if (state.tag !== null) { + throwError(state, "duplication of a tag property"); + } + ch = state.input.charCodeAt(++state.position); + if (ch === 60) { + isVerbatim = true; + ch = state.input.charCodeAt(++state.position); + } else if (ch === 33) { + isNamed = true; + tagHandle = "!!"; + ch = state.input.charCodeAt(++state.position); + } else { + tagHandle = "!"; + } + _position = state.position; + if (isVerbatim) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 0 && ch !== 62); + if (state.position < state.length) { + tagName = state.input.slice(_position, state.position); + ch = state.input.charCodeAt(++state.position); + } else { + throwError(state, "unexpected end of the stream within a verbatim tag"); + } + } else { + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + if (ch === 33) { + if (!isNamed) { + tagHandle = state.input.slice(_position - 1, state.position + 1); + if (!PATTERN_TAG_HANDLE.test(tagHandle)) { + throwError(state, "named tag handle cannot contain such characters"); + } + isNamed = true; + _position = state.position + 1; + } else { + throwError(state, "tag suffix cannot contain exclamation marks"); } } - subscriber.complete(); - }, void 0, function() { - buffers = null; - })); - }); + ch = state.input.charCodeAt(++state.position); + } + tagName = state.input.slice(_position, state.position); + if (PATTERN_FLOW_INDICATORS.test(tagName)) { + throwError(state, "tag suffix cannot contain flow indicator characters"); + } + } + if (tagName && !PATTERN_TAG_URI.test(tagName)) { + throwError(state, "tag name cannot contain such characters: " + tagName); + } + try { + tagName = decodeURIComponent(tagName); + } catch (err) { + throwError(state, "tag name is malformed: " + tagName); + } + if (isVerbatim) { + state.tag = tagName; + } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { + state.tag = state.tagMap[tagHandle] + tagName; + } else if (tagHandle === "!") { + state.tag = "!" + tagName; + } else if (tagHandle === "!!") { + state.tag = "tag:yaml.org,2002:" + tagName; + } else { + throwError(state, 'undeclared tag handle "' + tagHandle + '"'); + } + return true; } - exports2.bufferCount = bufferCount; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js -var require_bufferTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js"(exports2) { - "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; + function readAnchorProperty(state) { + var _position, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 38) + return false; + if (state.anchor !== null) { + throwError(state, "duplication of an anchor property"); + } + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (state.position === _position) { + throwError(state, "name of an anchor node must contain at least one character"); + } + state.anchor = state.input.slice(_position, state.position); + return true; + } + function readAlias(state) { + var _position, alias, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 42) + return false; + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (state.position === _position) { + throwError(state, "name of an alias node must contain at least one character"); + } + alias = state.input.slice(_position, state.position); + if (!_hasOwnProperty.call(state.anchorMap, alias)) { + throwError(state, 'unidentified alias "' + alias + '"'); + } + state.result = state.anchorMap[alias]; + skipSeparationSpace(state, true, -1); + return true; + } + function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { + var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, typeList, type, flowIndent, blockIndent; + if (state.listener !== null) { + state.listener("open", state); + } + state.tag = null; + state.anchor = null; + state.kind = null; + state.result = null; + allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext; + if (allowToSeek) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bufferTime = void 0; - var Subscription_1 = require_Subscription(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var arrRemove_1 = require_arrRemove(); - var async_1 = require_async(); - var args_1 = require_args(); - function bufferTime(bufferTimeSpan) { - var _a, _b; - var otherArgs = []; - for (var _i = 1; _i < arguments.length; _i++) { - otherArgs[_i - 1] = arguments[_i]; + } } - var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; - var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; - var maxBufferSize = otherArgs[1] || Infinity; - return lift_1.operate(function(source, subscriber) { - var bufferRecords = []; - var restartOnEmit = false; - var emit = function(record) { - var buffer = record.buffer, subs = record.subs; - subs.unsubscribe(); - arrRemove_1.arrRemove(bufferRecords, record); - subscriber.next(buffer); - restartOnEmit && startBuffer(); - }; - var startBuffer = function() { - if (bufferRecords) { - var subs = new Subscription_1.Subscription(); - subscriber.add(subs); - var buffer = []; - var record_1 = { - buffer, - subs - }; - bufferRecords.push(record_1); - subs.add(scheduler.schedule(function() { - return emit(record_1); - }, bufferTimeSpan)); + if (indentStatus === 1) { + while (readTagProperty(state) || readAnchorProperty(state)) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; + allowBlockCollections = allowBlockStyles; + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; + } + } else { + allowBlockCollections = false; } - }; - bufferCreationInterval !== null && bufferCreationInterval >= 0 ? subscriber.add(scheduler.schedule(function() { - startBuffer(); - !this.closed && subscriber.add(this.schedule(null, bufferCreationInterval)); - }, bufferCreationInterval)) : restartOnEmit = true; - startBuffer(); - var bufferTimeSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var e_1, _a2; - var recordsCopy = bufferRecords.slice(); - try { - for (var recordsCopy_1 = __values(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) { - var record = recordsCopy_1_1.value; - var buffer = record.buffer; - buffer.push(value); - maxBufferSize <= buffer.length && emit(record); + } + } + if (allowBlockCollections) { + allowBlockCollections = atNewLine || allowCompact; + } + if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { + if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { + flowIndent = parentIndent; + } else { + flowIndent = parentIndent + 1; + } + blockIndent = state.position - state.lineStart; + if (indentStatus === 1) { + if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) { + hasContent = true; + } else { + if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) { + hasContent = true; + } else if (readAlias(state)) { + hasContent = true; + if (state.tag !== null || state.anchor !== null) { + throwError(state, "alias node should not have any properties"); + } + } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { + hasContent = true; + if (state.tag === null) { + state.tag = "?"; + } } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a2 = recordsCopy_1.return)) - _a2.call(recordsCopy_1); - } finally { - if (e_1) - throw e_1.error; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; } } - }, function() { - while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) { - subscriber.next(bufferRecords.shift().buffer); - } - bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe(); - subscriber.complete(); - subscriber.unsubscribe(); - }, void 0, function() { - return bufferRecords = null; - }); - source.subscribe(bufferTimeSubscriber); - }); - } - exports2.bufferTime = bufferTime; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js -var require_bufferToggle = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js"(exports2) { - "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bufferToggle = void 0; - var Subscription_1 = require_Subscription(); - var lift_1 = require_lift(); - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - var arrRemove_1 = require_arrRemove(); - function bufferToggle(openings, closingSelector) { - return lift_1.operate(function(source, subscriber) { - var buffers = []; - from_1.innerFrom(openings).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(openValue) { - var buffer = []; - buffers.push(buffer); - var closingSubscription = new Subscription_1.Subscription(); - var emitBuffer = function() { - arrRemove_1.arrRemove(buffers, buffer); - subscriber.next(buffer); - closingSubscription.unsubscribe(); - }; - closingSubscription.add(from_1.innerFrom(closingSelector(openValue)).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, emitBuffer, noop_1.noop))); - }, noop_1.noop)); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var e_1, _a; - try { - for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { - var buffer = buffers_1_1.value; - buffer.push(value); + } else if (indentStatus === 0) { + hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); + } + } + if (state.tag === null) { + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + } else if (state.tag === "?") { + if (state.result !== null && state.kind !== "scalar") { + throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + } + for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { + type = state.implicitTypes[typeIndex]; + if (type.resolve(state.result)) { + state.result = type.construct(state.result); + state.tag = type.tag; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) - _a.call(buffers_1); - } finally { - if (e_1) - throw e_1.error; + break; + } + } + } else if (state.tag !== "!") { + if (_hasOwnProperty.call(state.typeMap[state.kind || "fallback"], state.tag)) { + type = state.typeMap[state.kind || "fallback"][state.tag]; + } else { + type = null; + typeList = state.typeMap.multi[state.kind || "fallback"]; + for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) { + if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) { + type = typeList[typeIndex]; + break; } } - }, function() { - while (buffers.length > 0) { - subscriber.next(buffers.shift()); + } + if (!type) { + throwError(state, "unknown tag !<" + state.tag + ">"); + } + if (state.result !== null && type.kind !== state.kind) { + throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); + } + if (!type.resolve(state.result, state.tag)) { + throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag"); + } else { + state.result = type.construct(state.result, state.tag); + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; } - subscriber.complete(); - })); - }); - } - exports2.bufferToggle = bufferToggle; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js -var require_bufferWhen = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.bufferWhen = void 0; - var lift_1 = require_lift(); - var noop_1 = require_noop(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - function bufferWhen(closingSelector) { - return lift_1.operate(function(source, subscriber) { - var buffer = null; - var closingSubscriber = null; - var openBuffer = function() { - closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); - var b = buffer; - buffer = []; - b && subscriber.next(b); - from_1.innerFrom(closingSelector()).subscribe(closingSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, openBuffer, noop_1.noop)); - }; - openBuffer(); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return buffer === null || buffer === void 0 ? void 0 : buffer.push(value); - }, function() { - buffer && subscriber.next(buffer); - subscriber.complete(); - }, void 0, function() { - return buffer = closingSubscriber = null; - })); - }); + } + } + if (state.listener !== null) { + state.listener("close", state); + } + return state.tag !== null || state.anchor !== null || hasContent; } - exports2.bufferWhen = bufferWhen; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/catchError.js -var require_catchError = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/catchError.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.catchError = void 0; - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var lift_1 = require_lift(); - function catchError(selector) { - return lift_1.operate(function(source, subscriber) { - var innerSub = null; - var syncUnsub = false; - var handledResult; - innerSub = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, void 0, function(err) { - handledResult = from_1.innerFrom(selector(err, catchError(selector)(source))); - if (innerSub) { - innerSub.unsubscribe(); - innerSub = null; - handledResult.subscribe(subscriber); - } else { - syncUnsub = true; + function readDocument(state) { + var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch; + state.version = null; + state.checkLineBreaks = state.legacy; + state.tagMap = /* @__PURE__ */ Object.create(null); + state.anchorMap = /* @__PURE__ */ Object.create(null); + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + if (state.lineIndent > 0 || ch !== 37) { + break; + } + hasDirectives = true; + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } + directiveName = state.input.slice(_position, state.position); + directiveArgs = []; + if (directiveName.length < 1) { + throwError(state, "directive name must not be less than one character in length"); + } + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); } - })); - if (syncUnsub) { - innerSub.unsubscribe(); - innerSub = null; - handledResult.subscribe(subscriber); + if (ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 0 && !is_EOL(ch)); + break; + } + if (is_EOL(ch)) + break; + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } + directiveArgs.push(state.input.slice(_position, state.position)); } - }); - } - exports2.catchError = catchError; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js -var require_scanInternals = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scanInternals = void 0; - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) { - return function(source, subscriber) { - var hasState = hasSeed; - var state = seed; - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var i = index++; - state = hasState ? accumulator(state, value, i) : (hasState = true, value); - emitOnNext && subscriber.next(state); - }, emitBeforeComplete && function() { - hasState && subscriber.next(state); - subscriber.complete(); - })); - }; - } - exports2.scanInternals = scanInternals; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/reduce.js -var require_reduce = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/reduce.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.reduce = void 0; - var scanInternals_1 = require_scanInternals(); - var lift_1 = require_lift(); - function reduce(accumulator, seed) { - return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true)); + if (ch !== 0) + readLineBreak(state); + if (_hasOwnProperty.call(directiveHandlers, directiveName)) { + directiveHandlers[directiveName](state, directiveName, directiveArgs); + } else { + throwWarning(state, 'unknown document directive "' + directiveName + '"'); + } + } + skipSeparationSpace(state, true, -1); + if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) { + state.position += 3; + skipSeparationSpace(state, true, -1); + } else if (hasDirectives) { + throwError(state, "directives end mark is expected"); + } + composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); + skipSeparationSpace(state, true, -1); + if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { + throwWarning(state, "non-ASCII line breaks are interpreted as content"); + } + state.documents.push(state.result); + if (state.position === state.lineStart && testDocumentSeparator(state)) { + if (state.input.charCodeAt(state.position) === 46) { + state.position += 3; + skipSeparationSpace(state, true, -1); + } + return; + } + if (state.position < state.length - 1) { + throwError(state, "end of the stream or a document separator is expected"); + } else { + return; + } } - exports2.reduce = reduce; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/toArray.js -var require_toArray = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/toArray.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toArray = void 0; - var reduce_1 = require_reduce(); - var lift_1 = require_lift(); - var arrReducer = function(arr, value) { - return arr.push(value), arr; - }; - function toArray() { - return lift_1.operate(function(source, subscriber) { - reduce_1.reduce(arrReducer, [])(source).subscribe(subscriber); - }); + function loadDocuments(input, options) { + input = String(input); + options = options || {}; + if (input.length !== 0) { + if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) { + input += "\n"; + } + if (input.charCodeAt(0) === 65279) { + input = input.slice(1); + } + } + var state = new State(input, options); + var nullpos = input.indexOf("\0"); + if (nullpos !== -1) { + state.position = nullpos; + throwError(state, "null byte is not allowed in input"); + } + state.input += "\0"; + while (state.input.charCodeAt(state.position) === 32) { + state.lineIndent += 1; + state.position += 1; + } + while (state.position < state.length - 1) { + readDocument(state); + } + return state.documents; } - exports2.toArray = toArray; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js -var require_joinAllInternals = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.joinAllInternals = void 0; - var identity_1 = require_identity(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var pipe_1 = require_pipe(); - var mergeMap_1 = require_mergeMap(); - var toArray_1 = require_toArray(); - function joinAllInternals(joinFn, project) { - return pipe_1.pipe(toArray_1.toArray(), mergeMap_1.mergeMap(function(sources) { - return joinFn(sources); - }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity); + function loadAll(input, iterator, options) { + if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") { + options = iterator; + iterator = null; + } + var documents = loadDocuments(input, options); + if (typeof iterator !== "function") { + return documents; + } + for (var index = 0, length = documents.length; index < length; index += 1) { + iterator(documents[index]); + } } - exports2.joinAllInternals = joinAllInternals; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js -var require_combineLatestAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.combineLatestAll = void 0; - var combineLatest_1 = require_combineLatest(); - var joinAllInternals_1 = require_joinAllInternals(); - function combineLatestAll(project) { - return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project); + function load(input, options) { + var documents = loadDocuments(input, options); + if (documents.length === 0) { + return void 0; + } else if (documents.length === 1) { + return documents[0]; + } + throw new YAMLException("expected a single document in the stream, but found more"); } - exports2.combineLatestAll = combineLatestAll; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js -var require_combineAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.combineAll = void 0; - var combineLatestAll_1 = require_combineLatestAll(); - exports2.combineAll = combineLatestAll_1.combineLatestAll; + module2.exports.loadAll = loadAll; + module2.exports.load = load; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js -var require_combineLatest2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/dumper.js +var require_dumper = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/lib/dumper.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + var common = require_common2(); + var YAMLException = require_exception(); + var DEFAULT_SCHEMA = require_default(); + var _toString = Object.prototype.toString; + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var CHAR_BOM = 65279; + var CHAR_TAB = 9; + var CHAR_LINE_FEED = 10; + var CHAR_CARRIAGE_RETURN = 13; + var CHAR_SPACE = 32; + var CHAR_EXCLAMATION = 33; + var CHAR_DOUBLE_QUOTE = 34; + var CHAR_SHARP = 35; + var CHAR_PERCENT = 37; + var CHAR_AMPERSAND = 38; + var CHAR_SINGLE_QUOTE = 39; + var CHAR_ASTERISK = 42; + var CHAR_COMMA = 44; + var CHAR_MINUS = 45; + var CHAR_COLON = 58; + var CHAR_EQUALS = 61; + var CHAR_GREATER_THAN = 62; + var CHAR_QUESTION = 63; + var CHAR_COMMERCIAL_AT = 64; + var CHAR_LEFT_SQUARE_BRACKET = 91; + var CHAR_RIGHT_SQUARE_BRACKET = 93; + var CHAR_GRAVE_ACCENT = 96; + var CHAR_LEFT_CURLY_BRACKET = 123; + var CHAR_VERTICAL_LINE = 124; + var CHAR_RIGHT_CURLY_BRACKET = 125; + var ESCAPE_SEQUENCES = {}; + ESCAPE_SEQUENCES[0] = "\\0"; + ESCAPE_SEQUENCES[7] = "\\a"; + ESCAPE_SEQUENCES[8] = "\\b"; + ESCAPE_SEQUENCES[9] = "\\t"; + ESCAPE_SEQUENCES[10] = "\\n"; + ESCAPE_SEQUENCES[11] = "\\v"; + ESCAPE_SEQUENCES[12] = "\\f"; + ESCAPE_SEQUENCES[13] = "\\r"; + ESCAPE_SEQUENCES[27] = "\\e"; + ESCAPE_SEQUENCES[34] = '\\"'; + ESCAPE_SEQUENCES[92] = "\\\\"; + ESCAPE_SEQUENCES[133] = "\\N"; + ESCAPE_SEQUENCES[160] = "\\_"; + ESCAPE_SEQUENCES[8232] = "\\L"; + ESCAPE_SEQUENCES[8233] = "\\P"; + var DEPRECATED_BOOLEANS_SYNTAX = [ + "y", + "Y", + "yes", + "Yes", + "YES", + "on", + "On", + "ON", + "n", + "N", + "no", + "No", + "NO", + "off", + "Off", + "OFF" + ]; + var DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; + var SINGLE_LINE_KEYS = { + cpu: true, + engines: true, + os: true, + resolution: true, + libc: true }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.combineLatest = void 0; - var combineLatest_1 = require_combineLatest(); - var lift_1 = require_lift(); - var argsOrArgArray_1 = require_argsOrArgArray(); - var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); - var pipe_1 = require_pipe(); - var args_1 = require_args(); - function combineLatest() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + function compileStyleMap(schema, map) { + var result2, keys, index, length, tag, style, type; + if (map === null) + return {}; + result2 = {}; + keys = Object.keys(map); + for (index = 0, length = keys.length; index < length; index += 1) { + tag = keys[index]; + style = String(map[tag]); + if (tag.slice(0, 2) === "!!") { + tag = "tag:yaml.org,2002:" + tag.slice(2); + } + type = schema.compiledTypeMap["fallback"][tag]; + if (type && _hasOwnProperty.call(type.styleAliases, style)) { + style = type.styleAliases[style]; + } + result2[tag] = style; } - var resultSelector = args_1.popResultSelector(args2); - return resultSelector ? pipe_1.pipe(combineLatest.apply(void 0, __spreadArray([], __read(args2))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : lift_1.operate(function(source, subscriber) { - combineLatest_1.combineLatestInit(__spreadArray([source], __read(argsOrArgArray_1.argsOrArgArray(args2))))(subscriber); - }); + return result2; } - exports2.combineLatest = combineLatest; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js -var require_combineLatestWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + function encodeHex(character) { + var string, handle, length; + string = character.toString(16).toUpperCase(); + if (character <= 255) { + handle = "x"; + length = 2; + } else if (character <= 65535) { + handle = "u"; + length = 4; + } else if (character <= 4294967295) { + handle = "U"; + length = 8; + } else { + throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF"); + } + return "\\" + handle + common.repeat("0", length - string.length) + string; + } + var QUOTING_TYPE_SINGLE = 1; + var QUOTING_TYPE_DOUBLE = 2; + function State(options) { + this.blankLines = options["blankLines"] || false; + this.schema = options["schema"] || DEFAULT_SCHEMA; + this.indent = Math.max(1, options["indent"] || 2); + this.noArrayIndent = options["noArrayIndent"] || false; + this.skipInvalid = options["skipInvalid"] || false; + this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"]; + this.styleMap = compileStyleMap(this.schema, options["styles"] || null); + this.sortKeys = options["sortKeys"] || false; + this.lineWidth = options["lineWidth"] || 80; + this.noRefs = options["noRefs"] || false; + this.noCompatMode = options["noCompatMode"] || false; + this.condenseFlow = options["condenseFlow"] || false; + this.quotingType = options["quotingType"] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE; + this.forceQuotes = options["forceQuotes"] || false; + this.replacer = typeof options["replacer"] === "function" ? options["replacer"] : null; + this.implicitTypes = this.schema.compiledImplicit; + this.explicitTypes = this.schema.compiledExplicit; + this.tag = null; + this.result = ""; + this.duplicates = []; + this.usedDuplicates = null; + } + function indentString(string, spaces) { + var ind = common.repeat(" ", spaces), position = 0, next = -1, result2 = "", line, length = string.length; + while (position < length) { + next = string.indexOf("\n", position); + if (next === -1) { + line = string.slice(position); + position = length; + } else { + line = string.slice(position, next + 1); + position = next + 1; } + if (line.length && line !== "\n") + result2 += ind; + result2 += line; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.combineLatestWith = void 0; - var combineLatest_1 = require_combineLatest2(); - function combineLatestWith() { - var otherSources = []; - for (var _i = 0; _i < arguments.length; _i++) { - otherSources[_i] = arguments[_i]; + return result2; + } + function generateNextLine(state, level, doubleLine) { + return "\n" + (doubleLine ? "\n" : "") + common.repeat(" ", state.indent * level); + } + function testImplicitResolving(state, str) { + var index, length, type; + for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { + type = state.implicitTypes[index]; + if (type.resolve(str)) { + return true; + } } - return combineLatest_1.combineLatest.apply(void 0, __spreadArray([], __read(otherSources))); + return false; } - exports2.combineLatestWith = combineLatestWith; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js -var require_concatMap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concatMap = void 0; - var mergeMap_1 = require_mergeMap(); - var isFunction_1 = require_isFunction(); - function concatMap(project, resultSelector) { - return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1); + function isWhitespace(c) { + return c === CHAR_SPACE || c === CHAR_TAB; } - exports2.concatMap = concatMap; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js -var require_concatMapTo = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concatMapTo = void 0; - var concatMap_1 = require_concatMap(); - var isFunction_1 = require_isFunction(); - function concatMapTo(innerObservable, resultSelector) { - return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function() { - return innerObservable; - }, resultSelector) : concatMap_1.concatMap(function() { - return innerObservable; - }); + function isPrintable(c) { + return 32 <= c && c <= 126 || 161 <= c && c <= 55295 && c !== 8232 && c !== 8233 || 57344 <= c && c <= 65533 && c !== CHAR_BOM || 65536 <= c && c <= 1114111; } - exports2.concatMapTo = concatMapTo; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concat.js -var require_concat2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concat.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + function isNsCharOrWhitespace(c) { + return isPrintable(c) && c !== CHAR_BOM && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; + } + function isPlainSafe(c, prev, inblock) { + var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c); + var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c); + return ( + // ns-plain-safe + (inblock ? ( + // c = flow-in + cIsNsCharOrWhitespace + ) : cIsNsCharOrWhitespace && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET) && c !== CHAR_SHARP && !(prev === CHAR_COLON && !cIsNsChar) || isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c === CHAR_SHARP || prev === CHAR_COLON && cIsNsChar + ); + } + function isPlainSafeFirst(c) { + return isPrintable(c) && c !== CHAR_BOM && !isWhitespace(c) && c !== CHAR_MINUS && c !== CHAR_QUESTION && c !== CHAR_COLON && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_SHARP && c !== CHAR_AMPERSAND && c !== CHAR_ASTERISK && c !== CHAR_EXCLAMATION && c !== CHAR_VERTICAL_LINE && c !== CHAR_EQUALS && c !== CHAR_GREATER_THAN && c !== CHAR_SINGLE_QUOTE && c !== CHAR_DOUBLE_QUOTE && c !== CHAR_PERCENT && c !== CHAR_COMMERCIAL_AT && c !== CHAR_GRAVE_ACCENT; + } + function isPlainSafeLast(c) { + return !isWhitespace(c) && c !== CHAR_COLON; + } + function codePointAt(string, pos) { + var first = string.charCodeAt(pos), second; + if (first >= 55296 && first <= 56319 && pos + 1 < string.length) { + second = string.charCodeAt(pos + 1); + if (second >= 56320 && second <= 57343) { + return (first - 55296) * 1024 + second - 56320 + 65536; } } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concat = void 0; - var lift_1 = require_lift(); - var concatAll_1 = require_concatAll(); - var fromArray_1 = require_fromArray(); - var args_1 = require_args(); - function concat() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + return first; + } + function needIndentIndicator(string) { + var leadingSpaceRe = /^\n* /; + return leadingSpaceRe.test(string); + } + var STYLE_PLAIN = 1; + var STYLE_SINGLE = 2; + var STYLE_LITERAL = 3; + var STYLE_FOLDED = 4; + var STYLE_DOUBLE = 5; + function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType, quotingType, forceQuotes, inblock) { + var i; + var char = 0; + var prevChar = null; + var hasLineBreak = false; + var hasFoldableLine = false; + var shouldTrackWidth = lineWidth !== -1; + var previousLineBreak = -1; + var plain = isPlainSafeFirst(codePointAt(string, 0)) && isPlainSafeLast(codePointAt(string, string.length - 1)); + if (singleLineOnly || forceQuotes) { + for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { + char = codePointAt(string, i); + if (!isPrintable(char)) { + return STYLE_DOUBLE; + } + plain = plain && isPlainSafe(char, prevChar, inblock); + prevChar = char; + } + } else { + for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { + char = codePointAt(string, i); + if (char === CHAR_LINE_FEED) { + hasLineBreak = true; + if (shouldTrackWidth) { + hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented. + i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "; + previousLineBreak = i; + } + } else if (!isPrintable(char)) { + return STYLE_DOUBLE; + } + plain = plain && isPlainSafe(char, prevChar, inblock); + prevChar = char; + } + hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "); } - var scheduler = args_1.popScheduler(args2); - return lift_1.operate(function(source, subscriber) { - concatAll_1.concatAll()(fromArray_1.internalFromArray(__spreadArray([source], __read(args2)), scheduler)).subscribe(subscriber); - }); + if (!hasLineBreak && !hasFoldableLine) { + if (plain && !forceQuotes && !testAmbiguousType(string)) { + return STYLE_PLAIN; + } + return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; + } + if (indentPerLevel > 9 && needIndentIndicator(string)) { + return STYLE_DOUBLE; + } + if (!forceQuotes) { + return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; + } + return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; } - exports2.concat = concat; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js -var require_concatWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + function writeScalar(state, string, level, iskey, inblock, singleLO) { + state.dump = function() { + if (string.length === 0) { + return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''"; + } + if (!state.noCompatMode) { + if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) { + return state.quotingType === QUOTING_TYPE_DOUBLE ? '"' + string + '"' : "'" + string + "'"; + } + } + var indent = state.indent * Math.max(1, level); + var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); + var singleLineOnly = iskey || singleLO || state.flowLevel > -1 && level >= state.flowLevel; + function testAmbiguity(string2) { + return testImplicitResolving(state, string2); + } + switch (chooseScalarStyle( + string, + singleLineOnly, + state.indent, + lineWidth, + testAmbiguity, + state.quotingType, + state.forceQuotes && !iskey, + inblock + )) { + case STYLE_PLAIN: + return string; + case STYLE_SINGLE: + return "'" + string.replace(/'/g, "''") + "'"; + case STYLE_LITERAL: + return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent)); + case STYLE_FOLDED: + return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); + case STYLE_DOUBLE: + return '"' + escapeString(string, lineWidth) + '"'; + default: + throw new YAMLException("impossible error: invalid scalar style"); + } + }(); + } + function blockHeader(string, indentPerLevel) { + var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ""; + var clip = string[string.length - 1] === "\n"; + var keep = clip && (string[string.length - 2] === "\n" || string === "\n"); + var chomp = keep ? "+" : clip ? "" : "-"; + return indentIndicator + chomp + "\n"; + } + function dropEndingNewline(string) { + return string[string.length - 1] === "\n" ? string.slice(0, -1) : string; + } + function foldString(string, width) { + var lineRe = /(\n+)([^\n]*)/g; + var result2 = function() { + var nextLF = string.indexOf("\n"); + nextLF = nextLF !== -1 ? nextLF : string.length; + lineRe.lastIndex = nextLF; + return foldLine(string.slice(0, nextLF), width); + }(); + var prevMoreIndented = string[0] === "\n" || string[0] === " "; + var moreIndented; + var match; + while (match = lineRe.exec(string)) { + var prefix = match[1], line = match[2]; + moreIndented = line[0] === " "; + result2 += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width); + prevMoreIndented = moreIndented; + } + return result2; + } + function foldLine(line, width) { + if (line === "" || line[0] === " ") + return line; + var breakRe = / [^ ]/g; + var match; + var start = 0, end, curr = 0, next = 0; + var result2 = ""; + while (match = breakRe.exec(line)) { + next = match.index; + if (next - start > width) { + end = curr > start ? curr : next; + result2 += "\n" + line.slice(start, end); + start = end + 1; } + curr = next; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.concatWith = void 0; - var concat_1 = require_concat2(); - function concatWith() { - var otherSources = []; - for (var _i = 0; _i < arguments.length; _i++) { - otherSources[_i] = arguments[_i]; + result2 += "\n"; + if (line.length - start > width && curr > start) { + result2 += line.slice(start, curr) + "\n" + line.slice(curr + 1); + } else { + result2 += line.slice(start); } - return concat_1.concat.apply(void 0, __spreadArray([], __read(otherSources))); + return result2.slice(1); } - exports2.concatWith = concatWith; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js -var require_fromSubscribable = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fromSubscribable = void 0; - var Observable_1 = require_Observable(); - function fromSubscribable(subscribable) { - return new Observable_1.Observable(function(subscriber) { - return subscribable.subscribe(subscriber); - }); + function escapeString(string) { + var result2 = ""; + var char = 0; + var escapeSeq; + for (var i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { + char = codePointAt(string, i); + escapeSeq = ESCAPE_SEQUENCES[char]; + if (!escapeSeq && isPrintable(char)) { + result2 += string[i]; + if (char >= 65536) + result2 += string[i + 1]; + } else { + result2 += escapeSeq || encodeHex(char); + } + } + return result2; } - exports2.fromSubscribable = fromSubscribable; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/connect.js -var require_connect = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/connect.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.connect = void 0; - var Subject_1 = require_Subject(); - var from_1 = require_from2(); - var lift_1 = require_lift(); - var fromSubscribable_1 = require_fromSubscribable(); - var DEFAULT_CONFIG = { - connector: function() { - return new Subject_1.Subject(); + function writeFlowSequence(state, level, object) { + var _result = "", _tag = state.tag, index, length, value; + for (index = 0, length = object.length; index < length; index += 1) { + value = object[index]; + if (state.replacer) { + value = state.replacer.call(object, String(index), value); + } + if (writeNode(state, level, value, false, false) || typeof value === "undefined" && writeNode(state, level, null, false, false)) { + if (_result !== "") + _result += "," + (!state.condenseFlow ? " " : ""); + _result += state.dump; + } } - }; - function connect(selector, config) { - if (config === void 0) { - config = DEFAULT_CONFIG; + state.tag = _tag; + state.dump = "[" + _result + "]"; + } + function writeBlockSequence(state, level, object, compact) { + var _result = "", _tag = state.tag, index, length, value; + for (index = 0, length = object.length; index < length; index += 1) { + value = object[index]; + if (state.replacer) { + value = state.replacer.call(object, String(index), value); + } + if (writeNode(state, level + 1, value, true, true, false, true) || typeof value === "undefined" && writeNode(state, level + 1, null, true, true, false, true)) { + if (!compact || _result !== "") { + _result += generateNextLine(state, level); + } + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + _result += "-"; + } else { + _result += "- "; + } + _result += state.dump; + } } - var connector = config.connector; - return lift_1.operate(function(source, subscriber) { - var subject = connector(); - from_1.from(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber); - subscriber.add(source.subscribe(subject)); - }); + state.tag = _tag; + state.dump = _result || "[]"; } - exports2.connect = connect; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/count.js -var require_count = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/count.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.count = void 0; - var reduce_1 = require_reduce(); - function count(predicate) { - return reduce_1.reduce(function(total, value, i) { - return !predicate || predicate(value, i) ? total + 1 : total; - }, 0); + function writeFlowMapping(state, level, object, singleLineOnly) { + var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer; + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + pairBuffer = ""; + if (_result !== "") + pairBuffer += ", "; + if (state.condenseFlow) + pairBuffer += '"'; + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; + if (state.replacer) { + objectValue = state.replacer.call(object, objectKey, objectValue); + } + if (!writeNode(state, level, objectKey, false, false, singleLineOnly)) { + continue; + } + if (state.dump.length > 1024) + pairBuffer += "? "; + pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " "); + if (!writeNode(state, level, objectValue, false, false, singleLineOnly)) { + continue; + } + pairBuffer += state.dump; + _result += pairBuffer; + } + state.tag = _tag; + state.dump = "{" + _result + "}"; } - exports2.count = count; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/debounce.js -var require_debounce = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/debounce.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.debounce = void 0; - var lift_1 = require_lift(); - var noop_1 = require_noop(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - function debounce(durationSelector) { - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - var lastValue = null; - var durationSubscriber = null; - var emit = function() { - durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); - durationSubscriber = null; - if (hasValue) { - hasValue = false; - var value = lastValue; - lastValue = null; - subscriber.next(value); + function writeBlockMapping(state, level, object, compact, doubleLine) { + var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer; + if (state.sortKeys === true) { + objectKeyList.sort(); + } else if (typeof state.sortKeys === "function") { + objectKeyList.sort(state.sortKeys); + } else if (state.sortKeys) { + throw new YAMLException("sortKeys must be a boolean or a function"); + } + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + pairBuffer = ""; + if (!compact || _result !== "") { + pairBuffer += generateNextLine(state, level, doubleLine); + } + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; + if (state.replacer) { + objectValue = state.replacer.call(object, objectKey, objectValue); + } + if (!writeNode(state, level + 1, objectKey, true, true, true)) { + continue; + } + explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024; + if (explicitPair) { + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += "?"; + } else { + pairBuffer += "? "; } - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); - hasValue = true; - lastValue = value; - durationSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, emit, noop_1.noop); - from_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber); - }, function() { - emit(); - subscriber.complete(); - }, void 0, function() { - lastValue = durationSubscriber = null; - })); - }); + } + pairBuffer += state.dump; + if (explicitPair) { + pairBuffer += generateNextLine(state, level); + } + if (!writeNode(state, level + 1, objectValue, true, explicitPair, null, null, objectKey)) { + continue; + } + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += ":"; + } else { + pairBuffer += ": "; + } + pairBuffer += state.dump; + _result += pairBuffer; + } + state.tag = _tag; + state.dump = _result || "{}"; } - exports2.debounce = debounce; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js -var require_debounceTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.debounceTime = void 0; - var async_1 = require_async(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function debounceTime(dueTime, scheduler) { - if (scheduler === void 0) { - scheduler = async_1.asyncScheduler; + function detectType(state, object, explicit) { + var _result, typeList, index, length, type, style; + typeList = explicit ? state.explicitTypes : state.implicitTypes; + for (index = 0, length = typeList.length; index < length; index += 1) { + type = typeList[index]; + if ((type.instanceOf || type.predicate) && (!type.instanceOf || typeof object === "object" && object instanceof type.instanceOf) && (!type.predicate || type.predicate(object))) { + if (explicit) { + if (type.multi && type.representName) { + state.tag = type.representName(object); + } else { + state.tag = type.tag; + } + } else { + state.tag = "?"; + } + if (type.represent) { + style = state.styleMap[type.tag] || type.defaultStyle; + if (_toString.call(type.represent) === "[object Function]") { + _result = type.represent(object, style); + } else if (_hasOwnProperty.call(type.represent, style)) { + _result = type.represent[style](object, style); + } else { + throw new YAMLException("!<" + type.tag + '> tag resolver accepts not "' + style + '" style'); + } + state.dump = _result; + } + return true; + } } - return lift_1.operate(function(source, subscriber) { - var activeTask = null; - var lastValue = null; - var lastTime = null; - var emit = function() { - if (activeTask) { - activeTask.unsubscribe(); - activeTask = null; - var value = lastValue; - lastValue = null; - subscriber.next(value); + return false; + } + function writeNode(state, level, object, block, compact, iskey, isblockseq, objectKey, singleLineOnly) { + state.tag = null; + state.dump = object; + if (!detectType(state, object, false)) { + detectType(state, object, true); + } + var type = _toString.call(state.dump); + var inblock = block; + var tagStr; + if (block) { + block = state.flowLevel < 0 || state.flowLevel > level; + } + var objectOrArray = type === "[object Object]" || type === "[object Array]", duplicateIndex, duplicate; + if (objectOrArray) { + duplicateIndex = state.duplicates.indexOf(object); + duplicate = duplicateIndex !== -1; + } + if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) { + compact = false; + } + if (duplicate && state.usedDuplicates[duplicateIndex]) { + state.dump = "*ref_" + duplicateIndex; + } else { + if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { + state.usedDuplicates[duplicateIndex] = true; + } + if (type === "[object Object]") { + singleLineOnly = SINGLE_LINE_KEYS[objectKey]; + if (block && Object.keys(state.dump).length !== 0 && !singleLineOnly) { + var doubleLine = state.blankLines ? objectKey === "packages" || objectKey === "importers" || level === 0 : false; + writeBlockMapping(state, level, state.dump, compact, doubleLine); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + state.dump; + } + } else { + writeFlowMapping(state, level, state.dump, singleLineOnly); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + " " + state.dump; + } } - }; - function emitWhenIdle() { - var targetTime = lastTime + dueTime; - var now = scheduler.now(); - if (now < targetTime) { - activeTask = this.schedule(void 0, targetTime - now); - subscriber.add(activeTask); - return; + } else if (type === "[object Array]") { + singleLineOnly = SINGLE_LINE_KEYS[objectKey]; + if (block && state.dump.length !== 0 && !singleLineOnly) { + if (state.noArrayIndent && !isblockseq && level > 0) { + writeBlockSequence(state, level - 1, state.dump, compact); + } else { + writeBlockSequence(state, level, state.dump, compact); + } + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + state.dump; + } + } else { + writeFlowSequence(state, level, state.dump, singleLineOnly); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + " " + state.dump; + } } - emit(); + } else if (type === "[object String]") { + if (state.tag !== "?") { + writeScalar(state, state.dump, level, iskey, inblock, singleLineOnly); + } + } else if (type === "[object Undefined]") { + return false; + } else { + if (state.skipInvalid) + return false; + throw new YAMLException("unacceptable kind of an object to dump " + type); } - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - lastValue = value; - lastTime = scheduler.now(); - if (!activeTask) { - activeTask = scheduler.schedule(emitWhenIdle, dueTime); - subscriber.add(activeTask); + if (state.tag !== null && state.tag !== "?") { + tagStr = encodeURI( + state.tag[0] === "!" ? state.tag.slice(1) : state.tag + ).replace(/!/g, "%21"); + if (state.tag[0] === "!") { + tagStr = "!" + tagStr; + } else if (tagStr.slice(0, 18) === "tag:yaml.org,2002:") { + tagStr = "!!" + tagStr.slice(18); + } else { + tagStr = "!<" + tagStr + ">"; } - }, function() { - emit(); - subscriber.complete(); - }, void 0, function() { - lastValue = activeTask = null; - })); - }); + state.dump = tagStr + " " + state.dump; + } + } + return true; } - exports2.debounceTime = debounceTime; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js -var require_defaultIfEmpty = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.defaultIfEmpty = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function defaultIfEmpty(defaultValue) { - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - hasValue = true; - subscriber.next(value); - }, function() { - if (!hasValue) { - subscriber.next(defaultValue); - } - subscriber.complete(); - })); - }); + function getDuplicateReferences(object, state) { + var objects = [], duplicatesIndexes = [], index, length; + inspectNode(object, objects, duplicatesIndexes); + for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { + state.duplicates.push(objects[duplicatesIndexes[index]]); + } + state.usedDuplicates = new Array(length); } - exports2.defaultIfEmpty = defaultIfEmpty; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/take.js -var require_take = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/take.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.take = void 0; - var empty_1 = require_empty(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function take(count) { - return count <= 0 ? function() { - return empty_1.EMPTY; - } : lift_1.operate(function(source, subscriber) { - var seen = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (++seen <= count) { - subscriber.next(value); - if (count <= seen) { - subscriber.complete(); + function inspectNode(object, objects, duplicatesIndexes) { + var objectKeyList, index, length; + if (object !== null && typeof object === "object") { + index = objects.indexOf(object); + if (index !== -1) { + if (duplicatesIndexes.indexOf(index) === -1) { + duplicatesIndexes.push(index); + } + } else { + objects.push(object); + if (Array.isArray(object)) { + for (index = 0, length = object.length; index < length; index += 1) { + inspectNode(object[index], objects, duplicatesIndexes); + } + } else { + objectKeyList = Object.keys(object); + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); } } - })); - }); + } + } } - exports2.take = take; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js -var require_ignoreElements = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ignoreElements = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - function ignoreElements() { - return lift_1.operate(function(source, subscriber) { - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, noop_1.noop)); - }); + function dump(input, options) { + options = options || {}; + var state = new State(options); + if (!state.noRefs) + getDuplicateReferences(input, state); + var value = input; + if (state.replacer) { + value = state.replacer.call({ "": value }, "", value); + } + if (writeNode(state, 0, value, true, true)) + return state.dump + "\n"; + return ""; } - exports2.ignoreElements = ignoreElements; + module2.exports.dump = dump; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js -var require_mapTo = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/index.js +var require_js_yaml = __commonJS({ + "../node_modules/.pnpm/@zkochan+js-yaml@0.0.6/node_modules/@zkochan/js-yaml/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mapTo = void 0; - var map_1 = require_map(); - function mapTo(value) { - return map_1.map(function() { - return value; - }); + var loader = require_loader(); + var dumper = require_dumper(); + function renamed(from, to) { + return function() { + throw new Error("Function yaml." + from + " is removed in js-yaml 4. Use yaml." + to + " instead, which is now safe by default."); + }; } - exports2.mapTo = mapTo; + module2.exports.Type = require_type(); + module2.exports.Schema = require_schema(); + module2.exports.FAILSAFE_SCHEMA = require_failsafe(); + module2.exports.JSON_SCHEMA = require_json(); + module2.exports.CORE_SCHEMA = require_core2(); + module2.exports.DEFAULT_SCHEMA = require_default(); + module2.exports.load = loader.load; + module2.exports.loadAll = loader.loadAll; + module2.exports.dump = dumper.dump; + module2.exports.YAMLException = require_exception(); + module2.exports.safeLoad = renamed("safeLoad", "load"); + module2.exports.safeLoadAll = renamed("safeLoadAll", "loadAll"); + module2.exports.safeDump = renamed("safeDump", "dump"); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js -var require_delayWhen = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js"(exports2) { +// ../node_modules/.pnpm/write-yaml-file@4.2.0/node_modules/write-yaml-file/index.js +var require_write_yaml_file = __commonJS({ + "../node_modules/.pnpm/write-yaml-file@4.2.0/node_modules/write-yaml-file/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.delayWhen = void 0; - var concat_1 = require_concat(); - var take_1 = require_take(); - var ignoreElements_1 = require_ignoreElements(); - var mapTo_1 = require_mapTo(); - var mergeMap_1 = require_mergeMap(); - function delayWhen(delayDurationSelector, subscriptionDelay) { - if (subscriptionDelay) { - return function(source) { - return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source.pipe(delayWhen(delayDurationSelector))); - }; + var path2 = require("path"); + var fs2 = require("fs"); + var writeFileAtomic = require_write_file_atomic(); + var YAML = require_js_yaml(); + var main = (fn2, fp, data, opts) => { + if (!fp) { + throw new TypeError("Expected a filepath"); } - return mergeMap_1.mergeMap(function(value, index) { - return delayDurationSelector(value, index).pipe(take_1.take(1), mapTo_1.mapTo(value)); - }); - } - exports2.delayWhen = delayWhen; + if (data === void 0) { + throw new TypeError("Expected data to stringify"); + } + opts = opts || {}; + const yaml = YAML.dump(data, opts); + return fn2(fp, yaml, { mode: opts.mode }); + }; + module2.exports = async (fp, data, opts) => { + await fs2.promises.mkdir(path2.dirname(fp), { recursive: true }); + return main(writeFileAtomic, fp, data, opts); + }; + module2.exports.sync = (fp, data, opts) => { + fs2.mkdirSync(path2.dirname(fp), { recursive: true }); + main(writeFileAtomic.sync, fp, data, opts); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/delay.js -var require_delay = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/delay.js"(exports2) { +// ../pkg-manifest/write-project-manifest/lib/index.js +var require_lib14 = __commonJS({ + "../pkg-manifest/write-project-manifest/lib/index.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.delay = void 0; - var async_1 = require_async(); - var delayWhen_1 = require_delayWhen(); - var timer_1 = require_timer2(); - function delay(due, scheduler) { - if (scheduler === void 0) { - scheduler = async_1.asyncScheduler; + exports2.writeProjectManifest = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var text_comments_parser_1 = require_lib11(); + var json5_1 = __importDefault4(require_lib12()); + var write_file_atomic_1 = __importDefault4(require_lib13()); + var write_yaml_file_1 = __importDefault4(require_write_yaml_file()); + var YAML_FORMAT = { + noCompatMode: true, + noRefs: true + }; + async function writeProjectManifest(filePath, manifest, opts) { + const fileType = filePath.slice(filePath.lastIndexOf(".") + 1).toLowerCase(); + if (fileType === "yaml") { + return (0, write_yaml_file_1.default)(filePath, manifest, YAML_FORMAT); } - var duration = timer_1.timer(due, scheduler); - return delayWhen_1.delayWhen(function() { - return duration; - }); + await fs_1.promises.mkdir(path_1.default.dirname(filePath), { recursive: true }); + const trailingNewline = opts?.insertFinalNewline === false ? "" : "\n"; + const indent = opts?.indent ?? " "; + const json = fileType === "json5" ? stringifyJson5(manifest, indent, opts?.comments) : JSON.stringify(manifest, void 0, indent); + return (0, write_file_atomic_1.default)(filePath, `${json}${trailingNewline}`); + } + exports2.writeProjectManifest = writeProjectManifest; + function stringifyJson5(obj, indent, comments) { + const json5 = json5_1.default.stringify(obj, void 0, indent); + if (comments) { + return (0, text_comments_parser_1.insertComments)(json5, comments); + } + return json5; } - exports2.delay = delay; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js -var require_dematerialize = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js"(exports2) { +// ../node_modules/.pnpm/read-yaml-file@2.1.0/node_modules/read-yaml-file/index.js +var require_read_yaml_file = __commonJS({ + "../node_modules/.pnpm/read-yaml-file@2.1.0/node_modules/read-yaml-file/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.dematerialize = void 0; - var Notification_1 = require_Notification(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function dematerialize() { - return lift_1.operate(function(source, subscriber) { - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(notification) { - return Notification_1.observeNotification(notification, subscriber); - })); - }); - } - exports2.dematerialize = dematerialize; + var fs2 = require("fs"); + var stripBom = require_strip_bom(); + var yaml = require_js_yaml(); + var parse2 = (data) => yaml.load(stripBom(data)); + var readYamlFile = (fp) => fs2.promises.readFile(fp, "utf8").then((data) => parse2(data)); + module2.exports = readYamlFile; + module2.exports.default = readYamlFile; + module2.exports.sync = (fp) => parse2(fs2.readFileSync(fp, "utf8")); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinct.js -var require_distinct = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinct.js"(exports2) { +// ../node_modules/.pnpm/@gwhitney+detect-indent@7.0.1/node_modules/@gwhitney/detect-indent/index.js +var require_detect_indent = __commonJS({ + "../node_modules/.pnpm/@gwhitney+detect-indent@7.0.1/node_modules/@gwhitney/detect-indent/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.distinct = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - function distinct(keySelector, flushes) { - return lift_1.operate(function(source, subscriber) { - var distinctKeys = new Set(); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var key = keySelector ? keySelector(value) : value; - if (!distinctKeys.has(key)) { - distinctKeys.add(key); - subscriber.next(value); + var INDENT_REGEX = /^(?:( )+|\t+)/; + var INDENT_TYPE_SPACE = "space"; + var INDENT_TYPE_TAB = "tab"; + function makeIndentsMap(string, ignoreSingleSpaces) { + const indents = /* @__PURE__ */ new Map(); + let previousSize = 0; + let previousIndentType; + let key; + for (const line of string.split(/\n/g)) { + if (!line) { + continue; + } + let indent; + let indentType; + let use; + let weight; + let entry; + const matches = line.match(INDENT_REGEX); + if (matches === null) { + previousSize = 0; + previousIndentType = ""; + } else { + indent = matches[0].length; + indentType = matches[1] ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; + if (ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && indent === 1) { + continue; } - })); - flushes === null || flushes === void 0 ? void 0 : flushes.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - return distinctKeys.clear(); - }, noop_1.noop)); - }); - } - exports2.distinct = distinct; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js -var require_distinctUntilChanged = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.distinctUntilChanged = void 0; - var identity_1 = require_identity(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function distinctUntilChanged(comparator, keySelector) { - if (keySelector === void 0) { - keySelector = identity_1.identity; - } - comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare; - return lift_1.operate(function(source, subscriber) { - var previousKey; - var first = true; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var currentKey = keySelector(value); - if (first || !comparator(previousKey, currentKey)) { - first = false; - previousKey = currentKey; - subscriber.next(value); + if (indentType !== previousIndentType) { + previousSize = 0; } - })); - }); + previousIndentType = indentType; + use = 1; + weight = 0; + const indentDifference = indent - previousSize; + previousSize = indent; + if (indentDifference === 0) { + use = 0; + weight = 1; + } else { + const absoluteIndentDifference = indentDifference > 0 ? indentDifference : -indentDifference; + key = encodeIndentsKey(indentType, absoluteIndentDifference); + } + entry = indents.get(key); + entry = entry === void 0 ? [1, 0] : [entry[0] + use, entry[1] + weight]; + indents.set(key, entry); + } + } + return indents; } - exports2.distinctUntilChanged = distinctUntilChanged; - function defaultCompare(a, b) { - return a === b; + function encodeIndentsKey(indentType, indentAmount) { + const typeCharacter = indentType === INDENT_TYPE_SPACE ? "s" : "t"; + return typeCharacter + String(indentAmount); } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js -var require_distinctUntilKeyChanged = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.distinctUntilKeyChanged = void 0; - var distinctUntilChanged_1 = require_distinctUntilChanged(); - function distinctUntilKeyChanged(key, compare) { - return distinctUntilChanged_1.distinctUntilChanged(function(x, y) { - return compare ? compare(x[key], y[key]) : x[key] === y[key]; - }); + function decodeIndentsKey(indentsKey) { + const keyHasTypeSpace = indentsKey[0] === "s"; + const type = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; + const amount = Number(indentsKey.slice(1)); + return { type, amount }; } - exports2.distinctUntilKeyChanged = distinctUntilKeyChanged; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js -var require_throwIfEmpty = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.throwIfEmpty = void 0; - var EmptyError_1 = require_EmptyError(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function throwIfEmpty(errorFactory) { - if (errorFactory === void 0) { - errorFactory = defaultErrorFactory; + function getMostUsedKey(indents) { + let result2; + let maxUsed = 0; + let maxWeight = 0; + for (const [key, [usedCount, weight]] of indents) { + if (usedCount > maxUsed || usedCount === maxUsed && weight > maxWeight) { + maxUsed = usedCount; + maxWeight = weight; + result2 = key; + } } - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - hasValue = true; - subscriber.next(value); - }, function() { - return hasValue ? subscriber.complete() : subscriber.error(errorFactory()); - })); - }); + return result2; } - exports2.throwIfEmpty = throwIfEmpty; - function defaultErrorFactory() { - return new EmptyError_1.EmptyError(); + function makeIndentString(type, amount) { + const indentCharacter = type === INDENT_TYPE_SPACE ? " " : " "; + return indentCharacter.repeat(amount); } - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js -var require_elementAt = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.elementAt = void 0; - var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); - var filter_1 = require_filter(); - var throwIfEmpty_1 = require_throwIfEmpty(); - var defaultIfEmpty_1 = require_defaultIfEmpty(); - var take_1 = require_take(); - function elementAt(index, defaultValue) { - if (index < 0) { - throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); + function detectIndent(string) { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); } - var hasDefaultValue = arguments.length >= 2; - return function(source) { - return source.pipe(filter_1.filter(function(v, i) { - return i === index; - }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { - return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); - })); + let indents = makeIndentsMap(string, true); + if (indents.size === 0) { + indents = makeIndentsMap(string, false); + } + const keyOfMostUsedIndent = getMostUsedKey(indents); + let type; + let amount = 0; + let indent = ""; + if (keyOfMostUsedIndent !== void 0) { + ({ type, amount } = decodeIndentsKey(keyOfMostUsedIndent)); + indent = makeIndentString(type, amount); + } + return { + amount, + type, + indent }; } - exports2.elementAt = elementAt; + module2.exports = detectIndent; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/endWith.js -var require_endWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/endWith.js"(exports2) { +// ../node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +var require_fast_deep_equal = __commonJS({ + "../node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + module2.exports = function equal(a, b) { + if (a === b) + return true; + if (a && b && typeof a == "object" && typeof b == "object") { + if (a.constructor !== b.constructor) + return false; + var length, i, keys; + if (Array.isArray(a)) { + length = a.length; + if (length != b.length) + return false; + for (i = length; i-- !== 0; ) + if (!equal(a[i], b[i])) + return false; + return true; + } + if (a.constructor === RegExp) + return a.source === b.source && a.flags === b.flags; + if (a.valueOf !== Object.prototype.valueOf) + return a.valueOf() === b.valueOf(); + if (a.toString !== Object.prototype.toString) + return a.toString() === b.toString(); + keys = Object.keys(a); + length = keys.length; + if (length !== Object.keys(b).length) + return false; + for (i = length; i-- !== 0; ) + if (!Object.prototype.hasOwnProperty.call(b, keys[i])) + return false; + for (i = length; i-- !== 0; ) { + var key = keys[i]; + if (!equal(a[key], b[key])) + return false; } + return true; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + return a !== a && b !== b; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.endWith = void 0; - var concat_1 = require_concat(); - var of_1 = require_of(); - function endWith() { - var values = []; - for (var _i = 0; _i < arguments.length; _i++) { - values[_i] = arguments[_i]; + } +}); + +// ../node_modules/.pnpm/is-windows@1.0.2/node_modules/is-windows/index.js +var require_is_windows = __commonJS({ + "../node_modules/.pnpm/is-windows@1.0.2/node_modules/is-windows/index.js"(exports2, module2) { + (function(factory) { + if (exports2 && typeof exports2 === "object" && typeof module2 !== "undefined") { + module2.exports = factory(); + } else if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof window !== "undefined") { + window.isWindows = factory(); + } else if (typeof global !== "undefined") { + global.isWindows = factory(); + } else if (typeof self !== "undefined") { + self.isWindows = factory(); + } else { + this.isWindows = factory(); } - return function(source) { - return concat_1.concat(source, of_1.of.apply(void 0, __spreadArray([], __read(values)))); + })(function() { + "use strict"; + return function isWindows() { + return process && (process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE)); }; - } - exports2.endWith = endWith; + }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/every.js -var require_every = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/every.js"(exports2) { +// ../node_modules/.pnpm/is-plain-obj@2.1.0/node_modules/is-plain-obj/index.js +var require_is_plain_obj = __commonJS({ + "../node_modules/.pnpm/is-plain-obj@2.1.0/node_modules/is-plain-obj/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.every = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function every(predicate, thisArg) { - return lift_1.operate(function(source, subscriber) { - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (!predicate.call(thisArg, value, index++, source)) { - subscriber.next(false); - subscriber.complete(); - } - }, function() { - subscriber.next(true); - subscriber.complete(); - })); - }); - } - exports2.every = every; + module2.exports = (value) => { + if (Object.prototype.toString.call(value) !== "[object Object]") { + return false; + } + const prototype = Object.getPrototypeOf(value); + return prototype === null || prototype === Object.prototype; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js -var require_exhaustAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js"(exports2) { +// ../node_modules/.pnpm/sort-keys@4.2.0/node_modules/sort-keys/index.js +var require_sort_keys = __commonJS({ + "../node_modules/.pnpm/sort-keys@4.2.0/node_modules/sort-keys/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.exhaustAll = void 0; - var lift_1 = require_lift(); - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function exhaustAll() { - return lift_1.operate(function(source, subscriber) { - var isComplete = false; - var innerSub = null; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(inner) { - if (!innerSub) { - innerSub = from_1.innerFrom(inner).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, function() { - innerSub = null; - isComplete && subscriber.complete(); - })); + var isPlainObject = require_is_plain_obj(); + module2.exports = (object, options = {}) => { + if (!isPlainObject(object) && !Array.isArray(object)) { + throw new TypeError("Expected a plain object or array"); + } + const { deep } = options; + const seenInput = []; + const seenOutput = []; + const deepSortArray = (array) => { + const seenIndex = seenInput.indexOf(array); + if (seenIndex !== -1) { + return seenOutput[seenIndex]; + } + const result2 = []; + seenInput.push(array); + seenOutput.push(result2); + result2.push(...array.map((item) => { + if (Array.isArray(item)) { + return deepSortArray(item); } - }, function() { - isComplete = true; - !innerSub && subscriber.complete(); + if (isPlainObject(item)) { + return sortKeys(item); + } + return item; })); - }); - } - exports2.exhaustAll = exhaustAll; + return result2; + }; + const sortKeys = (object2) => { + const seenIndex = seenInput.indexOf(object2); + if (seenIndex !== -1) { + return seenOutput[seenIndex]; + } + const result2 = {}; + const keys = Object.keys(object2).sort(options.compare); + seenInput.push(object2); + seenOutput.push(result2); + for (const key of keys) { + const value = object2[key]; + let newValue; + if (deep && Array.isArray(value)) { + newValue = deepSortArray(value); + } else { + newValue = deep && isPlainObject(value) ? sortKeys(value) : value; + } + Object.defineProperty(result2, key, { + ...Object.getOwnPropertyDescriptor(object2, key), + value: newValue + }); + } + return result2; + }; + if (Array.isArray(object)) { + return deep ? deepSortArray(object) : object.slice(); + } + return sortKeys(object); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js -var require_exhaust = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js"(exports2) { +// ../fs/graceful-fs/lib/index.js +var require_lib15 = __commonJS({ + "../fs/graceful-fs/lib/index.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.exhaust = void 0; - var exhaustAll_1 = require_exhaustAll(); - exports2.exhaust = exhaustAll_1.exhaustAll; + var util_1 = require("util"); + var graceful_fs_1 = __importDefault4(require_graceful_fs()); + exports2.default = { + copyFile: (0, util_1.promisify)(graceful_fs_1.default.copyFile), + createReadStream: graceful_fs_1.default.createReadStream, + link: (0, util_1.promisify)(graceful_fs_1.default.link), + readFile: (0, util_1.promisify)(graceful_fs_1.default.readFile), + stat: (0, util_1.promisify)(graceful_fs_1.default.stat), + writeFile: (0, util_1.promisify)(graceful_fs_1.default.writeFile) + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js -var require_exhaustMap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js"(exports2) { +// ../pkg-manifest/read-project-manifest/lib/readFile.js +var require_readFile = __commonJS({ + "../pkg-manifest/read-project-manifest/lib/readFile.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.exhaustMap = void 0; - var map_1 = require_map(); - var from_1 = require_from2(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function exhaustMap(project, resultSelector) { - if (resultSelector) { - return function(source) { - return source.pipe(exhaustMap(function(a, i) { - return from_1.innerFrom(project(a, i)).pipe(map_1.map(function(b, ii) { - return resultSelector(a, b, i, ii); - })); - })); + exports2.readJsonFile = exports2.readJson5File = void 0; + var graceful_fs_1 = __importDefault4(require_lib15()); + var json5_1 = __importDefault4(require_lib12()); + var parse_json_1 = __importDefault4(require_parse_json()); + var strip_bom_1 = __importDefault4(require_strip_bom()); + async function readJson5File(filePath) { + const text = await readFileWithoutBom(filePath); + try { + return { + data: json5_1.default.parse(text), + text }; + } catch (err) { + err.message = `${err.message} in ${filePath}`; + err["code"] = "ERR_PNPM_JSON5_PARSE"; + throw err; } - return lift_1.operate(function(source, subscriber) { - var index = 0; - var innerSub = null; - var isComplete = false; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(outerValue) { - if (!innerSub) { - innerSub = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, function() { - innerSub = null; - isComplete && subscriber.complete(); - }); - from_1.innerFrom(project(outerValue, index++)).subscribe(innerSub); - } - }, function() { - isComplete = true; - !innerSub && subscriber.complete(); - })); - }); } - exports2.exhaustMap = exhaustMap; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/expand.js -var require_expand = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/expand.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.expand = void 0; - var lift_1 = require_lift(); - var mergeInternals_1 = require_mergeInternals(); - function expand(project, concurrent, scheduler) { - if (concurrent === void 0) { - concurrent = Infinity; + exports2.readJson5File = readJson5File; + async function readJsonFile(filePath) { + const text = await readFileWithoutBom(filePath); + try { + return { + data: (0, parse_json_1.default)(text, filePath), + text + }; + } catch (err) { + err["code"] = "ERR_PNPM_JSON_PARSE"; + throw err; } - concurrent = (concurrent || 0) < 1 ? Infinity : concurrent; - return lift_1.operate(function(source, subscriber) { - return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent, void 0, true, scheduler); - }); } - exports2.expand = expand; + exports2.readJsonFile = readJsonFile; + async function readFileWithoutBom(path2) { + return (0, strip_bom_1.default)(await graceful_fs_1.default.readFile(path2, "utf8")); + } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/finalize.js -var require_finalize = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/finalize.js"(exports2) { +// ../pkg-manifest/read-project-manifest/lib/index.js +var require_lib16 = __commonJS({ + "../pkg-manifest/read-project-manifest/lib/index.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.finalize = void 0; - var lift_1 = require_lift(); - function finalize(callback) { - return lift_1.operate(function(source, subscriber) { - try { - source.subscribe(subscriber); - } finally { - subscriber.add(callback); + exports2.readExactProjectManifest = exports2.tryReadProjectManifest = exports2.readProjectManifestOnly = exports2.readProjectManifest = exports2.safeReadProjectManifestOnly = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var text_comments_parser_1 = require_lib11(); + var write_project_manifest_1 = require_lib14(); + var read_yaml_file_1 = __importDefault4(require_read_yaml_file()); + var detect_indent_1 = __importDefault4(require_detect_indent()); + var fast_deep_equal_1 = __importDefault4(require_fast_deep_equal()); + var is_windows_1 = __importDefault4(require_is_windows()); + var sort_keys_1 = __importDefault4(require_sort_keys()); + var readFile_1 = require_readFile(); + async function safeReadProjectManifestOnly(projectDir) { + try { + return await readProjectManifestOnly(projectDir); + } catch (err) { + if (err.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") { + return null; } - }); + throw err; + } } - exports2.finalize = finalize; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/find.js -var require_find = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/find.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createFind = exports2.find = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function find(predicate, thisArg) { - return lift_1.operate(createFind(predicate, thisArg, "value")); + exports2.safeReadProjectManifestOnly = safeReadProjectManifestOnly; + async function readProjectManifest(projectDir) { + const result2 = await tryReadProjectManifest(projectDir); + if (result2.manifest !== null) { + return result2; + } + throw new error_1.PnpmError("NO_IMPORTER_MANIFEST_FOUND", `No package.json (or package.yaml, or package.json5) was found in "${projectDir}".`); } - exports2.find = find; - function createFind(predicate, thisArg, emit) { - var findIndex = emit === "index"; - return function(source, subscriber) { - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var i = index++; - if (predicate.call(thisArg, value, i, source)) { - subscriber.next(findIndex ? i : value); - subscriber.complete(); - } - }, function() { - subscriber.next(findIndex ? -1 : void 0); - subscriber.complete(); - })); - }; + exports2.readProjectManifest = readProjectManifest; + async function readProjectManifestOnly(projectDir) { + const { manifest } = await readProjectManifest(projectDir); + return manifest; } - exports2.createFind = createFind; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js -var require_findIndex = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.findIndex = void 0; - var lift_1 = require_lift(); - var find_1 = require_find(); - function findIndex(predicate, thisArg) { - return lift_1.operate(find_1.createFind(predicate, thisArg, "index")); + exports2.readProjectManifestOnly = readProjectManifestOnly; + async function tryReadProjectManifest(projectDir) { + try { + const manifestPath = path_1.default.join(projectDir, "package.json"); + const { data, text } = await (0, readFile_1.readJsonFile)(manifestPath); + return { + fileName: "package.json", + manifest: data, + writeProjectManifest: createManifestWriter({ + ...detectFileFormatting(text), + initialManifest: data, + manifestPath + }) + }; + } catch (err) { + if (err.code !== "ENOENT") + throw err; + } + try { + const manifestPath = path_1.default.join(projectDir, "package.json5"); + const { data, text } = await (0, readFile_1.readJson5File)(manifestPath); + return { + fileName: "package.json5", + manifest: data, + writeProjectManifest: createManifestWriter({ + ...detectFileFormattingAndComments(text), + initialManifest: data, + manifestPath + }) + }; + } catch (err) { + if (err.code !== "ENOENT") + throw err; + } + try { + const manifestPath = path_1.default.join(projectDir, "package.yaml"); + const manifest = await readPackageYaml(manifestPath); + return { + fileName: "package.yaml", + manifest, + writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath }) + }; + } catch (err) { + if (err.code !== "ENOENT") + throw err; + } + if ((0, is_windows_1.default)()) { + let s; + try { + s = await fs_1.promises.stat(projectDir); + } catch (err) { + } + if (s != null && !s.isDirectory()) { + const err = new Error(`"${projectDir}" is not a directory`); + err["code"] = "ENOTDIR"; + throw err; + } + } + const filePath = path_1.default.join(projectDir, "package.json"); + return { + fileName: "package.json", + manifest: null, + writeProjectManifest: async (manifest) => (0, write_project_manifest_1.writeProjectManifest)(filePath, manifest) + }; } - exports2.findIndex = findIndex; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/first.js -var require_first = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/first.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.first = void 0; - var EmptyError_1 = require_EmptyError(); - var filter_1 = require_filter(); - var take_1 = require_take(); - var defaultIfEmpty_1 = require_defaultIfEmpty(); - var throwIfEmpty_1 = require_throwIfEmpty(); - var identity_1 = require_identity(); - function first(predicate, defaultValue) { - var hasDefaultValue = arguments.length >= 2; - return function(source) { - return source.pipe(predicate ? filter_1.filter(function(v, i) { - return predicate(v, i, source); - }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { - return new EmptyError_1.EmptyError(); - })); + exports2.tryReadProjectManifest = tryReadProjectManifest; + function detectFileFormattingAndComments(text) { + const { comments, text: newText, hasFinalNewline } = (0, text_comments_parser_1.extractComments)(text); + return { + comments, + indent: (0, detect_indent_1.default)(newText).indent, + insertFinalNewline: hasFinalNewline }; } - exports2.first = first; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js -var require_groupBy = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); + function detectFileFormatting(text) { + return { + indent: (0, detect_indent_1.default)(text).indent, + insertFinalNewline: text.endsWith("\n") }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; + } + async function readExactProjectManifest(manifestPath) { + const base = path_1.default.basename(manifestPath).toLowerCase(); + switch (base) { + case "package.json": { + const { data, text } = await (0, readFile_1.readJsonFile)(manifestPath); + return { + manifest: data, + writeProjectManifest: createManifestWriter({ + ...detectFileFormatting(text), + initialManifest: data, + manifestPath + }) + }; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.groupBy = void 0; - var Observable_1 = require_Observable(); - var from_1 = require_from2(); - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function groupBy(keySelector, elementOrOptions, duration, connector) { - return lift_1.operate(function(source, subscriber) { - var element; - if (!elementOrOptions || typeof elementOrOptions === "function") { - element = elementOrOptions; - } else { - duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector; + case "package.json5": { + const { data, text } = await (0, readFile_1.readJson5File)(manifestPath); + return { + manifest: data, + writeProjectManifest: createManifestWriter({ + ...detectFileFormattingAndComments(text), + initialManifest: data, + manifestPath + }) + }; } - var groups = new Map(); - var notify = function(cb) { - groups.forEach(cb); - cb(subscriber); - }; - var handleError = function(err) { - return notify(function(consumer) { - return consumer.error(err); - }); - }; - var groupBySourceSubscriber = new GroupBySubscriber(subscriber, function(value) { - try { - var key_1 = keySelector(value); - var group_1 = groups.get(key_1); - if (!group_1) { - groups.set(key_1, group_1 = connector ? connector() : new Subject_1.Subject()); - var grouped = createGroupedObservable(key_1, group_1); - subscriber.next(grouped); - if (duration) { - var durationSubscriber_1 = new OperatorSubscriber_1.OperatorSubscriber(group_1, function() { - group_1.complete(); - durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe(); - }, void 0, void 0, function() { - return groups.delete(key_1); - }); - groupBySourceSubscriber.add(from_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1)); - } - } - group_1.next(element ? element(value) : value); - } catch (err) { - handleError(err); - } - }, function() { - return notify(function(consumer) { - return consumer.complete(); - }); - }, handleError, function() { - return groups.clear(); - }); - source.subscribe(groupBySourceSubscriber); - function createGroupedObservable(key, groupSubject) { - var result = new Observable_1.Observable(function(groupSubscriber) { - groupBySourceSubscriber.activeGroups++; - var innerSub = groupSubject.subscribe(groupSubscriber); - return function() { - innerSub.unsubscribe(); - --groupBySourceSubscriber.activeGroups === 0 && groupBySourceSubscriber.teardownAttempted && groupBySourceSubscriber.unsubscribe(); - }; - }); - result.key = key; - return result; + case "package.yaml": { + const manifest = await readPackageYaml(manifestPath); + return { + manifest, + writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath }) + }; } - }); + } + throw new Error(`Not supported manifest name "${base}"`); } - exports2.groupBy = groupBy; - var GroupBySubscriber = function(_super) { - __extends(GroupBySubscriber2, _super); - function GroupBySubscriber2() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.activeGroups = 0; - _this.teardownAttempted = false; - return _this; + exports2.readExactProjectManifest = readExactProjectManifest; + async function readPackageYaml(filePath) { + try { + return await (0, read_yaml_file_1.default)(filePath); + } catch (err) { + if (err.name !== "YAMLException") + throw err; + err.message = `${err.message} +in ${filePath}`; + err.code = "ERR_PNPM_YAML_PARSE"; + throw err; } - GroupBySubscriber2.prototype.unsubscribe = function() { - this.teardownAttempted = true; - this.activeGroups === 0 && _super.prototype.unsubscribe.call(this); + } + function createManifestWriter(opts) { + let initialManifest = normalize(opts.initialManifest); + return async (updatedManifest, force) => { + updatedManifest = normalize(updatedManifest); + if (force === true || !(0, fast_deep_equal_1.default)(initialManifest, updatedManifest)) { + await (0, write_project_manifest_1.writeProjectManifest)(opts.manifestPath, updatedManifest, { + comments: opts.comments, + indent: opts.indent, + insertFinalNewline: opts.insertFinalNewline + }); + initialManifest = normalize(updatedManifest); + return Promise.resolve(void 0); + } + return Promise.resolve(void 0); }; - return GroupBySubscriber2; - }(OperatorSubscriber_1.OperatorSubscriber); - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js -var require_isEmpty = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isEmpty = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function isEmpty() { - return lift_1.operate(function(source, subscriber) { - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - subscriber.next(false); - subscriber.complete(); - }, function() { - subscriber.next(true); - subscriber.complete(); - })); - }); } - exports2.isEmpty = isEmpty; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js -var require_takeLast = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js"(exports2) { - "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.takeLast = void 0; - var empty_1 = require_empty(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function takeLast(count) { - return count <= 0 ? function() { - return empty_1.EMPTY; - } : lift_1.operate(function(source, subscriber) { - var buffer = []; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - buffer.push(value); - count < buffer.length && buffer.shift(); - }, function() { - var e_1, _a; - try { - for (var buffer_1 = __values(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) { - var value = buffer_1_1.value; - subscriber.next(value); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) - _a.call(buffer_1); - } finally { - if (e_1) - throw e_1.error; - } - } - subscriber.complete(); - }, void 0, function() { - buffer = null; - })); - }); + var dependencyKeys = /* @__PURE__ */ new Set([ + "dependencies", + "devDependencies", + "optionalDependencies", + "peerDependencies" + ]); + function normalize(manifest) { + manifest = JSON.parse(JSON.stringify(manifest)); + const result2 = {}; + for (const [key, value] of Object.entries(manifest)) { + if (!dependencyKeys.has(key)) { + result2[key] = value; + } else if (Object.keys(value).length !== 0) { + result2[key] = (0, sort_keys_1.default)(value); + } + } + return result2; } - exports2.takeLast = takeLast; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/last.js -var require_last = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/last.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.last = void 0; - var EmptyError_1 = require_EmptyError(); - var filter_1 = require_filter(); - var takeLast_1 = require_takeLast(); - var throwIfEmpty_1 = require_throwIfEmpty(); - var defaultIfEmpty_1 = require_defaultIfEmpty(); - var identity_1 = require_identity(); - function last(predicate, defaultValue) { - var hasDefaultValue = arguments.length >= 2; - return function(source) { - return source.pipe(predicate ? filter_1.filter(function(v, i) { - return predicate(v, i, source); - }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { - return new EmptyError_1.EmptyError(); - })); - }; +// ../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js +var require_windows = __commonJS({ + "../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js"(exports2, module2) { + module2.exports = isexe; + isexe.sync = sync; + var fs2 = require("fs"); + function checkPathExt(path2, options) { + var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT; + if (!pathext) { + return true; + } + pathext = pathext.split(";"); + if (pathext.indexOf("") !== -1) { + return true; + } + for (var i = 0; i < pathext.length; i++) { + var p = pathext[i].toLowerCase(); + if (p && path2.substr(-p.length).toLowerCase() === p) { + return true; + } + } + return false; } - exports2.last = last; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/materialize.js -var require_materialize = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/materialize.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.materialize = void 0; - var Notification_1 = require_Notification(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function materialize() { - return lift_1.operate(function(source, subscriber) { - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - subscriber.next(Notification_1.Notification.createNext(value)); - }, function() { - subscriber.next(Notification_1.Notification.createComplete()); - subscriber.complete(); - }, function(err) { - subscriber.next(Notification_1.Notification.createError(err)); - subscriber.complete(); - })); + function checkStat(stat, path2, options) { + if (!stat.isSymbolicLink() && !stat.isFile()) { + return false; + } + return checkPathExt(path2, options); + } + function isexe(path2, options, cb) { + fs2.stat(path2, function(er, stat) { + cb(er, er ? false : checkStat(stat, path2, options)); }); } - exports2.materialize = materialize; + function sync(path2, options) { + return checkStat(fs2.statSync(path2), path2, options); + } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/max.js -var require_max = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/max.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.max = void 0; - var reduce_1 = require_reduce(); - var isFunction_1 = require_isFunction(); - function max(comparer) { - return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { - return comparer(x, y) > 0 ? x : y; - } : function(x, y) { - return x > y ? x : y; +// ../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js +var require_mode = __commonJS({ + "../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js"(exports2, module2) { + module2.exports = isexe; + isexe.sync = sync; + var fs2 = require("fs"); + function isexe(path2, options, cb) { + fs2.stat(path2, function(er, stat) { + cb(er, er ? false : checkStat(stat, options)); }); } - exports2.max = max; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js -var require_flatMap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.flatMap = void 0; - var mergeMap_1 = require_mergeMap(); - exports2.flatMap = mergeMap_1.mergeMap; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js -var require_mergeMapTo = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeMapTo = void 0; - var mergeMap_1 = require_mergeMap(); - var isFunction_1 = require_isFunction(); - function mergeMapTo(innerObservable, resultSelector, concurrent) { - if (concurrent === void 0) { - concurrent = Infinity; - } - if (isFunction_1.isFunction(resultSelector)) { - return mergeMap_1.mergeMap(function() { - return innerObservable; - }, resultSelector, concurrent); - } - if (typeof resultSelector === "number") { - concurrent = resultSelector; - } - return mergeMap_1.mergeMap(function() { - return innerObservable; - }, concurrent); + function sync(path2, options) { + return checkStat(fs2.statSync(path2), options); + } + function checkStat(stat, options) { + return stat.isFile() && checkMode(stat, options); + } + function checkMode(stat, options) { + var mod = stat.mode; + var uid = stat.uid; + var gid = stat.gid; + var myUid = options.uid !== void 0 ? options.uid : process.getuid && process.getuid(); + var myGid = options.gid !== void 0 ? options.gid : process.getgid && process.getgid(); + var u = parseInt("100", 8); + var g = parseInt("010", 8); + var o = parseInt("001", 8); + var ug = u | g; + var ret = mod & o || mod & g && gid === myGid || mod & u && uid === myUid || mod & ug && myUid === 0; + return ret; } - exports2.mergeMapTo = mergeMapTo; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js -var require_mergeScan = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeScan = void 0; - var lift_1 = require_lift(); - var mergeInternals_1 = require_mergeInternals(); - function mergeScan(accumulator, seed, concurrent) { - if (concurrent === void 0) { - concurrent = Infinity; +// ../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js +var require_isexe = __commonJS({ + "../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js"(exports2, module2) { + var fs2 = require("fs"); + var core; + if (process.platform === "win32" || global.TESTING_WINDOWS) { + core = require_windows(); + } else { + core = require_mode(); + } + module2.exports = isexe; + isexe.sync = sync; + function isexe(path2, options, cb) { + if (typeof options === "function") { + cb = options; + options = {}; } - return lift_1.operate(function(source, subscriber) { - var state = seed; - return mergeInternals_1.mergeInternals(source, subscriber, function(value, index) { - return accumulator(state, value, index); - }, concurrent, function(value) { - state = value; - }, false, void 0, function() { - return state = null; + if (!cb) { + if (typeof Promise !== "function") { + throw new TypeError("callback not provided"); + } + return new Promise(function(resolve, reject) { + isexe(path2, options || {}, function(er, is) { + if (er) { + reject(er); + } else { + resolve(is); + } + }); }); + } + core(path2, options || {}, function(er, is) { + if (er) { + if (er.code === "EACCES" || options && options.ignoreErrors) { + er = null; + is = false; + } + } + cb(er, is); }); } - exports2.mergeScan = mergeScan; + function sync(path2, options) { + try { + return core.sync(path2, options || {}); + } catch (er) { + if (options && options.ignoreErrors || er.code === "EACCES") { + return false; + } else { + throw er; + } + } + } } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/merge.js -var require_merge2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/merge.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } +// ../node_modules/.pnpm/@zkochan+which@2.0.3/node_modules/@zkochan/which/which.js +var require_which = __commonJS({ + "../node_modules/.pnpm/@zkochan+which@2.0.3/node_modules/@zkochan/which/which.js"(exports2, module2) { + var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys"; + var path2 = require("path"); + var COLON = isWindows ? ";" : ":"; + var isexe = require_isexe(); + var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); + var getPathInfo = (cmd, opt) => { + const colon = opt.colon || COLON; + const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : (opt.path || process.env.PATH || /* istanbul ignore next: very unusual */ + "").split(colon); + const pathExtExe = isWindows ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : ""; + const pathExt = isWindows ? pathExtExe.split(colon) : [""]; + if (isWindows) { + if (cmd.indexOf(".") !== -1 && pathExt[0] !== "") + pathExt.unshift(""); } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + return { + pathEnv, + pathExt, + pathExtExe + }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.merge = void 0; - var lift_1 = require_lift(); - var argsOrArgArray_1 = require_argsOrArgArray(); - var fromArray_1 = require_fromArray(); - var mergeAll_1 = require_mergeAll(); - var args_1 = require_args(); - function merge() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + var which = (cmd, opt, cb) => { + if (typeof opt === "function") { + cb = opt; + opt = {}; } - var scheduler = args_1.popScheduler(args2); - var concurrent = args_1.popNumber(args2, Infinity); - args2 = argsOrArgArray_1.argsOrArgArray(args2); - return lift_1.operate(function(source, subscriber) { - mergeAll_1.mergeAll(concurrent)(fromArray_1.internalFromArray(__spreadArray([source], __read(args2)), scheduler)).subscribe(subscriber); + if (!opt) + opt = {}; + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + const step = (i) => new Promise((resolve, reject) => { + if (i === pathEnv.length) + return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd)); + const ppRaw = pathEnv[i]; + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; + const pCmd = path2.join(pathPart, cmd); + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; + resolve(subStep(p, i, 0)); }); - } - exports2.merge = merge; + const subStep = (p, i, ii) => new Promise((resolve, reject) => { + if (ii === pathExt.length) + return resolve(step(i + 1)); + const ext = pathExt[ii]; + isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { + if (!er && is) { + if (opt.all) + found.push(p + ext); + else + return resolve(p + ext); + } + return resolve(subStep(p, i, ii + 1)); + }); + }); + return cb ? step(0).then((res) => cb(null, res), cb) : step(0); + }; + var whichSync = (cmd, opt) => { + opt = opt || {}; + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (let i = 0; i < pathEnv.length; i++) { + const ppRaw = pathEnv[i]; + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; + const pCmd = path2.join(pathPart, cmd); + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; + for (let j = 0; j < pathExt.length; j++) { + const cur = p + pathExt[j]; + try { + const is = isexe.sync(cur, { pathExt: pathExtExe }); + if (is) { + if (opt.all) + found.push(cur); + else + return cur; + } + } catch (ex) { + } + } + } + if (opt.all && found.length) + return found; + if (opt.nothrow) + return null; + throw getNotFoundError(cmd); + }; + module2.exports = which; + which.sync = whichSync; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js -var require_mergeWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } +// ../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js +var require_which2 = __commonJS({ + "../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js"(exports2, module2) { + var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys"; + var path2 = require("path"); + var COLON = isWindows ? ";" : ":"; + var isexe = require_isexe(); + var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); + var getPathInfo = (cmd, opt) => { + const colon = opt.colon || COLON; + const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : [ + // windows always checks the cwd first + ...isWindows ? [process.cwd()] : [], + ...(opt.path || process.env.PATH || /* istanbul ignore next: very unusual */ + "").split(colon) + ]; + const pathExtExe = isWindows ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : ""; + const pathExt = isWindows ? pathExtExe.split(colon) : [""]; + if (isWindows) { + if (cmd.indexOf(".") !== -1 && pathExt[0] !== "") + pathExt.unshift(""); } - return ar; + return { + pathEnv, + pathExt, + pathExtExe + }; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + var which = (cmd, opt, cb) => { + if (typeof opt === "function") { + cb = opt; + opt = {}; + } + if (!opt) + opt = {}; + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + const step = (i) => new Promise((resolve, reject) => { + if (i === pathEnv.length) + return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd)); + const ppRaw = pathEnv[i]; + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; + const pCmd = path2.join(pathPart, cmd); + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; + resolve(subStep(p, i, 0)); + }); + const subStep = (p, i, ii) => new Promise((resolve, reject) => { + if (ii === pathExt.length) + return resolve(step(i + 1)); + const ext = pathExt[ii]; + isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { + if (!er && is) { + if (opt.all) + found.push(p + ext); + else + return resolve(p + ext); + } + return resolve(subStep(p, i, ii + 1)); + }); + }); + return cb ? step(0).then((res) => cb(null, res), cb) : step(0); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeWith = void 0; - var merge_1 = require_merge2(); - function mergeWith() { - var otherSources = []; - for (var _i = 0; _i < arguments.length; _i++) { - otherSources[_i] = arguments[_i]; + var whichSync = (cmd, opt) => { + opt = opt || {}; + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (let i = 0; i < pathEnv.length; i++) { + const ppRaw = pathEnv[i]; + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; + const pCmd = path2.join(pathPart, cmd); + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; + for (let j = 0; j < pathExt.length; j++) { + const cur = p + pathExt[j]; + try { + const is = isexe.sync(cur, { pathExt: pathExtExe }); + if (is) { + if (opt.all) + found.push(cur); + else + return cur; + } + } catch (ex) { + } + } } - return merge_1.merge.apply(void 0, __spreadArray([], __read(otherSources))); - } - exports2.mergeWith = mergeWith; + if (opt.all && found.length) + return found; + if (opt.nothrow) + return null; + throw getNotFoundError(cmd); + }; + module2.exports = which; + which.sync = whichSync; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/min.js -var require_min = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/min.js"(exports2) { +// ../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js +var require_path_key = __commonJS({ + "../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.min = void 0; - var reduce_1 = require_reduce(); - var isFunction_1 = require_isFunction(); - function min(comparer) { - return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { - return comparer(x, y) < 0 ? x : y; - } : function(x, y) { - return x < y ? x : y; - }); - } - exports2.min = min; + var pathKey = (options = {}) => { + const environment = options.env || process.env; + const platform = options.platform || process.platform; + if (platform !== "win32") { + return "PATH"; + } + return Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path"; + }; + module2.exports = pathKey; + module2.exports.default = pathKey; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/multicast.js -var require_multicast = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/multicast.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/resolveCommand.js +var require_resolveCommand = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.multicast = void 0; - var ConnectableObservable_1 = require_ConnectableObservable(); - var isFunction_1 = require_isFunction(); - var connect_1 = require_connect(); - function multicast(subjectOrSubjectFactory, selector) { - var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function() { - return subjectOrSubjectFactory; - }; - if (isFunction_1.isFunction(selector)) { - return connect_1.connect(selector, { - connector: subjectFactory + var path2 = require("path"); + var which = require_which2(); + var getPathKey = require_path_key(); + function resolveCommandAttempt(parsed, withoutPathExt) { + const env = parsed.options.env || process.env; + const cwd = process.cwd(); + const hasCustomCwd = parsed.options.cwd != null; + const shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled; + if (shouldSwitchCwd) { + try { + process.chdir(parsed.options.cwd); + } catch (err) { + } + } + let resolved; + try { + resolved = which.sync(parsed.command, { + path: env[getPathKey({ env })], + pathExt: withoutPathExt ? path2.delimiter : void 0 }); + } catch (e) { + } finally { + if (shouldSwitchCwd) { + process.chdir(cwd); + } } - return function(source) { - return new ConnectableObservable_1.ConnectableObservable(source, subjectFactory); - }; + if (resolved) { + resolved = path2.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved); + } + return resolved; } - exports2.multicast = multicast; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js -var require_pairwise = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.pairwise = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function pairwise() { - return lift_1.operate(function(source, subscriber) { - var prev; - var hasPrev = false; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var p = prev; - prev = value; - hasPrev && subscriber.next([p, value]); - hasPrev = true; - })); - }); + function resolveCommand(parsed) { + return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true); } - exports2.pairwise = pairwise; + module2.exports = resolveCommand; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/pluck.js -var require_pluck = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/pluck.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/escape.js +var require_escape = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/escape.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.pluck = void 0; - var map_1 = require_map(); - function pluck() { - var properties = []; - for (var _i = 0; _i < arguments.length; _i++) { - properties[_i] = arguments[_i]; - } - var length = properties.length; - if (length === 0) { - throw new Error("list of properties cannot be empty."); + var metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g; + function escapeCommand(arg) { + arg = arg.replace(metaCharsRegExp, "^$1"); + return arg; + } + function escapeArgument(arg, doubleEscapeMetaChars) { + arg = `${arg}`; + arg = arg.replace(/(\\*)"/g, '$1$1\\"'); + arg = arg.replace(/(\\*)$/, "$1$1"); + arg = `"${arg}"`; + arg = arg.replace(metaCharsRegExp, "^$1"); + if (doubleEscapeMetaChars) { + arg = arg.replace(metaCharsRegExp, "^$1"); } - return map_1.map(function(x) { - var currentProp = x; - for (var i = 0; i < length; i++) { - var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]]; - if (typeof p !== "undefined") { - currentProp = p; - } else { - return void 0; - } - } - return currentProp; - }); + return arg; } - exports2.pluck = pluck; + module2.exports.command = escapeCommand; + module2.exports.argument = escapeArgument; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publish.js -var require_publish = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publish.js"(exports2) { +// ../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js +var require_shebang_regex = __commonJS({ + "../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.publish = void 0; - var Subject_1 = require_Subject(); - var multicast_1 = require_multicast(); - var connect_1 = require_connect(); - function publish(selector) { - return selector ? function(source) { - return connect_1.connect(selector)(source); - } : function(source) { - return multicast_1.multicast(new Subject_1.Subject())(source); - }; - } - exports2.publish = publish; + module2.exports = /^#!(.*)/; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js -var require_publishBehavior = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js"(exports2) { +// ../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js +var require_shebang_command = __commonJS({ + "../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.publishBehavior = void 0; - var BehaviorSubject_1 = require_BehaviorSubject(); - var ConnectableObservable_1 = require_ConnectableObservable(); - function publishBehavior(initialValue) { - return function(source) { - var subject = new BehaviorSubject_1.BehaviorSubject(initialValue); - return new ConnectableObservable_1.ConnectableObservable(source, function() { - return subject; - }); - }; - } - exports2.publishBehavior = publishBehavior; + var shebangRegex = require_shebang_regex(); + module2.exports = (string = "") => { + const match = string.match(shebangRegex); + if (!match) { + return null; + } + const [path2, argument] = match[0].replace(/#! ?/, "").split(" "); + const binary = path2.split("/").pop(); + if (binary === "env") { + return argument; + } + return argument ? `${binary} ${argument}` : binary; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js -var require_publishLast = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/readShebang.js +var require_readShebang = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/readShebang.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.publishLast = void 0; - var AsyncSubject_1 = require_AsyncSubject(); - var ConnectableObservable_1 = require_ConnectableObservable(); - function publishLast() { - return function(source) { - var subject = new AsyncSubject_1.AsyncSubject(); - return new ConnectableObservable_1.ConnectableObservable(source, function() { - return subject; - }); - }; + var fs2 = require("fs"); + var shebangCommand = require_shebang_command(); + function readShebang(command) { + const size = 150; + const buffer = Buffer.alloc(size); + let fd; + try { + fd = fs2.openSync(command, "r"); + fs2.readSync(fd, buffer, 0, size, 0); + fs2.closeSync(fd); + } catch (e) { + } + return shebangCommand(buffer.toString()); } - exports2.publishLast = publishLast; + module2.exports = readShebang; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js -var require_publishReplay = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/parse.js +var require_parse2 = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/parse.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.publishReplay = void 0; - var ReplaySubject_1 = require_ReplaySubject(); - var multicast_1 = require_multicast(); - var isFunction_1 = require_isFunction(); - function publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) { - if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) { - timestampProvider = selectorOrScheduler; + var path2 = require("path"); + var resolveCommand = require_resolveCommand(); + var escape = require_escape(); + var readShebang = require_readShebang(); + var isWin = process.platform === "win32"; + var isExecutableRegExp = /\.(?:com|exe)$/i; + var isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i; + function detectShebang(parsed) { + parsed.file = resolveCommand(parsed); + const shebang = parsed.file && readShebang(parsed.file); + if (shebang) { + parsed.args.unshift(parsed.file); + parsed.command = shebang; + return resolveCommand(parsed); } - var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : void 0; - return function(source) { - return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source); - }; + return parsed.file; } - exports2.publishReplay = publishReplay; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js -var require_raceWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + function parseNonShell(parsed) { + if (!isWin) { + return parsed; } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.raceWith = void 0; - var race_1 = require_race(); - var lift_1 = require_lift(); - var identity_1 = require_identity(); - function raceWith() { - var otherSources = []; - for (var _i = 0; _i < arguments.length; _i++) { - otherSources[_i] = arguments[_i]; + const commandFile = detectShebang(parsed); + const needsShell = !isExecutableRegExp.test(commandFile); + if (parsed.options.forceShell || needsShell) { + const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile); + parsed.command = path2.normalize(parsed.command); + parsed.command = escape.command(parsed.command); + parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars)); + const shellCommand = [parsed.command].concat(parsed.args).join(" "); + parsed.args = ["/d", "/s", "/c", `"${shellCommand}"`]; + parsed.command = process.env.comspec || "cmd.exe"; + parsed.options.windowsVerbatimArguments = true; } - return !otherSources.length ? identity_1.identity : lift_1.operate(function(source, subscriber) { - race_1.raceInit(__spreadArray([source], __read(otherSources)))(subscriber); - }); + return parsed; } - exports2.raceWith = raceWith; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/repeat.js -var require_repeat = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/repeat.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.repeat = void 0; - var empty_1 = require_empty(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function repeat(count) { - if (count === void 0) { - count = Infinity; + function parse2(command, args2, options) { + if (args2 && !Array.isArray(args2)) { + options = args2; + args2 = null; } - return count <= 0 ? function() { - return empty_1.EMPTY; - } : lift_1.operate(function(source, subscriber) { - var soFar = 0; - var innerSub; - var subscribeForRepeat = function() { - var syncUnsub = false; - innerSub = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, function() { - if (++soFar < count) { - if (innerSub) { - innerSub.unsubscribe(); - innerSub = null; - subscribeForRepeat(); - } else { - syncUnsub = true; - } - } else { - subscriber.complete(); - } - })); - if (syncUnsub) { - innerSub.unsubscribe(); - innerSub = null; - subscribeForRepeat(); - } - }; - subscribeForRepeat(); - }); + args2 = args2 ? args2.slice(0) : []; + options = Object.assign({}, options); + const parsed = { + command, + args: args2, + options, + file: void 0, + original: { + command, + args: args2 + } + }; + return options.shell ? parsed : parseNonShell(parsed); } - exports2.repeat = repeat; + module2.exports = parse2; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js -var require_repeatWhen = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/enoent.js +var require_enoent = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/enoent.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.repeatWhen = void 0; - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function repeatWhen(notifier) { - return lift_1.operate(function(source, subscriber) { - var innerSub; - var syncResub = false; - var completions$; - var isNotifierComplete = false; - var isMainComplete = false; - var checkComplete = function() { - return isMainComplete && isNotifierComplete && (subscriber.complete(), true); - }; - var getCompletionSubject = function() { - if (!completions$) { - completions$ = new Subject_1.Subject(); - notifier(completions$).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - if (innerSub) { - subscribeForRepeatWhen(); - } else { - syncResub = true; - } - }, function() { - isNotifierComplete = true; - checkComplete(); - })); - } - return completions$; - }; - var subscribeForRepeatWhen = function() { - isMainComplete = false; - innerSub = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, function() { - isMainComplete = true; - !checkComplete() && getCompletionSubject().next(); - })); - if (syncResub) { - innerSub.unsubscribe(); - innerSub = null; - syncResub = false; - subscribeForRepeatWhen(); - } - }; - subscribeForRepeatWhen(); + var isWin = process.platform === "win32"; + function notFoundError(original, syscall) { + return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), { + code: "ENOENT", + errno: "ENOENT", + syscall: `${syscall} ${original.command}`, + path: original.command, + spawnargs: original.args }); } - exports2.repeatWhen = repeatWhen; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/retry.js -var require_retry = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/retry.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.retry = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var identity_1 = require_identity(); - var timer_1 = require_timer2(); - var from_1 = require_from2(); - function retry(configOrCount) { - if (configOrCount === void 0) { - configOrCount = Infinity; - } - var config; - if (configOrCount && typeof configOrCount === "object") { - config = configOrCount; - } else { - config = { - count: configOrCount - }; + function hookChildProcess(cp, parsed) { + if (!isWin) { + return; } - var _a = config.count, count = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b; - return count <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { - var soFar = 0; - var innerSub; - var subscribeForRetry = function() { - var syncUnsub = false; - innerSub = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (resetOnSuccess) { - soFar = 0; - } - subscriber.next(value); - }, void 0, function(err) { - if (soFar++ < count) { - var resub_1 = function() { - if (innerSub) { - innerSub.unsubscribe(); - innerSub = null; - subscribeForRetry(); - } else { - syncUnsub = true; - } - }; - if (delay != null) { - var notifier = typeof delay === "number" ? timer_1.timer(delay) : from_1.innerFrom(delay(err, soFar)); - var notifierSubscriber_1 = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - notifierSubscriber_1.unsubscribe(); - resub_1(); - }, function() { - subscriber.complete(); - }); - notifier.subscribe(notifierSubscriber_1); - } else { - resub_1(); - } - } else { - subscriber.error(err); - } - })); - if (syncUnsub) { - innerSub.unsubscribe(); - innerSub = null; - subscribeForRetry(); + const originalEmit = cp.emit; + cp.emit = function(name, arg1) { + if (name === "exit") { + const err = verifyENOENT(arg1, parsed, "spawn"); + if (err) { + return originalEmit.call(cp, "error", err); } - }; - subscribeForRetry(); - }); + } + return originalEmit.apply(cp, arguments); + }; } - exports2.retry = retry; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js -var require_retryWhen = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.retryWhen = void 0; - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function retryWhen(notifier) { - return lift_1.operate(function(source, subscriber) { - var innerSub; - var syncResub = false; - var errors$; - var subscribeForRetryWhen = function() { - innerSub = source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, void 0, function(err) { - if (!errors$) { - errors$ = new Subject_1.Subject(); - notifier(errors$).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - return innerSub ? subscribeForRetryWhen() : syncResub = true; - })); - } - if (errors$) { - errors$.next(err); - } - })); - if (syncResub) { - innerSub.unsubscribe(); - innerSub = null; - syncResub = false; - subscribeForRetryWhen(); - } - }; - subscribeForRetryWhen(); - }); + function verifyENOENT(status, parsed) { + if (isWin && status === 1 && !parsed.file) { + return notFoundError(parsed.original, "spawn"); + } + return null; } - exports2.retryWhen = retryWhen; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sample.js -var require_sample = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sample.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sample = void 0; - var lift_1 = require_lift(); - var noop_1 = require_noop(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function sample(notifier) { - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - var lastValue = null; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - hasValue = true; - lastValue = value; - })); - var emit = function() { - if (hasValue) { - hasValue = false; - var value = lastValue; - lastValue = null; - subscriber.next(value); - } - }; - notifier.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, emit, noop_1.noop)); - }); + function verifyENOENTSync(status, parsed) { + if (isWin && status === 1 && !parsed.file) { + return notFoundError(parsed.original, "spawnSync"); + } + return null; } - exports2.sample = sample; + module2.exports = { + hookChildProcess, + verifyENOENT, + verifyENOENTSync, + notFoundError + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js -var require_sampleTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js"(exports2) { +// ../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/index.js +var require_cross_spawn = __commonJS({ + "../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sampleTime = void 0; - var async_1 = require_async(); - var sample_1 = require_sample(); - var interval_1 = require_interval(); - function sampleTime(period, scheduler) { - if (scheduler === void 0) { - scheduler = async_1.asyncScheduler; - } - return sample_1.sample(interval_1.interval(period, scheduler)); + var cp = require("child_process"); + var parse2 = require_parse2(); + var enoent = require_enoent(); + function spawn(command, args2, options) { + const parsed = parse2(command, args2, options); + const spawned = cp.spawn(parsed.command, parsed.args, parsed.options); + enoent.hookChildProcess(spawned, parsed); + return spawned; } - exports2.sampleTime = sampleTime; + function spawnSync(command, args2, options) { + const parsed = parse2(command, args2, options); + const result2 = cp.spawnSync(parsed.command, parsed.args, parsed.options); + result2.error = result2.error || enoent.verifyENOENTSync(result2.status, parsed); + return result2; + } + module2.exports = spawn; + module2.exports.spawn = spawn; + module2.exports.sync = spawnSync; + module2.exports._parse = parse2; + module2.exports._enoent = enoent; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/scan.js -var require_scan = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/scan.js"(exports2) { +// ../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js +var require_strip_final_newline = __commonJS({ + "../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scan = void 0; - var lift_1 = require_lift(); - var scanInternals_1 = require_scanInternals(); - function scan(accumulator, seed) { - return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true)); - } - exports2.scan = scan; + module2.exports = (input) => { + const LF = typeof input === "string" ? "\n" : "\n".charCodeAt(); + const CR = typeof input === "string" ? "\r" : "\r".charCodeAt(); + if (input[input.length - 1] === LF) { + input = input.slice(0, input.length - 1); + } + if (input[input.length - 1] === CR) { + input = input.slice(0, input.length - 1); + } + return input; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js -var require_sequenceEqual = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js"(exports2) { +// ../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js +var require_npm_run_path = __commonJS({ + "../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sequenceEqual = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function sequenceEqual(compareTo, comparator) { - if (comparator === void 0) { - comparator = function(a, b) { - return a === b; - }; + var path2 = require("path"); + var pathKey = require_path_key(); + var npmRunPath = (options) => { + options = { + cwd: process.cwd(), + path: process.env[pathKey()], + execPath: process.execPath, + ...options + }; + let previous; + let cwdPath = path2.resolve(options.cwd); + const result2 = []; + while (previous !== cwdPath) { + result2.push(path2.join(cwdPath, "node_modules/.bin")); + previous = cwdPath; + cwdPath = path2.resolve(cwdPath, ".."); } - return lift_1.operate(function(source, subscriber) { - var aState = createState(); - var bState = createState(); - var emit = function(isEqual) { - subscriber.next(isEqual); - subscriber.complete(); - }; - var createSubscriber = function(selfState, otherState) { - var sequenceEqualSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(a) { - var buffer = otherState.buffer, complete = otherState.complete; - if (buffer.length === 0) { - complete ? emit(false) : selfState.buffer.push(a); - } else { - !comparator(a, buffer.shift()) && emit(false); - } - }, function() { - selfState.complete = true; - var complete = otherState.complete, buffer = otherState.buffer; - complete && emit(buffer.length === 0); - sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe(); - }); - return sequenceEqualSubscriber; - }; - source.subscribe(createSubscriber(aState, bState)); - compareTo.subscribe(createSubscriber(bState, aState)); - }); - } - exports2.sequenceEqual = sequenceEqual; - function createState() { - return { - buffer: [], - complete: false + const execPathDir = path2.resolve(options.cwd, options.execPath, ".."); + result2.push(execPathDir); + return result2.concat(options.path).join(path2.delimiter); + }; + module2.exports = npmRunPath; + module2.exports.default = npmRunPath; + module2.exports.env = (options) => { + options = { + env: process.env, + ...options }; - } + const env = { ...options.env }; + const path3 = pathKey({ env }); + options.path = env[path3]; + env[path3] = module2.exports(options); + return env; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/share.js -var require_share = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/share.js"(exports2) { +// ../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js +var require_mimic_fn = __commonJS({ + "../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + var mimicFn = (to, from) => { + for (const prop of Reflect.ownKeys(from)) { + Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop)); } - return ar; - }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; return to; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.share = void 0; - var from_1 = require_from2(); - var take_1 = require_take(); - var Subject_1 = require_Subject(); - var Subscriber_1 = require_Subscriber(); - var lift_1 = require_lift(); - function share(options) { - if (options === void 0) { - options = {}; - } - var _a = options.connector, connector = _a === void 0 ? function() { - return new Subject_1.Subject(); - } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d; - return function(wrapperSource) { - var connection = null; - var resetConnection = null; - var subject = null; - var refCount = 0; - var hasCompleted = false; - var hasErrored = false; - var cancelReset = function() { - resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe(); - resetConnection = null; - }; - var reset = function() { - cancelReset(); - connection = subject = null; - hasCompleted = hasErrored = false; - }; - var resetAndUnsubscribe = function() { - var conn = connection; - reset(); - conn === null || conn === void 0 ? void 0 : conn.unsubscribe(); - }; - return lift_1.operate(function(source, subscriber) { - refCount++; - if (!hasErrored && !hasCompleted) { - cancelReset(); - } - var dest = subject = subject !== null && subject !== void 0 ? subject : connector(); - subscriber.add(function() { - refCount--; - if (refCount === 0 && !hasErrored && !hasCompleted) { - resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero); - } - }); - dest.subscribe(subscriber); - if (!connection) { - connection = new Subscriber_1.SafeSubscriber({ - next: function(value) { - return dest.next(value); - }, - error: function(err) { - hasErrored = true; - cancelReset(); - resetConnection = handleReset(reset, resetOnError, err); - dest.error(err); - }, - complete: function() { - hasCompleted = true; - cancelReset(); - resetConnection = handleReset(reset, resetOnComplete); - dest.complete(); - } - }); - from_1.from(source).subscribe(connection); - } - })(wrapperSource); - }; - } - exports2.share = share; - function handleReset(reset, on) { - var args2 = []; - for (var _i = 2; _i < arguments.length; _i++) { - args2[_i - 2] = arguments[_i]; - } - if (on === true) { - reset(); - return null; - } - if (on === false) { - return null; - } - return on.apply(void 0, __spreadArray([], __read(args2))).pipe(take_1.take(1)).subscribe(function() { - return reset(); - }); - } + module2.exports = mimicFn; + module2.exports.default = mimicFn; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js -var require_shareReplay = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js"(exports2) { +// ../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js +var require_onetime = __commonJS({ + "../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.shareReplay = void 0; - var ReplaySubject_1 = require_ReplaySubject(); - var share_1 = require_share(); - function shareReplay(configOrBufferSize, windowTime, scheduler) { - var _a, _b; - var bufferSize; - var refCount = false; - if (configOrBufferSize && typeof configOrBufferSize === "object") { - bufferSize = (_a = configOrBufferSize.bufferSize) !== null && _a !== void 0 ? _a : Infinity; - windowTime = (_b = configOrBufferSize.windowTime) !== null && _b !== void 0 ? _b : Infinity; - refCount = !!configOrBufferSize.refCount; - scheduler = configOrBufferSize.scheduler; - } else { - bufferSize = configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity; + var mimicFn = require_mimic_fn(); + var calledFunctions = /* @__PURE__ */ new WeakMap(); + var onetime = (function_, options = {}) => { + if (typeof function_ !== "function") { + throw new TypeError("Expected a function"); } - return share_1.share({ - connector: function() { - return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler); - }, - resetOnError: true, - resetOnComplete: false, - resetOnRefCountZero: refCount - }); - } - exports2.shareReplay = shareReplay; + let returnValue; + let callCount = 0; + const functionName = function_.displayName || function_.name || ""; + const onetime2 = function(...arguments_) { + calledFunctions.set(onetime2, ++callCount); + if (callCount === 1) { + returnValue = function_.apply(this, arguments_); + function_ = null; + } else if (options.throw === true) { + throw new Error(`Function \`${functionName}\` can only be called once`); + } + return returnValue; + }; + mimicFn(onetime2, function_); + calledFunctions.set(onetime2, callCount); + return onetime2; + }; + module2.exports = onetime; + module2.exports.default = onetime; + module2.exports.callCount = (function_) => { + if (!calledFunctions.has(function_)) { + throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`); + } + return calledFunctions.get(function_); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/single.js -var require_single = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/single.js"(exports2) { +// ../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js +var require_core3 = __commonJS({ + "../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.single = void 0; - var EmptyError_1 = require_EmptyError(); - var SequenceError_1 = require_SequenceError(); - var NotFoundError_1 = require_NotFoundError(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function single(predicate) { - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - var singleValue; - var seenValue = false; - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - seenValue = true; - if (!predicate || predicate(value, index++, source)) { - hasValue && subscriber.error(new SequenceError_1.SequenceError("Too many matching values")); - hasValue = true; - singleValue = value; - } - }, function() { - if (hasValue) { - subscriber.next(singleValue); - subscriber.complete(); - } else { - subscriber.error(seenValue ? new NotFoundError_1.NotFoundError("No matching values") : new EmptyError_1.EmptyError()); - } - })); - }); - } - exports2.single = single; + exports2.SIGNALS = void 0; + var SIGNALS = [ + { + 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: true + }, + { + 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: true + }, + { + name: "SIGSTOP", + number: 19, + action: "pause", + description: "Paused", + standard: "posix", + forced: true + }, + { + 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" + } + ]; + exports2.SIGNALS = SIGNALS; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skip.js -var require_skip = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skip.js"(exports2) { +// ../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js +var require_realtime = __commonJS({ + "../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.skip = void 0; - var filter_1 = require_filter(); - function skip(count) { - return filter_1.filter(function(_, index) { - return count <= index; - }); - } - exports2.skip = skip; + exports2.SIGRTMAX = exports2.getRealtimeSignals = void 0; + var getRealtimeSignals = function() { + const length = SIGRTMAX - SIGRTMIN + 1; + return Array.from({ length }, getRealtimeSignal); + }; + exports2.getRealtimeSignals = getRealtimeSignals; + var getRealtimeSignal = function(value, index) { + return { + name: `SIGRT${index + 1}`, + number: SIGRTMIN + index, + action: "terminate", + description: "Application-specific signal (realtime)", + standard: "posix" + }; + }; + var SIGRTMIN = 34; + var SIGRTMAX = 64; + exports2.SIGRTMAX = SIGRTMAX; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js -var require_skipLast = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js"(exports2) { +// ../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js +var require_signals3 = __commonJS({ + "../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.skipLast = void 0; - var identity_1 = require_identity(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function skipLast(skipCount) { - return skipCount <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { - var ring = new Array(skipCount); - var seen = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var valueIndex = seen++; - if (valueIndex < skipCount) { - ring[valueIndex] = value; - } else { - var index = valueIndex % skipCount; - var oldValue = ring[index]; - ring[index] = value; - subscriber.next(oldValue); - } - })); - return function() { - ring = null; - }; - }); - } - exports2.skipLast = skipLast; + exports2.getSignals = void 0; + var _os = require("os"); + var _core = require_core3(); + var _realtime = require_realtime(); + var getSignals = function() { + const realtimeSignals = (0, _realtime.getRealtimeSignals)(); + const signals = [..._core.SIGNALS, ...realtimeSignals].map(normalizeSignal); + return signals; + }; + exports2.getSignals = getSignals; + var normalizeSignal = function({ + name, + number: defaultNumber, + description, + action, + forced = false, + standard + }) { + const { + signals: { [name]: constantSignal } + } = _os.constants; + const supported = constantSignal !== void 0; + const number = supported ? constantSignal : defaultNumber; + return { name, number, description, supported, action, forced, standard }; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js -var require_skipUntil = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js"(exports2) { +// ../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js +var require_main = __commonJS({ + "../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.skipUntil = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - var noop_1 = require_noop(); - function skipUntil(notifier) { - return lift_1.operate(function(source, subscriber) { - var taking = false; - var skipSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe(); - taking = true; - }, noop_1.noop); - from_1.innerFrom(notifier).subscribe(skipSubscriber); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return taking && subscriber.next(value); - })); - }); - } - exports2.skipUntil = skipUntil; + exports2.signalsByNumber = exports2.signalsByName = void 0; + var _os = require("os"); + var _signals = require_signals3(); + var _realtime = require_realtime(); + var getSignalsByName = function() { + const signals = (0, _signals.getSignals)(); + return signals.reduce(getSignalByName, {}); + }; + var getSignalByName = function(signalByNameMemo, { name, number, description, supported, action, forced, standard }) { + return { + ...signalByNameMemo, + [name]: { name, number, description, supported, action, forced, standard } + }; + }; + var signalsByName = getSignalsByName(); + exports2.signalsByName = signalsByName; + var getSignalsByNumber = function() { + const signals = (0, _signals.getSignals)(); + const length = _realtime.SIGRTMAX + 1; + const signalsA = Array.from({ length }, (value, number) => getSignalByNumber(number, signals)); + return Object.assign({}, ...signalsA); + }; + var getSignalByNumber = function(number, signals) { + const signal = findSignalByNumber(number, signals); + if (signal === void 0) { + return {}; + } + const { name, description, supported, action, forced, standard } = signal; + return { + [number]: { + name, + number, + description, + supported, + action, + forced, + standard + } + }; + }; + var findSignalByNumber = function(number, signals) { + const signal = signals.find(({ name }) => _os.constants.signals[name] === number); + if (signal !== void 0) { + return signal; + } + return signals.find((signalA) => signalA.number === number); + }; + var signalsByNumber = getSignalsByNumber(); + exports2.signalsByNumber = signalsByNumber; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js -var require_skipWhile = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js +var require_error = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.skipWhile = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function skipWhile(predicate) { - return lift_1.operate(function(source, subscriber) { - var taking = false; - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return (taking || (taking = !predicate(value, index++))) && subscriber.next(value); - })); - }); - } - exports2.skipWhile = skipWhile; + var { signalsByName } = require_main(); + var getErrorPrefix = ({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }) => { + if (timedOut) { + return `timed out after ${timeout} milliseconds`; + } + if (isCanceled) { + return "was canceled"; + } + if (errorCode !== void 0) { + return `failed with ${errorCode}`; + } + if (signal !== void 0) { + return `was killed with ${signal} (${signalDescription})`; + } + if (exitCode !== void 0) { + return `failed with exit code ${exitCode}`; + } + return "failed"; + }; + var makeError = ({ + stdout, + stderr, + all, + error, + signal, + exitCode, + command, + escapedCommand, + timedOut, + isCanceled, + killed, + parsed: { options: { timeout } } + }) => { + exitCode = exitCode === null ? void 0 : exitCode; + signal = signal === null ? void 0 : signal; + const signalDescription = signal === void 0 ? void 0 : signalsByName[signal].description; + const errorCode = error && error.code; + const prefix = getErrorPrefix({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }); + const execaMessage = `Command ${prefix}: ${command}`; + const isError = Object.prototype.toString.call(error) === "[object Error]"; + const shortMessage = isError ? `${execaMessage} +${error.message}` : execaMessage; + const message2 = [shortMessage, stderr, stdout].filter(Boolean).join("\n"); + if (isError) { + error.originalMessage = error.message; + error.message = message2; + } else { + error = new Error(message2); + } + error.shortMessage = shortMessage; + error.command = command; + error.escapedCommand = escapedCommand; + error.exitCode = exitCode; + error.signal = signal; + error.signalDescription = signalDescription; + error.stdout = stdout; + error.stderr = stderr; + if (all !== void 0) { + error.all = all; + } + if ("bufferedData" in error) { + delete error.bufferedData; + } + error.failed = true; + error.timedOut = Boolean(timedOut); + error.isCanceled = isCanceled; + error.killed = killed && !timedOut; + return error; + }; + module2.exports = makeError; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/startWith.js -var require_startWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/startWith.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js +var require_stdio = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.startWith = void 0; - var concat_1 = require_concat(); - var args_1 = require_args(); - var lift_1 = require_lift(); - function startWith() { - var values = []; - for (var _i = 0; _i < arguments.length; _i++) { - values[_i] = arguments[_i]; + var aliases = ["stdin", "stdout", "stderr"]; + var hasAlias = (options) => aliases.some((alias) => options[alias] !== void 0); + var normalizeStdio = (options) => { + if (!options) { + return; } - var scheduler = args_1.popScheduler(values); - return lift_1.operate(function(source, subscriber) { - (scheduler ? concat_1.concat(values, source, scheduler) : concat_1.concat(values, source)).subscribe(subscriber); - }); - } - exports2.startWith = startWith; + const { stdio } = options; + if (stdio === void 0) { + return aliases.map((alias) => options[alias]); + } + if (hasAlias(options)) { + throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map((alias) => `\`${alias}\``).join(", ")}`); + } + if (typeof stdio === "string") { + return stdio; + } + if (!Array.isArray(stdio)) { + throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``); + } + const length = Math.max(stdio.length, aliases.length); + return Array.from({ length }, (value, index) => stdio[index]); + }; + module2.exports = normalizeStdio; + module2.exports.node = (options) => { + const stdio = normalizeStdio(options); + if (stdio === "ipc") { + return "ipc"; + } + if (stdio === void 0 || typeof stdio === "string") { + return [stdio, stdio, stdio, "ipc"]; + } + if (stdio.includes("ipc")) { + return stdio; + } + return [...stdio, "ipc"]; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js -var require_switchMap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js +var require_kill = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.switchMap = void 0; - var from_1 = require_from2(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function switchMap(project, resultSelector) { - return lift_1.operate(function(source, subscriber) { - var innerSubscriber = null; - var index = 0; - var isComplete = false; - var checkComplete = function() { - return isComplete && !innerSubscriber && subscriber.complete(); - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe(); - var innerIndex = 0; - var outerIndex = index++; - from_1.innerFrom(project(value, outerIndex)).subscribe(innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(innerValue) { - return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); - }, function() { - innerSubscriber = null; - checkComplete(); - })); - }, function() { - isComplete = true; - checkComplete(); - })); + var os = require("os"); + var onExit = require_signal_exit(); + var DEFAULT_FORCE_KILL_TIMEOUT = 1e3 * 5; + var spawnedKill = (kill, signal = "SIGTERM", options = {}) => { + const killResult = kill(signal); + setKillTimeout(kill, signal, options, killResult); + return killResult; + }; + var setKillTimeout = (kill, signal, options, killResult) => { + if (!shouldForceKill(signal, options, killResult)) { + return; + } + const timeout = getForceKillAfterTimeout(options); + const t = setTimeout(() => { + kill("SIGKILL"); + }, timeout); + if (t.unref) { + t.unref(); + } + }; + var shouldForceKill = (signal, { forceKillAfterTimeout }, killResult) => { + return isSigterm(signal) && forceKillAfterTimeout !== false && killResult; + }; + var isSigterm = (signal) => { + return signal === os.constants.signals.SIGTERM || typeof signal === "string" && signal.toUpperCase() === "SIGTERM"; + }; + var getForceKillAfterTimeout = ({ forceKillAfterTimeout = true }) => { + if (forceKillAfterTimeout === true) { + return DEFAULT_FORCE_KILL_TIMEOUT; + } + if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) { + throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`); + } + return forceKillAfterTimeout; + }; + var spawnedCancel = (spawned, context) => { + const killResult = spawned.kill(); + if (killResult) { + context.isCanceled = true; + } + }; + var timeoutKill = (spawned, signal, reject) => { + spawned.kill(signal); + reject(Object.assign(new Error("Timed out"), { timedOut: true, signal })); + }; + var setupTimeout = (spawned, { timeout, killSignal = "SIGTERM" }, spawnedPromise) => { + if (timeout === 0 || timeout === void 0) { + return spawnedPromise; + } + let timeoutId; + const timeoutPromise = new Promise((resolve, reject) => { + timeoutId = setTimeout(() => { + timeoutKill(spawned, killSignal, reject); + }, timeout); }); - } - exports2.switchMap = switchMap; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js -var require_switchAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.switchAll = void 0; - var switchMap_1 = require_switchMap(); - var identity_1 = require_identity(); - function switchAll() { - return switchMap_1.switchMap(identity_1.identity); - } - exports2.switchAll = switchAll; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js -var require_switchMapTo = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.switchMapTo = void 0; - var switchMap_1 = require_switchMap(); - var isFunction_1 = require_isFunction(); - function switchMapTo(innerObservable, resultSelector) { - return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function() { - return innerObservable; - }, resultSelector) : switchMap_1.switchMap(function() { - return innerObservable; + const safeSpawnedPromise = spawnedPromise.finally(() => { + clearTimeout(timeoutId); }); - } - exports2.switchMapTo = switchMapTo; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js -var require_switchScan = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.switchScan = void 0; - var switchMap_1 = require_switchMap(); - var lift_1 = require_lift(); - function switchScan(accumulator, seed) { - return lift_1.operate(function(source, subscriber) { - var state = seed; - switchMap_1.switchMap(function(value, index) { - return accumulator(state, value, index); - }, function(_, innerValue) { - return state = innerValue, innerValue; - })(source).subscribe(subscriber); - return function() { - state = null; - }; + return Promise.race([timeoutPromise, safeSpawnedPromise]); + }; + var validateTimeout = ({ timeout }) => { + if (timeout !== void 0 && (!Number.isFinite(timeout) || timeout < 0)) { + throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`); + } + }; + var setExitHandler = async (spawned, { cleanup, detached }, timedPromise) => { + if (!cleanup || detached) { + return timedPromise; + } + const removeExitHandler = onExit(() => { + spawned.kill(); }); - } - exports2.switchScan = switchScan; + return timedPromise.finally(() => { + removeExitHandler(); + }); + }; + module2.exports = { + spawnedKill, + spawnedCancel, + setupTimeout, + validateTimeout, + setExitHandler + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js -var require_takeUntil = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js"(exports2) { +// ../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js +var require_is_stream = __commonJS({ + "../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.takeUntil = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - var noop_1 = require_noop(); - function takeUntil(notifier) { - return lift_1.operate(function(source, subscriber) { - from_1.innerFrom(notifier).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - return subscriber.complete(); - }, noop_1.noop)); - !subscriber.closed && source.subscribe(subscriber); - }); - } - exports2.takeUntil = takeUntil; + var isStream = (stream) => stream !== null && typeof stream === "object" && typeof stream.pipe === "function"; + isStream.writable = (stream) => isStream(stream) && stream.writable !== false && typeof stream._write === "function" && typeof stream._writableState === "object"; + isStream.readable = (stream) => isStream(stream) && stream.readable !== false && typeof stream._read === "function" && typeof stream._readableState === "object"; + isStream.duplex = (stream) => isStream.writable(stream) && isStream.readable(stream); + isStream.transform = (stream) => isStream.duplex(stream) && typeof stream._transform === "function"; + module2.exports = isStream; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js -var require_takeWhile = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js"(exports2) { +// ../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js +var require_buffer_stream = __commonJS({ + "../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.takeWhile = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function takeWhile(predicate, inclusive) { - if (inclusive === void 0) { - inclusive = false; + var { PassThrough: PassThroughStream } = require("stream"); + module2.exports = (options) => { + options = { ...options }; + const { array } = options; + let { encoding } = options; + const isBuffer = encoding === "buffer"; + let objectMode = false; + if (array) { + objectMode = !(encoding || isBuffer); + } else { + encoding = encoding || "utf8"; } - return lift_1.operate(function(source, subscriber) { - var index = 0; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var result = predicate(value, index++); - (result || inclusive) && subscriber.next(value); - !result && subscriber.complete(); - })); + if (isBuffer) { + encoding = null; + } + const stream = new PassThroughStream({ objectMode }); + if (encoding) { + stream.setEncoding(encoding); + } + let length = 0; + const chunks = []; + stream.on("data", (chunk) => { + chunks.push(chunk); + if (objectMode) { + length = chunks.length; + } else { + length += chunk.length; + } }); - } - exports2.takeWhile = takeWhile; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/tap.js -var require_tap = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/tap.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.tap = void 0; - var isFunction_1 = require_isFunction(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var identity_1 = require_identity(); - function tap(observerOrNext, error, complete) { - var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete ? { next: observerOrNext, error, complete } : observerOrNext; - return tapObserver ? lift_1.operate(function(source, subscriber) { - var _a; - (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver); - var isUnsub = true; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var _a2; - (_a2 = tapObserver.next) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, value); - subscriber.next(value); - }, function() { - var _a2; - isUnsub = false; - (_a2 = tapObserver.complete) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); - subscriber.complete(); - }, function(err) { - var _a2; - isUnsub = false; - (_a2 = tapObserver.error) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, err); - subscriber.error(err); - }, function() { - var _a2, _b; - if (isUnsub) { - (_a2 = tapObserver.unsubscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); - } - (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver); - })); - }) : identity_1.identity; - } - exports2.tap = tap; + stream.getBufferedValue = () => { + if (array) { + return chunks; + } + return isBuffer ? Buffer.concat(chunks, length) : chunks.join(""); + }; + stream.getBufferedLength = () => length; + return stream; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throttle.js -var require_throttle = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throttle.js"(exports2) { +// ../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js +var require_get_stream = __commonJS({ + "../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.throttle = exports2.defaultThrottleConfig = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - exports2.defaultThrottleConfig = { - leading: true, - trailing: false + var { constants: BufferConstants } = require("buffer"); + var stream = require("stream"); + var { promisify } = require("util"); + var bufferStream2 = require_buffer_stream(); + var streamPipelinePromisified = promisify(stream.pipeline); + var MaxBufferError = class extends Error { + constructor() { + super("maxBuffer exceeded"); + this.name = "MaxBufferError"; + } }; - function throttle(durationSelector, _a) { - var _b = _a === void 0 ? exports2.defaultThrottleConfig : _a, leading = _b.leading, trailing = _b.trailing; - return lift_1.operate(function(source, subscriber) { - var hasValue = false; - var sendValue = null; - var throttled = null; - var isComplete = false; - var endThrottling = function() { - throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe(); - throttled = null; - if (trailing) { - send(); - isComplete && subscriber.complete(); + async function getStream(inputStream, options) { + if (!inputStream) { + throw new Error("Expected a stream"); + } + options = { + maxBuffer: Infinity, + ...options + }; + const { maxBuffer } = options; + const stream2 = bufferStream2(options); + await new Promise((resolve, reject) => { + const rejectPromise = (error) => { + if (error && stream2.getBufferedLength() <= BufferConstants.MAX_LENGTH) { + error.bufferedData = stream2.getBufferedValue(); } + reject(error); }; - var cleanupThrottling = function() { - throttled = null; - isComplete && subscriber.complete(); - }; - var startThrottle = function(value) { - return throttled = from_1.innerFrom(durationSelector(value)).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, endThrottling, cleanupThrottling)); - }; - var send = function() { - if (hasValue) { - hasValue = false; - var value = sendValue; - sendValue = null; - subscriber.next(value); - !isComplete && startThrottle(value); + (async () => { + try { + await streamPipelinePromisified(inputStream, stream2); + resolve(); + } catch (error) { + rejectPromise(error); } - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - hasValue = true; - sendValue = value; - !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value)); - }, function() { - isComplete = true; - !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete(); - })); + })(); + stream2.on("data", () => { + if (stream2.getBufferedLength() > maxBuffer) { + rejectPromise(new MaxBufferError()); + } + }); }); + return stream2.getBufferedValue(); } - exports2.throttle = throttle; + module2.exports = getStream; + module2.exports.buffer = (stream2, options) => getStream(stream2, { ...options, encoding: "buffer" }); + module2.exports.array = (stream2, options) => getStream(stream2, { ...options, array: true }); + module2.exports.MaxBufferError = MaxBufferError; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js -var require_throttleTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js"(exports2) { +// ../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js +var require_merge_stream = __commonJS({ + "../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.throttleTime = void 0; - var async_1 = require_async(); - var throttle_1 = require_throttle(); - var timer_1 = require_timer2(); - function throttleTime(duration, scheduler, config) { - if (scheduler === void 0) { - scheduler = async_1.asyncScheduler; - } - if (config === void 0) { - config = throttle_1.defaultThrottleConfig; + var { PassThrough } = require("stream"); + module2.exports = function() { + var sources = []; + var output = new PassThrough({ objectMode: true }); + output.setMaxListeners(0); + output.add = add; + output.isEmpty = isEmpty; + output.on("unpipe", remove); + Array.prototype.slice.call(arguments).forEach(add); + return output; + function add(source) { + if (Array.isArray(source)) { + source.forEach(add); + return this; + } + sources.push(source); + source.once("end", remove.bind(null, source)); + source.once("error", output.emit.bind(output, "error")); + source.pipe(output, { end: false }); + return this; } - var duration$ = timer_1.timer(duration, scheduler); - return throttle_1.throttle(function() { - return duration$; - }, config); - } - exports2.throttleTime = throttleTime; - } -}); - -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js -var require_timeInterval = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.TimeInterval = exports2.timeInterval = void 0; - var async_1 = require_async(); - var scan_1 = require_scan(); - var defer_1 = require_defer(); - var map_1 = require_map(); - function timeInterval(scheduler) { - if (scheduler === void 0) { - scheduler = async_1.async; + function isEmpty() { + return sources.length == 0; } - return function(source) { - return defer_1.defer(function() { - return source.pipe(scan_1.scan(function(_a, value) { - var current = _a.current; - return { value, current: scheduler.now(), last: current }; - }, { - current: scheduler.now(), - value: void 0, - last: void 0 - }), map_1.map(function(_a) { - var current = _a.current, last = _a.last, value = _a.value; - return new TimeInterval(value, current - last); - })); + function remove(source) { + sources = sources.filter(function(it) { + return it !== source; }); - }; - } - exports2.timeInterval = timeInterval; - var TimeInterval = function() { - function TimeInterval2(value, interval) { - this.value = value; - this.interval = interval; + if (!sources.length && output.readable) { + output.end(); + } } - return TimeInterval2; - }(); - exports2.TimeInterval = TimeInterval; + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js -var require_timeoutWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js +var require_stream2 = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.timeoutWith = void 0; - var async_1 = require_async(); - var isDate_1 = require_isDate(); - var timeout_1 = require_timeout(); - function timeoutWith(due, withObservable, scheduler) { - var first; - var each; - var _with; - scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async_1.async; - if (isDate_1.isValidDate(due)) { - first = due; - } else if (typeof due === "number") { - each = due; + var isStream = require_is_stream(); + var getStream = require_get_stream(); + var mergeStream = require_merge_stream(); + var handleInput = (spawned, input) => { + if (input === void 0 || spawned.stdin === void 0) { + return; } - if (withObservable) { - _with = function() { - return withObservable; - }; + if (isStream(input)) { + input.pipe(spawned.stdin); } else { - throw new TypeError("No observable provided to switch to"); - } - if (first == null && each == null) { - throw new TypeError("No timeout provided."); + spawned.stdin.end(input); } - return timeout_1.timeout({ - first, - each, - scheduler, - with: _with - }); - } - exports2.timeoutWith = timeoutWith; + }; + var makeAllStream = (spawned, { all }) => { + if (!all || !spawned.stdout && !spawned.stderr) { + return; + } + const mixed = mergeStream(); + if (spawned.stdout) { + mixed.add(spawned.stdout); + } + if (spawned.stderr) { + mixed.add(spawned.stderr); + } + return mixed; + }; + var getBufferedData = async (stream, streamPromise) => { + if (!stream) { + return; + } + stream.destroy(); + try { + return await streamPromise; + } catch (error) { + return error.bufferedData; + } + }; + var getStreamPromise = (stream, { encoding, buffer, maxBuffer }) => { + if (!stream || !buffer) { + return; + } + if (encoding) { + return getStream(stream, { encoding, maxBuffer }); + } + return getStream.buffer(stream, { maxBuffer }); + }; + var getSpawnedResult = async ({ stdout, stderr, all }, { encoding, buffer, maxBuffer }, processDone) => { + const stdoutPromise = getStreamPromise(stdout, { encoding, buffer, maxBuffer }); + const stderrPromise = getStreamPromise(stderr, { encoding, buffer, maxBuffer }); + const allPromise = getStreamPromise(all, { encoding, buffer, maxBuffer: maxBuffer * 2 }); + try { + return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]); + } catch (error) { + return Promise.all([ + { error, signal: error.signal, timedOut: error.timedOut }, + getBufferedData(stdout, stdoutPromise), + getBufferedData(stderr, stderrPromise), + getBufferedData(all, allPromise) + ]); + } + }; + var validateInputSync = ({ input }) => { + if (isStream(input)) { + throw new TypeError("The `input` option cannot be a stream in sync mode"); + } + }; + module2.exports = { + handleInput, + makeAllStream, + getSpawnedResult, + validateInputSync + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js -var require_timestamp = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js +var require_promise = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.timestamp = void 0; - var dateTimestampProvider_1 = require_dateTimestampProvider(); - var map_1 = require_map(); - function timestamp(timestampProvider) { - if (timestampProvider === void 0) { - timestampProvider = dateTimestampProvider_1.dateTimestampProvider; + var nativePromisePrototype = (async () => { + })().constructor.prototype; + var descriptors = ["then", "catch", "finally"].map((property) => [ + property, + Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property) + ]); + var mergePromise = (spawned, promise) => { + for (const [property, descriptor] of descriptors) { + const value = typeof promise === "function" ? (...args2) => Reflect.apply(descriptor.value, promise(), args2) : descriptor.value.bind(promise); + Reflect.defineProperty(spawned, property, { ...descriptor, value }); } - return map_1.map(function(value) { - return { value, timestamp: timestampProvider.now() }; + return spawned; + }; + var getSpawnedPromise = (spawned) => { + return new Promise((resolve, reject) => { + spawned.on("exit", (exitCode, signal) => { + resolve({ exitCode, signal }); + }); + spawned.on("error", (error) => { + reject(error); + }); + if (spawned.stdin) { + spawned.stdin.on("error", (error) => { + reject(error); + }); + } }); - } - exports2.timestamp = timestamp; + }; + module2.exports = { + mergePromise, + getSpawnedPromise + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/window.js -var require_window = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/window.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js +var require_command = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.window = void 0; - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - function window2(windowBoundaries) { - return lift_1.operate(function(source, subscriber) { - var windowSubject = new Subject_1.Subject(); - subscriber.next(windowSubject.asObservable()); - var errorHandler = function(err) { - windowSubject.error(err); - subscriber.error(err); - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value); - }, function() { - windowSubject.complete(); - subscriber.complete(); - }, errorHandler)); - windowBoundaries.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function() { - windowSubject.complete(); - subscriber.next(windowSubject = new Subject_1.Subject()); - }, noop_1.noop, errorHandler)); - return function() { - windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe(); - windowSubject = null; - }; - }); - } - exports2.window = window2; + var normalizeArgs = (file, args2 = []) => { + if (!Array.isArray(args2)) { + return [file]; + } + return [file, ...args2]; + }; + var NO_ESCAPE_REGEXP = /^[\w.-]+$/; + var DOUBLE_QUOTES_REGEXP = /"/g; + var escapeArg = (arg) => { + if (typeof arg !== "string" || NO_ESCAPE_REGEXP.test(arg)) { + return arg; + } + return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`; + }; + var joinCommand = (file, args2) => { + return normalizeArgs(file, args2).join(" "); + }; + var getEscapedCommand = (file, args2) => { + return normalizeArgs(file, args2).map((arg) => escapeArg(arg)).join(" "); + }; + var SPACES_REGEXP = / +/g; + var parseCommand = (command) => { + const tokens = []; + for (const token of command.trim().split(SPACES_REGEXP)) { + const previousToken = tokens[tokens.length - 1]; + if (previousToken && previousToken.endsWith("\\")) { + tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`; + } else { + tokens.push(token); + } + } + return tokens; + }; + module2.exports = { + joinCommand, + getEscapedCommand, + parseCommand + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js -var require_windowCount = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js"(exports2) { +// ../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js +var require_execa = __commonJS({ + "../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js"(exports2, module2) { "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; + var path2 = require("path"); + var childProcess = require("child_process"); + var crossSpawn = require_cross_spawn(); + var stripFinalNewline = require_strip_final_newline(); + var npmRunPath = require_npm_run_path(); + var onetime = require_onetime(); + var makeError = require_error(); + var normalizeStdio = require_stdio(); + var { spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler } = require_kill(); + var { handleInput, getSpawnedResult, makeAllStream, validateInputSync } = require_stream2(); + var { mergePromise, getSpawnedPromise } = require_promise(); + var { joinCommand, parseCommand, getEscapedCommand } = require_command(); + var DEFAULT_MAX_BUFFER = 1e3 * 1e3 * 100; + var getEnv = ({ env: envOption, extendEnv, preferLocal, localDir, execPath }) => { + const env = extendEnv ? { ...process.env, ...envOption } : envOption; + if (preferLocal) { + return npmRunPath.env({ env, cwd: localDir, execPath }); + } + return env; + }; + var handleArguments = (file, args2, options = {}) => { + const parsed = crossSpawn._parse(file, args2, options); + file = parsed.command; + args2 = parsed.args; + options = parsed.options; + options = { + maxBuffer: DEFAULT_MAX_BUFFER, + buffer: true, + stripFinalNewline: true, + extendEnv: true, + preferLocal: false, + localDir: options.cwd || process.cwd(), + execPath: process.execPath, + encoding: "utf8", + reject: true, + cleanup: true, + all: false, + windowsHide: true, + ...options + }; + options.env = getEnv(options); + options.stdio = normalizeStdio(options); + if (process.platform === "win32" && path2.basename(file, ".exe") === "cmd") { + args2.unshift("/q"); + } + return { file, args: args2, options, parsed }; + }; + var handleOutput = (options, value, error) => { + if (typeof value !== "string" && !Buffer.isBuffer(value)) { + return error === void 0 ? void 0 : ""; + } + if (options.stripFinalNewline) { + return stripFinalNewline(value); + } + return value; + }; + var execa = (file, args2, options) => { + const parsed = handleArguments(file, args2, options); + const command = joinCommand(file, args2); + const escapedCommand = getEscapedCommand(file, args2); + validateTimeout(parsed.options); + let spawned; + try { + spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options); + } catch (error) { + const dummySpawned = new childProcess.ChildProcess(); + const errorPromise = Promise.reject(makeError({ + error, + stdout: "", + stderr: "", + all: "", + command, + escapedCommand, + parsed, + timedOut: false, + isCanceled: false, + killed: false + })); + return mergePromise(dummySpawned, errorPromise); + } + const spawnedPromise = getSpawnedPromise(spawned); + const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise); + const processDone = setExitHandler(spawned, parsed.options, timedPromise); + const context = { isCanceled: false }; + spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned)); + spawned.cancel = spawnedCancel.bind(null, spawned, context); + const handlePromise = async () => { + const [{ error, exitCode, signal, timedOut }, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone); + const stdout = handleOutput(parsed.options, stdoutResult); + const stderr = handleOutput(parsed.options, stderrResult); + const all = handleOutput(parsed.options, allResult); + if (error || exitCode !== 0 || signal !== null) { + const returnedError = makeError({ + error, + exitCode, + signal, + stdout, + stderr, + all, + command, + escapedCommand, + parsed, + timedOut, + isCanceled: context.isCanceled, + killed: spawned.killed + }); + if (!parsed.options.reject) { + return returnedError; } + throw returnedError; + } + return { + command, + escapedCommand, + exitCode: 0, + stdout, + stderr, + all, + failed: false, + timedOut: false, + isCanceled: false, + killed: false }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + const handlePromiseOnce = onetime(handlePromise); + handleInput(spawned, parsed.options.input); + spawned.all = makeAllStream(spawned, parsed.options); + return mergePromise(spawned, handlePromiseOnce); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.windowCount = void 0; - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - function windowCount(windowSize, startWindowEvery) { - if (startWindowEvery === void 0) { - startWindowEvery = 0; + module2.exports = execa; + module2.exports.sync = (file, args2, options) => { + const parsed = handleArguments(file, args2, options); + const command = joinCommand(file, args2); + const escapedCommand = getEscapedCommand(file, args2); + validateInputSync(parsed.options); + let result2; + try { + result2 = childProcess.spawnSync(parsed.file, parsed.args, parsed.options); + } catch (error) { + throw makeError({ + error, + stdout: "", + stderr: "", + all: "", + command, + escapedCommand, + parsed, + timedOut: false, + isCanceled: false, + killed: false + }); } - var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize; - return lift_1.operate(function(source, subscriber) { - var windows = [new Subject_1.Subject()]; - var starts = []; - var count = 0; - subscriber.next(windows[0].asObservable()); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var e_1, _a; - try { - for (var windows_1 = __values(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) { - var window_1 = windows_1_1.value; - window_1.next(value); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) - _a.call(windows_1); - } finally { - if (e_1) - throw e_1.error; - } - } - var c = count - windowSize + 1; - if (c >= 0 && c % startEvery === 0) { - windows.shift().complete(); - } - if (++count % startEvery === 0) { - var window_2 = new Subject_1.Subject(); - windows.push(window_2); - subscriber.next(window_2.asObservable()); - } - }, function() { - while (windows.length > 0) { - windows.shift().complete(); - } - subscriber.complete(); - }, function(err) { - while (windows.length > 0) { - windows.shift().error(err); - } - subscriber.error(err); - }, function() { - starts = null; - windows = null; - })); - }); - } - exports2.windowCount = windowCount; + const stdout = handleOutput(parsed.options, result2.stdout, result2.error); + const stderr = handleOutput(parsed.options, result2.stderr, result2.error); + if (result2.error || result2.status !== 0 || result2.signal !== null) { + const error = makeError({ + stdout, + stderr, + error: result2.error, + signal: result2.signal, + exitCode: result2.status, + command, + escapedCommand, + parsed, + timedOut: result2.error && result2.error.code === "ETIMEDOUT", + isCanceled: false, + killed: result2.signal !== null + }); + if (!parsed.options.reject) { + return error; + } + throw error; + } + return { + command, + escapedCommand, + exitCode: 0, + stdout, + stderr, + failed: false, + timedOut: false, + isCanceled: false, + killed: false + }; + }; + module2.exports.command = (command, options) => { + const [file, ...args2] = parseCommand(command); + return execa(file, args2, options); + }; + module2.exports.commandSync = (command, options) => { + const [file, ...args2] = parseCommand(command); + return execa.sync(file, args2, options); + }; + module2.exports.node = (scriptPath, args2, options = {}) => { + if (args2 && !Array.isArray(args2) && typeof args2 === "object") { + options = args2; + args2 = []; + } + const stdio = normalizeStdio.node(options); + const defaultExecArgv = process.execArgv.filter((arg) => !arg.startsWith("--inspect")); + const { + nodePath = process.execPath, + nodeOptions = defaultExecArgv + } = options; + return execa( + nodePath, + [ + ...nodeOptions, + scriptPath, + ...Array.isArray(args2) ? args2 : [] + ], + { + ...options, + stdin: void 0, + stdout: void 0, + stderr: void 0, + stdio, + shell: false + } + ); + }; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js -var require_windowTime = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js"(exports2) { +// ../node_modules/.pnpm/path-name@1.0.0/node_modules/path-name/index.js +var require_path_name = __commonJS({ + "../node_modules/.pnpm/path-name@1.0.0/node_modules/path-name/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.windowTime = void 0; - var Subject_1 = require_Subject(); - var async_1 = require_async(); - var Subscription_1 = require_Subscription(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var arrRemove_1 = require_arrRemove(); - var args_1 = require_args(); - function windowTime(windowTimeSpan) { - var _a, _b; - var otherArgs = []; - for (var _i = 1; _i < arguments.length; _i++) { - otherArgs[_i - 1] = arguments[_i]; - } - var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; - var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; - var maxWindowSize = otherArgs[1] || Infinity; - return lift_1.operate(function(source, subscriber) { - var windowRecords = []; - var restartOnClose = false; - var closeWindow = function(record) { - var window2 = record.window, subs = record.subs; - window2.complete(); - subs.unsubscribe(); - arrRemove_1.arrRemove(windowRecords, record); - restartOnClose && startWindow(); - }; - var startWindow = function() { - if (windowRecords) { - var subs = new Subscription_1.Subscription(); - subscriber.add(subs); - var window_1 = new Subject_1.Subject(); - var record_1 = { - window: window_1, - subs, - seen: 0 - }; - windowRecords.push(record_1); - subscriber.next(window_1.asObservable()); - subs.add(scheduler.schedule(function() { - return closeWindow(record_1); - }, windowTimeSpan)); - } - }; - windowCreationInterval !== null && windowCreationInterval >= 0 ? subscriber.add(scheduler.schedule(function() { - startWindow(); - !this.closed && subscriber.add(this.schedule(null, windowCreationInterval)); - }, windowCreationInterval)) : restartOnClose = true; - startWindow(); - var loop = function(cb) { - return windowRecords.slice().forEach(cb); - }; - var terminate = function(cb) { - loop(function(_a2) { - var window2 = _a2.window; - return cb(window2); - }); - cb(subscriber); - subscriber.unsubscribe(); - }; - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - loop(function(record) { - record.window.next(value); - maxWindowSize <= ++record.seen && closeWindow(record); - }); - }, function() { - return terminate(function(consumer) { - return consumer.complete(); - }); - }, function(err) { - return terminate(function(consumer) { - return consumer.error(err); - }); - })); - return function() { - windowRecords = null; - }; + var PATH; + if (process.platform === "win32") { + PATH = "Path"; + Object.keys(process.env).forEach((e) => { + if (e.match(/^PATH$/i)) { + PATH = e; + } }); + } else { + PATH = "PATH"; } - exports2.windowTime = windowTime; + module2.exports = PATH; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js -var require_windowToggle = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js"(exports2) { +// ../node_modules/.pnpm/safe-execa@0.1.2/node_modules/safe-execa/lib/index.js +var require_lib17 = __commonJS({ + "../node_modules/.pnpm/safe-execa@0.1.2/node_modules/safe-execa/lib/index.js"(exports2) { "use strict"; - var __values = exports2 && exports2.__values || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.windowToggle = void 0; - var Subject_1 = require_Subject(); - var Subscription_1 = require_Subscription(); - var lift_1 = require_lift(); - var from_1 = require_from2(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var noop_1 = require_noop(); - var arrRemove_1 = require_arrRemove(); - function windowToggle(openings, closingSelector) { - return lift_1.operate(function(source, subscriber) { - var windows = []; - var handleError = function(err) { - while (0 < windows.length) { - windows.shift().error(err); - } - subscriber.error(err); - }; - from_1.innerFrom(openings).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(openValue) { - var window2 = new Subject_1.Subject(); - windows.push(window2); - var closingSubscription = new Subscription_1.Subscription(); - var closeWindow = function() { - arrRemove_1.arrRemove(windows, window2); - window2.complete(); - closingSubscription.unsubscribe(); - }; - var closingNotifier; - try { - closingNotifier = from_1.innerFrom(closingSelector(openValue)); - } catch (err) { - handleError(err); - return; - } - subscriber.next(window2.asObservable()); - closingSubscription.add(closingNotifier.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, closeWindow, noop_1.noop, handleError))); - }, noop_1.noop)); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - var e_1, _a; - var windowsCopy = windows.slice(); - try { - for (var windowsCopy_1 = __values(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) { - var window_1 = windowsCopy_1_1.value; - window_1.next(value); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) - _a.call(windowsCopy_1); - } finally { - if (e_1) - throw e_1.error; - } - } - }, function() { - while (0 < windows.length) { - windows.shift().complete(); - } - subscriber.complete(); - }, handleError, function() { - while (0 < windows.length) { - windows.shift().unsubscribe(); - } - })); - }); + exports2.sync = void 0; + var which_1 = __importDefault4(require_which()); + var execa_1 = __importDefault4(require_execa()); + var path_name_1 = __importDefault4(require_path_name()); + var pathCache = /* @__PURE__ */ new Map(); + function sync(file, args2, options) { + var _a; + try { + which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd }); + } catch (err) { + if (err.code === "ENOENT") { + return execa_1.default.sync(file, args2, options); + } + } + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return execa_1.default.sync(fileAbsolutePath, args2, options); } - exports2.windowToggle = windowToggle; + exports2.sync = sync; + function getCommandAbsolutePathSync(file, options) { + var _a, _b; + if (file.includes("\\") || file.includes("/")) + return file; + const path2 = (_b = (_a = options === null || options === void 0 ? void 0 : options.env) === null || _a === void 0 ? void 0 : _a[path_name_1.default]) !== null && _b !== void 0 ? _b : process.env[path_name_1.default]; + const key = JSON.stringify([path2, file]); + let fileAbsolutePath = pathCache.get(key); + if (fileAbsolutePath == null) { + fileAbsolutePath = which_1.default.sync(file, { path: path2 }); + pathCache.set(key, fileAbsolutePath); + } + if (fileAbsolutePath == null) { + throw new Error(`Couldn't find ${file}`); + } + return fileAbsolutePath; + } + function default_1(file, args2, options) { + var _a; + try { + which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd }); + } catch (err) { + if (err.code === "ENOENT") { + return (0, execa_1.default)(file, args2, options); + } + } + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return (0, execa_1.default)(fileAbsolutePath, args2, options); + } + exports2.default = default_1; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js -var require_windowWhen = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js"(exports2) { +// ../packages/git-utils/lib/index.js +var require_lib18 = __commonJS({ + "../packages/git-utils/lib/index.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.windowWhen = void 0; - var Subject_1 = require_Subject(); - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - function windowWhen(closingSelector) { - return lift_1.operate(function(source, subscriber) { - var window2; - var closingSubscriber; - var handleError = function(err) { - window2.error(err); - subscriber.error(err); - }; - var openWindow = function() { - closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); - window2 === null || window2 === void 0 ? void 0 : window2.complete(); - window2 = new Subject_1.Subject(); - subscriber.next(window2.asObservable()); - var closingNotifier; - try { - closingNotifier = from_1.innerFrom(closingSelector()); - } catch (err) { - handleError(err); - return; - } - closingNotifier.subscribe(closingSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, openWindow, openWindow, handleError)); - }; - openWindow(); - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - return window2.next(value); - }, function() { - window2.complete(); - subscriber.complete(); - }, handleError, function() { - closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); - window2 = null; - })); - }); + exports2.isRemoteHistoryClean = exports2.isWorkingTreeClean = exports2.getCurrentBranch = exports2.isGitRepo = void 0; + var execa_1 = __importDefault4(require_lib17()); + async function isGitRepo() { + try { + await (0, execa_1.default)("git", ["rev-parse", "--git-dir"]); + } catch (_) { + return false; + } + return true; } - exports2.windowWhen = windowWhen; + exports2.isGitRepo = isGitRepo; + async function getCurrentBranch() { + try { + const { stdout } = await (0, execa_1.default)("git", ["symbolic-ref", "--short", "HEAD"]); + return stdout; + } catch (_) { + return null; + } + } + exports2.getCurrentBranch = getCurrentBranch; + async function isWorkingTreeClean() { + try { + const { stdout: status } = await (0, execa_1.default)("git", ["status", "--porcelain"]); + if (status !== "") { + return false; + } + return true; + } catch (_) { + return false; + } + } + exports2.isWorkingTreeClean = isWorkingTreeClean; + async function isRemoteHistoryClean() { + let history; + try { + const { stdout } = await (0, execa_1.default)("git", ["rev-list", "--count", "--left-only", "@{u}...HEAD"]); + history = stdout; + } catch (_) { + history = null; + } + if (history && history !== "0") { + return false; + } + return true; + } + exports2.isRemoteHistoryClean = isRemoteHistoryClean; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js -var require_withLatestFrom = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js"(exports2) { +// ../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js +var require_escape_string_regexp2 = __commonJS({ + "../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } + module2.exports = (string) => { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); } - return ar; + return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + } +}); + +// ../config/matcher/lib/index.js +var require_lib19 = __commonJS({ + "../config/matcher/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.withLatestFrom = void 0; - var lift_1 = require_lift(); - var OperatorSubscriber_1 = require_OperatorSubscriber(); - var from_1 = require_from2(); - var identity_1 = require_identity(); - var noop_1 = require_noop(); - var args_1 = require_args(); - function withLatestFrom() { - var inputs = []; - for (var _i = 0; _i < arguments.length; _i++) { - inputs[_i] = arguments[_i]; + exports2.createMatcherWithIndex = exports2.createMatcher = void 0; + var escape_string_regexp_1 = __importDefault4(require_escape_string_regexp2()); + function createMatcher(patterns) { + const m = createMatcherWithIndex(Array.isArray(patterns) ? patterns : [patterns]); + return (input) => m(input) !== -1; + } + exports2.createMatcher = createMatcher; + function createMatcherWithIndex(patterns) { + switch (patterns.length) { + case 0: + return () => -1; + case 1: + return matcherWhenOnlyOnePatternWithIndex(patterns[0]); } - var project = args_1.popResultSelector(inputs); - return lift_1.operate(function(source, subscriber) { - var len = inputs.length; - var otherValues = new Array(len); - var hasValue = inputs.map(function() { - return false; - }); - var ready = false; - var _loop_1 = function(i2) { - from_1.innerFrom(inputs[i2]).subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - otherValues[i2] = value; - if (!ready && !hasValue[i2]) { - hasValue[i2] = true; - (ready = hasValue.every(identity_1.identity)) && (hasValue = null); - } - }, noop_1.noop)); - }; - for (var i = 0; i < len; i++) { - _loop_1(i); + const matchArr = []; + let hasIgnore = false; + let hasInclude = false; + for (const pattern of patterns) { + if (isIgnorePattern(pattern)) { + hasIgnore = true; + matchArr.push({ ignore: true, match: matcherFromPattern(pattern.substring(1)) }); + } else { + hasInclude = true; + matchArr.push({ ignore: false, match: matcherFromPattern(pattern) }); } - source.subscribe(new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { - if (ready) { - var values = __spreadArray([value], __read(otherValues)); - subscriber.next(project ? project.apply(void 0, __spreadArray([], __read(values))) : values); + } + if (!hasIgnore) { + return matchInputWithNonIgnoreMatchers.bind(null, matchArr); + } + if (!hasInclude) { + return matchInputWithoutIgnoreMatchers.bind(null, matchArr); + } + return matchInputWithMatchersArray.bind(null, matchArr); + } + exports2.createMatcherWithIndex = createMatcherWithIndex; + function matchInputWithNonIgnoreMatchers(matchArr, input) { + for (let i = 0; i < matchArr.length; i++) { + if (matchArr[i].match(input)) + return i; + } + return -1; + } + function matchInputWithoutIgnoreMatchers(matchArr, input) { + return matchArr.some(({ match }) => match(input)) ? -1 : 0; + } + function matchInputWithMatchersArray(matchArr, input) { + let matchedPatternIndex = -1; + for (let i = 0; i < matchArr.length; i++) { + const { ignore, match } = matchArr[i]; + if (ignore) { + if (match(input)) { + matchedPatternIndex = -1; } - })); - }); + } else if (matchedPatternIndex === -1 && match(input)) { + matchedPatternIndex = i; + } + } + return matchedPatternIndex; + } + function matcherFromPattern(pattern) { + if (pattern === "*") { + return () => true; + } + const escapedPattern = (0, escape_string_regexp_1.default)(pattern).replace(/\\\*/g, ".*"); + if (escapedPattern === pattern) { + return (input) => input === pattern; + } + const regexp = new RegExp(`^${escapedPattern}$`); + return (input) => regexp.test(input); + } + function isIgnorePattern(pattern) { + return pattern.startsWith("!"); + } + function matcherWhenOnlyOnePatternWithIndex(pattern) { + const m = matcherWhenOnlyOnePattern(pattern); + return (input) => m(input) ? 0 : -1; + } + function matcherWhenOnlyOnePattern(pattern) { + if (!isIgnorePattern(pattern)) { + return matcherFromPattern(pattern); + } + const ignorePattern = pattern.substring(1); + const m = matcherFromPattern(ignorePattern); + return (input) => !m(input); } - exports2.withLatestFrom = withLatestFrom; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js -var require_zipAll = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js"(exports2) { +// ../node_modules/.pnpm/better-path-resolve@1.0.0/node_modules/better-path-resolve/index.js +var require_better_path_resolve = __commonJS({ + "../node_modules/.pnpm/better-path-resolve@1.0.0/node_modules/better-path-resolve/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.zipAll = void 0; - var zip_1 = require_zip(); - var joinAllInternals_1 = require_joinAllInternals(); - function zipAll(project) { - return joinAllInternals_1.joinAllInternals(zip_1.zip, project); + var path2 = require("path"); + var isWindows = require_is_windows(); + module2.exports = isWindows() ? winResolve : path2.resolve; + function winResolve(p) { + if (arguments.length === 0) + return path2.resolve(); + if (typeof p !== "string") { + return path2.resolve(p); + } + if (p[1] === ":") { + const cc = p[0].charCodeAt(); + if (cc < 65 || cc > 90) { + p = `${p[0].toUpperCase()}${p.substr(1)}`; + } + } + if (p.endsWith(":")) { + return p; + } + return path2.resolve(p); } - exports2.zipAll = zipAll; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zip.js -var require_zip2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zip.js"(exports2) { - "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; +// ../node_modules/.pnpm/camelcase@6.3.0/node_modules/camelcase/index.js +var require_camelcase = __commonJS({ + "../node_modules/.pnpm/camelcase@6.3.0/node_modules/camelcase/index.js"(exports2, module2) { + "use strict"; + var UPPERCASE = /[\p{Lu}]/u; + var LOWERCASE = /[\p{Ll}]/u; + var LEADING_CAPITAL = /^[\p{Lu}](?![\p{Lu}])/gu; + var IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u; + var SEPARATORS = /[_.\- ]+/; + var LEADING_SEPARATORS = new RegExp("^" + SEPARATORS.source); + var SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu"); + var NUMBERS_AND_IDENTIFIER = new RegExp("\\d+" + IDENTIFIER.source, "gu"); + var preserveCamelCase = (string, toLowerCase, toUpperCase) => { + let isLastCharLower = false; + let isLastCharUpper = false; + let isLastLastCharUpper = false; + for (let i = 0; i < string.length; i++) { + const character = string[i]; + if (isLastCharLower && UPPERCASE.test(character)) { + string = string.slice(0, i) + "-" + string.slice(i); + isLastCharLower = false; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = true; + i++; + } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) { + string = string.slice(0, i - 1) + "-" + string.slice(i - 1); + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = false; + isLastCharLower = true; + } else { + isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character; } } - return ar; + return string; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + var preserveConsecutiveUppercase = (input, toLowerCase) => { + LEADING_CAPITAL.lastIndex = 0; + return input.replace(LEADING_CAPITAL, (m1) => toLowerCase(m1)); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.zip = void 0; - var zip_1 = require_zip(); - var lift_1 = require_lift(); - function zip() { - var sources = []; - for (var _i = 0; _i < arguments.length; _i++) { - sources[_i] = arguments[_i]; + var postProcess = (input, toUpperCase) => { + SEPARATORS_AND_IDENTIFIER.lastIndex = 0; + NUMBERS_AND_IDENTIFIER.lastIndex = 0; + return input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier)).replace(NUMBERS_AND_IDENTIFIER, (m) => toUpperCase(m)); + }; + var camelCase = (input, options) => { + if (!(typeof input === "string" || Array.isArray(input))) { + throw new TypeError("Expected the input to be `string | string[]`"); } - return lift_1.operate(function(source, subscriber) { - zip_1.zip.apply(void 0, __spreadArray([source], __read(sources))).subscribe(subscriber); - }); - } - exports2.zip = zip; + options = { + pascalCase: false, + preserveConsecutiveUppercase: false, + ...options + }; + if (Array.isArray(input)) { + input = input.map((x) => x.trim()).filter((x) => x.length).join("-"); + } else { + input = input.trim(); + } + if (input.length === 0) { + return ""; + } + const toLowerCase = options.locale === false ? (string) => string.toLowerCase() : (string) => string.toLocaleLowerCase(options.locale); + const toUpperCase = options.locale === false ? (string) => string.toUpperCase() : (string) => string.toLocaleUpperCase(options.locale); + if (input.length === 1) { + return options.pascalCase ? toUpperCase(input) : toLowerCase(input); + } + const hasUpperCase = input !== toLowerCase(input); + if (hasUpperCase) { + input = preserveCamelCase(input, toLowerCase, toUpperCase); + } + input = input.replace(LEADING_SEPARATORS, ""); + if (options.preserveConsecutiveUppercase) { + input = preserveConsecutiveUppercase(input, toLowerCase); + } else { + input = toLowerCase(input); + } + if (options.pascalCase) { + input = toUpperCase(input.charAt(0)) + input.slice(1); + } + return postProcess(input, toUpperCase); + }; + module2.exports = camelCase; + module2.exports.default = camelCase; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js -var require_zipWith = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js"(exports2) { +// ../node_modules/.pnpm/normalize-registry-url@2.0.0/node_modules/normalize-registry-url/index.js +var require_normalize_registry_url = __commonJS({ + "../node_modules/.pnpm/normalize-registry-url@2.0.0/node_modules/normalize-registry-url/index.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; + module2.exports = function(registry) { + if (typeof registry !== "string") { + throw new TypeError("`registry` should be a string"); + } + if (registry.endsWith("/") || registry.indexOf("/", registry.indexOf("//") + 2) != -1) + return registry; + return `${registry}/`; + }; + } +}); + +// ../node_modules/.pnpm/realpath-missing@1.1.0/node_modules/realpath-missing/index.js +var require_realpath_missing = __commonJS({ + "../node_modules/.pnpm/realpath-missing@1.1.0/node_modules/realpath-missing/index.js"(exports2, module2) { + var fs2 = require("fs"); + module2.exports = async function realpathMissing(path2) { try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + return await fs2.promises.realpath(path2); + } catch (err) { + if (err.code === "ENOENT") { + return path2; } + throw err; } - return ar; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + } +}); + +// ../node_modules/.pnpm/which@3.0.1/node_modules/which/lib/index.js +var require_lib20 = __commonJS({ + "../node_modules/.pnpm/which@3.0.1/node_modules/which/lib/index.js"(exports2, module2) { + var isexe = require_isexe(); + var { join, delimiter, sep, posix } = require("path"); + var isWindows = process.platform === "win32"; + var rSlash = new RegExp(`[${posix.sep}${sep === posix.sep ? "" : sep}]`.replace(/(\\)/g, "\\$1")); + var rRel = new RegExp(`^\\.${rSlash.source}`); + var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); + var getPathInfo = (cmd, { + path: optPath = process.env.PATH, + pathExt: optPathExt = process.env.PATHEXT, + delimiter: optDelimiter = delimiter + }) => { + const pathEnv = cmd.match(rSlash) ? [""] : [ + // windows always checks the cwd first + ...isWindows ? [process.cwd()] : [], + ...(optPath || /* istanbul ignore next: very unusual */ + "").split(optDelimiter) + ]; + if (isWindows) { + const pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter); + const pathExt = pathExtExe.split(optDelimiter).reduce((acc, item) => { + acc.push(item); + acc.push(item.toLowerCase()); + return acc; + }, []); + if (cmd.includes(".") && pathExt[0] !== "") { + pathExt.unshift(""); + } + return { pathEnv, pathExt, pathExtExe }; + } + return { pathEnv, pathExt: [""] }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.zipWith = void 0; - var zip_1 = require_zip2(); - function zipWith() { - var otherInputs = []; - for (var _i = 0; _i < arguments.length; _i++) { - otherInputs[_i] = arguments[_i]; + var getPathPart = (raw, cmd) => { + const pathPart = /^".*"$/.test(raw) ? raw.slice(1, -1) : raw; + const prefix = !pathPart && rRel.test(cmd) ? cmd.slice(0, 2) : ""; + return prefix + join(pathPart, cmd); + }; + var which = async (cmd, opt = {}) => { + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (const envPart of pathEnv) { + const p = getPathPart(envPart, cmd); + for (const ext of pathExt) { + const withExt = p + ext; + const is = await isexe(withExt, { pathExt: pathExtExe, ignoreErrors: true }); + if (is) { + if (!opt.all) { + return withExt; + } + found.push(withExt); + } + } } - return zip_1.zip.apply(void 0, __spreadArray([], __read(otherInputs))); - } - exports2.zipWith = zipWith; + if (opt.all && found.length) { + return found; + } + if (opt.nothrow) { + return null; + } + throw getNotFoundError(cmd); + }; + var whichSync = (cmd, opt = {}) => { + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (const pathEnvPart of pathEnv) { + const p = getPathPart(pathEnvPart, cmd); + for (const ext of pathExt) { + const withExt = p + ext; + const is = isexe.sync(withExt, { pathExt: pathExtExe, ignoreErrors: true }); + if (is) { + if (!opt.all) { + return withExt; + } + found.push(withExt); + } + } + } + if (opt.all && found.length) { + return found; + } + if (opt.nothrow) { + return null; + } + throw getNotFoundError(cmd); + }; + module2.exports = which; + which.sync = whichSync; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/index.js -var require_cjs = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/index.js"(exports2) { +// ../node_modules/.pnpm/crypto-random-string@2.0.0/node_modules/crypto-random-string/index.js +var require_crypto_random_string = __commonJS({ + "../node_modules/.pnpm/crypto-random-string@2.0.0/node_modules/crypto-random-string/index.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); + var crypto6 = require("crypto"); + module2.exports = (length) => { + if (!Number.isFinite(length)) { + throw new TypeError("Expected a finite number"); + } + return crypto6.randomBytes(Math.ceil(length / 2)).toString("hex").slice(0, length); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.interval = exports2.iif = exports2.generate = exports2.fromEventPattern = exports2.fromEvent = exports2.from = exports2.forkJoin = exports2.empty = exports2.defer = exports2.connectable = exports2.concat = exports2.combineLatest = exports2.bindNodeCallback = exports2.bindCallback = exports2.UnsubscriptionError = exports2.TimeoutError = exports2.SequenceError = exports2.ObjectUnsubscribedError = exports2.NotFoundError = exports2.EmptyError = exports2.ArgumentOutOfRangeError = exports2.firstValueFrom = exports2.lastValueFrom = exports2.isObservable = exports2.identity = exports2.noop = exports2.pipe = exports2.NotificationKind = exports2.Notification = exports2.Subscriber = exports2.Subscription = exports2.Scheduler = exports2.VirtualAction = exports2.VirtualTimeScheduler = exports2.animationFrameScheduler = exports2.animationFrame = exports2.queueScheduler = exports2.queue = exports2.asyncScheduler = exports2.async = exports2.asapScheduler = exports2.asap = exports2.AsyncSubject = exports2.ReplaySubject = exports2.BehaviorSubject = exports2.Subject = exports2.animationFrames = exports2.observable = exports2.ConnectableObservable = exports2.Observable = void 0; - exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.combineLatestWith = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = exports2.config = exports2.NEVER = exports2.EMPTY = exports2.scheduled = exports2.zip = exports2.using = exports2.timer = exports2.throwError = exports2.range = exports2.race = exports2.partition = exports2.pairs = exports2.onErrorResumeNext = exports2.of = exports2.never = exports2.merge = void 0; - exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.pairwise = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = exports2.mergeAll = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = void 0; - exports2.zipWith = exports2.zipAll = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = void 0; - var Observable_1 = require_Observable(); - Object.defineProperty(exports2, "Observable", { enumerable: true, get: function() { - return Observable_1.Observable; - } }); - var ConnectableObservable_1 = require_ConnectableObservable(); - Object.defineProperty(exports2, "ConnectableObservable", { enumerable: true, get: function() { - return ConnectableObservable_1.ConnectableObservable; - } }); - var observable_1 = require_observable(); - Object.defineProperty(exports2, "observable", { enumerable: true, get: function() { - return observable_1.observable; - } }); - var animationFrames_1 = require_animationFrames(); - Object.defineProperty(exports2, "animationFrames", { enumerable: true, get: function() { - return animationFrames_1.animationFrames; - } }); - var Subject_1 = require_Subject(); - Object.defineProperty(exports2, "Subject", { enumerable: true, get: function() { - return Subject_1.Subject; - } }); - var BehaviorSubject_1 = require_BehaviorSubject(); - Object.defineProperty(exports2, "BehaviorSubject", { enumerable: true, get: function() { - return BehaviorSubject_1.BehaviorSubject; - } }); - var ReplaySubject_1 = require_ReplaySubject(); - Object.defineProperty(exports2, "ReplaySubject", { enumerable: true, get: function() { - return ReplaySubject_1.ReplaySubject; - } }); - var AsyncSubject_1 = require_AsyncSubject(); - Object.defineProperty(exports2, "AsyncSubject", { enumerable: true, get: function() { - return AsyncSubject_1.AsyncSubject; - } }); - var asap_1 = require_asap(); - Object.defineProperty(exports2, "asap", { enumerable: true, get: function() { - return asap_1.asap; - } }); - Object.defineProperty(exports2, "asapScheduler", { enumerable: true, get: function() { - return asap_1.asapScheduler; - } }); - var async_1 = require_async(); - Object.defineProperty(exports2, "async", { enumerable: true, get: function() { - return async_1.async; - } }); - Object.defineProperty(exports2, "asyncScheduler", { enumerable: true, get: function() { - return async_1.asyncScheduler; - } }); - var queue_1 = require_queue(); - Object.defineProperty(exports2, "queue", { enumerable: true, get: function() { - return queue_1.queue; - } }); - Object.defineProperty(exports2, "queueScheduler", { enumerable: true, get: function() { - return queue_1.queueScheduler; - } }); - var animationFrame_1 = require_animationFrame(); - Object.defineProperty(exports2, "animationFrame", { enumerable: true, get: function() { - return animationFrame_1.animationFrame; - } }); - Object.defineProperty(exports2, "animationFrameScheduler", { enumerable: true, get: function() { - return animationFrame_1.animationFrameScheduler; - } }); - var VirtualTimeScheduler_1 = require_VirtualTimeScheduler(); - Object.defineProperty(exports2, "VirtualTimeScheduler", { enumerable: true, get: function() { - return VirtualTimeScheduler_1.VirtualTimeScheduler; - } }); - Object.defineProperty(exports2, "VirtualAction", { enumerable: true, get: function() { - return VirtualTimeScheduler_1.VirtualAction; - } }); - var Scheduler_1 = require_Scheduler(); - Object.defineProperty(exports2, "Scheduler", { enumerable: true, get: function() { - return Scheduler_1.Scheduler; - } }); - var Subscription_1 = require_Subscription(); - Object.defineProperty(exports2, "Subscription", { enumerable: true, get: function() { - return Subscription_1.Subscription; - } }); - var Subscriber_1 = require_Subscriber(); - Object.defineProperty(exports2, "Subscriber", { enumerable: true, get: function() { - return Subscriber_1.Subscriber; - } }); - var Notification_1 = require_Notification(); - Object.defineProperty(exports2, "Notification", { enumerable: true, get: function() { - return Notification_1.Notification; - } }); - Object.defineProperty(exports2, "NotificationKind", { enumerable: true, get: function() { - return Notification_1.NotificationKind; - } }); - var pipe_1 = require_pipe(); - Object.defineProperty(exports2, "pipe", { enumerable: true, get: function() { - return pipe_1.pipe; - } }); - var noop_1 = require_noop(); - Object.defineProperty(exports2, "noop", { enumerable: true, get: function() { - return noop_1.noop; - } }); - var identity_1 = require_identity(); - Object.defineProperty(exports2, "identity", { enumerable: true, get: function() { - return identity_1.identity; - } }); - var isObservable_1 = require_isObservable(); - Object.defineProperty(exports2, "isObservable", { enumerable: true, get: function() { - return isObservable_1.isObservable; - } }); - var lastValueFrom_1 = require_lastValueFrom(); - Object.defineProperty(exports2, "lastValueFrom", { enumerable: true, get: function() { - return lastValueFrom_1.lastValueFrom; - } }); - var firstValueFrom_1 = require_firstValueFrom(); - Object.defineProperty(exports2, "firstValueFrom", { enumerable: true, get: function() { - return firstValueFrom_1.firstValueFrom; - } }); - var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); - Object.defineProperty(exports2, "ArgumentOutOfRangeError", { enumerable: true, get: function() { - return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError; - } }); - var EmptyError_1 = require_EmptyError(); - Object.defineProperty(exports2, "EmptyError", { enumerable: true, get: function() { - return EmptyError_1.EmptyError; - } }); - var NotFoundError_1 = require_NotFoundError(); - Object.defineProperty(exports2, "NotFoundError", { enumerable: true, get: function() { - return NotFoundError_1.NotFoundError; - } }); - var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); - Object.defineProperty(exports2, "ObjectUnsubscribedError", { enumerable: true, get: function() { - return ObjectUnsubscribedError_1.ObjectUnsubscribedError; - } }); - var SequenceError_1 = require_SequenceError(); - Object.defineProperty(exports2, "SequenceError", { enumerable: true, get: function() { - return SequenceError_1.SequenceError; - } }); - var timeout_1 = require_timeout(); - Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: function() { - return timeout_1.TimeoutError; - } }); - var UnsubscriptionError_1 = require_UnsubscriptionError(); - Object.defineProperty(exports2, "UnsubscriptionError", { enumerable: true, get: function() { - return UnsubscriptionError_1.UnsubscriptionError; - } }); - var bindCallback_1 = require_bindCallback(); - Object.defineProperty(exports2, "bindCallback", { enumerable: true, get: function() { - return bindCallback_1.bindCallback; - } }); - var bindNodeCallback_1 = require_bindNodeCallback(); - Object.defineProperty(exports2, "bindNodeCallback", { enumerable: true, get: function() { - return bindNodeCallback_1.bindNodeCallback; - } }); - var combineLatest_1 = require_combineLatest(); - Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { - return combineLatest_1.combineLatest; - } }); - var concat_1 = require_concat(); - Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { - return concat_1.concat; - } }); - var connectable_1 = require_connectable(); - Object.defineProperty(exports2, "connectable", { enumerable: true, get: function() { - return connectable_1.connectable; - } }); - var defer_1 = require_defer(); - Object.defineProperty(exports2, "defer", { enumerable: true, get: function() { - return defer_1.defer; - } }); - var empty_1 = require_empty(); - Object.defineProperty(exports2, "empty", { enumerable: true, get: function() { - return empty_1.empty; - } }); - var forkJoin_1 = require_forkJoin(); - Object.defineProperty(exports2, "forkJoin", { enumerable: true, get: function() { - return forkJoin_1.forkJoin; - } }); - var from_1 = require_from2(); - Object.defineProperty(exports2, "from", { enumerable: true, get: function() { - return from_1.from; - } }); - var fromEvent_1 = require_fromEvent(); - Object.defineProperty(exports2, "fromEvent", { enumerable: true, get: function() { - return fromEvent_1.fromEvent; - } }); - var fromEventPattern_1 = require_fromEventPattern(); - Object.defineProperty(exports2, "fromEventPattern", { enumerable: true, get: function() { - return fromEventPattern_1.fromEventPattern; - } }); - var generate_1 = require_generate(); - Object.defineProperty(exports2, "generate", { enumerable: true, get: function() { - return generate_1.generate; - } }); - var iif_1 = require_iif(); - Object.defineProperty(exports2, "iif", { enumerable: true, get: function() { - return iif_1.iif; - } }); - var interval_1 = require_interval(); - Object.defineProperty(exports2, "interval", { enumerable: true, get: function() { - return interval_1.interval; - } }); - var merge_1 = require_merge(); - Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { - return merge_1.merge; - } }); - var never_1 = require_never(); - Object.defineProperty(exports2, "never", { enumerable: true, get: function() { - return never_1.never; - } }); - var of_1 = require_of(); - Object.defineProperty(exports2, "of", { enumerable: true, get: function() { - return of_1.of; - } }); - var onErrorResumeNext_1 = require_onErrorResumeNext2(); - Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { - return onErrorResumeNext_1.onErrorResumeNext; - } }); - var pairs_1 = require_pairs(); - Object.defineProperty(exports2, "pairs", { enumerable: true, get: function() { - return pairs_1.pairs; - } }); - var partition_1 = require_partition(); - Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { - return partition_1.partition; - } }); - var race_1 = require_race(); - Object.defineProperty(exports2, "race", { enumerable: true, get: function() { - return race_1.race; - } }); - var range_1 = require_range(); - Object.defineProperty(exports2, "range", { enumerable: true, get: function() { - return range_1.range; - } }); - var throwError_1 = require_throwError(); - Object.defineProperty(exports2, "throwError", { enumerable: true, get: function() { - return throwError_1.throwError; - } }); - var timer_1 = require_timer2(); - Object.defineProperty(exports2, "timer", { enumerable: true, get: function() { - return timer_1.timer; - } }); - var using_1 = require_using(); - Object.defineProperty(exports2, "using", { enumerable: true, get: function() { - return using_1.using; - } }); - var zip_1 = require_zip(); - Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { - return zip_1.zip; - } }); - var scheduled_1 = require_scheduled(); - Object.defineProperty(exports2, "scheduled", { enumerable: true, get: function() { - return scheduled_1.scheduled; - } }); - var empty_2 = require_empty(); - Object.defineProperty(exports2, "EMPTY", { enumerable: true, get: function() { - return empty_2.EMPTY; - } }); - var never_2 = require_never(); - Object.defineProperty(exports2, "NEVER", { enumerable: true, get: function() { - return never_2.NEVER; - } }); - __exportStar(require_types3(), exports2); - var config_1 = require_config(); - Object.defineProperty(exports2, "config", { enumerable: true, get: function() { - return config_1.config; - } }); - var audit_1 = require_audit(); - Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { - return audit_1.audit; - } }); - var auditTime_1 = require_auditTime(); - Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { - return auditTime_1.auditTime; - } }); - var buffer_1 = require_buffer(); - Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { - return buffer_1.buffer; - } }); - var bufferCount_1 = require_bufferCount(); - Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { - return bufferCount_1.bufferCount; - } }); - var bufferTime_1 = require_bufferTime(); - Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { - return bufferTime_1.bufferTime; - } }); - var bufferToggle_1 = require_bufferToggle(); - Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { - return bufferToggle_1.bufferToggle; - } }); - var bufferWhen_1 = require_bufferWhen(); - Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { - return bufferWhen_1.bufferWhen; - } }); - var catchError_1 = require_catchError(); - Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { - return catchError_1.catchError; - } }); - var combineAll_1 = require_combineAll(); - Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { - return combineAll_1.combineAll; - } }); - var combineLatestAll_1 = require_combineLatestAll(); - Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { - return combineLatestAll_1.combineLatestAll; - } }); - var combineLatestWith_1 = require_combineLatestWith(); - Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { - return combineLatestWith_1.combineLatestWith; - } }); - var concatAll_1 = require_concatAll(); - Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { - return concatAll_1.concatAll; - } }); - var concatMap_1 = require_concatMap(); - Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { - return concatMap_1.concatMap; - } }); - var concatMapTo_1 = require_concatMapTo(); - Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { - return concatMapTo_1.concatMapTo; - } }); - var concatWith_1 = require_concatWith(); - Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { - return concatWith_1.concatWith; - } }); - var connect_1 = require_connect(); - Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { - return connect_1.connect; - } }); - var count_1 = require_count(); - Object.defineProperty(exports2, "count", { enumerable: true, get: function() { - return count_1.count; - } }); - var debounce_1 = require_debounce(); - Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { - return debounce_1.debounce; - } }); - var debounceTime_1 = require_debounceTime(); - Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { - return debounceTime_1.debounceTime; - } }); - var defaultIfEmpty_1 = require_defaultIfEmpty(); - Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { - return defaultIfEmpty_1.defaultIfEmpty; - } }); - var delay_1 = require_delay(); - Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { - return delay_1.delay; - } }); - var delayWhen_1 = require_delayWhen(); - Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { - return delayWhen_1.delayWhen; - } }); - var dematerialize_1 = require_dematerialize(); - Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { - return dematerialize_1.dematerialize; - } }); - var distinct_1 = require_distinct(); - Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { - return distinct_1.distinct; - } }); - var distinctUntilChanged_1 = require_distinctUntilChanged(); - Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { - return distinctUntilChanged_1.distinctUntilChanged; - } }); - var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); - Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { - return distinctUntilKeyChanged_1.distinctUntilKeyChanged; - } }); - var elementAt_1 = require_elementAt(); - Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { - return elementAt_1.elementAt; - } }); - var endWith_1 = require_endWith(); - Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { - return endWith_1.endWith; - } }); - var every_1 = require_every(); - Object.defineProperty(exports2, "every", { enumerable: true, get: function() { - return every_1.every; - } }); - var exhaust_1 = require_exhaust(); - Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { - return exhaust_1.exhaust; - } }); - var exhaustAll_1 = require_exhaustAll(); - Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { - return exhaustAll_1.exhaustAll; - } }); - var exhaustMap_1 = require_exhaustMap(); - Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { - return exhaustMap_1.exhaustMap; - } }); - var expand_1 = require_expand(); - Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { - return expand_1.expand; - } }); - var filter_1 = require_filter(); - Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { - return filter_1.filter; - } }); - var finalize_1 = require_finalize(); - Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { - return finalize_1.finalize; - } }); - var find_1 = require_find(); - Object.defineProperty(exports2, "find", { enumerable: true, get: function() { - return find_1.find; - } }); - var findIndex_1 = require_findIndex(); - Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { - return findIndex_1.findIndex; - } }); - var first_1 = require_first(); - Object.defineProperty(exports2, "first", { enumerable: true, get: function() { - return first_1.first; - } }); - var groupBy_1 = require_groupBy(); - Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { - return groupBy_1.groupBy; - } }); - var ignoreElements_1 = require_ignoreElements(); - Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { - return ignoreElements_1.ignoreElements; - } }); - var isEmpty_1 = require_isEmpty(); - Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { - return isEmpty_1.isEmpty; - } }); - var last_1 = require_last(); - Object.defineProperty(exports2, "last", { enumerable: true, get: function() { - return last_1.last; - } }); - var map_1 = require_map(); - Object.defineProperty(exports2, "map", { enumerable: true, get: function() { - return map_1.map; - } }); - var mapTo_1 = require_mapTo(); - Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { - return mapTo_1.mapTo; - } }); - var materialize_1 = require_materialize(); - Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { - return materialize_1.materialize; - } }); - var max_1 = require_max(); - Object.defineProperty(exports2, "max", { enumerable: true, get: function() { - return max_1.max; - } }); - var mergeAll_1 = require_mergeAll(); - Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { - return mergeAll_1.mergeAll; - } }); - var flatMap_1 = require_flatMap(); - Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { - return flatMap_1.flatMap; - } }); - var mergeMap_1 = require_mergeMap(); - Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { - return mergeMap_1.mergeMap; - } }); - var mergeMapTo_1 = require_mergeMapTo(); - Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { - return mergeMapTo_1.mergeMapTo; - } }); - var mergeScan_1 = require_mergeScan(); - Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { - return mergeScan_1.mergeScan; - } }); - var mergeWith_1 = require_mergeWith(); - Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { - return mergeWith_1.mergeWith; - } }); - var min_1 = require_min(); - Object.defineProperty(exports2, "min", { enumerable: true, get: function() { - return min_1.min; - } }); - var multicast_1 = require_multicast(); - Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { - return multicast_1.multicast; - } }); - var observeOn_1 = require_observeOn(); - Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { - return observeOn_1.observeOn; - } }); - var pairwise_1 = require_pairwise(); - Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { - return pairwise_1.pairwise; - } }); - var pluck_1 = require_pluck(); - Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { - return pluck_1.pluck; - } }); - var publish_1 = require_publish(); - Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { - return publish_1.publish; - } }); - var publishBehavior_1 = require_publishBehavior(); - Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { - return publishBehavior_1.publishBehavior; - } }); - var publishLast_1 = require_publishLast(); - Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { - return publishLast_1.publishLast; - } }); - var publishReplay_1 = require_publishReplay(); - Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { - return publishReplay_1.publishReplay; - } }); - var raceWith_1 = require_raceWith(); - Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { - return raceWith_1.raceWith; - } }); - var reduce_1 = require_reduce(); - Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { - return reduce_1.reduce; - } }); - var repeat_1 = require_repeat(); - Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { - return repeat_1.repeat; - } }); - var repeatWhen_1 = require_repeatWhen(); - Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { - return repeatWhen_1.repeatWhen; - } }); - var retry_1 = require_retry(); - Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { - return retry_1.retry; - } }); - var retryWhen_1 = require_retryWhen(); - Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { - return retryWhen_1.retryWhen; - } }); - var refCount_1 = require_refCount(); - Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { - return refCount_1.refCount; - } }); - var sample_1 = require_sample(); - Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { - return sample_1.sample; - } }); - var sampleTime_1 = require_sampleTime(); - Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { - return sampleTime_1.sampleTime; - } }); - var scan_1 = require_scan(); - Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { - return scan_1.scan; - } }); - var sequenceEqual_1 = require_sequenceEqual(); - Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { - return sequenceEqual_1.sequenceEqual; - } }); - var share_1 = require_share(); - Object.defineProperty(exports2, "share", { enumerable: true, get: function() { - return share_1.share; - } }); - var shareReplay_1 = require_shareReplay(); - Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { - return shareReplay_1.shareReplay; - } }); - var single_1 = require_single(); - Object.defineProperty(exports2, "single", { enumerable: true, get: function() { - return single_1.single; - } }); - var skip_1 = require_skip(); - Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { - return skip_1.skip; - } }); - var skipLast_1 = require_skipLast(); - Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { - return skipLast_1.skipLast; - } }); - var skipUntil_1 = require_skipUntil(); - Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { - return skipUntil_1.skipUntil; - } }); - var skipWhile_1 = require_skipWhile(); - Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { - return skipWhile_1.skipWhile; - } }); - var startWith_1 = require_startWith(); - Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { - return startWith_1.startWith; - } }); - var subscribeOn_1 = require_subscribeOn(); - Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { - return subscribeOn_1.subscribeOn; - } }); - var switchAll_1 = require_switchAll(); - Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { - return switchAll_1.switchAll; - } }); - var switchMap_1 = require_switchMap(); - Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { - return switchMap_1.switchMap; - } }); - var switchMapTo_1 = require_switchMapTo(); - Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { - return switchMapTo_1.switchMapTo; - } }); - var switchScan_1 = require_switchScan(); - Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { - return switchScan_1.switchScan; - } }); - var take_1 = require_take(); - Object.defineProperty(exports2, "take", { enumerable: true, get: function() { - return take_1.take; - } }); - var takeLast_1 = require_takeLast(); - Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { - return takeLast_1.takeLast; - } }); - var takeUntil_1 = require_takeUntil(); - Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { - return takeUntil_1.takeUntil; - } }); - var takeWhile_1 = require_takeWhile(); - Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { - return takeWhile_1.takeWhile; - } }); - var tap_1 = require_tap(); - Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { - return tap_1.tap; - } }); - var throttle_1 = require_throttle(); - Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { - return throttle_1.throttle; - } }); - var throttleTime_1 = require_throttleTime(); - Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { - return throttleTime_1.throttleTime; - } }); - var throwIfEmpty_1 = require_throwIfEmpty(); - Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { - return throwIfEmpty_1.throwIfEmpty; - } }); - var timeInterval_1 = require_timeInterval(); - Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { - return timeInterval_1.timeInterval; - } }); - var timeout_2 = require_timeout(); - Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { - return timeout_2.timeout; - } }); - var timeoutWith_1 = require_timeoutWith(); - Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { - return timeoutWith_1.timeoutWith; - } }); - var timestamp_1 = require_timestamp(); - Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { - return timestamp_1.timestamp; - } }); - var toArray_1 = require_toArray(); - Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { - return toArray_1.toArray; - } }); - var window_1 = require_window(); - Object.defineProperty(exports2, "window", { enumerable: true, get: function() { - return window_1.window; - } }); - var windowCount_1 = require_windowCount(); - Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { - return windowCount_1.windowCount; - } }); - var windowTime_1 = require_windowTime(); - Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { - return windowTime_1.windowTime; - } }); - var windowToggle_1 = require_windowToggle(); - Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { - return windowToggle_1.windowToggle; - } }); - var windowWhen_1 = require_windowWhen(); - Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { - return windowWhen_1.windowWhen; - } }); - var withLatestFrom_1 = require_withLatestFrom(); - Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { - return withLatestFrom_1.withLatestFrom; - } }); - var zipAll_1 = require_zipAll(); - Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { - return zipAll_1.zipAll; - } }); - var zipWith_1 = require_zipWith(); - Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { - return zipWith_1.zipWith; - } }); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/partition.js -var require_partition2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/partition.js"(exports2) { +// ../node_modules/.pnpm/unique-string@2.0.0/node_modules/unique-string/index.js +var require_unique_string = __commonJS({ + "../node_modules/.pnpm/unique-string@2.0.0/node_modules/unique-string/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.partition = void 0; - var not_1 = require_not(); - var filter_1 = require_filter(); - function partition(predicate, thisArg) { - return function(source) { - return [filter_1.filter(predicate, thisArg)(source), filter_1.filter(not_1.not(predicate, thisArg))(source)]; - }; - } - exports2.partition = partition; + var cryptoRandomString = require_crypto_random_string(); + module2.exports = () => cryptoRandomString(32); } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/race.js -var require_race2 = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/internal/operators/race.js"(exports2) { +// ../node_modules/.pnpm/path-temp@2.0.0/node_modules/path-temp/index.js +var require_path_temp = __commonJS({ + "../node_modules/.pnpm/path-temp@2.0.0/node_modules/path-temp/index.js"(exports2, module2) { "use strict"; - var __read = exports2 && exports2.__read || function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; + var path2 = require("path"); + var uniqueString = require_unique_string(); + module2.exports = function pathTemp(folder) { + return path2.join(folder, `_tmp_${process.pid}_${uniqueString()}`); + }; + } +}); + +// ../node_modules/.pnpm/can-write-to-dir@1.1.1/node_modules/can-write-to-dir/index.js +var require_can_write_to_dir = __commonJS({ + "../node_modules/.pnpm/can-write-to-dir@1.1.1/node_modules/can-write-to-dir/index.js"(exports2, module2) { + "use strict"; + var defaultFS = require("fs"); + var pathTemp = require_path_temp(); + module2.exports = async (dir, customFS) => { + const fs2 = customFS || defaultFS; + const tempFile = pathTemp(dir); try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); - } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; + await fs2.promises.writeFile(tempFile, "", "utf8"); + fs2.promises.unlink(tempFile).catch(() => { + }); + return true; + } catch (err) { + if (err.code === "EACCES" || err.code === "EPERM" || err.code === "EROFS") { + return false; } + throw err; } - return ar; }; - var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { - for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) - to[j] = from[i]; - return to; + module2.exports.sync = (dir, customFS) => { + const fs2 = customFS || defaultFS; + const tempFile = pathTemp(dir); + try { + fs2.writeFileSync(tempFile, "", "utf8"); + fs2.unlinkSync(tempFile); + return true; + } catch (err) { + if (err.code === "EACCES" || err.code === "EPERM" || err.code === "EROFS") { + return false; + } + throw err; + } + }; + } +}); + +// ../config/config/lib/checkGlobalBinDir.js +var require_checkGlobalBinDir = __commonJS({ + "../config/config/lib/checkGlobalBinDir.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.race = void 0; - var argsOrArgArray_1 = require_argsOrArgArray(); - var raceWith_1 = require_raceWith(); - function race() { - var args2 = []; - for (var _i = 0; _i < arguments.length; _i++) { - args2[_i] = arguments[_i]; + exports2.checkGlobalBinDir = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var can_write_to_dir_1 = require_can_write_to_dir(); + var path_name_1 = __importDefault4(require_path_name()); + async function checkGlobalBinDir(globalBinDir, { env, shouldAllowWrite }) { + if (!env[path_name_1.default]) { + throw new error_1.PnpmError("NO_PATH_ENV", `Couldn't find a global directory for executables because the "${path_name_1.default}" environment variable is not set.`); + } + if (!await globalBinDirIsInPath(globalBinDir, env)) { + throw new error_1.PnpmError("GLOBAL_BIN_DIR_NOT_IN_PATH", `The configured global bin directory "${globalBinDir}" is not in PATH`); + } + if (shouldAllowWrite && !canWriteToDirAndExists(globalBinDir)) { + throw new error_1.PnpmError("PNPM_DIR_NOT_WRITABLE", `The CLI has no write access to the pnpm home directory at ${globalBinDir}`); + } + } + exports2.checkGlobalBinDir = checkGlobalBinDir; + async function globalBinDirIsInPath(globalBinDir, env) { + const dirs = env[path_name_1.default]?.split(path_1.default.delimiter) ?? []; + if (dirs.some((dir) => areDirsEqual(globalBinDir, dir))) + return true; + const realGlobalBinDir = await fs_1.promises.realpath(globalBinDir); + return dirs.some((dir) => areDirsEqual(realGlobalBinDir, dir)); + } + var areDirsEqual = (dir1, dir2) => path_1.default.relative(dir1, dir2) === ""; + function canWriteToDirAndExists(dir) { + try { + return (0, can_write_to_dir_1.sync)(dir); + } catch (err) { + if (err.code !== "ENOENT") + throw err; + return false; } - return raceWith_1.raceWith.apply(void 0, __spreadArray([], __read(argsOrArgArray_1.argsOrArgArray(args2)))); } - exports2.race = race; } }); -// ../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/operators/index.js -var require_operators = __commonJS({ - "../../node_modules/.pnpm/rxjs@7.3.0/node_modules/rxjs/dist/cjs/operators/index.js"(exports2) { +// ../config/config/lib/getScopeRegistries.js +var require_getScopeRegistries = __commonJS({ + "../config/config/lib/getScopeRegistries.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.mergeAll = exports2.merge = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.concat = exports2.combineLatestWith = exports2.combineLatest = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = void 0; - exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.race = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.partition = exports2.pairwise = exports2.onErrorResumeNext = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = void 0; - exports2.zipWith = exports2.zipAll = exports2.zip = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = void 0; - var audit_1 = require_audit(); - Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { - return audit_1.audit; - } }); - var auditTime_1 = require_auditTime(); - Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { - return auditTime_1.auditTime; - } }); - var buffer_1 = require_buffer(); - Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { - return buffer_1.buffer; - } }); - var bufferCount_1 = require_bufferCount(); - Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { - return bufferCount_1.bufferCount; - } }); - var bufferTime_1 = require_bufferTime(); - Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { - return bufferTime_1.bufferTime; - } }); - var bufferToggle_1 = require_bufferToggle(); - Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { - return bufferToggle_1.bufferToggle; - } }); - var bufferWhen_1 = require_bufferWhen(); - Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { - return bufferWhen_1.bufferWhen; - } }); - var catchError_1 = require_catchError(); - Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { - return catchError_1.catchError; - } }); - var combineAll_1 = require_combineAll(); - Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { - return combineAll_1.combineAll; - } }); - var combineLatestAll_1 = require_combineLatestAll(); - Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { - return combineLatestAll_1.combineLatestAll; - } }); - var combineLatest_1 = require_combineLatest2(); - Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { - return combineLatest_1.combineLatest; - } }); - var combineLatestWith_1 = require_combineLatestWith(); - Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { - return combineLatestWith_1.combineLatestWith; - } }); - var concat_1 = require_concat2(); - Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { - return concat_1.concat; - } }); - var concatAll_1 = require_concatAll(); - Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { - return concatAll_1.concatAll; - } }); - var concatMap_1 = require_concatMap(); - Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { - return concatMap_1.concatMap; - } }); - var concatMapTo_1 = require_concatMapTo(); - Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { - return concatMapTo_1.concatMapTo; - } }); - var concatWith_1 = require_concatWith(); - Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { - return concatWith_1.concatWith; - } }); - var connect_1 = require_connect(); - Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { - return connect_1.connect; - } }); - var count_1 = require_count(); - Object.defineProperty(exports2, "count", { enumerable: true, get: function() { - return count_1.count; - } }); - var debounce_1 = require_debounce(); - Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { - return debounce_1.debounce; - } }); - var debounceTime_1 = require_debounceTime(); - Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { - return debounceTime_1.debounceTime; - } }); - var defaultIfEmpty_1 = require_defaultIfEmpty(); - Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { - return defaultIfEmpty_1.defaultIfEmpty; - } }); - var delay_1 = require_delay(); - Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { - return delay_1.delay; - } }); - var delayWhen_1 = require_delayWhen(); - Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { - return delayWhen_1.delayWhen; - } }); - var dematerialize_1 = require_dematerialize(); - Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { - return dematerialize_1.dematerialize; - } }); - var distinct_1 = require_distinct(); - Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { - return distinct_1.distinct; - } }); - var distinctUntilChanged_1 = require_distinctUntilChanged(); - Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { - return distinctUntilChanged_1.distinctUntilChanged; - } }); - var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); - Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { - return distinctUntilKeyChanged_1.distinctUntilKeyChanged; - } }); - var elementAt_1 = require_elementAt(); - Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { - return elementAt_1.elementAt; - } }); - var endWith_1 = require_endWith(); - Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { - return endWith_1.endWith; - } }); - var every_1 = require_every(); - Object.defineProperty(exports2, "every", { enumerable: true, get: function() { - return every_1.every; - } }); - var exhaust_1 = require_exhaust(); - Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { - return exhaust_1.exhaust; - } }); - var exhaustAll_1 = require_exhaustAll(); - Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { - return exhaustAll_1.exhaustAll; - } }); - var exhaustMap_1 = require_exhaustMap(); - Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { - return exhaustMap_1.exhaustMap; - } }); - var expand_1 = require_expand(); - Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { - return expand_1.expand; - } }); - var filter_1 = require_filter(); - Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { - return filter_1.filter; - } }); - var finalize_1 = require_finalize(); - Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { - return finalize_1.finalize; - } }); - var find_1 = require_find(); - Object.defineProperty(exports2, "find", { enumerable: true, get: function() { - return find_1.find; - } }); - var findIndex_1 = require_findIndex(); - Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { - return findIndex_1.findIndex; - } }); - var first_1 = require_first(); - Object.defineProperty(exports2, "first", { enumerable: true, get: function() { - return first_1.first; - } }); - var groupBy_1 = require_groupBy(); - Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { - return groupBy_1.groupBy; - } }); - var ignoreElements_1 = require_ignoreElements(); - Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { - return ignoreElements_1.ignoreElements; - } }); - var isEmpty_1 = require_isEmpty(); - Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { - return isEmpty_1.isEmpty; - } }); - var last_1 = require_last(); - Object.defineProperty(exports2, "last", { enumerable: true, get: function() { - return last_1.last; - } }); - var map_1 = require_map(); - Object.defineProperty(exports2, "map", { enumerable: true, get: function() { - return map_1.map; - } }); - var mapTo_1 = require_mapTo(); - Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { - return mapTo_1.mapTo; - } }); - var materialize_1 = require_materialize(); - Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { - return materialize_1.materialize; - } }); - var max_1 = require_max(); - Object.defineProperty(exports2, "max", { enumerable: true, get: function() { - return max_1.max; - } }); - var merge_1 = require_merge2(); - Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { - return merge_1.merge; - } }); - var mergeAll_1 = require_mergeAll(); - Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { - return mergeAll_1.mergeAll; - } }); - var flatMap_1 = require_flatMap(); - Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { - return flatMap_1.flatMap; - } }); - var mergeMap_1 = require_mergeMap(); - Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { - return mergeMap_1.mergeMap; - } }); - var mergeMapTo_1 = require_mergeMapTo(); - Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { - return mergeMapTo_1.mergeMapTo; - } }); - var mergeScan_1 = require_mergeScan(); - Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { - return mergeScan_1.mergeScan; - } }); - var mergeWith_1 = require_mergeWith(); - Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { - return mergeWith_1.mergeWith; - } }); - var min_1 = require_min(); - Object.defineProperty(exports2, "min", { enumerable: true, get: function() { - return min_1.min; - } }); - var multicast_1 = require_multicast(); - Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { - return multicast_1.multicast; - } }); - var observeOn_1 = require_observeOn(); - Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { - return observeOn_1.observeOn; - } }); - var onErrorResumeNext_1 = require_onErrorResumeNext(); - Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { - return onErrorResumeNext_1.onErrorResumeNext; - } }); - var pairwise_1 = require_pairwise(); - Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { - return pairwise_1.pairwise; - } }); - var partition_1 = require_partition2(); - Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { - return partition_1.partition; - } }); - var pluck_1 = require_pluck(); - Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { - return pluck_1.pluck; - } }); - var publish_1 = require_publish(); - Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { - return publish_1.publish; - } }); - var publishBehavior_1 = require_publishBehavior(); - Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { - return publishBehavior_1.publishBehavior; - } }); - var publishLast_1 = require_publishLast(); - Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { - return publishLast_1.publishLast; - } }); - var publishReplay_1 = require_publishReplay(); - Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { - return publishReplay_1.publishReplay; - } }); - var race_1 = require_race2(); - Object.defineProperty(exports2, "race", { enumerable: true, get: function() { - return race_1.race; - } }); - var raceWith_1 = require_raceWith(); - Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { - return raceWith_1.raceWith; - } }); - var reduce_1 = require_reduce(); - Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { - return reduce_1.reduce; - } }); - var repeat_1 = require_repeat(); - Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { - return repeat_1.repeat; - } }); - var repeatWhen_1 = require_repeatWhen(); - Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { - return repeatWhen_1.repeatWhen; - } }); - var retry_1 = require_retry(); - Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { - return retry_1.retry; - } }); - var retryWhen_1 = require_retryWhen(); - Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { - return retryWhen_1.retryWhen; - } }); - var refCount_1 = require_refCount(); - Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { - return refCount_1.refCount; - } }); - var sample_1 = require_sample(); - Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { - return sample_1.sample; - } }); - var sampleTime_1 = require_sampleTime(); - Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { - return sampleTime_1.sampleTime; - } }); - var scan_1 = require_scan(); - Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { - return scan_1.scan; - } }); - var sequenceEqual_1 = require_sequenceEqual(); - Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { - return sequenceEqual_1.sequenceEqual; - } }); - var share_1 = require_share(); - Object.defineProperty(exports2, "share", { enumerable: true, get: function() { - return share_1.share; - } }); - var shareReplay_1 = require_shareReplay(); - Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { - return shareReplay_1.shareReplay; - } }); - var single_1 = require_single(); - Object.defineProperty(exports2, "single", { enumerable: true, get: function() { - return single_1.single; - } }); - var skip_1 = require_skip(); - Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { - return skip_1.skip; - } }); - var skipLast_1 = require_skipLast(); - Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { - return skipLast_1.skipLast; - } }); - var skipUntil_1 = require_skipUntil(); - Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { - return skipUntil_1.skipUntil; - } }); - var skipWhile_1 = require_skipWhile(); - Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { - return skipWhile_1.skipWhile; - } }); - var startWith_1 = require_startWith(); - Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { - return startWith_1.startWith; - } }); - var subscribeOn_1 = require_subscribeOn(); - Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { - return subscribeOn_1.subscribeOn; - } }); - var switchAll_1 = require_switchAll(); - Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { - return switchAll_1.switchAll; - } }); - var switchMap_1 = require_switchMap(); - Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { - return switchMap_1.switchMap; - } }); - var switchMapTo_1 = require_switchMapTo(); - Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { - return switchMapTo_1.switchMapTo; - } }); - var switchScan_1 = require_switchScan(); - Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { - return switchScan_1.switchScan; - } }); - var take_1 = require_take(); - Object.defineProperty(exports2, "take", { enumerable: true, get: function() { - return take_1.take; - } }); - var takeLast_1 = require_takeLast(); - Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { - return takeLast_1.takeLast; - } }); - var takeUntil_1 = require_takeUntil(); - Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { - return takeUntil_1.takeUntil; - } }); - var takeWhile_1 = require_takeWhile(); - Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { - return takeWhile_1.takeWhile; - } }); - var tap_1 = require_tap(); - Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { - return tap_1.tap; - } }); - var throttle_1 = require_throttle(); - Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { - return throttle_1.throttle; - } }); - var throttleTime_1 = require_throttleTime(); - Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { - return throttleTime_1.throttleTime; - } }); - var throwIfEmpty_1 = require_throwIfEmpty(); - Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { - return throwIfEmpty_1.throwIfEmpty; - } }); - var timeInterval_1 = require_timeInterval(); - Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { - return timeInterval_1.timeInterval; - } }); - var timeout_1 = require_timeout(); - Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { - return timeout_1.timeout; - } }); - var timeoutWith_1 = require_timeoutWith(); - Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { - return timeoutWith_1.timeoutWith; - } }); - var timestamp_1 = require_timestamp(); - Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { - return timestamp_1.timestamp; - } }); - var toArray_1 = require_toArray(); - Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { - return toArray_1.toArray; - } }); - var window_1 = require_window(); - Object.defineProperty(exports2, "window", { enumerable: true, get: function() { - return window_1.window; - } }); - var windowCount_1 = require_windowCount(); - Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { - return windowCount_1.windowCount; - } }); - var windowTime_1 = require_windowTime(); - Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { - return windowTime_1.windowTime; - } }); - var windowToggle_1 = require_windowToggle(); - Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { - return windowToggle_1.windowToggle; - } }); - var windowWhen_1 = require_windowWhen(); - Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { - return windowWhen_1.windowWhen; - } }); - var withLatestFrom_1 = require_withLatestFrom(); - Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { - return withLatestFrom_1.withLatestFrom; - } }); - var zip_1 = require_zip2(); - Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { - return zip_1.zip; - } }); - var zipAll_1 = require_zipAll(); - Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { - return zipAll_1.zipAll; - } }); - var zipWith_1 = require_zipWith(); - Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { - return zipWith_1.zipWith; - } }); - } -}); - -// ../../node_modules/.pnpm/ansi-regex@3.0.0/node_modules/ansi-regex/index.js -var require_ansi_regex = __commonJS({ - "../../node_modules/.pnpm/ansi-regex@3.0.0/node_modules/ansi-regex/index.js"(exports2, module2) { - "use strict"; - module2.exports = () => { - const pattern = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[a-zA-Z\\d]*)*)?\\u0007)", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))" - ].join("|"); - return new RegExp(pattern, "g"); - }; - } -}); - -// ../../node_modules/.pnpm/ansi-split@1.0.1/node_modules/ansi-split/index.js -var require_ansi_split = __commonJS({ - "../../node_modules/.pnpm/ansi-split@1.0.1/node_modules/ansi-split/index.js"(exports2, module2) { - var isAnsi = require_ansi_regex()(); - module2.exports = splitAnsi; - function splitAnsi(str) { - var parts = str.match(isAnsi); - if (!parts) - return [str]; - var result = []; - var offset = 0; - var ptr = 0; - for (var i = 0; i < parts.length; i++) { - offset = str.indexOf(parts[i], offset); - if (offset === -1) - throw new Error("Could not split string"); - if (ptr !== offset) - result.push(str.slice(ptr, offset)); - if (ptr === offset && result.length) { - result[result.length - 1] += parts[i]; - } else { - if (offset === 0) - result.push(""); - result.push(parts[i]); + exports2.getScopeRegistries = void 0; + var normalize_registry_url_1 = __importDefault4(require_normalize_registry_url()); + function getScopeRegistries(rawConfig) { + const registries = {}; + for (const configKey of Object.keys(rawConfig)) { + if (configKey[0] === "@" && configKey.endsWith(":registry")) { + registries[configKey.slice(0, configKey.indexOf(":"))] = (0, normalize_registry_url_1.default)(rawConfig[configKey]); } - ptr = offset + parts[i].length; } - result.push(str.slice(ptr)); - return result; + return registries; } + exports2.getScopeRegistries = getScopeRegistries; } }); -// ../../node_modules/.pnpm/ansi-diff@1.1.1/node_modules/ansi-diff/index.js -var require_ansi_diff = __commonJS({ - "../../node_modules/.pnpm/ansi-diff@1.1.1/node_modules/ansi-diff/index.js"(exports2, module2) { - var ansi = require_ansi_split(); - var CLEAR_LINE = Buffer.from([27, 91, 48, 75]); - var NEWLINE = Buffer.from("\n"); - module2.exports = Diff; - function Diff(opts) { - if (!(this instanceof Diff)) - return new Diff(opts); - if (!opts) - opts = {}; - this.x = 0; - this.y = 0; - this.width = opts.width || Infinity; - this.height = opts.height || Infinity; - this._buffer = null; - this._out = []; - this._lines = []; - } - Diff.prototype.resize = function(opts) { - if (!opts) - opts = {}; - if (opts.width) - this.width = opts.width; - if (opts.height) - this.height = opts.height; - if (this._buffer) - this.update(this._buffer); - var last = top(this._lines); - if (!last) { - this.x = 0; - this.y = 0; - } else { - this.x = last.remainder; - this.y = last.y + last.height; - } - }; - Diff.prototype.toString = function() { - return this._buffer; +// ../config/config/lib/dirs.js +var require_dirs = __commonJS({ + "../config/config/lib/dirs.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - Diff.prototype.update = function(buffer, opts) { - this._buffer = Buffer.isBuffer(buffer) ? buffer.toString() : buffer; - var other = this._buffer; - var oldLines = this._lines; - var lines = split(other, this); - this._lines = lines; - this._out = []; - var min = Math.min(lines.length, oldLines.length); - var i = 0; - var a; - var b; - var scrub = false; - for (; i < min; i++) { - a = lines[i]; - b = oldLines[i]; - if (same(a, b)) - continue; - if (!scrub && this.x !== this.width && inlineDiff(a, b)) { - var left = a.diffLeft(b); - var right = a.diffRight(b); - var slice = a.raw.slice(left, right ? -right : a.length); - if (left + right > 4 && left + slice.length < this.width - 1) { - this._moveTo(left, a.y); - this._push(Buffer.from(slice)); - this.x += slice.length; - continue; - } - } - this._moveTo(0, a.y); - this._write(a); - if (a.y !== b.y || a.height !== b.height) - scrub = true; - if (b.length > a.length || scrub) - this._push(CLEAR_LINE); - if (a.newline) - this._newline(); - } - for (; i < lines.length; i++) { - a = lines[i]; - this._moveTo(0, a.y); - this._write(a); - if (scrub) - this._push(CLEAR_LINE); - if (a.newline) - this._newline(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getConfigDir = exports2.getDataDir = exports2.getStateDir = exports2.getCacheDir = void 0; + var os_1 = __importDefault4(require("os")); + var path_1 = __importDefault4(require("path")); + function getCacheDir(opts) { + if (opts.env.XDG_CACHE_HOME) { + return path_1.default.join(opts.env.XDG_CACHE_HOME, "pnpm"); } - var oldLast = top(oldLines); - var last = top(lines); - if (oldLast && (!last || last.y + last.height < oldLast.y + oldLast.height)) { - this._clearDown(oldLast.y + oldLast.height); + if (opts.platform === "darwin") { + return path_1.default.join(os_1.default.homedir(), "Library/Caches/pnpm"); } - if (opts && opts.moveTo) { - this._moveTo(opts.moveTo[0], opts.moveTo[1]); - } else if (last) { - this._moveTo(last.remainder, last.y + last.height); + if (opts.platform !== "win32") { + return path_1.default.join(os_1.default.homedir(), ".cache/pnpm"); } - return Buffer.concat(this._out); - }; - Diff.prototype._clearDown = function(y) { - var x = this.x; - for (var i = this.y; i <= y; i++) { - this._moveTo(x, i); - this._push(CLEAR_LINE); - x = 0; + if (opts.env.LOCALAPPDATA) { + return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm-cache"); } - }; - Diff.prototype._newline = function() { - this._push(NEWLINE); - this.x = 0; - this.y++; - }; - Diff.prototype._write = function(line) { - this._out.push(line.toBuffer()); - this.x = line.remainder; - this.y += line.height; - }; - Diff.prototype._moveTo = function(x, y) { - var dx = x - this.x; - var dy = y - this.y; - if (dx > 0) - this._push(moveRight(dx)); - else if (dx < 0) - this._push(moveLeft(-dx)); - if (dy > 0) - this._push(moveDown(dy)); - else if (dy < 0) - this._push(moveUp(-dy)); - this.x = x; - this.y = y; - }; - Diff.prototype._push = function(buf) { - this._out.push(buf); - }; - function same(a, b) { - return a.y === b.y && a.width === b.width && a.raw === b.raw && a.newline === b.newline; - } - function top(list) { - return list.length ? list[list.length - 1] : null; + return path_1.default.join(os_1.default.homedir(), ".pnpm-cache"); } - function Line(str, y, nl, term) { - this.y = y; - this.width = term.width; - this.parts = ansi(str); - this.length = length(this.parts); - this.raw = str; - this.newline = nl; - this.height = Math.floor(this.length / term.width); - this.remainder = this.length - (this.height && this.height * term.width); - if (this.height && !this.remainder) { - this.height--; - this.remainder = this.width; + exports2.getCacheDir = getCacheDir; + function getStateDir(opts) { + if (opts.env.XDG_STATE_HOME) { + return path_1.default.join(opts.env.XDG_STATE_HOME, "pnpm"); } - } - Line.prototype.diffLeft = function(other) { - var left = 0; - for (; left < this.length; left++) { - if (this.raw[left] !== other.raw[left]) - return left; + if (opts.platform !== "win32" && opts.platform !== "darwin") { + return path_1.default.join(os_1.default.homedir(), ".local/state/pnpm"); } - return left; - }; - Line.prototype.diffRight = function(other) { - var right = 0; - for (; right < this.length; right++) { - var r = this.length - right - 1; - if (this.raw[r] !== other.raw[r]) - return right; + if (opts.env.LOCALAPPDATA) { + return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm-state"); } - return right; - }; - Line.prototype.toBuffer = function() { - return Buffer.from(this.raw); - }; - function inlineDiff(a, b) { - return a.length === b.length && a.parts.length === 1 && b.parts.length === 1 && a.y === b.y && a.newline && b.newline && a.width === b.width; + return path_1.default.join(os_1.default.homedir(), ".pnpm-state"); } - function split(str, term) { - var y = 0; - var lines = str.split("\n"); - var wrapped = []; - var line; - for (var i = 0; i < lines.length; i++) { - line = new Line(lines[i], y, i < lines.length - 1, term); - y += line.height + (line.newline ? 1 : 0); - wrapped.push(line); + exports2.getStateDir = getStateDir; + function getDataDir(opts) { + if (opts.env.PNPM_HOME) { + return opts.env.PNPM_HOME; } - return wrapped; - } - function moveUp(n) { - return Buffer.from("1b5b" + toHex(n) + "41", "hex"); - } - function moveDown(n) { - return Buffer.from("1b5b" + toHex(n) + "42", "hex"); - } - function moveRight(n) { - return Buffer.from("1b5b" + toHex(n) + "43", "hex"); - } - function moveLeft(n) { - return Buffer.from("1b5b" + toHex(n) + "44", "hex"); - } - function length(parts) { - var len = 0; - for (var i = 0; i < parts.length; i += 2) { - len += parts[i].length; + if (opts.env.XDG_DATA_HOME) { + return path_1.default.join(opts.env.XDG_DATA_HOME, "pnpm"); } - return len; + if (opts.platform === "darwin") { + return path_1.default.join(os_1.default.homedir(), "Library/pnpm"); + } + if (opts.platform !== "win32") { + return path_1.default.join(os_1.default.homedir(), ".local/share/pnpm"); + } + if (opts.env.LOCALAPPDATA) { + return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm"); + } + return path_1.default.join(os_1.default.homedir(), ".pnpm"); } - function toHex(n) { - return Buffer.from("" + n).toString("hex"); + exports2.getDataDir = getDataDir; + function getConfigDir(opts) { + if (opts.env.XDG_CONFIG_HOME) { + return path_1.default.join(opts.env.XDG_CONFIG_HOME, "pnpm"); + } + if (opts.platform === "darwin") { + return path_1.default.join(os_1.default.homedir(), "Library/Preferences/pnpm"); + } + if (opts.platform !== "win32") { + return path_1.default.join(os_1.default.homedir(), ".config/pnpm"); + } + if (opts.env.LOCALAPPDATA) { + return path_1.default.join(opts.env.LOCALAPPDATA, "pnpm/config"); + } + return path_1.default.join(os_1.default.homedir(), ".config/pnpm"); } + exports2.getConfigDir = getConfigDir; } }); -// ../default-reporter/lib/constants.js -var require_constants2 = __commonJS({ - "../default-reporter/lib/constants.js"(exports2) { +// ../config/config/lib/concurrency.js +var require_concurrency = __commonJS({ + "../config/config/lib/concurrency.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EOL = void 0; - exports2.EOL = "\n"; + exports2.getWorkspaceConcurrency = void 0; + var os_1 = require("os"); + function getWorkspaceConcurrency(option) { + if (typeof option !== "number") + return 4; + if (option <= 0) { + return Math.max(1, (0, os_1.cpus)().length - Math.abs(option)); + } + return option; + } + exports2.getWorkspaceConcurrency = getWorkspaceConcurrency; } }); -// ../default-reporter/lib/mergeOutputs.js -var require_mergeOutputs = __commonJS({ - "../default-reporter/lib/mergeOutputs.js"(exports2) { +// ../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js +var require_map_obj = __commonJS({ + "../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var isObject = (value) => typeof value === "object" && value !== null; + var mapObjectSkip = Symbol("skip"); + var isObjectCustom = (value) => isObject(value) && !(value instanceof RegExp) && !(value instanceof Error) && !(value instanceof Date); + var mapObject = (object, mapper, options, isSeen = /* @__PURE__ */ new WeakMap()) => { + options = { + deep: false, + target: {}, + ...options + }; + if (isSeen.has(object)) { + return isSeen.get(object); } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var constants_1 = require_constants2(); - function mergeOutputs(outputs) { - let blockNo = 0; - let fixedBlockNo = 0; - let started = false; - let previousOuput = null; - return Rx.merge(...outputs).pipe(operators_1.map((log2) => { - let currentBlockNo = -1; - let currentFixedBlockNo = -1; - return log2.pipe(operators_1.map((msg) => { - if (msg["fixed"]) { - if (currentFixedBlockNo === -1) { - currentFixedBlockNo = fixedBlockNo++; - } - return { - blockNo: currentFixedBlockNo, - fixed: true, - msg: msg.msg - }; - } - if (currentBlockNo === -1) { - currentBlockNo = blockNo++; - } - return { - blockNo: currentBlockNo, - fixed: false, - msg: typeof msg === "string" ? msg : msg.msg, - prevFixedBlockNo: currentFixedBlockNo - }; - })); - }), operators_1.mergeAll(), operators_1.scan((acc, log2) => { - if (log2.fixed) { - acc.fixedBlocks[log2.blockNo] = log2.msg; - } else { - delete acc.fixedBlocks[log2["prevFixedBlockNo"]]; - acc.blocks[log2.blockNo] = log2.msg; - } - return acc; - }, { fixedBlocks: [], blocks: [] }), operators_1.map((sections) => { - const fixedBlocks = sections.fixedBlocks.filter(Boolean); - const nonFixedPart = sections.blocks.filter(Boolean).join(constants_1.EOL); - if (fixedBlocks.length === 0) { - return nonFixedPart; - } - const fixedPart = fixedBlocks.join(constants_1.EOL); - if (!nonFixedPart) { - return fixedPart; + isSeen.set(object, options.target); + const { target } = options; + delete options.target; + const mapArray = (array) => array.map((element) => isObjectCustom(element) ? mapObject(element, mapper, options, isSeen) : element); + if (Array.isArray(object)) { + return mapArray(object); + } + for (const [key, value] of Object.entries(object)) { + const mapResult = mapper(key, value, object); + if (mapResult === mapObjectSkip) { + continue; } - return `${nonFixedPart}${constants_1.EOL}${fixedPart}`; - }), operators_1.filter((msg) => { - if (started) { - return true; + let [newKey, newValue, { shouldRecurse = true } = {}] = mapResult; + if (newKey === "__proto__") { + continue; } - if (msg === "") - return false; - started = true; - return true; - }), operators_1.filter((msg) => { - if (msg !== previousOuput) { - previousOuput = msg; - return true; + if (options.deep && shouldRecurse && isObjectCustom(newValue)) { + newValue = Array.isArray(newValue) ? mapArray(newValue) : mapObject(newValue, mapper, options, isSeen); } - return false; - })); - } - exports2.default = mergeOutputs; + target[newKey] = newValue; + } + return target; + }; + module2.exports = (object, mapper, options) => { + if (!isObject(object)) { + throw new TypeError(`Expected an object, got \`${object}\` (${typeof object})`); + } + return mapObject(object, mapper, options); + }; + module2.exports.mapObjectSkip = mapObjectSkip; } }); -// ../../node_modules/.pnpm/pretty-bytes@5.6.0/node_modules/pretty-bytes/index.js -var require_pretty_bytes = __commonJS({ - "../../node_modules/.pnpm/pretty-bytes@5.6.0/node_modules/pretty-bytes/index.js"(exports2, module2) { +// ../node_modules/.pnpm/camelcase@5.3.1/node_modules/camelcase/index.js +var require_camelcase2 = __commonJS({ + "../node_modules/.pnpm/camelcase@5.3.1/node_modules/camelcase/index.js"(exports2, module2) { "use strict"; - var BYTE_UNITS = [ - "B", - "kB", - "MB", - "GB", - "TB", - "PB", - "EB", - "ZB", - "YB" - ]; - var BIBYTE_UNITS = [ - "B", - "kiB", - "MiB", - "GiB", - "TiB", - "PiB", - "EiB", - "ZiB", - "YiB" - ]; - var BIT_UNITS = [ - "b", - "kbit", - "Mbit", - "Gbit", - "Tbit", - "Pbit", - "Ebit", - "Zbit", - "Ybit" - ]; - var BIBIT_UNITS = [ - "b", - "kibit", - "Mibit", - "Gibit", - "Tibit", - "Pibit", - "Eibit", - "Zibit", - "Yibit" - ]; - var toLocaleString = (number, locale, options) => { - let result = number; - if (typeof locale === "string" || Array.isArray(locale)) { - result = number.toLocaleString(locale, options); - } else if (locale === true || options !== void 0) { - result = number.toLocaleString(void 0, options); + var preserveCamelCase = (string) => { + let isLastCharLower = false; + let isLastCharUpper = false; + let isLastLastCharUpper = false; + for (let i = 0; i < string.length; i++) { + const character = string[i]; + if (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) { + string = string.slice(0, i) + "-" + string.slice(i); + isLastCharLower = false; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = true; + i++; + } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(character) && character.toLowerCase() === character) { + string = string.slice(0, i - 1) + "-" + string.slice(i - 1); + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = false; + isLastCharLower = true; + } else { + isLastCharLower = character.toLowerCase() === character && character.toUpperCase() !== character; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = character.toUpperCase() === character && character.toLowerCase() !== character; + } } - return result; + return string; }; - module2.exports = (number, options) => { - if (!Number.isFinite(number)) { - throw new TypeError(`Expected a finite number, got ${typeof number}: ${number}`); - } - options = Object.assign({ bits: false, binary: false }, options); - const UNITS = options.bits ? options.binary ? BIBIT_UNITS : BIT_UNITS : options.binary ? BIBYTE_UNITS : BYTE_UNITS; - if (options.signed && number === 0) { - return ` 0 ${UNITS[0]}`; - } - const isNegative = number < 0; - const prefix = isNegative ? "-" : options.signed ? "+" : ""; - if (isNegative) { - number = -number; + var camelCase = (input, options) => { + if (!(typeof input === "string" || Array.isArray(input))) { + throw new TypeError("Expected the input to be `string | string[]`"); } - let localeOptions; - if (options.minimumFractionDigits !== void 0) { - localeOptions = { minimumFractionDigits: options.minimumFractionDigits }; + options = Object.assign({ + pascalCase: false + }, options); + const postProcess = (x) => options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x; + if (Array.isArray(input)) { + input = input.map((x) => x.trim()).filter((x) => x.length).join("-"); + } else { + input = input.trim(); } - if (options.maximumFractionDigits !== void 0) { - localeOptions = Object.assign({ maximumFractionDigits: options.maximumFractionDigits }, localeOptions); + if (input.length === 0) { + return ""; } - if (number < 1) { - const numberString2 = toLocaleString(number, options.locale, localeOptions); - return prefix + numberString2 + " " + UNITS[0]; + if (input.length === 1) { + return options.pascalCase ? input.toUpperCase() : input.toLowerCase(); } - const exponent = Math.min(Math.floor(options.binary ? Math.log(number) / Math.log(1024) : Math.log10(number) / 3), UNITS.length - 1); - number /= Math.pow(options.binary ? 1024 : 1e3, exponent); - if (!localeOptions) { - number = number.toPrecision(3); + const hasUpperCase = input !== input.toLowerCase(); + if (hasUpperCase) { + input = preserveCamelCase(input); } - const numberString = toLocaleString(Number(number), options.locale, localeOptions); - const unit = UNITS[exponent]; - return prefix + numberString + " " + unit; + input = input.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, (_, p1) => p1.toUpperCase()).replace(/\d+(\w|$)/g, (m) => m.toUpperCase()); + return postProcess(input); }; + module2.exports = camelCase; + module2.exports.default = camelCase; } }); -// ../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js -var require_color_name2 = __commonJS({ - "../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js"(exports2, module2) { +// ../node_modules/.pnpm/quick-lru@4.0.1/node_modules/quick-lru/index.js +var require_quick_lru = __commonJS({ + "../node_modules/.pnpm/quick-lru@4.0.1/node_modules/quick-lru/index.js"(exports2, module2) { "use strict"; - module2.exports = { - "aliceblue": [240, 248, 255], - "antiquewhite": [250, 235, 215], - "aqua": [0, 255, 255], - "aquamarine": [127, 255, 212], - "azure": [240, 255, 255], - "beige": [245, 245, 220], - "bisque": [255, 228, 196], - "black": [0, 0, 0], - "blanchedalmond": [255, 235, 205], - "blue": [0, 0, 255], - "blueviolet": [138, 43, 226], - "brown": [165, 42, 42], - "burlywood": [222, 184, 135], - "cadetblue": [95, 158, 160], - "chartreuse": [127, 255, 0], - "chocolate": [210, 105, 30], - "coral": [255, 127, 80], - "cornflowerblue": [100, 149, 237], - "cornsilk": [255, 248, 220], - "crimson": [220, 20, 60], - "cyan": [0, 255, 255], - "darkblue": [0, 0, 139], - "darkcyan": [0, 139, 139], - "darkgoldenrod": [184, 134, 11], - "darkgray": [169, 169, 169], - "darkgreen": [0, 100, 0], - "darkgrey": [169, 169, 169], - "darkkhaki": [189, 183, 107], - "darkmagenta": [139, 0, 139], - "darkolivegreen": [85, 107, 47], - "darkorange": [255, 140, 0], - "darkorchid": [153, 50, 204], - "darkred": [139, 0, 0], - "darksalmon": [233, 150, 122], - "darkseagreen": [143, 188, 143], - "darkslateblue": [72, 61, 139], - "darkslategray": [47, 79, 79], - "darkslategrey": [47, 79, 79], - "darkturquoise": [0, 206, 209], - "darkviolet": [148, 0, 211], - "deeppink": [255, 20, 147], - "deepskyblue": [0, 191, 255], - "dimgray": [105, 105, 105], - "dimgrey": [105, 105, 105], - "dodgerblue": [30, 144, 255], - "firebrick": [178, 34, 34], - "floralwhite": [255, 250, 240], - "forestgreen": [34, 139, 34], - "fuchsia": [255, 0, 255], - "gainsboro": [220, 220, 220], - "ghostwhite": [248, 248, 255], - "gold": [255, 215, 0], - "goldenrod": [218, 165, 32], - "gray": [128, 128, 128], - "green": [0, 128, 0], - "greenyellow": [173, 255, 47], - "grey": [128, 128, 128], - "honeydew": [240, 255, 240], - "hotpink": [255, 105, 180], - "indianred": [205, 92, 92], - "indigo": [75, 0, 130], - "ivory": [255, 255, 240], - "khaki": [240, 230, 140], - "lavender": [230, 230, 250], - "lavenderblush": [255, 240, 245], - "lawngreen": [124, 252, 0], - "lemonchiffon": [255, 250, 205], - "lightblue": [173, 216, 230], - "lightcoral": [240, 128, 128], - "lightcyan": [224, 255, 255], - "lightgoldenrodyellow": [250, 250, 210], - "lightgray": [211, 211, 211], - "lightgreen": [144, 238, 144], - "lightgrey": [211, 211, 211], - "lightpink": [255, 182, 193], - "lightsalmon": [255, 160, 122], - "lightseagreen": [32, 178, 170], - "lightskyblue": [135, 206, 250], - "lightslategray": [119, 136, 153], - "lightslategrey": [119, 136, 153], - "lightsteelblue": [176, 196, 222], - "lightyellow": [255, 255, 224], - "lime": [0, 255, 0], - "limegreen": [50, 205, 50], - "linen": [250, 240, 230], - "magenta": [255, 0, 255], - "maroon": [128, 0, 0], - "mediumaquamarine": [102, 205, 170], - "mediumblue": [0, 0, 205], - "mediumorchid": [186, 85, 211], - "mediumpurple": [147, 112, 219], - "mediumseagreen": [60, 179, 113], - "mediumslateblue": [123, 104, 238], - "mediumspringgreen": [0, 250, 154], - "mediumturquoise": [72, 209, 204], - "mediumvioletred": [199, 21, 133], - "midnightblue": [25, 25, 112], - "mintcream": [245, 255, 250], - "mistyrose": [255, 228, 225], - "moccasin": [255, 228, 181], - "navajowhite": [255, 222, 173], - "navy": [0, 0, 128], - "oldlace": [253, 245, 230], - "olive": [128, 128, 0], - "olivedrab": [107, 142, 35], - "orange": [255, 165, 0], - "orangered": [255, 69, 0], - "orchid": [218, 112, 214], - "palegoldenrod": [238, 232, 170], - "palegreen": [152, 251, 152], - "paleturquoise": [175, 238, 238], - "palevioletred": [219, 112, 147], - "papayawhip": [255, 239, 213], - "peachpuff": [255, 218, 185], - "peru": [205, 133, 63], - "pink": [255, 192, 203], - "plum": [221, 160, 221], - "powderblue": [176, 224, 230], - "purple": [128, 0, 128], - "rebeccapurple": [102, 51, 153], - "red": [255, 0, 0], - "rosybrown": [188, 143, 143], - "royalblue": [65, 105, 225], - "saddlebrown": [139, 69, 19], - "salmon": [250, 128, 114], - "sandybrown": [244, 164, 96], - "seagreen": [46, 139, 87], - "seashell": [255, 245, 238], - "sienna": [160, 82, 45], - "silver": [192, 192, 192], - "skyblue": [135, 206, 235], - "slateblue": [106, 90, 205], - "slategray": [112, 128, 144], - "slategrey": [112, 128, 144], - "snow": [255, 250, 250], - "springgreen": [0, 255, 127], - "steelblue": [70, 130, 180], - "tan": [210, 180, 140], - "teal": [0, 128, 128], - "thistle": [216, 191, 216], - "tomato": [255, 99, 71], - "turquoise": [64, 224, 208], - "violet": [238, 130, 238], - "wheat": [245, 222, 179], - "white": [255, 255, 255], - "whitesmoke": [245, 245, 245], - "yellow": [255, 255, 0], - "yellowgreen": [154, 205, 50] - }; - } -}); - -// ../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js -var require_conversions2 = __commonJS({ - "../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js"(exports2, module2) { - var cssKeywords = require_color_name2(); - var reverseKeywords = {}; - for (const key of Object.keys(cssKeywords)) { - reverseKeywords[cssKeywords[key]] = key; - } - var convert = { - rgb: { channels: 3, labels: "rgb" }, - hsl: { channels: 3, labels: "hsl" }, - hsv: { channels: 3, labels: "hsv" }, - hwb: { channels: 3, labels: "hwb" }, - cmyk: { channels: 4, labels: "cmyk" }, - xyz: { channels: 3, labels: "xyz" }, - lab: { channels: 3, labels: "lab" }, - lch: { channels: 3, labels: "lch" }, - hex: { channels: 1, labels: ["hex"] }, - keyword: { channels: 1, labels: ["keyword"] }, - ansi16: { channels: 1, labels: ["ansi16"] }, - ansi256: { channels: 1, labels: ["ansi256"] }, - hcg: { channels: 3, labels: ["h", "c", "g"] }, - apple: { channels: 3, labels: ["r16", "g16", "b16"] }, - gray: { channels: 1, labels: ["gray"] } - }; - module2.exports = convert; - for (const model of Object.keys(convert)) { - if (!("channels" in convert[model])) { - throw new Error("missing channels property: " + model); - } - if (!("labels" in convert[model])) { - throw new Error("missing channel labels property: " + model); + var QuickLRU = class { + constructor(options = {}) { + if (!(options.maxSize && options.maxSize > 0)) { + throw new TypeError("`maxSize` must be a number greater than 0"); + } + this.maxSize = options.maxSize; + this.cache = /* @__PURE__ */ new Map(); + this.oldCache = /* @__PURE__ */ new Map(); + this._size = 0; } - if (convert[model].labels.length !== convert[model].channels) { - throw new Error("channel and label counts mismatch: " + model); + _set(key, value) { + this.cache.set(key, value); + this._size++; + if (this._size >= this.maxSize) { + this._size = 0; + this.oldCache = this.cache; + this.cache = /* @__PURE__ */ new Map(); + } } - const { channels, labels } = convert[model]; - delete convert[model].channels; - delete convert[model].labels; - Object.defineProperty(convert[model], "channels", { value: channels }); - Object.defineProperty(convert[model], "labels", { value: labels }); - } - convert.rgb.hsl = function(rgb) { - const r = rgb[0] / 255; - const g = rgb[1] / 255; - const b = rgb[2] / 255; - const min = Math.min(r, g, b); - const max = Math.max(r, g, b); - const delta = max - min; - let h; - let s; - if (max === min) { - h = 0; - } else if (r === max) { - h = (g - b) / delta; - } else if (g === max) { - h = 2 + (b - r) / delta; - } else if (b === max) { - h = 4 + (r - g) / delta; + get(key) { + if (this.cache.has(key)) { + return this.cache.get(key); + } + if (this.oldCache.has(key)) { + const value = this.oldCache.get(key); + this.oldCache.delete(key); + this._set(key, value); + return value; + } } - h = Math.min(h * 60, 360); - if (h < 0) { - h += 360; + set(key, value) { + if (this.cache.has(key)) { + this.cache.set(key, value); + } else { + this._set(key, value); + } + return this; } - const l = (min + max) / 2; - if (max === min) { - s = 0; - } else if (l <= 0.5) { - s = delta / (max + min); - } else { - s = delta / (2 - max - min); + has(key) { + return this.cache.has(key) || this.oldCache.has(key); } - return [h, s * 100, l * 100]; - }; - convert.rgb.hsv = function(rgb) { - let rdif; - let gdif; - let bdif; - let h; - let s; - const r = rgb[0] / 255; - const g = rgb[1] / 255; - const b = rgb[2] / 255; - const v = Math.max(r, g, b); - const diff = v - Math.min(r, g, b); - const diffc = function(c) { - return (v - c) / 6 / diff + 1 / 2; - }; - if (diff === 0) { - h = 0; - s = 0; - } else { - s = diff / v; - rdif = diffc(r); - gdif = diffc(g); - bdif = diffc(b); - if (r === v) { - h = bdif - gdif; - } else if (g === v) { - h = 1 / 3 + rdif - bdif; - } else if (b === v) { - h = 2 / 3 + gdif - rdif; + peek(key) { + if (this.cache.has(key)) { + return this.cache.get(key); } - if (h < 0) { - h += 1; - } else if (h > 1) { - h -= 1; + if (this.oldCache.has(key)) { + return this.oldCache.get(key); } } - return [ - h * 360, - s * 100, - v * 100 - ]; - }; - convert.rgb.hwb = function(rgb) { - const r = rgb[0]; - const g = rgb[1]; - let b = rgb[2]; - const h = convert.rgb.hsl(rgb)[0]; - const w = 1 / 255 * Math.min(r, Math.min(g, b)); - b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); - return [h, w * 100, b * 100]; - }; - convert.rgb.cmyk = function(rgb) { - const r = rgb[0] / 255; - const g = rgb[1] / 255; - const b = rgb[2] / 255; - const k = Math.min(1 - r, 1 - g, 1 - b); - const c = (1 - r - k) / (1 - k) || 0; - const m = (1 - g - k) / (1 - k) || 0; - const y = (1 - b - k) / (1 - k) || 0; - return [c * 100, m * 100, y * 100, k * 100]; - }; - function comparativeDistance(x, y) { - return (x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2 + (x[2] - y[2]) ** 2; - } - convert.rgb.keyword = function(rgb) { - const reversed = reverseKeywords[rgb]; - if (reversed) { - return reversed; - } - let currentClosestDistance = Infinity; - let currentClosestKeyword; - for (const keyword of Object.keys(cssKeywords)) { - const value = cssKeywords[keyword]; - const distance = comparativeDistance(rgb, value); - if (distance < currentClosestDistance) { - currentClosestDistance = distance; - currentClosestKeyword = keyword; + delete(key) { + const deleted = this.cache.delete(key); + if (deleted) { + this._size--; } + return this.oldCache.delete(key) || deleted; } - return currentClosestKeyword; - }; - convert.keyword.rgb = function(keyword) { - return cssKeywords[keyword]; - }; - convert.rgb.xyz = function(rgb) { - let r = rgb[0] / 255; - let g = rgb[1] / 255; - let b = rgb[2] / 255; - r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92; - g = g > 0.04045 ? ((g + 0.055) / 1.055) ** 2.4 : g / 12.92; - b = b > 0.04045 ? ((b + 0.055) / 1.055) ** 2.4 : b / 12.92; - const x = r * 0.4124 + g * 0.3576 + b * 0.1805; - const y = r * 0.2126 + g * 0.7152 + b * 0.0722; - const z = r * 0.0193 + g * 0.1192 + b * 0.9505; - return [x * 100, y * 100, z * 100]; - }; - convert.rgb.lab = function(rgb) { - const xyz = convert.rgb.xyz(rgb); - let x = xyz[0]; - let y = xyz[1]; - let z = xyz[2]; - x /= 95.047; - y /= 100; - z /= 108.883; - x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116; - y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116; - z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116; - const l = 116 * y - 16; - const a = 500 * (x - y); - const b = 200 * (y - z); - return [l, a, b]; - }; - convert.hsl.rgb = function(hsl) { - const h = hsl[0] / 360; - const s = hsl[1] / 100; - const l = hsl[2] / 100; - let t2; - let t3; - let val; - if (s === 0) { - val = l * 255; - return [val, val, val]; - } - if (l < 0.5) { - t2 = l * (1 + s); - } else { - t2 = l + s - l * s; + clear() { + this.cache.clear(); + this.oldCache.clear(); + this._size = 0; } - const t1 = 2 * l - t2; - const rgb = [0, 0, 0]; - for (let i = 0; i < 3; i++) { - t3 = h + 1 / 3 * -(i - 1); - if (t3 < 0) { - t3++; - } - if (t3 > 1) { - t3--; - } - if (6 * t3 < 1) { - val = t1 + (t2 - t1) * 6 * t3; - } else if (2 * t3 < 1) { - val = t2; - } else if (3 * t3 < 2) { - val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; - } else { - val = t1; + *keys() { + for (const [key] of this) { + yield key; } - rgb[i] = val * 255; - } - return rgb; - }; - convert.hsl.hsv = function(hsl) { - const h = hsl[0]; - let s = hsl[1] / 100; - let l = hsl[2] / 100; - let smin = s; - const lmin = Math.max(l, 0.01); - l *= 2; - s *= l <= 1 ? l : 2 - l; - smin *= lmin <= 1 ? lmin : 2 - lmin; - const v = (l + s) / 2; - const sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s); - return [h, sv * 100, v * 100]; - }; - convert.hsv.rgb = function(hsv) { - const h = hsv[0] / 60; - const s = hsv[1] / 100; - let v = hsv[2] / 100; - const hi = Math.floor(h) % 6; - const f = h - Math.floor(h); - const p = 255 * v * (1 - s); - const q = 255 * v * (1 - s * f); - const t = 255 * v * (1 - s * (1 - f)); - v *= 255; - switch (hi) { - case 0: - return [v, t, p]; - case 1: - return [q, v, p]; - case 2: - return [p, v, t]; - case 3: - return [p, q, v]; - case 4: - return [t, p, v]; - case 5: - return [v, p, q]; - } - }; - convert.hsv.hsl = function(hsv) { - const h = hsv[0]; - const s = hsv[1] / 100; - const v = hsv[2] / 100; - const vmin = Math.max(v, 0.01); - let sl; - let l; - l = (2 - s) * v; - const lmin = (2 - s) * vmin; - sl = s * vmin; - sl /= lmin <= 1 ? lmin : 2 - lmin; - sl = sl || 0; - l /= 2; - return [h, sl * 100, l * 100]; - }; - convert.hwb.rgb = function(hwb) { - const h = hwb[0] / 360; - let wh = hwb[1] / 100; - let bl = hwb[2] / 100; - const ratio = wh + bl; - let f; - if (ratio > 1) { - wh /= ratio; - bl /= ratio; - } - const i = Math.floor(6 * h); - const v = 1 - bl; - f = 6 * h - i; - if ((i & 1) !== 0) { - f = 1 - f; - } - const n = wh + f * (v - wh); - let r; - let g; - let b; - switch (i) { - default: - case 6: - case 0: - r = v; - g = n; - b = wh; - break; - case 1: - r = n; - g = v; - b = wh; - break; - case 2: - r = wh; - g = v; - b = n; - break; - case 3: - r = wh; - g = n; - b = v; - break; - case 4: - r = n; - g = wh; - b = v; - break; - case 5: - r = v; - g = wh; - b = n; - break; - } - return [r * 255, g * 255, b * 255]; - }; - convert.cmyk.rgb = function(cmyk) { - const c = cmyk[0] / 100; - const m = cmyk[1] / 100; - const y = cmyk[2] / 100; - const k = cmyk[3] / 100; - const r = 1 - Math.min(1, c * (1 - k) + k); - const g = 1 - Math.min(1, m * (1 - k) + k); - const b = 1 - Math.min(1, y * (1 - k) + k); - return [r * 255, g * 255, b * 255]; - }; - convert.xyz.rgb = function(xyz) { - const x = xyz[0] / 100; - const y = xyz[1] / 100; - const z = xyz[2] / 100; - let r; - let g; - let b; - r = x * 3.2406 + y * -1.5372 + z * -0.4986; - g = x * -0.9689 + y * 1.8758 + z * 0.0415; - b = x * 0.0557 + y * -0.204 + z * 1.057; - r = r > 31308e-7 ? 1.055 * r ** (1 / 2.4) - 0.055 : r * 12.92; - g = g > 31308e-7 ? 1.055 * g ** (1 / 2.4) - 0.055 : g * 12.92; - b = b > 31308e-7 ? 1.055 * b ** (1 / 2.4) - 0.055 : b * 12.92; - r = Math.min(Math.max(0, r), 1); - g = Math.min(Math.max(0, g), 1); - b = Math.min(Math.max(0, b), 1); - return [r * 255, g * 255, b * 255]; - }; - convert.xyz.lab = function(xyz) { - let x = xyz[0]; - let y = xyz[1]; - let z = xyz[2]; - x /= 95.047; - y /= 100; - z /= 108.883; - x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116; - y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116; - z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116; - const l = 116 * y - 16; - const a = 500 * (x - y); - const b = 200 * (y - z); - return [l, a, b]; - }; - convert.lab.xyz = function(lab) { - const l = lab[0]; - const a = lab[1]; - const b = lab[2]; - let x; - let y; - let z; - y = (l + 16) / 116; - x = a / 500 + y; - z = y - b / 200; - const y2 = y ** 3; - const x2 = x ** 3; - const z2 = z ** 3; - y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787; - x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787; - z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787; - x *= 95.047; - y *= 100; - z *= 108.883; - return [x, y, z]; - }; - convert.lab.lch = function(lab) { - const l = lab[0]; - const a = lab[1]; - const b = lab[2]; - let h; - const hr = Math.atan2(b, a); - h = hr * 360 / 2 / Math.PI; - if (h < 0) { - h += 360; - } - const c = Math.sqrt(a * a + b * b); - return [l, c, h]; - }; - convert.lch.lab = function(lch) { - const l = lch[0]; - const c = lch[1]; - const h = lch[2]; - const hr = h / 360 * 2 * Math.PI; - const a = c * Math.cos(hr); - const b = c * Math.sin(hr); - return [l, a, b]; - }; - convert.rgb.ansi16 = function(args2, saturation = null) { - const [r, g, b] = args2; - let value = saturation === null ? convert.rgb.hsv(args2)[2] : saturation; - value = Math.round(value / 50); - if (value === 0) { - return 30; } - let ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255)); - if (value === 2) { - ansi += 60; + *values() { + for (const [, value] of this) { + yield value; + } } - return ansi; - }; - convert.hsv.ansi16 = function(args2) { - return convert.rgb.ansi16(convert.hsv.rgb(args2), args2[2]); - }; - convert.rgb.ansi256 = function(args2) { - const r = args2[0]; - const g = args2[1]; - const b = args2[2]; - if (r === g && g === b) { - if (r < 8) { - return 16; + *[Symbol.iterator]() { + for (const item of this.cache) { + yield item; } - if (r > 248) { - return 231; + for (const item of this.oldCache) { + const [key] = item; + if (!this.cache.has(key)) { + yield item; + } } - return Math.round((r - 8) / 247 * 24) + 232; } - const ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5); - return ansi; - }; - convert.ansi16.rgb = function(args2) { - let color = args2 % 10; - if (color === 0 || color === 7) { - if (args2 > 50) { - color += 3.5; + get size() { + let oldCacheSize = 0; + for (const key of this.oldCache.keys()) { + if (!this.cache.has(key)) { + oldCacheSize++; + } } - color = color / 10.5 * 255; - return [color, color, color]; - } - const mult = (~~(args2 > 50) + 1) * 0.5; - const r = (color & 1) * mult * 255; - const g = (color >> 1 & 1) * mult * 255; - const b = (color >> 2 & 1) * mult * 255; - return [r, g, b]; - }; - convert.ansi256.rgb = function(args2) { - if (args2 >= 232) { - const c = (args2 - 232) * 10 + 8; - return [c, c, c]; - } - args2 -= 16; - let rem; - const r = Math.floor(args2 / 36) / 5 * 255; - const g = Math.floor((rem = args2 % 36) / 6) / 5 * 255; - const b = rem % 6 / 5 * 255; - return [r, g, b]; - }; - convert.rgb.hex = function(args2) { - const integer = ((Math.round(args2[0]) & 255) << 16) + ((Math.round(args2[1]) & 255) << 8) + (Math.round(args2[2]) & 255); - const string = integer.toString(16).toUpperCase(); - return "000000".substring(string.length) + string; - }; - convert.hex.rgb = function(args2) { - const match = args2.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); - if (!match) { - return [0, 0, 0]; - } - let colorString = match[0]; - if (match[0].length === 3) { - colorString = colorString.split("").map((char) => { - return char + char; - }).join(""); - } - const integer = parseInt(colorString, 16); - const r = integer >> 16 & 255; - const g = integer >> 8 & 255; - const b = integer & 255; - return [r, g, b]; - }; - convert.rgb.hcg = function(rgb) { - const r = rgb[0] / 255; - const g = rgb[1] / 255; - const b = rgb[2] / 255; - const max = Math.max(Math.max(r, g), b); - const min = Math.min(Math.min(r, g), b); - const chroma = max - min; - let grayscale; - let hue; - if (chroma < 1) { - grayscale = min / (1 - chroma); - } else { - grayscale = 0; - } - if (chroma <= 0) { - hue = 0; - } else if (max === r) { - hue = (g - b) / chroma % 6; - } else if (max === g) { - hue = 2 + (b - r) / chroma; - } else { - hue = 4 + (r - g) / chroma; - } - hue /= 6; - hue %= 1; - return [hue * 360, chroma * 100, grayscale * 100]; - }; - convert.hsl.hcg = function(hsl) { - const s = hsl[1] / 100; - const l = hsl[2] / 100; - const c = l < 0.5 ? 2 * s * l : 2 * s * (1 - l); - let f = 0; - if (c < 1) { - f = (l - 0.5 * c) / (1 - c); - } - return [hsl[0], c * 100, f * 100]; - }; - convert.hsv.hcg = function(hsv) { - const s = hsv[1] / 100; - const v = hsv[2] / 100; - const c = s * v; - let f = 0; - if (c < 1) { - f = (v - c) / (1 - c); - } - return [hsv[0], c * 100, f * 100]; - }; - convert.hcg.rgb = function(hcg) { - const h = hcg[0] / 360; - const c = hcg[1] / 100; - const g = hcg[2] / 100; - if (c === 0) { - return [g * 255, g * 255, g * 255]; - } - const pure = [0, 0, 0]; - const hi = h % 1 * 6; - const v = hi % 1; - const w = 1 - v; - let mg = 0; - switch (Math.floor(hi)) { - case 0: - pure[0] = 1; - pure[1] = v; - pure[2] = 0; - break; - case 1: - pure[0] = w; - pure[1] = 1; - pure[2] = 0; - break; - case 2: - pure[0] = 0; - pure[1] = 1; - pure[2] = v; - break; - case 3: - pure[0] = 0; - pure[1] = w; - pure[2] = 1; - break; - case 4: - pure[0] = v; - pure[1] = 0; - pure[2] = 1; - break; - default: - pure[0] = 1; - pure[1] = 0; - pure[2] = w; + return this._size + oldCacheSize; } - mg = (1 - c) * g; - return [ - (c * pure[0] + mg) * 255, - (c * pure[1] + mg) * 255, - (c * pure[2] + mg) * 255 - ]; }; - convert.hcg.hsv = function(hcg) { - const c = hcg[1] / 100; - const g = hcg[2] / 100; - const v = c + g * (1 - c); - let f = 0; - if (v > 0) { - f = c / v; + module2.exports = QuickLRU; + } +}); + +// ../node_modules/.pnpm/camelcase-keys@6.2.2/node_modules/camelcase-keys/index.js +var require_camelcase_keys = __commonJS({ + "../node_modules/.pnpm/camelcase-keys@6.2.2/node_modules/camelcase-keys/index.js"(exports2, module2) { + "use strict"; + var mapObj = require_map_obj(); + var camelCase = require_camelcase2(); + var QuickLru = require_quick_lru(); + var has = (array, key) => array.some((x) => { + if (typeof x === "string") { + return x === key; } - return [hcg[0], f * 100, v * 100]; - }; - convert.hcg.hsl = function(hcg) { - const c = hcg[1] / 100; - const g = hcg[2] / 100; - const l = g * (1 - c) + 0.5 * c; - let s = 0; - if (l > 0 && l < 0.5) { - s = c / (2 * l); - } else if (l >= 0.5 && l < 1) { - s = c / (2 * (1 - l)); + x.lastIndex = 0; + return x.test(key); + }); + var cache = new QuickLru({ maxSize: 1e5 }); + var isObject = (value) => typeof value === "object" && value !== null && !(value instanceof RegExp) && !(value instanceof Error) && !(value instanceof Date); + var camelCaseConvert = (input, options) => { + if (!isObject(input)) { + return input; } - return [hcg[0], s * 100, l * 100]; - }; - convert.hcg.hwb = function(hcg) { - const c = hcg[1] / 100; - const g = hcg[2] / 100; - const v = c + g * (1 - c); - return [hcg[0], (v - c) * 100, (1 - v) * 100]; + options = { + deep: false, + pascalCase: false, + ...options + }; + const { exclude, pascalCase, stopPaths, deep } = options; + const stopPathsSet = new Set(stopPaths); + const makeMapper = (parentPath) => (key, value) => { + if (deep && isObject(value)) { + const path2 = parentPath === void 0 ? key : `${parentPath}.${key}`; + if (!stopPathsSet.has(path2)) { + value = mapObj(value, makeMapper(path2)); + } + } + if (!(exclude && has(exclude, key))) { + const cacheKey = pascalCase ? `${key}_` : key; + if (cache.has(cacheKey)) { + key = cache.get(cacheKey); + } else { + const ret = camelCase(key, { pascalCase }); + if (key.length < 100) { + cache.set(cacheKey, ret); + } + key = ret; + } + } + return [key, value]; + }; + return mapObj(input, makeMapper(void 0)); }; - convert.hwb.hcg = function(hwb) { - const w = hwb[1] / 100; - const b = hwb[2] / 100; - const v = 1 - b; - const c = v - w; - let g = 0; - if (c < 1) { - g = (v - c) / (1 - c); + module2.exports = (input, options) => { + if (Array.isArray(input)) { + return Object.keys(input).map((key) => camelCaseConvert(input[key], options)); } - return [hwb[0], c * 100, g * 100]; - }; - convert.apple.rgb = function(apple) { - return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255]; - }; - convert.rgb.apple = function(rgb) { - return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535]; - }; - convert.gray.rgb = function(args2) { - return [args2[0] / 100 * 255, args2[0] / 100 * 255, args2[0] / 100 * 255]; - }; - convert.gray.hsl = function(args2) { - return [0, 0, args2[0]]; - }; - convert.gray.hsv = convert.gray.hsl; - convert.gray.hwb = function(gray) { - return [0, 100, gray[0]]; - }; - convert.gray.cmyk = function(gray) { - return [0, 0, 0, gray[0]]; - }; - convert.gray.lab = function(gray) { - return [gray[0], 0, 0]; - }; - convert.gray.hex = function(gray) { - const val = Math.round(gray[0] / 100 * 255) & 255; - const integer = (val << 16) + (val << 8) + val; - const string = integer.toString(16).toUpperCase(); - return "000000".substring(string.length) + string; - }; - convert.rgb.gray = function(rgb) { - const val = (rgb[0] + rgb[1] + rgb[2]) / 3; - return [val / 255 * 100]; + return camelCaseConvert(input, options); }; } }); -// ../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js -var require_route2 = __commonJS({ - "../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js"(exports2, module2) { - var conversions = require_conversions2(); - function buildGraph() { - const graph = {}; - const models = Object.keys(conversions); - for (let len = models.length, i = 0; i < len; i++) { - graph[models[i]] = { - distance: -1, - parent: null +// ../node_modules/.pnpm/ini@3.0.1/node_modules/ini/lib/ini.js +var require_ini2 = __commonJS({ + "../node_modules/.pnpm/ini@3.0.1/node_modules/ini/lib/ini.js"(exports2, module2) { + var { hasOwnProperty } = Object.prototype; + var eol = typeof process !== "undefined" && process.platform === "win32" ? "\r\n" : "\n"; + var encode = (obj, opt) => { + const children = []; + let out = ""; + if (typeof opt === "string") { + opt = { + section: opt, + whitespace: false }; + } else { + opt = opt || /* @__PURE__ */ Object.create(null); + opt.whitespace = opt.whitespace === true; } - return graph; - } - function deriveBFS(fromModel) { - const graph = buildGraph(); - const queue = [fromModel]; - graph[fromModel].distance = 0; - while (queue.length) { - const current = queue.pop(); - const adjacents = Object.keys(conversions[current]); - for (let len = adjacents.length, i = 0; i < len; i++) { - const adjacent = adjacents[i]; - const node = graph[adjacent]; - if (node.distance === -1) { - node.distance = graph[current].distance + 1; - node.parent = current; - queue.unshift(adjacent); + const separator = opt.whitespace ? " = " : "="; + for (const k of Object.keys(obj)) { + const val = obj[k]; + if (val && Array.isArray(val)) { + for (const item of val) { + out += safe(k + "[]") + separator + safe(item) + eol; } + } else if (val && typeof val === "object") { + children.push(k); + } else { + out += safe(k) + separator + safe(val) + eol; } } - return graph; - } - function link(from, to) { - return function(args2) { - return to(from(args2)); - }; - } - function wrapConversion(toModel, graph) { - const path = [graph[toModel].parent, toModel]; - let fn2 = conversions[graph[toModel].parent][toModel]; - let cur = graph[toModel].parent; - while (graph[cur].parent) { - path.unshift(graph[cur].parent); - fn2 = link(conversions[graph[cur].parent][cur], fn2); - cur = graph[cur].parent; + if (opt.section && out.length) { + out = "[" + safe(opt.section) + "]" + eol + out; } - fn2.conversion = path; - return fn2; - } - module2.exports = function(fromModel) { - const graph = deriveBFS(fromModel); - const conversion = {}; - const models = Object.keys(graph); - for (let len = models.length, i = 0; i < len; i++) { - const toModel = models[i]; - const node = graph[toModel]; - if (node.parent === null) { - continue; + for (const k of children) { + const nk = dotSplit(k).join("\\."); + const section = (opt.section ? opt.section + "." : "") + nk; + const { whitespace } = opt; + const child = encode(obj[k], { + section, + whitespace + }); + if (out.length && child.length) { + out += eol; } - conversion[toModel] = wrapConversion(toModel, graph); + out += child; } - return conversion; + return out; }; - } -}); - -// ../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js -var require_color_convert2 = __commonJS({ - "../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js"(exports2, module2) { - var conversions = require_conversions2(); - var route = require_route2(); - var convert = {}; - var models = Object.keys(conversions); - function wrapRaw(fn2) { - const wrappedFn = function(...args2) { - const arg0 = args2[0]; - if (arg0 === void 0 || arg0 === null) { - return arg0; + var dotSplit = (str) => str.replace(/\1/g, "LITERAL\\1LITERAL").replace(/\\\./g, "").split(/\./).map((part) => part.replace(/\1/g, "\\.").replace(/\2LITERAL\\1LITERAL\2/g, "")); + var decode = (str) => { + const out = /* @__PURE__ */ Object.create(null); + let p = out; + let section = null; + const re = /^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i; + const lines = str.split(/[\r\n]+/g); + for (const line of lines) { + if (!line || line.match(/^\s*[;#]/)) { + continue; } - if (arg0.length > 1) { - args2 = arg0; + const match = line.match(re); + if (!match) { + continue; } - return fn2(args2); - }; - if ("conversion" in fn2) { - wrappedFn.conversion = fn2.conversion; - } - return wrappedFn; - } - function wrapRounded(fn2) { - const wrappedFn = function(...args2) { - const arg0 = args2[0]; - if (arg0 === void 0 || arg0 === null) { - return arg0; + if (match[1] !== void 0) { + section = unsafe(match[1]); + if (section === "__proto__") { + p = /* @__PURE__ */ Object.create(null); + continue; + } + p = out[section] = out[section] || /* @__PURE__ */ Object.create(null); + continue; } - if (arg0.length > 1) { - args2 = arg0; + const keyRaw = unsafe(match[2]); + const isArray = keyRaw.length > 2 && keyRaw.slice(-2) === "[]"; + const key = isArray ? keyRaw.slice(0, -2) : keyRaw; + if (key === "__proto__") { + continue; } - const result = fn2(args2); - if (typeof result === "object") { - for (let len = result.length, i = 0; i < len; i++) { - result[i] = Math.round(result[i]); + const valueRaw = match[3] ? unsafe(match[4]) : true; + const value = valueRaw === "true" || valueRaw === "false" || valueRaw === "null" ? JSON.parse(valueRaw) : valueRaw; + if (isArray) { + if (!hasOwnProperty.call(p, key)) { + p[key] = []; + } else if (!Array.isArray(p[key])) { + p[key] = [p[key]]; } } - return result; - }; - if ("conversion" in fn2) { - wrappedFn.conversion = fn2.conversion; + if (Array.isArray(p[key])) { + p[key].push(value); + } else { + p[key] = value; + } } - return wrappedFn; - } - models.forEach((fromModel) => { - convert[fromModel] = {}; - Object.defineProperty(convert[fromModel], "channels", { value: conversions[fromModel].channels }); - Object.defineProperty(convert[fromModel], "labels", { value: conversions[fromModel].labels }); - const routes = route(fromModel); - const routeModels = Object.keys(routes); - routeModels.forEach((toModel) => { - const fn2 = routes[toModel]; - convert[fromModel][toModel] = wrapRounded(fn2); - convert[fromModel][toModel].raw = wrapRaw(fn2); - }); - }); - module2.exports = convert; - } -}); - -// ../../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js -var require_ansi_styles2 = __commonJS({ - "../../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js"(exports2, module2) { - "use strict"; - var wrapAnsi16 = (fn2, offset) => (...args2) => { - const code = fn2(...args2); - return `[${code + offset}m`; - }; - var wrapAnsi256 = (fn2, offset) => (...args2) => { - const code = fn2(...args2); - return `[${38 + offset};5;${code}m`; - }; - var wrapAnsi16m = (fn2, offset) => (...args2) => { - const rgb = fn2(...args2); - return `[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; + const remove = []; + for (const k of Object.keys(out)) { + if (!hasOwnProperty.call(out, k) || typeof out[k] !== "object" || Array.isArray(out[k])) { + continue; + } + const parts = dotSplit(k); + p = out; + const l = parts.pop(); + const nl = l.replace(/\\\./g, "."); + for (const part of parts) { + if (part === "__proto__") { + continue; + } + if (!hasOwnProperty.call(p, part) || typeof p[part] !== "object") { + p[part] = /* @__PURE__ */ Object.create(null); + } + p = p[part]; + } + if (p === out && nl === l) { + continue; + } + p[nl] = out[k]; + remove.push(k); + } + for (const del of remove) { + delete out[del]; + } + return out; }; - var ansi2ansi = (n) => n; - var rgb2rgb = (r, g, b) => [r, g, b]; - var setLazyProperty = (object, property, get) => { - Object.defineProperty(object, property, { - get: () => { - const value = get(); - Object.defineProperty(object, property, { - value, - enumerable: true, - configurable: true - }); - return value; - }, - enumerable: true, - configurable: true - }); + var isQuoted = (val) => { + return val.startsWith('"') && val.endsWith('"') || val.startsWith("'") && val.endsWith("'"); }; - var colorConvert; - var makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { - if (colorConvert === void 0) { - colorConvert = require_color_convert2(); - } - const offset = isBackground ? 10 : 0; - const styles = {}; - for (const [sourceSpace, suite] of Object.entries(colorConvert)) { - const name = sourceSpace === "ansi16" ? "ansi" : sourceSpace; - if (sourceSpace === targetSpace) { - styles[name] = wrap(identity, offset); - } else if (typeof suite === "object") { - styles[name] = wrap(suite[targetSpace], offset); - } + var safe = (val) => { + if (typeof val !== "string" || val.match(/[=\r\n]/) || val.match(/^\[/) || val.length > 1 && isQuoted(val) || val !== val.trim()) { + return JSON.stringify(val); } - return styles; + return val.split(";").join("\\;").split("#").join("\\#"); }; - function assembleStyles() { - const codes = new Map(); - const styles = { - modifier: { - reset: [0, 0], - bold: [1, 22], - dim: [2, 22], - italic: [3, 23], - underline: [4, 24], - inverse: [7, 27], - hidden: [8, 28], - strikethrough: [9, 29] - }, - color: { - black: [30, 39], - red: [31, 39], - green: [32, 39], - yellow: [33, 39], - blue: [34, 39], - magenta: [35, 39], - cyan: [36, 39], - white: [37, 39], - blackBright: [90, 39], - redBright: [91, 39], - greenBright: [92, 39], - yellowBright: [93, 39], - blueBright: [94, 39], - magentaBright: [95, 39], - cyanBright: [96, 39], - whiteBright: [97, 39] - }, - bgColor: { - bgBlack: [40, 49], - bgRed: [41, 49], - bgGreen: [42, 49], - bgYellow: [43, 49], - bgBlue: [44, 49], - bgMagenta: [45, 49], - bgCyan: [46, 49], - bgWhite: [47, 49], - bgBlackBright: [100, 49], - bgRedBright: [101, 49], - bgGreenBright: [102, 49], - bgYellowBright: [103, 49], - bgBlueBright: [104, 49], - bgMagentaBright: [105, 49], - bgCyanBright: [106, 49], - bgWhiteBright: [107, 49] + var unsafe = (val, doUnesc) => { + val = (val || "").trim(); + if (isQuoted(val)) { + if (val.charAt(0) === "'") { + val = val.slice(1, -1); } - }; - styles.color.gray = styles.color.blackBright; - styles.bgColor.bgGray = styles.bgColor.bgBlackBright; - styles.color.grey = styles.color.blackBright; - styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; - for (const [groupName, group] of Object.entries(styles)) { - for (const [styleName, style] of Object.entries(group)) { - styles[styleName] = { - open: `[${style[0]}m`, - close: `[${style[1]}m` - }; - group[styleName] = styles[styleName]; - codes.set(style[0], style[1]); + try { + val = JSON.parse(val); + } catch { } - Object.defineProperty(styles, groupName, { - value: group, - enumerable: false - }); + } else { + let esc = false; + let unesc = ""; + for (let i = 0, l = val.length; i < l; i++) { + const c = val.charAt(i); + if (esc) { + if ("\\;#".indexOf(c) !== -1) { + unesc += c; + } else { + unesc += "\\" + c; + } + esc = false; + } else if (";#".indexOf(c) !== -1) { + break; + } else if (c === "\\") { + esc = true; + } else { + unesc += c; + } + } + if (esc) { + unesc += "\\"; + } + return unesc.trim(); } - Object.defineProperty(styles, "codes", { - value: codes, - enumerable: false - }); - styles.color.close = ""; - styles.bgColor.close = ""; - setLazyProperty(styles.color, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, false)); - setLazyProperty(styles.color, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, false)); - setLazyProperty(styles.color, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, false)); - setLazyProperty(styles.bgColor, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, true)); - setLazyProperty(styles.bgColor, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, true)); - setLazyProperty(styles.bgColor, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, true)); - return styles; - } - Object.defineProperty(module2, "exports", { - enumerable: true, - get: assembleStyles - }); + return val; + }; + module2.exports = { + parse: decode, + decode, + stringify: encode, + encode, + safe, + unsafe + }; } }); -// ../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js -var require_has_flag2 = __commonJS({ - "../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports2, module2) { +// ../node_modules/.pnpm/read-ini-file@4.0.0/node_modules/read-ini-file/index.js +var require_read_ini_file = __commonJS({ + "../node_modules/.pnpm/read-ini-file@4.0.0/node_modules/read-ini-file/index.js"(exports2, module2) { "use strict"; - module2.exports = (flag, argv2 = process.argv) => { - const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; - const position = argv2.indexOf(prefix + flag); - const terminatorPosition = argv2.indexOf("--"); - return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); + var fs2 = require("fs"); + var stripBom = require_strip_bom(); + var ini = require_ini2(); + var parse2 = (data) => ini.parse(stripBom(data)); + module2.exports.readIniFile = async function(fp) { + const data = await fs2.promises.readFile(fp, "utf8"); + return parse2(data); }; + module2.exports.readIniFileSync = (fp) => parse2(fs2.readFileSync(fp, "utf8")); } }); -// ../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js -var require_supports_color2 = __commonJS({ - "../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js"(exports2, module2) { +// ../config/config/lib/readLocalConfig.js +var require_readLocalConfig = __commonJS({ + "../config/config/lib/readLocalConfig.js"(exports2) { "use strict"; - var os = require("os"); - var tty = require("tty"); - var hasFlag = require_has_flag2(); - var { env } = process; - var forceColor; - if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { - forceColor = 0; - } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { - forceColor = 1; - } - if ("FORCE_COLOR" in env) { - if (env.FORCE_COLOR === "true") { - forceColor = 1; - } else if (env.FORCE_COLOR === "false") { - forceColor = 0; - } else { - forceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3); - } - } - function translateLevel(level) { - if (level === 0) { - return false; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readLocalConfig = void 0; + var path_1 = __importDefault4(require("path")); + var camelcase_keys_1 = __importDefault4(require_camelcase_keys()); + var config_env_replace_1 = require_dist2(); + var read_ini_file_1 = require_read_ini_file(); + async function readLocalConfig(prefix) { + try { + const ini = await (0, read_ini_file_1.readIniFile)(path_1.default.join(prefix, ".npmrc")); + const config = (0, camelcase_keys_1.default)(ini); + if (config.shamefullyFlatten) { + config.hoistPattern = "*"; + } + if (config.hoist === false) { + config.hoistPattern = ""; + } + for (const [key, val] of Object.entries(config)) { + if (typeof val === "string") { + try { + config[key] = (0, config_env_replace_1.envReplace)(val, process.env); + } catch (err) { + } + } + } + return config; + } catch (err) { + if (err.code !== "ENOENT") + throw err; + return {}; } - return { - level, - hasBasic: true, - has256: level >= 2, - has16m: level >= 3 - }; } - function supportsColor(haveStream, streamIsTTY) { - if (forceColor === 0) { - return 0; + exports2.readLocalConfig = readLocalConfig; + } +}); + +// ../config/config/lib/index.js +var require_lib21 = __commonJS({ + "../config/config/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { - return 3; - } - if (hasFlag("color=256")) { - return 2; - } - if (haveStream && !streamIsTTY && forceColor === void 0) { - return 0; - } - const min = forceColor || 0; - if (env.TERM === "dumb") { - return min; - } - if (process.platform === "win32") { - const osRelease = os.release().split("."); - if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { - return Number(osRelease[2]) >= 14931 ? 3 : 2; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getConfig = exports2.types = void 0; + var path_1 = __importDefault4(require("path")); + var fs_1 = __importDefault4(require("fs")); + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var npm_conf_1 = __importDefault4(require_npm_conf()); + var types_1 = __importDefault4(require_types2()); + var pnpmfile_1 = require_lib10(); + var read_project_manifest_1 = require_lib16(); + var git_utils_1 = require_lib18(); + var matcher_1 = require_lib19(); + var better_path_resolve_1 = __importDefault4(require_better_path_resolve()); + var camelcase_1 = __importDefault4(require_camelcase()); + var is_windows_1 = __importDefault4(require_is_windows()); + var normalize_registry_url_1 = __importDefault4(require_normalize_registry_url()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var which_1 = __importDefault4(require_lib20()); + var checkGlobalBinDir_1 = require_checkGlobalBinDir(); + var getScopeRegistries_1 = require_getScopeRegistries(); + var dirs_1 = require_dirs(); + var concurrency_1 = require_concurrency(); + __exportStar4(require_readLocalConfig(), exports2); + var npmDefaults = npm_conf_1.default.defaults; + exports2.types = Object.assign({ + "auto-install-peers": Boolean, + bail: Boolean, + "cache-dir": String, + "child-concurrency": Number, + "merge-git-branch-lockfiles": Boolean, + "merge-git-branch-lockfiles-branch-pattern": Array, + color: ["always", "auto", "never"], + "config-dir": String, + "dedupe-peer-dependents": Boolean, + dev: [null, true], + dir: String, + "enable-modules-dir": Boolean, + "enable-pre-post-scripts": Boolean, + "extend-node-path": Boolean, + "fetch-timeout": Number, + "fetching-concurrency": Number, + filter: [String, Array], + "filter-prod": [String, Array], + "frozen-lockfile": Boolean, + "git-checks": Boolean, + "git-shallow-hosts": Array, + "global-bin-dir": String, + "global-dir": String, + "global-path": String, + "global-pnpmfile": String, + "git-branch-lockfile": Boolean, + hoist: Boolean, + "hoist-pattern": Array, + "ignore-compatibility-db": Boolean, + "ignore-dep-scripts": Boolean, + "ignore-pnpmfile": Boolean, + "ignore-workspace": Boolean, + "ignore-workspace-cycles": Boolean, + "ignore-workspace-root-check": Boolean, + "include-workspace-root": Boolean, + "legacy-dir-filtering": Boolean, + "link-workspace-packages": [Boolean, "deep"], + lockfile: Boolean, + "lockfile-dir": String, + "lockfile-directory": String, + "lockfile-include-tarball-url": Boolean, + "lockfile-only": Boolean, + loglevel: ["silent", "error", "warn", "info", "debug"], + maxsockets: Number, + "modules-cache-max-age": Number, + "modules-dir": String, + "network-concurrency": Number, + "node-linker": ["pnp", "isolated", "hoisted"], + noproxy: String, + "npm-path": String, + offline: Boolean, + "only-built-dependencies": [String], + "package-import-method": ["auto", "hardlink", "clone", "copy"], + "patches-dir": String, + pnpmfile: String, + "prefer-frozen-lockfile": Boolean, + "prefer-offline": Boolean, + "prefer-symlinked-executables": Boolean, + "prefer-workspace-packages": Boolean, + production: [null, true], + "public-hoist-pattern": Array, + "publish-branch": String, + "recursive-install": Boolean, + reporter: String, + "resolution-mode": ["highest", "time-based", "lowest-direct"], + "resolve-peers-from-workspace-root": Boolean, + "aggregate-output": Boolean, + "save-peer": Boolean, + "save-workspace-protocol": Boolean, + "script-shell": String, + "shamefully-flatten": Boolean, + "shamefully-hoist": Boolean, + "shared-workspace-lockfile": Boolean, + "shell-emulator": Boolean, + "side-effects-cache": Boolean, + "side-effects-cache-readonly": Boolean, + symlink: Boolean, + sort: Boolean, + "state-dir": String, + "store-dir": String, + stream: Boolean, + "strict-peer-dependencies": Boolean, + "use-beta-cli": Boolean, + "use-inline-specifiers-lockfile-format": Boolean, + "use-lockfile-v6": Boolean, + "use-node-version": String, + "use-running-store-server": Boolean, + "use-store-server": Boolean, + "use-stderr": Boolean, + "verify-store-integrity": Boolean, + "virtual-store-dir": String, + "workspace-concurrency": Number, + "workspace-packages": [String, Array], + "workspace-root": Boolean, + "test-pattern": [String, Array], + "changed-files-ignore-pattern": [String, Array], + "embed-readme": Boolean, + "update-notifier": Boolean, + "registry-supports-time-field": Boolean + }, types_1.default.types); + async function getConfig(opts) { + const env = opts.env ?? process.env; + const packageManager = opts.packageManager ?? { name: "pnpm", version: "undefined" }; + const cliOptions = opts.cliOptions ?? {}; + if (cliOptions["hoist"] === false) { + if (cliOptions["shamefully-hoist"] === true) { + throw new error_1.PnpmError("CONFIG_CONFLICT_HOIST", "--shamefully-hoist cannot be used with --no-hoist"); } - return 1; - } - if ("CI" in env) { - if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env) || env.CI_NAME === "codeship") { - return 1; + if (cliOptions["shamefully-flatten"] === true) { + throw new error_1.PnpmError("CONFIG_CONFLICT_HOIST", "--shamefully-flatten cannot be used with --no-hoist"); } - return min; - } - if ("TEAMCITY_VERSION" in env) { - return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; - } - if (env.COLORTERM === "truecolor") { - return 3; - } - if ("TERM_PROGRAM" in env) { - const version = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); - switch (env.TERM_PROGRAM) { - case "iTerm.app": - return version >= 3 ? 3 : 2; - case "Apple_Terminal": - return 2; + if (cliOptions["hoist-pattern"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_HOIST", "--hoist-pattern cannot be used with --no-hoist"); } } - if (/-256(color)?$/i.test(env.TERM)) { - return 2; - } - if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { - return 1; - } - if ("COLORTERM" in env) { - return 1; + const originalExecPath = process.execPath; + try { + const node = await (0, which_1.default)(process.argv[0]); + if (node.toUpperCase() !== process.execPath.toUpperCase()) { + process.execPath = node; + } + } catch (err) { } - return min; - } - function getSupportLevel(stream) { - const level = supportsColor(stream, stream && stream.isTTY); - return translateLevel(level); - } - module2.exports = { - supportsColor: getSupportLevel, - stdout: translateLevel(supportsColor(true, tty.isatty(1))), - stderr: translateLevel(supportsColor(true, tty.isatty(2))) - }; - } -}); - -// ../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js -var require_util2 = __commonJS({ - "../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js"(exports2, module2) { - "use strict"; - var stringReplaceAll = (string, substring, replacer) => { - let index = string.indexOf(substring); - if (index === -1) { - return string; + if (cliOptions.dir) { + cliOptions.dir = await (0, realpath_missing_1.default)(cliOptions.dir); + cliOptions["prefix"] = cliOptions.dir; } - const substringLength = substring.length; - let endIndex = 0; - let returnValue = ""; - do { - returnValue += string.substr(endIndex, index - endIndex) + substring + replacer; - endIndex = index + substringLength; - index = string.indexOf(substring, endIndex); - } while (index !== -1); - returnValue += string.substr(endIndex); - return returnValue; - }; - var stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => { - let endIndex = 0; - let returnValue = ""; - do { - const gotCR = string[index - 1] === "\r"; - returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix; - endIndex = index + 1; - index = string.indexOf("\n", endIndex); - } while (index !== -1); - returnValue += string.substr(endIndex); - return returnValue; - }; - module2.exports = { - stringReplaceAll, - stringEncaseCRLFWithFirstIndex - }; - } -}); - -// ../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js -var require_templates2 = __commonJS({ - "../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js"(exports2, module2) { - "use strict"; - var TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; - var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; - var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; - var ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi; - var ESCAPES = new Map([ - ["n", "\n"], - ["r", "\r"], - ["t", " "], - ["b", "\b"], - ["f", "\f"], - ["v", "\v"], - ["0", "\0"], - ["\\", "\\"], - ["e", ""], - ["a", "\x07"] - ]); - function unescape2(c) { - const u = c[0] === "u"; - const bracket = c[1] === "{"; - if (u && !bracket && c.length === 5 || c[0] === "x" && c.length === 3) { - return String.fromCharCode(parseInt(c.slice(1), 16)); + const rcOptionsTypes = { ...exports2.types, ...opts.rcOptionsTypes }; + const { config: npmConfig, warnings, failedToLoadBuiltInConfig } = (0, npm_conf_1.default)(cliOptions, rcOptionsTypes, { + "auto-install-peers": false, + bail: true, + color: "auto", + "dedupe-peer-dependents": false, + "enable-modules-dir": true, + "extend-node-path": true, + "fetch-retries": 2, + "fetch-retry-factor": 10, + "fetch-retry-maxtimeout": 6e4, + "fetch-retry-mintimeout": 1e4, + "fetch-timeout": 6e4, + "git-shallow-hosts": [ + // Follow https://github.com/npm/git/blob/1e1dbd26bd5b87ca055defecc3679777cb480e2a/lib/clone.js#L13-L19 + "github.com", + "gist.github.com", + "gitlab.com", + "bitbucket.com", + "bitbucket.org" + ], + globalconfig: npmDefaults.globalconfig, + "git-branch-lockfile": false, + hoist: true, + "hoist-pattern": ["*"], + "ignore-workspace-cycles": false, + "ignore-workspace-root-check": false, + "link-workspace-packages": true, + "lockfile-include-tarball-url": false, + "modules-cache-max-age": 7 * 24 * 60, + "node-linker": "isolated", + "package-lock": npmDefaults["package-lock"], + pending: false, + "prefer-workspace-packages": false, + "public-hoist-pattern": [ + "*eslint*", + "*prettier*" + ], + "recursive-install": true, + registry: npmDefaults.registry, + "resolution-mode": "highest", + "save-peer": false, + "save-workspace-protocol": true, + "scripts-prepend-node-path": false, + "side-effects-cache": true, + symlink: true, + "shared-workspace-lockfile": true, + "shell-emulator": false, + reverse: false, + sort: true, + "strict-peer-dependencies": false, + "unsafe-perm": npmDefaults["unsafe-perm"], + "use-beta-cli": false, + "use-inline-specifiers-lockfile-format": false, + userconfig: npmDefaults.userconfig, + "verify-store-integrity": true, + "virtual-store-dir": "node_modules/.pnpm", + "workspace-concurrency": 4, + "workspace-prefix": opts.workspaceDir, + "embed-readme": false, + "registry-supports-time-field": false + }); + const configDir = (0, dirs_1.getConfigDir)(process); + { + const warn = npmConfig.addFile(path_1.default.join(configDir, "rc"), "pnpm-global"); + if (warn) + warnings.push(warn); } - if (u && bracket) { - return String.fromCodePoint(parseInt(c.slice(2, -1), 16)); + { + const warn = npmConfig.addFile(path_1.default.resolve(path_1.default.join(__dirname, "pnpmrc")), "pnpm-builtin"); + if (warn) + warnings.push(warn); } - return ESCAPES.get(c) || c; - } - function parseArguments(name, arguments_) { - const results = []; - const chunks = arguments_.trim().split(/\s*,\s*/g); - let matches; - for (const chunk of chunks) { - const number = Number(chunk); - if (!Number.isNaN(number)) { - results.push(number); - } else if (matches = chunk.match(STRING_REGEX)) { - results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape2(escape) : character)); - } else { - throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); + delete cliOptions.prefix; + process.execPath = originalExecPath; + const rcOptions = Object.keys(rcOptionsTypes); + const pnpmConfig = Object.fromEntries([ + ...rcOptions.map((configKey) => [(0, camelcase_1.default)(configKey), npmConfig.get(configKey)]), + ...Object.entries(cliOptions).filter(([name, value]) => typeof value !== "undefined").map(([name, value]) => [(0, camelcase_1.default)(name), value]) + ]); + const cwd = (0, better_path_resolve_1.default)(cliOptions.dir ?? npmConfig.localPrefix); + pnpmConfig.maxSockets = npmConfig.maxsockets; + delete pnpmConfig["maxsockets"]; + pnpmConfig.configDir = configDir; + pnpmConfig.workspaceDir = opts.workspaceDir; + pnpmConfig.workspaceRoot = cliOptions["workspace-root"]; + pnpmConfig.rawLocalConfig = Object.assign.apply(Object, [ + {}, + ...npmConfig.list.slice(3, pnpmConfig.workspaceDir && pnpmConfig.workspaceDir !== cwd ? 5 : 4).reverse(), + cliOptions + ]); + pnpmConfig.userAgent = pnpmConfig.rawLocalConfig["user-agent"] ? pnpmConfig.rawLocalConfig["user-agent"] : `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}`; + pnpmConfig.rawConfig = Object.assign.apply(Object, [ + { registry: "https://registry.npmjs.org/" }, + ...[...npmConfig.list].reverse(), + cliOptions, + { "user-agent": pnpmConfig.userAgent } + ]); + pnpmConfig.registries = { + default: (0, normalize_registry_url_1.default)(pnpmConfig.rawConfig.registry), + ...(0, getScopeRegistries_1.getScopeRegistries)(pnpmConfig.rawConfig) + }; + pnpmConfig.useLockfile = (() => { + if (typeof pnpmConfig["lockfile"] === "boolean") + return pnpmConfig["lockfile"]; + if (typeof pnpmConfig["packageLock"] === "boolean") + return pnpmConfig["packageLock"]; + return false; + })(); + pnpmConfig.useGitBranchLockfile = (() => { + if (typeof pnpmConfig["gitBranchLockfile"] === "boolean") + return pnpmConfig["gitBranchLockfile"]; + return false; + })(); + pnpmConfig.mergeGitBranchLockfiles = await (async () => { + if (typeof pnpmConfig["mergeGitBranchLockfiles"] === "boolean") + return pnpmConfig["mergeGitBranchLockfiles"]; + if (pnpmConfig["mergeGitBranchLockfilesBranchPattern"] != null && pnpmConfig["mergeGitBranchLockfilesBranchPattern"].length > 0) { + const branch = await (0, git_utils_1.getCurrentBranch)(); + if (branch) { + const branchMatcher = (0, matcher_1.createMatcher)(pnpmConfig["mergeGitBranchLockfilesBranchPattern"]); + return branchMatcher(branch); + } } - } - return results; - } - function parseStyle(style) { - STYLE_REGEX.lastIndex = 0; - const results = []; - let matches; - while ((matches = STYLE_REGEX.exec(style)) !== null) { - const name = matches[1]; - if (matches[2]) { - const args2 = parseArguments(name, matches[2]); - results.push([name].concat(args2)); + return void 0; + })(); + pnpmConfig.pnpmHomeDir = (0, dirs_1.getDataDir)(process); + if (cliOptions["global"]) { + let globalDirRoot; + if (pnpmConfig["globalDir"]) { + globalDirRoot = pnpmConfig["globalDir"]; } else { - results.push([name]); + globalDirRoot = path_1.default.join(pnpmConfig.pnpmHomeDir, "global"); } - } - return results; - } - function buildStyle(chalk, styles) { - const enabled = {}; - for (const layer of styles) { - for (const style of layer.styles) { - enabled[style[0]] = layer.inverse ? null : style.slice(1); + pnpmConfig.dir = path_1.default.join(globalDirRoot, constants_1.LAYOUT_VERSION.toString()); + pnpmConfig.bin = npmConfig.get("global-bin-dir") ?? env.PNPM_HOME; + if (pnpmConfig.bin) { + fs_1.default.mkdirSync(pnpmConfig.bin, { recursive: true }); + await (0, checkGlobalBinDir_1.checkGlobalBinDir)(pnpmConfig.bin, { env, shouldAllowWrite: opts.globalDirShouldAllowWrite }); } - } - let current = chalk; - for (const [styleName, styles2] of Object.entries(enabled)) { - if (!Array.isArray(styles2)) { - continue; + pnpmConfig.save = true; + pnpmConfig.allowNew = true; + pnpmConfig.ignoreCurrentPrefs = true; + pnpmConfig.saveProd = true; + pnpmConfig.saveDev = false; + pnpmConfig.saveOptional = false; + if (pnpmConfig.hoistPattern != null && (pnpmConfig.hoistPattern.length > 1 || pnpmConfig.hoistPattern[0] !== "*")) { + if (opts.cliOptions["hoist-pattern"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_HOIST_PATTERN_WITH_GLOBAL", 'Configuration conflict. "hoist-pattern" may not be used with "global"'); + } } - if (!(styleName in current)) { - throw new Error(`Unknown Chalk style: ${styleName}`); + if (pnpmConfig.linkWorkspacePackages) { + if (opts.cliOptions["link-workspace-packages"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_LINK_WORKSPACE_PACKAGES_WITH_GLOBAL", 'Configuration conflict. "link-workspace-packages" may not be used with "global"'); + } + pnpmConfig.linkWorkspacePackages = false; } - current = styles2.length > 0 ? current[styleName](...styles2) : current[styleName]; - } - return current; - } - module2.exports = (chalk, temporary) => { - const styles = []; - const chunks = []; - let chunk = []; - temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => { - if (escapeCharacter) { - chunk.push(unescape2(escapeCharacter)); - } else if (style) { - const string = chunk.join(""); - chunk = []; - chunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string)); - styles.push({ inverse, styles: parseStyle(style) }); - } else if (close) { - if (styles.length === 0) { - throw new Error("Found extraneous } in Chalk template literal"); + if (pnpmConfig.sharedWorkspaceLockfile) { + if (opts.cliOptions["shared-workspace-lockfile"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_SHARED_WORKSPACE_LOCKFILE_WITH_GLOBAL", 'Configuration conflict. "shared-workspace-lockfile" may not be used with "global"'); } - chunks.push(buildStyle(chalk, styles)(chunk.join(""))); - chunk = []; - styles.pop(); - } else { - chunk.push(character); + pnpmConfig.sharedWorkspaceLockfile = false; } - }); - chunks.push(chunk.join("")); - if (styles.length > 0) { - const errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; - throw new Error(errMessage); - } - return chunks.join(""); - }; - } -}); - -// ../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js -var require_source = __commonJS({ - "../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js"(exports2, module2) { - "use strict"; - var ansiStyles = require_ansi_styles2(); - var { stdout: stdoutColor, stderr: stderrColor } = require_supports_color2(); - var { - stringReplaceAll, - stringEncaseCRLFWithFirstIndex - } = require_util2(); - var { isArray } = Array; - var levelMapping = [ - "ansi", - "ansi", - "ansi256", - "ansi16m" - ]; - var styles = Object.create(null); - var applyOptions = (object, options = {}) => { - if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) { - throw new Error("The `level` option should be an integer from 0 to 3"); - } - const colorLevel = stdoutColor ? stdoutColor.level : 0; - object.level = options.level === void 0 ? colorLevel : options.level; - }; - var ChalkClass = class { - constructor(options) { - return chalkFactory(options); - } - }; - var chalkFactory = (options) => { - const chalk2 = {}; - applyOptions(chalk2, options); - chalk2.template = (...arguments_) => chalkTag(chalk2.template, ...arguments_); - Object.setPrototypeOf(chalk2, Chalk.prototype); - Object.setPrototypeOf(chalk2.template, chalk2); - chalk2.template.constructor = () => { - throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead."); - }; - chalk2.template.Instance = ChalkClass; - return chalk2.template; - }; - function Chalk(options) { - return chalkFactory(options); - } - for (const [styleName, style] of Object.entries(ansiStyles)) { - styles[styleName] = { - get() { - const builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty); - Object.defineProperty(this, styleName, { value: builder }); - return builder; + if (pnpmConfig.lockfileDir) { + if (opts.cliOptions["lockfile-dir"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_LOCKFILE_DIR_WITH_GLOBAL", 'Configuration conflict. "lockfile-dir" may not be used with "global"'); + } + delete pnpmConfig.lockfileDir; } - }; - } - styles.visible = { - get() { - const builder = createBuilder(this, this._styler, true); - Object.defineProperty(this, "visible", { value: builder }); - return builder; - } - }; - var usedModels = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"]; - for (const model of usedModels) { - styles[model] = { - get() { - const { level } = this; - return function(...arguments_) { - const styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler); - return createBuilder(this, styler, this._isEmpty); - }; + if (opts.cliOptions["virtual-store-dir"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_VIRTUAL_STORE_DIR_WITH_GLOBAL", 'Configuration conflict. "virtual-store-dir" may not be used with "global"'); } - }; - } - for (const model of usedModels) { - const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); - styles[bgModel] = { - get() { - const { level } = this; - return function(...arguments_) { - const styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler); - return createBuilder(this, styler, this._isEmpty); - }; + pnpmConfig.virtualStoreDir = ".pnpm"; + } else { + pnpmConfig.dir = cwd; + pnpmConfig.bin = path_1.default.join(pnpmConfig.dir, "node_modules", ".bin"); + } + if (opts.cliOptions["save-peer"]) { + if (opts.cliOptions["save-prod"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_PEER_CANNOT_BE_PROD_DEP", "A package cannot be a peer dependency and a prod dependency at the same time"); } - }; - } - var proto = Object.defineProperties(() => { - }, { - ...styles, - level: { - enumerable: true, - get() { - return this._generator.level; - }, - set(level) { - this._generator.level = level; + if (opts.cliOptions["save-optional"]) { + throw new error_1.PnpmError("CONFIG_CONFLICT_PEER_CANNOT_BE_OPTIONAL_DEP", "A package cannot be a peer dependency and an optional dependency at the same time"); } } - }); - var createStyler = (open, close, parent) => { - let openAll; - let closeAll; - if (parent === void 0) { - openAll = open; - closeAll = close; - } else { - openAll = parent.openAll + open; - closeAll = close + parent.closeAll; + if (pnpmConfig.sharedWorkspaceLockfile && !pnpmConfig.lockfileDir && pnpmConfig.workspaceDir) { + pnpmConfig.lockfileDir = pnpmConfig.workspaceDir; } - return { - open, - close, - openAll, - closeAll, - parent - }; - }; - var createBuilder = (self2, _styler, _isEmpty) => { - const builder = (...arguments_) => { - if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) { - return applyStyle(builder, chalkTag(builder, ...arguments_)); + pnpmConfig.packageManager = packageManager; + if (env.NODE_ENV) { + if (cliOptions.production) { + pnpmConfig.only = "production"; + } + if (cliOptions.dev) { + pnpmConfig.only = "dev"; } - return applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" ")); - }; - Object.setPrototypeOf(builder, proto); - builder._generator = self2; - builder._styler = _styler; - builder._isEmpty = _isEmpty; - return builder; - }; - var applyStyle = (self2, string) => { - if (self2.level <= 0 || !string) { - return self2._isEmpty ? "" : string; } - let styler = self2._styler; - if (styler === void 0) { - return string; + if (pnpmConfig.only === "prod" || pnpmConfig.only === "production" || !pnpmConfig.only && pnpmConfig.production) { + pnpmConfig.production = true; + pnpmConfig.dev = false; + } else if (pnpmConfig.only === "dev" || pnpmConfig.only === "development" || pnpmConfig.dev) { + pnpmConfig.production = false; + pnpmConfig.dev = true; + pnpmConfig.optional = false; + } else { + pnpmConfig.production = true; + pnpmConfig.dev = true; } - const { openAll, closeAll } = styler; - if (string.indexOf("") !== -1) { - while (styler !== void 0) { - string = stringReplaceAll(string, styler.close, styler.open); - styler = styler.parent; - } + if (typeof pnpmConfig.filter === "string") { + pnpmConfig.filter = pnpmConfig.filter.split(" "); } - const lfIndex = string.indexOf("\n"); - if (lfIndex !== -1) { - string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex); + if (typeof pnpmConfig.filterProd === "string") { + pnpmConfig.filterProd = pnpmConfig.filterProd.split(" "); } - return openAll + string + closeAll; - }; - var template; - var chalkTag = (chalk2, ...strings) => { - const [firstString] = strings; - if (!isArray(firstString) || !isArray(firstString.raw)) { - return strings.join(" "); + if (!pnpmConfig.ignoreScripts && pnpmConfig.workspaceDir) { + pnpmConfig.extraBinPaths = [path_1.default.join(pnpmConfig.workspaceDir, "node_modules", ".bin")]; + } else { + pnpmConfig.extraBinPaths = []; } - const arguments_ = strings.slice(1); - const parts = [firstString.raw[0]]; - for (let i = 1; i < firstString.length; i++) { - parts.push(String(arguments_[i - 1]).replace(/[{}\\]/g, "\\$&"), String(firstString.raw[i])); + if (pnpmConfig.preferSymlinkedExecutables && !(0, is_windows_1.default)()) { + const cwd2 = pnpmConfig.lockfileDir ?? pnpmConfig.dir; + const virtualStoreDir = pnpmConfig.virtualStoreDir ? pnpmConfig.virtualStoreDir : pnpmConfig.modulesDir ? path_1.default.join(pnpmConfig.modulesDir, ".pnpm") : "node_modules/.pnpm"; + pnpmConfig.extraEnv = { + NODE_PATH: (0, path_absolute_1.default)(path_1.default.join(virtualStoreDir, "node_modules"), cwd2) + }; } - if (template === void 0) { - template = require_templates2(); + if (pnpmConfig["shamefullyFlatten"]) { + warnings.push(`The "shamefully-flatten" setting has been renamed to "shamefully-hoist". Also, in most cases you won't need "shamefully-hoist". Since v4, a semistrict node_modules structure is on by default (via hoist-pattern=[*]).`); + pnpmConfig.shamefullyHoist = true; } - return template(chalk2, parts.join("")); - }; - Object.defineProperties(Chalk.prototype, styles); - var chalk = Chalk(); - chalk.supportsColor = stdoutColor; - chalk.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 }); - chalk.stderr.supportsColor = stderrColor; - module2.exports = chalk; - } -}); - -// ../default-reporter/lib/reporterForClient/outputConstants.js -var require_outputConstants = __commonJS({ - "../default-reporter/lib/reporterForClient/outputConstants.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.REMOVED_CHAR = exports2.ADDED_CHAR = exports2.hlPkgId = exports2.hlValue = exports2.PREFIX_MAX_LENGTH = void 0; - var chalk_1 = __importDefault(require_source()); - exports2.PREFIX_MAX_LENGTH = 40; - exports2.hlValue = chalk_1.default.cyanBright; - exports2.hlPkgId = chalk_1.default["whiteBright"]; - exports2.ADDED_CHAR = chalk_1.default.green("+"); - exports2.REMOVED_CHAR = chalk_1.default.red("-"); - } -}); - -// ../default-reporter/lib/reporterForClient/reportBigTarballsProgress.js -var require_reportBigTarballsProgress = __commonJS({ - "../default-reporter/lib/reporterForClient/reportBigTarballsProgress.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var operators_1 = require_operators(); - var pretty_bytes_1 = __importDefault(require_pretty_bytes()); - var outputConstants_1 = require_outputConstants(); - var BIG_TARBALL_SIZE = 1024 * 1024 * 5; - exports2.default = (log$) => { - return log$.fetchingProgress.pipe(operators_1.filter((log2) => log2.status === "started" && typeof log2.size === "number" && log2.size >= BIG_TARBALL_SIZE && log2.attempt === 1), operators_1.map((startedLog) => { - const size = pretty_bytes_1.default(startedLog["size"]); - return log$.fetchingProgress.pipe(operators_1.filter((log2) => log2.status === "in_progress" && log2.packageId === startedLog["packageId"]), operators_1.map((log2) => log2["downloaded"]), operators_1.startWith(0), operators_1.map((downloadedRaw) => { - const done = startedLog["size"] === downloadedRaw; - const downloaded = pretty_bytes_1.default(downloadedRaw); - return { - fixed: !done, - msg: `Downloading ${outputConstants_1.hlPkgId(startedLog["packageId"])}: ${outputConstants_1.hlValue(downloaded)}/${outputConstants_1.hlValue(size)}${done ? ", done" : ""}` - }; - })); - })); - }; - } -}); - -// ../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js -var require_normalize_path = __commonJS({ - "../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js"(exports2, module2) { - module2.exports = function(path, stripTrailing) { - if (typeof path !== "string") { - throw new TypeError("expected path to be a string"); + if (!pnpmConfig.cacheDir) { + pnpmConfig.cacheDir = (0, dirs_1.getCacheDir)(process); } - if (path === "\\" || path === "/") - return "/"; - var len = path.length; - if (len <= 1) - return path; - var prefix = ""; - if (len > 4 && path[3] === "\\") { - var ch = path[2]; - if ((ch === "?" || ch === ".") && path.slice(0, 2) === "\\\\") { - path = path.slice(2); - prefix = "//"; - } + if (!pnpmConfig.stateDir) { + pnpmConfig.stateDir = (0, dirs_1.getStateDir)(process); } - var segs = path.split(/[/\\]+/); - if (stripTrailing !== false && segs[segs.length - 1] === "") { - segs.pop(); + if (pnpmConfig["hoist"] === false) { + delete pnpmConfig.hoistPattern; } - return prefix + segs.join("/"); - }; - } -}); - -// ../default-reporter/lib/reporterForClient/reportContext.js -var require_reportContext = __commonJS({ - "../default-reporter/lib/reporterForClient/reportContext.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + switch (pnpmConfig.shamefullyHoist) { + case false: + delete pnpmConfig.publicHoistPattern; + break; + case true: + pnpmConfig.publicHoistPattern = ["*"]; + break; + default: + if (pnpmConfig.publicHoistPattern == null || // @ts-expect-error + pnpmConfig.publicHoistPattern === "" || Array.isArray(pnpmConfig.publicHoistPattern) && pnpmConfig.publicHoistPattern.length === 1 && pnpmConfig.publicHoistPattern[0] === "") { + delete pnpmConfig.publicHoistPattern; + } + break; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var normalize_path_1 = __importDefault(require_normalize_path()); - exports2.default = (log$, opts) => { - return Rx.combineLatest(log$.context.pipe(operators_1.take(1)), log$.packageImportMethod.pipe(operators_1.take(1))).pipe(operators_1.map(([context, packageImportMethod]) => { - if (context.currentLockfileExists) { - return Rx.NEVER; - } - let method; - switch (packageImportMethod.method) { - case "copy": - method = "copied"; - break; - case "clone": - method = "cloned"; + if (!pnpmConfig.symlink) { + delete pnpmConfig.hoistPattern; + delete pnpmConfig.publicHoistPattern; + } + if (typeof pnpmConfig["color"] === "boolean") { + switch (pnpmConfig["color"]) { + case true: + pnpmConfig.color = "always"; break; - case "hardlink": - method = "hard linked"; + case false: + pnpmConfig.color = "never"; break; default: - method = packageImportMethod.method; + pnpmConfig.color = "auto"; break; } - return Rx.of({ - msg: `Packages are ${method} from the content-addressable store to the virtual store. - Content-addressable store is at: ${context.storeDir} - Virtual store is at: ${normalize_path_1.default(path_1.default.relative(opts.cwd, context.virtualStoreDir))}` - }); - })); - }; - } -}); - -// ../default-reporter/lib/reporterForClient/utils/formatWarn.js -var require_formatWarn = __commonJS({ - "../default-reporter/lib/reporterForClient/utils/formatWarn.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var chalk_1 = __importDefault(require_source()); - function formatWarn(message2) { - return `${chalk_1.default.bgYellow.black("\u2009WARN\u2009")} ${message2}`; - } - exports2.default = formatWarn; - } -}); - -// ../../node_modules/.pnpm/right-pad@1.0.1/node_modules/right-pad/rightpad.js -var require_rightpad = __commonJS({ - "../../node_modules/.pnpm/right-pad@1.0.1/node_modules/right-pad/rightpad.js"(exports2, module2) { - "use strict"; - exports2 = module2.exports = function rightPad(_string, _length, _char) { - if (typeof _string !== "string") { - throw new Error("The string parameter must be a string."); } - if (_string.length < 1) { - throw new Error("The string parameter must be 1 character or longer."); + if (!pnpmConfig.httpsProxy) { + pnpmConfig.httpsProxy = pnpmConfig.proxy ?? getProcessEnv("https_proxy"); } - if (typeof _length !== "number") { - throw new Error("The length parameter must be a number."); + if (!pnpmConfig.httpProxy) { + pnpmConfig.httpProxy = pnpmConfig.httpsProxy ?? getProcessEnv("http_proxy") ?? getProcessEnv("proxy"); } - if (typeof _char !== "string" && _char) { - throw new Error("The character parameter must be a string."); + if (!pnpmConfig.noProxy) { + pnpmConfig.noProxy = pnpmConfig["noproxy"] ?? getProcessEnv("no_proxy"); } - var i = -1; - _length = _length - _string.length; - if (!_char && _char !== 0) { - _char = " "; + switch (pnpmConfig.nodeLinker) { + case "pnp": + pnpmConfig.enablePnp = pnpmConfig.nodeLinker === "pnp"; + break; + case "hoisted": + if (pnpmConfig.preferSymlinkedExecutables == null) { + pnpmConfig.preferSymlinkedExecutables = true; + } + break; } - while (++i < _length) { - _string += _char; + if (!pnpmConfig.userConfig) { + pnpmConfig.userConfig = npmConfig.sources.user?.data; } - return _string; - }; - } -}); - -// ../default-reporter/lib/reporterForClient/utils/formatPrefix.js -var require_formatPrefix = __commonJS({ - "../default-reporter/lib/reporterForClient/utils/formatPrefix.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.formatPrefixNoTrim = void 0; - var path_1 = __importDefault(require("path")); - var normalize_path_1 = __importDefault(require_normalize_path()); - var outputConstants_1 = require_outputConstants(); - function formatPrefix(cwd, prefix) { - prefix = formatPrefixNoTrim(cwd, prefix); - if (prefix.length <= outputConstants_1.PREFIX_MAX_LENGTH) { - return prefix; + pnpmConfig.sideEffectsCacheRead = pnpmConfig.sideEffectsCache ?? pnpmConfig.sideEffectsCacheReadonly; + pnpmConfig.sideEffectsCacheWrite = pnpmConfig.sideEffectsCache; + if (opts.checkUnknownSetting) { + const settingKeys = Object.keys({ + ...npmConfig?.sources?.workspace?.data, + ...npmConfig?.sources?.project?.data + }).filter((key) => key.trim() !== ""); + const unknownKeys = []; + for (const key of settingKeys) { + if (!rcOptions.includes(key) && !key.startsWith("//") && !(key.startsWith("@") && key.endsWith(":registry"))) { + unknownKeys.push(key); + } + } + if (unknownKeys.length > 0) { + warnings.push(`Your .npmrc file contains unknown setting: ${unknownKeys.join(", ")}`); + } } - const shortPrefix = prefix.substr(-outputConstants_1.PREFIX_MAX_LENGTH + 3); - const separatorLocation = shortPrefix.indexOf("/"); - if (separatorLocation <= 0) { - return `...${shortPrefix}`; + pnpmConfig.workspaceConcurrency = (0, concurrency_1.getWorkspaceConcurrency)(pnpmConfig.workspaceConcurrency); + if (!pnpmConfig.ignorePnpmfile) { + pnpmConfig.hooks = (0, pnpmfile_1.requireHooks)(pnpmConfig.lockfileDir ?? pnpmConfig.dir, pnpmConfig); } - return `...${shortPrefix.substr(separatorLocation)}`; + pnpmConfig.rootProjectManifest = await (0, read_project_manifest_1.safeReadProjectManifestOnly)(pnpmConfig.lockfileDir ?? pnpmConfig.workspaceDir ?? pnpmConfig.dir) ?? void 0; + if (pnpmConfig.rootProjectManifest?.workspaces?.length && !pnpmConfig.workspaceDir) { + warnings.push('The "workspaces" field in package.json is not supported by pnpm. Create a "pnpm-workspace.yaml" file instead.'); + } + pnpmConfig.failedToLoadBuiltInConfig = failedToLoadBuiltInConfig; + return { config: pnpmConfig, warnings }; } - exports2.default = formatPrefix; - function formatPrefixNoTrim(cwd, prefix) { - return normalize_path_1.default(path_1.default.relative(cwd, prefix) || "."); + exports2.getConfig = getConfig; + function getProcessEnv(env) { + return process.env[env] ?? process.env[env.toUpperCase()] ?? process.env[env.toLowerCase()]; } - exports2.formatPrefixNoTrim = formatPrefixNoTrim; } }); -// ../default-reporter/lib/reporterForClient/utils/zooming.js -var require_zooming = __commonJS({ - "../default-reporter/lib/reporterForClient/utils/zooming.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isFunction.js +var require_isFunction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isFunction.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.zoomOut = exports2.autozoom = void 0; - var right_pad_1 = __importDefault(require_rightpad()); - var outputConstants_1 = require_outputConstants(); - var formatPrefix_1 = __importDefault(require_formatPrefix()); - function autozoom(currentPrefix, logPrefix, line, opts) { - if (!logPrefix || !opts.zoomOutCurrent && currentPrefix === logPrefix) { - return line; - } - return zoomOut(currentPrefix, logPrefix, line); - } - exports2.autozoom = autozoom; - function zoomOut(currentPrefix, logPrefix, line) { - return `${right_pad_1.default(formatPrefix_1.default(currentPrefix, logPrefix), outputConstants_1.PREFIX_MAX_LENGTH)} | ${line}`; + exports2.isFunction = void 0; + function isFunction(value) { + return typeof value === "function"; } - exports2.zoomOut = zoomOut; + exports2.isFunction = isFunction; } }); -// ../default-reporter/lib/reporterForClient/reportDeprecations.js -var require_reportDeprecations = __commonJS({ - "../default-reporter/lib/reporterForClient/reportDeprecations.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js +var require_createErrorClass = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var chalk_1 = __importDefault(require_source()); - var formatWarn_1 = __importDefault(require_formatWarn()); - var zooming_1 = require_zooming(); - exports2.default = (deprecation$, opts) => { - return deprecation$.pipe(operators_1.filter((log2) => log2.depth === 0), operators_1.map((log2) => { - if (!opts.isRecursive && log2.prefix === opts.cwd) { - return Rx.of({ - msg: formatWarn_1.default(`${chalk_1.default.red("deprecated")} ${log2.pkgName}@${log2.pkgVersion}: ${log2.deprecated}`) - }); - } - return Rx.of({ - msg: zooming_1.zoomOut(opts.cwd, log2.prefix, formatWarn_1.default(`${chalk_1.default.red("deprecated")} ${log2.pkgName}@${log2.pkgVersion}`)) - }); - })); - }; + exports2.createErrorClass = void 0; + function createErrorClass(createImpl) { + var _super = function(instance) { + Error.call(instance); + instance.stack = new Error().stack; + }; + var ctorFunc = createImpl(_super); + ctorFunc.prototype = Object.create(Error.prototype); + ctorFunc.prototype.constructor = ctorFunc; + return ctorFunc; + } + exports2.createErrorClass = createErrorClass; } }); -// ../default-reporter/lib/reporterForClient/reportHooks.js -var require_reportHooks = __commonJS({ - "../default-reporter/lib/reporterForClient/reportHooks.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js +var require_UnsubscriptionError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var chalk_1 = __importDefault(require_source()); - var zooming_1 = require_zooming(); - exports2.default = (hook$, opts) => { - return hook$.pipe(operators_1.map((log2) => Rx.of({ - msg: zooming_1.autozoom(opts.cwd, log2.prefix, `${chalk_1.default.magentaBright(log2.hook)}: ${log2.message}`, { - zoomOutCurrent: opts.isRecursive - }) - }))); - }; + exports2.UnsubscriptionError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.UnsubscriptionError = createErrorClass_1.createErrorClass(function(_super) { + return function UnsubscriptionErrorImpl(errors) { + _super(this); + this.message = errors ? errors.length + " errors occurred during unsubscription:\n" + errors.map(function(err, i) { + return i + 1 + ") " + err.toString(); + }).join("\n ") : ""; + this.name = "UnsubscriptionError"; + this.errors = errors; + }; + }); } }); -// ../default-reporter/lib/reporterForClient/reportInstallChecks.js -var require_reportInstallChecks = __commonJS({ - "../default-reporter/lib/reporterForClient/reportInstallChecks.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js +var require_arrRemove = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var formatWarn_1 = __importDefault(require_formatWarn()); - var zooming_1 = require_zooming(); - exports2.default = (installCheck$, opts) => { - return installCheck$.pipe(operators_1.map((log2) => formatInstallCheck(opts.cwd, log2)), operators_1.filter(Boolean), operators_1.map((msg) => Rx.of({ msg }))); - }; - function formatInstallCheck(currentPrefix, logObj, opts) { - var _a; - const zoomOutCurrent = (_a = opts === null || opts === void 0 ? void 0 : opts.zoomOutCurrent) !== null && _a !== void 0 ? _a : false; - switch (logObj.code) { - case "EBADPLATFORM": - return zooming_1.autozoom(currentPrefix, logObj["prefix"], formatWarn_1.default(`Unsupported system. Skipping dependency ${logObj.pkgId}`), { zoomOutCurrent }); - case "ENOTSUP": - return zooming_1.autozoom(currentPrefix, logObj["prefix"], logObj.toString(), { zoomOutCurrent }); - default: - return void 0; + exports2.arrRemove = void 0; + function arrRemove(arr, item) { + if (arr) { + var index = arr.indexOf(item); + 0 <= index && arr.splice(index, 1); } } + exports2.arrRemove = arrRemove; } }); -// ../../node_modules/.pnpm/parse-ms@2.1.0/node_modules/parse-ms/index.js -var require_parse_ms = __commonJS({ - "../../node_modules/.pnpm/parse-ms@2.1.0/node_modules/parse-ms/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscription.js +var require_Subscription = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscription.js"(exports2) { "use strict"; - module2.exports = (milliseconds) => { - if (typeof milliseconds !== "number") { - throw new TypeError("Expected a number"); - } - const roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil; - return { - days: roundTowardsZero(milliseconds / 864e5), - hours: roundTowardsZero(milliseconds / 36e5) % 24, - minutes: roundTowardsZero(milliseconds / 6e4) % 60, - seconds: roundTowardsZero(milliseconds / 1e3) % 60, - milliseconds: roundTowardsZero(milliseconds) % 1e3, - microseconds: roundTowardsZero(milliseconds * 1e3) % 1e3, - nanoseconds: roundTowardsZero(milliseconds * 1e6) % 1e3 - }; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; - } -}); - -// ../../node_modules/.pnpm/pretty-ms@7.0.1/node_modules/pretty-ms/index.js -var require_pretty_ms = __commonJS({ - "../../node_modules/.pnpm/pretty-ms@7.0.1/node_modules/pretty-ms/index.js"(exports2, module2) { - "use strict"; - var parseMilliseconds = require_parse_ms(); - var pluralize = (word, count) => count === 1 ? word : `${word}s`; - var SECOND_ROUNDING_EPSILON = 1e-7; - module2.exports = (milliseconds, options = {}) => { - if (!Number.isFinite(milliseconds)) { - throw new TypeError("Expected a finite number"); - } - if (options.colonNotation) { - options.compact = false; - options.formatSubMilliseconds = false; - options.separateMilliseconds = false; - options.verbose = false; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } - if (options.compact) { - options.secondsDecimalDigits = 0; - options.millisecondsDecimalDigits = 0; + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isSubscription = exports2.EMPTY_SUBSCRIPTION = exports2.Subscription = void 0; + var isFunction_1 = require_isFunction(); + var UnsubscriptionError_1 = require_UnsubscriptionError(); + var arrRemove_1 = require_arrRemove(); + var Subscription = function() { + function Subscription2(initialTeardown) { + this.initialTeardown = initialTeardown; + this.closed = false; + this._parentage = null; + this._finalizers = null; } - const result = []; - const floorDecimals = (value, decimalDigits) => { - const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON); - const flooredValue = Math.round(flooredInterimValue) / 10 ** decimalDigits; - return flooredValue.toFixed(decimalDigits); - }; - const add = (value, long, short, valueString) => { - if ((result.length === 0 || !options.colonNotation) && value === 0 && !(options.colonNotation && short === "m")) { - return; - } - valueString = (valueString || value || "0").toString(); - let prefix; - let suffix; - if (options.colonNotation) { - prefix = result.length > 0 ? ":" : ""; - suffix = ""; - const wholeDigits = valueString.includes(".") ? valueString.split(".")[0].length : valueString.length; - const minLength = result.length > 0 ? 2 : 1; - valueString = "0".repeat(Math.max(0, minLength - wholeDigits)) + valueString; - } else { - prefix = ""; - suffix = options.verbose ? " " + pluralize(long, value) : short; - } - result.push(prefix + valueString + suffix); + Subscription2.prototype.unsubscribe = function() { + var e_1, _a, e_2, _b; + var errors; + if (!this.closed) { + this.closed = true; + var _parentage = this._parentage; + if (_parentage) { + this._parentage = null; + if (Array.isArray(_parentage)) { + try { + for (var _parentage_1 = __values4(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) { + var parent_1 = _parentage_1_1.value; + parent_1.remove(this); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) + _a.call(_parentage_1); + } finally { + if (e_1) + throw e_1.error; + } + } + } else { + _parentage.remove(this); + } + } + var initialFinalizer = this.initialTeardown; + if (isFunction_1.isFunction(initialFinalizer)) { + try { + initialFinalizer(); + } catch (e) { + errors = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e]; + } + } + var _finalizers = this._finalizers; + if (_finalizers) { + this._finalizers = null; + try { + for (var _finalizers_1 = __values4(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) { + var finalizer = _finalizers_1_1.value; + try { + execFinalizer(finalizer); + } catch (err) { + errors = errors !== null && errors !== void 0 ? errors : []; + if (err instanceof UnsubscriptionError_1.UnsubscriptionError) { + errors = __spreadArray3(__spreadArray3([], __read4(errors)), __read4(err.errors)); + } else { + errors.push(err); + } + } + } + } catch (e_2_1) { + e_2 = { error: e_2_1 }; + } finally { + try { + if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) + _b.call(_finalizers_1); + } finally { + if (e_2) + throw e_2.error; + } + } + } + if (errors) { + throw new UnsubscriptionError_1.UnsubscriptionError(errors); + } + } }; - const parsed = parseMilliseconds(milliseconds); - add(Math.trunc(parsed.days / 365), "year", "y"); - add(parsed.days % 365, "day", "d"); - add(parsed.hours, "hour", "h"); - add(parsed.minutes, "minute", "m"); - if (options.separateMilliseconds || options.formatSubMilliseconds || !options.colonNotation && milliseconds < 1e3) { - add(parsed.seconds, "second", "s"); - if (options.formatSubMilliseconds) { - add(parsed.milliseconds, "millisecond", "ms"); - add(parsed.microseconds, "microsecond", "\xB5s"); - add(parsed.nanoseconds, "nanosecond", "ns"); - } else { - const millisecondsAndBelow = parsed.milliseconds + parsed.microseconds / 1e3 + parsed.nanoseconds / 1e6; - const millisecondsDecimalDigits = typeof options.millisecondsDecimalDigits === "number" ? options.millisecondsDecimalDigits : 0; - const roundedMiliseconds = millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow); - const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : roundedMiliseconds; - add(Number.parseFloat(millisecondsString, 10), "millisecond", "ms", millisecondsString); + Subscription2.prototype.add = function(teardown) { + var _a; + if (teardown && teardown !== this) { + if (this.closed) { + execFinalizer(teardown); + } else { + if (teardown instanceof Subscription2) { + if (teardown.closed || teardown._hasParent(this)) { + return; + } + teardown._addParent(this); + } + (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown); + } + } + }; + Subscription2.prototype._hasParent = function(parent) { + var _parentage = this._parentage; + return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent); + }; + Subscription2.prototype._addParent = function(parent) { + var _parentage = this._parentage; + this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent; + }; + Subscription2.prototype._removeParent = function(parent) { + var _parentage = this._parentage; + if (_parentage === parent) { + this._parentage = null; + } else if (Array.isArray(_parentage)) { + arrRemove_1.arrRemove(_parentage, parent); + } + }; + Subscription2.prototype.remove = function(teardown) { + var _finalizers = this._finalizers; + _finalizers && arrRemove_1.arrRemove(_finalizers, teardown); + if (teardown instanceof Subscription2) { + teardown._removeParent(this); } + }; + Subscription2.EMPTY = function() { + var empty = new Subscription2(); + empty.closed = true; + return empty; + }(); + return Subscription2; + }(); + exports2.Subscription = Subscription; + exports2.EMPTY_SUBSCRIPTION = Subscription.EMPTY; + function isSubscription(value) { + return value instanceof Subscription || value && "closed" in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe); + } + exports2.isSubscription = isSubscription; + function execFinalizer(finalizer) { + if (isFunction_1.isFunction(finalizer)) { + finalizer(); } else { - const seconds = milliseconds / 1e3 % 60; - const secondsDecimalDigits = typeof options.secondsDecimalDigits === "number" ? options.secondsDecimalDigits : 1; - const secondsFixed = floorDecimals(seconds, secondsDecimalDigits); - const secondsString = options.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, ""); - add(Number.parseFloat(secondsString, 10), "second", "s", secondsString); - } - if (result.length === 0) { - return "0" + (options.verbose ? " milliseconds" : "ms"); - } - if (options.compact) { - return result[0]; - } - if (typeof options.unitCount === "number") { - const separator = options.colonNotation ? "" : " "; - return result.slice(0, Math.max(options.unitCount, 1)).join(separator); + finalizer.unsubscribe(); } - return options.colonNotation ? result.join("") : result.join(" "); - }; + } } }); -// ../../node_modules/.pnpm/ansi-regex@5.0.1/node_modules/ansi-regex/index.js -var require_ansi_regex2 = __commonJS({ - "../../node_modules/.pnpm/ansi-regex@5.0.1/node_modules/ansi-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/config.js +var require_config = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/config.js"(exports2) { "use strict"; - module2.exports = ({ onlyFirst = false } = {}) => { - const pattern = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))" - ].join("|"); - return new RegExp(pattern, onlyFirst ? void 0 : "g"); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.config = void 0; + exports2.config = { + onUnhandledError: null, + onStoppedNotification: null, + Promise: void 0, + useDeprecatedSynchronousErrorHandling: false, + useDeprecatedNextContext: false }; } }); -// ../../node_modules/.pnpm/strip-ansi@6.0.1/node_modules/strip-ansi/index.js -var require_strip_ansi = __commonJS({ - "../../node_modules/.pnpm/strip-ansi@6.0.1/node_modules/strip-ansi/index.js"(exports2, module2) { - "use strict"; - var ansiRegex = require_ansi_regex2(); - module2.exports = (string) => typeof string === "string" ? string.replace(ansiRegex(), "") : string; - } -}); - -// ../default-reporter/lib/reporterForClient/reportLifecycleScripts.js -var require_reportLifecycleScripts = __commonJS({ - "../default-reporter/lib/reporterForClient/reportLifecycleScripts.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js +var require_timeoutProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } - __setModuleDefault2(result, mod); - return result; + return ar; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var chalk_1 = __importDefault(require_source()); - var pretty_ms_1 = __importDefault(require_pretty_ms()); - var strip_ansi_1 = __importDefault(require_strip_ansi()); - var constants_1 = require_constants2(); - var formatPrefix_1 = __importStar2(require_formatPrefix()); - var outputConstants_1 = require_outputConstants(); - var NODE_MODULES = `${path_1.default.sep}node_modules${path_1.default.sep}`; - var colorWheel = ["cyan", "magenta", "blue", "yellow", "green", "red"]; - var NUM_COLORS = colorWheel.length; - var currentColor = 0; - exports2.default = (log$, opts) => { - if (opts.appendOnly) { - const streamLifecycleOutput2 = createStreamLifecycleOutput(opts.cwd); - return log$.lifecycle.pipe(operators_1.map((log2) => Rx.of({ - msg: streamLifecycleOutput2(log2) - }))); - } - const lifecycleMessages = {}; - const lifecycleStreamByDepPath = {}; - const lifecyclePushStream = new Rx.Subject(); - log$.lifecycle.forEach((log2) => { - const key = `${log2.stage}:${log2.depPath}`; - lifecycleMessages[key] = lifecycleMessages[key] || { - collapsed: log2.wd.includes(NODE_MODULES), - output: [], - startTime: process.hrtime(), - status: formatIndentedStatus(chalk_1.default.magentaBright("Running...")) - }; - const exit = typeof log2["exitCode"] === "number"; - let msg; - if (lifecycleMessages[key].collapsed) { - msg = renderCollapsedScriptOutput(log2, lifecycleMessages[key], { cwd: opts.cwd, exit, maxWidth: opts.width }); - } else { - msg = renderScriptOutput(log2, lifecycleMessages[key], { cwd: opts.cwd, exit, maxWidth: opts.width }); - } - if (exit) { - delete lifecycleMessages[key]; + exports2.timeoutProvider = void 0; + exports2.timeoutProvider = { + setTimeout: function(handler, timeout) { + var args2 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args2[_i - 2] = arguments[_i]; } - if (!lifecycleStreamByDepPath[key]) { - lifecycleStreamByDepPath[key] = new Rx.Subject(); - lifecyclePushStream.next(Rx.from(lifecycleStreamByDepPath[key])); + var delegate = exports2.timeoutProvider.delegate; + if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) { + return delegate.setTimeout.apply(delegate, __spreadArray3([handler, timeout], __read4(args2))); } - lifecycleStreamByDepPath[key].next({ msg }); - if (exit) { - lifecycleStreamByDepPath[key].complete(); + return setTimeout.apply(void 0, __spreadArray3([handler, timeout], __read4(args2))); + }, + clearTimeout: function(handle) { + var delegate = exports2.timeoutProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js +var require_reportUnhandledError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportUnhandledError = void 0; + var config_1 = require_config(); + var timeoutProvider_1 = require_timeoutProvider(); + function reportUnhandledError(err) { + timeoutProvider_1.timeoutProvider.setTimeout(function() { + var onUnhandledError = config_1.config.onUnhandledError; + if (onUnhandledError) { + onUnhandledError(err); + } else { + throw err; } }); - return Rx.from(lifecyclePushStream); - }; - function toNano(time) { - return (time[0] + time[1] / 1e9) * 1e3; } - function renderCollapsedScriptOutput(log2, messageCache, opts) { - var _a; - messageCache.label = (_a = messageCache.label) !== null && _a !== void 0 ? _a : `${highlightLastFolder(formatPrefix_1.formatPrefixNoTrim(opts.cwd, log2.wd))}: Running ${log2.stage} script`; - if (!opts.exit) { - updateMessageCache(log2, messageCache, opts); - return `${messageCache.label}...`; - } - const time = pretty_ms_1.default(toNano(process.hrtime(messageCache.startTime))); - if (log2["exitCode"] === 0) { - return `${messageCache.label}, done in ${time}`; - } - if (log2["optional"] === true) { - return `${messageCache.label}, failed in ${time} (skipped as optional)`; - } - return `${messageCache.label}, failed in ${time}${constants_1.EOL}${renderScriptOutput(log2, messageCache, opts)}`; + exports2.reportUnhandledError = reportUnhandledError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/noop.js +var require_noop = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/noop.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.noop = void 0; + function noop() { } - function renderScriptOutput(log2, messageCache, opts) { - updateMessageCache(log2, messageCache, opts); - if (opts.exit && log2["exitCode"] !== 0) { - return [ - messageCache.script, - ...messageCache.output, - messageCache.status - ].join(constants_1.EOL); - } - if (messageCache.output.length > 10) { - return [ - messageCache.script, - `[${messageCache.output.length - 10} lines collapsed]`, - ...messageCache.output.slice(messageCache.output.length - 10), - messageCache.status - ].join(constants_1.EOL); - } - return [ - messageCache.script, - ...messageCache.output, - messageCache.status - ].join(constants_1.EOL); + exports2.noop = noop; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js +var require_NotificationFactories = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNotification = exports2.nextNotification = exports2.errorNotification = exports2.COMPLETE_NOTIFICATION = void 0; + exports2.COMPLETE_NOTIFICATION = function() { + return createNotification("C", void 0, void 0); + }(); + function errorNotification(error) { + return createNotification("E", void 0, error); } - function updateMessageCache(log2, messageCache, opts) { - if (log2["script"]) { - const prefix = `${formatPrefix_1.default(opts.cwd, log2.wd)} ${outputConstants_1.hlValue(log2.stage)}`; - const maxLineWidth = opts.maxWidth - prefix.length - 2 + ANSI_ESCAPES_LENGTH_OF_PREFIX; - messageCache.script = `${prefix}$ ${cutLine(log2["script"], maxLineWidth)}`; - } else if (opts.exit) { - const time = pretty_ms_1.default(toNano(process.hrtime(messageCache.startTime))); - if (log2["exitCode"] === 0) { - messageCache.status = formatIndentedStatus(chalk_1.default.magentaBright(`Done in ${time}`)); - } else { - messageCache.status = formatIndentedStatus(chalk_1.default.red(`Failed in ${time}`)); + exports2.errorNotification = errorNotification; + function nextNotification(value) { + return createNotification("N", value, void 0); + } + exports2.nextNotification = nextNotification; + function createNotification(kind, value, error) { + return { + kind, + value, + error + }; + } + exports2.createNotification = createNotification; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/errorContext.js +var require_errorContext = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/errorContext.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.captureError = exports2.errorContext = void 0; + var config_1 = require_config(); + var context = null; + function errorContext(cb) { + if (config_1.config.useDeprecatedSynchronousErrorHandling) { + var isRoot = !context; + if (isRoot) { + context = { errorThrown: false, error: null }; + } + cb(); + if (isRoot) { + var _a = context, errorThrown = _a.errorThrown, error = _a.error; + context = null; + if (errorThrown) { + throw error; + } } } else { - messageCache.output.push(formatIndentedOutput(opts.maxWidth, log2)); + cb(); } } - function formatIndentedStatus(status) { - return `${chalk_1.default.magentaBright("\u2514\u2500")} ${status}`; - } - function highlightLastFolder(p) { - const lastSlash = p.lastIndexOf("/") + 1; - return `${chalk_1.default.gray(p.substr(0, lastSlash))}${p.substr(lastSlash)}`; - } - var ANSI_ESCAPES_LENGTH_OF_PREFIX = outputConstants_1.hlValue(" ").length - 1; - function createStreamLifecycleOutput(cwd) { - currentColor = 0; - const colorByPrefix = new Map(); - return streamLifecycleOutput.bind(null, colorByPrefix, cwd); + exports2.errorContext = errorContext; + function captureError(err) { + if (config_1.config.useDeprecatedSynchronousErrorHandling && context) { + context.errorThrown = true; + context.error = err; + } } - function streamLifecycleOutput(colorByPkg, cwd, logObj) { - const prefix = formatLifecycleScriptPrefix(colorByPkg, cwd, logObj.wd, logObj.stage); - if (typeof logObj["exitCode"] === "number") { - if (logObj["exitCode"] === 0) { - return `${prefix}: Done`; + exports2.captureError = captureError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscriber.js +var require_Subscriber = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscriber.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EMPTY_OBSERVER = exports2.SafeSubscriber = exports2.Subscriber = void 0; + var isFunction_1 = require_isFunction(); + var Subscription_1 = require_Subscription(); + var config_1 = require_config(); + var reportUnhandledError_1 = require_reportUnhandledError(); + var noop_1 = require_noop(); + var NotificationFactories_1 = require_NotificationFactories(); + var timeoutProvider_1 = require_timeoutProvider(); + var errorContext_1 = require_errorContext(); + var Subscriber = function(_super) { + __extends4(Subscriber2, _super); + function Subscriber2(destination) { + var _this = _super.call(this) || this; + _this.isStopped = false; + if (destination) { + _this.destination = destination; + if (Subscription_1.isSubscription(destination)) { + destination.add(_this); + } } else { - return `${prefix}: Failed`; + _this.destination = exports2.EMPTY_OBSERVER; } + return _this; } - if (logObj["script"]) { - return `${prefix}$ ${logObj["script"]}`; - } - const line = formatLine(Infinity, logObj); - return `${prefix}: ${line}`; - } - function formatIndentedOutput(maxWidth, logObj) { - return `${chalk_1.default.magentaBright("\u2502")} ${formatLine(maxWidth - 2, logObj)}`; + Subscriber2.create = function(next, error, complete) { + return new SafeSubscriber(next, error, complete); + }; + Subscriber2.prototype.next = function(value) { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.nextNotification(value), this); + } else { + this._next(value); + } + }; + Subscriber2.prototype.error = function(err) { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.errorNotification(err), this); + } else { + this.isStopped = true; + this._error(err); + } + }; + Subscriber2.prototype.complete = function() { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this); + } else { + this.isStopped = true; + this._complete(); + } + }; + Subscriber2.prototype.unsubscribe = function() { + if (!this.closed) { + this.isStopped = true; + _super.prototype.unsubscribe.call(this); + this.destination = null; + } + }; + Subscriber2.prototype._next = function(value) { + this.destination.next(value); + }; + Subscriber2.prototype._error = function(err) { + try { + this.destination.error(err); + } finally { + this.unsubscribe(); + } + }; + Subscriber2.prototype._complete = function() { + try { + this.destination.complete(); + } finally { + this.unsubscribe(); + } + }; + return Subscriber2; + }(Subscription_1.Subscription); + exports2.Subscriber = Subscriber; + var _bind = Function.prototype.bind; + function bind(fn2, thisArg) { + return _bind.call(fn2, thisArg); } - function formatLifecycleScriptPrefix(colorByPkg, cwd, wd, stage) { - if (!colorByPkg.has(wd)) { - const colorName = colorWheel[currentColor % NUM_COLORS]; - colorByPkg.set(wd, chalk_1.default[colorName]); - currentColor += 1; + var ConsumerObserver = function() { + function ConsumerObserver2(partialObserver) { + this.partialObserver = partialObserver; } - const color = colorByPkg.get(wd); - return `${color(formatPrefix_1.default(cwd, wd))} ${outputConstants_1.hlValue(stage)}`; - } - function formatLine(maxWidth, logObj) { - const line = cutLine(logObj["line"], maxWidth); - if (logObj["stdio"] === "stderr") { - return chalk_1.default.gray(line); + ConsumerObserver2.prototype.next = function(value) { + var partialObserver = this.partialObserver; + if (partialObserver.next) { + try { + partialObserver.next(value); + } catch (error) { + handleUnhandledError(error); + } + } + }; + ConsumerObserver2.prototype.error = function(err) { + var partialObserver = this.partialObserver; + if (partialObserver.error) { + try { + partialObserver.error(err); + } catch (error) { + handleUnhandledError(error); + } + } else { + handleUnhandledError(err); + } + }; + ConsumerObserver2.prototype.complete = function() { + var partialObserver = this.partialObserver; + if (partialObserver.complete) { + try { + partialObserver.complete(); + } catch (error) { + handleUnhandledError(error); + } + } + }; + return ConsumerObserver2; + }(); + var SafeSubscriber = function(_super) { + __extends4(SafeSubscriber2, _super); + function SafeSubscriber2(observerOrNext, error, complete) { + var _this = _super.call(this) || this; + var partialObserver; + if (isFunction_1.isFunction(observerOrNext) || !observerOrNext) { + partialObserver = { + next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : void 0, + error: error !== null && error !== void 0 ? error : void 0, + complete: complete !== null && complete !== void 0 ? complete : void 0 + }; + } else { + var context_1; + if (_this && config_1.config.useDeprecatedNextContext) { + context_1 = Object.create(observerOrNext); + context_1.unsubscribe = function() { + return _this.unsubscribe(); + }; + partialObserver = { + next: observerOrNext.next && bind(observerOrNext.next, context_1), + error: observerOrNext.error && bind(observerOrNext.error, context_1), + complete: observerOrNext.complete && bind(observerOrNext.complete, context_1) + }; + } else { + partialObserver = observerOrNext; + } + } + _this.destination = new ConsumerObserver(partialObserver); + return _this; + } + return SafeSubscriber2; + }(Subscriber); + exports2.SafeSubscriber = SafeSubscriber; + function handleUnhandledError(error) { + if (config_1.config.useDeprecatedSynchronousErrorHandling) { + errorContext_1.captureError(error); + } else { + reportUnhandledError_1.reportUnhandledError(error); } - return line; } - function cutLine(line, maxLength) { - return strip_ansi_1.default(line).substr(0, maxLength); + function defaultErrorHandler(err) { + throw err; + } + function handleStoppedNotification(notification, subscriber) { + var onStoppedNotification = config_1.config.onStoppedNotification; + onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function() { + return onStoppedNotification(notification, subscriber); + }); } + exports2.EMPTY_OBSERVER = { + closed: true, + next: noop_1.noop, + error: defaultErrorHandler, + complete: noop_1.noop + }; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry2.js -var require_curry2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry2.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _isPlaceholder = require_isPlaceholder(); - function _curry2(fn2) { - return function f2(a, b) { - switch (arguments.length) { - case 0: - return f2; - case 1: - return _isPlaceholder(a) ? f2 : _curry1(function(_b) { - return fn2(a, _b); - }); - default: - return _isPlaceholder(a) && _isPlaceholder(b) ? f2 : _isPlaceholder(a) ? _curry1(function(_a) { - return fn2(_a, b); - }) : _isPlaceholder(b) ? _curry1(function(_b) { - return fn2(a, _b); - }) : fn2(a, b); - } - }; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/observable.js +var require_observable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/observable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observable = void 0; + exports2.observable = function() { + return typeof Symbol === "function" && Symbol.observable || "@@observable"; + }(); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/identity.js +var require_identity = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/identity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.identity = void 0; + function identity(x) { + return x; } - module2.exports = _curry2; + exports2.identity = identity; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_arrayFromIterator.js -var require_arrayFromIterator = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_arrayFromIterator.js"(exports2, module2) { - function _arrayFromIterator(iter) { - var list = []; - var next; - while (!(next = iter.next()).done) { - list.push(next.value); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/pipe.js +var require_pipe = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/pipe.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pipeFromArray = exports2.pipe = void 0; + var identity_1 = require_identity(); + function pipe() { + var fns = []; + for (var _i = 0; _i < arguments.length; _i++) { + fns[_i] = arguments[_i]; } - return list; + return pipeFromArray(fns); } - module2.exports = _arrayFromIterator; + exports2.pipe = pipe; + function pipeFromArray(fns) { + if (fns.length === 0) { + return identity_1.identity; + } + if (fns.length === 1) { + return fns[0]; + } + return function piped(input) { + return fns.reduce(function(prev, fn2) { + return fn2(prev); + }, input); + }; + } + exports2.pipeFromArray = pipeFromArray; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_includesWith.js -var require_includesWith = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_includesWith.js"(exports2, module2) { - function _includesWith(pred, x, list) { - var idx = 0; - var len = list.length; - while (idx < len) { - if (pred(x, list[idx])) { - return true; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Observable.js +var require_Observable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Observable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Observable = void 0; + var Subscriber_1 = require_Subscriber(); + var Subscription_1 = require_Subscription(); + var observable_1 = require_observable(); + var pipe_1 = require_pipe(); + var config_1 = require_config(); + var isFunction_1 = require_isFunction(); + var errorContext_1 = require_errorContext(); + var Observable = function() { + function Observable2(subscribe) { + if (subscribe) { + this._subscribe = subscribe; } - idx += 1; } - return false; + Observable2.prototype.lift = function(operator) { + var observable = new Observable2(); + observable.source = this; + observable.operator = operator; + return observable; + }; + Observable2.prototype.subscribe = function(observerOrNext, error, complete) { + var _this = this; + var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete); + errorContext_1.errorContext(function() { + var _a = _this, operator = _a.operator, source = _a.source; + subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber)); + }); + return subscriber; + }; + Observable2.prototype._trySubscribe = function(sink) { + try { + return this._subscribe(sink); + } catch (err) { + sink.error(err); + } + }; + Observable2.prototype.forEach = function(next, promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function(resolve, reject) { + var subscriber = new Subscriber_1.SafeSubscriber({ + next: function(value) { + try { + next(value); + } catch (err) { + reject(err); + subscriber.unsubscribe(); + } + }, + error: reject, + complete: resolve + }); + _this.subscribe(subscriber); + }); + }; + Observable2.prototype._subscribe = function(subscriber) { + var _a; + return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber); + }; + Observable2.prototype[observable_1.observable] = function() { + return this; + }; + Observable2.prototype.pipe = function() { + var operations = []; + for (var _i = 0; _i < arguments.length; _i++) { + operations[_i] = arguments[_i]; + } + return pipe_1.pipeFromArray(operations)(this); + }; + Observable2.prototype.toPromise = function(promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function(resolve, reject) { + var value; + _this.subscribe(function(x) { + return value = x; + }, function(err) { + return reject(err); + }, function() { + return resolve(value); + }); + }); + }; + Observable2.create = function(subscribe) { + return new Observable2(subscribe); + }; + return Observable2; + }(); + exports2.Observable = Observable; + function getPromiseCtor(promiseCtor) { + var _a; + return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a !== void 0 ? _a : Promise; + } + function isObserver(value) { + return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete); + } + function isSubscriber(value) { + return value && value instanceof Subscriber_1.Subscriber || isObserver(value) && Subscription_1.isSubscription(value); } - module2.exports = _includesWith; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_functionName.js -var require_functionName = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_functionName.js"(exports2, module2) { - function _functionName(f) { - var match = String(f).match(/^function (\w*)/); - return match == null ? "" : match[1]; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/lift.js +var require_lift = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/lift.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.operate = exports2.hasLift = void 0; + var isFunction_1 = require_isFunction(); + function hasLift(source) { + return isFunction_1.isFunction(source === null || source === void 0 ? void 0 : source.lift); } - module2.exports = _functionName; + exports2.hasLift = hasLift; + function operate(init) { + return function(source) { + if (hasLift(source)) { + return source.lift(function(liftedSource) { + try { + return init(liftedSource, this); + } catch (err) { + this.error(err); + } + }); + } + throw new TypeError("Unable to lift unknown Observable type"); + }; + } + exports2.operate = operate; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_has.js -var require_has = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_has.js"(exports2, module2) { - function _has(prop, obj) { - return Object.prototype.hasOwnProperty.call(obj, prop); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js +var require_OperatorSubscriber = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OperatorSubscriber = exports2.createOperatorSubscriber = void 0; + var Subscriber_1 = require_Subscriber(); + function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) { + return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize); } - module2.exports = _has; + exports2.createOperatorSubscriber = createOperatorSubscriber; + var OperatorSubscriber = function(_super) { + __extends4(OperatorSubscriber2, _super); + function OperatorSubscriber2(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) { + var _this = _super.call(this, destination) || this; + _this.onFinalize = onFinalize; + _this.shouldUnsubscribe = shouldUnsubscribe; + _this._next = onNext ? function(value) { + try { + onNext(value); + } catch (err) { + destination.error(err); + } + } : _super.prototype._next; + _this._error = onError ? function(err) { + try { + onError(err); + } catch (err2) { + destination.error(err2); + } finally { + this.unsubscribe(); + } + } : _super.prototype._error; + _this._complete = onComplete ? function() { + try { + onComplete(); + } catch (err) { + destination.error(err); + } finally { + this.unsubscribe(); + } + } : _super.prototype._complete; + return _this; + } + OperatorSubscriber2.prototype.unsubscribe = function() { + var _a; + if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) { + var closed_1 = this.closed; + _super.prototype.unsubscribe.call(this); + !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this)); + } + }; + return OperatorSubscriber2; + }(Subscriber_1.Subscriber); + exports2.OperatorSubscriber = OperatorSubscriber; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_objectIs.js -var require_objectIs = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_objectIs.js"(exports2, module2) { - function _objectIs(a, b) { - if (a === b) { - return a !== 0 || 1 / a === 1 / b; - } else { - return a !== a && b !== b; - } +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/refCount.js +var require_refCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/refCount.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.refCount = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function refCount() { + return lift_1.operate(function(source, subscriber) { + var connection = null; + source._refCount++; + var refCounter = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, void 0, function() { + if (!source || source._refCount <= 0 || 0 < --source._refCount) { + connection = null; + return; + } + var sharedConnection = source._connection; + var conn = connection; + connection = null; + if (sharedConnection && (!conn || sharedConnection === conn)) { + sharedConnection.unsubscribe(); + } + subscriber.unsubscribe(); + }); + source.subscribe(refCounter); + if (!refCounter.closed) { + connection = source.connect(); + } + }); } - module2.exports = typeof Object.is === "function" ? Object.is : _objectIs; + exports2.refCount = refCount; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArguments.js -var require_isArguments = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArguments.js"(exports2, module2) { - var _has = require_has(); - var toString = Object.prototype.toString; - var _isArguments = /* @__PURE__ */ function() { - return toString.call(arguments) === "[object Arguments]" ? function _isArguments2(x) { - return toString.call(x) === "[object Arguments]"; - } : function _isArguments2(x) { - return _has("callee", x); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js +var require_ConnectableObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; }(); - module2.exports = _isArguments; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/keys.js -var require_keys = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/keys.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _has = require_has(); - var _isArguments = require_isArguments(); - var hasEnumBug = !/* @__PURE__ */ { - toString: null - }.propertyIsEnumerable("toString"); - var nonEnumerableProps = ["constructor", "valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"]; - var hasArgsEnumBug = /* @__PURE__ */ function() { - "use strict"; - return arguments.propertyIsEnumerable("length"); - }(); - var contains = function contains2(list, item) { - var idx = 0; - while (idx < list.length) { - if (list[idx] === item) { - return true; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConnectableObservable = void 0; + var Observable_1 = require_Observable(); + var Subscription_1 = require_Subscription(); + var refCount_1 = require_refCount(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var lift_1 = require_lift(); + var ConnectableObservable = function(_super) { + __extends4(ConnectableObservable2, _super); + function ConnectableObservable2(source, subjectFactory) { + var _this = _super.call(this) || this; + _this.source = source; + _this.subjectFactory = subjectFactory; + _this._subject = null; + _this._refCount = 0; + _this._connection = null; + if (lift_1.hasLift(source)) { + _this.lift = source.lift; } - idx += 1; - } - return false; - }; - var keys = typeof Object.keys === "function" && !hasArgsEnumBug ? /* @__PURE__ */ _curry1(function keys2(obj) { - return Object(obj) !== obj ? [] : Object.keys(obj); - }) : /* @__PURE__ */ _curry1(function keys2(obj) { - if (Object(obj) !== obj) { - return []; + return _this; } - var prop, nIdx; - var ks = []; - var checkArgsLength = hasArgsEnumBug && _isArguments(obj); - for (prop in obj) { - if (_has(prop, obj) && (!checkArgsLength || prop !== "length")) { - ks[ks.length] = prop; + ConnectableObservable2.prototype._subscribe = function(subscriber) { + return this.getSubject().subscribe(subscriber); + }; + ConnectableObservable2.prototype.getSubject = function() { + var subject = this._subject; + if (!subject || subject.isStopped) { + this._subject = this.subjectFactory(); } - } - if (hasEnumBug) { - nIdx = nonEnumerableProps.length - 1; - while (nIdx >= 0) { - prop = nonEnumerableProps[nIdx]; - if (_has(prop, obj) && !contains(ks, prop)) { - ks[ks.length] = prop; + return this._subject; + }; + ConnectableObservable2.prototype._teardown = function() { + this._refCount = 0; + var _connection = this._connection; + this._subject = this._connection = null; + _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe(); + }; + ConnectableObservable2.prototype.connect = function() { + var _this = this; + var connection = this._connection; + if (!connection) { + connection = this._connection = new Subscription_1.Subscription(); + var subject_1 = this.getSubject(); + connection.add(this.source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subject_1, void 0, function() { + _this._teardown(); + subject_1.complete(); + }, function(err) { + _this._teardown(); + subject_1.error(err); + }, function() { + return _this._teardown(); + }))); + if (connection.closed) { + this._connection = null; + connection = Subscription_1.Subscription.EMPTY; } - nIdx -= 1; } - } - return ks; - }); - module2.exports = keys; + return connection; + }; + ConnectableObservable2.prototype.refCount = function() { + return refCount_1.refCount()(this); + }; + return ConnectableObservable2; + }(Observable_1.Observable); + exports2.ConnectableObservable = ConnectableObservable; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/type.js -var require_type = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/type.js"(exports2, module2) { - var _curry1 = require_curry1(); - var type = /* @__PURE__ */ _curry1(function type2(val) { - return val === null ? "Null" : val === void 0 ? "Undefined" : Object.prototype.toString.call(val).slice(8, -1); - }); - module2.exports = type; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js +var require_performanceTimestampProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.performanceTimestampProvider = void 0; + exports2.performanceTimestampProvider = { + now: function() { + return (exports2.performanceTimestampProvider.delegate || performance).now(); + }, + delegate: void 0 + }; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_equals.js -var require_equals = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_equals.js"(exports2, module2) { - var _arrayFromIterator = require_arrayFromIterator(); - var _includesWith = require_includesWith(); - var _functionName = require_functionName(); - var _has = require_has(); - var _objectIs = require_objectIs(); - var keys = require_keys(); - var type = require_type(); - function _uniqContentEquals(aIterator, bIterator, stackA, stackB) { - var a = _arrayFromIterator(aIterator); - var b = _arrayFromIterator(bIterator); - function eq(_a, _b) { - return _equals(_a, _b, stackA.slice(), stackB.slice()); - } - return !_includesWith(function(b2, aItem) { - return !_includesWith(eq, aItem, b2); - }, b, a); - } - function _equals(a, b, stackA, stackB) { - if (_objectIs(a, b)) { - return true; - } - var typeA = type(a); - if (typeA !== type(b)) { - return false; - } - if (a == null || b == null) { - return false; - } - if (typeof a["fantasy-land/equals"] === "function" || typeof b["fantasy-land/equals"] === "function") { - return typeof a["fantasy-land/equals"] === "function" && a["fantasy-land/equals"](b) && typeof b["fantasy-land/equals"] === "function" && b["fantasy-land/equals"](a); - } - if (typeof a.equals === "function" || typeof b.equals === "function") { - return typeof a.equals === "function" && a.equals(b) && typeof b.equals === "function" && b.equals(a); - } - switch (typeA) { - case "Arguments": - case "Array": - case "Object": - if (typeof a.constructor === "function" && _functionName(a.constructor) === "Promise") { - return a === b; - } - break; - case "Boolean": - case "Number": - case "String": - if (!(typeof a === typeof b && _objectIs(a.valueOf(), b.valueOf()))) { - return false; - } - break; - case "Date": - if (!_objectIs(a.valueOf(), b.valueOf())) { - return false; - } - break; - case "Error": - return a.name === b.name && a.message === b.message; - case "RegExp": - if (!(a.source === b.source && a.global === b.global && a.ignoreCase === b.ignoreCase && a.multiline === b.multiline && a.sticky === b.sticky && a.unicode === b.unicode)) { - return false; - } - break; - } - var idx = stackA.length - 1; - while (idx >= 0) { - if (stackA[idx] === a) { - return stackB[idx] === b; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js +var require_animationFrameProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } - idx -= 1; } - switch (typeA) { - case "Map": - if (a.size !== b.size) { - return false; + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrameProvider = void 0; + var Subscription_1 = require_Subscription(); + exports2.animationFrameProvider = { + schedule: function(callback) { + var request = requestAnimationFrame; + var cancel = cancelAnimationFrame; + var delegate = exports2.animationFrameProvider.delegate; + if (delegate) { + request = delegate.requestAnimationFrame; + cancel = delegate.cancelAnimationFrame; + } + var handle = request(function(timestamp) { + cancel = void 0; + callback(timestamp); + }); + return new Subscription_1.Subscription(function() { + return cancel === null || cancel === void 0 ? void 0 : cancel(handle); + }); + }, + requestAnimationFrame: function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + var delegate = exports2.animationFrameProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray3([], __read4(args2))); + }, + cancelAnimationFrame: function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + var delegate = exports2.animationFrameProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray3([], __read4(args2))); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js +var require_animationFrames = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrames = void 0; + var Observable_1 = require_Observable(); + var performanceTimestampProvider_1 = require_performanceTimestampProvider(); + var animationFrameProvider_1 = require_animationFrameProvider(); + function animationFrames(timestampProvider) { + return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES; + } + exports2.animationFrames = animationFrames; + function animationFramesFactory(timestampProvider) { + return new Observable_1.Observable(function(subscriber) { + var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider; + var start = provider.now(); + var id = 0; + var run = function() { + if (!subscriber.closed) { + id = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function(timestamp) { + id = 0; + var now = provider.now(); + subscriber.next({ + timestamp: timestampProvider ? now : timestamp, + elapsed: now - start + }); + run(); + }); } - return _uniqContentEquals(a.entries(), b.entries(), stackA.concat([a]), stackB.concat([b])); - case "Set": - if (a.size !== b.size) { - return false; + }; + run(); + return function() { + if (id) { + animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); } - return _uniqContentEquals(a.values(), b.values(), stackA.concat([a]), stackB.concat([b])); - case "Arguments": - case "Array": - case "Object": - case "Boolean": - case "Number": - case "String": - case "Date": - case "Error": - case "RegExp": - case "Int8Array": - case "Uint8Array": - case "Uint8ClampedArray": - case "Int16Array": - case "Uint16Array": - case "Int32Array": - case "Uint32Array": - case "Float32Array": - case "Float64Array": - case "ArrayBuffer": - break; - default: - return false; - } - var keysA = keys(a); - if (keysA.length !== keys(b).length) { - return false; - } - var extendedStackA = stackA.concat([a]); - var extendedStackB = stackB.concat([b]); - idx = keysA.length - 1; - while (idx >= 0) { - var key = keysA[idx]; - if (!(_has(key, b) && _equals(b[key], a[key], extendedStackA, extendedStackB))) { - return false; - } - idx -= 1; - } - return true; + }; + }); } - module2.exports = _equals; + var DEFAULT_ANIMATION_FRAMES = animationFramesFactory(); } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/equals.js -var require_equals2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/equals.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _equals = require_equals(); - var equals = /* @__PURE__ */ _curry2(function equals2(a, b) { - return _equals(a, b, [], []); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js +var require_ObjectUnsubscribedError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ObjectUnsubscribedError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function(_super) { + return function ObjectUnsubscribedErrorImpl() { + _super(this); + this.name = "ObjectUnsubscribedError"; + this.message = "object unsubscribed"; + }; }); - module2.exports = equals; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64.js -var require_base64 = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64.js"(exports2) { - var intToCharMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""); - exports2.encode = function(number) { - if (0 <= number && number < intToCharMap.length) { - return intToCharMap[number]; - } - throw new TypeError("Must be between 0 and 63: " + number); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subject.js +var require_Subject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subject.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; - exports2.decode = function(charCode) { - var bigA = 65; - var bigZ = 90; - var littleA = 97; - var littleZ = 122; - var zero = 48; - var nine = 57; - var plus = 43; - var slash = 47; - var littleOffset = 26; - var numberOffset = 52; - if (bigA <= charCode && charCode <= bigZ) { - return charCode - bigA; - } - if (littleA <= charCode && charCode <= littleZ) { - return charCode - littleA + littleOffset; - } - if (zero <= charCode && charCode <= nine) { - return charCode - zero + numberOffset; - } - if (charCode == plus) { - return 62; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnonymousSubject = exports2.Subject = void 0; + var Observable_1 = require_Observable(); + var Subscription_1 = require_Subscription(); + var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); + var arrRemove_1 = require_arrRemove(); + var errorContext_1 = require_errorContext(); + var Subject = function(_super) { + __extends4(Subject2, _super); + function Subject2() { + var _this = _super.call(this) || this; + _this.closed = false; + _this.currentObservers = null; + _this.observers = []; + _this.isStopped = false; + _this.hasError = false; + _this.thrownError = null; + return _this; } - if (charCode == slash) { - return 63; + Subject2.prototype.lift = function(operator) { + var subject = new AnonymousSubject(this, this); + subject.operator = operator; + return subject; + }; + Subject2.prototype._throwIfClosed = function() { + if (this.closed) { + throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError(); + } + }; + Subject2.prototype.next = function(value) { + var _this = this; + errorContext_1.errorContext(function() { + var e_1, _a; + _this._throwIfClosed(); + if (!_this.isStopped) { + if (!_this.currentObservers) { + _this.currentObservers = Array.from(_this.observers); + } + try { + for (var _b = __values4(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) { + var observer = _c.value; + observer.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (_c && !_c.done && (_a = _b.return)) + _a.call(_b); + } finally { + if (e_1) + throw e_1.error; + } + } + } + }); + }; + Subject2.prototype.error = function(err) { + var _this = this; + errorContext_1.errorContext(function() { + _this._throwIfClosed(); + if (!_this.isStopped) { + _this.hasError = _this.isStopped = true; + _this.thrownError = err; + var observers = _this.observers; + while (observers.length) { + observers.shift().error(err); + } + } + }); + }; + Subject2.prototype.complete = function() { + var _this = this; + errorContext_1.errorContext(function() { + _this._throwIfClosed(); + if (!_this.isStopped) { + _this.isStopped = true; + var observers = _this.observers; + while (observers.length) { + observers.shift().complete(); + } + } + }); + }; + Subject2.prototype.unsubscribe = function() { + this.isStopped = this.closed = true; + this.observers = this.currentObservers = null; + }; + Object.defineProperty(Subject2.prototype, "observed", { + get: function() { + var _a; + return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0; + }, + enumerable: false, + configurable: true + }); + Subject2.prototype._trySubscribe = function(subscriber) { + this._throwIfClosed(); + return _super.prototype._trySubscribe.call(this, subscriber); + }; + Subject2.prototype._subscribe = function(subscriber) { + this._throwIfClosed(); + this._checkFinalizedStatuses(subscriber); + return this._innerSubscribe(subscriber); + }; + Subject2.prototype._innerSubscribe = function(subscriber) { + var _this = this; + var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers; + if (hasError || isStopped) { + return Subscription_1.EMPTY_SUBSCRIPTION; + } + this.currentObservers = null; + observers.push(subscriber); + return new Subscription_1.Subscription(function() { + _this.currentObservers = null; + arrRemove_1.arrRemove(observers, subscriber); + }); + }; + Subject2.prototype._checkFinalizedStatuses = function(subscriber) { + var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped; + if (hasError) { + subscriber.error(thrownError); + } else if (isStopped) { + subscriber.complete(); + } + }; + Subject2.prototype.asObservable = function() { + var observable = new Observable_1.Observable(); + observable.source = this; + return observable; + }; + Subject2.create = function(destination, source) { + return new AnonymousSubject(destination, source); + }; + return Subject2; + }(Observable_1.Observable); + exports2.Subject = Subject; + var AnonymousSubject = function(_super) { + __extends4(AnonymousSubject2, _super); + function AnonymousSubject2(destination, source) { + var _this = _super.call(this) || this; + _this.destination = destination; + _this.source = source; + return _this; } - return -1; - }; + AnonymousSubject2.prototype.next = function(value) { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value); + }; + AnonymousSubject2.prototype.error = function(err) { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err); + }; + AnonymousSubject2.prototype.complete = function() { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a); + }; + AnonymousSubject2.prototype._subscribe = function(subscriber) { + var _a, _b; + return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION; + }; + return AnonymousSubject2; + }(Subject); + exports2.AnonymousSubject = AnonymousSubject; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64-vlq.js -var require_base64_vlq = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64-vlq.js"(exports2) { - var base64 = require_base64(); - var VLQ_BASE_SHIFT = 5; - var VLQ_BASE = 1 << VLQ_BASE_SHIFT; - var VLQ_BASE_MASK = VLQ_BASE - 1; - var VLQ_CONTINUATION_BIT = VLQ_BASE; - function toVLQSigned(aValue) { - return aValue < 0 ? (-aValue << 1) + 1 : (aValue << 1) + 0; - } - function fromVLQSigned(aValue) { - var isNegative = (aValue & 1) === 1; - var shifted = aValue >> 1; - return isNegative ? -shifted : shifted; - } - exports2.encode = function base64VLQ_encode(aValue) { - var encoded = ""; - var digit; - var vlq = toVLQSigned(aValue); - do { - digit = vlq & VLQ_BASE_MASK; - vlq >>>= VLQ_BASE_SHIFT; - if (vlq > 0) { - digit |= VLQ_CONTINUATION_BIT; - } - encoded += base64.encode(digit); - } while (vlq > 0); - return encoded; - }; - exports2.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { - var strLen = aStr.length; - var result = 0; - var shift = 0; - var continuation, digit; - do { - if (aIndex >= strLen) { - throw new Error("Expected more digits in base 64 VLQ value."); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js +var require_BehaviorSubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - digit = base64.decode(aStr.charCodeAt(aIndex++)); - if (digit === -1) { - throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1)); + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BehaviorSubject = void 0; + var Subject_1 = require_Subject(); + var BehaviorSubject = function(_super) { + __extends4(BehaviorSubject2, _super); + function BehaviorSubject2(_value) { + var _this = _super.call(this) || this; + _this._value = _value; + return _this; + } + Object.defineProperty(BehaviorSubject2.prototype, "value", { + get: function() { + return this.getValue(); + }, + enumerable: false, + configurable: true + }); + BehaviorSubject2.prototype._subscribe = function(subscriber) { + var subscription = _super.prototype._subscribe.call(this, subscriber); + !subscription.closed && subscriber.next(this._value); + return subscription; + }; + BehaviorSubject2.prototype.getValue = function() { + var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value; + if (hasError) { + throw thrownError; } - continuation = !!(digit & VLQ_CONTINUATION_BIT); - digit &= VLQ_BASE_MASK; - result = result + (digit << shift); - shift += VLQ_BASE_SHIFT; - } while (continuation); - aOutParam.value = fromVLQSigned(result); - aOutParam.rest = aIndex; + this._throwIfClosed(); + return _value; + }; + BehaviorSubject2.prototype.next = function(value) { + _super.prototype.next.call(this, this._value = value); + }; + return BehaviorSubject2; + }(Subject_1.Subject); + exports2.BehaviorSubject = BehaviorSubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js +var require_dateTimestampProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dateTimestampProvider = void 0; + exports2.dateTimestampProvider = { + now: function() { + return (exports2.dateTimestampProvider.delegate || Date).now(); + }, + delegate: void 0 }; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/util.js -var require_util3 = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/util.js"(exports2) { - function getArg(aArgs, aName, aDefaultValue) { - if (aName in aArgs) { - return aArgs[aName]; - } else if (arguments.length === 3) { - return aDefaultValue; - } else { - throw new Error('"' + aName + '" is a required argument.'); - } - } - exports2.getArg = getArg; - var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/; - var dataUrlRegexp = /^data:.+\,.+$/; - function urlParse(aUrl) { - var match = aUrl.match(urlRegexp); - if (!match) { - return null; - } - return { - scheme: match[1], - auth: match[2], - host: match[3], - port: match[4], - path: match[5] +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js +var require_ReplaySubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); }; - } - exports2.urlParse = urlParse; - function urlGenerate(aParsedUrl) { - var url = ""; - if (aParsedUrl.scheme) { - url += aParsedUrl.scheme + ":"; - } - url += "//"; - if (aParsedUrl.auth) { - url += aParsedUrl.auth + "@"; - } - if (aParsedUrl.host) { - url += aParsedUrl.host; - } - if (aParsedUrl.port) { - url += ":" + aParsedUrl.port; - } - if (aParsedUrl.path) { - url += aParsedUrl.path; - } - return url; - } - exports2.urlGenerate = urlGenerate; - function normalize(aPath) { - var path = aPath; - var url = urlParse(aPath); - if (url) { - if (!url.path) { - return aPath; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - path = url.path; - } - var isAbsolute = exports2.isAbsolute(path); - var parts = path.split(/\/+/); - for (var part, up = 0, i = parts.length - 1; i >= 0; i--) { - part = parts[i]; - if (part === ".") { - parts.splice(i, 1); - } else if (part === "..") { - up++; - } else if (up > 0) { - if (part === "") { - parts.splice(i + 1, up); - up = 0; - } else { - parts.splice(i, 2); - up--; - } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ReplaySubject = void 0; + var Subject_1 = require_Subject(); + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var ReplaySubject = function(_super) { + __extends4(ReplaySubject2, _super); + function ReplaySubject2(_bufferSize, _windowTime, _timestampProvider) { + if (_bufferSize === void 0) { + _bufferSize = Infinity; } - } - path = parts.join("/"); - if (path === "") { - path = isAbsolute ? "/" : "."; - } - if (url) { - url.path = path; - return urlGenerate(url); - } - return path; - } - exports2.normalize = normalize; - function join(aRoot, aPath) { - if (aRoot === "") { - aRoot = "."; - } - if (aPath === "") { - aPath = "."; - } - var aPathUrl = urlParse(aPath); - var aRootUrl = urlParse(aRoot); - if (aRootUrl) { - aRoot = aRootUrl.path || "/"; - } - if (aPathUrl && !aPathUrl.scheme) { - if (aRootUrl) { - aPathUrl.scheme = aRootUrl.scheme; + if (_windowTime === void 0) { + _windowTime = Infinity; } - return urlGenerate(aPathUrl); - } - if (aPathUrl || aPath.match(dataUrlRegexp)) { - return aPath; - } - if (aRootUrl && !aRootUrl.host && !aRootUrl.path) { - aRootUrl.host = aPath; - return urlGenerate(aRootUrl); - } - var joined = aPath.charAt(0) === "/" ? aPath : normalize(aRoot.replace(/\/+$/, "") + "/" + aPath); - if (aRootUrl) { - aRootUrl.path = joined; - return urlGenerate(aRootUrl); - } - return joined; - } - exports2.join = join; - exports2.isAbsolute = function(aPath) { - return aPath.charAt(0) === "/" || urlRegexp.test(aPath); - }; - function relative2(aRoot, aPath) { - if (aRoot === "") { - aRoot = "."; + if (_timestampProvider === void 0) { + _timestampProvider = dateTimestampProvider_1.dateTimestampProvider; + } + var _this = _super.call(this) || this; + _this._bufferSize = _bufferSize; + _this._windowTime = _windowTime; + _this._timestampProvider = _timestampProvider; + _this._buffer = []; + _this._infiniteTimeWindow = true; + _this._infiniteTimeWindow = _windowTime === Infinity; + _this._bufferSize = Math.max(1, _bufferSize); + _this._windowTime = Math.max(1, _windowTime); + return _this; } - aRoot = aRoot.replace(/\/$/, ""); - var level = 0; - while (aPath.indexOf(aRoot + "/") !== 0) { - var index = aRoot.lastIndexOf("/"); - if (index < 0) { - return aPath; + ReplaySubject2.prototype.next = function(value) { + var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime; + if (!isStopped) { + _buffer.push(value); + !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime); } - aRoot = aRoot.slice(0, index); - if (aRoot.match(/^([^\/]+:\/)?\/*$/)) { - return aPath; + this._trimBuffer(); + _super.prototype.next.call(this, value); + }; + ReplaySubject2.prototype._subscribe = function(subscriber) { + this._throwIfClosed(); + this._trimBuffer(); + var subscription = this._innerSubscribe(subscriber); + var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer; + var copy = _buffer.slice(); + for (var i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) { + subscriber.next(copy[i]); } - ++level; - } - return Array(level + 1).join("../") + aPath.substr(aRoot.length + 1); - } - exports2.relative = relative2; - var supportsNullProto = function() { - var obj = Object.create(null); - return !("__proto__" in obj); + this._checkFinalizedStatuses(subscriber); + return subscription; + }; + ReplaySubject2.prototype._trimBuffer = function() { + var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow; + var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize; + _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize); + if (!_infiniteTimeWindow) { + var now = _timestampProvider.now(); + var last = 0; + for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) { + last = i; + } + last && _buffer.splice(0, last + 1); + } + }; + return ReplaySubject2; + }(Subject_1.Subject); + exports2.ReplaySubject = ReplaySubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js +var require_AsyncSubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; }(); - function identity(s) { - return s; - } - function toSetString(aStr) { - if (isProtoString(aStr)) { - return "$" + aStr; - } - return aStr; - } - exports2.toSetString = supportsNullProto ? identity : toSetString; - function fromSetString(aStr) { - if (isProtoString(aStr)) { - return aStr.slice(1); - } - return aStr; - } - exports2.fromSetString = supportsNullProto ? identity : fromSetString; - function isProtoString(s) { - if (!s) { - return false; - } - var length = s.length; - if (length < 9) { - return false; - } - if (s.charCodeAt(length - 1) !== 95 || s.charCodeAt(length - 2) !== 95 || s.charCodeAt(length - 3) !== 111 || s.charCodeAt(length - 4) !== 116 || s.charCodeAt(length - 5) !== 111 || s.charCodeAt(length - 6) !== 114 || s.charCodeAt(length - 7) !== 112 || s.charCodeAt(length - 8) !== 95 || s.charCodeAt(length - 9) !== 95) { - return false; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncSubject = void 0; + var Subject_1 = require_Subject(); + var AsyncSubject = function(_super) { + __extends4(AsyncSubject2, _super); + function AsyncSubject2() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this._value = null; + _this._hasValue = false; + _this._isComplete = false; + return _this; } - for (var i = length - 10; i >= 0; i--) { - if (s.charCodeAt(i) !== 36) { - return false; + AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber) { + var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete; + if (hasError) { + subscriber.error(thrownError); + } else if (isStopped || _isComplete) { + _hasValue && subscriber.next(_value); + subscriber.complete(); } - } - return true; - } - function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) { - var cmp = strcmp(mappingA.source, mappingB.source); - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalLine - mappingB.originalLine; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalColumn - mappingB.originalColumn; - if (cmp !== 0 || onlyCompareOriginal) { - return cmp; - } - cmp = mappingA.generatedColumn - mappingB.generatedColumn; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.generatedLine - mappingB.generatedLine; - if (cmp !== 0) { - return cmp; - } - return strcmp(mappingA.name, mappingB.name); - } - exports2.compareByOriginalPositions = compareByOriginalPositions; - function compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) { - var cmp = mappingA.generatedLine - mappingB.generatedLine; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.generatedColumn - mappingB.generatedColumn; - if (cmp !== 0 || onlyCompareGenerated) { - return cmp; - } - cmp = strcmp(mappingA.source, mappingB.source); - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalLine - mappingB.originalLine; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalColumn - mappingB.originalColumn; - if (cmp !== 0) { - return cmp; - } - return strcmp(mappingA.name, mappingB.name); - } - exports2.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated; - function strcmp(aStr1, aStr2) { - if (aStr1 === aStr2) { - return 0; - } - if (aStr1 === null) { - return 1; - } - if (aStr2 === null) { - return -1; - } - if (aStr1 > aStr2) { - return 1; - } - return -1; - } - function compareByGeneratedPositionsInflated(mappingA, mappingB) { - var cmp = mappingA.generatedLine - mappingB.generatedLine; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.generatedColumn - mappingB.generatedColumn; - if (cmp !== 0) { - return cmp; - } - cmp = strcmp(mappingA.source, mappingB.source); - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalLine - mappingB.originalLine; - if (cmp !== 0) { - return cmp; - } - cmp = mappingA.originalColumn - mappingB.originalColumn; - if (cmp !== 0) { - return cmp; - } - return strcmp(mappingA.name, mappingB.name); - } - exports2.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated; - function parseSourceMapInput(str) { - return JSON.parse(str.replace(/^\)]}'[^\n]*\n/, "")); - } - exports2.parseSourceMapInput = parseSourceMapInput; - function computeSourceURL(sourceRoot, sourceURL, sourceMapURL) { - sourceURL = sourceURL || ""; - if (sourceRoot) { - if (sourceRoot[sourceRoot.length - 1] !== "/" && sourceURL[0] !== "/") { - sourceRoot += "/"; + }; + AsyncSubject2.prototype.next = function(value) { + if (!this.isStopped) { + this._value = value; + this._hasValue = true; } - sourceURL = sourceRoot + sourceURL; - } - if (sourceMapURL) { - var parsed = urlParse(sourceMapURL); - if (!parsed) { - throw new Error("sourceMapURL could not be parsed"); + }; + AsyncSubject2.prototype.complete = function() { + var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete; + if (!_isComplete) { + this._isComplete = true; + _hasValue && _super.prototype.next.call(this, _value); + _super.prototype.complete.call(this); } - if (parsed.path) { - var index = parsed.path.lastIndexOf("/"); - if (index >= 0) { - parsed.path = parsed.path.substring(0, index + 1); - } + }; + return AsyncSubject2; + }(Subject_1.Subject); + exports2.AsyncSubject = AsyncSubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js +var require_Action = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - sourceURL = join(urlGenerate(parsed), sourceURL); + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Action = void 0; + var Subscription_1 = require_Subscription(); + var Action = function(_super) { + __extends4(Action2, _super); + function Action2(scheduler, work) { + return _super.call(this) || this; } - return normalize(sourceURL); - } - exports2.computeSourceURL = computeSourceURL; + Action2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; + } + return this; + }; + return Action2; + }(Subscription_1.Subscription); + exports2.Action = Action; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/array-set.js -var require_array_set = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/array-set.js"(exports2) { - var util = require_util3(); - var has = Object.prototype.hasOwnProperty; - var hasNativeMap = typeof Map !== "undefined"; - function ArraySet() { - this._array = []; - this._set = hasNativeMap ? new Map() : Object.create(null); - } - ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) { - var set = new ArraySet(); - for (var i = 0, len = aArray.length; i < len; i++) { - set.add(aArray[i], aAllowDuplicates); - } - return set; - }; - ArraySet.prototype.size = function ArraySet_size() { - return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length; - }; - ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) { - var sStr = hasNativeMap ? aStr : util.toSetString(aStr); - var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr); - var idx = this._array.length; - if (!isDuplicate || aAllowDuplicates) { - this._array.push(aStr); - } - if (!isDuplicate) { - if (hasNativeMap) { - this._set.set(aStr, idx); - } else { - this._set[sStr] = idx; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js +var require_intervalProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } } + return ar; }; - ArraySet.prototype.has = function ArraySet_has(aStr) { - if (hasNativeMap) { - return this._set.has(aStr); - } else { - var sStr = util.toSetString(aStr); - return has.call(this._set, sStr); - } + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) { - if (hasNativeMap) { - var idx = this._set.get(aStr); - if (idx >= 0) { - return idx; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.intervalProvider = void 0; + exports2.intervalProvider = { + setInterval: function(handler, timeout) { + var args2 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args2[_i - 2] = arguments[_i]; } - } else { - var sStr = util.toSetString(aStr); - if (has.call(this._set, sStr)) { - return this._set[sStr]; + var delegate = exports2.intervalProvider.delegate; + if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) { + return delegate.setInterval.apply(delegate, __spreadArray3([handler, timeout], __read4(args2))); } - } - throw new Error('"' + aStr + '" is not in the set.'); + return setInterval.apply(void 0, __spreadArray3([handler, timeout], __read4(args2))); + }, + clearInterval: function(handle) { + var delegate = exports2.intervalProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle); + }, + delegate: void 0 }; - ArraySet.prototype.at = function ArraySet_at(aIdx) { - if (aIdx >= 0 && aIdx < this._array.length) { - return this._array[aIdx]; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js +var require_AsyncAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncAction = void 0; + var Action_1 = require_Action(); + var intervalProvider_1 = require_intervalProvider(); + var arrRemove_1 = require_arrRemove(); + var AsyncAction = function(_super) { + __extends4(AsyncAction2, _super); + function AsyncAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + _this.pending = false; + return _this; } - throw new Error("No element indexed by " + aIdx); - }; - ArraySet.prototype.toArray = function ArraySet_toArray() { - return this._array.slice(); - }; - exports2.ArraySet = ArraySet; + AsyncAction2.prototype.schedule = function(state, delay) { + var _a; + if (delay === void 0) { + delay = 0; + } + if (this.closed) { + return this; + } + this.state = state; + var id = this.id; + var scheduler = this.scheduler; + if (id != null) { + this.id = this.recycleAsyncId(scheduler, id, delay); + } + this.pending = true; + this.delay = delay; + this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay); + return this; + }; + AsyncAction2.prototype.requestAsyncId = function(scheduler, _id, delay) { + if (delay === void 0) { + delay = 0; + } + return intervalProvider_1.intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay); + }; + AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay != null && this.delay === delay && this.pending === false) { + return id; + } + if (id != null) { + intervalProvider_1.intervalProvider.clearInterval(id); + } + return void 0; + }; + AsyncAction2.prototype.execute = function(state, delay) { + if (this.closed) { + return new Error("executing a cancelled action"); + } + this.pending = false; + var error = this._execute(state, delay); + if (error) { + return error; + } else if (this.pending === false && this.id != null) { + this.id = this.recycleAsyncId(this.scheduler, this.id, null); + } + }; + AsyncAction2.prototype._execute = function(state, _delay) { + var errored = false; + var errorValue; + try { + this.work(state); + } catch (e) { + errored = true; + errorValue = e ? e : new Error("Scheduled action threw falsy error"); + } + if (errored) { + this.unsubscribe(); + return errorValue; + } + }; + AsyncAction2.prototype.unsubscribe = function() { + if (!this.closed) { + var _a = this, id = _a.id, scheduler = _a.scheduler; + var actions = scheduler.actions; + this.work = this.state = this.scheduler = null; + this.pending = false; + arrRemove_1.arrRemove(actions, this); + if (id != null) { + this.id = this.recycleAsyncId(scheduler, id, null); + } + this.delay = null; + _super.prototype.unsubscribe.call(this); + } + }; + return AsyncAction2; + }(Action_1.Action); + exports2.AsyncAction = AsyncAction; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/mapping-list.js -var require_mapping_list = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/mapping-list.js"(exports2) { - var util = require_util3(); - function generatedPositionAfter(mappingA, mappingB) { - var lineA = mappingA.generatedLine; - var lineB = mappingB.generatedLine; - var columnA = mappingA.generatedColumn; - var columnB = mappingB.generatedColumn; - return lineB > lineA || lineB == lineA && columnB >= columnA || util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0; - } - function MappingList() { - this._array = []; - this._sorted = true; - this._last = { generatedLine: -1, generatedColumn: 0 }; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/Immediate.js +var require_Immediate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/Immediate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TestTools = exports2.Immediate = void 0; + var nextHandle = 1; + var resolved; + var activeHandles = {}; + function findAndClearHandle(handle) { + if (handle in activeHandles) { + delete activeHandles[handle]; + return true; + } + return false; } - MappingList.prototype.unsortedForEach = function MappingList_forEach(aCallback, aThisArg) { - this._array.forEach(aCallback, aThisArg); - }; - MappingList.prototype.add = function MappingList_add(aMapping) { - if (generatedPositionAfter(this._last, aMapping)) { - this._last = aMapping; - this._array.push(aMapping); - } else { - this._sorted = false; - this._array.push(aMapping); + exports2.Immediate = { + setImmediate: function(cb) { + var handle = nextHandle++; + activeHandles[handle] = true; + if (!resolved) { + resolved = Promise.resolve(); + } + resolved.then(function() { + return findAndClearHandle(handle) && cb(); + }); + return handle; + }, + clearImmediate: function(handle) { + findAndClearHandle(handle); } }; - MappingList.prototype.toArray = function MappingList_toArray() { - if (!this._sorted) { - this._array.sort(util.compareByGeneratedPositionsInflated); - this._sorted = true; + exports2.TestTools = { + pending: function() { + return Object.keys(activeHandles).length; } - return this._array; }; - exports2.MappingList = MappingList; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-generator.js -var require_source_map_generator = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-generator.js"(exports2) { - var base64VLQ = require_base64_vlq(); - var util = require_util3(); - var ArraySet = require_array_set().ArraySet; - var MappingList = require_mapping_list().MappingList; - function SourceMapGenerator(aArgs) { - if (!aArgs) { - aArgs = {}; - } - this._file = util.getArg(aArgs, "file", null); - this._sourceRoot = util.getArg(aArgs, "sourceRoot", null); - this._skipValidation = util.getArg(aArgs, "skipValidation", false); - this._sources = new ArraySet(); - this._names = new ArraySet(); - this._mappings = new MappingList(); - this._sourcesContents = null; - } - SourceMapGenerator.prototype._version = 3; - SourceMapGenerator.fromSourceMap = function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) { - var sourceRoot = aSourceMapConsumer.sourceRoot; - var generator = new SourceMapGenerator({ - file: aSourceMapConsumer.file, - sourceRoot - }); - aSourceMapConsumer.eachMapping(function(mapping) { - var newMapping = { - generated: { - line: mapping.generatedLine, - column: mapping.generatedColumn - } - }; - if (mapping.source != null) { - newMapping.source = mapping.source; - if (sourceRoot != null) { - newMapping.source = util.relative(sourceRoot, newMapping.source); - } - newMapping.original = { - line: mapping.originalLine, - column: mapping.originalColumn - }; - if (mapping.name != null) { - newMapping.name = mapping.name; - } - } - generator.addMapping(newMapping); - }); - aSourceMapConsumer.sources.forEach(function(sourceFile) { - var sourceRelative = sourceFile; - if (sourceRoot !== null) { - sourceRelative = util.relative(sourceRoot, sourceFile); - } - if (!generator._sources.has(sourceRelative)) { - generator._sources.add(sourceRelative); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js +var require_immediateProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } - var content = aSourceMapConsumer.sourceContentFor(sourceFile); - if (content != null) { - generator.setSourceContent(sourceFile, content); + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.immediateProvider = void 0; + var Immediate_1 = require_Immediate(); + var setImmediate2 = Immediate_1.Immediate.setImmediate; + var clearImmediate2 = Immediate_1.Immediate.clearImmediate; + exports2.immediateProvider = { + setImmediate: function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - }); - return generator; + var delegate = exports2.immediateProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate2).apply(void 0, __spreadArray3([], __read4(args2))); + }, + clearImmediate: function(handle) { + var delegate = exports2.immediateProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate2)(handle); + }, + delegate: void 0 }; - SourceMapGenerator.prototype.addMapping = function SourceMapGenerator_addMapping(aArgs) { - var generated = util.getArg(aArgs, "generated"); - var original = util.getArg(aArgs, "original", null); - var source = util.getArg(aArgs, "source", null); - var name = util.getArg(aArgs, "name", null); - if (!this._skipValidation) { - this._validateMapping(generated, original, source, name); - } - if (source != null) { - source = String(source); - if (!this._sources.has(source)) { - this._sources.add(source); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js +var require_AsapAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsapAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var immediateProvider_1 = require_immediateProvider(); + var AsapAction = function(_super) { + __extends4(AsapAction2, _super); + function AsapAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; } - if (name != null) { - name = String(name); - if (!this._names.has(name)) { - this._names.add(name); + AsapAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; } - } - this._mappings.add({ - generatedLine: generated.line, - generatedColumn: generated.column, - originalLine: original != null && original.line, - originalColumn: original != null && original.column, - source, - name - }); - }; - SourceMapGenerator.prototype.setSourceContent = function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) { - var source = aSourceFile; - if (this._sourceRoot != null) { - source = util.relative(this._sourceRoot, source); - } - if (aSourceContent != null) { - if (!this._sourcesContents) { - this._sourcesContents = Object.create(null); + if (delay !== null && delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); } - this._sourcesContents[util.toSetString(source)] = aSourceContent; - } else if (this._sourcesContents) { - delete this._sourcesContents[util.toSetString(source)]; - if (Object.keys(this._sourcesContents).length === 0) { - this._sourcesContents = null; + scheduler.actions.push(this); + return scheduler._scheduled || (scheduler._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler.flush.bind(scheduler, void 0))); + }; + AsapAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + var _a; + if (delay === void 0) { + delay = 0; } - } - }; - SourceMapGenerator.prototype.applySourceMap = function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) { - var sourceFile = aSourceFile; - if (aSourceFile == null) { - if (aSourceMapConsumer.file == null) { - throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`); + if (delay != null ? delay > 0 : this.delay > 0) { + return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); } - sourceFile = aSourceMapConsumer.file; - } - var sourceRoot = this._sourceRoot; - if (sourceRoot != null) { - sourceFile = util.relative(sourceRoot, sourceFile); - } - var newSources = new ArraySet(); - var newNames = new ArraySet(); - this._mappings.unsortedForEach(function(mapping) { - if (mapping.source === sourceFile && mapping.originalLine != null) { - var original = aSourceMapConsumer.originalPositionFor({ - line: mapping.originalLine, - column: mapping.originalColumn - }); - if (original.source != null) { - mapping.source = original.source; - if (aSourceMapPath != null) { - mapping.source = util.join(aSourceMapPath, mapping.source); - } - if (sourceRoot != null) { - mapping.source = util.relative(sourceRoot, mapping.source); - } - mapping.originalLine = original.line; - mapping.originalColumn = original.column; - if (original.name != null) { - mapping.name = original.name; - } + var actions = scheduler.actions; + if (id != null && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { + immediateProvider_1.immediateProvider.clearImmediate(id); + if (scheduler._scheduled === id) { + scheduler._scheduled = void 0; } } - var source = mapping.source; - if (source != null && !newSources.has(source)) { - newSources.add(source); + return void 0; + }; + return AsapAction2; + }(AsyncAction_1.AsyncAction); + exports2.AsapAction = AsapAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Scheduler.js +var require_Scheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Scheduler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Scheduler = void 0; + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var Scheduler = function() { + function Scheduler2(schedulerActionCtor, now) { + if (now === void 0) { + now = Scheduler2.now; } - var name = mapping.name; - if (name != null && !newNames.has(name)) { - newNames.add(name); + this.schedulerActionCtor = schedulerActionCtor; + this.now = now; + } + Scheduler2.prototype.schedule = function(work, delay, state) { + if (delay === void 0) { + delay = 0; } - }, this); - this._sources = newSources; - this._names = newNames; - aSourceMapConsumer.sources.forEach(function(sourceFile2) { - var content = aSourceMapConsumer.sourceContentFor(sourceFile2); - if (content != null) { - if (aSourceMapPath != null) { - sourceFile2 = util.join(aSourceMapPath, sourceFile2); - } - if (sourceRoot != null) { - sourceFile2 = util.relative(sourceRoot, sourceFile2); - } - this.setSourceContent(sourceFile2, content); + return new this.schedulerActionCtor(this, work).schedule(state, delay); + }; + Scheduler2.now = dateTimestampProvider_1.dateTimestampProvider.now; + return Scheduler2; + }(); + exports2.Scheduler = Scheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js +var require_AsyncScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - }, this); - }; - SourceMapGenerator.prototype._validateMapping = function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, aName) { - if (aOriginal && typeof aOriginal.line !== "number" && typeof aOriginal.column !== "number") { - throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values."); - } - if (aGenerated && "line" in aGenerated && "column" in aGenerated && aGenerated.line > 0 && aGenerated.column >= 0 && !aOriginal && !aSource && !aName) { - return; - } else if (aGenerated && "line" in aGenerated && "column" in aGenerated && aOriginal && "line" in aOriginal && "column" in aOriginal && aGenerated.line > 0 && aGenerated.column >= 0 && aOriginal.line > 0 && aOriginal.column >= 0 && aSource) { - return; - } else { - throw new Error("Invalid mapping: " + JSON.stringify({ - generated: aGenerated, - source: aSource, - original: aOriginal, - name: aName - })); + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncScheduler = void 0; + var Scheduler_1 = require_Scheduler(); + var AsyncScheduler = function(_super) { + __extends4(AsyncScheduler2, _super); + function AsyncScheduler2(SchedulerAction, now) { + if (now === void 0) { + now = Scheduler_1.Scheduler.now; + } + var _this = _super.call(this, SchedulerAction, now) || this; + _this.actions = []; + _this._active = false; + return _this; } - }; - SourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() { - var previousGeneratedColumn = 0; - var previousGeneratedLine = 1; - var previousOriginalColumn = 0; - var previousOriginalLine = 0; - var previousName = 0; - var previousSource = 0; - var result = ""; - var next; - var mapping; - var nameIdx; - var sourceIdx; - var mappings = this._mappings.toArray(); - for (var i = 0, len = mappings.length; i < len; i++) { - mapping = mappings[i]; - next = ""; - if (mapping.generatedLine !== previousGeneratedLine) { - previousGeneratedColumn = 0; - while (mapping.generatedLine !== previousGeneratedLine) { - next += ";"; - previousGeneratedLine++; + AsyncScheduler2.prototype.flush = function(action) { + var actions = this.actions; + if (this._active) { + actions.push(action); + return; + } + var error; + this._active = true; + do { + if (error = action.execute(action.state, action.delay)) { + break; } - } else { - if (i > 0) { - if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) { - continue; - } - next += ","; + } while (action = actions.shift()); + this._active = false; + if (error) { + while (action = actions.shift()) { + action.unsubscribe(); } + throw error; } - next += base64VLQ.encode(mapping.generatedColumn - previousGeneratedColumn); - previousGeneratedColumn = mapping.generatedColumn; - if (mapping.source != null) { - sourceIdx = this._sources.indexOf(mapping.source); - next += base64VLQ.encode(sourceIdx - previousSource); - previousSource = sourceIdx; - next += base64VLQ.encode(mapping.originalLine - 1 - previousOriginalLine); - previousOriginalLine = mapping.originalLine - 1; - next += base64VLQ.encode(mapping.originalColumn - previousOriginalColumn); - previousOriginalColumn = mapping.originalColumn; - if (mapping.name != null) { - nameIdx = this._names.indexOf(mapping.name); - next += base64VLQ.encode(nameIdx - previousName); - previousName = nameIdx; - } + }; + return AsyncScheduler2; + }(Scheduler_1.Scheduler); + exports2.AsyncScheduler = AsyncScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js +var require_AsapScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - result += next; + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsapScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var AsapScheduler = function(_super) { + __extends4(AsapScheduler2, _super); + function AsapScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; } - return result; - }; - SourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) { - return aSources.map(function(source) { - if (!this._sourcesContents) { - return null; - } - if (aSourceRoot != null) { - source = util.relative(aSourceRoot, source); + AsapScheduler2.prototype.flush = function(action) { + this._active = true; + var flushId = this._scheduled; + this._scheduled = void 0; + var actions = this.actions; + var error; + action = action || actions.shift(); + do { + if (error = action.execute(action.state, action.delay)) { + break; + } + } while ((action = actions[0]) && action.id === flushId && actions.shift()); + this._active = false; + if (error) { + while ((action = actions[0]) && action.id === flushId && actions.shift()) { + action.unsubscribe(); + } + throw error; } - var key = util.toSetString(source); - return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) ? this._sourcesContents[key] : null; - }, this); - }; - SourceMapGenerator.prototype.toJSON = function SourceMapGenerator_toJSON() { - var map = { - version: this._version, - sources: this._sources.toArray(), - names: this._names.toArray(), - mappings: this._serializeMappings() }; - if (this._file != null) { - map.file = this._file; - } - if (this._sourceRoot != null) { - map.sourceRoot = this._sourceRoot; - } - if (this._sourcesContents) { - map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot); - } - return map; - }; - SourceMapGenerator.prototype.toString = function SourceMapGenerator_toString() { - return JSON.stringify(this.toJSON()); - }; - exports2.SourceMapGenerator = SourceMapGenerator; + return AsapScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.AsapScheduler = AsapScheduler; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/binary-search.js -var require_binary_search = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/binary-search.js"(exports2) { - exports2.GREATEST_LOWER_BOUND = 1; - exports2.LEAST_UPPER_BOUND = 2; - function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) { - var mid = Math.floor((aHigh - aLow) / 2) + aLow; - var cmp = aCompare(aNeedle, aHaystack[mid], true); - if (cmp === 0) { - return mid; - } else if (cmp > 0) { - if (aHigh - mid > 1) { - return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js +var require_asap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.asap = exports2.asapScheduler = void 0; + var AsapAction_1 = require_AsapAction(); + var AsapScheduler_1 = require_AsapScheduler(); + exports2.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction); + exports2.asap = exports2.asapScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/async.js +var require_async = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.async = exports2.asyncScheduler = void 0; + var AsyncAction_1 = require_AsyncAction(); + var AsyncScheduler_1 = require_AsyncScheduler(); + exports2.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction); + exports2.async = exports2.asyncScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js +var require_QueueAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - if (aBias == exports2.LEAST_UPPER_BOUND) { - return aHigh < aHaystack.length ? aHigh : -1; - } else { - return mid; + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueueAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var QueueAction = function(_super) { + __extends4(QueueAction2, _super); + function QueueAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; + } + QueueAction2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; } - } else { - if (mid - aLow > 1) { - return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias); + if (delay > 0) { + return _super.prototype.schedule.call(this, state, delay); } - if (aBias == exports2.LEAST_UPPER_BOUND) { - return mid; - } else { - return aLow < 0 ? -1 : aLow; + this.delay = delay; + this.state = state; + this.scheduler.flush(this); + return this; + }; + QueueAction2.prototype.execute = function(state, delay) { + return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay); + }; + QueueAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; } - } - } - exports2.search = function search(aNeedle, aHaystack, aCompare, aBias) { - if (aHaystack.length === 0) { - return -1; - } - var index = recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack, aCompare, aBias || exports2.GREATEST_LOWER_BOUND); - if (index < 0) { - return -1; - } - while (index - 1 >= 0) { - if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) { - break; + if (delay != null && delay > 0 || delay == null && this.delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); } - --index; - } - return index; - }; + scheduler.flush(this); + return 0; + }; + return QueueAction2; + }(AsyncAction_1.AsyncAction); + exports2.QueueAction = QueueAction; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/quick-sort.js -var require_quick_sort = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/quick-sort.js"(exports2) { - function swap(ary, x, y) { - var temp = ary[x]; - ary[x] = ary[y]; - ary[y] = temp; - } - function randomIntInRange(low, high) { - return Math.round(low + Math.random() * (high - low)); - } - function doQuickSort(ary, comparator, p, r) { - if (p < r) { - var pivotIndex = randomIntInRange(p, r); - var i = p - 1; - swap(ary, pivotIndex, r); - var pivot = ary[r]; - for (var j = p; j < r; j++) { - if (comparator(ary[j], pivot) <= 0) { - i += 1; - swap(ary, i, j); - } +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js +var require_QueueScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - swap(ary, i + 1, j); - var q = i + 1; - doQuickSort(ary, comparator, p, q - 1); - doQuickSort(ary, comparator, q + 1, r); + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueueScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var QueueScheduler = function(_super) { + __extends4(QueueScheduler2, _super); + function QueueScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; } - } - exports2.quickSort = function(ary, comparator) { - doQuickSort(ary, comparator, 0, ary.length - 1); - }; + return QueueScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.QueueScheduler = QueueScheduler; } }); -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-consumer.js -var require_source_map_consumer = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-consumer.js"(exports2) { - var util = require_util3(); - var binarySearch = require_binary_search(); - var ArraySet = require_array_set().ArraySet; - var base64VLQ = require_base64_vlq(); - var quickSort = require_quick_sort().quickSort; - function SourceMapConsumer(aSourceMap, aSourceMapURL) { - var sourceMap = aSourceMap; - if (typeof aSourceMap === "string") { - sourceMap = util.parseSourceMapInput(aSourceMap); - } - return sourceMap.sections != null ? new IndexedSourceMapConsumer(sourceMap, aSourceMapURL) : new BasicSourceMapConsumer(sourceMap, aSourceMapURL); - } - SourceMapConsumer.fromSourceMap = function(aSourceMap, aSourceMapURL) { - return BasicSourceMapConsumer.fromSourceMap(aSourceMap, aSourceMapURL); - }; - SourceMapConsumer.prototype._version = 3; - SourceMapConsumer.prototype.__generatedMappings = null; - Object.defineProperty(SourceMapConsumer.prototype, "_generatedMappings", { - configurable: true, - enumerable: true, - get: function() { - if (!this.__generatedMappings) { - this._parseMappings(this._mappings, this.sourceRoot); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js +var require_queue = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.queue = exports2.queueScheduler = void 0; + var QueueAction_1 = require_QueueAction(); + var QueueScheduler_1 = require_QueueScheduler(); + exports2.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction); + exports2.queue = exports2.queueScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js +var require_AnimationFrameAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - return this.__generatedMappings; + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnimationFrameAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var animationFrameProvider_1 = require_animationFrameProvider(); + var AnimationFrameAction = function(_super) { + __extends4(AnimationFrameAction2, _super); + function AnimationFrameAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; } - }); - SourceMapConsumer.prototype.__originalMappings = null; - Object.defineProperty(SourceMapConsumer.prototype, "_originalMappings", { - configurable: true, - enumerable: true, - get: function() { - if (!this.__originalMappings) { - this._parseMappings(this._mappings, this.sourceRoot); + AnimationFrameAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; } - return this.__originalMappings; - } - }); - SourceMapConsumer.prototype._charIsMappingSeparator = function SourceMapConsumer_charIsMappingSeparator(aStr, index) { - var c = aStr.charAt(index); - return c === ";" || c === ","; - }; - SourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { - throw new Error("Subclasses must implement _parseMappings"); - }; - SourceMapConsumer.GENERATED_ORDER = 1; - SourceMapConsumer.ORIGINAL_ORDER = 2; - SourceMapConsumer.GREATEST_LOWER_BOUND = 1; - SourceMapConsumer.LEAST_UPPER_BOUND = 2; - SourceMapConsumer.prototype.eachMapping = function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) { - var context = aContext || null; - var order = aOrder || SourceMapConsumer.GENERATED_ORDER; - var mappings; - switch (order) { - case SourceMapConsumer.GENERATED_ORDER: - mappings = this._generatedMappings; - break; - case SourceMapConsumer.ORIGINAL_ORDER: - mappings = this._originalMappings; - break; - default: - throw new Error("Unknown order of iteration."); - } - var sourceRoot = this.sourceRoot; - mappings.map(function(mapping) { - var source = mapping.source === null ? null : this._sources.at(mapping.source); - source = util.computeSourceURL(sourceRoot, source, this._sourceMapURL); - return { - source, - generatedLine: mapping.generatedLine, - generatedColumn: mapping.generatedColumn, - originalLine: mapping.originalLine, - originalColumn: mapping.originalColumn, - name: mapping.name === null ? null : this._names.at(mapping.name) + if (delay !== null && delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + } + scheduler.actions.push(this); + return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function() { + return scheduler.flush(void 0); + })); + }; + AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + var _a; + if (delay === void 0) { + delay = 0; + } + if (delay != null ? delay > 0 : this.delay > 0) { + return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); + } + var actions = scheduler.actions; + if (id != null && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { + animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); + scheduler._scheduled = void 0; + } + return void 0; + }; + return AnimationFrameAction2; + }(AsyncAction_1.AsyncAction); + exports2.AnimationFrameAction = AnimationFrameAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js +var require_AnimationFrameScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; }; - }, this).forEach(aCallback, context); - }; - SourceMapConsumer.prototype.allGeneratedPositionsFor = function SourceMapConsumer_allGeneratedPositionsFor(aArgs) { - var line = util.getArg(aArgs, "line"); - var needle = { - source: util.getArg(aArgs, "source"), - originalLine: line, - originalColumn: util.getArg(aArgs, "column", 0) + return extendStatics4(d, b); }; - needle.source = this._findSourceIndex(needle.source); - if (needle.source < 0) { - return []; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnimationFrameScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var AnimationFrameScheduler = function(_super) { + __extends4(AnimationFrameScheduler2, _super); + function AnimationFrameScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; } - var mappings = []; - var index = this._findMapping(needle, this._originalMappings, "originalLine", "originalColumn", util.compareByOriginalPositions, binarySearch.LEAST_UPPER_BOUND); - if (index >= 0) { - var mapping = this._originalMappings[index]; - if (aArgs.column === void 0) { - var originalLine = mapping.originalLine; - while (mapping && mapping.originalLine === originalLine) { - mappings.push({ - line: util.getArg(mapping, "generatedLine", null), - column: util.getArg(mapping, "generatedColumn", null), - lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) - }); - mapping = this._originalMappings[++index]; + AnimationFrameScheduler2.prototype.flush = function(action) { + this._active = true; + var flushId = this._scheduled; + this._scheduled = void 0; + var actions = this.actions; + var error; + action = action || actions.shift(); + do { + if (error = action.execute(action.state, action.delay)) { + break; } - } else { - var originalColumn = mapping.originalColumn; - while (mapping && mapping.originalLine === line && mapping.originalColumn == originalColumn) { - mappings.push({ - line: util.getArg(mapping, "generatedLine", null), - column: util.getArg(mapping, "generatedColumn", null), - lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) - }); - mapping = this._originalMappings[++index]; + } while ((action = actions[0]) && action.id === flushId && actions.shift()); + this._active = false; + if (error) { + while ((action = actions[0]) && action.id === flushId && actions.shift()) { + action.unsubscribe(); } + throw error; } - } - return mappings; - }; - exports2.SourceMapConsumer = SourceMapConsumer; - function BasicSourceMapConsumer(aSourceMap, aSourceMapURL) { - var sourceMap = aSourceMap; - if (typeof aSourceMap === "string") { - sourceMap = util.parseSourceMapInput(aSourceMap); - } - var version = util.getArg(sourceMap, "version"); - var sources = util.getArg(sourceMap, "sources"); - var names = util.getArg(sourceMap, "names", []); - var sourceRoot = util.getArg(sourceMap, "sourceRoot", null); - var sourcesContent = util.getArg(sourceMap, "sourcesContent", null); - var mappings = util.getArg(sourceMap, "mappings"); - var file = util.getArg(sourceMap, "file", null); - if (version != this._version) { - throw new Error("Unsupported version: " + version); - } - if (sourceRoot) { - sourceRoot = util.normalize(sourceRoot); - } - sources = sources.map(String).map(util.normalize).map(function(source) { - return sourceRoot && util.isAbsolute(sourceRoot) && util.isAbsolute(source) ? util.relative(sourceRoot, source) : source; - }); - this._names = ArraySet.fromArray(names.map(String), true); - this._sources = ArraySet.fromArray(sources, true); - this._absoluteSources = this._sources.toArray().map(function(s) { - return util.computeSourceURL(sourceRoot, s, aSourceMapURL); - }); - this.sourceRoot = sourceRoot; - this.sourcesContent = sourcesContent; - this._mappings = mappings; - this._sourceMapURL = aSourceMapURL; - this.file = file; - } - BasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); - BasicSourceMapConsumer.prototype.consumer = SourceMapConsumer; - BasicSourceMapConsumer.prototype._findSourceIndex = function(aSource) { - var relativeSource = aSource; - if (this.sourceRoot != null) { - relativeSource = util.relative(this.sourceRoot, relativeSource); - } - if (this._sources.has(relativeSource)) { - return this._sources.indexOf(relativeSource); - } - var i; - for (i = 0; i < this._absoluteSources.length; ++i) { - if (this._absoluteSources[i] == aSource) { - return i; + }; + return AnimationFrameScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.AnimationFrameScheduler = AnimationFrameScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js +var require_animationFrame = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrame = exports2.animationFrameScheduler = void 0; + var AnimationFrameAction_1 = require_AnimationFrameAction(); + var AnimationFrameScheduler_1 = require_AnimationFrameScheduler(); + exports2.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction); + exports2.animationFrame = exports2.animationFrameScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js +var require_VirtualTimeScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js"(exports2) { + "use strict"; + var __extends4 = exports2 && exports2.__extends || function() { + var extendStatics4 = function(d, b) { + extendStatics4 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics4(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics4(d, b); + function __() { + this.constructor = d; } - } - return -1; - }; - BasicSourceMapConsumer.fromSourceMap = function SourceMapConsumer_fromSourceMap(aSourceMap, aSourceMapURL) { - var smc = Object.create(BasicSourceMapConsumer.prototype); - var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true); - var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true); - smc.sourceRoot = aSourceMap._sourceRoot; - smc.sourcesContent = aSourceMap._generateSourcesContent(smc._sources.toArray(), smc.sourceRoot); - smc.file = aSourceMap._file; - smc._sourceMapURL = aSourceMapURL; - smc._absoluteSources = smc._sources.toArray().map(function(s) { - return util.computeSourceURL(smc.sourceRoot, s, aSourceMapURL); - }); - var generatedMappings = aSourceMap._mappings.toArray().slice(); - var destGeneratedMappings = smc.__generatedMappings = []; - var destOriginalMappings = smc.__originalMappings = []; - for (var i = 0, length = generatedMappings.length; i < length; i++) { - var srcMapping = generatedMappings[i]; - var destMapping = new Mapping(); - destMapping.generatedLine = srcMapping.generatedLine; - destMapping.generatedColumn = srcMapping.generatedColumn; - if (srcMapping.source) { - destMapping.source = sources.indexOf(srcMapping.source); - destMapping.originalLine = srcMapping.originalLine; - destMapping.originalColumn = srcMapping.originalColumn; - if (srcMapping.name) { - destMapping.name = names.indexOf(srcMapping.name); - } - destOriginalMappings.push(destMapping); + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualAction = exports2.VirtualTimeScheduler = void 0; + var AsyncAction_1 = require_AsyncAction(); + var Subscription_1 = require_Subscription(); + var AsyncScheduler_1 = require_AsyncScheduler(); + var VirtualTimeScheduler = function(_super) { + __extends4(VirtualTimeScheduler2, _super); + function VirtualTimeScheduler2(schedulerActionCtor, maxFrames) { + if (schedulerActionCtor === void 0) { + schedulerActionCtor = VirtualAction; } - destGeneratedMappings.push(destMapping); - } - quickSort(smc.__originalMappings, util.compareByOriginalPositions); - return smc; - }; - BasicSourceMapConsumer.prototype._version = 3; - Object.defineProperty(BasicSourceMapConsumer.prototype, "sources", { - get: function() { - return this._absoluteSources.slice(); - } - }); - function Mapping() { - this.generatedLine = 0; - this.generatedColumn = 0; - this.source = null; - this.originalLine = null; - this.originalColumn = null; - this.name = null; - } - BasicSourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { - var generatedLine = 1; - var previousGeneratedColumn = 0; - var previousOriginalLine = 0; - var previousOriginalColumn = 0; - var previousSource = 0; - var previousName = 0; - var length = aStr.length; - var index = 0; - var cachedSegments = {}; - var temp = {}; - var originalMappings = []; - var generatedMappings = []; - var mapping, str, segment, end, value; - while (index < length) { - if (aStr.charAt(index) === ";") { - generatedLine++; - index++; - previousGeneratedColumn = 0; - } else if (aStr.charAt(index) === ",") { - index++; - } else { - mapping = new Mapping(); - mapping.generatedLine = generatedLine; - for (end = index; end < length; end++) { - if (this._charIsMappingSeparator(aStr, end)) { - break; - } - } - str = aStr.slice(index, end); - segment = cachedSegments[str]; - if (segment) { - index += str.length; - } else { - segment = []; - while (index < end) { - base64VLQ.decode(aStr, index, temp); - value = temp.value; - index = temp.rest; - segment.push(value); - } - if (segment.length === 2) { - throw new Error("Found a source, but no line and column"); - } - if (segment.length === 3) { - throw new Error("Found a source and line, but no column"); - } - cachedSegments[str] = segment; - } - mapping.generatedColumn = previousGeneratedColumn + segment[0]; - previousGeneratedColumn = mapping.generatedColumn; - if (segment.length > 1) { - mapping.source = previousSource + segment[1]; - previousSource += segment[1]; - mapping.originalLine = previousOriginalLine + segment[2]; - previousOriginalLine = mapping.originalLine; - mapping.originalLine += 1; - mapping.originalColumn = previousOriginalColumn + segment[3]; - previousOriginalColumn = mapping.originalColumn; - if (segment.length > 4) { - mapping.name = previousName + segment[4]; - previousName += segment[4]; - } - } - generatedMappings.push(mapping); - if (typeof mapping.originalLine === "number") { - originalMappings.push(mapping); - } + if (maxFrames === void 0) { + maxFrames = Infinity; } + var _this = _super.call(this, schedulerActionCtor, function() { + return _this.frame; + }) || this; + _this.maxFrames = maxFrames; + _this.frame = 0; + _this.index = -1; + return _this; } - quickSort(generatedMappings, util.compareByGeneratedPositionsDeflated); - this.__generatedMappings = generatedMappings; - quickSort(originalMappings, util.compareByOriginalPositions); - this.__originalMappings = originalMappings; - }; - BasicSourceMapConsumer.prototype._findMapping = function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName, aColumnName, aComparator, aBias) { - if (aNeedle[aLineName] <= 0) { - throw new TypeError("Line must be greater than or equal to 1, got " + aNeedle[aLineName]); - } - if (aNeedle[aColumnName] < 0) { - throw new TypeError("Column must be greater than or equal to 0, got " + aNeedle[aColumnName]); - } - return binarySearch.search(aNeedle, aMappings, aComparator, aBias); - }; - BasicSourceMapConsumer.prototype.computeColumnSpans = function SourceMapConsumer_computeColumnSpans() { - for (var index = 0; index < this._generatedMappings.length; ++index) { - var mapping = this._generatedMappings[index]; - if (index + 1 < this._generatedMappings.length) { - var nextMapping = this._generatedMappings[index + 1]; - if (mapping.generatedLine === nextMapping.generatedLine) { - mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1; - continue; + VirtualTimeScheduler2.prototype.flush = function() { + var _a = this, actions = _a.actions, maxFrames = _a.maxFrames; + var error; + var action; + while ((action = actions[0]) && action.delay <= maxFrames) { + actions.shift(); + this.frame = action.delay; + if (error = action.execute(action.state, action.delay)) { + break; } } - mapping.lastGeneratedColumn = Infinity; - } - }; - BasicSourceMapConsumer.prototype.originalPositionFor = function SourceMapConsumer_originalPositionFor(aArgs) { - var needle = { - generatedLine: util.getArg(aArgs, "line"), - generatedColumn: util.getArg(aArgs, "column") - }; - var index = this._findMapping(needle, this._generatedMappings, "generatedLine", "generatedColumn", util.compareByGeneratedPositionsDeflated, util.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)); - if (index >= 0) { - var mapping = this._generatedMappings[index]; - if (mapping.generatedLine === needle.generatedLine) { - var source = util.getArg(mapping, "source", null); - if (source !== null) { - source = this._sources.at(source); - source = util.computeSourceURL(this.sourceRoot, source, this._sourceMapURL); - } - var name = util.getArg(mapping, "name", null); - if (name !== null) { - name = this._names.at(name); + if (error) { + while (action = actions.shift()) { + action.unsubscribe(); } - return { - source, - line: util.getArg(mapping, "originalLine", null), - column: util.getArg(mapping, "originalColumn", null), - name - }; - } - } - return { - source: null, - line: null, - column: null, - name: null - }; - }; - BasicSourceMapConsumer.prototype.hasContentsOfAllSources = function BasicSourceMapConsumer_hasContentsOfAllSources() { - if (!this.sourcesContent) { - return false; - } - return this.sourcesContent.length >= this._sources.size() && !this.sourcesContent.some(function(sc) { - return sc == null; - }); - }; - BasicSourceMapConsumer.prototype.sourceContentFor = function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { - if (!this.sourcesContent) { - return null; - } - var index = this._findSourceIndex(aSource); - if (index >= 0) { - return this.sourcesContent[index]; - } - var relativeSource = aSource; - if (this.sourceRoot != null) { - relativeSource = util.relative(this.sourceRoot, relativeSource); - } - var url; - if (this.sourceRoot != null && (url = util.urlParse(this.sourceRoot))) { - var fileUriAbsPath = relativeSource.replace(/^file:\/\//, ""); - if (url.scheme == "file" && this._sources.has(fileUriAbsPath)) { - return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)]; - } - if ((!url.path || url.path == "/") && this._sources.has("/" + relativeSource)) { - return this.sourcesContent[this._sources.indexOf("/" + relativeSource)]; + throw error; } - } - if (nullOnMissing) { - return null; - } else { - throw new Error('"' + relativeSource + '" is not in the SourceMap.'); - } - }; - BasicSourceMapConsumer.prototype.generatedPositionFor = function SourceMapConsumer_generatedPositionFor(aArgs) { - var source = util.getArg(aArgs, "source"); - source = this._findSourceIndex(source); - if (source < 0) { - return { - line: null, - column: null, - lastColumn: null - }; - } - var needle = { - source, - originalLine: util.getArg(aArgs, "line"), - originalColumn: util.getArg(aArgs, "column") }; - var index = this._findMapping(needle, this._originalMappings, "originalLine", "originalColumn", util.compareByOriginalPositions, util.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)); - if (index >= 0) { - var mapping = this._originalMappings[index]; - if (mapping.source === needle.source) { - return { - line: util.getArg(mapping, "generatedLine", null), - column: util.getArg(mapping, "generatedColumn", null), - lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) - }; + VirtualTimeScheduler2.frameTimeFactor = 10; + return VirtualTimeScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.VirtualTimeScheduler = VirtualTimeScheduler; + var VirtualAction = function(_super) { + __extends4(VirtualAction2, _super); + function VirtualAction2(scheduler, work, index) { + if (index === void 0) { + index = scheduler.index += 1; } + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + _this.index = index; + _this.active = true; + _this.index = scheduler.index = index; + return _this; } - return { - line: null, - column: null, - lastColumn: null - }; - }; - exports2.BasicSourceMapConsumer = BasicSourceMapConsumer; - function IndexedSourceMapConsumer(aSourceMap, aSourceMapURL) { - var sourceMap = aSourceMap; - if (typeof aSourceMap === "string") { - sourceMap = util.parseSourceMapInput(aSourceMap); - } - var version = util.getArg(sourceMap, "version"); - var sections = util.getArg(sourceMap, "sections"); - if (version != this._version) { - throw new Error("Unsupported version: " + version); - } - this._sources = new ArraySet(); - this._names = new ArraySet(); - var lastOffset = { - line: -1, - column: 0 - }; - this._sections = sections.map(function(s) { - if (s.url) { - throw new Error("Support for url field in sections not implemented."); - } - var offset = util.getArg(s, "offset"); - var offsetLine = util.getArg(offset, "line"); - var offsetColumn = util.getArg(offset, "column"); - if (offsetLine < lastOffset.line || offsetLine === lastOffset.line && offsetColumn < lastOffset.column) { - throw new Error("Section offsets must be ordered and non-overlapping."); + VirtualAction2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; } - lastOffset = offset; - return { - generatedOffset: { - generatedLine: offsetLine + 1, - generatedColumn: offsetColumn + 1 - }, - consumer: new SourceMapConsumer(util.getArg(s, "map"), aSourceMapURL) - }; - }); - } - IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); - IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer; - IndexedSourceMapConsumer.prototype._version = 3; - Object.defineProperty(IndexedSourceMapConsumer.prototype, "sources", { - get: function() { - var sources = []; - for (var i = 0; i < this._sections.length; i++) { - for (var j = 0; j < this._sections[i].consumer.sources.length; j++) { - sources.push(this._sections[i].consumer.sources[j]); + if (Number.isFinite(delay)) { + if (!this.id) { + return _super.prototype.schedule.call(this, state, delay); } + this.active = false; + var action = new VirtualAction2(this.scheduler, this.work); + this.add(action); + return action.schedule(state, delay); + } else { + return Subscription_1.Subscription.EMPTY; } - return sources; - } - }); - IndexedSourceMapConsumer.prototype.originalPositionFor = function IndexedSourceMapConsumer_originalPositionFor(aArgs) { - var needle = { - generatedLine: util.getArg(aArgs, "line"), - generatedColumn: util.getArg(aArgs, "column") }; - var sectionIndex = binarySearch.search(needle, this._sections, function(needle2, section2) { - var cmp = needle2.generatedLine - section2.generatedOffset.generatedLine; - if (cmp) { - return cmp; - } - return needle2.generatedColumn - section2.generatedOffset.generatedColumn; - }); - var section = this._sections[sectionIndex]; - if (!section) { - return { - source: null, - line: null, - column: null, - name: null - }; - } - return section.consumer.originalPositionFor({ - line: needle.generatedLine - (section.generatedOffset.generatedLine - 1), - column: needle.generatedColumn - (section.generatedOffset.generatedLine === needle.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), - bias: aArgs.bias - }); - }; - IndexedSourceMapConsumer.prototype.hasContentsOfAllSources = function IndexedSourceMapConsumer_hasContentsOfAllSources() { - return this._sections.every(function(s) { - return s.consumer.hasContentsOfAllSources(); - }); - }; - IndexedSourceMapConsumer.prototype.sourceContentFor = function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { - for (var i = 0; i < this._sections.length; i++) { - var section = this._sections[i]; - var content = section.consumer.sourceContentFor(aSource, true); - if (content) { - return content; - } - } - if (nullOnMissing) { - return null; - } else { - throw new Error('"' + aSource + '" is not in the SourceMap.'); - } - }; - IndexedSourceMapConsumer.prototype.generatedPositionFor = function IndexedSourceMapConsumer_generatedPositionFor(aArgs) { - for (var i = 0; i < this._sections.length; i++) { - var section = this._sections[i]; - if (section.consumer._findSourceIndex(util.getArg(aArgs, "source")) === -1) { - continue; - } - var generatedPosition = section.consumer.generatedPositionFor(aArgs); - if (generatedPosition) { - var ret = { - line: generatedPosition.line + (section.generatedOffset.generatedLine - 1), - column: generatedPosition.column + (section.generatedOffset.generatedLine === generatedPosition.line ? section.generatedOffset.generatedColumn - 1 : 0) - }; - return ret; + VirtualAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; } - } - return { - line: null, - column: null + this.delay = scheduler.frame + delay; + var actions = scheduler.actions; + actions.push(this); + actions.sort(VirtualAction2.sortActions); + return 1; }; - }; - IndexedSourceMapConsumer.prototype._parseMappings = function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) { - this.__generatedMappings = []; - this.__originalMappings = []; - for (var i = 0; i < this._sections.length; i++) { - var section = this._sections[i]; - var sectionMappings = section.consumer._generatedMappings; - for (var j = 0; j < sectionMappings.length; j++) { - var mapping = sectionMappings[j]; - var source = section.consumer._sources.at(mapping.source); - source = util.computeSourceURL(section.consumer.sourceRoot, source, this._sourceMapURL); - this._sources.add(source); - source = this._sources.indexOf(source); - var name = null; - if (mapping.name) { - name = section.consumer._names.at(mapping.name); - this._names.add(name); - name = this._names.indexOf(name); - } - var adjustedMapping = { - source, - generatedLine: mapping.generatedLine + (section.generatedOffset.generatedLine - 1), - generatedColumn: mapping.generatedColumn + (section.generatedOffset.generatedLine === mapping.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), - originalLine: mapping.originalLine, - originalColumn: mapping.originalColumn, - name - }; - this.__generatedMappings.push(adjustedMapping); - if (typeof adjustedMapping.originalLine === "number") { - this.__originalMappings.push(adjustedMapping); - } + VirtualAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; } - } - quickSort(this.__generatedMappings, util.compareByGeneratedPositionsDeflated); - quickSort(this.__originalMappings, util.compareByOriginalPositions); - }; - exports2.IndexedSourceMapConsumer = IndexedSourceMapConsumer; - } -}); - -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-node.js -var require_source_node = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-node.js"(exports2) { - var SourceMapGenerator = require_source_map_generator().SourceMapGenerator; - var util = require_util3(); - var REGEX_NEWLINE = /(\r?\n)/; - var NEWLINE_CODE = 10; - var isSourceNode = "$$$isSourceNode$$$"; - function SourceNode(aLine, aColumn, aSource, aChunks, aName) { - this.children = []; - this.sourceContents = {}; - this.line = aLine == null ? null : aLine; - this.column = aColumn == null ? null : aColumn; - this.source = aSource == null ? null : aSource; - this.name = aName == null ? null : aName; - this[isSourceNode] = true; - if (aChunks != null) - this.add(aChunks); - } - SourceNode.fromStringWithSourceMap = function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) { - var node = new SourceNode(); - var remainingLines = aGeneratedCode.split(REGEX_NEWLINE); - var remainingLinesIndex = 0; - var shiftNextLine = function() { - var lineContents = getNextLine(); - var newLine = getNextLine() || ""; - return lineContents + newLine; - function getNextLine() { - return remainingLinesIndex < remainingLines.length ? remainingLines[remainingLinesIndex++] : void 0; + return void 0; + }; + VirtualAction2.prototype._execute = function(state, delay) { + if (this.active === true) { + return _super.prototype._execute.call(this, state, delay); } }; - var lastGeneratedLine = 1, lastGeneratedColumn = 0; - var lastMapping = null; - aSourceMapConsumer.eachMapping(function(mapping) { - if (lastMapping !== null) { - if (lastGeneratedLine < mapping.generatedLine) { - addMappingWithCode(lastMapping, shiftNextLine()); - lastGeneratedLine++; - lastGeneratedColumn = 0; + VirtualAction2.sortActions = function(a, b) { + if (a.delay === b.delay) { + if (a.index === b.index) { + return 0; + } else if (a.index > b.index) { + return 1; } else { - var nextLine = remainingLines[remainingLinesIndex] || ""; - var code = nextLine.substr(0, mapping.generatedColumn - lastGeneratedColumn); - remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn - lastGeneratedColumn); - lastGeneratedColumn = mapping.generatedColumn; - addMappingWithCode(lastMapping, code); - lastMapping = mapping; - return; - } - } - while (lastGeneratedLine < mapping.generatedLine) { - node.add(shiftNextLine()); - lastGeneratedLine++; - } - if (lastGeneratedColumn < mapping.generatedColumn) { - var nextLine = remainingLines[remainingLinesIndex] || ""; - node.add(nextLine.substr(0, mapping.generatedColumn)); - remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn); - lastGeneratedColumn = mapping.generatedColumn; - } - lastMapping = mapping; - }, this); - if (remainingLinesIndex < remainingLines.length) { - if (lastMapping) { - addMappingWithCode(lastMapping, shiftNextLine()); - } - node.add(remainingLines.splice(remainingLinesIndex).join("")); - } - aSourceMapConsumer.sources.forEach(function(sourceFile) { - var content = aSourceMapConsumer.sourceContentFor(sourceFile); - if (content != null) { - if (aRelativePath != null) { - sourceFile = util.join(aRelativePath, sourceFile); + return -1; } - node.setSourceContent(sourceFile, content); - } - }); - return node; - function addMappingWithCode(mapping, code) { - if (mapping === null || mapping.source === void 0) { - node.add(code); - } else { - var source = aRelativePath ? util.join(aRelativePath, mapping.source) : mapping.source; - node.add(new SourceNode(mapping.originalLine, mapping.originalColumn, source, code, mapping.name)); - } - } - }; - SourceNode.prototype.add = function SourceNode_add(aChunk) { - if (Array.isArray(aChunk)) { - aChunk.forEach(function(chunk) { - this.add(chunk); - }, this); - } else if (aChunk[isSourceNode] || typeof aChunk === "string") { - if (aChunk) { - this.children.push(aChunk); - } - } else { - throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk); - } - return this; - }; - SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) { - if (Array.isArray(aChunk)) { - for (var i = aChunk.length - 1; i >= 0; i--) { - this.prepend(aChunk[i]); - } - } else if (aChunk[isSourceNode] || typeof aChunk === "string") { - this.children.unshift(aChunk); - } else { - throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk); - } - return this; - }; - SourceNode.prototype.walk = function SourceNode_walk(aFn) { - var chunk; - for (var i = 0, len = this.children.length; i < len; i++) { - chunk = this.children[i]; - if (chunk[isSourceNode]) { - chunk.walk(aFn); + } else if (a.delay > b.delay) { + return 1; } else { - if (chunk !== "") { - aFn(chunk, { - source: this.source, - line: this.line, - column: this.column, - name: this.name - }); - } - } - } - }; - SourceNode.prototype.join = function SourceNode_join(aSep) { - var newChildren; - var i; - var len = this.children.length; - if (len > 0) { - newChildren = []; - for (i = 0; i < len - 1; i++) { - newChildren.push(this.children[i]); - newChildren.push(aSep); - } - newChildren.push(this.children[i]); - this.children = newChildren; - } - return this; - }; - SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) { - var lastChild = this.children[this.children.length - 1]; - if (lastChild[isSourceNode]) { - lastChild.replaceRight(aPattern, aReplacement); - } else if (typeof lastChild === "string") { - this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement); - } else { - this.children.push("".replace(aPattern, aReplacement)); - } - return this; - }; - SourceNode.prototype.setSourceContent = function SourceNode_setSourceContent(aSourceFile, aSourceContent) { - this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent; - }; - SourceNode.prototype.walkSourceContents = function SourceNode_walkSourceContents(aFn) { - for (var i = 0, len = this.children.length; i < len; i++) { - if (this.children[i][isSourceNode]) { - this.children[i].walkSourceContents(aFn); + return -1; } - } - var sources = Object.keys(this.sourceContents); - for (var i = 0, len = sources.length; i < len; i++) { - aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]); - } - }; - SourceNode.prototype.toString = function SourceNode_toString() { - var str = ""; - this.walk(function(chunk) { - str += chunk; - }); - return str; - }; - SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) { - var generated = { - code: "", - line: 1, - column: 0 }; - var map = new SourceMapGenerator(aArgs); - var sourceMappingActive = false; - var lastOriginalSource = null; - var lastOriginalLine = null; - var lastOriginalColumn = null; - var lastOriginalName = null; - this.walk(function(chunk, original) { - generated.code += chunk; - if (original.source !== null && original.line !== null && original.column !== null) { - if (lastOriginalSource !== original.source || lastOriginalLine !== original.line || lastOriginalColumn !== original.column || lastOriginalName !== original.name) { - map.addMapping({ - source: original.source, - original: { - line: original.line, - column: original.column - }, - generated: { - line: generated.line, - column: generated.column - }, - name: original.name - }); - } - lastOriginalSource = original.source; - lastOriginalLine = original.line; - lastOriginalColumn = original.column; - lastOriginalName = original.name; - sourceMappingActive = true; - } else if (sourceMappingActive) { - map.addMapping({ - generated: { - line: generated.line, - column: generated.column - } - }); - lastOriginalSource = null; - sourceMappingActive = false; - } - for (var idx = 0, length = chunk.length; idx < length; idx++) { - if (chunk.charCodeAt(idx) === NEWLINE_CODE) { - generated.line++; - generated.column = 0; - if (idx + 1 === length) { - lastOriginalSource = null; - sourceMappingActive = false; - } else if (sourceMappingActive) { - map.addMapping({ - source: original.source, - original: { - line: original.line, - column: original.column - }, - generated: { - line: generated.line, - column: generated.column - }, - name: original.name - }); - } - } else { - generated.column++; - } - } - }); - this.walkSourceContents(function(sourceFile, sourceContent) { - map.setSourceContent(sourceFile, sourceContent); - }); - return { code: generated.code, map }; - }; - exports2.SourceNode = SourceNode; - } -}); - -// ../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/source-map.js -var require_source_map = __commonJS({ - "../../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/source-map.js"(exports2) { - exports2.SourceMapGenerator = require_source_map_generator().SourceMapGenerator; - exports2.SourceMapConsumer = require_source_map_consumer().SourceMapConsumer; - exports2.SourceNode = require_source_node().SourceNode; + return VirtualAction2; + }(AsyncAction_1.AsyncAction); + exports2.VirtualAction = VirtualAction; } }); -// ../../node_modules/.pnpm/get-source@1.0.42/node_modules/get-source/impl/path.js -var require_path = __commonJS({ - "../../node_modules/.pnpm/get-source@1.0.42/node_modules/get-source/impl/path.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/empty.js +var require_empty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/empty.js"(exports2) { "use strict"; - var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; - var cwd = isBrowser ? window.location.href : process.cwd(); - var urlRegexp = new RegExp("^((https|http)://)?[a-z0-9A-Z]{3}.[a-z0-9A-Z][a-z0-9A-Z]{0,61}?[a-z0-9A-Z].com|net|cn|cc (:s[0-9]{1-4})?/$"); - var path = module2.exports = { - concat(a, b) { - const a_endsWithSlash = a[a.length - 1] === "/", b_startsWithSlash = b[0] === "/"; - return a + (a_endsWithSlash || b_startsWithSlash ? "" : "/") + (a_endsWithSlash && b_startsWithSlash ? b.substring(1) : b); - }, - resolve(x) { - if (path.isAbsolute(x)) { - return path.normalize(x); - } - return path.normalize(path.concat(cwd, x)); - }, - normalize(x) { - let output = [], skip = 0; - x.split("/").reverse().filter((x2) => x2 !== ".").forEach((x2) => { - if (x2 === "..") { - skip++; - } else if (skip === 0) { - output.push(x2); - } else { - skip--; - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.empty = exports2.EMPTY = void 0; + var Observable_1 = require_Observable(); + exports2.EMPTY = new Observable_1.Observable(function(subscriber) { + return subscriber.complete(); + }); + function empty(scheduler) { + return scheduler ? emptyScheduled(scheduler) : exports2.EMPTY; + } + exports2.empty = empty; + function emptyScheduled(scheduler) { + return new Observable_1.Observable(function(subscriber) { + return scheduler.schedule(function() { + return subscriber.complete(); }); - const result = output.reverse().join("/"); - return (isBrowser && result[0] === "/" ? window.location.origin : "") + result; - }, - isData: (x) => x.indexOf("data:") === 0, - isURL: (x) => urlRegexp.test(x), - isAbsolute: (x) => x[0] === "/" || /^[^\/]*:/.test(x), - relativeToFile(a, b) { - return path.isData(a) || path.isAbsolute(b) ? path.normalize(b) : path.normalize(path.concat(a.split("/").slice(0, -1).join("/"), b)); - } - }; + }); + } } }); -// ../../node_modules/.pnpm/data-uri-to-buffer@2.0.2/node_modules/data-uri-to-buffer/index.js -var require_data_uri_to_buffer = __commonJS({ - "../../node_modules/.pnpm/data-uri-to-buffer@2.0.2/node_modules/data-uri-to-buffer/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js +var require_isScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js"(exports2) { "use strict"; - module2.exports = dataUriToBuffer; - function dataUriToBuffer(uri) { - if (!/^data\:/i.test(uri)) { - throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")'); - } - uri = uri.replace(/\r?\n/g, ""); - var firstComma = uri.indexOf(","); - if (firstComma === -1 || firstComma <= 4) { - throw new TypeError("malformed data: URI"); - } - var meta = uri.substring(5, firstComma).split(";"); - var type = meta[0] || "text/plain"; - var typeFull = type; - var base64 = false; - var charset = ""; - for (var i = 1; i < meta.length; i++) { - if (meta[i] == "base64") { - base64 = true; - } else { - typeFull += ";" + meta[i]; - if (meta[i].indexOf("charset=") == 0) { - charset = meta[i].substring(8); - } - } - } - if (!meta[0] && !charset.length) { - typeFull += ";charset=US-ASCII"; - charset = "US-ASCII"; - } - var data = unescape(uri.substring(firstComma + 1)); - var encoding = base64 ? "base64" : "ascii"; - var buffer = Buffer.from ? Buffer.from(data, encoding) : new Buffer(data, encoding); - buffer.type = type; - buffer.typeFull = typeFull; - buffer.charset = charset; - return buffer; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isScheduler = void 0; + var isFunction_1 = require_isFunction(); + function isScheduler(value) { + return value && isFunction_1.isFunction(value.schedule); } + exports2.isScheduler = isScheduler; } }); -// ../../node_modules/.pnpm/get-source@1.0.42/node_modules/get-source/get-source.js -var require_get_source = __commonJS({ - "../../node_modules/.pnpm/get-source@1.0.42/node_modules/get-source/get-source.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/args.js +var require_args = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/args.js"(exports2) { "use strict"; - var O = Object; - var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; - var SourceMapConsumer = require_source_map().SourceMapConsumer; - var path = require_path(); - var isURL = path.isURL; - var dataURIToBuffer = require_data_uri_to_buffer(); - var memoize = (f) => { - const m = (x) => x in m.cache ? m.cache[x] : m.cache[x] = f(x); - m.forgetEverything = () => { - m.cache = Object.create(null); - }; - m.cache = Object.create(null); - return m; - }; - var newSourceFileMemoized = memoize((file) => new SourceFile(file)); - var getSource = module2.exports = (file) => { - return newSourceFileMemoized(path.resolve(file)); - }; - getSource.resetCache = () => newSourceFileMemoized.forgetEverything(); - getSource.getCache = () => newSourceFileMemoized.cache; - var SourceMap = class { - constructor(originalFilePath, sourceMapPath) { - this.file = sourceMapPath.startsWith("data:") ? new SourceFile(originalFilePath, dataURIToBuffer(sourceMapPath).toString()) : getSource(path.relativeToFile(originalFilePath, sourceMapPath)); - this.parsed = this.file.text && SourceMapConsumer(JSON.parse(this.file.text)) || null; - this.sourceFor = memoize(this.sourceFor.bind(this)); - } - sourceFor(file) { - const content = this.parsed.sourceContentFor(file, true); - const fullPath = path.relativeToFile(this.file.path, file); - return content ? new SourceFile(fullPath, content) : getSource(fullPath); - } - resolve(loc) { - const originalLoc = this.parsed.originalPositionFor(loc); - return originalLoc.source ? this.sourceFor(originalLoc.source).resolve(O.assign({}, loc, { - line: originalLoc.line, - column: originalLoc.column + 1, - name: originalLoc.name - })) : loc; - } - }; - var SourceFile = class { - constructor(path2, text) { - this.path = path2; - if (text) { - this.text = text; - } else { - try { - if (isBrowser) { - let xhr = new XMLHttpRequest(); - xhr.open("GET", path2, false); - xhr.send(null); - this.text = xhr.responseText; - } else { - this.text = require("fs").readFileSync(path2, { encoding: "utf8" }); - } - } catch (e) { - this.error = e; - this.text = ""; - } - } - } - get lines() { - return this.lines_ = this.lines_ || this.text.split("\n"); - } - get sourceMap() { - try { - if (this.sourceMap_ === void 0) { - const re = /\u0023 sourceMappingURL=(.+)\n?/g; - let lastMatch = void 0; - while (true) { - const match = re.exec(this.text); - if (match) - lastMatch = match; - else - break; - } - const url = lastMatch && lastMatch[1]; - if (url) { - const sourceMap = new SourceMap(this.path, url); - if (sourceMap.parsed) { - this.sourceMap_ = sourceMap; - } - } else { - this.sourceMap_ = null; - } - } - } catch (e) { - this.sourceMap_ = null; - this.sourceMapError = e; - } - return this.sourceMap_; - } - resolve(loc) { - if (this.sourceMap) { - const newLoc = this.sourceMap.resolve(loc); - if (newLoc.sourceFile) - return newLoc; - } - return O.assign({}, loc, { - sourceFile: this, - sourceLine: this.lines[loc.line - 1] || "", - error: this.error - }); - } - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.popNumber = exports2.popScheduler = exports2.popResultSelector = void 0; + var isFunction_1 = require_isFunction(); + var isScheduler_1 = require_isScheduler(); + function last(arr) { + return arr[arr.length - 1]; + } + function popResultSelector(args2) { + return isFunction_1.isFunction(last(args2)) ? args2.pop() : void 0; + } + exports2.popResultSelector = popResultSelector; + function popScheduler(args2) { + return isScheduler_1.isScheduler(last(args2)) ? args2.pop() : void 0; + } + exports2.popScheduler = popScheduler; + function popNumber(args2, defaultValue) { + return typeof last(args2) === "number" ? args2.pop() : defaultValue; + } + exports2.popNumber = popNumber; } }); -// ../../node_modules/.pnpm/stacktracey@1.2.127/node_modules/stacktracey/impl/partition.js -var require_partition3 = __commonJS({ - "../../node_modules/.pnpm/stacktracey@1.2.127/node_modules/stacktracey/impl/partition.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js +var require_isArrayLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js"(exports2) { "use strict"; - module2.exports = (arr_, pred) => { - const arr = arr_ || [], spans = []; - let span = { - label: void 0, - items: [arr.first] - }; - arr.forEach((x) => { - const label = pred(x); - if (span.label !== label && span.items.length) { - spans.push(span = { label, items: [x] }); - } else { - span.items.push(x); - } - }); - return spans; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isArrayLike = void 0; + exports2.isArrayLike = function(x) { + return x && typeof x.length === "number" && typeof x !== "function"; }; } }); -// ../../node_modules/.pnpm/printable-characters@1.0.42/node_modules/printable-characters/build/printable-characters.js -var require_printable_characters = __commonJS({ - "../../node_modules/.pnpm/printable-characters@1.0.42/node_modules/printable-characters/build/printable-characters.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isPromise.js +var require_isPromise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isPromise.js"(exports2) { "use strict"; - var _slicedToArray = function() { - function sliceIterator(arr, i) { - var _arr = []; - var _n = true; - var _d = false; - var _e = void 0; - try { - for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { - _arr.push(_s.value); - if (i && _arr.length === i) - break; - } - } catch (err) { - _d = true; - _e = err; - } finally { - try { - if (!_n && _i["return"]) - _i["return"](); - } finally { - if (_d) - throw _e; - } - } - return _arr; - } - return function(arr, i) { - if (Array.isArray(arr)) { - return arr; - } else if (Symbol.iterator in Object(arr)) { - return sliceIterator(arr, i); - } else { - throw new TypeError("Invalid attempt to destructure non-iterable instance"); - } - }; - }(); - var ansiEscapeCode = "[\x9B][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]"; - var zeroWidthCharacterExceptNewline = "\0-\b\v-\x9B\xAD\u200B\u2028\u2029\uFEFF\uFE00-\uFE0F"; - var zeroWidthCharacter = "\n" + zeroWidthCharacterExceptNewline; - var zeroWidthCharactersExceptNewline = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacterExceptNewline + "]", "g"); - var zeroWidthCharacters = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacter + "]", "g"); - var partition = new RegExp("((?:" + ansiEscapeCode + ")|[ " + zeroWidthCharacter + "])?([^ " + zeroWidthCharacter + "]*)", "g"); - module2.exports = { - zeroWidthCharacters, - ansiEscapeCodes: new RegExp(ansiEscapeCode, "g"), - strlen: (s) => Array.from(s.replace(zeroWidthCharacters, "")).length, - isBlank: (s) => s.replace(zeroWidthCharacters, "").replace(/\s/g, "").length === 0, - blank: (s) => Array.from(s.replace(zeroWidthCharactersExceptNewline, "")).map((x) => x === " " || x === "\n" ? x : " ").join(""), - partition(s) { - for (var m, spans = []; partition.lastIndex !== s.length && (m = partition.exec(s)); ) { - spans.push([m[1] || "", m[2]]); - } - partition.lastIndex = 0; - return spans; - }, - first(s, n) { - let result = "", length = 0; - for (const _ref of module2.exports.partition(s)) { - var _ref2 = _slicedToArray(_ref, 2); - const nonPrintable = _ref2[0]; - const printable = _ref2[1]; - const text = Array.from(printable).slice(0, n - length); - result += nonPrintable + text.join(""); - length += text.length; - } - return result; - } - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isPromise = void 0; + var isFunction_1 = require_isFunction(); + function isPromise(value) { + return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then); + } + exports2.isPromise = isPromise; } }); -// ../../node_modules/.pnpm/as-table@1.0.55/node_modules/as-table/build/as-table.js -var require_as_table = __commonJS({ - "../../node_modules/.pnpm/as-table@1.0.55/node_modules/as-table/build/as-table.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js +var require_isInteropObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js"(exports2) { "use strict"; - function _toConsumableArray(arr) { - if (Array.isArray(arr)) { - for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) - arr2[i] = arr[i]; - return arr2; - } else { - return Array.from(arr); - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isInteropObservable = void 0; + var observable_1 = require_observable(); + var isFunction_1 = require_isFunction(); + function isInteropObservable(input) { + return isFunction_1.isFunction(input[observable_1.observable]); } - var O = Object; - var _require = require_printable_characters(); - var first = _require.first; - var strlen = _require.strlen; - var limit = (s, n) => first(s, n - 1) + "\u2026"; - var asColumns = (rows, cfg_) => { - const zip = (arrs, f) => arrs.reduce((a, b) => b.map((b2, i) => [].concat(_toConsumableArray(a[i] || []), [b2])), []).map((args2) => f.apply(void 0, _toConsumableArray(args2))), cells = rows.map((r) => r.map((c) => c.replace(/\n/g, "\\n"))), cellWidths = cells.map((r) => r.map(strlen)), maxWidths = zip(cellWidths, Math.max), cfg = O.assign({ - delimiter: " ", - minColumnWidths: maxWidths.map((x) => 0), - maxTotalWidth: 0 - }, cfg_), delimiterLength = strlen(cfg.delimiter), totalWidth = maxWidths.reduce((a, b) => a + b, 0), relativeWidths = maxWidths.map((w) => w / totalWidth), maxTotalWidth = cfg.maxTotalWidth - delimiterLength * (maxWidths.length - 1), excessWidth = Math.max(0, totalWidth - maxTotalWidth), computedWidths = zip([cfg.minColumnWidths, maxWidths, relativeWidths], (min, max, relative2) => Math.max(min, Math.floor(max - excessWidth * relative2))), restCellWidths = cellWidths.map((widths) => zip([computedWidths, widths], (a, b) => a - b)); - return zip([cells, restCellWidths], (a, b) => zip([a, b], (str, w) => w >= 0 ? cfg.right ? " ".repeat(w) + str : str + " ".repeat(w) : limit(str, strlen(str) + w)).join(cfg.delimiter)); - }; - var asTable = (cfg) => O.assign((arr) => { - var _ref; - if (arr[0] && Array.isArray(arr[0])) { - return asColumns(arr.map((r) => r.map((c, i) => c === void 0 ? "" : cfg.print(c, i))), cfg).join("\n"); + exports2.isInteropObservable = isInteropObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js +var require_isAsyncIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isAsyncIterable = void 0; + var isFunction_1 = require_isFunction(); + function isAsyncIterable(obj) { + return Symbol.asyncIterator && isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]); + } + exports2.isAsyncIterable = isAsyncIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js +var require_throwUnobservableError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createInvalidObservableTypeError = void 0; + function createInvalidObservableTypeError(input) { + return new TypeError("You provided " + (input !== null && typeof input === "object" ? "an invalid object" : "'" + input + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."); + } + exports2.createInvalidObservableTypeError = createInvalidObservableTypeError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js +var require_iterator = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.iterator = exports2.getSymbolIterator = void 0; + function getSymbolIterator() { + if (typeof Symbol !== "function" || !Symbol.iterator) { + return "@@iterator"; } - const colNames = [].concat(_toConsumableArray(new Set((_ref = []).concat.apply(_ref, _toConsumableArray(arr.map(O.keys)))))), columns = [colNames.map(cfg.title)].concat(_toConsumableArray(arr.map((o) => colNames.map((key) => o[key] === void 0 ? "" : cfg.print(o[key], key))))), lines = asColumns(columns, cfg); - return (cfg.dash ? [lines[0], cfg.dash.repeat(strlen(lines[0]))].concat(_toConsumableArray(lines.slice(1))) : lines).join("\n"); - }, cfg, { - configure: (newConfig) => asTable(O.assign({}, cfg, newConfig)) - }); - module2.exports = asTable({ - maxTotalWidth: Number.MAX_SAFE_INTEGER, - print: String, - title: String, - dash: "-", - right: false - }); + return Symbol.iterator; + } + exports2.getSymbolIterator = getSymbolIterator; + exports2.iterator = getSymbolIterator(); } }); -// ../../node_modules/.pnpm/stacktracey@1.2.127/node_modules/stacktracey/stacktracey.js -var require_stacktracey = __commonJS({ - "../../node_modules/.pnpm/stacktracey@1.2.127/node_modules/stacktracey/stacktracey.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isIterable.js +var require_isIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isIterable.js"(exports2) { "use strict"; - var O = Object; - var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; - var lastOf = (x) => x[x.length - 1]; - var getSource = require_get_source(); - var partition = require_partition3(); - var asTable = require_as_table(); - var nixSlashes = (x) => x.replace(/\\/g, "/"); - var pathRoot = isBrowser ? window.location.href : nixSlashes(process.cwd()) + "/"; - var pathToRelative = isBrowser ? (root, full) => full.replace(root, "") : require("path").relative; - var StackTracey = class extends Array { - constructor(input, offset) { - const originalInput = input, isParseableSyntaxError = input && (input instanceof SyntaxError && !isBrowser); - super(); - this.constructor = StackTracey; - this.__proto__ = StackTracey.prototype; - if (!input) { - input = new Error(); - offset = offset === void 0 ? 1 : offset; - } - if (input instanceof Error) { - input = input[StackTracey.stack] || input.stack || ""; - } - if (typeof input === "string") { - input = StackTracey.rawParse(input).slice(offset).map(StackTracey.extractEntryMetadata); - } - if (Array.isArray(input)) { - if (isParseableSyntaxError) { - const rawLines = require("util").inspect(originalInput).split("\n"), fileLine = rawLines[0].split(":"), line = fileLine.pop(), file = fileLine.join(":"); - if (file) { - input.unshift({ - file: nixSlashes(file), - line, - column: (rawLines[2] || "").indexOf("^") + 1, - sourceLine: rawLines[1], - callee: "(syntax error)", - syntaxError: true - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isIterable = void 0; + var iterator_1 = require_iterator(); + var isFunction_1 = require_isFunction(); + function isIterable(input) { + return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]); + } + exports2.isIterable = isIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js +var require_isReadableStreamLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js"(exports2) { + "use strict"; + var __generator4 = exports2 && exports2.__generator || function(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; } - this.length = input.length; - input.forEach((x, i) => this[i] = x); + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + var __await4 = exports2 && exports2.__await || function(v) { + return this instanceof __await4 ? (this.v = v, this) : new __await4(v); + }; + var __asyncGenerator4 = exports2 && exports2.__asyncGenerator || function(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); } } - static extractEntryMetadata(e) { - const fileRelative = StackTracey.relativePath(e.file || ""); - return O.assign(e, { - calleeShort: e.calleeShort || lastOf((e.callee || "").split(".")), - fileRelative, - fileShort: StackTracey.shortenPath(fileRelative), - fileName: lastOf((e.file || "").split("/")), - thirdParty: StackTracey.isThirdParty(fileRelative) && !e.index - }); + function step(r) { + r.value instanceof __await4 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - static shortenPath(relativePath) { - return relativePath.replace(/^node_modules\//, "").replace(/^webpack\/bootstrap\//, ""); + function fulfill(value) { + resume("next", value); } - static relativePath(fullPath) { - return nixSlashes(pathToRelative(pathRoot, fullPath)).replace(/^.*\:\/\/?\/?/, ""); + function reject(value) { + resume("throw", value); } - static isThirdParty(relativePath) { - return relativePath[0] === "~" || relativePath[0] === "/" || relativePath.indexOf("node_modules") === 0 || relativePath.indexOf("webpack/bootstrap") === 0; + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); } - static rawParse(str) { - const lines = (str || "").split("\n"); - const entries = lines.map((line) => { - line = line.trim(); - let callee, fileLineColumn = [], native, planA, planB; - if ((planA = line.match(/at (.+) \((.+)\)/)) || line.slice(0, 3) !== "at " && (planA = line.match(/(.*)@(.*)/))) { - callee = planA[1]; - native = planA[2] === "native"; - fileLineColumn = (planA[2].match(/(.*):(.+):(.+)/) || []).slice(1); - } else if (planB = line.match(/^(at\s+)*(.+):([0-9]+):([0-9]+)/)) { - fileLineColumn = planB.slice(2); - } else { - return void 0; - } - if (callee && !fileLineColumn[0]) { - const type = callee.split(".")[0]; - if (type === "Array") { - native = true; - } + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isReadableStreamLike = exports2.readableStreamLikeToAsyncGenerator = void 0; + var isFunction_1 = require_isFunction(); + function readableStreamLikeToAsyncGenerator(readableStream) { + return __asyncGenerator4(this, arguments, function readableStreamLikeToAsyncGenerator_1() { + var reader, _a, value, done; + return __generator4(this, function(_b) { + switch (_b.label) { + case 0: + reader = readableStream.getReader(); + _b.label = 1; + case 1: + _b.trys.push([1, , 9, 10]); + _b.label = 2; + case 2: + if (false) + return [3, 8]; + return [4, __await4(reader.read())]; + case 3: + _a = _b.sent(), value = _a.value, done = _a.done; + if (!done) + return [3, 5]; + return [4, __await4(void 0)]; + case 4: + return [2, _b.sent()]; + case 5: + return [4, __await4(value)]; + case 6: + return [4, _b.sent()]; + case 7: + _b.sent(); + return [3, 2]; + case 8: + return [3, 10]; + case 9: + reader.releaseLock(); + return [7]; + case 10: + return [2]; } - return { - beforeParse: line, - callee: callee || "", - index: isBrowser && fileLineColumn[0] === window.location.href, - native: native || false, - file: nixSlashes(fileLineColumn[0] || ""), - line: parseInt(fileLineColumn[1] || "", 10) || void 0, - column: parseInt(fileLineColumn[2] || "", 10) || void 0 - }; }); - return entries.filter((x) => x !== void 0); - } - withSource(i) { - return this[i] && StackTracey.withSource(this[i]); + }); + } + exports2.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator; + function isReadableStreamLike(obj) { + return isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader); + } + exports2.isReadableStreamLike = isReadableStreamLike; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js +var require_innerFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); } - static withSource(loc) { - if (loc.sourceFile || loc.file && loc.file.indexOf("<") >= 0) { - return loc; - } else { - let resolved = getSource(loc.file || "").resolve(loc); - if (!resolved.sourceFile) { - return loc; - } - if (!resolved.sourceFile.error) { - resolved.file = nixSlashes(resolved.sourceFile.path); - resolved = StackTracey.extractEntryMetadata(resolved); + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); } - if (!resolved.sourceLine.error) { - if (resolved.sourceLine.includes("// @hide")) { - resolved.sourceLine = resolved.sourceLine.replace("// @hide", ""); - resolved.hide = true; - } - if (resolved.sourceLine.includes("__webpack_require__") || resolved.sourceLine.includes("/******/ ({")) { - resolved.thirdParty = true; - } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); } - return O.assign({ sourceLine: "" }, loc, resolved); } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator4 = exports2 && exports2.__generator || function(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; } - get withSources() { - return new StackTracey(this.map(StackTracey.withSource)); - } - get mergeRepeatedLines() { - return new StackTracey(partition(this, (e) => e.file + e.line).map((group) => { - return group.items.slice(1).reduce((memo, entry) => { - memo.callee = (memo.callee || "") + " \u2192 " + (entry.callee || ""); - memo.calleeShort = (memo.calleeShort || "") + " \u2192 " + (entry.calleeShort || ""); - return memo; - }, O.assign({}, group.items[0])); - })); - } - get clean() { - return this.withSources.mergeRepeatedLines.filter((e, i) => i === 0 || !(e.thirdParty || e.hide || e.native)); - } - at(i) { - return O.assign({ - beforeParse: "", - callee: "", - index: false, - native: false, - file: "", - line: 0, - column: 0 - }, this[i]); - } - static locationsEqual(a, b) { - return a.file === b.file && a.line === b.line && a.column === b.column; + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; } - get pretty() { - const trimEnd = (s, n) => s && (s.length > n ? s.slice(0, n - 1) + "\u2026" : s); - const trimStart = (s, n) => s && (s.length > n ? "\u2026" + s.slice(-(n - 1)) : s); - return asTable(this.withSources.map((e) => [ - "at " + trimEnd(e.calleeShort, StackTracey.maxColumnWidths.callee), - trimStart(e.fileShort && e.fileShort + ":" + e.line || "", StackTracey.maxColumnWidths.file), - trimEnd((e.sourceLine || "").trim() || "", StackTracey.maxColumnWidths.sourceLine) - ])); + }; + var __asyncValues4 = exports2 && exports2.__asyncValues || function(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values4 === "function" ? __values4(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); + }; } - static resetCache() { - getSource.resetCache(); + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ value: v2, done: d }); + }, reject); } }; - StackTracey.maxColumnWidths = { - callee: 30, - file: 60, - sourceLine: 80 - }; - (() => { - const methods = { - include(pred) { - const f = StackTracey.isThirdParty; - O.assign(StackTracey.isThirdParty = (path) => f(path) || pred(path), methods); - }, - except(pred) { - const f = StackTracey.isThirdParty; - O.assign(StackTracey.isThirdParty = (path) => f(path) && !pred(path), methods); - } - }; - O.assign(StackTracey.isThirdParty, methods); - })(); - ["map", "filter", "slice", "concat", "reverse"].forEach((name) => { - StackTracey.prototype[name] = function() { - const arr = Array.from(this); - return new StackTracey(arr[name].apply(arr, arguments)); - }; - }); - StackTracey.stack = typeof Symbol !== "undefined" ? Symbol.for("StackTracey") : "__StackTracey"; - module2.exports = StackTracey; - } -}); - -// ../default-reporter/lib/reportError.js -var require_reportError = __commonJS({ - "../default-reporter/lib/reportError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); - var chalk_1 = __importDefault(require_source()); - var equals_1 = __importDefault(require_equals2()); - var stacktracey_1 = __importDefault(require_stacktracey()); - var constants_1 = require_constants2(); - stacktracey_1.default.maxColumnWidths = { - callee: 25, - file: 350, - sourceLine: 25 - }; - var highlight = chalk_1.default.yellow; - var colorPath = chalk_1.default.gray; - function reportError(logObj, config) { - const errorInfo = getErrorInfo(logObj, config); - let output = formatErrorSummary(errorInfo.title, logObj["err"]["code"]); - if (errorInfo.body) { - output += ` - -${errorInfo.body}`; + exports2.fromReadableStreamLike = exports2.fromAsyncIterable = exports2.fromIterable = exports2.fromPromise = exports2.fromArrayLike = exports2.fromInteropObservable = exports2.innerFrom = void 0; + var isArrayLike_1 = require_isArrayLike(); + var isPromise_1 = require_isPromise(); + var Observable_1 = require_Observable(); + var isInteropObservable_1 = require_isInteropObservable(); + var isAsyncIterable_1 = require_isAsyncIterable(); + var throwUnobservableError_1 = require_throwUnobservableError(); + var isIterable_1 = require_isIterable(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + var isFunction_1 = require_isFunction(); + var reportUnhandledError_1 = require_reportUnhandledError(); + var observable_1 = require_observable(); + function innerFrom(input) { + if (input instanceof Observable_1.Observable) { + return input; } - return output; - } - exports2.default = reportError; - function getErrorInfo(logObj, config) { - var _a, _b, _c, _d, _e; - if (logObj["err"]) { - const err = logObj["err"]; - switch (err.code) { - case "ERR_PNPM_UNEXPECTED_STORE": - return reportUnexpectedStore(err, logObj); - case "ERR_PNPM_UNEXPECTED_VIRTUAL_STORE": - return reportUnexpectedVirtualStoreDir(err, logObj); - case "ERR_PNPM_STORE_BREAKING_CHANGE": - return reportStoreBreakingChange(logObj); - case "ERR_PNPM_MODULES_BREAKING_CHANGE": - return reportModulesBreakingChange(logObj); - case "ERR_PNPM_MODIFIED_DEPENDENCY": - return reportModifiedDependency(logObj); - case "ERR_PNPM_LOCKFILE_BREAKING_CHANGE": - return reportLockfileBreakingChange(err, logObj); - case "ERR_PNPM_RECURSIVE_RUN_NO_SCRIPT": - return { title: err.message }; - case "ERR_PNPM_NO_MATCHING_VERSION": - return formatNoMatchingVersion(err, logObj); - case "ERR_PNPM_RECURSIVE_FAIL": - return formatRecursiveCommandSummary(logObj); - case "ERR_PNPM_BAD_TARBALL_SIZE": - return reportBadTarballSize(err, logObj); - case "ELIFECYCLE": - return reportLifecycleError(logObj); - case "ERR_PNPM_UNSUPPORTED_ENGINE": - return reportEngineError(logObj); - case "ERR_PNPM_FETCH_401": - case "ERR_PNPM_FETCH_403": - return reportAuthError(err, logObj, config); - default: { - if (!((_b = (_a = err.code) === null || _a === void 0 ? void 0 : _a.startsWith) === null || _b === void 0 ? void 0 : _b.call(_a, "ERR_PNPM_"))) { - return formatGenericError((_c = err.message) !== null && _c !== void 0 ? _c : logObj["message"], err.stack); - } - const errorOutput = []; - if ((_d = logObj["pkgsStack"]) === null || _d === void 0 ? void 0 : _d.length) { - errorOutput.push(formatPkgsStack(logObj["pkgsStack"])); - } - if (logObj["hint"]) { - errorOutput.push(logObj["hint"]); - } - return { - title: (_e = err.message) !== null && _e !== void 0 ? _e : "", - body: errorOutput.join(constants_1.EOL) - }; - } + if (input != null) { + if (isInteropObservable_1.isInteropObservable(input)) { + return fromInteropObservable(input); } - } - return { title: logObj["message"] }; - } - function formatPkgsStack(pkgsStack) { - return `This error happened while installing the dependencies of ${pkgsStack[0].name}@${pkgsStack[0].version}${pkgsStack.slice(1).map(({ name, version }) => `${constants_1.EOL} at ${name}@${version}`).join("")}`; - } - function formatNoMatchingVersion(err, msg) { - const meta = msg["packageMeta"]; - let output = `The latest release of ${meta.name} is "${meta["dist-tags"].latest}".${constants_1.EOL}`; - if (!equals_1.default(Object.keys(meta["dist-tags"]), ["latest"])) { - output += constants_1.EOL + "Other releases are:" + constants_1.EOL; - for (const tag in meta["dist-tags"]) { - if (tag !== "latest") { - output += ` * ${tag}: ${meta["dist-tags"][tag]}${constants_1.EOL}`; - } + if (isArrayLike_1.isArrayLike(input)) { + return fromArrayLike(input); + } + if (isPromise_1.isPromise(input)) { + return fromPromise(input); + } + if (isAsyncIterable_1.isAsyncIterable(input)) { + return fromAsyncIterable(input); + } + if (isIterable_1.isIterable(input)) { + return fromIterable(input); + } + if (isReadableStreamLike_1.isReadableStreamLike(input)) { + return fromReadableStreamLike(input); } } - output += `${constants_1.EOL}If you need the full list of all ${Object.keys(meta.versions).length} published versions run "$ pnpm view ${meta.name} versions".`; - return { - title: err.message, - body: output - }; - } - function reportUnexpectedStore(err, msg) { - return { - title: err.message, - body: `The dependencies at "${msg.modulesDir}" are currently linked from the store at "${msg.expectedStorePath}". - -pnpm now wants to use the store at "${msg.actualStorePath}" to link dependencies. - -If you want to use the new store location, reinstall your dependencies with "pnpm install". - -You may change the global store location by running "pnpm config set store-dir ". -(This error may happen if the node_modules was installed with a different major version of pnpm)` - }; - } - function reportUnexpectedVirtualStoreDir(err, msg) { - return { - title: err.message, - body: `The dependencies at "${msg.modulesDir}" are currently symlinked from the virtual store directory at "${msg.expected}". - -pnpm now wants to use the virtual store at "${msg.actual}" to link dependencies from the store. - -If you want to use the new virtual store location, reinstall your dependencies with "pnpm install". - -You may change the virtual store location by changing the value of the virtual-store-dir config.` - }; + throw throwUnobservableError_1.createInvalidObservableTypeError(input); } - function reportStoreBreakingChange(msg) { - let output = `Store path: ${colorPath(msg.storePath)} - -Run "pnpm install" to recreate node_modules.`; - if (msg.additionalInformation) { - output = `${output}${constants_1.EOL}${constants_1.EOL}${msg.additionalInformation}`; - } - output += formatRelatedSources(msg); - return { - title: "The store used for the current node_modules is incomatible with the current version of pnpm", - body: output - }; + exports2.innerFrom = innerFrom; + function fromInteropObservable(obj) { + return new Observable_1.Observable(function(subscriber) { + var obs = obj[observable_1.observable](); + if (isFunction_1.isFunction(obs.subscribe)) { + return obs.subscribe(subscriber); + } + throw new TypeError("Provided object does not correctly implement Symbol.observable"); + }); } - function reportModulesBreakingChange(msg) { - let output = `node_modules path: ${colorPath(msg.modulesPath)} - -Run ${highlight("pnpm install")} to recreate node_modules.`; - if (msg.additionalInformation) { - output = `${output}${constants_1.EOL}${constants_1.EOL}${msg.additionalInformation}`; - } - output += formatRelatedSources(msg); - return { - title: "The current version of pnpm is not compatible with the available node_modules structure", - body: output - }; + exports2.fromInteropObservable = fromInteropObservable; + function fromArrayLike(array) { + return new Observable_1.Observable(function(subscriber) { + for (var i = 0; i < array.length && !subscriber.closed; i++) { + subscriber.next(array[i]); + } + subscriber.complete(); + }); } - function formatRelatedSources(msg) { - let output = ""; - if (!msg.relatedIssue && !msg.relatedPR) - return output; - output += constants_1.EOL; - if (msg.relatedIssue) { - output += constants_1.EOL + `Related issue: ${colorPath(`https://github.com/pnpm/pnpm/issues/${msg.relatedIssue}`)}`; - } - if (msg.relatedPR) { - output += constants_1.EOL + `Related PR: ${colorPath(`https://github.com/pnpm/pnpm/pull/${msg.relatedPR}`)}`; - } - return output; + exports2.fromArrayLike = fromArrayLike; + function fromPromise(promise) { + return new Observable_1.Observable(function(subscriber) { + promise.then(function(value) { + if (!subscriber.closed) { + subscriber.next(value); + subscriber.complete(); + } + }, function(err) { + return subscriber.error(err); + }).then(null, reportUnhandledError_1.reportUnhandledError); + }); } - function formatGenericError(errorMessage, stack2) { - if (stack2) { - let prettyStack; + exports2.fromPromise = fromPromise; + function fromIterable(iterable) { + return new Observable_1.Observable(function(subscriber) { + var e_1, _a; try { - prettyStack = new stacktracey_1.default(stack2).pretty; - } catch (err) { - prettyStack = void 0; - } - if (prettyStack) { - return { - title: errorMessage, - body: prettyStack - }; + for (var iterable_1 = __values4(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) { + var value = iterable_1_1.value; + subscriber.next(value); + if (subscriber.closed) { + return; + } + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) + _a.call(iterable_1); + } finally { + if (e_1) + throw e_1.error; + } } - } - return { title: errorMessage }; - } - function formatErrorSummary(message2, code) { - return `${chalk_1.default.bgRed.black(`\u2009${code !== null && code !== void 0 ? code : "ERROR"}\u2009`)} ${chalk_1.default.red(message2)}`; + subscriber.complete(); + }); } - function reportModifiedDependency(msg) { - return { - title: "Packages in the store have been mutated", - body: `These packages are modified: -${msg.modified.map((pkgPath) => colorPath(pkgPath)).join(constants_1.EOL)} - -You can run ${highlight("pnpm install")} to refetch the modified packages` - }; + exports2.fromIterable = fromIterable; + function fromAsyncIterable(asyncIterable) { + return new Observable_1.Observable(function(subscriber) { + process2(asyncIterable, subscriber).catch(function(err) { + return subscriber.error(err); + }); + }); } - function reportLockfileBreakingChange(err, msg) { - return { - title: err.message, - body: `Run with the ${highlight("--force")} parameter to recreate the lockfile.` - }; + exports2.fromAsyncIterable = fromAsyncIterable; + function fromReadableStreamLike(readableStream) { + return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream)); } - function formatRecursiveCommandSummary(msg) { - const output = constants_1.EOL + `Summary: ${chalk_1.default.red(`${msg.fails.length} fails`)}, ${msg.passes} passes` + constants_1.EOL + constants_1.EOL + msg.fails.map((fail) => { - return fail.prefix + ":" + constants_1.EOL + formatErrorSummary(fail.message); - }).join(constants_1.EOL + constants_1.EOL); - return { - title: "", - body: output - }; + exports2.fromReadableStreamLike = fromReadableStreamLike; + function process2(asyncIterable, subscriber) { + var asyncIterable_1, asyncIterable_1_1; + var e_2, _a; + return __awaiter4(this, void 0, void 0, function() { + var value, e_2_1; + return __generator4(this, function(_b) { + switch (_b.label) { + case 0: + _b.trys.push([0, 5, 6, 11]); + asyncIterable_1 = __asyncValues4(asyncIterable); + _b.label = 1; + case 1: + return [4, asyncIterable_1.next()]; + case 2: + if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) + return [3, 4]; + value = asyncIterable_1_1.value; + subscriber.next(value); + if (subscriber.closed) { + return [2]; + } + _b.label = 3; + case 3: + return [3, 1]; + case 4: + return [3, 11]; + case 5: + e_2_1 = _b.sent(); + e_2 = { error: e_2_1 }; + return [3, 11]; + case 6: + _b.trys.push([6, , 9, 10]); + if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) + return [3, 8]; + return [4, _a.call(asyncIterable_1)]; + case 7: + _b.sent(); + _b.label = 8; + case 8: + return [3, 10]; + case 9: + if (e_2) + throw e_2.error; + return [7]; + case 10: + return [7]; + case 11: + subscriber.complete(); + return [2]; + } + }); + }); } - function reportBadTarballSize(err, msg) { - return { - title: err.message, - body: `Seems like you have internet connection issues. -Try running the same command again. -If that doesn't help, try one of the following: - -- Set a bigger value for the \`fetch-retries\` config. - To check the current value of \`fetch-retries\`, run \`pnpm get fetch-retries\`. - To set a new value, run \`pnpm set fetch-retries \`. - -- Set \`network-concurrency\` to 1. - This change will slow down installation times, so it is recommended to - delete the config once the internet connection is good again: \`pnpm config delete network-concurrency\` + } +}); -NOTE: You may also override configs via flags. -For instance, \`pnpm install --fetch-retries 5 --network-concurrency 1\`` - }; - } - function reportLifecycleError(msg) { - if (msg.stage === "test") { - return { title: "Test failed. See above for more details." }; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js +var require_executeSchedule = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.executeSchedule = void 0; + function executeSchedule(parentSubscription, scheduler, work, delay, repeat) { + if (delay === void 0) { + delay = 0; } - if (typeof msg.errno === "number") { - return { title: `Command failed with exit code ${msg.errno}.` }; + if (repeat === void 0) { + repeat = false; + } + var scheduleSubscription = scheduler.schedule(function() { + work(); + if (repeat) { + parentSubscription.add(this.schedule(null, delay)); + } else { + this.unsubscribe(); + } + }, delay); + parentSubscription.add(scheduleSubscription); + if (!repeat) { + return scheduleSubscription; } - return { title: "Command failed." }; } - function reportEngineError(msg) { - let output = ""; - if (msg.wanted.pnpm) { - output += `Your pnpm version is incompatible with "${msg.packageId}". - -Expected version: ${msg.wanted.pnpm} -Got: ${msg.current.pnpm} - -This is happening because the package's manifest has an engines.pnpm field specified. -To fix this issue, install the required pnpm version globally. + exports2.executeSchedule = executeSchedule; + } +}); -To install the latest version of pnpm, run "pnpm i -g pnpm". -To check your pnpm version, run "pnpm -v".`; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js +var require_observeOn = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observeOn = void 0; + var executeSchedule_1 = require_executeSchedule(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function observeOn(scheduler, delay) { + if (delay === void 0) { + delay = 0; } - if (msg.wanted.node) { - if (output) - output += constants_1.EOL + constants_1.EOL; - output += `Your Node version is incompatible with "${msg.packageId}". - -Expected version: ${msg.wanted.node} -Got: ${msg.current.node} + return lift_1.operate(function(source, subscriber) { + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + return subscriber.next(value); + }, delay); + }, function() { + return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + return subscriber.complete(); + }, delay); + }, function(err) { + return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + return subscriber.error(err); + }, delay); + })); + }); + } + exports2.observeOn = observeOn; + } +}); -This is happening because the package's manifest has an engines.node field specified. -To fix this issue, install the required Node version.`; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js +var require_subscribeOn = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.subscribeOn = void 0; + var lift_1 = require_lift(); + function subscribeOn(scheduler, delay) { + if (delay === void 0) { + delay = 0; } - return { - title: "Unsupported environment (bad pnpm and/or Node.js version)", - body: output - }; + return lift_1.operate(function(source, subscriber) { + subscriber.add(scheduler.schedule(function() { + return source.subscribe(subscriber); + }, delay)); + }); } - function reportAuthError(err, msg, config) { - var _a; - const foundSettings = []; - for (const [key, value] of Object.entries((_a = config === null || config === void 0 ? void 0 : config.rawConfig) !== null && _a !== void 0 ? _a : {})) { - if (key.startsWith("@")) { - foundSettings.push(`${key}=${value}`); - continue; - } - if (key.endsWith("_auth") || key.endsWith("_authToken") || key.endsWith("username") || key.endsWith("_password") || key.endsWith("always-auth")) { - foundSettings.push(`${key}=${hideSecureInfo(key, value)}`); - } - } - let output = msg.hint ? `${msg.hint}${constants_1.EOL}${constants_1.EOL}` : ""; - if (foundSettings.length === 0) { - output += `No authorization settings were found in the configs. -Try to log in to the registry by running "pnpm login" -or add the auth tokens manually to the ~/.npmrc file.`; - } else { - output += `These authorization settings were found: -${foundSettings.join("\n")}`; - } - return { - title: err.message, - body: output - }; + exports2.subscribeOn = subscribeOn; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js +var require_scheduleObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleObservable = void 0; + var innerFrom_1 = require_innerFrom(); + var observeOn_1 = require_observeOn(); + var subscribeOn_1 = require_subscribeOn(); + function scheduleObservable(input, scheduler) { + return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); } - function hideSecureInfo(key, value) { - if (key.endsWith("_password")) - return "[hidden]"; - if (key.endsWith("_auth") || key.endsWith("_authToken")) - return `${value.substring(0, 4)}[hidden]`; - return value; + exports2.scheduleObservable = scheduleObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js +var require_schedulePromise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.schedulePromise = void 0; + var innerFrom_1 = require_innerFrom(); + var observeOn_1 = require_observeOn(); + var subscribeOn_1 = require_subscribeOn(); + function schedulePromise(input, scheduler) { + return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); } + exports2.schedulePromise = schedulePromise; } }); -// ../default-reporter/lib/reporterForClient/reportMisc.js -var require_reportMisc = __commonJS({ - "../default-reporter/lib/reporterForClient/reportMisc.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js +var require_scheduleArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var os_1 = __importDefault(require("os")); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var reportError_1 = __importDefault(require_reportError()); - var formatWarn_1 = __importDefault(require_formatWarn()); - var zooming_1 = require_zooming(); - var LOG_LEVEL_NUMBER = { - error: 0, - warn: 1, - info: 2, - debug: 3 - }; - var MAX_SHOWN_WARNINGS = 5; - exports2.default = (log$, opts) => { - var _a, _b; - const maxLogLevel = (_b = LOG_LEVEL_NUMBER[(_a = opts.logLevel) !== null && _a !== void 0 ? _a : "info"]) !== null && _b !== void 0 ? _b : LOG_LEVEL_NUMBER["info"]; - const reportWarning = makeWarningReporter(opts); - return Rx.merge(log$.registry, log$.other).pipe(operators_1.filter((obj) => LOG_LEVEL_NUMBER[obj.level] <= maxLogLevel && (obj.level !== "info" || !obj["prefix"] || obj["prefix"] === opts.cwd)), operators_1.map((obj) => { - switch (obj.level) { - case "warn": { - return reportWarning(obj); - } - case "error": - if (obj["prefix"] && obj["prefix"] !== opts.cwd) { - return Rx.of({ - msg: `${obj["prefix"]}:` + os_1.default.EOL + reportError_1.default(obj, opts.config) - }); + exports2.scheduleArray = void 0; + var Observable_1 = require_Observable(); + function scheduleArray(input, scheduler) { + return new Observable_1.Observable(function(subscriber) { + var i = 0; + return scheduler.schedule(function() { + if (i === input.length) { + subscriber.complete(); + } else { + subscriber.next(input[i++]); + if (!subscriber.closed) { + this.schedule(); } - return Rx.of({ msg: reportError_1.default(obj, opts.config) }); - default: - return Rx.of({ msg: obj["message"] }); - } - })); - }; - function makeWarningReporter(opts) { - let warningsCounter = 0; - let collapsedWarnings; - return (obj) => { - warningsCounter++; - if (opts.appendOnly || warningsCounter <= MAX_SHOWN_WARNINGS) { - return Rx.of({ msg: zooming_1.autozoom(opts.cwd, obj.prefix, formatWarn_1.default(obj.message), opts) }); - } - const warningMsg = formatWarn_1.default(`${warningsCounter - MAX_SHOWN_WARNINGS} other warnings`); - if (!collapsedWarnings) { - collapsedWarnings = new Rx.Subject(); - setTimeout(() => collapsedWarnings.next({ msg: warningMsg }), 0); - return Rx.from(collapsedWarnings); - } - setTimeout(() => collapsedWarnings.next({ msg: warningMsg }), 0); - return Rx.NEVER; - }; + } + }); + }); } + exports2.scheduleArray = scheduleArray; } }); -// ../default-reporter/lib/reporterForClient/reportProgress.js -var require_reportProgress = __commonJS({ - "../default-reporter/lib/reporterForClient/reportProgress.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js +var require_scheduleIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var outputConstants_1 = require_outputConstants(); - var zooming_1 = require_zooming(); - exports2.default = (log$, opts) => { - const progressOutput = throttledProgressOutput.bind(null, opts.throttle); - return getModulesInstallProgress$(log$.stage, log$.progress).pipe(operators_1.map(({ importingDone$, progress$, requirer }) => { - const output$ = progressOutput(importingDone$, progress$); - if (requirer === opts.cwd) { - return output$; - } - return output$.pipe(operators_1.map((msg) => { - msg["msg"] = zooming_1.zoomOut(opts.cwd, requirer, msg["msg"]); - return msg; - })); - })); - }; - function throttledProgressOutput(throttle, importingDone$, progress$) { - let combinedProgress = Rx.combineLatest(progress$, importingDone$).pipe(operators_1.takeWhile(([, importingDone]) => !importingDone, true)); - if (throttle != null) { - combinedProgress = combinedProgress.pipe(throttle); - } - return combinedProgress.pipe(operators_1.map(createStatusMessage)); + exports2.scheduleIterable = void 0; + var Observable_1 = require_Observable(); + var iterator_1 = require_iterator(); + var isFunction_1 = require_isFunction(); + var executeSchedule_1 = require_executeSchedule(); + function scheduleIterable(input, scheduler) { + return new Observable_1.Observable(function(subscriber) { + var iterator; + executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + iterator = input[iterator_1.iterator](); + executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + var _a; + var value; + var done; + try { + _a = iterator.next(), value = _a.value, done = _a.done; + } catch (err) { + subscriber.error(err); + return; + } + if (done) { + subscriber.complete(); + } else { + subscriber.next(value); + } + }, 0, true); + }); + return function() { + return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); + }; + }); } - function getModulesInstallProgress$(stage$, progress$) { - const modulesInstallProgressPushStream = new Rx.Subject(); - const progessStatsPushStreamByRequirer = getProgessStatsPushStreamByRequirer(progress$); - const stagePushStreamByRequirer = {}; - stage$.forEach((log2) => { - if (!stagePushStreamByRequirer[log2.prefix]) { - stagePushStreamByRequirer[log2.prefix] = new Rx.Subject(); - if (!progessStatsPushStreamByRequirer[log2.prefix]) { - progessStatsPushStreamByRequirer[log2.prefix] = new Rx.Subject(); - } - modulesInstallProgressPushStream.next({ - importingDone$: stage$ToImportingDone$(Rx.from(stagePushStreamByRequirer[log2.prefix])), - progress$: Rx.from(progessStatsPushStreamByRequirer[log2.prefix]), - requirer: log2.prefix - }); - } - stagePushStreamByRequirer[log2.prefix].next(log2); - if (log2.stage === "importing_done") { - progessStatsPushStreamByRequirer[log2.prefix].complete(); - stagePushStreamByRequirer[log2.prefix].complete(); - } - }).catch(() => { + exports2.scheduleIterable = scheduleIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js +var require_scheduleAsyncIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleAsyncIterable = void 0; + var Observable_1 = require_Observable(); + var executeSchedule_1 = require_executeSchedule(); + function scheduleAsyncIterable(input, scheduler) { + if (!input) { + throw new Error("Iterable cannot be null"); + } + return new Observable_1.Observable(function(subscriber) { + executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + var iterator = input[Symbol.asyncIterator](); + executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + iterator.next().then(function(result2) { + if (result2.done) { + subscriber.complete(); + } else { + subscriber.next(result2.value); + } + }); + }, 0, true); + }); }); - return Rx.from(modulesInstallProgressPushStream); } - function stage$ToImportingDone$(stage$) { - return stage$.pipe(operators_1.filter((log2) => log2.stage === "importing_done"), operators_1.mapTo(true), operators_1.take(1), operators_1.startWith(false)); + exports2.scheduleAsyncIterable = scheduleAsyncIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js +var require_scheduleReadableStreamLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleReadableStreamLike = void 0; + var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + function scheduleReadableStreamLike(input, scheduler) { + return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler); } - function getProgessStatsPushStreamByRequirer(progress$) { - const progessStatsPushStreamByRequirer = {}; - const previousProgressStatsByRequirer = {}; - progress$.forEach((log2) => { - if (!previousProgressStatsByRequirer[log2.requester]) { - previousProgressStatsByRequirer[log2.requester] = { - fetched: 0, - imported: 0, - resolved: 0, - reused: 0 - }; + exports2.scheduleReadableStreamLike = scheduleReadableStreamLike; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js +var require_scheduled = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduled = void 0; + var scheduleObservable_1 = require_scheduleObservable(); + var schedulePromise_1 = require_schedulePromise(); + var scheduleArray_1 = require_scheduleArray(); + var scheduleIterable_1 = require_scheduleIterable(); + var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); + var isInteropObservable_1 = require_isInteropObservable(); + var isPromise_1 = require_isPromise(); + var isArrayLike_1 = require_isArrayLike(); + var isIterable_1 = require_isIterable(); + var isAsyncIterable_1 = require_isAsyncIterable(); + var throwUnobservableError_1 = require_throwUnobservableError(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + var scheduleReadableStreamLike_1 = require_scheduleReadableStreamLike(); + function scheduled(input, scheduler) { + if (input != null) { + if (isInteropObservable_1.isInteropObservable(input)) { + return scheduleObservable_1.scheduleObservable(input, scheduler); } - switch (log2.status) { - case "resolved": - previousProgressStatsByRequirer[log2.requester].resolved++; - break; - case "fetched": - previousProgressStatsByRequirer[log2.requester].fetched++; - break; - case "found_in_store": - previousProgressStatsByRequirer[log2.requester].reused++; - break; - case "imported": - previousProgressStatsByRequirer[log2.requester].imported++; - break; + if (isArrayLike_1.isArrayLike(input)) { + return scheduleArray_1.scheduleArray(input, scheduler); } - if (!progessStatsPushStreamByRequirer[log2.requester]) { - progessStatsPushStreamByRequirer[log2.requester] = new Rx.Subject(); + if (isPromise_1.isPromise(input)) { + return schedulePromise_1.schedulePromise(input, scheduler); } - progessStatsPushStreamByRequirer[log2.requester].next(previousProgressStatsByRequirer[log2.requester]); - }).catch(() => { - }); - return progessStatsPushStreamByRequirer; + if (isAsyncIterable_1.isAsyncIterable(input)) { + return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler); + } + if (isIterable_1.isIterable(input)) { + return scheduleIterable_1.scheduleIterable(input, scheduler); + } + if (isReadableStreamLike_1.isReadableStreamLike(input)) { + return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler); + } + } + throw throwUnobservableError_1.createInvalidObservableTypeError(input); } - function createStatusMessage([progress, importingDone]) { - const msg = `Progress: resolved ${outputConstants_1.hlValue(progress.resolved.toString())}, reused ${outputConstants_1.hlValue(progress.reused.toString())}, downloaded ${outputConstants_1.hlValue(progress.fetched.toString())}, added ${outputConstants_1.hlValue(progress.imported.toString())}`; - if (importingDone) { - return { - done: true, - fixed: false, - msg: `${msg}, done` - }; + exports2.scheduled = scheduled; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/from.js +var require_from2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/from.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.from = void 0; + var scheduled_1 = require_scheduled(); + var innerFrom_1 = require_innerFrom(); + function from(input, scheduler) { + return scheduler ? scheduled_1.scheduled(input, scheduler) : innerFrom_1.innerFrom(input); + } + exports2.from = from; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/of.js +var require_of = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/of.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.of = void 0; + var args_1 = require_args(); + var from_1 = require_from2(); + function of() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - return { - fixed: true, - msg + var scheduler = args_1.popScheduler(args2); + return from_1.from(args2, scheduler); + } + exports2.of = of; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/throwError.js +var require_throwError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/throwError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throwError = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + function throwError(errorOrErrorFactory, scheduler) { + var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function() { + return errorOrErrorFactory; + }; + var init = function(subscriber) { + return subscriber.error(errorFactory()); }; + return new Observable_1.Observable(scheduler ? function(subscriber) { + return scheduler.schedule(init, 0, subscriber); + } : init); } + exports2.throwError = throwError; } }); -// ../default-reporter/lib/reporterForClient/reportRequestRetry.js -var require_reportRequestRetry = __commonJS({ - "../default-reporter/lib/reporterForClient/reportRequestRetry.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Notification.js +var require_Notification = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Notification.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observeNotification = exports2.Notification = exports2.NotificationKind = void 0; + var empty_1 = require_empty(); + var of_1 = require_of(); + var throwError_1 = require_throwError(); + var isFunction_1 = require_isFunction(); + var NotificationKind; + (function(NotificationKind2) { + NotificationKind2["NEXT"] = "N"; + NotificationKind2["ERROR"] = "E"; + NotificationKind2["COMPLETE"] = "C"; + })(NotificationKind = exports2.NotificationKind || (exports2.NotificationKind = {})); + var Notification = function() { + function Notification2(kind, value, error) { + this.kind = kind; + this.value = value; + this.error = error; + this.hasValue = kind === "N"; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; + Notification2.prototype.observe = function(observer) { + return observeNotification(this, observer); + }; + Notification2.prototype.do = function(nextHandler, errorHandler, completeHandler) { + var _a = this, kind = _a.kind, value = _a.value, error = _a.error; + return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === "E" ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler(); + }; + Notification2.prototype.accept = function(nextOrObserver, error, complete) { + var _a; + return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete); + }; + Notification2.prototype.toObservable = function() { + var _a = this, kind = _a.kind, value = _a.value, error = _a.error; + var result2 = kind === "N" ? of_1.of(value) : kind === "E" ? throwError_1.throwError(function() { + return error; + }) : kind === "C" ? empty_1.EMPTY : 0; + if (!result2) { + throw new TypeError("Unexpected notification kind " + kind); + } + return result2; + }; + Notification2.createNext = function(value) { + return new Notification2("N", value); + }; + Notification2.createError = function(err) { + return new Notification2("E", void 0, err); + }; + Notification2.createComplete = function() { + return Notification2.completeNotification; + }; + Notification2.completeNotification = new Notification2("C"); + return Notification2; + }(); + exports2.Notification = Notification; + function observeNotification(notification, observer) { + var _a, _b, _c; + var _d = notification, kind = _d.kind, value = _d.value, error = _d.error; + if (typeof kind !== "string") { + throw new TypeError('Invalid notification, missing "kind"'); + } + kind === "N" ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer); + } + exports2.observeNotification = observeNotification; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isObservable.js +var require_isObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isObservable.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var pretty_ms_1 = __importDefault(require_pretty_ms()); - var formatWarn_1 = __importDefault(require_formatWarn()); - exports2.default = (requestRetry$) => { - return requestRetry$.pipe(operators_1.map((log2) => { - const retriesLeft = log2.maxRetries - log2.attempt + 1; - const errorCode = log2.error["httpStatusCode"] || log2.error["status"] || log2.error["errno"] || log2.error["code"]; - const msg = `${log2.method} ${log2.url} error (${errorCode}). Will retry in ${pretty_ms_1.default(log2.timeout, { verbose: true })}. ${retriesLeft} retries left.`; - return Rx.of({ msg: formatWarn_1.default(msg) }); - })); - }; + exports2.isObservable = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + function isObservable(obj) { + return !!obj && (obj instanceof Observable_1.Observable || isFunction_1.isFunction(obj.lift) && isFunction_1.isFunction(obj.subscribe)); + } + exports2.isObservable = isObservable; } }); -// ../default-reporter/lib/reporterForClient/reportScope.js -var require_reportScope = __commonJS({ - "../default-reporter/lib/reporterForClient/reportScope.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js +var require_EmptyError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EmptyError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.EmptyError = createErrorClass_1.createErrorClass(function(_super) { + return function EmptyErrorImpl() { + _super(this); + this.name = "EmptyError"; + this.message = "no elements in sequence"; + }; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js +var require_lastValueFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var COMMANDS_THAT_REPORT_SCOPE = new Set([ - "install", - "link", - "prune", - "rebuild", - "remove", - "unlink", - "update", - "run", - "test" - ]); - exports2.default = (scope$, opts) => { - if (!COMMANDS_THAT_REPORT_SCOPE.has(opts.cmd)) { - return Rx.NEVER; - } - return scope$.pipe(operators_1.take(1), operators_1.map((log2) => { - if (log2.selected === 1) { - return Rx.NEVER; - } - let msg = "Scope: "; - if (log2.selected === log2.total) { - msg += `all ${log2.total}`; - } else { - msg += `${log2.selected}`; - if (log2.total) { - msg += ` of ${log2.total}`; + exports2.lastValueFrom = void 0; + var EmptyError_1 = require_EmptyError(); + function lastValueFrom(source, config) { + var hasConfig = typeof config === "object"; + return new Promise(function(resolve, reject) { + var _hasValue = false; + var _value; + source.subscribe({ + next: function(value) { + _value = value; + _hasValue = true; + }, + error: reject, + complete: function() { + if (_hasValue) { + resolve(_value); + } else if (hasConfig) { + resolve(config.defaultValue); + } else { + reject(new EmptyError_1.EmptyError()); + } } - } - if (log2.workspacePrefix) { - msg += " workspace projects"; - } else { - msg += " projects"; - } - return Rx.of({ msg }); - })); - }; + }); + }); + } + exports2.lastValueFrom = lastValueFrom; } }); -// ../default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js -var require_reportSkippedOptionalDependencies = __commonJS({ - "../default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js +var require_firstValueFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - exports2.default = (skippedOptionalDependency$, opts) => { - return skippedOptionalDependency$.pipe(operators_1.filter((log2) => Boolean(log2["prefix"] === opts.cwd && log2.parents && log2.parents.length === 0)), operators_1.map((log2) => Rx.of({ - msg: `info: ${log2.package["id"] || log2.package.name && `${log2.package.name}@${log2.package.version}` || log2.package["pref"]} is an optional dependency and failed compatibility check. Excluding it from installation.` - }))); - }; + exports2.firstValueFrom = void 0; + var EmptyError_1 = require_EmptyError(); + var Subscriber_1 = require_Subscriber(); + function firstValueFrom(source, config) { + var hasConfig = typeof config === "object"; + return new Promise(function(resolve, reject) { + var subscriber = new Subscriber_1.SafeSubscriber({ + next: function(value) { + resolve(value); + subscriber.unsubscribe(); + }, + error: reject, + complete: function() { + if (hasConfig) { + resolve(config.defaultValue); + } else { + reject(new EmptyError_1.EmptyError()); + } + } + }); + source.subscribe(subscriber); + }); + } + exports2.firstValueFrom = firstValueFrom; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/always.js -var require_always = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/always.js"(exports2, module2) { - var _curry1 = require_curry1(); - var always = /* @__PURE__ */ _curry1(function always2(val) { - return function() { - return val; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js +var require_ArgumentOutOfRangeError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ArgumentOutOfRangeError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function(_super) { + return function ArgumentOutOfRangeErrorImpl() { + _super(this); + this.name = "ArgumentOutOfRangeError"; + this.message = "argument out of range"; }; }); - module2.exports = always; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/times.js -var require_times = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/times.js"(exports2, module2) { - var _curry2 = require_curry2(); - var times = /* @__PURE__ */ _curry2(function times2(fn2, n) { - var len = Number(n); - var idx = 0; - var list; - if (len < 0 || isNaN(len)) { - throw new RangeError("n must be a non-negative number"); - } - list = new Array(len); - while (idx < len) { - list[idx] = fn2(idx); - idx += 1; - } - return list; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js +var require_NotFoundError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NotFoundError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.NotFoundError = createErrorClass_1.createErrorClass(function(_super) { + return function NotFoundErrorImpl(message2) { + _super(this); + this.name = "NotFoundError"; + this.message = message2; + }; }); - module2.exports = times; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/repeat.js -var require_repeat2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/repeat.js"(exports2, module2) { - var _curry2 = require_curry2(); - var always = require_always(); - var times = require_times(); - var repeat = /* @__PURE__ */ _curry2(function repeat2(value, n) { - return times(always(value), n); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js +var require_SequenceError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SequenceError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.SequenceError = createErrorClass_1.createErrorClass(function(_super) { + return function SequenceErrorImpl(message2) { + _super(this); + this.name = "SequenceError"; + this.message = message2; + }; }); - module2.exports = repeat; } }); -// ../../node_modules/.pnpm/char-regex@1.0.2/node_modules/char-regex/index.js -var require_char_regex = __commonJS({ - "../../node_modules/.pnpm/char-regex@1.0.2/node_modules/char-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isDate.js +var require_isDate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isDate.js"(exports2) { "use strict"; - module2.exports = () => { - const astralRange = "\\ud800-\\udfff"; - const comboMarksRange = "\\u0300-\\u036f"; - const comboHalfMarksRange = "\\ufe20-\\ufe2f"; - const comboSymbolsRange = "\\u20d0-\\u20ff"; - const comboMarksExtendedRange = "\\u1ab0-\\u1aff"; - const comboMarksSupplementRange = "\\u1dc0-\\u1dff"; - const comboRange = comboMarksRange + comboHalfMarksRange + comboSymbolsRange + comboMarksExtendedRange + comboMarksSupplementRange; - const varRange = "\\ufe0e\\ufe0f"; - const familyRange = "\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83C\\uDF93"; - const astral = `[${astralRange}]`; - const combo = `[${comboRange}]`; - const fitz = "\\ud83c[\\udffb-\\udfff]"; - const modifier = `(?:${combo}|${fitz})`; - const nonAstral = `[^${astralRange}]`; - const regional = "(?:\\uD83C[\\uDDE6-\\uDDFF]){2}"; - const surrogatePair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; - const zwj = "\\u200d"; - const blackFlag = "(?:\\ud83c\\udff4\\udb40\\udc67\\udb40\\udc62\\udb40(?:\\udc65|\\udc73|\\udc77)\\udb40(?:\\udc6e|\\udc63|\\udc6c)\\udb40(?:\\udc67|\\udc74|\\udc73)\\udb40\\udc7f)"; - const family = `[${familyRange}]`; - const optModifier = `${modifier}?`; - const optVar = `[${varRange}]?`; - const optJoin = `(?:${zwj}(?:${[nonAstral, regional, surrogatePair].join("|")})${optVar + optModifier})*`; - const seq = optVar + optModifier + optJoin; - const nonAstralCombo = `${nonAstral}${combo}?`; - const symbol = `(?:${[nonAstralCombo, combo, regional, surrogatePair, astral, family].join("|")})`; - return new RegExp(`${blackFlag}|${fitz}(?=${fitz})|${symbol + seq}`, "g"); - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isValidDate = void 0; + function isValidDate(value) { + return value instanceof Date && !isNaN(value); + } + exports2.isValidDate = isValidDate; } }); -// ../../node_modules/.pnpm/string-length@4.0.2/node_modules/string-length/index.js -var require_string_length = __commonJS({ - "../../node_modules/.pnpm/string-length@4.0.2/node_modules/string-length/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeout.js +var require_timeout = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeout.js"(exports2) { "use strict"; - var stripAnsi = require_strip_ansi(); - var charRegex = require_char_regex(); - var stringLength = (string) => { - if (string === "") { - return 0; - } - const strippedString = stripAnsi(string); - if (strippedString === "") { - return 0; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timeout = exports2.TimeoutError = void 0; + var async_1 = require_async(); + var isDate_1 = require_isDate(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var createErrorClass_1 = require_createErrorClass(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var executeSchedule_1 = require_executeSchedule(); + exports2.TimeoutError = createErrorClass_1.createErrorClass(function(_super) { + return function TimeoutErrorImpl(info) { + if (info === void 0) { + info = null; + } + _super(this); + this.message = "Timeout has occurred"; + this.name = "TimeoutError"; + this.info = info; + }; + }); + function timeout(config, schedulerArg) { + var _a = isDate_1.isValidDate(config) ? { first: config } : typeof config === "number" ? { each: config } : config, first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d; + if (first == null && each == null) { + throw new TypeError("No timeout provided."); } - return strippedString.match(charRegex()).length; - }; - module2.exports = stringLength; + return lift_1.operate(function(source, subscriber) { + var originalSourceSubscription; + var timerSubscription; + var lastValue = null; + var seen = 0; + var startTimer = function(delay) { + timerSubscription = executeSchedule_1.executeSchedule(subscriber, scheduler, function() { + try { + originalSourceSubscription.unsubscribe(); + innerFrom_1.innerFrom(_with({ + meta, + lastValue, + seen + })).subscribe(subscriber); + } catch (err) { + subscriber.error(err); + } + }, delay); + }; + originalSourceSubscription = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); + seen++; + subscriber.next(lastValue = value); + each > 0 && startTimer(each); + }, void 0, void 0, function() { + if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) { + timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); + } + lastValue = null; + })); + !seen && startTimer(first != null ? typeof first === "number" ? first : +first - scheduler.now() : each); + }); + } + exports2.timeout = timeout; + function timeoutErrorFactory(info) { + throw new exports2.TimeoutError(info); + } } }); -// ../default-reporter/lib/reporterForClient/reportStats.js -var require_reportStats = __commonJS({ - "../default-reporter/lib/reporterForClient/reportStats.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/map.js +var require_map2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/map.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var chalk_1 = __importDefault(require_source()); - var repeat_1 = __importDefault(require_repeat2()); - var string_length_1 = __importDefault(require_string_length()); - var constants_1 = require_constants2(); - var outputConstants_1 = require_outputConstants(); - var zooming_1 = require_zooming(); - exports2.default = (log$, opts) => { - const stats$ = opts.isRecursive ? log$.stats : log$.stats.pipe(operators_1.filter((log2) => log2.prefix !== opts.cwd)); - const outputs = [ - statsForNotCurrentPackage(stats$, { - cmd: opts.cmd, - currentPrefix: opts.cwd, - width: opts.width - }) - ]; - if (!opts.isRecursive) { - outputs.push(statsForCurrentPackage(log$.stats, { - cmd: opts.cmd, - currentPrefix: opts.cwd, - width: opts.width + exports2.map = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function map(project, thisArg) { + return lift_1.operate(function(source, subscriber) { + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + subscriber.next(project.call(thisArg, value, index++)); })); - } - return outputs; - }; - function statsForCurrentPackage(stats$, opts) { - return stats$.pipe(operators_1.filter((log2) => log2.prefix === opts.currentPrefix), operators_1.take(opts.cmd === "install" || opts.cmd === "install-test" || opts.cmd === "add" || opts.cmd === "update" ? 2 : 1), operators_1.reduce((acc, log2) => { - if (typeof log2["added"] === "number") { - acc["added"] = log2["added"]; - } else if (typeof log2["removed"] === "number") { - acc["removed"] = log2["removed"]; - } - return acc; - }, {}), operators_1.map((stats) => { - if (!stats["removed"] && !stats["added"]) { - if (opts.cmd === "link") { - return Rx.NEVER; - } - return Rx.of({ msg: "Already up-to-date" }); - } - let msg = "Packages:"; - if (stats["added"]) { - msg += " " + chalk_1.default.green(`+${stats["added"].toString()}`); - } - if (stats["removed"]) { - msg += " " + chalk_1.default.red(`-${stats["removed"].toString()}`); - } - msg += constants_1.EOL + printPlusesAndMinuses(opts.width, stats["added"] || 0, stats["removed"] || 0); - return Rx.of({ msg }); - })); + }); } - function statsForNotCurrentPackage(stats$, opts) { - const stats = {}; - const cookedStats$ = opts.cmd !== "remove" ? stats$.pipe(operators_1.map((log2) => { - if (!stats[log2.prefix]) { - stats[log2.prefix] = log2; - return { seed: stats, value: null }; - } else if (typeof stats[log2.prefix].added === "number" && typeof log2["added"] === "number") { - stats[log2.prefix].added += log2["added"]; - return { seed: stats, value: null }; - } else if (typeof stats[log2.prefix].removed === "number" && typeof log2["removed"] === "number") { - stats[log2.prefix].removed += log2["removed"]; - return { seed: stats, value: null }; - } else { - const value = { ...stats[log2.prefix], ...log2 }; - delete stats[log2.prefix]; - return value; - } - }, {})) : stats$; - return cookedStats$.pipe(operators_1.filter((stats2) => stats2 !== null && (stats2["removed"] || stats2["added"])), operators_1.map((stats2) => { - const parts = []; - if (stats2["added"]) { - parts.push(padStep(chalk_1.default.green(`+${stats2["added"].toString()}`), 4)); - } - if (stats2["removed"]) { - parts.push(padStep(chalk_1.default.red(`-${stats2["removed"].toString()}`), 4)); + exports2.map = map; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js +var require_mapOneOrManyArgs = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } - let msg = zooming_1.zoomOut(opts.currentPrefix, stats2["prefix"], parts.join(" ")); - const rest = Math.max(0, opts.width - 1 - string_length_1.default(msg)); - msg += " " + printPlusesAndMinuses(rest, roundStats(stats2["added"] || 0), roundStats(stats2["removed"] || 0)); - return Rx.of({ msg }); - })); - } - function padStep(s, step) { - const sLength = string_length_1.default(s); - const placeholderLength = Math.ceil(sLength / step) * step; - if (sLength < placeholderLength) { - return repeat_1.default(" ", placeholderLength - sLength).join("") + s; } - return s; + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapOneOrManyArgs = void 0; + var map_1 = require_map2(); + var isArray = Array.isArray; + function callOrApply(fn2, args2) { + return isArray(args2) ? fn2.apply(void 0, __spreadArray3([], __read4(args2))) : fn2(args2); } - function roundStats(stat) { - if (stat === 0) - return 0; - return Math.max(1, Math.round(stat / 10)); + function mapOneOrManyArgs(fn2) { + return map_1.map(function(args2) { + return callOrApply(fn2, args2); + }); } - function printPlusesAndMinuses(maxWidth, added, removed) { - if (maxWidth === 0) - return ""; - const changes = added + removed; - let addedChars; - let removedChars; - if (changes > maxWidth) { - if (!added) { - addedChars = 0; - removedChars = maxWidth; - } else if (!removed) { - addedChars = maxWidth; - removedChars = 0; + exports2.mapOneOrManyArgs = mapOneOrManyArgs; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js +var require_bindCallbackInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindCallbackInternals = void 0; + var isScheduler_1 = require_isScheduler(); + var Observable_1 = require_Observable(); + var subscribeOn_1 = require_subscribeOn(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var observeOn_1 = require_observeOn(); + var AsyncSubject_1 = require_AsyncSubject(); + function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) { + if (resultSelector) { + if (isScheduler_1.isScheduler(resultSelector)) { + scheduler = resultSelector; } else { - const p = maxWidth / changes; - addedChars = Math.min(Math.max(Math.floor(added * p), 1), maxWidth - 1); - removedChars = maxWidth - addedChars; + return function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler).apply(this, args2).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + }; } - } else { - addedChars = added; - removedChars = removed; } - return `${repeat_1.default(outputConstants_1.ADDED_CHAR, addedChars).join("")}${repeat_1.default(outputConstants_1.REMOVED_CHAR, removedChars).join("")}`; + if (scheduler) { + return function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc).apply(this, args2).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); + }; + } + return function() { + var _this = this; + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + var subject = new AsyncSubject_1.AsyncSubject(); + var uninitialized = true; + return new Observable_1.Observable(function(subscriber) { + var subs = subject.subscribe(subscriber); + if (uninitialized) { + uninitialized = false; + var isAsync_1 = false; + var isComplete_1 = false; + callbackFunc.apply(_this, __spreadArray3(__spreadArray3([], __read4(args2)), [ + function() { + var results = []; + for (var _i2 = 0; _i2 < arguments.length; _i2++) { + results[_i2] = arguments[_i2]; + } + if (isNodeStyle) { + var err = results.shift(); + if (err != null) { + subject.error(err); + return; + } + } + subject.next(1 < results.length ? results : results[0]); + isComplete_1 = true; + if (isAsync_1) { + subject.complete(); + } + } + ])); + if (isComplete_1) { + subject.complete(); + } + isAsync_1 = true; + } + return subs; + }); + }; } + exports2.bindCallbackInternals = bindCallbackInternals; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/constants.js -var require_constants3 = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/constants.js"(exports2, module2) { - var SEMVER_SPEC_VERSION = "2.0.0"; - var MAX_LENGTH = 256; - var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; - var MAX_SAFE_COMPONENT_LENGTH = 16; - module2.exports = { - SEMVER_SPEC_VERSION, - MAX_LENGTH, - MAX_SAFE_INTEGER, - MAX_SAFE_COMPONENT_LENGTH - }; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js +var require_bindCallback = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindCallback = void 0; + var bindCallbackInternals_1 = require_bindCallbackInternals(); + function bindCallback(callbackFunc, resultSelector, scheduler) { + return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler); + } + exports2.bindCallback = bindCallback; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/debug.js -var require_debug = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/debug.js"(exports2, module2) { - var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args2) => console.error("SEMVER", ...args2) : () => { - }; - module2.exports = debug; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js +var require_bindNodeCallback = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindNodeCallback = void 0; + var bindCallbackInternals_1 = require_bindCallbackInternals(); + function bindNodeCallback(callbackFunc, resultSelector, scheduler) { + return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler); + } + exports2.bindNodeCallback = bindNodeCallback; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/re.js -var require_re = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/re.js"(exports2, module2) { - var { MAX_SAFE_COMPONENT_LENGTH } = require_constants3(); - var debug = require_debug(); - exports2 = module2.exports = {}; - var re = exports2.re = []; - var src = exports2.src = []; - var t = exports2.t = {}; - var R = 0; - var createToken = (name, value, isGlobal) => { - const index = R++; - debug(index, value); - t[name] = index; - src[index] = value; - re[index] = new RegExp(value, isGlobal ? "g" : void 0); - }; - createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); - createToken("NUMERICIDENTIFIERLOOSE", "[0-9]+"); - createToken("NONNUMERICIDENTIFIER", "\\d*[a-zA-Z-][a-zA-Z0-9-]*"); - createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); - createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); - createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NUMERICIDENTIFIER]}|${src[t.NONNUMERICIDENTIFIER]})`); - createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NUMERICIDENTIFIERLOOSE]}|${src[t.NONNUMERICIDENTIFIER]})`); - createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); - createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); - createToken("BUILDIDENTIFIER", "[0-9A-Za-z-]+"); - createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); - createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); - createToken("FULL", `^${src[t.FULLPLAIN]}$`); - createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); - createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); - createToken("GTLT", "((?:<|>)?=?)"); - createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); - createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); - createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); - createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); - createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); - createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); - createToken("COERCE", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:$|[^\\d])`); - createToken("COERCERTL", src[t.COERCE], true); - createToken("LONETILDE", "(?:~>?)"); - createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); - exports2.tildeTrimReplace = "$1~"; - createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); - createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); - createToken("LONECARET", "(?:\\^)"); - createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); - exports2.caretTrimReplace = "$1^"; - createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); - createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); - createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); - createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); - createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); - exports2.comparatorTrimReplace = "$1$2$3"; - createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); - createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); - createToken("STAR", "(<|>)?=?\\s*\\*"); - createToken("GTE0", "^\\s*>=\\s*0.0.0\\s*$"); - createToken("GTE0PRE", "^\\s*>=\\s*0.0.0-0\\s*$"); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js +var require_argsArgArrayOrObject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.argsArgArrayOrObject = void 0; + var isArray = Array.isArray; + var getPrototypeOf = Object.getPrototypeOf; + var objectProto = Object.prototype; + var getKeys = Object.keys; + function argsArgArrayOrObject(args2) { + if (args2.length === 1) { + var first_1 = args2[0]; + if (isArray(first_1)) { + return { args: first_1, keys: null }; + } + if (isPOJO(first_1)) { + var keys = getKeys(first_1); + return { + args: keys.map(function(key) { + return first_1[key]; + }), + keys + }; + } + } + return { args: args2, keys: null }; + } + exports2.argsArgArrayOrObject = argsArgArrayOrObject; + function isPOJO(obj) { + return obj && typeof obj === "object" && getPrototypeOf(obj) === objectProto; + } } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/parse-options.js -var require_parse_options = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/parse-options.js"(exports2, module2) { - var opts = ["includePrerelease", "loose", "rtl"]; - var parseOptions = (options) => !options ? {} : typeof options !== "object" ? { loose: true } : opts.filter((k) => options[k]).reduce((options2, k) => { - options2[k] = true; - return options2; - }, {}); - module2.exports = parseOptions; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createObject.js +var require_createObject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createObject = void 0; + function createObject(keys, values) { + return keys.reduce(function(result2, key, i) { + return result2[key] = values[i], result2; + }, {}); + } + exports2.createObject = createObject; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/identifiers.js -var require_identifiers = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/internal/identifiers.js"(exports2, module2) { - var numeric = /^[0-9]+$/; - var compareIdentifiers = (a, b) => { - const anum = numeric.test(a); - const bnum = numeric.test(b); - if (anum && bnum) { - a = +a; - b = +b; - } - return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; - }; - var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a); - module2.exports = { - compareIdentifiers, - rcompareIdentifiers - }; - } -}); - -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/semver.js -var require_semver = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/semver.js"(exports2, module2) { - var debug = require_debug(); - var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants3(); - var { re, t } = require_re(); - var parseOptions = require_parse_options(); - var { compareIdentifiers } = require_identifiers(); - var SemVer = class { - constructor(version, options) { - options = parseOptions(options); - if (version instanceof SemVer) { - if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { - return version; - } else { - version = version.version; - } - } else if (typeof version !== "string") { - throw new TypeError(`Invalid Version: ${version}`); - } - if (version.length > MAX_LENGTH) { - throw new TypeError(`version is longer than ${MAX_LENGTH} characters`); - } - debug("SemVer", version, options); - this.options = options; - this.loose = !!options.loose; - this.includePrerelease = !!options.includePrerelease; - const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); - if (!m) { - throw new TypeError(`Invalid Version: ${version}`); - } - this.raw = version; - this.major = +m[1]; - this.minor = +m[2]; - this.patch = +m[3]; - if (this.major > MAX_SAFE_INTEGER || this.major < 0) { - throw new TypeError("Invalid major version"); - } - if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { - throw new TypeError("Invalid minor version"); - } - if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { - throw new TypeError("Invalid patch version"); - } - if (!m[4]) { - this.prerelease = []; - } else { - this.prerelease = m[4].split(".").map((id) => { - if (/^[0-9]+$/.test(id)) { - const num = +id; - if (num >= 0 && num < MAX_SAFE_INTEGER) { - return num; - } - } - return id; - }); - } - this.build = m[5] ? m[5].split(".") : []; - this.format(); - } - format() { - this.version = `${this.major}.${this.minor}.${this.patch}`; - if (this.prerelease.length) { - this.version += `-${this.prerelease.join(".")}`; - } - return this.version; - } - toString() { - return this.version; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js +var require_combineLatest = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestInit = exports2.combineLatest = void 0; + var Observable_1 = require_Observable(); + var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); + var from_1 = require_from2(); + var identity_1 = require_identity(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var args_1 = require_args(); + var createObject_1 = require_createObject(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var executeSchedule_1 = require_executeSchedule(); + function combineLatest() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - compare(other) { - debug("SemVer.compare", this.version, this.options, other); - if (!(other instanceof SemVer)) { - if (typeof other === "string" && other === this.version) { - return 0; - } - other = new SemVer(other, this.options); - } - if (other.version === this.version) { - return 0; - } - return this.compareMain(other) || this.comparePre(other); + var scheduler = args_1.popScheduler(args2); + var resultSelector = args_1.popResultSelector(args2); + var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args2), observables = _a.args, keys = _a.keys; + if (observables.length === 0) { + return from_1.from([], scheduler); } - compareMain(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); + var result2 = new Observable_1.Observable(combineLatestInit(observables, scheduler, keys ? function(values) { + return createObject_1.createObject(keys, values); + } : identity_1.identity)); + return resultSelector ? result2.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result2; + } + exports2.combineLatest = combineLatest; + function combineLatestInit(observables, scheduler, valueTransform) { + if (valueTransform === void 0) { + valueTransform = identity_1.identity; } - comparePre(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - if (this.prerelease.length && !other.prerelease.length) { - return -1; - } else if (!this.prerelease.length && other.prerelease.length) { - return 1; - } else if (!this.prerelease.length && !other.prerelease.length) { - return 0; - } - let i = 0; - do { - const a = this.prerelease[i]; - const b = other.prerelease[i]; - debug("prerelease compare", i, a, b); - if (a === void 0 && b === void 0) { - return 0; - } else if (b === void 0) { - return 1; - } else if (a === void 0) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); + return function(subscriber) { + maybeSchedule(scheduler, function() { + var length = observables.length; + var values = new Array(length); + var active = length; + var remainingFirstValues = length; + var _loop_1 = function(i2) { + maybeSchedule(scheduler, function() { + var source = from_1.from(observables[i2], scheduler); + var hasFirstValue = false; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + values[i2] = value; + if (!hasFirstValue) { + hasFirstValue = true; + remainingFirstValues--; + } + if (!remainingFirstValues) { + subscriber.next(valueTransform(values.slice())); + } + }, function() { + if (!--active) { + subscriber.complete(); + } + })); + }, subscriber); + }; + for (var i = 0; i < length; i++) { + _loop_1(i); } - } while (++i); + }, subscriber); + }; + } + exports2.combineLatestInit = combineLatestInit; + function maybeSchedule(scheduler, execute, subscription) { + if (scheduler) { + executeSchedule_1.executeSchedule(subscription, scheduler, execute); + } else { + execute(); } - compareBuild(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js +var require_mergeInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeInternals = void 0; + var innerFrom_1 = require_innerFrom(); + var executeSchedule_1 = require_executeSchedule(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) { + var buffer = []; + var active = 0; + var index = 0; + var isComplete = false; + var checkComplete = function() { + if (isComplete && !buffer.length && !active) { + subscriber.complete(); } - let i = 0; - do { - const a = this.build[i]; - const b = other.build[i]; - debug("prerelease compare", i, a, b); - if (a === void 0 && b === void 0) { - return 0; - } else if (b === void 0) { - return 1; - } else if (a === void 0) { - return -1; - } else if (a === b) { - continue; + }; + var outerNext = function(value) { + return active < concurrent ? doInnerSub(value) : buffer.push(value); + }; + var doInnerSub = function(value) { + expand && subscriber.next(value); + active++; + var innerComplete = false; + innerFrom_1.innerFrom(project(value, index++)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) { + onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue); + if (expand) { + outerNext(innerValue); } else { - return compareIdentifiers(a, b); + subscriber.next(innerValue); } - } while (++i); - } - inc(release, identifier) { - switch (release) { - case "premajor": - this.prerelease.length = 0; - this.patch = 0; - this.minor = 0; - this.major++; - this.inc("pre", identifier); - break; - case "preminor": - this.prerelease.length = 0; - this.patch = 0; - this.minor++; - this.inc("pre", identifier); - break; - case "prepatch": - this.prerelease.length = 0; - this.inc("patch", identifier); - this.inc("pre", identifier); - break; - case "prerelease": - if (this.prerelease.length === 0) { - this.inc("patch", identifier); - } - this.inc("pre", identifier); - break; - case "major": - if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { - this.major++; - } - this.minor = 0; - this.patch = 0; - this.prerelease = []; - break; - case "minor": - if (this.patch !== 0 || this.prerelease.length === 0) { - this.minor++; - } - this.patch = 0; - this.prerelease = []; - break; - case "patch": - if (this.prerelease.length === 0) { - this.patch++; - } - this.prerelease = []; - break; - case "pre": - if (this.prerelease.length === 0) { - this.prerelease = [0]; - } else { - let i = this.prerelease.length; - while (--i >= 0) { - if (typeof this.prerelease[i] === "number") { - this.prerelease[i]++; - i = -2; - } - } - if (i === -1) { - this.prerelease.push(0); - } - } - if (identifier) { - if (this.prerelease[0] === identifier) { - if (isNaN(this.prerelease[1])) { - this.prerelease = [identifier, 0]; + }, function() { + innerComplete = true; + }, void 0, function() { + if (innerComplete) { + try { + active--; + var _loop_1 = function() { + var bufferedValue = buffer.shift(); + if (innerSubScheduler) { + executeSchedule_1.executeSchedule(subscriber, innerSubScheduler, function() { + return doInnerSub(bufferedValue); + }); + } else { + doInnerSub(bufferedValue); } - } else { - this.prerelease = [identifier, 0]; + }; + while (buffer.length && active < concurrent) { + _loop_1(); } + checkComplete(); + } catch (err) { + subscriber.error(err); } - break; - default: - throw new Error(`invalid increment argument: ${release}`); - } - this.format(); - this.raw = this.version; - return this; - } - }; - module2.exports = SemVer; + } + })); + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, outerNext, function() { + isComplete = true; + checkComplete(); + })); + return function() { + additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer(); + }; + } + exports2.mergeInternals = mergeInternals; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/parse.js -var require_parse = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/parse.js"(exports2, module2) { - var { MAX_LENGTH } = require_constants3(); - var { re, t } = require_re(); - var SemVer = require_semver(); - var parseOptions = require_parse_options(); - var parse = (version, options) => { - options = parseOptions(options); - if (version instanceof SemVer) { - return version; - } - if (typeof version !== "string") { - return null; - } - if (version.length > MAX_LENGTH) { - return null; - } - const r = options.loose ? re[t.LOOSE] : re[t.FULL]; - if (!r.test(version)) { - return null; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js +var require_mergeMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeMap = void 0; + var map_1 = require_map2(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + var isFunction_1 = require_isFunction(); + function mergeMap(project, resultSelector, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; } - try { - return new SemVer(version, options); - } catch (er) { - return null; + if (isFunction_1.isFunction(resultSelector)) { + return mergeMap(function(a, i) { + return map_1.map(function(b, ii) { + return resultSelector(a, b, i, ii); + })(innerFrom_1.innerFrom(project(a, i))); + }, concurrent); + } else if (typeof resultSelector === "number") { + concurrent = resultSelector; } - }; - module2.exports = parse; + return lift_1.operate(function(source, subscriber) { + return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent); + }); + } + exports2.mergeMap = mergeMap; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/valid.js -var require_valid = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/valid.js"(exports2, module2) { - var parse = require_parse(); - var valid = (version, options) => { - const v = parse(version, options); - return v ? v.version : null; - }; - module2.exports = valid; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js +var require_mergeAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeAll = void 0; + var mergeMap_1 = require_mergeMap(); + var identity_1 = require_identity(); + function mergeAll(concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; + } + return mergeMap_1.mergeMap(identity_1.identity, concurrent); + } + exports2.mergeAll = mergeAll; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/clean.js -var require_clean = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/clean.js"(exports2, module2) { - var parse = require_parse(); - var clean = (version, options) => { - const s = parse(version.trim().replace(/^[=v]+/, ""), options); - return s ? s.version : null; - }; - module2.exports = clean; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js +var require_concatAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatAll = void 0; + var mergeAll_1 = require_mergeAll(); + function concatAll() { + return mergeAll_1.mergeAll(1); + } + exports2.concatAll = concatAll; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/inc.js -var require_inc = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/inc.js"(exports2, module2) { - var SemVer = require_semver(); - var inc = (version, release, options, identifier) => { - if (typeof options === "string") { - identifier = options; - options = void 0; - } - try { - return new SemVer(version, options).inc(release, identifier).version; - } catch (er) { - return null; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/concat.js +var require_concat = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/concat.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concat = void 0; + var concatAll_1 = require_concatAll(); + var args_1 = require_args(); + var from_1 = require_from2(); + function concat() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - }; - module2.exports = inc; - } -}); - -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare.js -var require_compare = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare.js"(exports2, module2) { - var SemVer = require_semver(); - var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)); - module2.exports = compare; + return concatAll_1.concatAll()(from_1.from(args2, args_1.popScheduler(args2))); + } + exports2.concat = concat; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/eq.js -var require_eq = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/eq.js"(exports2, module2) { - var compare = require_compare(); - var eq = (a, b, loose) => compare(a, b, loose) === 0; - module2.exports = eq; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/defer.js +var require_defer = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/defer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defer = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + function defer(observableFactory) { + return new Observable_1.Observable(function(subscriber) { + innerFrom_1.innerFrom(observableFactory()).subscribe(subscriber); + }); + } + exports2.defer = defer; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/diff.js -var require_diff = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/diff.js"(exports2, module2) { - var parse = require_parse(); - var eq = require_eq(); - var diff = (version1, version2) => { - if (eq(version1, version2)) { - return null; - } else { - const v1 = parse(version1); - const v2 = parse(version2); - const hasPre = v1.prerelease.length || v2.prerelease.length; - const prefix = hasPre ? "pre" : ""; - const defaultResult = hasPre ? "prerelease" : ""; - for (const key in v1) { - if (key === "major" || key === "minor" || key === "patch") { - if (v1[key] !== v2[key]) { - return prefix + key; - } +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/connectable.js +var require_connectable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/connectable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.connectable = void 0; + var Subject_1 = require_Subject(); + var Observable_1 = require_Observable(); + var defer_1 = require_defer(); + var DEFAULT_CONFIG = { + connector: function() { + return new Subject_1.Subject(); + }, + resetOnDisconnect: true + }; + function connectable(source, config) { + if (config === void 0) { + config = DEFAULT_CONFIG; + } + var connection = null; + var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a; + var subject = connector(); + var result2 = new Observable_1.Observable(function(subscriber) { + return subject.subscribe(subscriber); + }); + result2.connect = function() { + if (!connection || connection.closed) { + connection = defer_1.defer(function() { + return source; + }).subscribe(subject); + if (resetOnDisconnect) { + connection.add(function() { + return subject = connector(); + }); } } - return defaultResult; - } - }; - module2.exports = diff; + return connection; + }; + return result2; + } + exports2.connectable = connectable; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/major.js -var require_major = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/major.js"(exports2, module2) { - var SemVer = require_semver(); - var major = (a, loose) => new SemVer(a, loose).major; - module2.exports = major; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js +var require_forkJoin = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.forkJoin = void 0; + var Observable_1 = require_Observable(); + var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); + var innerFrom_1 = require_innerFrom(); + var args_1 = require_args(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var createObject_1 = require_createObject(); + function forkJoin() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + var resultSelector = args_1.popResultSelector(args2); + var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args2), sources = _a.args, keys = _a.keys; + var result2 = new Observable_1.Observable(function(subscriber) { + var length = sources.length; + if (!length) { + subscriber.complete(); + return; + } + var values = new Array(length); + var remainingCompletions = length; + var remainingEmissions = length; + var _loop_1 = function(sourceIndex2) { + var hasValue = false; + innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (!hasValue) { + hasValue = true; + remainingEmissions--; + } + values[sourceIndex2] = value; + }, function() { + return remainingCompletions--; + }, void 0, function() { + if (!remainingCompletions || !hasValue) { + if (!remainingEmissions) { + subscriber.next(keys ? createObject_1.createObject(keys, values) : values); + } + subscriber.complete(); + } + })); + }; + for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) { + _loop_1(sourceIndex); + } + }); + return resultSelector ? result2.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result2; + } + exports2.forkJoin = forkJoin; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/minor.js -var require_minor = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/minor.js"(exports2, module2) { - var SemVer = require_semver(); - var minor = (a, loose) => new SemVer(a, loose).minor; - module2.exports = minor; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js +var require_fromEvent = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromEvent = void 0; + var innerFrom_1 = require_innerFrom(); + var Observable_1 = require_Observable(); + var mergeMap_1 = require_mergeMap(); + var isArrayLike_1 = require_isArrayLike(); + var isFunction_1 = require_isFunction(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var nodeEventEmitterMethods = ["addListener", "removeListener"]; + var eventTargetMethods = ["addEventListener", "removeEventListener"]; + var jqueryMethods = ["on", "off"]; + function fromEvent(target, eventName, options, resultSelector) { + if (isFunction_1.isFunction(options)) { + resultSelector = options; + options = void 0; + } + if (resultSelector) { + return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + } + var _a = __read4(isEventTarget(target) ? eventTargetMethods.map(function(methodName) { + return function(handler) { + return target[methodName](eventName, handler, options); + }; + }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add = _a[0], remove = _a[1]; + if (!add) { + if (isArrayLike_1.isArrayLike(target)) { + return mergeMap_1.mergeMap(function(subTarget) { + return fromEvent(subTarget, eventName, options); + })(innerFrom_1.innerFrom(target)); + } + } + if (!add) { + throw new TypeError("Invalid event target"); + } + return new Observable_1.Observable(function(subscriber) { + var handler = function() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + return subscriber.next(1 < args2.length ? args2 : args2[0]); + }; + add(handler); + return function() { + return remove(handler); + }; + }); + } + exports2.fromEvent = fromEvent; + function toCommonHandlerRegistry(target, eventName) { + return function(methodName) { + return function(handler) { + return target[methodName](eventName, handler); + }; + }; + } + function isNodeStyleEventEmitter(target) { + return isFunction_1.isFunction(target.addListener) && isFunction_1.isFunction(target.removeListener); + } + function isJQueryStyleEventEmitter(target) { + return isFunction_1.isFunction(target.on) && isFunction_1.isFunction(target.off); + } + function isEventTarget(target) { + return isFunction_1.isFunction(target.addEventListener) && isFunction_1.isFunction(target.removeEventListener); + } } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/patch.js -var require_patch = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/patch.js"(exports2, module2) { - var SemVer = require_semver(); - var patch = (a, loose) => new SemVer(a, loose).patch; - module2.exports = patch; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js +var require_fromEventPattern = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromEventPattern = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + function fromEventPattern(addHandler, removeHandler, resultSelector) { + if (resultSelector) { + return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + } + return new Observable_1.Observable(function(subscriber) { + var handler = function() { + var e = []; + for (var _i = 0; _i < arguments.length; _i++) { + e[_i] = arguments[_i]; + } + return subscriber.next(e.length === 1 ? e[0] : e); + }; + var retValue = addHandler(handler); + return isFunction_1.isFunction(removeHandler) ? function() { + return removeHandler(handler, retValue); + } : void 0; + }); + } + exports2.fromEventPattern = fromEventPattern; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/prerelease.js -var require_prerelease = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/prerelease.js"(exports2, module2) { - var parse = require_parse(); - var prerelease = (version, options) => { - const parsed = parse(version, options); - return parsed && parsed.prerelease.length ? parsed.prerelease : null; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/generate.js +var require_generate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/generate.js"(exports2) { + "use strict"; + var __generator4 = exports2 && exports2.__generator || function(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } }; - module2.exports = prerelease; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.generate = void 0; + var identity_1 = require_identity(); + var isScheduler_1 = require_isScheduler(); + var defer_1 = require_defer(); + var scheduleIterable_1 = require_scheduleIterable(); + function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) { + var _a, _b; + var resultSelector; + var initialState; + if (arguments.length === 1) { + _a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler = _a.scheduler; + } else { + initialState = initialStateOrOptions; + if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) { + resultSelector = identity_1.identity; + scheduler = resultSelectorOrScheduler; + } else { + resultSelector = resultSelectorOrScheduler; + } + } + function gen() { + var state; + return __generator4(this, function(_a2) { + switch (_a2.label) { + case 0: + state = initialState; + _a2.label = 1; + case 1: + if (!(!condition || condition(state))) + return [3, 4]; + return [4, resultSelector(state)]; + case 2: + _a2.sent(); + _a2.label = 3; + case 3: + state = iterate(state); + return [3, 1]; + case 4: + return [2]; + } + }); + } + return defer_1.defer(scheduler ? function() { + return scheduleIterable_1.scheduleIterable(gen(), scheduler); + } : gen); + } + exports2.generate = generate; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/rcompare.js -var require_rcompare = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/rcompare.js"(exports2, module2) { - var compare = require_compare(); - var rcompare = (a, b, loose) => compare(b, a, loose); - module2.exports = rcompare; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/iif.js +var require_iif = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/iif.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.iif = void 0; + var defer_1 = require_defer(); + function iif(condition, trueResult, falseResult) { + return defer_1.defer(function() { + return condition() ? trueResult : falseResult; + }); + } + exports2.iif = iif; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare-loose.js -var require_compare_loose = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare-loose.js"(exports2, module2) { - var compare = require_compare(); - var compareLoose = (a, b) => compare(a, b, true); - module2.exports = compareLoose; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/timer.js +var require_timer2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/timer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timer = void 0; + var Observable_1 = require_Observable(); + var async_1 = require_async(); + var isScheduler_1 = require_isScheduler(); + var isDate_1 = require_isDate(); + function timer(dueTime, intervalOrScheduler, scheduler) { + if (dueTime === void 0) { + dueTime = 0; + } + if (scheduler === void 0) { + scheduler = async_1.async; + } + var intervalDuration = -1; + if (intervalOrScheduler != null) { + if (isScheduler_1.isScheduler(intervalOrScheduler)) { + scheduler = intervalOrScheduler; + } else { + intervalDuration = intervalOrScheduler; + } + } + return new Observable_1.Observable(function(subscriber) { + var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime; + if (due < 0) { + due = 0; + } + var n = 0; + return scheduler.schedule(function() { + if (!subscriber.closed) { + subscriber.next(n++); + if (0 <= intervalDuration) { + this.schedule(void 0, intervalDuration); + } else { + subscriber.complete(); + } + } + }, due); + }); + } + exports2.timer = timer; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare-build.js -var require_compare_build = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/compare-build.js"(exports2, module2) { - var SemVer = require_semver(); - var compareBuild = (a, b, loose) => { - const versionA = new SemVer(a, loose); - const versionB = new SemVer(b, loose); - return versionA.compare(versionB) || versionA.compareBuild(versionB); - }; - module2.exports = compareBuild; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/interval.js +var require_interval = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/interval.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.interval = void 0; + var async_1 = require_async(); + var timer_1 = require_timer2(); + function interval(period, scheduler) { + if (period === void 0) { + period = 0; + } + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + if (period < 0) { + period = 0; + } + return timer_1.timer(period, period, scheduler); + } + exports2.interval = interval; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/sort.js -var require_sort2 = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/sort.js"(exports2, module2) { - var compareBuild = require_compare_build(); - var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)); - module2.exports = sort; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/merge.js +var require_merge2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/merge.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var mergeAll_1 = require_mergeAll(); + var innerFrom_1 = require_innerFrom(); + var empty_1 = require_empty(); + var args_1 = require_args(); + var from_1 = require_from2(); + function merge() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args2); + var concurrent = args_1.popNumber(args2, Infinity); + var sources = args2; + return !sources.length ? empty_1.EMPTY : sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : mergeAll_1.mergeAll(concurrent)(from_1.from(sources, scheduler)); + } + exports2.merge = merge; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/rsort.js -var require_rsort = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/rsort.js"(exports2, module2) { - var compareBuild = require_compare_build(); - var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)); - module2.exports = rsort; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/never.js +var require_never = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/never.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.never = exports2.NEVER = void 0; + var Observable_1 = require_Observable(); + var noop_1 = require_noop(); + exports2.NEVER = new Observable_1.Observable(noop_1.noop); + function never() { + return exports2.NEVER; + } + exports2.never = never; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/gt.js -var require_gt = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/gt.js"(exports2, module2) { - var compare = require_compare(); - var gt = (a, b, loose) => compare(a, b, loose) > 0; - module2.exports = gt; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js +var require_argsOrArgArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.argsOrArgArray = void 0; + var isArray = Array.isArray; + function argsOrArgArray(args2) { + return args2.length === 1 && isArray(args2[0]) ? args2[0] : args2; + } + exports2.argsOrArgArray = argsOrArgArray; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/lt.js -var require_lt = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/lt.js"(exports2, module2) { - var compare = require_compare(); - var lt = (a, b, loose) => compare(a, b, loose) < 0; - module2.exports = lt; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js +var require_onErrorResumeNext = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.onErrorResumeNext = void 0; + var Observable_1 = require_Observable(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function onErrorResumeNext() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + var nextSources = argsOrArgArray_1.argsOrArgArray(sources); + return new Observable_1.Observable(function(subscriber) { + var sourceIndex = 0; + var subscribeNext = function() { + if (sourceIndex < nextSources.length) { + var nextSource = void 0; + try { + nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]); + } catch (err) { + subscribeNext(); + return; + } + var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, noop_1.noop, noop_1.noop); + nextSource.subscribe(innerSubscriber); + innerSubscriber.add(subscribeNext); + } else { + subscriber.complete(); + } + }; + subscribeNext(); + }); + } + exports2.onErrorResumeNext = onErrorResumeNext; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/neq.js -var require_neq = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/neq.js"(exports2, module2) { - var compare = require_compare(); - var neq = (a, b, loose) => compare(a, b, loose) !== 0; - module2.exports = neq; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/pairs.js +var require_pairs2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/pairs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pairs = void 0; + var from_1 = require_from2(); + function pairs(obj, scheduler) { + return from_1.from(Object.entries(obj), scheduler); + } + exports2.pairs = pairs; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/gte.js -var require_gte = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/gte.js"(exports2, module2) { - var compare = require_compare(); - var gte = (a, b, loose) => compare(a, b, loose) >= 0; - module2.exports = gte; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/not.js +var require_not = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/not.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.not = void 0; + function not(pred, thisArg) { + return function(value, index) { + return !pred.call(thisArg, value, index); + }; + } + exports2.not = not; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/lte.js -var require_lte = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/lte.js"(exports2, module2) { - var compare = require_compare(); - var lte = (a, b, loose) => compare(a, b, loose) <= 0; - module2.exports = lte; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/filter.js +var require_filter = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/filter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filter = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function filter(predicate, thisArg) { + return lift_1.operate(function(source, subscriber) { + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return predicate.call(thisArg, value, index++) && subscriber.next(value); + })); + }); + } + exports2.filter = filter; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/cmp.js -var require_cmp = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/cmp.js"(exports2, module2) { - var eq = require_eq(); - var neq = require_neq(); - var gt = require_gt(); - var gte = require_gte(); - var lt = require_lt(); - var lte = require_lte(); - var cmp = (a, op, b, loose) => { - switch (op) { - case "===": - if (typeof a === "object") - a = a.version; - if (typeof b === "object") - b = b.version; - return a === b; - case "!==": - if (typeof a === "object") - a = a.version; - if (typeof b === "object") - b = b.version; - return a !== b; - case "": - case "=": - case "==": - return eq(a, b, loose); - case "!=": - return neq(a, b, loose); - case ">": - return gt(a, b, loose); - case ">=": - return gte(a, b, loose); - case "<": - return lt(a, b, loose); - case "<=": - return lte(a, b, loose); - default: - throw new TypeError(`Invalid operator: ${op}`); - } - }; - module2.exports = cmp; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/partition.js +var require_partition = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/partition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.partition = void 0; + var not_1 = require_not(); + var filter_1 = require_filter(); + var innerFrom_1 = require_innerFrom(); + function partition(source, predicate, thisArg) { + return [filter_1.filter(predicate, thisArg)(innerFrom_1.innerFrom(source)), filter_1.filter(not_1.not(predicate, thisArg))(innerFrom_1.innerFrom(source))]; + } + exports2.partition = partition; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/coerce.js -var require_coerce = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/coerce.js"(exports2, module2) { - var SemVer = require_semver(); - var parse = require_parse(); - var { re, t } = require_re(); - var coerce = (version, options) => { - if (version instanceof SemVer) { - return version; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/race.js +var require_race = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/race.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.raceInit = exports2.race = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function race() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; } - if (typeof version === "number") { - version = String(version); + sources = argsOrArgArray_1.argsOrArgArray(sources); + return sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources)); + } + exports2.race = race; + function raceInit(sources) { + return function(subscriber) { + var subscriptions = []; + var _loop_1 = function(i2) { + subscriptions.push(innerFrom_1.innerFrom(sources[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (subscriptions) { + for (var s = 0; s < subscriptions.length; s++) { + s !== i2 && subscriptions[s].unsubscribe(); + } + subscriptions = null; + } + subscriber.next(value); + }))); + }; + for (var i = 0; subscriptions && !subscriber.closed && i < sources.length; i++) { + _loop_1(i); + } + }; + } + exports2.raceInit = raceInit; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/range.js +var require_range = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/range.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.range = void 0; + var Observable_1 = require_Observable(); + var empty_1 = require_empty(); + function range(start, count, scheduler) { + if (count == null) { + count = start; + start = 0; } - if (typeof version !== "string") { - return null; + if (count <= 0) { + return empty_1.EMPTY; } - options = options || {}; - let match = null; - if (!options.rtl) { - match = version.match(re[t.COERCE]); - } else { - let next; - while ((next = re[t.COERCERTL].exec(version)) && (!match || match.index + match[0].length !== version.length)) { - if (!match || next.index + next[0].length !== match.index + match[0].length) { - match = next; + var end = count + start; + return new Observable_1.Observable(scheduler ? function(subscriber) { + var n = start; + return scheduler.schedule(function() { + if (n < end) { + subscriber.next(n++); + this.schedule(); + } else { + subscriber.complete(); } - re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length; + }); + } : function(subscriber) { + var n = start; + while (n < end && !subscriber.closed) { + subscriber.next(n++); } - re[t.COERCERTL].lastIndex = -1; - } - if (match === null) - return null; - return parse(`${match[2]}.${match[3] || "0"}.${match[4] || "0"}`, options); - }; - module2.exports = coerce; + subscriber.complete(); + }); + } + exports2.range = range; } }); -// ../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js -var require_iterator2 = __commonJS({ - "../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/using.js +var require_using = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/using.js"(exports2) { "use strict"; - module2.exports = function(Yallist) { - Yallist.prototype[Symbol.iterator] = function* () { - for (let walker = this.head; walker; walker = walker.next) { - yield walker.value; - } - }; - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.using = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var empty_1 = require_empty(); + function using(resourceFactory, observableFactory) { + return new Observable_1.Observable(function(subscriber) { + var resource = resourceFactory(); + var result2 = observableFactory(resource); + var source = result2 ? innerFrom_1.innerFrom(result2) : empty_1.EMPTY; + source.subscribe(subscriber); + return function() { + if (resource) { + resource.unsubscribe(); + } + }; + }); + } + exports2.using = using; } }); -// ../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js -var require_yallist = __commonJS({ - "../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/zip.js +var require_zip = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/zip.js"(exports2) { "use strict"; - module2.exports = Yallist; - Yallist.Node = Node; - Yallist.create = Yallist; - function Yallist(list) { - var self2 = this; - if (!(self2 instanceof Yallist)) { - self2 = new Yallist(); - } - self2.tail = null; - self2.head = null; - self2.length = 0; - if (list && typeof list.forEach === "function") { - list.forEach(function(item) { - self2.push(item); - }); - } else if (arguments.length > 0) { - for (var i = 0, l = arguments.length; i < l; i++) { - self2.push(arguments[i]); + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } } - return self2; - } - Yallist.prototype.removeNode = function(node) { - if (node.list !== this) { - throw new Error("removing node which does not belong to this list"); - } - var next = node.next; - var prev = node.prev; - if (next) { - next.prev = prev; - } - if (prev) { - prev.next = next; - } - if (node === this.head) { - this.head = next; - } - if (node === this.tail) { - this.tail = prev; - } - node.list.length--; - node.next = null; - node.prev = null; - node.list = null; - return next; + return ar; }; - Yallist.prototype.unshiftNode = function(node) { - if (node === this.head) { - return; - } - if (node.list) { - node.list.removeNode(node); - } - var head = this.head; - node.list = this; - node.next = head; - if (head) { - head.prev = node; - } - this.head = node; - if (!this.tail) { - this.tail = node; - } - this.length++; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - Yallist.prototype.pushNode = function(node) { - if (node === this.tail) { - return; - } - if (node.list) { - node.list.removeNode(node); - } - var tail = this.tail; - node.list = this; - node.prev = tail; - if (tail) { - tail.next = node; - } - this.tail = node; - if (!this.head) { - this.head = node; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zip = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var empty_1 = require_empty(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var args_1 = require_args(); + function zip() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - this.length++; - }; - Yallist.prototype.push = function() { - for (var i = 0, l = arguments.length; i < l; i++) { - push(this, arguments[i]); + var resultSelector = args_1.popResultSelector(args2); + var sources = argsOrArgArray_1.argsOrArgArray(args2); + return sources.length ? new Observable_1.Observable(function(subscriber) { + var buffers = sources.map(function() { + return []; + }); + var completed = sources.map(function() { + return false; + }); + subscriber.add(function() { + buffers = completed = null; + }); + var _loop_1 = function(sourceIndex2) { + innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + buffers[sourceIndex2].push(value); + if (buffers.every(function(buffer) { + return buffer.length; + })) { + var result2 = buffers.map(function(buffer) { + return buffer.shift(); + }); + subscriber.next(resultSelector ? resultSelector.apply(void 0, __spreadArray3([], __read4(result2))) : result2); + if (buffers.some(function(buffer, i) { + return !buffer.length && completed[i]; + })) { + subscriber.complete(); + } + } + }, function() { + completed[sourceIndex2] = true; + !buffers[sourceIndex2].length && subscriber.complete(); + })); + }; + for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) { + _loop_1(sourceIndex); + } + return function() { + buffers = completed = null; + }; + }) : empty_1.EMPTY; + } + exports2.zip = zip; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/types.js +var require_types3 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/audit.js +var require_audit = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/audit.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.audit = void 0; + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function audit(durationSelector) { + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + var lastValue = null; + var durationSubscriber = null; + var isComplete = false; + var endDuration = function() { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + durationSubscriber = null; + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber.next(value); + } + isComplete && subscriber.complete(); + }; + var cleanupDuration = function() { + durationSubscriber = null; + isComplete && subscriber.complete(); + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + hasValue = true; + lastValue = value; + if (!durationSubscriber) { + innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, endDuration, cleanupDuration)); + } + }, function() { + isComplete = true; + (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete(); + })); + }); + } + exports2.audit = audit; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js +var require_auditTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.auditTime = void 0; + var async_1 = require_async(); + var audit_1 = require_audit(); + var timer_1 = require_timer2(); + function auditTime(duration, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; } - return this.length; + return audit_1.audit(function() { + return timer_1.timer(duration, scheduler); + }); + } + exports2.auditTime = auditTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/buffer.js +var require_buffer = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/buffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buffer = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function buffer(closingNotifier) { + return lift_1.operate(function(source, subscriber) { + var currentBuffer = []; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return currentBuffer.push(value); + }, function() { + subscriber.next(currentBuffer); + subscriber.complete(); + })); + innerFrom_1.innerFrom(closingNotifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + var b = currentBuffer; + currentBuffer = []; + subscriber.next(b); + }, noop_1.noop)); + return function() { + currentBuffer = null; + }; + }); + } + exports2.buffer = buffer; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js +var require_bufferCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js"(exports2) { + "use strict"; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; - Yallist.prototype.unshift = function() { - for (var i = 0, l = arguments.length; i < l; i++) { - unshift(this, arguments[i]); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferCount = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + function bufferCount(bufferSize, startBufferEvery) { + if (startBufferEvery === void 0) { + startBufferEvery = null; } - return this.length; + startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize; + return lift_1.operate(function(source, subscriber) { + var buffers = []; + var count = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var e_1, _a, e_2, _b; + var toEmit = null; + if (count++ % startBufferEvery === 0) { + buffers.push([]); + } + try { + for (var buffers_1 = __values4(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { + var buffer = buffers_1_1.value; + buffer.push(value); + if (bufferSize <= buffer.length) { + toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : []; + toEmit.push(buffer); + } + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) + _a.call(buffers_1); + } finally { + if (e_1) + throw e_1.error; + } + } + if (toEmit) { + try { + for (var toEmit_1 = __values4(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) { + var buffer = toEmit_1_1.value; + arrRemove_1.arrRemove(buffers, buffer); + subscriber.next(buffer); + } + } catch (e_2_1) { + e_2 = { error: e_2_1 }; + } finally { + try { + if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) + _b.call(toEmit_1); + } finally { + if (e_2) + throw e_2.error; + } + } + } + }, function() { + var e_3, _a; + try { + for (var buffers_2 = __values4(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) { + var buffer = buffers_2_1.value; + subscriber.next(buffer); + } + } catch (e_3_1) { + e_3 = { error: e_3_1 }; + } finally { + try { + if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) + _a.call(buffers_2); + } finally { + if (e_3) + throw e_3.error; + } + } + subscriber.complete(); + }, void 0, function() { + buffers = null; + })); + }); + } + exports2.bufferCount = bufferCount; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js +var require_bufferTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js"(exports2) { + "use strict"; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; - Yallist.prototype.pop = function() { - if (!this.tail) { - return void 0; - } - var res = this.tail.value; - this.tail = this.tail.prev; - if (this.tail) { - this.tail.next = null; - } else { - this.head = null; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferTime = void 0; + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + var async_1 = require_async(); + var args_1 = require_args(); + var executeSchedule_1 = require_executeSchedule(); + function bufferTime(bufferTimeSpan) { + var _a, _b; + var otherArgs = []; + for (var _i = 1; _i < arguments.length; _i++) { + otherArgs[_i - 1] = arguments[_i]; } - this.length--; - return res; + var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; + var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; + var maxBufferSize = otherArgs[1] || Infinity; + return lift_1.operate(function(source, subscriber) { + var bufferRecords = []; + var restartOnEmit = false; + var emit = function(record) { + var buffer = record.buffer, subs = record.subs; + subs.unsubscribe(); + arrRemove_1.arrRemove(bufferRecords, record); + subscriber.next(buffer); + restartOnEmit && startBuffer(); + }; + var startBuffer = function() { + if (bufferRecords) { + var subs = new Subscription_1.Subscription(); + subscriber.add(subs); + var buffer = []; + var record_1 = { + buffer, + subs + }; + bufferRecords.push(record_1); + executeSchedule_1.executeSchedule(subs, scheduler, function() { + return emit(record_1); + }, bufferTimeSpan); + } + }; + if (bufferCreationInterval !== null && bufferCreationInterval >= 0) { + executeSchedule_1.executeSchedule(subscriber, scheduler, startBuffer, bufferCreationInterval, true); + } else { + restartOnEmit = true; + } + startBuffer(); + var bufferTimeSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var e_1, _a2; + var recordsCopy = bufferRecords.slice(); + try { + for (var recordsCopy_1 = __values4(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) { + var record = recordsCopy_1_1.value; + var buffer = record.buffer; + buffer.push(value); + maxBufferSize <= buffer.length && emit(record); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a2 = recordsCopy_1.return)) + _a2.call(recordsCopy_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) { + subscriber.next(bufferRecords.shift().buffer); + } + bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe(); + subscriber.complete(); + subscriber.unsubscribe(); + }, void 0, function() { + return bufferRecords = null; + }); + source.subscribe(bufferTimeSubscriber); + }); + } + exports2.bufferTime = bufferTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js +var require_bufferToggle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js"(exports2) { + "use strict"; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; - Yallist.prototype.shift = function() { - if (!this.head) { - return void 0; - } - var res = this.head.value; - this.head = this.head.next; - if (this.head) { - this.head.prev = null; - } else { - this.tail = null; - } - this.length--; - return res; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferToggle = void 0; + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var arrRemove_1 = require_arrRemove(); + function bufferToggle(openings, closingSelector) { + return lift_1.operate(function(source, subscriber) { + var buffers = []; + innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) { + var buffer = []; + buffers.push(buffer); + var closingSubscription = new Subscription_1.Subscription(); + var emitBuffer = function() { + arrRemove_1.arrRemove(buffers, buffer); + subscriber.next(buffer); + closingSubscription.unsubscribe(); + }; + closingSubscription.add(innerFrom_1.innerFrom(closingSelector(openValue)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, emitBuffer, noop_1.noop))); + }, noop_1.noop)); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var e_1, _a; + try { + for (var buffers_1 = __values4(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { + var buffer = buffers_1_1.value; + buffer.push(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) + _a.call(buffers_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (buffers.length > 0) { + subscriber.next(buffers.shift()); + } + subscriber.complete(); + })); + }); + } + exports2.bufferToggle = bufferToggle; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js +var require_bufferWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferWhen = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function bufferWhen(closingSelector) { + return lift_1.operate(function(source, subscriber) { + var buffer = null; + var closingSubscriber = null; + var openBuffer = function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + var b = buffer; + buffer = []; + b && subscriber.next(b); + innerFrom_1.innerFrom(closingSelector()).subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openBuffer, noop_1.noop)); + }; + openBuffer(); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return buffer === null || buffer === void 0 ? void 0 : buffer.push(value); + }, function() { + buffer && subscriber.next(buffer); + subscriber.complete(); + }, void 0, function() { + return buffer = closingSubscriber = null; + })); + }); + } + exports2.bufferWhen = bufferWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/catchError.js +var require_catchError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/catchError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.catchError = void 0; + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var lift_1 = require_lift(); + function catchError(selector) { + return lift_1.operate(function(source, subscriber) { + var innerSub = null; + var syncUnsub = false; + var handledResult; + innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) { + handledResult = innerFrom_1.innerFrom(selector(err, catchError(selector)(source))); + if (innerSub) { + innerSub.unsubscribe(); + innerSub = null; + handledResult.subscribe(subscriber); + } else { + syncUnsub = true; + } + })); + if (syncUnsub) { + innerSub.unsubscribe(); + innerSub = null; + handledResult.subscribe(subscriber); + } + }); + } + exports2.catchError = catchError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js +var require_scanInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scanInternals = void 0; + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) { + return function(source, subscriber) { + var hasState = hasSeed; + var state = seed; + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var i = index++; + state = hasState ? accumulator(state, value, i) : (hasState = true, value); + emitOnNext && subscriber.next(state); + }, emitBeforeComplete && function() { + hasState && subscriber.next(state); + subscriber.complete(); + })); + }; + } + exports2.scanInternals = scanInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/reduce.js +var require_reduce = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/reduce.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reduce = void 0; + var scanInternals_1 = require_scanInternals(); + var lift_1 = require_lift(); + function reduce(accumulator, seed) { + return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true)); + } + exports2.reduce = reduce; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/toArray.js +var require_toArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/toArray.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toArray = void 0; + var reduce_1 = require_reduce(); + var lift_1 = require_lift(); + var arrReducer = function(arr, value) { + return arr.push(value), arr; }; - Yallist.prototype.forEach = function(fn2, thisp) { - thisp = thisp || this; - for (var walker = this.head, i = 0; walker !== null; i++) { - fn2.call(thisp, walker.value, i, this); - walker = walker.next; + function toArray() { + return lift_1.operate(function(source, subscriber) { + reduce_1.reduce(arrReducer, [])(source).subscribe(subscriber); + }); + } + exports2.toArray = toArray; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js +var require_joinAllInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.joinAllInternals = void 0; + var identity_1 = require_identity(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var pipe_1 = require_pipe(); + var mergeMap_1 = require_mergeMap(); + var toArray_1 = require_toArray(); + function joinAllInternals(joinFn, project) { + return pipe_1.pipe(toArray_1.toArray(), mergeMap_1.mergeMap(function(sources) { + return joinFn(sources); + }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity); + } + exports2.joinAllInternals = joinAllInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js +var require_combineLatestAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestAll = void 0; + var combineLatest_1 = require_combineLatest(); + var joinAllInternals_1 = require_joinAllInternals(); + function combineLatestAll(project) { + return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project); + } + exports2.combineLatestAll = combineLatestAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js +var require_combineAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineAll = void 0; + var combineLatestAll_1 = require_combineLatestAll(); + exports2.combineAll = combineLatestAll_1.combineLatestAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js +var require_combineLatest2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } + return ar; }; - Yallist.prototype.forEachReverse = function(fn2, thisp) { - thisp = thisp || this; - for (var walker = this.tail, i = this.length - 1; walker !== null; i--) { - fn2.call(thisp, walker.value, i, this); - walker = walker.prev; - } + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - Yallist.prototype.get = function(n) { - for (var i = 0, walker = this.head; walker !== null && i < n; i++) { - walker = walker.next; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatest = void 0; + var combineLatest_1 = require_combineLatest(); + var lift_1 = require_lift(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var pipe_1 = require_pipe(); + var args_1 = require_args(); + function combineLatest() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - if (i === n && walker !== null) { - return walker.value; + var resultSelector = args_1.popResultSelector(args2); + return resultSelector ? pipe_1.pipe(combineLatest.apply(void 0, __spreadArray3([], __read4(args2))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : lift_1.operate(function(source, subscriber) { + combineLatest_1.combineLatestInit(__spreadArray3([source], __read4(argsOrArgArray_1.argsOrArgArray(args2))))(subscriber); + }); + } + exports2.combineLatest = combineLatest; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js +var require_combineLatestWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } + return ar; }; - Yallist.prototype.getReverse = function(n) { - for (var i = 0, walker = this.tail; walker !== null && i < n; i++) { - walker = walker.prev; - } - if (i === n && walker !== null) { - return walker.value; - } + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - Yallist.prototype.map = function(fn2, thisp) { - thisp = thisp || this; - var res = new Yallist(); - for (var walker = this.head; walker !== null; ) { - res.push(fn2.call(thisp, walker.value, this)); - walker = walker.next; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestWith = void 0; + var combineLatest_1 = require_combineLatest2(); + function combineLatestWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; } - return res; - }; - Yallist.prototype.mapReverse = function(fn2, thisp) { - thisp = thisp || this; - var res = new Yallist(); - for (var walker = this.tail; walker !== null; ) { - res.push(fn2.call(thisp, walker.value, this)); - walker = walker.prev; + return combineLatest_1.combineLatest.apply(void 0, __spreadArray3([], __read4(otherSources))); + } + exports2.combineLatestWith = combineLatestWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js +var require_concatMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatMap = void 0; + var mergeMap_1 = require_mergeMap(); + var isFunction_1 = require_isFunction(); + function concatMap(project, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1); + } + exports2.concatMap = concatMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js +var require_concatMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatMapTo = void 0; + var concatMap_1 = require_concatMap(); + var isFunction_1 = require_isFunction(); + function concatMapTo(innerObservable, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function() { + return innerObservable; + }, resultSelector) : concatMap_1.concatMap(function() { + return innerObservable; + }); + } + exports2.concatMapTo = concatMapTo; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concat.js +var require_concat2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concat.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } - return res; + return ar; }; - Yallist.prototype.reduce = function(fn2, initial) { - var acc; - var walker = this.head; - if (arguments.length > 1) { - acc = initial; - } else if (this.head) { - walker = this.head.next; - acc = this.head.value; - } else { - throw new TypeError("Reduce of empty list with no initial value"); - } - for (var i = 0; walker !== null; i++) { - acc = fn2(acc, walker.value, i); - walker = walker.next; - } - return acc; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - Yallist.prototype.reduceReverse = function(fn2, initial) { - var acc; - var walker = this.tail; - if (arguments.length > 1) { - acc = initial; - } else if (this.tail) { - walker = this.tail.prev; - acc = this.tail.value; - } else { - throw new TypeError("Reduce of empty list with no initial value"); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concat = void 0; + var lift_1 = require_lift(); + var concatAll_1 = require_concatAll(); + var args_1 = require_args(); + var from_1 = require_from2(); + function concat() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - for (var i = this.length - 1; walker !== null; i--) { - acc = fn2(acc, walker.value, i); - walker = walker.prev; + var scheduler = args_1.popScheduler(args2); + return lift_1.operate(function(source, subscriber) { + concatAll_1.concatAll()(from_1.from(__spreadArray3([source], __read4(args2)), scheduler)).subscribe(subscriber); + }); + } + exports2.concat = concat; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js +var require_concatWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } - return acc; + return ar; }; - Yallist.prototype.toArray = function() { - var arr = new Array(this.length); - for (var i = 0, walker = this.head; walker !== null; i++) { - arr[i] = walker.value; - walker = walker.next; - } - return arr; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - Yallist.prototype.toArrayReverse = function() { - var arr = new Array(this.length); - for (var i = 0, walker = this.tail; walker !== null; i++) { - arr[i] = walker.value; - walker = walker.prev; - } - return arr; - }; - Yallist.prototype.slice = function(from, to) { - to = to || this.length; - if (to < 0) { - to += this.length; - } - from = from || 0; - if (from < 0) { - from += this.length; - } - var ret = new Yallist(); - if (to < from || to < 0) { - return ret; - } - if (from < 0) { - from = 0; - } - if (to > this.length) { - to = this.length; - } - for (var i = 0, walker = this.head; walker !== null && i < from; i++) { - walker = walker.next; - } - for (; walker !== null && i < to; i++, walker = walker.next) { - ret.push(walker.value); - } - return ret; - }; - Yallist.prototype.sliceReverse = function(from, to) { - to = to || this.length; - if (to < 0) { - to += this.length; - } - from = from || 0; - if (from < 0) { - from += this.length; - } - var ret = new Yallist(); - if (to < from || to < 0) { - return ret; - } - if (from < 0) { - from = 0; - } - if (to > this.length) { - to = this.length; - } - for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) { - walker = walker.prev; - } - for (; walker !== null && i > from; i--, walker = walker.prev) { - ret.push(walker.value); - } - return ret; - }; - Yallist.prototype.splice = function(start, deleteCount, ...nodes) { - if (start > this.length) { - start = this.length - 1; - } - if (start < 0) { - start = this.length + start; - } - for (var i = 0, walker = this.head; walker !== null && i < start; i++) { - walker = walker.next; - } - var ret = []; - for (var i = 0; walker && i < deleteCount; i++) { - ret.push(walker.value); - walker = this.removeNode(walker); - } - if (walker === null) { - walker = this.tail; - } - if (walker !== this.head && walker !== this.tail) { - walker = walker.prev; - } - for (var i = 0; i < nodes.length; i++) { - walker = insert(this, walker, nodes[i]); - } - return ret; - }; - Yallist.prototype.reverse = function() { - var head = this.head; - var tail = this.tail; - for (var walker = head; walker !== null; walker = walker.prev) { - var p = walker.prev; - walker.prev = walker.next; - walker.next = p; - } - this.head = tail; - this.tail = head; - return this; - }; - function insert(self2, node, value) { - var inserted = node === self2.head ? new Node(value, null, node, self2) : new Node(value, node, node.next, self2); - if (inserted.next === null) { - self2.tail = inserted; - } - if (inserted.prev === null) { - self2.head = inserted; - } - self2.length++; - return inserted; - } - function push(self2, item) { - self2.tail = new Node(item, self2.tail, null, self2); - if (!self2.head) { - self2.head = self2.tail; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatWith = void 0; + var concat_1 = require_concat2(); + function concatWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; } - self2.length++; + return concat_1.concat.apply(void 0, __spreadArray3([], __read4(otherSources))); } - function unshift(self2, item) { - self2.head = new Node(item, null, self2.head, self2); - if (!self2.tail) { - self2.tail = self2.head; - } - self2.length++; + exports2.concatWith = concatWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js +var require_fromSubscribable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromSubscribable = void 0; + var Observable_1 = require_Observable(); + function fromSubscribable(subscribable) { + return new Observable_1.Observable(function(subscriber) { + return subscribable.subscribe(subscriber); + }); } - function Node(value, prev, next, list) { - if (!(this instanceof Node)) { - return new Node(value, prev, next, list); - } - this.list = list; - this.value = value; - if (prev) { - prev.next = this; - this.prev = prev; - } else { - this.prev = null; + exports2.fromSubscribable = fromSubscribable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/connect.js +var require_connect = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/connect.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.connect = void 0; + var Subject_1 = require_Subject(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var fromSubscribable_1 = require_fromSubscribable(); + var DEFAULT_CONFIG = { + connector: function() { + return new Subject_1.Subject(); } - if (next) { - next.prev = this; - this.next = next; - } else { - this.next = null; + }; + function connect(selector, config) { + if (config === void 0) { + config = DEFAULT_CONFIG; } + var connector = config.connector; + return lift_1.operate(function(source, subscriber) { + var subject = connector(); + innerFrom_1.innerFrom(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber); + subscriber.add(source.subscribe(subject)); + }); } - try { - require_iterator2()(Yallist); - } catch (er) { + exports2.connect = connect; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/count.js +var require_count = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/count.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.count = void 0; + var reduce_1 = require_reduce(); + function count(predicate) { + return reduce_1.reduce(function(total, value, i) { + return !predicate || predicate(value, i) ? total + 1 : total; + }, 0); } + exports2.count = count; } }); -// ../../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js -var require_lru_cache = __commonJS({ - "../../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounce.js +var require_debounce = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounce.js"(exports2) { "use strict"; - var Yallist = require_yallist(); - var MAX = Symbol("max"); - var LENGTH = Symbol("length"); - var LENGTH_CALCULATOR = Symbol("lengthCalculator"); - var ALLOW_STALE = Symbol("allowStale"); - var MAX_AGE = Symbol("maxAge"); - var DISPOSE = Symbol("dispose"); - var NO_DISPOSE_ON_SET = Symbol("noDisposeOnSet"); - var LRU_LIST = Symbol("lruList"); - var CACHE = Symbol("cache"); - var UPDATE_AGE_ON_GET = Symbol("updateAgeOnGet"); - var naiveLength = () => 1; - var LRUCache = class { - constructor(options) { - if (typeof options === "number") - options = { max: options }; - if (!options) - options = {}; - if (options.max && (typeof options.max !== "number" || options.max < 0)) - throw new TypeError("max must be a non-negative number"); - const max = this[MAX] = options.max || Infinity; - const lc = options.length || naiveLength; - this[LENGTH_CALCULATOR] = typeof lc !== "function" ? naiveLength : lc; - this[ALLOW_STALE] = options.stale || false; - if (options.maxAge && typeof options.maxAge !== "number") - throw new TypeError("maxAge must be a number"); - this[MAX_AGE] = options.maxAge || 0; - this[DISPOSE] = options.dispose; - this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false; - this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false; - this.reset(); - } - set max(mL) { - if (typeof mL !== "number" || mL < 0) - throw new TypeError("max must be a non-negative number"); - this[MAX] = mL || Infinity; - trim(this); - } - get max() { - return this[MAX]; - } - set allowStale(allowStale) { - this[ALLOW_STALE] = !!allowStale; - } - get allowStale() { - return this[ALLOW_STALE]; - } - set maxAge(mA) { - if (typeof mA !== "number") - throw new TypeError("maxAge must be a non-negative number"); - this[MAX_AGE] = mA; - trim(this); - } - get maxAge() { - return this[MAX_AGE]; - } - set lengthCalculator(lC) { - if (typeof lC !== "function") - lC = naiveLength; - if (lC !== this[LENGTH_CALCULATOR]) { - this[LENGTH_CALCULATOR] = lC; - this[LENGTH] = 0; - this[LRU_LIST].forEach((hit) => { - hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key); - this[LENGTH] += hit.length; - }); - } - trim(this); - } - get lengthCalculator() { - return this[LENGTH_CALCULATOR]; - } - get length() { - return this[LENGTH]; - } - get itemCount() { - return this[LRU_LIST].length; - } - rforEach(fn2, thisp) { - thisp = thisp || this; - for (let walker = this[LRU_LIST].tail; walker !== null; ) { - const prev = walker.prev; - forEachStep(this, fn2, walker, thisp); - walker = prev; - } - } - forEach(fn2, thisp) { - thisp = thisp || this; - for (let walker = this[LRU_LIST].head; walker !== null; ) { - const next = walker.next; - forEachStep(this, fn2, walker, thisp); - walker = next; - } - } - keys() { - return this[LRU_LIST].toArray().map((k) => k.key); - } - values() { - return this[LRU_LIST].toArray().map((k) => k.value); - } - reset() { - if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { - this[LRU_LIST].forEach((hit) => this[DISPOSE](hit.key, hit.value)); - } - this[CACHE] = new Map(); - this[LRU_LIST] = new Yallist(); - this[LENGTH] = 0; - } - dump() { - return this[LRU_LIST].map((hit) => isStale(this, hit) ? false : { - k: hit.key, - v: hit.value, - e: hit.now + (hit.maxAge || 0) - }).toArray().filter((h) => h); - } - dumpLru() { - return this[LRU_LIST]; - } - set(key, value, maxAge) { - maxAge = maxAge || this[MAX_AGE]; - if (maxAge && typeof maxAge !== "number") - throw new TypeError("maxAge must be a number"); - const now = maxAge ? Date.now() : 0; - const len = this[LENGTH_CALCULATOR](value, key); - if (this[CACHE].has(key)) { - if (len > this[MAX]) { - del(this, this[CACHE].get(key)); - return false; - } - const node = this[CACHE].get(key); - const item = node.value; - if (this[DISPOSE]) { - if (!this[NO_DISPOSE_ON_SET]) - this[DISPOSE](key, item.value); - } - item.now = now; - item.maxAge = maxAge; - item.value = value; - this[LENGTH] += len - item.length; - item.length = len; - this.get(key); - trim(this); - return true; - } - const hit = new Entry(key, value, len, now, maxAge); - if (hit.length > this[MAX]) { - if (this[DISPOSE]) - this[DISPOSE](key, value); - return false; - } - this[LENGTH] += hit.length; - this[LRU_LIST].unshift(hit); - this[CACHE].set(key, this[LRU_LIST].head); - trim(this); - return true; - } - has(key) { - if (!this[CACHE].has(key)) - return false; - const hit = this[CACHE].get(key).value; - return !isStale(this, hit); - } - get(key) { - return get(this, key, true); - } - peek(key) { - return get(this, key, false); - } - pop() { - const node = this[LRU_LIST].tail; - if (!node) - return null; - del(this, node); - return node.value; - } - del(key) { - del(this, this[CACHE].get(key)); - } - load(arr) { - this.reset(); - const now = Date.now(); - for (let l = arr.length - 1; l >= 0; l--) { - const hit = arr[l]; - const expiresAt = hit.e || 0; - if (expiresAt === 0) - this.set(hit.k, hit.v); - else { - const maxAge = expiresAt - now; - if (maxAge > 0) { - this.set(hit.k, hit.v, maxAge); - } - } - } - } - prune() { - this[CACHE].forEach((value, key) => get(this, key, false)); - } - }; - var get = (self2, key, doUse) => { - const node = self2[CACHE].get(key); - if (node) { - const hit = node.value; - if (isStale(self2, hit)) { - del(self2, node); - if (!self2[ALLOW_STALE]) - return void 0; - } else { - if (doUse) { - if (self2[UPDATE_AGE_ON_GET]) - node.value.now = Date.now(); - self2[LRU_LIST].unshiftNode(node); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.debounce = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function debounce(durationSelector) { + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + var lastValue = null; + var durationSubscriber = null; + var emit = function() { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + durationSubscriber = null; + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber.next(value); } - } - return hit.value; - } - }; - var isStale = (self2, hit) => { - if (!hit || !hit.maxAge && !self2[MAX_AGE]) - return false; - const diff = Date.now() - hit.now; - return hit.maxAge ? diff > hit.maxAge : self2[MAX_AGE] && diff > self2[MAX_AGE]; - }; - var trim = (self2) => { - if (self2[LENGTH] > self2[MAX]) { - for (let walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) { - const prev = walker.prev; - del(self2, walker); - walker = prev; - } - } - }; - var del = (self2, node) => { - if (node) { - const hit = node.value; - if (self2[DISPOSE]) - self2[DISPOSE](hit.key, hit.value); - self2[LENGTH] -= hit.length; - self2[CACHE].delete(hit.key); - self2[LRU_LIST].removeNode(node); - } - }; - var Entry = class { - constructor(key, value, length, now, maxAge) { - this.key = key; - this.value = value; - this.length = length; - this.now = now; - this.maxAge = maxAge || 0; - } - }; - var forEachStep = (self2, fn2, node, thisp) => { - let hit = node.value; - if (isStale(self2, hit)) { - del(self2, node); - if (!self2[ALLOW_STALE]) - hit = void 0; - } - if (hit) - fn2.call(thisp, hit.value, hit.key, self2); - }; - module2.exports = LRUCache; + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + hasValue = true; + lastValue = value; + durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, emit, noop_1.noop); + innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber); + }, function() { + emit(); + subscriber.complete(); + }, void 0, function() { + lastValue = durationSubscriber = null; + })); + }); + } + exports2.debounce = debounce; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/range.js -var require_range2 = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/range.js"(exports2, module2) { - var Range = class { - constructor(range, options) { - options = parseOptions(options); - if (range instanceof Range) { - if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) { - return range; - } else { - return new Range(range.raw, options); - } - } - if (range instanceof Comparator) { - this.raw = range.value; - this.set = [[range]]; - this.format(); - return this; - } - this.options = options; - this.loose = !!options.loose; - this.includePrerelease = !!options.includePrerelease; - this.raw = range; - this.set = range.split(/\s*\|\|\s*/).map((range2) => this.parseRange(range2.trim())).filter((c) => c.length); - if (!this.set.length) { - throw new TypeError(`Invalid SemVer Range: ${range}`); - } - if (this.set.length > 1) { - const first = this.set[0]; - this.set = this.set.filter((c) => !isNullSet(c[0])); - if (this.set.length === 0) - this.set = [first]; - else if (this.set.length > 1) { - for (const c of this.set) { - if (c.length === 1 && isAny(c[0])) { - this.set = [c]; - break; - } - } - } - } - this.format(); - } - format() { - this.range = this.set.map((comps) => { - return comps.join(" ").trim(); - }).join("||").trim(); - return this.range; - } - toString() { - return this.range; - } - parseRange(range) { - range = range.trim(); - const memoOpts = Object.keys(this.options).join(","); - const memoKey = `parseRange:${memoOpts}:${range}`; - const cached = cache.get(memoKey); - if (cached) - return cached; - const loose = this.options.loose; - const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; - range = range.replace(hr, hyphenReplace(this.options.includePrerelease)); - debug("hyphen replace", range); - range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); - debug("comparator trim", range, re[t.COMPARATORTRIM]); - range = range.replace(re[t.TILDETRIM], tildeTrimReplace); - range = range.replace(re[t.CARETTRIM], caretTrimReplace); - range = range.split(/\s+/).join(" "); - const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; - const rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options)).filter(this.options.loose ? (comp) => !!comp.match(compRe) : () => true).map((comp) => new Comparator(comp, this.options)); - const l = rangeList.length; - const rangeMap = new Map(); - for (const comp of rangeList) { - if (isNullSet(comp)) - return [comp]; - rangeMap.set(comp.value, comp); - } - if (rangeMap.size > 1 && rangeMap.has("")) - rangeMap.delete(""); - const result = [...rangeMap.values()]; - cache.set(memoKey, result); - return result; - } - intersects(range, options) { - if (!(range instanceof Range)) { - throw new TypeError("a Range is required"); - } - return this.set.some((thisComparators) => { - return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => { - return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => { - return rangeComparators.every((rangeComparator) => { - return thisComparator.intersects(rangeComparator, options); - }); - }); - }); - }); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js +var require_debounceTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.debounceTime = void 0; + var async_1 = require_async(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function debounceTime(dueTime, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; } - test(version) { - if (!version) { - return false; - } - if (typeof version === "string") { - try { - version = new SemVer(version, this.options); - } catch (er) { - return false; + return lift_1.operate(function(source, subscriber) { + var activeTask = null; + var lastValue = null; + var lastTime = null; + var emit = function() { + if (activeTask) { + activeTask.unsubscribe(); + activeTask = null; + var value = lastValue; + lastValue = null; + subscriber.next(value); } - } - for (let i = 0; i < this.set.length; i++) { - if (testSet(this.set[i], version, this.options)) { - return true; + }; + function emitWhenIdle() { + var targetTime = lastTime + dueTime; + var now = scheduler.now(); + if (now < targetTime) { + activeTask = this.schedule(void 0, targetTime - now); + subscriber.add(activeTask); + return; } + emit(); } - return false; - } - }; - module2.exports = Range; - var LRU = require_lru_cache(); - var cache = new LRU({ max: 1e3 }); - var parseOptions = require_parse_options(); - var Comparator = require_comparator(); - var debug = require_debug(); - var SemVer = require_semver(); - var { - re, - t, - comparatorTrimReplace, - tildeTrimReplace, - caretTrimReplace - } = require_re(); - var isNullSet = (c) => c.value === "<0.0.0-0"; - var isAny = (c) => c.value === ""; - var isSatisfiable = (comparators, options) => { - let result = true; - const remainingComparators = comparators.slice(); - let testComparator = remainingComparators.pop(); - while (result && remainingComparators.length) { - result = remainingComparators.every((otherComparator) => { - return testComparator.intersects(otherComparator, options); - }); - testComparator = remainingComparators.pop(); - } - return result; - }; - var parseComparator = (comp, options) => { - debug("comp", comp, options); - comp = replaceCarets(comp, options); - debug("caret", comp); - comp = replaceTildes(comp, options); - debug("tildes", comp); - comp = replaceXRanges(comp, options); - debug("xrange", comp); - comp = replaceStars(comp, options); - debug("stars", comp); - return comp; - }; - var isX = (id) => !id || id.toLowerCase() === "x" || id === "*"; - var replaceTildes = (comp, options) => comp.trim().split(/\s+/).map((comp2) => { - return replaceTilde(comp2, options); - }).join(" "); - var replaceTilde = (comp, options) => { - const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]; - return comp.replace(r, (_, M, m, p, pr) => { - debug("tilde", comp, _, M, m, p, pr); - let ret; - if (isX(M)) { - ret = ""; - } else if (isX(m)) { - ret = `>=${M}.0.0 <${+M + 1}.0.0-0`; - } else if (isX(p)) { - ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`; - } else if (pr) { - debug("replaceTilde pr", pr); - ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; - } else { - ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; - } - debug("tilde return", ret); - return ret; - }); - }; - var replaceCarets = (comp, options) => comp.trim().split(/\s+/).map((comp2) => { - return replaceCaret(comp2, options); - }).join(" "); - var replaceCaret = (comp, options) => { - debug("caret", comp, options); - const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]; - const z = options.includePrerelease ? "-0" : ""; - return comp.replace(r, (_, M, m, p, pr) => { - debug("caret", comp, _, M, m, p, pr); - let ret; - if (isX(M)) { - ret = ""; - } else if (isX(m)) { - ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; - } else if (isX(p)) { - if (M === "0") { - ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; - } else { - ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`; - } - } else if (pr) { - debug("replaceCaret pr", pr); - if (M === "0") { - if (m === "0") { - ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`; - } else { - ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; - } - } else { - ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`; - } - } else { - debug("no pr"); - if (M === "0") { - if (m === "0") { - ret = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0`; - } else { - ret = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0`; - } - } else { - ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + lastValue = value; + lastTime = scheduler.now(); + if (!activeTask) { + activeTask = scheduler.schedule(emitWhenIdle, dueTime); + subscriber.add(activeTask); } - } - debug("caret return", ret); - return ret; + }, function() { + emit(); + subscriber.complete(); + }, void 0, function() { + lastValue = activeTask = null; + })); }); - }; - var replaceXRanges = (comp, options) => { - debug("replaceXRanges", comp, options); - return comp.split(/\s+/).map((comp2) => { - return replaceXRange(comp2, options); - }).join(" "); - }; - var replaceXRange = (comp, options) => { - comp = comp.trim(); - const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; - return comp.replace(r, (ret, gtlt, M, m, p, pr) => { - debug("xRange", comp, ret, gtlt, M, m, p, pr); - const xM = isX(M); - const xm = xM || isX(m); - const xp = xm || isX(p); - const anyX = xp; - if (gtlt === "=" && anyX) { - gtlt = ""; - } - pr = options.includePrerelease ? "-0" : ""; - if (xM) { - if (gtlt === ">" || gtlt === "<") { - ret = "<0.0.0-0"; - } else { - ret = "*"; - } - } else if (gtlt && anyX) { - if (xm) { - m = 0; - } - p = 0; - if (gtlt === ">") { - gtlt = ">="; - if (xm) { - M = +M + 1; - m = 0; - p = 0; - } else { - m = +m + 1; - p = 0; - } - } else if (gtlt === "<=") { - gtlt = "<"; - if (xm) { - M = +M + 1; - } else { - m = +m + 1; - } + } + exports2.debounceTime = debounceTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js +var require_defaultIfEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultIfEmpty = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function defaultIfEmpty(defaultValue) { + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + hasValue = true; + subscriber.next(value); + }, function() { + if (!hasValue) { + subscriber.next(defaultValue); } - if (gtlt === "<") - pr = "-0"; - ret = `${gtlt + M}.${m}.${p}${pr}`; - } else if (xm) { - ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`; - } else if (xp) { - ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`; - } - debug("xRange return", ret); - return ret; + subscriber.complete(); + })); }); - }; - var replaceStars = (comp, options) => { - debug("replaceStars", comp, options); - return comp.trim().replace(re[t.STAR], ""); - }; - var replaceGTE0 = (comp, options) => { - debug("replaceGTE0", comp, options); - return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], ""); - }; - var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) => { - if (isX(fM)) { - from = ""; - } else if (isX(fm)) { - from = `>=${fM}.0.0${incPr ? "-0" : ""}`; - } else if (isX(fp)) { - from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`; - } else if (fpr) { - from = `>=${from}`; - } else { - from = `>=${from}${incPr ? "-0" : ""}`; - } - if (isX(tM)) { - to = ""; - } else if (isX(tm)) { - to = `<${+tM + 1}.0.0-0`; - } else if (isX(tp)) { - to = `<${tM}.${+tm + 1}.0-0`; - } else if (tpr) { - to = `<=${tM}.${tm}.${tp}-${tpr}`; - } else if (incPr) { - to = `<${tM}.${tm}.${+tp + 1}-0`; - } else { - to = `<=${to}`; - } - return `${from} ${to}`.trim(); - }; - var testSet = (set, version, options) => { - for (let i = 0; i < set.length; i++) { - if (!set[i].test(version)) { - return false; - } - } - if (version.prerelease.length && !options.includePrerelease) { - for (let i = 0; i < set.length; i++) { - debug(set[i].semver); - if (set[i].semver === Comparator.ANY) { - continue; - } - if (set[i].semver.prerelease.length > 0) { - const allowed = set[i].semver; - if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch) { - return true; - } - } - } - return false; - } - return true; - }; + } + exports2.defaultIfEmpty = defaultIfEmpty; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/comparator.js -var require_comparator = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/classes/comparator.js"(exports2, module2) { - var ANY = Symbol("SemVer ANY"); - var Comparator = class { - static get ANY() { - return ANY; - } - constructor(comp, options) { - options = parseOptions(options); - if (comp instanceof Comparator) { - if (comp.loose === !!options.loose) { - return comp; - } else { - comp = comp.value; - } - } - debug("comparator", comp, options); - this.options = options; - this.loose = !!options.loose; - this.parse(comp); - if (this.semver === ANY) { - this.value = ""; - } else { - this.value = this.operator + this.semver.version; - } - debug("comp", this); - } - parse(comp) { - const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; - const m = comp.match(r); - if (!m) { - throw new TypeError(`Invalid comparator: ${comp}`); - } - this.operator = m[1] !== void 0 ? m[1] : ""; - if (this.operator === "=") { - this.operator = ""; - } - if (!m[2]) { - this.semver = ANY; - } else { - this.semver = new SemVer(m[2], this.options.loose); - } - } - toString() { - return this.value; - } - test(version) { - debug("Comparator.test", version, this.options.loose); - if (this.semver === ANY || version === ANY) { - return true; - } - if (typeof version === "string") { - try { - version = new SemVer(version, this.options); - } catch (er) { - return false; - } - } - return cmp(version, this.operator, this.semver, this.options); - } - intersects(comp, options) { - if (!(comp instanceof Comparator)) { - throw new TypeError("a Comparator is required"); - } - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; - } - if (this.operator === "") { - if (this.value === "") { - return true; - } - return new Range(comp.value, options).test(this.value); - } else if (comp.operator === "") { - if (comp.value === "") { - return true; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/take.js +var require_take = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/take.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.take = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function take(count) { + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source, subscriber) { + var seen = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (++seen <= count) { + subscriber.next(value); + if (count <= seen) { + subscriber.complete(); + } } - return new Range(this.value, options).test(comp.semver); - } - const sameDirectionIncreasing = (this.operator === ">=" || this.operator === ">") && (comp.operator === ">=" || comp.operator === ">"); - const sameDirectionDecreasing = (this.operator === "<=" || this.operator === "<") && (comp.operator === "<=" || comp.operator === "<"); - const sameSemVer = this.semver.version === comp.semver.version; - const differentDirectionsInclusive = (this.operator === ">=" || this.operator === "<=") && (comp.operator === ">=" || comp.operator === "<="); - const oppositeDirectionsLessThan = cmp(this.semver, "<", comp.semver, options) && (this.operator === ">=" || this.operator === ">") && (comp.operator === "<=" || comp.operator === "<"); - const oppositeDirectionsGreaterThan = cmp(this.semver, ">", comp.semver, options) && (this.operator === "<=" || this.operator === "<") && (comp.operator === ">=" || comp.operator === ">"); - return sameDirectionIncreasing || sameDirectionDecreasing || sameSemVer && differentDirectionsInclusive || oppositeDirectionsLessThan || oppositeDirectionsGreaterThan; - } - }; - module2.exports = Comparator; - var parseOptions = require_parse_options(); - var { re, t } = require_re(); - var cmp = require_cmp(); - var debug = require_debug(); - var SemVer = require_semver(); - var Range = require_range2(); + })); + }); + } + exports2.take = take; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/satisfies.js -var require_satisfies = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/functions/satisfies.js"(exports2, module2) { - var Range = require_range2(); - var satisfies = (version, range, options) => { - try { - range = new Range(range, options); - } catch (er) { - return false; - } - return range.test(version); - }; - module2.exports = satisfies; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js +var require_ignoreElements = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ignoreElements = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + function ignoreElements() { + return lift_1.operate(function(source, subscriber) { + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, noop_1.noop)); + }); + } + exports2.ignoreElements = ignoreElements; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/to-comparators.js -var require_to_comparators = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/to-comparators.js"(exports2, module2) { - var Range = require_range2(); - var toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")); - module2.exports = toComparators; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js +var require_mapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapTo = void 0; + var map_1 = require_map2(); + function mapTo(value) { + return map_1.map(function() { + return value; + }); + } + exports2.mapTo = mapTo; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/max-satisfying.js -var require_max_satisfying = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) { - var SemVer = require_semver(); - var Range = require_range2(); - var maxSatisfying = (versions, range, options) => { - let max = null; - let maxSV = null; - let rangeObj = null; - try { - rangeObj = new Range(range, options); - } catch (er) { - return null; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js +var require_delayWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.delayWhen = void 0; + var concat_1 = require_concat(); + var take_1 = require_take(); + var ignoreElements_1 = require_ignoreElements(); + var mapTo_1 = require_mapTo(); + var mergeMap_1 = require_mergeMap(); + var innerFrom_1 = require_innerFrom(); + function delayWhen(delayDurationSelector, subscriptionDelay) { + if (subscriptionDelay) { + return function(source) { + return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source.pipe(delayWhen(delayDurationSelector))); + }; } - versions.forEach((v) => { - if (rangeObj.test(v)) { - if (!max || maxSV.compare(v) === -1) { - max = v; - maxSV = new SemVer(max, options); - } - } + return mergeMap_1.mergeMap(function(value, index) { + return innerFrom_1.innerFrom(delayDurationSelector(value, index)).pipe(take_1.take(1), mapTo_1.mapTo(value)); }); - return max; - }; - module2.exports = maxSatisfying; + } + exports2.delayWhen = delayWhen; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/min-satisfying.js -var require_min_satisfying = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) { - var SemVer = require_semver(); - var Range = require_range2(); - var minSatisfying = (versions, range, options) => { - let min = null; - let minSV = null; - let rangeObj = null; - try { - rangeObj = new Range(range, options); - } catch (er) { - return null; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delay.js +var require_delay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delay.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.delay = void 0; + var async_1 = require_async(); + var delayWhen_1 = require_delayWhen(); + var timer_1 = require_timer2(); + function delay(due, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; } - versions.forEach((v) => { - if (rangeObj.test(v)) { - if (!min || minSV.compare(v) === 1) { - min = v; - minSV = new SemVer(min, options); - } - } + var duration = timer_1.timer(due, scheduler); + return delayWhen_1.delayWhen(function() { + return duration; }); - return min; - }; - module2.exports = minSatisfying; + } + exports2.delay = delay; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/min-version.js -var require_min_version = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/min-version.js"(exports2, module2) { - var SemVer = require_semver(); - var Range = require_range2(); - var gt = require_gt(); - var minVersion = (range, loose) => { - range = new Range(range, loose); - let minver = new SemVer("0.0.0"); - if (range.test(minver)) { - return minver; - } - minver = new SemVer("0.0.0-0"); - if (range.test(minver)) { - return minver; - } - minver = null; - for (let i = 0; i < range.set.length; ++i) { - const comparators = range.set[i]; - let setMin = null; - comparators.forEach((comparator) => { - const compver = new SemVer(comparator.semver.version); - switch (comparator.operator) { - case ">": - if (compver.prerelease.length === 0) { - compver.patch++; - } else { - compver.prerelease.push(0); - } - compver.raw = compver.format(); - case "": - case ">=": - if (!setMin || gt(compver, setMin)) { - setMin = compver; - } - break; - case "<": - case "<=": - break; - default: - throw new Error(`Unexpected operation: ${comparator.operator}`); - } - }); - if (setMin && (!minver || gt(minver, setMin))) - minver = setMin; - } - if (minver && range.test(minver)) { - return minver; - } - return null; - }; - module2.exports = minVersion; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js +var require_dematerialize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dematerialize = void 0; + var Notification_1 = require_Notification(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function dematerialize() { + return lift_1.operate(function(source, subscriber) { + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(notification) { + return Notification_1.observeNotification(notification, subscriber); + })); + }); + } + exports2.dematerialize = dematerialize; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/valid.js -var require_valid2 = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/valid.js"(exports2, module2) { - var Range = require_range2(); - var validRange = (range, options) => { - try { - return new Range(range, options).range || "*"; - } catch (er) { - return null; - } - }; - module2.exports = validRange; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinct.js +var require_distinct = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinct.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinct = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function distinct(keySelector, flushes) { + return lift_1.operate(function(source, subscriber) { + var distinctKeys = /* @__PURE__ */ new Set(); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var key = keySelector ? keySelector(value) : value; + if (!distinctKeys.has(key)) { + distinctKeys.add(key); + subscriber.next(value); + } + })); + flushes && innerFrom_1.innerFrom(flushes).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + return distinctKeys.clear(); + }, noop_1.noop)); + }); + } + exports2.distinct = distinct; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/outside.js -var require_outside = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/outside.js"(exports2, module2) { - var SemVer = require_semver(); - var Comparator = require_comparator(); - var { ANY } = Comparator; - var Range = require_range2(); - var satisfies = require_satisfies(); - var gt = require_gt(); - var lt = require_lt(); - var lte = require_lte(); - var gte = require_gte(); - var outside = (version, range, hilo, options) => { - version = new SemVer(version, options); - range = new Range(range, options); - let gtfn, ltefn, ltfn, comp, ecomp; - switch (hilo) { - case ">": - gtfn = gt; - ltefn = lte; - ltfn = lt; - comp = ">"; - ecomp = ">="; - break; - case "<": - gtfn = lt; - ltefn = gte; - ltfn = gt; - comp = "<"; - ecomp = "<="; - break; - default: - throw new TypeError('Must provide a hilo val of "<" or ">"'); - } - if (satisfies(version, range, options)) { - return false; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js +var require_distinctUntilChanged = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinctUntilChanged = void 0; + var identity_1 = require_identity(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function distinctUntilChanged(comparator, keySelector) { + if (keySelector === void 0) { + keySelector = identity_1.identity; } - for (let i = 0; i < range.set.length; ++i) { - const comparators = range.set[i]; - let high = null; - let low = null; - comparators.forEach((comparator) => { - if (comparator.semver === ANY) { - comparator = new Comparator(">=0.0.0"); - } - high = high || comparator; - low = low || comparator; - if (gtfn(comparator.semver, high.semver, options)) { - high = comparator; - } else if (ltfn(comparator.semver, low.semver, options)) { - low = comparator; + comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare; + return lift_1.operate(function(source, subscriber) { + var previousKey; + var first = true; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var currentKey = keySelector(value); + if (first || !comparator(previousKey, currentKey)) { + first = false; + previousKey = currentKey; + subscriber.next(value); } - }); - if (high.operator === comp || high.operator === ecomp) { - return false; - } - if ((!low.operator || low.operator === comp) && ltefn(version, low.semver)) { - return false; - } else if (low.operator === ecomp && ltfn(version, low.semver)) { - return false; - } - } - return true; - }; - module2.exports = outside; - } -}); - -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/gtr.js -var require_gtr = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/gtr.js"(exports2, module2) { - var outside = require_outside(); - var gtr = (version, range, options) => outside(version, range, ">", options); - module2.exports = gtr; + })); + }); + } + exports2.distinctUntilChanged = distinctUntilChanged; + function defaultCompare(a, b) { + return a === b; + } } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/ltr.js -var require_ltr = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/ltr.js"(exports2, module2) { - var outside = require_outside(); - var ltr = (version, range, options) => outside(version, range, "<", options); - module2.exports = ltr; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js +var require_distinctUntilKeyChanged = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinctUntilKeyChanged = void 0; + var distinctUntilChanged_1 = require_distinctUntilChanged(); + function distinctUntilKeyChanged(key, compare) { + return distinctUntilChanged_1.distinctUntilChanged(function(x, y) { + return compare ? compare(x[key], y[key]) : x[key] === y[key]; + }); + } + exports2.distinctUntilKeyChanged = distinctUntilKeyChanged; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/intersects.js -var require_intersects = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/intersects.js"(exports2, module2) { - var Range = require_range2(); - var intersects = (r1, r2, options) => { - r1 = new Range(r1, options); - r2 = new Range(r2, options); - return r1.intersects(r2); - }; - module2.exports = intersects; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js +var require_throwIfEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throwIfEmpty = void 0; + var EmptyError_1 = require_EmptyError(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function throwIfEmpty(errorFactory) { + if (errorFactory === void 0) { + errorFactory = defaultErrorFactory; + } + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + hasValue = true; + subscriber.next(value); + }, function() { + return hasValue ? subscriber.complete() : subscriber.error(errorFactory()); + })); + }); + } + exports2.throwIfEmpty = throwIfEmpty; + function defaultErrorFactory() { + return new EmptyError_1.EmptyError(); + } } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/simplify.js -var require_simplify = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/simplify.js"(exports2, module2) { - var satisfies = require_satisfies(); - var compare = require_compare(); - module2.exports = (versions, range, options) => { - const set = []; - let min = null; - let prev = null; - const v = versions.sort((a, b) => compare(a, b, options)); - for (const version of v) { - const included = satisfies(version, range, options); - if (included) { - prev = version; - if (!min) - min = version; - } else { - if (prev) { - set.push([min, prev]); - } - prev = null; - min = null; - } - } - if (min) - set.push([min, null]); - const ranges = []; - for (const [min2, max] of set) { - if (min2 === max) - ranges.push(min2); - else if (!max && min2 === v[0]) - ranges.push("*"); - else if (!max) - ranges.push(`>=${min2}`); - else if (min2 === v[0]) - ranges.push(`<=${max}`); - else - ranges.push(`${min2} - ${max}`); +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js +var require_elementAt = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.elementAt = void 0; + var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); + var filter_1 = require_filter(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var take_1 = require_take(); + function elementAt(index, defaultValue) { + if (index < 0) { + throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); } - const simplified = ranges.join(" || "); - const original = typeof range.raw === "string" ? range.raw : String(range); - return simplified.length < original.length ? simplified : range; - }; + var hasDefaultValue = arguments.length >= 2; + return function(source) { + return source.pipe(filter_1.filter(function(v, i) { + return i === index; + }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); + })); + }; + } + exports2.elementAt = elementAt; } }); -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/subset.js -var require_subset = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/ranges/subset.js"(exports2, module2) { - var Range = require_range2(); - var Comparator = require_comparator(); - var { ANY } = Comparator; - var satisfies = require_satisfies(); - var compare = require_compare(); - var subset = (sub, dom, options = {}) => { - if (sub === dom) - return true; - sub = new Range(sub, options); - dom = new Range(dom, options); - let sawNonNull = false; - OUTER: - for (const simpleSub of sub.set) { - for (const simpleDom of dom.set) { - const isSub = simpleSubset(simpleSub, simpleDom, options); - sawNonNull = sawNonNull || isSub !== null; - if (isSub) - continue OUTER; - } - if (sawNonNull) - return false; - } - return true; - }; - var simpleSubset = (sub, dom, options) => { - if (sub === dom) - return true; - if (sub.length === 1 && sub[0].semver === ANY) { - if (dom.length === 1 && dom[0].semver === ANY) - return true; - else if (options.includePrerelease) - sub = [new Comparator(">=0.0.0-0")]; - else - sub = [new Comparator(">=0.0.0")]; - } - if (dom.length === 1 && dom[0].semver === ANY) { - if (options.includePrerelease) - return true; - else - dom = [new Comparator(">=0.0.0")]; - } - const eqSet = new Set(); - let gt, lt; - for (const c of sub) { - if (c.operator === ">" || c.operator === ">=") - gt = higherGT(gt, c, options); - else if (c.operator === "<" || c.operator === "<=") - lt = lowerLT(lt, c, options); - else - eqSet.add(c.semver); - } - if (eqSet.size > 1) - return null; - let gtltComp; - if (gt && lt) { - gtltComp = compare(gt.semver, lt.semver, options); - if (gtltComp > 0) - return null; - else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) - return null; - } - for (const eq of eqSet) { - if (gt && !satisfies(eq, String(gt), options)) - return null; - if (lt && !satisfies(eq, String(lt), options)) - return null; - for (const c of dom) { - if (!satisfies(eq, String(c), options)) - return false; - } - return true; - } - let higher, lower; - let hasDomLT, hasDomGT; - let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false; - let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false; - if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) { - needDomLTPre = false; - } - for (const c of dom) { - hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">="; - hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<="; - if (gt) { - if (needDomGTPre) { - if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) { - needDomGTPre = false; - } - } - if (c.operator === ">" || c.operator === ">=") { - higher = higherGT(gt, c, options); - if (higher === c && higher !== gt) - return false; - } else if (gt.operator === ">=" && !satisfies(gt.semver, String(c), options)) - return false; - } - if (lt) { - if (needDomLTPre) { - if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) { - needDomLTPre = false; - } - } - if (c.operator === "<" || c.operator === "<=") { - lower = lowerLT(lt, c, options); - if (lower === c && lower !== lt) - return false; - } else if (lt.operator === "<=" && !satisfies(lt.semver, String(c), options)) - return false; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/endWith.js +var require_endWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/endWith.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } - if (!c.operator && (lt || gt) && gtltComp !== 0) - return false; } - if (gt && hasDomLT && !lt && gtltComp !== 0) - return false; - if (lt && hasDomGT && !gt && gtltComp !== 0) - return false; - if (needDomGTPre || needDomLTPre) - return false; - return true; - }; - var higherGT = (a, b, options) => { - if (!a) - return b; - const comp = compare(a.semver, b.semver, options); - return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a; + return ar; }; - var lowerLT = (a, b, options) => { - if (!a) - return b; - const comp = compare(a.semver, b.semver, options); - return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - module2.exports = subset; - } -}); - -// ../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/index.js -var require_semver2 = __commonJS({ - "../../node_modules/.pnpm/semver@7.3.5/node_modules/semver/index.js"(exports2, module2) { - var internalRe = require_re(); - module2.exports = { - re: internalRe.re, - src: internalRe.src, - tokens: internalRe.t, - SEMVER_SPEC_VERSION: require_constants3().SEMVER_SPEC_VERSION, - SemVer: require_semver(), - compareIdentifiers: require_identifiers().compareIdentifiers, - rcompareIdentifiers: require_identifiers().rcompareIdentifiers, - parse: require_parse(), - valid: require_valid(), - clean: require_clean(), - inc: require_inc(), - diff: require_diff(), - major: require_major(), - minor: require_minor(), - patch: require_patch(), - prerelease: require_prerelease(), - compare: require_compare(), - rcompare: require_rcompare(), - compareLoose: require_compare_loose(), - compareBuild: require_compare_build(), - sort: require_sort2(), - rsort: require_rsort(), - gt: require_gt(), - lt: require_lt(), - eq: require_eq(), - neq: require_neq(), - gte: require_gte(), - lte: require_lte(), - cmp: require_cmp(), - coerce: require_coerce(), - Comparator: require_comparator(), - Range: require_range2(), - satisfies: require_satisfies(), - toComparators: require_to_comparators(), - maxSatisfying: require_max_satisfying(), - minSatisfying: require_min_satisfying(), - minVersion: require_min_version(), - validRange: require_valid2(), - outside: require_outside(), - gtr: require_gtr(), - ltr: require_ltr(), - intersects: require_intersects(), - simplifyRange: require_simplify(), - subset: require_subset() - }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_objectAssign.js -var require_objectAssign = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_objectAssign.js"(exports2, module2) { - var _has = require_has(); - function _objectAssign(target) { - if (target == null) { - throw new TypeError("Cannot convert undefined or null to object"); - } - var output = Object(target); - var idx = 1; - var length = arguments.length; - while (idx < length) { - var source = arguments[idx]; - if (source != null) { - for (var nextKey in source) { - if (_has(nextKey, source)) { - output[nextKey] = source[nextKey]; - } - } - } - idx += 1; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.endWith = void 0; + var concat_1 = require_concat(); + var of_1 = require_of(); + function endWith() { + var values = []; + for (var _i = 0; _i < arguments.length; _i++) { + values[_i] = arguments[_i]; } - return output; + return function(source) { + return concat_1.concat(source, of_1.of.apply(void 0, __spreadArray3([], __read4(values)))); + }; } - module2.exports = typeof Object.assign === "function" ? Object.assign : _objectAssign; + exports2.endWith = endWith; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/merge.js -var require_merge3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/merge.js"(exports2, module2) { - var _objectAssign = require_objectAssign(); - var _curry2 = require_curry2(); - var merge = /* @__PURE__ */ _curry2(function merge2(l, r) { - return _objectAssign({}, l, r); - }); - module2.exports = merge; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/every.js +var require_every = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/every.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.every = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function every(predicate, thisArg) { + return lift_1.operate(function(source, subscriber) { + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (!predicate.call(thisArg, value, index++, source)) { + subscriber.next(false); + subscriber.complete(); + } + }, function() { + subscriber.next(true); + subscriber.complete(); + })); + }); + } + exports2.every = every; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_indexOf.js -var require_indexOf = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_indexOf.js"(exports2, module2) { - var equals = require_equals2(); - function _indexOf(list, a, idx) { - var inf, item; - if (typeof list.indexOf === "function") { - switch (typeof a) { - case "number": - if (a === 0) { - inf = 1 / a; - while (idx < list.length) { - item = list[idx]; - if (item === 0 && 1 / item === inf) { - return idx; - } - idx += 1; - } - return -1; - } else if (a !== a) { - while (idx < list.length) { - item = list[idx]; - if (typeof item === "number" && item !== item) { - return idx; - } - idx += 1; - } - return -1; - } - return list.indexOf(a, idx); - case "string": - case "boolean": - case "function": - case "undefined": - return list.indexOf(a, idx); - case "object": - if (a === null) { - return list.indexOf(a, idx); - } - } - } - while (idx < list.length) { - if (equals(list[idx], a)) { - return idx; - } - idx += 1; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js +var require_exhaustMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaustMap = void 0; + var map_1 = require_map2(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function exhaustMap(project, resultSelector) { + if (resultSelector) { + return function(source) { + return source.pipe(exhaustMap(function(a, i) { + return innerFrom_1.innerFrom(project(a, i)).pipe(map_1.map(function(b, ii) { + return resultSelector(a, b, i, ii); + })); + })); + }; } - return -1; + return lift_1.operate(function(source, subscriber) { + var index = 0; + var innerSub = null; + var isComplete = false; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(outerValue) { + if (!innerSub) { + innerSub = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { + innerSub = null; + isComplete && subscriber.complete(); + }); + innerFrom_1.innerFrom(project(outerValue, index++)).subscribe(innerSub); + } + }, function() { + isComplete = true; + !innerSub && subscriber.complete(); + })); + }); } - module2.exports = _indexOf; + exports2.exhaustMap = exhaustMap; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_includes.js -var require_includes = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_includes.js"(exports2, module2) { - var _indexOf = require_indexOf(); - function _includes(a, list) { - return _indexOf(list, a, 0) >= 0; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js +var require_exhaustAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaustAll = void 0; + var exhaustMap_1 = require_exhaustMap(); + var identity_1 = require_identity(); + function exhaustAll() { + return exhaustMap_1.exhaustMap(identity_1.identity); } - module2.exports = _includes; + exports2.exhaustAll = exhaustAll; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_Set.js -var require_Set = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_Set.js"(exports2, module2) { - var _includes = require_includes(); - var _Set = /* @__PURE__ */ function() { - function _Set2() { - this._nativeSet = typeof Set === "function" ? new Set() : null; - this._items = {}; - } - _Set2.prototype.add = function(item) { - return !hasOrAdd(item, true, this); - }; - _Set2.prototype.has = function(item) { - return hasOrAdd(item, false, this); - }; - return _Set2; - }(); - function hasOrAdd(item, shouldAdd, set) { - var type = typeof item; - var prevSize, newSize; - switch (type) { - case "string": - case "number": - if (item === 0 && 1 / item === -Infinity) { - if (set._items["-0"]) { - return true; - } else { - if (shouldAdd) { - set._items["-0"] = true; - } - return false; - } - } - if (set._nativeSet !== null) { - if (shouldAdd) { - prevSize = set._nativeSet.size; - set._nativeSet.add(item); - newSize = set._nativeSet.size; - return newSize === prevSize; - } else { - return set._nativeSet.has(item); - } - } else { - if (!(type in set._items)) { - if (shouldAdd) { - set._items[type] = {}; - set._items[type][item] = true; - } - return false; - } else if (item in set._items[type]) { - return true; - } else { - if (shouldAdd) { - set._items[type][item] = true; - } - return false; - } - } - case "boolean": - if (type in set._items) { - var bIdx = item ? 1 : 0; - if (set._items[type][bIdx]) { - return true; - } else { - if (shouldAdd) { - set._items[type][bIdx] = true; - } - return false; - } - } else { - if (shouldAdd) { - set._items[type] = item ? [false, true] : [true, false]; - } - return false; - } - case "function": - if (set._nativeSet !== null) { - if (shouldAdd) { - prevSize = set._nativeSet.size; - set._nativeSet.add(item); - newSize = set._nativeSet.size; - return newSize === prevSize; - } else { - return set._nativeSet.has(item); - } - } else { - if (!(type in set._items)) { - if (shouldAdd) { - set._items[type] = [item]; - } - return false; - } - if (!_includes(item, set._items[type])) { - if (shouldAdd) { - set._items[type].push(item); - } - return false; - } - return true; - } - case "undefined": - if (set._items[type]) { - return true; - } else { - if (shouldAdd) { - set._items[type] = true; - } - return false; - } - case "object": - if (item === null) { - if (!set._items["null"]) { - if (shouldAdd) { - set._items["null"] = true; - } - return false; - } - return true; - } - default: - type = Object.prototype.toString.call(item); - if (!(type in set._items)) { - if (shouldAdd) { - set._items[type] = [item]; - } - return false; - } - if (!_includes(item, set._items[type])) { - if (shouldAdd) { - set._items[type].push(item); - } - return false; - } - return true; - } - } - module2.exports = _Set; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js +var require_exhaust = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaust = void 0; + var exhaustAll_1 = require_exhaustAll(); + exports2.exhaust = exhaustAll_1.exhaustAll; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/difference.js -var require_difference = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/difference.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _Set = require_Set(); - var difference = /* @__PURE__ */ _curry2(function difference2(first, second) { - var out = []; - var idx = 0; - var firstLen = first.length; - var secondLen = second.length; - var toFilterOut = new _Set(); - for (var i = 0; i < secondLen; i += 1) { - toFilterOut.add(second[i]); - } - while (idx < firstLen) { - if (toFilterOut.add(first[idx])) { - out[out.length] = first[idx]; - } - idx += 1; +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/expand.js +var require_expand = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/expand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.expand = void 0; + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + function expand(project, concurrent, scheduler) { + if (concurrent === void 0) { + concurrent = Infinity; } - return out; - }); - module2.exports = difference; + concurrent = (concurrent || 0) < 1 ? Infinity : concurrent; + return lift_1.operate(function(source, subscriber) { + return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent, void 0, true, scheduler); + }); + } + exports2.expand = expand; } }); -// ../default-reporter/lib/reporterForClient/pkgsDiff.js -var require_pkgsDiff = __commonJS({ - "../default-reporter/lib/reporterForClient/pkgsDiff.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/finalize.js +var require_finalize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/finalize.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.propertyByDependencyType = void 0; - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var merge_1 = __importDefault(require_merge3()); - var difference_1 = __importDefault(require_difference()); - exports2.propertyByDependencyType = { - dev: "devDependencies", - nodeModulesOnly: "node_modules", - optional: "optionalDependencies", - peer: "peerDependencies", - prod: "dependencies" - }; - function default_1(log$, opts) { - const deprecationSet$ = log$.deprecation.pipe(operators_1.filter((log2) => log2.prefix === opts.prefix), operators_1.scan((acc, log2) => { - acc.add(log2.pkgId); - return acc; - }, new Set()), operators_1.startWith(new Set())); - const filterPrefix = operators_1.filter((log2) => log2.prefix === opts.prefix); - const pkgsDiff$ = Rx.combineLatest(log$.root.pipe(filterPrefix), deprecationSet$).pipe(operators_1.scan((pkgsDiff, args2) => { - const rootLog = args2[0]; - const deprecationSet = args2[1]; - if (rootLog["added"]) { - pkgsDiff[rootLog["added"].dependencyType || "nodeModulesOnly"][`+${rootLog["added"].name}`] = { - added: true, - deprecated: deprecationSet.has(rootLog["added"].id), - from: rootLog["added"].linkedFrom, - latest: rootLog["added"].latest, - name: rootLog["added"].name, - realName: rootLog["added"].realName, - version: rootLog["added"].version - }; - return pkgsDiff; - } - if (rootLog["removed"]) { - pkgsDiff[rootLog["removed"].dependencyType || "nodeModulesOnly"][`-${rootLog["removed"].name}`] = { - added: false, - name: rootLog["removed"].name, - version: rootLog["removed"].version - }; - return pkgsDiff; - } - return pkgsDiff; - }, { - dev: {}, - nodeModulesOnly: {}, - optional: {}, - peer: {}, - prod: {} - }), operators_1.startWith({ - dev: {}, - nodeModulesOnly: {}, - optional: {}, - peer: {}, - prod: {} - })); - const packageManifest$ = Rx.merge(log$.packageManifest.pipe(filterPrefix), log$.summary.pipe(filterPrefix, operators_1.mapTo({}))).pipe(operators_1.take(2), operators_1.reduce(merge_1.default, {})); - return Rx.combineLatest(pkgsDiff$, packageManifest$).pipe(operators_1.map(([pkgsDiff, packageManifests]) => { - if (packageManifests["initial"] == null || packageManifests["updated"] == null) - return pkgsDiff; - const initialPackageManifest = removeOptionalFromProdDeps(packageManifests["initial"]); - const updatedPackageManifest = removeOptionalFromProdDeps(packageManifests["updated"]); - for (const depType of ["peer", "prod", "optional", "dev"]) { - const prop = exports2.propertyByDependencyType[depType]; - const initialDeps = Object.keys(initialPackageManifest[prop] || {}); - const updatedDeps = Object.keys(updatedPackageManifest[prop] || {}); - const removedDeps = difference_1.default(initialDeps, updatedDeps); - for (const removedDep of removedDeps) { - if (!pkgsDiff[depType][`-${removedDep}`]) { - pkgsDiff[depType][`-${removedDep}`] = { - added: false, - name: removedDep, - version: initialPackageManifest[prop][removedDep] - }; - } - } - const addedDeps = difference_1.default(updatedDeps, initialDeps); - for (const addedDep of addedDeps) { - if (!pkgsDiff[depType][`+${addedDep}`]) { - pkgsDiff[depType][`+${addedDep}`] = { - added: true, - name: addedDep, - version: updatedPackageManifest[prop][addedDep] - }; - } - } - } - return pkgsDiff; - })); - } - exports2.default = default_1; - function removeOptionalFromProdDeps(pkg) { - if (pkg.dependencies == null || pkg.optionalDependencies == null) - return pkg; - for (const depName of Object.keys(pkg.dependencies)) { - if (pkg.optionalDependencies[depName]) { - delete pkg.dependencies[depName]; + exports2.finalize = void 0; + var lift_1 = require_lift(); + function finalize(callback) { + return lift_1.operate(function(source, subscriber) { + try { + source.subscribe(subscriber); + } finally { + subscriber.add(callback); } - } - return pkg; + }); } + exports2.finalize = finalize; } }); -// ../default-reporter/lib/reporterForClient/reportSummary.js -var require_reportSummary = __commonJS({ - "../default-reporter/lib/reporterForClient/reportSummary.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/find.js +var require_find = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/find.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var chalk_1 = __importDefault(require_source()); - var semver_1 = __importDefault(require_semver2()); - var constants_1 = require_constants2(); - var pkgsDiff_1 = __importStar2(require_pkgsDiff()); - var outputConstants_1 = require_outputConstants(); - exports2.default = (log$, opts) => { - const pkgsDiff$ = pkgsDiff_1.default(log$, { prefix: opts.cwd }); - const summaryLog$ = log$.summary.pipe(operators_1.take(1)); - return Rx.combineLatest(pkgsDiff$, summaryLog$).pipe(operators_1.take(1), operators_1.map(([pkgsDiff]) => { - var _a; - let msg = ""; - for (const depType of ["prod", "optional", "peer", "dev", "nodeModulesOnly"]) { - const diffs = Object.values(pkgsDiff[depType]); - if (diffs.length > 0) { - msg += constants_1.EOL; - if ((_a = opts.pnpmConfig) === null || _a === void 0 ? void 0 : _a.global) { - msg += chalk_1.default.cyanBright(`${opts.cwd}:`); - } else { - msg += chalk_1.default.cyanBright(`${pkgsDiff_1.propertyByDependencyType[depType]}:`); - } - msg += constants_1.EOL; - msg += printDiffs(diffs, { prefix: opts.cwd }); - msg += constants_1.EOL; - } - } - return Rx.of({ msg }); - })); - }; - function printDiffs(pkgsDiff, opts) { - pkgsDiff.sort((a, b) => a.name.localeCompare(b.name) * 10 + (Number(!b.added) - Number(!a.added))); - const msg = pkgsDiff.map((pkg) => { - let result = pkg.added ? outputConstants_1.ADDED_CHAR : outputConstants_1.REMOVED_CHAR; - if (!pkg.realName || pkg.name === pkg.realName) { - result += ` ${pkg.name}`; - } else { - result += ` ${pkg.name} <- ${pkg.realName}`; - } - if (pkg.version) { - result += ` ${chalk_1.default.grey(pkg.version)}`; - if (pkg.latest && semver_1.default.lt(pkg.version, pkg.latest)) { - result += ` ${chalk_1.default.grey(`(${pkg.latest} is available)`)}`; + exports2.createFind = exports2.find = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function find(predicate, thisArg) { + return lift_1.operate(createFind(predicate, thisArg, "value")); + } + exports2.find = find; + function createFind(predicate, thisArg, emit) { + var findIndex = emit === "index"; + return function(source, subscriber) { + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var i = index++; + if (predicate.call(thisArg, value, i, source)) { + subscriber.next(findIndex ? i : value); + subscriber.complete(); } - } - if (pkg.deprecated) { - result += ` ${chalk_1.default.red("deprecated")}`; - } - if (pkg.from) { - result += ` ${chalk_1.default.grey(`<- ${pkg.from && path_1.default.relative(opts.prefix, pkg.from) || "???"}`)}`; - } - return result; - }).join(constants_1.EOL); - return msg; + }, function() { + subscriber.next(findIndex ? -1 : void 0); + subscriber.complete(); + })); + }; } + exports2.createFind = createFind; } }); -// ../../node_modules/.pnpm/is-fullwidth-code-point@3.0.0/node_modules/is-fullwidth-code-point/index.js -var require_is_fullwidth_code_point = __commonJS({ - "../../node_modules/.pnpm/is-fullwidth-code-point@3.0.0/node_modules/is-fullwidth-code-point/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js +var require_findIndex = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js"(exports2) { "use strict"; - var isFullwidthCodePoint = (codePoint) => { - if (Number.isNaN(codePoint)) { - return false; - } - if (codePoint >= 4352 && (codePoint <= 4447 || codePoint === 9001 || codePoint === 9002 || 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || 12880 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65131 || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 262141)) { - return true; - } - return false; - }; - module2.exports = isFullwidthCodePoint; - module2.exports.default = isFullwidthCodePoint; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findIndex = void 0; + var lift_1 = require_lift(); + var find_1 = require_find(); + function findIndex(predicate, thisArg) { + return lift_1.operate(find_1.createFind(predicate, thisArg, "index")); + } + exports2.findIndex = findIndex; } }); -// ../../node_modules/.pnpm/emoji-regex@8.0.0/node_modules/emoji-regex/index.js -var require_emoji_regex = __commonJS({ - "../../node_modules/.pnpm/emoji-regex@8.0.0/node_modules/emoji-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/first.js +var require_first = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/first.js"(exports2) { "use strict"; - module2.exports = function() { - return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.first = void 0; + var EmptyError_1 = require_EmptyError(); + var filter_1 = require_filter(); + var take_1 = require_take(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var identity_1 = require_identity(); + function first(predicate, defaultValue) { + var hasDefaultValue = arguments.length >= 2; + return function(source) { + return source.pipe(predicate ? filter_1.filter(function(v, i) { + return predicate(v, i, source); + }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new EmptyError_1.EmptyError(); + })); + }; + } + exports2.first = first; } }); -// ../../node_modules/.pnpm/string-width@4.2.3/node_modules/string-width/index.js -var require_string_width = __commonJS({ - "../../node_modules/.pnpm/string-width@4.2.3/node_modules/string-width/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js +var require_groupBy = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js"(exports2) { "use strict"; - var stripAnsi = require_strip_ansi(); - var isFullwidthCodePoint = require_is_fullwidth_code_point(); - var emojiRegex = require_emoji_regex(); - var stringWidth = (string) => { - if (typeof string !== "string" || string.length === 0) { - return 0; - } - string = stripAnsi(string); - if (string.length === 0) { - return 0; - } - string = string.replace(emojiRegex(), " "); - let width = 0; - for (let i = 0; i < string.length; i++) { - const code = string.codePointAt(i); - if (code <= 31 || code >= 127 && code <= 159) { - continue; - } - if (code >= 768 && code <= 879) { - continue; - } - if (code > 65535) { - i++; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.groupBy = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function groupBy(keySelector, elementOrOptions, duration, connector) { + return lift_1.operate(function(source, subscriber) { + var element; + if (!elementOrOptions || typeof elementOrOptions === "function") { + element = elementOrOptions; + } else { + duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector; } - width += isFullwidthCodePoint(code) ? 2 : 1; - } - return width; - }; - module2.exports = stringWidth; - module2.exports.default = stringWidth; + var groups = /* @__PURE__ */ new Map(); + var notify = function(cb) { + groups.forEach(cb); + cb(subscriber); + }; + var handleError = function(err) { + return notify(function(consumer) { + return consumer.error(err); + }); + }; + var activeGroups = 0; + var teardownAttempted = false; + var groupBySourceSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { + try { + var key_1 = keySelector(value); + var group_1 = groups.get(key_1); + if (!group_1) { + groups.set(key_1, group_1 = connector ? connector() : new Subject_1.Subject()); + var grouped = createGroupedObservable(key_1, group_1); + subscriber.next(grouped); + if (duration) { + var durationSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(group_1, function() { + group_1.complete(); + durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe(); + }, void 0, void 0, function() { + return groups.delete(key_1); + }); + groupBySourceSubscriber.add(innerFrom_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1)); + } + } + group_1.next(element ? element(value) : value); + } catch (err) { + handleError(err); + } + }, function() { + return notify(function(consumer) { + return consumer.complete(); + }); + }, handleError, function() { + return groups.clear(); + }, function() { + teardownAttempted = true; + return activeGroups === 0; + }); + source.subscribe(groupBySourceSubscriber); + function createGroupedObservable(key, groupSubject) { + var result2 = new Observable_1.Observable(function(groupSubscriber) { + activeGroups++; + var innerSub = groupSubject.subscribe(groupSubscriber); + return function() { + innerSub.unsubscribe(); + --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe(); + }; + }); + result2.key = key; + return result2; + } + }); + } + exports2.groupBy = groupBy; } }); -// ../../node_modules/.pnpm/widest-line@3.1.0/node_modules/widest-line/index.js -var require_widest_line = __commonJS({ - "../../node_modules/.pnpm/widest-line@3.1.0/node_modules/widest-line/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js +var require_isEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js"(exports2) { "use strict"; - var stringWidth = require_string_width(); - var widestLine = (input) => { - let max = 0; - for (const line of input.split("\n")) { - max = Math.max(max, stringWidth(line)); - } - return max; - }; - module2.exports = widestLine; - module2.exports.default = widestLine; - } -}); - -// ../../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/boxes.json -var require_boxes = __commonJS({ - "../../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/boxes.json"(exports2, module2) { - module2.exports = { - single: { - topLeft: "\u250C", - topRight: "\u2510", - bottomRight: "\u2518", - bottomLeft: "\u2514", - vertical: "\u2502", - horizontal: "\u2500" - }, - double: { - topLeft: "\u2554", - topRight: "\u2557", - bottomRight: "\u255D", - bottomLeft: "\u255A", - vertical: "\u2551", - horizontal: "\u2550" - }, - round: { - topLeft: "\u256D", - topRight: "\u256E", - bottomRight: "\u256F", - bottomLeft: "\u2570", - vertical: "\u2502", - horizontal: "\u2500" - }, - bold: { - topLeft: "\u250F", - topRight: "\u2513", - bottomRight: "\u251B", - bottomLeft: "\u2517", - vertical: "\u2503", - horizontal: "\u2501" - }, - singleDouble: { - topLeft: "\u2553", - topRight: "\u2556", - bottomRight: "\u255C", - bottomLeft: "\u2559", - vertical: "\u2551", - horizontal: "\u2500" - }, - doubleSingle: { - topLeft: "\u2552", - topRight: "\u2555", - bottomRight: "\u255B", - bottomLeft: "\u2558", - vertical: "\u2502", - horizontal: "\u2550" - }, - classic: { - topLeft: "+", - topRight: "+", - bottomRight: "+", - bottomLeft: "+", - vertical: "|", - horizontal: "-" - } - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isEmpty = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function isEmpty() { + return lift_1.operate(function(source, subscriber) { + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + subscriber.next(false); + subscriber.complete(); + }, function() { + subscriber.next(true); + subscriber.complete(); + })); + }); + } + exports2.isEmpty = isEmpty; } }); -// ../../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/index.js -var require_cli_boxes = __commonJS({ - "../../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js +var require_takeLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js"(exports2) { "use strict"; - var cliBoxes = require_boxes(); - module2.exports = cliBoxes; - module2.exports.default = cliBoxes; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.takeLast = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function takeLast(count) { + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source, subscriber) { + var buffer = []; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + buffer.push(value); + count < buffer.length && buffer.shift(); + }, function() { + var e_1, _a; + try { + for (var buffer_1 = __values4(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) { + var value = buffer_1_1.value; + subscriber.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) + _a.call(buffer_1); + } finally { + if (e_1) + throw e_1.error; + } + } + subscriber.complete(); + }, void 0, function() { + buffer = null; + })); + }); + } + exports2.takeLast = takeLast; } }); -// ../../node_modules/.pnpm/ansi-regex@4.1.0/node_modules/ansi-regex/index.js -var require_ansi_regex3 = __commonJS({ - "../../node_modules/.pnpm/ansi-regex@4.1.0/node_modules/ansi-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/last.js +var require_last = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/last.js"(exports2) { "use strict"; - module2.exports = (options) => { - options = Object.assign({ - onlyFirst: false - }, options); - const pattern = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))" - ].join("|"); - return new RegExp(pattern, options.onlyFirst ? void 0 : "g"); - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.last = void 0; + var EmptyError_1 = require_EmptyError(); + var filter_1 = require_filter(); + var takeLast_1 = require_takeLast(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var identity_1 = require_identity(); + function last(predicate, defaultValue) { + var hasDefaultValue = arguments.length >= 2; + return function(source) { + return source.pipe(predicate ? filter_1.filter(function(v, i) { + return predicate(v, i, source); + }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new EmptyError_1.EmptyError(); + })); + }; + } + exports2.last = last; } }); -// ../../node_modules/.pnpm/strip-ansi@5.2.0/node_modules/strip-ansi/index.js -var require_strip_ansi2 = __commonJS({ - "../../node_modules/.pnpm/strip-ansi@5.2.0/node_modules/strip-ansi/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/materialize.js +var require_materialize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/materialize.js"(exports2) { "use strict"; - var ansiRegex = require_ansi_regex3(); - var stripAnsi = (string) => typeof string === "string" ? string.replace(ansiRegex(), "") : string; - module2.exports = stripAnsi; - module2.exports.default = stripAnsi; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.materialize = void 0; + var Notification_1 = require_Notification(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function materialize() { + return lift_1.operate(function(source, subscriber) { + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + subscriber.next(Notification_1.Notification.createNext(value)); + }, function() { + subscriber.next(Notification_1.Notification.createComplete()); + subscriber.complete(); + }, function(err) { + subscriber.next(Notification_1.Notification.createError(err)); + subscriber.complete(); + })); + }); + } + exports2.materialize = materialize; } }); -// ../../node_modules/.pnpm/is-fullwidth-code-point@2.0.0/node_modules/is-fullwidth-code-point/index.js -var require_is_fullwidth_code_point2 = __commonJS({ - "../../node_modules/.pnpm/is-fullwidth-code-point@2.0.0/node_modules/is-fullwidth-code-point/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/max.js +var require_max = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/max.js"(exports2) { "use strict"; - module2.exports = (x) => { - if (Number.isNaN(x)) { - return false; - } - if (x >= 4352 && (x <= 4447 || x === 9001 || x === 9002 || 11904 <= x && x <= 12871 && x !== 12351 || 12880 <= x && x <= 19903 || 19968 <= x && x <= 42182 || 43360 <= x && x <= 43388 || 44032 <= x && x <= 55203 || 63744 <= x && x <= 64255 || 65040 <= x && x <= 65049 || 65072 <= x && x <= 65131 || 65281 <= x && x <= 65376 || 65504 <= x && x <= 65510 || 110592 <= x && x <= 110593 || 127488 <= x && x <= 127569 || 131072 <= x && x <= 262141)) { - return true; - } - return false; - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.max = void 0; + var reduce_1 = require_reduce(); + var isFunction_1 = require_isFunction(); + function max(comparer) { + return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { + return comparer(x, y) > 0 ? x : y; + } : function(x, y) { + return x > y ? x : y; + }); + } + exports2.max = max; } }); -// ../../node_modules/.pnpm/emoji-regex@7.0.3/node_modules/emoji-regex/index.js -var require_emoji_regex2 = __commonJS({ - "../../node_modules/.pnpm/emoji-regex@7.0.3/node_modules/emoji-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js +var require_flatMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js"(exports2) { "use strict"; - module2.exports = function() { - return /\uD83C\uDFF4(?:\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74)\uDB40\uDC7F|\u200D\u2620\uFE0F)|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC68(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3]))|\uD83D\uDC69\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\uD83D\uDC68(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83D\uDC69\u200D[\u2695\u2696\u2708])\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC68(?:\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDD1-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDEEB\uDEEC\uDEF4-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC69\uDC6E\uDC70-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD26\uDD30-\uDD39\uDD3D\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDD1-\uDDDD])/g; - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.flatMap = void 0; + var mergeMap_1 = require_mergeMap(); + exports2.flatMap = mergeMap_1.mergeMap; } }); -// ../../node_modules/.pnpm/string-width@3.1.0/node_modules/string-width/index.js -var require_string_width2 = __commonJS({ - "../../node_modules/.pnpm/string-width@3.1.0/node_modules/string-width/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js +var require_mergeMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js"(exports2) { "use strict"; - var stripAnsi = require_strip_ansi2(); - var isFullwidthCodePoint = require_is_fullwidth_code_point2(); - var emojiRegex = require_emoji_regex2()(); - module2.exports = (input) => { - input = input.replace(emojiRegex, " "); - if (typeof input !== "string" || input.length === 0) { - return 0; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeMapTo = void 0; + var mergeMap_1 = require_mergeMap(); + var isFunction_1 = require_isFunction(); + function mergeMapTo(innerObservable, resultSelector, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; } - input = stripAnsi(input); - let width = 0; - for (let i = 0; i < input.length; i++) { - const code = input.codePointAt(i); - if (code <= 31 || code >= 127 && code <= 159) { - continue; - } - if (code >= 768 && code <= 879) { - continue; - } - if (code > 65535) { - i++; - } - width += isFullwidthCodePoint(code) ? 2 : 1; + if (isFunction_1.isFunction(resultSelector)) { + return mergeMap_1.mergeMap(function() { + return innerObservable; + }, resultSelector, concurrent); } - return width; - }; + if (typeof resultSelector === "number") { + concurrent = resultSelector; + } + return mergeMap_1.mergeMap(function() { + return innerObservable; + }, concurrent); + } + exports2.mergeMapTo = mergeMapTo; } }); -// ../../node_modules/.pnpm/ansi-align@3.0.0/node_modules/ansi-align/index.js -var require_ansi_align = __commonJS({ - "../../node_modules/.pnpm/ansi-align@3.0.0/node_modules/ansi-align/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js +var require_mergeScan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js"(exports2) { "use strict"; - var stringWidth = require_string_width2(); - function ansiAlign(text, opts) { - if (!text) - return text; - opts = opts || {}; - const align = opts.align || "center"; - if (align === "left") - return text; - const split = opts.split || "\n"; - const pad = opts.pad || " "; - const widthDiffFn = align !== "right" ? halfDiff : fullDiff; - let returnString = false; - if (!Array.isArray(text)) { - returnString = true; - text = String(text).split(split); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeScan = void 0; + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + function mergeScan(accumulator, seed, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; } - let width; - let maxWidth = 0; - text = text.map(function(str) { - str = String(str); - width = stringWidth(str); - maxWidth = Math.max(width, maxWidth); - return { - str, - width - }; - }).map(function(obj) { - return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad) + obj.str; + return lift_1.operate(function(source, subscriber) { + var state = seed; + return mergeInternals_1.mergeInternals(source, subscriber, function(value, index) { + return accumulator(state, value, index); + }, concurrent, function(value) { + state = value; + }, false, void 0, function() { + return state = null; + }); }); - return returnString ? text.join(split) : text; - } - ansiAlign.left = function left(text) { - return ansiAlign(text, { align: "left" }); - }; - ansiAlign.center = function center(text) { - return ansiAlign(text, { align: "center" }); - }; - ansiAlign.right = function right(text) { - return ansiAlign(text, { align: "right" }); - }; - module2.exports = ansiAlign; - function halfDiff(maxWidth, curWidth) { - return Math.floor((maxWidth - curWidth) / 2); - } - function fullDiff(maxWidth, curWidth) { - return maxWidth - curWidth; } + exports2.mergeScan = mergeScan; } }); -// ../../node_modules/.pnpm/wrap-ansi@7.0.0/node_modules/wrap-ansi/index.js -var require_wrap_ansi = __commonJS({ - "../../node_modules/.pnpm/wrap-ansi@7.0.0/node_modules/wrap-ansi/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/merge.js +var require_merge3 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/merge.js"(exports2) { "use strict"; - var stringWidth = require_string_width(); - var stripAnsi = require_strip_ansi(); - var ansiStyles = require_ansi_styles2(); - var ESCAPES = new Set([ - "", - "\x9B" - ]); - var END_CODE = 39; - var ANSI_ESCAPE_BELL = "\x07"; - var ANSI_CSI = "["; - var ANSI_OSC = "]"; - var ANSI_SGR_TERMINATOR = "m"; - var ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`; - var wrapAnsi = (code) => `${ESCAPES.values().next().value}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`; - var wrapAnsiHyperlink = (uri) => `${ESCAPES.values().next().value}${ANSI_ESCAPE_LINK}${uri}${ANSI_ESCAPE_BELL}`; - var wordLengths = (string) => string.split(" ").map((character) => stringWidth(character)); - var wrapWord = (rows, word, columns) => { - const characters = [...word]; - let isInsideEscape = false; - let isInsideLinkEscape = false; - let visible = stringWidth(stripAnsi(rows[rows.length - 1])); - for (const [index, character] of characters.entries()) { - const characterLength = stringWidth(character); - if (visible + characterLength <= columns) { - rows[rows.length - 1] += character; - } else { - rows.push(character); - visible = 0; - } - if (ESCAPES.has(character)) { - isInsideEscape = true; - isInsideLinkEscape = characters.slice(index + 1).join("").startsWith(ANSI_ESCAPE_LINK); - } - if (isInsideEscape) { - if (isInsideLinkEscape) { - if (character === ANSI_ESCAPE_BELL) { - isInsideEscape = false; - isInsideLinkEscape = false; - } - } else if (character === ANSI_SGR_TERMINATOR) { - isInsideEscape = false; - } - continue; - } - visible += characterLength; - if (visible === columns && index < characters.length - 1) { - rows.push(""); - visible = 0; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } } - if (!visible && rows[rows.length - 1].length > 0 && rows.length > 1) { - rows[rows.length - 2] += rows.pop(); - } + return ar; }; - var stringVisibleTrimSpacesRight = (string) => { - const words = string.split(" "); - let last = words.length; - while (last > 0) { - if (stringWidth(words[last - 1]) > 0) { - break; - } - last--; - } - if (last === words.length) { - return string; - } - return words.slice(0, last).join(" ") + words.slice(last).join(""); + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - var exec = (string, columns, options = {}) => { - if (options.trim !== false && string.trim() === "") { - return ""; - } - let returnValue = ""; - let escapeCode; - let escapeUrl; - const lengths = wordLengths(string); - let rows = [""]; - for (const [index, word] of string.split(" ").entries()) { - if (options.trim !== false) { - rows[rows.length - 1] = rows[rows.length - 1].trimStart(); - } - let rowLength = stringWidth(rows[rows.length - 1]); - if (index !== 0) { - if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) { - rows.push(""); - rowLength = 0; - } - if (rowLength > 0 || options.trim === false) { - rows[rows.length - 1] += " "; - rowLength++; - } - } - if (options.hard && lengths[index] > columns) { - const remainingColumns = columns - rowLength; - const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns); - const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns); - if (breaksStartingNextLine < breaksStartingThisLine) { - rows.push(""); - } - wrapWord(rows, word, columns); - continue; - } - if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) { - if (options.wordWrap === false && rowLength < columns) { - wrapWord(rows, word, columns); - continue; - } - rows.push(""); - } - if (rowLength + lengths[index] > columns && options.wordWrap === false) { - wrapWord(rows, word, columns); - continue; - } - rows[rows.length - 1] += word; - } - if (options.trim !== false) { - rows = rows.map(stringVisibleTrimSpacesRight); - } - const pre = [...rows.join("\n")]; - for (const [index, character] of pre.entries()) { - returnValue += character; - if (ESCAPES.has(character)) { - const { groups } = new RegExp(`(?:\\${ANSI_CSI}(?\\d+)m|\\${ANSI_ESCAPE_LINK}(?.*)${ANSI_ESCAPE_BELL})`).exec(pre.slice(index).join("")) || { groups: {} }; - if (groups.code !== void 0) { - const code2 = Number.parseFloat(groups.code); - escapeCode = code2 === END_CODE ? void 0 : code2; - } else if (groups.uri !== void 0) { - escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri; - } - } - const code = ansiStyles.codes.get(Number(escapeCode)); - if (pre[index + 1] === "\n") { - if (escapeUrl) { - returnValue += wrapAnsiHyperlink(""); - } - if (escapeCode && code) { - returnValue += wrapAnsi(code); - } - } else if (character === "\n") { - if (escapeCode && code) { - returnValue += wrapAnsi(escapeCode); - } - if (escapeUrl) { - returnValue += wrapAnsiHyperlink(escapeUrl); - } - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var lift_1 = require_lift(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var mergeAll_1 = require_mergeAll(); + var args_1 = require_args(); + var from_1 = require_from2(); + function merge() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; } - return returnValue; - }; - module2.exports = (string, columns, options) => { - return String(string).normalize().replace(/\r\n/g, "\n").split("\n").map((line) => exec(line, columns, options)).join("\n"); - }; + var scheduler = args_1.popScheduler(args2); + var concurrent = args_1.popNumber(args2, Infinity); + args2 = argsOrArgArray_1.argsOrArgArray(args2); + return lift_1.operate(function(source, subscriber) { + mergeAll_1.mergeAll(concurrent)(from_1.from(__spreadArray3([source], __read4(args2)), scheduler)).subscribe(subscriber); + }); + } + exports2.merge = merge; } }); -// ../../node_modules/.pnpm/boxen@5.1.2/node_modules/boxen/index.js -var require_boxen = __commonJS({ - "../../node_modules/.pnpm/boxen@5.1.2/node_modules/boxen/index.js"(exports2, module2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js +var require_mergeWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js"(exports2) { "use strict"; - var stringWidth = require_string_width(); - var chalk = require_source(); - var widestLine = require_widest_line(); - var cliBoxes = require_cli_boxes(); - var camelCase = require_camelcase(); - var ansiAlign = require_ansi_align(); - var wrapAnsi = require_wrap_ansi(); - var NL = "\n"; - var PAD = " "; - var terminalColumns = () => { - const { env, stdout, stderr } = process; - if (stdout && stdout.columns) { - return stdout.columns; - } - if (stderr && stderr.columns) { - return stderr.columns; - } - if (env.COLUMNS) { - return Number.parseInt(env.COLUMNS, 10); - } - return 80; - }; - var getObject = (detail) => { - return typeof detail === "number" ? { - top: detail, - right: detail * 3, - bottom: detail, - left: detail * 3 - } : { - top: 0, - right: 0, - bottom: 0, - left: 0, - ...detail - }; - }; - var getBorderChars = (borderStyle) => { - const sides = [ - "topLeft", - "topRight", - "bottomRight", - "bottomLeft", - "vertical", - "horizontal" - ]; - let chararacters; - if (typeof borderStyle === "string") { - chararacters = cliBoxes[borderStyle]; - if (!chararacters) { - throw new TypeError(`Invalid border style: ${borderStyle}`); - } - } else { - for (const side of sides) { - if (!borderStyle[side] || typeof borderStyle[side] !== "string") { - throw new TypeError(`Invalid border style: ${side}`); - } + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; } - chararacters = borderStyle; } - return chararacters; + return ar; }; - var makeTitle = (text, horizontal, alignement) => { - let title = ""; - const textWidth = stringWidth(text); - switch (alignement) { - case "left": - title = text + horizontal.slice(textWidth); - break; - case "right": - title = horizontal.slice(textWidth) + text; - break; - default: - horizontal = horizontal.slice(textWidth); - if (horizontal.length % 2 === 1) { - horizontal = horizontal.slice(Math.floor(horizontal.length / 2)); - title = horizontal.slice(1) + text + horizontal; - } else { - horizontal = horizontal.slice(horizontal.length / 2); - title = horizontal + text + horizontal; - } - break; - } - return title; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; - var makeContentText = (text, padding, columns, align) => { - text = ansiAlign(text, { align }); - let lines = text.split(NL); - const textWidth = widestLine(text); - const max = columns - padding.left - padding.right; - if (textWidth > max) { - const newLines = []; - for (const line of lines) { - const createdLines = wrapAnsi(line, max, { hard: true }); - const alignedLines = ansiAlign(createdLines, { align }); - const alignedLinesArray = alignedLines.split("\n"); - const longestLength = Math.max(...alignedLinesArray.map((s) => stringWidth(s))); - for (const alignedLine of alignedLinesArray) { - let paddedLine; - switch (align) { - case "center": - paddedLine = PAD.repeat((max - longestLength) / 2) + alignedLine; - break; - case "right": - paddedLine = PAD.repeat(max - longestLength) + alignedLine; - break; - default: - paddedLine = alignedLine; - break; - } - newLines.push(paddedLine); - } - } - lines = newLines; - } - if (align === "center" && textWidth < max) { - lines = lines.map((line) => PAD.repeat((max - textWidth) / 2) + line); - } else if (align === "right" && textWidth < max) { - lines = lines.map((line) => PAD.repeat(max - textWidth) + line); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeWith = void 0; + var merge_1 = require_merge3(); + function mergeWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; } - const paddingLeft = PAD.repeat(padding.left); - const paddingRight = PAD.repeat(padding.right); - lines = lines.map((line) => paddingLeft + line + paddingRight); - lines = lines.map((line) => { - if (columns - stringWidth(line) > 0) { - switch (align) { - case "center": - return line + PAD.repeat(columns - stringWidth(line)); - case "right": - return line + PAD.repeat(columns - stringWidth(line)); - default: - return line + PAD.repeat(columns - stringWidth(line)); - } - } - return line; + return merge_1.merge.apply(void 0, __spreadArray3([], __read4(otherSources))); + } + exports2.mergeWith = mergeWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/min.js +var require_min = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/min.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.min = void 0; + var reduce_1 = require_reduce(); + var isFunction_1 = require_isFunction(); + function min(comparer) { + return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { + return comparer(x, y) < 0 ? x : y; + } : function(x, y) { + return x < y ? x : y; }); - if (padding.top > 0) { - lines = new Array(padding.top).fill(PAD.repeat(columns)).concat(lines); - } - if (padding.bottom > 0) { - lines = lines.concat(new Array(padding.bottom).fill(PAD.repeat(columns))); - } - return lines.join(NL); - }; - var isHex = (color) => color.match(/^#(?:[0-f]{3}){1,2}$/i); - var isColorValid = (color) => typeof color === "string" && (chalk[color] || isHex(color)); - var getColorFn = (color) => isHex(color) ? chalk.hex(color) : chalk[color]; - var getBGColorFn = (color) => isHex(color) ? chalk.bgHex(color) : chalk[camelCase(["bg", color])]; - module2.exports = (text, options) => { - options = { - padding: 0, - borderStyle: "single", - dimBorder: false, - textAlignment: "left", - float: "left", - titleAlignment: "left", - ...options + } + exports2.min = min; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/multicast.js +var require_multicast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/multicast.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.multicast = void 0; + var ConnectableObservable_1 = require_ConnectableObservable(); + var isFunction_1 = require_isFunction(); + var connect_1 = require_connect(); + function multicast(subjectOrSubjectFactory, selector) { + var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function() { + return subjectOrSubjectFactory; }; - if (options.align) { - options.textAlignment = options.align; - } - const BORDERS_WIDTH = 2; - if (options.borderColor && !isColorValid(options.borderColor)) { - throw new Error(`${options.borderColor} is not a valid borderColor`); - } - if (options.backgroundColor && !isColorValid(options.backgroundColor)) { - throw new Error(`${options.backgroundColor} is not a valid backgroundColor`); + if (isFunction_1.isFunction(selector)) { + return connect_1.connect(selector, { + connector: subjectFactory + }); } - const chars = getBorderChars(options.borderStyle); - const padding = getObject(options.padding); - const margin = getObject(options.margin); - const colorizeBorder = (border) => { - const newBorder = options.borderColor ? getColorFn(options.borderColor)(border) : border; - return options.dimBorder ? chalk.dim(newBorder) : newBorder; + return function(source) { + return new ConnectableObservable_1.ConnectableObservable(source, subjectFactory); }; - const colorizeContent = (content) => options.backgroundColor ? getBGColorFn(options.backgroundColor)(content) : content; - const columns = terminalColumns(); - let contentWidth = widestLine(wrapAnsi(text, columns - BORDERS_WIDTH, { hard: true, trim: false })) + padding.left + padding.right; - let title = options.title && options.title.slice(0, columns - 4 - margin.left - margin.right); - if (title) { - title = ` ${title} `; - if (stringWidth(title) > contentWidth) { - contentWidth = stringWidth(title); - } - } - if (margin.left && margin.right && contentWidth + BORDERS_WIDTH + margin.left + margin.right > columns) { - const spaceForMargins = columns - contentWidth - BORDERS_WIDTH; - const multiplier = spaceForMargins / (margin.left + margin.right); - margin.left = Math.max(0, Math.floor(margin.left * multiplier)); - margin.right = Math.max(0, Math.floor(margin.right * multiplier)); - } - contentWidth = Math.min(contentWidth, columns - BORDERS_WIDTH - margin.left - margin.right); - text = makeContentText(text, padding, contentWidth, options.textAlignment); - let marginLeft = PAD.repeat(margin.left); - if (options.float === "center") { - const marginWidth = Math.max((columns - contentWidth - BORDERS_WIDTH) / 2, 0); - marginLeft = PAD.repeat(marginWidth); - } else if (options.float === "right") { - const marginWidth = Math.max(columns - contentWidth - margin.right - BORDERS_WIDTH, 0); - marginLeft = PAD.repeat(marginWidth); - } - const horizontal = chars.horizontal.repeat(contentWidth); - const top = colorizeBorder(NL.repeat(margin.top) + marginLeft + chars.topLeft + (title ? makeTitle(title, horizontal, options.titleAlignment) : horizontal) + chars.topRight); - const bottom = colorizeBorder(marginLeft + chars.bottomLeft + horizontal + chars.bottomRight + NL.repeat(margin.bottom)); - const side = colorizeBorder(chars.vertical); - const LINE_SEPARATOR = contentWidth + BORDERS_WIDTH + margin.left >= columns ? "" : NL; - const lines = text.split(NL); - const middle = lines.map((line) => { - return marginLeft + side + colorizeContent(line) + side; - }).join(LINE_SEPARATOR); - return top + LINE_SEPARATOR + middle + LINE_SEPARATOR + bottom; - }; - module2.exports._borderStyles = cliBoxes; + } + exports2.multicast = multicast; } }); -// ../default-reporter/lib/reporterForClient/reportUpdateCheck.js -var require_reportUpdateCheck = __commonJS({ - "../default-reporter/lib/reporterForClient/reportUpdateCheck.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js +var require_onErrorResumeNextWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } } - __setModuleDefault2(result, mod); - return result; + return ar; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var boxen_1 = __importDefault(require_boxen()); - var chalk_1 = __importDefault(require_source()); - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var semver_1 = __importDefault(require_semver2()); - exports2.default = (log$) => { - return log$.pipe(operators_1.take(1), operators_1.filter((log2) => semver_1.default.gt(log2.latestVersion, log2.currentVersion)), operators_1.map((log2) => Rx.of({ - msg: boxen_1.default(`Update available! ${chalk_1.default.red(log2.currentVersion)} \u2192 ${chalk_1.default.green(log2.latestVersion)}. -${chalk_1.default.magenta("Changelog:")} https://github.com/pnpm/pnpm/releases/tag/v${log2.latestVersion} -Run ${chalk_1.default.magenta("pnpm add -g pnpm")} to update. - -Follow ${chalk_1.default.magenta("@pnpmjs")} for updates: https://twitter.com/pnpmjs`, { - padding: 1, - margin: 1, - align: "center", - borderColor: "yellow", - borderStyle: "round" - }) - }))); - }; + exports2.onErrorResumeNext = exports2.onErrorResumeNextWith = void 0; + var argsOrArgArray_1 = require_argsOrArgArray(); + var onErrorResumeNext_1 = require_onErrorResumeNext(); + function onErrorResumeNextWith() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + var nextSources = argsOrArgArray_1.argsOrArgArray(sources); + return function(source) { + return onErrorResumeNext_1.onErrorResumeNext.apply(void 0, __spreadArray3([source], __read4(nextSources))); + }; + } + exports2.onErrorResumeNextWith = onErrorResumeNextWith; + exports2.onErrorResumeNext = onErrorResumeNextWith; } }); -// ../default-reporter/lib/reporterForClient/index.js -var require_reporterForClient = __commonJS({ - "../default-reporter/lib/reporterForClient/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js +var require_pairwise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var operators_1 = require_operators(); - var reportBigTarballsProgress_1 = __importDefault(require_reportBigTarballsProgress()); - var reportContext_1 = __importDefault(require_reportContext()); - var reportDeprecations_1 = __importDefault(require_reportDeprecations()); - var reportHooks_1 = __importDefault(require_reportHooks()); - var reportInstallChecks_1 = __importDefault(require_reportInstallChecks()); - var reportLifecycleScripts_1 = __importDefault(require_reportLifecycleScripts()); - var reportMisc_1 = __importDefault(require_reportMisc()); - var reportProgress_1 = __importDefault(require_reportProgress()); - var reportRequestRetry_1 = __importDefault(require_reportRequestRetry()); - var reportScope_1 = __importDefault(require_reportScope()); - var reportSkippedOptionalDependencies_1 = __importDefault(require_reportSkippedOptionalDependencies()); - var reportStats_1 = __importDefault(require_reportStats()); - var reportSummary_1 = __importDefault(require_reportSummary()); - var reportUpdateCheck_1 = __importDefault(require_reportUpdateCheck()); - function default_1(log$, opts) { - var _a, _b, _c, _d; - const width = (_b = (_a = opts.width) !== null && _a !== void 0 ? _a : process.stdout.columns) !== null && _b !== void 0 ? _b : 80; - const cwd = (_d = (_c = opts.pnpmConfig) === null || _c === void 0 ? void 0 : _c.dir) !== null && _d !== void 0 ? _d : process.cwd(); - const throttle = typeof opts.throttleProgress === "number" && opts.throttleProgress > 0 ? operators_1.throttleTime(opts.throttleProgress, void 0, { leading: true, trailing: true }) : void 0; - const outputs = [ - reportProgress_1.default(log$, { - cwd, - throttle - }), - reportLifecycleScripts_1.default(log$, { - appendOnly: opts.appendOnly === true || opts.streamLifecycleOutput, - cwd, - width - }), - reportDeprecations_1.default(log$.deprecation, { cwd, isRecursive: opts.isRecursive }), - reportMisc_1.default(log$, { - appendOnly: opts.appendOnly === true, - config: opts.config, - cwd, - logLevel: opts.logLevel, - zoomOutCurrent: opts.isRecursive - }), - ...reportStats_1.default(log$, { - cmd: opts.cmd, - cwd, - isRecursive: opts.isRecursive, - width - }), - reportInstallChecks_1.default(log$.installCheck, { cwd }), - reportRequestRetry_1.default(log$.requestRetry), - reportScope_1.default(log$.scope, { isRecursive: opts.isRecursive, cmd: opts.cmd }), - reportSkippedOptionalDependencies_1.default(log$.skippedOptionalDependency, { cwd }), - reportHooks_1.default(log$.hook, { cwd, isRecursive: opts.isRecursive }), - reportContext_1.default(log$, { cwd }), - reportUpdateCheck_1.default(log$.updateCheck) - ]; - if (!opts.appendOnly) { - outputs.push(reportBigTarballsProgress_1.default(log$)); - } - if (!opts.isRecursive) { - outputs.push(reportSummary_1.default(log$, { - cwd, - pnpmConfig: opts.pnpmConfig + exports2.pairwise = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function pairwise() { + return lift_1.operate(function(source, subscriber) { + var prev; + var hasPrev = false; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var p = prev; + prev = value; + hasPrev && subscriber.next([p, value]); + hasPrev = true; })); - } - return outputs; + }); } - exports2.default = default_1; + exports2.pairwise = pairwise; } }); -// ../default-reporter/lib/reporterForServer.js -var require_reporterForServer = __commonJS({ - "../default-reporter/lib/reporterForServer.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pluck.js +var require_pluck = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pluck.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var chalk_1 = __importDefault(require_source()); - var reportError_1 = __importDefault(require_reportError()); - function default_1(log$, config) { - log$.subscribe({ - complete: () => void 0, - error: () => void 0, - next(log2) { - if (log2.name === "pnpm:fetching-progress") { - console.log(`${chalk_1.default.cyan(`fetching_${log2.status}`)} ${log2.packageId}`); - return; - } - switch (log2.level) { - case "warn": - console.log(formatWarn(log2["message"])); - return; - case "error": - console.log(reportError_1.default(log2, config)); - return; - case "debug": - return; - default: - console.log(log2["message"]); + exports2.pluck = void 0; + var map_1 = require_map2(); + function pluck() { + var properties = []; + for (var _i = 0; _i < arguments.length; _i++) { + properties[_i] = arguments[_i]; + } + var length = properties.length; + if (length === 0) { + throw new Error("list of properties cannot be empty."); + } + return map_1.map(function(x) { + var currentProp = x; + for (var i = 0; i < length; i++) { + var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]]; + if (typeof p !== "undefined") { + currentProp = p; + } else { + return void 0; } } + return currentProp; }); } - exports2.default = default_1; - function formatWarn(message2) { - return `${chalk_1.default.bgYellow.black("\u2009WARN\u2009")} ${message2}`; + exports2.pluck = pluck; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publish.js +var require_publish = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publish.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publish = void 0; + var Subject_1 = require_Subject(); + var multicast_1 = require_multicast(); + var connect_1 = require_connect(); + function publish(selector) { + return selector ? function(source) { + return connect_1.connect(selector)(source); + } : function(source) { + return multicast_1.multicast(new Subject_1.Subject())(source); + }; } + exports2.publish = publish; } }); -// ../default-reporter/lib/index.js -var require_lib11 = __commonJS({ - "../default-reporter/lib/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js +var require_publishBehavior = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toOutput$ = exports2.formatWarn = void 0; - var Rx = __importStar2(require_cjs()); - var operators_1 = require_operators(); - var ansi_diff_1 = __importDefault(require_ansi_diff()); - var constants_1 = require_constants2(); - var mergeOutputs_1 = __importDefault(require_mergeOutputs()); - var reporterForClient_1 = __importDefault(require_reporterForClient()); - var formatWarn_1 = __importDefault(require_formatWarn()); - exports2.formatWarn = formatWarn_1.default; - var reporterForServer_1 = __importDefault(require_reporterForServer()); - function default_1(opts) { - var _a, _b, _c, _d; - if (opts.context.argv[0] === "server") { - const log$ = Rx.fromEvent(opts.streamParser, "data"); - reporterForServer_1.default(log$, opts.context.config); - return; - } - const outputMaxWidth = (_c = (_b = (_a = opts.reportingOptions) === null || _a === void 0 ? void 0 : _a.outputMaxWidth) !== null && _b !== void 0 ? _b : process.stdout.columns && process.stdout.columns - 2) !== null && _c !== void 0 ? _c : 80; - const output$ = toOutput$({ ...opts, reportingOptions: { ...opts.reportingOptions, outputMaxWidth } }); - if ((_d = opts.reportingOptions) === null || _d === void 0 ? void 0 : _d.appendOnly) { - const writeNext = opts.useStderr ? console.error.bind(console) : console.log.bind(console); - output$.subscribe({ - complete() { - }, - error: (err) => console.error(err.message), - next: writeNext - }); - return; - } - const diff = ansi_diff_1.default({ - height: process.stdout.rows, - outputMaxWidth - }); - output$.subscribe({ - complete() { - }, - error: (err) => logUpdate(err.message), - next: logUpdate - }); - const write = opts.useStderr ? process.stderr.write.bind(process.stderr) : process.stdout.write.bind(process.stdout); - function logUpdate(view) { - if (!view.endsWith(constants_1.EOL)) - view += constants_1.EOL; - write(diff.update(view)); - } + exports2.publishBehavior = void 0; + var BehaviorSubject_1 = require_BehaviorSubject(); + var ConnectableObservable_1 = require_ConnectableObservable(); + function publishBehavior(initialValue) { + return function(source) { + var subject = new BehaviorSubject_1.BehaviorSubject(initialValue); + return new ConnectableObservable_1.ConnectableObservable(source, function() { + return subject; + }); + }; } - exports2.default = default_1; - function toOutput$(opts) { - var _a, _b, _c, _d, _e, _f, _g; - opts = opts || {}; - const contextPushStream = new Rx.Subject(); - const fetchingProgressPushStream = new Rx.Subject(); - const progressPushStream = new Rx.Subject(); - const stagePushStream = new Rx.Subject(); - const deprecationPushStream = new Rx.Subject(); - const summaryPushStream = new Rx.Subject(); - const lifecyclePushStream = new Rx.Subject(); - const statsPushStream = new Rx.Subject(); - const packageImportMethodPushStream = new Rx.Subject(); - const installCheckPushStream = new Rx.Subject(); - const registryPushStream = new Rx.Subject(); - const rootPushStream = new Rx.Subject(); - const packageManifestPushStream = new Rx.Subject(); - const linkPushStream = new Rx.Subject(); - const otherPushStream = new Rx.Subject(); - const hookPushStream = new Rx.Subject(); - const skippedOptionalDependencyPushStream = new Rx.Subject(); - const scopePushStream = new Rx.Subject(); - const requestRetryPushStream = new Rx.Subject(); - const updateCheckPushStream = new Rx.Subject(); - setTimeout(() => { - opts.streamParser["on"]("data", (log2) => { - switch (log2.name) { - case "pnpm:context": - contextPushStream.next(log2); - break; - case "pnpm:fetching-progress": - fetchingProgressPushStream.next(log2); - break; - case "pnpm:progress": - progressPushStream.next(log2); - break; - case "pnpm:stage": - stagePushStream.next(log2); - break; - case "pnpm:deprecation": - deprecationPushStream.next(log2); - break; - case "pnpm:summary": - summaryPushStream.next(log2); - break; - case "pnpm:lifecycle": - lifecyclePushStream.next(log2); - break; - case "pnpm:stats": - statsPushStream.next(log2); - break; - case "pnpm:package-import-method": - packageImportMethodPushStream.next(log2); - break; - case "pnpm:install-check": - installCheckPushStream.next(log2); - break; - case "pnpm:registry": - registryPushStream.next(log2); - break; - case "pnpm:root": - rootPushStream.next(log2); - break; - case "pnpm:package-manifest": - packageManifestPushStream.next(log2); - break; - case "pnpm:link": - linkPushStream.next(log2); - break; - case "pnpm:hook": - hookPushStream.next(log2); - break; - case "pnpm:skipped-optional-dependency": - skippedOptionalDependencyPushStream.next(log2); - break; - case "pnpm:scope": - scopePushStream.next(log2); - break; - case "pnpm:request-retry": - requestRetryPushStream.next(log2); - break; - case "pnpm:update-check": - updateCheckPushStream.next(log2); - break; - case "pnpm": - case "pnpm:global": - case "pnpm:store": - case "pnpm:lockfile": - otherPushStream.next(log2); - break; - } + exports2.publishBehavior = publishBehavior; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js +var require_publishLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publishLast = void 0; + var AsyncSubject_1 = require_AsyncSubject(); + var ConnectableObservable_1 = require_ConnectableObservable(); + function publishLast() { + return function(source) { + var subject = new AsyncSubject_1.AsyncSubject(); + return new ConnectableObservable_1.ConnectableObservable(source, function() { + return subject; }); - }, 0); - const log$ = { - context: Rx.from(contextPushStream), - deprecation: Rx.from(deprecationPushStream), - fetchingProgress: Rx.from(fetchingProgressPushStream), - hook: Rx.from(hookPushStream), - installCheck: Rx.from(installCheckPushStream), - lifecycle: Rx.from(lifecyclePushStream), - link: Rx.from(linkPushStream), - other: Rx.from(otherPushStream), - packageImportMethod: Rx.from(packageImportMethodPushStream), - packageManifest: Rx.from(packageManifestPushStream), - progress: Rx.from(progressPushStream), - registry: Rx.from(registryPushStream), - requestRetry: Rx.from(requestRetryPushStream), - root: Rx.from(rootPushStream), - scope: Rx.from(scopePushStream), - skippedOptionalDependency: Rx.from(skippedOptionalDependencyPushStream), - stage: Rx.from(stagePushStream), - stats: Rx.from(statsPushStream), - summary: Rx.from(summaryPushStream), - updateCheck: Rx.from(updateCheckPushStream) }; - const outputs = reporterForClient_1.default(log$, { - appendOnly: (_a = opts.reportingOptions) === null || _a === void 0 ? void 0 : _a.appendOnly, - cmd: opts.context.argv[0], - config: opts.context.config, - isRecursive: ((_b = opts.context.config) === null || _b === void 0 ? void 0 : _b["recursive"]) === true, - logLevel: (_c = opts.reportingOptions) === null || _c === void 0 ? void 0 : _c.logLevel, - pnpmConfig: opts.context.config, - streamLifecycleOutput: (_d = opts.reportingOptions) === null || _d === void 0 ? void 0 : _d.streamLifecycleOutput, - throttleProgress: (_e = opts.reportingOptions) === null || _e === void 0 ? void 0 : _e.throttleProgress, - width: (_f = opts.reportingOptions) === null || _f === void 0 ? void 0 : _f.outputMaxWidth - }); - if ((_g = opts.reportingOptions) === null || _g === void 0 ? void 0 : _g.appendOnly) { - return Rx.merge(...outputs).pipe(operators_1.map((log2) => log2.pipe(operators_1.map((msg) => msg.msg))), operators_1.mergeAll()); - } - return mergeOutputs_1.default(outputs); } - exports2.toOutput$ = toOutput$; + exports2.publishLast = publishLast; } }); -// ../cli-utils/lib/getConfig.js -var require_getConfig = __commonJS({ - "../cli-utils/lib/getConfig.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js +var require_publishReplay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var cli_meta_1 = __importDefault(require_lib4()); - var config_1 = __importDefault(require_lib10()); - var default_reporter_1 = require_lib11(); - async function default_1(cliOptions, opts) { - const { config, warnings } = await config_1.default({ - cliOptions, - globalDirShouldAllowWrite: opts.globalDirShouldAllowWrite, - packageManager: cli_meta_1.default, - rcOptionsTypes: opts.rcOptionsTypes, - workspaceDir: opts.workspaceDir, - checkUnknownSetting: opts.checkUnknownSetting - }); - config.cliOptions = cliOptions; - if (opts.excludeReporter) { - delete config.reporter; - } - if (warnings.length > 0) { - console.log(warnings.map((warning) => default_reporter_1.formatWarn(warning)).join("\n")); + exports2.publishReplay = void 0; + var ReplaySubject_1 = require_ReplaySubject(); + var multicast_1 = require_multicast(); + var isFunction_1 = require_isFunction(); + function publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) { + if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) { + timestampProvider = selectorOrScheduler; } - return config; + var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : void 0; + return function(source) { + return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source); + }; } - exports2.default = default_1; + exports2.publishReplay = publishReplay; } }); -// ../core-loggers/lib/contextLogger.js -var require_contextLogger = __commonJS({ - "../core-loggers/lib/contextLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js +var require_raceWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.contextLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.contextLogger = logger_1.default("context"); + exports2.raceWith = void 0; + var race_1 = require_race(); + var lift_1 = require_lift(); + var identity_1 = require_identity(); + function raceWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; + } + return !otherSources.length ? identity_1.identity : lift_1.operate(function(source, subscriber) { + race_1.raceInit(__spreadArray3([source], __read4(otherSources)))(subscriber); + }); + } + exports2.raceWith = raceWith; } }); -// ../core-loggers/lib/deprecationLogger.js -var require_deprecationLogger = __commonJS({ - "../core-loggers/lib/deprecationLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeat.js +var require_repeat = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeat.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.deprecationLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.deprecationLogger = logger_1.default("deprecation"); + exports2.repeat = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var timer_1 = require_timer2(); + function repeat(countOrConfig) { + var _a; + var count = Infinity; + var delay; + if (countOrConfig != null) { + if (typeof countOrConfig === "object") { + _a = countOrConfig.count, count = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay; + } else { + count = countOrConfig; + } + } + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source, subscriber) { + var soFar = 0; + var sourceSub; + var resubscribe = function() { + sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe(); + sourceSub = null; + if (delay != null) { + var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(soFar)); + var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + notifierSubscriber_1.unsubscribe(); + subscribeToSource(); + }); + notifier.subscribe(notifierSubscriber_1); + } else { + subscribeToSource(); + } + }; + var subscribeToSource = function() { + var syncUnsub = false; + sourceSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { + if (++soFar < count) { + if (sourceSub) { + resubscribe(); + } else { + syncUnsub = true; + } + } else { + subscriber.complete(); + } + })); + if (syncUnsub) { + resubscribe(); + } + }; + subscribeToSource(); + }); + } + exports2.repeat = repeat; } }); -// ../core-loggers/lib/fetchingProgressLogger.js -var require_fetchingProgressLogger = __commonJS({ - "../core-loggers/lib/fetchingProgressLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js +var require_repeatWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fetchingProgressLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.fetchingProgressLogger = logger_1.default("fetching-progress"); + exports2.repeatWhen = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function repeatWhen(notifier) { + return lift_1.operate(function(source, subscriber) { + var innerSub; + var syncResub = false; + var completions$; + var isNotifierComplete = false; + var isMainComplete = false; + var checkComplete = function() { + return isMainComplete && isNotifierComplete && (subscriber.complete(), true); + }; + var getCompletionSubject = function() { + if (!completions$) { + completions$ = new Subject_1.Subject(); + innerFrom_1.innerFrom(notifier(completions$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + if (innerSub) { + subscribeForRepeatWhen(); + } else { + syncResub = true; + } + }, function() { + isNotifierComplete = true; + checkComplete(); + })); + } + return completions$; + }; + var subscribeForRepeatWhen = function() { + isMainComplete = false; + innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { + isMainComplete = true; + !checkComplete() && getCompletionSubject().next(); + })); + if (syncResub) { + innerSub.unsubscribe(); + innerSub = null; + syncResub = false; + subscribeForRepeatWhen(); + } + }; + subscribeForRepeatWhen(); + }); + } + exports2.repeatWhen = repeatWhen; } }); -// ../core-loggers/lib/hookLogger.js -var require_hookLogger = __commonJS({ - "../core-loggers/lib/hookLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retry.js +var require_retry = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retry.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.hookLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.hookLogger = logger_1.default("hook"); + exports2.retry = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var identity_1 = require_identity(); + var timer_1 = require_timer2(); + var innerFrom_1 = require_innerFrom(); + function retry(configOrCount) { + if (configOrCount === void 0) { + configOrCount = Infinity; + } + var config; + if (configOrCount && typeof configOrCount === "object") { + config = configOrCount; + } else { + config = { + count: configOrCount + }; + } + var _a = config.count, count = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b; + return count <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { + var soFar = 0; + var innerSub; + var subscribeForRetry = function() { + var syncUnsub = false; + innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (resetOnSuccess) { + soFar = 0; + } + subscriber.next(value); + }, void 0, function(err) { + if (soFar++ < count) { + var resub_1 = function() { + if (innerSub) { + innerSub.unsubscribe(); + innerSub = null; + subscribeForRetry(); + } else { + syncUnsub = true; + } + }; + if (delay != null) { + var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(err, soFar)); + var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + notifierSubscriber_1.unsubscribe(); + resub_1(); + }, function() { + subscriber.complete(); + }); + notifier.subscribe(notifierSubscriber_1); + } else { + resub_1(); + } + } else { + subscriber.error(err); + } + })); + if (syncUnsub) { + innerSub.unsubscribe(); + innerSub = null; + subscribeForRetry(); + } + }; + subscribeForRetry(); + }); + } + exports2.retry = retry; } }); -// ../core-loggers/lib/installCheckLogger.js -var require_installCheckLogger = __commonJS({ - "../core-loggers/lib/installCheckLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js +var require_retryWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.installCheckLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.installCheckLogger = logger_1.default("install-check"); + exports2.retryWhen = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function retryWhen(notifier) { + return lift_1.operate(function(source, subscriber) { + var innerSub; + var syncResub = false; + var errors$; + var subscribeForRetryWhen = function() { + innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) { + if (!errors$) { + errors$ = new Subject_1.Subject(); + innerFrom_1.innerFrom(notifier(errors$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + return innerSub ? subscribeForRetryWhen() : syncResub = true; + })); + } + if (errors$) { + errors$.next(err); + } + })); + if (syncResub) { + innerSub.unsubscribe(); + innerSub = null; + syncResub = false; + subscribeForRetryWhen(); + } + }; + subscribeForRetryWhen(); + }); + } + exports2.retryWhen = retryWhen; } }); -// ../core-loggers/lib/lifecycleLogger.js -var require_lifecycleLogger = __commonJS({ - "../core-loggers/lib/lifecycleLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sample.js +var require_sample = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sample.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.lifecycleLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.lifecycleLogger = logger_1.default("lifecycle"); + exports2.sample = void 0; + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function sample(notifier) { + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + var lastValue = null; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + hasValue = true; + lastValue = value; + })); + innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber.next(value); + } + }, noop_1.noop)); + }); + } + exports2.sample = sample; } }); -// ../core-loggers/lib/linkLogger.js -var require_linkLogger = __commonJS({ - "../core-loggers/lib/linkLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js +var require_sampleTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.linkLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.linkLogger = logger_1.default("link"); + exports2.sampleTime = void 0; + var async_1 = require_async(); + var sample_1 = require_sample(); + var interval_1 = require_interval(); + function sampleTime(period, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return sample_1.sample(interval_1.interval(period, scheduler)); + } + exports2.sampleTime = sampleTime; } }); -// ../core-loggers/lib/packageImportMethodLogger.js -var require_packageImportMethodLogger = __commonJS({ - "../core-loggers/lib/packageImportMethodLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scan.js +var require_scan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scan.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.packageImportMethodLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.packageImportMethodLogger = logger_1.default("package-import-method"); + exports2.scan = void 0; + var lift_1 = require_lift(); + var scanInternals_1 = require_scanInternals(); + function scan(accumulator, seed) { + return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true)); + } + exports2.scan = scan; } }); -// ../core-loggers/lib/packageManifestLogger.js -var require_packageManifestLogger = __commonJS({ - "../core-loggers/lib/packageManifestLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js +var require_sequenceEqual = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.packageManifestLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.packageManifestLogger = logger_1.default("package-manifest"); + exports2.sequenceEqual = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function sequenceEqual(compareTo, comparator) { + if (comparator === void 0) { + comparator = function(a, b) { + return a === b; + }; + } + return lift_1.operate(function(source, subscriber) { + var aState = createState(); + var bState = createState(); + var emit = function(isEqual) { + subscriber.next(isEqual); + subscriber.complete(); + }; + var createSubscriber = function(selfState, otherState) { + var sequenceEqualSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(a) { + var buffer = otherState.buffer, complete = otherState.complete; + if (buffer.length === 0) { + complete ? emit(false) : selfState.buffer.push(a); + } else { + !comparator(a, buffer.shift()) && emit(false); + } + }, function() { + selfState.complete = true; + var complete = otherState.complete, buffer = otherState.buffer; + complete && emit(buffer.length === 0); + sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe(); + }); + return sequenceEqualSubscriber; + }; + source.subscribe(createSubscriber(aState, bState)); + innerFrom_1.innerFrom(compareTo).subscribe(createSubscriber(bState, aState)); + }); + } + exports2.sequenceEqual = sequenceEqual; + function createState() { + return { + buffer: [], + complete: false + }; + } } }); -// ../core-loggers/lib/progressLogger.js -var require_progressLogger = __commonJS({ - "../core-loggers/lib/progressLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/share.js +var require_share = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/share.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.progressLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.progressLogger = logger_1.default("progress"); + exports2.share = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var Subscriber_1 = require_Subscriber(); + var lift_1 = require_lift(); + function share(options) { + if (options === void 0) { + options = {}; + } + var _a = options.connector, connector = _a === void 0 ? function() { + return new Subject_1.Subject(); + } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d; + return function(wrapperSource) { + var connection; + var resetConnection; + var subject; + var refCount = 0; + var hasCompleted = false; + var hasErrored = false; + var cancelReset = function() { + resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe(); + resetConnection = void 0; + }; + var reset = function() { + cancelReset(); + connection = subject = void 0; + hasCompleted = hasErrored = false; + }; + var resetAndUnsubscribe = function() { + var conn = connection; + reset(); + conn === null || conn === void 0 ? void 0 : conn.unsubscribe(); + }; + return lift_1.operate(function(source, subscriber) { + refCount++; + if (!hasErrored && !hasCompleted) { + cancelReset(); + } + var dest = subject = subject !== null && subject !== void 0 ? subject : connector(); + subscriber.add(function() { + refCount--; + if (refCount === 0 && !hasErrored && !hasCompleted) { + resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero); + } + }); + dest.subscribe(subscriber); + if (!connection && refCount > 0) { + connection = new Subscriber_1.SafeSubscriber({ + next: function(value) { + return dest.next(value); + }, + error: function(err) { + hasErrored = true; + cancelReset(); + resetConnection = handleReset(reset, resetOnError, err); + dest.error(err); + }, + complete: function() { + hasCompleted = true; + cancelReset(); + resetConnection = handleReset(reset, resetOnComplete); + dest.complete(); + } + }); + innerFrom_1.innerFrom(source).subscribe(connection); + } + })(wrapperSource); + }; + } + exports2.share = share; + function handleReset(reset, on) { + var args2 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args2[_i - 2] = arguments[_i]; + } + if (on === true) { + reset(); + return; + } + if (on === false) { + return; + } + var onSubscriber = new Subscriber_1.SafeSubscriber({ + next: function() { + onSubscriber.unsubscribe(); + reset(); + } + }); + return innerFrom_1.innerFrom(on.apply(void 0, __spreadArray3([], __read4(args2)))).subscribe(onSubscriber); + } } }); -// ../core-loggers/lib/registryLogger.js -var require_registryLogger = __commonJS({ - "../core-loggers/lib/registryLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js +var require_shareReplay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.shareReplay = void 0; + var ReplaySubject_1 = require_ReplaySubject(); + var share_1 = require_share(); + function shareReplay(configOrBufferSize, windowTime, scheduler) { + var _a, _b, _c; + var bufferSize; + var refCount = false; + if (configOrBufferSize && typeof configOrBufferSize === "object") { + _a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler = configOrBufferSize.scheduler; + } else { + bufferSize = configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity; + } + return share_1.share({ + connector: function() { + return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler); + }, + resetOnError: true, + resetOnComplete: false, + resetOnRefCountZero: refCount + }); + } + exports2.shareReplay = shareReplay; } }); -// ../core-loggers/lib/removalLogger.js -var require_removalLogger = __commonJS({ - "../core-loggers/lib/removalLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/single.js +var require_single = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/single.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.removalLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.removalLogger = logger_1.default("removal"); + exports2.single = void 0; + var EmptyError_1 = require_EmptyError(); + var SequenceError_1 = require_SequenceError(); + var NotFoundError_1 = require_NotFoundError(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function single(predicate) { + return lift_1.operate(function(source, subscriber) { + var hasValue = false; + var singleValue; + var seenValue = false; + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + seenValue = true; + if (!predicate || predicate(value, index++, source)) { + hasValue && subscriber.error(new SequenceError_1.SequenceError("Too many matching values")); + hasValue = true; + singleValue = value; + } + }, function() { + if (hasValue) { + subscriber.next(singleValue); + subscriber.complete(); + } else { + subscriber.error(seenValue ? new NotFoundError_1.NotFoundError("No matching values") : new EmptyError_1.EmptyError()); + } + })); + }); + } + exports2.single = single; } }); -// ../core-loggers/lib/requestRetryLogger.js -var require_requestRetryLogger = __commonJS({ - "../core-loggers/lib/requestRetryLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skip.js +var require_skip = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skip.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.requestRetryLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.requestRetryLogger = logger_1.default("request-retry"); + exports2.skip = void 0; + var filter_1 = require_filter(); + function skip(count) { + return filter_1.filter(function(_, index) { + return count <= index; + }); + } + exports2.skip = skip; } }); -// ../core-loggers/lib/rootLogger.js -var require_rootLogger = __commonJS({ - "../core-loggers/lib/rootLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js +var require_skipLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.rootLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.rootLogger = logger_1.default("root"); + exports2.skipLast = void 0; + var identity_1 = require_identity(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function skipLast(skipCount) { + return skipCount <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { + var ring = new Array(skipCount); + var seen = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var valueIndex = seen++; + if (valueIndex < skipCount) { + ring[valueIndex] = value; + } else { + var index = valueIndex % skipCount; + var oldValue = ring[index]; + ring[index] = value; + subscriber.next(oldValue); + } + })); + return function() { + ring = null; + }; + }); + } + exports2.skipLast = skipLast; } }); -// ../core-loggers/lib/scopeLogger.js -var require_scopeLogger = __commonJS({ - "../core-loggers/lib/scopeLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js +var require_skipUntil = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.scopeLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.scopeLogger = logger_1.default("scope"); + exports2.skipUntil = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var noop_1 = require_noop(); + function skipUntil(notifier) { + return lift_1.operate(function(source, subscriber) { + var taking = false; + var skipSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe(); + taking = true; + }, noop_1.noop); + innerFrom_1.innerFrom(notifier).subscribe(skipSubscriber); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return taking && subscriber.next(value); + })); + }); + } + exports2.skipUntil = skipUntil; } }); -// ../core-loggers/lib/skippedOptionalDependencyLogger.js -var require_skippedOptionalDependencyLogger = __commonJS({ - "../core-loggers/lib/skippedOptionalDependencyLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js +var require_skipWhile = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.skippedOptionalDependencyLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.skippedOptionalDependencyLogger = logger_1.default("skipped-optional-dependency"); + exports2.skipWhile = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function skipWhile(predicate) { + return lift_1.operate(function(source, subscriber) { + var taking = false; + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return (taking || (taking = !predicate(value, index++))) && subscriber.next(value); + })); + }); + } + exports2.skipWhile = skipWhile; } }); -// ../core-loggers/lib/stageLogger.js -var require_stageLogger = __commonJS({ - "../core-loggers/lib/stageLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/startWith.js +var require_startWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/startWith.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.stageLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.stageLogger = logger_1.default("stage"); + exports2.startWith = void 0; + var concat_1 = require_concat(); + var args_1 = require_args(); + var lift_1 = require_lift(); + function startWith() { + var values = []; + for (var _i = 0; _i < arguments.length; _i++) { + values[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(values); + return lift_1.operate(function(source, subscriber) { + (scheduler ? concat_1.concat(values, source, scheduler) : concat_1.concat(values, source)).subscribe(subscriber); + }); + } + exports2.startWith = startWith; } }); -// ../core-loggers/lib/statsLogger.js -var require_statsLogger = __commonJS({ - "../core-loggers/lib/statsLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js +var require_switchMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.statsLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.statsLogger = logger_1.default("stats"); + exports2.switchMap = void 0; + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function switchMap(project, resultSelector) { + return lift_1.operate(function(source, subscriber) { + var innerSubscriber = null; + var index = 0; + var isComplete = false; + var checkComplete = function() { + return isComplete && !innerSubscriber && subscriber.complete(); + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe(); + var innerIndex = 0; + var outerIndex = index++; + innerFrom_1.innerFrom(project(value, outerIndex)).subscribe(innerSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) { + return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); + }, function() { + innerSubscriber = null; + checkComplete(); + })); + }, function() { + isComplete = true; + checkComplete(); + })); + }); + } + exports2.switchMap = switchMap; } }); -// ../core-loggers/lib/summaryLogger.js -var require_summaryLogger = __commonJS({ - "../core-loggers/lib/summaryLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js +var require_switchAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.summaryLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.summaryLogger = logger_1.default("summary"); + exports2.switchAll = void 0; + var switchMap_1 = require_switchMap(); + var identity_1 = require_identity(); + function switchAll() { + return switchMap_1.switchMap(identity_1.identity); + } + exports2.switchAll = switchAll; } }); -// ../core-loggers/lib/updateCheckLogger.js -var require_updateCheckLogger = __commonJS({ - "../core-loggers/lib/updateCheckLogger.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js +var require_switchMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.updateCheckLogger = void 0; - var logger_1 = __importDefault(require_lib6()); - exports2.updateCheckLogger = logger_1.default("update-check"); + exports2.switchMapTo = void 0; + var switchMap_1 = require_switchMap(); + var isFunction_1 = require_isFunction(); + function switchMapTo(innerObservable, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function() { + return innerObservable; + }, resultSelector) : switchMap_1.switchMap(function() { + return innerObservable; + }); + } + exports2.switchMapTo = switchMapTo; } }); -// ../core-loggers/lib/all.js -var require_all = __commonJS({ - "../core-loggers/lib/all.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_contextLogger(), exports2); - __exportStar(require_deprecationLogger(), exports2); - __exportStar(require_fetchingProgressLogger(), exports2); - __exportStar(require_hookLogger(), exports2); - __exportStar(require_installCheckLogger(), exports2); - __exportStar(require_lifecycleLogger(), exports2); - __exportStar(require_linkLogger(), exports2); - __exportStar(require_packageImportMethodLogger(), exports2); - __exportStar(require_packageManifestLogger(), exports2); - __exportStar(require_progressLogger(), exports2); - __exportStar(require_registryLogger(), exports2); - __exportStar(require_removalLogger(), exports2); - __exportStar(require_requestRetryLogger(), exports2); - __exportStar(require_rootLogger(), exports2); - __exportStar(require_scopeLogger(), exports2); - __exportStar(require_skippedOptionalDependencyLogger(), exports2); - __exportStar(require_stageLogger(), exports2); - __exportStar(require_statsLogger(), exports2); - __exportStar(require_summaryLogger(), exports2); - __exportStar(require_updateCheckLogger(), exports2); - } -}); - -// ../core-loggers/lib/index.js -var require_lib12 = __commonJS({ - "../core-loggers/lib/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js +var require_switchScan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_all(), exports2); + exports2.switchScan = void 0; + var switchMap_1 = require_switchMap(); + var lift_1 = require_lift(); + function switchScan(accumulator, seed) { + return lift_1.operate(function(source, subscriber) { + var state = seed; + switchMap_1.switchMap(function(value, index) { + return accumulator(state, value, index); + }, function(_, innerValue) { + return state = innerValue, innerValue; + })(source).subscribe(subscriber); + return function() { + state = null; + }; + }); + } + exports2.switchScan = switchScan; } }); -// ../package-is-installable/lib/checkEngine.js -var require_checkEngine = __commonJS({ - "../package-is-installable/lib/checkEngine.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js +var require_takeUntil = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UnsupportedEngineError = void 0; - var error_1 = __importDefault(require_lib8()); - var semver_1 = __importDefault(require_semver2()); - var UnsupportedEngineError = class extends error_1.default { - constructor(packageId, wanted, current) { - super("UNSUPPORTED_ENGINE", `Unsupported engine for ${packageId}: wanted: ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`); - this.packageId = packageId; - this.wanted = wanted; - this.current = current; - } - }; - exports2.UnsupportedEngineError = UnsupportedEngineError; - function checkEngine(packageId, wantedEngine, currentEngine) { - if (!wantedEngine) - return null; - const unsatisfiedWanted = {}; - if (wantedEngine.node && !semver_1.default.satisfies(currentEngine.node, wantedEngine.node)) { - unsatisfiedWanted.node = wantedEngine.node; - } - if (currentEngine.pnpm && wantedEngine.pnpm && !semver_1.default.satisfies(currentEngine.pnpm, wantedEngine.pnpm)) { - unsatisfiedWanted.pnpm = wantedEngine.pnpm; - } - if (Object.keys(unsatisfiedWanted).length > 0) { - return new UnsupportedEngineError(packageId, unsatisfiedWanted, currentEngine); - } - return null; + exports2.takeUntil = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var noop_1 = require_noop(); + function takeUntil(notifier) { + return lift_1.operate(function(source, subscriber) { + innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + return subscriber.complete(); + }, noop_1.noop)); + !subscriber.closed && source.subscribe(subscriber); + }); } - exports2.default = checkEngine; + exports2.takeUntil = takeUntil; } }); -// ../package-is-installable/lib/checkPlatform.js -var require_checkPlatform = __commonJS({ - "../package-is-installable/lib/checkPlatform.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js +var require_takeWhile = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UnsupportedPlatformError = void 0; - var error_1 = __importDefault(require_lib8()); - var UnsupportedPlatformError = class extends error_1.default { - constructor(packageId, wanted, current) { - super("UNSUPPORTED_PLATFORM", `Unsupported platform for ${packageId}: wanted ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`); - this.wanted = wanted; - this.current = current; - } - }; - exports2.UnsupportedPlatformError = UnsupportedPlatformError; - function checkPlatform(packageId, wantedPlatform) { - const platform = process.platform; - const arch = process.arch; - let osOk = true; - let cpuOk = true; - if (wantedPlatform.os) { - osOk = checkList(platform, wantedPlatform.os); - } - if (wantedPlatform.cpu) { - cpuOk = checkList(arch, wantedPlatform.cpu); - } - if (!osOk || !cpuOk) { - return new UnsupportedPlatformError(packageId, wantedPlatform, { os: platform, cpu: arch }); + exports2.takeWhile = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function takeWhile(predicate, inclusive) { + if (inclusive === void 0) { + inclusive = false; } - return null; + return lift_1.operate(function(source, subscriber) { + var index = 0; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var result2 = predicate(value, index++); + (result2 || inclusive) && subscriber.next(value); + !result2 && subscriber.complete(); + })); + }); } - exports2.default = checkPlatform; - function checkList(value, list) { - let tmp; - let match = false; - let blc = 0; - if (typeof list === "string") { - list = [list]; - } - if (list.length === 1 && list[0] === "any") { - return true; - } - for (let i = 0; i < list.length; ++i) { - tmp = list[i]; - if (tmp[0] === "!") { - tmp = tmp.slice(1); - if (tmp === value) { - return false; + exports2.takeWhile = takeWhile; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/tap.js +var require_tap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/tap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tap = void 0; + var isFunction_1 = require_isFunction(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var identity_1 = require_identity(); + function tap(observerOrNext, error, complete) { + var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete ? { next: observerOrNext, error, complete } : observerOrNext; + return tapObserver ? lift_1.operate(function(source, subscriber) { + var _a; + (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver); + var isUnsub = true; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var _a2; + (_a2 = tapObserver.next) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, value); + subscriber.next(value); + }, function() { + var _a2; + isUnsub = false; + (_a2 = tapObserver.complete) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); + subscriber.complete(); + }, function(err) { + var _a2; + isUnsub = false; + (_a2 = tapObserver.error) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, err); + subscriber.error(err); + }, function() { + var _a2, _b; + if (isUnsub) { + (_a2 = tapObserver.unsubscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); } - ++blc; - } else { - match = match || tmp === value; - } - } - return match || blc === list.length; + (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver); + })); + }) : identity_1.identity; } + exports2.tap = tap; } }); -// ../package-is-installable/lib/index.js -var require_lib13 = __commonJS({ - "../package-is-installable/lib/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttle.js +var require_throttle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttle.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.checkPackage = exports2.UnsupportedPlatformError = exports2.UnsupportedEngineError = void 0; - var core_loggers_1 = require_lib12(); - var checkEngine_1 = __importStar2(require_checkEngine()); - Object.defineProperty(exports2, "UnsupportedEngineError", { enumerable: true, get: function() { - return checkEngine_1.UnsupportedEngineError; - } }); - var checkPlatform_1 = __importStar2(require_checkPlatform()); - Object.defineProperty(exports2, "UnsupportedPlatformError", { enumerable: true, get: function() { - return checkPlatform_1.UnsupportedPlatformError; - } }); - function packageIsInstallable(pkgId, pkg, options) { - const warn = checkPackage(pkgId, pkg, options); - if (warn == null) - return true; - core_loggers_1.installCheckLogger.warn({ - message: warn.message, - prefix: options.lockfileDir + exports2.throttle = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function throttle(durationSelector, config) { + return lift_1.operate(function(source, subscriber) { + var _a = config !== null && config !== void 0 ? config : {}, _b = _a.leading, leading = _b === void 0 ? true : _b, _c = _a.trailing, trailing = _c === void 0 ? false : _c; + var hasValue = false; + var sendValue = null; + var throttled = null; + var isComplete = false; + var endThrottling = function() { + throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe(); + throttled = null; + if (trailing) { + send(); + isComplete && subscriber.complete(); + } + }; + var cleanupThrottling = function() { + throttled = null; + isComplete && subscriber.complete(); + }; + var startThrottle = function(value) { + return throttled = innerFrom_1.innerFrom(durationSelector(value)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, endThrottling, cleanupThrottling)); + }; + var send = function() { + if (hasValue) { + hasValue = false; + var value = sendValue; + sendValue = null; + subscriber.next(value); + !isComplete && startThrottle(value); + } + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + hasValue = true; + sendValue = value; + !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value)); + }, function() { + isComplete = true; + !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete(); + })); }); - if (options.optional) { - core_loggers_1.skippedOptionalDependencyLogger.debug({ - details: warn.toString(), - package: { - id: pkgId, - name: pkg.name, - version: pkg.version - }, - prefix: options.lockfileDir, - reason: warn.code === "ERR_PNPM_UNSUPPORTED_ENGINE" ? "unsupported_engine" : "unsupported_platform" - }); - return false; - } - if (options.engineStrict) - throw warn; - return null; } - exports2.default = packageIsInstallable; - function checkPackage(pkgId, manifest, options) { - var _a, _b, _c, _d; - return (_c = checkPlatform_1.default(pkgId, { - cpu: (_a = manifest.cpu) !== null && _a !== void 0 ? _a : ["any"], - os: (_b = manifest.os) !== null && _b !== void 0 ? _b : ["any"] - })) !== null && _c !== void 0 ? _c : manifest.engines == null ? null : checkEngine_1.default(pkgId, manifest.engines, { - node: (_d = options.nodeVersion) !== null && _d !== void 0 ? _d : process.version, - pnpm: options.pnpmVersion - }); + exports2.throttle = throttle; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js +var require_throttleTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throttleTime = void 0; + var async_1 = require_async(); + var throttle_1 = require_throttle(); + var timer_1 = require_timer2(); + function throttleTime(duration, scheduler, config) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + var duration$ = timer_1.timer(duration, scheduler); + return throttle_1.throttle(function() { + return duration$; + }, config); } - exports2.checkPackage = checkPackage; + exports2.throttleTime = throttleTime; } }); -// ../cli-utils/lib/packageIsInstallable.js -var require_packageIsInstallable = __commonJS({ - "../cli-utils/lib/packageIsInstallable.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js +var require_timeInterval = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.packageIsInstallable = void 0; - var cli_meta_1 = __importDefault(require_lib4()); - var logger_1 = __importDefault(require_lib6()); - var package_is_installable_1 = require_lib13(); - function packageIsInstallable(pkgPath, pkg, opts) { - var _a; - const pnpmVersion = cli_meta_1.default.name === "pnpm" ? cli_meta_1.default.stableVersion : void 0; - const err = package_is_installable_1.checkPackage(pkgPath, pkg, { pnpmVersion }); - if (err === null) - return; - if ((_a = err instanceof package_is_installable_1.UnsupportedEngineError && err.wanted.pnpm) !== null && _a !== void 0 ? _a : opts.engineStrict) - throw err; - logger_1.default.warn({ - message: `Unsupported ${err instanceof package_is_installable_1.UnsupportedEngineError ? "engine" : "platform"}: wanted: ${JSON.stringify(err.wanted)} (current: ${JSON.stringify(err.current)})`, - prefix: pkgPath + exports2.TimeInterval = exports2.timeInterval = void 0; + var async_1 = require_async(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function timeInterval(scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return lift_1.operate(function(source, subscriber) { + var last = scheduler.now(); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var now = scheduler.now(); + var interval = now - last; + last = now; + subscriber.next(new TimeInterval(value, interval)); + })); }); } - exports2.packageIsInstallable = packageIsInstallable; + exports2.timeInterval = timeInterval; + var TimeInterval = function() { + function TimeInterval2(value, interval) { + this.value = value; + this.interval = interval; + } + return TimeInterval2; + }(); + exports2.TimeInterval = TimeInterval; } }); -// ../manifest-utils/lib/getSpecFromPackageManifest.js -var require_getSpecFromPackageManifest = __commonJS({ - "../manifest-utils/lib/getSpecFromPackageManifest.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js +var require_timeoutWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.default = (manifest, depName) => { - var _a, _b, _c, _d, _e, _f; - return (_f = (_d = (_b = (_a = manifest.optionalDependencies) === null || _a === void 0 ? void 0 : _a[depName]) !== null && _b !== void 0 ? _b : (_c = manifest.dependencies) === null || _c === void 0 ? void 0 : _c[depName]) !== null && _d !== void 0 ? _d : (_e = manifest.devDependencies) === null || _e === void 0 ? void 0 : _e[depName]) !== null && _f !== void 0 ? _f : ""; - }; + exports2.timeoutWith = void 0; + var async_1 = require_async(); + var isDate_1 = require_isDate(); + var timeout_1 = require_timeout(); + function timeoutWith(due, withObservable, scheduler) { + var first; + var each; + var _with; + scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async_1.async; + if (isDate_1.isValidDate(due)) { + first = due; + } else if (typeof due === "number") { + each = due; + } + if (withObservable) { + _with = function() { + return withObservable; + }; + } else { + throw new TypeError("No observable provided to switch to"); + } + if (first == null && each == null) { + throw new TypeError("No timeout provided."); + } + return timeout_1.timeout({ + first, + each, + scheduler, + with: _with + }); + } + exports2.timeoutWith = timeoutWith; } }); -// ../manifest-utils/lib/getPref.js -var require_getPref = __commonJS({ - "../manifest-utils/lib/getPref.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js +var require_timestamp2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createVersionSpec = exports2.getPref = exports2.getPrefix = void 0; - var error_1 = __importDefault(require_lib8()); - var getPrefix = (alias, name) => alias !== name ? `npm:${name}@` : ""; - exports2.getPrefix = getPrefix; - function getPref(alias, name, version, opts) { - const prefix = exports2.getPrefix(alias, name); - return `${prefix}${createVersionSpec(version, opts.pinnedVersion)}`; - } - exports2.getPref = getPref; - function createVersionSpec(version, pinnedVersion) { - switch (pinnedVersion !== null && pinnedVersion !== void 0 ? pinnedVersion : "major") { - case "none": - return "*"; - case "major": - return `^${version}`; - case "minor": - return `~${version}`; - case "patch": - return `${version}`; - default: - throw new error_1.default("BAD_PINNED_VERSION", `Cannot pin '${pinnedVersion !== null && pinnedVersion !== void 0 ? pinnedVersion : "undefined"}'`); + exports2.timestamp = void 0; + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var map_1 = require_map2(); + function timestamp(timestampProvider) { + if (timestampProvider === void 0) { + timestampProvider = dateTimestampProvider_1.dateTimestampProvider; } + return map_1.map(function(value) { + return { value, timestamp: timestampProvider.now() }; + }); } - exports2.createVersionSpec = createVersionSpec; + exports2.timestamp = timestamp; } }); -// ../types/lib/misc.js -var require_misc = __commonJS({ - "../types/lib/misc.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/window.js +var require_window = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/window.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DEPENDENCIES_FIELDS = void 0; - exports2.DEPENDENCIES_FIELDS = [ - "optionalDependencies", - "dependencies", - "devDependencies" - ]; + exports2.window = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function window2(windowBoundaries) { + return lift_1.operate(function(source, subscriber) { + var windowSubject = new Subject_1.Subject(); + subscriber.next(windowSubject.asObservable()); + var errorHandler = function(err) { + windowSubject.error(err); + subscriber.error(err); + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value); + }, function() { + windowSubject.complete(); + subscriber.complete(); + }, errorHandler)); + innerFrom_1.innerFrom(windowBoundaries).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { + windowSubject.complete(); + subscriber.next(windowSubject = new Subject_1.Subject()); + }, noop_1.noop, errorHandler)); + return function() { + windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe(); + windowSubject = null; + }; + }); + } + exports2.window = window2; } }); -// ../types/lib/options.js -var require_options = __commonJS({ - "../types/lib/options.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js +var require_windowCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js"(exports2) { "use strict"; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowCount = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function windowCount(windowSize, startWindowEvery) { + if (startWindowEvery === void 0) { + startWindowEvery = 0; + } + var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize; + return lift_1.operate(function(source, subscriber) { + var windows = [new Subject_1.Subject()]; + var starts = []; + var count = 0; + subscriber.next(windows[0].asObservable()); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var e_1, _a; + try { + for (var windows_1 = __values4(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) { + var window_1 = windows_1_1.value; + window_1.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) + _a.call(windows_1); + } finally { + if (e_1) + throw e_1.error; + } + } + var c = count - windowSize + 1; + if (c >= 0 && c % startEvery === 0) { + windows.shift().complete(); + } + if (++count % startEvery === 0) { + var window_2 = new Subject_1.Subject(); + windows.push(window_2); + subscriber.next(window_2.asObservable()); + } + }, function() { + while (windows.length > 0) { + windows.shift().complete(); + } + subscriber.complete(); + }, function(err) { + while (windows.length > 0) { + windows.shift().error(err); + } + subscriber.error(err); + }, function() { + starts = null; + windows = null; + })); + }); + } + exports2.windowCount = windowCount; } }); -// ../types/lib/package.js -var require_package = __commonJS({ - "../types/lib/package.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js +var require_windowTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowTime = void 0; + var Subject_1 = require_Subject(); + var async_1 = require_async(); + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + var args_1 = require_args(); + var executeSchedule_1 = require_executeSchedule(); + function windowTime(windowTimeSpan) { + var _a, _b; + var otherArgs = []; + for (var _i = 1; _i < arguments.length; _i++) { + otherArgs[_i - 1] = arguments[_i]; + } + var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; + var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; + var maxWindowSize = otherArgs[1] || Infinity; + return lift_1.operate(function(source, subscriber) { + var windowRecords = []; + var restartOnClose = false; + var closeWindow = function(record) { + var window2 = record.window, subs = record.subs; + window2.complete(); + subs.unsubscribe(); + arrRemove_1.arrRemove(windowRecords, record); + restartOnClose && startWindow(); + }; + var startWindow = function() { + if (windowRecords) { + var subs = new Subscription_1.Subscription(); + subscriber.add(subs); + var window_1 = new Subject_1.Subject(); + var record_1 = { + window: window_1, + subs, + seen: 0 + }; + windowRecords.push(record_1); + subscriber.next(window_1.asObservable()); + executeSchedule_1.executeSchedule(subs, scheduler, function() { + return closeWindow(record_1); + }, windowTimeSpan); + } + }; + if (windowCreationInterval !== null && windowCreationInterval >= 0) { + executeSchedule_1.executeSchedule(subscriber, scheduler, startWindow, windowCreationInterval, true); + } else { + restartOnClose = true; + } + startWindow(); + var loop = function(cb) { + return windowRecords.slice().forEach(cb); + }; + var terminate = function(cb) { + loop(function(_a2) { + var window2 = _a2.window; + return cb(window2); + }); + cb(subscriber); + subscriber.unsubscribe(); + }; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + loop(function(record) { + record.window.next(value); + maxWindowSize <= ++record.seen && closeWindow(record); + }); + }, function() { + return terminate(function(consumer) { + return consumer.complete(); + }); + }, function(err) { + return terminate(function(consumer) { + return consumer.error(err); + }); + })); + return function() { + windowRecords = null; + }; + }); + } + exports2.windowTime = windowTime; } }); -// ../types/lib/project.js -var require_project = __commonJS({ - "../types/lib/project.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js +var require_windowToggle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js"(exports2) { "use strict"; + var __values4 = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowToggle = void 0; + var Subject_1 = require_Subject(); + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var arrRemove_1 = require_arrRemove(); + function windowToggle(openings, closingSelector) { + return lift_1.operate(function(source, subscriber) { + var windows = []; + var handleError = function(err) { + while (0 < windows.length) { + windows.shift().error(err); + } + subscriber.error(err); + }; + innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) { + var window2 = new Subject_1.Subject(); + windows.push(window2); + var closingSubscription = new Subscription_1.Subscription(); + var closeWindow = function() { + arrRemove_1.arrRemove(windows, window2); + window2.complete(); + closingSubscription.unsubscribe(); + }; + var closingNotifier; + try { + closingNotifier = innerFrom_1.innerFrom(closingSelector(openValue)); + } catch (err) { + handleError(err); + return; + } + subscriber.next(window2.asObservable()); + closingSubscription.add(closingNotifier.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, closeWindow, noop_1.noop, handleError))); + }, noop_1.noop)); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + var e_1, _a; + var windowsCopy = windows.slice(); + try { + for (var windowsCopy_1 = __values4(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) { + var window_1 = windowsCopy_1_1.value; + window_1.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) + _a.call(windowsCopy_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (0 < windows.length) { + windows.shift().complete(); + } + subscriber.complete(); + }, handleError, function() { + while (0 < windows.length) { + windows.shift().unsubscribe(); + } + })); + }); + } + exports2.windowToggle = windowToggle; } }); -// ../types/lib/index.js -var require_lib14 = __commonJS({ - "../types/lib/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js +var require_windowWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_misc(), exports2); - __exportStar(require_options(), exports2); - __exportStar(require_package(), exports2); - __exportStar(require_project(), exports2); + exports2.windowWhen = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function windowWhen(closingSelector) { + return lift_1.operate(function(source, subscriber) { + var window2; + var closingSubscriber; + var handleError = function(err) { + window2.error(err); + subscriber.error(err); + }; + var openWindow = function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + window2 === null || window2 === void 0 ? void 0 : window2.complete(); + window2 = new Subject_1.Subject(); + subscriber.next(window2.asObservable()); + var closingNotifier; + try { + closingNotifier = innerFrom_1.innerFrom(closingSelector()); + } catch (err) { + handleError(err); + return; + } + closingNotifier.subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openWindow, openWindow, handleError)); + }; + openWindow(); + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + return window2.next(value); + }, function() { + window2.complete(); + subscriber.complete(); + }, handleError, function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + window2 = null; + })); + }); + } + exports2.windowWhen = windowWhen; } }); -// ../manifest-utils/lib/updateProjectManifestObject.js -var require_updateProjectManifestObject = __commonJS({ - "../manifest-utils/lib/updateProjectManifestObject.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js +var require_withLatestFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js"(exports2) { "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.guessDependencyType = exports2.updateProjectManifestObject = void 0; - var core_loggers_1 = require_lib12(); - var types_1 = require_lib14(); - async function updateProjectManifestObject(prefix, packageManifest, packageSpecs) { - packageSpecs.forEach((packageSpec) => { - var _a, _b, _c, _d, _e; - if (packageSpec.saveType) { - const spec = (_a = packageSpec.pref) !== null && _a !== void 0 ? _a : findSpec(packageSpec.alias, packageManifest); - if (spec) { - packageManifest[packageSpec.saveType] = (_b = packageManifest[packageSpec.saveType]) !== null && _b !== void 0 ? _b : {}; - packageManifest[packageSpec.saveType][packageSpec.alias] = spec; - types_1.DEPENDENCIES_FIELDS.filter((depField) => depField !== packageSpec.saveType).forEach((deptype) => { - if (packageManifest[deptype] != null) { - delete packageManifest[deptype][packageSpec.alias]; - } - }); - if (packageSpec.peer === true) { - packageManifest.peerDependencies = (_c = packageManifest.peerDependencies) !== null && _c !== void 0 ? _c : {}; - packageManifest.peerDependencies[packageSpec.alias] = spec; + exports2.withLatestFrom = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var identity_1 = require_identity(); + var noop_1 = require_noop(); + var args_1 = require_args(); + function withLatestFrom() { + var inputs = []; + for (var _i = 0; _i < arguments.length; _i++) { + inputs[_i] = arguments[_i]; + } + var project = args_1.popResultSelector(inputs); + return lift_1.operate(function(source, subscriber) { + var len = inputs.length; + var otherValues = new Array(len); + var hasValue = inputs.map(function() { + return false; + }); + var ready = false; + var _loop_1 = function(i2) { + innerFrom_1.innerFrom(inputs[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + otherValues[i2] = value; + if (!ready && !hasValue[i2]) { + hasValue[i2] = true; + (ready = hasValue.every(identity_1.identity)) && (hasValue = null); } - } - } else if (packageSpec.pref) { - const usedDepType = (_d = guessDependencyType(packageSpec.alias, packageManifest)) !== null && _d !== void 0 ? _d : "dependencies"; - packageManifest[usedDepType] = (_e = packageManifest[usedDepType]) !== null && _e !== void 0 ? _e : {}; - packageManifest[usedDepType][packageSpec.alias] = packageSpec.pref; + }, noop_1.noop)); + }; + for (var i = 0; i < len; i++) { + _loop_1(i); } - if (packageSpec.nodeExecPath) { - if (packageManifest.dependenciesMeta == null) { - packageManifest.dependenciesMeta = {}; + source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { + if (ready) { + var values = __spreadArray3([value], __read4(otherValues)); + subscriber.next(project ? project.apply(void 0, __spreadArray3([], __read4(values))) : values); } - packageManifest.dependenciesMeta[packageSpec.alias] = { node: packageSpec.nodeExecPath }; - } - }); - core_loggers_1.packageManifestLogger.debug({ - prefix, - updated: packageManifest + })); }); - return packageManifest; } - exports2.updateProjectManifestObject = updateProjectManifestObject; - function findSpec(alias, manifest) { - const foundDepType = guessDependencyType(alias, manifest); - return foundDepType && manifest[foundDepType][alias]; + exports2.withLatestFrom = withLatestFrom; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js +var require_zipAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zipAll = void 0; + var zip_1 = require_zip(); + var joinAllInternals_1 = require_joinAllInternals(); + function zipAll(project) { + return joinAllInternals_1.joinAllInternals(zip_1.zip, project); } - function guessDependencyType(alias, manifest) { - return types_1.DEPENDENCIES_FIELDS.find((depField) => { - var _a; - return Boolean((_a = manifest[depField]) === null || _a === void 0 ? void 0 : _a[alias]); + exports2.zipAll = zipAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zip.js +var require_zip2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zip.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zip = void 0; + var zip_1 = require_zip(); + var lift_1 = require_lift(); + function zip() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + return lift_1.operate(function(source, subscriber) { + zip_1.zip.apply(void 0, __spreadArray3([source], __read4(sources))).subscribe(subscriber); }); } - exports2.guessDependencyType = guessDependencyType; + exports2.zip = zip; } }); -// ../manifest-utils/lib/index.js -var require_lib15 = __commonJS({ - "../manifest-utils/lib/index.js"(exports2) { +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js +var require_zipWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zipWith = void 0; + var zip_1 = require_zip2(); + function zipWith() { + var otherInputs = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherInputs[_i] = arguments[_i]; + } + return zip_1.zip.apply(void 0, __spreadArray3([], __read4(otherInputs))); + } + exports2.zipWith = zipWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/index.js +var require_cjs2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { @@ -35786,47902 +35839,124995 @@ var require_lib15 = __commonJS({ k2 = k; o[k2] = m[k]; }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + __createBinding5(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getAllDependenciesFromManifest = exports2.filterDependenciesByType = exports2.getSpecFromPackageManifest = void 0; - var getSpecFromPackageManifest_1 = __importDefault(require_getSpecFromPackageManifest()); - exports2.getSpecFromPackageManifest = getSpecFromPackageManifest_1.default; - __exportStar(require_getPref(), exports2); - __exportStar(require_updateProjectManifestObject(), exports2); - function filterDependenciesByType(manifest, include) { - return { - ...include.devDependencies ? manifest.devDependencies : {}, - ...include.dependencies ? manifest.dependencies : {}, - ...include.optionalDependencies ? manifest.optionalDependencies : {} - }; - } - exports2.filterDependenciesByType = filterDependenciesByType; - function getAllDependenciesFromManifest(manifest) { - return { - ...manifest.devDependencies, - ...manifest.dependencies, - ...manifest.optionalDependencies - }; - } - exports2.getAllDependenciesFromManifest = getAllDependenciesFromManifest; - } -}); - -// ../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/unicode.js -var require_unicode = __commonJS({ - "../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/unicode.js"(exports2, module2) { - module2.exports.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/; - module2.exports.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/; - module2.exports.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/; - } -}); - -// ../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/util.js -var require_util4 = __commonJS({ - "../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/util.js"(exports2, module2) { - var unicode = require_unicode(); - module2.exports = { - isSpaceSeparator(c) { - return typeof c === "string" && unicode.Space_Separator.test(c); - }, - isIdStartChar(c) { - return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c === "$" || c === "_" || unicode.ID_Start.test(c)); - }, - isIdContinueChar(c) { - return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c >= "0" && c <= "9" || c === "$" || c === "_" || c === "\u200C" || c === "\u200D" || unicode.ID_Continue.test(c)); - }, - isDigit(c) { - return typeof c === "string" && /[0-9]/.test(c); - }, - isHexDigit(c) { - return typeof c === "string" && /[0-9A-Fa-f]/.test(c); - } - }; - } -}); - -// ../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/parse.js -var require_parse2 = __commonJS({ - "../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/parse.js"(exports2, module2) { - var util = require_util4(); - var source; - var parseState; - var stack2; - var pos; - var line; - var column; - var token; - var key; - var root; - module2.exports = function parse(text, reviver) { - source = String(text); - parseState = "start"; - stack2 = []; - pos = 0; - line = 1; - column = 0; - token = void 0; - key = void 0; - root = void 0; - do { - token = lex(); - parseStates[parseState](); - } while (token.type !== "eof"); - if (typeof reviver === "function") { - return internalize({ "": root }, "", reviver); - } - return root; - }; - function internalize(holder, name, reviver) { - const value = holder[name]; - if (value != null && typeof value === "object") { - for (const key2 in value) { - const replacement = internalize(value, key2, reviver); - if (replacement === void 0) { - delete value[key2]; - } else { - value[key2] = replacement; - } - } - } - return reviver.call(holder, name, value); - } - var lexState; - var buffer; - var doubleQuote; - var sign; - var c; - function lex() { - lexState = "default"; - buffer = ""; - doubleQuote = false; - sign = 1; - for (; ; ) { - c = peek(); - const token2 = lexStates[lexState](); - if (token2) { - return token2; - } - } - } - function peek() { - if (source[pos]) { - return String.fromCodePoint(source.codePointAt(pos)); - } - } - function read() { - const c2 = peek(); - if (c2 === "\n") { - line++; - column = 0; - } else if (c2) { - column += c2.length; - } else { - column++; - } - if (c2) { - pos += c2.length; - } - return c2; - } - var lexStates = { - default() { - switch (c) { - case " ": - case "\v": - case "\f": - case " ": - case "\xA0": - case "\uFEFF": - case "\n": - case "\r": - case "\u2028": - case "\u2029": - read(); - return; - case "/": - read(); - lexState = "comment"; - return; - case void 0: - read(); - return newToken("eof"); - } - if (util.isSpaceSeparator(c)) { - read(); - return; - } - return lexStates[parseState](); - }, - comment() { - switch (c) { - case "*": - read(); - lexState = "multiLineComment"; - return; - case "/": - read(); - lexState = "singleLineComment"; - return; - } - throw invalidChar(read()); - }, - multiLineComment() { - switch (c) { - case "*": - read(); - lexState = "multiLineCommentAsterisk"; - return; - case void 0: - throw invalidChar(read()); - } - read(); - }, - multiLineCommentAsterisk() { - switch (c) { - case "*": - read(); - return; - case "/": - read(); - lexState = "default"; - return; - case void 0: - throw invalidChar(read()); - } - read(); - lexState = "multiLineComment"; - }, - singleLineComment() { - switch (c) { - case "\n": - case "\r": - case "\u2028": - case "\u2029": - read(); - lexState = "default"; - return; - case void 0: - read(); - return newToken("eof"); - } - read(); - }, - value() { - switch (c) { - case "{": - case "[": - return newToken("punctuator", read()); - case "n": - read(); - literal("ull"); - return newToken("null", null); - case "t": - read(); - literal("rue"); - return newToken("boolean", true); - case "f": - read(); - literal("alse"); - return newToken("boolean", false); - case "-": - case "+": - if (read() === "-") { - sign = -1; - } - lexState = "sign"; - return; - case ".": - buffer = read(); - lexState = "decimalPointLeading"; - return; - case "0": - buffer = read(); - lexState = "zero"; - return; - case "1": - case "2": - case "3": - case "4": - case "5": - case "6": - case "7": - case "8": - case "9": - buffer = read(); - lexState = "decimalInteger"; - return; - case "I": - read(); - literal("nfinity"); - return newToken("numeric", Infinity); - case "N": - read(); - literal("aN"); - return newToken("numeric", NaN); - case '"': - case "'": - doubleQuote = read() === '"'; - buffer = ""; - lexState = "string"; - return; - } - throw invalidChar(read()); - }, - identifierNameStartEscape() { - if (c !== "u") { - throw invalidChar(read()); - } - read(); - const u = unicodeEscape(); - switch (u) { - case "$": - case "_": - break; - default: - if (!util.isIdStartChar(u)) { - throw invalidIdentifier(); - } - break; - } - buffer += u; - lexState = "identifierName"; - }, - identifierName() { - switch (c) { - case "$": - case "_": - case "\u200C": - case "\u200D": - buffer += read(); - return; - case "\\": - read(); - lexState = "identifierNameEscape"; - return; - } - if (util.isIdContinueChar(c)) { - buffer += read(); - return; - } - return newToken("identifier", buffer); - }, - identifierNameEscape() { - if (c !== "u") { - throw invalidChar(read()); - } - read(); - const u = unicodeEscape(); - switch (u) { - case "$": - case "_": - case "\u200C": - case "\u200D": - break; - default: - if (!util.isIdContinueChar(u)) { - throw invalidIdentifier(); - } - break; - } - buffer += u; - lexState = "identifierName"; - }, - sign() { - switch (c) { - case ".": - buffer = read(); - lexState = "decimalPointLeading"; - return; - case "0": - buffer = read(); - lexState = "zero"; + exports2.interval = exports2.iif = exports2.generate = exports2.fromEventPattern = exports2.fromEvent = exports2.from = exports2.forkJoin = exports2.empty = exports2.defer = exports2.connectable = exports2.concat = exports2.combineLatest = exports2.bindNodeCallback = exports2.bindCallback = exports2.UnsubscriptionError = exports2.TimeoutError = exports2.SequenceError = exports2.ObjectUnsubscribedError = exports2.NotFoundError = exports2.EmptyError = exports2.ArgumentOutOfRangeError = exports2.firstValueFrom = exports2.lastValueFrom = exports2.isObservable = exports2.identity = exports2.noop = exports2.pipe = exports2.NotificationKind = exports2.Notification = exports2.Subscriber = exports2.Subscription = exports2.Scheduler = exports2.VirtualAction = exports2.VirtualTimeScheduler = exports2.animationFrameScheduler = exports2.animationFrame = exports2.queueScheduler = exports2.queue = exports2.asyncScheduler = exports2.async = exports2.asapScheduler = exports2.asap = exports2.AsyncSubject = exports2.ReplaySubject = exports2.BehaviorSubject = exports2.Subject = exports2.animationFrames = exports2.observable = exports2.ConnectableObservable = exports2.Observable = void 0; + exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.combineLatestWith = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = exports2.config = exports2.NEVER = exports2.EMPTY = exports2.scheduled = exports2.zip = exports2.using = exports2.timer = exports2.throwError = exports2.range = exports2.race = exports2.partition = exports2.pairs = exports2.onErrorResumeNext = exports2.of = exports2.never = exports2.merge = void 0; + exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.pairwise = exports2.onErrorResumeNextWith = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = exports2.mergeAll = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = void 0; + exports2.zipWith = exports2.zipAll = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = void 0; + var Observable_1 = require_Observable(); + Object.defineProperty(exports2, "Observable", { enumerable: true, get: function() { + return Observable_1.Observable; + } }); + var ConnectableObservable_1 = require_ConnectableObservable(); + Object.defineProperty(exports2, "ConnectableObservable", { enumerable: true, get: function() { + return ConnectableObservable_1.ConnectableObservable; + } }); + var observable_1 = require_observable(); + Object.defineProperty(exports2, "observable", { enumerable: true, get: function() { + return observable_1.observable; + } }); + var animationFrames_1 = require_animationFrames(); + Object.defineProperty(exports2, "animationFrames", { enumerable: true, get: function() { + return animationFrames_1.animationFrames; + } }); + var Subject_1 = require_Subject(); + Object.defineProperty(exports2, "Subject", { enumerable: true, get: function() { + return Subject_1.Subject; + } }); + var BehaviorSubject_1 = require_BehaviorSubject(); + Object.defineProperty(exports2, "BehaviorSubject", { enumerable: true, get: function() { + return BehaviorSubject_1.BehaviorSubject; + } }); + var ReplaySubject_1 = require_ReplaySubject(); + Object.defineProperty(exports2, "ReplaySubject", { enumerable: true, get: function() { + return ReplaySubject_1.ReplaySubject; + } }); + var AsyncSubject_1 = require_AsyncSubject(); + Object.defineProperty(exports2, "AsyncSubject", { enumerable: true, get: function() { + return AsyncSubject_1.AsyncSubject; + } }); + var asap_1 = require_asap(); + Object.defineProperty(exports2, "asap", { enumerable: true, get: function() { + return asap_1.asap; + } }); + Object.defineProperty(exports2, "asapScheduler", { enumerable: true, get: function() { + return asap_1.asapScheduler; + } }); + var async_1 = require_async(); + Object.defineProperty(exports2, "async", { enumerable: true, get: function() { + return async_1.async; + } }); + Object.defineProperty(exports2, "asyncScheduler", { enumerable: true, get: function() { + return async_1.asyncScheduler; + } }); + var queue_1 = require_queue(); + Object.defineProperty(exports2, "queue", { enumerable: true, get: function() { + return queue_1.queue; + } }); + Object.defineProperty(exports2, "queueScheduler", { enumerable: true, get: function() { + return queue_1.queueScheduler; + } }); + var animationFrame_1 = require_animationFrame(); + Object.defineProperty(exports2, "animationFrame", { enumerable: true, get: function() { + return animationFrame_1.animationFrame; + } }); + Object.defineProperty(exports2, "animationFrameScheduler", { enumerable: true, get: function() { + return animationFrame_1.animationFrameScheduler; + } }); + var VirtualTimeScheduler_1 = require_VirtualTimeScheduler(); + Object.defineProperty(exports2, "VirtualTimeScheduler", { enumerable: true, get: function() { + return VirtualTimeScheduler_1.VirtualTimeScheduler; + } }); + Object.defineProperty(exports2, "VirtualAction", { enumerable: true, get: function() { + return VirtualTimeScheduler_1.VirtualAction; + } }); + var Scheduler_1 = require_Scheduler(); + Object.defineProperty(exports2, "Scheduler", { enumerable: true, get: function() { + return Scheduler_1.Scheduler; + } }); + var Subscription_1 = require_Subscription(); + Object.defineProperty(exports2, "Subscription", { enumerable: true, get: function() { + return Subscription_1.Subscription; + } }); + var Subscriber_1 = require_Subscriber(); + Object.defineProperty(exports2, "Subscriber", { enumerable: true, get: function() { + return Subscriber_1.Subscriber; + } }); + var Notification_1 = require_Notification(); + Object.defineProperty(exports2, "Notification", { enumerable: true, get: function() { + return Notification_1.Notification; + } }); + Object.defineProperty(exports2, "NotificationKind", { enumerable: true, get: function() { + return Notification_1.NotificationKind; + } }); + var pipe_1 = require_pipe(); + Object.defineProperty(exports2, "pipe", { enumerable: true, get: function() { + return pipe_1.pipe; + } }); + var noop_1 = require_noop(); + Object.defineProperty(exports2, "noop", { enumerable: true, get: function() { + return noop_1.noop; + } }); + var identity_1 = require_identity(); + Object.defineProperty(exports2, "identity", { enumerable: true, get: function() { + return identity_1.identity; + } }); + var isObservable_1 = require_isObservable(); + Object.defineProperty(exports2, "isObservable", { enumerable: true, get: function() { + return isObservable_1.isObservable; + } }); + var lastValueFrom_1 = require_lastValueFrom(); + Object.defineProperty(exports2, "lastValueFrom", { enumerable: true, get: function() { + return lastValueFrom_1.lastValueFrom; + } }); + var firstValueFrom_1 = require_firstValueFrom(); + Object.defineProperty(exports2, "firstValueFrom", { enumerable: true, get: function() { + return firstValueFrom_1.firstValueFrom; + } }); + var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); + Object.defineProperty(exports2, "ArgumentOutOfRangeError", { enumerable: true, get: function() { + return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError; + } }); + var EmptyError_1 = require_EmptyError(); + Object.defineProperty(exports2, "EmptyError", { enumerable: true, get: function() { + return EmptyError_1.EmptyError; + } }); + var NotFoundError_1 = require_NotFoundError(); + Object.defineProperty(exports2, "NotFoundError", { enumerable: true, get: function() { + return NotFoundError_1.NotFoundError; + } }); + var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); + Object.defineProperty(exports2, "ObjectUnsubscribedError", { enumerable: true, get: function() { + return ObjectUnsubscribedError_1.ObjectUnsubscribedError; + } }); + var SequenceError_1 = require_SequenceError(); + Object.defineProperty(exports2, "SequenceError", { enumerable: true, get: function() { + return SequenceError_1.SequenceError; + } }); + var timeout_1 = require_timeout(); + Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: function() { + return timeout_1.TimeoutError; + } }); + var UnsubscriptionError_1 = require_UnsubscriptionError(); + Object.defineProperty(exports2, "UnsubscriptionError", { enumerable: true, get: function() { + return UnsubscriptionError_1.UnsubscriptionError; + } }); + var bindCallback_1 = require_bindCallback(); + Object.defineProperty(exports2, "bindCallback", { enumerable: true, get: function() { + return bindCallback_1.bindCallback; + } }); + var bindNodeCallback_1 = require_bindNodeCallback(); + Object.defineProperty(exports2, "bindNodeCallback", { enumerable: true, get: function() { + return bindNodeCallback_1.bindNodeCallback; + } }); + var combineLatest_1 = require_combineLatest(); + Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { + return combineLatest_1.combineLatest; + } }); + var concat_1 = require_concat(); + Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { + return concat_1.concat; + } }); + var connectable_1 = require_connectable(); + Object.defineProperty(exports2, "connectable", { enumerable: true, get: function() { + return connectable_1.connectable; + } }); + var defer_1 = require_defer(); + Object.defineProperty(exports2, "defer", { enumerable: true, get: function() { + return defer_1.defer; + } }); + var empty_1 = require_empty(); + Object.defineProperty(exports2, "empty", { enumerable: true, get: function() { + return empty_1.empty; + } }); + var forkJoin_1 = require_forkJoin(); + Object.defineProperty(exports2, "forkJoin", { enumerable: true, get: function() { + return forkJoin_1.forkJoin; + } }); + var from_1 = require_from2(); + Object.defineProperty(exports2, "from", { enumerable: true, get: function() { + return from_1.from; + } }); + var fromEvent_1 = require_fromEvent(); + Object.defineProperty(exports2, "fromEvent", { enumerable: true, get: function() { + return fromEvent_1.fromEvent; + } }); + var fromEventPattern_1 = require_fromEventPattern(); + Object.defineProperty(exports2, "fromEventPattern", { enumerable: true, get: function() { + return fromEventPattern_1.fromEventPattern; + } }); + var generate_1 = require_generate(); + Object.defineProperty(exports2, "generate", { enumerable: true, get: function() { + return generate_1.generate; + } }); + var iif_1 = require_iif(); + Object.defineProperty(exports2, "iif", { enumerable: true, get: function() { + return iif_1.iif; + } }); + var interval_1 = require_interval(); + Object.defineProperty(exports2, "interval", { enumerable: true, get: function() { + return interval_1.interval; + } }); + var merge_1 = require_merge2(); + Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { + return merge_1.merge; + } }); + var never_1 = require_never(); + Object.defineProperty(exports2, "never", { enumerable: true, get: function() { + return never_1.never; + } }); + var of_1 = require_of(); + Object.defineProperty(exports2, "of", { enumerable: true, get: function() { + return of_1.of; + } }); + var onErrorResumeNext_1 = require_onErrorResumeNext(); + Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { + return onErrorResumeNext_1.onErrorResumeNext; + } }); + var pairs_1 = require_pairs2(); + Object.defineProperty(exports2, "pairs", { enumerable: true, get: function() { + return pairs_1.pairs; + } }); + var partition_1 = require_partition(); + Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { + return partition_1.partition; + } }); + var race_1 = require_race(); + Object.defineProperty(exports2, "race", { enumerable: true, get: function() { + return race_1.race; + } }); + var range_1 = require_range(); + Object.defineProperty(exports2, "range", { enumerable: true, get: function() { + return range_1.range; + } }); + var throwError_1 = require_throwError(); + Object.defineProperty(exports2, "throwError", { enumerable: true, get: function() { + return throwError_1.throwError; + } }); + var timer_1 = require_timer2(); + Object.defineProperty(exports2, "timer", { enumerable: true, get: function() { + return timer_1.timer; + } }); + var using_1 = require_using(); + Object.defineProperty(exports2, "using", { enumerable: true, get: function() { + return using_1.using; + } }); + var zip_1 = require_zip(); + Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { + return zip_1.zip; + } }); + var scheduled_1 = require_scheduled(); + Object.defineProperty(exports2, "scheduled", { enumerable: true, get: function() { + return scheduled_1.scheduled; + } }); + var empty_2 = require_empty(); + Object.defineProperty(exports2, "EMPTY", { enumerable: true, get: function() { + return empty_2.EMPTY; + } }); + var never_2 = require_never(); + Object.defineProperty(exports2, "NEVER", { enumerable: true, get: function() { + return never_2.NEVER; + } }); + __exportStar4(require_types3(), exports2); + var config_1 = require_config(); + Object.defineProperty(exports2, "config", { enumerable: true, get: function() { + return config_1.config; + } }); + var audit_1 = require_audit(); + Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { + return audit_1.audit; + } }); + var auditTime_1 = require_auditTime(); + Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { + return auditTime_1.auditTime; + } }); + var buffer_1 = require_buffer(); + Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { + return buffer_1.buffer; + } }); + var bufferCount_1 = require_bufferCount(); + Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { + return bufferCount_1.bufferCount; + } }); + var bufferTime_1 = require_bufferTime(); + Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { + return bufferTime_1.bufferTime; + } }); + var bufferToggle_1 = require_bufferToggle(); + Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { + return bufferToggle_1.bufferToggle; + } }); + var bufferWhen_1 = require_bufferWhen(); + Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { + return bufferWhen_1.bufferWhen; + } }); + var catchError_1 = require_catchError(); + Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { + return catchError_1.catchError; + } }); + var combineAll_1 = require_combineAll(); + Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { + return combineAll_1.combineAll; + } }); + var combineLatestAll_1 = require_combineLatestAll(); + Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { + return combineLatestAll_1.combineLatestAll; + } }); + var combineLatestWith_1 = require_combineLatestWith(); + Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { + return combineLatestWith_1.combineLatestWith; + } }); + var concatAll_1 = require_concatAll(); + Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { + return concatAll_1.concatAll; + } }); + var concatMap_1 = require_concatMap(); + Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { + return concatMap_1.concatMap; + } }); + var concatMapTo_1 = require_concatMapTo(); + Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { + return concatMapTo_1.concatMapTo; + } }); + var concatWith_1 = require_concatWith(); + Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { + return concatWith_1.concatWith; + } }); + var connect_1 = require_connect(); + Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { + return connect_1.connect; + } }); + var count_1 = require_count(); + Object.defineProperty(exports2, "count", { enumerable: true, get: function() { + return count_1.count; + } }); + var debounce_1 = require_debounce(); + Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { + return debounce_1.debounce; + } }); + var debounceTime_1 = require_debounceTime(); + Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { + return debounceTime_1.debounceTime; + } }); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { + return defaultIfEmpty_1.defaultIfEmpty; + } }); + var delay_1 = require_delay(); + Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { + return delay_1.delay; + } }); + var delayWhen_1 = require_delayWhen(); + Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { + return delayWhen_1.delayWhen; + } }); + var dematerialize_1 = require_dematerialize(); + Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { + return dematerialize_1.dematerialize; + } }); + var distinct_1 = require_distinct(); + Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { + return distinct_1.distinct; + } }); + var distinctUntilChanged_1 = require_distinctUntilChanged(); + Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { + return distinctUntilChanged_1.distinctUntilChanged; + } }); + var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); + Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { + return distinctUntilKeyChanged_1.distinctUntilKeyChanged; + } }); + var elementAt_1 = require_elementAt(); + Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { + return elementAt_1.elementAt; + } }); + var endWith_1 = require_endWith(); + Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { + return endWith_1.endWith; + } }); + var every_1 = require_every(); + Object.defineProperty(exports2, "every", { enumerable: true, get: function() { + return every_1.every; + } }); + var exhaust_1 = require_exhaust(); + Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { + return exhaust_1.exhaust; + } }); + var exhaustAll_1 = require_exhaustAll(); + Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { + return exhaustAll_1.exhaustAll; + } }); + var exhaustMap_1 = require_exhaustMap(); + Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { + return exhaustMap_1.exhaustMap; + } }); + var expand_1 = require_expand(); + Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { + return expand_1.expand; + } }); + var filter_1 = require_filter(); + Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { + return filter_1.filter; + } }); + var finalize_1 = require_finalize(); + Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { + return finalize_1.finalize; + } }); + var find_1 = require_find(); + Object.defineProperty(exports2, "find", { enumerable: true, get: function() { + return find_1.find; + } }); + var findIndex_1 = require_findIndex(); + Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { + return findIndex_1.findIndex; + } }); + var first_1 = require_first(); + Object.defineProperty(exports2, "first", { enumerable: true, get: function() { + return first_1.first; + } }); + var groupBy_1 = require_groupBy(); + Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { + return groupBy_1.groupBy; + } }); + var ignoreElements_1 = require_ignoreElements(); + Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { + return ignoreElements_1.ignoreElements; + } }); + var isEmpty_1 = require_isEmpty(); + Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { + return isEmpty_1.isEmpty; + } }); + var last_1 = require_last(); + Object.defineProperty(exports2, "last", { enumerable: true, get: function() { + return last_1.last; + } }); + var map_1 = require_map2(); + Object.defineProperty(exports2, "map", { enumerable: true, get: function() { + return map_1.map; + } }); + var mapTo_1 = require_mapTo(); + Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { + return mapTo_1.mapTo; + } }); + var materialize_1 = require_materialize(); + Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { + return materialize_1.materialize; + } }); + var max_1 = require_max(); + Object.defineProperty(exports2, "max", { enumerable: true, get: function() { + return max_1.max; + } }); + var mergeAll_1 = require_mergeAll(); + Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { + return mergeAll_1.mergeAll; + } }); + var flatMap_1 = require_flatMap(); + Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { + return flatMap_1.flatMap; + } }); + var mergeMap_1 = require_mergeMap(); + Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { + return mergeMap_1.mergeMap; + } }); + var mergeMapTo_1 = require_mergeMapTo(); + Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { + return mergeMapTo_1.mergeMapTo; + } }); + var mergeScan_1 = require_mergeScan(); + Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { + return mergeScan_1.mergeScan; + } }); + var mergeWith_12 = require_mergeWith(); + Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { + return mergeWith_12.mergeWith; + } }); + var min_1 = require_min(); + Object.defineProperty(exports2, "min", { enumerable: true, get: function() { + return min_1.min; + } }); + var multicast_1 = require_multicast(); + Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { + return multicast_1.multicast; + } }); + var observeOn_1 = require_observeOn(); + Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { + return observeOn_1.observeOn; + } }); + var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); + Object.defineProperty(exports2, "onErrorResumeNextWith", { enumerable: true, get: function() { + return onErrorResumeNextWith_1.onErrorResumeNextWith; + } }); + var pairwise_1 = require_pairwise(); + Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { + return pairwise_1.pairwise; + } }); + var pluck_1 = require_pluck(); + Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { + return pluck_1.pluck; + } }); + var publish_1 = require_publish(); + Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { + return publish_1.publish; + } }); + var publishBehavior_1 = require_publishBehavior(); + Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { + return publishBehavior_1.publishBehavior; + } }); + var publishLast_1 = require_publishLast(); + Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { + return publishLast_1.publishLast; + } }); + var publishReplay_1 = require_publishReplay(); + Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { + return publishReplay_1.publishReplay; + } }); + var raceWith_1 = require_raceWith(); + Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { + return raceWith_1.raceWith; + } }); + var reduce_1 = require_reduce(); + Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { + return reduce_1.reduce; + } }); + var repeat_1 = require_repeat(); + Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { + return repeat_1.repeat; + } }); + var repeatWhen_1 = require_repeatWhen(); + Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { + return repeatWhen_1.repeatWhen; + } }); + var retry_1 = require_retry(); + Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { + return retry_1.retry; + } }); + var retryWhen_1 = require_retryWhen(); + Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { + return retryWhen_1.retryWhen; + } }); + var refCount_1 = require_refCount(); + Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { + return refCount_1.refCount; + } }); + var sample_1 = require_sample(); + Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { + return sample_1.sample; + } }); + var sampleTime_1 = require_sampleTime(); + Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { + return sampleTime_1.sampleTime; + } }); + var scan_1 = require_scan(); + Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { + return scan_1.scan; + } }); + var sequenceEqual_1 = require_sequenceEqual(); + Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { + return sequenceEqual_1.sequenceEqual; + } }); + var share_1 = require_share(); + Object.defineProperty(exports2, "share", { enumerable: true, get: function() { + return share_1.share; + } }); + var shareReplay_1 = require_shareReplay(); + Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { + return shareReplay_1.shareReplay; + } }); + var single_1 = require_single(); + Object.defineProperty(exports2, "single", { enumerable: true, get: function() { + return single_1.single; + } }); + var skip_1 = require_skip(); + Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { + return skip_1.skip; + } }); + var skipLast_1 = require_skipLast(); + Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { + return skipLast_1.skipLast; + } }); + var skipUntil_1 = require_skipUntil(); + Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { + return skipUntil_1.skipUntil; + } }); + var skipWhile_1 = require_skipWhile(); + Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { + return skipWhile_1.skipWhile; + } }); + var startWith_1 = require_startWith(); + Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { + return startWith_1.startWith; + } }); + var subscribeOn_1 = require_subscribeOn(); + Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { + return subscribeOn_1.subscribeOn; + } }); + var switchAll_1 = require_switchAll(); + Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { + return switchAll_1.switchAll; + } }); + var switchMap_1 = require_switchMap(); + Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { + return switchMap_1.switchMap; + } }); + var switchMapTo_1 = require_switchMapTo(); + Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { + return switchMapTo_1.switchMapTo; + } }); + var switchScan_1 = require_switchScan(); + Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { + return switchScan_1.switchScan; + } }); + var take_1 = require_take(); + Object.defineProperty(exports2, "take", { enumerable: true, get: function() { + return take_1.take; + } }); + var takeLast_1 = require_takeLast(); + Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { + return takeLast_1.takeLast; + } }); + var takeUntil_1 = require_takeUntil(); + Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { + return takeUntil_1.takeUntil; + } }); + var takeWhile_1 = require_takeWhile(); + Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { + return takeWhile_1.takeWhile; + } }); + var tap_1 = require_tap(); + Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { + return tap_1.tap; + } }); + var throttle_1 = require_throttle(); + Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { + return throttle_1.throttle; + } }); + var throttleTime_1 = require_throttleTime(); + Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { + return throttleTime_1.throttleTime; + } }); + var throwIfEmpty_1 = require_throwIfEmpty(); + Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { + return throwIfEmpty_1.throwIfEmpty; + } }); + var timeInterval_1 = require_timeInterval(); + Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { + return timeInterval_1.timeInterval; + } }); + var timeout_2 = require_timeout(); + Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { + return timeout_2.timeout; + } }); + var timeoutWith_1 = require_timeoutWith(); + Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { + return timeoutWith_1.timeoutWith; + } }); + var timestamp_1 = require_timestamp2(); + Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { + return timestamp_1.timestamp; + } }); + var toArray_1 = require_toArray(); + Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { + return toArray_1.toArray; + } }); + var window_1 = require_window(); + Object.defineProperty(exports2, "window", { enumerable: true, get: function() { + return window_1.window; + } }); + var windowCount_1 = require_windowCount(); + Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { + return windowCount_1.windowCount; + } }); + var windowTime_1 = require_windowTime(); + Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { + return windowTime_1.windowTime; + } }); + var windowToggle_1 = require_windowToggle(); + Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { + return windowToggle_1.windowToggle; + } }); + var windowWhen_1 = require_windowWhen(); + Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { + return windowWhen_1.windowWhen; + } }); + var withLatestFrom_1 = require_withLatestFrom(); + Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { + return withLatestFrom_1.withLatestFrom; + } }); + var zipAll_1 = require_zipAll(); + Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { + return zipAll_1.zipAll; + } }); + var zipWith_1 = require_zipWith(); + Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { + return zipWith_1.zipWith; + } }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/partition.js +var require_partition2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/partition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.partition = void 0; + var not_1 = require_not(); + var filter_1 = require_filter(); + function partition(predicate, thisArg) { + return function(source) { + return [filter_1.filter(predicate, thisArg)(source), filter_1.filter(not_1.not(predicate, thisArg))(source)]; + }; + } + exports2.partition = partition; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/race.js +var require_race2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/race.js"(exports2) { + "use strict"; + var __read4 = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray3 = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.race = void 0; + var argsOrArgArray_1 = require_argsOrArgArray(); + var raceWith_1 = require_raceWith(); + function race() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + return raceWith_1.raceWith.apply(void 0, __spreadArray3([], __read4(argsOrArgArray_1.argsOrArgArray(args2)))); + } + exports2.race = race; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/operators/index.js +var require_operators = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/operators/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeAll = exports2.merge = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.concat = exports2.combineLatestWith = exports2.combineLatest = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = void 0; + exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.race = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.partition = exports2.pairwise = exports2.onErrorResumeNext = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = void 0; + exports2.zipWith = exports2.zipAll = exports2.zip = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = void 0; + var audit_1 = require_audit(); + Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { + return audit_1.audit; + } }); + var auditTime_1 = require_auditTime(); + Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { + return auditTime_1.auditTime; + } }); + var buffer_1 = require_buffer(); + Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { + return buffer_1.buffer; + } }); + var bufferCount_1 = require_bufferCount(); + Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { + return bufferCount_1.bufferCount; + } }); + var bufferTime_1 = require_bufferTime(); + Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { + return bufferTime_1.bufferTime; + } }); + var bufferToggle_1 = require_bufferToggle(); + Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { + return bufferToggle_1.bufferToggle; + } }); + var bufferWhen_1 = require_bufferWhen(); + Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { + return bufferWhen_1.bufferWhen; + } }); + var catchError_1 = require_catchError(); + Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { + return catchError_1.catchError; + } }); + var combineAll_1 = require_combineAll(); + Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { + return combineAll_1.combineAll; + } }); + var combineLatestAll_1 = require_combineLatestAll(); + Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { + return combineLatestAll_1.combineLatestAll; + } }); + var combineLatest_1 = require_combineLatest2(); + Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { + return combineLatest_1.combineLatest; + } }); + var combineLatestWith_1 = require_combineLatestWith(); + Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { + return combineLatestWith_1.combineLatestWith; + } }); + var concat_1 = require_concat2(); + Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { + return concat_1.concat; + } }); + var concatAll_1 = require_concatAll(); + Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { + return concatAll_1.concatAll; + } }); + var concatMap_1 = require_concatMap(); + Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { + return concatMap_1.concatMap; + } }); + var concatMapTo_1 = require_concatMapTo(); + Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { + return concatMapTo_1.concatMapTo; + } }); + var concatWith_1 = require_concatWith(); + Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { + return concatWith_1.concatWith; + } }); + var connect_1 = require_connect(); + Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { + return connect_1.connect; + } }); + var count_1 = require_count(); + Object.defineProperty(exports2, "count", { enumerable: true, get: function() { + return count_1.count; + } }); + var debounce_1 = require_debounce(); + Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { + return debounce_1.debounce; + } }); + var debounceTime_1 = require_debounceTime(); + Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { + return debounceTime_1.debounceTime; + } }); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { + return defaultIfEmpty_1.defaultIfEmpty; + } }); + var delay_1 = require_delay(); + Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { + return delay_1.delay; + } }); + var delayWhen_1 = require_delayWhen(); + Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { + return delayWhen_1.delayWhen; + } }); + var dematerialize_1 = require_dematerialize(); + Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { + return dematerialize_1.dematerialize; + } }); + var distinct_1 = require_distinct(); + Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { + return distinct_1.distinct; + } }); + var distinctUntilChanged_1 = require_distinctUntilChanged(); + Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { + return distinctUntilChanged_1.distinctUntilChanged; + } }); + var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); + Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { + return distinctUntilKeyChanged_1.distinctUntilKeyChanged; + } }); + var elementAt_1 = require_elementAt(); + Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { + return elementAt_1.elementAt; + } }); + var endWith_1 = require_endWith(); + Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { + return endWith_1.endWith; + } }); + var every_1 = require_every(); + Object.defineProperty(exports2, "every", { enumerable: true, get: function() { + return every_1.every; + } }); + var exhaust_1 = require_exhaust(); + Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { + return exhaust_1.exhaust; + } }); + var exhaustAll_1 = require_exhaustAll(); + Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { + return exhaustAll_1.exhaustAll; + } }); + var exhaustMap_1 = require_exhaustMap(); + Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { + return exhaustMap_1.exhaustMap; + } }); + var expand_1 = require_expand(); + Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { + return expand_1.expand; + } }); + var filter_1 = require_filter(); + Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { + return filter_1.filter; + } }); + var finalize_1 = require_finalize(); + Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { + return finalize_1.finalize; + } }); + var find_1 = require_find(); + Object.defineProperty(exports2, "find", { enumerable: true, get: function() { + return find_1.find; + } }); + var findIndex_1 = require_findIndex(); + Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { + return findIndex_1.findIndex; + } }); + var first_1 = require_first(); + Object.defineProperty(exports2, "first", { enumerable: true, get: function() { + return first_1.first; + } }); + var groupBy_1 = require_groupBy(); + Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { + return groupBy_1.groupBy; + } }); + var ignoreElements_1 = require_ignoreElements(); + Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { + return ignoreElements_1.ignoreElements; + } }); + var isEmpty_1 = require_isEmpty(); + Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { + return isEmpty_1.isEmpty; + } }); + var last_1 = require_last(); + Object.defineProperty(exports2, "last", { enumerable: true, get: function() { + return last_1.last; + } }); + var map_1 = require_map2(); + Object.defineProperty(exports2, "map", { enumerable: true, get: function() { + return map_1.map; + } }); + var mapTo_1 = require_mapTo(); + Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { + return mapTo_1.mapTo; + } }); + var materialize_1 = require_materialize(); + Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { + return materialize_1.materialize; + } }); + var max_1 = require_max(); + Object.defineProperty(exports2, "max", { enumerable: true, get: function() { + return max_1.max; + } }); + var merge_1 = require_merge3(); + Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { + return merge_1.merge; + } }); + var mergeAll_1 = require_mergeAll(); + Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { + return mergeAll_1.mergeAll; + } }); + var flatMap_1 = require_flatMap(); + Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { + return flatMap_1.flatMap; + } }); + var mergeMap_1 = require_mergeMap(); + Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { + return mergeMap_1.mergeMap; + } }); + var mergeMapTo_1 = require_mergeMapTo(); + Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { + return mergeMapTo_1.mergeMapTo; + } }); + var mergeScan_1 = require_mergeScan(); + Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { + return mergeScan_1.mergeScan; + } }); + var mergeWith_12 = require_mergeWith(); + Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { + return mergeWith_12.mergeWith; + } }); + var min_1 = require_min(); + Object.defineProperty(exports2, "min", { enumerable: true, get: function() { + return min_1.min; + } }); + var multicast_1 = require_multicast(); + Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { + return multicast_1.multicast; + } }); + var observeOn_1 = require_observeOn(); + Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { + return observeOn_1.observeOn; + } }); + var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); + Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { + return onErrorResumeNextWith_1.onErrorResumeNext; + } }); + var pairwise_1 = require_pairwise(); + Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { + return pairwise_1.pairwise; + } }); + var partition_1 = require_partition2(); + Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { + return partition_1.partition; + } }); + var pluck_1 = require_pluck(); + Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { + return pluck_1.pluck; + } }); + var publish_1 = require_publish(); + Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { + return publish_1.publish; + } }); + var publishBehavior_1 = require_publishBehavior(); + Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { + return publishBehavior_1.publishBehavior; + } }); + var publishLast_1 = require_publishLast(); + Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { + return publishLast_1.publishLast; + } }); + var publishReplay_1 = require_publishReplay(); + Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { + return publishReplay_1.publishReplay; + } }); + var race_1 = require_race2(); + Object.defineProperty(exports2, "race", { enumerable: true, get: function() { + return race_1.race; + } }); + var raceWith_1 = require_raceWith(); + Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { + return raceWith_1.raceWith; + } }); + var reduce_1 = require_reduce(); + Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { + return reduce_1.reduce; + } }); + var repeat_1 = require_repeat(); + Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { + return repeat_1.repeat; + } }); + var repeatWhen_1 = require_repeatWhen(); + Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { + return repeatWhen_1.repeatWhen; + } }); + var retry_1 = require_retry(); + Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { + return retry_1.retry; + } }); + var retryWhen_1 = require_retryWhen(); + Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { + return retryWhen_1.retryWhen; + } }); + var refCount_1 = require_refCount(); + Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { + return refCount_1.refCount; + } }); + var sample_1 = require_sample(); + Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { + return sample_1.sample; + } }); + var sampleTime_1 = require_sampleTime(); + Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { + return sampleTime_1.sampleTime; + } }); + var scan_1 = require_scan(); + Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { + return scan_1.scan; + } }); + var sequenceEqual_1 = require_sequenceEqual(); + Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { + return sequenceEqual_1.sequenceEqual; + } }); + var share_1 = require_share(); + Object.defineProperty(exports2, "share", { enumerable: true, get: function() { + return share_1.share; + } }); + var shareReplay_1 = require_shareReplay(); + Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { + return shareReplay_1.shareReplay; + } }); + var single_1 = require_single(); + Object.defineProperty(exports2, "single", { enumerable: true, get: function() { + return single_1.single; + } }); + var skip_1 = require_skip(); + Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { + return skip_1.skip; + } }); + var skipLast_1 = require_skipLast(); + Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { + return skipLast_1.skipLast; + } }); + var skipUntil_1 = require_skipUntil(); + Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { + return skipUntil_1.skipUntil; + } }); + var skipWhile_1 = require_skipWhile(); + Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { + return skipWhile_1.skipWhile; + } }); + var startWith_1 = require_startWith(); + Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { + return startWith_1.startWith; + } }); + var subscribeOn_1 = require_subscribeOn(); + Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { + return subscribeOn_1.subscribeOn; + } }); + var switchAll_1 = require_switchAll(); + Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { + return switchAll_1.switchAll; + } }); + var switchMap_1 = require_switchMap(); + Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { + return switchMap_1.switchMap; + } }); + var switchMapTo_1 = require_switchMapTo(); + Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { + return switchMapTo_1.switchMapTo; + } }); + var switchScan_1 = require_switchScan(); + Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { + return switchScan_1.switchScan; + } }); + var take_1 = require_take(); + Object.defineProperty(exports2, "take", { enumerable: true, get: function() { + return take_1.take; + } }); + var takeLast_1 = require_takeLast(); + Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { + return takeLast_1.takeLast; + } }); + var takeUntil_1 = require_takeUntil(); + Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { + return takeUntil_1.takeUntil; + } }); + var takeWhile_1 = require_takeWhile(); + Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { + return takeWhile_1.takeWhile; + } }); + var tap_1 = require_tap(); + Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { + return tap_1.tap; + } }); + var throttle_1 = require_throttle(); + Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { + return throttle_1.throttle; + } }); + var throttleTime_1 = require_throttleTime(); + Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { + return throttleTime_1.throttleTime; + } }); + var throwIfEmpty_1 = require_throwIfEmpty(); + Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { + return throwIfEmpty_1.throwIfEmpty; + } }); + var timeInterval_1 = require_timeInterval(); + Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { + return timeInterval_1.timeInterval; + } }); + var timeout_1 = require_timeout(); + Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { + return timeout_1.timeout; + } }); + var timeoutWith_1 = require_timeoutWith(); + Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { + return timeoutWith_1.timeoutWith; + } }); + var timestamp_1 = require_timestamp2(); + Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { + return timestamp_1.timestamp; + } }); + var toArray_1 = require_toArray(); + Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { + return toArray_1.toArray; + } }); + var window_1 = require_window(); + Object.defineProperty(exports2, "window", { enumerable: true, get: function() { + return window_1.window; + } }); + var windowCount_1 = require_windowCount(); + Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { + return windowCount_1.windowCount; + } }); + var windowTime_1 = require_windowTime(); + Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { + return windowTime_1.windowTime; + } }); + var windowToggle_1 = require_windowToggle(); + Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { + return windowToggle_1.windowToggle; + } }); + var windowWhen_1 = require_windowWhen(); + Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { + return windowWhen_1.windowWhen; + } }); + var withLatestFrom_1 = require_withLatestFrom(); + Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { + return withLatestFrom_1.withLatestFrom; + } }); + var zip_1 = require_zip2(); + Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { + return zip_1.zip; + } }); + var zipAll_1 = require_zipAll(); + Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { + return zipAll_1.zipAll; + } }); + var zipWith_1 = require_zipWith(); + Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { + return zipWith_1.zipWith; + } }); + } +}); + +// ../node_modules/.pnpm/ansi-regex@3.0.1/node_modules/ansi-regex/index.js +var require_ansi_regex = __commonJS({ + "../node_modules/.pnpm/ansi-regex@3.0.1/node_modules/ansi-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = () => { + const pattern = [ + "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[a-zA-Z\\d]*)*)?\\u0007)", + "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))" + ].join("|"); + return new RegExp(pattern, "g"); + }; + } +}); + +// ../node_modules/.pnpm/ansi-split@1.0.1/node_modules/ansi-split/index.js +var require_ansi_split = __commonJS({ + "../node_modules/.pnpm/ansi-split@1.0.1/node_modules/ansi-split/index.js"(exports2, module2) { + var isAnsi = require_ansi_regex()(); + module2.exports = splitAnsi; + function splitAnsi(str) { + var parts = str.match(isAnsi); + if (!parts) + return [str]; + var result2 = []; + var offset = 0; + var ptr = 0; + for (var i = 0; i < parts.length; i++) { + offset = str.indexOf(parts[i], offset); + if (offset === -1) + throw new Error("Could not split string"); + if (ptr !== offset) + result2.push(str.slice(ptr, offset)); + if (ptr === offset && result2.length) { + result2[result2.length - 1] += parts[i]; + } else { + if (offset === 0) + result2.push(""); + result2.push(parts[i]); + } + ptr = offset + parts[i].length; + } + result2.push(str.slice(ptr)); + return result2; + } + } +}); + +// ../node_modules/.pnpm/ansi-diff@1.1.1/node_modules/ansi-diff/index.js +var require_ansi_diff = __commonJS({ + "../node_modules/.pnpm/ansi-diff@1.1.1/node_modules/ansi-diff/index.js"(exports2, module2) { + var ansi = require_ansi_split(); + var CLEAR_LINE = Buffer.from([27, 91, 48, 75]); + var NEWLINE = Buffer.from("\n"); + module2.exports = Diff; + function Diff(opts) { + if (!(this instanceof Diff)) + return new Diff(opts); + if (!opts) + opts = {}; + this.x = 0; + this.y = 0; + this.width = opts.width || Infinity; + this.height = opts.height || Infinity; + this._buffer = null; + this._out = []; + this._lines = []; + } + Diff.prototype.resize = function(opts) { + if (!opts) + opts = {}; + if (opts.width) + this.width = opts.width; + if (opts.height) + this.height = opts.height; + if (this._buffer) + this.update(this._buffer); + var last = top(this._lines); + if (!last) { + this.x = 0; + this.y = 0; + } else { + this.x = last.remainder; + this.y = last.y + last.height; + } + }; + Diff.prototype.toString = function() { + return this._buffer; + }; + Diff.prototype.update = function(buffer, opts) { + this._buffer = Buffer.isBuffer(buffer) ? buffer.toString() : buffer; + var other = this._buffer; + var oldLines = this._lines; + var lines = split(other, this); + this._lines = lines; + this._out = []; + var min = Math.min(lines.length, oldLines.length); + var i = 0; + var a; + var b; + var scrub = false; + for (; i < min; i++) { + a = lines[i]; + b = oldLines[i]; + if (same(a, b)) + continue; + if (!scrub && this.x !== this.width && inlineDiff(a, b)) { + var left = a.diffLeft(b); + var right = a.diffRight(b); + var slice = a.raw.slice(left, right ? -right : a.length); + if (left + right > 4 && left + slice.length < this.width - 1) { + this._moveTo(left, a.y); + this._push(Buffer.from(slice)); + this.x += slice.length; + continue; + } + } + this._moveTo(0, a.y); + this._write(a); + if (a.y !== b.y || a.height !== b.height) + scrub = true; + if (b.length > a.length || scrub) + this._push(CLEAR_LINE); + if (a.newline) + this._newline(); + } + for (; i < lines.length; i++) { + a = lines[i]; + this._moveTo(0, a.y); + this._write(a); + if (scrub) + this._push(CLEAR_LINE); + if (a.newline) + this._newline(); + } + var oldLast = top(oldLines); + var last = top(lines); + if (oldLast && (!last || last.y + last.height < oldLast.y + oldLast.height)) { + this._clearDown(oldLast.y + oldLast.height); + } + if (opts && opts.moveTo) { + this._moveTo(opts.moveTo[0], opts.moveTo[1]); + } else if (last) { + this._moveTo(last.remainder, last.y + last.height); + } + return Buffer.concat(this._out); + }; + Diff.prototype._clearDown = function(y) { + var x = this.x; + for (var i = this.y; i <= y; i++) { + this._moveTo(x, i); + this._push(CLEAR_LINE); + x = 0; + } + }; + Diff.prototype._newline = function() { + this._push(NEWLINE); + this.x = 0; + this.y++; + }; + Diff.prototype._write = function(line) { + this._out.push(line.toBuffer()); + this.x = line.remainder; + this.y += line.height; + }; + Diff.prototype._moveTo = function(x, y) { + var dx = x - this.x; + var dy = y - this.y; + if (dx > 0) + this._push(moveRight(dx)); + else if (dx < 0) + this._push(moveLeft(-dx)); + if (dy > 0) + this._push(moveDown(dy)); + else if (dy < 0) + this._push(moveUp(-dy)); + this.x = x; + this.y = y; + }; + Diff.prototype._push = function(buf) { + this._out.push(buf); + }; + function same(a, b) { + return a.y === b.y && a.width === b.width && a.raw === b.raw && a.newline === b.newline; + } + function top(list) { + return list.length ? list[list.length - 1] : null; + } + function Line(str, y, nl, term) { + this.y = y; + this.width = term.width; + this.parts = ansi(str); + this.length = length(this.parts); + this.raw = str; + this.newline = nl; + this.height = Math.floor(this.length / term.width); + this.remainder = this.length - (this.height && this.height * term.width); + if (this.height && !this.remainder) { + this.height--; + this.remainder = this.width; + } + } + Line.prototype.diffLeft = function(other) { + var left = 0; + for (; left < this.length; left++) { + if (this.raw[left] !== other.raw[left]) + return left; + } + return left; + }; + Line.prototype.diffRight = function(other) { + var right = 0; + for (; right < this.length; right++) { + var r = this.length - right - 1; + if (this.raw[r] !== other.raw[r]) + return right; + } + return right; + }; + Line.prototype.toBuffer = function() { + return Buffer.from(this.raw); + }; + function inlineDiff(a, b) { + return a.length === b.length && a.parts.length === 1 && b.parts.length === 1 && a.y === b.y && a.newline && b.newline && a.width === b.width; + } + function split(str, term) { + var y = 0; + var lines = str.split("\n"); + var wrapped = []; + var line; + for (var i = 0; i < lines.length; i++) { + line = new Line(lines[i], y, i < lines.length - 1, term); + y += line.height + (line.newline ? 1 : 0); + wrapped.push(line); + } + return wrapped; + } + function moveUp(n) { + return Buffer.from("1b5b" + toHex(n) + "41", "hex"); + } + function moveDown(n) { + return Buffer.from("1b5b" + toHex(n) + "42", "hex"); + } + function moveRight(n) { + return Buffer.from("1b5b" + toHex(n) + "43", "hex"); + } + function moveLeft(n) { + return Buffer.from("1b5b" + toHex(n) + "44", "hex"); + } + function length(parts) { + var len = 0; + for (var i = 0; i < parts.length; i += 2) { + len += parts[i].length; + } + return len; + } + function toHex(n) { + return Buffer.from("" + n).toString("hex"); + } + } +}); + +// ../cli/default-reporter/lib/constants.js +var require_constants2 = __commonJS({ + "../cli/default-reporter/lib/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EOL = void 0; + exports2.EOL = "\n"; + } +}); + +// ../cli/default-reporter/lib/mergeOutputs.js +var require_mergeOutputs = __commonJS({ + "../cli/default-reporter/lib/mergeOutputs.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeOutputs = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var constants_1 = require_constants2(); + function mergeOutputs(outputs) { + let blockNo = 0; + let fixedBlockNo = 0; + let started = false; + let previousOutput = null; + return Rx.merge(...outputs).pipe((0, operators_1.map)((log2) => { + let currentBlockNo = -1; + let currentFixedBlockNo = -1; + return log2.pipe((0, operators_1.map)((msg) => { + if (msg["fixed"]) { + if (currentFixedBlockNo === -1) { + currentFixedBlockNo = fixedBlockNo++; + } + return { + blockNo: currentFixedBlockNo, + fixed: true, + msg: msg.msg + }; + } + if (currentBlockNo === -1) { + currentBlockNo = blockNo++; + } + return { + blockNo: currentBlockNo, + fixed: false, + msg: typeof msg === "string" ? msg : msg.msg, + prevFixedBlockNo: currentFixedBlockNo + }; + })); + }), (0, operators_1.mergeAll)(), (0, operators_1.scan)((acc, log2) => { + if (log2.fixed) { + acc.fixedBlocks[log2.blockNo] = log2.msg; + } else { + delete acc.fixedBlocks[log2["prevFixedBlockNo"]]; + acc.blocks[log2.blockNo] = log2.msg; + } + return acc; + }, { fixedBlocks: [], blocks: [] }), (0, operators_1.map)((sections) => { + const fixedBlocks = sections.fixedBlocks.filter(Boolean); + const nonFixedPart = sections.blocks.filter(Boolean).join(constants_1.EOL); + if (fixedBlocks.length === 0) { + return nonFixedPart; + } + const fixedPart = fixedBlocks.join(constants_1.EOL); + if (!nonFixedPart) { + return fixedPart; + } + return `${nonFixedPart}${constants_1.EOL}${fixedPart}`; + }), (0, operators_1.filter)((msg) => { + if (started) { + return true; + } + if (msg === "") + return false; + started = true; + return true; + }), (0, operators_1.filter)((msg) => { + if (msg !== previousOutput) { + previousOutput = msg; + return true; + } + return false; + })); + } + exports2.mergeOutputs = mergeOutputs; + } +}); + +// ../node_modules/.pnpm/pretty-bytes@5.6.0/node_modules/pretty-bytes/index.js +var require_pretty_bytes = __commonJS({ + "../node_modules/.pnpm/pretty-bytes@5.6.0/node_modules/pretty-bytes/index.js"(exports2, module2) { + "use strict"; + var BYTE_UNITS = [ + "B", + "kB", + "MB", + "GB", + "TB", + "PB", + "EB", + "ZB", + "YB" + ]; + var BIBYTE_UNITS = [ + "B", + "kiB", + "MiB", + "GiB", + "TiB", + "PiB", + "EiB", + "ZiB", + "YiB" + ]; + var BIT_UNITS = [ + "b", + "kbit", + "Mbit", + "Gbit", + "Tbit", + "Pbit", + "Ebit", + "Zbit", + "Ybit" + ]; + var BIBIT_UNITS = [ + "b", + "kibit", + "Mibit", + "Gibit", + "Tibit", + "Pibit", + "Eibit", + "Zibit", + "Yibit" + ]; + var toLocaleString = (number, locale, options) => { + let result2 = number; + if (typeof locale === "string" || Array.isArray(locale)) { + result2 = number.toLocaleString(locale, options); + } else if (locale === true || options !== void 0) { + result2 = number.toLocaleString(void 0, options); + } + return result2; + }; + module2.exports = (number, options) => { + if (!Number.isFinite(number)) { + throw new TypeError(`Expected a finite number, got ${typeof number}: ${number}`); + } + options = Object.assign({ bits: false, binary: false }, options); + const UNITS = options.bits ? options.binary ? BIBIT_UNITS : BIT_UNITS : options.binary ? BIBYTE_UNITS : BYTE_UNITS; + if (options.signed && number === 0) { + return ` 0 ${UNITS[0]}`; + } + const isNegative = number < 0; + const prefix = isNegative ? "-" : options.signed ? "+" : ""; + if (isNegative) { + number = -number; + } + let localeOptions; + if (options.minimumFractionDigits !== void 0) { + localeOptions = { minimumFractionDigits: options.minimumFractionDigits }; + } + if (options.maximumFractionDigits !== void 0) { + localeOptions = Object.assign({ maximumFractionDigits: options.maximumFractionDigits }, localeOptions); + } + if (number < 1) { + const numberString2 = toLocaleString(number, options.locale, localeOptions); + return prefix + numberString2 + " " + UNITS[0]; + } + const exponent = Math.min(Math.floor(options.binary ? Math.log(number) / Math.log(1024) : Math.log10(number) / 3), UNITS.length - 1); + number /= Math.pow(options.binary ? 1024 : 1e3, exponent); + if (!localeOptions) { + number = number.toPrecision(3); + } + const numberString = toLocaleString(Number(number), options.locale, localeOptions); + const unit = UNITS[exponent]; + return prefix + numberString + " " + unit; + }; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/outputConstants.js +var require_outputConstants = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/outputConstants.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.REMOVED_CHAR = exports2.ADDED_CHAR = exports2.hlPkgId = exports2.hlValue = exports2.PREFIX_MAX_LENGTH = void 0; + var chalk_1 = __importDefault4(require_source()); + exports2.PREFIX_MAX_LENGTH = 40; + exports2.hlValue = chalk_1.default.cyanBright; + exports2.hlPkgId = chalk_1.default["whiteBright"]; + exports2.ADDED_CHAR = chalk_1.default.green("+"); + exports2.REMOVED_CHAR = chalk_1.default.red("-"); + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportBigTarballsProgress.js +var require_reportBigTarballsProgress = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportBigTarballsProgress.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportBigTarballProgress = void 0; + var operators_1 = require_operators(); + var pretty_bytes_1 = __importDefault4(require_pretty_bytes()); + var outputConstants_1 = require_outputConstants(); + var BIG_TARBALL_SIZE = 1024 * 1024 * 5; + function reportBigTarballProgress(log$) { + return log$.fetchingProgress.pipe((0, operators_1.filter)((log2) => log2.status === "started" && typeof log2.size === "number" && log2.size >= BIG_TARBALL_SIZE && // When retrying the download, keep the existing progress line. + // Fixing issue: https://github.com/pnpm/pnpm/issues/1013 + log2.attempt === 1), (0, operators_1.map)((startedLog) => { + const size = (0, pretty_bytes_1.default)(startedLog["size"]); + return log$.fetchingProgress.pipe((0, operators_1.filter)((log2) => log2.status === "in_progress" && log2.packageId === startedLog["packageId"]), (0, operators_1.map)((log2) => log2["downloaded"]), (0, operators_1.startWith)(0), (0, operators_1.map)((downloadedRaw) => { + const done = startedLog["size"] === downloadedRaw; + const downloaded = (0, pretty_bytes_1.default)(downloadedRaw); + return { + fixed: !done, + msg: `Downloading ${(0, outputConstants_1.hlPkgId)(startedLog["packageId"])}: ${(0, outputConstants_1.hlValue)(downloaded)}/${(0, outputConstants_1.hlValue)(size)}${done ? ", done" : ""}` + }; + })); + })); + } + exports2.reportBigTarballProgress = reportBigTarballProgress; + } +}); + +// ../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js +var require_normalize_path = __commonJS({ + "../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js"(exports2, module2) { + module2.exports = function(path2, stripTrailing) { + if (typeof path2 !== "string") { + throw new TypeError("expected path to be a string"); + } + if (path2 === "\\" || path2 === "/") + return "/"; + var len = path2.length; + if (len <= 1) + return path2; + var prefix = ""; + if (len > 4 && path2[3] === "\\") { + var ch = path2[2]; + if ((ch === "?" || ch === ".") && path2.slice(0, 2) === "\\\\") { + path2 = path2.slice(2); + prefix = "//"; + } + } + var segs = path2.split(/[/\\]+/); + if (stripTrailing !== false && segs[segs.length - 1] === "") { + segs.pop(); + } + return prefix + segs.join("/"); + }; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportContext.js +var require_reportContext = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportContext.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportContext = void 0; + var path_1 = __importDefault4(require("path")); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + function reportContext(log$, opts) { + return Rx.combineLatest(log$.context.pipe((0, operators_1.take)(1)), log$.packageImportMethod.pipe((0, operators_1.take)(1))).pipe((0, operators_1.map)(([context, packageImportMethod]) => { + if (context.currentLockfileExists) { + return Rx.NEVER; + } + let method; + switch (packageImportMethod.method) { + case "copy": + method = "copied"; + break; + case "clone": + method = "cloned"; + break; + case "hardlink": + method = "hard linked"; + break; + default: + method = packageImportMethod.method; + break; + } + return Rx.of({ + msg: `Packages are ${method} from the content-addressable store to the virtual store. + Content-addressable store is at: ${context.storeDir} + Virtual store is at: ${(0, normalize_path_1.default)(path_1.default.relative(opts.cwd, context.virtualStoreDir))}` + }); + })); + } + exports2.reportContext = reportContext; + } +}); + +// ../node_modules/.pnpm/parse-ms@2.1.0/node_modules/parse-ms/index.js +var require_parse_ms = __commonJS({ + "../node_modules/.pnpm/parse-ms@2.1.0/node_modules/parse-ms/index.js"(exports2, module2) { + "use strict"; + module2.exports = (milliseconds) => { + if (typeof milliseconds !== "number") { + throw new TypeError("Expected a number"); + } + const roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil; + return { + days: roundTowardsZero(milliseconds / 864e5), + hours: roundTowardsZero(milliseconds / 36e5) % 24, + minutes: roundTowardsZero(milliseconds / 6e4) % 60, + seconds: roundTowardsZero(milliseconds / 1e3) % 60, + milliseconds: roundTowardsZero(milliseconds) % 1e3, + microseconds: roundTowardsZero(milliseconds * 1e3) % 1e3, + nanoseconds: roundTowardsZero(milliseconds * 1e6) % 1e3 + }; + }; + } +}); + +// ../node_modules/.pnpm/pretty-ms@7.0.1/node_modules/pretty-ms/index.js +var require_pretty_ms = __commonJS({ + "../node_modules/.pnpm/pretty-ms@7.0.1/node_modules/pretty-ms/index.js"(exports2, module2) { + "use strict"; + var parseMilliseconds = require_parse_ms(); + var pluralize = (word, count) => count === 1 ? word : `${word}s`; + var SECOND_ROUNDING_EPSILON = 1e-7; + module2.exports = (milliseconds, options = {}) => { + if (!Number.isFinite(milliseconds)) { + throw new TypeError("Expected a finite number"); + } + if (options.colonNotation) { + options.compact = false; + options.formatSubMilliseconds = false; + options.separateMilliseconds = false; + options.verbose = false; + } + if (options.compact) { + options.secondsDecimalDigits = 0; + options.millisecondsDecimalDigits = 0; + } + const result2 = []; + const floorDecimals = (value, decimalDigits) => { + const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON); + const flooredValue = Math.round(flooredInterimValue) / 10 ** decimalDigits; + return flooredValue.toFixed(decimalDigits); + }; + const add = (value, long, short, valueString) => { + if ((result2.length === 0 || !options.colonNotation) && value === 0 && !(options.colonNotation && short === "m")) { + return; + } + valueString = (valueString || value || "0").toString(); + let prefix; + let suffix; + if (options.colonNotation) { + prefix = result2.length > 0 ? ":" : ""; + suffix = ""; + const wholeDigits = valueString.includes(".") ? valueString.split(".")[0].length : valueString.length; + const minLength = result2.length > 0 ? 2 : 1; + valueString = "0".repeat(Math.max(0, minLength - wholeDigits)) + valueString; + } else { + prefix = ""; + suffix = options.verbose ? " " + pluralize(long, value) : short; + } + result2.push(prefix + valueString + suffix); + }; + const parsed = parseMilliseconds(milliseconds); + add(Math.trunc(parsed.days / 365), "year", "y"); + add(parsed.days % 365, "day", "d"); + add(parsed.hours, "hour", "h"); + add(parsed.minutes, "minute", "m"); + if (options.separateMilliseconds || options.formatSubMilliseconds || !options.colonNotation && milliseconds < 1e3) { + add(parsed.seconds, "second", "s"); + if (options.formatSubMilliseconds) { + add(parsed.milliseconds, "millisecond", "ms"); + add(parsed.microseconds, "microsecond", "\xB5s"); + add(parsed.nanoseconds, "nanosecond", "ns"); + } else { + const millisecondsAndBelow = parsed.milliseconds + parsed.microseconds / 1e3 + parsed.nanoseconds / 1e6; + const millisecondsDecimalDigits = typeof options.millisecondsDecimalDigits === "number" ? options.millisecondsDecimalDigits : 0; + const roundedMiliseconds = millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow); + const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : roundedMiliseconds; + add( + Number.parseFloat(millisecondsString, 10), + "millisecond", + "ms", + millisecondsString + ); + } + } else { + const seconds = milliseconds / 1e3 % 60; + const secondsDecimalDigits = typeof options.secondsDecimalDigits === "number" ? options.secondsDecimalDigits : 1; + const secondsFixed = floorDecimals(seconds, secondsDecimalDigits); + const secondsString = options.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, ""); + add(Number.parseFloat(secondsString, 10), "second", "s", secondsString); + } + if (result2.length === 0) { + return "0" + (options.verbose ? " milliseconds" : "ms"); + } + if (options.compact) { + return result2[0]; + } + if (typeof options.unitCount === "number") { + const separator = options.colonNotation ? "" : " "; + return result2.slice(0, Math.max(options.unitCount, 1)).join(separator); + } + return options.colonNotation ? result2.join("") : result2.join(" "); + }; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportExecutionTime.js +var require_reportExecutionTime = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportExecutionTime.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportExecutionTime = void 0; + var pretty_ms_1 = __importDefault4(require_pretty_ms()); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + function reportExecutionTime(executionTime$) { + return executionTime$.pipe((0, operators_1.take)(1), (0, operators_1.map)((log2) => { + return Rx.of({ + fixed: true, + msg: `Done in ${(0, pretty_ms_1.default)(log2.endedAt - log2.startedAt)}` + }); + })); + } + exports2.reportExecutionTime = reportExecutionTime; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/utils/formatWarn.js +var require_formatWarn = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/utils/formatWarn.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.formatWarn = void 0; + var chalk_1 = __importDefault4(require_source()); + function formatWarn(message2) { + return `${chalk_1.default.bgYellow.black("\u2009WARN\u2009")} ${message2}`; + } + exports2.formatWarn = formatWarn; + } +}); + +// ../node_modules/.pnpm/right-pad@1.0.1/node_modules/right-pad/rightpad.js +var require_rightpad = __commonJS({ + "../node_modules/.pnpm/right-pad@1.0.1/node_modules/right-pad/rightpad.js"(exports2, module2) { + "use strict"; + exports2 = module2.exports = function rightPad(_string, _length, _char) { + if (typeof _string !== "string") { + throw new Error("The string parameter must be a string."); + } + if (_string.length < 1) { + throw new Error("The string parameter must be 1 character or longer."); + } + if (typeof _length !== "number") { + throw new Error("The length parameter must be a number."); + } + if (typeof _char !== "string" && _char) { + throw new Error("The character parameter must be a string."); + } + var i = -1; + _length = _length - _string.length; + if (!_char && _char !== 0) { + _char = " "; + } + while (++i < _length) { + _string += _char; + } + return _string; + }; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js +var require_formatPrefix = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.formatPrefixNoTrim = exports2.formatPrefix = void 0; + var path_1 = __importDefault4(require("path")); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var outputConstants_1 = require_outputConstants(); + function formatPrefix(cwd, prefix) { + prefix = formatPrefixNoTrim(cwd, prefix); + if (prefix.length <= outputConstants_1.PREFIX_MAX_LENGTH) { + return prefix; + } + const shortPrefix = prefix.slice(-outputConstants_1.PREFIX_MAX_LENGTH + 3); + const separatorLocation = shortPrefix.indexOf("/"); + if (separatorLocation <= 0) { + return `...${shortPrefix}`; + } + return `...${shortPrefix.slice(separatorLocation)}`; + } + exports2.formatPrefix = formatPrefix; + function formatPrefixNoTrim(cwd, prefix) { + return (0, normalize_path_1.default)(path_1.default.relative(cwd, prefix) || "."); + } + exports2.formatPrefixNoTrim = formatPrefixNoTrim; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/utils/zooming.js +var require_zooming = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/utils/zooming.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zoomOut = exports2.autozoom = void 0; + var right_pad_1 = __importDefault4(require_rightpad()); + var outputConstants_1 = require_outputConstants(); + var formatPrefix_1 = require_formatPrefix(); + function autozoom(currentPrefix, logPrefix, line, opts) { + if (!logPrefix || !opts.zoomOutCurrent && currentPrefix === logPrefix) { + return line; + } + return zoomOut(currentPrefix, logPrefix, line); + } + exports2.autozoom = autozoom; + function zoomOut(currentPrefix, logPrefix, line) { + return `${(0, right_pad_1.default)((0, formatPrefix_1.formatPrefix)(currentPrefix, logPrefix), outputConstants_1.PREFIX_MAX_LENGTH)} | ${line}`; + } + exports2.zoomOut = zoomOut; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportDeprecations.js +var require_reportDeprecations = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportDeprecations.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportDeprecations = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var chalk_1 = __importDefault4(require_source()); + var formatWarn_1 = require_formatWarn(); + var zooming_1 = require_zooming(); + function reportDeprecations(deprecation$, opts) { + return deprecation$.pipe((0, operators_1.map)((log2) => { + if (!opts.isRecursive && log2.prefix === opts.cwd) { + return Rx.of({ + msg: (0, formatWarn_1.formatWarn)(`${chalk_1.default.red("deprecated")} ${log2.pkgName}@${log2.pkgVersion}: ${log2.deprecated}`) + }); + } + return Rx.of({ + msg: (0, zooming_1.zoomOut)(opts.cwd, log2.prefix, (0, formatWarn_1.formatWarn)(`${chalk_1.default.red("deprecated")} ${log2.pkgName}@${log2.pkgVersion}`)) + }); + })); + } + exports2.reportDeprecations = reportDeprecations; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportHooks.js +var require_reportHooks = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportHooks.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportHooks = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var chalk_1 = __importDefault4(require_source()); + var zooming_1 = require_zooming(); + function reportHooks(hook$, opts) { + return hook$.pipe((0, operators_1.map)((log2) => Rx.of({ + msg: (0, zooming_1.autozoom)(opts.cwd, log2.prefix, `${chalk_1.default.magentaBright(log2.hook)}: ${log2.message}`, { + zoomOutCurrent: opts.isRecursive + }) + }))); + } + exports2.reportHooks = reportHooks; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportInstallChecks.js +var require_reportInstallChecks = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportInstallChecks.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportInstallChecks = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var formatWarn_1 = require_formatWarn(); + var zooming_1 = require_zooming(); + function reportInstallChecks(installCheck$, opts) { + return installCheck$.pipe((0, operators_1.map)((log2) => formatInstallCheck(opts.cwd, log2)), (0, operators_1.filter)(Boolean), (0, operators_1.map)((msg) => Rx.of({ msg }))); + } + exports2.reportInstallChecks = reportInstallChecks; + function formatInstallCheck(currentPrefix, logObj, opts) { + const zoomOutCurrent = opts?.zoomOutCurrent ?? false; + switch (logObj.code) { + case "EBADPLATFORM": + return (0, zooming_1.autozoom)(currentPrefix, logObj["prefix"], (0, formatWarn_1.formatWarn)(`Unsupported system. Skipping dependency ${logObj.pkgId}`), { zoomOutCurrent }); + case "ENOTSUP": + return (0, zooming_1.autozoom)(currentPrefix, logObj["prefix"], logObj.toString(), { zoomOutCurrent }); + default: + return void 0; + } + } + } +}); + +// ../node_modules/.pnpm/ansi-regex@5.0.1/node_modules/ansi-regex/index.js +var require_ansi_regex2 = __commonJS({ + "../node_modules/.pnpm/ansi-regex@5.0.1/node_modules/ansi-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = ({ onlyFirst = false } = {}) => { + const pattern = [ + "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", + "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))" + ].join("|"); + return new RegExp(pattern, onlyFirst ? void 0 : "g"); + }; + } +}); + +// ../node_modules/.pnpm/strip-ansi@6.0.1/node_modules/strip-ansi/index.js +var require_strip_ansi = __commonJS({ + "../node_modules/.pnpm/strip-ansi@6.0.1/node_modules/strip-ansi/index.js"(exports2, module2) { + "use strict"; + var ansiRegex = require_ansi_regex2(); + module2.exports = (string) => typeof string === "string" ? string.replace(ansiRegex(), "") : string; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportLifecycleScripts.js +var require_reportLifecycleScripts = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportLifecycleScripts.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportLifecycleScripts = void 0; + var path_1 = __importDefault4(require("path")); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var chalk_1 = __importDefault4(require_source()); + var pretty_ms_1 = __importDefault4(require_pretty_ms()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var constants_1 = require_constants2(); + var formatPrefix_1 = require_formatPrefix(); + var outputConstants_1 = require_outputConstants(); + var NODE_MODULES = `${path_1.default.sep}node_modules${path_1.default.sep}`; + var TMP_DIR_IN_STORE = `tmp${path_1.default.sep}_tmp_`; + var colorWheel = ["cyan", "magenta", "blue", "yellow", "green", "red"]; + var NUM_COLORS = colorWheel.length; + var currentColor = 0; + function reportLifecycleScripts(log$, opts) { + if (opts.appendOnly) { + let lifecycle$ = log$.lifecycle; + if (opts.aggregateOutput) { + lifecycle$ = lifecycle$.pipe(aggregateOutput); + } + const streamLifecycleOutput2 = createStreamLifecycleOutput(opts.cwd); + return lifecycle$.pipe((0, operators_1.map)((log2) => Rx.of({ + msg: streamLifecycleOutput2(log2) + }))); + } + const lifecycleMessages = {}; + const lifecycleStreamByDepPath = {}; + const lifecyclePushStream = new Rx.Subject(); + log$.lifecycle.forEach((log2) => { + const key = `${log2.stage}:${log2.depPath}`; + lifecycleMessages[key] = lifecycleMessages[key] || { + collapsed: log2.wd.includes(NODE_MODULES) || log2.wd.includes(TMP_DIR_IN_STORE), + output: [], + startTime: process.hrtime(), + status: formatIndentedStatus(chalk_1.default.magentaBright("Running...")) + }; + const exit = typeof log2["exitCode"] === "number"; + let msg; + if (lifecycleMessages[key].collapsed) { + msg = renderCollapsedScriptOutput(log2, lifecycleMessages[key], { cwd: opts.cwd, exit, maxWidth: opts.width }); + } else { + msg = renderScriptOutput(log2, lifecycleMessages[key], { cwd: opts.cwd, exit, maxWidth: opts.width }); + } + if (exit) { + delete lifecycleMessages[key]; + } + if (!lifecycleStreamByDepPath[key]) { + lifecycleStreamByDepPath[key] = new Rx.Subject(); + lifecyclePushStream.next(Rx.from(lifecycleStreamByDepPath[key])); + } + lifecycleStreamByDepPath[key].next({ msg }); + if (exit) { + lifecycleStreamByDepPath[key].complete(); + } + }); + return Rx.from(lifecyclePushStream); + } + exports2.reportLifecycleScripts = reportLifecycleScripts; + function toNano(time) { + return (time[0] + time[1] / 1e9) * 1e3; + } + function renderCollapsedScriptOutput(log2, messageCache, opts) { + if (!messageCache.label) { + messageCache.label = highlightLastFolder((0, formatPrefix_1.formatPrefixNoTrim)(opts.cwd, log2.wd)); + if (log2.wd.includes(TMP_DIR_IN_STORE)) { + messageCache.label += ` [${log2.depPath}]`; + } + messageCache.label += `: Running ${log2.stage} script`; + } + if (!opts.exit) { + updateMessageCache(log2, messageCache, opts); + return `${messageCache.label}...`; + } + const time = (0, pretty_ms_1.default)(toNano(process.hrtime(messageCache.startTime))); + if (log2["exitCode"] === 0) { + return `${messageCache.label}, done in ${time}`; + } + if (log2["optional"] === true) { + return `${messageCache.label}, failed in ${time} (skipped as optional)`; + } + return `${messageCache.label}, failed in ${time}${constants_1.EOL}${renderScriptOutput(log2, messageCache, opts)}`; + } + function renderScriptOutput(log2, messageCache, opts) { + updateMessageCache(log2, messageCache, opts); + if (opts.exit && log2["exitCode"] !== 0) { + return [ + messageCache.script, + ...messageCache.output, + messageCache.status + ].join(constants_1.EOL); + } + if (messageCache.output.length > 10) { + return [ + messageCache.script, + `[${messageCache.output.length - 10} lines collapsed]`, + ...messageCache.output.slice(messageCache.output.length - 10), + messageCache.status + ].join(constants_1.EOL); + } + return [ + messageCache.script, + ...messageCache.output, + messageCache.status + ].join(constants_1.EOL); + } + function updateMessageCache(log2, messageCache, opts) { + if (log2["script"]) { + const prefix = `${(0, formatPrefix_1.formatPrefix)(opts.cwd, log2.wd)} ${(0, outputConstants_1.hlValue)(log2.stage)}`; + const maxLineWidth = opts.maxWidth - prefix.length - 2 + ANSI_ESCAPES_LENGTH_OF_PREFIX; + messageCache.script = `${prefix}$ ${cutLine(log2["script"], maxLineWidth)}`; + } else if (opts.exit) { + const time = (0, pretty_ms_1.default)(toNano(process.hrtime(messageCache.startTime))); + if (log2["exitCode"] === 0) { + messageCache.status = formatIndentedStatus(chalk_1.default.magentaBright(`Done in ${time}`)); + } else { + messageCache.status = formatIndentedStatus(chalk_1.default.red(`Failed in ${time} at ${log2.wd}`)); + } + } else { + messageCache.output.push(formatIndentedOutput(opts.maxWidth, log2)); + } + } + function formatIndentedStatus(status) { + return `${chalk_1.default.magentaBright("\u2514\u2500")} ${status}`; + } + function highlightLastFolder(p) { + const lastSlash = p.lastIndexOf("/") + 1; + return `${chalk_1.default.gray(p.slice(0, lastSlash))}${p.slice(lastSlash)}`; + } + var ANSI_ESCAPES_LENGTH_OF_PREFIX = (0, outputConstants_1.hlValue)(" ").length - 1; + function createStreamLifecycleOutput(cwd) { + currentColor = 0; + const colorByPrefix = /* @__PURE__ */ new Map(); + return streamLifecycleOutput.bind(null, colorByPrefix, cwd); + } + function streamLifecycleOutput(colorByPkg, cwd, logObj) { + const prefix = formatLifecycleScriptPrefix(colorByPkg, cwd, logObj.wd, logObj.stage); + if (typeof logObj["exitCode"] === "number") { + if (logObj["exitCode"] === 0) { + return `${prefix}: Done`; + } else { + return `${prefix}: Failed`; + } + } + if (logObj["script"]) { + return `${prefix}$ ${logObj["script"]}`; + } + const line = formatLine(Infinity, logObj); + return `${prefix}: ${line}`; + } + function formatIndentedOutput(maxWidth, logObj) { + return `${chalk_1.default.magentaBright("\u2502")} ${formatLine(maxWidth - 2, logObj)}`; + } + function formatLifecycleScriptPrefix(colorByPkg, cwd, wd, stage) { + if (!colorByPkg.has(wd)) { + const colorName = colorWheel[currentColor % NUM_COLORS]; + colorByPkg.set(wd, chalk_1.default[colorName]); + currentColor += 1; + } + const color = colorByPkg.get(wd); + return `${color((0, formatPrefix_1.formatPrefix)(cwd, wd))} ${(0, outputConstants_1.hlValue)(stage)}`; + } + function formatLine(maxWidth, logObj) { + const line = cutLine(logObj["line"], maxWidth); + if (logObj["stdio"] === "stderr") { + return chalk_1.default.gray(line); + } + return line; + } + function cutLine(line, maxLength) { + if (!line) + return ""; + return (0, strip_ansi_1.default)(line).slice(0, maxLength); + } + function aggregateOutput(source) { + return source.pipe((0, operators_1.groupBy)((data) => data.depPath), (0, operators_1.mergeMap)((group) => { + return group.pipe((0, operators_1.buffer)(group.pipe((0, operators_1.filter)((msg) => "exitCode" in msg)))); + }), (0, operators_1.map)((ar) => Rx.from(ar)), (0, operators_1.mergeAll)()); + } + } +}); + +// ../node_modules/.pnpm/archy@1.0.0/node_modules/archy/index.js +var require_archy = __commonJS({ + "../node_modules/.pnpm/archy@1.0.0/node_modules/archy/index.js"(exports2, module2) { + module2.exports = function archy(obj, prefix, opts) { + if (prefix === void 0) + prefix = ""; + if (!opts) + opts = {}; + var chr = function(s) { + var chars = { + "\u2502": "|", + "\u2514": "`", + "\u251C": "+", + "\u2500": "-", + "\u252C": "-" + }; + return opts.unicode === false ? chars[s] : s; + }; + if (typeof obj === "string") + obj = { label: obj }; + var nodes = obj.nodes || []; + var lines = (obj.label || "").split("\n"); + var splitter = "\n" + prefix + (nodes.length ? chr("\u2502") : " ") + " "; + return prefix + lines.join(splitter) + "\n" + nodes.map(function(node, ix) { + var last = ix === nodes.length - 1; + var more = node.nodes && node.nodes.length; + var prefix_ = prefix + (last ? " " : chr("\u2502")) + " "; + return prefix + (last ? chr("\u2514") : chr("\u251C")) + chr("\u2500") + (more ? chr("\u252C") : chr("\u2500")) + " " + archy(node, prefix_, opts).slice(prefix.length + 2); + }).join(""); + }; + } +}); + +// ../node_modules/.pnpm/is-fullwidth-code-point@3.0.0/node_modules/is-fullwidth-code-point/index.js +var require_is_fullwidth_code_point = __commonJS({ + "../node_modules/.pnpm/is-fullwidth-code-point@3.0.0/node_modules/is-fullwidth-code-point/index.js"(exports2, module2) { + "use strict"; + var isFullwidthCodePoint = (codePoint) => { + if (Number.isNaN(codePoint)) { + return false; + } + if (codePoint >= 4352 && (codePoint <= 4447 || // Hangul Jamo + codePoint === 9001 || // LEFT-POINTING ANGLE BRACKET + codePoint === 9002 || // RIGHT-POINTING ANGLE BRACKET + // CJK Radicals Supplement .. Enclosed CJK Letters and Months + 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A + 12880 <= codePoint && codePoint <= 19903 || // CJK Unified Ideographs .. Yi Radicals + 19968 <= codePoint && codePoint <= 42182 || // Hangul Jamo Extended-A + 43360 <= codePoint && codePoint <= 43388 || // Hangul Syllables + 44032 <= codePoint && codePoint <= 55203 || // CJK Compatibility Ideographs + 63744 <= codePoint && codePoint <= 64255 || // Vertical Forms + 65040 <= codePoint && codePoint <= 65049 || // CJK Compatibility Forms .. Small Form Variants + 65072 <= codePoint && codePoint <= 65131 || // Halfwidth and Fullwidth Forms + 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || // Kana Supplement + 110592 <= codePoint && codePoint <= 110593 || // Enclosed Ideographic Supplement + 127488 <= codePoint && codePoint <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane + 131072 <= codePoint && codePoint <= 262141)) { + return true; + } + return false; + }; + module2.exports = isFullwidthCodePoint; + module2.exports.default = isFullwidthCodePoint; + } +}); + +// ../node_modules/.pnpm/emoji-regex@8.0.0/node_modules/emoji-regex/index.js +var require_emoji_regex = __commonJS({ + "../node_modules/.pnpm/emoji-regex@8.0.0/node_modules/emoji-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = function() { + return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; + }; + } +}); + +// ../node_modules/.pnpm/string-width@4.2.3/node_modules/string-width/index.js +var require_string_width = __commonJS({ + "../node_modules/.pnpm/string-width@4.2.3/node_modules/string-width/index.js"(exports2, module2) { + "use strict"; + var stripAnsi = require_strip_ansi(); + var isFullwidthCodePoint = require_is_fullwidth_code_point(); + var emojiRegex = require_emoji_regex(); + var stringWidth = (string) => { + if (typeof string !== "string" || string.length === 0) { + return 0; + } + string = stripAnsi(string); + if (string.length === 0) { + return 0; + } + string = string.replace(emojiRegex(), " "); + let width = 0; + for (let i = 0; i < string.length; i++) { + const code = string.codePointAt(i); + if (code <= 31 || code >= 127 && code <= 159) { + continue; + } + if (code >= 768 && code <= 879) { + continue; + } + if (code > 65535) { + i++; + } + width += isFullwidthCodePoint(code) ? 2 : 1; + } + return width; + }; + module2.exports = stringWidth; + module2.exports.default = stringWidth; + } +}); + +// ../node_modules/.pnpm/cli-columns@4.0.0/node_modules/cli-columns/index.js +var require_cli_columns = __commonJS({ + "../node_modules/.pnpm/cli-columns@4.0.0/node_modules/cli-columns/index.js"(exports2, module2) { + "use strict"; + var stringWidth = require_string_width(); + var stripAnsi = require_strip_ansi(); + var concat = Array.prototype.concat; + var defaults = { + character: " ", + newline: "\n", + padding: 2, + sort: true, + width: 0 + }; + function byPlainText(a, b) { + const plainA = stripAnsi(a); + const plainB = stripAnsi(b); + if (plainA === plainB) { + return 0; + } + if (plainA > plainB) { + return 1; + } + return -1; + } + function makeArray() { + return []; + } + function makeList(count) { + return Array.apply(null, Array(count)); + } + function padCell(fullWidth, character, value) { + const valueWidth = stringWidth(value); + const filler = makeList(fullWidth - valueWidth + 1); + return value + filler.join(character); + } + function toRows(rows, cell, i) { + rows[i % rows.length].push(cell); + return rows; + } + function toString(arr) { + return arr.join(""); + } + function columns(values, options) { + values = concat.apply([], values); + options = Object.assign({}, defaults, options); + let cells = values.filter(Boolean).map(String); + if (options.sort !== false) { + cells = cells.sort(byPlainText); + } + const termWidth = options.width || process.stdout.columns; + const cellWidth = Math.max.apply(null, cells.map(stringWidth)) + options.padding; + const columnCount = Math.floor(termWidth / cellWidth) || 1; + const rowCount = Math.ceil(cells.length / columnCount) || 1; + if (columnCount === 1) { + return cells.join(options.newline); + } + return cells.map(padCell.bind(null, cellWidth, options.character)).reduce(toRows, makeList(rowCount).map(makeArray)).map(toString).join(options.newline); + } + module2.exports = columns; + } +}); + +// ../packages/render-peer-issues/lib/index.js +var require_lib22 = __commonJS({ + "../packages/render-peer-issues/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.renderPeerIssues = void 0; + var archy_1 = __importDefault4(require_archy()); + var chalk_1 = __importDefault4(require_source()); + var cli_columns_1 = __importDefault4(require_cli_columns()); + function renderPeerIssues(peerDependencyIssuesByProjects, opts) { + const projects = {}; + for (const [projectId, { bad, missing, conflicts, intersections }] of Object.entries(peerDependencyIssuesByProjects)) { + projects[projectId] = { dependencies: {}, peerIssues: [] }; + for (const [peerName, issues] of Object.entries(missing)) { + if (!conflicts.includes(peerName) && intersections[peerName] == null) { + continue; + } + for (const issue of issues) { + createTree(projects[projectId], issue.parents, `${chalk_1.default.red("\u2715 missing peer")} ${formatNameAndRange(peerName, issue.wantedRange)}`); + } + } + for (const [peerName, issues] of Object.entries(bad)) { + for (const issue of issues) { + createTree(projects[projectId], issue.parents, formatUnmetPeerMessage({ + peerName, + ...issue + })); + } + } + } + const cliColumnsOptions = { + newline: "\n ", + width: (opts?.width ?? process.stdout.columns) - 2 + }; + return Object.entries(projects).filter(([, project]) => Object.keys(project.dependencies).length > 0).sort(([projectKey1], [projectKey2]) => projectKey1.localeCompare(projectKey2)).map(([projectKey, project]) => { + const summaries = []; + const { conflicts, intersections } = peerDependencyIssuesByProjects[projectKey]; + if (conflicts.length) { + summaries.push(chalk_1.default.red(`\u2715 Conflicting peer dependencies: + ${(0, cli_columns_1.default)(conflicts, cliColumnsOptions)}`)); + } + if (Object.keys(intersections).length) { + summaries.push(`Peer dependencies that should be installed: + ${(0, cli_columns_1.default)(Object.entries(intersections).map(([name, version2]) => formatNameAndRange(name, version2)), cliColumnsOptions)}`); + } + const title = chalk_1.default.white(projectKey); + let summariesConcatenated = summaries.join("\n"); + if (summariesConcatenated) { + summariesConcatenated += "\n"; + } + return `${(0, archy_1.default)(toArchyData(title, project))}${summariesConcatenated}`; + }).join("\n"); + } + exports2.renderPeerIssues = renderPeerIssues; + function formatUnmetPeerMessage({ foundVersion, peerName, wantedRange, resolvedFrom }) { + const nameAndRange = formatNameAndRange(peerName, wantedRange); + if (resolvedFrom && resolvedFrom.length > 0) { + return `\u2715 unmet peer ${nameAndRange}: found ${foundVersion} in ${resolvedFrom[resolvedFrom.length - 1].name}`; + } + return `${chalk_1.default.yellowBright("\u2715 unmet peer")} ${nameAndRange}: found ${foundVersion}`; + } + function formatNameAndRange(name, range) { + if (range.includes(" ") || range === "*") { + return `${name}@"${range}"`; + } + return `${name}@${range}`; + } + function createTree(pkgNode, pkgs, issueText) { + const [pkg, ...rest] = pkgs; + const label = `${pkg.name} ${chalk_1.default.grey(pkg.version)}`; + if (!pkgNode.dependencies[label]) { + pkgNode.dependencies[label] = { dependencies: {}, peerIssues: [] }; + } + if (rest.length === 0) { + pkgNode.dependencies[label].peerIssues.push(issueText); + return; + } + createTree(pkgNode.dependencies[label], rest, issueText); + } + function toArchyData(depName, pkgNode) { + const result2 = { + label: depName, + nodes: [] + }; + for (const wantedPeer of pkgNode.peerIssues) { + result2.nodes.push(wantedPeer); + } + for (const [depName2, node] of Object.entries(pkgNode.dependencies)) { + result2.nodes.push(toArchyData(depName2, node)); + } + return result2; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isPlaceholder.js +var require_isPlaceholder = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isPlaceholder.js"(exports2, module2) { + function _isPlaceholder(a) { + return a != null && typeof a === "object" && a["@@functional/placeholder"] === true; + } + module2.exports = _isPlaceholder; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry1.js +var require_curry1 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry1.js"(exports2, module2) { + var _isPlaceholder = require_isPlaceholder(); + function _curry1(fn2) { + return function f1(a) { + if (arguments.length === 0 || _isPlaceholder(a)) { + return f1; + } else { + return fn2.apply(this, arguments); + } + }; + } + module2.exports = _curry1; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry2.js +var require_curry2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry2.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isPlaceholder = require_isPlaceholder(); + function _curry2(fn2) { + return function f2(a, b) { + switch (arguments.length) { + case 0: + return f2; + case 1: + return _isPlaceholder(a) ? f2 : _curry1(function(_b) { + return fn2(a, _b); + }); + default: + return _isPlaceholder(a) && _isPlaceholder(b) ? f2 : _isPlaceholder(a) ? _curry1(function(_a) { + return fn2(_a, b); + }) : _isPlaceholder(b) ? _curry1(function(_b) { + return fn2(a, _b); + }) : fn2(a, b); + } + }; + } + module2.exports = _curry2; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_arrayFromIterator.js +var require_arrayFromIterator = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_arrayFromIterator.js"(exports2, module2) { + function _arrayFromIterator(iter) { + var list = []; + var next; + while (!(next = iter.next()).done) { + list.push(next.value); + } + return list; + } + module2.exports = _arrayFromIterator; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_includesWith.js +var require_includesWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_includesWith.js"(exports2, module2) { + function _includesWith(pred, x, list) { + var idx = 0; + var len = list.length; + while (idx < len) { + if (pred(x, list[idx])) { + return true; + } + idx += 1; + } + return false; + } + module2.exports = _includesWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_functionName.js +var require_functionName = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_functionName.js"(exports2, module2) { + function _functionName(f) { + var match = String(f).match(/^function (\w*)/); + return match == null ? "" : match[1]; + } + module2.exports = _functionName; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_has.js +var require_has = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_has.js"(exports2, module2) { + function _has(prop, obj) { + return Object.prototype.hasOwnProperty.call(obj, prop); + } + module2.exports = _has; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_objectIs.js +var require_objectIs = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_objectIs.js"(exports2, module2) { + function _objectIs(a, b) { + if (a === b) { + return a !== 0 || 1 / a === 1 / b; + } else { + return a !== a && b !== b; + } + } + module2.exports = typeof Object.is === "function" ? Object.is : _objectIs; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArguments.js +var require_isArguments = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArguments.js"(exports2, module2) { + var _has = require_has(); + var toString = Object.prototype.toString; + var _isArguments = /* @__PURE__ */ function() { + return toString.call(arguments) === "[object Arguments]" ? function _isArguments2(x) { + return toString.call(x) === "[object Arguments]"; + } : function _isArguments2(x) { + return _has("callee", x); + }; + }(); + module2.exports = _isArguments; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/keys.js +var require_keys = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/keys.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _has = require_has(); + var _isArguments = require_isArguments(); + var hasEnumBug = !/* @__PURE__ */ { + toString: null + }.propertyIsEnumerable("toString"); + var nonEnumerableProps = ["constructor", "valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"]; + var hasArgsEnumBug = /* @__PURE__ */ function() { + "use strict"; + return arguments.propertyIsEnumerable("length"); + }(); + var contains = function contains2(list, item) { + var idx = 0; + while (idx < list.length) { + if (list[idx] === item) { + return true; + } + idx += 1; + } + return false; + }; + var keys = typeof Object.keys === "function" && !hasArgsEnumBug ? /* @__PURE__ */ _curry1(function keys2(obj) { + return Object(obj) !== obj ? [] : Object.keys(obj); + }) : /* @__PURE__ */ _curry1(function keys2(obj) { + if (Object(obj) !== obj) { + return []; + } + var prop, nIdx; + var ks = []; + var checkArgsLength = hasArgsEnumBug && _isArguments(obj); + for (prop in obj) { + if (_has(prop, obj) && (!checkArgsLength || prop !== "length")) { + ks[ks.length] = prop; + } + } + if (hasEnumBug) { + nIdx = nonEnumerableProps.length - 1; + while (nIdx >= 0) { + prop = nonEnumerableProps[nIdx]; + if (_has(prop, obj) && !contains(ks, prop)) { + ks[ks.length] = prop; + } + nIdx -= 1; + } + } + return ks; + }); + module2.exports = keys; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/type.js +var require_type2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/type.js"(exports2, module2) { + var _curry1 = require_curry1(); + var type = /* @__PURE__ */ _curry1(function type2(val) { + return val === null ? "Null" : val === void 0 ? "Undefined" : Object.prototype.toString.call(val).slice(8, -1); + }); + module2.exports = type; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_equals.js +var require_equals = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_equals.js"(exports2, module2) { + var _arrayFromIterator = require_arrayFromIterator(); + var _includesWith = require_includesWith(); + var _functionName = require_functionName(); + var _has = require_has(); + var _objectIs = require_objectIs(); + var keys = require_keys(); + var type = require_type2(); + function _uniqContentEquals(aIterator, bIterator, stackA, stackB) { + var a = _arrayFromIterator(aIterator); + var b = _arrayFromIterator(bIterator); + function eq(_a, _b) { + return _equals(_a, _b, stackA.slice(), stackB.slice()); + } + return !_includesWith(function(b2, aItem) { + return !_includesWith(eq, aItem, b2); + }, b, a); + } + function _equals(a, b, stackA, stackB) { + if (_objectIs(a, b)) { + return true; + } + var typeA = type(a); + if (typeA !== type(b)) { + return false; + } + if (typeof a["fantasy-land/equals"] === "function" || typeof b["fantasy-land/equals"] === "function") { + return typeof a["fantasy-land/equals"] === "function" && a["fantasy-land/equals"](b) && typeof b["fantasy-land/equals"] === "function" && b["fantasy-land/equals"](a); + } + if (typeof a.equals === "function" || typeof b.equals === "function") { + return typeof a.equals === "function" && a.equals(b) && typeof b.equals === "function" && b.equals(a); + } + switch (typeA) { + case "Arguments": + case "Array": + case "Object": + if (typeof a.constructor === "function" && _functionName(a.constructor) === "Promise") { + return a === b; + } + break; + case "Boolean": + case "Number": + case "String": + if (!(typeof a === typeof b && _objectIs(a.valueOf(), b.valueOf()))) { + return false; + } + break; + case "Date": + if (!_objectIs(a.valueOf(), b.valueOf())) { + return false; + } + break; + case "Error": + return a.name === b.name && a.message === b.message; + case "RegExp": + if (!(a.source === b.source && a.global === b.global && a.ignoreCase === b.ignoreCase && a.multiline === b.multiline && a.sticky === b.sticky && a.unicode === b.unicode)) { + return false; + } + break; + } + var idx = stackA.length - 1; + while (idx >= 0) { + if (stackA[idx] === a) { + return stackB[idx] === b; + } + idx -= 1; + } + switch (typeA) { + case "Map": + if (a.size !== b.size) { + return false; + } + return _uniqContentEquals(a.entries(), b.entries(), stackA.concat([a]), stackB.concat([b])); + case "Set": + if (a.size !== b.size) { + return false; + } + return _uniqContentEquals(a.values(), b.values(), stackA.concat([a]), stackB.concat([b])); + case "Arguments": + case "Array": + case "Object": + case "Boolean": + case "Number": + case "String": + case "Date": + case "Error": + case "RegExp": + case "Int8Array": + case "Uint8Array": + case "Uint8ClampedArray": + case "Int16Array": + case "Uint16Array": + case "Int32Array": + case "Uint32Array": + case "Float32Array": + case "Float64Array": + case "ArrayBuffer": + break; + default: + return false; + } + var keysA = keys(a); + if (keysA.length !== keys(b).length) { + return false; + } + var extendedStackA = stackA.concat([a]); + var extendedStackB = stackB.concat([b]); + idx = keysA.length - 1; + while (idx >= 0) { + var key = keysA[idx]; + if (!(_has(key, b) && _equals(b[key], a[key], extendedStackA, extendedStackB))) { + return false; + } + idx -= 1; + } + return true; + } + module2.exports = _equals; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/equals.js +var require_equals2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/equals.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _equals = require_equals(); + var equals = /* @__PURE__ */ _curry2(function equals2(a, b) { + return _equals(a, b, [], []); + }); + module2.exports = equals; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64.js +var require_base64 = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64.js"(exports2) { + var intToCharMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""); + exports2.encode = function(number) { + if (0 <= number && number < intToCharMap.length) { + return intToCharMap[number]; + } + throw new TypeError("Must be between 0 and 63: " + number); + }; + exports2.decode = function(charCode) { + var bigA = 65; + var bigZ = 90; + var littleA = 97; + var littleZ = 122; + var zero = 48; + var nine = 57; + var plus = 43; + var slash = 47; + var littleOffset = 26; + var numberOffset = 52; + if (bigA <= charCode && charCode <= bigZ) { + return charCode - bigA; + } + if (littleA <= charCode && charCode <= littleZ) { + return charCode - littleA + littleOffset; + } + if (zero <= charCode && charCode <= nine) { + return charCode - zero + numberOffset; + } + if (charCode == plus) { + return 62; + } + if (charCode == slash) { + return 63; + } + return -1; + }; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64-vlq.js +var require_base64_vlq = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/base64-vlq.js"(exports2) { + var base64 = require_base64(); + var VLQ_BASE_SHIFT = 5; + var VLQ_BASE = 1 << VLQ_BASE_SHIFT; + var VLQ_BASE_MASK = VLQ_BASE - 1; + var VLQ_CONTINUATION_BIT = VLQ_BASE; + function toVLQSigned(aValue) { + return aValue < 0 ? (-aValue << 1) + 1 : (aValue << 1) + 0; + } + function fromVLQSigned(aValue) { + var isNegative = (aValue & 1) === 1; + var shifted = aValue >> 1; + return isNegative ? -shifted : shifted; + } + exports2.encode = function base64VLQ_encode(aValue) { + var encoded = ""; + var digit; + var vlq = toVLQSigned(aValue); + do { + digit = vlq & VLQ_BASE_MASK; + vlq >>>= VLQ_BASE_SHIFT; + if (vlq > 0) { + digit |= VLQ_CONTINUATION_BIT; + } + encoded += base64.encode(digit); + } while (vlq > 0); + return encoded; + }; + exports2.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { + var strLen = aStr.length; + var result2 = 0; + var shift = 0; + var continuation, digit; + do { + if (aIndex >= strLen) { + throw new Error("Expected more digits in base 64 VLQ value."); + } + digit = base64.decode(aStr.charCodeAt(aIndex++)); + if (digit === -1) { + throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1)); + } + continuation = !!(digit & VLQ_CONTINUATION_BIT); + digit &= VLQ_BASE_MASK; + result2 = result2 + (digit << shift); + shift += VLQ_BASE_SHIFT; + } while (continuation); + aOutParam.value = fromVLQSigned(result2); + aOutParam.rest = aIndex; + }; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/util.js +var require_util4 = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/util.js"(exports2) { + function getArg(aArgs, aName, aDefaultValue) { + if (aName in aArgs) { + return aArgs[aName]; + } else if (arguments.length === 3) { + return aDefaultValue; + } else { + throw new Error('"' + aName + '" is a required argument.'); + } + } + exports2.getArg = getArg; + var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/; + var dataUrlRegexp = /^data:.+\,.+$/; + function urlParse(aUrl) { + var match = aUrl.match(urlRegexp); + if (!match) { + return null; + } + return { + scheme: match[1], + auth: match[2], + host: match[3], + port: match[4], + path: match[5] + }; + } + exports2.urlParse = urlParse; + function urlGenerate(aParsedUrl) { + var url = ""; + if (aParsedUrl.scheme) { + url += aParsedUrl.scheme + ":"; + } + url += "//"; + if (aParsedUrl.auth) { + url += aParsedUrl.auth + "@"; + } + if (aParsedUrl.host) { + url += aParsedUrl.host; + } + if (aParsedUrl.port) { + url += ":" + aParsedUrl.port; + } + if (aParsedUrl.path) { + url += aParsedUrl.path; + } + return url; + } + exports2.urlGenerate = urlGenerate; + function normalize(aPath) { + var path2 = aPath; + var url = urlParse(aPath); + if (url) { + if (!url.path) { + return aPath; + } + path2 = url.path; + } + var isAbsolute = exports2.isAbsolute(path2); + var parts = path2.split(/\/+/); + for (var part, up = 0, i = parts.length - 1; i >= 0; i--) { + part = parts[i]; + if (part === ".") { + parts.splice(i, 1); + } else if (part === "..") { + up++; + } else if (up > 0) { + if (part === "") { + parts.splice(i + 1, up); + up = 0; + } else { + parts.splice(i, 2); + up--; + } + } + } + path2 = parts.join("/"); + if (path2 === "") { + path2 = isAbsolute ? "/" : "."; + } + if (url) { + url.path = path2; + return urlGenerate(url); + } + return path2; + } + exports2.normalize = normalize; + function join(aRoot, aPath) { + if (aRoot === "") { + aRoot = "."; + } + if (aPath === "") { + aPath = "."; + } + var aPathUrl = urlParse(aPath); + var aRootUrl = urlParse(aRoot); + if (aRootUrl) { + aRoot = aRootUrl.path || "/"; + } + if (aPathUrl && !aPathUrl.scheme) { + if (aRootUrl) { + aPathUrl.scheme = aRootUrl.scheme; + } + return urlGenerate(aPathUrl); + } + if (aPathUrl || aPath.match(dataUrlRegexp)) { + return aPath; + } + if (aRootUrl && !aRootUrl.host && !aRootUrl.path) { + aRootUrl.host = aPath; + return urlGenerate(aRootUrl); + } + var joined = aPath.charAt(0) === "/" ? aPath : normalize(aRoot.replace(/\/+$/, "") + "/" + aPath); + if (aRootUrl) { + aRootUrl.path = joined; + return urlGenerate(aRootUrl); + } + return joined; + } + exports2.join = join; + exports2.isAbsolute = function(aPath) { + return aPath.charAt(0) === "/" || urlRegexp.test(aPath); + }; + function relative2(aRoot, aPath) { + if (aRoot === "") { + aRoot = "."; + } + aRoot = aRoot.replace(/\/$/, ""); + var level = 0; + while (aPath.indexOf(aRoot + "/") !== 0) { + var index = aRoot.lastIndexOf("/"); + if (index < 0) { + return aPath; + } + aRoot = aRoot.slice(0, index); + if (aRoot.match(/^([^\/]+:\/)?\/*$/)) { + return aPath; + } + ++level; + } + return Array(level + 1).join("../") + aPath.substr(aRoot.length + 1); + } + exports2.relative = relative2; + var supportsNullProto = function() { + var obj = /* @__PURE__ */ Object.create(null); + return !("__proto__" in obj); + }(); + function identity(s) { + return s; + } + function toSetString(aStr) { + if (isProtoString(aStr)) { + return "$" + aStr; + } + return aStr; + } + exports2.toSetString = supportsNullProto ? identity : toSetString; + function fromSetString(aStr) { + if (isProtoString(aStr)) { + return aStr.slice(1); + } + return aStr; + } + exports2.fromSetString = supportsNullProto ? identity : fromSetString; + function isProtoString(s) { + if (!s) { + return false; + } + var length = s.length; + if (length < 9) { + return false; + } + if (s.charCodeAt(length - 1) !== 95 || s.charCodeAt(length - 2) !== 95 || s.charCodeAt(length - 3) !== 111 || s.charCodeAt(length - 4) !== 116 || s.charCodeAt(length - 5) !== 111 || s.charCodeAt(length - 6) !== 114 || s.charCodeAt(length - 7) !== 112 || s.charCodeAt(length - 8) !== 95 || s.charCodeAt(length - 9) !== 95) { + return false; + } + for (var i = length - 10; i >= 0; i--) { + if (s.charCodeAt(i) !== 36) { + return false; + } + } + return true; + } + function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) { + var cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0 || onlyCompareOriginal) { + return cmp; + } + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + return strcmp(mappingA.name, mappingB.name); + } + exports2.compareByOriginalPositions = compareByOriginalPositions; + function compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) { + var cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0 || onlyCompareGenerated) { + return cmp; + } + cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0) { + return cmp; + } + return strcmp(mappingA.name, mappingB.name); + } + exports2.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated; + function strcmp(aStr1, aStr2) { + if (aStr1 === aStr2) { + return 0; + } + if (aStr1 === null) { + return 1; + } + if (aStr2 === null) { + return -1; + } + if (aStr1 > aStr2) { + return 1; + } + return -1; + } + function compareByGeneratedPositionsInflated(mappingA, mappingB) { + var cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0) { + return cmp; + } + cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0) { + return cmp; + } + return strcmp(mappingA.name, mappingB.name); + } + exports2.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated; + function parseSourceMapInput(str) { + return JSON.parse(str.replace(/^\)]}'[^\n]*\n/, "")); + } + exports2.parseSourceMapInput = parseSourceMapInput; + function computeSourceURL(sourceRoot, sourceURL, sourceMapURL) { + sourceURL = sourceURL || ""; + if (sourceRoot) { + if (sourceRoot[sourceRoot.length - 1] !== "/" && sourceURL[0] !== "/") { + sourceRoot += "/"; + } + sourceURL = sourceRoot + sourceURL; + } + if (sourceMapURL) { + var parsed = urlParse(sourceMapURL); + if (!parsed) { + throw new Error("sourceMapURL could not be parsed"); + } + if (parsed.path) { + var index = parsed.path.lastIndexOf("/"); + if (index >= 0) { + parsed.path = parsed.path.substring(0, index + 1); + } + } + sourceURL = join(urlGenerate(parsed), sourceURL); + } + return normalize(sourceURL); + } + exports2.computeSourceURL = computeSourceURL; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/array-set.js +var require_array_set = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/array-set.js"(exports2) { + var util = require_util4(); + var has = Object.prototype.hasOwnProperty; + var hasNativeMap = typeof Map !== "undefined"; + function ArraySet() { + this._array = []; + this._set = hasNativeMap ? /* @__PURE__ */ new Map() : /* @__PURE__ */ Object.create(null); + } + ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) { + var set = new ArraySet(); + for (var i = 0, len = aArray.length; i < len; i++) { + set.add(aArray[i], aAllowDuplicates); + } + return set; + }; + ArraySet.prototype.size = function ArraySet_size() { + return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length; + }; + ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) { + var sStr = hasNativeMap ? aStr : util.toSetString(aStr); + var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr); + var idx = this._array.length; + if (!isDuplicate || aAllowDuplicates) { + this._array.push(aStr); + } + if (!isDuplicate) { + if (hasNativeMap) { + this._set.set(aStr, idx); + } else { + this._set[sStr] = idx; + } + } + }; + ArraySet.prototype.has = function ArraySet_has(aStr) { + if (hasNativeMap) { + return this._set.has(aStr); + } else { + var sStr = util.toSetString(aStr); + return has.call(this._set, sStr); + } + }; + ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) { + if (hasNativeMap) { + var idx = this._set.get(aStr); + if (idx >= 0) { + return idx; + } + } else { + var sStr = util.toSetString(aStr); + if (has.call(this._set, sStr)) { + return this._set[sStr]; + } + } + throw new Error('"' + aStr + '" is not in the set.'); + }; + ArraySet.prototype.at = function ArraySet_at(aIdx) { + if (aIdx >= 0 && aIdx < this._array.length) { + return this._array[aIdx]; + } + throw new Error("No element indexed by " + aIdx); + }; + ArraySet.prototype.toArray = function ArraySet_toArray() { + return this._array.slice(); + }; + exports2.ArraySet = ArraySet; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/mapping-list.js +var require_mapping_list = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/mapping-list.js"(exports2) { + var util = require_util4(); + function generatedPositionAfter(mappingA, mappingB) { + var lineA = mappingA.generatedLine; + var lineB = mappingB.generatedLine; + var columnA = mappingA.generatedColumn; + var columnB = mappingB.generatedColumn; + return lineB > lineA || lineB == lineA && columnB >= columnA || util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0; + } + function MappingList() { + this._array = []; + this._sorted = true; + this._last = { generatedLine: -1, generatedColumn: 0 }; + } + MappingList.prototype.unsortedForEach = function MappingList_forEach(aCallback, aThisArg) { + this._array.forEach(aCallback, aThisArg); + }; + MappingList.prototype.add = function MappingList_add(aMapping) { + if (generatedPositionAfter(this._last, aMapping)) { + this._last = aMapping; + this._array.push(aMapping); + } else { + this._sorted = false; + this._array.push(aMapping); + } + }; + MappingList.prototype.toArray = function MappingList_toArray() { + if (!this._sorted) { + this._array.sort(util.compareByGeneratedPositionsInflated); + this._sorted = true; + } + return this._array; + }; + exports2.MappingList = MappingList; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-generator.js +var require_source_map_generator = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-generator.js"(exports2) { + var base64VLQ = require_base64_vlq(); + var util = require_util4(); + var ArraySet = require_array_set().ArraySet; + var MappingList = require_mapping_list().MappingList; + function SourceMapGenerator(aArgs) { + if (!aArgs) { + aArgs = {}; + } + this._file = util.getArg(aArgs, "file", null); + this._sourceRoot = util.getArg(aArgs, "sourceRoot", null); + this._skipValidation = util.getArg(aArgs, "skipValidation", false); + this._sources = new ArraySet(); + this._names = new ArraySet(); + this._mappings = new MappingList(); + this._sourcesContents = null; + } + SourceMapGenerator.prototype._version = 3; + SourceMapGenerator.fromSourceMap = function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) { + var sourceRoot = aSourceMapConsumer.sourceRoot; + var generator = new SourceMapGenerator({ + file: aSourceMapConsumer.file, + sourceRoot + }); + aSourceMapConsumer.eachMapping(function(mapping) { + var newMapping = { + generated: { + line: mapping.generatedLine, + column: mapping.generatedColumn + } + }; + if (mapping.source != null) { + newMapping.source = mapping.source; + if (sourceRoot != null) { + newMapping.source = util.relative(sourceRoot, newMapping.source); + } + newMapping.original = { + line: mapping.originalLine, + column: mapping.originalColumn + }; + if (mapping.name != null) { + newMapping.name = mapping.name; + } + } + generator.addMapping(newMapping); + }); + aSourceMapConsumer.sources.forEach(function(sourceFile) { + var sourceRelative = sourceFile; + if (sourceRoot !== null) { + sourceRelative = util.relative(sourceRoot, sourceFile); + } + if (!generator._sources.has(sourceRelative)) { + generator._sources.add(sourceRelative); + } + var content = aSourceMapConsumer.sourceContentFor(sourceFile); + if (content != null) { + generator.setSourceContent(sourceFile, content); + } + }); + return generator; + }; + SourceMapGenerator.prototype.addMapping = function SourceMapGenerator_addMapping(aArgs) { + var generated = util.getArg(aArgs, "generated"); + var original = util.getArg(aArgs, "original", null); + var source = util.getArg(aArgs, "source", null); + var name = util.getArg(aArgs, "name", null); + if (!this._skipValidation) { + this._validateMapping(generated, original, source, name); + } + if (source != null) { + source = String(source); + if (!this._sources.has(source)) { + this._sources.add(source); + } + } + if (name != null) { + name = String(name); + if (!this._names.has(name)) { + this._names.add(name); + } + } + this._mappings.add({ + generatedLine: generated.line, + generatedColumn: generated.column, + originalLine: original != null && original.line, + originalColumn: original != null && original.column, + source, + name + }); + }; + SourceMapGenerator.prototype.setSourceContent = function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) { + var source = aSourceFile; + if (this._sourceRoot != null) { + source = util.relative(this._sourceRoot, source); + } + if (aSourceContent != null) { + if (!this._sourcesContents) { + this._sourcesContents = /* @__PURE__ */ Object.create(null); + } + this._sourcesContents[util.toSetString(source)] = aSourceContent; + } else if (this._sourcesContents) { + delete this._sourcesContents[util.toSetString(source)]; + if (Object.keys(this._sourcesContents).length === 0) { + this._sourcesContents = null; + } + } + }; + SourceMapGenerator.prototype.applySourceMap = function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) { + var sourceFile = aSourceFile; + if (aSourceFile == null) { + if (aSourceMapConsumer.file == null) { + throw new Error( + `SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.` + ); + } + sourceFile = aSourceMapConsumer.file; + } + var sourceRoot = this._sourceRoot; + if (sourceRoot != null) { + sourceFile = util.relative(sourceRoot, sourceFile); + } + var newSources = new ArraySet(); + var newNames = new ArraySet(); + this._mappings.unsortedForEach(function(mapping) { + if (mapping.source === sourceFile && mapping.originalLine != null) { + var original = aSourceMapConsumer.originalPositionFor({ + line: mapping.originalLine, + column: mapping.originalColumn + }); + if (original.source != null) { + mapping.source = original.source; + if (aSourceMapPath != null) { + mapping.source = util.join(aSourceMapPath, mapping.source); + } + if (sourceRoot != null) { + mapping.source = util.relative(sourceRoot, mapping.source); + } + mapping.originalLine = original.line; + mapping.originalColumn = original.column; + if (original.name != null) { + mapping.name = original.name; + } + } + } + var source = mapping.source; + if (source != null && !newSources.has(source)) { + newSources.add(source); + } + var name = mapping.name; + if (name != null && !newNames.has(name)) { + newNames.add(name); + } + }, this); + this._sources = newSources; + this._names = newNames; + aSourceMapConsumer.sources.forEach(function(sourceFile2) { + var content = aSourceMapConsumer.sourceContentFor(sourceFile2); + if (content != null) { + if (aSourceMapPath != null) { + sourceFile2 = util.join(aSourceMapPath, sourceFile2); + } + if (sourceRoot != null) { + sourceFile2 = util.relative(sourceRoot, sourceFile2); + } + this.setSourceContent(sourceFile2, content); + } + }, this); + }; + SourceMapGenerator.prototype._validateMapping = function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, aName) { + if (aOriginal && typeof aOriginal.line !== "number" && typeof aOriginal.column !== "number") { + throw new Error( + "original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values." + ); + } + if (aGenerated && "line" in aGenerated && "column" in aGenerated && aGenerated.line > 0 && aGenerated.column >= 0 && !aOriginal && !aSource && !aName) { + return; + } else if (aGenerated && "line" in aGenerated && "column" in aGenerated && aOriginal && "line" in aOriginal && "column" in aOriginal && aGenerated.line > 0 && aGenerated.column >= 0 && aOriginal.line > 0 && aOriginal.column >= 0 && aSource) { + return; + } else { + throw new Error("Invalid mapping: " + JSON.stringify({ + generated: aGenerated, + source: aSource, + original: aOriginal, + name: aName + })); + } + }; + SourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() { + var previousGeneratedColumn = 0; + var previousGeneratedLine = 1; + var previousOriginalColumn = 0; + var previousOriginalLine = 0; + var previousName = 0; + var previousSource = 0; + var result2 = ""; + var next; + var mapping; + var nameIdx; + var sourceIdx; + var mappings = this._mappings.toArray(); + for (var i = 0, len = mappings.length; i < len; i++) { + mapping = mappings[i]; + next = ""; + if (mapping.generatedLine !== previousGeneratedLine) { + previousGeneratedColumn = 0; + while (mapping.generatedLine !== previousGeneratedLine) { + next += ";"; + previousGeneratedLine++; + } + } else { + if (i > 0) { + if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) { + continue; + } + next += ","; + } + } + next += base64VLQ.encode(mapping.generatedColumn - previousGeneratedColumn); + previousGeneratedColumn = mapping.generatedColumn; + if (mapping.source != null) { + sourceIdx = this._sources.indexOf(mapping.source); + next += base64VLQ.encode(sourceIdx - previousSource); + previousSource = sourceIdx; + next += base64VLQ.encode(mapping.originalLine - 1 - previousOriginalLine); + previousOriginalLine = mapping.originalLine - 1; + next += base64VLQ.encode(mapping.originalColumn - previousOriginalColumn); + previousOriginalColumn = mapping.originalColumn; + if (mapping.name != null) { + nameIdx = this._names.indexOf(mapping.name); + next += base64VLQ.encode(nameIdx - previousName); + previousName = nameIdx; + } + } + result2 += next; + } + return result2; + }; + SourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) { + return aSources.map(function(source) { + if (!this._sourcesContents) { + return null; + } + if (aSourceRoot != null) { + source = util.relative(aSourceRoot, source); + } + var key = util.toSetString(source); + return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) ? this._sourcesContents[key] : null; + }, this); + }; + SourceMapGenerator.prototype.toJSON = function SourceMapGenerator_toJSON() { + var map = { + version: this._version, + sources: this._sources.toArray(), + names: this._names.toArray(), + mappings: this._serializeMappings() + }; + if (this._file != null) { + map.file = this._file; + } + if (this._sourceRoot != null) { + map.sourceRoot = this._sourceRoot; + } + if (this._sourcesContents) { + map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot); + } + return map; + }; + SourceMapGenerator.prototype.toString = function SourceMapGenerator_toString() { + return JSON.stringify(this.toJSON()); + }; + exports2.SourceMapGenerator = SourceMapGenerator; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/binary-search.js +var require_binary_search = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/binary-search.js"(exports2) { + exports2.GREATEST_LOWER_BOUND = 1; + exports2.LEAST_UPPER_BOUND = 2; + function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) { + var mid = Math.floor((aHigh - aLow) / 2) + aLow; + var cmp = aCompare(aNeedle, aHaystack[mid], true); + if (cmp === 0) { + return mid; + } else if (cmp > 0) { + if (aHigh - mid > 1) { + return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias); + } + if (aBias == exports2.LEAST_UPPER_BOUND) { + return aHigh < aHaystack.length ? aHigh : -1; + } else { + return mid; + } + } else { + if (mid - aLow > 1) { + return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias); + } + if (aBias == exports2.LEAST_UPPER_BOUND) { + return mid; + } else { + return aLow < 0 ? -1 : aLow; + } + } + } + exports2.search = function search(aNeedle, aHaystack, aCompare, aBias) { + if (aHaystack.length === 0) { + return -1; + } + var index = recursiveSearch( + -1, + aHaystack.length, + aNeedle, + aHaystack, + aCompare, + aBias || exports2.GREATEST_LOWER_BOUND + ); + if (index < 0) { + return -1; + } + while (index - 1 >= 0) { + if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) { + break; + } + --index; + } + return index; + }; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/quick-sort.js +var require_quick_sort = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/quick-sort.js"(exports2) { + function swap(ary, x, y) { + var temp = ary[x]; + ary[x] = ary[y]; + ary[y] = temp; + } + function randomIntInRange(low, high) { + return Math.round(low + Math.random() * (high - low)); + } + function doQuickSort(ary, comparator, p, r) { + if (p < r) { + var pivotIndex = randomIntInRange(p, r); + var i = p - 1; + swap(ary, pivotIndex, r); + var pivot = ary[r]; + for (var j = p; j < r; j++) { + if (comparator(ary[j], pivot) <= 0) { + i += 1; + swap(ary, i, j); + } + } + swap(ary, i + 1, j); + var q = i + 1; + doQuickSort(ary, comparator, p, q - 1); + doQuickSort(ary, comparator, q + 1, r); + } + } + exports2.quickSort = function(ary, comparator) { + doQuickSort(ary, comparator, 0, ary.length - 1); + }; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-consumer.js +var require_source_map_consumer = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-map-consumer.js"(exports2) { + var util = require_util4(); + var binarySearch = require_binary_search(); + var ArraySet = require_array_set().ArraySet; + var base64VLQ = require_base64_vlq(); + var quickSort = require_quick_sort().quickSort; + function SourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === "string") { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + return sourceMap.sections != null ? new IndexedSourceMapConsumer(sourceMap, aSourceMapURL) : new BasicSourceMapConsumer(sourceMap, aSourceMapURL); + } + SourceMapConsumer.fromSourceMap = function(aSourceMap, aSourceMapURL) { + return BasicSourceMapConsumer.fromSourceMap(aSourceMap, aSourceMapURL); + }; + SourceMapConsumer.prototype._version = 3; + SourceMapConsumer.prototype.__generatedMappings = null; + Object.defineProperty(SourceMapConsumer.prototype, "_generatedMappings", { + configurable: true, + enumerable: true, + get: function() { + if (!this.__generatedMappings) { + this._parseMappings(this._mappings, this.sourceRoot); + } + return this.__generatedMappings; + } + }); + SourceMapConsumer.prototype.__originalMappings = null; + Object.defineProperty(SourceMapConsumer.prototype, "_originalMappings", { + configurable: true, + enumerable: true, + get: function() { + if (!this.__originalMappings) { + this._parseMappings(this._mappings, this.sourceRoot); + } + return this.__originalMappings; + } + }); + SourceMapConsumer.prototype._charIsMappingSeparator = function SourceMapConsumer_charIsMappingSeparator(aStr, index) { + var c = aStr.charAt(index); + return c === ";" || c === ","; + }; + SourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { + throw new Error("Subclasses must implement _parseMappings"); + }; + SourceMapConsumer.GENERATED_ORDER = 1; + SourceMapConsumer.ORIGINAL_ORDER = 2; + SourceMapConsumer.GREATEST_LOWER_BOUND = 1; + SourceMapConsumer.LEAST_UPPER_BOUND = 2; + SourceMapConsumer.prototype.eachMapping = function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) { + var context = aContext || null; + var order = aOrder || SourceMapConsumer.GENERATED_ORDER; + var mappings; + switch (order) { + case SourceMapConsumer.GENERATED_ORDER: + mappings = this._generatedMappings; + break; + case SourceMapConsumer.ORIGINAL_ORDER: + mappings = this._originalMappings; + break; + default: + throw new Error("Unknown order of iteration."); + } + var sourceRoot = this.sourceRoot; + mappings.map(function(mapping) { + var source = mapping.source === null ? null : this._sources.at(mapping.source); + source = util.computeSourceURL(sourceRoot, source, this._sourceMapURL); + return { + source, + generatedLine: mapping.generatedLine, + generatedColumn: mapping.generatedColumn, + originalLine: mapping.originalLine, + originalColumn: mapping.originalColumn, + name: mapping.name === null ? null : this._names.at(mapping.name) + }; + }, this).forEach(aCallback, context); + }; + SourceMapConsumer.prototype.allGeneratedPositionsFor = function SourceMapConsumer_allGeneratedPositionsFor(aArgs) { + var line = util.getArg(aArgs, "line"); + var needle = { + source: util.getArg(aArgs, "source"), + originalLine: line, + originalColumn: util.getArg(aArgs, "column", 0) + }; + needle.source = this._findSourceIndex(needle.source); + if (needle.source < 0) { + return []; + } + var mappings = []; + var index = this._findMapping( + needle, + this._originalMappings, + "originalLine", + "originalColumn", + util.compareByOriginalPositions, + binarySearch.LEAST_UPPER_BOUND + ); + if (index >= 0) { + var mapping = this._originalMappings[index]; + if (aArgs.column === void 0) { + var originalLine = mapping.originalLine; + while (mapping && mapping.originalLine === originalLine) { + mappings.push({ + line: util.getArg(mapping, "generatedLine", null), + column: util.getArg(mapping, "generatedColumn", null), + lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) + }); + mapping = this._originalMappings[++index]; + } + } else { + var originalColumn = mapping.originalColumn; + while (mapping && mapping.originalLine === line && mapping.originalColumn == originalColumn) { + mappings.push({ + line: util.getArg(mapping, "generatedLine", null), + column: util.getArg(mapping, "generatedColumn", null), + lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) + }); + mapping = this._originalMappings[++index]; + } + } + } + return mappings; + }; + exports2.SourceMapConsumer = SourceMapConsumer; + function BasicSourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === "string") { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + var version2 = util.getArg(sourceMap, "version"); + var sources = util.getArg(sourceMap, "sources"); + var names = util.getArg(sourceMap, "names", []); + var sourceRoot = util.getArg(sourceMap, "sourceRoot", null); + var sourcesContent = util.getArg(sourceMap, "sourcesContent", null); + var mappings = util.getArg(sourceMap, "mappings"); + var file = util.getArg(sourceMap, "file", null); + if (version2 != this._version) { + throw new Error("Unsupported version: " + version2); + } + if (sourceRoot) { + sourceRoot = util.normalize(sourceRoot); + } + sources = sources.map(String).map(util.normalize).map(function(source) { + return sourceRoot && util.isAbsolute(sourceRoot) && util.isAbsolute(source) ? util.relative(sourceRoot, source) : source; + }); + this._names = ArraySet.fromArray(names.map(String), true); + this._sources = ArraySet.fromArray(sources, true); + this._absoluteSources = this._sources.toArray().map(function(s) { + return util.computeSourceURL(sourceRoot, s, aSourceMapURL); + }); + this.sourceRoot = sourceRoot; + this.sourcesContent = sourcesContent; + this._mappings = mappings; + this._sourceMapURL = aSourceMapURL; + this.file = file; + } + BasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); + BasicSourceMapConsumer.prototype.consumer = SourceMapConsumer; + BasicSourceMapConsumer.prototype._findSourceIndex = function(aSource) { + var relativeSource = aSource; + if (this.sourceRoot != null) { + relativeSource = util.relative(this.sourceRoot, relativeSource); + } + if (this._sources.has(relativeSource)) { + return this._sources.indexOf(relativeSource); + } + var i; + for (i = 0; i < this._absoluteSources.length; ++i) { + if (this._absoluteSources[i] == aSource) { + return i; + } + } + return -1; + }; + BasicSourceMapConsumer.fromSourceMap = function SourceMapConsumer_fromSourceMap(aSourceMap, aSourceMapURL) { + var smc = Object.create(BasicSourceMapConsumer.prototype); + var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true); + var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true); + smc.sourceRoot = aSourceMap._sourceRoot; + smc.sourcesContent = aSourceMap._generateSourcesContent( + smc._sources.toArray(), + smc.sourceRoot + ); + smc.file = aSourceMap._file; + smc._sourceMapURL = aSourceMapURL; + smc._absoluteSources = smc._sources.toArray().map(function(s) { + return util.computeSourceURL(smc.sourceRoot, s, aSourceMapURL); + }); + var generatedMappings = aSourceMap._mappings.toArray().slice(); + var destGeneratedMappings = smc.__generatedMappings = []; + var destOriginalMappings = smc.__originalMappings = []; + for (var i = 0, length = generatedMappings.length; i < length; i++) { + var srcMapping = generatedMappings[i]; + var destMapping = new Mapping(); + destMapping.generatedLine = srcMapping.generatedLine; + destMapping.generatedColumn = srcMapping.generatedColumn; + if (srcMapping.source) { + destMapping.source = sources.indexOf(srcMapping.source); + destMapping.originalLine = srcMapping.originalLine; + destMapping.originalColumn = srcMapping.originalColumn; + if (srcMapping.name) { + destMapping.name = names.indexOf(srcMapping.name); + } + destOriginalMappings.push(destMapping); + } + destGeneratedMappings.push(destMapping); + } + quickSort(smc.__originalMappings, util.compareByOriginalPositions); + return smc; + }; + BasicSourceMapConsumer.prototype._version = 3; + Object.defineProperty(BasicSourceMapConsumer.prototype, "sources", { + get: function() { + return this._absoluteSources.slice(); + } + }); + function Mapping() { + this.generatedLine = 0; + this.generatedColumn = 0; + this.source = null; + this.originalLine = null; + this.originalColumn = null; + this.name = null; + } + BasicSourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { + var generatedLine = 1; + var previousGeneratedColumn = 0; + var previousOriginalLine = 0; + var previousOriginalColumn = 0; + var previousSource = 0; + var previousName = 0; + var length = aStr.length; + var index = 0; + var cachedSegments = {}; + var temp = {}; + var originalMappings = []; + var generatedMappings = []; + var mapping, str, segment, end, value; + while (index < length) { + if (aStr.charAt(index) === ";") { + generatedLine++; + index++; + previousGeneratedColumn = 0; + } else if (aStr.charAt(index) === ",") { + index++; + } else { + mapping = new Mapping(); + mapping.generatedLine = generatedLine; + for (end = index; end < length; end++) { + if (this._charIsMappingSeparator(aStr, end)) { + break; + } + } + str = aStr.slice(index, end); + segment = cachedSegments[str]; + if (segment) { + index += str.length; + } else { + segment = []; + while (index < end) { + base64VLQ.decode(aStr, index, temp); + value = temp.value; + index = temp.rest; + segment.push(value); + } + if (segment.length === 2) { + throw new Error("Found a source, but no line and column"); + } + if (segment.length === 3) { + throw new Error("Found a source and line, but no column"); + } + cachedSegments[str] = segment; + } + mapping.generatedColumn = previousGeneratedColumn + segment[0]; + previousGeneratedColumn = mapping.generatedColumn; + if (segment.length > 1) { + mapping.source = previousSource + segment[1]; + previousSource += segment[1]; + mapping.originalLine = previousOriginalLine + segment[2]; + previousOriginalLine = mapping.originalLine; + mapping.originalLine += 1; + mapping.originalColumn = previousOriginalColumn + segment[3]; + previousOriginalColumn = mapping.originalColumn; + if (segment.length > 4) { + mapping.name = previousName + segment[4]; + previousName += segment[4]; + } + } + generatedMappings.push(mapping); + if (typeof mapping.originalLine === "number") { + originalMappings.push(mapping); + } + } + } + quickSort(generatedMappings, util.compareByGeneratedPositionsDeflated); + this.__generatedMappings = generatedMappings; + quickSort(originalMappings, util.compareByOriginalPositions); + this.__originalMappings = originalMappings; + }; + BasicSourceMapConsumer.prototype._findMapping = function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName, aColumnName, aComparator, aBias) { + if (aNeedle[aLineName] <= 0) { + throw new TypeError("Line must be greater than or equal to 1, got " + aNeedle[aLineName]); + } + if (aNeedle[aColumnName] < 0) { + throw new TypeError("Column must be greater than or equal to 0, got " + aNeedle[aColumnName]); + } + return binarySearch.search(aNeedle, aMappings, aComparator, aBias); + }; + BasicSourceMapConsumer.prototype.computeColumnSpans = function SourceMapConsumer_computeColumnSpans() { + for (var index = 0; index < this._generatedMappings.length; ++index) { + var mapping = this._generatedMappings[index]; + if (index + 1 < this._generatedMappings.length) { + var nextMapping = this._generatedMappings[index + 1]; + if (mapping.generatedLine === nextMapping.generatedLine) { + mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1; + continue; + } + } + mapping.lastGeneratedColumn = Infinity; + } + }; + BasicSourceMapConsumer.prototype.originalPositionFor = function SourceMapConsumer_originalPositionFor(aArgs) { + var needle = { + generatedLine: util.getArg(aArgs, "line"), + generatedColumn: util.getArg(aArgs, "column") + }; + var index = this._findMapping( + needle, + this._generatedMappings, + "generatedLine", + "generatedColumn", + util.compareByGeneratedPositionsDeflated, + util.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND) + ); + if (index >= 0) { + var mapping = this._generatedMappings[index]; + if (mapping.generatedLine === needle.generatedLine) { + var source = util.getArg(mapping, "source", null); + if (source !== null) { + source = this._sources.at(source); + source = util.computeSourceURL(this.sourceRoot, source, this._sourceMapURL); + } + var name = util.getArg(mapping, "name", null); + if (name !== null) { + name = this._names.at(name); + } + return { + source, + line: util.getArg(mapping, "originalLine", null), + column: util.getArg(mapping, "originalColumn", null), + name + }; + } + } + return { + source: null, + line: null, + column: null, + name: null + }; + }; + BasicSourceMapConsumer.prototype.hasContentsOfAllSources = function BasicSourceMapConsumer_hasContentsOfAllSources() { + if (!this.sourcesContent) { + return false; + } + return this.sourcesContent.length >= this._sources.size() && !this.sourcesContent.some(function(sc) { + return sc == null; + }); + }; + BasicSourceMapConsumer.prototype.sourceContentFor = function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { + if (!this.sourcesContent) { + return null; + } + var index = this._findSourceIndex(aSource); + if (index >= 0) { + return this.sourcesContent[index]; + } + var relativeSource = aSource; + if (this.sourceRoot != null) { + relativeSource = util.relative(this.sourceRoot, relativeSource); + } + var url; + if (this.sourceRoot != null && (url = util.urlParse(this.sourceRoot))) { + var fileUriAbsPath = relativeSource.replace(/^file:\/\//, ""); + if (url.scheme == "file" && this._sources.has(fileUriAbsPath)) { + return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)]; + } + if ((!url.path || url.path == "/") && this._sources.has("/" + relativeSource)) { + return this.sourcesContent[this._sources.indexOf("/" + relativeSource)]; + } + } + if (nullOnMissing) { + return null; + } else { + throw new Error('"' + relativeSource + '" is not in the SourceMap.'); + } + }; + BasicSourceMapConsumer.prototype.generatedPositionFor = function SourceMapConsumer_generatedPositionFor(aArgs) { + var source = util.getArg(aArgs, "source"); + source = this._findSourceIndex(source); + if (source < 0) { + return { + line: null, + column: null, + lastColumn: null + }; + } + var needle = { + source, + originalLine: util.getArg(aArgs, "line"), + originalColumn: util.getArg(aArgs, "column") + }; + var index = this._findMapping( + needle, + this._originalMappings, + "originalLine", + "originalColumn", + util.compareByOriginalPositions, + util.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND) + ); + if (index >= 0) { + var mapping = this._originalMappings[index]; + if (mapping.source === needle.source) { + return { + line: util.getArg(mapping, "generatedLine", null), + column: util.getArg(mapping, "generatedColumn", null), + lastColumn: util.getArg(mapping, "lastGeneratedColumn", null) + }; + } + } + return { + line: null, + column: null, + lastColumn: null + }; + }; + exports2.BasicSourceMapConsumer = BasicSourceMapConsumer; + function IndexedSourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === "string") { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + var version2 = util.getArg(sourceMap, "version"); + var sections = util.getArg(sourceMap, "sections"); + if (version2 != this._version) { + throw new Error("Unsupported version: " + version2); + } + this._sources = new ArraySet(); + this._names = new ArraySet(); + var lastOffset = { + line: -1, + column: 0 + }; + this._sections = sections.map(function(s) { + if (s.url) { + throw new Error("Support for url field in sections not implemented."); + } + var offset = util.getArg(s, "offset"); + var offsetLine = util.getArg(offset, "line"); + var offsetColumn = util.getArg(offset, "column"); + if (offsetLine < lastOffset.line || offsetLine === lastOffset.line && offsetColumn < lastOffset.column) { + throw new Error("Section offsets must be ordered and non-overlapping."); + } + lastOffset = offset; + return { + generatedOffset: { + // The offset fields are 0-based, but we use 1-based indices when + // encoding/decoding from VLQ. + generatedLine: offsetLine + 1, + generatedColumn: offsetColumn + 1 + }, + consumer: new SourceMapConsumer(util.getArg(s, "map"), aSourceMapURL) + }; + }); + } + IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); + IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer; + IndexedSourceMapConsumer.prototype._version = 3; + Object.defineProperty(IndexedSourceMapConsumer.prototype, "sources", { + get: function() { + var sources = []; + for (var i = 0; i < this._sections.length; i++) { + for (var j = 0; j < this._sections[i].consumer.sources.length; j++) { + sources.push(this._sections[i].consumer.sources[j]); + } + } + return sources; + } + }); + IndexedSourceMapConsumer.prototype.originalPositionFor = function IndexedSourceMapConsumer_originalPositionFor(aArgs) { + var needle = { + generatedLine: util.getArg(aArgs, "line"), + generatedColumn: util.getArg(aArgs, "column") + }; + var sectionIndex = binarySearch.search( + needle, + this._sections, + function(needle2, section2) { + var cmp = needle2.generatedLine - section2.generatedOffset.generatedLine; + if (cmp) { + return cmp; + } + return needle2.generatedColumn - section2.generatedOffset.generatedColumn; + } + ); + var section = this._sections[sectionIndex]; + if (!section) { + return { + source: null, + line: null, + column: null, + name: null + }; + } + return section.consumer.originalPositionFor({ + line: needle.generatedLine - (section.generatedOffset.generatedLine - 1), + column: needle.generatedColumn - (section.generatedOffset.generatedLine === needle.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), + bias: aArgs.bias + }); + }; + IndexedSourceMapConsumer.prototype.hasContentsOfAllSources = function IndexedSourceMapConsumer_hasContentsOfAllSources() { + return this._sections.every(function(s) { + return s.consumer.hasContentsOfAllSources(); + }); + }; + IndexedSourceMapConsumer.prototype.sourceContentFor = function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + var content = section.consumer.sourceContentFor(aSource, true); + if (content) { + return content; + } + } + if (nullOnMissing) { + return null; + } else { + throw new Error('"' + aSource + '" is not in the SourceMap.'); + } + }; + IndexedSourceMapConsumer.prototype.generatedPositionFor = function IndexedSourceMapConsumer_generatedPositionFor(aArgs) { + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + if (section.consumer._findSourceIndex(util.getArg(aArgs, "source")) === -1) { + continue; + } + var generatedPosition = section.consumer.generatedPositionFor(aArgs); + if (generatedPosition) { + var ret = { + line: generatedPosition.line + (section.generatedOffset.generatedLine - 1), + column: generatedPosition.column + (section.generatedOffset.generatedLine === generatedPosition.line ? section.generatedOffset.generatedColumn - 1 : 0) + }; + return ret; + } + } + return { + line: null, + column: null + }; + }; + IndexedSourceMapConsumer.prototype._parseMappings = function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) { + this.__generatedMappings = []; + this.__originalMappings = []; + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + var sectionMappings = section.consumer._generatedMappings; + for (var j = 0; j < sectionMappings.length; j++) { + var mapping = sectionMappings[j]; + var source = section.consumer._sources.at(mapping.source); + source = util.computeSourceURL(section.consumer.sourceRoot, source, this._sourceMapURL); + this._sources.add(source); + source = this._sources.indexOf(source); + var name = null; + if (mapping.name) { + name = section.consumer._names.at(mapping.name); + this._names.add(name); + name = this._names.indexOf(name); + } + var adjustedMapping = { + source, + generatedLine: mapping.generatedLine + (section.generatedOffset.generatedLine - 1), + generatedColumn: mapping.generatedColumn + (section.generatedOffset.generatedLine === mapping.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), + originalLine: mapping.originalLine, + originalColumn: mapping.originalColumn, + name + }; + this.__generatedMappings.push(adjustedMapping); + if (typeof adjustedMapping.originalLine === "number") { + this.__originalMappings.push(adjustedMapping); + } + } + } + quickSort(this.__generatedMappings, util.compareByGeneratedPositionsDeflated); + quickSort(this.__originalMappings, util.compareByOriginalPositions); + }; + exports2.IndexedSourceMapConsumer = IndexedSourceMapConsumer; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-node.js +var require_source_node = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/lib/source-node.js"(exports2) { + var SourceMapGenerator = require_source_map_generator().SourceMapGenerator; + var util = require_util4(); + var REGEX_NEWLINE = /(\r?\n)/; + var NEWLINE_CODE = 10; + var isSourceNode = "$$$isSourceNode$$$"; + function SourceNode(aLine, aColumn, aSource, aChunks, aName) { + this.children = []; + this.sourceContents = {}; + this.line = aLine == null ? null : aLine; + this.column = aColumn == null ? null : aColumn; + this.source = aSource == null ? null : aSource; + this.name = aName == null ? null : aName; + this[isSourceNode] = true; + if (aChunks != null) + this.add(aChunks); + } + SourceNode.fromStringWithSourceMap = function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) { + var node = new SourceNode(); + var remainingLines = aGeneratedCode.split(REGEX_NEWLINE); + var remainingLinesIndex = 0; + var shiftNextLine = function() { + var lineContents = getNextLine(); + var newLine = getNextLine() || ""; + return lineContents + newLine; + function getNextLine() { + return remainingLinesIndex < remainingLines.length ? remainingLines[remainingLinesIndex++] : void 0; + } + }; + var lastGeneratedLine = 1, lastGeneratedColumn = 0; + var lastMapping = null; + aSourceMapConsumer.eachMapping(function(mapping) { + if (lastMapping !== null) { + if (lastGeneratedLine < mapping.generatedLine) { + addMappingWithCode(lastMapping, shiftNextLine()); + lastGeneratedLine++; + lastGeneratedColumn = 0; + } else { + var nextLine = remainingLines[remainingLinesIndex] || ""; + var code = nextLine.substr(0, mapping.generatedColumn - lastGeneratedColumn); + remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn - lastGeneratedColumn); + lastGeneratedColumn = mapping.generatedColumn; + addMappingWithCode(lastMapping, code); + lastMapping = mapping; + return; + } + } + while (lastGeneratedLine < mapping.generatedLine) { + node.add(shiftNextLine()); + lastGeneratedLine++; + } + if (lastGeneratedColumn < mapping.generatedColumn) { + var nextLine = remainingLines[remainingLinesIndex] || ""; + node.add(nextLine.substr(0, mapping.generatedColumn)); + remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn); + lastGeneratedColumn = mapping.generatedColumn; + } + lastMapping = mapping; + }, this); + if (remainingLinesIndex < remainingLines.length) { + if (lastMapping) { + addMappingWithCode(lastMapping, shiftNextLine()); + } + node.add(remainingLines.splice(remainingLinesIndex).join("")); + } + aSourceMapConsumer.sources.forEach(function(sourceFile) { + var content = aSourceMapConsumer.sourceContentFor(sourceFile); + if (content != null) { + if (aRelativePath != null) { + sourceFile = util.join(aRelativePath, sourceFile); + } + node.setSourceContent(sourceFile, content); + } + }); + return node; + function addMappingWithCode(mapping, code) { + if (mapping === null || mapping.source === void 0) { + node.add(code); + } else { + var source = aRelativePath ? util.join(aRelativePath, mapping.source) : mapping.source; + node.add(new SourceNode( + mapping.originalLine, + mapping.originalColumn, + source, + code, + mapping.name + )); + } + } + }; + SourceNode.prototype.add = function SourceNode_add(aChunk) { + if (Array.isArray(aChunk)) { + aChunk.forEach(function(chunk) { + this.add(chunk); + }, this); + } else if (aChunk[isSourceNode] || typeof aChunk === "string") { + if (aChunk) { + this.children.push(aChunk); + } + } else { + throw new TypeError( + "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk + ); + } + return this; + }; + SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) { + if (Array.isArray(aChunk)) { + for (var i = aChunk.length - 1; i >= 0; i--) { + this.prepend(aChunk[i]); + } + } else if (aChunk[isSourceNode] || typeof aChunk === "string") { + this.children.unshift(aChunk); + } else { + throw new TypeError( + "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk + ); + } + return this; + }; + SourceNode.prototype.walk = function SourceNode_walk(aFn) { + var chunk; + for (var i = 0, len = this.children.length; i < len; i++) { + chunk = this.children[i]; + if (chunk[isSourceNode]) { + chunk.walk(aFn); + } else { + if (chunk !== "") { + aFn(chunk, { + source: this.source, + line: this.line, + column: this.column, + name: this.name + }); + } + } + } + }; + SourceNode.prototype.join = function SourceNode_join(aSep) { + var newChildren; + var i; + var len = this.children.length; + if (len > 0) { + newChildren = []; + for (i = 0; i < len - 1; i++) { + newChildren.push(this.children[i]); + newChildren.push(aSep); + } + newChildren.push(this.children[i]); + this.children = newChildren; + } + return this; + }; + SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) { + var lastChild = this.children[this.children.length - 1]; + if (lastChild[isSourceNode]) { + lastChild.replaceRight(aPattern, aReplacement); + } else if (typeof lastChild === "string") { + this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement); + } else { + this.children.push("".replace(aPattern, aReplacement)); + } + return this; + }; + SourceNode.prototype.setSourceContent = function SourceNode_setSourceContent(aSourceFile, aSourceContent) { + this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent; + }; + SourceNode.prototype.walkSourceContents = function SourceNode_walkSourceContents(aFn) { + for (var i = 0, len = this.children.length; i < len; i++) { + if (this.children[i][isSourceNode]) { + this.children[i].walkSourceContents(aFn); + } + } + var sources = Object.keys(this.sourceContents); + for (var i = 0, len = sources.length; i < len; i++) { + aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]); + } + }; + SourceNode.prototype.toString = function SourceNode_toString() { + var str = ""; + this.walk(function(chunk) { + str += chunk; + }); + return str; + }; + SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) { + var generated = { + code: "", + line: 1, + column: 0 + }; + var map = new SourceMapGenerator(aArgs); + var sourceMappingActive = false; + var lastOriginalSource = null; + var lastOriginalLine = null; + var lastOriginalColumn = null; + var lastOriginalName = null; + this.walk(function(chunk, original) { + generated.code += chunk; + if (original.source !== null && original.line !== null && original.column !== null) { + if (lastOriginalSource !== original.source || lastOriginalLine !== original.line || lastOriginalColumn !== original.column || lastOriginalName !== original.name) { + map.addMapping({ + source: original.source, + original: { + line: original.line, + column: original.column + }, + generated: { + line: generated.line, + column: generated.column + }, + name: original.name + }); + } + lastOriginalSource = original.source; + lastOriginalLine = original.line; + lastOriginalColumn = original.column; + lastOriginalName = original.name; + sourceMappingActive = true; + } else if (sourceMappingActive) { + map.addMapping({ + generated: { + line: generated.line, + column: generated.column + } + }); + lastOriginalSource = null; + sourceMappingActive = false; + } + for (var idx = 0, length = chunk.length; idx < length; idx++) { + if (chunk.charCodeAt(idx) === NEWLINE_CODE) { + generated.line++; + generated.column = 0; + if (idx + 1 === length) { + lastOriginalSource = null; + sourceMappingActive = false; + } else if (sourceMappingActive) { + map.addMapping({ + source: original.source, + original: { + line: original.line, + column: original.column + }, + generated: { + line: generated.line, + column: generated.column + }, + name: original.name + }); + } + } else { + generated.column++; + } + } + }); + this.walkSourceContents(function(sourceFile, sourceContent) { + map.setSourceContent(sourceFile, sourceContent); + }); + return { code: generated.code, map }; + }; + exports2.SourceNode = SourceNode; + } +}); + +// ../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/source-map.js +var require_source_map = __commonJS({ + "../node_modules/.pnpm/source-map@0.6.1/node_modules/source-map/source-map.js"(exports2) { + exports2.SourceMapGenerator = require_source_map_generator().SourceMapGenerator; + exports2.SourceMapConsumer = require_source_map_consumer().SourceMapConsumer; + exports2.SourceNode = require_source_node().SourceNode; + } +}); + +// ../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/impl/SyncPromise.js +var require_SyncPromise = __commonJS({ + "../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/impl/SyncPromise.js"(exports2, module2) { + "use strict"; + module2.exports = class SyncPromise { + constructor(fn2) { + try { + fn2( + (x) => { + this.setValue(x, false); + }, + // resolve + (x) => { + this.setValue(x, true); + } + // reject + ); + } catch (e) { + this.setValue(e, true); + } + } + setValue(x, rejected) { + this.val = x instanceof SyncPromise ? x.val : x; + this.rejected = rejected || (x instanceof SyncPromise ? x.rejected : false); + } + static valueFrom(x) { + if (x instanceof SyncPromise) { + if (x.rejected) + throw x.val; + else + return x.val; + } else { + return x; + } + } + then(fn2) { + try { + if (!this.rejected) + return SyncPromise.resolve(fn2(this.val)); + } catch (e) { + return SyncPromise.reject(e); + } + return this; + } + catch(fn2) { + try { + if (this.rejected) + return SyncPromise.resolve(fn2(this.val)); + } catch (e) { + return SyncPromise.reject(e); + } + return this; + } + static resolve(x) { + return new SyncPromise((resolve) => { + resolve(x); + }); + } + static reject(x) { + return new SyncPromise((_, reject) => { + reject(x); + }); + } + }; + } +}); + +// ../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/impl/path.js +var require_path = __commonJS({ + "../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/impl/path.js"(exports2, module2) { + "use strict"; + var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; + var cwd = isBrowser ? window.location.href : process.cwd(); + var urlRegexp = new RegExp("^((https|http)://)?[a-z0-9A-Z]{3}.[a-z0-9A-Z][a-z0-9A-Z]{0,61}?[a-z0-9A-Z].com|net|cn|cc (:s[0-9]{1-4})?/$"); + var path2 = module2.exports = { + concat(a, b) { + const a_endsWithSlash = a[a.length - 1] === "/", b_startsWithSlash = b[0] === "/"; + return a + (a_endsWithSlash || b_startsWithSlash ? "" : "/") + (a_endsWithSlash && b_startsWithSlash ? b.substring(1) : b); + }, + resolve(x) { + if (path2.isAbsolute(x)) { + return path2.normalize(x); + } + return path2.normalize(path2.concat(cwd, x)); + }, + normalize(x) { + let output = [], skip = 0; + x.split("/").reverse().filter((x2) => x2 !== ".").forEach((x2) => { + if (x2 === "..") { + skip++; + } else if (skip === 0) { + output.push(x2); + } else { + skip--; + } + }); + const result2 = output.reverse().join("/"); + return (isBrowser && result2[0] === "/" ? result2[1] === "/" ? window.location.protocol : window.location.origin : "") + result2; + }, + isData: (x) => x.indexOf("data:") === 0, + isURL: (x) => urlRegexp.test(x), + isAbsolute: (x) => x[0] === "/" || /^[^\/]*:/.test(x), + relativeToFile(a, b) { + return path2.isData(a) || path2.isAbsolute(b) ? path2.normalize(b) : path2.normalize(path2.concat(a.split("/").slice(0, -1).join("/"), b)); + } + }; + } +}); + +// ../node_modules/.pnpm/data-uri-to-buffer@2.0.2/node_modules/data-uri-to-buffer/index.js +var require_data_uri_to_buffer = __commonJS({ + "../node_modules/.pnpm/data-uri-to-buffer@2.0.2/node_modules/data-uri-to-buffer/index.js"(exports2, module2) { + "use strict"; + module2.exports = dataUriToBuffer; + function dataUriToBuffer(uri) { + if (!/^data\:/i.test(uri)) { + throw new TypeError( + '`uri` does not appear to be a Data URI (must begin with "data:")' + ); + } + uri = uri.replace(/\r?\n/g, ""); + var firstComma = uri.indexOf(","); + if (-1 === firstComma || firstComma <= 4) { + throw new TypeError("malformed data: URI"); + } + var meta = uri.substring(5, firstComma).split(";"); + var type = meta[0] || "text/plain"; + var typeFull = type; + var base64 = false; + var charset = ""; + for (var i = 1; i < meta.length; i++) { + if ("base64" == meta[i]) { + base64 = true; + } else { + typeFull += ";" + meta[i]; + if (0 == meta[i].indexOf("charset=")) { + charset = meta[i].substring(8); + } + } + } + if (!meta[0] && !charset.length) { + typeFull += ";charset=US-ASCII"; + charset = "US-ASCII"; + } + var data = unescape(uri.substring(firstComma + 1)); + var encoding = base64 ? "base64" : "ascii"; + var buffer = Buffer.from ? Buffer.from(data, encoding) : new Buffer(data, encoding); + buffer.type = type; + buffer.typeFull = typeFull; + buffer.charset = charset; + return buffer; + } + } +}); + +// ../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/get-source.js +var require_get_source = __commonJS({ + "../node_modules/.pnpm/get-source@2.0.12/node_modules/get-source/get-source.js"(exports2, module2) { + "use strict"; + var { assign } = Object; + var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; + var SourceMapConsumer = require_source_map().SourceMapConsumer; + var SyncPromise = require_SyncPromise(); + var path2 = require_path(); + var dataURIToBuffer = require_data_uri_to_buffer(); + var nodeRequire = isBrowser ? null : module2.require; + var memoize = (f) => { + const m = (x) => x in m.cache ? m.cache[x] : m.cache[x] = f(x); + m.forgetEverything = () => { + m.cache = /* @__PURE__ */ Object.create(null); + }; + m.cache = /* @__PURE__ */ Object.create(null); + return m; + }; + function impl(fetchFile, sync) { + const PromiseImpl = sync ? SyncPromise : Promise; + const SourceFileMemoized = memoize((path3) => SourceFile(path3, fetchFile(path3))); + function SourceFile(srcPath, text) { + if (text === void 0) + return SourceFileMemoized(path2.resolve(srcPath)); + return PromiseImpl.resolve(text).then((text2) => { + let file; + let lines; + let resolver; + let _resolve = (loc) => (resolver = resolver || SourceMapResolverFromFetchedFile(file))(loc); + return file = { + path: srcPath, + text: text2, + get lines() { + return lines = lines || text2.split("\n"); + }, + resolve(loc) { + const result2 = _resolve(loc); + if (sync) { + try { + return SyncPromise.valueFrom(result2); + } catch (e) { + return assign({}, loc, { error: e }); + } + } else { + return Promise.resolve(result2); + } + }, + _resolve + }; + }); + } + function SourceMapResolverFromFetchedFile(file) { + const re = /\u0023 sourceMappingURL=(.+)\n?/g; + let lastMatch = void 0; + while (true) { + const match = re.exec(file.text); + if (match) + lastMatch = match; + else + break; + } + const url = lastMatch && lastMatch[1]; + const defaultResolver = (loc) => assign({}, loc, { + sourceFile: file, + sourceLine: file.lines[loc.line - 1] || "" + }); + return url ? SourceMapResolver(file.path, url, defaultResolver) : defaultResolver; + } + function SourceMapResolver(originalFilePath, sourceMapPath, fallbackResolve) { + const srcFile = sourceMapPath.startsWith("data:") ? SourceFile(originalFilePath, dataURIToBuffer(sourceMapPath).toString()) : SourceFile(path2.relativeToFile(originalFilePath, sourceMapPath)); + const parsedMap = srcFile.then((f) => SourceMapConsumer(JSON.parse(f.text))); + const sourceFor = memoize(function sourceFor2(filePath) { + return srcFile.then((f) => { + const fullPath = path2.relativeToFile(f.path, filePath); + return parsedMap.then((x) => SourceFile( + fullPath, + x.sourceContentFor( + filePath, + true + /* return null on missing */ + ) || void 0 + )); + }); + }); + return (loc) => parsedMap.then((x) => { + const originalLoc = x.originalPositionFor(loc); + return originalLoc.source ? sourceFor(originalLoc.source).then( + (x2) => x2._resolve(assign({}, loc, { + line: originalLoc.line, + column: originalLoc.column + 1, + name: originalLoc.name + })) + ) : fallbackResolve(loc); + }).catch((e) => assign(fallbackResolve(loc), { sourceMapError: e })); + } + return assign(function getSource(path3) { + const file = SourceFile(path3); + if (sync) { + try { + return SyncPromise.valueFrom(file); + } catch (e) { + const noFile = { + path: path3, + text: "", + lines: [], + error: e, + resolve(loc) { + return assign({}, loc, { error: e, sourceLine: "", sourceFile: noFile }); + } + }; + return noFile; + } + } + return file; + }, { + resetCache: () => SourceFileMemoized.forgetEverything(), + getCache: () => SourceFileMemoized.cache + }); + } + module2.exports = impl(function fetchFileSync(path3) { + return new SyncPromise((resolve) => { + if (isBrowser) { + let xhr = new XMLHttpRequest(); + xhr.open( + "GET", + path3, + false + /* SYNCHRONOUS XHR FTW :) */ + ); + xhr.send(null); + resolve(xhr.responseText); + } else { + resolve(nodeRequire("fs").readFileSync(path3, { encoding: "utf8" })); + } + }); + }, true); + module2.exports.async = impl(function fetchFileAsync(path3) { + return new Promise((resolve, reject) => { + if (isBrowser) { + let xhr = new XMLHttpRequest(); + xhr.open("GET", path3); + xhr.onreadystatechange = (event) => { + if (xhr.readyState === 4) { + if (xhr.status === 200) { + resolve(xhr.responseText); + } else { + reject(new Error(xhr.statusText)); + } + } + }; + xhr.send(null); + } else { + nodeRequire("fs").readFile(path3, { encoding: "utf8" }, (e, x) => { + e ? reject(e) : resolve(x); + }); + } + }); + }); + } +}); + +// ../node_modules/.pnpm/stacktracey@2.1.8/node_modules/stacktracey/impl/partition.js +var require_partition3 = __commonJS({ + "../node_modules/.pnpm/stacktracey@2.1.8/node_modules/stacktracey/impl/partition.js"(exports2, module2) { + "use strict"; + module2.exports = (arr_, pred) => { + const arr = arr_ || [], spans = []; + let span = { + label: void 0, + items: [arr.first] + }; + arr.forEach((x) => { + const label = pred(x); + if (span.label !== label && span.items.length) { + spans.push(span = { label, items: [x] }); + } else { + span.items.push(x); + } + }); + return spans; + }; + } +}); + +// ../node_modules/.pnpm/printable-characters@1.0.42/node_modules/printable-characters/build/printable-characters.js +var require_printable_characters = __commonJS({ + "../node_modules/.pnpm/printable-characters@1.0.42/node_modules/printable-characters/build/printable-characters.js"(exports2, module2) { + "use strict"; + var _slicedToArray = function() { + function sliceIterator(arr, i) { + var _arr = []; + var _n = true; + var _d = false; + var _e = void 0; + try { + for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + _arr.push(_s.value); + if (i && _arr.length === i) + break; + } + } catch (err) { + _d = true; + _e = err; + } finally { + try { + if (!_n && _i["return"]) + _i["return"](); + } finally { + if (_d) + throw _e; + } + } + return _arr; + } + return function(arr, i) { + if (Array.isArray(arr)) { + return arr; + } else if (Symbol.iterator in Object(arr)) { + return sliceIterator(arr, i); + } else { + throw new TypeError("Invalid attempt to destructure non-iterable instance"); + } + }; + }(); + var ansiEscapeCode = "[\x1B\x9B][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]"; + var zeroWidthCharacterExceptNewline = "\0-\b\v-\x1B\x9B\xAD\u200B\u2028\u2029\uFEFF\uFE00-\uFE0F"; + var zeroWidthCharacter = "\n" + zeroWidthCharacterExceptNewline; + var zeroWidthCharactersExceptNewline = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacterExceptNewline + "]", "g"); + var zeroWidthCharacters = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacter + "]", "g"); + var partition = new RegExp("((?:" + ansiEscapeCode + ")|[ " + zeroWidthCharacter + "])?([^ " + zeroWidthCharacter + "]*)", "g"); + module2.exports = { + zeroWidthCharacters, + ansiEscapeCodes: new RegExp(ansiEscapeCode, "g"), + strlen: (s) => Array.from(s.replace(zeroWidthCharacters, "")).length, + // Array.from solves the emoji problem as described here: http://blog.jonnew.com/posts/poo-dot-length-equals-two + isBlank: (s) => s.replace(zeroWidthCharacters, "").replace(/\s/g, "").length === 0, + blank: (s) => Array.from(s.replace(zeroWidthCharactersExceptNewline, "")).map((x) => x === " " || x === "\n" ? x : " ").join(""), + partition(s) { + for (var m, spans = []; partition.lastIndex !== s.length && (m = partition.exec(s)); ) { + spans.push([m[1] || "", m[2]]); + } + partition.lastIndex = 0; + return spans; + }, + first(s, n) { + let result2 = "", length = 0; + for (const _ref of module2.exports.partition(s)) { + var _ref2 = _slicedToArray(_ref, 2); + const nonPrintable = _ref2[0]; + const printable = _ref2[1]; + const text = Array.from(printable).slice(0, n - length); + result2 += nonPrintable + text.join(""); + length += text.length; + } + return result2; + } + }; + } +}); + +// ../node_modules/.pnpm/as-table@1.0.55/node_modules/as-table/build/as-table.js +var require_as_table = __commonJS({ + "../node_modules/.pnpm/as-table@1.0.55/node_modules/as-table/build/as-table.js"(exports2, module2) { + "use strict"; + function _toConsumableArray(arr) { + if (Array.isArray(arr)) { + for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) + arr2[i] = arr[i]; + return arr2; + } else { + return Array.from(arr); + } + } + var O = Object; + var _require = require_printable_characters(); + var first = _require.first; + var strlen = _require.strlen; + var limit = (s, n) => first(s, n - 1) + "\u2026"; + var asColumns = (rows, cfg_) => { + const zip = (arrs, f) => arrs.reduce((a, b) => b.map((b2, i) => [].concat(_toConsumableArray(a[i] || []), [b2])), []).map((args2) => f.apply(void 0, _toConsumableArray(args2))), cells = rows.map((r) => r.map((c) => c.replace(/\n/g, "\\n"))), cellWidths = cells.map((r) => r.map(strlen)), maxWidths = zip(cellWidths, Math.max), cfg = O.assign({ + delimiter: " ", + minColumnWidths: maxWidths.map((x) => 0), + maxTotalWidth: 0 + }, cfg_), delimiterLength = strlen(cfg.delimiter), totalWidth = maxWidths.reduce((a, b) => a + b, 0), relativeWidths = maxWidths.map((w) => w / totalWidth), maxTotalWidth = cfg.maxTotalWidth - delimiterLength * (maxWidths.length - 1), excessWidth = Math.max(0, totalWidth - maxTotalWidth), computedWidths = zip([cfg.minColumnWidths, maxWidths, relativeWidths], (min, max, relative2) => Math.max(min, Math.floor(max - excessWidth * relative2))), restCellWidths = cellWidths.map((widths) => zip([computedWidths, widths], (a, b) => a - b)); + return zip([cells, restCellWidths], (a, b) => zip([a, b], (str, w) => w >= 0 ? cfg.right ? " ".repeat(w) + str : str + " ".repeat(w) : limit(str, strlen(str) + w)).join(cfg.delimiter)); + }; + var asTable = (cfg) => O.assign((arr) => { + var _ref; + if (arr[0] && Array.isArray(arr[0])) { + return asColumns(arr.map((r) => r.map((c, i) => c === void 0 ? "" : cfg.print(c, i))), cfg).join("\n"); + } + const colNames = [].concat(_toConsumableArray(new Set((_ref = []).concat.apply(_ref, _toConsumableArray(arr.map(O.keys)))))), columns = [colNames.map(cfg.title)].concat(_toConsumableArray(arr.map((o) => colNames.map((key) => o[key] === void 0 ? "" : cfg.print(o[key], key))))), lines = asColumns(columns, cfg); + return (cfg.dash ? [lines[0], cfg.dash.repeat(strlen(lines[0]))].concat(_toConsumableArray(lines.slice(1))) : lines).join("\n"); + }, cfg, { + configure: (newConfig) => asTable(O.assign({}, cfg, newConfig)) + }); + module2.exports = asTable({ + maxTotalWidth: Number.MAX_SAFE_INTEGER, + print: String, + title: String, + dash: "-", + right: false + }); + } +}); + +// ../node_modules/.pnpm/stacktracey@2.1.8/node_modules/stacktracey/stacktracey.js +var require_stacktracey = __commonJS({ + "../node_modules/.pnpm/stacktracey@2.1.8/node_modules/stacktracey/stacktracey.js"(exports2, module2) { + "use strict"; + var O = Object; + var isBrowser = typeof window !== "undefined" && window.window === window && window.navigator; + var nodeRequire = isBrowser ? null : module2.require; + var lastOf = (x) => x[x.length - 1]; + var getSource = require_get_source(); + var partition = require_partition3(); + var asTable = require_as_table(); + var nixSlashes = (x) => x.replace(/\\/g, "/"); + var pathRoot = isBrowser ? window.location.href : nixSlashes(process.cwd()) + "/"; + var StackTracey = class { + constructor(input, offset) { + const originalInput = input, isParseableSyntaxError = input && (input instanceof SyntaxError && !isBrowser); + if (!input) { + input = new Error(); + offset = offset === void 0 ? 1 : offset; + } + if (input instanceof Error) { + input = input.stack || ""; + } + if (typeof input === "string") { + input = this.rawParse(input).slice(offset).map((x) => this.extractEntryMetadata(x)); + } + if (Array.isArray(input)) { + if (isParseableSyntaxError) { + const rawLines = nodeRequire("util").inspect(originalInput).split("\n"), fileLine = rawLines[0].split(":"), line = fileLine.pop(), file = fileLine.join(":"); + if (file) { + input.unshift({ + file: nixSlashes(file), + line, + column: (rawLines[2] || "").indexOf("^") + 1, + sourceLine: rawLines[1], + callee: "(syntax error)", + syntaxError: true + }); + } + } + this.items = input; + } else { + this.items = []; + } + } + extractEntryMetadata(e) { + const decomposedPath = this.decomposePath(e.file || ""); + const fileRelative = decomposedPath[0]; + const externalDomain = decomposedPath[1]; + return O.assign(e, { + calleeShort: e.calleeShort || lastOf((e.callee || "").split(".")), + fileRelative, + fileShort: this.shortenPath(fileRelative), + fileName: lastOf((e.file || "").split("/")), + thirdParty: this.isThirdParty(fileRelative, externalDomain) && !e.index, + externalDomain + }); + } + shortenPath(relativePath) { + return relativePath.replace(/^node_modules\//, "").replace(/^webpack\/bootstrap\//, "").replace(/^__parcel_source_root\//, ""); + } + decomposePath(fullPath) { + let result2 = fullPath; + if (isBrowser) + result2 = result2.replace(pathRoot, ""); + const externalDomainMatch = result2.match(/^(http|https)\:\/\/?([^\/]+)\/(.*)/); + const externalDomain = externalDomainMatch ? externalDomainMatch[2] : void 0; + result2 = externalDomainMatch ? externalDomainMatch[3] : result2; + if (!isBrowser) + result2 = nodeRequire("path").relative(pathRoot, result2); + return [ + nixSlashes(result2).replace(/^.*\:\/\/?\/?/, ""), + // cut webpack:/// and webpack:/ things + externalDomain + ]; + } + isThirdParty(relativePath, externalDomain) { + return externalDomain || relativePath[0] === "~" || // webpack-specific heuristic + relativePath[0] === "/" || // external source + relativePath.indexOf("node_modules") === 0 || relativePath.indexOf("webpack/bootstrap") === 0; + } + rawParse(str) { + const lines = (str || "").split("\n"); + const entries = lines.map((line) => { + line = line.trim(); + let callee, fileLineColumn = [], native, planA, planB; + if ((planA = line.match(/at (.+) \(eval at .+ \((.+)\), .+\)/)) || // eval calls + (planA = line.match(/at (.+) \((.+)\)/)) || line.slice(0, 3) !== "at " && (planA = line.match(/(.*)@(.*)/))) { + callee = planA[1]; + native = planA[2] === "native"; + fileLineColumn = (planA[2].match(/(.*):(\d+):(\d+)/) || planA[2].match(/(.*):(\d+)/) || []).slice(1); + } else if (planB = line.match(/^(at\s+)*(.+):(\d+):(\d+)/)) { + fileLineColumn = planB.slice(2); + } else { + return void 0; + } + if (callee && !fileLineColumn[0]) { + const type = callee.split(".")[0]; + if (type === "Array") { + native = true; + } + } + return { + beforeParse: line, + callee: callee || "", + index: isBrowser && fileLineColumn[0] === window.location.href, + native: native || false, + file: nixSlashes(fileLineColumn[0] || ""), + line: parseInt(fileLineColumn[1] || "", 10) || void 0, + column: parseInt(fileLineColumn[2] || "", 10) || void 0 + }; + }); + return entries.filter((x) => x !== void 0); + } + withSourceAt(i) { + return this.items[i] && this.withSource(this.items[i]); + } + withSourceAsyncAt(i) { + return this.items[i] && this.withSourceAsync(this.items[i]); + } + withSource(loc) { + if (this.shouldSkipResolving(loc)) { + return loc; + } else { + let resolved = getSource(loc.file || "").resolve(loc); + if (!resolved.sourceFile) { + return loc; + } + return this.withSourceResolved(loc, resolved); + } + } + withSourceAsync(loc) { + if (this.shouldSkipResolving(loc)) { + return Promise.resolve(loc); + } else { + return getSource.async(loc.file || "").then((x) => x.resolve(loc)).then((resolved) => this.withSourceResolved(loc, resolved)).catch((e) => this.withSourceResolved(loc, { error: e, sourceLine: "" })); + } + } + shouldSkipResolving(loc) { + return loc.sourceFile || loc.error || loc.file && loc.file.indexOf("<") >= 0; + } + withSourceResolved(loc, resolved) { + if (resolved.sourceFile && !resolved.sourceFile.error) { + resolved.file = nixSlashes(resolved.sourceFile.path); + resolved = this.extractEntryMetadata(resolved); + } + if (resolved.sourceLine.includes("// @hide")) { + resolved.sourceLine = resolved.sourceLine.replace("// @hide", ""); + resolved.hide = true; + } + if (resolved.sourceLine.includes("__webpack_require__") || // webpack-specific heuristics + resolved.sourceLine.includes("/******/ ({")) { + resolved.thirdParty = true; + } + return O.assign({ sourceLine: "" }, loc, resolved); + } + withSources() { + return this.map((x) => this.withSource(x)); + } + withSourcesAsync() { + return Promise.all(this.items.map((x) => this.withSourceAsync(x))).then((items) => new StackTracey(items)); + } + mergeRepeatedLines() { + return new StackTracey( + partition(this.items, (e) => e.file + e.line).map( + (group) => { + return group.items.slice(1).reduce((memo, entry) => { + memo.callee = (memo.callee || "") + " \u2192 " + (entry.callee || ""); + memo.calleeShort = (memo.calleeShort || "") + " \u2192 " + (entry.calleeShort || ""); + return memo; + }, O.assign({}, group.items[0])); + } + ) + ); + } + clean() { + const s = this.withSources().mergeRepeatedLines(); + return s.filter(s.isClean.bind(s)); + } + cleanAsync() { + return this.withSourcesAsync().then((s) => { + s = s.mergeRepeatedLines(); + return s.filter(s.isClean.bind(s)); + }); + } + isClean(entry, index) { + return index === 0 || !(entry.thirdParty || entry.hide || entry.native); + } + at(i) { + return O.assign({ + beforeParse: "", + callee: "", + index: false, + native: false, + file: "", + line: 0, + column: 0 + }, this.items[i]); + } + asTable(opts) { + const maxColumnWidths = opts && opts.maxColumnWidths || this.maxColumnWidths(); + const trimEnd = (s, n) => s && (s.length > n ? s.slice(0, n - 1) + "\u2026" : s); + const trimStart = (s, n) => s && (s.length > n ? "\u2026" + s.slice(-(n - 1)) : s); + const trimmed = this.map( + (e) => [ + "at " + trimEnd(e.calleeShort, maxColumnWidths.callee), + trimStart(e.fileShort && e.fileShort + ":" + e.line || "", maxColumnWidths.file), + trimEnd((e.sourceLine || "").trim() || "", maxColumnWidths.sourceLine) + ] + ); + return asTable(trimmed.items); + } + maxColumnWidths() { + return { + callee: 30, + file: 60, + sourceLine: 80 + }; + } + static resetCache() { + getSource.resetCache(); + getSource.async.resetCache(); + } + static locationsEqual(a, b) { + return a.file === b.file && a.line === b.line && a.column === b.column; + } + }; + ["map", "filter", "slice", "concat"].forEach((method) => { + StackTracey.prototype[method] = function() { + return new StackTracey(this.items[method].apply(this.items, arguments)); + }; + }); + module2.exports = StackTracey; + } +}); + +// ../cli/default-reporter/lib/reportError.js +var require_reportError = __commonJS({ + "../cli/default-reporter/lib/reportError.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportError = void 0; + var render_peer_issues_1 = require_lib22(); + var chalk_1 = __importDefault4(require_source()); + var equals_1 = __importDefault4(require_equals2()); + var stacktracey_1 = __importDefault4(require_stacktracey()); + var constants_1 = require_constants2(); + stacktracey_1.default.maxColumnWidths = { + callee: 25, + file: 350, + sourceLine: 25 + }; + var highlight = chalk_1.default.yellow; + var colorPath = chalk_1.default.gray; + function reportError(logObj, config) { + const errorInfo = getErrorInfo(logObj, config); + let output = formatErrorSummary(errorInfo.title, logObj["err"]["code"]); + if (logObj["pkgsStack"] != null) { + if (logObj["pkgsStack"].length > 0) { + output += ` + +${formatPkgsStack(logObj["pkgsStack"])}`; + } else if (logObj["prefix"]) { + output += ` + +This error happened while installing a direct dependency of ${logObj["prefix"]}`; + } + } + if (errorInfo.body) { + output += ` + +${errorInfo.body}`; + } + return output; + } + exports2.reportError = reportError; + function getErrorInfo(logObj, config) { + if (logObj["err"]) { + const err = logObj["err"]; + switch (err.code) { + case "ERR_PNPM_UNEXPECTED_STORE": + return reportUnexpectedStore(err, logObj); + case "ERR_PNPM_UNEXPECTED_VIRTUAL_STORE": + return reportUnexpectedVirtualStoreDir(err, logObj); + case "ERR_PNPM_STORE_BREAKING_CHANGE": + return reportStoreBreakingChange(logObj); + case "ERR_PNPM_MODULES_BREAKING_CHANGE": + return reportModulesBreakingChange(logObj); + case "ERR_PNPM_MODIFIED_DEPENDENCY": + return reportModifiedDependency(logObj); + case "ERR_PNPM_LOCKFILE_BREAKING_CHANGE": + return reportLockfileBreakingChange(err, logObj); + case "ERR_PNPM_RECURSIVE_RUN_NO_SCRIPT": + return { title: err.message }; + case "ERR_PNPM_NO_MATCHING_VERSION": + return formatNoMatchingVersion(err, logObj); + case "ERR_PNPM_RECURSIVE_FAIL": + return formatRecursiveCommandSummary(logObj); + case "ERR_PNPM_BAD_TARBALL_SIZE": + return reportBadTarballSize(err, logObj); + case "ELIFECYCLE": + return reportLifecycleError(logObj); + case "ERR_PNPM_UNSUPPORTED_ENGINE": + return reportEngineError(logObj); + case "ERR_PNPM_PEER_DEP_ISSUES": + return reportPeerDependencyIssuesError(err, logObj); + case "ERR_PNPM_FETCH_401": + case "ERR_PNPM_FETCH_403": + return reportAuthError(err, logObj, config); + default: { + if (!err.code?.startsWith?.("ERR_PNPM_")) { + return formatGenericError(err.message ?? logObj["message"], err.stack); + } + return { + title: err.message ?? "", + body: logObj["hint"] + }; + } + } + } + return { title: logObj["message"] }; + } + function formatPkgsStack(pkgsStack) { + return `This error happened while installing the dependencies of ${pkgsStack[0].name}@${pkgsStack[0].version}${pkgsStack.slice(1).map(({ name, version: version2 }) => `${constants_1.EOL} at ${name}@${version2}`).join("")}`; + } + function formatNoMatchingVersion(err, msg) { + const meta = msg["packageMeta"]; + let output = `The latest release of ${meta.name} is "${meta["dist-tags"].latest}".${constants_1.EOL}`; + if (!(0, equals_1.default)(Object.keys(meta["dist-tags"]), ["latest"])) { + output += constants_1.EOL + "Other releases are:" + constants_1.EOL; + for (const tag in meta["dist-tags"]) { + if (tag !== "latest") { + output += ` * ${tag}: ${meta["dist-tags"][tag]}${constants_1.EOL}`; + } + } + } + output += `${constants_1.EOL}If you need the full list of all ${Object.keys(meta.versions).length} published versions run "$ pnpm view ${meta.name} versions".`; + return { + title: err.message, + body: output + }; + } + function reportUnexpectedStore(err, msg) { + return { + title: err.message, + body: `The dependencies at "${msg.modulesDir}" are currently linked from the store at "${msg.expectedStorePath}". + +pnpm now wants to use the store at "${msg.actualStorePath}" to link dependencies. + +If you want to use the new store location, reinstall your dependencies with "pnpm install". + +You may change the global store location by running "pnpm config set store-dir --global". +(This error may happen if the node_modules was installed with a different major version of pnpm)` + }; + } + function reportUnexpectedVirtualStoreDir(err, msg) { + return { + title: err.message, + body: `The dependencies at "${msg.modulesDir}" are currently symlinked from the virtual store directory at "${msg.expected}". + +pnpm now wants to use the virtual store at "${msg.actual}" to link dependencies from the store. + +If you want to use the new virtual store location, reinstall your dependencies with "pnpm install". + +You may change the virtual store location by changing the value of the virtual-store-dir config.` + }; + } + function reportStoreBreakingChange(msg) { + let output = `Store path: ${colorPath(msg.storePath)} + +Run "pnpm install" to recreate node_modules.`; + if (msg.additionalInformation) { + output = `${output}${constants_1.EOL}${constants_1.EOL}${msg.additionalInformation}`; + } + output += formatRelatedSources(msg); + return { + title: "The store used for the current node_modules is incompatible with the current version of pnpm", + body: output + }; + } + function reportModulesBreakingChange(msg) { + let output = `node_modules path: ${colorPath(msg.modulesPath)} + +Run ${highlight("pnpm install")} to recreate node_modules.`; + if (msg.additionalInformation) { + output = `${output}${constants_1.EOL}${constants_1.EOL}${msg.additionalInformation}`; + } + output += formatRelatedSources(msg); + return { + title: "The current version of pnpm is not compatible with the available node_modules structure", + body: output + }; + } + function formatRelatedSources(msg) { + let output = ""; + if (!msg.relatedIssue && !msg.relatedPR) + return output; + output += constants_1.EOL; + if (msg.relatedIssue) { + output += constants_1.EOL + `Related issue: ${colorPath(`https://github.com/pnpm/pnpm/issues/${msg.relatedIssue}`)}`; + } + if (msg.relatedPR) { + output += constants_1.EOL + `Related PR: ${colorPath(`https://github.com/pnpm/pnpm/pull/${msg.relatedPR}`)}`; + } + return output; + } + function formatGenericError(errorMessage, stack2) { + if (stack2) { + let prettyStack; + try { + prettyStack = new stacktracey_1.default(stack2).asTable(); + } catch (err) { + prettyStack = stack2.toString(); + } + if (prettyStack) { + return { + title: errorMessage, + body: prettyStack + }; + } + } + return { title: errorMessage }; + } + function formatErrorSummary(message2, code) { + return `${chalk_1.default.bgRed.black(`\u2009${code ?? "ERROR"}\u2009`)} ${chalk_1.default.red(message2)}`; + } + function reportModifiedDependency(msg) { + return { + title: "Packages in the store have been mutated", + body: `These packages are modified: +${msg.modified.map((pkgPath) => colorPath(pkgPath)).join(constants_1.EOL)} + +You can run ${highlight("pnpm install --force")} to refetch the modified packages` + }; + } + function reportLockfileBreakingChange(err, msg) { + return { + title: err.message, + body: `Run with the ${highlight("--force")} parameter to recreate the lockfile.` + }; + } + function formatRecursiveCommandSummary(msg) { + const output = constants_1.EOL + `Summary: ${chalk_1.default.red(`${msg.failures.length} fails`)}, ${msg.passes} passes` + constants_1.EOL + constants_1.EOL + msg.failures.map(({ message: message2, prefix }) => { + return prefix + ":" + constants_1.EOL + formatErrorSummary(message2); + }).join(constants_1.EOL + constants_1.EOL); + return { + title: "", + body: output + }; + } + function reportBadTarballSize(err, msg) { + return { + title: err.message, + body: `Seems like you have internet connection issues. +Try running the same command again. +If that doesn't help, try one of the following: + +- Set a bigger value for the \`fetch-retries\` config. + To check the current value of \`fetch-retries\`, run \`pnpm get fetch-retries\`. + To set a new value, run \`pnpm set fetch-retries \`. + +- Set \`network-concurrency\` to 1. + This change will slow down installation times, so it is recommended to + delete the config once the internet connection is good again: \`pnpm config delete network-concurrency\` + +NOTE: You may also override configs via flags. +For instance, \`pnpm install --fetch-retries 5 --network-concurrency 1\`` + }; + } + function reportLifecycleError(msg) { + if (msg.stage === "test") { + return { title: "Test failed. See above for more details." }; + } + if (typeof msg.errno === "number") { + return { title: `Command failed with exit code ${msg.errno}.` }; + } + return { title: "Command failed." }; + } + function reportEngineError(msg) { + let output = ""; + if (msg.wanted.pnpm) { + output += `Your pnpm version is incompatible with "${msg.packageId}". + +Expected version: ${msg.wanted.pnpm} +Got: ${msg.current.pnpm} + +This is happening because the package's manifest has an engines.pnpm field specified. +To fix this issue, install the required pnpm version globally. + +To install the latest version of pnpm, run "pnpm i -g pnpm". +To check your pnpm version, run "pnpm -v".`; + } + if (msg.wanted.node) { + if (output) + output += constants_1.EOL + constants_1.EOL; + output += `Your Node version is incompatible with "${msg.packageId}". + +Expected version: ${msg.wanted.node} +Got: ${msg.current.node} + +This is happening because the package's manifest has an engines.node field specified. +To fix this issue, install the required Node version.`; + } + return { + title: "Unsupported environment (bad pnpm and/or Node.js version)", + body: output + }; + } + function reportAuthError(err, msg, config) { + const foundSettings = []; + for (const [key, value] of Object.entries(config?.rawConfig ?? {})) { + if (key.startsWith("@")) { + foundSettings.push(`${key}=${value}`); + continue; + } + if (key.endsWith("_auth") || key.endsWith("_authToken") || key.endsWith("username") || key.endsWith("_password")) { + foundSettings.push(`${key}=${hideSecureInfo(key, value)}`); + } + } + let output = msg.hint ? `${msg.hint}${constants_1.EOL}${constants_1.EOL}` : ""; + if (foundSettings.length === 0) { + output += `No authorization settings were found in the configs. +Try to log in to the registry by running "pnpm login" +or add the auth tokens manually to the ~/.npmrc file.`; + } else { + output += `These authorization settings were found: +${foundSettings.join("\n")}`; + } + return { + title: err.message, + body: output + }; + } + function hideSecureInfo(key, value) { + if (key.endsWith("_password")) + return "[hidden]"; + if (key.endsWith("_auth") || key.endsWith("_authToken")) + return `${value.substring(0, 4)}[hidden]`; + return value; + } + function reportPeerDependencyIssuesError(err, msg) { + const hasMissingPeers = getHasMissingPeers(msg.issuesByProjects); + const hints = []; + if (hasMissingPeers) { + hints.push('If you want peer dependencies to be automatically installed, add "auto-install-peers=true" to an .npmrc file at the root of your project.'); + } + hints.push(`If you don't want pnpm to fail on peer dependency issues, add "strict-peer-dependencies=false" to an .npmrc file at the root of your project.`); + return { + title: err.message, + body: `${(0, render_peer_issues_1.renderPeerIssues)(msg.issuesByProjects)} +${hints.map((hint) => `hint: ${hint}`).join("\n")} +` + }; + } + function getHasMissingPeers(issuesByProjects) { + return Object.values(issuesByProjects).some((issues) => Object.values(issues.missing).flat().some(({ optional }) => !optional)); + } + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportMisc.js +var require_reportMisc = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportMisc.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportMisc = exports2.LOG_LEVEL_NUMBER = void 0; + var os_1 = __importDefault4(require("os")); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var reportError_1 = require_reportError(); + var formatWarn_1 = require_formatWarn(); + var zooming_1 = require_zooming(); + exports2.LOG_LEVEL_NUMBER = { + error: 0, + warn: 1, + info: 2, + debug: 3 + }; + var MAX_SHOWN_WARNINGS = 5; + function reportMisc(log$, opts) { + const maxLogLevel = exports2.LOG_LEVEL_NUMBER[opts.logLevel ?? "info"] ?? exports2.LOG_LEVEL_NUMBER["info"]; + const reportWarning = makeWarningReporter(opts); + return Rx.merge(log$.registry, log$.other).pipe((0, operators_1.filter)((obj) => exports2.LOG_LEVEL_NUMBER[obj.level] <= maxLogLevel && (obj.level !== "info" || !obj["prefix"] || obj["prefix"] === opts.cwd)), (0, operators_1.map)((obj) => { + switch (obj.level) { + case "warn": { + return reportWarning(obj); + } + case "error": + if (obj["prefix"] && obj["prefix"] !== opts.cwd) { + return Rx.of({ + msg: `${obj["prefix"]}:` + os_1.default.EOL + (0, reportError_1.reportError)(obj, opts.config) + }); + } + return Rx.of({ msg: (0, reportError_1.reportError)(obj, opts.config) }); + default: + return Rx.of({ msg: obj["message"] }); + } + })); + } + exports2.reportMisc = reportMisc; + function makeWarningReporter(opts) { + let warningsCounter = 0; + let collapsedWarnings; + return (obj) => { + warningsCounter++; + if (opts.appendOnly || warningsCounter <= MAX_SHOWN_WARNINGS) { + return Rx.of({ msg: (0, zooming_1.autozoom)(opts.cwd, obj.prefix, (0, formatWarn_1.formatWarn)(obj.message), opts) }); + } + const warningMsg = (0, formatWarn_1.formatWarn)(`${warningsCounter - MAX_SHOWN_WARNINGS} other warnings`); + if (!collapsedWarnings) { + collapsedWarnings = new Rx.Subject(); + setTimeout(() => { + collapsedWarnings.next({ msg: warningMsg }); + }, 0); + return Rx.from(collapsedWarnings); + } + setTimeout(() => { + collapsedWarnings.next({ msg: warningMsg }); + }, 0); + return Rx.NEVER; + }; + } + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportPeerDependencyIssues.js +var require_reportPeerDependencyIssues = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportPeerDependencyIssues.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportPeerDependencyIssues = void 0; + var render_peer_issues_1 = require_lib22(); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var formatWarn_1 = require_formatWarn(); + function reportPeerDependencyIssues(log$) { + return log$.peerDependencyIssues.pipe((0, operators_1.take)(1), (0, operators_1.map)((log2) => Rx.of({ + msg: `${(0, formatWarn_1.formatWarn)("Issues with peer dependencies found")} +${(0, render_peer_issues_1.renderPeerIssues)(log2.issuesByProjects)}` + }))); + } + exports2.reportPeerDependencyIssues = reportPeerDependencyIssues; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportProgress.js +var require_reportProgress = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportProgress.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportProgress = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var outputConstants_1 = require_outputConstants(); + var zooming_1 = require_zooming(); + function reportProgress(log$, opts) { + const progressOutput = throttledProgressOutput.bind(null, opts.throttle); + return getModulesInstallProgress$(log$.stage, log$.progress).pipe((0, operators_1.map)(({ importingDone$, progress$, requirer }) => { + const output$ = progressOutput(importingDone$, progress$); + if (requirer === opts.cwd) { + return output$; + } + return output$.pipe((0, operators_1.map)((msg) => { + msg["msg"] = (0, zooming_1.zoomOut)(opts.cwd, requirer, msg["msg"]); + return msg; + })); + })); + } + exports2.reportProgress = reportProgress; + function throttledProgressOutput(throttle, importingDone$, progress$) { + let combinedProgress = Rx.combineLatest(progress$, importingDone$).pipe((0, operators_1.takeWhile)(([, importingDone]) => !importingDone, true)); + if (throttle != null) { + combinedProgress = combinedProgress.pipe(throttle); + } + return combinedProgress.pipe((0, operators_1.map)(createStatusMessage)); + } + function getModulesInstallProgress$(stage$, progress$) { + const modulesInstallProgressPushStream = new Rx.Subject(); + const progessStatsPushStreamByRequirer = getProgressStatsPushStreamByRequirer(progress$); + const stagePushStreamByRequirer = {}; + stage$.forEach((log2) => { + if (!stagePushStreamByRequirer[log2.prefix]) { + stagePushStreamByRequirer[log2.prefix] = new Rx.Subject(); + if (!progessStatsPushStreamByRequirer[log2.prefix]) { + progessStatsPushStreamByRequirer[log2.prefix] = new Rx.Subject(); + } + modulesInstallProgressPushStream.next({ + importingDone$: stage$ToImportingDone$(Rx.from(stagePushStreamByRequirer[log2.prefix])), + progress$: Rx.from(progessStatsPushStreamByRequirer[log2.prefix]), + requirer: log2.prefix + }); + } + stagePushStreamByRequirer[log2.prefix].next(log2); + if (log2.stage === "importing_done") { + progessStatsPushStreamByRequirer[log2.prefix].complete(); + stagePushStreamByRequirer[log2.prefix].complete(); + } + }).catch(() => { + }); + return Rx.from(modulesInstallProgressPushStream); + } + function stage$ToImportingDone$(stage$) { + return stage$.pipe((0, operators_1.filter)((log2) => log2.stage === "importing_done"), (0, operators_1.mapTo)(true), (0, operators_1.take)(1), (0, operators_1.startWith)(false)); + } + function getProgressStatsPushStreamByRequirer(progress$) { + const progessStatsPushStreamByRequirer = {}; + const previousProgressStatsByRequirer = {}; + progress$.forEach((log2) => { + if (!previousProgressStatsByRequirer[log2.requester]) { + previousProgressStatsByRequirer[log2.requester] = { + fetched: 0, + imported: 0, + resolved: 0, + reused: 0 + }; + } + switch (log2.status) { + case "resolved": + previousProgressStatsByRequirer[log2.requester].resolved++; + break; + case "fetched": + previousProgressStatsByRequirer[log2.requester].fetched++; + break; + case "found_in_store": + previousProgressStatsByRequirer[log2.requester].reused++; + break; + case "imported": + previousProgressStatsByRequirer[log2.requester].imported++; + break; + } + if (!progessStatsPushStreamByRequirer[log2.requester]) { + progessStatsPushStreamByRequirer[log2.requester] = new Rx.Subject(); + } + progessStatsPushStreamByRequirer[log2.requester].next(previousProgressStatsByRequirer[log2.requester]); + }).catch(() => { + }); + return progessStatsPushStreamByRequirer; + } + function createStatusMessage([progress, importingDone]) { + const msg = `Progress: resolved ${(0, outputConstants_1.hlValue)(progress.resolved.toString())}, reused ${(0, outputConstants_1.hlValue)(progress.reused.toString())}, downloaded ${(0, outputConstants_1.hlValue)(progress.fetched.toString())}, added ${(0, outputConstants_1.hlValue)(progress.imported.toString())}`; + if (importingDone) { + return { + done: true, + fixed: false, + msg: `${msg}, done` + }; + } + return { + fixed: true, + msg + }; + } + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportRequestRetry.js +var require_reportRequestRetry = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportRequestRetry.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportRequestRetry = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var pretty_ms_1 = __importDefault4(require_pretty_ms()); + var formatWarn_1 = require_formatWarn(); + function reportRequestRetry(requestRetry$) { + return requestRetry$.pipe((0, operators_1.map)((log2) => { + const retriesLeft = log2.maxRetries - log2.attempt + 1; + const errorCode = log2.error["httpStatusCode"] || log2.error["status"] || log2.error["errno"] || log2.error["code"]; + const msg = `${log2.method} ${log2.url} error (${errorCode}). Will retry in ${(0, pretty_ms_1.default)(log2.timeout, { verbose: true })}. ${retriesLeft} retries left.`; + return Rx.of({ msg: (0, formatWarn_1.formatWarn)(msg) }); + })); + } + exports2.reportRequestRetry = reportRequestRetry; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportScope.js +var require_reportScope = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportScope.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportScope = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var COMMANDS_THAT_REPORT_SCOPE = /* @__PURE__ */ new Set([ + "install", + "link", + "prune", + "rebuild", + "remove", + "unlink", + "update", + "run", + "test" + ]); + function reportScope(scope$, opts) { + if (!COMMANDS_THAT_REPORT_SCOPE.has(opts.cmd)) { + return Rx.NEVER; + } + return scope$.pipe((0, operators_1.take)(1), (0, operators_1.map)((log2) => { + if (log2.selected === 1) { + return Rx.NEVER; + } + let msg = "Scope: "; + if (log2.selected === log2.total) { + msg += `all ${log2.total}`; + } else { + msg += `${log2.selected}`; + if (log2.total) { + msg += ` of ${log2.total}`; + } + } + if (log2.workspacePrefix) { + msg += " workspace projects"; + } else { + msg += " projects"; + } + return Rx.of({ msg }); + })); + } + exports2.reportScope = reportScope; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js +var require_reportSkippedOptionalDependencies = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportSkippedOptionalDependencies = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + function reportSkippedOptionalDependencies(skippedOptionalDependency$, opts) { + return skippedOptionalDependency$.pipe((0, operators_1.filter)((log2) => Boolean(log2["prefix"] === opts.cwd && log2.parents && log2.parents.length === 0)), (0, operators_1.map)((log2) => Rx.of({ + msg: `info: ${// eslint-disable-next-line @typescript-eslint/restrict-template-expressions + log2.package["id"] || log2.package.name && `${log2.package.name}@${log2.package.version}` || log2.package["pref"]} is an optional dependency and failed compatibility check. Excluding it from installation.` + }))); + } + exports2.reportSkippedOptionalDependencies = reportSkippedOptionalDependencies; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/always.js +var require_always = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/always.js"(exports2, module2) { + var _curry1 = require_curry1(); + var always = /* @__PURE__ */ _curry1(function always2(val) { + return function() { + return val; + }; + }); + module2.exports = always; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/times.js +var require_times = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/times.js"(exports2, module2) { + var _curry2 = require_curry2(); + var times = /* @__PURE__ */ _curry2(function times2(fn2, n) { + var len = Number(n); + var idx = 0; + var list; + if (len < 0 || isNaN(len)) { + throw new RangeError("n must be a non-negative number"); + } + list = new Array(len); + while (idx < len) { + list[idx] = fn2(idx); + idx += 1; + } + return list; + }); + module2.exports = times; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/repeat.js +var require_repeat2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/repeat.js"(exports2, module2) { + var _curry2 = require_curry2(); + var always = require_always(); + var times = require_times(); + var repeat = /* @__PURE__ */ _curry2(function repeat2(value, n) { + return times(always(value), n); + }); + module2.exports = repeat; + } +}); + +// ../node_modules/.pnpm/char-regex@1.0.2/node_modules/char-regex/index.js +var require_char_regex = __commonJS({ + "../node_modules/.pnpm/char-regex@1.0.2/node_modules/char-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = () => { + const astralRange = "\\ud800-\\udfff"; + const comboMarksRange = "\\u0300-\\u036f"; + const comboHalfMarksRange = "\\ufe20-\\ufe2f"; + const comboSymbolsRange = "\\u20d0-\\u20ff"; + const comboMarksExtendedRange = "\\u1ab0-\\u1aff"; + const comboMarksSupplementRange = "\\u1dc0-\\u1dff"; + const comboRange = comboMarksRange + comboHalfMarksRange + comboSymbolsRange + comboMarksExtendedRange + comboMarksSupplementRange; + const varRange = "\\ufe0e\\ufe0f"; + const familyRange = "\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83C\\uDF93"; + const astral = `[${astralRange}]`; + const combo = `[${comboRange}]`; + const fitz = "\\ud83c[\\udffb-\\udfff]"; + const modifier = `(?:${combo}|${fitz})`; + const nonAstral = `[^${astralRange}]`; + const regional = "(?:\\uD83C[\\uDDE6-\\uDDFF]){2}"; + const surrogatePair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; + const zwj = "\\u200d"; + const blackFlag = "(?:\\ud83c\\udff4\\udb40\\udc67\\udb40\\udc62\\udb40(?:\\udc65|\\udc73|\\udc77)\\udb40(?:\\udc6e|\\udc63|\\udc6c)\\udb40(?:\\udc67|\\udc74|\\udc73)\\udb40\\udc7f)"; + const family = `[${familyRange}]`; + const optModifier = `${modifier}?`; + const optVar = `[${varRange}]?`; + const optJoin = `(?:${zwj}(?:${[nonAstral, regional, surrogatePair].join("|")})${optVar + optModifier})*`; + const seq = optVar + optModifier + optJoin; + const nonAstralCombo = `${nonAstral}${combo}?`; + const symbol = `(?:${[nonAstralCombo, combo, regional, surrogatePair, astral, family].join("|")})`; + return new RegExp(`${blackFlag}|${fitz}(?=${fitz})|${symbol + seq}`, "g"); + }; + } +}); + +// ../node_modules/.pnpm/string-length@4.0.2/node_modules/string-length/index.js +var require_string_length = __commonJS({ + "../node_modules/.pnpm/string-length@4.0.2/node_modules/string-length/index.js"(exports2, module2) { + "use strict"; + var stripAnsi = require_strip_ansi(); + var charRegex = require_char_regex(); + var stringLength = (string) => { + if (string === "") { + return 0; + } + const strippedString = stripAnsi(string); + if (strippedString === "") { + return 0; + } + return strippedString.match(charRegex()).length; + }; + module2.exports = stringLength; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportStats.js +var require_reportStats = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportStats.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportStats = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var chalk_1 = __importDefault4(require_source()); + var repeat_1 = __importDefault4(require_repeat2()); + var string_length_1 = __importDefault4(require_string_length()); + var constants_1 = require_constants2(); + var outputConstants_1 = require_outputConstants(); + var zooming_1 = require_zooming(); + function reportStats(log$, opts) { + const stats$ = opts.isRecursive ? log$.stats : log$.stats.pipe((0, operators_1.filter)((log2) => log2.prefix !== opts.cwd)); + const outputs = [ + statsForNotCurrentPackage(stats$, { + cmd: opts.cmd, + currentPrefix: opts.cwd, + width: opts.width + }) + ]; + if (!opts.isRecursive) { + outputs.push(statsForCurrentPackage(log$.stats, { + cmd: opts.cmd, + currentPrefix: opts.cwd, + width: opts.width + })); + } + return outputs; + } + exports2.reportStats = reportStats; + function statsForCurrentPackage(stats$, opts) { + return stats$.pipe((0, operators_1.filter)((log2) => log2.prefix === opts.currentPrefix), (0, operators_1.take)(opts.cmd === "install" || opts.cmd === "install-test" || opts.cmd === "add" || opts.cmd === "update" ? 2 : 1), (0, operators_1.reduce)((acc, log2) => { + if (typeof log2["added"] === "number") { + acc["added"] = log2["added"]; + } else if (typeof log2["removed"] === "number") { + acc["removed"] = log2["removed"]; + } + return acc; + }, {}), (0, operators_1.map)((stats) => { + if (!stats["removed"] && !stats["added"]) { + if (opts.cmd === "link") { + return Rx.NEVER; + } + return Rx.of({ msg: "Already up to date" }); + } + let msg = "Packages:"; + if (stats["added"]) { + msg += " " + chalk_1.default.green(`+${stats["added"].toString()}`); + } + if (stats["removed"]) { + msg += " " + chalk_1.default.red(`-${stats["removed"].toString()}`); + } + msg += constants_1.EOL + printPlusesAndMinuses(opts.width, stats["added"] || 0, stats["removed"] || 0); + return Rx.of({ msg }); + })); + } + function statsForNotCurrentPackage(stats$, opts) { + const stats = {}; + const cookedStats$ = opts.cmd !== "remove" ? stats$.pipe((0, operators_1.map)((log2) => { + if (!stats[log2.prefix]) { + stats[log2.prefix] = log2; + return { seed: stats, value: null }; + } else if (typeof stats[log2.prefix].added === "number" && typeof log2["added"] === "number") { + stats[log2.prefix].added += log2["added"]; + return { seed: stats, value: null }; + } else if (typeof stats[log2.prefix].removed === "number" && typeof log2["removed"] === "number") { + stats[log2.prefix].removed += log2["removed"]; + return { seed: stats, value: null }; + } else { + const value = { ...stats[log2.prefix], ...log2 }; + delete stats[log2.prefix]; + return value; + } + }, {})) : stats$; + return cookedStats$.pipe((0, operators_1.filter)((stats2) => stats2 !== null && (stats2["removed"] || stats2["added"])), (0, operators_1.map)((stats2) => { + const parts = []; + if (stats2["added"]) { + parts.push(padStep(chalk_1.default.green(`+${stats2["added"].toString()}`), 4)); + } + if (stats2["removed"]) { + parts.push(padStep(chalk_1.default.red(`-${stats2["removed"].toString()}`), 4)); + } + let msg = (0, zooming_1.zoomOut)(opts.currentPrefix, stats2["prefix"], parts.join(" ")); + const rest = Math.max(0, opts.width - 1 - (0, string_length_1.default)(msg)); + msg += " " + printPlusesAndMinuses(rest, roundStats(stats2["added"] || 0), roundStats(stats2["removed"] || 0)); + return Rx.of({ msg }); + })); + } + function padStep(s, step) { + const sLength = (0, string_length_1.default)(s); + const placeholderLength = Math.ceil(sLength / step) * step; + if (sLength < placeholderLength) { + return (0, repeat_1.default)(" ", placeholderLength - sLength).join("") + s; + } + return s; + } + function roundStats(stat) { + if (stat === 0) + return 0; + return Math.max(1, Math.round(stat / 10)); + } + function printPlusesAndMinuses(maxWidth, added, removed) { + if (maxWidth === 0) + return ""; + const changes = added + removed; + let addedChars; + let removedChars; + if (changes > maxWidth) { + if (!added) { + addedChars = 0; + removedChars = maxWidth; + } else if (!removed) { + addedChars = maxWidth; + removedChars = 0; + } else { + const p = maxWidth / changes; + addedChars = Math.min(Math.max(Math.floor(added * p), 1), maxWidth - 1); + removedChars = maxWidth - addedChars; + } + } else { + addedChars = added; + removedChars = removed; + } + return `${(0, repeat_1.default)(outputConstants_1.ADDED_CHAR, addedChars).join("")}${(0, repeat_1.default)(outputConstants_1.REMOVED_CHAR, removedChars).join("")}`; + } + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/constants.js +var require_constants3 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/constants.js"(exports2, module2) { + var SEMVER_SPEC_VERSION = "2.0.0"; + var MAX_LENGTH = 256; + var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ + 9007199254740991; + var MAX_SAFE_COMPONENT_LENGTH = 16; + var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6; + var RELEASE_TYPES = [ + "major", + "premajor", + "minor", + "preminor", + "patch", + "prepatch", + "prerelease" + ]; + module2.exports = { + MAX_LENGTH, + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_SAFE_INTEGER, + RELEASE_TYPES, + SEMVER_SPEC_VERSION, + FLAG_INCLUDE_PRERELEASE: 1, + FLAG_LOOSE: 2 + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/debug.js +var require_debug = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/debug.js"(exports2, module2) { + var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args2) => console.error("SEMVER", ...args2) : () => { + }; + module2.exports = debug; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/re.js +var require_re = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/re.js"(exports2, module2) { + var { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH } = require_constants3(); + var debug = require_debug(); + exports2 = module2.exports = {}; + var re = exports2.re = []; + var safeRe = exports2.safeRe = []; + var src = exports2.src = []; + var t = exports2.t = {}; + var R = 0; + var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; + var safeRegexReplacements = [ + ["\\s", 1], + ["\\d", MAX_SAFE_COMPONENT_LENGTH], + [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH] + ]; + var makeSafeRegex = (value) => { + for (const [token, max] of safeRegexReplacements) { + value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`); + } + return value; + }; + var createToken = (name, value, isGlobal) => { + const safe = makeSafeRegex(value); + const index = R++; + debug(name, index, value); + t[name] = index; + src[index] = value; + re[index] = new RegExp(value, isGlobal ? "g" : void 0); + safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); + createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); + createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NUMERICIDENTIFIER]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NUMERICIDENTIFIERLOOSE]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); + createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); + createToken("FULL", `^${src[t.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); + createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COERCE", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:$|[^\\d])`); + createToken("COERCERTL", src[t.COERCE], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); + exports2.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); + exports2.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); + exports2.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/parse-options.js +var require_parse_options = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/parse-options.js"(exports2, module2) { + var looseOption = Object.freeze({ loose: true }); + var emptyOpts = Object.freeze({}); + var parseOptions = (options) => { + if (!options) { + return emptyOpts; + } + if (typeof options !== "object") { + return looseOption; + } + return options; + }; + module2.exports = parseOptions; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/identifiers.js +var require_identifiers = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/internal/identifiers.js"(exports2, module2) { + var numeric = /^[0-9]+$/; + var compareIdentifiers = (a, b) => { + const anum = numeric.test(a); + const bnum = numeric.test(b); + if (anum && bnum) { + a = +a; + b = +b; + } + return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; + }; + var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a); + module2.exports = { + compareIdentifiers, + rcompareIdentifiers + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/semver.js +var require_semver = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/semver.js"(exports2, module2) { + var debug = require_debug(); + var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants3(); + var { safeRe: re, t } = require_re(); + var parseOptions = require_parse_options(); + var { compareIdentifiers } = require_identifiers(); + var SemVer = class { + constructor(version2, options) { + options = parseOptions(options); + if (version2 instanceof SemVer) { + if (version2.loose === !!options.loose && version2.includePrerelease === !!options.includePrerelease) { + return version2; + } else { + version2 = version2.version; + } + } else if (typeof version2 !== "string") { + throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version2}".`); + } + if (version2.length > MAX_LENGTH) { + throw new TypeError( + `version is longer than ${MAX_LENGTH} characters` + ); + } + debug("SemVer", version2, options); + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + const m = version2.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); + if (!m) { + throw new TypeError(`Invalid Version: ${version2}`); + } + this.raw = version2; + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError("Invalid major version"); + } + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError("Invalid minor version"); + } + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError("Invalid patch version"); + } + if (!m[4]) { + this.prerelease = []; + } else { + this.prerelease = m[4].split(".").map((id) => { + if (/^[0-9]+$/.test(id)) { + const num = +id; + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num; + } + } + return id; + }); + } + this.build = m[5] ? m[5].split(".") : []; + this.format(); + } + format() { + this.version = `${this.major}.${this.minor}.${this.patch}`; + if (this.prerelease.length) { + this.version += `-${this.prerelease.join(".")}`; + } + return this.version; + } + toString() { + return this.version; + } + compare(other) { + debug("SemVer.compare", this.version, this.options, other); + if (!(other instanceof SemVer)) { + if (typeof other === "string" && other === this.version) { + return 0; + } + other = new SemVer(other, this.options); + } + if (other.version === this.version) { + return 0; + } + return this.compareMain(other) || this.comparePre(other); + } + compareMain(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); + } + comparePre(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + if (this.prerelease.length && !other.prerelease.length) { + return -1; + } else if (!this.prerelease.length && other.prerelease.length) { + return 1; + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0; + } + let i = 0; + do { + const a = this.prerelease[i]; + const b = other.prerelease[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + compareBuild(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + let i = 0; + do { + const a = this.build[i]; + const b = other.build[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + // preminor will bump the version up to the next minor release, and immediately + // down to pre-release. premajor and prepatch work the same way. + inc(release, identifier, identifierBase) { + switch (release) { + case "premajor": + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc("pre", identifier, identifierBase); + break; + case "preminor": + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc("pre", identifier, identifierBase); + break; + case "prepatch": + this.prerelease.length = 0; + this.inc("patch", identifier, identifierBase); + this.inc("pre", identifier, identifierBase); + break; + case "prerelease": + if (this.prerelease.length === 0) { + this.inc("patch", identifier, identifierBase); + } + this.inc("pre", identifier, identifierBase); + break; + case "major": + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { + this.major++; + } + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case "minor": + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++; + } + this.patch = 0; + this.prerelease = []; + break; + case "patch": + if (this.prerelease.length === 0) { + this.patch++; + } + this.prerelease = []; + break; + case "pre": { + const base = Number(identifierBase) ? 1 : 0; + if (!identifier && identifierBase === false) { + throw new Error("invalid increment argument: identifier is empty"); + } + if (this.prerelease.length === 0) { + this.prerelease = [base]; + } else { + let i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === "number") { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) { + if (identifier === this.prerelease.join(".") && identifierBase === false) { + throw new Error("invalid increment argument: identifier already exists"); + } + this.prerelease.push(base); + } + } + if (identifier) { + let prerelease = [identifier, base]; + if (identifierBase === false) { + prerelease = [identifier]; + } + if (compareIdentifiers(this.prerelease[0], identifier) === 0) { + if (isNaN(this.prerelease[1])) { + this.prerelease = prerelease; + } + } else { + this.prerelease = prerelease; + } + } + break; + } + default: + throw new Error(`invalid increment argument: ${release}`); + } + this.raw = this.format(); + if (this.build.length) { + this.raw += `+${this.build.join(".")}`; + } + return this; + } + }; + module2.exports = SemVer; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/parse.js +var require_parse3 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/parse.js"(exports2, module2) { + var SemVer = require_semver(); + var parse2 = (version2, options, throwErrors = false) => { + if (version2 instanceof SemVer) { + return version2; + } + try { + return new SemVer(version2, options); + } catch (er) { + if (!throwErrors) { + return null; + } + throw er; + } + }; + module2.exports = parse2; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/valid.js +var require_valid = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/valid.js"(exports2, module2) { + var parse2 = require_parse3(); + var valid = (version2, options) => { + const v = parse2(version2, options); + return v ? v.version : null; + }; + module2.exports = valid; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/clean.js +var require_clean = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/clean.js"(exports2, module2) { + var parse2 = require_parse3(); + var clean = (version2, options) => { + const s = parse2(version2.trim().replace(/^[=v]+/, ""), options); + return s ? s.version : null; + }; + module2.exports = clean; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/inc.js +var require_inc = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/inc.js"(exports2, module2) { + var SemVer = require_semver(); + var inc = (version2, release, options, identifier, identifierBase) => { + if (typeof options === "string") { + identifierBase = identifier; + identifier = options; + options = void 0; + } + try { + return new SemVer( + version2 instanceof SemVer ? version2.version : version2, + options + ).inc(release, identifier, identifierBase).version; + } catch (er) { + return null; + } + }; + module2.exports = inc; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/diff.js +var require_diff = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/diff.js"(exports2, module2) { + var parse2 = require_parse3(); + var diff = (version1, version2) => { + const v12 = parse2(version1, null, true); + const v2 = parse2(version2, null, true); + const comparison = v12.compare(v2); + if (comparison === 0) { + return null; + } + const v1Higher = comparison > 0; + const highVersion = v1Higher ? v12 : v2; + const lowVersion = v1Higher ? v2 : v12; + const highHasPre = !!highVersion.prerelease.length; + const lowHasPre = !!lowVersion.prerelease.length; + if (lowHasPre && !highHasPre) { + if (!lowVersion.patch && !lowVersion.minor) { + return "major"; + } + if (highVersion.patch) { + return "patch"; + } + if (highVersion.minor) { + return "minor"; + } + return "major"; + } + const prefix = highHasPre ? "pre" : ""; + if (v12.major !== v2.major) { + return prefix + "major"; + } + if (v12.minor !== v2.minor) { + return prefix + "minor"; + } + if (v12.patch !== v2.patch) { + return prefix + "patch"; + } + return "prerelease"; + }; + module2.exports = diff; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/major.js +var require_major = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/major.js"(exports2, module2) { + var SemVer = require_semver(); + var major = (a, loose) => new SemVer(a, loose).major; + module2.exports = major; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/minor.js +var require_minor = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/minor.js"(exports2, module2) { + var SemVer = require_semver(); + var minor = (a, loose) => new SemVer(a, loose).minor; + module2.exports = minor; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/patch.js +var require_patch = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/patch.js"(exports2, module2) { + var SemVer = require_semver(); + var patch = (a, loose) => new SemVer(a, loose).patch; + module2.exports = patch; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/prerelease.js +var require_prerelease = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/prerelease.js"(exports2, module2) { + var parse2 = require_parse3(); + var prerelease = (version2, options) => { + const parsed = parse2(version2, options); + return parsed && parsed.prerelease.length ? parsed.prerelease : null; + }; + module2.exports = prerelease; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare.js +var require_compare = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare.js"(exports2, module2) { + var SemVer = require_semver(); + var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)); + module2.exports = compare; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/rcompare.js +var require_rcompare = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/rcompare.js"(exports2, module2) { + var compare = require_compare(); + var rcompare = (a, b, loose) => compare(b, a, loose); + module2.exports = rcompare; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare-loose.js +var require_compare_loose = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare-loose.js"(exports2, module2) { + var compare = require_compare(); + var compareLoose = (a, b) => compare(a, b, true); + module2.exports = compareLoose; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare-build.js +var require_compare_build = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/compare-build.js"(exports2, module2) { + var SemVer = require_semver(); + var compareBuild = (a, b, loose) => { + const versionA = new SemVer(a, loose); + const versionB = new SemVer(b, loose); + return versionA.compare(versionB) || versionA.compareBuild(versionB); + }; + module2.exports = compareBuild; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/sort.js +var require_sort2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/sort.js"(exports2, module2) { + var compareBuild = require_compare_build(); + var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)); + module2.exports = sort; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/rsort.js +var require_rsort = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/rsort.js"(exports2, module2) { + var compareBuild = require_compare_build(); + var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)); + module2.exports = rsort; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/gt.js +var require_gt = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/gt.js"(exports2, module2) { + var compare = require_compare(); + var gt = (a, b, loose) => compare(a, b, loose) > 0; + module2.exports = gt; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/lt.js +var require_lt = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/lt.js"(exports2, module2) { + var compare = require_compare(); + var lt = (a, b, loose) => compare(a, b, loose) < 0; + module2.exports = lt; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/eq.js +var require_eq = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/eq.js"(exports2, module2) { + var compare = require_compare(); + var eq = (a, b, loose) => compare(a, b, loose) === 0; + module2.exports = eq; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/neq.js +var require_neq = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/neq.js"(exports2, module2) { + var compare = require_compare(); + var neq = (a, b, loose) => compare(a, b, loose) !== 0; + module2.exports = neq; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/gte.js +var require_gte = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/gte.js"(exports2, module2) { + var compare = require_compare(); + var gte = (a, b, loose) => compare(a, b, loose) >= 0; + module2.exports = gte; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/lte.js +var require_lte = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/lte.js"(exports2, module2) { + var compare = require_compare(); + var lte = (a, b, loose) => compare(a, b, loose) <= 0; + module2.exports = lte; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/cmp.js +var require_cmp = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/cmp.js"(exports2, module2) { + var eq = require_eq(); + var neq = require_neq(); + var gt = require_gt(); + var gte = require_gte(); + var lt = require_lt(); + var lte = require_lte(); + var cmp = (a, op, b, loose) => { + switch (op) { + case "===": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a === b; + case "!==": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a !== b; + case "": + case "=": + case "==": + return eq(a, b, loose); + case "!=": + return neq(a, b, loose); + case ">": + return gt(a, b, loose); + case ">=": + return gte(a, b, loose); + case "<": + return lt(a, b, loose); + case "<=": + return lte(a, b, loose); + default: + throw new TypeError(`Invalid operator: ${op}`); + } + }; + module2.exports = cmp; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/coerce.js +var require_coerce = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/coerce.js"(exports2, module2) { + var SemVer = require_semver(); + var parse2 = require_parse3(); + var { safeRe: re, t } = require_re(); + var coerce = (version2, options) => { + if (version2 instanceof SemVer) { + return version2; + } + if (typeof version2 === "number") { + version2 = String(version2); + } + if (typeof version2 !== "string") { + return null; + } + options = options || {}; + let match = null; + if (!options.rtl) { + match = version2.match(re[t.COERCE]); + } else { + let next; + while ((next = re[t.COERCERTL].exec(version2)) && (!match || match.index + match[0].length !== version2.length)) { + if (!match || next.index + next[0].length !== match.index + match[0].length) { + match = next; + } + re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length; + } + re[t.COERCERTL].lastIndex = -1; + } + if (match === null) { + return null; + } + return parse2(`${match[2]}.${match[3] || "0"}.${match[4] || "0"}`, options); + }; + module2.exports = coerce; + } +}); + +// ../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js +var require_iterator2 = __commonJS({ + "../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js"(exports2, module2) { + "use strict"; + module2.exports = function(Yallist) { + Yallist.prototype[Symbol.iterator] = function* () { + for (let walker = this.head; walker; walker = walker.next) { + yield walker.value; + } + }; + }; + } +}); + +// ../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js +var require_yallist = __commonJS({ + "../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js"(exports2, module2) { + "use strict"; + module2.exports = Yallist; + Yallist.Node = Node; + Yallist.create = Yallist; + function Yallist(list) { + var self2 = this; + if (!(self2 instanceof Yallist)) { + self2 = new Yallist(); + } + self2.tail = null; + self2.head = null; + self2.length = 0; + if (list && typeof list.forEach === "function") { + list.forEach(function(item) { + self2.push(item); + }); + } else if (arguments.length > 0) { + for (var i = 0, l = arguments.length; i < l; i++) { + self2.push(arguments[i]); + } + } + return self2; + } + Yallist.prototype.removeNode = function(node) { + if (node.list !== this) { + throw new Error("removing node which does not belong to this list"); + } + var next = node.next; + var prev = node.prev; + if (next) { + next.prev = prev; + } + if (prev) { + prev.next = next; + } + if (node === this.head) { + this.head = next; + } + if (node === this.tail) { + this.tail = prev; + } + node.list.length--; + node.next = null; + node.prev = null; + node.list = null; + return next; + }; + Yallist.prototype.unshiftNode = function(node) { + if (node === this.head) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var head = this.head; + node.list = this; + node.next = head; + if (head) { + head.prev = node; + } + this.head = node; + if (!this.tail) { + this.tail = node; + } + this.length++; + }; + Yallist.prototype.pushNode = function(node) { + if (node === this.tail) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var tail = this.tail; + node.list = this; + node.prev = tail; + if (tail) { + tail.next = node; + } + this.tail = node; + if (!this.head) { + this.head = node; + } + this.length++; + }; + Yallist.prototype.push = function() { + for (var i = 0, l = arguments.length; i < l; i++) { + push(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.unshift = function() { + for (var i = 0, l = arguments.length; i < l; i++) { + unshift(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.pop = function() { + if (!this.tail) { + return void 0; + } + var res = this.tail.value; + this.tail = this.tail.prev; + if (this.tail) { + this.tail.next = null; + } else { + this.head = null; + } + this.length--; + return res; + }; + Yallist.prototype.shift = function() { + if (!this.head) { + return void 0; + } + var res = this.head.value; + this.head = this.head.next; + if (this.head) { + this.head.prev = null; + } else { + this.tail = null; + } + this.length--; + return res; + }; + Yallist.prototype.forEach = function(fn2, thisp) { + thisp = thisp || this; + for (var walker = this.head, i = 0; walker !== null; i++) { + fn2.call(thisp, walker.value, i, this); + walker = walker.next; + } + }; + Yallist.prototype.forEachReverse = function(fn2, thisp) { + thisp = thisp || this; + for (var walker = this.tail, i = this.length - 1; walker !== null; i--) { + fn2.call(thisp, walker.value, i, this); + walker = walker.prev; + } + }; + Yallist.prototype.get = function(n) { + for (var i = 0, walker = this.head; walker !== null && i < n; i++) { + walker = walker.next; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.getReverse = function(n) { + for (var i = 0, walker = this.tail; walker !== null && i < n; i++) { + walker = walker.prev; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.map = function(fn2, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.head; walker !== null; ) { + res.push(fn2.call(thisp, walker.value, this)); + walker = walker.next; + } + return res; + }; + Yallist.prototype.mapReverse = function(fn2, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.tail; walker !== null; ) { + res.push(fn2.call(thisp, walker.value, this)); + walker = walker.prev; + } + return res; + }; + Yallist.prototype.reduce = function(fn2, initial) { + var acc; + var walker = this.head; + if (arguments.length > 1) { + acc = initial; + } else if (this.head) { + walker = this.head.next; + acc = this.head.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = 0; walker !== null; i++) { + acc = fn2(acc, walker.value, i); + walker = walker.next; + } + return acc; + }; + Yallist.prototype.reduceReverse = function(fn2, initial) { + var acc; + var walker = this.tail; + if (arguments.length > 1) { + acc = initial; + } else if (this.tail) { + walker = this.tail.prev; + acc = this.tail.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = this.length - 1; walker !== null; i--) { + acc = fn2(acc, walker.value, i); + walker = walker.prev; + } + return acc; + }; + Yallist.prototype.toArray = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.head; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.next; + } + return arr; + }; + Yallist.prototype.toArrayReverse = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.tail; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.prev; + } + return arr; + }; + Yallist.prototype.slice = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret = new Yallist(); + if (to < from || to < 0) { + return ret; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = 0, walker = this.head; walker !== null && i < from; i++) { + walker = walker.next; + } + for (; walker !== null && i < to; i++, walker = walker.next) { + ret.push(walker.value); + } + return ret; + }; + Yallist.prototype.sliceReverse = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret = new Yallist(); + if (to < from || to < 0) { + return ret; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) { + walker = walker.prev; + } + for (; walker !== null && i > from; i--, walker = walker.prev) { + ret.push(walker.value); + } + return ret; + }; + Yallist.prototype.splice = function(start, deleteCount, ...nodes) { + if (start > this.length) { + start = this.length - 1; + } + if (start < 0) { + start = this.length + start; + } + for (var i = 0, walker = this.head; walker !== null && i < start; i++) { + walker = walker.next; + } + var ret = []; + for (var i = 0; walker && i < deleteCount; i++) { + ret.push(walker.value); + walker = this.removeNode(walker); + } + if (walker === null) { + walker = this.tail; + } + if (walker !== this.head && walker !== this.tail) { + walker = walker.prev; + } + for (var i = 0; i < nodes.length; i++) { + walker = insert(this, walker, nodes[i]); + } + return ret; + }; + Yallist.prototype.reverse = function() { + var head = this.head; + var tail = this.tail; + for (var walker = head; walker !== null; walker = walker.prev) { + var p = walker.prev; + walker.prev = walker.next; + walker.next = p; + } + this.head = tail; + this.tail = head; + return this; + }; + function insert(self2, node, value) { + var inserted = node === self2.head ? new Node(value, null, node, self2) : new Node(value, node, node.next, self2); + if (inserted.next === null) { + self2.tail = inserted; + } + if (inserted.prev === null) { + self2.head = inserted; + } + self2.length++; + return inserted; + } + function push(self2, item) { + self2.tail = new Node(item, self2.tail, null, self2); + if (!self2.head) { + self2.head = self2.tail; + } + self2.length++; + } + function unshift(self2, item) { + self2.head = new Node(item, null, self2.head, self2); + if (!self2.tail) { + self2.tail = self2.head; + } + self2.length++; + } + function Node(value, prev, next, list) { + if (!(this instanceof Node)) { + return new Node(value, prev, next, list); + } + this.list = list; + this.value = value; + if (prev) { + prev.next = this; + this.prev = prev; + } else { + this.prev = null; + } + if (next) { + next.prev = this; + this.next = next; + } else { + this.next = null; + } + } + try { + require_iterator2()(Yallist); + } catch (er) { + } + } +}); + +// ../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js +var require_lru_cache = __commonJS({ + "../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js"(exports2, module2) { + "use strict"; + var Yallist = require_yallist(); + var MAX = Symbol("max"); + var LENGTH = Symbol("length"); + var LENGTH_CALCULATOR = Symbol("lengthCalculator"); + var ALLOW_STALE = Symbol("allowStale"); + var MAX_AGE = Symbol("maxAge"); + var DISPOSE = Symbol("dispose"); + var NO_DISPOSE_ON_SET = Symbol("noDisposeOnSet"); + var LRU_LIST = Symbol("lruList"); + var CACHE = Symbol("cache"); + var UPDATE_AGE_ON_GET = Symbol("updateAgeOnGet"); + var naiveLength = () => 1; + var LRUCache = class { + constructor(options) { + if (typeof options === "number") + options = { max: options }; + if (!options) + options = {}; + if (options.max && (typeof options.max !== "number" || options.max < 0)) + throw new TypeError("max must be a non-negative number"); + const max = this[MAX] = options.max || Infinity; + const lc = options.length || naiveLength; + this[LENGTH_CALCULATOR] = typeof lc !== "function" ? naiveLength : lc; + this[ALLOW_STALE] = options.stale || false; + if (options.maxAge && typeof options.maxAge !== "number") + throw new TypeError("maxAge must be a number"); + this[MAX_AGE] = options.maxAge || 0; + this[DISPOSE] = options.dispose; + this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false; + this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false; + this.reset(); + } + // resize the cache when the max changes. + set max(mL) { + if (typeof mL !== "number" || mL < 0) + throw new TypeError("max must be a non-negative number"); + this[MAX] = mL || Infinity; + trim(this); + } + get max() { + return this[MAX]; + } + set allowStale(allowStale) { + this[ALLOW_STALE] = !!allowStale; + } + get allowStale() { + return this[ALLOW_STALE]; + } + set maxAge(mA) { + if (typeof mA !== "number") + throw new TypeError("maxAge must be a non-negative number"); + this[MAX_AGE] = mA; + trim(this); + } + get maxAge() { + return this[MAX_AGE]; + } + // resize the cache when the lengthCalculator changes. + set lengthCalculator(lC) { + if (typeof lC !== "function") + lC = naiveLength; + if (lC !== this[LENGTH_CALCULATOR]) { + this[LENGTH_CALCULATOR] = lC; + this[LENGTH] = 0; + this[LRU_LIST].forEach((hit) => { + hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key); + this[LENGTH] += hit.length; + }); + } + trim(this); + } + get lengthCalculator() { + return this[LENGTH_CALCULATOR]; + } + get length() { + return this[LENGTH]; + } + get itemCount() { + return this[LRU_LIST].length; + } + rforEach(fn2, thisp) { + thisp = thisp || this; + for (let walker = this[LRU_LIST].tail; walker !== null; ) { + const prev = walker.prev; + forEachStep(this, fn2, walker, thisp); + walker = prev; + } + } + forEach(fn2, thisp) { + thisp = thisp || this; + for (let walker = this[LRU_LIST].head; walker !== null; ) { + const next = walker.next; + forEachStep(this, fn2, walker, thisp); + walker = next; + } + } + keys() { + return this[LRU_LIST].toArray().map((k) => k.key); + } + values() { + return this[LRU_LIST].toArray().map((k) => k.value); + } + reset() { + if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { + this[LRU_LIST].forEach((hit) => this[DISPOSE](hit.key, hit.value)); + } + this[CACHE] = /* @__PURE__ */ new Map(); + this[LRU_LIST] = new Yallist(); + this[LENGTH] = 0; + } + dump() { + return this[LRU_LIST].map((hit) => isStale(this, hit) ? false : { + k: hit.key, + v: hit.value, + e: hit.now + (hit.maxAge || 0) + }).toArray().filter((h) => h); + } + dumpLru() { + return this[LRU_LIST]; + } + set(key, value, maxAge) { + maxAge = maxAge || this[MAX_AGE]; + if (maxAge && typeof maxAge !== "number") + throw new TypeError("maxAge must be a number"); + const now = maxAge ? Date.now() : 0; + const len = this[LENGTH_CALCULATOR](value, key); + if (this[CACHE].has(key)) { + if (len > this[MAX]) { + del(this, this[CACHE].get(key)); + return false; + } + const node = this[CACHE].get(key); + const item = node.value; + if (this[DISPOSE]) { + if (!this[NO_DISPOSE_ON_SET]) + this[DISPOSE](key, item.value); + } + item.now = now; + item.maxAge = maxAge; + item.value = value; + this[LENGTH] += len - item.length; + item.length = len; + this.get(key); + trim(this); + return true; + } + const hit = new Entry(key, value, len, now, maxAge); + if (hit.length > this[MAX]) { + if (this[DISPOSE]) + this[DISPOSE](key, value); + return false; + } + this[LENGTH] += hit.length; + this[LRU_LIST].unshift(hit); + this[CACHE].set(key, this[LRU_LIST].head); + trim(this); + return true; + } + has(key) { + if (!this[CACHE].has(key)) + return false; + const hit = this[CACHE].get(key).value; + return !isStale(this, hit); + } + get(key) { + return get(this, key, true); + } + peek(key) { + return get(this, key, false); + } + pop() { + const node = this[LRU_LIST].tail; + if (!node) + return null; + del(this, node); + return node.value; + } + del(key) { + del(this, this[CACHE].get(key)); + } + load(arr) { + this.reset(); + const now = Date.now(); + for (let l = arr.length - 1; l >= 0; l--) { + const hit = arr[l]; + const expiresAt = hit.e || 0; + if (expiresAt === 0) + this.set(hit.k, hit.v); + else { + const maxAge = expiresAt - now; + if (maxAge > 0) { + this.set(hit.k, hit.v, maxAge); + } + } + } + } + prune() { + this[CACHE].forEach((value, key) => get(this, key, false)); + } + }; + var get = (self2, key, doUse) => { + const node = self2[CACHE].get(key); + if (node) { + const hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) + return void 0; + } else { + if (doUse) { + if (self2[UPDATE_AGE_ON_GET]) + node.value.now = Date.now(); + self2[LRU_LIST].unshiftNode(node); + } + } + return hit.value; + } + }; + var isStale = (self2, hit) => { + if (!hit || !hit.maxAge && !self2[MAX_AGE]) + return false; + const diff = Date.now() - hit.now; + return hit.maxAge ? diff > hit.maxAge : self2[MAX_AGE] && diff > self2[MAX_AGE]; + }; + var trim = (self2) => { + if (self2[LENGTH] > self2[MAX]) { + for (let walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) { + const prev = walker.prev; + del(self2, walker); + walker = prev; + } + } + }; + var del = (self2, node) => { + if (node) { + const hit = node.value; + if (self2[DISPOSE]) + self2[DISPOSE](hit.key, hit.value); + self2[LENGTH] -= hit.length; + self2[CACHE].delete(hit.key); + self2[LRU_LIST].removeNode(node); + } + }; + var Entry = class { + constructor(key, value, length, now, maxAge) { + this.key = key; + this.value = value; + this.length = length; + this.now = now; + this.maxAge = maxAge || 0; + } + }; + var forEachStep = (self2, fn2, node, thisp) => { + let hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) + hit = void 0; + } + if (hit) + fn2.call(thisp, hit.value, hit.key, self2); + }; + module2.exports = LRUCache; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/range.js +var require_range2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/range.js"(exports2, module2) { + var Range = class { + constructor(range, options) { + options = parseOptions(options); + if (range instanceof Range) { + if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) { + return range; + } else { + return new Range(range.raw, options); + } + } + if (range instanceof Comparator) { + this.raw = range.value; + this.set = [[range]]; + this.format(); + return this; + } + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + this.raw = range.trim().split(/\s+/).join(" "); + this.set = this.raw.split("||").map((r) => this.parseRange(r)).filter((c) => c.length); + if (!this.set.length) { + throw new TypeError(`Invalid SemVer Range: ${this.raw}`); + } + if (this.set.length > 1) { + const first = this.set[0]; + this.set = this.set.filter((c) => !isNullSet(c[0])); + if (this.set.length === 0) { + this.set = [first]; + } else if (this.set.length > 1) { + for (const c of this.set) { + if (c.length === 1 && isAny(c[0])) { + this.set = [c]; + break; + } + } + } + } + this.format(); + } + format() { + this.range = this.set.map((comps) => comps.join(" ").trim()).join("||").trim(); + return this.range; + } + toString() { + return this.range; + } + parseRange(range) { + const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE); + const memoKey = memoOpts + ":" + range; + const cached = cache.get(memoKey); + if (cached) { + return cached; + } + const loose = this.options.loose; + const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; + range = range.replace(hr, hyphenReplace(this.options.includePrerelease)); + debug("hyphen replace", range); + range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); + debug("comparator trim", range); + range = range.replace(re[t.TILDETRIM], tildeTrimReplace); + debug("tilde trim", range); + range = range.replace(re[t.CARETTRIM], caretTrimReplace); + debug("caret trim", range); + let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options)); + if (loose) { + rangeList = rangeList.filter((comp) => { + debug("loose invalid filter", comp, this.options); + return !!comp.match(re[t.COMPARATORLOOSE]); + }); + } + debug("range list", rangeList); + const rangeMap = /* @__PURE__ */ new Map(); + const comparators = rangeList.map((comp) => new Comparator(comp, this.options)); + for (const comp of comparators) { + if (isNullSet(comp)) { + return [comp]; + } + rangeMap.set(comp.value, comp); + } + if (rangeMap.size > 1 && rangeMap.has("")) { + rangeMap.delete(""); + } + const result2 = [...rangeMap.values()]; + cache.set(memoKey, result2); + return result2; + } + intersects(range, options) { + if (!(range instanceof Range)) { + throw new TypeError("a Range is required"); + } + return this.set.some((thisComparators) => { + return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => { + return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => { + return rangeComparators.every((rangeComparator) => { + return thisComparator.intersects(rangeComparator, options); + }); + }); + }); + }); + } + // if ANY of the sets match ALL of its comparators, then pass + test(version2) { + if (!version2) { + return false; + } + if (typeof version2 === "string") { + try { + version2 = new SemVer(version2, this.options); + } catch (er) { + return false; + } + } + for (let i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version2, this.options)) { + return true; + } + } + return false; + } + }; + module2.exports = Range; + var LRU = require_lru_cache(); + var cache = new LRU({ max: 1e3 }); + var parseOptions = require_parse_options(); + var Comparator = require_comparator(); + var debug = require_debug(); + var SemVer = require_semver(); + var { + safeRe: re, + t, + comparatorTrimReplace, + tildeTrimReplace, + caretTrimReplace + } = require_re(); + var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants3(); + var isNullSet = (c) => c.value === "<0.0.0-0"; + var isAny = (c) => c.value === ""; + var isSatisfiable = (comparators, options) => { + let result2 = true; + const remainingComparators = comparators.slice(); + let testComparator = remainingComparators.pop(); + while (result2 && remainingComparators.length) { + result2 = remainingComparators.every((otherComparator) => { + return testComparator.intersects(otherComparator, options); + }); + testComparator = remainingComparators.pop(); + } + return result2; + }; + var parseComparator = (comp, options) => { + debug("comp", comp, options); + comp = replaceCarets(comp, options); + debug("caret", comp); + comp = replaceTildes(comp, options); + debug("tildes", comp); + comp = replaceXRanges(comp, options); + debug("xrange", comp); + comp = replaceStars(comp, options); + debug("stars", comp); + return comp; + }; + var isX = (id) => !id || id.toLowerCase() === "x" || id === "*"; + var replaceTildes = (comp, options) => { + return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" "); + }; + var replaceTilde = (comp, options) => { + const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]; + return comp.replace(r, (_, M, m, p, pr) => { + debug("tilde", comp, _, M, m, p, pr); + let ret; + if (isX(M)) { + ret = ""; + } else if (isX(m)) { + ret = `>=${M}.0.0 <${+M + 1}.0.0-0`; + } else if (isX(p)) { + ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`; + } else if (pr) { + debug("replaceTilde pr", pr); + ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } else { + ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; + } + debug("tilde return", ret); + return ret; + }); + }; + var replaceCarets = (comp, options) => { + return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" "); + }; + var replaceCaret = (comp, options) => { + debug("caret", comp, options); + const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]; + const z = options.includePrerelease ? "-0" : ""; + return comp.replace(r, (_, M, m, p, pr) => { + debug("caret", comp, _, M, m, p, pr); + let ret; + if (isX(M)) { + ret = ""; + } else if (isX(m)) { + ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; + } else if (isX(p)) { + if (M === "0") { + ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; + } else { + ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`; + } + } else if (pr) { + debug("replaceCaret pr", pr); + if (M === "0") { + if (m === "0") { + ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`; + } else { + ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } + } else { + ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`; + } + } else { + debug("no pr"); + if (M === "0") { + if (m === "0") { + ret = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0`; + } else { + ret = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0`; + } + } else { + ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`; + } + } + debug("caret return", ret); + return ret; + }); + }; + var replaceXRanges = (comp, options) => { + debug("replaceXRanges", comp, options); + return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" "); + }; + var replaceXRange = (comp, options) => { + comp = comp.trim(); + const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; + return comp.replace(r, (ret, gtlt, M, m, p, pr) => { + debug("xRange", comp, ret, gtlt, M, m, p, pr); + const xM = isX(M); + const xm = xM || isX(m); + const xp = xm || isX(p); + const anyX = xp; + if (gtlt === "=" && anyX) { + gtlt = ""; + } + pr = options.includePrerelease ? "-0" : ""; + if (xM) { + if (gtlt === ">" || gtlt === "<") { + ret = "<0.0.0-0"; + } else { + ret = "*"; + } + } else if (gtlt && anyX) { + if (xm) { + m = 0; + } + p = 0; + if (gtlt === ">") { + gtlt = ">="; + if (xm) { + M = +M + 1; + m = 0; + p = 0; + } else { + m = +m + 1; + p = 0; + } + } else if (gtlt === "<=") { + gtlt = "<"; + if (xm) { + M = +M + 1; + } else { + m = +m + 1; + } + } + if (gtlt === "<") { + pr = "-0"; + } + ret = `${gtlt + M}.${m}.${p}${pr}`; + } else if (xm) { + ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`; + } else if (xp) { + ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`; + } + debug("xRange return", ret); + return ret; + }); + }; + var replaceStars = (comp, options) => { + debug("replaceStars", comp, options); + return comp.trim().replace(re[t.STAR], ""); + }; + var replaceGTE0 = (comp, options) => { + debug("replaceGTE0", comp, options); + return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], ""); + }; + var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) => { + if (isX(fM)) { + from = ""; + } else if (isX(fm)) { + from = `>=${fM}.0.0${incPr ? "-0" : ""}`; + } else if (isX(fp)) { + from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`; + } else if (fpr) { + from = `>=${from}`; + } else { + from = `>=${from}${incPr ? "-0" : ""}`; + } + if (isX(tM)) { + to = ""; + } else if (isX(tm)) { + to = `<${+tM + 1}.0.0-0`; + } else if (isX(tp)) { + to = `<${tM}.${+tm + 1}.0-0`; + } else if (tpr) { + to = `<=${tM}.${tm}.${tp}-${tpr}`; + } else if (incPr) { + to = `<${tM}.${tm}.${+tp + 1}-0`; + } else { + to = `<=${to}`; + } + return `${from} ${to}`.trim(); + }; + var testSet = (set, version2, options) => { + for (let i = 0; i < set.length; i++) { + if (!set[i].test(version2)) { + return false; + } + } + if (version2.prerelease.length && !options.includePrerelease) { + for (let i = 0; i < set.length; i++) { + debug(set[i].semver); + if (set[i].semver === Comparator.ANY) { + continue; + } + if (set[i].semver.prerelease.length > 0) { + const allowed = set[i].semver; + if (allowed.major === version2.major && allowed.minor === version2.minor && allowed.patch === version2.patch) { + return true; + } + } + } + return false; + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/comparator.js +var require_comparator = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/classes/comparator.js"(exports2, module2) { + var ANY = Symbol("SemVer ANY"); + var Comparator = class { + static get ANY() { + return ANY; + } + constructor(comp, options) { + options = parseOptions(options); + if (comp instanceof Comparator) { + if (comp.loose === !!options.loose) { + return comp; + } else { + comp = comp.value; + } + } + comp = comp.trim().split(/\s+/).join(" "); + debug("comparator", comp, options); + this.options = options; + this.loose = !!options.loose; + this.parse(comp); + if (this.semver === ANY) { + this.value = ""; + } else { + this.value = this.operator + this.semver.version; + } + debug("comp", this); + } + parse(comp) { + const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; + const m = comp.match(r); + if (!m) { + throw new TypeError(`Invalid comparator: ${comp}`); + } + this.operator = m[1] !== void 0 ? m[1] : ""; + if (this.operator === "=") { + this.operator = ""; + } + if (!m[2]) { + this.semver = ANY; + } else { + this.semver = new SemVer(m[2], this.options.loose); + } + } + toString() { + return this.value; + } + test(version2) { + debug("Comparator.test", version2, this.options.loose); + if (this.semver === ANY || version2 === ANY) { + return true; + } + if (typeof version2 === "string") { + try { + version2 = new SemVer(version2, this.options); + } catch (er) { + return false; + } + } + return cmp(version2, this.operator, this.semver, this.options); + } + intersects(comp, options) { + if (!(comp instanceof Comparator)) { + throw new TypeError("a Comparator is required"); + } + if (this.operator === "") { + if (this.value === "") { + return true; + } + return new Range(comp.value, options).test(this.value); + } else if (comp.operator === "") { + if (comp.value === "") { + return true; + } + return new Range(this.value, options).test(comp.semver); + } + options = parseOptions(options); + if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) { + return false; + } + if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) { + return false; + } + if (this.operator.startsWith(">") && comp.operator.startsWith(">")) { + return true; + } + if (this.operator.startsWith("<") && comp.operator.startsWith("<")) { + return true; + } + if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) { + return true; + } + if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) { + return true; + } + if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) { + return true; + } + return false; + } + }; + module2.exports = Comparator; + var parseOptions = require_parse_options(); + var { safeRe: re, t } = require_re(); + var cmp = require_cmp(); + var debug = require_debug(); + var SemVer = require_semver(); + var Range = require_range2(); + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/satisfies.js +var require_satisfies = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/functions/satisfies.js"(exports2, module2) { + var Range = require_range2(); + var satisfies = (version2, range, options) => { + try { + range = new Range(range, options); + } catch (er) { + return false; + } + return range.test(version2); + }; + module2.exports = satisfies; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/to-comparators.js +var require_to_comparators = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/to-comparators.js"(exports2, module2) { + var Range = require_range2(); + var toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")); + module2.exports = toComparators; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/max-satisfying.js +var require_max_satisfying = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) { + var SemVer = require_semver(); + var Range = require_range2(); + var maxSatisfying = (versions, range, options) => { + let max = null; + let maxSV = null; + let rangeObj = null; + try { + rangeObj = new Range(range, options); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!max || maxSV.compare(v) === -1) { + max = v; + maxSV = new SemVer(max, options); + } + } + }); + return max; + }; + module2.exports = maxSatisfying; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/min-satisfying.js +var require_min_satisfying = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) { + var SemVer = require_semver(); + var Range = require_range2(); + var minSatisfying = (versions, range, options) => { + let min = null; + let minSV = null; + let rangeObj = null; + try { + rangeObj = new Range(range, options); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!min || minSV.compare(v) === 1) { + min = v; + minSV = new SemVer(min, options); + } + } + }); + return min; + }; + module2.exports = minSatisfying; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/min-version.js +var require_min_version = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/min-version.js"(exports2, module2) { + var SemVer = require_semver(); + var Range = require_range2(); + var gt = require_gt(); + var minVersion = (range, loose) => { + range = new Range(range, loose); + let minver = new SemVer("0.0.0"); + if (range.test(minver)) { + return minver; + } + minver = new SemVer("0.0.0-0"); + if (range.test(minver)) { + return minver; + } + minver = null; + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i]; + let setMin = null; + comparators.forEach((comparator) => { + const compver = new SemVer(comparator.semver.version); + switch (comparator.operator) { + case ">": + if (compver.prerelease.length === 0) { + compver.patch++; + } else { + compver.prerelease.push(0); + } + compver.raw = compver.format(); + case "": + case ">=": + if (!setMin || gt(compver, setMin)) { + setMin = compver; + } + break; + case "<": + case "<=": + break; + default: + throw new Error(`Unexpected operation: ${comparator.operator}`); + } + }); + if (setMin && (!minver || gt(minver, setMin))) { + minver = setMin; + } + } + if (minver && range.test(minver)) { + return minver; + } + return null; + }; + module2.exports = minVersion; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/valid.js +var require_valid2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/valid.js"(exports2, module2) { + var Range = require_range2(); + var validRange = (range, options) => { + try { + return new Range(range, options).range || "*"; + } catch (er) { + return null; + } + }; + module2.exports = validRange; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/outside.js +var require_outside = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/outside.js"(exports2, module2) { + var SemVer = require_semver(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var Range = require_range2(); + var satisfies = require_satisfies(); + var gt = require_gt(); + var lt = require_lt(); + var lte = require_lte(); + var gte = require_gte(); + var outside = (version2, range, hilo, options) => { + version2 = new SemVer(version2, options); + range = new Range(range, options); + let gtfn, ltefn, ltfn, comp, ecomp; + switch (hilo) { + case ">": + gtfn = gt; + ltefn = lte; + ltfn = lt; + comp = ">"; + ecomp = ">="; + break; + case "<": + gtfn = lt; + ltefn = gte; + ltfn = gt; + comp = "<"; + ecomp = "<="; + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + if (satisfies(version2, range, options)) { + return false; + } + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i]; + let high = null; + let low = null; + comparators.forEach((comparator) => { + if (comparator.semver === ANY) { + comparator = new Comparator(">=0.0.0"); + } + high = high || comparator; + low = low || comparator; + if (gtfn(comparator.semver, high.semver, options)) { + high = comparator; + } else if (ltfn(comparator.semver, low.semver, options)) { + low = comparator; + } + }); + if (high.operator === comp || high.operator === ecomp) { + return false; + } + if ((!low.operator || low.operator === comp) && ltefn(version2, low.semver)) { + return false; + } else if (low.operator === ecomp && ltfn(version2, low.semver)) { + return false; + } + } + return true; + }; + module2.exports = outside; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/gtr.js +var require_gtr = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/gtr.js"(exports2, module2) { + var outside = require_outside(); + var gtr = (version2, range, options) => outside(version2, range, ">", options); + module2.exports = gtr; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/ltr.js +var require_ltr = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/ltr.js"(exports2, module2) { + var outside = require_outside(); + var ltr = (version2, range, options) => outside(version2, range, "<", options); + module2.exports = ltr; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/intersects.js +var require_intersects = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/intersects.js"(exports2, module2) { + var Range = require_range2(); + var intersects = (r1, r2, options) => { + r1 = new Range(r1, options); + r2 = new Range(r2, options); + return r1.intersects(r2, options); + }; + module2.exports = intersects; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/simplify.js +var require_simplify = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/simplify.js"(exports2, module2) { + var satisfies = require_satisfies(); + var compare = require_compare(); + module2.exports = (versions, range, options) => { + const set = []; + let first = null; + let prev = null; + const v = versions.sort((a, b) => compare(a, b, options)); + for (const version2 of v) { + const included = satisfies(version2, range, options); + if (included) { + prev = version2; + if (!first) { + first = version2; + } + } else { + if (prev) { + set.push([first, prev]); + } + prev = null; + first = null; + } + } + if (first) { + set.push([first, null]); + } + const ranges = []; + for (const [min, max] of set) { + if (min === max) { + ranges.push(min); + } else if (!max && min === v[0]) { + ranges.push("*"); + } else if (!max) { + ranges.push(`>=${min}`); + } else if (min === v[0]) { + ranges.push(`<=${max}`); + } else { + ranges.push(`${min} - ${max}`); + } + } + const simplified = ranges.join(" || "); + const original = typeof range.raw === "string" ? range.raw : String(range); + return simplified.length < original.length ? simplified : range; + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/subset.js +var require_subset = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/ranges/subset.js"(exports2, module2) { + var Range = require_range2(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var satisfies = require_satisfies(); + var compare = require_compare(); + var subset = (sub, dom, options = {}) => { + if (sub === dom) { + return true; + } + sub = new Range(sub, options); + dom = new Range(dom, options); + let sawNonNull = false; + OUTER: + for (const simpleSub of sub.set) { + for (const simpleDom of dom.set) { + const isSub = simpleSubset(simpleSub, simpleDom, options); + sawNonNull = sawNonNull || isSub !== null; + if (isSub) { + continue OUTER; + } + } + if (sawNonNull) { + return false; + } + } + return true; + }; + var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")]; + var minimumVersion = [new Comparator(">=0.0.0")]; + var simpleSubset = (sub, dom, options) => { + if (sub === dom) { + return true; + } + if (sub.length === 1 && sub[0].semver === ANY) { + if (dom.length === 1 && dom[0].semver === ANY) { + return true; + } else if (options.includePrerelease) { + sub = minimumVersionWithPreRelease; + } else { + sub = minimumVersion; + } + } + if (dom.length === 1 && dom[0].semver === ANY) { + if (options.includePrerelease) { + return true; + } else { + dom = minimumVersion; + } + } + const eqSet = /* @__PURE__ */ new Set(); + let gt, lt; + for (const c of sub) { + if (c.operator === ">" || c.operator === ">=") { + gt = higherGT(gt, c, options); + } else if (c.operator === "<" || c.operator === "<=") { + lt = lowerLT(lt, c, options); + } else { + eqSet.add(c.semver); + } + } + if (eqSet.size > 1) { + return null; + } + let gtltComp; + if (gt && lt) { + gtltComp = compare(gt.semver, lt.semver, options); + if (gtltComp > 0) { + return null; + } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) { + return null; + } + } + for (const eq of eqSet) { + if (gt && !satisfies(eq, String(gt), options)) { + return null; + } + if (lt && !satisfies(eq, String(lt), options)) { + return null; + } + for (const c of dom) { + if (!satisfies(eq, String(c), options)) { + return false; + } + } + return true; + } + let higher, lower; + let hasDomLT, hasDomGT; + let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false; + let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false; + if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) { + needDomLTPre = false; + } + for (const c of dom) { + hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">="; + hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<="; + if (gt) { + if (needDomGTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) { + needDomGTPre = false; + } + } + if (c.operator === ">" || c.operator === ">=") { + higher = higherGT(gt, c, options); + if (higher === c && higher !== gt) { + return false; + } + } else if (gt.operator === ">=" && !satisfies(gt.semver, String(c), options)) { + return false; + } + } + if (lt) { + if (needDomLTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) { + needDomLTPre = false; + } + } + if (c.operator === "<" || c.operator === "<=") { + lower = lowerLT(lt, c, options); + if (lower === c && lower !== lt) { + return false; + } + } else if (lt.operator === "<=" && !satisfies(lt.semver, String(c), options)) { + return false; + } + } + if (!c.operator && (lt || gt) && gtltComp !== 0) { + return false; + } + } + if (gt && hasDomLT && !lt && gtltComp !== 0) { + return false; + } + if (lt && hasDomGT && !gt && gtltComp !== 0) { + return false; + } + if (needDomGTPre || needDomLTPre) { + return false; + } + return true; + }; + var higherGT = (a, b, options) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options); + return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a; + }; + var lowerLT = (a, b, options) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options); + return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a; + }; + module2.exports = subset; + } +}); + +// ../node_modules/.pnpm/semver@7.5.3/node_modules/semver/index.js +var require_semver2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.3/node_modules/semver/index.js"(exports2, module2) { + var internalRe = require_re(); + var constants = require_constants3(); + var SemVer = require_semver(); + var identifiers = require_identifiers(); + var parse2 = require_parse3(); + var valid = require_valid(); + var clean = require_clean(); + var inc = require_inc(); + var diff = require_diff(); + var major = require_major(); + var minor = require_minor(); + var patch = require_patch(); + var prerelease = require_prerelease(); + var compare = require_compare(); + var rcompare = require_rcompare(); + var compareLoose = require_compare_loose(); + var compareBuild = require_compare_build(); + var sort = require_sort2(); + var rsort = require_rsort(); + var gt = require_gt(); + var lt = require_lt(); + var eq = require_eq(); + var neq = require_neq(); + var gte = require_gte(); + var lte = require_lte(); + var cmp = require_cmp(); + var coerce = require_coerce(); + var Comparator = require_comparator(); + var Range = require_range2(); + var satisfies = require_satisfies(); + var toComparators = require_to_comparators(); + var maxSatisfying = require_max_satisfying(); + var minSatisfying = require_min_satisfying(); + var minVersion = require_min_version(); + var validRange = require_valid2(); + var outside = require_outside(); + var gtr = require_gtr(); + var ltr = require_ltr(); + var intersects = require_intersects(); + var simplifyRange = require_simplify(); + var subset = require_subset(); + module2.exports = { + parse: parse2, + valid, + clean, + inc, + diff, + major, + minor, + patch, + prerelease, + compare, + rcompare, + compareLoose, + compareBuild, + sort, + rsort, + gt, + lt, + eq, + neq, + gte, + lte, + cmp, + coerce, + Comparator, + Range, + satisfies, + toComparators, + maxSatisfying, + minSatisfying, + minVersion, + validRange, + outside, + gtr, + ltr, + intersects, + simplifyRange, + subset, + SemVer, + re: internalRe.re, + src: internalRe.src, + tokens: internalRe.t, + SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION, + RELEASE_TYPES: constants.RELEASE_TYPES, + compareIdentifiers: identifiers.compareIdentifiers, + rcompareIdentifiers: identifiers.rcompareIdentifiers + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_objectAssign.js +var require_objectAssign = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_objectAssign.js"(exports2, module2) { + var _has = require_has(); + function _objectAssign(target) { + if (target == null) { + throw new TypeError("Cannot convert undefined or null to object"); + } + var output = Object(target); + var idx = 1; + var length = arguments.length; + while (idx < length) { + var source = arguments[idx]; + if (source != null) { + for (var nextKey in source) { + if (_has(nextKey, source)) { + output[nextKey] = source[nextKey]; + } + } + } + idx += 1; + } + return output; + } + module2.exports = typeof Object.assign === "function" ? Object.assign : _objectAssign; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeRight.js +var require_mergeRight = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeRight.js"(exports2, module2) { + var _objectAssign = require_objectAssign(); + var _curry2 = require_curry2(); + var mergeRight = /* @__PURE__ */ _curry2(function mergeRight2(l, r) { + return _objectAssign({}, l, r); + }); + module2.exports = mergeRight; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_indexOf.js +var require_indexOf = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_indexOf.js"(exports2, module2) { + var equals = require_equals2(); + function _indexOf(list, a, idx) { + var inf, item; + if (typeof list.indexOf === "function") { + switch (typeof a) { + case "number": + if (a === 0) { + inf = 1 / a; + while (idx < list.length) { + item = list[idx]; + if (item === 0 && 1 / item === inf) { + return idx; + } + idx += 1; + } + return -1; + } else if (a !== a) { + while (idx < list.length) { + item = list[idx]; + if (typeof item === "number" && item !== item) { + return idx; + } + idx += 1; + } + return -1; + } + return list.indexOf(a, idx); + case "string": + case "boolean": + case "function": + case "undefined": + return list.indexOf(a, idx); + case "object": + if (a === null) { + return list.indexOf(a, idx); + } + } + } + while (idx < list.length) { + if (equals(list[idx], a)) { + return idx; + } + idx += 1; + } + return -1; + } + module2.exports = _indexOf; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_includes.js +var require_includes = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_includes.js"(exports2, module2) { + var _indexOf = require_indexOf(); + function _includes(a, list) { + return _indexOf(list, a, 0) >= 0; + } + module2.exports = _includes; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_Set.js +var require_Set = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_Set.js"(exports2, module2) { + var _includes = require_includes(); + var _Set = /* @__PURE__ */ function() { + function _Set2() { + this._nativeSet = typeof Set === "function" ? /* @__PURE__ */ new Set() : null; + this._items = {}; + } + _Set2.prototype.add = function(item) { + return !hasOrAdd(item, true, this); + }; + _Set2.prototype.has = function(item) { + return hasOrAdd(item, false, this); + }; + return _Set2; + }(); + function hasOrAdd(item, shouldAdd, set) { + var type = typeof item; + var prevSize, newSize; + switch (type) { + case "string": + case "number": + if (item === 0 && 1 / item === -Infinity) { + if (set._items["-0"]) { + return true; + } else { + if (shouldAdd) { + set._items["-0"] = true; + } + return false; + } + } + if (set._nativeSet !== null) { + if (shouldAdd) { + prevSize = set._nativeSet.size; + set._nativeSet.add(item); + newSize = set._nativeSet.size; + return newSize === prevSize; + } else { + return set._nativeSet.has(item); + } + } else { + if (!(type in set._items)) { + if (shouldAdd) { + set._items[type] = {}; + set._items[type][item] = true; + } + return false; + } else if (item in set._items[type]) { + return true; + } else { + if (shouldAdd) { + set._items[type][item] = true; + } + return false; + } + } + case "boolean": + if (type in set._items) { + var bIdx = item ? 1 : 0; + if (set._items[type][bIdx]) { + return true; + } else { + if (shouldAdd) { + set._items[type][bIdx] = true; + } + return false; + } + } else { + if (shouldAdd) { + set._items[type] = item ? [false, true] : [true, false]; + } + return false; + } + case "function": + if (set._nativeSet !== null) { + if (shouldAdd) { + prevSize = set._nativeSet.size; + set._nativeSet.add(item); + newSize = set._nativeSet.size; + return newSize === prevSize; + } else { + return set._nativeSet.has(item); + } + } else { + if (!(type in set._items)) { + if (shouldAdd) { + set._items[type] = [item]; + } + return false; + } + if (!_includes(item, set._items[type])) { + if (shouldAdd) { + set._items[type].push(item); + } + return false; + } + return true; + } + case "undefined": + if (set._items[type]) { + return true; + } else { + if (shouldAdd) { + set._items[type] = true; + } + return false; + } + case "object": + if (item === null) { + if (!set._items["null"]) { + if (shouldAdd) { + set._items["null"] = true; + } + return false; + } + return true; + } + default: + type = Object.prototype.toString.call(item); + if (!(type in set._items)) { + if (shouldAdd) { + set._items[type] = [item]; + } + return false; + } + if (!_includes(item, set._items[type])) { + if (shouldAdd) { + set._items[type].push(item); + } + return false; + } + return true; + } + } + module2.exports = _Set; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/difference.js +var require_difference = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/difference.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _Set = require_Set(); + var difference = /* @__PURE__ */ _curry2(function difference2(first, second) { + var out = []; + var idx = 0; + var firstLen = first.length; + var secondLen = second.length; + var toFilterOut = new _Set(); + for (var i = 0; i < secondLen; i += 1) { + toFilterOut.add(second[i]); + } + while (idx < firstLen) { + if (toFilterOut.add(first[idx])) { + out[out.length] = first[idx]; + } + idx += 1; + } + return out; + }); + module2.exports = difference; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/pkgsDiff.js +var require_pkgsDiff = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/pkgsDiff.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPkgsDiff = exports2.propertyByDependencyType = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var mergeRight_1 = __importDefault4(require_mergeRight()); + var difference_1 = __importDefault4(require_difference()); + exports2.propertyByDependencyType = { + dev: "devDependencies", + nodeModulesOnly: "node_modules", + optional: "optionalDependencies", + peer: "peerDependencies", + prod: "dependencies" + }; + function getPkgsDiff(log$, opts) { + const deprecationSet$ = log$.deprecation.pipe((0, operators_1.filter)((log2) => log2.prefix === opts.prefix), (0, operators_1.scan)((acc, log2) => { + acc.add(log2.pkgId); + return acc; + }, /* @__PURE__ */ new Set()), (0, operators_1.startWith)(/* @__PURE__ */ new Set())); + const filterPrefix = (0, operators_1.filter)((log2) => log2.prefix === opts.prefix); + const pkgsDiff$ = Rx.combineLatest(log$.root.pipe(filterPrefix), deprecationSet$).pipe((0, operators_1.scan)((pkgsDiff, args2) => { + const rootLog = args2[0]; + const deprecationSet = args2[1]; + let action; + let log2; + if ("added" in rootLog) { + action = "+"; + log2 = rootLog["added"]; + } else if ("removed" in rootLog) { + action = "-"; + log2 = rootLog["removed"]; + } else { + return pkgsDiff; + } + const depType = log2.dependencyType || "nodeModulesOnly"; + const oppositeKey = `${action === "-" ? "+" : "-"}${log2.name}`; + const previous = pkgsDiff[depType][oppositeKey]; + if (previous && previous.version === log2.version) { + delete pkgsDiff[depType][oppositeKey]; + return pkgsDiff; + } + pkgsDiff[depType][`${action}${log2.name}`] = { + added: action === "+", + deprecated: deprecationSet.has(log2.id), + from: log2.linkedFrom, + latest: log2.latest, + name: log2.name, + realName: log2.realName, + version: log2.version + }; + return pkgsDiff; + }, { + dev: {}, + nodeModulesOnly: {}, + optional: {}, + peer: {}, + prod: {} + }), (0, operators_1.startWith)({ + dev: {}, + nodeModulesOnly: {}, + optional: {}, + peer: {}, + prod: {} + })); + const packageManifest$ = Rx.merge(log$.packageManifest.pipe(filterPrefix), log$.summary.pipe(filterPrefix, (0, operators_1.mapTo)({}))).pipe( + (0, operators_1.take)(2), + (0, operators_1.reduce)(mergeRight_1.default, {}) + // eslint-disable-line @typescript-eslint/no-explicit-any + ); + return Rx.combineLatest(pkgsDiff$, packageManifest$).pipe((0, operators_1.map)(([pkgsDiff, packageManifests]) => { + if (packageManifests["initial"] == null || packageManifests["updated"] == null) + return pkgsDiff; + const initialPackageManifest = removeOptionalFromProdDeps(packageManifests["initial"]); + const updatedPackageManifest = removeOptionalFromProdDeps(packageManifests["updated"]); + for (const depType of ["peer", "prod", "optional", "dev"]) { + const prop = exports2.propertyByDependencyType[depType]; + const initialDeps = Object.keys(initialPackageManifest[prop] || {}); + const updatedDeps = Object.keys(updatedPackageManifest[prop] || {}); + const removedDeps = (0, difference_1.default)(initialDeps, updatedDeps); + for (const removedDep of removedDeps) { + if (!pkgsDiff[depType][`-${removedDep}`]) { + pkgsDiff[depType][`-${removedDep}`] = { + added: false, + name: removedDep, + version: initialPackageManifest[prop][removedDep] + }; + } + } + const addedDeps = (0, difference_1.default)(updatedDeps, initialDeps); + for (const addedDep of addedDeps) { + if (!pkgsDiff[depType][`+${addedDep}`]) { + pkgsDiff[depType][`+${addedDep}`] = { + added: true, + name: addedDep, + version: updatedPackageManifest[prop][addedDep] + }; + } + } + } + return pkgsDiff; + })); + } + exports2.getPkgsDiff = getPkgsDiff; + function removeOptionalFromProdDeps(pkg) { + if (pkg.dependencies == null || pkg.optionalDependencies == null) + return pkg; + for (const depName of Object.keys(pkg.dependencies)) { + if (pkg.optionalDependencies[depName]) { + delete pkg.dependencies[depName]; + } + } + return pkg; + } + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportSummary.js +var require_reportSummary = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportSummary.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportSummary = void 0; + var path_1 = __importDefault4(require("path")); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var chalk_1 = __importDefault4(require_source()); + var semver_12 = __importDefault4(require_semver2()); + var constants_1 = require_constants2(); + var pkgsDiff_1 = require_pkgsDiff(); + var outputConstants_1 = require_outputConstants(); + var CONFIG_BY_DEP_TYPE = { + prod: "production", + dev: "dev", + optional: "optional" + }; + function reportSummary(log$, opts) { + const pkgsDiff$ = (0, pkgsDiff_1.getPkgsDiff)(log$, { prefix: opts.cwd }); + const summaryLog$ = log$.summary.pipe((0, operators_1.take)(1)); + return Rx.combineLatest(pkgsDiff$, summaryLog$).pipe((0, operators_1.take)(1), (0, operators_1.map)(([pkgsDiff]) => { + let msg = ""; + for (const depType of ["prod", "optional", "peer", "dev", "nodeModulesOnly"]) { + const diffs = Object.values(pkgsDiff[depType]); + if (diffs.length > 0) { + msg += constants_1.EOL; + if (opts.pnpmConfig?.global) { + msg += chalk_1.default.cyanBright(`${opts.cwd}:`); + } else { + msg += chalk_1.default.cyanBright(`${pkgsDiff_1.propertyByDependencyType[depType]}:`); + } + msg += constants_1.EOL; + msg += printDiffs(diffs, { prefix: opts.cwd }); + msg += constants_1.EOL; + } else if (opts.pnpmConfig?.[CONFIG_BY_DEP_TYPE[depType]] === false) { + msg += constants_1.EOL; + msg += `${chalk_1.default.cyanBright(`${pkgsDiff_1.propertyByDependencyType[depType]}:`)} skipped`; + if (opts.env.NODE_ENV === "production" && depType === "dev") { + msg += " because NODE_ENV is set to production"; + } + msg += constants_1.EOL; + } + } + return Rx.of({ msg }); + })); + } + exports2.reportSummary = reportSummary; + function printDiffs(pkgsDiff, opts) { + pkgsDiff.sort((a, b) => a.name.localeCompare(b.name) * 10 + (Number(!b.added) - Number(!a.added))); + const msg = pkgsDiff.map((pkg) => { + let result2 = pkg.added ? outputConstants_1.ADDED_CHAR : outputConstants_1.REMOVED_CHAR; + if (!pkg.realName || pkg.name === pkg.realName) { + result2 += ` ${pkg.name}`; + } else { + result2 += ` ${pkg.name} <- ${pkg.realName}`; + } + if (pkg.version) { + result2 += ` ${chalk_1.default.grey(pkg.version)}`; + if (pkg.latest && semver_12.default.lt(pkg.version, pkg.latest)) { + result2 += ` ${chalk_1.default.grey(`(${pkg.latest} is available)`)}`; + } + } + if (pkg.deprecated) { + result2 += ` ${chalk_1.default.red("deprecated")}`; + } + if (pkg.from) { + result2 += ` ${chalk_1.default.grey(`<- ${pkg.from && path_1.default.relative(opts.prefix, pkg.from) || "???"}`)}`; + } + return result2; + }).join(constants_1.EOL); + return msg; + } + } +}); + +// ../node_modules/.pnpm/widest-line@3.1.0/node_modules/widest-line/index.js +var require_widest_line = __commonJS({ + "../node_modules/.pnpm/widest-line@3.1.0/node_modules/widest-line/index.js"(exports2, module2) { + "use strict"; + var stringWidth = require_string_width(); + var widestLine = (input) => { + let max = 0; + for (const line of input.split("\n")) { + max = Math.max(max, stringWidth(line)); + } + return max; + }; + module2.exports = widestLine; + module2.exports.default = widestLine; + } +}); + +// ../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/boxes.json +var require_boxes = __commonJS({ + "../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/boxes.json"(exports2, module2) { + module2.exports = { + single: { + topLeft: "\u250C", + topRight: "\u2510", + bottomRight: "\u2518", + bottomLeft: "\u2514", + vertical: "\u2502", + horizontal: "\u2500" + }, + double: { + topLeft: "\u2554", + topRight: "\u2557", + bottomRight: "\u255D", + bottomLeft: "\u255A", + vertical: "\u2551", + horizontal: "\u2550" + }, + round: { + topLeft: "\u256D", + topRight: "\u256E", + bottomRight: "\u256F", + bottomLeft: "\u2570", + vertical: "\u2502", + horizontal: "\u2500" + }, + bold: { + topLeft: "\u250F", + topRight: "\u2513", + bottomRight: "\u251B", + bottomLeft: "\u2517", + vertical: "\u2503", + horizontal: "\u2501" + }, + singleDouble: { + topLeft: "\u2553", + topRight: "\u2556", + bottomRight: "\u255C", + bottomLeft: "\u2559", + vertical: "\u2551", + horizontal: "\u2500" + }, + doubleSingle: { + topLeft: "\u2552", + topRight: "\u2555", + bottomRight: "\u255B", + bottomLeft: "\u2558", + vertical: "\u2502", + horizontal: "\u2550" + }, + classic: { + topLeft: "+", + topRight: "+", + bottomRight: "+", + bottomLeft: "+", + vertical: "|", + horizontal: "-" + } + }; + } +}); + +// ../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/index.js +var require_cli_boxes = __commonJS({ + "../node_modules/.pnpm/cli-boxes@2.2.1/node_modules/cli-boxes/index.js"(exports2, module2) { + "use strict"; + var cliBoxes = require_boxes(); + module2.exports = cliBoxes; + module2.exports.default = cliBoxes; + } +}); + +// ../node_modules/.pnpm/ansi-align@3.0.1/node_modules/ansi-align/index.js +var require_ansi_align = __commonJS({ + "../node_modules/.pnpm/ansi-align@3.0.1/node_modules/ansi-align/index.js"(exports2, module2) { + "use strict"; + var stringWidth = require_string_width(); + function ansiAlign(text, opts) { + if (!text) + return text; + opts = opts || {}; + const align = opts.align || "center"; + if (align === "left") + return text; + const split = opts.split || "\n"; + const pad = opts.pad || " "; + const widthDiffFn = align !== "right" ? halfDiff : fullDiff; + let returnString = false; + if (!Array.isArray(text)) { + returnString = true; + text = String(text).split(split); + } + let width; + let maxWidth = 0; + text = text.map(function(str) { + str = String(str); + width = stringWidth(str); + maxWidth = Math.max(width, maxWidth); + return { + str, + width + }; + }).map(function(obj) { + return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad) + obj.str; + }); + return returnString ? text.join(split) : text; + } + ansiAlign.left = function left(text) { + return ansiAlign(text, { align: "left" }); + }; + ansiAlign.center = function center(text) { + return ansiAlign(text, { align: "center" }); + }; + ansiAlign.right = function right(text) { + return ansiAlign(text, { align: "right" }); + }; + module2.exports = ansiAlign; + function halfDiff(maxWidth, curWidth) { + return Math.floor((maxWidth - curWidth) / 2); + } + function fullDiff(maxWidth, curWidth) { + return maxWidth - curWidth; + } + } +}); + +// ../node_modules/.pnpm/wrap-ansi@7.0.0/node_modules/wrap-ansi/index.js +var require_wrap_ansi = __commonJS({ + "../node_modules/.pnpm/wrap-ansi@7.0.0/node_modules/wrap-ansi/index.js"(exports2, module2) { + "use strict"; + var stringWidth = require_string_width(); + var stripAnsi = require_strip_ansi(); + var ansiStyles = require_ansi_styles2(); + var ESCAPES = /* @__PURE__ */ new Set([ + "\x1B", + "\x9B" + ]); + var END_CODE = 39; + var ANSI_ESCAPE_BELL = "\x07"; + var ANSI_CSI = "["; + var ANSI_OSC = "]"; + var ANSI_SGR_TERMINATOR = "m"; + var ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`; + var wrapAnsi = (code) => `${ESCAPES.values().next().value}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`; + var wrapAnsiHyperlink = (uri) => `${ESCAPES.values().next().value}${ANSI_ESCAPE_LINK}${uri}${ANSI_ESCAPE_BELL}`; + var wordLengths = (string) => string.split(" ").map((character) => stringWidth(character)); + var wrapWord = (rows, word, columns) => { + const characters = [...word]; + let isInsideEscape = false; + let isInsideLinkEscape = false; + let visible = stringWidth(stripAnsi(rows[rows.length - 1])); + for (const [index, character] of characters.entries()) { + const characterLength = stringWidth(character); + if (visible + characterLength <= columns) { + rows[rows.length - 1] += character; + } else { + rows.push(character); + visible = 0; + } + if (ESCAPES.has(character)) { + isInsideEscape = true; + isInsideLinkEscape = characters.slice(index + 1).join("").startsWith(ANSI_ESCAPE_LINK); + } + if (isInsideEscape) { + if (isInsideLinkEscape) { + if (character === ANSI_ESCAPE_BELL) { + isInsideEscape = false; + isInsideLinkEscape = false; + } + } else if (character === ANSI_SGR_TERMINATOR) { + isInsideEscape = false; + } + continue; + } + visible += characterLength; + if (visible === columns && index < characters.length - 1) { + rows.push(""); + visible = 0; + } + } + if (!visible && rows[rows.length - 1].length > 0 && rows.length > 1) { + rows[rows.length - 2] += rows.pop(); + } + }; + var stringVisibleTrimSpacesRight = (string) => { + const words = string.split(" "); + let last = words.length; + while (last > 0) { + if (stringWidth(words[last - 1]) > 0) { + break; + } + last--; + } + if (last === words.length) { + return string; + } + return words.slice(0, last).join(" ") + words.slice(last).join(""); + }; + var exec = (string, columns, options = {}) => { + if (options.trim !== false && string.trim() === "") { + return ""; + } + let returnValue = ""; + let escapeCode; + let escapeUrl; + const lengths = wordLengths(string); + let rows = [""]; + for (const [index, word] of string.split(" ").entries()) { + if (options.trim !== false) { + rows[rows.length - 1] = rows[rows.length - 1].trimStart(); + } + let rowLength = stringWidth(rows[rows.length - 1]); + if (index !== 0) { + if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) { + rows.push(""); + rowLength = 0; + } + if (rowLength > 0 || options.trim === false) { + rows[rows.length - 1] += " "; + rowLength++; + } + } + if (options.hard && lengths[index] > columns) { + const remainingColumns = columns - rowLength; + const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns); + const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns); + if (breaksStartingNextLine < breaksStartingThisLine) { + rows.push(""); + } + wrapWord(rows, word, columns); + continue; + } + if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) { + if (options.wordWrap === false && rowLength < columns) { + wrapWord(rows, word, columns); + continue; + } + rows.push(""); + } + if (rowLength + lengths[index] > columns && options.wordWrap === false) { + wrapWord(rows, word, columns); + continue; + } + rows[rows.length - 1] += word; + } + if (options.trim !== false) { + rows = rows.map(stringVisibleTrimSpacesRight); + } + const pre = [...rows.join("\n")]; + for (const [index, character] of pre.entries()) { + returnValue += character; + if (ESCAPES.has(character)) { + const { groups } = new RegExp(`(?:\\${ANSI_CSI}(?\\d+)m|\\${ANSI_ESCAPE_LINK}(?.*)${ANSI_ESCAPE_BELL})`).exec(pre.slice(index).join("")) || { groups: {} }; + if (groups.code !== void 0) { + const code2 = Number.parseFloat(groups.code); + escapeCode = code2 === END_CODE ? void 0 : code2; + } else if (groups.uri !== void 0) { + escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri; + } + } + const code = ansiStyles.codes.get(Number(escapeCode)); + if (pre[index + 1] === "\n") { + if (escapeUrl) { + returnValue += wrapAnsiHyperlink(""); + } + if (escapeCode && code) { + returnValue += wrapAnsi(code); + } + } else if (character === "\n") { + if (escapeCode && code) { + returnValue += wrapAnsi(escapeCode); + } + if (escapeUrl) { + returnValue += wrapAnsiHyperlink(escapeUrl); + } + } + } + return returnValue; + }; + module2.exports = (string, columns, options) => { + return String(string).normalize().replace(/\r\n/g, "\n").split("\n").map((line) => exec(line, columns, options)).join("\n"); + }; + } +}); + +// ../node_modules/.pnpm/boxen@5.1.2/node_modules/boxen/index.js +var require_boxen = __commonJS({ + "../node_modules/.pnpm/boxen@5.1.2/node_modules/boxen/index.js"(exports2, module2) { + "use strict"; + var stringWidth = require_string_width(); + var chalk = require_source(); + var widestLine = require_widest_line(); + var cliBoxes = require_cli_boxes(); + var camelCase = require_camelcase(); + var ansiAlign = require_ansi_align(); + var wrapAnsi = require_wrap_ansi(); + var NL = "\n"; + var PAD = " "; + var terminalColumns = () => { + const { env, stdout, stderr } = process; + if (stdout && stdout.columns) { + return stdout.columns; + } + if (stderr && stderr.columns) { + return stderr.columns; + } + if (env.COLUMNS) { + return Number.parseInt(env.COLUMNS, 10); + } + return 80; + }; + var getObject = (detail) => { + return typeof detail === "number" ? { + top: detail, + right: detail * 3, + bottom: detail, + left: detail * 3 + } : { + top: 0, + right: 0, + bottom: 0, + left: 0, + ...detail + }; + }; + var getBorderChars = (borderStyle) => { + const sides = [ + "topLeft", + "topRight", + "bottomRight", + "bottomLeft", + "vertical", + "horizontal" + ]; + let chararacters; + if (typeof borderStyle === "string") { + chararacters = cliBoxes[borderStyle]; + if (!chararacters) { + throw new TypeError(`Invalid border style: ${borderStyle}`); + } + } else { + for (const side of sides) { + if (!borderStyle[side] || typeof borderStyle[side] !== "string") { + throw new TypeError(`Invalid border style: ${side}`); + } + } + chararacters = borderStyle; + } + return chararacters; + }; + var makeTitle = (text, horizontal, alignement) => { + let title = ""; + const textWidth = stringWidth(text); + switch (alignement) { + case "left": + title = text + horizontal.slice(textWidth); + break; + case "right": + title = horizontal.slice(textWidth) + text; + break; + default: + horizontal = horizontal.slice(textWidth); + if (horizontal.length % 2 === 1) { + horizontal = horizontal.slice(Math.floor(horizontal.length / 2)); + title = horizontal.slice(1) + text + horizontal; + } else { + horizontal = horizontal.slice(horizontal.length / 2); + title = horizontal + text + horizontal; + } + break; + } + return title; + }; + var makeContentText = (text, padding, columns, align) => { + text = ansiAlign(text, { align }); + let lines = text.split(NL); + const textWidth = widestLine(text); + const max = columns - padding.left - padding.right; + if (textWidth > max) { + const newLines = []; + for (const line of lines) { + const createdLines = wrapAnsi(line, max, { hard: true }); + const alignedLines = ansiAlign(createdLines, { align }); + const alignedLinesArray = alignedLines.split("\n"); + const longestLength = Math.max(...alignedLinesArray.map((s) => stringWidth(s))); + for (const alignedLine of alignedLinesArray) { + let paddedLine; + switch (align) { + case "center": + paddedLine = PAD.repeat((max - longestLength) / 2) + alignedLine; + break; + case "right": + paddedLine = PAD.repeat(max - longestLength) + alignedLine; + break; + default: + paddedLine = alignedLine; + break; + } + newLines.push(paddedLine); + } + } + lines = newLines; + } + if (align === "center" && textWidth < max) { + lines = lines.map((line) => PAD.repeat((max - textWidth) / 2) + line); + } else if (align === "right" && textWidth < max) { + lines = lines.map((line) => PAD.repeat(max - textWidth) + line); + } + const paddingLeft = PAD.repeat(padding.left); + const paddingRight = PAD.repeat(padding.right); + lines = lines.map((line) => paddingLeft + line + paddingRight); + lines = lines.map((line) => { + if (columns - stringWidth(line) > 0) { + switch (align) { + case "center": + return line + PAD.repeat(columns - stringWidth(line)); + case "right": + return line + PAD.repeat(columns - stringWidth(line)); + default: + return line + PAD.repeat(columns - stringWidth(line)); + } + } + return line; + }); + if (padding.top > 0) { + lines = new Array(padding.top).fill(PAD.repeat(columns)).concat(lines); + } + if (padding.bottom > 0) { + lines = lines.concat(new Array(padding.bottom).fill(PAD.repeat(columns))); + } + return lines.join(NL); + }; + var isHex = (color) => color.match(/^#(?:[0-f]{3}){1,2}$/i); + var isColorValid = (color) => typeof color === "string" && (chalk[color] || isHex(color)); + var getColorFn = (color) => isHex(color) ? chalk.hex(color) : chalk[color]; + var getBGColorFn = (color) => isHex(color) ? chalk.bgHex(color) : chalk[camelCase(["bg", color])]; + module2.exports = (text, options) => { + options = { + padding: 0, + borderStyle: "single", + dimBorder: false, + textAlignment: "left", + float: "left", + titleAlignment: "left", + ...options + }; + if (options.align) { + options.textAlignment = options.align; + } + const BORDERS_WIDTH = 2; + if (options.borderColor && !isColorValid(options.borderColor)) { + throw new Error(`${options.borderColor} is not a valid borderColor`); + } + if (options.backgroundColor && !isColorValid(options.backgroundColor)) { + throw new Error(`${options.backgroundColor} is not a valid backgroundColor`); + } + const chars = getBorderChars(options.borderStyle); + const padding = getObject(options.padding); + const margin = getObject(options.margin); + const colorizeBorder = (border) => { + const newBorder = options.borderColor ? getColorFn(options.borderColor)(border) : border; + return options.dimBorder ? chalk.dim(newBorder) : newBorder; + }; + const colorizeContent = (content) => options.backgroundColor ? getBGColorFn(options.backgroundColor)(content) : content; + const columns = terminalColumns(); + let contentWidth = widestLine(wrapAnsi(text, columns - BORDERS_WIDTH, { hard: true, trim: false })) + padding.left + padding.right; + let title = options.title && options.title.slice(0, columns - 4 - margin.left - margin.right); + if (title) { + title = ` ${title} `; + if (stringWidth(title) > contentWidth) { + contentWidth = stringWidth(title); + } + } + if (margin.left && margin.right && contentWidth + BORDERS_WIDTH + margin.left + margin.right > columns) { + const spaceForMargins = columns - contentWidth - BORDERS_WIDTH; + const multiplier = spaceForMargins / (margin.left + margin.right); + margin.left = Math.max(0, Math.floor(margin.left * multiplier)); + margin.right = Math.max(0, Math.floor(margin.right * multiplier)); + } + contentWidth = Math.min(contentWidth, columns - BORDERS_WIDTH - margin.left - margin.right); + text = makeContentText(text, padding, contentWidth, options.textAlignment); + let marginLeft = PAD.repeat(margin.left); + if (options.float === "center") { + const marginWidth = Math.max((columns - contentWidth - BORDERS_WIDTH) / 2, 0); + marginLeft = PAD.repeat(marginWidth); + } else if (options.float === "right") { + const marginWidth = Math.max(columns - contentWidth - margin.right - BORDERS_WIDTH, 0); + marginLeft = PAD.repeat(marginWidth); + } + const horizontal = chars.horizontal.repeat(contentWidth); + const top = colorizeBorder(NL.repeat(margin.top) + marginLeft + chars.topLeft + (title ? makeTitle(title, horizontal, options.titleAlignment) : horizontal) + chars.topRight); + const bottom = colorizeBorder(marginLeft + chars.bottomLeft + horizontal + chars.bottomRight + NL.repeat(margin.bottom)); + const side = colorizeBorder(chars.vertical); + const LINE_SEPARATOR = contentWidth + BORDERS_WIDTH + margin.left >= columns ? "" : NL; + const lines = text.split(NL); + const middle = lines.map((line) => { + return marginLeft + side + colorizeContent(line) + side; + }).join(LINE_SEPARATOR); + return top + LINE_SEPARATOR + middle + LINE_SEPARATOR + bottom; + }; + module2.exports._borderStyles = cliBoxes; + } +}); + +// ../cli/default-reporter/lib/reporterForClient/reportUpdateCheck.js +var require_reportUpdateCheck = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/reportUpdateCheck.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportUpdateCheck = void 0; + var boxen_1 = __importDefault4(require_boxen()); + var chalk_1 = __importDefault4(require_source()); + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var semver_12 = __importDefault4(require_semver2()); + function reportUpdateCheck(log$, opts) { + return log$.pipe((0, operators_1.take)(1), (0, operators_1.filter)((log2) => semver_12.default.gt(log2.latestVersion, log2.currentVersion)), (0, operators_1.map)((log2) => { + const updateMessage = renderUpdateMessage({ + currentPkgIsExecutable: detectIfCurrentPkgIsExecutable(opts.process), + latestVersion: log2.latestVersion, + env: opts.env + }); + return Rx.of({ + msg: (0, boxen_1.default)(`Update available! ${chalk_1.default.red(log2.currentVersion)} \u2192 ${chalk_1.default.green(log2.latestVersion)}. +${chalk_1.default.magenta("Changelog:")} https://github.com/pnpm/pnpm/releases/tag/v${log2.latestVersion} +${updateMessage} + +Follow ${chalk_1.default.magenta("@pnpmjs")} for updates: https://twitter.com/pnpmjs`, { + padding: 1, + margin: 1, + align: "center", + borderColor: "yellow", + borderStyle: "round" + }) + }); + })); + } + exports2.reportUpdateCheck = reportUpdateCheck; + function renderUpdateMessage(opts) { + if (opts.currentPkgIsExecutable && opts.env.PNPM_HOME) { + return "Run a script from: https://pnpm.io/installation"; + } + const updateCommand = renderUpdateCommand(opts); + return `Run "${chalk_1.default.magenta(updateCommand)}" to update.`; + } + function renderUpdateCommand(opts) { + if (opts.env.COREPACK_ROOT) { + return `corepack prepare pnpm@${opts.latestVersion} --activate`; + } + const pkgName = opts.currentPkgIsExecutable ? "@pnpm/exe" : "pnpm"; + return `pnpm add -g ${pkgName}`; + } + function detectIfCurrentPkgIsExecutable(process2) { + return process2["pkg"] != null; + } + } +}); + +// ../cli/default-reporter/lib/reporterForClient/index.js +var require_reporterForClient = __commonJS({ + "../cli/default-reporter/lib/reporterForClient/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reporterForClient = void 0; + var operators_1 = require_operators(); + var reportBigTarballsProgress_1 = require_reportBigTarballsProgress(); + var reportContext_1 = require_reportContext(); + var reportExecutionTime_1 = require_reportExecutionTime(); + var reportDeprecations_1 = require_reportDeprecations(); + var reportHooks_1 = require_reportHooks(); + var reportInstallChecks_1 = require_reportInstallChecks(); + var reportLifecycleScripts_1 = require_reportLifecycleScripts(); + var reportMisc_1 = require_reportMisc(); + var reportPeerDependencyIssues_1 = require_reportPeerDependencyIssues(); + var reportProgress_1 = require_reportProgress(); + var reportRequestRetry_1 = require_reportRequestRetry(); + var reportScope_1 = require_reportScope(); + var reportSkippedOptionalDependencies_1 = require_reportSkippedOptionalDependencies(); + var reportStats_1 = require_reportStats(); + var reportSummary_1 = require_reportSummary(); + var reportUpdateCheck_1 = require_reportUpdateCheck(); + var PRINT_EXECUTION_TIME_IN_COMMANDS = { + install: true, + update: true, + add: true, + remove: true + }; + function reporterForClient(log$, opts) { + const width = opts.width ?? process.stdout.columns ?? 80; + const cwd = opts.pnpmConfig?.dir ?? process.cwd(); + const throttle = typeof opts.throttleProgress === "number" && opts.throttleProgress > 0 ? (0, operators_1.throttleTime)(opts.throttleProgress, void 0, { leading: true, trailing: true }) : void 0; + const outputs = [ + (0, reportLifecycleScripts_1.reportLifecycleScripts)(log$, { + appendOnly: opts.appendOnly === true || opts.streamLifecycleOutput, + aggregateOutput: opts.aggregateOutput, + cwd, + width + }), + (0, reportMisc_1.reportMisc)(log$, { + appendOnly: opts.appendOnly === true, + config: opts.config, + cwd, + logLevel: opts.logLevel, + zoomOutCurrent: opts.isRecursive + }), + (0, reportInstallChecks_1.reportInstallChecks)(log$.installCheck, { cwd }), + (0, reportScope_1.reportScope)(log$.scope, { isRecursive: opts.isRecursive, cmd: opts.cmd }), + (0, reportSkippedOptionalDependencies_1.reportSkippedOptionalDependencies)(log$.skippedOptionalDependency, { cwd }), + (0, reportHooks_1.reportHooks)(log$.hook, { cwd, isRecursive: opts.isRecursive }), + (0, reportUpdateCheck_1.reportUpdateCheck)(log$.updateCheck, opts) + ]; + if (opts.cmd !== "dlx") { + outputs.push((0, reportContext_1.reportContext)(log$, { cwd })); + } + if (opts.cmd in PRINT_EXECUTION_TIME_IN_COMMANDS) { + outputs.push((0, reportExecutionTime_1.reportExecutionTime)(log$.executionTime)); + } + const logLevelNumber = reportMisc_1.LOG_LEVEL_NUMBER[opts.logLevel ?? "info"] ?? reportMisc_1.LOG_LEVEL_NUMBER["info"]; + if (logLevelNumber >= reportMisc_1.LOG_LEVEL_NUMBER.warn) { + outputs.push((0, reportPeerDependencyIssues_1.reportPeerDependencyIssues)(log$), (0, reportDeprecations_1.reportDeprecations)(log$.deprecation, { cwd, isRecursive: opts.isRecursive }), (0, reportRequestRetry_1.reportRequestRetry)(log$.requestRetry)); + } + if (logLevelNumber >= reportMisc_1.LOG_LEVEL_NUMBER.info) { + outputs.push((0, reportProgress_1.reportProgress)(log$, { + cwd, + throttle + }), ...(0, reportStats_1.reportStats)(log$, { + cmd: opts.cmd, + cwd, + isRecursive: opts.isRecursive, + width + })); + } + if (!opts.appendOnly) { + outputs.push((0, reportBigTarballsProgress_1.reportBigTarballProgress)(log$)); + } + if (!opts.isRecursive) { + outputs.push((0, reportSummary_1.reportSummary)(log$, { + cwd, + env: opts.env, + pnpmConfig: opts.pnpmConfig + })); + } + return outputs; + } + exports2.reporterForClient = reporterForClient; + } +}); + +// ../cli/default-reporter/lib/reporterForServer.js +var require_reporterForServer = __commonJS({ + "../cli/default-reporter/lib/reporterForServer.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reporterForServer = void 0; + var chalk_1 = __importDefault4(require_source()); + var reportError_1 = require_reportError(); + function reporterForServer(log$, config) { + return log$.subscribe({ + complete: () => void 0, + error: () => void 0, + next(log2) { + if (log2.name === "pnpm:fetching-progress") { + console.log(`${chalk_1.default.cyan(`fetching_${log2.status}`)} ${log2.packageId}`); + return; + } + switch (log2.level) { + case "warn": + console.log(formatWarn(log2["message"])); + return; + case "error": + console.log((0, reportError_1.reportError)(log2, config)); + return; + case "debug": + return; + default: + console.log(log2["message"]); + } + } + }); + } + exports2.reporterForServer = reporterForServer; + function formatWarn(message2) { + return `${chalk_1.default.bgYellow.black("\u2009WARN\u2009")} ${message2}`; + } + } +}); + +// ../cli/default-reporter/lib/index.js +var require_lib23 = __commonJS({ + "../cli/default-reporter/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toOutput$ = exports2.initDefaultReporter = exports2.formatWarn = void 0; + var Rx = __importStar5(require_cjs2()); + var operators_1 = require_operators(); + var ansi_diff_1 = __importDefault4(require_ansi_diff()); + var constants_1 = require_constants2(); + var mergeOutputs_1 = require_mergeOutputs(); + var reporterForClient_1 = require_reporterForClient(); + var formatWarn_1 = require_formatWarn(); + Object.defineProperty(exports2, "formatWarn", { enumerable: true, get: function() { + return formatWarn_1.formatWarn; + } }); + var reporterForServer_1 = require_reporterForServer(); + function initDefaultReporter(opts) { + if (opts.context.argv[0] === "server") { + const log$ = Rx.fromEvent(opts.streamParser, "data"); + const subscription2 = (0, reporterForServer_1.reporterForServer)(log$, opts.context.config); + return () => { + subscription2.unsubscribe(); + }; + } + const outputMaxWidth = opts.reportingOptions?.outputMaxWidth ?? (process.stdout.columns && process.stdout.columns - 2) ?? 80; + const output$ = toOutput$({ + ...opts, + reportingOptions: { + ...opts.reportingOptions, + outputMaxWidth + } + }); + if (opts.reportingOptions?.appendOnly) { + const writeNext = opts.useStderr ? console.error.bind(console) : console.log.bind(console); + const subscription2 = output$.subscribe({ + complete() { + }, + error: (err) => { + console.error(err.message); + }, + next: writeNext + }); + return () => { + subscription2.unsubscribe(); + }; + } + const diff = (0, ansi_diff_1.default)({ + height: process.stdout.rows, + outputMaxWidth + }); + const subscription = output$.subscribe({ + complete() { + }, + error: (err) => { + logUpdate(err.message); + }, + next: logUpdate + }); + const write = opts.useStderr ? process.stderr.write.bind(process.stderr) : process.stdout.write.bind(process.stdout); + function logUpdate(view) { + if (!view.endsWith(constants_1.EOL)) + view += constants_1.EOL; + write(diff.update(view)); + } + return () => { + subscription.unsubscribe(); + }; + } + exports2.initDefaultReporter = initDefaultReporter; + function toOutput$(opts) { + opts = opts || {}; + const contextPushStream = new Rx.Subject(); + const fetchingProgressPushStream = new Rx.Subject(); + const executionTimePushStream = new Rx.Subject(); + const progressPushStream = new Rx.Subject(); + const stagePushStream = new Rx.Subject(); + const deprecationPushStream = new Rx.Subject(); + const summaryPushStream = new Rx.Subject(); + const lifecyclePushStream = new Rx.Subject(); + const statsPushStream = new Rx.Subject(); + const packageImportMethodPushStream = new Rx.Subject(); + const installCheckPushStream = new Rx.Subject(); + const registryPushStream = new Rx.Subject(); + const rootPushStream = new Rx.Subject(); + const packageManifestPushStream = new Rx.Subject(); + const peerDependencyIssuesPushStream = new Rx.Subject(); + const linkPushStream = new Rx.Subject(); + const otherPushStream = new Rx.Subject(); + const hookPushStream = new Rx.Subject(); + const skippedOptionalDependencyPushStream = new Rx.Subject(); + const scopePushStream = new Rx.Subject(); + const requestRetryPushStream = new Rx.Subject(); + const updateCheckPushStream = new Rx.Subject(); + setTimeout(() => { + opts.streamParser["on"]("data", (log2) => { + switch (log2.name) { + case "pnpm:context": + contextPushStream.next(log2); + break; + case "pnpm:execution-time": + executionTimePushStream.next(log2); + break; + case "pnpm:fetching-progress": + fetchingProgressPushStream.next(log2); + break; + case "pnpm:progress": + progressPushStream.next(log2); + break; + case "pnpm:stage": + stagePushStream.next(log2); + break; + case "pnpm:deprecation": + deprecationPushStream.next(log2); + break; + case "pnpm:summary": + summaryPushStream.next(log2); + break; + case "pnpm:lifecycle": + lifecyclePushStream.next(log2); + break; + case "pnpm:stats": + statsPushStream.next(log2); + break; + case "pnpm:package-import-method": + packageImportMethodPushStream.next(log2); + break; + case "pnpm:peer-dependency-issues": + peerDependencyIssuesPushStream.next(log2); + break; + case "pnpm:install-check": + installCheckPushStream.next(log2); + break; + case "pnpm:registry": + registryPushStream.next(log2); + break; + case "pnpm:root": + rootPushStream.next(log2); + break; + case "pnpm:package-manifest": + packageManifestPushStream.next(log2); + break; + case "pnpm:link": + linkPushStream.next(log2); + break; + case "pnpm:hook": + hookPushStream.next(log2); + break; + case "pnpm:skipped-optional-dependency": + skippedOptionalDependencyPushStream.next(log2); + break; + case "pnpm:scope": + scopePushStream.next(log2); + break; + case "pnpm:request-retry": + requestRetryPushStream.next(log2); + break; + case "pnpm:update-check": + updateCheckPushStream.next(log2); + break; + case "pnpm": + case "pnpm:global": + case "pnpm:store": + case "pnpm:lockfile": + otherPushStream.next(log2); + break; + } + }); + }, 0); + let other = Rx.from(otherPushStream); + if (opts.context.config?.hooks?.filterLog != null) { + const filterLogs = opts.context.config.hooks.filterLog; + const filterFn = filterLogs.length === 1 ? filterLogs[0] : (log2) => filterLogs.every((filterLog) => filterLog(log2)); + other = other.pipe((0, operators_1.filter)(filterFn)); + } + const log$ = { + context: Rx.from(contextPushStream), + deprecation: Rx.from(deprecationPushStream), + fetchingProgress: Rx.from(fetchingProgressPushStream), + executionTime: Rx.from(executionTimePushStream), + hook: Rx.from(hookPushStream), + installCheck: Rx.from(installCheckPushStream), + lifecycle: Rx.from(lifecyclePushStream), + link: Rx.from(linkPushStream), + other, + packageImportMethod: Rx.from(packageImportMethodPushStream), + packageManifest: Rx.from(packageManifestPushStream), + peerDependencyIssues: Rx.from(peerDependencyIssuesPushStream), + progress: Rx.from(progressPushStream), + registry: Rx.from(registryPushStream), + requestRetry: Rx.from(requestRetryPushStream), + root: Rx.from(rootPushStream), + scope: Rx.from(scopePushStream), + skippedOptionalDependency: Rx.from(skippedOptionalDependencyPushStream), + stage: Rx.from(stagePushStream), + stats: Rx.from(statsPushStream), + summary: Rx.from(summaryPushStream), + updateCheck: Rx.from(updateCheckPushStream) + }; + const outputs = (0, reporterForClient_1.reporterForClient)(log$, { + appendOnly: opts.reportingOptions?.appendOnly, + cmd: opts.context.argv[0], + config: opts.context.config, + env: opts.context.env ?? process.env, + process: opts.context.process ?? process, + isRecursive: opts.context.config?.["recursive"] === true, + logLevel: opts.reportingOptions?.logLevel, + pnpmConfig: opts.context.config, + streamLifecycleOutput: opts.reportingOptions?.streamLifecycleOutput, + aggregateOutput: opts.reportingOptions?.aggregateOutput, + throttleProgress: opts.reportingOptions?.throttleProgress, + width: opts.reportingOptions?.outputMaxWidth + }); + if (opts.reportingOptions?.appendOnly) { + return Rx.merge(...outputs).pipe((0, operators_1.map)((log2) => log2.pipe((0, operators_1.map)((msg) => msg.msg))), (0, operators_1.mergeAll)()); + } + return (0, mergeOutputs_1.mergeOutputs)(outputs); + } + exports2.toOutput$ = toOutput$; + } +}); + +// ../cli/cli-utils/lib/getConfig.js +var require_getConfig = __commonJS({ + "../cli/cli-utils/lib/getConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getConfig = void 0; + var cli_meta_1 = require_lib4(); + var config_1 = require_lib21(); + var default_reporter_1 = require_lib23(); + async function getConfig(cliOptions, opts) { + const { config, warnings } = await (0, config_1.getConfig)({ + cliOptions, + globalDirShouldAllowWrite: opts.globalDirShouldAllowWrite, + packageManager: cli_meta_1.packageManager, + rcOptionsTypes: opts.rcOptionsTypes, + workspaceDir: opts.workspaceDir, + checkUnknownSetting: opts.checkUnknownSetting + }); + config.cliOptions = cliOptions; + if (opts.excludeReporter) { + delete config.reporter; + } + if (warnings.length > 0) { + console.log(warnings.map((warning) => (0, default_reporter_1.formatWarn)(warning)).join("\n")); + } + return config; + } + exports2.getConfig = getConfig; + } +}); + +// ../config/package-is-installable/lib/checkEngine.js +var require_checkEngine = __commonJS({ + "../config/package-is-installable/lib/checkEngine.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.checkEngine = exports2.UnsupportedEngineError = void 0; + var error_1 = require_lib8(); + var semver_12 = __importDefault4(require_semver2()); + var UnsupportedEngineError = class extends error_1.PnpmError { + constructor(packageId, wanted, current) { + super("UNSUPPORTED_ENGINE", `Unsupported engine for ${packageId}: wanted: ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`); + this.packageId = packageId; + this.wanted = wanted; + this.current = current; + } + }; + exports2.UnsupportedEngineError = UnsupportedEngineError; + function checkEngine(packageId, wantedEngine, currentEngine) { + if (!wantedEngine) + return null; + const unsatisfiedWanted = {}; + if (wantedEngine.node && !semver_12.default.satisfies(currentEngine.node, wantedEngine.node, { includePrerelease: true })) { + unsatisfiedWanted.node = wantedEngine.node; + } + if (currentEngine.pnpm && wantedEngine.pnpm && !semver_12.default.satisfies(currentEngine.pnpm, wantedEngine.pnpm, { includePrerelease: true })) { + unsatisfiedWanted.pnpm = wantedEngine.pnpm; + } + if (Object.keys(unsatisfiedWanted).length > 0) { + return new UnsupportedEngineError(packageId, unsatisfiedWanted, currentEngine); + } + return null; + } + exports2.checkEngine = checkEngine; + } +}); + +// ../node_modules/.pnpm/detect-libc@2.0.1/node_modules/detect-libc/lib/process.js +var require_process = __commonJS({ + "../node_modules/.pnpm/detect-libc@2.0.1/node_modules/detect-libc/lib/process.js"(exports2, module2) { + "use strict"; + var isLinux = () => process.platform === "linux"; + var report = null; + var getReport = () => { + if (!report) { + report = isLinux() && process.report ? process.report.getReport() : {}; + } + return report; + }; + module2.exports = { isLinux, getReport }; + } +}); + +// ../node_modules/.pnpm/detect-libc@2.0.1/node_modules/detect-libc/lib/detect-libc.js +var require_detect_libc = __commonJS({ + "../node_modules/.pnpm/detect-libc@2.0.1/node_modules/detect-libc/lib/detect-libc.js"(exports2, module2) { + "use strict"; + var childProcess = require("child_process"); + var { isLinux, getReport } = require_process(); + var command = "getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true"; + var commandOut = ""; + var safeCommand = () => { + if (!commandOut) { + return new Promise((resolve) => { + childProcess.exec(command, (err, out) => { + commandOut = err ? " " : out; + resolve(commandOut); + }); + }); + } + return commandOut; + }; + var safeCommandSync = () => { + if (!commandOut) { + try { + commandOut = childProcess.execSync(command, { encoding: "utf8" }); + } catch (_err) { + commandOut = " "; + } + } + return commandOut; + }; + var GLIBC = "glibc"; + var MUSL = "musl"; + var isFileMusl = (f) => f.includes("libc.musl-") || f.includes("ld-musl-"); + var familyFromReport = () => { + const report = getReport(); + if (report.header && report.header.glibcVersionRuntime) { + return GLIBC; + } + if (Array.isArray(report.sharedObjects)) { + if (report.sharedObjects.some(isFileMusl)) { + return MUSL; + } + } + return null; + }; + var familyFromCommand = (out) => { + const [getconf, ldd1] = out.split(/[\r\n]+/); + if (getconf && getconf.includes(GLIBC)) { + return GLIBC; + } + if (ldd1 && ldd1.includes(MUSL)) { + return MUSL; + } + return null; + }; + var family = async () => { + let family2 = null; + if (isLinux()) { + family2 = familyFromReport(); + if (!family2) { + const out = await safeCommand(); + family2 = familyFromCommand(out); + } + } + return family2; + }; + var familySync = () => { + let family2 = null; + if (isLinux()) { + family2 = familyFromReport(); + if (!family2) { + const out = safeCommandSync(); + family2 = familyFromCommand(out); + } + } + return family2; + }; + var isNonGlibcLinux = async () => isLinux() && await family() !== GLIBC; + var isNonGlibcLinuxSync = () => isLinux() && familySync() !== GLIBC; + var versionFromReport = () => { + const report = getReport(); + if (report.header && report.header.glibcVersionRuntime) { + return report.header.glibcVersionRuntime; + } + return null; + }; + var versionSuffix = (s) => s.trim().split(/\s+/)[1]; + var versionFromCommand = (out) => { + const [getconf, ldd1, ldd2] = out.split(/[\r\n]+/); + if (getconf && getconf.includes(GLIBC)) { + return versionSuffix(getconf); + } + if (ldd1 && ldd2 && ldd1.includes(MUSL)) { + return versionSuffix(ldd2); + } + return null; + }; + var version2 = async () => { + let version3 = null; + if (isLinux()) { + version3 = versionFromReport(); + if (!version3) { + const out = await safeCommand(); + version3 = versionFromCommand(out); + } + } + return version3; + }; + var versionSync = () => { + let version3 = null; + if (isLinux()) { + version3 = versionFromReport(); + if (!version3) { + const out = safeCommandSync(); + version3 = versionFromCommand(out); + } + } + return version3; + }; + module2.exports = { + GLIBC, + MUSL, + family, + familySync, + isNonGlibcLinux, + isNonGlibcLinuxSync, + version: version2, + versionSync + }; + } +}); + +// ../config/package-is-installable/lib/checkPlatform.js +var require_checkPlatform = __commonJS({ + "../config/package-is-installable/lib/checkPlatform.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.checkPlatform = exports2.UnsupportedPlatformError = void 0; + var error_1 = require_lib8(); + var detect_libc_1 = require_detect_libc(); + var currentLibc = (0, detect_libc_1.familySync)() ?? "unknown"; + var UnsupportedPlatformError = class extends error_1.PnpmError { + constructor(packageId, wanted, current) { + super("UNSUPPORTED_PLATFORM", `Unsupported platform for ${packageId}: wanted ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`); + this.wanted = wanted; + this.current = current; + } + }; + exports2.UnsupportedPlatformError = UnsupportedPlatformError; + function checkPlatform(packageId, wantedPlatform) { + const { platform, arch } = process; + let osOk = true; + let cpuOk = true; + let libcOk = true; + if (wantedPlatform.os) { + osOk = checkList(platform, wantedPlatform.os); + } + if (wantedPlatform.cpu) { + cpuOk = checkList(arch, wantedPlatform.cpu); + } + if (wantedPlatform.libc && currentLibc !== "unknown") { + libcOk = checkList(currentLibc, wantedPlatform.libc); + } + if (!osOk || !cpuOk || !libcOk) { + return new UnsupportedPlatformError(packageId, wantedPlatform, { os: platform, cpu: arch, libc: currentLibc }); + } + return null; + } + exports2.checkPlatform = checkPlatform; + function checkList(value, list) { + let tmp; + let match = false; + let blc = 0; + if (typeof list === "string") { + list = [list]; + } + if (list.length === 1 && list[0] === "any") { + return true; + } + for (let i = 0; i < list.length; ++i) { + tmp = list[i]; + if (tmp[0] === "!") { + tmp = tmp.slice(1); + if (tmp === value) { + return false; + } + ++blc; + } else { + match = match || tmp === value; + } + } + return match || blc === list.length; + } + } +}); + +// ../node_modules/.pnpm/mimic-fn@3.1.0/node_modules/mimic-fn/index.js +var require_mimic_fn2 = __commonJS({ + "../node_modules/.pnpm/mimic-fn@3.1.0/node_modules/mimic-fn/index.js"(exports2, module2) { + "use strict"; + var copyProperty = (to, from, property, ignoreNonConfigurable) => { + if (property === "length" || property === "prototype") { + return; + } + if (property === "arguments" || property === "caller") { + return; + } + const toDescriptor = Object.getOwnPropertyDescriptor(to, property); + const fromDescriptor = Object.getOwnPropertyDescriptor(from, property); + if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) { + return; + } + Object.defineProperty(to, property, fromDescriptor); + }; + var canCopyProperty = function(toDescriptor, fromDescriptor) { + return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value); + }; + var changePrototype = (to, from) => { + const fromPrototype = Object.getPrototypeOf(from); + if (fromPrototype === Object.getPrototypeOf(to)) { + return; + } + Object.setPrototypeOf(to, fromPrototype); + }; + var wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/ +${fromBody}`; + var toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString"); + var toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name"); + var changeToString = (to, from, name) => { + const withName = name === "" ? "" : `with ${name.trim()}() `; + const newToString = wrappedToString.bind(null, withName, from.toString()); + Object.defineProperty(newToString, "name", toStringName); + Object.defineProperty(to, "toString", { ...toStringDescriptor, value: newToString }); + }; + var mimicFn = (to, from, { ignoreNonConfigurable = false } = {}) => { + const { name } = to; + for (const property of Reflect.ownKeys(from)) { + copyProperty(to, from, property, ignoreNonConfigurable); + } + changePrototype(to, from); + changeToString(to, from, name); + return to; + }; + module2.exports = mimicFn; + } +}); + +// ../node_modules/.pnpm/p-defer@1.0.0/node_modules/p-defer/index.js +var require_p_defer = __commonJS({ + "../node_modules/.pnpm/p-defer@1.0.0/node_modules/p-defer/index.js"(exports2, module2) { + "use strict"; + module2.exports = () => { + const ret = {}; + ret.promise = new Promise((resolve, reject) => { + ret.resolve = resolve; + ret.reject = reject; + }); + return ret; + }; + } +}); + +// ../node_modules/.pnpm/map-age-cleaner@0.1.3/node_modules/map-age-cleaner/dist/index.js +var require_dist3 = __commonJS({ + "../node_modules/.pnpm/map-age-cleaner@0.1.3/node_modules/map-age-cleaner/dist/index.js"(exports2, module2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : new P(function(resolve2) { + resolve2(result2.value); + }).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var p_defer_1 = __importDefault4(require_p_defer()); + function mapAgeCleaner(map, property = "maxAge") { + let processingKey; + let processingTimer; + let processingDeferred; + const cleanup = () => __awaiter4(this, void 0, void 0, function* () { + if (processingKey !== void 0) { + return; + } + const setupTimer = (item) => __awaiter4(this, void 0, void 0, function* () { + processingDeferred = p_defer_1.default(); + const delay = item[1][property] - Date.now(); + if (delay <= 0) { + map.delete(item[0]); + processingDeferred.resolve(); + return; + } + processingKey = item[0]; + processingTimer = setTimeout(() => { + map.delete(item[0]); + if (processingDeferred) { + processingDeferred.resolve(); + } + }, delay); + if (typeof processingTimer.unref === "function") { + processingTimer.unref(); + } + return processingDeferred.promise; + }); + try { + for (const entry of map) { + yield setupTimer(entry); + } + } catch (_a) { + } + processingKey = void 0; + }); + const reset = () => { + processingKey = void 0; + if (processingTimer !== void 0) { + clearTimeout(processingTimer); + processingTimer = void 0; + } + if (processingDeferred !== void 0) { + processingDeferred.reject(void 0); + processingDeferred = void 0; + } + }; + const originalSet = map.set.bind(map); + map.set = (key, value) => { + if (map.has(key)) { + map.delete(key); + } + const result2 = originalSet(key, value); + if (processingKey && processingKey === key) { + reset(); + } + cleanup(); + return result2; + }; + cleanup(); + return map; + } + exports2.default = mapAgeCleaner; + module2.exports = mapAgeCleaner; + module2.exports.default = mapAgeCleaner; + } +}); + +// ../node_modules/.pnpm/mem@8.1.1/node_modules/mem/dist/index.js +var require_dist4 = __commonJS({ + "../node_modules/.pnpm/mem@8.1.1/node_modules/mem/dist/index.js"(exports2, module2) { + "use strict"; + var mimicFn = require_mimic_fn2(); + var mapAgeCleaner = require_dist3(); + var decoratorInstanceMap = /* @__PURE__ */ new WeakMap(); + var cacheStore = /* @__PURE__ */ new WeakMap(); + var mem = (fn2, { cacheKey, cache = /* @__PURE__ */ new Map(), maxAge } = {}) => { + if (typeof maxAge === "number") { + mapAgeCleaner(cache); + } + const memoized = function(...arguments_) { + const key = cacheKey ? cacheKey(arguments_) : arguments_[0]; + const cacheItem = cache.get(key); + if (cacheItem) { + return cacheItem.data; + } + const result2 = fn2.apply(this, arguments_); + cache.set(key, { + data: result2, + maxAge: maxAge ? Date.now() + maxAge : Number.POSITIVE_INFINITY + }); + return result2; + }; + mimicFn(memoized, fn2, { + ignoreNonConfigurable: true + }); + cacheStore.set(memoized, cache); + return memoized; + }; + mem.decorator = (options = {}) => (target, propertyKey, descriptor) => { + const input = target[propertyKey]; + if (typeof input !== "function") { + throw new TypeError("The decorated value must be a function"); + } + delete descriptor.value; + delete descriptor.writable; + descriptor.get = function() { + if (!decoratorInstanceMap.has(this)) { + const value = mem(input, options); + decoratorInstanceMap.set(this, value); + return value; + } + return decoratorInstanceMap.get(this); + }; + }; + mem.clear = (fn2) => { + const cache = cacheStore.get(fn2); + if (!cache) { + throw new TypeError("Can't clear a function that was not memoized!"); + } + if (typeof cache.clear !== "function") { + throw new TypeError("The cache Map can't be cleared!"); + } + cache.clear(); + }; + module2.exports = mem; + } +}); + +// ../config/package-is-installable/lib/getSystemNodeVersion.js +var require_getSystemNodeVersion = __commonJS({ + "../config/package-is-installable/lib/getSystemNodeVersion.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSystemNodeVersion = exports2.getSystemNodeVersionNonCached = void 0; + var mem_1 = __importDefault4(require_dist4()); + var execa = __importStar5(require_lib17()); + function getSystemNodeVersionNonCached() { + if (process["pkg"] != null) { + return execa.sync("node", ["--version"]).stdout.toString(); + } + return process.version; + } + exports2.getSystemNodeVersionNonCached = getSystemNodeVersionNonCached; + exports2.getSystemNodeVersion = (0, mem_1.default)(getSystemNodeVersionNonCached); + } +}); + +// ../config/package-is-installable/lib/index.js +var require_lib24 = __commonJS({ + "../config/package-is-installable/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.checkPackage = exports2.packageIsInstallable = exports2.UnsupportedPlatformError = exports2.UnsupportedEngineError = void 0; + var core_loggers_1 = require_lib9(); + var checkEngine_1 = require_checkEngine(); + Object.defineProperty(exports2, "UnsupportedEngineError", { enumerable: true, get: function() { + return checkEngine_1.UnsupportedEngineError; + } }); + var checkPlatform_1 = require_checkPlatform(); + Object.defineProperty(exports2, "UnsupportedPlatformError", { enumerable: true, get: function() { + return checkPlatform_1.UnsupportedPlatformError; + } }); + var getSystemNodeVersion_1 = require_getSystemNodeVersion(); + function packageIsInstallable(pkgId, pkg, options) { + const warn = checkPackage(pkgId, pkg, options); + if (warn == null) + return true; + core_loggers_1.installCheckLogger.warn({ + message: warn.message, + prefix: options.lockfileDir + }); + if (options.optional) { + core_loggers_1.skippedOptionalDependencyLogger.debug({ + details: warn.toString(), + package: { + id: pkgId, + name: pkg.name, + version: pkg.version + }, + prefix: options.lockfileDir, + reason: warn.code === "ERR_PNPM_UNSUPPORTED_ENGINE" ? "unsupported_engine" : "unsupported_platform" + }); + return false; + } + if (options.engineStrict) + throw warn; + return null; + } + exports2.packageIsInstallable = packageIsInstallable; + function checkPackage(pkgId, manifest, options) { + return (0, checkPlatform_1.checkPlatform)(pkgId, { + cpu: manifest.cpu ?? ["any"], + os: manifest.os ?? ["any"], + libc: manifest.libc ?? ["any"] + }) ?? (manifest.engines == null ? null : (0, checkEngine_1.checkEngine)(pkgId, manifest.engines, { + node: options.nodeVersion ?? (0, getSystemNodeVersion_1.getSystemNodeVersion)(), + pnpm: options.pnpmVersion + })); + } + exports2.checkPackage = checkPackage; + } +}); + +// ../cli/cli-utils/lib/packageIsInstallable.js +var require_packageIsInstallable = __commonJS({ + "../cli/cli-utils/lib/packageIsInstallable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.packageIsInstallable = void 0; + var cli_meta_1 = require_lib4(); + var logger_1 = require_lib6(); + var package_is_installable_1 = require_lib24(); + function packageIsInstallable(pkgPath, pkg, opts) { + const pnpmVersion = cli_meta_1.packageManager.name === "pnpm" ? cli_meta_1.packageManager.stableVersion : void 0; + const err = (0, package_is_installable_1.checkPackage)(pkgPath, pkg, { + nodeVersion: opts.nodeVersion, + pnpmVersion + }); + if (err === null) + return; + if ((err instanceof package_is_installable_1.UnsupportedEngineError && err.wanted.pnpm) ?? opts.engineStrict) + throw err; + logger_1.logger.warn({ + message: `Unsupported ${err instanceof package_is_installable_1.UnsupportedEngineError ? "engine" : "platform"}: wanted: ${JSON.stringify(err.wanted)} (current: ${JSON.stringify(err.current)})`, + prefix: pkgPath + }); + } + exports2.packageIsInstallable = packageIsInstallable; + } +}); + +// ../pkg-manifest/manifest-utils/lib/getSpecFromPackageManifest.js +var require_getSpecFromPackageManifest = __commonJS({ + "../pkg-manifest/manifest-utils/lib/getSpecFromPackageManifest.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSpecFromPackageManifest = void 0; + function getSpecFromPackageManifest(manifest, depName) { + return manifest.optionalDependencies?.[depName] ?? manifest.dependencies?.[depName] ?? manifest.devDependencies?.[depName] ?? manifest.peerDependencies?.[depName] ?? ""; + } + exports2.getSpecFromPackageManifest = getSpecFromPackageManifest; + } +}); + +// ../pkg-manifest/manifest-utils/lib/getPref.js +var require_getPref = __commonJS({ + "../pkg-manifest/manifest-utils/lib/getPref.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createVersionSpec = exports2.getPref = exports2.getPrefix = void 0; + var error_1 = require_lib8(); + var getPrefix = (alias, name) => alias !== name ? `npm:${name}@` : ""; + exports2.getPrefix = getPrefix; + function getPref(alias, name, version2, opts) { + const prefix = (0, exports2.getPrefix)(alias, name); + return `${prefix}${createVersionSpec(version2, { pinnedVersion: opts.pinnedVersion })}`; + } + exports2.getPref = getPref; + function createVersionSpec(version2, opts) { + switch (opts.pinnedVersion ?? "major") { + case "none": + case "major": + if (opts.rolling) + return "^"; + return !version2 ? "*" : `^${version2}`; + case "minor": + if (opts.rolling) + return "~"; + return !version2 ? "*" : `~${version2}`; + case "patch": + if (opts.rolling) + return "*"; + return !version2 ? "*" : `${version2}`; + default: + throw new error_1.PnpmError("BAD_PINNED_VERSION", `Cannot pin '${opts.pinnedVersion ?? "undefined"}'`); + } + } + exports2.createVersionSpec = createVersionSpec; + } +}); + +// ../packages/types/lib/misc.js +var require_misc = __commonJS({ + "../packages/types/lib/misc.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DEPENDENCIES_FIELDS = void 0; + exports2.DEPENDENCIES_FIELDS = [ + "optionalDependencies", + "dependencies", + "devDependencies" + ]; + } +}); + +// ../packages/types/lib/options.js +var require_options = __commonJS({ + "../packages/types/lib/options.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../packages/types/lib/package.js +var require_package = __commonJS({ + "../packages/types/lib/package.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../packages/types/lib/peerDependencyIssues.js +var require_peerDependencyIssues2 = __commonJS({ + "../packages/types/lib/peerDependencyIssues.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../packages/types/lib/project.js +var require_project = __commonJS({ + "../packages/types/lib/project.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../packages/types/lib/index.js +var require_lib25 = __commonJS({ + "../packages/types/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_misc(), exports2); + __exportStar4(require_options(), exports2); + __exportStar4(require_package(), exports2); + __exportStar4(require_peerDependencyIssues2(), exports2); + __exportStar4(require_project(), exports2); + } +}); + +// ../pkg-manifest/manifest-utils/lib/updateProjectManifestObject.js +var require_updateProjectManifestObject = __commonJS({ + "../pkg-manifest/manifest-utils/lib/updateProjectManifestObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.guessDependencyType = exports2.updateProjectManifestObject = void 0; + var core_loggers_1 = require_lib9(); + var types_1 = require_lib25(); + async function updateProjectManifestObject(prefix, packageManifest, packageSpecs) { + packageSpecs.forEach((packageSpec) => { + if (packageSpec.saveType) { + const spec = packageSpec.pref ?? findSpec(packageSpec.alias, packageManifest); + if (spec) { + packageManifest[packageSpec.saveType] = packageManifest[packageSpec.saveType] ?? {}; + packageManifest[packageSpec.saveType][packageSpec.alias] = spec; + types_1.DEPENDENCIES_FIELDS.filter((depField) => depField !== packageSpec.saveType).forEach((deptype) => { + if (packageManifest[deptype] != null) { + delete packageManifest[deptype][packageSpec.alias]; + } + }); + if (packageSpec.peer === true) { + packageManifest.peerDependencies = packageManifest.peerDependencies ?? {}; + packageManifest.peerDependencies[packageSpec.alias] = spec; + } + } + } else if (packageSpec.pref) { + const usedDepType = guessDependencyType(packageSpec.alias, packageManifest) ?? "dependencies"; + packageManifest[usedDepType] = packageManifest[usedDepType] ?? {}; + packageManifest[usedDepType][packageSpec.alias] = packageSpec.pref; + } + if (packageSpec.nodeExecPath) { + if (packageManifest.dependenciesMeta == null) { + packageManifest.dependenciesMeta = {}; + } + packageManifest.dependenciesMeta[packageSpec.alias] = { node: packageSpec.nodeExecPath }; + } + }); + core_loggers_1.packageManifestLogger.debug({ + prefix, + updated: packageManifest + }); + return packageManifest; + } + exports2.updateProjectManifestObject = updateProjectManifestObject; + function findSpec(alias, manifest) { + const foundDepType = guessDependencyType(alias, manifest); + return foundDepType && manifest[foundDepType][alias]; + } + function guessDependencyType(alias, manifest) { + return types_1.DEPENDENCIES_FIELDS.find((depField) => manifest[depField]?.[alias] === "" || Boolean(manifest[depField]?.[alias])); + } + exports2.guessDependencyType = guessDependencyType; + } +}); + +// ../pkg-manifest/manifest-utils/lib/getDependencyTypeFromManifest.js +var require_getDependencyTypeFromManifest = __commonJS({ + "../pkg-manifest/manifest-utils/lib/getDependencyTypeFromManifest.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getDependencyTypeFromManifest = void 0; + function getDependencyTypeFromManifest(manifest, depName) { + if (manifest.optionalDependencies?.[depName]) + return "optionalDependencies"; + if (manifest.dependencies?.[depName]) + return "dependencies"; + if (manifest.devDependencies?.[depName]) + return "devDependencies"; + if (manifest.peerDependencies?.[depName]) + return "peerDependencies"; + return null; + } + exports2.getDependencyTypeFromManifest = getDependencyTypeFromManifest; + } +}); + +// ../pkg-manifest/manifest-utils/lib/index.js +var require_lib26 = __commonJS({ + "../pkg-manifest/manifest-utils/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAllDependenciesFromManifest = exports2.filterDependenciesByType = exports2.getSpecFromPackageManifest = void 0; + var getSpecFromPackageManifest_1 = require_getSpecFromPackageManifest(); + Object.defineProperty(exports2, "getSpecFromPackageManifest", { enumerable: true, get: function() { + return getSpecFromPackageManifest_1.getSpecFromPackageManifest; + } }); + __exportStar4(require_getPref(), exports2); + __exportStar4(require_updateProjectManifestObject(), exports2); + __exportStar4(require_getDependencyTypeFromManifest(), exports2); + function filterDependenciesByType(manifest, include) { + return { + ...include.devDependencies ? manifest.devDependencies : {}, + ...include.dependencies ? manifest.dependencies : {}, + ...include.optionalDependencies ? manifest.optionalDependencies : {} + }; + } + exports2.filterDependenciesByType = filterDependenciesByType; + function getAllDependenciesFromManifest(manifest) { + return { + ...manifest.devDependencies, + ...manifest.dependencies, + ...manifest.optionalDependencies + }; + } + exports2.getAllDependenciesFromManifest = getAllDependenciesFromManifest; + } +}); + +// ../cli/cli-utils/lib/readDepNameCompletions.js +var require_readDepNameCompletions = __commonJS({ + "../cli/cli-utils/lib/readDepNameCompletions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readDepNameCompletions = void 0; + var manifest_utils_1 = require_lib26(); + var read_project_manifest_1 = require_lib16(); + async function readDepNameCompletions(dir) { + const { manifest } = await (0, read_project_manifest_1.readProjectManifest)(dir ?? process.cwd()); + return Object.keys((0, manifest_utils_1.getAllDependenciesFromManifest)(manifest)).map((name) => ({ name })); + } + exports2.readDepNameCompletions = readDepNameCompletions; + } +}); + +// ../cli/cli-utils/lib/readProjectManifest.js +var require_readProjectManifest = __commonJS({ + "../cli/cli-utils/lib/readProjectManifest.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tryReadProjectManifest = exports2.readProjectManifestOnly = exports2.readProjectManifest = void 0; + var utils = __importStar5(require_lib16()); + var packageIsInstallable_1 = require_packageIsInstallable(); + async function readProjectManifest(projectDir, opts) { + const { fileName, manifest, writeProjectManifest } = await utils.readProjectManifest(projectDir); + (0, packageIsInstallable_1.packageIsInstallable)(projectDir, manifest, opts); + return { fileName, manifest, writeProjectManifest }; + } + exports2.readProjectManifest = readProjectManifest; + async function readProjectManifestOnly(projectDir, opts = {}) { + const manifest = await utils.readProjectManifestOnly(projectDir); + (0, packageIsInstallable_1.packageIsInstallable)(projectDir, manifest, opts); + return manifest; + } + exports2.readProjectManifestOnly = readProjectManifestOnly; + async function tryReadProjectManifest(projectDir, opts) { + const { fileName, manifest, writeProjectManifest } = await utils.tryReadProjectManifest(projectDir); + if (manifest == null) + return { fileName, manifest, writeProjectManifest }; + (0, packageIsInstallable_1.packageIsInstallable)(projectDir, manifest, opts); + return { fileName, manifest, writeProjectManifest }; + } + exports2.tryReadProjectManifest = tryReadProjectManifest; + } +}); + +// ../cli/cli-utils/lib/recursiveSummary.js +var require_recursiveSummary = __commonJS({ + "../cli/cli-utils/lib/recursiveSummary.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throwOnCommandFail = void 0; + var error_1 = require_lib8(); + var RecursiveFailError = class extends error_1.PnpmError { + constructor(command, recursiveSummary, failures) { + super("RECURSIVE_FAIL", `"${command}" failed in ${failures.length} packages`); + this.failures = failures; + this.passes = Object.values(recursiveSummary).filter(({ status }) => status === "passed").length; + } + }; + function throwOnCommandFail(command, recursiveSummary) { + const failures = Object.values(recursiveSummary).filter(({ status }) => status === "failure"); + if (failures.length > 0) { + throw new RecursiveFailError(command, recursiveSummary, failures); + } + } + exports2.throwOnCommandFail = throwOnCommandFail; + } +}); + +// ../cli/cli-utils/lib/style.js +var require_style = __commonJS({ + "../cli/cli-utils/lib/style.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TABLE_OPTIONS = void 0; + var chalk_1 = __importDefault4(require_source()); + exports2.TABLE_OPTIONS = { + border: { + topBody: "\u2500", + topJoin: "\u252C", + topLeft: "\u250C", + topRight: "\u2510", + bottomBody: "\u2500", + bottomJoin: "\u2534", + bottomLeft: "\u2514", + bottomRight: "\u2518", + bodyJoin: "\u2502", + bodyLeft: "\u2502", + bodyRight: "\u2502", + joinBody: "\u2500", + joinJoin: "\u253C", + joinLeft: "\u251C", + joinRight: "\u2524" + }, + columns: {} + }; + for (const [key, value] of Object.entries(exports2.TABLE_OPTIONS.border)) { + exports2.TABLE_OPTIONS.border[key] = chalk_1.default.grey(value); + } + } +}); + +// ../cli/cli-utils/lib/index.js +var require_lib27 = __commonJS({ + "../cli/cli-utils/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.docsUrl = exports2.getConfig = void 0; + var cli_meta_1 = require_lib4(); + var getConfig_1 = require_getConfig(); + Object.defineProperty(exports2, "getConfig", { enumerable: true, get: function() { + return getConfig_1.getConfig; + } }); + __exportStar4(require_packageIsInstallable(), exports2); + __exportStar4(require_readDepNameCompletions(), exports2); + __exportStar4(require_readProjectManifest(), exports2); + __exportStar4(require_recursiveSummary(), exports2); + __exportStar4(require_style(), exports2); + var docsUrl = (cmd) => { + const [pnpmMajorVersion] = cli_meta_1.packageManager.version.split("."); + return `https://pnpm.io/${pnpmMajorVersion}.x/cli/${cmd}`; + }; + exports2.docsUrl = docsUrl; + } +}); + +// ../node_modules/.pnpm/@pnpm+util.lex-comparator@1.0.0/node_modules/@pnpm/util.lex-comparator/dist/lex-comparator.js +var require_lex_comparator = __commonJS({ + "../node_modules/.pnpm/@pnpm+util.lex-comparator@1.0.0/node_modules/@pnpm/util.lex-comparator/dist/lex-comparator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lexCompare = void 0; + function lexCompare(a, b) { + return a > b ? 1 : a < b ? -1 : 0; + } + exports2.lexCompare = lexCompare; + } +}); + +// ../node_modules/.pnpm/@pnpm+util.lex-comparator@1.0.0/node_modules/@pnpm/util.lex-comparator/dist/index.js +var require_dist5 = __commonJS({ + "../node_modules/.pnpm/@pnpm+util.lex-comparator@1.0.0/node_modules/@pnpm/util.lex-comparator/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lexCompare = void 0; + var lex_comparator_1 = require_lex_comparator(); + Object.defineProperty(exports2, "lexCompare", { enumerable: true, get: function() { + return lex_comparator_1.lexCompare; + } }); + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/array.js +var require_array2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/array.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.splitWhen = exports2.flatten = void 0; + function flatten(items) { + return items.reduce((collection, item) => [].concat(collection, item), []); + } + exports2.flatten = flatten; + function splitWhen(items, predicate) { + const result2 = [[]]; + let groupIndex = 0; + for (const item of items) { + if (predicate(item)) { + groupIndex++; + result2[groupIndex] = []; + } else { + result2[groupIndex].push(item); + } + } + return result2; + } + exports2.splitWhen = splitWhen; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/errno.js +var require_errno = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/errno.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isEnoentCodeError = void 0; + function isEnoentCodeError(error) { + return error.code === "ENOENT"; + } + exports2.isEnoentCodeError = isEnoentCodeError; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/fs.js +var require_fs = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createDirentFromStats = void 0; + var DirentFromStats = class { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } + }; + function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); + } + exports2.createDirentFromStats = createDirentFromStats; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/path.js +var require_path2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/path.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeLeadingDotSegment = exports2.escape = exports2.makeAbsolute = exports2.unixify = void 0; + var path2 = require("path"); + var LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; + var UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g; + function unixify(filepath) { + return filepath.replace(/\\/g, "/"); + } + exports2.unixify = unixify; + function makeAbsolute(cwd, filepath) { + return path2.resolve(cwd, filepath); + } + exports2.makeAbsolute = makeAbsolute; + function escape(pattern) { + return pattern.replace(UNESCAPED_GLOB_SYMBOLS_RE, "\\$2"); + } + exports2.escape = escape; + function removeLeadingDotSegment(entry) { + if (entry.charAt(0) === ".") { + const secondCharactery = entry.charAt(1); + if (secondCharactery === "/" || secondCharactery === "\\") { + return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); + } + } + return entry; + } + exports2.removeLeadingDotSegment = removeLeadingDotSegment; + } +}); + +// ../node_modules/.pnpm/is-extglob@2.1.1/node_modules/is-extglob/index.js +var require_is_extglob = __commonJS({ + "../node_modules/.pnpm/is-extglob@2.1.1/node_modules/is-extglob/index.js"(exports2, module2) { + module2.exports = function isExtglob(str) { + if (typeof str !== "string" || str === "") { + return false; + } + var match; + while (match = /(\\).|([@?!+*]\(.*\))/g.exec(str)) { + if (match[2]) + return true; + str = str.slice(match.index + match[0].length); + } + return false; + }; + } +}); + +// ../node_modules/.pnpm/is-glob@4.0.3/node_modules/is-glob/index.js +var require_is_glob = __commonJS({ + "../node_modules/.pnpm/is-glob@4.0.3/node_modules/is-glob/index.js"(exports2, module2) { + var isExtglob = require_is_extglob(); + var chars = { "{": "}", "(": ")", "[": "]" }; + var strictCheck = function(str) { + if (str[0] === "!") { + return true; + } + var index = 0; + var pipeIndex = -2; + var closeSquareIndex = -2; + var closeCurlyIndex = -2; + var closeParenIndex = -2; + var backSlashIndex = -2; + while (index < str.length) { + if (str[index] === "*") { + return true; + } + if (str[index + 1] === "?" && /[\].+)]/.test(str[index])) { + return true; + } + if (closeSquareIndex !== -1 && str[index] === "[" && str[index + 1] !== "]") { + if (closeSquareIndex < index) { + closeSquareIndex = str.indexOf("]", index); + } + if (closeSquareIndex > index) { + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + } + } + if (closeCurlyIndex !== -1 && str[index] === "{" && str[index + 1] !== "}") { + closeCurlyIndex = str.indexOf("}", index); + if (closeCurlyIndex > index) { + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeCurlyIndex) { + return true; + } + } + } + if (closeParenIndex !== -1 && str[index] === "(" && str[index + 1] === "?" && /[:!=]/.test(str[index + 2]) && str[index + 3] !== ")") { + closeParenIndex = str.indexOf(")", index); + if (closeParenIndex > index) { + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + if (pipeIndex !== -1 && str[index] === "(" && str[index + 1] !== "|") { + if (pipeIndex < index) { + pipeIndex = str.indexOf("|", index); + } + if (pipeIndex !== -1 && str[pipeIndex + 1] !== ")") { + closeParenIndex = str.indexOf(")", pipeIndex); + if (closeParenIndex > pipeIndex) { + backSlashIndex = str.indexOf("\\", pipeIndex); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + } + if (str[index] === "\\") { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + if (str[index] === "!") { + return true; + } + } else { + index++; + } + } + return false; + }; + var relaxedCheck = function(str) { + if (str[0] === "!") { + return true; + } + var index = 0; + while (index < str.length) { + if (/[*?{}()[\]]/.test(str[index])) { + return true; + } + if (str[index] === "\\") { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + if (str[index] === "!") { + return true; + } + } else { + index++; + } + } + return false; + }; + module2.exports = function isGlob(str, options) { + if (typeof str !== "string" || str === "") { + return false; + } + if (isExtglob(str)) { + return true; + } + var check = strictCheck; + if (options && options.strict === false) { + check = relaxedCheck; + } + return check(str); + }; + } +}); + +// ../node_modules/.pnpm/glob-parent@5.1.2/node_modules/glob-parent/index.js +var require_glob_parent = __commonJS({ + "../node_modules/.pnpm/glob-parent@5.1.2/node_modules/glob-parent/index.js"(exports2, module2) { + "use strict"; + var isGlob = require_is_glob(); + var pathPosixDirname = require("path").posix.dirname; + var isWin32 = require("os").platform() === "win32"; + var slash = "/"; + var backslash = /\\/g; + var enclosure = /[\{\[].*[\}\]]$/; + var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/; + var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g; + module2.exports = function globParent(str, opts) { + var options = Object.assign({ flipBackslashes: true }, opts); + if (options.flipBackslashes && isWin32 && str.indexOf(slash) < 0) { + str = str.replace(backslash, slash); + } + if (enclosure.test(str)) { + str += slash; + } + str += "a"; + do { + str = pathPosixDirname(str); + } while (isGlob(str) || globby.test(str)); + return str.replace(escaped, "$1"); + }; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/utils.js +var require_utils3 = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/utils.js"(exports2) { + "use strict"; + exports2.isInteger = (num) => { + if (typeof num === "number") { + return Number.isInteger(num); + } + if (typeof num === "string" && num.trim() !== "") { + return Number.isInteger(Number(num)); + } + return false; + }; + exports2.find = (node, type) => node.nodes.find((node2) => node2.type === type); + exports2.exceedsLimit = (min, max, step = 1, limit) => { + if (limit === false) + return false; + if (!exports2.isInteger(min) || !exports2.isInteger(max)) + return false; + return (Number(max) - Number(min)) / Number(step) >= limit; + }; + exports2.escapeNode = (block, n = 0, type) => { + let node = block.nodes[n]; + if (!node) + return; + if (type && node.type === type || node.type === "open" || node.type === "close") { + if (node.escaped !== true) { + node.value = "\\" + node.value; + node.escaped = true; + } + } + }; + exports2.encloseBrace = (node) => { + if (node.type !== "brace") + return false; + if (node.commas >> 0 + node.ranges >> 0 === 0) { + node.invalid = true; + return true; + } + return false; + }; + exports2.isInvalidBrace = (block) => { + if (block.type !== "brace") + return false; + if (block.invalid === true || block.dollar) + return true; + if (block.commas >> 0 + block.ranges >> 0 === 0) { + block.invalid = true; + return true; + } + if (block.open !== true || block.close !== true) { + block.invalid = true; + return true; + } + return false; + }; + exports2.isOpenOrClose = (node) => { + if (node.type === "open" || node.type === "close") { + return true; + } + return node.open === true || node.close === true; + }; + exports2.reduce = (nodes) => nodes.reduce((acc, node) => { + if (node.type === "text") + acc.push(node.value); + if (node.type === "range") + node.type = "text"; + return acc; + }, []); + exports2.flatten = (...args2) => { + const result2 = []; + const flat = (arr) => { + for (let i = 0; i < arr.length; i++) { + let ele = arr[i]; + Array.isArray(ele) ? flat(ele, result2) : ele !== void 0 && result2.push(ele); + } + return result2; + }; + flat(args2); + return result2; + }; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/stringify.js +var require_stringify3 = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/stringify.js"(exports2, module2) { + "use strict"; + var utils = require_utils3(); + module2.exports = (ast, options = {}) => { + let stringify2 = (node, parent = {}) => { + let invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); + let invalidNode = node.invalid === true && options.escapeInvalid === true; + let output = ""; + if (node.value) { + if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { + return "\\" + node.value; + } + return node.value; + } + if (node.value) { + return node.value; + } + if (node.nodes) { + for (let child of node.nodes) { + output += stringify2(child); + } + } + return output; + }; + return stringify2(ast); + }; + } +}); + +// ../node_modules/.pnpm/is-number@7.0.0/node_modules/is-number/index.js +var require_is_number = __commonJS({ + "../node_modules/.pnpm/is-number@7.0.0/node_modules/is-number/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(num) { + if (typeof num === "number") { + return num - num === 0; + } + if (typeof num === "string" && num.trim() !== "") { + return Number.isFinite ? Number.isFinite(+num) : isFinite(+num); + } + return false; + }; + } +}); + +// ../node_modules/.pnpm/to-regex-range@5.0.1/node_modules/to-regex-range/index.js +var require_to_regex_range = __commonJS({ + "../node_modules/.pnpm/to-regex-range@5.0.1/node_modules/to-regex-range/index.js"(exports2, module2) { + "use strict"; + var isNumber = require_is_number(); + var toRegexRange = (min, max, options) => { + if (isNumber(min) === false) { + throw new TypeError("toRegexRange: expected the first argument to be a number"); + } + if (max === void 0 || min === max) { + return String(min); + } + if (isNumber(max) === false) { + throw new TypeError("toRegexRange: expected the second argument to be a number."); + } + let opts = { relaxZeros: true, ...options }; + if (typeof opts.strictZeros === "boolean") { + opts.relaxZeros = opts.strictZeros === false; + } + let relax = String(opts.relaxZeros); + let shorthand = String(opts.shorthand); + let capture = String(opts.capture); + let wrap = String(opts.wrap); + let cacheKey = min + ":" + max + "=" + relax + shorthand + capture + wrap; + if (toRegexRange.cache.hasOwnProperty(cacheKey)) { + return toRegexRange.cache[cacheKey].result; + } + let a = Math.min(min, max); + let b = Math.max(min, max); + if (Math.abs(a - b) === 1) { + let result2 = min + "|" + max; + if (opts.capture) { + return `(${result2})`; + } + if (opts.wrap === false) { + return result2; + } + return `(?:${result2})`; + } + let isPadded = hasPadding(min) || hasPadding(max); + let state = { min, max, a, b }; + let positives = []; + let negatives = []; + if (isPadded) { + state.isPadded = isPadded; + state.maxLen = String(state.max).length; + } + if (a < 0) { + let newMin = b < 0 ? Math.abs(b) : 1; + negatives = splitToPatterns(newMin, Math.abs(a), state, opts); + a = state.a = 0; + } + if (b >= 0) { + positives = splitToPatterns(a, b, state, opts); + } + state.negatives = negatives; + state.positives = positives; + state.result = collatePatterns(negatives, positives, opts); + if (opts.capture === true) { + state.result = `(${state.result})`; + } else if (opts.wrap !== false && positives.length + negatives.length > 1) { + state.result = `(?:${state.result})`; + } + toRegexRange.cache[cacheKey] = state; + return state.result; + }; + function collatePatterns(neg, pos, options) { + let onlyNegative = filterPatterns(neg, pos, "-", false, options) || []; + let onlyPositive = filterPatterns(pos, neg, "", false, options) || []; + let intersected = filterPatterns(neg, pos, "-?", true, options) || []; + let subpatterns = onlyNegative.concat(intersected).concat(onlyPositive); + return subpatterns.join("|"); + } + function splitToRanges(min, max) { + let nines = 1; + let zeros = 1; + let stop = countNines(min, nines); + let stops = /* @__PURE__ */ new Set([max]); + while (min <= stop && stop <= max) { + stops.add(stop); + nines += 1; + stop = countNines(min, nines); + } + stop = countZeros(max + 1, zeros) - 1; + while (min < stop && stop <= max) { + stops.add(stop); + zeros += 1; + stop = countZeros(max + 1, zeros) - 1; + } + stops = [...stops]; + stops.sort(compare); + return stops; + } + function rangeToPattern(start, stop, options) { + if (start === stop) { + return { pattern: start, count: [], digits: 0 }; + } + let zipped = zip(start, stop); + let digits = zipped.length; + let pattern = ""; + let count = 0; + for (let i = 0; i < digits; i++) { + let [startDigit, stopDigit] = zipped[i]; + if (startDigit === stopDigit) { + pattern += startDigit; + } else if (startDigit !== "0" || stopDigit !== "9") { + pattern += toCharacterClass(startDigit, stopDigit, options); + } else { + count++; + } + } + if (count) { + pattern += options.shorthand === true ? "\\d" : "[0-9]"; + } + return { pattern, count: [count], digits }; + } + function splitToPatterns(min, max, tok, options) { + let ranges = splitToRanges(min, max); + let tokens = []; + let start = min; + let prev; + for (let i = 0; i < ranges.length; i++) { + let max2 = ranges[i]; + let obj = rangeToPattern(String(start), String(max2), options); + let zeros = ""; + if (!tok.isPadded && prev && prev.pattern === obj.pattern) { + if (prev.count.length > 1) { + prev.count.pop(); + } + prev.count.push(obj.count[0]); + prev.string = prev.pattern + toQuantifier(prev.count); + start = max2 + 1; + continue; + } + if (tok.isPadded) { + zeros = padZeros(max2, tok, options); + } + obj.string = zeros + obj.pattern + toQuantifier(obj.count); + tokens.push(obj); + start = max2 + 1; + prev = obj; + } + return tokens; + } + function filterPatterns(arr, comparison, prefix, intersection, options) { + let result2 = []; + for (let ele of arr) { + let { string } = ele; + if (!intersection && !contains(comparison, "string", string)) { + result2.push(prefix + string); + } + if (intersection && contains(comparison, "string", string)) { + result2.push(prefix + string); + } + } + return result2; + } + function zip(a, b) { + let arr = []; + for (let i = 0; i < a.length; i++) + arr.push([a[i], b[i]]); + return arr; + } + function compare(a, b) { + return a > b ? 1 : b > a ? -1 : 0; + } + function contains(arr, key, val) { + return arr.some((ele) => ele[key] === val); + } + function countNines(min, len) { + return Number(String(min).slice(0, -len) + "9".repeat(len)); + } + function countZeros(integer, zeros) { + return integer - integer % Math.pow(10, zeros); + } + function toQuantifier(digits) { + let [start = 0, stop = ""] = digits; + if (stop || start > 1) { + return `{${start + (stop ? "," + stop : "")}}`; + } + return ""; + } + function toCharacterClass(a, b, options) { + return `[${a}${b - a === 1 ? "" : "-"}${b}]`; + } + function hasPadding(str) { + return /^-?(0+)\d/.test(str); + } + function padZeros(value, tok, options) { + if (!tok.isPadded) { + return value; + } + let diff = Math.abs(tok.maxLen - String(value).length); + let relax = options.relaxZeros !== false; + switch (diff) { + case 0: + return ""; + case 1: + return relax ? "0?" : "0"; + case 2: + return relax ? "0{0,2}" : "00"; + default: { + return relax ? `0{0,${diff}}` : `0{${diff}}`; + } + } + } + toRegexRange.cache = {}; + toRegexRange.clearCache = () => toRegexRange.cache = {}; + module2.exports = toRegexRange; + } +}); + +// ../node_modules/.pnpm/fill-range@7.0.1/node_modules/fill-range/index.js +var require_fill_range = __commonJS({ + "../node_modules/.pnpm/fill-range@7.0.1/node_modules/fill-range/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var toRegexRange = require_to_regex_range(); + var isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); + var transform = (toNumber) => { + return (value) => toNumber === true ? Number(value) : String(value); + }; + var isValidValue = (value) => { + return typeof value === "number" || typeof value === "string" && value !== ""; + }; + var isNumber = (num) => Number.isInteger(+num); + var zeros = (input) => { + let value = `${input}`; + let index = -1; + if (value[0] === "-") + value = value.slice(1); + if (value === "0") + return false; + while (value[++index] === "0") + ; + return index > 0; + }; + var stringify2 = (start, end, options) => { + if (typeof start === "string" || typeof end === "string") { + return true; + } + return options.stringify === true; + }; + var pad = (input, maxLength, toNumber) => { + if (maxLength > 0) { + let dash = input[0] === "-" ? "-" : ""; + if (dash) + input = input.slice(1); + input = dash + input.padStart(dash ? maxLength - 1 : maxLength, "0"); + } + if (toNumber === false) { + return String(input); + } + return input; + }; + var toMaxLen = (input, maxLength) => { + let negative = input[0] === "-" ? "-" : ""; + if (negative) { + input = input.slice(1); + maxLength--; + } + while (input.length < maxLength) + input = "0" + input; + return negative ? "-" + input : input; + }; + var toSequence = (parts, options) => { + parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + let prefix = options.capture ? "" : "?:"; + let positives = ""; + let negatives = ""; + let result2; + if (parts.positives.length) { + positives = parts.positives.join("|"); + } + if (parts.negatives.length) { + negatives = `-(${prefix}${parts.negatives.join("|")})`; + } + if (positives && negatives) { + result2 = `${positives}|${negatives}`; + } else { + result2 = positives || negatives; + } + if (options.wrap) { + return `(${prefix}${result2})`; + } + return result2; + }; + var toRange = (a, b, isNumbers, options) => { + if (isNumbers) { + return toRegexRange(a, b, { wrap: false, ...options }); + } + let start = String.fromCharCode(a); + if (a === b) + return start; + let stop = String.fromCharCode(b); + return `[${start}-${stop}]`; + }; + var toRegex = (start, end, options) => { + if (Array.isArray(start)) { + let wrap = options.wrap === true; + let prefix = options.capture ? "" : "?:"; + return wrap ? `(${prefix}${start.join("|")})` : start.join("|"); + } + return toRegexRange(start, end, options); + }; + var rangeError = (...args2) => { + return new RangeError("Invalid range arguments: " + util.inspect(...args2)); + }; + var invalidRange = (start, end, options) => { + if (options.strictRanges === true) + throw rangeError([start, end]); + return []; + }; + var invalidStep = (step, options) => { + if (options.strictRanges === true) { + throw new TypeError(`Expected step "${step}" to be a number`); + } + return []; + }; + var fillNumbers = (start, end, step = 1, options = {}) => { + let a = Number(start); + let b = Number(end); + if (!Number.isInteger(a) || !Number.isInteger(b)) { + if (options.strictRanges === true) + throw rangeError([start, end]); + return []; + } + if (a === 0) + a = 0; + if (b === 0) + b = 0; + let descending = a > b; + let startString = String(start); + let endString = String(end); + let stepString = String(step); + step = Math.max(Math.abs(step), 1); + let padded = zeros(startString) || zeros(endString) || zeros(stepString); + let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; + let toNumber = padded === false && stringify2(start, end, options) === false; + let format = options.transform || transform(toNumber); + if (options.toRegex && step === 1) { + return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); + } + let parts = { negatives: [], positives: [] }; + let push = (num) => parts[num < 0 ? "negatives" : "positives"].push(Math.abs(num)); + let range = []; + let index = 0; + while (descending ? a >= b : a <= b) { + if (options.toRegex === true && step > 1) { + push(a); + } else { + range.push(pad(format(a, index), maxLen, toNumber)); + } + a = descending ? a - step : a + step; + index++; + } + if (options.toRegex === true) { + return step > 1 ? toSequence(parts, options) : toRegex(range, null, { wrap: false, ...options }); + } + return range; + }; + var fillLetters = (start, end, step = 1, options = {}) => { + if (!isNumber(start) && start.length > 1 || !isNumber(end) && end.length > 1) { + return invalidRange(start, end, options); + } + let format = options.transform || ((val) => String.fromCharCode(val)); + let a = `${start}`.charCodeAt(0); + let b = `${end}`.charCodeAt(0); + let descending = a > b; + let min = Math.min(a, b); + let max = Math.max(a, b); + if (options.toRegex && step === 1) { + return toRange(min, max, false, options); + } + let range = []; + let index = 0; + while (descending ? a >= b : a <= b) { + range.push(format(a, index)); + a = descending ? a - step : a + step; + index++; + } + if (options.toRegex === true) { + return toRegex(range, null, { wrap: false, options }); + } + return range; + }; + var fill = (start, end, step, options = {}) => { + if (end == null && isValidValue(start)) { + return [start]; + } + if (!isValidValue(start) || !isValidValue(end)) { + return invalidRange(start, end, options); + } + if (typeof step === "function") { + return fill(start, end, 1, { transform: step }); + } + if (isObject(step)) { + return fill(start, end, 0, step); + } + let opts = { ...options }; + if (opts.capture === true) + opts.wrap = true; + step = step || opts.step || 1; + if (!isNumber(step)) { + if (step != null && !isObject(step)) + return invalidStep(step, opts); + return fill(start, end, 1, step); + } + if (isNumber(start) && isNumber(end)) { + return fillNumbers(start, end, step, opts); + } + return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); + }; + module2.exports = fill; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/compile.js +var require_compile = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/compile.js"(exports2, module2) { + "use strict"; + var fill = require_fill_range(); + var utils = require_utils3(); + var compile = (ast, options = {}) => { + let walk = (node, parent = {}) => { + let invalidBlock = utils.isInvalidBrace(parent); + let invalidNode = node.invalid === true && options.escapeInvalid === true; + let invalid = invalidBlock === true || invalidNode === true; + let prefix = options.escapeInvalid === true ? "\\" : ""; + let output = ""; + if (node.isOpen === true) { + return prefix + node.value; + } + if (node.isClose === true) { + return prefix + node.value; + } + if (node.type === "open") { + return invalid ? prefix + node.value : "("; + } + if (node.type === "close") { + return invalid ? prefix + node.value : ")"; + } + if (node.type === "comma") { + return node.prev.type === "comma" ? "" : invalid ? node.value : "|"; + } + if (node.value) { + return node.value; + } + if (node.nodes && node.ranges > 0) { + let args2 = utils.reduce(node.nodes); + let range = fill(...args2, { ...options, wrap: false, toRegex: true }); + if (range.length !== 0) { + return args2.length > 1 && range.length > 1 ? `(${range})` : range; + } + } + if (node.nodes) { + for (let child of node.nodes) { + output += walk(child, node); + } + } + return output; + }; + return walk(ast); + }; + module2.exports = compile; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/expand.js +var require_expand2 = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/expand.js"(exports2, module2) { + "use strict"; + var fill = require_fill_range(); + var stringify2 = require_stringify3(); + var utils = require_utils3(); + var append = (queue = "", stash = "", enclose = false) => { + let result2 = []; + queue = [].concat(queue); + stash = [].concat(stash); + if (!stash.length) + return queue; + if (!queue.length) { + return enclose ? utils.flatten(stash).map((ele) => `{${ele}}`) : stash; + } + for (let item of queue) { + if (Array.isArray(item)) { + for (let value of item) { + result2.push(append(value, stash, enclose)); + } + } else { + for (let ele of stash) { + if (enclose === true && typeof ele === "string") + ele = `{${ele}}`; + result2.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); + } + } + } + return utils.flatten(result2); + }; + var expand = (ast, options = {}) => { + let rangeLimit = options.rangeLimit === void 0 ? 1e3 : options.rangeLimit; + let walk = (node, parent = {}) => { + node.queue = []; + let p = parent; + let q = parent.queue; + while (p.type !== "brace" && p.type !== "root" && p.parent) { + p = p.parent; + q = p.queue; + } + if (node.invalid || node.dollar) { + q.push(append(q.pop(), stringify2(node, options))); + return; + } + if (node.type === "brace" && node.invalid !== true && node.nodes.length === 2) { + q.push(append(q.pop(), ["{}"])); + return; + } + if (node.nodes && node.ranges > 0) { + let args2 = utils.reduce(node.nodes); + if (utils.exceedsLimit(...args2, options.step, rangeLimit)) { + throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit."); + } + let range = fill(...args2, options); + if (range.length === 0) { + range = stringify2(node, options); + } + q.push(append(q.pop(), range)); + node.nodes = []; + return; + } + let enclose = utils.encloseBrace(node); + let queue = node.queue; + let block = node; + while (block.type !== "brace" && block.type !== "root" && block.parent) { + block = block.parent; + queue = block.queue; + } + for (let i = 0; i < node.nodes.length; i++) { + let child = node.nodes[i]; + if (child.type === "comma" && node.type === "brace") { + if (i === 1) + queue.push(""); + queue.push(""); + continue; + } + if (child.type === "close") { + q.push(append(q.pop(), queue, enclose)); + continue; + } + if (child.value && child.type !== "open") { + queue.push(append(queue.pop(), child.value)); + continue; + } + if (child.nodes) { + walk(child, node); + } + } + return queue; + }; + return utils.flatten(walk(ast)); + }; + module2.exports = expand; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/constants.js +var require_constants4 = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/constants.js"(exports2, module2) { + "use strict"; + module2.exports = { + MAX_LENGTH: 1024 * 64, + // Digits + CHAR_0: "0", + /* 0 */ + CHAR_9: "9", + /* 9 */ + // Alphabet chars. + CHAR_UPPERCASE_A: "A", + /* A */ + CHAR_LOWERCASE_A: "a", + /* a */ + CHAR_UPPERCASE_Z: "Z", + /* Z */ + CHAR_LOWERCASE_Z: "z", + /* z */ + CHAR_LEFT_PARENTHESES: "(", + /* ( */ + CHAR_RIGHT_PARENTHESES: ")", + /* ) */ + CHAR_ASTERISK: "*", + /* * */ + // Non-alphabetic chars. + CHAR_AMPERSAND: "&", + /* & */ + CHAR_AT: "@", + /* @ */ + CHAR_BACKSLASH: "\\", + /* \ */ + CHAR_BACKTICK: "`", + /* ` */ + CHAR_CARRIAGE_RETURN: "\r", + /* \r */ + CHAR_CIRCUMFLEX_ACCENT: "^", + /* ^ */ + CHAR_COLON: ":", + /* : */ + CHAR_COMMA: ",", + /* , */ + CHAR_DOLLAR: "$", + /* . */ + CHAR_DOT: ".", + /* . */ + CHAR_DOUBLE_QUOTE: '"', + /* " */ + CHAR_EQUAL: "=", + /* = */ + CHAR_EXCLAMATION_MARK: "!", + /* ! */ + CHAR_FORM_FEED: "\f", + /* \f */ + CHAR_FORWARD_SLASH: "/", + /* / */ + CHAR_HASH: "#", + /* # */ + CHAR_HYPHEN_MINUS: "-", + /* - */ + CHAR_LEFT_ANGLE_BRACKET: "<", + /* < */ + CHAR_LEFT_CURLY_BRACE: "{", + /* { */ + CHAR_LEFT_SQUARE_BRACKET: "[", + /* [ */ + CHAR_LINE_FEED: "\n", + /* \n */ + CHAR_NO_BREAK_SPACE: "\xA0", + /* \u00A0 */ + CHAR_PERCENT: "%", + /* % */ + CHAR_PLUS: "+", + /* + */ + CHAR_QUESTION_MARK: "?", + /* ? */ + CHAR_RIGHT_ANGLE_BRACKET: ">", + /* > */ + CHAR_RIGHT_CURLY_BRACE: "}", + /* } */ + CHAR_RIGHT_SQUARE_BRACKET: "]", + /* ] */ + CHAR_SEMICOLON: ";", + /* ; */ + CHAR_SINGLE_QUOTE: "'", + /* ' */ + CHAR_SPACE: " ", + /* */ + CHAR_TAB: " ", + /* \t */ + CHAR_UNDERSCORE: "_", + /* _ */ + CHAR_VERTICAL_LINE: "|", + /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: "\uFEFF" + /* \uFEFF */ + }; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/parse.js +var require_parse4 = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/parse.js"(exports2, module2) { + "use strict"; + var stringify2 = require_stringify3(); + var { + MAX_LENGTH, + CHAR_BACKSLASH, + /* \ */ + CHAR_BACKTICK, + /* ` */ + CHAR_COMMA, + /* , */ + CHAR_DOT, + /* . */ + CHAR_LEFT_PARENTHESES, + /* ( */ + CHAR_RIGHT_PARENTHESES, + /* ) */ + CHAR_LEFT_CURLY_BRACE, + /* { */ + CHAR_RIGHT_CURLY_BRACE, + /* } */ + CHAR_LEFT_SQUARE_BRACKET, + /* [ */ + CHAR_RIGHT_SQUARE_BRACKET, + /* ] */ + CHAR_DOUBLE_QUOTE, + /* " */ + CHAR_SINGLE_QUOTE, + /* ' */ + CHAR_NO_BREAK_SPACE, + CHAR_ZERO_WIDTH_NOBREAK_SPACE + } = require_constants4(); + var parse2 = (input, options = {}) => { + if (typeof input !== "string") { + throw new TypeError("Expected a string"); + } + let opts = options || {}; + let max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + if (input.length > max) { + throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); + } + let ast = { type: "root", input, nodes: [] }; + let stack2 = [ast]; + let block = ast; + let prev = ast; + let brackets = 0; + let length = input.length; + let index = 0; + let depth = 0; + let value; + let memo = {}; + const advance = () => input[index++]; + const push = (node) => { + if (node.type === "text" && prev.type === "dot") { + prev.type = "text"; + } + if (prev && prev.type === "text" && node.type === "text") { + prev.value += node.value; + return; + } + block.nodes.push(node); + node.parent = block; + node.prev = prev; + prev = node; + return node; + }; + push({ type: "bos" }); + while (index < length) { + block = stack2[stack2.length - 1]; + value = advance(); + if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { + continue; + } + if (value === CHAR_BACKSLASH) { + push({ type: "text", value: (options.keepEscaping ? value : "") + advance() }); + continue; + } + if (value === CHAR_RIGHT_SQUARE_BRACKET) { + push({ type: "text", value: "\\" + value }); + continue; + } + if (value === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + let closed = true; + let next; + while (index < length && (next = advance())) { + value += next; + if (next === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + continue; + } + if (next === CHAR_BACKSLASH) { + value += advance(); + continue; + } + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + brackets--; + if (brackets === 0) { + break; + } + } + } + push({ type: "text", value }); + continue; + } + if (value === CHAR_LEFT_PARENTHESES) { + block = push({ type: "paren", nodes: [] }); + stack2.push(block); + push({ type: "text", value }); + continue; + } + if (value === CHAR_RIGHT_PARENTHESES) { + if (block.type !== "paren") { + push({ type: "text", value }); + continue; + } + block = stack2.pop(); + push({ type: "text", value }); + block = stack2[stack2.length - 1]; + continue; + } + if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { + let open = value; + let next; + if (options.keepQuotes !== true) { + value = ""; + } + while (index < length && (next = advance())) { + if (next === CHAR_BACKSLASH) { + value += next + advance(); + continue; + } + if (next === open) { + if (options.keepQuotes === true) + value += next; + break; + } + value += next; + } + push({ type: "text", value }); + continue; + } + if (value === CHAR_LEFT_CURLY_BRACE) { + depth++; + let dollar = prev.value && prev.value.slice(-1) === "$" || block.dollar === true; + let brace = { + type: "brace", + open: true, + close: false, + dollar, + depth, + commas: 0, + ranges: 0, + nodes: [] + }; + block = push(brace); + stack2.push(block); + push({ type: "open", value }); + continue; + } + if (value === CHAR_RIGHT_CURLY_BRACE) { + if (block.type !== "brace") { + push({ type: "text", value }); + continue; + } + let type = "close"; + block = stack2.pop(); + block.close = true; + push({ type, value }); + depth--; + block = stack2[stack2.length - 1]; + continue; + } + if (value === CHAR_COMMA && depth > 0) { + if (block.ranges > 0) { + block.ranges = 0; + let open = block.nodes.shift(); + block.nodes = [open, { type: "text", value: stringify2(block) }]; + } + push({ type: "comma", value }); + block.commas++; + continue; + } + if (value === CHAR_DOT && depth > 0 && block.commas === 0) { + let siblings = block.nodes; + if (depth === 0 || siblings.length === 0) { + push({ type: "text", value }); + continue; + } + if (prev.type === "dot") { + block.range = []; + prev.value += value; + prev.type = "range"; + if (block.nodes.length !== 3 && block.nodes.length !== 5) { + block.invalid = true; + block.ranges = 0; + prev.type = "text"; + continue; + } + block.ranges++; + block.args = []; + continue; + } + if (prev.type === "range") { + siblings.pop(); + let before = siblings[siblings.length - 1]; + before.value += prev.value + value; + prev = before; + block.ranges--; + continue; + } + push({ type: "dot", value }); + continue; + } + push({ type: "text", value }); + } + do { + block = stack2.pop(); + if (block.type !== "root") { + block.nodes.forEach((node) => { + if (!node.nodes) { + if (node.type === "open") + node.isOpen = true; + if (node.type === "close") + node.isClose = true; + if (!node.nodes) + node.type = "text"; + node.invalid = true; + } + }); + let parent = stack2[stack2.length - 1]; + let index2 = parent.nodes.indexOf(block); + parent.nodes.splice(index2, 1, ...block.nodes); + } + } while (stack2.length > 0); + push({ type: "eos" }); + return ast; + }; + module2.exports = parse2; + } +}); + +// ../node_modules/.pnpm/braces@3.0.2/node_modules/braces/index.js +var require_braces = __commonJS({ + "../node_modules/.pnpm/braces@3.0.2/node_modules/braces/index.js"(exports2, module2) { + "use strict"; + var stringify2 = require_stringify3(); + var compile = require_compile(); + var expand = require_expand2(); + var parse2 = require_parse4(); + var braces = (input, options = {}) => { + let output = []; + if (Array.isArray(input)) { + for (let pattern of input) { + let result2 = braces.create(pattern, options); + if (Array.isArray(result2)) { + output.push(...result2); + } else { + output.push(result2); + } + } + } else { + output = [].concat(braces.create(input, options)); + } + if (options && options.expand === true && options.nodupes === true) { + output = [...new Set(output)]; + } + return output; + }; + braces.parse = (input, options = {}) => parse2(input, options); + braces.stringify = (input, options = {}) => { + if (typeof input === "string") { + return stringify2(braces.parse(input, options), options); + } + return stringify2(input, options); + }; + braces.compile = (input, options = {}) => { + if (typeof input === "string") { + input = braces.parse(input, options); + } + return compile(input, options); + }; + braces.expand = (input, options = {}) => { + if (typeof input === "string") { + input = braces.parse(input, options); + } + let result2 = expand(input, options); + if (options.noempty === true) { + result2 = result2.filter(Boolean); + } + if (options.nodupes === true) { + result2 = [...new Set(result2)]; + } + return result2; + }; + braces.create = (input, options = {}) => { + if (input === "" || input.length < 3) { + return [input]; + } + return options.expand !== true ? braces.compile(input, options) : braces.expand(input, options); + }; + module2.exports = braces; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/constants.js +var require_constants5 = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/constants.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var WIN_SLASH = "\\\\/"; + var WIN_NO_SLASH = `[^${WIN_SLASH}]`; + var DOT_LITERAL = "\\."; + var PLUS_LITERAL = "\\+"; + var QMARK_LITERAL = "\\?"; + var SLASH_LITERAL = "\\/"; + var ONE_CHAR = "(?=.)"; + var QMARK = "[^/]"; + var END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; + var START_ANCHOR = `(?:^|${SLASH_LITERAL})`; + var DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; + var NO_DOT = `(?!${DOT_LITERAL})`; + var NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; + var NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; + var NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; + var QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; + var STAR = `${QMARK}*?`; + var POSIX_CHARS = { + DOT_LITERAL, + PLUS_LITERAL, + QMARK_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + QMARK, + END_ANCHOR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK_NO_DOT, + STAR, + START_ANCHOR + }; + var WINDOWS_CHARS = { + ...POSIX_CHARS, + SLASH_LITERAL: `[${WIN_SLASH}]`, + QMARK: WIN_NO_SLASH, + STAR: `${WIN_NO_SLASH}*?`, + DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, + NO_DOT: `(?!${DOT_LITERAL})`, + NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, + NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + QMARK_NO_DOT: `[^.${WIN_SLASH}]`, + START_ANCHOR: `(?:^|[${WIN_SLASH}])`, + END_ANCHOR: `(?:[${WIN_SLASH}]|$)` + }; + var POSIX_REGEX_SOURCE = { + alnum: "a-zA-Z0-9", + alpha: "a-zA-Z", + ascii: "\\x00-\\x7F", + blank: " \\t", + cntrl: "\\x00-\\x1F\\x7F", + digit: "0-9", + graph: "\\x21-\\x7E", + lower: "a-z", + print: "\\x20-\\x7E ", + punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~", + space: " \\t\\r\\n\\v\\f", + upper: "A-Z", + word: "A-Za-z0-9_", + xdigit: "A-Fa-f0-9" + }; + module2.exports = { + MAX_LENGTH: 1024 * 64, + POSIX_REGEX_SOURCE, + // regular expressions + REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, + REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, + REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, + REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, + REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, + REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, + // Replace globs with equivalent patterns to reduce parsing time. + REPLACEMENTS: { + "***": "*", + "**/**": "**", + "**/**/**": "**" + }, + // Digits + CHAR_0: 48, + /* 0 */ + CHAR_9: 57, + /* 9 */ + // Alphabet chars. + CHAR_UPPERCASE_A: 65, + /* A */ + CHAR_LOWERCASE_A: 97, + /* a */ + CHAR_UPPERCASE_Z: 90, + /* Z */ + CHAR_LOWERCASE_Z: 122, + /* z */ + CHAR_LEFT_PARENTHESES: 40, + /* ( */ + CHAR_RIGHT_PARENTHESES: 41, + /* ) */ + CHAR_ASTERISK: 42, + /* * */ + // Non-alphabetic chars. + CHAR_AMPERSAND: 38, + /* & */ + CHAR_AT: 64, + /* @ */ + CHAR_BACKWARD_SLASH: 92, + /* \ */ + CHAR_CARRIAGE_RETURN: 13, + /* \r */ + CHAR_CIRCUMFLEX_ACCENT: 94, + /* ^ */ + CHAR_COLON: 58, + /* : */ + CHAR_COMMA: 44, + /* , */ + CHAR_DOT: 46, + /* . */ + CHAR_DOUBLE_QUOTE: 34, + /* " */ + CHAR_EQUAL: 61, + /* = */ + CHAR_EXCLAMATION_MARK: 33, + /* ! */ + CHAR_FORM_FEED: 12, + /* \f */ + CHAR_FORWARD_SLASH: 47, + /* / */ + CHAR_GRAVE_ACCENT: 96, + /* ` */ + CHAR_HASH: 35, + /* # */ + CHAR_HYPHEN_MINUS: 45, + /* - */ + CHAR_LEFT_ANGLE_BRACKET: 60, + /* < */ + CHAR_LEFT_CURLY_BRACE: 123, + /* { */ + CHAR_LEFT_SQUARE_BRACKET: 91, + /* [ */ + CHAR_LINE_FEED: 10, + /* \n */ + CHAR_NO_BREAK_SPACE: 160, + /* \u00A0 */ + CHAR_PERCENT: 37, + /* % */ + CHAR_PLUS: 43, + /* + */ + CHAR_QUESTION_MARK: 63, + /* ? */ + CHAR_RIGHT_ANGLE_BRACKET: 62, + /* > */ + CHAR_RIGHT_CURLY_BRACE: 125, + /* } */ + CHAR_RIGHT_SQUARE_BRACKET: 93, + /* ] */ + CHAR_SEMICOLON: 59, + /* ; */ + CHAR_SINGLE_QUOTE: 39, + /* ' */ + CHAR_SPACE: 32, + /* */ + CHAR_TAB: 9, + /* \t */ + CHAR_UNDERSCORE: 95, + /* _ */ + CHAR_VERTICAL_LINE: 124, + /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, + /* \uFEFF */ + SEP: path2.sep, + /** + * Create EXTGLOB_CHARS + */ + extglobChars(chars) { + return { + "!": { type: "negate", open: "(?:(?!(?:", close: `))${chars.STAR})` }, + "?": { type: "qmark", open: "(?:", close: ")?" }, + "+": { type: "plus", open: "(?:", close: ")+" }, + "*": { type: "star", open: "(?:", close: ")*" }, + "@": { type: "at", open: "(?:", close: ")" } + }; + }, + /** + * Create GLOB_CHARS + */ + globChars(win32) { + return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; + } + }; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/utils.js +var require_utils4 = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/utils.js"(exports2) { + "use strict"; + var path2 = require("path"); + var win32 = process.platform === "win32"; + var { + REGEX_BACKSLASH, + REGEX_REMOVE_BACKSLASH, + REGEX_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_GLOBAL + } = require_constants5(); + exports2.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); + exports2.hasRegexChars = (str) => REGEX_SPECIAL_CHARS.test(str); + exports2.isRegexChar = (str) => str.length === 1 && exports2.hasRegexChars(str); + exports2.escapeRegex = (str) => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1"); + exports2.toPosixSlashes = (str) => str.replace(REGEX_BACKSLASH, "/"); + exports2.removeBackslashes = (str) => { + return str.replace(REGEX_REMOVE_BACKSLASH, (match) => { + return match === "\\" ? "" : match; + }); + }; + exports2.supportsLookbehinds = () => { + const segs = process.version.slice(1).split(".").map(Number); + if (segs.length === 3 && segs[0] >= 9 || segs[0] === 8 && segs[1] >= 10) { + return true; + } + return false; + }; + exports2.isWindows = (options) => { + if (options && typeof options.windows === "boolean") { + return options.windows; + } + return win32 === true || path2.sep === "\\"; + }; + exports2.escapeLast = (input, char, lastIdx) => { + const idx = input.lastIndexOf(char, lastIdx); + if (idx === -1) + return input; + if (input[idx - 1] === "\\") + return exports2.escapeLast(input, char, idx - 1); + return `${input.slice(0, idx)}\\${input.slice(idx)}`; + }; + exports2.removePrefix = (input, state = {}) => { + let output = input; + if (output.startsWith("./")) { + output = output.slice(2); + state.prefix = "./"; + } + return output; + }; + exports2.wrapOutput = (input, state = {}, options = {}) => { + const prepend = options.contains ? "" : "^"; + const append = options.contains ? "" : "$"; + let output = `${prepend}(?:${input})${append}`; + if (state.negated === true) { + output = `(?:^(?!${output}).*$)`; + } + return output; + }; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/scan.js +var require_scan2 = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/scan.js"(exports2, module2) { + "use strict"; + var utils = require_utils4(); + var { + CHAR_ASTERISK, + /* * */ + CHAR_AT, + /* @ */ + CHAR_BACKWARD_SLASH, + /* \ */ + CHAR_COMMA, + /* , */ + CHAR_DOT, + /* . */ + CHAR_EXCLAMATION_MARK, + /* ! */ + CHAR_FORWARD_SLASH, + /* / */ + CHAR_LEFT_CURLY_BRACE, + /* { */ + CHAR_LEFT_PARENTHESES, + /* ( */ + CHAR_LEFT_SQUARE_BRACKET, + /* [ */ + CHAR_PLUS, + /* + */ + CHAR_QUESTION_MARK, + /* ? */ + CHAR_RIGHT_CURLY_BRACE, + /* } */ + CHAR_RIGHT_PARENTHESES, + /* ) */ + CHAR_RIGHT_SQUARE_BRACKET + /* ] */ + } = require_constants5(); + var isPathSeparator = (code) => { + return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; + }; + var depth = (token) => { + if (token.isPrefix !== true) { + token.depth = token.isGlobstar ? Infinity : 1; + } + }; + var scan = (input, options) => { + const opts = options || {}; + const length = input.length - 1; + const scanToEnd = opts.parts === true || opts.scanToEnd === true; + const slashes = []; + const tokens = []; + const parts = []; + let str = input; + let index = -1; + let start = 0; + let lastIndex = 0; + let isBrace = false; + let isBracket = false; + let isGlob = false; + let isExtglob = false; + let isGlobstar = false; + let braceEscaped = false; + let backslashes = false; + let negated = false; + let negatedExtglob = false; + let finished = false; + let braces = 0; + let prev; + let code; + let token = { value: "", depth: 0, isGlob: false }; + const eos = () => index >= length; + const peek = () => str.charCodeAt(index + 1); + const advance = () => { + prev = code; + return str.charCodeAt(++index); + }; + while (index < length) { + code = advance(); + let next; + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + if (code === CHAR_LEFT_CURLY_BRACE) { + braceEscaped = true; + } + continue; + } + if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { + braces++; + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + if (code === CHAR_LEFT_CURLY_BRACE) { + braces++; + continue; + } + if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (braceEscaped !== true && code === CHAR_COMMA) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_RIGHT_CURLY_BRACE) { + braces--; + if (braces === 0) { + braceEscaped = false; + isBrace = token.isBrace = true; + finished = true; + break; + } + } + } + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_FORWARD_SLASH) { + slashes.push(index); + tokens.push(token); + token = { value: "", depth: 0, isGlob: false }; + if (finished === true) + continue; + if (prev === CHAR_DOT && index === start + 1) { + start += 2; + continue; + } + lastIndex = index + 1; + continue; + } + if (opts.noext !== true) { + const isExtglobChar = code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK; + if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + isExtglob = token.isExtglob = true; + finished = true; + if (code === CHAR_EXCLAMATION_MARK && index === start) { + negatedExtglob = true; + } + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + if (code === CHAR_RIGHT_PARENTHESES) { + isGlob = token.isGlob = true; + finished = true; + break; + } + } + continue; + } + break; + } + } + if (code === CHAR_ASTERISK) { + if (prev === CHAR_ASTERISK) + isGlobstar = token.isGlobstar = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_QUESTION_MARK) { + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_LEFT_SQUARE_BRACKET) { + while (eos() !== true && (next = advance())) { + if (next === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + isBracket = token.isBracket = true; + isGlob = token.isGlob = true; + finished = true; + break; + } + } + if (scanToEnd === true) { + continue; + } + break; + } + if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { + negated = token.negated = true; + start++; + continue; + } + if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_LEFT_PARENTHESES) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + if (code === CHAR_RIGHT_PARENTHESES) { + finished = true; + break; + } + } + continue; + } + break; + } + if (isGlob === true) { + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + } + if (opts.noext === true) { + isExtglob = false; + isGlob = false; + } + let base = str; + let prefix = ""; + let glob = ""; + if (start > 0) { + prefix = str.slice(0, start); + str = str.slice(start); + lastIndex -= start; + } + if (base && isGlob === true && lastIndex > 0) { + base = str.slice(0, lastIndex); + glob = str.slice(lastIndex); + } else if (isGlob === true) { + base = ""; + glob = str; + } else { + base = str; + } + if (base && base !== "" && base !== "/" && base !== str) { + if (isPathSeparator(base.charCodeAt(base.length - 1))) { + base = base.slice(0, -1); + } + } + if (opts.unescape === true) { + if (glob) + glob = utils.removeBackslashes(glob); + if (base && backslashes === true) { + base = utils.removeBackslashes(base); + } + } + const state = { + prefix, + input, + start, + base, + glob, + isBrace, + isBracket, + isGlob, + isExtglob, + isGlobstar, + negated, + negatedExtglob + }; + if (opts.tokens === true) { + state.maxDepth = 0; + if (!isPathSeparator(code)) { + tokens.push(token); + } + state.tokens = tokens; + } + if (opts.parts === true || opts.tokens === true) { + let prevIndex; + for (let idx = 0; idx < slashes.length; idx++) { + const n = prevIndex ? prevIndex + 1 : start; + const i = slashes[idx]; + const value = input.slice(n, i); + if (opts.tokens) { + if (idx === 0 && start !== 0) { + tokens[idx].isPrefix = true; + tokens[idx].value = prefix; + } else { + tokens[idx].value = value; + } + depth(tokens[idx]); + state.maxDepth += tokens[idx].depth; + } + if (idx !== 0 || value !== "") { + parts.push(value); + } + prevIndex = i; + } + if (prevIndex && prevIndex + 1 < input.length) { + const value = input.slice(prevIndex + 1); + parts.push(value); + if (opts.tokens) { + tokens[tokens.length - 1].value = value; + depth(tokens[tokens.length - 1]); + state.maxDepth += tokens[tokens.length - 1].depth; + } + } + state.slashes = slashes; + state.parts = parts; + } + return state; + }; + module2.exports = scan; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/parse.js +var require_parse5 = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/parse.js"(exports2, module2) { + "use strict"; + var constants = require_constants5(); + var utils = require_utils4(); + var { + MAX_LENGTH, + POSIX_REGEX_SOURCE, + REGEX_NON_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_BACKREF, + REPLACEMENTS + } = constants; + var expandRange = (args2, options) => { + if (typeof options.expandRange === "function") { + return options.expandRange(...args2, options); + } + args2.sort(); + const value = `[${args2.join("-")}]`; + try { + new RegExp(value); + } catch (ex) { + return args2.map((v) => utils.escapeRegex(v)).join(".."); + } + return value; + }; + var syntaxError = (type, char) => { + return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; + }; + var parse2 = (input, options) => { + if (typeof input !== "string") { + throw new TypeError("Expected a string"); + } + input = REPLACEMENTS[input] || input; + const opts = { ...options }; + const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + let len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + const bos = { type: "bos", value: "", output: opts.prepend || "" }; + const tokens = [bos]; + const capture = opts.capture ? "" : "?:"; + const win32 = utils.isWindows(options); + const PLATFORM_CHARS = constants.globChars(win32); + const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); + const { + DOT_LITERAL, + PLUS_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK, + QMARK_NO_DOT, + STAR, + START_ANCHOR + } = PLATFORM_CHARS; + const globstar = (opts2) => { + return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + const nodot = opts.dot ? "" : NO_DOT; + const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; + let star = opts.bash === true ? globstar(opts) : STAR; + if (opts.capture) { + star = `(${star})`; + } + if (typeof opts.noext === "boolean") { + opts.noextglob = opts.noext; + } + const state = { + input, + index: -1, + start: 0, + dot: opts.dot === true, + consumed: "", + output: "", + prefix: "", + backtrack: false, + negated: false, + brackets: 0, + braces: 0, + parens: 0, + quotes: 0, + globstar: false, + tokens + }; + input = utils.removePrefix(input, state); + len = input.length; + const extglobs = []; + const braces = []; + const stack2 = []; + let prev = bos; + let value; + const eos = () => state.index === len - 1; + const peek = state.peek = (n = 1) => input[state.index + n]; + const advance = state.advance = () => input[++state.index] || ""; + const remaining = () => input.slice(state.index + 1); + const consume = (value2 = "", num = 0) => { + state.consumed += value2; + state.index += num; + }; + const append = (token) => { + state.output += token.output != null ? token.output : token.value; + consume(token.value); + }; + const negate = () => { + let count = 1; + while (peek() === "!" && (peek(2) !== "(" || peek(3) === "?")) { + advance(); + state.start++; + count++; + } + if (count % 2 === 0) { + return false; + } + state.negated = true; + state.start++; + return true; + }; + const increment = (type) => { + state[type]++; + stack2.push(type); + }; + const decrement = (type) => { + state[type]--; + stack2.pop(); + }; + const push = (tok) => { + if (prev.type === "globstar") { + const isBrace = state.braces > 0 && (tok.type === "comma" || tok.type === "brace"); + const isExtglob = tok.extglob === true || extglobs.length && (tok.type === "pipe" || tok.type === "paren"); + if (tok.type !== "slash" && tok.type !== "paren" && !isBrace && !isExtglob) { + state.output = state.output.slice(0, -prev.output.length); + prev.type = "star"; + prev.value = "*"; + prev.output = star; + state.output += prev.output; + } + } + if (extglobs.length && tok.type !== "paren") { + extglobs[extglobs.length - 1].inner += tok.value; + } + if (tok.value || tok.output) + append(tok); + if (prev && prev.type === "text" && tok.type === "text") { + prev.value += tok.value; + prev.output = (prev.output || "") + tok.value; + return; + } + tok.prev = prev; + tokens.push(tok); + prev = tok; + }; + const extglobOpen = (type, value2) => { + const token = { ...EXTGLOB_CHARS[value2], conditions: 1, inner: "" }; + token.prev = prev; + token.parens = state.parens; + token.output = state.output; + const output = (opts.capture ? "(" : "") + token.open; + increment("parens"); + push({ type, value: value2, output: state.output ? "" : ONE_CHAR }); + push({ type: "paren", extglob: true, value: advance(), output }); + extglobs.push(token); + }; + const extglobClose = (token) => { + let output = token.close + (opts.capture ? ")" : ""); + let rest; + if (token.type === "negate") { + let extglobStar = star; + if (token.inner && token.inner.length > 1 && token.inner.includes("/")) { + extglobStar = globstar(opts); + } + if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { + output = token.close = `)$))${extglobStar}`; + } + if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { + const expression = parse2(rest, { ...options, fastpaths: false }).output; + output = token.close = `)${expression})${extglobStar})`; + } + if (token.prev.type === "bos") { + state.negatedExtglob = true; + } + } + push({ type: "paren", extglob: true, value, output }); + decrement("parens"); + }; + if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { + let backslashes = false; + let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { + if (first === "\\") { + backslashes = true; + return m; + } + if (first === "?") { + if (esc) { + return esc + first + (rest ? QMARK.repeat(rest.length) : ""); + } + if (index === 0) { + return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ""); + } + return QMARK.repeat(chars.length); + } + if (first === ".") { + return DOT_LITERAL.repeat(chars.length); + } + if (first === "*") { + if (esc) { + return esc + first + (rest ? star : ""); + } + return star; + } + return esc ? m : `\\${m}`; + }); + if (backslashes === true) { + if (opts.unescape === true) { + output = output.replace(/\\/g, ""); + } else { + output = output.replace(/\\+/g, (m) => { + return m.length % 2 === 0 ? "\\\\" : m ? "\\" : ""; + }); + } + } + if (output === input && opts.contains === true) { + state.output = input; + return state; + } + state.output = utils.wrapOutput(output, state, options); + return state; + } + while (!eos()) { + value = advance(); + if (value === "\0") { + continue; + } + if (value === "\\") { + const next = peek(); + if (next === "/" && opts.bash !== true) { + continue; + } + if (next === "." || next === ";") { + continue; + } + if (!next) { + value += "\\"; + push({ type: "text", value }); + continue; + } + const match = /^\\+/.exec(remaining()); + let slashes = 0; + if (match && match[0].length > 2) { + slashes = match[0].length; + state.index += slashes; + if (slashes % 2 !== 0) { + value += "\\"; + } + } + if (opts.unescape === true) { + value = advance(); + } else { + value += advance(); + } + if (state.brackets === 0) { + push({ type: "text", value }); + continue; + } + } + if (state.brackets > 0 && (value !== "]" || prev.value === "[" || prev.value === "[^")) { + if (opts.posix !== false && value === ":") { + const inner = prev.value.slice(1); + if (inner.includes("[")) { + prev.posix = true; + if (inner.includes(":")) { + const idx = prev.value.lastIndexOf("["); + const pre = prev.value.slice(0, idx); + const rest2 = prev.value.slice(idx + 2); + const posix = POSIX_REGEX_SOURCE[rest2]; + if (posix) { + prev.value = pre + posix; + state.backtrack = true; + advance(); + if (!bos.output && tokens.indexOf(prev) === 1) { + bos.output = ONE_CHAR; + } + continue; + } + } + } + } + if (value === "[" && peek() !== ":" || value === "-" && peek() === "]") { + value = `\\${value}`; + } + if (value === "]" && (prev.value === "[" || prev.value === "[^")) { + value = `\\${value}`; + } + if (opts.posix === true && value === "!" && prev.value === "[") { + value = "^"; + } + prev.value += value; + append({ value }); + continue; + } + if (state.quotes === 1 && value !== '"') { + value = utils.escapeRegex(value); + prev.value += value; + append({ value }); + continue; + } + if (value === '"') { + state.quotes = state.quotes === 1 ? 0 : 1; + if (opts.keepQuotes === true) { + push({ type: "text", value }); + } + continue; + } + if (value === "(") { + increment("parens"); + push({ type: "paren", value }); + continue; + } + if (value === ")") { + if (state.parens === 0 && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("opening", "(")); + } + const extglob = extglobs[extglobs.length - 1]; + if (extglob && state.parens === extglob.parens + 1) { + extglobClose(extglobs.pop()); + continue; + } + push({ type: "paren", value, output: state.parens ? ")" : "\\)" }); + decrement("parens"); + continue; + } + if (value === "[") { + if (opts.nobracket === true || !remaining().includes("]")) { + if (opts.nobracket !== true && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("closing", "]")); + } + value = `\\${value}`; + } else { + increment("brackets"); + } + push({ type: "bracket", value }); + continue; + } + if (value === "]") { + if (opts.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) { + push({ type: "text", value, output: `\\${value}` }); + continue; + } + if (state.brackets === 0) { + if (opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("opening", "[")); + } + push({ type: "text", value, output: `\\${value}` }); + continue; + } + decrement("brackets"); + const prevValue = prev.value.slice(1); + if (prev.posix !== true && prevValue[0] === "^" && !prevValue.includes("/")) { + value = `/${value}`; + } + prev.value += value; + append({ value }); + if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { + continue; + } + const escaped = utils.escapeRegex(prev.value); + state.output = state.output.slice(0, -prev.value.length); + if (opts.literalBrackets === true) { + state.output += escaped; + prev.value = escaped; + continue; + } + prev.value = `(${capture}${escaped}|${prev.value})`; + state.output += prev.value; + continue; + } + if (value === "{" && opts.nobrace !== true) { + increment("braces"); + const open = { + type: "brace", + value, + output: "(", + outputIndex: state.output.length, + tokensIndex: state.tokens.length + }; + braces.push(open); + push(open); + continue; + } + if (value === "}") { + const brace = braces[braces.length - 1]; + if (opts.nobrace === true || !brace) { + push({ type: "text", value, output: value }); + continue; + } + let output = ")"; + if (brace.dots === true) { + const arr = tokens.slice(); + const range = []; + for (let i = arr.length - 1; i >= 0; i--) { + tokens.pop(); + if (arr[i].type === "brace") { + break; + } + if (arr[i].type !== "dots") { + range.unshift(arr[i].value); + } + } + output = expandRange(range, opts); + state.backtrack = true; + } + if (brace.comma !== true && brace.dots !== true) { + const out = state.output.slice(0, brace.outputIndex); + const toks = state.tokens.slice(brace.tokensIndex); + brace.value = brace.output = "\\{"; + value = output = "\\}"; + state.output = out; + for (const t of toks) { + state.output += t.output || t.value; + } + } + push({ type: "brace", value, output }); + decrement("braces"); + braces.pop(); + continue; + } + if (value === "|") { + if (extglobs.length > 0) { + extglobs[extglobs.length - 1].conditions++; + } + push({ type: "text", value }); + continue; + } + if (value === ",") { + let output = value; + const brace = braces[braces.length - 1]; + if (brace && stack2[stack2.length - 1] === "braces") { + brace.comma = true; + output = "|"; + } + push({ type: "comma", value, output }); + continue; + } + if (value === "/") { + if (prev.type === "dot" && state.index === state.start + 1) { + state.start = state.index + 1; + state.consumed = ""; + state.output = ""; + tokens.pop(); + prev = bos; + continue; + } + push({ type: "slash", value, output: SLASH_LITERAL }); + continue; + } + if (value === ".") { + if (state.braces > 0 && prev.type === "dot") { + if (prev.value === ".") + prev.output = DOT_LITERAL; + const brace = braces[braces.length - 1]; + prev.type = "dots"; + prev.output += value; + prev.value += value; + brace.dots = true; + continue; + } + if (state.braces + state.parens === 0 && prev.type !== "bos" && prev.type !== "slash") { + push({ type: "text", value, output: DOT_LITERAL }); + continue; + } + push({ type: "dot", value, output: DOT_LITERAL }); + continue; + } + if (value === "?") { + const isGroup = prev && prev.value === "("; + if (!isGroup && opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + extglobOpen("qmark", value); + continue; + } + if (prev && prev.type === "paren") { + const next = peek(); + let output = value; + if (next === "<" && !utils.supportsLookbehinds()) { + throw new Error("Node.js v10 or higher is required for regex lookbehinds"); + } + if (prev.value === "(" && !/[!=<:]/.test(next) || next === "<" && !/<([!=]|\w+>)/.test(remaining())) { + output = `\\${value}`; + } + push({ type: "text", value, output }); + continue; + } + if (opts.dot !== true && (prev.type === "slash" || prev.type === "bos")) { + push({ type: "qmark", value, output: QMARK_NO_DOT }); + continue; + } + push({ type: "qmark", value, output: QMARK }); + continue; + } + if (value === "!") { + if (opts.noextglob !== true && peek() === "(") { + if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) { + extglobOpen("negate", value); + continue; + } + } + if (opts.nonegate !== true && state.index === 0) { + negate(); + continue; + } + } + if (value === "+") { + if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + extglobOpen("plus", value); + continue; + } + if (prev && prev.value === "(" || opts.regex === false) { + push({ type: "plus", value, output: PLUS_LITERAL }); + continue; + } + if (prev && (prev.type === "bracket" || prev.type === "paren" || prev.type === "brace") || state.parens > 0) { + push({ type: "plus", value }); + continue; + } + push({ type: "plus", value: PLUS_LITERAL }); + continue; + } + if (value === "@") { + if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + push({ type: "at", extglob: true, value, output: "" }); + continue; + } + push({ type: "text", value }); + continue; + } + if (value !== "*") { + if (value === "$" || value === "^") { + value = `\\${value}`; + } + const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); + if (match) { + value += match[0]; + state.index += match[0].length; + } + push({ type: "text", value }); + continue; + } + if (prev && (prev.type === "globstar" || prev.star === true)) { + prev.type = "star"; + prev.star = true; + prev.value += value; + prev.output = star; + state.backtrack = true; + state.globstar = true; + consume(value); + continue; + } + let rest = remaining(); + if (opts.noextglob !== true && /^\([^?]/.test(rest)) { + extglobOpen("star", value); + continue; + } + if (prev.type === "star") { + if (opts.noglobstar === true) { + consume(value); + continue; + } + const prior = prev.prev; + const before = prior.prev; + const isStart = prior.type === "slash" || prior.type === "bos"; + const afterStar = before && (before.type === "star" || before.type === "globstar"); + if (opts.bash === true && (!isStart || rest[0] && rest[0] !== "/")) { + push({ type: "star", value, output: "" }); + continue; + } + const isBrace = state.braces > 0 && (prior.type === "comma" || prior.type === "brace"); + const isExtglob = extglobs.length && (prior.type === "pipe" || prior.type === "paren"); + if (!isStart && prior.type !== "paren" && !isBrace && !isExtglob) { + push({ type: "star", value, output: "" }); + continue; + } + while (rest.slice(0, 3) === "/**") { + const after = input[state.index + 4]; + if (after && after !== "/") { + break; + } + rest = rest.slice(3); + consume("/**", 3); + } + if (prior.type === "bos" && eos()) { + prev.type = "globstar"; + prev.value += value; + prev.output = globstar(opts); + state.output = prev.output; + state.globstar = true; + consume(value); + continue; + } + if (prior.type === "slash" && prior.prev.type !== "bos" && !afterStar && eos()) { + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + prev.type = "globstar"; + prev.output = globstar(opts) + (opts.strictSlashes ? ")" : "|$)"); + prev.value += value; + state.globstar = true; + state.output += prior.output + prev.output; + consume(value); + continue; + } + if (prior.type === "slash" && prior.prev.type !== "bos" && rest[0] === "/") { + const end = rest[1] !== void 0 ? "|$" : ""; + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + prev.type = "globstar"; + prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; + prev.value += value; + state.output += prior.output + prev.output; + state.globstar = true; + consume(value + advance()); + push({ type: "slash", value: "/", output: "" }); + continue; + } + if (prior.type === "bos" && rest[0] === "/") { + prev.type = "globstar"; + prev.value += value; + prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; + state.output = prev.output; + state.globstar = true; + consume(value + advance()); + push({ type: "slash", value: "/", output: "" }); + continue; + } + state.output = state.output.slice(0, -prev.output.length); + prev.type = "globstar"; + prev.output = globstar(opts); + prev.value += value; + state.output += prev.output; + state.globstar = true; + consume(value); + continue; + } + const token = { type: "star", value, output: star }; + if (opts.bash === true) { + token.output = ".*?"; + if (prev.type === "bos" || prev.type === "slash") { + token.output = nodot + token.output; + } + push(token); + continue; + } + if (prev && (prev.type === "bracket" || prev.type === "paren") && opts.regex === true) { + token.output = value; + push(token); + continue; + } + if (state.index === state.start || prev.type === "slash" || prev.type === "dot") { + if (prev.type === "dot") { + state.output += NO_DOT_SLASH; + prev.output += NO_DOT_SLASH; + } else if (opts.dot === true) { + state.output += NO_DOTS_SLASH; + prev.output += NO_DOTS_SLASH; + } else { + state.output += nodot; + prev.output += nodot; + } + if (peek() !== "*") { + state.output += ONE_CHAR; + prev.output += ONE_CHAR; + } + } + push(token); + } + while (state.brackets > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", "]")); + state.output = utils.escapeLast(state.output, "["); + decrement("brackets"); + } + while (state.parens > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", ")")); + state.output = utils.escapeLast(state.output, "("); + decrement("parens"); + } + while (state.braces > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", "}")); + state.output = utils.escapeLast(state.output, "{"); + decrement("braces"); + } + if (opts.strictSlashes !== true && (prev.type === "star" || prev.type === "bracket")) { + push({ type: "maybe_slash", value: "", output: `${SLASH_LITERAL}?` }); + } + if (state.backtrack === true) { + state.output = ""; + for (const token of state.tokens) { + state.output += token.output != null ? token.output : token.value; + if (token.suffix) { + state.output += token.suffix; + } + } + } + return state; + }; + parse2.fastpaths = (input, options) => { + const opts = { ...options }; + const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + const len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + input = REPLACEMENTS[input] || input; + const win32 = utils.isWindows(options); + const { + DOT_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOTS_SLASH, + STAR, + START_ANCHOR + } = constants.globChars(win32); + const nodot = opts.dot ? NO_DOTS : NO_DOT; + const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; + const capture = opts.capture ? "" : "?:"; + const state = { negated: false, prefix: "" }; + let star = opts.bash === true ? ".*?" : STAR; + if (opts.capture) { + star = `(${star})`; + } + const globstar = (opts2) => { + if (opts2.noglobstar === true) + return star; + return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + const create = (str) => { + switch (str) { + case "*": + return `${nodot}${ONE_CHAR}${star}`; + case ".*": + return `${DOT_LITERAL}${ONE_CHAR}${star}`; + case "*.*": + return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + case "*/*": + return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; + case "**": + return nodot + globstar(opts); + case "**/*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; + case "**/*.*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + case "**/.*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; + default: { + const match = /^(.*?)\.(\w+)$/.exec(str); + if (!match) + return; + const source2 = create(match[1]); + if (!source2) + return; + return source2 + DOT_LITERAL + match[2]; + } + } + }; + const output = utils.removePrefix(input, state); + let source = create(output); + if (source && opts.strictSlashes !== true) { + source += `${SLASH_LITERAL}?`; + } + return source; + }; + module2.exports = parse2; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/picomatch.js +var require_picomatch = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/lib/picomatch.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var scan = require_scan2(); + var parse2 = require_parse5(); + var utils = require_utils4(); + var constants = require_constants5(); + var isObject = (val) => val && typeof val === "object" && !Array.isArray(val); + var picomatch = (glob, options, returnState = false) => { + if (Array.isArray(glob)) { + const fns = glob.map((input) => picomatch(input, options, returnState)); + const arrayMatcher = (str) => { + for (const isMatch of fns) { + const state2 = isMatch(str); + if (state2) + return state2; + } + return false; + }; + return arrayMatcher; + } + const isState = isObject(glob) && glob.tokens && glob.input; + if (glob === "" || typeof glob !== "string" && !isState) { + throw new TypeError("Expected pattern to be a non-empty string"); + } + const opts = options || {}; + const posix = utils.isWindows(options); + const regex = isState ? picomatch.compileRe(glob, options) : picomatch.makeRe(glob, options, false, true); + const state = regex.state; + delete regex.state; + let isIgnored = () => false; + if (opts.ignore) { + const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null }; + isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); + } + const matcher = (input, returnObject = false) => { + const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix }); + const result2 = { glob, state, regex, posix, input, output, match, isMatch }; + if (typeof opts.onResult === "function") { + opts.onResult(result2); + } + if (isMatch === false) { + result2.isMatch = false; + return returnObject ? result2 : false; + } + if (isIgnored(input)) { + if (typeof opts.onIgnore === "function") { + opts.onIgnore(result2); + } + result2.isMatch = false; + return returnObject ? result2 : false; + } + if (typeof opts.onMatch === "function") { + opts.onMatch(result2); + } + return returnObject ? result2 : true; + }; + if (returnState) { + matcher.state = state; + } + return matcher; + }; + picomatch.test = (input, regex, options, { glob, posix } = {}) => { + if (typeof input !== "string") { + throw new TypeError("Expected input to be a string"); + } + if (input === "") { + return { isMatch: false, output: "" }; + } + const opts = options || {}; + const format = opts.format || (posix ? utils.toPosixSlashes : null); + let match = input === glob; + let output = match && format ? format(input) : input; + if (match === false) { + output = format ? format(input) : input; + match = output === glob; + } + if (match === false || opts.capture === true) { + if (opts.matchBase === true || opts.basename === true) { + match = picomatch.matchBase(input, regex, options, posix); + } else { + match = regex.exec(output); + } + } + return { isMatch: Boolean(match), match, output }; + }; + picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { + const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); + return regex.test(path2.basename(input)); + }; + picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + picomatch.parse = (pattern, options) => { + if (Array.isArray(pattern)) + return pattern.map((p) => picomatch.parse(p, options)); + return parse2(pattern, { ...options, fastpaths: false }); + }; + picomatch.scan = (input, options) => scan(input, options); + picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { + if (returnOutput === true) { + return state.output; + } + const opts = options || {}; + const prepend = opts.contains ? "" : "^"; + const append = opts.contains ? "" : "$"; + let source = `${prepend}(?:${state.output})${append}`; + if (state && state.negated === true) { + source = `^(?!${source}).*$`; + } + const regex = picomatch.toRegex(source, options); + if (returnState === true) { + regex.state = state; + } + return regex; + }; + picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { + if (!input || typeof input !== "string") { + throw new TypeError("Expected a non-empty string"); + } + let parsed = { negated: false, fastpaths: true }; + if (options.fastpaths !== false && (input[0] === "." || input[0] === "*")) { + parsed.output = parse2.fastpaths(input, options); + } + if (!parsed.output) { + parsed = parse2(input, options); + } + return picomatch.compileRe(parsed, options, returnOutput, returnState); + }; + picomatch.toRegex = (source, options) => { + try { + const opts = options || {}; + return new RegExp(source, opts.flags || (opts.nocase ? "i" : "")); + } catch (err) { + if (options && options.debug === true) + throw err; + return /$^/; + } + }; + picomatch.constants = constants; + module2.exports = picomatch; + } +}); + +// ../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/index.js +var require_picomatch2 = __commonJS({ + "../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/index.js"(exports2, module2) { + "use strict"; + module2.exports = require_picomatch(); + } +}); + +// ../node_modules/.pnpm/micromatch@4.0.5/node_modules/micromatch/index.js +var require_micromatch = __commonJS({ + "../node_modules/.pnpm/micromatch@4.0.5/node_modules/micromatch/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var braces = require_braces(); + var picomatch = require_picomatch2(); + var utils = require_utils4(); + var isEmptyString = (val) => val === "" || val === "./"; + var micromatch = (list, patterns, options) => { + patterns = [].concat(patterns); + list = [].concat(list); + let omit = /* @__PURE__ */ new Set(); + let keep = /* @__PURE__ */ new Set(); + let items = /* @__PURE__ */ new Set(); + let negatives = 0; + let onResult = (state) => { + items.add(state.output); + if (options && options.onResult) { + options.onResult(state); + } + }; + for (let i = 0; i < patterns.length; i++) { + let isMatch = picomatch(String(patterns[i]), { ...options, onResult }, true); + let negated = isMatch.state.negated || isMatch.state.negatedExtglob; + if (negated) + negatives++; + for (let item of list) { + let matched = isMatch(item, true); + let match = negated ? !matched.isMatch : matched.isMatch; + if (!match) + continue; + if (negated) { + omit.add(matched.output); + } else { + omit.delete(matched.output); + keep.add(matched.output); + } + } + } + let result2 = negatives === patterns.length ? [...items] : [...keep]; + let matches = result2.filter((item) => !omit.has(item)); + if (options && matches.length === 0) { + if (options.failglob === true) { + throw new Error(`No matches found for "${patterns.join(", ")}"`); + } + if (options.nonull === true || options.nullglob === true) { + return options.unescape ? patterns.map((p) => p.replace(/\\/g, "")) : patterns; + } + } + return matches; + }; + micromatch.match = micromatch; + micromatch.matcher = (pattern, options) => picomatch(pattern, options); + micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + micromatch.any = micromatch.isMatch; + micromatch.not = (list, patterns, options = {}) => { + patterns = [].concat(patterns).map(String); + let result2 = /* @__PURE__ */ new Set(); + let items = []; + let onResult = (state) => { + if (options.onResult) + options.onResult(state); + items.push(state.output); + }; + let matches = new Set(micromatch(list, patterns, { ...options, onResult })); + for (let item of items) { + if (!matches.has(item)) { + result2.add(item); + } + } + return [...result2]; + }; + micromatch.contains = (str, pattern, options) => { + if (typeof str !== "string") { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + if (Array.isArray(pattern)) { + return pattern.some((p) => micromatch.contains(str, p, options)); + } + if (typeof pattern === "string") { + if (isEmptyString(str) || isEmptyString(pattern)) { + return false; + } + if (str.includes(pattern) || str.startsWith("./") && str.slice(2).includes(pattern)) { + return true; + } + } + return micromatch.isMatch(str, pattern, { ...options, contains: true }); + }; + micromatch.matchKeys = (obj, patterns, options) => { + if (!utils.isObject(obj)) { + throw new TypeError("Expected the first argument to be an object"); + } + let keys = micromatch(Object.keys(obj), patterns, options); + let res = {}; + for (let key of keys) + res[key] = obj[key]; + return res; + }; + micromatch.some = (list, patterns, options) => { + let items = [].concat(list); + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (items.some((item) => isMatch(item))) { + return true; + } + } + return false; + }; + micromatch.every = (list, patterns, options) => { + let items = [].concat(list); + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (!items.every((item) => isMatch(item))) { + return false; + } + } + return true; + }; + micromatch.all = (str, patterns, options) => { + if (typeof str !== "string") { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + return [].concat(patterns).every((p) => picomatch(p, options)(str)); + }; + micromatch.capture = (glob, input, options) => { + let posix = utils.isWindows(options); + let regex = picomatch.makeRe(String(glob), { ...options, capture: true }); + let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); + if (match) { + return match.slice(1).map((v) => v === void 0 ? "" : v); + } + }; + micromatch.makeRe = (...args2) => picomatch.makeRe(...args2); + micromatch.scan = (...args2) => picomatch.scan(...args2); + micromatch.parse = (patterns, options) => { + let res = []; + for (let pattern of [].concat(patterns || [])) { + for (let str of braces(String(pattern), options)) { + res.push(picomatch.parse(str, options)); + } + } + return res; + }; + micromatch.braces = (pattern, options) => { + if (typeof pattern !== "string") + throw new TypeError("Expected a string"); + if (options && options.nobrace === true || !/\{.*\}/.test(pattern)) { + return [pattern]; + } + return braces(pattern, options); + }; + micromatch.braceExpand = (pattern, options) => { + if (typeof pattern !== "string") + throw new TypeError("Expected a string"); + return micromatch.braces(pattern, { ...options, expand: true }); + }; + module2.exports = micromatch; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/pattern.js +var require_pattern = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/pattern.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.matchAny = exports2.convertPatternsToRe = exports2.makeRe = exports2.getPatternParts = exports2.expandBraceExpansion = exports2.expandPatternsWithBraceExpansion = exports2.isAffectDepthOfReadingPattern = exports2.endsWithSlashGlobStar = exports2.hasGlobStar = exports2.getBaseDirectory = exports2.isPatternRelatedToParentDirectory = exports2.getPatternsOutsideCurrentDirectory = exports2.getPatternsInsideCurrentDirectory = exports2.getPositivePatterns = exports2.getNegativePatterns = exports2.isPositivePattern = exports2.isNegativePattern = exports2.convertToNegativePattern = exports2.convertToPositivePattern = exports2.isDynamicPattern = exports2.isStaticPattern = void 0; + var path2 = require("path"); + var globParent = require_glob_parent(); + var micromatch = require_micromatch(); + var GLOBSTAR = "**"; + var ESCAPE_SYMBOL = "\\"; + var COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; + var REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/; + var REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/; + var GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/; + var BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./; + function isStaticPattern(pattern, options = {}) { + return !isDynamicPattern(pattern, options); + } + exports2.isStaticPattern = isStaticPattern; + function isDynamicPattern(pattern, options = {}) { + if (pattern === "") { + return false; + } + if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { + return true; + } + if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.braceExpansion !== false && hasBraceExpansion(pattern)) { + return true; + } + return false; + } + exports2.isDynamicPattern = isDynamicPattern; + function hasBraceExpansion(pattern) { + const openingBraceIndex = pattern.indexOf("{"); + if (openingBraceIndex === -1) { + return false; + } + const closingBraceIndex = pattern.indexOf("}", openingBraceIndex + 1); + if (closingBraceIndex === -1) { + return false; + } + const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex); + return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent); + } + function convertToPositivePattern(pattern) { + return isNegativePattern(pattern) ? pattern.slice(1) : pattern; + } + exports2.convertToPositivePattern = convertToPositivePattern; + function convertToNegativePattern(pattern) { + return "!" + pattern; + } + exports2.convertToNegativePattern = convertToNegativePattern; + function isNegativePattern(pattern) { + return pattern.startsWith("!") && pattern[1] !== "("; + } + exports2.isNegativePattern = isNegativePattern; + function isPositivePattern(pattern) { + return !isNegativePattern(pattern); + } + exports2.isPositivePattern = isPositivePattern; + function getNegativePatterns(patterns) { + return patterns.filter(isNegativePattern); + } + exports2.getNegativePatterns = getNegativePatterns; + function getPositivePatterns(patterns) { + return patterns.filter(isPositivePattern); + } + exports2.getPositivePatterns = getPositivePatterns; + function getPatternsInsideCurrentDirectory(patterns) { + return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); + } + exports2.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; + function getPatternsOutsideCurrentDirectory(patterns) { + return patterns.filter(isPatternRelatedToParentDirectory); + } + exports2.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; + function isPatternRelatedToParentDirectory(pattern) { + return pattern.startsWith("..") || pattern.startsWith("./.."); + } + exports2.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; + function getBaseDirectory(pattern) { + return globParent(pattern, { flipBackslashes: false }); + } + exports2.getBaseDirectory = getBaseDirectory; + function hasGlobStar(pattern) { + return pattern.includes(GLOBSTAR); + } + exports2.hasGlobStar = hasGlobStar; + function endsWithSlashGlobStar(pattern) { + return pattern.endsWith("/" + GLOBSTAR); + } + exports2.endsWithSlashGlobStar = endsWithSlashGlobStar; + function isAffectDepthOfReadingPattern(pattern) { + const basename = path2.basename(pattern); + return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); + } + exports2.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; + function expandPatternsWithBraceExpansion(patterns) { + return patterns.reduce((collection, pattern) => { + return collection.concat(expandBraceExpansion(pattern)); + }, []); + } + exports2.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; + function expandBraceExpansion(pattern) { + return micromatch.braces(pattern, { + expand: true, + nodupes: true + }); + } + exports2.expandBraceExpansion = expandBraceExpansion; + function getPatternParts(pattern, options) { + let { parts } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { parts: true })); + if (parts.length === 0) { + parts = [pattern]; + } + if (parts[0].startsWith("/")) { + parts[0] = parts[0].slice(1); + parts.unshift(""); + } + return parts; + } + exports2.getPatternParts = getPatternParts; + function makeRe(pattern, options) { + return micromatch.makeRe(pattern, options); + } + exports2.makeRe = makeRe; + function convertPatternsToRe(patterns, options) { + return patterns.map((pattern) => makeRe(pattern, options)); + } + exports2.convertPatternsToRe = convertPatternsToRe; + function matchAny(entry, patternsRe) { + return patternsRe.some((patternRe) => patternRe.test(entry)); + } + exports2.matchAny = matchAny; + } +}); + +// ../node_modules/.pnpm/merge2@1.4.1/node_modules/merge2/index.js +var require_merge22 = __commonJS({ + "../node_modules/.pnpm/merge2@1.4.1/node_modules/merge2/index.js"(exports2, module2) { + "use strict"; + var Stream = require("stream"); + var PassThrough = Stream.PassThrough; + var slice = Array.prototype.slice; + module2.exports = merge2; + function merge2() { + const streamsQueue = []; + const args2 = slice.call(arguments); + let merging = false; + let options = args2[args2.length - 1]; + if (options && !Array.isArray(options) && options.pipe == null) { + args2.pop(); + } else { + options = {}; + } + const doEnd = options.end !== false; + const doPipeError = options.pipeError === true; + if (options.objectMode == null) { + options.objectMode = true; + } + if (options.highWaterMark == null) { + options.highWaterMark = 64 * 1024; + } + const mergedStream = PassThrough(options); + function addStream() { + for (let i = 0, len = arguments.length; i < len; i++) { + streamsQueue.push(pauseStreams(arguments[i], options)); + } + mergeStream(); + return this; + } + function mergeStream() { + if (merging) { + return; + } + merging = true; + let streams = streamsQueue.shift(); + if (!streams) { + process.nextTick(endStream); + return; + } + if (!Array.isArray(streams)) { + streams = [streams]; + } + let pipesCount = streams.length + 1; + function next() { + if (--pipesCount > 0) { + return; + } + merging = false; + mergeStream(); + } + function pipe(stream) { + function onend() { + stream.removeListener("merge2UnpipeEnd", onend); + stream.removeListener("end", onend); + if (doPipeError) { + stream.removeListener("error", onerror); + } + next(); + } + function onerror(err) { + mergedStream.emit("error", err); + } + if (stream._readableState.endEmitted) { + return next(); + } + stream.on("merge2UnpipeEnd", onend); + stream.on("end", onend); + if (doPipeError) { + stream.on("error", onerror); + } + stream.pipe(mergedStream, { end: false }); + stream.resume(); + } + for (let i = 0; i < streams.length; i++) { + pipe(streams[i]); + } + next(); + } + function endStream() { + merging = false; + mergedStream.emit("queueDrain"); + if (doEnd) { + mergedStream.end(); + } + } + mergedStream.setMaxListeners(0); + mergedStream.add = addStream; + mergedStream.on("unpipe", function(stream) { + stream.emit("merge2UnpipeEnd"); + }); + if (args2.length) { + addStream.apply(null, args2); + } + return mergedStream; + } + function pauseStreams(streams, options) { + if (!Array.isArray(streams)) { + if (!streams._readableState && streams.pipe) { + streams = streams.pipe(PassThrough(options)); + } + if (!streams._readableState || !streams.pause || !streams.pipe) { + throw new Error("Only readable stream can be merged."); + } + streams.pause(); + } else { + for (let i = 0, len = streams.length; i < len; i++) { + streams[i] = pauseStreams(streams[i], options); + } + } + return streams; + } + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/stream.js +var require_stream3 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var merge2 = require_merge22(); + function merge(streams) { + const mergedStream = merge2(streams); + streams.forEach((stream) => { + stream.once("error", (error) => mergedStream.emit("error", error)); + }); + mergedStream.once("close", () => propagateCloseEventToSources(streams)); + mergedStream.once("end", () => propagateCloseEventToSources(streams)); + return mergedStream; + } + exports2.merge = merge; + function propagateCloseEventToSources(streams) { + streams.forEach((stream) => stream.emit("close")); + } + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/string.js +var require_string2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/string.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isEmpty = exports2.isString = void 0; + function isString(input) { + return typeof input === "string"; + } + exports2.isString = isString; + function isEmpty(input) { + return input === ""; + } + exports2.isEmpty = isEmpty; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/index.js +var require_utils5 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/utils/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.string = exports2.stream = exports2.pattern = exports2.path = exports2.fs = exports2.errno = exports2.array = void 0; + var array = require_array2(); + exports2.array = array; + var errno = require_errno(); + exports2.errno = errno; + var fs2 = require_fs(); + exports2.fs = fs2; + var path2 = require_path2(); + exports2.path = path2; + var pattern = require_pattern(); + exports2.pattern = pattern; + var stream = require_stream3(); + exports2.stream = stream; + var string = require_string2(); + exports2.string = string; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/managers/tasks.js +var require_tasks = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/managers/tasks.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.convertPatternGroupToTask = exports2.convertPatternGroupsToTasks = exports2.groupPatternsByBaseDirectory = exports2.getNegativePatternsAsPositive = exports2.getPositivePatterns = exports2.convertPatternsToTasks = exports2.generate = void 0; + var utils = require_utils5(); + function generate(patterns, settings) { + const positivePatterns = getPositivePatterns(patterns); + const negativePatterns = getNegativePatternsAsPositive(patterns, settings.ignore); + const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); + const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); + const staticTasks = convertPatternsToTasks( + staticPatterns, + negativePatterns, + /* dynamic */ + false + ); + const dynamicTasks = convertPatternsToTasks( + dynamicPatterns, + negativePatterns, + /* dynamic */ + true + ); + return staticTasks.concat(dynamicTasks); + } + exports2.generate = generate; + function convertPatternsToTasks(positive, negative, dynamic) { + const tasks = []; + const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); + const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); + const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); + const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); + tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); + if ("." in insideCurrentDirectoryGroup) { + tasks.push(convertPatternGroupToTask(".", patternsInsideCurrentDirectory, negative, dynamic)); + } else { + tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + } + return tasks; + } + exports2.convertPatternsToTasks = convertPatternsToTasks; + function getPositivePatterns(patterns) { + return utils.pattern.getPositivePatterns(patterns); + } + exports2.getPositivePatterns = getPositivePatterns; + function getNegativePatternsAsPositive(patterns, ignore) { + const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); + const positive = negative.map(utils.pattern.convertToPositivePattern); + return positive; + } + exports2.getNegativePatternsAsPositive = getNegativePatternsAsPositive; + function groupPatternsByBaseDirectory(patterns) { + const group = {}; + return patterns.reduce((collection, pattern) => { + const base = utils.pattern.getBaseDirectory(pattern); + if (base in collection) { + collection[base].push(pattern); + } else { + collection[base] = [pattern]; + } + return collection; + }, group); + } + exports2.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; + function convertPatternGroupsToTasks(positive, negative, dynamic) { + return Object.keys(positive).map((base) => { + return convertPatternGroupToTask(base, positive[base], negative, dynamic); + }); + } + exports2.convertPatternGroupsToTasks = convertPatternGroupsToTasks; + function convertPatternGroupToTask(base, positive, negative, dynamic) { + return { + dynamic, + positive, + negative, + base, + patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) + }; + } + exports2.convertPatternGroupToTask = convertPatternGroupToTask; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/managers/patterns.js +var require_patterns = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/managers/patterns.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeDuplicateSlashes = exports2.transform = void 0; + var DOUBLE_SLASH_RE = /(?!^)\/{2,}/g; + function transform(patterns) { + return patterns.map((pattern) => removeDuplicateSlashes(pattern)); + } + exports2.transform = transform; + function removeDuplicateSlashes(pattern) { + return pattern.replace(DOUBLE_SLASH_RE, "/"); + } + exports2.removeDuplicateSlashes = removeDuplicateSlashes; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/async.js +var require_async2 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.read = void 0; + function read(path2, settings, callback) { + settings.fs.lstat(path2, (lstatError, lstat) => { + if (lstatError !== null) { + callFailureCallback(callback, lstatError); + return; + } + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + callSuccessCallback(callback, lstat); + return; + } + settings.fs.stat(path2, (statError, stat) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + callFailureCallback(callback, statError); + return; + } + callSuccessCallback(callback, lstat); + return; + } + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + callSuccessCallback(callback, stat); + }); + }); + } + exports2.read = read; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, result2) { + callback(null, result2); + } + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/sync.js +var require_sync = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.read = void 0; + function read(path2, settings) { + const lstat = settings.fs.lstatSync(path2); + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + return lstat; + } + try { + const stat = settings.fs.statSync(path2); + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + return stat; + } catch (error) { + if (!settings.throwErrorOnBrokenSymbolicLink) { + return lstat; + } + throw error; + } + } + exports2.read = read; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/adapters/fs.js +var require_fs2 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/adapters/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; + var fs2 = require("fs"); + exports2.FILE_SYSTEM_ADAPTER = { + lstat: fs2.lstat, + stat: fs2.stat, + lstatSync: fs2.lstatSync, + statSync: fs2.statSync + }; + function createFileSystemAdapter(fsMethods) { + if (fsMethods === void 0) { + return exports2.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); + } + exports2.createFileSystemAdapter = createFileSystemAdapter; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/settings.js +var require_settings = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fs2 = require_fs2(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); + this.fs = fs2.createFileSystemAdapter(this._options.fs); + this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/index.js +var require_out = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.statSync = exports2.stat = exports2.Settings = void 0; + var async = require_async2(); + var sync = require_sync(); + var settings_1 = require_settings(); + exports2.Settings = settings_1.default; + function stat(path2, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + async.read(path2, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path2, getSettings(optionsOrSettingsOrCallback), callback); + } + exports2.stat = stat; + function statSync(path2, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path2, settings); + } + exports2.statSync = statSync; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); + +// ../node_modules/.pnpm/queue-microtask@1.2.3/node_modules/queue-microtask/index.js +var require_queue_microtask = __commonJS({ + "../node_modules/.pnpm/queue-microtask@1.2.3/node_modules/queue-microtask/index.js"(exports2, module2) { + var promise; + module2.exports = typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : global) : (cb) => (promise || (promise = Promise.resolve())).then(cb).catch((err) => setTimeout(() => { + throw err; + }, 0)); + } +}); + +// ../node_modules/.pnpm/run-parallel@1.2.0/node_modules/run-parallel/index.js +var require_run_parallel = __commonJS({ + "../node_modules/.pnpm/run-parallel@1.2.0/node_modules/run-parallel/index.js"(exports2, module2) { + module2.exports = runParallel; + var queueMicrotask2 = require_queue_microtask(); + function runParallel(tasks, cb) { + let results, pending, keys; + let isSync = true; + if (Array.isArray(tasks)) { + results = []; + pending = tasks.length; + } else { + keys = Object.keys(tasks); + results = {}; + pending = keys.length; + } + function done(err) { + function end() { + if (cb) + cb(err, results); + cb = null; + } + if (isSync) + queueMicrotask2(end); + else + end(); + } + function each(i, err, result2) { + results[i] = result2; + if (--pending === 0 || err) { + done(err); + } + } + if (!pending) { + done(null); + } else if (keys) { + keys.forEach(function(key) { + tasks[key](function(err, result2) { + each(key, err, result2); + }); + }); + } else { + tasks.forEach(function(task, i) { + task(function(err, result2) { + each(i, err, result2); + }); + }); + } + isSync = false; + } + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/constants.js +var require_constants6 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; + var NODE_PROCESS_VERSION_PARTS = process.versions.node.split("."); + if (NODE_PROCESS_VERSION_PARTS[0] === void 0 || NODE_PROCESS_VERSION_PARTS[1] === void 0) { + throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); + } + var MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); + var MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); + var SUPPORTED_MAJOR_VERSION = 10; + var SUPPORTED_MINOR_VERSION = 10; + var IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; + var IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; + exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/fs.js +var require_fs3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createDirentFromStats = void 0; + var DirentFromStats = class { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } + }; + function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); + } + exports2.createDirentFromStats = createDirentFromStats; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/index.js +var require_utils6 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fs = void 0; + var fs2 = require_fs3(); + exports2.fs = fs2; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/common.js +var require_common3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.joinPathSegments = void 0; + function joinPathSegments(a, b, separator) { + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; + } + exports2.joinPathSegments = joinPathSegments; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/async.js +var require_async3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; + var fsStat = require_out(); + var rpl = require_run_parallel(); + var constants_1 = require_constants6(); + var utils = require_utils6(); + var common = require_common3(); + function read(directory, settings, callback) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + readdirWithFileTypes(directory, settings, callback); + return; + } + readdir(directory, settings, callback); + } + exports2.read = read; + function readdirWithFileTypes(directory, settings, callback) { + settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const entries = dirents.map((dirent) => ({ + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + })); + if (!settings.followSymbolicLinks) { + callSuccessCallback(callback, entries); + return; + } + const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); + rpl(tasks, (rplError, rplEntries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, rplEntries); + }); + }); + } + exports2.readdirWithFileTypes = readdirWithFileTypes; + function makeRplTaskEntry(entry, settings) { + return (done) => { + if (!entry.dirent.isSymbolicLink()) { + done(null, entry); + return; + } + settings.fs.stat(entry.path, (statError, stats) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + done(statError); + return; + } + done(null, entry); + return; + } + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + done(null, entry); + }); + }; + } + function readdir(directory, settings, callback) { + settings.fs.readdir(directory, (readdirError, names) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const tasks = names.map((name) => { + const path2 = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + return (done) => { + fsStat.stat(path2, settings.fsStatSettings, (error, stats) => { + if (error !== null) { + done(error); + return; + } + const entry = { + name, + path: path2, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + done(null, entry); + }); + }; + }); + rpl(tasks, (rplError, entries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, entries); + }); + }); + } + exports2.readdir = readdir; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, result2) { + callback(null, result2); + } + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/sync.js +var require_sync2 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; + var fsStat = require_out(); + var constants_1 = require_constants6(); + var utils = require_utils6(); + var common = require_common3(); + function read(directory, settings) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + return readdirWithFileTypes(directory, settings); + } + return readdir(directory, settings); + } + exports2.read = read; + function readdirWithFileTypes(directory, settings) { + const dirents = settings.fs.readdirSync(directory, { withFileTypes: true }); + return dirents.map((dirent) => { + const entry = { + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + }; + if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { + try { + const stats = settings.fs.statSync(entry.path); + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + } catch (error) { + if (settings.throwErrorOnBrokenSymbolicLink) { + throw error; + } + } + } + return entry; + }); + } + exports2.readdirWithFileTypes = readdirWithFileTypes; + function readdir(directory, settings) { + const names = settings.fs.readdirSync(directory); + return names.map((name) => { + const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + const stats = fsStat.statSync(entryPath, settings.fsStatSettings); + const entry = { + name, + path: entryPath, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + return entry; + }); + } + exports2.readdir = readdir; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +var require_fs4 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/adapters/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; + var fs2 = require("fs"); + exports2.FILE_SYSTEM_ADAPTER = { + lstat: fs2.lstat, + stat: fs2.stat, + lstatSync: fs2.lstatSync, + statSync: fs2.statSync, + readdir: fs2.readdir, + readdirSync: fs2.readdirSync + }; + function createFileSystemAdapter(fsMethods) { + if (fsMethods === void 0) { + return exports2.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); + } + exports2.createFileSystemAdapter = createFileSystemAdapter; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/settings.js +var require_settings2 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var path2 = require("path"); + var fsStat = require_out(); + var fs2 = require_fs4(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); + this.fs = fs2.createFileSystemAdapter(this._options.fs); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path2.sep); + this.stats = this._getValue(this._options.stats, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + this.fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this.followSymbolicLinks, + fs: this.fs, + throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/index.js +var require_out2 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Settings = exports2.scandirSync = exports2.scandir = void 0; + var async = require_async3(); + var sync = require_sync2(); + var settings_1 = require_settings2(); + exports2.Settings = settings_1.default; + function scandir(path2, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + async.read(path2, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path2, getSettings(optionsOrSettingsOrCallback), callback); + } + exports2.scandir = scandir; + function scandirSync(path2, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path2, settings); + } + exports2.scandirSync = scandirSync; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); + +// ../node_modules/.pnpm/reusify@1.0.4/node_modules/reusify/reusify.js +var require_reusify = __commonJS({ + "../node_modules/.pnpm/reusify@1.0.4/node_modules/reusify/reusify.js"(exports2, module2) { + "use strict"; + function reusify(Constructor) { + var head = new Constructor(); + var tail = head; + function get() { + var current = head; + if (current.next) { + head = current.next; + } else { + head = new Constructor(); + tail = head; + } + current.next = null; + return current; + } + function release(obj) { + tail.next = obj; + tail = obj; + } + return { + get, + release + }; + } + module2.exports = reusify; + } +}); + +// ../node_modules/.pnpm/fastq@1.15.0/node_modules/fastq/queue.js +var require_queue2 = __commonJS({ + "../node_modules/.pnpm/fastq@1.15.0/node_modules/fastq/queue.js"(exports2, module2) { + "use strict"; + var reusify = require_reusify(); + function fastqueue(context, worker, concurrency) { + if (typeof context === "function") { + concurrency = worker; + worker = context; + context = null; + } + if (concurrency < 1) { + throw new Error("fastqueue concurrency must be greater than 1"); + } + var cache = reusify(Task); + var queueHead = null; + var queueTail = null; + var _running = 0; + var errorHandler = null; + var self2 = { + push, + drain: noop, + saturated: noop, + pause, + paused: false, + concurrency, + running, + resume, + idle, + length, + getQueue, + unshift, + empty: noop, + kill, + killAndDrain, + error + }; + return self2; + function running() { + return _running; + } + function pause() { + self2.paused = true; + } + function length() { + var current = queueHead; + var counter = 0; + while (current) { + current = current.next; + counter++; + } + return counter; + } + function getQueue() { + var current = queueHead; + var tasks = []; + while (current) { + tasks.push(current.value); + current = current.next; + } + return tasks; + } + function resume() { + if (!self2.paused) + return; + self2.paused = false; + for (var i = 0; i < self2.concurrency; i++) { + _running++; + release(); + } + } + function idle() { + return _running === 0 && self2.length() === 0; + } + function push(value, done) { + var current = cache.get(); + current.context = context; + current.release = release; + current.value = value; + current.callback = done || noop; + current.errorHandler = errorHandler; + if (_running === self2.concurrency || self2.paused) { + if (queueTail) { + queueTail.next = current; + queueTail = current; + } else { + queueHead = current; + queueTail = current; + self2.saturated(); + } + } else { + _running++; + worker.call(context, current.value, current.worked); + } + } + function unshift(value, done) { + var current = cache.get(); + current.context = context; + current.release = release; + current.value = value; + current.callback = done || noop; + if (_running === self2.concurrency || self2.paused) { + if (queueHead) { + current.next = queueHead; + queueHead = current; + } else { + queueHead = current; + queueTail = current; + self2.saturated(); + } + } else { + _running++; + worker.call(context, current.value, current.worked); + } + } + function release(holder) { + if (holder) { + cache.release(holder); + } + var next = queueHead; + if (next) { + if (!self2.paused) { + if (queueTail === queueHead) { + queueTail = null; + } + queueHead = next.next; + next.next = null; + worker.call(context, next.value, next.worked); + if (queueTail === null) { + self2.empty(); + } + } else { + _running--; + } + } else if (--_running === 0) { + self2.drain(); + } + } + function kill() { + queueHead = null; + queueTail = null; + self2.drain = noop; + } + function killAndDrain() { + queueHead = null; + queueTail = null; + self2.drain(); + self2.drain = noop; + } + function error(handler) { + errorHandler = handler; + } + } + function noop() { + } + function Task() { + this.value = null; + this.callback = noop; + this.next = null; + this.release = noop; + this.context = null; + this.errorHandler = null; + var self2 = this; + this.worked = function worked(err, result2) { + var callback = self2.callback; + var errorHandler = self2.errorHandler; + var val = self2.value; + self2.value = null; + self2.callback = noop; + if (self2.errorHandler) { + errorHandler(err, val); + } + callback.call(self2.context, err, result2); + self2.release(self2); + }; + } + function queueAsPromised(context, worker, concurrency) { + if (typeof context === "function") { + concurrency = worker; + worker = context; + context = null; + } + function asyncWrapper(arg, cb) { + worker.call(this, arg).then(function(res) { + cb(null, res); + }, cb); + } + var queue = fastqueue(context, asyncWrapper, concurrency); + var pushCb = queue.push; + var unshiftCb = queue.unshift; + queue.push = push; + queue.unshift = unshift; + queue.drained = drained; + return queue; + function push(value) { + var p = new Promise(function(resolve, reject) { + pushCb(value, function(err, result2) { + if (err) { + reject(err); + return; + } + resolve(result2); + }); + }); + p.catch(noop); + return p; + } + function unshift(value) { + var p = new Promise(function(resolve, reject) { + unshiftCb(value, function(err, result2) { + if (err) { + reject(err); + return; + } + resolve(result2); + }); + }); + p.catch(noop); + return p; + } + function drained() { + if (queue.idle()) { + return new Promise(function(resolve) { + resolve(); + }); + } + var previousDrain = queue.drain; + var p = new Promise(function(resolve) { + queue.drain = function() { + previousDrain(); + resolve(); + }; + }); + return p; + } + } + module2.exports = fastqueue; + module2.exports.promise = queueAsPromised; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/common.js +var require_common4 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.joinPathSegments = exports2.replacePathSegmentSeparator = exports2.isAppliedFilter = exports2.isFatalError = void 0; + function isFatalError(settings, error) { + if (settings.errorFilter === null) { + return true; + } + return !settings.errorFilter(error); + } + exports2.isFatalError = isFatalError; + function isAppliedFilter(filter, value) { + return filter === null || filter(value); + } + exports2.isAppliedFilter = isAppliedFilter; + function replacePathSegmentSeparator(filepath, separator) { + return filepath.split(/[/\\]/).join(separator); + } + exports2.replacePathSegmentSeparator = replacePathSegmentSeparator; + function joinPathSegments(a, b, separator) { + if (a === "") { + return b; + } + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; + } + exports2.joinPathSegments = joinPathSegments; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/reader.js +var require_reader = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/reader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var common = require_common4(); + var Reader = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); + } + }; + exports2.default = Reader; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/async.js +var require_async4 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var events_1 = require("events"); + var fsScandir = require_out2(); + var fastq = require_queue2(); + var common = require_common4(); + var reader_1 = require_reader(); + var AsyncReader = class extends reader_1.default { + constructor(_root, _settings) { + super(_root, _settings); + this._settings = _settings; + this._scandir = fsScandir.scandir; + this._emitter = new events_1.EventEmitter(); + this._queue = fastq(this._worker.bind(this), this._settings.concurrency); + this._isFatalError = false; + this._isDestroyed = false; + this._queue.drain = () => { + if (!this._isFatalError) { + this._emitter.emit("end"); + } + }; + } + read() { + this._isFatalError = false; + this._isDestroyed = false; + setImmediate(() => { + this._pushToQueue(this._root, this._settings.basePath); + }); + return this._emitter; + } + get isDestroyed() { + return this._isDestroyed; + } + destroy() { + if (this._isDestroyed) { + throw new Error("The reader is already destroyed"); + } + this._isDestroyed = true; + this._queue.killAndDrain(); + } + onEntry(callback) { + this._emitter.on("entry", callback); + } + onError(callback) { + this._emitter.once("error", callback); + } + onEnd(callback) { + this._emitter.once("end", callback); + } + _pushToQueue(directory, base) { + const queueItem = { directory, base }; + this._queue.push(queueItem, (error) => { + if (error !== null) { + this._handleError(error); + } + }); + } + _worker(item, done) { + this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { + if (error !== null) { + done(error, void 0); + return; + } + for (const entry of entries) { + this._handleEntry(entry, item.base); + } + done(null, void 0); + }); + } + _handleError(error) { + if (this._isDestroyed || !common.isFatalError(this._settings, error)) { + return; + } + this._isFatalError = true; + this._isDestroyed = true; + this._emitter.emit("error", error); + } + _handleEntry(entry, base) { + if (this._isDestroyed || this._isFatalError) { + return; + } + const fullpath = entry.path; + if (base !== void 0) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._emitEntry(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + } + } + _emitEntry(entry) { + this._emitter.emit("entry", entry); + } + }; + exports2.default = AsyncReader; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/async.js +var require_async5 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var async_1 = require_async4(); + var AsyncProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._storage = []; + } + read(callback) { + this._reader.onError((error) => { + callFailureCallback(callback, error); + }); + this._reader.onEntry((entry) => { + this._storage.push(entry); + }); + this._reader.onEnd(() => { + callSuccessCallback(callback, this._storage); + }); + this._reader.read(); + } + }; + exports2.default = AsyncProvider; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, entries) { + callback(null, entries); + } + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/stream.js +var require_stream4 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var stream_12 = require("stream"); + var async_1 = require_async4(); + var StreamProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._stream = new stream_12.Readable({ + objectMode: true, + read: () => { + }, + destroy: () => { + if (!this._reader.isDestroyed) { + this._reader.destroy(); + } + } + }); + } + read() { + this._reader.onError((error) => { + this._stream.emit("error", error); + }); + this._reader.onEntry((entry) => { + this._stream.push(entry); + }); + this._reader.onEnd(() => { + this._stream.push(null); + }); + this._reader.read(); + return this._stream; + } + }; + exports2.default = StreamProvider; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/sync.js +var require_sync3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fsScandir = require_out2(); + var common = require_common4(); + var reader_1 = require_reader(); + var SyncReader = class extends reader_1.default { + constructor() { + super(...arguments); + this._scandir = fsScandir.scandirSync; + this._storage = []; + this._queue = /* @__PURE__ */ new Set(); + } + read() { + this._pushToQueue(this._root, this._settings.basePath); + this._handleQueue(); + return this._storage; + } + _pushToQueue(directory, base) { + this._queue.add({ directory, base }); + } + _handleQueue() { + for (const item of this._queue.values()) { + this._handleDirectory(item.directory, item.base); + } + } + _handleDirectory(directory, base) { + try { + const entries = this._scandir(directory, this._settings.fsScandirSettings); + for (const entry of entries) { + this._handleEntry(entry, base); + } + } catch (error) { + this._handleError(error); + } + } + _handleError(error) { + if (!common.isFatalError(this._settings, error)) { + return; + } + throw error; + } + _handleEntry(entry, base) { + const fullpath = entry.path; + if (base !== void 0) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._pushToStorage(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + } + } + _pushToStorage(entry) { + this._storage.push(entry); + } + }; + exports2.default = SyncReader; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/sync.js +var require_sync4 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var sync_1 = require_sync3(); + var SyncProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new sync_1.default(this._root, this._settings); + } + read() { + return this._reader.read(); + } + }; + exports2.default = SyncProvider; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/settings.js +var require_settings3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var path2 = require("path"); + var fsScandir = require_out2(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.basePath = this._getValue(this._options.basePath, void 0); + this.concurrency = this._getValue(this._options.concurrency, Number.POSITIVE_INFINITY); + this.deepFilter = this._getValue(this._options.deepFilter, null); + this.entryFilter = this._getValue(this._options.entryFilter, null); + this.errorFilter = this._getValue(this._options.errorFilter, null); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path2.sep); + this.fsScandirSettings = new fsScandir.Settings({ + followSymbolicLinks: this._options.followSymbolicLinks, + fs: this._options.fs, + pathSegmentSeparator: this._options.pathSegmentSeparator, + stats: this._options.stats, + throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); + +// ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/index.js +var require_out3 = __commonJS({ + "../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Settings = exports2.walkStream = exports2.walkSync = exports2.walk = void 0; + var async_1 = require_async5(); + var stream_12 = require_stream4(); + var sync_1 = require_sync4(); + var settings_1 = require_settings3(); + exports2.Settings = settings_1.default; + function walk(directory, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); + return; + } + new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); + } + exports2.walk = walk; + function walkSync(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new sync_1.default(directory, settings); + return provider.read(); + } + exports2.walkSync = walkSync; + function walkStream(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new stream_12.default(directory, settings); + return provider.read(); + } + exports2.walkStream = walkStream; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/reader.js +var require_reader2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/reader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var path2 = require("path"); + var fsStat = require_out(); + var utils = require_utils5(); + var Reader = class { + constructor(_settings) { + this._settings = _settings; + this._fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this._settings.followSymbolicLinks, + fs: this._settings.fs, + throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks + }); + } + _getFullEntryPath(filepath) { + return path2.resolve(this._settings.cwd, filepath); + } + _makeEntry(stats, pattern) { + const entry = { + name: pattern, + path: pattern, + dirent: utils.fs.createDirentFromStats(pattern, stats) + }; + if (this._settings.stats) { + entry.stats = stats; + } + return entry; + } + _isFatalError(error) { + return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; + } + }; + exports2.default = Reader; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/stream.js +var require_stream5 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var stream_12 = require("stream"); + var fsStat = require_out(); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var ReaderStream = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkStream = fsWalk.walkStream; + this._stat = fsStat.stat; + } + dynamic(root, options) { + return this._walkStream(root, options); + } + static(patterns, options) { + const filepaths = patterns.map(this._getFullEntryPath, this); + const stream = new stream_12.PassThrough({ objectMode: true }); + stream._write = (index, _enc, done) => { + return this._getEntry(filepaths[index], patterns[index], options).then((entry) => { + if (entry !== null && options.entryFilter(entry)) { + stream.push(entry); + } + if (index === filepaths.length - 1) { + stream.end(); + } + done(); + }).catch(done); + }; + for (let i = 0; i < filepaths.length; i++) { + stream.write(i); + } + return stream; + } + _getEntry(filepath, pattern, options) { + return this._getStat(filepath).then((stats) => this._makeEntry(stats, pattern)).catch((error) => { + if (options.errorFilter(error)) { + return null; + } + throw error; + }); + } + _getStat(filepath) { + return new Promise((resolve, reject) => { + this._stat(filepath, this._fsStatSettings, (error, stats) => { + return error === null ? resolve(stats) : reject(error); + }); + }); + } + }; + exports2.default = ReaderStream; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/async.js +var require_async6 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var stream_12 = require_stream5(); + var ReaderAsync = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkAsync = fsWalk.walk; + this._readerStream = new stream_12.default(this._settings); + } + dynamic(root, options) { + return new Promise((resolve, reject) => { + this._walkAsync(root, options, (error, entries) => { + if (error === null) { + resolve(entries); + } else { + reject(error); + } + }); + }); + } + async static(patterns, options) { + const entries = []; + const stream = this._readerStream.static(patterns, options); + return new Promise((resolve, reject) => { + stream.once("error", reject); + stream.on("data", (entry) => entries.push(entry)); + stream.once("end", () => resolve(entries)); + }); + } + }; + exports2.default = ReaderAsync; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/matchers/matcher.js +var require_matcher = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/matchers/matcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils5(); + var Matcher = class { + constructor(_patterns, _settings, _micromatchOptions) { + this._patterns = _patterns; + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this._storage = []; + this._fillStorage(); + } + _fillStorage() { + const patterns = utils.pattern.expandPatternsWithBraceExpansion(this._patterns); + for (const pattern of patterns) { + const segments = this._getPatternSegments(pattern); + const sections = this._splitSegmentsIntoSections(segments); + this._storage.push({ + complete: sections.length <= 1, + pattern, + segments, + sections + }); + } + } + _getPatternSegments(pattern) { + const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); + return parts.map((part) => { + const dynamic = utils.pattern.isDynamicPattern(part, this._settings); + if (!dynamic) { + return { + dynamic: false, + pattern: part + }; + } + return { + dynamic: true, + pattern: part, + patternRe: utils.pattern.makeRe(part, this._micromatchOptions) + }; + }); + } + _splitSegmentsIntoSections(segments) { + return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); + } + }; + exports2.default = Matcher; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/matchers/partial.js +var require_partial = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/matchers/partial.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var matcher_1 = require_matcher(); + var PartialMatcher = class extends matcher_1.default { + match(filepath) { + const parts = filepath.split("/"); + const levels = parts.length; + const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); + for (const pattern of patterns) { + const section = pattern.sections[0]; + if (!pattern.complete && levels > section.length) { + return true; + } + const match = parts.every((part, index) => { + const segment = pattern.segments[index]; + if (segment.dynamic && segment.patternRe.test(part)) { + return true; + } + if (!segment.dynamic && segment.pattern === part) { + return true; + } + return false; + }); + if (match) { + return true; + } + } + return false; + } + }; + exports2.default = PartialMatcher; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/deep.js +var require_deep = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/deep.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils5(); + var partial_1 = require_partial(); + var DeepFilter = class { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + } + getFilter(basePath2, positive, negative) { + const matcher = this._getMatcher(positive); + const negativeRe = this._getNegativePatternsRe(negative); + return (entry) => this._filter(basePath2, entry, matcher, negativeRe); + } + _getMatcher(patterns) { + return new partial_1.default(patterns, this._settings, this._micromatchOptions); + } + _getNegativePatternsRe(patterns) { + const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); + return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); + } + _filter(basePath2, entry, matcher, negativeRe) { + if (this._isSkippedByDeep(basePath2, entry.path)) { + return false; + } + if (this._isSkippedSymbolicLink(entry)) { + return false; + } + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._isSkippedByPositivePatterns(filepath, matcher)) { + return false; + } + return this._isSkippedByNegativePatterns(filepath, negativeRe); + } + _isSkippedByDeep(basePath2, entryPath) { + if (this._settings.deep === Infinity) { + return false; + } + return this._getEntryLevel(basePath2, entryPath) >= this._settings.deep; + } + _getEntryLevel(basePath2, entryPath) { + const entryPathDepth = entryPath.split("/").length; + if (basePath2 === "") { + return entryPathDepth; + } + const basePathDepth = basePath2.split("/").length; + return entryPathDepth - basePathDepth; + } + _isSkippedSymbolicLink(entry) { + return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); + } + _isSkippedByPositivePatterns(entryPath, matcher) { + return !this._settings.baseNameMatch && !matcher.match(entryPath); + } + _isSkippedByNegativePatterns(entryPath, patternsRe) { + return !utils.pattern.matchAny(entryPath, patternsRe); + } + }; + exports2.default = DeepFilter; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/entry.js +var require_entry = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/entry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils5(); + var EntryFilter = class { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this.index = /* @__PURE__ */ new Map(); + } + getFilter(positive, negative) { + const positiveRe = utils.pattern.convertPatternsToRe(positive, this._micromatchOptions); + const negativeRe = utils.pattern.convertPatternsToRe(negative, this._micromatchOptions); + return (entry) => this._filter(entry, positiveRe, negativeRe); + } + _filter(entry, positiveRe, negativeRe) { + if (this._settings.unique && this._isDuplicateEntry(entry)) { + return false; + } + if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { + return false; + } + if (this._isSkippedByAbsoluteNegativePatterns(entry.path, negativeRe)) { + return false; + } + const filepath = this._settings.baseNameMatch ? entry.name : entry.path; + const isDirectory = entry.dirent.isDirectory(); + const isMatched = this._isMatchToPatterns(filepath, positiveRe, isDirectory) && !this._isMatchToPatterns(entry.path, negativeRe, isDirectory); + if (this._settings.unique && isMatched) { + this._createIndexRecord(entry); + } + return isMatched; + } + _isDuplicateEntry(entry) { + return this.index.has(entry.path); + } + _createIndexRecord(entry) { + this.index.set(entry.path, void 0); + } + _onlyFileFilter(entry) { + return this._settings.onlyFiles && !entry.dirent.isFile(); + } + _onlyDirectoryFilter(entry) { + return this._settings.onlyDirectories && !entry.dirent.isDirectory(); + } + _isSkippedByAbsoluteNegativePatterns(entryPath, patternsRe) { + if (!this._settings.absolute) { + return false; + } + const fullpath = utils.path.makeAbsolute(this._settings.cwd, entryPath); + return utils.pattern.matchAny(fullpath, patternsRe); + } + _isMatchToPatterns(entryPath, patternsRe, isDirectory) { + const filepath = utils.path.removeLeadingDotSegment(entryPath); + const isMatched = utils.pattern.matchAny(filepath, patternsRe); + if (!isMatched && isDirectory) { + return utils.pattern.matchAny(filepath + "/", patternsRe); + } + return isMatched; + } + }; + exports2.default = EntryFilter; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/error.js +var require_error2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/filters/error.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils5(); + var ErrorFilter = class { + constructor(_settings) { + this._settings = _settings; + } + getFilter() { + return (error) => this._isNonFatalError(error); + } + _isNonFatalError(error) { + return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; + } + }; + exports2.default = ErrorFilter; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/transformers/entry.js +var require_entry2 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/transformers/entry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils5(); + var EntryTransformer = class { + constructor(_settings) { + this._settings = _settings; + } + getTransformer() { + return (entry) => this._transform(entry); + } + _transform(entry) { + let filepath = entry.path; + if (this._settings.absolute) { + filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); + filepath = utils.path.unixify(filepath); + } + if (this._settings.markDirectories && entry.dirent.isDirectory()) { + filepath += "/"; + } + if (!this._settings.objectMode) { + return filepath; + } + return Object.assign(Object.assign({}, entry), { path: filepath }); + } + }; + exports2.default = EntryTransformer; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/provider.js +var require_provider = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/provider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var path2 = require("path"); + var deep_1 = require_deep(); + var entry_1 = require_entry(); + var error_1 = require_error2(); + var entry_2 = require_entry2(); + var Provider = class { + constructor(_settings) { + this._settings = _settings; + this.errorFilter = new error_1.default(this._settings); + this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); + this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); + this.entryTransformer = new entry_2.default(this._settings); + } + _getRootDirectory(task) { + return path2.resolve(this._settings.cwd, task.base); + } + _getReaderOptions(task) { + const basePath2 = task.base === "." ? "" : task.base; + return { + basePath: basePath2, + pathSegmentSeparator: "/", + concurrency: this._settings.concurrency, + deepFilter: this.deepFilter.getFilter(basePath2, task.positive, task.negative), + entryFilter: this.entryFilter.getFilter(task.positive, task.negative), + errorFilter: this.errorFilter.getFilter(), + followSymbolicLinks: this._settings.followSymbolicLinks, + fs: this._settings.fs, + stats: this._settings.stats, + throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink, + transform: this.entryTransformer.getTransformer() + }; + } + _getMicromatchOptions() { + return { + dot: this._settings.dot, + matchBase: this._settings.baseNameMatch, + nobrace: !this._settings.braceExpansion, + nocase: !this._settings.caseSensitiveMatch, + noext: !this._settings.extglob, + noglobstar: !this._settings.globstar, + posix: true, + strictSlashes: false + }; + } + }; + exports2.default = Provider; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/async.js +var require_async7 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var async_1 = require_async6(); + var provider_1 = require_provider(); + var ProviderAsync = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new async_1.default(this._settings); + } + async read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = await this.api(root, task, options); + return entries.map((entry) => options.transform(entry)); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderAsync; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/stream.js +var require_stream6 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var stream_12 = require("stream"); + var stream_2 = require_stream5(); + var provider_1 = require_provider(); + var ProviderStream = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new stream_2.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const source = this.api(root, task, options); + const destination = new stream_12.Readable({ objectMode: true, read: () => { + } }); + source.once("error", (error) => destination.emit("error", error)).on("data", (entry) => destination.emit("data", options.transform(entry))).once("end", () => destination.emit("end")); + destination.once("close", () => source.destroy()); + return destination; + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderStream; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/sync.js +var require_sync5 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/readers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fsStat = require_out(); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var ReaderSync = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkSync = fsWalk.walkSync; + this._statSync = fsStat.statSync; + } + dynamic(root, options) { + return this._walkSync(root, options); + } + static(patterns, options) { + const entries = []; + for (const pattern of patterns) { + const filepath = this._getFullEntryPath(pattern); + const entry = this._getEntry(filepath, pattern, options); + if (entry === null || !options.entryFilter(entry)) { + continue; + } + entries.push(entry); + } + return entries; + } + _getEntry(filepath, pattern, options) { + try { + const stats = this._getStat(filepath); + return this._makeEntry(stats, pattern); + } catch (error) { + if (options.errorFilter(error)) { + return null; + } + throw error; + } + } + _getStat(filepath) { + return this._statSync(filepath, this._fsStatSettings); + } + }; + exports2.default = ReaderSync; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/sync.js +var require_sync6 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var sync_1 = require_sync5(); + var provider_1 = require_provider(); + var ProviderSync = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new sync_1.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = this.api(root, task, options); + return entries.map(options.transform); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderSync; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/settings.js +var require_settings4 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; + var fs2 = require("fs"); + var os = require("os"); + var CPU_COUNT = Math.max(os.cpus().length, 1); + exports2.DEFAULT_FILE_SYSTEM_ADAPTER = { + lstat: fs2.lstat, + lstatSync: fs2.lstatSync, + stat: fs2.stat, + statSync: fs2.statSync, + readdir: fs2.readdir, + readdirSync: fs2.readdirSync + }; + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.absolute = this._getValue(this._options.absolute, false); + this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); + this.braceExpansion = this._getValue(this._options.braceExpansion, true); + this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); + this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); + this.cwd = this._getValue(this._options.cwd, process.cwd()); + this.deep = this._getValue(this._options.deep, Infinity); + this.dot = this._getValue(this._options.dot, false); + this.extglob = this._getValue(this._options.extglob, true); + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); + this.fs = this._getFileSystemMethods(this._options.fs); + this.globstar = this._getValue(this._options.globstar, true); + this.ignore = this._getValue(this._options.ignore, []); + this.markDirectories = this._getValue(this._options.markDirectories, false); + this.objectMode = this._getValue(this._options.objectMode, false); + this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); + this.onlyFiles = this._getValue(this._options.onlyFiles, true); + this.stats = this._getValue(this._options.stats, false); + this.suppressErrors = this._getValue(this._options.suppressErrors, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); + this.unique = this._getValue(this._options.unique, true); + if (this.onlyDirectories) { + this.onlyFiles = false; + } + if (this.stats) { + this.objectMode = true; + } + } + _getValue(option, value) { + return option === void 0 ? value : option; + } + _getFileSystemMethods(methods = {}) { + return Object.assign(Object.assign({}, exports2.DEFAULT_FILE_SYSTEM_ADAPTER), methods); + } + }; + exports2.default = Settings; + } +}); + +// ../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/index.js +var require_out4 = __commonJS({ + "../node_modules/.pnpm/fast-glob@3.2.12/node_modules/fast-glob/out/index.js"(exports2, module2) { + "use strict"; + var taskManager = require_tasks(); + var patternManager = require_patterns(); + var async_1 = require_async7(); + var stream_12 = require_stream6(); + var sync_1 = require_sync6(); + var settings_1 = require_settings4(); + var utils = require_utils5(); + async function FastGlob(source, options) { + assertPatternsInput(source); + const works = getWorks(source, async_1.default, options); + const result2 = await Promise.all(works); + return utils.array.flatten(result2); + } + (function(FastGlob2) { + function sync(source, options) { + assertPatternsInput(source); + const works = getWorks(source, sync_1.default, options); + return utils.array.flatten(works); + } + FastGlob2.sync = sync; + function stream(source, options) { + assertPatternsInput(source); + const works = getWorks(source, stream_12.default, options); + return utils.stream.merge(works); + } + FastGlob2.stream = stream; + function generateTasks(source, options) { + assertPatternsInput(source); + const patterns = patternManager.transform([].concat(source)); + const settings = new settings_1.default(options); + return taskManager.generate(patterns, settings); + } + FastGlob2.generateTasks = generateTasks; + function isDynamicPattern(source, options) { + assertPatternsInput(source); + const settings = new settings_1.default(options); + return utils.pattern.isDynamicPattern(source, settings); + } + FastGlob2.isDynamicPattern = isDynamicPattern; + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escape(source); + } + FastGlob2.escapePath = escapePath; + })(FastGlob || (FastGlob = {})); + function getWorks(source, _Provider, options) { + const patterns = patternManager.transform([].concat(source)); + const settings = new settings_1.default(options); + const tasks = taskManager.generate(patterns, settings); + const provider = new _Provider(settings); + return tasks.map(provider.read, provider); + } + function assertPatternsInput(input) { + const source = [].concat(input); + const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); + if (!isValidSource) { + throw new TypeError("Patterns must be a string (non empty) or an array of strings"); + } + } + module2.exports = FastGlob; + } +}); + +// ../node_modules/.pnpm/p-map@2.1.0/node_modules/p-map/index.js +var require_p_map = __commonJS({ + "../node_modules/.pnpm/p-map@2.1.0/node_modules/p-map/index.js"(exports2, module2) { + "use strict"; + var pMap = (iterable, mapper, options) => new Promise((resolve, reject) => { + options = Object.assign({ + concurrency: Infinity + }, options); + if (typeof mapper !== "function") { + throw new TypeError("Mapper function is required"); + } + const { concurrency } = options; + if (!(typeof concurrency === "number" && concurrency >= 1)) { + throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${concurrency}\` (${typeof concurrency})`); + } + const ret = []; + const iterator = iterable[Symbol.iterator](); + let isRejected = false; + let isIterableDone = false; + let resolvingCount = 0; + let currentIndex = 0; + const next = () => { + if (isRejected) { + return; + } + const nextItem = iterator.next(); + const i = currentIndex; + currentIndex++; + if (nextItem.done) { + isIterableDone = true; + if (resolvingCount === 0) { + resolve(ret); + } + return; + } + resolvingCount++; + Promise.resolve(nextItem.value).then((element) => mapper(element, i)).then( + (value) => { + ret[i] = value; + resolvingCount--; + next(); + }, + (error) => { + isRejected = true; + reject(error); + } + ); + }; + for (let i = 0; i < concurrency; i++) { + next(); + if (isIterableDone) { + break; + } + } + }); + module2.exports = pMap; + module2.exports.default = pMap; + } +}); + +// ../node_modules/.pnpm/p-filter@2.1.0/node_modules/p-filter/index.js +var require_p_filter = __commonJS({ + "../node_modules/.pnpm/p-filter@2.1.0/node_modules/p-filter/index.js"(exports2, module2) { + "use strict"; + var pMap = require_p_map(); + var pFilter = async (iterable, filterer, options) => { + const values = await pMap( + iterable, + (element, index) => Promise.all([filterer(element, index), element]), + options + ); + return values.filter((value) => Boolean(value[0])).map((value) => value[1]); + }; + module2.exports = pFilter; + module2.exports.default = pFilter; + } +}); + +// ../fs/find-packages/lib/index.js +var require_lib28 = __commonJS({ + "../fs/find-packages/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findPackages = void 0; + var path_1 = __importDefault4(require("path")); + var read_project_manifest_1 = require_lib16(); + var util_lex_comparator_1 = require_dist5(); + var fast_glob_1 = __importDefault4(require_out4()); + var p_filter_1 = __importDefault4(require_p_filter()); + var DEFAULT_IGNORE = [ + "**/node_modules/**", + "**/bower_components/**", + "**/test/**", + "**/tests/**" + ]; + async function findPackages(root, opts) { + opts = opts ?? {}; + const globOpts = { ...opts, cwd: root, includeRoot: void 0 }; + globOpts.ignore = opts.ignore ?? DEFAULT_IGNORE; + const patterns = normalizePatterns(opts.patterns != null ? opts.patterns : [".", "**"]); + const paths = await (0, fast_glob_1.default)(patterns, globOpts); + if (opts.includeRoot) { + Array.prototype.push.apply(paths, await (0, fast_glob_1.default)(normalizePatterns(["."]), globOpts)); + } + return (0, p_filter_1.default)( + // `Array.from()` doesn't create an intermediate instance, + // unlike `array.map()` + Array.from( + // Remove duplicate paths using `Set` + new Set(paths.map((manifestPath) => path_1.default.join(root, manifestPath)).sort((path1, path2) => (0, util_lex_comparator_1.lexCompare)(path_1.default.dirname(path1), path_1.default.dirname(path2)))), + async (manifestPath) => { + try { + return { + dir: path_1.default.dirname(manifestPath), + ...await (0, read_project_manifest_1.readExactProjectManifest)(manifestPath) + }; + } catch (err) { + if (err.code === "ENOENT") { + return null; + } + throw err; + } + } + ), + Boolean + ); + } + exports2.findPackages = findPackages; + function normalizePatterns(patterns) { + const normalizedPatterns = []; + for (const pattern of patterns) { + normalizedPatterns.push(pattern.replace(/\/?$/, "/package.json")); + normalizedPatterns.push(pattern.replace(/\/?$/, "/package.json5")); + normalizedPatterns.push(pattern.replace(/\/?$/, "/package.yaml")); + } + return normalizedPatterns; + } + } +}); + +// ../workspace/find-workspace-packages/lib/index.js +var require_lib29 = __commonJS({ + "../workspace/find-workspace-packages/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.arrayOfWorkspacePackagesToMap = exports2.findWorkspacePackagesNoCheck = exports2.findWorkspacePackages = void 0; + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var constants_1 = require_lib7(); + var util_lex_comparator_1 = require_dist5(); + var fs_find_packages_1 = require_lib28(); + var read_yaml_file_1 = __importDefault4(require_read_yaml_file()); + async function findWorkspacePackages(workspaceRoot, opts) { + const pkgs = await findWorkspacePackagesNoCheck(workspaceRoot, opts); + for (const pkg of pkgs) { + (0, cli_utils_1.packageIsInstallable)(pkg.dir, pkg.manifest, opts ?? {}); + } + return pkgs; + } + exports2.findWorkspacePackages = findWorkspacePackages; + async function findWorkspacePackagesNoCheck(workspaceRoot, opts) { + let patterns = opts?.patterns; + if (patterns == null) { + const packagesManifest = await requirePackagesManifest(workspaceRoot); + patterns = packagesManifest?.packages ?? void 0; + } + const pkgs = await (0, fs_find_packages_1.findPackages)(workspaceRoot, { + ignore: [ + "**/node_modules/**", + "**/bower_components/**" + ], + includeRoot: true, + patterns + }); + pkgs.sort((pkg1, pkg2) => (0, util_lex_comparator_1.lexCompare)(pkg1.dir, pkg2.dir)); + return pkgs; + } + exports2.findWorkspacePackagesNoCheck = findWorkspacePackagesNoCheck; + async function requirePackagesManifest(dir) { + try { + return await (0, read_yaml_file_1.default)(path_1.default.join(dir, constants_1.WORKSPACE_MANIFEST_FILENAME)); + } catch (err) { + if (err["code"] === "ENOENT") { + return null; + } + throw err; + } + } + function arrayOfWorkspacePackagesToMap(pkgs) { + return pkgs.reduce((acc, pkg) => { + if (!pkg.manifest.name) + return acc; + if (!acc[pkg.manifest.name]) { + acc[pkg.manifest.name] = {}; + } + acc[pkg.manifest.name][pkg.manifest.version ?? "0.0.0"] = pkg; + return acc; + }, {}); + } + exports2.arrayOfWorkspacePackagesToMap = arrayOfWorkspacePackagesToMap; + } +}); + +// ../node_modules/.pnpm/builtins@5.0.1/node_modules/builtins/index.js +var require_builtins = __commonJS({ + "../node_modules/.pnpm/builtins@5.0.1/node_modules/builtins/index.js"(exports2, module2) { + "use strict"; + var semver = require_semver2(); + var permanentModules = [ + "assert", + "buffer", + "child_process", + "cluster", + "console", + "constants", + "crypto", + "dgram", + "dns", + "domain", + "events", + "fs", + "http", + "https", + "module", + "net", + "os", + "path", + "punycode", + "querystring", + "readline", + "repl", + "stream", + "string_decoder", + "sys", + "timers", + "tls", + "tty", + "url", + "util", + "vm", + "zlib" + ]; + var versionLockedModules = { + freelist: "<6.0.0", + v8: ">=1.0.0", + process: ">=1.1.0", + inspector: ">=8.0.0", + async_hooks: ">=8.1.0", + http2: ">=8.4.0", + perf_hooks: ">=8.5.0", + trace_events: ">=10.0.0", + worker_threads: ">=12.0.0", + "node:test": ">=18.0.0" + }; + var experimentalModules = { + worker_threads: ">=10.5.0", + wasi: ">=12.16.0", + diagnostics_channel: "^14.17.0 || >=15.1.0" + }; + module2.exports = ({ version: version2 = process.version, experimental = false } = {}) => { + const builtins = [...permanentModules]; + for (const [name, semverRange] of Object.entries(versionLockedModules)) { + if (version2 === "*" || semver.satisfies(version2, semverRange)) { + builtins.push(name); + } + } + if (experimental) { + for (const [name, semverRange] of Object.entries(experimentalModules)) { + if (!builtins.includes(name) && (version2 === "*" || semver.satisfies(version2, semverRange))) { + builtins.push(name); + } + } + } + return builtins; + }; + } +}); + +// ../node_modules/.pnpm/validate-npm-package-name@4.0.0/node_modules/validate-npm-package-name/lib/index.js +var require_lib30 = __commonJS({ + "../node_modules/.pnpm/validate-npm-package-name@4.0.0/node_modules/validate-npm-package-name/lib/index.js"(exports2, module2) { + "use strict"; + var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$"); + var builtins = require_builtins(); + var blacklist = [ + "node_modules", + "favicon.ico" + ]; + function validate2(name) { + var warnings = []; + var errors = []; + if (name === null) { + errors.push("name cannot be null"); + return done(warnings, errors); + } + if (name === void 0) { + errors.push("name cannot be undefined"); + return done(warnings, errors); + } + if (typeof name !== "string") { + errors.push("name must be a string"); + return done(warnings, errors); + } + if (!name.length) { + errors.push("name length must be greater than zero"); + } + if (name.match(/^\./)) { + errors.push("name cannot start with a period"); + } + if (name.match(/^_/)) { + errors.push("name cannot start with an underscore"); + } + if (name.trim() !== name) { + errors.push("name cannot contain leading or trailing spaces"); + } + blacklist.forEach(function(blacklistedName) { + if (name.toLowerCase() === blacklistedName) { + errors.push(blacklistedName + " is a blacklisted name"); + } + }); + builtins({ version: "*" }).forEach(function(builtin) { + if (name.toLowerCase() === builtin) { + warnings.push(builtin + " is a core module name"); + } + }); + if (name.length > 214) { + warnings.push("name can no longer contain more than 214 characters"); + } + if (name.toLowerCase() !== name) { + warnings.push("name can no longer contain capital letters"); + } + if (/[~'!()*]/.test(name.split("/").slice(-1)[0])) { + warnings.push(`name can no longer contain special characters ("~'!()*")`); + } + if (encodeURIComponent(name) !== name) { + var nameMatch = name.match(scopedPackagePattern); + if (nameMatch) { + var user = nameMatch[1]; + var pkg = nameMatch[2]; + if (encodeURIComponent(user) === user && encodeURIComponent(pkg) === pkg) { + return done(warnings, errors); + } + } + errors.push("name can only contain URL-friendly characters"); + } + return done(warnings, errors); + } + var done = function(warnings, errors) { + var result2 = { + validForNewPackages: errors.length === 0 && warnings.length === 0, + validForOldPackages: errors.length === 0, + warnings, + errors + }; + if (!result2.warnings.length) { + delete result2.warnings; + } + if (!result2.errors.length) { + delete result2.errors; + } + return result2; + }; + module2.exports = validate2; + } +}); + +// ../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host-info.js +var require_git_host_info = __commonJS({ + "../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host-info.js"(exports2, module2) { + "use strict"; + var maybeJoin = (...args2) => args2.every((arg) => arg) ? args2.join("") : ""; + var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : ""; + var defaults = { + sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`, + sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`, + browsefiletemplate: ({ domain, user, project, committish, treepath, path: path2, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path2}${maybeJoin("#", hashformat(fragment || ""))}`, + docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`, + httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + filetemplate: ({ domain, user, project, committish, path: path2 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path2}`, + shortcuttemplate: ({ type, user, project, committish }) => `${type}:${user}/${project}${maybeJoin("#", committish)}`, + pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`, + bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`, + hashformat: formatHashFragment + }; + var gitHosts = {}; + gitHosts.github = Object.assign({}, defaults, { + // First two are insecure and generally shouldn't be used any more, but + // they are still supported. + protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"], + domain: "github.com", + treepath: "tree", + filetemplate: ({ auth, user, project, committish, path: path2 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path2}`, + gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish) || "master"}`, + extract: (url) => { + let [, user, project, type, committish] = url.pathname.split("/", 5); + if (type && type !== "tree") { + return; + } + if (!type) { + committish = url.hash.slice(1); + } + if (project && project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (!user || !project) { + return; + } + return { user, project, committish }; + } + }); + gitHosts.bitbucket = Object.assign({}, defaults, { + protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], + domain: "bitbucket.org", + treepath: "src", + tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish) || "master"}.tar.gz`, + extract: (url) => { + let [, user, project, aux] = url.pathname.split("/", 4); + if (["get"].includes(aux)) { + return; + } + if (project && project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (!user || !project) { + return; + } + return { user, project, committish: url.hash.slice(1) }; + } + }); + gitHosts.gitlab = Object.assign({}, defaults, { + protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], + domain: "gitlab.com", + treepath: "tree", + httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/api/v4/projects/${user}%2F${project}/repository/archive.tar.gz?ref=${maybeEncode(committish) || "master"}`, + extract: (url) => { + const path2 = url.pathname.slice(1); + if (path2.includes("/-/") || path2.includes("/archive.tar.gz")) { + return; + } + const segments = path2.split("/"); + let project = segments.pop(); + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + const user = segments.join("/"); + if (!user || !project) { + return; + } + return { user, project, committish: url.hash.slice(1) }; + } + }); + gitHosts.gist = Object.assign({}, defaults, { + protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"], + domain: "gist.github.com", + sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`, + sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`, + browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, + browsefiletemplate: ({ domain, project, committish, path: path2, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path2))}`, + docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, + httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`, + filetemplate: ({ user, project, committish, path: path2 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path2}`, + shortcuttemplate: ({ type, project, committish }) => `${type}:${project}${maybeJoin("#", committish)}`, + pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`, + bugstemplate: ({ domain, project }) => `https://${domain}/${project}`, + gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish) || "master"}`, + extract: (url) => { + let [, user, project, aux] = url.pathname.split("/", 4); + if (aux === "raw") { + return; + } + if (!project) { + if (!user) { + return; + } + project = user; + user = null; + } + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + return { user, project, committish: url.hash.slice(1) }; + }, + hashformat: function(fragment) { + return fragment && "file-" + formatHashFragment(fragment); + } + }); + var names = Object.keys(gitHosts); + gitHosts.byShortcut = {}; + gitHosts.byDomain = {}; + for (const name of names) { + gitHosts.byShortcut[`${name}:`] = name; + gitHosts.byDomain[gitHosts[name].domain] = name; + } + function formatHashFragment(fragment) { + return fragment.toLowerCase().replace(/^\W+|\/|\W+$/g, "").replace(/\W+/g, "-"); + } + module2.exports = gitHosts; + } +}); + +// ../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host.js +var require_git_host = __commonJS({ + "../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host.js"(exports2, module2) { + "use strict"; + var gitHosts = require_git_host_info(); + var GitHost = class { + constructor(type, user, auth, project, committish, defaultRepresentation, opts = {}) { + Object.assign(this, gitHosts[type]); + this.type = type; + this.user = user; + this.auth = auth; + this.project = project; + this.committish = committish; + this.default = defaultRepresentation; + this.opts = opts; + } + hash() { + return this.committish ? `#${this.committish}` : ""; + } + ssh(opts) { + return this._fill(this.sshtemplate, opts); + } + _fill(template, opts) { + if (typeof template === "function") { + const options = { ...this, ...this.opts, ...opts }; + if (!options.path) { + options.path = ""; + } + if (options.path.startsWith("/")) { + options.path = options.path.slice(1); + } + if (options.noCommittish) { + options.committish = null; + } + const result2 = template(options); + return options.noGitPlus && result2.startsWith("git+") ? result2.slice(4) : result2; + } + return null; + } + sshurl(opts) { + return this._fill(this.sshurltemplate, opts); + } + browse(path2, fragment, opts) { + if (typeof path2 !== "string") { + return this._fill(this.browsetemplate, path2); + } + if (typeof fragment !== "string") { + opts = fragment; + fragment = null; + } + return this._fill(this.browsefiletemplate, { ...opts, fragment, path: path2 }); + } + docs(opts) { + return this._fill(this.docstemplate, opts); + } + bugs(opts) { + return this._fill(this.bugstemplate, opts); + } + https(opts) { + return this._fill(this.httpstemplate, opts); + } + git(opts) { + return this._fill(this.gittemplate, opts); + } + shortcut(opts) { + return this._fill(this.shortcuttemplate, opts); + } + path(opts) { + return this._fill(this.pathtemplate, opts); + } + tarball(opts) { + return this._fill(this.tarballtemplate, { ...opts, noCommittish: false }); + } + file(path2, opts) { + return this._fill(this.filetemplate, { ...opts, path: path2 }); + } + getDefaultRepresentation() { + return this.default; + } + toString(opts) { + if (this.default && typeof this[this.default] === "function") { + return this[this.default](opts); + } + return this.sshurl(opts); + } + }; + module2.exports = GitHost; + } +}); + +// ../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/index.js +var require_hosted_git_info = __commonJS({ + "../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/index.js"(exports2, module2) { + "use strict"; + var url = require("url"); + var gitHosts = require_git_host_info(); + var GitHost = module2.exports = require_git_host(); + var LRU = require_lru_cache(); + var cache = new LRU({ max: 1e3 }); + var protocolToRepresentationMap = { + "git+ssh:": "sshurl", + "git+https:": "https", + "ssh:": "sshurl", + "git:": "git" + }; + function protocolToRepresentation(protocol) { + return protocolToRepresentationMap[protocol] || protocol.slice(0, -1); + } + var authProtocols = { + "git:": true, + "https:": true, + "git+https:": true, + "http:": true, + "git+http:": true + }; + var knownProtocols = Object.keys(gitHosts.byShortcut).concat(["http:", "https:", "git:", "git+ssh:", "git+https:", "ssh:"]); + module2.exports.fromUrl = function(giturl, opts) { + if (typeof giturl !== "string") { + return; + } + const key = giturl + JSON.stringify(opts || {}); + if (!cache.has(key)) { + cache.set(key, fromUrl(giturl, opts)); + } + return cache.get(key); + }; + function fromUrl(giturl, opts) { + if (!giturl) { + return; + } + const url2 = isGitHubShorthand(giturl) ? "github:" + giturl : correctProtocol(giturl); + const parsed = parseGitUrl(url2); + if (!parsed) { + return parsed; + } + const gitHostShortcut = gitHosts.byShortcut[parsed.protocol]; + const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname]; + const gitHostName = gitHostShortcut || gitHostDomain; + if (!gitHostName) { + return; + } + const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain]; + let auth = null; + if (authProtocols[parsed.protocol] && (parsed.username || parsed.password)) { + auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`; + } + let committish = null; + let user = null; + let project = null; + let defaultRepresentation = null; + try { + if (gitHostShortcut) { + let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname; + const firstAt = pathname.indexOf("@"); + if (firstAt > -1) { + pathname = pathname.slice(firstAt + 1); + } + const lastSlash = pathname.lastIndexOf("/"); + if (lastSlash > -1) { + user = decodeURIComponent(pathname.slice(0, lastSlash)); + if (!user) { + user = null; + } + project = decodeURIComponent(pathname.slice(lastSlash + 1)); + } else { + project = decodeURIComponent(pathname); + } + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (parsed.hash) { + committish = decodeURIComponent(parsed.hash.slice(1)); + } + defaultRepresentation = "shortcut"; + } else { + if (!gitHostInfo.protocols.includes(parsed.protocol)) { + return; + } + const segments = gitHostInfo.extract(parsed); + if (!segments) { + return; + } + user = segments.user && decodeURIComponent(segments.user); + project = decodeURIComponent(segments.project); + committish = decodeURIComponent(segments.committish); + defaultRepresentation = protocolToRepresentation(parsed.protocol); + } + } catch (err) { + if (err instanceof URIError) { + return; + } else { + throw err; + } + } + return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts); + } + var correctProtocol = (arg) => { + const firstColon = arg.indexOf(":"); + const proto = arg.slice(0, firstColon + 1); + if (knownProtocols.includes(proto)) { + return arg; + } + const firstAt = arg.indexOf("@"); + if (firstAt > -1) { + if (firstAt > firstColon) { + return `git+ssh://${arg}`; + } else { + return arg; + } + } + const doubleSlash = arg.indexOf("//"); + if (doubleSlash === firstColon + 1) { + return arg; + } + return arg.slice(0, firstColon + 1) + "//" + arg.slice(firstColon + 1); + }; + var isGitHubShorthand = (arg) => { + const firstHash = arg.indexOf("#"); + const firstSlash = arg.indexOf("/"); + const secondSlash = arg.indexOf("/", firstSlash + 1); + const firstColon = arg.indexOf(":"); + const firstSpace = /\s/.exec(arg); + const firstAt = arg.indexOf("@"); + const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash; + const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash; + const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash; + const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash; + const hasSlash = firstSlash > 0; + const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/"); + const doesNotStartWithDot = !arg.startsWith("."); + return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash; + }; + var correctUrl = (giturl) => { + const firstAt = giturl.indexOf("@"); + const lastHash = giturl.lastIndexOf("#"); + let firstColon = giturl.indexOf(":"); + let lastColon = giturl.lastIndexOf(":", lastHash > -1 ? lastHash : Infinity); + let corrected; + if (lastColon > firstAt) { + corrected = giturl.slice(0, lastColon) + "/" + giturl.slice(lastColon + 1); + firstColon = corrected.indexOf(":"); + lastColon = corrected.lastIndexOf(":"); + } + if (firstColon === -1 && giturl.indexOf("//") === -1) { + corrected = `git+ssh://${corrected}`; + } + return corrected; + }; + var parseGitUrl = (giturl) => { + let result2; + try { + result2 = new url.URL(giturl); + } catch (err) { + } + if (result2) { + return result2; + } + const correctedUrl = correctUrl(giturl); + try { + result2 = new url.URL(correctedUrl); + } catch (err) { + } + return result2; + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+npm-package-arg@1.0.0/node_modules/@pnpm/npm-package-arg/npa.js +var require_npa = __commonJS({ + "../node_modules/.pnpm/@pnpm+npm-package-arg@1.0.0/node_modules/@pnpm/npm-package-arg/npa.js"(exports2, module2) { + "use strict"; + module2.exports = npa; + module2.exports.resolve = resolve; + module2.exports.Result = Result; + var url; + var HostedGit; + var semver; + var path2; + var validatePackageName; + var os; + var isWindows = process.platform === "win32" || global.FAKE_WINDOWS; + var hasSlashes = isWindows ? /\\|[/]/ : /[/]/; + var isURL = /^(?:git[+])?[a-z]+:/i; + var isFilename = /[.](?:tgz|tar.gz|tar)$/i; + function npa(arg, where) { + let name; + let spec; + if (typeof arg === "object") { + if (arg instanceof Result && (!where || where === arg.where)) { + return arg; + } else if (arg.name && arg.rawSpec) { + return npa.resolve(arg.name, arg.rawSpec, where || arg.where); + } else { + return npa(arg.raw, where || arg.where); + } + } + const nameEndsAt = arg[0] === "@" ? arg.slice(1).indexOf("@") + 1 : arg.indexOf("@"); + const namePart = nameEndsAt > 0 ? arg.slice(0, nameEndsAt) : arg; + if (isURL.test(arg)) { + spec = arg; + } else if (namePart[0] !== "@" && (hasSlashes.test(namePart) || isFilename.test(namePart))) { + spec = arg; + } else if (nameEndsAt > 0) { + name = namePart; + spec = arg.slice(nameEndsAt + 1); + } else { + if (!validatePackageName) + validatePackageName = require_lib30(); + const valid = validatePackageName(arg); + if (valid.validForOldPackages) { + name = arg; + } else { + spec = arg; + } + } + return resolve(name, spec, where, arg); + } + var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; + function resolve(name, spec, where, arg) { + const res = new Result({ + raw: arg, + name, + rawSpec: spec, + fromArgument: arg != null + }); + if (name) + res.setName(name); + if (spec && (isFilespec.test(spec) || /^file:/i.test(spec))) { + return fromFile(res, where); + } + if (spec && spec.startsWith("npm:")) { + return Object.assign(npa(spec.substr(4), where), { + alias: name, + raw: res.raw, + rawSpec: res.rawSpec + }); + } + if (!HostedGit) + HostedGit = require_hosted_git_info(); + const hosted = HostedGit.fromUrl(spec, { noGitPlus: true, noCommittish: true }); + if (hosted) { + return fromHostedGit(res, hosted); + } else if (spec && isURL.test(spec)) { + return fromURL(res); + } else if (spec && (hasSlashes.test(spec) || isFilename.test(spec))) { + return fromFile(res, where); + } else { + return fromRegistry(res); + } + } + function invalidPackageName(name, valid) { + const err = new Error(`Invalid package name "${name}": ${valid.errors.join("; ")}`); + err.code = "EINVALIDPACKAGENAME"; + return err; + } + function invalidTagName(name) { + const err = new Error(`Invalid tag name "${name}": Tags may not have any characters that encodeURIComponent encodes.`); + err.code = "EINVALIDTAGNAME"; + return err; + } + function Result(opts) { + this.type = opts.type; + this.registry = opts.registry; + this.where = opts.where; + if (opts.raw == null) { + this.raw = opts.name ? opts.name + "@" + opts.rawSpec : opts.rawSpec; + } else { + this.raw = opts.raw; + } + this.name = void 0; + this.escapedName = void 0; + this.scope = void 0; + this.rawSpec = opts.rawSpec == null ? "" : opts.rawSpec; + this.saveSpec = opts.saveSpec; + this.fetchSpec = opts.fetchSpec; + if (opts.name) + this.setName(opts.name); + this.gitRange = opts.gitRange; + this.gitCommittish = opts.gitCommittish; + this.hosted = opts.hosted; + } + Result.prototype = {}; + Result.prototype.setName = function(name) { + if (!validatePackageName) + validatePackageName = require_lib30(); + const valid = validatePackageName(name); + if (!valid.validForOldPackages) { + throw invalidPackageName(name, valid); + } + this.name = name; + this.scope = name[0] === "@" ? name.slice(0, name.indexOf("/")) : void 0; + this.escapedName = name.replace("/", "%2f"); + return this; + }; + Result.prototype.toString = function() { + const full = []; + if (this.name != null && this.name !== "") + full.push(this.name); + const spec = this.saveSpec || this.fetchSpec || this.rawSpec; + if (spec != null && spec !== "") + full.push(spec); + return full.length ? full.join("@") : this.raw; + }; + Result.prototype.toJSON = function() { + const result2 = Object.assign({}, this); + delete result2.hosted; + return result2; + }; + function setGitCommittish(res, committish) { + if (committish != null && committish.length >= 7 && committish.slice(0, 7) === "semver:") { + res.gitRange = decodeURIComponent(committish.slice(7)); + res.gitCommittish = null; + } else { + res.gitCommittish = committish === "" ? null : committish; + } + return res; + } + var isAbsolutePath = /^[/]|^[A-Za-z]:/; + function resolvePath(where, spec) { + if (isAbsolutePath.test(spec)) + return spec; + if (!path2) + path2 = require("path"); + return path2.resolve(where, spec); + } + function isAbsolute(dir) { + if (dir[0] === "/") + return true; + if (/^[A-Za-z]:/.test(dir)) + return true; + return false; + } + function fromFile(res, where) { + if (!where) + where = process.cwd(); + res.type = isFilename.test(res.rawSpec) ? "file" : "directory"; + res.where = where; + const spec = res.rawSpec.replace(/\\/g, "/").replace(/^file:[/]*([A-Za-z]:)/, "$1").replace(/^file:(?:[/]*([~./]))?/, "$1"); + if (/^~[/]/.test(spec)) { + if (!os) + os = require("os"); + res.fetchSpec = resolvePath(os.homedir(), spec.slice(2)); + res.saveSpec = "file:" + spec; + } else { + res.fetchSpec = resolvePath(where, spec); + if (isAbsolute(spec)) { + res.saveSpec = "file:" + spec; + } else { + if (!path2) + path2 = require("path"); + res.saveSpec = "file:" + path2.relative(where, res.fetchSpec); + } + } + return res; + } + function fromHostedGit(res, hosted) { + res.type = "git"; + res.hosted = hosted; + res.saveSpec = hosted.toString({ noGitPlus: false, noCommittish: false }); + res.fetchSpec = hosted.getDefaultRepresentation() === "shortcut" ? null : hosted.toString(); + return setGitCommittish(res, hosted.committish); + } + function unsupportedURLType(protocol, spec) { + const err = new Error(`Unsupported URL Type "${protocol}": ${spec}`); + err.code = "EUNSUPPORTEDPROTOCOL"; + return err; + } + function matchGitScp(spec) { + const matched = spec.match(/^git\+ssh:\/\/([^:#]+:[^#]+(?:\.git)?)(?:#(.*))?$/i); + return matched && !matched[1].match(/:[0-9]+\/?.*$/i) && { + fetchSpec: matched[1], + gitCommittish: matched[2] == null ? null : matched[2] + }; + } + function fromURL(res) { + if (!url) + url = require("url"); + const urlparse = url.parse(res.rawSpec); + res.saveSpec = res.rawSpec; + switch (urlparse.protocol) { + case "git:": + case "git+http:": + case "git+https:": + case "git+rsync:": + case "git+ftp:": + case "git+file:": + case "git+ssh:": { + res.type = "git"; + const match = urlparse.protocol === "git+ssh:" && matchGitScp(res.rawSpec); + if (match) { + res.fetchSpec = match.fetchSpec; + res.gitCommittish = match.gitCommittish; + } else { + setGitCommittish(res, urlparse.hash != null ? urlparse.hash.slice(1) : ""); + urlparse.protocol = urlparse.protocol.replace(/^git[+]/, ""); + delete urlparse.hash; + res.fetchSpec = url.format(urlparse); + } + break; + } + case "http:": + case "https:": + res.type = "remote"; + res.fetchSpec = res.saveSpec; + break; + default: + throw unsupportedURLType(urlparse.protocol, res.rawSpec); + } + return res; + } + function fromRegistry(res) { + res.registry = true; + const spec = res.rawSpec === "" ? "latest" : res.rawSpec; + res.saveSpec = null; + res.fetchSpec = spec; + if (!semver) + semver = require_semver2(); + const version2 = semver.valid(spec, true); + const range = semver.validRange(spec, true); + if (version2) { + res.type = "version"; + } else if (range) { + res.type = "range"; + } else { + if (encodeURIComponent(spec) !== spec) { + throw invalidTagName(spec); + } + res.type = "tag"; + } + return res; + } + } +}); + +// ../workspace/resolve-workspace-range/lib/index.js +var require_lib31 = __commonJS({ + "../workspace/resolve-workspace-range/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveWorkspaceRange = void 0; + var semver_12 = __importDefault4(require_semver2()); + function resolveWorkspaceRange(range, versions) { + if (range === "*" || range === "^" || range === "~") { + return semver_12.default.maxSatisfying(versions, "*", { + includePrerelease: true + }); + } + return semver_12.default.maxSatisfying(versions, range, { + loose: true + }); + } + exports2.resolveWorkspaceRange = resolveWorkspaceRange; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArray.js +var require_isArray = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArray.js"(exports2, module2) { + module2.exports = Array.isArray || function _isArray(val) { + return val != null && val.length >= 0 && Object.prototype.toString.call(val) === "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isTransformer.js +var require_isTransformer = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isTransformer.js"(exports2, module2) { + function _isTransformer(obj) { + return obj != null && typeof obj["@@transducer/step"] === "function"; + } + module2.exports = _isTransformer; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dispatchable.js +var require_dispatchable = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dispatchable.js"(exports2, module2) { + var _isArray = require_isArray(); + var _isTransformer = require_isTransformer(); + function _dispatchable(methodNames, transducerCreator, fn2) { + return function() { + if (arguments.length === 0) { + return fn2(); + } + var obj = arguments[arguments.length - 1]; + if (!_isArray(obj)) { + var idx = 0; + while (idx < methodNames.length) { + if (typeof obj[methodNames[idx]] === "function") { + return obj[methodNames[idx]].apply(obj, Array.prototype.slice.call(arguments, 0, -1)); + } + idx += 1; + } + if (_isTransformer(obj)) { + var transducer = transducerCreator.apply(null, Array.prototype.slice.call(arguments, 0, -1)); + return transducer(obj); + } + } + return fn2.apply(this, arguments); + }; + } + module2.exports = _dispatchable; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_map.js +var require_map3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_map.js"(exports2, module2) { + function _map(fn2, functor) { + var idx = 0; + var len = functor.length; + var result2 = Array(len); + while (idx < len) { + result2[idx] = fn2(functor[idx]); + idx += 1; + } + return result2; + } + module2.exports = _map; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isString.js +var require_isString = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isString.js"(exports2, module2) { + function _isString(x) { + return Object.prototype.toString.call(x) === "[object String]"; + } + module2.exports = _isString; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArrayLike.js +var require_isArrayLike2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isArrayLike.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isArray = require_isArray(); + var _isString = require_isString(); + var _isArrayLike = /* @__PURE__ */ _curry1(function isArrayLike(x) { + if (_isArray(x)) { + return true; + } + if (!x) { + return false; + } + if (typeof x !== "object") { + return false; + } + if (_isString(x)) { + return false; + } + if (x.length === 0) { + return true; + } + if (x.length > 0) { + return x.hasOwnProperty(0) && x.hasOwnProperty(x.length - 1); + } + return false; + }); + module2.exports = _isArrayLike; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xwrap.js +var require_xwrap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xwrap.js"(exports2, module2) { + var XWrap = /* @__PURE__ */ function() { + function XWrap2(fn2) { + this.f = fn2; + } + XWrap2.prototype["@@transducer/init"] = function() { + throw new Error("init not implemented on XWrap"); + }; + XWrap2.prototype["@@transducer/result"] = function(acc) { + return acc; + }; + XWrap2.prototype["@@transducer/step"] = function(acc, x) { + return this.f(acc, x); + }; + return XWrap2; + }(); + function _xwrap(fn2) { + return new XWrap(fn2); + } + module2.exports = _xwrap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_arity.js +var require_arity = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_arity.js"(exports2, module2) { + function _arity(n, fn2) { + switch (n) { + case 0: + return function() { + return fn2.apply(this, arguments); + }; + case 1: + return function(a0) { + return fn2.apply(this, arguments); + }; + case 2: + return function(a0, a1) { + return fn2.apply(this, arguments); + }; + case 3: + return function(a0, a1, a2) { + return fn2.apply(this, arguments); + }; + case 4: + return function(a0, a1, a2, a3) { + return fn2.apply(this, arguments); + }; + case 5: + return function(a0, a1, a2, a3, a4) { + return fn2.apply(this, arguments); + }; + case 6: + return function(a0, a1, a2, a3, a4, a5) { + return fn2.apply(this, arguments); + }; + case 7: + return function(a0, a1, a2, a3, a4, a5, a6) { + return fn2.apply(this, arguments); + }; + case 8: + return function(a0, a1, a2, a3, a4, a5, a6, a7) { + return fn2.apply(this, arguments); + }; + case 9: + return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) { + return fn2.apply(this, arguments); + }; + case 10: + return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + return fn2.apply(this, arguments); + }; + default: + throw new Error("First argument to _arity must be a non-negative integer no greater than ten"); + } + } + module2.exports = _arity; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/bind.js +var require_bind = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/bind.js"(exports2, module2) { + var _arity = require_arity(); + var _curry2 = require_curry2(); + var bind = /* @__PURE__ */ _curry2(function bind2(fn2, thisObj) { + return _arity(fn2.length, function() { + return fn2.apply(thisObj, arguments); + }); + }); + module2.exports = bind; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_reduce.js +var require_reduce2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_reduce.js"(exports2, module2) { + var _isArrayLike = require_isArrayLike2(); + var _xwrap = require_xwrap(); + var bind = require_bind(); + function _arrayReduce(xf, acc, list) { + var idx = 0; + var len = list.length; + while (idx < len) { + acc = xf["@@transducer/step"](acc, list[idx]); + if (acc && acc["@@transducer/reduced"]) { + acc = acc["@@transducer/value"]; + break; + } + idx += 1; + } + return xf["@@transducer/result"](acc); + } + function _iterableReduce(xf, acc, iter) { + var step = iter.next(); + while (!step.done) { + acc = xf["@@transducer/step"](acc, step.value); + if (acc && acc["@@transducer/reduced"]) { + acc = acc["@@transducer/value"]; + break; + } + step = iter.next(); + } + return xf["@@transducer/result"](acc); + } + function _methodReduce(xf, acc, obj, methodName) { + return xf["@@transducer/result"](obj[methodName](bind(xf["@@transducer/step"], xf), acc)); + } + var symIterator = typeof Symbol !== "undefined" ? Symbol.iterator : "@@iterator"; + function _reduce(fn2, acc, list) { + if (typeof fn2 === "function") { + fn2 = _xwrap(fn2); + } + if (_isArrayLike(list)) { + return _arrayReduce(fn2, acc, list); + } + if (typeof list["fantasy-land/reduce"] === "function") { + return _methodReduce(fn2, acc, list, "fantasy-land/reduce"); + } + if (list[symIterator] != null) { + return _iterableReduce(fn2, acc, list[symIterator]()); + } + if (typeof list.next === "function") { + return _iterableReduce(fn2, acc, list); + } + if (typeof list.reduce === "function") { + return _methodReduce(fn2, acc, list, "reduce"); + } + throw new TypeError("reduce: list must be array or iterable"); + } + module2.exports = _reduce; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfBase.js +var require_xfBase = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfBase.js"(exports2, module2) { + module2.exports = { + init: function() { + return this.xf["@@transducer/init"](); + }, + result: function(result2) { + return this.xf["@@transducer/result"](result2); + } + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xmap.js +var require_xmap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xmap.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XMap = /* @__PURE__ */ function() { + function XMap2(f, xf) { + this.xf = xf; + this.f = f; + } + XMap2.prototype["@@transducer/init"] = _xfBase.init; + XMap2.prototype["@@transducer/result"] = _xfBase.result; + XMap2.prototype["@@transducer/step"] = function(result2, input) { + return this.xf["@@transducer/step"](result2, this.f(input)); + }; + return XMap2; + }(); + var _xmap = /* @__PURE__ */ _curry2(function _xmap2(f, xf) { + return new XMap(f, xf); + }); + module2.exports = _xmap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curryN.js +var require_curryN = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curryN.js"(exports2, module2) { + var _arity = require_arity(); + var _isPlaceholder = require_isPlaceholder(); + function _curryN(length, received, fn2) { + return function() { + var combined = []; + var argsIdx = 0; + var left = length; + var combinedIdx = 0; + while (combinedIdx < received.length || argsIdx < arguments.length) { + var result2; + if (combinedIdx < received.length && (!_isPlaceholder(received[combinedIdx]) || argsIdx >= arguments.length)) { + result2 = received[combinedIdx]; + } else { + result2 = arguments[argsIdx]; + argsIdx += 1; + } + combined[combinedIdx] = result2; + if (!_isPlaceholder(result2)) { + left -= 1; + } + combinedIdx += 1; + } + return left <= 0 ? fn2.apply(this, combined) : _arity(left, _curryN(length, combined, fn2)); + }; + } + module2.exports = _curryN; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/curryN.js +var require_curryN2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/curryN.js"(exports2, module2) { + var _arity = require_arity(); + var _curry1 = require_curry1(); + var _curry2 = require_curry2(); + var _curryN = require_curryN(); + var curryN = /* @__PURE__ */ _curry2(function curryN2(length, fn2) { + if (length === 1) { + return _curry1(fn2); + } + return _arity(length, _curryN(length, [], fn2)); + }); + module2.exports = curryN; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/map.js +var require_map4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/map.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _map = require_map3(); + var _reduce = require_reduce2(); + var _xmap = require_xmap(); + var curryN = require_curryN2(); + var keys = require_keys(); + var map = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["fantasy-land/map", "map"], _xmap, function map2(fn2, functor) { + switch (Object.prototype.toString.call(functor)) { + case "[object Function]": + return curryN(functor.length, function() { + return fn2.call(this, functor.apply(this, arguments)); + }); + case "[object Object]": + return _reduce(function(acc, key) { + acc[key] = fn2(functor[key]); + return acc; + }, {}, keys(functor)); + default: + return _map(fn2, functor); + } + }) + ); + module2.exports = map; + } +}); + +// ../workspace/pkgs-graph/lib/index.js +var require_lib32 = __commonJS({ + "../workspace/pkgs-graph/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPkgGraph = void 0; + var path_1 = __importDefault4(require("path")); + var npm_package_arg_1 = __importDefault4(require_npa()); + var resolve_workspace_range_1 = require_lib31(); + var map_1 = __importDefault4(require_map4()); + function createPkgGraph(pkgs, opts) { + const pkgMap = createPkgMap(pkgs); + const pkgMapValues = Object.values(pkgMap); + let pkgMapByManifestName; + let pkgMapByDir; + const unmatched = []; + const graph = (0, map_1.default)((pkg) => ({ + dependencies: createNode(pkg), + package: pkg + }), pkgMap); + return { graph, unmatched }; + function createNode(pkg) { + const dependencies = { + ...!opts?.ignoreDevDeps && pkg.manifest.devDependencies, + ...pkg.manifest.optionalDependencies, + ...pkg.manifest.dependencies + }; + return Object.entries(dependencies).map(([depName, rawSpec]) => { + let spec; + const isWorkspaceSpec = rawSpec.startsWith("workspace:"); + try { + if (isWorkspaceSpec) { + rawSpec = rawSpec.slice(10); + if (rawSpec === "^" || rawSpec === "~") { + rawSpec = "*"; + } + } + spec = npm_package_arg_1.default.resolve(depName, rawSpec, pkg.dir); + } catch (err) { + return ""; + } + if (spec.type === "directory") { + pkgMapByDir ?? (pkgMapByDir = getPkgMapByDir(pkgMapValues)); + const resolvedPath = path_1.default.resolve(pkg.dir, spec.fetchSpec); + const found = pkgMapByDir[resolvedPath]; + if (found) { + return found.dir; + } + const matchedPkg2 = pkgMapValues.find((pkg2) => path_1.default.relative(pkg2.dir, spec.fetchSpec) === ""); + if (matchedPkg2 == null) { + return ""; + } + pkgMapByDir[resolvedPath] = matchedPkg2; + return matchedPkg2.dir; + } + if (spec.type !== "version" && spec.type !== "range") + return ""; + pkgMapByManifestName ?? (pkgMapByManifestName = getPkgMapByManifestName(pkgMapValues)); + const pkgs2 = pkgMapByManifestName[depName]; + if (!pkgs2 || pkgs2.length === 0) + return ""; + const versions = pkgs2.filter(({ manifest }) => manifest.version).map((pkg2) => pkg2.manifest.version); + const strictWorkspaceMatching = opts?.linkWorkspacePackages === false && !isWorkspaceSpec; + if (strictWorkspaceMatching) { + unmatched.push({ pkgName: depName, range: rawSpec }); + return ""; + } + if (isWorkspaceSpec && versions.length === 0) { + const matchedPkg2 = pkgs2.find((pkg2) => pkg2.manifest.name === depName); + return matchedPkg2.dir; + } + if (versions.includes(rawSpec)) { + const matchedPkg2 = pkgs2.find((pkg2) => pkg2.manifest.name === depName && pkg2.manifest.version === rawSpec); + return matchedPkg2.dir; + } + const matched = (0, resolve_workspace_range_1.resolveWorkspaceRange)(rawSpec, versions); + if (!matched) { + unmatched.push({ pkgName: depName, range: rawSpec }); + return ""; + } + const matchedPkg = pkgs2.find((pkg2) => pkg2.manifest.name === depName && pkg2.manifest.version === matched); + return matchedPkg.dir; + }).filter(Boolean); + } + } + exports2.createPkgGraph = createPkgGraph; + function createPkgMap(pkgs) { + const pkgMap = {}; + for (const pkg of pkgs) { + pkgMap[pkg.dir] = pkg; + } + return pkgMap; + } + function getPkgMapByManifestName(pkgMapValues) { + var _a; + const pkgMapByManifestName = {}; + for (const pkg of pkgMapValues) { + if (pkg.manifest.name) { + (pkgMapByManifestName[_a = pkg.manifest.name] ?? (pkgMapByManifestName[_a] = [])).push(pkg); + } + } + return pkgMapByManifestName; + } + function getPkgMapByDir(pkgMapValues) { + const pkgMapByDir = {}; + for (const pkg of pkgMapValues) { + pkgMapByDir[path_1.default.resolve(pkg.dir)] = pkg; + } + return pkgMapByDir; + } + } +}); + +// ../node_modules/.pnpm/is-subdir@1.2.0/node_modules/is-subdir/index.js +var require_is_subdir = __commonJS({ + "../node_modules/.pnpm/is-subdir@1.2.0/node_modules/is-subdir/index.js"(exports2, module2) { + "use strict"; + var betterPathResolve = require_better_path_resolve(); + var path2 = require("path"); + function isSubdir(parentDir, subdir) { + const rParent = `${betterPathResolve(parentDir)}${path2.sep}`; + const rDir = `${betterPathResolve(subdir)}${path2.sep}`; + return rDir.startsWith(rParent); + } + isSubdir.strict = function isSubdirStrict(parentDir, subdir) { + const rParent = `${betterPathResolve(parentDir)}${path2.sep}`; + const rDir = `${betterPathResolve(subdir)}${path2.sep}`; + return rDir !== rParent && rDir.startsWith(rParent); + }; + module2.exports = isSubdir; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_filter.js +var require_filter2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_filter.js"(exports2, module2) { + function _filter(fn2, list) { + var idx = 0; + var len = list.length; + var result2 = []; + while (idx < len) { + if (fn2(list[idx])) { + result2[result2.length] = list[idx]; + } + idx += 1; + } + return result2; + } + module2.exports = _filter; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isObject.js +var require_isObject = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isObject.js"(exports2, module2) { + function _isObject(x) { + return Object.prototype.toString.call(x) === "[object Object]"; + } + module2.exports = _isObject; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfilter.js +var require_xfilter = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfilter.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XFilter = /* @__PURE__ */ function() { + function XFilter2(f, xf) { + this.xf = xf; + this.f = f; + } + XFilter2.prototype["@@transducer/init"] = _xfBase.init; + XFilter2.prototype["@@transducer/result"] = _xfBase.result; + XFilter2.prototype["@@transducer/step"] = function(result2, input) { + return this.f(input) ? this.xf["@@transducer/step"](result2, input) : result2; + }; + return XFilter2; + }(); + var _xfilter = /* @__PURE__ */ _curry2(function _xfilter2(f, xf) { + return new XFilter(f, xf); + }); + module2.exports = _xfilter; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/filter.js +var require_filter3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/filter.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _filter = require_filter2(); + var _isObject = require_isObject(); + var _reduce = require_reduce2(); + var _xfilter = require_xfilter(); + var keys = require_keys(); + var filter = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["fantasy-land/filter", "filter"], _xfilter, function(pred, filterable) { + return _isObject(filterable) ? _reduce(function(acc, key) { + if (pred(filterable[key])) { + acc[key] = filterable[key]; + } + return acc; + }, {}, keys(filterable)) : ( + // else + _filter(pred, filterable) + ); + }) + ); + module2.exports = filter; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/max.js +var require_max2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/max.js"(exports2, module2) { + var _curry2 = require_curry2(); + var max = /* @__PURE__ */ _curry2(function max2(a, b) { + return b > a ? b : a; + }); + module2.exports = max; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isInteger.js +var require_isInteger = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isInteger.js"(exports2, module2) { + module2.exports = Number.isInteger || function _isInteger(n) { + return n << 0 === n; + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nth.js +var require_nth = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nth.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isString = require_isString(); + var nth = /* @__PURE__ */ _curry2(function nth2(offset, list) { + var idx = offset < 0 ? list.length + offset : offset; + return _isString(list) ? list.charAt(idx) : list[idx]; + }); + module2.exports = nth; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/prop.js +var require_prop = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/prop.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isInteger = require_isInteger(); + var nth = require_nth(); + var prop = /* @__PURE__ */ _curry2(function prop2(p, obj) { + if (obj == null) { + return; + } + return _isInteger(p) ? nth(p, obj) : obj[p]; + }); + module2.exports = prop; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pluck.js +var require_pluck2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pluck.js"(exports2, module2) { + var _curry2 = require_curry2(); + var map = require_map4(); + var prop = require_prop(); + var pluck = /* @__PURE__ */ _curry2(function pluck2(p, list) { + return map(prop(p), list); + }); + module2.exports = pluck; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry3.js +var require_curry3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_curry3.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _curry2 = require_curry2(); + var _isPlaceholder = require_isPlaceholder(); + function _curry3(fn2) { + return function f3(a, b, c) { + switch (arguments.length) { + case 0: + return f3; + case 1: + return _isPlaceholder(a) ? f3 : _curry2(function(_b, _c) { + return fn2(a, _b, _c); + }); + case 2: + return _isPlaceholder(a) && _isPlaceholder(b) ? f3 : _isPlaceholder(a) ? _curry2(function(_a, _c) { + return fn2(_a, b, _c); + }) : _isPlaceholder(b) ? _curry2(function(_b, _c) { + return fn2(a, _b, _c); + }) : _curry1(function(_c) { + return fn2(a, b, _c); + }); + default: + return _isPlaceholder(a) && _isPlaceholder(b) && _isPlaceholder(c) ? f3 : _isPlaceholder(a) && _isPlaceholder(b) ? _curry2(function(_a, _b) { + return fn2(_a, _b, c); + }) : _isPlaceholder(a) && _isPlaceholder(c) ? _curry2(function(_a, _c) { + return fn2(_a, b, _c); + }) : _isPlaceholder(b) && _isPlaceholder(c) ? _curry2(function(_b, _c) { + return fn2(a, _b, _c); + }) : _isPlaceholder(a) ? _curry1(function(_a) { + return fn2(_a, b, c); + }) : _isPlaceholder(b) ? _curry1(function(_b) { + return fn2(a, _b, c); + }) : _isPlaceholder(c) ? _curry1(function(_c) { + return fn2(a, b, _c); + }) : fn2(a, b, c); + } + }; + } + module2.exports = _curry3; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduce.js +var require_reduce3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduce.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _reduce = require_reduce2(); + var reduce = /* @__PURE__ */ _curry3(_reduce); + module2.exports = reduce; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/converge.js +var require_converge = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/converge.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _map = require_map3(); + var curryN = require_curryN2(); + var max = require_max2(); + var pluck = require_pluck2(); + var reduce = require_reduce3(); + var converge = /* @__PURE__ */ _curry2(function converge2(after, fns) { + return curryN(reduce(max, 0, pluck("length", fns)), function() { + var args2 = arguments; + var context = this; + return after.apply(context, _map(function(fn2) { + return fn2.apply(context, args2); + }, fns)); + }); + }); + module2.exports = converge; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/juxt.js +var require_juxt = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/juxt.js"(exports2, module2) { + var _curry1 = require_curry1(); + var converge = require_converge(); + var juxt = /* @__PURE__ */ _curry1(function juxt2(fns) { + return converge(function() { + return Array.prototype.slice.call(arguments, 0); + }, fns); + }); + module2.exports = juxt; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_complement.js +var require_complement = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_complement.js"(exports2, module2) { + function _complement(f) { + return function() { + return !f.apply(this, arguments); + }; + } + module2.exports = _complement; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reject.js +var require_reject = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reject.js"(exports2, module2) { + var _complement = require_complement(); + var _curry2 = require_curry2(); + var filter = require_filter3(); + var reject = /* @__PURE__ */ _curry2(function reject2(pred, filterable) { + return filter(_complement(pred), filterable); + }); + module2.exports = reject; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partition.js +var require_partition4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partition.js"(exports2, module2) { + var filter = require_filter3(); + var juxt = require_juxt(); + var reject = require_reject(); + var partition = /* @__PURE__ */ juxt([filter, reject]); + module2.exports = partition; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pick.js +var require_pick = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pick.js"(exports2, module2) { + var _curry2 = require_curry2(); + var pick = /* @__PURE__ */ _curry2(function pick2(names, obj) { + var result2 = {}; + var idx = 0; + while (idx < names.length) { + if (names[idx] in obj) { + result2[names[idx]] = obj[names[idx]]; + } + idx += 1; + } + return result2; + }); + module2.exports = pick; + } +}); + +// ../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js +var require_yocto_queue = __commonJS({ + "../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js"(exports2, module2) { + var Node = class { + /// value; + /// next; + constructor(value) { + this.value = value; + this.next = void 0; + } + }; + var Queue = class { + // TODO: Use private class fields when targeting Node.js 12. + // #_head; + // #_tail; + // #_size; + constructor() { + this.clear(); + } + enqueue(value) { + const node = new Node(value); + if (this._head) { + this._tail.next = node; + this._tail = node; + } else { + this._head = node; + this._tail = node; + } + this._size++; + } + dequeue() { + const current = this._head; + if (!current) { + return; + } + this._head = this._head.next; + this._size--; + return current.value; + } + clear() { + this._head = void 0; + this._tail = void 0; + this._size = 0; + } + get size() { + return this._size; + } + *[Symbol.iterator]() { + let current = this._head; + while (current) { + yield current.value; + current = current.next; + } + } + }; + module2.exports = Queue; + } +}); + +// ../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js +var require_p_limit = __commonJS({ + "../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js"(exports2, module2) { + "use strict"; + var Queue = require_yocto_queue(); + var pLimit = (concurrency) => { + if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { + throw new TypeError("Expected `concurrency` to be a number from 1 and up"); + } + const queue = new Queue(); + let activeCount = 0; + const next = () => { + activeCount--; + if (queue.size > 0) { + queue.dequeue()(); + } + }; + const run = async (fn2, resolve, ...args2) => { + activeCount++; + const result2 = (async () => fn2(...args2))(); + resolve(result2); + try { + await result2; + } catch { + } + next(); + }; + const enqueue = (fn2, resolve, ...args2) => { + queue.enqueue(run.bind(null, fn2, resolve, ...args2)); + (async () => { + await Promise.resolve(); + if (activeCount < concurrency && queue.size > 0) { + queue.dequeue()(); + } + })(); + }; + const generator = (fn2, ...args2) => new Promise((resolve) => { + enqueue(fn2, resolve, ...args2); + }); + Object.defineProperties(generator, { + activeCount: { + get: () => activeCount + }, + pendingCount: { + get: () => queue.size + }, + clearQueue: { + value: () => { + queue.clear(); + } + } + }); + return generator; + }; + module2.exports = pLimit; + } +}); + +// ../node_modules/.pnpm/p-locate@5.0.0/node_modules/p-locate/index.js +var require_p_locate = __commonJS({ + "../node_modules/.pnpm/p-locate@5.0.0/node_modules/p-locate/index.js"(exports2, module2) { + "use strict"; + var pLimit = require_p_limit(); + var EndError = class extends Error { + constructor(value) { + super(); + this.value = value; + } + }; + var testElement = async (element, tester) => tester(await element); + var finder = async (element) => { + const values = await Promise.all(element); + if (values[1] === true) { + throw new EndError(values[0]); + } + return false; + }; + var pLocate = async (iterable, tester, options) => { + options = { + concurrency: Infinity, + preserveOrder: true, + ...options + }; + const limit = pLimit(options.concurrency); + const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]); + const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); + try { + await Promise.all(items.map((element) => checkLimit(finder, element))); + } catch (error) { + if (error instanceof EndError) { + return error.value; + } + throw error; + } + }; + module2.exports = pLocate; + } +}); + +// ../node_modules/.pnpm/locate-path@6.0.0/node_modules/locate-path/index.js +var require_locate_path = __commonJS({ + "../node_modules/.pnpm/locate-path@6.0.0/node_modules/locate-path/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var fs2 = require("fs"); + var { promisify } = require("util"); + var pLocate = require_p_locate(); + var fsStat = promisify(fs2.stat); + var fsLStat = promisify(fs2.lstat); + var typeMappings = { + directory: "isDirectory", + file: "isFile" + }; + function checkType({ type }) { + if (type in typeMappings) { + return; + } + throw new Error(`Invalid type specified: ${type}`); + } + var matchType = (type, stat) => type === void 0 || stat[typeMappings[type]](); + module2.exports = async (paths, options) => { + options = { + cwd: process.cwd(), + type: "file", + allowSymlinks: true, + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fsStat : fsLStat; + return pLocate(paths, async (path_) => { + try { + const stat = await statFn(path2.resolve(options.cwd, path_)); + return matchType(options.type, stat); + } catch { + return false; + } + }, options); + }; + module2.exports.sync = (paths, options) => { + options = { + cwd: process.cwd(), + allowSymlinks: true, + type: "file", + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fs2.statSync : fs2.lstatSync; + for (const path_ of paths) { + try { + const stat = statFn(path2.resolve(options.cwd, path_)); + if (matchType(options.type, stat)) { + return path_; + } + } catch { + } + } + }; + } +}); + +// ../node_modules/.pnpm/path-exists@4.0.0/node_modules/path-exists/index.js +var require_path_exists = __commonJS({ + "../node_modules/.pnpm/path-exists@4.0.0/node_modules/path-exists/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var { promisify } = require("util"); + var pAccess = promisify(fs2.access); + module2.exports = async (path2) => { + try { + await pAccess(path2); + return true; + } catch (_) { + return false; + } + }; + module2.exports.sync = (path2) => { + try { + fs2.accessSync(path2); + return true; + } catch (_) { + return false; + } + }; + } +}); + +// ../node_modules/.pnpm/find-up@5.0.0/node_modules/find-up/index.js +var require_find_up = __commonJS({ + "../node_modules/.pnpm/find-up@5.0.0/node_modules/find-up/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var locatePath = require_locate_path(); + var pathExists = require_path_exists(); + var stop = Symbol("findUp.stop"); + module2.exports = async (name, options = {}) => { + let directory = path2.resolve(options.cwd || ""); + const { root } = path2.parse(directory); + const paths = [].concat(name); + const runMatcher = async (locateOptions) => { + if (typeof name !== "function") { + return locatePath(paths, locateOptions); + } + const foundPath = await name(locateOptions.cwd); + if (typeof foundPath === "string") { + return locatePath([foundPath], locateOptions); + } + return foundPath; + }; + while (true) { + const foundPath = await runMatcher({ ...options, cwd: directory }); + if (foundPath === stop) { + return; + } + if (foundPath) { + return path2.resolve(directory, foundPath); + } + if (directory === root) { + return; + } + directory = path2.dirname(directory); + } + }; + module2.exports.sync = (name, options = {}) => { + let directory = path2.resolve(options.cwd || ""); + const { root } = path2.parse(directory); + const paths = [].concat(name); + const runMatcher = (locateOptions) => { + if (typeof name !== "function") { + return locatePath.sync(paths, locateOptions); + } + const foundPath = name(locateOptions.cwd); + if (typeof foundPath === "string") { + return locatePath.sync([foundPath], locateOptions); + } + return foundPath; + }; + while (true) { + const foundPath = runMatcher({ ...options, cwd: directory }); + if (foundPath === stop) { + return; + } + if (foundPath) { + return path2.resolve(directory, foundPath); + } + if (directory === root) { + return; + } + directory = path2.dirname(directory); + } + }; + module2.exports.exists = pathExists; + module2.exports.sync.exists = pathExists.sync; + module2.exports.stop = stop; + } +}); + +// ../workspace/filter-workspace-packages/lib/getChangedPackages.js +var require_getChangedPackages = __commonJS({ + "../workspace/filter-workspace-packages/lib/getChangedPackages.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getChangedPackages = void 0; + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var micromatch = __importStar5(require_micromatch()); + var execa_1 = __importDefault4(require_lib17()); + var find_up_1 = __importDefault4(require_find_up()); + async function getChangedPackages(packageDirs, commit, opts) { + const repoRoot = path_1.default.resolve(await (0, find_up_1.default)(".git", { cwd: opts.workspaceDir, type: "directory" }) ?? opts.workspaceDir, ".."); + const changedDirs = (await getChangedDirsSinceCommit(commit, opts.workspaceDir, opts.testPattern ?? [], opts.changedFilesIgnorePattern ?? [])).map((changedDir) => ({ ...changedDir, dir: path_1.default.join(repoRoot, changedDir.dir) })); + const pkgChangeTypes = /* @__PURE__ */ new Map(); + for (const pkgDir of packageDirs) { + pkgChangeTypes.set(pkgDir, void 0); + } + for (const changedDir of changedDirs) { + let currentDir = changedDir.dir; + while (!pkgChangeTypes.has(currentDir)) { + const nextDir = path_1.default.dirname(currentDir); + if (nextDir === currentDir) + break; + currentDir = nextDir; + } + if (pkgChangeTypes.get(currentDir) === "source") + continue; + pkgChangeTypes.set(currentDir, changedDir.changeType); + } + const changedPkgs = []; + const ignoreDependentForPkgs = []; + for (const [changedDir, changeType] of pkgChangeTypes.entries()) { + switch (changeType) { + case "source": + changedPkgs.push(changedDir); + break; + case "test": + ignoreDependentForPkgs.push(changedDir); + break; + } + } + return [changedPkgs, ignoreDependentForPkgs]; + } + exports2.getChangedPackages = getChangedPackages; + async function getChangedDirsSinceCommit(commit, workingDir, testPattern, changedFilesIgnorePattern) { + let diff; + try { + diff = (await (0, execa_1.default)("git", [ + "diff", + "--name-only", + commit, + "--", + workingDir + ], { cwd: workingDir })).stdout; + } catch (err) { + throw new error_1.PnpmError("FILTER_CHANGED", `Filtering by changed packages failed. ${err.stderr}`); + } + const changedDirs = /* @__PURE__ */ new Map(); + if (!diff) { + return []; + } + const allChangedFiles = diff.split("\n").map((line) => line.replace(/^"/, "").replace(/"$/, "")); + const patterns = changedFilesIgnorePattern.filter((pattern) => pattern.length); + const changedFiles = patterns.length > 0 ? micromatch.not(allChangedFiles, patterns, { + dot: true + }) : allChangedFiles; + for (const changedFile of changedFiles) { + const dir = path_1.default.dirname(changedFile); + if (changedDirs.get(dir) === "source") + continue; + const changeType = testPattern.some((pattern) => micromatch.isMatch(changedFile, pattern)) ? "test" : "source"; + changedDirs.set(dir, changeType); + } + return Array.from(changedDirs.entries()).map(([dir, changeType]) => ({ dir, changeType })); + } + } +}); + +// ../workspace/filter-workspace-packages/lib/parsePackageSelector.js +var require_parsePackageSelector = __commonJS({ + "../workspace/filter-workspace-packages/lib/parsePackageSelector.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parsePackageSelector = void 0; + var path_1 = __importDefault4(require("path")); + function parsePackageSelector(rawSelector, prefix) { + let exclude = false; + if (rawSelector[0] === "!") { + exclude = true; + rawSelector = rawSelector.substring(1); + } + let excludeSelf = false; + const includeDependencies = rawSelector.endsWith("..."); + if (includeDependencies) { + rawSelector = rawSelector.slice(0, -3); + if (rawSelector.endsWith("^")) { + excludeSelf = true; + rawSelector = rawSelector.slice(0, -1); + } + } + const includeDependents = rawSelector.startsWith("..."); + if (includeDependents) { + rawSelector = rawSelector.substring(3); + if (rawSelector.startsWith("^")) { + excludeSelf = true; + rawSelector = rawSelector.slice(1); + } + } + const matches = rawSelector.match(/^([^.][^{}[\]]*)?(\{[^}]+\})?(\[[^\]]+\])?$/); + if (matches === null) { + if (isSelectorByLocation(rawSelector)) { + return { + exclude, + excludeSelf: false, + parentDir: path_1.default.join(prefix, rawSelector) + }; + } + return { + excludeSelf: false, + namePattern: rawSelector + }; + } + return { + diff: matches[3]?.slice(1, -1), + exclude, + excludeSelf, + includeDependencies, + includeDependents, + namePattern: matches[1], + parentDir: matches[2] && path_1.default.join(prefix, matches[2].slice(1, -1)) + }; + } + exports2.parsePackageSelector = parsePackageSelector; + function isSelectorByLocation(rawSelector) { + if (rawSelector[0] !== ".") + return false; + if (rawSelector.length === 1 || rawSelector[1] === "/" || rawSelector[1] === "\\") + return true; + if (rawSelector[1] !== ".") + return false; + return rawSelector.length === 2 || rawSelector[2] === "/" || rawSelector[2] === "\\"; + } + } +}); + +// ../workspace/filter-workspace-packages/lib/index.js +var require_lib33 = __commonJS({ + "../workspace/filter-workspace-packages/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterWorkspacePackages = exports2.filterPkgsBySelectorObjects = exports2.filterPackages = exports2.filterPackagesFromDir = exports2.readProjects = exports2.parsePackageSelector = void 0; + var find_workspace_packages_1 = require_lib29(); + var matcher_1 = require_lib19(); + var workspace_pkgs_graph_1 = require_lib32(); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var difference_1 = __importDefault4(require_difference()); + var partition_1 = __importDefault4(require_partition4()); + var pick_1 = __importDefault4(require_pick()); + var micromatch = __importStar5(require_micromatch()); + var getChangedPackages_1 = require_getChangedPackages(); + var parsePackageSelector_1 = require_parsePackageSelector(); + Object.defineProperty(exports2, "parsePackageSelector", { enumerable: true, get: function() { + return parsePackageSelector_1.parsePackageSelector; + } }); + async function readProjects(workspaceDir, pkgSelectors, opts) { + const allProjects = await (0, find_workspace_packages_1.findWorkspacePackages)(workspaceDir, { engineStrict: opts?.engineStrict }); + const { allProjectsGraph, selectedProjectsGraph } = await filterPkgsBySelectorObjects(allProjects, pkgSelectors, { + linkWorkspacePackages: opts?.linkWorkspacePackages, + workspaceDir, + changedFilesIgnorePattern: opts?.changedFilesIgnorePattern + }); + return { allProjects, allProjectsGraph, selectedProjectsGraph }; + } + exports2.readProjects = readProjects; + async function filterPackagesFromDir(workspaceDir, filter, opts) { + const allProjects = await (0, find_workspace_packages_1.findWorkspacePackages)(workspaceDir, { engineStrict: opts?.engineStrict, patterns: opts.patterns }); + return { + allProjects, + ...await filterPackages(allProjects, filter, opts) + }; + } + exports2.filterPackagesFromDir = filterPackagesFromDir; + async function filterPackages(pkgs, filter, opts) { + const packageSelectors = filter.map(({ filter: f, followProdDepsOnly }) => ({ ...(0, parsePackageSelector_1.parsePackageSelector)(f, opts.prefix), followProdDepsOnly })); + return filterPkgsBySelectorObjects(pkgs, packageSelectors, opts); + } + exports2.filterPackages = filterPackages; + async function filterPkgsBySelectorObjects(pkgs, packageSelectors, opts) { + const [prodPackageSelectors, allPackageSelectors] = (0, partition_1.default)(({ followProdDepsOnly }) => !!followProdDepsOnly, packageSelectors); + if (allPackageSelectors.length > 0 || prodPackageSelectors.length > 0) { + let filteredGraph; + const { graph } = (0, workspace_pkgs_graph_1.createPkgGraph)(pkgs, { linkWorkspacePackages: opts.linkWorkspacePackages }); + if (allPackageSelectors.length > 0) { + filteredGraph = await filterWorkspacePackages(graph, allPackageSelectors, { + workspaceDir: opts.workspaceDir, + testPattern: opts.testPattern, + changedFilesIgnorePattern: opts.changedFilesIgnorePattern, + useGlobDirFiltering: opts.useGlobDirFiltering + }); + } + let prodFilteredGraph; + if (prodPackageSelectors.length > 0) { + const { graph: graph2 } = (0, workspace_pkgs_graph_1.createPkgGraph)(pkgs, { ignoreDevDeps: true, linkWorkspacePackages: opts.linkWorkspacePackages }); + prodFilteredGraph = await filterWorkspacePackages(graph2, prodPackageSelectors, { + workspaceDir: opts.workspaceDir, + testPattern: opts.testPattern, + changedFilesIgnorePattern: opts.changedFilesIgnorePattern, + useGlobDirFiltering: opts.useGlobDirFiltering + }); + } + return { + allProjectsGraph: graph, + selectedProjectsGraph: { + ...prodFilteredGraph?.selectedProjectsGraph, + ...filteredGraph?.selectedProjectsGraph + }, + unmatchedFilters: [ + ...prodFilteredGraph !== void 0 ? prodFilteredGraph.unmatchedFilters : [], + ...filteredGraph !== void 0 ? filteredGraph.unmatchedFilters : [] + ] + }; + } else { + const { graph } = (0, workspace_pkgs_graph_1.createPkgGraph)(pkgs, { linkWorkspacePackages: opts.linkWorkspacePackages }); + return { allProjectsGraph: graph, selectedProjectsGraph: graph, unmatchedFilters: [] }; + } + } + exports2.filterPkgsBySelectorObjects = filterPkgsBySelectorObjects; + async function filterWorkspacePackages(pkgGraph, packageSelectors, opts) { + const [excludeSelectors, includeSelectors] = (0, partition_1.default)((selector) => selector.exclude === true, packageSelectors); + const fg = _filterGraph.bind(null, pkgGraph, opts); + const include = includeSelectors.length === 0 ? { selected: Object.keys(pkgGraph), unmatchedFilters: [] } : await fg(includeSelectors); + const exclude = await fg(excludeSelectors); + return { + selectedProjectsGraph: (0, pick_1.default)((0, difference_1.default)(include.selected, exclude.selected), pkgGraph), + unmatchedFilters: [...include.unmatchedFilters, ...exclude.unmatchedFilters] + }; + } + exports2.filterWorkspacePackages = filterWorkspacePackages; + async function _filterGraph(pkgGraph, opts, packageSelectors) { + const cherryPickedPackages = []; + const walkedDependencies = /* @__PURE__ */ new Set(); + const walkedDependents = /* @__PURE__ */ new Set(); + const walkedDependentsDependencies = /* @__PURE__ */ new Set(); + const graph = pkgGraphToGraph(pkgGraph); + const unmatchedFilters = []; + let reversedGraph; + const matchPackagesByPath = opts.useGlobDirFiltering === true ? matchPackagesByGlob : matchPackagesByExactPath; + for (const selector of packageSelectors) { + let entryPackages = null; + if (selector.diff) { + let ignoreDependentForPkgs = []; + [entryPackages, ignoreDependentForPkgs] = await (0, getChangedPackages_1.getChangedPackages)(Object.keys(pkgGraph), selector.diff, { workspaceDir: selector.parentDir ?? opts.workspaceDir, testPattern: opts.testPattern, changedFilesIgnorePattern: opts.changedFilesIgnorePattern }); + selectEntries({ + ...selector, + includeDependents: false + }, ignoreDependentForPkgs); + } else if (selector.parentDir) { + entryPackages = matchPackagesByPath(pkgGraph, selector.parentDir); + } + if (selector.namePattern) { + if (entryPackages == null) { + entryPackages = matchPackages(pkgGraph, selector.namePattern); + } else { + entryPackages = matchPackages((0, pick_1.default)(entryPackages, pkgGraph), selector.namePattern); + } + } + if (entryPackages == null) { + throw new Error(`Unsupported package selector: ${JSON.stringify(selector)}`); + } + if (entryPackages.length === 0) { + if (selector.namePattern) { + unmatchedFilters.push(selector.namePattern); + } + if (selector.parentDir) { + unmatchedFilters.push(selector.parentDir); + } + } + selectEntries(selector, entryPackages); + } + const walked = /* @__PURE__ */ new Set([...walkedDependencies, ...walkedDependents, ...walkedDependentsDependencies]); + cherryPickedPackages.forEach((cherryPickedPackage) => walked.add(cherryPickedPackage)); + return { + selected: Array.from(walked), + unmatchedFilters + }; + function selectEntries(selector, entryPackages) { + if (selector.includeDependencies) { + pickSubgraph(graph, entryPackages, walkedDependencies, { includeRoot: !selector.excludeSelf }); + } + if (selector.includeDependents) { + if (reversedGraph == null) { + reversedGraph = reverseGraph(graph); + } + pickSubgraph(reversedGraph, entryPackages, walkedDependents, { includeRoot: !selector.excludeSelf }); + } + if (selector.includeDependencies && selector.includeDependents) { + pickSubgraph(graph, Array.from(walkedDependents), walkedDependentsDependencies, { includeRoot: false }); + } + if (!selector.includeDependencies && !selector.includeDependents) { + Array.prototype.push.apply(cherryPickedPackages, entryPackages); + } + } + } + function pkgGraphToGraph(pkgGraph) { + const graph = {}; + Object.keys(pkgGraph).forEach((nodeId) => { + graph[nodeId] = pkgGraph[nodeId].dependencies; + }); + return graph; + } + function reverseGraph(graph) { + const reversedGraph = {}; + Object.keys(graph).forEach((dependentNodeId) => { + graph[dependentNodeId].forEach((dependencyNodeId) => { + if (!reversedGraph[dependencyNodeId]) { + reversedGraph[dependencyNodeId] = [dependentNodeId]; + } else { + reversedGraph[dependencyNodeId].push(dependentNodeId); + } + }); + }); + return reversedGraph; + } + function matchPackages(graph, pattern) { + const match = (0, matcher_1.createMatcher)(pattern); + const matches = Object.keys(graph).filter((id) => graph[id].package.manifest.name && match(graph[id].package.manifest.name)); + if (matches.length === 0 && !pattern.startsWith("@") && !pattern.includes("/")) { + const scopedMatches = matchPackages(graph, `@*/${pattern}`); + return scopedMatches.length !== 1 ? [] : scopedMatches; + } + return matches; + } + function matchPackagesByExactPath(graph, pathStartsWith) { + return Object.keys(graph).filter((parentDir) => (0, is_subdir_1.default)(pathStartsWith, parentDir)); + } + function matchPackagesByGlob(graph, pathStartsWith) { + const format = (str) => str.replace(/\/$/, ""); + const formattedFilter = pathStartsWith.replace(/\\/g, "/").replace(/\/$/, ""); + return Object.keys(graph).filter((parentDir) => micromatch.isMatch(parentDir, formattedFilter, { format })); + } + function pickSubgraph(graph, nextNodeIds, walked, opts) { + for (const nextNodeId of nextNodeIds) { + if (!walked.has(nextNodeId)) { + if (opts.includeRoot) { + walked.add(nextNodeId); + } + if (graph[nextNodeId]) + pickSubgraph(graph, graph[nextNodeId], walked, { includeRoot: true }); + } + } + } + } +}); + +// ../node_modules/.pnpm/astral-regex@2.0.0/node_modules/astral-regex/index.js +var require_astral_regex = __commonJS({ + "../node_modules/.pnpm/astral-regex@2.0.0/node_modules/astral-regex/index.js"(exports2, module2) { + "use strict"; + var regex = "[\uD800-\uDBFF][\uDC00-\uDFFF]"; + var astralRegex = (options) => options && options.exact ? new RegExp(`^${regex}$`) : new RegExp(regex, "g"); + module2.exports = astralRegex; + } +}); + +// ../node_modules/.pnpm/slice-ansi@4.0.0/node_modules/slice-ansi/index.js +var require_slice_ansi = __commonJS({ + "../node_modules/.pnpm/slice-ansi@4.0.0/node_modules/slice-ansi/index.js"(exports2, module2) { + "use strict"; + var isFullwidthCodePoint = require_is_fullwidth_code_point(); + var astralRegex = require_astral_regex(); + var ansiStyles = require_ansi_styles2(); + var ESCAPES = [ + "\x1B", + "\x9B" + ]; + var wrapAnsi = (code) => `${ESCAPES[0]}[${code}m`; + var checkAnsi = (ansiCodes, isEscapes, endAnsiCode) => { + let output = []; + ansiCodes = [...ansiCodes]; + for (let ansiCode of ansiCodes) { + const ansiCodeOrigin = ansiCode; + if (ansiCode.includes(";")) { + ansiCode = ansiCode.split(";")[0][0] + "0"; + } + const item = ansiStyles.codes.get(Number.parseInt(ansiCode, 10)); + if (item) { + const indexEscape = ansiCodes.indexOf(item.toString()); + if (indexEscape === -1) { + output.push(wrapAnsi(isEscapes ? item : ansiCodeOrigin)); + } else { + ansiCodes.splice(indexEscape, 1); + } + } else if (isEscapes) { + output.push(wrapAnsi(0)); + break; + } else { + output.push(wrapAnsi(ansiCodeOrigin)); + } + } + if (isEscapes) { + output = output.filter((element, index) => output.indexOf(element) === index); + if (endAnsiCode !== void 0) { + const fistEscapeCode = wrapAnsi(ansiStyles.codes.get(Number.parseInt(endAnsiCode, 10))); + output = output.reduce((current, next) => next === fistEscapeCode ? [next, ...current] : [...current, next], []); + } + } + return output.join(""); + }; + module2.exports = (string, begin, end) => { + const characters = [...string]; + const ansiCodes = []; + let stringEnd = typeof end === "number" ? end : characters.length; + let isInsideEscape = false; + let ansiCode; + let visible = 0; + let output = ""; + for (const [index, character] of characters.entries()) { + let leftEscape = false; + if (ESCAPES.includes(character)) { + const code = /\d[^m]*/.exec(string.slice(index, index + 18)); + ansiCode = code && code.length > 0 ? code[0] : void 0; + if (visible < stringEnd) { + isInsideEscape = true; + if (ansiCode !== void 0) { + ansiCodes.push(ansiCode); + } + } + } else if (isInsideEscape && character === "m") { + isInsideEscape = false; + leftEscape = true; + } + if (!isInsideEscape && !leftEscape) { + visible++; + } + if (!astralRegex({ exact: true }).test(character) && isFullwidthCodePoint(character.codePointAt())) { + visible++; + if (typeof end !== "number") { + stringEnd++; + } + } + if (visible > begin && visible <= stringEnd) { + output += character; + } else if (visible === begin && !isInsideEscape && ansiCode !== void 0) { + output = checkAnsi(ansiCodes); + } else if (visible >= stringEnd) { + output += checkAnsi(ansiCodes, true, ansiCode); + break; + } + } + return output; + }; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/getBorderCharacters.js +var require_getBorderCharacters = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/getBorderCharacters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getBorderCharacters = void 0; + var getBorderCharacters = (name) => { + if (name === "honeywell") { + return { + topBody: "\u2550", + topJoin: "\u2564", + topLeft: "\u2554", + topRight: "\u2557", + bottomBody: "\u2550", + bottomJoin: "\u2567", + bottomLeft: "\u255A", + bottomRight: "\u255D", + bodyLeft: "\u2551", + bodyRight: "\u2551", + bodyJoin: "\u2502", + headerJoin: "\u252C", + joinBody: "\u2500", + joinLeft: "\u255F", + joinRight: "\u2562", + joinJoin: "\u253C", + joinMiddleDown: "\u252C", + joinMiddleUp: "\u2534", + joinMiddleLeft: "\u2524", + joinMiddleRight: "\u251C" + }; + } + if (name === "norc") { + return { + topBody: "\u2500", + topJoin: "\u252C", + topLeft: "\u250C", + topRight: "\u2510", + bottomBody: "\u2500", + bottomJoin: "\u2534", + bottomLeft: "\u2514", + bottomRight: "\u2518", + bodyLeft: "\u2502", + bodyRight: "\u2502", + bodyJoin: "\u2502", + headerJoin: "\u252C", + joinBody: "\u2500", + joinLeft: "\u251C", + joinRight: "\u2524", + joinJoin: "\u253C", + joinMiddleDown: "\u252C", + joinMiddleUp: "\u2534", + joinMiddleLeft: "\u2524", + joinMiddleRight: "\u251C" + }; + } + if (name === "ramac") { + return { + topBody: "-", + topJoin: "+", + topLeft: "+", + topRight: "+", + bottomBody: "-", + bottomJoin: "+", + bottomLeft: "+", + bottomRight: "+", + bodyLeft: "|", + bodyRight: "|", + bodyJoin: "|", + headerJoin: "+", + joinBody: "-", + joinLeft: "|", + joinRight: "|", + joinJoin: "|", + joinMiddleDown: "+", + joinMiddleUp: "+", + joinMiddleLeft: "+", + joinMiddleRight: "+" + }; + } + if (name === "void") { + return { + topBody: "", + topJoin: "", + topLeft: "", + topRight: "", + bottomBody: "", + bottomJoin: "", + bottomLeft: "", + bottomRight: "", + bodyLeft: "", + bodyRight: "", + bodyJoin: "", + headerJoin: "", + joinBody: "", + joinLeft: "", + joinRight: "", + joinJoin: "", + joinMiddleDown: "", + joinMiddleUp: "", + joinMiddleLeft: "", + joinMiddleRight: "" + }; + } + throw new Error('Unknown border template "' + name + '".'); + }; + exports2.getBorderCharacters = getBorderCharacters; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/utils.js +var require_utils7 = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/utils.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isCellInRange = exports2.areCellEqual = exports2.calculateRangeCoordinate = exports2.findOriginalRowIndex = exports2.flatten = exports2.extractTruncates = exports2.sumArray = exports2.sequence = exports2.distributeUnevenly = exports2.countSpaceSequence = exports2.groupBySizes = exports2.makeBorderConfig = exports2.splitAnsi = exports2.normalizeString = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi()); + var string_width_1 = __importDefault4(require_string_width()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var getBorderCharacters_1 = require_getBorderCharacters(); + var normalizeString = (input) => { + return input.replace(/\r\n/g, "\n"); + }; + exports2.normalizeString = normalizeString; + var splitAnsi = (input) => { + const lengths = (0, strip_ansi_1.default)(input).split("\n").map(string_width_1.default); + const result2 = []; + let startIndex = 0; + lengths.forEach((length) => { + result2.push(length === 0 ? "" : (0, slice_ansi_1.default)(input, startIndex, startIndex + length)); + startIndex += length + 1; + }); + return result2; + }; + exports2.splitAnsi = splitAnsi; + var makeBorderConfig = (border) => { + return { + ...(0, getBorderCharacters_1.getBorderCharacters)("honeywell"), + ...border + }; + }; + exports2.makeBorderConfig = makeBorderConfig; + var groupBySizes = (array, sizes) => { + let startIndex = 0; + return sizes.map((size) => { + const group = array.slice(startIndex, startIndex + size); + startIndex += size; + return group; + }); + }; + exports2.groupBySizes = groupBySizes; + var countSpaceSequence = (input) => { + var _a, _b; + return (_b = (_a = input.match(/\s+/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0; + }; + exports2.countSpaceSequence = countSpaceSequence; + var distributeUnevenly = (sum, length) => { + const result2 = Array.from({ length }).fill(Math.floor(sum / length)); + return result2.map((element, index) => { + return element + (index < sum % length ? 1 : 0); + }); + }; + exports2.distributeUnevenly = distributeUnevenly; + var sequence = (start, end) => { + return Array.from({ length: end - start + 1 }, (_, index) => { + return index + start; + }); + }; + exports2.sequence = sequence; + var sumArray = (array) => { + return array.reduce((accumulator, element) => { + return accumulator + element; + }, 0); + }; + exports2.sumArray = sumArray; + var extractTruncates = (config) => { + return config.columns.map(({ truncate }) => { + return truncate; + }); + }; + exports2.extractTruncates = extractTruncates; + var flatten = (array) => { + return [].concat(...array); + }; + exports2.flatten = flatten; + var findOriginalRowIndex = (mappedRowHeights, mappedRowIndex) => { + const rowIndexMapping = (0, exports2.flatten)(mappedRowHeights.map((height, index) => { + return Array.from({ length: height }, () => { + return index; + }); + })); + return rowIndexMapping[mappedRowIndex]; + }; + exports2.findOriginalRowIndex = findOriginalRowIndex; + var calculateRangeCoordinate = (spanningCellConfig) => { + const { row, col, colSpan = 1, rowSpan = 1 } = spanningCellConfig; + return { + bottomRight: { + col: col + colSpan - 1, + row: row + rowSpan - 1 + }, + topLeft: { + col, + row + } + }; + }; + exports2.calculateRangeCoordinate = calculateRangeCoordinate; + var areCellEqual = (cell1, cell2) => { + return cell1.row === cell2.row && cell1.col === cell2.col; + }; + exports2.areCellEqual = areCellEqual; + var isCellInRange = (cell, { topLeft, bottomRight }) => { + return topLeft.row <= cell.row && cell.row <= bottomRight.row && topLeft.col <= cell.col && cell.col <= bottomRight.col; + }; + exports2.isCellInRange = isCellInRange; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignString.js +var require_alignString = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignString.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignString = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var utils_1 = require_utils7(); + var alignLeft = (subject, width) => { + return subject + " ".repeat(width); + }; + var alignRight = (subject, width) => { + return " ".repeat(width) + subject; + }; + var alignCenter = (subject, width) => { + return " ".repeat(Math.floor(width / 2)) + subject + " ".repeat(Math.ceil(width / 2)); + }; + var alignJustify = (subject, width) => { + const spaceSequenceCount = (0, utils_1.countSpaceSequence)(subject); + if (spaceSequenceCount === 0) { + return alignLeft(subject, width); + } + const addingSpaces = (0, utils_1.distributeUnevenly)(width, spaceSequenceCount); + if (Math.max(...addingSpaces) > 3) { + return alignLeft(subject, width); + } + let spaceSequenceIndex = 0; + return subject.replace(/\s+/g, (groupSpace) => { + return groupSpace + " ".repeat(addingSpaces[spaceSequenceIndex++]); + }); + }; + var alignString = (subject, containerWidth, alignment) => { + const subjectWidth = (0, string_width_1.default)(subject); + if (subjectWidth === containerWidth) { + return subject; + } + if (subjectWidth > containerWidth) { + throw new Error("Subject parameter value width cannot be greater than the container width."); + } + if (subjectWidth === 0) { + return " ".repeat(containerWidth); + } + const availableWidth = containerWidth - subjectWidth; + if (alignment === "left") { + return alignLeft(subject, availableWidth); + } + if (alignment === "right") { + return alignRight(subject, availableWidth); + } + if (alignment === "justify") { + return alignJustify(subject, availableWidth); + } + return alignCenter(subject, availableWidth); + }; + exports2.alignString = alignString; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignTableData.js +var require_alignTableData = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignTableData = void 0; + var alignString_1 = require_alignString(); + var alignTableData = (rows, config) => { + return rows.map((row, rowIndex) => { + return row.map((cell, cellIndex) => { + var _a; + const { width, alignment } = config.columns[cellIndex]; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }, { mapped: true }); + if (containingRange) { + return cell; + } + return (0, alignString_1.alignString)(cell, width, alignment); + }); + }); + }; + exports2.alignTableData = alignTableData; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapString.js +var require_wrapString = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapString.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapString = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi()); + var string_width_1 = __importDefault4(require_string_width()); + var wrapString = (subject, size) => { + let subjectSlice = subject; + const chunks = []; + do { + chunks.push((0, slice_ansi_1.default)(subjectSlice, 0, size)); + subjectSlice = (0, slice_ansi_1.default)(subjectSlice, size).trim(); + } while ((0, string_width_1.default)(subjectSlice)); + return chunks; + }; + exports2.wrapString = wrapString; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapWord.js +var require_wrapWord = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapWord.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapWord = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var calculateStringLengths = (input, size) => { + let subject = (0, strip_ansi_1.default)(input); + const chunks = []; + const re = new RegExp("(^.{1," + String(Math.max(size, 1)) + "}(\\s+|$))|(^.{1," + String(Math.max(size - 1, 1)) + "}(\\\\|/|_|\\.|,|;|-))"); + do { + let chunk; + const match = re.exec(subject); + if (match) { + chunk = match[0]; + subject = subject.slice(chunk.length); + const trimmedLength = chunk.trim().length; + const offset = chunk.length - trimmedLength; + chunks.push([trimmedLength, offset]); + } else { + chunk = subject.slice(0, size); + subject = subject.slice(size); + chunks.push([chunk.length, 0]); + } + } while (subject.length); + return chunks; + }; + var wrapWord = (input, size) => { + const result2 = []; + let startIndex = 0; + calculateStringLengths(input, size).forEach(([length, offset]) => { + result2.push((0, slice_ansi_1.default)(input, startIndex, startIndex + length)); + startIndex += length + offset; + }); + return result2; + }; + exports2.wrapWord = wrapWord; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapCell.js +var require_wrapCell = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/wrapCell.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapCell = void 0; + var utils_1 = require_utils7(); + var wrapString_1 = require_wrapString(); + var wrapWord_1 = require_wrapWord(); + var wrapCell = (cellValue, cellWidth, useWrapWord) => { + const cellLines = (0, utils_1.splitAnsi)(cellValue); + for (let lineNr = 0; lineNr < cellLines.length; ) { + let lineChunks; + if (useWrapWord) { + lineChunks = (0, wrapWord_1.wrapWord)(cellLines[lineNr], cellWidth); + } else { + lineChunks = (0, wrapString_1.wrapString)(cellLines[lineNr], cellWidth); + } + cellLines.splice(lineNr, 1, ...lineChunks); + lineNr += lineChunks.length; + } + return cellLines; + }; + exports2.wrapCell = wrapCell; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateCellHeight.js +var require_calculateCellHeight = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateCellHeight.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateCellHeight = void 0; + var wrapCell_1 = require_wrapCell(); + var calculateCellHeight = (value, columnWidth, useWrapWord = false) => { + return (0, wrapCell_1.wrapCell)(value, columnWidth, useWrapWord).length; + }; + exports2.calculateCellHeight = calculateCellHeight; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateRowHeights.js +var require_calculateRowHeights = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateRowHeights.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateRowHeights = void 0; + var calculateCellHeight_1 = require_calculateCellHeight(); + var utils_1 = require_utils7(); + var calculateRowHeights = (rows, config) => { + const rowHeights = []; + for (const [rowIndex, row] of rows.entries()) { + let rowHeight = 1; + row.forEach((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }); + if (!containingRange) { + const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord); + rowHeight = Math.max(rowHeight, cellHeight); + return; + } + const { topLeft, bottomRight, height } = containingRange; + if (rowIndex === bottomRight.row) { + const totalOccupiedSpanningCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row)); + const totalHorizontalBorderHeight = bottomRight.row - topLeft.row; + const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => { + var _a2; + return !((_a2 = config.drawHorizontalLine) === null || _a2 === void 0 ? void 0 : _a2.call(config, horizontalBorderIndex, rows.length)); + }).length; + const cellHeight = height - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight; + rowHeight = Math.max(rowHeight, cellHeight); + } + }); + rowHeights.push(rowHeight); + } + return rowHeights; + }; + exports2.calculateRowHeights = calculateRowHeights; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawContent.js +var require_drawContent = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawContent.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawContent = void 0; + var drawContent = (parameters) => { + const { contents, separatorGetter, drawSeparator, spanningCellManager, rowIndex, elementType } = parameters; + const contentSize = contents.length; + const result2 = []; + if (drawSeparator(0, contentSize)) { + result2.push(separatorGetter(0, contentSize)); + } + contents.forEach((content, contentIndex) => { + if (!elementType || elementType === "border" || elementType === "row") { + result2.push(content); + } + if (elementType === "cell" && rowIndex === void 0) { + result2.push(content); + } + if (elementType === "cell" && rowIndex !== void 0) { + const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({ + col: contentIndex, + row: rowIndex + }); + if (!containingRange || contentIndex === containingRange.topLeft.col) { + result2.push(content); + } + } + if (contentIndex + 1 < contentSize && drawSeparator(contentIndex + 1, contentSize)) { + const separator = separatorGetter(contentIndex + 1, contentSize); + if (elementType === "cell" && rowIndex !== void 0) { + const currentCell = { + col: contentIndex + 1, + row: rowIndex + }; + const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange(currentCell); + if (!containingRange || containingRange.topLeft.col === currentCell.col) { + result2.push(separator); + } + } else { + result2.push(separator); + } + } + }); + if (drawSeparator(contentSize, contentSize)) { + result2.push(separatorGetter(contentSize, contentSize)); + } + return result2.join(""); + }; + exports2.drawContent = drawContent; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawBorder.js +var require_drawBorder = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawBorder.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createTableBorderGetter = exports2.drawBorderBottom = exports2.drawBorderJoin = exports2.drawBorderTop = exports2.drawBorder = exports2.createSeparatorGetter = exports2.drawBorderSegments = void 0; + var drawContent_1 = require_drawContent(); + var drawBorderSegments = (columnWidths, parameters) => { + const { separator, horizontalBorderIndex, spanningCellManager } = parameters; + return columnWidths.map((columnWidth, columnIndex) => { + const normalSegment = separator.body.repeat(columnWidth); + if (horizontalBorderIndex === void 0) { + return normalSegment; + } + const range = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({ + col: columnIndex, + row: horizontalBorderIndex + }); + if (!range) { + return normalSegment; + } + const { topLeft } = range; + if (horizontalBorderIndex === topLeft.row) { + return normalSegment; + } + if (columnIndex !== topLeft.col) { + return ""; + } + return range.extractBorderContent(horizontalBorderIndex); + }); + }; + exports2.drawBorderSegments = drawBorderSegments; + var createSeparatorGetter = (dependencies) => { + const { separator, spanningCellManager, horizontalBorderIndex, rowCount } = dependencies; + return (verticalBorderIndex, columnCount) => { + const inSameRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.inSameRange; + if (horizontalBorderIndex !== void 0 && inSameRange) { + const topCell = { + col: verticalBorderIndex, + row: horizontalBorderIndex - 1 + }; + const leftCell = { + col: verticalBorderIndex - 1, + row: horizontalBorderIndex + }; + const oppositeCell = { + col: verticalBorderIndex - 1, + row: horizontalBorderIndex - 1 + }; + const currentCell = { + col: verticalBorderIndex, + row: horizontalBorderIndex + }; + const pairs = [ + [oppositeCell, topCell], + [topCell, currentCell], + [currentCell, leftCell], + [leftCell, oppositeCell] + ]; + if (verticalBorderIndex === 0) { + if (inSameRange(currentCell, topCell) && separator.bodyJoinOuter) { + return separator.bodyJoinOuter; + } + return separator.left; + } + if (verticalBorderIndex === columnCount) { + if (inSameRange(oppositeCell, leftCell) && separator.bodyJoinOuter) { + return separator.bodyJoinOuter; + } + return separator.right; + } + if (horizontalBorderIndex === 0) { + if (inSameRange(currentCell, leftCell)) { + return separator.body; + } + return separator.join; + } + if (horizontalBorderIndex === rowCount) { + if (inSameRange(topCell, oppositeCell)) { + return separator.body; + } + return separator.join; + } + const sameRangeCount = pairs.map((pair) => { + return inSameRange(...pair); + }).filter(Boolean).length; + if (sameRangeCount === 0) { + return separator.join; + } + if (sameRangeCount === 4) { + return ""; + } + if (sameRangeCount === 2) { + if (inSameRange(...pairs[1]) && inSameRange(...pairs[3]) && separator.bodyJoinInner) { + return separator.bodyJoinInner; + } + return separator.body; + } + if (sameRangeCount === 1) { + if (!separator.joinRight || !separator.joinLeft || !separator.joinUp || !separator.joinDown) { + throw new Error(`Can not get border separator for position [${horizontalBorderIndex}, ${verticalBorderIndex}]`); + } + if (inSameRange(...pairs[0])) { + return separator.joinDown; + } + if (inSameRange(...pairs[1])) { + return separator.joinLeft; + } + if (inSameRange(...pairs[2])) { + return separator.joinUp; + } + return separator.joinRight; + } + throw new Error("Invalid case"); + } + if (verticalBorderIndex === 0) { + return separator.left; + } + if (verticalBorderIndex === columnCount) { + return separator.right; + } + return separator.join; + }; + }; + exports2.createSeparatorGetter = createSeparatorGetter; + var drawBorder = (columnWidths, parameters) => { + const borderSegments = (0, exports2.drawBorderSegments)(columnWidths, parameters); + const { drawVerticalLine, horizontalBorderIndex, spanningCellManager } = parameters; + return (0, drawContent_1.drawContent)({ + contents: borderSegments, + drawSeparator: drawVerticalLine, + elementType: "border", + rowIndex: horizontalBorderIndex, + separatorGetter: (0, exports2.createSeparatorGetter)(parameters), + spanningCellManager + }) + "\n"; + }; + exports2.drawBorder = drawBorder; + var drawBorderTop = (columnWidths, parameters) => { + const { border } = parameters; + const result2 = (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.topBody, + join: border.topJoin, + left: border.topLeft, + right: border.topRight + } + }); + if (result2 === "\n") { + return ""; + } + return result2; + }; + exports2.drawBorderTop = drawBorderTop; + var drawBorderJoin = (columnWidths, parameters) => { + const { border } = parameters; + return (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.joinBody, + bodyJoinInner: border.bodyJoin, + bodyJoinOuter: border.bodyLeft, + join: border.joinJoin, + joinDown: border.joinMiddleDown, + joinLeft: border.joinMiddleLeft, + joinRight: border.joinMiddleRight, + joinUp: border.joinMiddleUp, + left: border.joinLeft, + right: border.joinRight + } + }); + }; + exports2.drawBorderJoin = drawBorderJoin; + var drawBorderBottom = (columnWidths, parameters) => { + const { border } = parameters; + return (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.bottomBody, + join: border.bottomJoin, + left: border.bottomLeft, + right: border.bottomRight + } + }); + }; + exports2.drawBorderBottom = drawBorderBottom; + var createTableBorderGetter = (columnWidths, parameters) => { + return (index, size) => { + const drawBorderParameters = { + ...parameters, + horizontalBorderIndex: index + }; + if (index === 0) { + return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters); + } else if (index === size) { + return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters); + } + return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters); + }; + }; + exports2.createTableBorderGetter = createTableBorderGetter; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawRow.js +var require_drawRow = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawRow.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawRow = void 0; + var drawContent_1 = require_drawContent(); + var drawRow = (row, config) => { + const { border, drawVerticalLine, rowIndex, spanningCellManager } = config; + return (0, drawContent_1.drawContent)({ + contents: row, + drawSeparator: drawVerticalLine, + elementType: "cell", + rowIndex, + separatorGetter: (index, columnCount) => { + if (index === 0) { + return border.bodyLeft; + } + if (index === columnCount) { + return border.bodyRight; + } + return border.bodyJoin; + }, + spanningCellManager + }) + "\n"; + }; + exports2.drawRow = drawRow; + } +}); + +// ../node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/runtime/equal.js +var require_equal = __commonJS({ + "../node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/runtime/equal.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var equal = require_fast_deep_equal(); + equal.code = 'require("ajv/dist/runtime/equal").default'; + exports2.default = equal; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/generated/validators.js +var require_validators = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/generated/validators.js"(exports2) { + "use strict"; + exports2["config.json"] = validate43; + var schema13 = { + "$id": "config.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "border": { + "$ref": "shared.json#/definitions/borders" + }, + "header": { + "type": "object", + "properties": { + "content": { + "type": "string" + }, + "alignment": { + "$ref": "shared.json#/definitions/alignment" + }, + "wrapWord": { + "type": "boolean" + }, + "truncate": { + "type": "integer" + }, + "paddingLeft": { + "type": "integer" + }, + "paddingRight": { + "type": "integer" + } + }, + "required": ["content"], + "additionalProperties": false + }, + "columns": { + "$ref": "shared.json#/definitions/columns" + }, + "columnDefault": { + "$ref": "shared.json#/definitions/column" + }, + "drawVerticalLine": { + "typeof": "function" + }, + "drawHorizontalLine": { + "typeof": "function" + }, + "singleLine": { + "typeof": "boolean" + }, + "spanningCells": { + "type": "array", + "items": { + "type": "object", + "properties": { + "col": { + "type": "integer", + "minimum": 0 + }, + "row": { + "type": "integer", + "minimum": 0 + }, + "colSpan": { + "type": "integer", + "minimum": 1 + }, + "rowSpan": { + "type": "integer", + "minimum": 1 + }, + "alignment": { + "$ref": "shared.json#/definitions/alignment" + }, + "verticalAlignment": { + "$ref": "shared.json#/definitions/verticalAlignment" + }, + "wrapWord": { + "type": "boolean" + }, + "truncate": { + "type": "integer" + }, + "paddingLeft": { + "type": "integer" + }, + "paddingRight": { + "type": "integer" + } + }, + "required": ["row", "col"], + "additionalProperties": false + } + } + }, + "additionalProperties": false + }; + var schema15 = { + "type": "object", + "properties": { + "topBody": { + "$ref": "#/definitions/border" + }, + "topJoin": { + "$ref": "#/definitions/border" + }, + "topLeft": { + "$ref": "#/definitions/border" + }, + "topRight": { + "$ref": "#/definitions/border" + }, + "bottomBody": { + "$ref": "#/definitions/border" + }, + "bottomJoin": { + "$ref": "#/definitions/border" + }, + "bottomLeft": { + "$ref": "#/definitions/border" + }, + "bottomRight": { + "$ref": "#/definitions/border" + }, + "bodyLeft": { + "$ref": "#/definitions/border" + }, + "bodyRight": { + "$ref": "#/definitions/border" + }, + "bodyJoin": { + "$ref": "#/definitions/border" + }, + "headerJoin": { + "$ref": "#/definitions/border" + }, + "joinBody": { + "$ref": "#/definitions/border" + }, + "joinLeft": { + "$ref": "#/definitions/border" + }, + "joinRight": { + "$ref": "#/definitions/border" + }, + "joinJoin": { + "$ref": "#/definitions/border" + }, + "joinMiddleUp": { + "$ref": "#/definitions/border" + }, + "joinMiddleDown": { + "$ref": "#/definitions/border" + }, + "joinMiddleLeft": { + "$ref": "#/definitions/border" + }, + "joinMiddleRight": { + "$ref": "#/definitions/border" + } + }, + "additionalProperties": false + }; + var func8 = Object.prototype.hasOwnProperty; + function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + validate46.errors = vErrors; + return errors === 0; + } + function validate45(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!func8.call(schema15.properties, key0)) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.topBody !== void 0) { + if (!validate46(data.topBody, { + instancePath: instancePath + "/topBody", + parentData: data, + parentDataProperty: "topBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topJoin !== void 0) { + if (!validate46(data.topJoin, { + instancePath: instancePath + "/topJoin", + parentData: data, + parentDataProperty: "topJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topLeft !== void 0) { + if (!validate46(data.topLeft, { + instancePath: instancePath + "/topLeft", + parentData: data, + parentDataProperty: "topLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topRight !== void 0) { + if (!validate46(data.topRight, { + instancePath: instancePath + "/topRight", + parentData: data, + parentDataProperty: "topRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomBody !== void 0) { + if (!validate46(data.bottomBody, { + instancePath: instancePath + "/bottomBody", + parentData: data, + parentDataProperty: "bottomBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomJoin !== void 0) { + if (!validate46(data.bottomJoin, { + instancePath: instancePath + "/bottomJoin", + parentData: data, + parentDataProperty: "bottomJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomLeft !== void 0) { + if (!validate46(data.bottomLeft, { + instancePath: instancePath + "/bottomLeft", + parentData: data, + parentDataProperty: "bottomLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomRight !== void 0) { + if (!validate46(data.bottomRight, { + instancePath: instancePath + "/bottomRight", + parentData: data, + parentDataProperty: "bottomRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyLeft !== void 0) { + if (!validate46(data.bodyLeft, { + instancePath: instancePath + "/bodyLeft", + parentData: data, + parentDataProperty: "bodyLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyRight !== void 0) { + if (!validate46(data.bodyRight, { + instancePath: instancePath + "/bodyRight", + parentData: data, + parentDataProperty: "bodyRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyJoin !== void 0) { + if (!validate46(data.bodyJoin, { + instancePath: instancePath + "/bodyJoin", + parentData: data, + parentDataProperty: "bodyJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.headerJoin !== void 0) { + if (!validate46(data.headerJoin, { + instancePath: instancePath + "/headerJoin", + parentData: data, + parentDataProperty: "headerJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinBody !== void 0) { + if (!validate46(data.joinBody, { + instancePath: instancePath + "/joinBody", + parentData: data, + parentDataProperty: "joinBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinLeft !== void 0) { + if (!validate46(data.joinLeft, { + instancePath: instancePath + "/joinLeft", + parentData: data, + parentDataProperty: "joinLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinRight !== void 0) { + if (!validate46(data.joinRight, { + instancePath: instancePath + "/joinRight", + parentData: data, + parentDataProperty: "joinRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinJoin !== void 0) { + if (!validate46(data.joinJoin, { + instancePath: instancePath + "/joinJoin", + parentData: data, + parentDataProperty: "joinJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleUp !== void 0) { + if (!validate46(data.joinMiddleUp, { + instancePath: instancePath + "/joinMiddleUp", + parentData: data, + parentDataProperty: "joinMiddleUp", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleDown !== void 0) { + if (!validate46(data.joinMiddleDown, { + instancePath: instancePath + "/joinMiddleDown", + parentData: data, + parentDataProperty: "joinMiddleDown", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleLeft !== void 0) { + if (!validate46(data.joinMiddleLeft, { + instancePath: instancePath + "/joinMiddleLeft", + parentData: data, + parentDataProperty: "joinMiddleLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleRight !== void 0) { + if (!validate46(data.joinMiddleRight, { + instancePath: instancePath + "/joinMiddleRight", + parentData: data, + parentDataProperty: "joinMiddleRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate45.errors = vErrors; + return errors === 0; + } + var schema17 = { + "type": "string", + "enum": ["left", "right", "center", "justify"] + }; + var func0 = require_equal().default; + function validate68(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (!(data === "left" || data === "right" || data === "center" || data === "justify")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema17.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate68.errors = vErrors; + return errors === 0; + } + var pattern0 = new RegExp("^[0-9]+$", "u"); + function validate72(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (!(data === "left" || data === "right" || data === "center" || data === "justify")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema17.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate72.errors = vErrors; + return errors === 0; + } + var schema21 = { + "type": "string", + "enum": ["top", "middle", "bottom"] + }; + function validate74(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (!(data === "top" || data === "middle" || data === "bottom")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema21.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate74.errors = vErrors; + return errors === 0; + } + function validate71(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } + } + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } + } + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + } + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + validate71.errors = vErrors; + return errors === 0; + } + function validate70(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + const _errs0 = errors; + let valid0 = false; + let passing0 = null; + const _errs1 = errors; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!pattern0.test(key0)) { + const err0 = { + instancePath, + schemaPath: "#/oneOf/0/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + for (const key1 in data) { + if (pattern0.test(key1)) { + if (!validate71(data[key1], { + instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), + parentData: data, + parentDataProperty: key1, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/oneOf/0/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + var _valid0 = _errs1 === errors; + if (_valid0) { + valid0 = true; + passing0 = 0; + } + const _errs5 = errors; + if (Array.isArray(data)) { + const len0 = data.length; + for (let i0 = 0; i0 < len0; i0++) { + if (!validate71(data[i0], { + instancePath: instancePath + "/" + i0, + parentData: data, + parentDataProperty: i0, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } + } else { + const err2 = { + instancePath, + schemaPath: "#/oneOf/1/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + var _valid0 = _errs5 === errors; + if (_valid0 && valid0) { + valid0 = false; + passing0 = [passing0, 1]; + } else { + if (_valid0) { + valid0 = true; + passing0 = 1; + } + } + if (!valid0) { + const err3 = { + instancePath, + schemaPath: "#/oneOf", + keyword: "oneOf", + params: { + passingSchemas: passing0 + }, + message: "must match exactly one schema in oneOf" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } else { + errors = _errs0; + if (vErrors !== null) { + if (_errs0) { + vErrors.length = _errs0; + } else { + vErrors = null; + } + } + } + validate70.errors = vErrors; + return errors === 0; + } + function validate79(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } + } + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } + } + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + } + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + validate79.errors = vErrors; + return errors === 0; + } + function validate84(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (!(data === "top" || data === "middle" || data === "bottom")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema21.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate84.errors = vErrors; + return errors === 0; + } + function validate43(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + ; + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "border" || key0 === "header" || key0 === "columns" || key0 === "columnDefault" || key0 === "drawVerticalLine" || key0 === "drawHorizontalLine" || key0 === "singleLine" || key0 === "spanningCells")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.border !== void 0) { + if (!validate45(data.border, { + instancePath: instancePath + "/border", + parentData: data, + parentDataProperty: "border", + rootData + })) { + vErrors = vErrors === null ? validate45.errors : vErrors.concat(validate45.errors); + errors = vErrors.length; + } + } + if (data.header !== void 0) { + let data1 = data.header; + if (data1 && typeof data1 == "object" && !Array.isArray(data1)) { + if (data1.content === void 0) { + const err1 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/required", + keyword: "required", + params: { + missingProperty: "content" + }, + message: "must have required property 'content'" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + for (const key1 in data1) { + if (!(key1 === "content" || key1 === "alignment" || key1 === "wrapWord" || key1 === "truncate" || key1 === "paddingLeft" || key1 === "paddingRight")) { + const err2 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key1 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + if (data1.content !== void 0) { + if (typeof data1.content !== "string") { + const err3 = { + instancePath: instancePath + "/header/content", + schemaPath: "#/properties/header/properties/content/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data1.alignment !== void 0) { + if (!validate68(data1.alignment, { + instancePath: instancePath + "/header/alignment", + parentData: data1, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors); + errors = vErrors.length; + } + } + if (data1.wrapWord !== void 0) { + if (typeof data1.wrapWord !== "boolean") { + const err4 = { + instancePath: instancePath + "/header/wrapWord", + schemaPath: "#/properties/header/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data1.truncate !== void 0) { + let data5 = data1.truncate; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/header/truncate", + schemaPath: "#/properties/header/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data1.paddingLeft !== void 0) { + let data6 = data1.paddingLeft; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/header/paddingLeft", + schemaPath: "#/properties/header/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + if (data1.paddingRight !== void 0) { + let data7 = data1.paddingRight; + if (!(typeof data7 == "number" && (!(data7 % 1) && !isNaN(data7)) && isFinite(data7))) { + const err7 = { + instancePath: instancePath + "/header/paddingRight", + schemaPath: "#/properties/header/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + } + } else { + const err8 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err8]; + } else { + vErrors.push(err8); + } + errors++; + } + } + if (data.columns !== void 0) { + if (!validate70(data.columns, { + instancePath: instancePath + "/columns", + parentData: data, + parentDataProperty: "columns", + rootData + })) { + vErrors = vErrors === null ? validate70.errors : vErrors.concat(validate70.errors); + errors = vErrors.length; + } + } + if (data.columnDefault !== void 0) { + if (!validate79(data.columnDefault, { + instancePath: instancePath + "/columnDefault", + parentData: data, + parentDataProperty: "columnDefault", + rootData + })) { + vErrors = vErrors === null ? validate79.errors : vErrors.concat(validate79.errors); + errors = vErrors.length; + } + } + if (data.drawVerticalLine !== void 0) { + if (typeof data.drawVerticalLine != "function") { + const err9 = { + instancePath: instancePath + "/drawVerticalLine", + schemaPath: "#/properties/drawVerticalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err9]; + } else { + vErrors.push(err9); + } + errors++; + } + } + if (data.drawHorizontalLine !== void 0) { + if (typeof data.drawHorizontalLine != "function") { + const err10 = { + instancePath: instancePath + "/drawHorizontalLine", + schemaPath: "#/properties/drawHorizontalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err10]; + } else { + vErrors.push(err10); + } + errors++; + } + } + if (data.singleLine !== void 0) { + if (typeof data.singleLine != "boolean") { + const err11 = { + instancePath: instancePath + "/singleLine", + schemaPath: "#/properties/singleLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err11]; + } else { + vErrors.push(err11); + } + errors++; + } + } + if (data.spanningCells !== void 0) { + let data13 = data.spanningCells; + if (Array.isArray(data13)) { + const len0 = data13.length; + for (let i0 = 0; i0 < len0; i0++) { + let data14 = data13[i0]; + if (data14 && typeof data14 == "object" && !Array.isArray(data14)) { + if (data14.row === void 0) { + const err12 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/required", + keyword: "required", + params: { + missingProperty: "row" + }, + message: "must have required property 'row'" + }; + if (vErrors === null) { + vErrors = [err12]; + } else { + vErrors.push(err12); + } + errors++; + } + if (data14.col === void 0) { + const err13 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/required", + keyword: "required", + params: { + missingProperty: "col" + }, + message: "must have required property 'col'" + }; + if (vErrors === null) { + vErrors = [err13]; + } else { + vErrors.push(err13); + } + errors++; + } + for (const key2 in data14) { + if (!func8.call(schema13.properties.spanningCells.items.properties, key2)) { + const err14 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key2 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err14]; + } else { + vErrors.push(err14); + } + errors++; + } + } + if (data14.col !== void 0) { + let data15 = data14.col; + if (!(typeof data15 == "number" && (!(data15 % 1) && !isNaN(data15)) && isFinite(data15))) { + const err15 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/col", + schemaPath: "#/properties/spanningCells/items/properties/col/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err15]; + } else { + vErrors.push(err15); + } + errors++; + } + if (typeof data15 == "number" && isFinite(data15)) { + if (data15 < 0 || isNaN(data15)) { + const err16 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/col", + schemaPath: "#/properties/spanningCells/items/properties/col/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 0 + }, + message: "must be >= 0" + }; + if (vErrors === null) { + vErrors = [err16]; + } else { + vErrors.push(err16); + } + errors++; + } + } + } + if (data14.row !== void 0) { + let data16 = data14.row; + if (!(typeof data16 == "number" && (!(data16 % 1) && !isNaN(data16)) && isFinite(data16))) { + const err17 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/row", + schemaPath: "#/properties/spanningCells/items/properties/row/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err17]; + } else { + vErrors.push(err17); + } + errors++; + } + if (typeof data16 == "number" && isFinite(data16)) { + if (data16 < 0 || isNaN(data16)) { + const err18 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/row", + schemaPath: "#/properties/spanningCells/items/properties/row/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 0 + }, + message: "must be >= 0" + }; + if (vErrors === null) { + vErrors = [err18]; + } else { + vErrors.push(err18); + } + errors++; + } + } + } + if (data14.colSpan !== void 0) { + let data17 = data14.colSpan; + if (!(typeof data17 == "number" && (!(data17 % 1) && !isNaN(data17)) && isFinite(data17))) { + const err19 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan", + schemaPath: "#/properties/spanningCells/items/properties/colSpan/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err19]; + } else { + vErrors.push(err19); + } + errors++; + } + if (typeof data17 == "number" && isFinite(data17)) { + if (data17 < 1 || isNaN(data17)) { + const err20 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan", + schemaPath: "#/properties/spanningCells/items/properties/colSpan/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err20]; + } else { + vErrors.push(err20); + } + errors++; + } + } + } + if (data14.rowSpan !== void 0) { + let data18 = data14.rowSpan; + if (!(typeof data18 == "number" && (!(data18 % 1) && !isNaN(data18)) && isFinite(data18))) { + const err21 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan", + schemaPath: "#/properties/spanningCells/items/properties/rowSpan/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err21]; + } else { + vErrors.push(err21); + } + errors++; + } + if (typeof data18 == "number" && isFinite(data18)) { + if (data18 < 1 || isNaN(data18)) { + const err22 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan", + schemaPath: "#/properties/spanningCells/items/properties/rowSpan/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err22]; + } else { + vErrors.push(err22); + } + errors++; + } + } + } + if (data14.alignment !== void 0) { + if (!validate68(data14.alignment, { + instancePath: instancePath + "/spanningCells/" + i0 + "/alignment", + parentData: data14, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors); + errors = vErrors.length; + } + } + if (data14.verticalAlignment !== void 0) { + if (!validate84(data14.verticalAlignment, { + instancePath: instancePath + "/spanningCells/" + i0 + "/verticalAlignment", + parentData: data14, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate84.errors : vErrors.concat(validate84.errors); + errors = vErrors.length; + } + } + if (data14.wrapWord !== void 0) { + if (typeof data14.wrapWord !== "boolean") { + const err23 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/wrapWord", + schemaPath: "#/properties/spanningCells/items/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err23]; + } else { + vErrors.push(err23); + } + errors++; + } + } + if (data14.truncate !== void 0) { + let data22 = data14.truncate; + if (!(typeof data22 == "number" && (!(data22 % 1) && !isNaN(data22)) && isFinite(data22))) { + const err24 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/truncate", + schemaPath: "#/properties/spanningCells/items/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err24]; + } else { + vErrors.push(err24); + } + errors++; + } + } + if (data14.paddingLeft !== void 0) { + let data23 = data14.paddingLeft; + if (!(typeof data23 == "number" && (!(data23 % 1) && !isNaN(data23)) && isFinite(data23))) { + const err25 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/paddingLeft", + schemaPath: "#/properties/spanningCells/items/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err25]; + } else { + vErrors.push(err25); + } + errors++; + } + } + if (data14.paddingRight !== void 0) { + let data24 = data14.paddingRight; + if (!(typeof data24 == "number" && (!(data24 % 1) && !isNaN(data24)) && isFinite(data24))) { + const err26 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/paddingRight", + schemaPath: "#/properties/spanningCells/items/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err26]; + } else { + vErrors.push(err26); + } + errors++; + } + } + } else { + const err27 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err27]; + } else { + vErrors.push(err27); + } + errors++; + } + } + } else { + const err28 = { + instancePath: instancePath + "/spanningCells", + schemaPath: "#/properties/spanningCells/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err28]; + } else { + vErrors.push(err28); + } + errors++; + } + } + } else { + const err29 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err29]; + } else { + vErrors.push(err29); + } + errors++; + } + validate43.errors = vErrors; + return errors === 0; + } + exports2["streamConfig.json"] = validate86; + function validate87(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!func8.call(schema15.properties, key0)) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.topBody !== void 0) { + if (!validate46(data.topBody, { + instancePath: instancePath + "/topBody", + parentData: data, + parentDataProperty: "topBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topJoin !== void 0) { + if (!validate46(data.topJoin, { + instancePath: instancePath + "/topJoin", + parentData: data, + parentDataProperty: "topJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topLeft !== void 0) { + if (!validate46(data.topLeft, { + instancePath: instancePath + "/topLeft", + parentData: data, + parentDataProperty: "topLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topRight !== void 0) { + if (!validate46(data.topRight, { + instancePath: instancePath + "/topRight", + parentData: data, + parentDataProperty: "topRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomBody !== void 0) { + if (!validate46(data.bottomBody, { + instancePath: instancePath + "/bottomBody", + parentData: data, + parentDataProperty: "bottomBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomJoin !== void 0) { + if (!validate46(data.bottomJoin, { + instancePath: instancePath + "/bottomJoin", + parentData: data, + parentDataProperty: "bottomJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomLeft !== void 0) { + if (!validate46(data.bottomLeft, { + instancePath: instancePath + "/bottomLeft", + parentData: data, + parentDataProperty: "bottomLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomRight !== void 0) { + if (!validate46(data.bottomRight, { + instancePath: instancePath + "/bottomRight", + parentData: data, + parentDataProperty: "bottomRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyLeft !== void 0) { + if (!validate46(data.bodyLeft, { + instancePath: instancePath + "/bodyLeft", + parentData: data, + parentDataProperty: "bodyLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyRight !== void 0) { + if (!validate46(data.bodyRight, { + instancePath: instancePath + "/bodyRight", + parentData: data, + parentDataProperty: "bodyRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyJoin !== void 0) { + if (!validate46(data.bodyJoin, { + instancePath: instancePath + "/bodyJoin", + parentData: data, + parentDataProperty: "bodyJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.headerJoin !== void 0) { + if (!validate46(data.headerJoin, { + instancePath: instancePath + "/headerJoin", + parentData: data, + parentDataProperty: "headerJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinBody !== void 0) { + if (!validate46(data.joinBody, { + instancePath: instancePath + "/joinBody", + parentData: data, + parentDataProperty: "joinBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinLeft !== void 0) { + if (!validate46(data.joinLeft, { + instancePath: instancePath + "/joinLeft", + parentData: data, + parentDataProperty: "joinLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinRight !== void 0) { + if (!validate46(data.joinRight, { + instancePath: instancePath + "/joinRight", + parentData: data, + parentDataProperty: "joinRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinJoin !== void 0) { + if (!validate46(data.joinJoin, { + instancePath: instancePath + "/joinJoin", + parentData: data, + parentDataProperty: "joinJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleUp !== void 0) { + if (!validate46(data.joinMiddleUp, { + instancePath: instancePath + "/joinMiddleUp", + parentData: data, + parentDataProperty: "joinMiddleUp", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleDown !== void 0) { + if (!validate46(data.joinMiddleDown, { + instancePath: instancePath + "/joinMiddleDown", + parentData: data, + parentDataProperty: "joinMiddleDown", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleLeft !== void 0) { + if (!validate46(data.joinMiddleLeft, { + instancePath: instancePath + "/joinMiddleLeft", + parentData: data, + parentDataProperty: "joinMiddleLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleRight !== void 0) { + if (!validate46(data.joinMiddleRight, { + instancePath: instancePath + "/joinMiddleRight", + parentData: data, + parentDataProperty: "joinMiddleRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate87.errors = vErrors; + return errors === 0; + } + function validate109(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + const _errs0 = errors; + let valid0 = false; + let passing0 = null; + const _errs1 = errors; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!pattern0.test(key0)) { + const err0 = { + instancePath, + schemaPath: "#/oneOf/0/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + for (const key1 in data) { + if (pattern0.test(key1)) { + if (!validate71(data[key1], { + instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), + parentData: data, + parentDataProperty: key1, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/oneOf/0/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + var _valid0 = _errs1 === errors; + if (_valid0) { + valid0 = true; + passing0 = 0; + } + const _errs5 = errors; + if (Array.isArray(data)) { + const len0 = data.length; + for (let i0 = 0; i0 < len0; i0++) { + if (!validate71(data[i0], { + instancePath: instancePath + "/" + i0, + parentData: data, + parentDataProperty: i0, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } + } else { + const err2 = { + instancePath, + schemaPath: "#/oneOf/1/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + var _valid0 = _errs5 === errors; + if (_valid0 && valid0) { + valid0 = false; + passing0 = [passing0, 1]; + } else { + if (_valid0) { + valid0 = true; + passing0 = 1; + } + } + if (!valid0) { + const err3 = { + instancePath, + schemaPath: "#/oneOf", + keyword: "oneOf", + params: { + passingSchemas: passing0 + }, + message: "must match exactly one schema in oneOf" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } else { + errors = _errs0; + if (vErrors !== null) { + if (_errs0) { + vErrors.length = _errs0; + } else { + vErrors = null; + } + } + } + validate109.errors = vErrors; + return errors === 0; + } + function validate113(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } + } + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } + } + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + } + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + validate113.errors = vErrors; + return errors === 0; + } + function validate86(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + ; + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + if (data.columnDefault === void 0) { + const err0 = { + instancePath, + schemaPath: "#/required", + keyword: "required", + params: { + missingProperty: "columnDefault" + }, + message: "must have required property 'columnDefault'" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (data.columnCount === void 0) { + const err1 = { + instancePath, + schemaPath: "#/required", + keyword: "required", + params: { + missingProperty: "columnCount" + }, + message: "must have required property 'columnCount'" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + for (const key0 in data) { + if (!(key0 === "border" || key0 === "columns" || key0 === "columnDefault" || key0 === "columnCount" || key0 === "drawVerticalLine")) { + const err2 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + if (data.border !== void 0) { + if (!validate87(data.border, { + instancePath: instancePath + "/border", + parentData: data, + parentDataProperty: "border", + rootData + })) { + vErrors = vErrors === null ? validate87.errors : vErrors.concat(validate87.errors); + errors = vErrors.length; + } + } + if (data.columns !== void 0) { + if (!validate109(data.columns, { + instancePath: instancePath + "/columns", + parentData: data, + parentDataProperty: "columns", + rootData + })) { + vErrors = vErrors === null ? validate109.errors : vErrors.concat(validate109.errors); + errors = vErrors.length; + } + } + if (data.columnDefault !== void 0) { + if (!validate113(data.columnDefault, { + instancePath: instancePath + "/columnDefault", + parentData: data, + parentDataProperty: "columnDefault", + rootData + })) { + vErrors = vErrors === null ? validate113.errors : vErrors.concat(validate113.errors); + errors = vErrors.length; + } + } + if (data.columnCount !== void 0) { + let data3 = data.columnCount; + if (!(typeof data3 == "number" && (!(data3 % 1) && !isNaN(data3)) && isFinite(data3))) { + const err3 = { + instancePath: instancePath + "/columnCount", + schemaPath: "#/properties/columnCount/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + if (typeof data3 == "number" && isFinite(data3)) { + if (data3 < 1 || isNaN(data3)) { + const err4 = { + instancePath: instancePath + "/columnCount", + schemaPath: "#/properties/columnCount/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + } + if (data.drawVerticalLine !== void 0) { + if (typeof data.drawVerticalLine != "function") { + const err5 = { + instancePath: instancePath + "/drawVerticalLine", + schemaPath: "#/properties/drawVerticalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + } else { + const err6 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + validate86.errors = vErrors; + return errors === 0; + } + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateConfig.js +var require_validateConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateConfig.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateConfig = void 0; + var validators_1 = __importDefault4(require_validators()); + var validateConfig = (schemaId, config) => { + const validate2 = validators_1.default[schemaId]; + if (!validate2(config) && validate2.errors) { + const errors = validate2.errors.map((error) => { + return { + message: error.message, + params: error.params, + schemaPath: error.schemaPath + }; + }); + console.log("config", config); + console.log("errors", errors); + throw new Error("Invalid config."); + } + }; + exports2.validateConfig = validateConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeStreamConfig.js +var require_makeStreamConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeStreamConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeStreamConfig = void 0; + var utils_1 = require_utils7(); + var validateConfig_1 = require_validateConfig(); + var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => { + return Array.from({ length: columnCount }).map((_, index) => { + return { + alignment: "left", + paddingLeft: 1, + paddingRight: 1, + truncate: Number.POSITIVE_INFINITY, + verticalAlignment: "top", + wrapWord: false, + ...columnDefault, + ...columns[index] + }; + }); + }; + var makeStreamConfig = (config) => { + (0, validateConfig_1.validateConfig)("streamConfig.json", config); + if (config.columnDefault.width === void 0) { + throw new Error("Must provide config.columnDefault.width when creating a stream."); + } + return { + drawVerticalLine: () => { + return true; + }, + ...config, + border: (0, utils_1.makeBorderConfig)(config.border), + columns: makeColumnsConfig(config.columnCount, config.columns, config.columnDefault) + }; + }; + exports2.makeStreamConfig = makeStreamConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/mapDataUsingRowHeights.js +var require_mapDataUsingRowHeights = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/mapDataUsingRowHeights.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapDataUsingRowHeights = exports2.padCellVertically = void 0; + var utils_1 = require_utils7(); + var wrapCell_1 = require_wrapCell(); + var createEmptyStrings = (length) => { + return new Array(length).fill(""); + }; + var padCellVertically = (lines, rowHeight, verticalAlignment) => { + const availableLines = rowHeight - lines.length; + if (verticalAlignment === "top") { + return [...lines, ...createEmptyStrings(availableLines)]; + } + if (verticalAlignment === "bottom") { + return [...createEmptyStrings(availableLines), ...lines]; + } + return [ + ...createEmptyStrings(Math.floor(availableLines / 2)), + ...lines, + ...createEmptyStrings(Math.ceil(availableLines / 2)) + ]; + }; + exports2.padCellVertically = padCellVertically; + var mapDataUsingRowHeights = (unmappedRows, rowHeights, config) => { + const nColumns = unmappedRows[0].length; + const mappedRows = unmappedRows.map((unmappedRow, unmappedRowIndex) => { + const outputRowHeight = rowHeights[unmappedRowIndex]; + const outputRow = Array.from({ length: outputRowHeight }, () => { + return new Array(nColumns).fill(""); + }); + unmappedRow.forEach((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: unmappedRowIndex + }); + if (containingRange) { + containingRange.extractCellContent(unmappedRowIndex).forEach((cellLine, cellLineIndex) => { + outputRow[cellLineIndex][cellIndex] = cellLine; + }); + return; + } + const cellLines = (0, wrapCell_1.wrapCell)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord); + const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config.columns[cellIndex].verticalAlignment); + paddedCellLines.forEach((cellLine, cellLineIndex) => { + outputRow[cellLineIndex][cellIndex] = cellLine; + }); + }); + return outputRow; + }); + return (0, utils_1.flatten)(mappedRows); + }; + exports2.mapDataUsingRowHeights = mapDataUsingRowHeights; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/padTableData.js +var require_padTableData = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/padTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.padTableData = exports2.padString = void 0; + var padString = (input, paddingLeft, paddingRight) => { + return " ".repeat(paddingLeft) + input + " ".repeat(paddingRight); + }; + exports2.padString = padString; + var padTableData = (rows, config) => { + return rows.map((cells, rowIndex) => { + return cells.map((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }, { mapped: true }); + if (containingRange) { + return cell; + } + const { paddingLeft, paddingRight } = config.columns[cellIndex]; + return (0, exports2.padString)(cell, paddingLeft, paddingRight); + }); + }); + }; + exports2.padTableData = padTableData; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/stringifyTableData.js +var require_stringifyTableData = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/stringifyTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyTableData = void 0; + var utils_1 = require_utils7(); + var stringifyTableData = (rows) => { + return rows.map((cells) => { + return cells.map((cell) => { + return (0, utils_1.normalizeString)(String(cell)); + }); + }); + }; + exports2.stringifyTableData = stringifyTableData; + } +}); + +// ../node_modules/.pnpm/lodash.truncate@4.4.2/node_modules/lodash.truncate/index.js +var require_lodash = __commonJS({ + "../node_modules/.pnpm/lodash.truncate@4.4.2/node_modules/lodash.truncate/index.js"(exports2, module2) { + var DEFAULT_TRUNC_LENGTH = 30; + var DEFAULT_TRUNC_OMISSION = "..."; + var INFINITY = 1 / 0; + var MAX_INTEGER = 17976931348623157e292; + var NAN = 0 / 0; + var regexpTag = "[object RegExp]"; + var symbolTag = "[object Symbol]"; + var reTrim = /^\s+|\s+$/g; + var reFlags = /\w*$/; + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + var reIsBinary = /^0b[01]+$/i; + var reIsOctal = /^0o[0-7]+$/i; + var rsAstralRange = "\\ud800-\\udfff"; + var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23"; + var rsComboSymbolsRange = "\\u20d0-\\u20f0"; + var rsVarRange = "\\ufe0e\\ufe0f"; + var rsAstral = "[" + rsAstralRange + "]"; + var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]"; + var rsFitz = "\\ud83c[\\udffb-\\udfff]"; + var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; + var rsNonAstral = "[^" + rsAstralRange + "]"; + var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; + var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; + var rsZWJ = "\\u200d"; + var reOptMod = rsModifier + "?"; + var rsOptVar = "[" + rsVarRange + "]?"; + var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; + var rsSeq = rsOptVar + reOptMod + rsOptJoin; + var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; + var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); + var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboMarksRange + rsComboSymbolsRange + rsVarRange + "]"); + var freeParseInt = parseInt; + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports = freeModule && freeModule.exports === freeExports; + var freeProcess = moduleExports && freeGlobal.process; + var nodeUtil = function() { + try { + return freeProcess && freeProcess.binding("util"); + } catch (e) { + } + }(); + var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp; + var asciiSize = baseProperty("length"); + function asciiToArray(string) { + return string.split(""); + } + function baseProperty(key) { + return function(object) { + return object == null ? void 0 : object[key]; + }; + } + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + function hasUnicode(string) { + return reHasUnicode.test(string); + } + function stringSize(string) { + return hasUnicode(string) ? unicodeSize(string) : asciiSize(string); + } + function stringToArray(string) { + return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); + } + function unicodeSize(string) { + var result2 = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + result2++; + } + return result2; + } + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + var objectProto = Object.prototype; + var objectToString = objectProto.toString; + var Symbol2 = root.Symbol; + var symbolProto = Symbol2 ? Symbol2.prototype : void 0; + var symbolToString = symbolProto ? symbolProto.toString : void 0; + function baseIsRegExp(value) { + return isObject(value) && objectToString.call(value) == regexpTag; + } + function baseSlice(array, start, end) { + var index = -1, length = array.length; + if (start < 0) { + start = -start > length ? 0 : length + start; + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : end - start >>> 0; + start >>>= 0; + var result2 = Array(length); + while (++index < length) { + result2[index] = array[index + start]; + } + return result2; + } + function baseToString(value) { + if (typeof value == "string") { + return value; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ""; + } + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; + } + function castSlice(array, start, end) { + var length = array.length; + end = end === void 0 ? length : end; + return !start && end >= length ? array : baseSlice(array, start, end); + } + function isObject(value) { + var type = typeof value; + return !!value && (type == "object" || type == "function"); + } + function isObjectLike(value) { + return !!value && typeof value == "object"; + } + var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + function isSymbol(value) { + return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; + } + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = value < 0 ? -1 : 1; + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + function toInteger(value) { + var result2 = toFinite(value), remainder = result2 % 1; + return result2 === result2 ? remainder ? result2 - remainder : result2 : 0; + } + function toNumber(value) { + if (typeof value == "number") { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == "function" ? value.valueOf() : value; + value = isObject(other) ? other + "" : other; + } + if (typeof value != "string") { + return value === 0 ? value : +value; + } + value = value.replace(reTrim, ""); + var isBinary = reIsBinary.test(value); + return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; + } + function toString(value) { + return value == null ? "" : baseToString(value); + } + function truncate(string, options) { + var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION; + if (isObject(options)) { + var separator = "separator" in options ? options.separator : separator; + length = "length" in options ? toInteger(options.length) : length; + omission = "omission" in options ? baseToString(options.omission) : omission; + } + string = toString(string); + var strLength = string.length; + if (hasUnicode(string)) { + var strSymbols = stringToArray(string); + strLength = strSymbols.length; + } + if (length >= strLength) { + return string; + } + var end = length - stringSize(omission); + if (end < 1) { + return omission; + } + var result2 = strSymbols ? castSlice(strSymbols, 0, end).join("") : string.slice(0, end); + if (separator === void 0) { + return result2 + omission; + } + if (strSymbols) { + end += result2.length - end; + } + if (isRegExp(separator)) { + if (string.slice(end).search(separator)) { + var match, substring = result2; + if (!separator.global) { + separator = RegExp(separator.source, toString(reFlags.exec(separator)) + "g"); + } + separator.lastIndex = 0; + while (match = separator.exec(substring)) { + var newEnd = match.index; + } + result2 = result2.slice(0, newEnd === void 0 ? end : newEnd); + } + } else if (string.indexOf(baseToString(separator), end) != end) { + var index = result2.lastIndexOf(separator); + if (index > -1) { + result2 = result2.slice(0, index); + } + } + return result2 + omission; + } + module2.exports = truncate; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/truncateTableData.js +var require_truncateTableData = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/truncateTableData.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.truncateTableData = exports2.truncateString = void 0; + var lodash_truncate_1 = __importDefault4(require_lodash()); + var truncateString = (input, length) => { + return (0, lodash_truncate_1.default)(input, { + length, + omission: "\u2026" + }); + }; + exports2.truncateString = truncateString; + var truncateTableData = (rows, truncates) => { + return rows.map((cells) => { + return cells.map((cell, cellIndex) => { + return (0, exports2.truncateString)(cell, truncates[cellIndex]); + }); + }); + }; + exports2.truncateTableData = truncateTableData; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/createStream.js +var require_createStream = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/createStream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createStream = void 0; + var alignTableData_1 = require_alignTableData(); + var calculateRowHeights_1 = require_calculateRowHeights(); + var drawBorder_1 = require_drawBorder(); + var drawRow_1 = require_drawRow(); + var makeStreamConfig_1 = require_makeStreamConfig(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights(); + var padTableData_1 = require_padTableData(); + var stringifyTableData_1 = require_stringifyTableData(); + var truncateTableData_1 = require_truncateTableData(); + var utils_1 = require_utils7(); + var prepareData = (data, config) => { + let rows = (0, stringifyTableData_1.stringifyTableData)(data); + rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config)); + const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config); + rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config); + rows = (0, alignTableData_1.alignTableData)(rows, config); + rows = (0, padTableData_1.padTableData)(rows, config); + return rows; + }; + var create = (row, columnWidths, config) => { + const rows = prepareData([row], config); + const body = rows.map((literalRow) => { + return (0, drawRow_1.drawRow)(literalRow, config); + }).join(""); + let output; + output = ""; + output += (0, drawBorder_1.drawBorderTop)(columnWidths, config); + output += body; + output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config); + output = output.trimEnd(); + process.stdout.write(output); + }; + var append = (row, columnWidths, config) => { + const rows = prepareData([row], config); + const body = rows.map((literalRow) => { + return (0, drawRow_1.drawRow)(literalRow, config); + }).join(""); + let output = ""; + const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config); + if (bottom !== "\n") { + output = "\r\x1B[K"; + } + output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config); + output += body; + output += bottom; + output = output.trimEnd(); + process.stdout.write(output); + }; + var createStream = (userConfig) => { + const config = (0, makeStreamConfig_1.makeStreamConfig)(userConfig); + const columnWidths = Object.values(config.columns).map((column) => { + return column.width + column.paddingLeft + column.paddingRight; + }); + let empty = true; + return { + write: (row) => { + if (row.length !== config.columnCount) { + throw new Error("Row cell count does not match the config.columnCount."); + } + if (empty) { + empty = false; + create(row, columnWidths, config); + } else { + append(row, columnWidths, config); + } + } + }; + }; + exports2.createStream = createStream; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateOutputColumnWidths.js +var require_calculateOutputColumnWidths = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateOutputColumnWidths.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateOutputColumnWidths = void 0; + var calculateOutputColumnWidths = (config) => { + return config.columns.map((col) => { + return col.paddingLeft + col.width + col.paddingRight; + }); + }; + exports2.calculateOutputColumnWidths = calculateOutputColumnWidths; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawTable.js +var require_drawTable = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/drawTable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawTable = void 0; + var drawBorder_1 = require_drawBorder(); + var drawContent_1 = require_drawContent(); + var drawRow_1 = require_drawRow(); + var utils_1 = require_utils7(); + var drawTable = (rows, outputColumnWidths, rowHeights, config) => { + const { drawHorizontalLine, singleLine } = config; + const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => { + return group.map((row) => { + return (0, drawRow_1.drawRow)(row, { + ...config, + rowIndex: groupIndex + }); + }).join(""); + }); + return (0, drawContent_1.drawContent)({ + contents, + drawSeparator: (index, size) => { + if (index === 0 || index === size) { + return drawHorizontalLine(index, size); + } + return !singleLine && drawHorizontalLine(index, size); + }, + elementType: "row", + rowIndex: -1, + separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, { + ...config, + rowCount: contents.length + }), + spanningCellManager: config.spanningCellManager + }); + }; + exports2.drawTable = drawTable; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/injectHeaderConfig.js +var require_injectHeaderConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/injectHeaderConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.injectHeaderConfig = void 0; + var injectHeaderConfig = (rows, config) => { + var _a; + let spanningCellConfig = (_a = config.spanningCells) !== null && _a !== void 0 ? _a : []; + const headerConfig = config.header; + const adjustedRows = [...rows]; + if (headerConfig) { + spanningCellConfig = spanningCellConfig.map(({ row, ...rest }) => { + return { + ...rest, + row: row + 1 + }; + }); + const { content, ...headerStyles } = headerConfig; + spanningCellConfig.unshift({ + alignment: "center", + col: 0, + colSpan: rows[0].length, + paddingLeft: 1, + paddingRight: 1, + row: 0, + wrapWord: false, + ...headerStyles + }); + adjustedRows.unshift([content, ...Array.from({ length: rows[0].length - 1 }).fill("")]); + } + return [ + adjustedRows, + spanningCellConfig + ]; + }; + exports2.injectHeaderConfig = injectHeaderConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateMaximumColumnWidths.js +var require_calculateMaximumColumnWidths = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateMaximumColumnWidths.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var utils_1 = require_utils7(); + var calculateMaximumCellWidth = (cell) => { + return Math.max(...cell.split("\n").map(string_width_1.default)); + }; + exports2.calculateMaximumCellWidth = calculateMaximumCellWidth; + var calculateMaximumColumnWidths = (rows, spanningCellConfigs = []) => { + const columnWidths = new Array(rows[0].length).fill(0); + const rangeCoordinates = spanningCellConfigs.map(utils_1.calculateRangeCoordinate); + const isSpanningCell = (rowIndex, columnIndex) => { + return rangeCoordinates.some((rangeCoordinate) => { + return (0, utils_1.isCellInRange)({ + col: columnIndex, + row: rowIndex + }, rangeCoordinate); + }); + }; + rows.forEach((row, rowIndex) => { + row.forEach((cell, cellIndex) => { + if (isSpanningCell(rowIndex, cellIndex)) { + return; + } + columnWidths[cellIndex] = Math.max(columnWidths[cellIndex], (0, exports2.calculateMaximumCellWidth)(cell)); + }); + }); + return columnWidths; + }; + exports2.calculateMaximumColumnWidths = calculateMaximumColumnWidths; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignSpanningCell.js +var require_alignSpanningCell = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/alignSpanningCell.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignVerticalRangeContent = exports2.wrapRangeContent = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var alignString_1 = require_alignString(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights(); + var padTableData_1 = require_padTableData(); + var truncateTableData_1 = require_truncateTableData(); + var utils_1 = require_utils7(); + var wrapCell_1 = require_wrapCell(); + var wrapRangeContent = (rangeConfig, rangeWidth, context) => { + const { topLeft, paddingRight, paddingLeft, truncate, wrapWord, alignment } = rangeConfig; + const originalContent = context.rows[topLeft.row][topLeft.col]; + const contentWidth = rangeWidth - paddingLeft - paddingRight; + return (0, wrapCell_1.wrapCell)((0, truncateTableData_1.truncateString)(originalContent, truncate), contentWidth, wrapWord).map((line) => { + const alignedLine = (0, alignString_1.alignString)(line, contentWidth, alignment); + return (0, padTableData_1.padString)(alignedLine, paddingLeft, paddingRight); + }); + }; + exports2.wrapRangeContent = wrapRangeContent; + var alignVerticalRangeContent = (range, content, context) => { + const { rows, drawHorizontalLine, rowHeights } = context; + const { topLeft, bottomRight, verticalAlignment } = range; + if (rowHeights.length === 0) { + return []; + } + const totalCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, bottomRight.row + 1)); + const totalBorderHeight = bottomRight.row - topLeft.row; + const hiddenHorizontalBorderCount = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => { + return !drawHorizontalLine(horizontalBorderIndex, rows.length); + }).length; + const availableRangeHeight = totalCellHeight + totalBorderHeight - hiddenHorizontalBorderCount; + return (0, mapDataUsingRowHeights_1.padCellVertically)(content, availableRangeHeight, verticalAlignment).map((line) => { + if (line.length === 0) { + return " ".repeat((0, string_width_1.default)(content[0])); + } + return line; + }); + }; + exports2.alignVerticalRangeContent = alignVerticalRangeContent; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateSpanningCellWidth.js +var require_calculateSpanningCellWidth = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/calculateSpanningCellWidth.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateSpanningCellWidth = void 0; + var utils_1 = require_utils7(); + var calculateSpanningCellWidth = (rangeConfig, dependencies) => { + const { columnsConfig, drawVerticalLine } = dependencies; + const { topLeft, bottomRight } = rangeConfig; + const totalWidth = (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ width }) => { + return width; + })); + const totalPadding = topLeft.col === bottomRight.col ? columnsConfig[topLeft.col].paddingRight + columnsConfig[bottomRight.col].paddingLeft : (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ paddingLeft, paddingRight }) => { + return paddingLeft + paddingRight; + })); + const totalBorderWidths = bottomRight.col - topLeft.col; + const totalHiddenVerticalBorders = (0, utils_1.sequence)(topLeft.col + 1, bottomRight.col).filter((verticalBorderIndex) => { + return !drawVerticalLine(verticalBorderIndex, columnsConfig.length); + }).length; + return totalWidth + totalPadding + totalBorderWidths - totalHiddenVerticalBorders; + }; + exports2.calculateSpanningCellWidth = calculateSpanningCellWidth; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeRangeConfig.js +var require_makeRangeConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeRangeConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeRangeConfig = void 0; + var utils_1 = require_utils7(); + var makeRangeConfig = (spanningCellConfig, columnsConfig) => { + var _a; + const { topLeft, bottomRight } = (0, utils_1.calculateRangeCoordinate)(spanningCellConfig); + const cellConfig = { + ...columnsConfig[topLeft.col], + ...spanningCellConfig, + paddingRight: (_a = spanningCellConfig.paddingRight) !== null && _a !== void 0 ? _a : columnsConfig[bottomRight.col].paddingRight + }; + return { + ...cellConfig, + bottomRight, + topLeft + }; + }; + exports2.makeRangeConfig = makeRangeConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/spanningCellManager.js +var require_spanningCellManager = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/spanningCellManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createSpanningCellManager = void 0; + var alignSpanningCell_1 = require_alignSpanningCell(); + var calculateSpanningCellWidth_1 = require_calculateSpanningCellWidth(); + var makeRangeConfig_1 = require_makeRangeConfig(); + var utils_1 = require_utils7(); + var findRangeConfig = (cell, rangeConfigs) => { + return rangeConfigs.find((rangeCoordinate) => { + return (0, utils_1.isCellInRange)(cell, rangeCoordinate); + }); + }; + var getContainingRange = (rangeConfig, context) => { + const width = (0, calculateSpanningCellWidth_1.calculateSpanningCellWidth)(rangeConfig, context); + const wrappedContent = (0, alignSpanningCell_1.wrapRangeContent)(rangeConfig, width, context); + const alignedContent = (0, alignSpanningCell_1.alignVerticalRangeContent)(rangeConfig, wrappedContent, context); + const getCellContent = (rowIndex) => { + const { topLeft } = rangeConfig; + const { drawHorizontalLine, rowHeights } = context; + const totalWithinHorizontalBorderHeight = rowIndex - topLeft.row; + const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, rowIndex).filter((index) => { + return !(drawHorizontalLine === null || drawHorizontalLine === void 0 ? void 0 : drawHorizontalLine(index, rowHeights.length)); + }).length; + const offset = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, rowIndex)) + totalWithinHorizontalBorderHeight - totalHiddenHorizontalBorderHeight; + return alignedContent.slice(offset, offset + rowHeights[rowIndex]); + }; + const getBorderContent = (borderIndex) => { + const { topLeft } = rangeConfig; + const offset = (0, utils_1.sumArray)(context.rowHeights.slice(topLeft.row, borderIndex)) + (borderIndex - topLeft.row - 1); + return alignedContent[offset]; + }; + return { + ...rangeConfig, + extractBorderContent: getBorderContent, + extractCellContent: getCellContent, + height: wrappedContent.length, + width + }; + }; + var inSameRange = (cell1, cell2, ranges) => { + const range1 = findRangeConfig(cell1, ranges); + const range2 = findRangeConfig(cell2, ranges); + if (range1 && range2) { + return (0, utils_1.areCellEqual)(range1.topLeft, range2.topLeft); + } + return false; + }; + var hashRange = (range) => { + const { row, col } = range.topLeft; + return `${row}/${col}`; + }; + var createSpanningCellManager = (parameters) => { + const { spanningCellConfigs, columnsConfig } = parameters; + const ranges = spanningCellConfigs.map((config) => { + return (0, makeRangeConfig_1.makeRangeConfig)(config, columnsConfig); + }); + const rangeCache = {}; + let rowHeights = []; + return { + getContainingRange: (cell, options) => { + var _a; + const originalRow = (options === null || options === void 0 ? void 0 : options.mapped) ? (0, utils_1.findOriginalRowIndex)(rowHeights, cell.row) : cell.row; + const range = findRangeConfig({ + ...cell, + row: originalRow + }, ranges); + if (!range) { + return void 0; + } + if (rowHeights.length === 0) { + return getContainingRange(range, { + ...parameters, + rowHeights + }); + } + const hash = hashRange(range); + (_a = rangeCache[hash]) !== null && _a !== void 0 ? _a : rangeCache[hash] = getContainingRange(range, { + ...parameters, + rowHeights + }); + return rangeCache[hash]; + }, + inSameRange: (cell1, cell2) => { + return inSameRange(cell1, cell2, ranges); + }, + rowHeights, + setRowHeights: (_rowHeights) => { + rowHeights = _rowHeights; + } + }; + }; + exports2.createSpanningCellManager = createSpanningCellManager; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateSpanningCellConfig.js +var require_validateSpanningCellConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateSpanningCellConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateSpanningCellConfig = void 0; + var utils_1 = require_utils7(); + var inRange = (start, end, value) => { + return start <= value && value <= end; + }; + var validateSpanningCellConfig = (rows, configs) => { + const [nRow, nCol] = [rows.length, rows[0].length]; + configs.forEach((config, configIndex) => { + const { colSpan, rowSpan } = config; + if (colSpan === void 0 && rowSpan === void 0) { + throw new Error(`Expect at least colSpan or rowSpan is provided in config.spanningCells[${configIndex}]`); + } + if (colSpan !== void 0 && colSpan < 1) { + throw new Error(`Expect colSpan is not equal zero, instead got: ${colSpan} in config.spanningCells[${configIndex}]`); + } + if (rowSpan !== void 0 && rowSpan < 1) { + throw new Error(`Expect rowSpan is not equal zero, instead got: ${rowSpan} in config.spanningCells[${configIndex}]`); + } + }); + const rangeCoordinates = configs.map(utils_1.calculateRangeCoordinate); + rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => { + if (!inRange(0, nCol - 1, topLeft.col) || !inRange(0, nRow - 1, topLeft.row) || !inRange(0, nCol - 1, bottomRight.col) || !inRange(0, nRow - 1, bottomRight.row)) { + throw new Error(`Some cells in config.spanningCells[${rangeIndex}] are out of the table`); + } + }); + const configOccupy = Array.from({ length: nRow }, () => { + return Array.from({ length: nCol }); + }); + rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => { + (0, utils_1.sequence)(topLeft.row, bottomRight.row).forEach((row) => { + (0, utils_1.sequence)(topLeft.col, bottomRight.col).forEach((col) => { + if (configOccupy[row][col] !== void 0) { + throw new Error(`Spanning cells in config.spanningCells[${configOccupy[row][col]}] and config.spanningCells[${rangeIndex}] are overlap each other`); + } + configOccupy[row][col] = rangeIndex; + }); + }); + }); + }; + exports2.validateSpanningCellConfig = validateSpanningCellConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeTableConfig.js +var require_makeTableConfig = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/makeTableConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeTableConfig = void 0; + var calculateMaximumColumnWidths_1 = require_calculateMaximumColumnWidths(); + var spanningCellManager_1 = require_spanningCellManager(); + var utils_1 = require_utils7(); + var validateConfig_1 = require_validateConfig(); + var validateSpanningCellConfig_1 = require_validateSpanningCellConfig(); + var makeColumnsConfig = (rows, columns, columnDefault, spanningCellConfigs) => { + const columnWidths = (0, calculateMaximumColumnWidths_1.calculateMaximumColumnWidths)(rows, spanningCellConfigs); + return rows[0].map((_, columnIndex) => { + return { + alignment: "left", + paddingLeft: 1, + paddingRight: 1, + truncate: Number.POSITIVE_INFINITY, + verticalAlignment: "top", + width: columnWidths[columnIndex], + wrapWord: false, + ...columnDefault, + ...columns === null || columns === void 0 ? void 0 : columns[columnIndex] + }; + }); + }; + var makeTableConfig = (rows, config = {}, injectedSpanningCellConfig) => { + var _a, _b, _c, _d, _e; + (0, validateConfig_1.validateConfig)("config.json", config); + (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, (_a = config.spanningCells) !== null && _a !== void 0 ? _a : []); + const spanningCellConfigs = (_b = injectedSpanningCellConfig !== null && injectedSpanningCellConfig !== void 0 ? injectedSpanningCellConfig : config.spanningCells) !== null && _b !== void 0 ? _b : []; + const columnsConfig = makeColumnsConfig(rows, config.columns, config.columnDefault, spanningCellConfigs); + const drawVerticalLine = (_c = config.drawVerticalLine) !== null && _c !== void 0 ? _c : () => { + return true; + }; + const drawHorizontalLine = (_d = config.drawHorizontalLine) !== null && _d !== void 0 ? _d : () => { + return true; + }; + return { + ...config, + border: (0, utils_1.makeBorderConfig)(config.border), + columns: columnsConfig, + drawHorizontalLine, + drawVerticalLine, + singleLine: (_e = config.singleLine) !== null && _e !== void 0 ? _e : false, + spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({ + columnsConfig, + drawHorizontalLine, + drawVerticalLine, + rows, + spanningCellConfigs + }) + }; + }; + exports2.makeTableConfig = makeTableConfig; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateTableData.js +var require_validateTableData = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/validateTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateTableData = void 0; + var utils_1 = require_utils7(); + var validateTableData = (rows) => { + if (!Array.isArray(rows)) { + throw new TypeError("Table data must be an array."); + } + if (rows.length === 0) { + throw new Error("Table must define at least one row."); + } + if (rows[0].length === 0) { + throw new Error("Table must define at least one column."); + } + const columnNumber = rows[0].length; + for (const row of rows) { + if (!Array.isArray(row)) { + throw new TypeError("Table row data must be an array."); + } + if (row.length !== columnNumber) { + throw new Error("Table must have a consistent number of cells."); + } + for (const cell of row) { + if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test((0, utils_1.normalizeString)(String(cell)))) { + throw new Error("Table data must not contain control characters."); + } + } + } + }; + exports2.validateTableData = validateTableData; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/table.js +var require_table = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/table.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.table = void 0; + var alignTableData_1 = require_alignTableData(); + var calculateOutputColumnWidths_1 = require_calculateOutputColumnWidths(); + var calculateRowHeights_1 = require_calculateRowHeights(); + var drawTable_1 = require_drawTable(); + var injectHeaderConfig_1 = require_injectHeaderConfig(); + var makeTableConfig_1 = require_makeTableConfig(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights(); + var padTableData_1 = require_padTableData(); + var stringifyTableData_1 = require_stringifyTableData(); + var truncateTableData_1 = require_truncateTableData(); + var utils_1 = require_utils7(); + var validateTableData_1 = require_validateTableData(); + var table = (data, userConfig = {}) => { + (0, validateTableData_1.validateTableData)(data); + let rows = (0, stringifyTableData_1.stringifyTableData)(data); + const [injectedRows, injectedSpanningCellConfig] = (0, injectHeaderConfig_1.injectHeaderConfig)(rows, userConfig); + const config = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig); + rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config)); + const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config); + config.spanningCellManager.setRowHeights(rowHeights); + rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config); + rows = (0, alignTableData_1.alignTableData)(rows, config); + rows = (0, padTableData_1.padTableData)(rows, config); + const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config); + return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config); + }; + exports2.table = table; + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/types/api.js +var require_api = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/types/api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/index.js +var require_src2 = __commonJS({ + "../node_modules/.pnpm/table@6.8.1/node_modules/table/dist/src/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getBorderCharacters = exports2.createStream = exports2.table = void 0; + var createStream_1 = require_createStream(); + Object.defineProperty(exports2, "createStream", { enumerable: true, get: function() { + return createStream_1.createStream; + } }); + var getBorderCharacters_1 = require_getBorderCharacters(); + Object.defineProperty(exports2, "getBorderCharacters", { enumerable: true, get: function() { + return getBorderCharacters_1.getBorderCharacters; + } }); + var table_1 = require_table(); + Object.defineProperty(exports2, "table", { enumerable: true, get: function() { + return table_1.table; + } }); + __exportStar4(require_api(), exports2); + } +}); + +// ../node_modules/.pnpm/render-help@1.0.3/node_modules/render-help/lib/index.js +var require_lib34 = __commonJS({ + "../node_modules/.pnpm/render-help@1.0.3/node_modules/render-help/lib/index.js"(exports2, module2) { + "use strict"; + var table_1 = require_src2(); + var NO_BORDERS = { + topBody: "", + topJoin: "", + topLeft: "", + topRight: "", + bottomBody: "", + bottomJoin: "", + bottomLeft: "", + bottomRight: "", + bodyJoin: "", + bodyLeft: "", + bodyRight: "", + joinBody: "", + joinLeft: "", + joinRight: "" + }; + var TABLE_OPTIONS = { + border: NO_BORDERS, + singleLine: true + }; + var FIRST_COLUMN = { paddingLeft: 2, paddingRight: 0 }; + var SHORT_OPTION_COLUMN = { alignment: "right" }; + var LONG_OPTION_COLUMN = { paddingLeft: 1, paddingRight: 2 }; + var DESCRIPTION_COLUMN = { + paddingLeft: 0, + paddingRight: 0, + wrapWord: true + }; + function renderDescriptionList(descriptionItems, width) { + const data = descriptionItems.sort((item1, item2) => item1.name.localeCompare(item2.name)).map(({ shortAlias, name, description }) => [shortAlias && `${shortAlias},` || " ", name, description || ""]); + const firstColumnMaxWidth = Math.max(getColumnMaxWidth(data, 0), 3); + const nameColumnMaxWidth = Math.max(getColumnMaxWidth(data, 1), 19); + const descriptionColumnWidth = Math.max(width - (FIRST_COLUMN.paddingLeft + firstColumnMaxWidth + FIRST_COLUMN.paddingRight + LONG_OPTION_COLUMN.paddingLeft + nameColumnMaxWidth + LONG_OPTION_COLUMN.paddingRight + DESCRIPTION_COLUMN.paddingLeft + DESCRIPTION_COLUMN.paddingRight), 2); + return multiTrim((0, table_1.table)(data, Object.assign(Object.assign({}, TABLE_OPTIONS), { columns: { + 0: Object.assign(Object.assign({ width: firstColumnMaxWidth }, SHORT_OPTION_COLUMN), FIRST_COLUMN), + 1: Object.assign({ width: nameColumnMaxWidth }, LONG_OPTION_COLUMN), + 2: Object.assign({ width: descriptionColumnWidth }, DESCRIPTION_COLUMN) + } }))); + } + function multiTrim(str) { + return str.split("\n").map((line) => line.trimRight()).filter(Boolean).join("\n"); + } + function getColumnMaxWidth(data, columnNumber) { + return data.reduce((maxWidth, row) => Math.max(maxWidth, row[columnNumber].length), 0); + } + module2.exports = function renderHelp(config) { + var _a, _b; + const width = (_b = (_a = config.width) !== null && _a !== void 0 ? _a : process.stdout.columns) !== null && _b !== void 0 ? _b : 80; + let outputSections = []; + if (config.usages.length > 0) { + const [firstUsage, ...restUsages] = config.usages; + let usageOutput = `Usage: ${firstUsage}`; + for (let usage of restUsages) { + usageOutput += ` + ${usage}`; + } + outputSections.push(usageOutput); + } + if (config.aliases && config.aliases.length) { + outputSections.push(`${config.aliases.length === 1 ? "Alias" : "Aliases"}: ${config.aliases.join(", ")}`); + } + if (config.description) + outputSections.push(`${config.description}`); + if (config.descriptionLists) { + for (let { title, list } of config.descriptionLists) { + outputSections.push(`${title}: +` + renderDescriptionList(list, width)); + } + } + if (config.url) { + outputSections.push(`Visit ${config.url} for documentation about this command.`); + } + return outputSections.join("\n\n"); + }; + } +}); + +// ../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry_operation.js +var require_retry_operation = __commonJS({ + "../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry_operation.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var RetryOperation = class { + constructor(timeouts, options) { + var _a; + this._originalTimeouts = [...timeouts]; + this._timeouts = timeouts; + this._maxRetryTime = (_a = options === null || options === void 0 ? void 0 : options.maxRetryTime) !== null && _a !== void 0 ? _a : Infinity; + this._fn = null; + this._errors = []; + this._attempts = 1; + this._operationStart = null; + this._timer = null; + } + reset() { + this._attempts = 1; + this._timeouts = this._originalTimeouts; + } + stop() { + if (this._timer) { + clearTimeout(this._timer); + } + this._timeouts = []; + } + retry(err) { + if (!err) { + return false; + } + var currentTime = (/* @__PURE__ */ new Date()).getTime(); + if (err && currentTime - this._operationStart >= this._maxRetryTime) { + this._errors.unshift(new Error("RetryOperation timeout occurred")); + return false; + } + this._errors.push(err); + var timeout = this._timeouts.shift(); + if (timeout === void 0) { + return false; + } + this._timer = setTimeout(() => this._fn(++this._attempts), timeout); + return timeout; + } + attempt(fn2) { + this._fn = fn2; + this._operationStart = (/* @__PURE__ */ new Date()).getTime(); + this._fn(this._attempts); + } + errors() { + return this._errors; + } + attempts() { + return this._attempts; + } + mainError() { + if (this._errors.length === 0) { + return null; + } + var counts = {}; + var mainError = null; + var mainErrorCount = 0; + for (var i = 0; i < this._errors.length; i++) { + var error = this._errors[i]; + var message2 = error.message; + var count = (counts[message2] || 0) + 1; + counts[message2] = count; + if (count >= mainErrorCount) { + mainError = error; + mainErrorCount = count; + } + } + return mainError; + } + }; + exports2.default = RetryOperation; + } +}); + +// ../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry.js +var require_retry2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createTimeout = exports2.createTimeouts = exports2.operation = void 0; + var retry_operation_1 = require_retry_operation(); + function operation(options) { + var timeouts = createTimeouts(options); + return new retry_operation_1.default(timeouts, { + maxRetryTime: options && options.maxRetryTime + }); + } + exports2.operation = operation; + function createTimeouts(options) { + var opts = { + retries: 10, + factor: 2, + minTimeout: 1 * 1e3, + maxTimeout: Infinity, + randomize: false, + ...options + }; + if (opts.minTimeout > opts.maxTimeout) { + throw new Error("minTimeout is greater than maxTimeout"); + } + var timeouts = []; + for (var i = 0; i < opts.retries; i++) { + timeouts.push(createTimeout(i, opts)); + } + timeouts.sort(function(a, b) { + return a - b; + }); + return timeouts; + } + exports2.createTimeouts = createTimeouts; + function createTimeout(attempt, opts) { + var random = opts.randomize ? Math.random() + 1 : 1; + var timeout = Math.round(random * opts.minTimeout * Math.pow(opts.factor, attempt)); + timeout = Math.min(timeout, opts.maxTimeout); + return timeout; + } + exports2.createTimeout = createTimeout; + } +}); + +// ../node_modules/.pnpm/data-uri-to-buffer@3.0.1/node_modules/data-uri-to-buffer/dist/src/index.js +var require_src3 = __commonJS({ + "../node_modules/.pnpm/data-uri-to-buffer@3.0.1/node_modules/data-uri-to-buffer/dist/src/index.js"(exports2, module2) { + "use strict"; + function dataUriToBuffer(uri) { + if (!/^data:/i.test(uri)) { + throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")'); + } + uri = uri.replace(/\r?\n/g, ""); + const firstComma = uri.indexOf(","); + if (firstComma === -1 || firstComma <= 4) { + throw new TypeError("malformed data: URI"); + } + const meta = uri.substring(5, firstComma).split(";"); + let charset = ""; + let base64 = false; + const type = meta[0] || "text/plain"; + let typeFull = type; + for (let i = 1; i < meta.length; i++) { + if (meta[i] === "base64") { + base64 = true; + } else { + typeFull += `;${meta[i]}`; + if (meta[i].indexOf("charset=") === 0) { + charset = meta[i].substring(8); + } + } + } + if (!meta[0] && !charset.length) { + typeFull += ";charset=US-ASCII"; + charset = "US-ASCII"; + } + const encoding = base64 ? "base64" : "ascii"; + const data = unescape(uri.substring(firstComma + 1)); + const buffer = Buffer.from(data, encoding); + buffer.type = type; + buffer.typeFull = typeFull; + buffer.charset = charset; + return buffer; + } + module2.exports = dataUriToBuffer; + } +}); + +// ../node_modules/.pnpm/fetch-blob@2.1.2/node_modules/fetch-blob/index.js +var require_fetch_blob = __commonJS({ + "../node_modules/.pnpm/fetch-blob@2.1.2/node_modules/fetch-blob/index.js"(exports2, module2) { + var { Readable } = require("stream"); + var wm = /* @__PURE__ */ new WeakMap(); + async function* read(parts) { + for (const part of parts) { + if ("stream" in part) { + yield* part.stream(); + } else { + yield part; + } + } + } + var Blob = class { + /** + * The Blob() constructor returns a new Blob object. The content + * of the blob consists of the concatenation of the values given + * in the parameter array. + * + * @param {(ArrayBufferLike | ArrayBufferView | Blob | Buffer | string)[]} blobParts + * @param {{ type?: string }} [options] + */ + constructor(blobParts = [], options = {}) { + let size = 0; + const parts = blobParts.map((element) => { + let buffer; + if (element instanceof Buffer) { + buffer = element; + } else if (ArrayBuffer.isView(element)) { + buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength); + } else if (element instanceof ArrayBuffer) { + buffer = Buffer.from(element); + } else if (element instanceof Blob) { + buffer = element; + } else { + buffer = Buffer.from(typeof element === "string" ? element : String(element)); + } + size += buffer.length || buffer.size || 0; + return buffer; + }); + const type = options.type === void 0 ? "" : String(options.type).toLowerCase(); + wm.set(this, { + type: /[^\u0020-\u007E]/.test(type) ? "" : type, + size, + parts + }); + } + /** + * The Blob interface's size property returns the + * size of the Blob in bytes. + */ + get size() { + return wm.get(this).size; + } + /** + * The type property of a Blob object returns the MIME type of the file. + */ + get type() { + return wm.get(this).type; + } + /** + * The text() method in the Blob interface returns a Promise + * that resolves with a string containing the contents of + * the blob, interpreted as UTF-8. + * + * @return {Promise} + */ + async text() { + return Buffer.from(await this.arrayBuffer()).toString(); + } + /** + * The arrayBuffer() method in the Blob interface returns a + * Promise that resolves with the contents of the blob as + * binary data contained in an ArrayBuffer. + * + * @return {Promise} + */ + async arrayBuffer() { + const data = new Uint8Array(this.size); + let offset = 0; + for await (const chunk of this.stream()) { + data.set(chunk, offset); + offset += chunk.length; + } + return data.buffer; + } + /** + * The Blob interface's stream() method is difference from native + * and uses node streams instead of whatwg streams. + * + * @returns {Readable} Node readable stream + */ + stream() { + return Readable.from(read(wm.get(this).parts)); + } + /** + * The Blob interface's slice() method creates and returns a + * new Blob object which contains data from a subset of the + * blob on which it's called. + * + * @param {number} [start] + * @param {number} [end] + * @param {string} [type] + */ + slice(start = 0, end = this.size, type = "") { + const { size } = this; + let relativeStart = start < 0 ? Math.max(size + start, 0) : Math.min(start, size); + let relativeEnd = end < 0 ? Math.max(size + end, 0) : Math.min(end, size); + const span = Math.max(relativeEnd - relativeStart, 0); + const parts = wm.get(this).parts.values(); + const blobParts = []; + let added = 0; + for (const part of parts) { + const size2 = ArrayBuffer.isView(part) ? part.byteLength : part.size; + if (relativeStart && size2 <= relativeStart) { + relativeStart -= size2; + relativeEnd -= size2; + } else { + const chunk = part.slice(relativeStart, Math.min(size2, relativeEnd)); + blobParts.push(chunk); + added += ArrayBuffer.isView(chunk) ? chunk.byteLength : chunk.size; + relativeStart = 0; + if (added >= span) { + break; + } + } + } + const blob = new Blob([], { type: String(type).toLowerCase() }); + Object.assign(wm.get(blob), { size: span, parts: blobParts }); + return blob; + } + get [Symbol.toStringTag]() { + return "Blob"; + } + static [Symbol.hasInstance](object) { + return object && typeof object === "object" && typeof object.stream === "function" && object.stream.length === 0 && typeof object.constructor === "function" && /^(Blob|File)$/.test(object[Symbol.toStringTag]); + } + }; + Object.defineProperties(Blob.prototype, { + size: { enumerable: true }, + type: { enumerable: true }, + slice: { enumerable: true } + }); + module2.exports = Blob; + } +}); + +// ../node_modules/.pnpm/@pnpm+node-fetch@1.0.0/node_modules/@pnpm/node-fetch/dist/index.cjs +var require_dist6 = __commonJS({ + "../node_modules/.pnpm/@pnpm+node-fetch@1.0.0/node_modules/@pnpm/node-fetch/dist/index.cjs"(exports2, module2) { + "use strict"; + exports2 = module2.exports = fetch; + var http = require("http"); + var https = require("https"); + var zlib = require("zlib"); + var Stream = require("stream"); + var dataUriToBuffer = require_src3(); + var util = require("util"); + var Blob = require_fetch_blob(); + var crypto6 = require("crypto"); + var url = require("url"); + var FetchBaseError = class extends Error { + constructor(message2, type) { + super(message2); + Error.captureStackTrace(this, this.constructor); + this.type = type; + } + get name() { + return this.constructor.name; + } + get [Symbol.toStringTag]() { + return this.constructor.name; + } + }; + var FetchError = class extends FetchBaseError { + /** + * @param {string} message - Error message for human + * @param {string} [type] - Error type for machine + * @param {SystemError} [systemError] - For Node.js system error + */ + constructor(message2, type, systemError) { + super(message2, type); + if (systemError) { + this.code = this.errno = systemError.code; + this.erroredSysCall = systemError.syscall; + } + } + }; + var NAME = Symbol.toStringTag; + var isURLSearchParameters = (object) => { + return typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && typeof object.sort === "function" && object[NAME] === "URLSearchParams"; + }; + var isBlob = (object) => { + return typeof object === "object" && typeof object.arrayBuffer === "function" && typeof object.type === "string" && typeof object.stream === "function" && typeof object.constructor === "function" && /^(Blob|File)$/.test(object[NAME]); + }; + function isFormData(object) { + return typeof object === "object" && typeof object.append === "function" && typeof object.set === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.delete === "function" && typeof object.keys === "function" && typeof object.values === "function" && typeof object.entries === "function" && typeof object.constructor === "function" && object[NAME] === "FormData"; + } + var isAbortSignal = (object) => { + return typeof object === "object" && object[NAME] === "AbortSignal"; + }; + var carriage = "\r\n"; + var dashes = "-".repeat(2); + var carriageLength = Buffer.byteLength(carriage); + var getFooter = (boundary) => `${dashes}${boundary}${dashes}${carriage.repeat(2)}`; + function getHeader(boundary, name, field) { + let header = ""; + header += `${dashes}${boundary}${carriage}`; + header += `Content-Disposition: form-data; name="${name}"`; + if (isBlob(field)) { + header += `; filename="${field.name}"${carriage}`; + header += `Content-Type: ${field.type || "application/octet-stream"}`; + } + return `${header}${carriage.repeat(2)}`; + } + var getBoundary = () => crypto6.randomBytes(8).toString("hex"); + async function* formDataIterator(form, boundary) { + for (const [name, value] of form) { + yield getHeader(boundary, name, value); + if (isBlob(value)) { + yield* value.stream(); + } else { + yield value; + } + yield carriage; + } + yield getFooter(boundary); + } + function getFormDataLength(form, boundary) { + let length = 0; + for (const [name, value] of form) { + length += Buffer.byteLength(getHeader(boundary, name, value)); + if (isBlob(value)) { + length += value.size; + } else { + length += Buffer.byteLength(String(value)); + } + length += carriageLength; + } + length += Buffer.byteLength(getFooter(boundary)); + return length; + } + var INTERNALS$2 = Symbol("Body internals"); + var Body = class { + constructor(body, { + size = 0 + } = {}) { + let boundary = null; + if (body === null) { + body = null; + } else if (isURLSearchParameters(body)) { + body = Buffer.from(body.toString()); + } else if (isBlob(body)) + ; + else if (Buffer.isBuffer(body)) + ; + else if (util.types.isAnyArrayBuffer(body)) { + body = Buffer.from(body); + } else if (ArrayBuffer.isView(body)) { + body = Buffer.from(body.buffer, body.byteOffset, body.byteLength); + } else if (body instanceof Stream) + ; + else if (isFormData(body)) { + boundary = `NodeFetchFormDataBoundary${getBoundary()}`; + body = Stream.Readable.from(formDataIterator(body, boundary)); + } else { + body = Buffer.from(String(body)); + } + this[INTERNALS$2] = { + body, + boundary, + disturbed: false, + error: null + }; + this.size = size; + if (body instanceof Stream) { + body.on("error", (err) => { + const error = err instanceof FetchBaseError ? err : new FetchError(`Invalid response body while trying to fetch ${this.url}: ${err.message}`, "system", err); + this[INTERNALS$2].error = error; + }); + } + } + get body() { + return this[INTERNALS$2].body; + } + get bodyUsed() { + return this[INTERNALS$2].disturbed; + } + /** + * Decode response as ArrayBuffer + * + * @return Promise + */ + async arrayBuffer() { + const { buffer, byteOffset, byteLength } = await consumeBody(this); + return buffer.slice(byteOffset, byteOffset + byteLength); + } + /** + * Return raw response as Blob + * + * @return Promise + */ + async blob() { + const ct = this.headers && this.headers.get("content-type") || this[INTERNALS$2].body && this[INTERNALS$2].body.type || ""; + const buf = await this.buffer(); + return new Blob([buf], { + type: ct + }); + } + /** + * Decode response as json + * + * @return Promise + */ + async json() { + const buffer = await consumeBody(this); + return JSON.parse(buffer.toString()); + } + /** + * Decode response as text + * + * @return Promise + */ + async text() { + const buffer = await consumeBody(this); + return buffer.toString(); + } + /** + * Decode response as buffer (non-spec api) + * + * @return Promise + */ + buffer() { + return consumeBody(this); + } + }; + Object.defineProperties(Body.prototype, { + body: { enumerable: true }, + bodyUsed: { enumerable: true }, + arrayBuffer: { enumerable: true }, + blob: { enumerable: true }, + json: { enumerable: true }, + text: { enumerable: true } + }); + async function consumeBody(data) { + if (data[INTERNALS$2].disturbed) { + throw new TypeError(`body used already for: ${data.url}`); + } + data[INTERNALS$2].disturbed = true; + if (data[INTERNALS$2].error) { + throw data[INTERNALS$2].error; + } + let { body } = data; + if (body === null) { + return Buffer.alloc(0); + } + if (isBlob(body)) { + body = body.stream(); + } + if (Buffer.isBuffer(body)) { + return body; + } + if (!(body instanceof Stream)) { + return Buffer.alloc(0); + } + const accum = []; + let accumBytes = 0; + try { + for await (const chunk of body) { + if (data.size > 0 && accumBytes + chunk.length > data.size) { + const err = new FetchError(`content size at ${data.url} over limit: ${data.size}`, "max-size"); + body.destroy(err); + throw err; + } + accumBytes += chunk.length; + accum.push(chunk); + } + } catch (error) { + if (error instanceof FetchBaseError) { + throw error; + } else { + throw new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`, "system", error); + } + } + if (body.readableEnded === true || body._readableState.ended === true) { + try { + if (accum.every((c) => typeof c === "string")) { + return Buffer.from(accum.join("")); + } + return Buffer.concat(accum, accumBytes); + } catch (error) { + throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`, "system", error); + } + } else { + throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`); + } + } + var clone = (instance, highWaterMark) => { + let p1; + let p2; + let { body } = instance; + if (instance.bodyUsed) { + throw new Error("cannot clone body after it is used"); + } + if (body instanceof Stream && typeof body.getBoundary !== "function") { + p1 = new Stream.PassThrough({ highWaterMark }); + p2 = new Stream.PassThrough({ highWaterMark }); + body.pipe(p1); + body.pipe(p2); + instance[INTERNALS$2].body = p1; + body = p2; + } + return body; + }; + var extractContentType = (body, request) => { + if (body === null) { + return null; + } + if (typeof body === "string") { + return "text/plain;charset=UTF-8"; + } + if (isURLSearchParameters(body)) { + return "application/x-www-form-urlencoded;charset=UTF-8"; + } + if (isBlob(body)) { + return body.type || null; + } + if (Buffer.isBuffer(body) || util.types.isAnyArrayBuffer(body) || ArrayBuffer.isView(body)) { + return null; + } + if (body && typeof body.getBoundary === "function") { + return `multipart/form-data;boundary=${body.getBoundary()}`; + } + if (isFormData(body)) { + return `multipart/form-data; boundary=${request[INTERNALS$2].boundary}`; + } + if (body instanceof Stream) { + return null; + } + return "text/plain;charset=UTF-8"; + }; + var getTotalBytes = (request) => { + const { body } = request; + if (body === null) { + return 0; + } + if (isBlob(body)) { + return body.size; + } + if (Buffer.isBuffer(body)) { + return body.length; + } + if (body && typeof body.getLengthSync === "function") { + return body.hasKnownLength && body.hasKnownLength() ? body.getLengthSync() : null; + } + if (isFormData(body)) { + return getFormDataLength(request[INTERNALS$2].boundary); + } + return null; + }; + var writeToStream = (dest, { body }) => { + if (body === null) { + dest.end(); + } else if (isBlob(body)) { + body.stream().pipe(dest); + } else if (Buffer.isBuffer(body)) { + dest.write(body); + dest.end(); + } else { + body.pipe(dest); + } + }; + var validateHeaderName = typeof http.validateHeaderName === "function" ? http.validateHeaderName : (name) => { + if (!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)) { + const err = new TypeError(`Header name must be a valid HTTP token [${name}]`); + Object.defineProperty(err, "code", { value: "ERR_INVALID_HTTP_TOKEN" }); + throw err; + } + }; + var validateHeaderValue = typeof http.validateHeaderValue === "function" ? http.validateHeaderValue : (name, value) => { + if (/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)) { + const err = new TypeError(`Invalid character in header content ["${name}"]`); + Object.defineProperty(err, "code", { value: "ERR_INVALID_CHAR" }); + throw err; + } + }; + var Headers = class extends URLSearchParams { + /** + * Headers class + * + * @constructor + * @param {HeadersInit} [init] - Response headers + */ + constructor(init) { + let result2 = []; + if (init instanceof Headers) { + const raw = init.raw(); + for (const [name, values] of Object.entries(raw)) { + result2.push(...values.map((value) => [name, value])); + } + } else if (init == null) + ; + else if (typeof init === "object" && !util.types.isBoxedPrimitive(init)) { + const method = init[Symbol.iterator]; + if (method == null) { + result2.push(...Object.entries(init)); + } else { + if (typeof method !== "function") { + throw new TypeError("Header pairs must be iterable"); + } + result2 = [...init].map((pair) => { + if (typeof pair !== "object" || util.types.isBoxedPrimitive(pair)) { + throw new TypeError("Each header pair must be an iterable object"); + } + return [...pair]; + }).map((pair) => { + if (pair.length !== 2) { + throw new TypeError("Each header pair must be a name/value tuple"); + } + return [...pair]; + }); + } + } else { + throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)"); + } + result2 = result2.length > 0 ? result2.map(([name, value]) => { + validateHeaderName(name); + validateHeaderValue(name, String(value)); + return [String(name).toLowerCase(), String(value)]; + }) : void 0; + super(result2); + return new Proxy(this, { + get(target, p, receiver) { + switch (p) { + case "append": + case "set": + return (name, value) => { + validateHeaderName(name); + validateHeaderValue(name, String(value)); + return URLSearchParams.prototype[p].call( + target, + String(name).toLowerCase(), + String(value) + ); + }; + case "delete": + case "has": + case "getAll": + return (name) => { + validateHeaderName(name); + return URLSearchParams.prototype[p].call( + target, + String(name).toLowerCase() + ); + }; + case "keys": + return () => { + target.sort(); + return new Set(URLSearchParams.prototype.keys.call(target)).keys(); + }; + default: + return Reflect.get(target, p, receiver); + } + } + /* c8 ignore next */ + }); + } + get [Symbol.toStringTag]() { + return this.constructor.name; + } + toString() { + return Object.prototype.toString.call(this); + } + get(name) { + const values = this.getAll(name); + if (values.length === 0) { + return null; + } + let value = values.join(", "); + if (/^content-encoding$/i.test(name)) { + value = value.toLowerCase(); + } + return value; + } + forEach(callback) { + for (const name of this.keys()) { + callback(this.get(name), name); + } + } + *values() { + for (const name of this.keys()) { + yield this.get(name); + } + } + /** + * @type {() => IterableIterator<[string, string]>} + */ + *entries() { + for (const name of this.keys()) { + yield [name, this.get(name)]; + } + } + [Symbol.iterator]() { + return this.entries(); + } + /** + * Node-fetch non-spec method + * returning all headers and their values as array + * @returns {Record} + */ + raw() { + return [...this.keys()].reduce((result2, key) => { + result2[key] = this.getAll(key); + return result2; + }, {}); + } + /** + * For better console.log(headers) and also to convert Headers into Node.js Request compatible format + */ + [Symbol.for("nodejs.util.inspect.custom")]() { + return [...this.keys()].reduce((result2, key) => { + const values = this.getAll(key); + if (key === "host") { + result2[key] = values[0]; + } else { + result2[key] = values.length > 1 ? values : values[0]; + } + return result2; + }, {}); + } + }; + Object.defineProperties( + Headers.prototype, + ["get", "entries", "forEach", "values"].reduce((result2, property) => { + result2[property] = { enumerable: true }; + return result2; + }, {}) + ); + function fromRawHeaders(headers = []) { + return new Headers( + headers.reduce((result2, value, index, array) => { + if (index % 2 === 0) { + result2.push(array.slice(index, index + 2)); + } + return result2; + }, []).filter(([name, value]) => { + try { + validateHeaderName(name); + validateHeaderValue(name, String(value)); + return true; + } catch { + return false; + } + }) + ); + } + var redirectStatus = /* @__PURE__ */ new Set([301, 302, 303, 307, 308]); + var isRedirect = (code) => { + return redirectStatus.has(code); + }; + var INTERNALS$1 = Symbol("Response internals"); + var Response = class extends Body { + constructor(body = null, options = {}) { + super(body, options); + const status = options.status || 200; + const headers = new Headers(options.headers); + if (body !== null && !headers.has("Content-Type")) { + const contentType = extractContentType(body); + if (contentType) { + headers.append("Content-Type", contentType); + } + } + this[INTERNALS$1] = { + url: options.url, + status, + statusText: options.statusText || "", + headers, + counter: options.counter, + highWaterMark: options.highWaterMark + }; + } + get url() { + return this[INTERNALS$1].url || ""; + } + get status() { + return this[INTERNALS$1].status; + } + /** + * Convenience property representing if the request ended normally + */ + get ok() { + return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; + } + get redirected() { + return this[INTERNALS$1].counter > 0; + } + get statusText() { + return this[INTERNALS$1].statusText; + } + get headers() { + return this[INTERNALS$1].headers; + } + get highWaterMark() { + return this[INTERNALS$1].highWaterMark; + } + /** + * Clone this response + * + * @return Response + */ + clone() { + return new Response(clone(this, this.highWaterMark), { + url: this.url, + status: this.status, + statusText: this.statusText, + headers: this.headers, + ok: this.ok, + redirected: this.redirected, + size: this.size + }); + } + /** + * @param {string} url The URL that the new response is to originate from. + * @param {number} status An optional status code for the response (e.g., 302.) + * @returns {Response} A Response object. + */ + static redirect(url2, status = 302) { + if (!isRedirect(status)) { + throw new RangeError('Failed to execute "redirect" on "response": Invalid status code'); + } + return new Response(null, { + headers: { + location: new URL(url2).toString() + }, + status + }); + } + get [Symbol.toStringTag]() { + return "Response"; + } + }; + Object.defineProperties(Response.prototype, { + url: { enumerable: true }, + status: { enumerable: true }, + ok: { enumerable: true }, + redirected: { enumerable: true }, + statusText: { enumerable: true }, + headers: { enumerable: true }, + clone: { enumerable: true } + }); + var getSearch = (parsedURL) => { + if (parsedURL.search) { + return parsedURL.search; + } + const lastOffset = parsedURL.href.length - 1; + const hash = parsedURL.hash || (parsedURL.href[lastOffset] === "#" ? "#" : ""); + return parsedURL.href[lastOffset - hash.length] === "?" ? "?" : ""; + }; + var INTERNALS = Symbol("Request internals"); + var isRequest = (object) => { + return typeof object === "object" && typeof object[INTERNALS] === "object"; + }; + var Request = class extends Body { + constructor(input, init = {}) { + let parsedURL; + if (isRequest(input)) { + parsedURL = new URL(input.url); + } else { + parsedURL = new URL(input); + input = {}; + } + let method = init.method || input.method || "GET"; + method = method.toUpperCase(); + if ((init.body != null || isRequest(input)) && input.body !== null && (method === "GET" || method === "HEAD")) { + throw new TypeError("Request with GET/HEAD method cannot have body"); + } + const inputBody = init.body ? init.body : isRequest(input) && input.body !== null ? clone(input) : null; + super(inputBody, { + size: init.size || input.size || 0 + }); + const headers = new Headers(init.headers || input.headers || {}); + if (inputBody !== null && !headers.has("Content-Type")) { + const contentType = extractContentType(inputBody, this); + if (contentType) { + headers.append("Content-Type", contentType); + } + } + let signal = isRequest(input) ? input.signal : null; + if ("signal" in init) { + signal = init.signal; + } + if (signal !== null && !isAbortSignal(signal)) { + throw new TypeError("Expected signal to be an instanceof AbortSignal"); + } + this[INTERNALS] = { + method, + redirect: init.redirect || input.redirect || "follow", + headers, + parsedURL, + signal + }; + this.follow = init.follow === void 0 ? input.follow === void 0 ? 20 : input.follow : init.follow; + this.compress = init.compress === void 0 ? input.compress === void 0 ? true : input.compress : init.compress; + this.counter = init.counter || input.counter || 0; + this.agent = init.agent || input.agent; + this.highWaterMark = init.highWaterMark || input.highWaterMark || 16384; + this.insecureHTTPParser = init.insecureHTTPParser || input.insecureHTTPParser || false; + } + get method() { + return this[INTERNALS].method; + } + get url() { + return url.format(this[INTERNALS].parsedURL); + } + get headers() { + return this[INTERNALS].headers; + } + get redirect() { + return this[INTERNALS].redirect; + } + get signal() { + return this[INTERNALS].signal; + } + /** + * Clone this request + * + * @return Request + */ + clone() { + return new Request(this); + } + get [Symbol.toStringTag]() { + return "Request"; + } + }; + Object.defineProperties(Request.prototype, { + method: { enumerable: true }, + url: { enumerable: true }, + headers: { enumerable: true }, + redirect: { enumerable: true }, + clone: { enumerable: true }, + signal: { enumerable: true } + }); + var getNodeRequestOptions = (request) => { + const { parsedURL } = request[INTERNALS]; + const headers = new Headers(request[INTERNALS].headers); + if (!headers.has("Accept")) { + headers.set("Accept", "*/*"); + } + let contentLengthValue = null; + if (request.body === null && /^(post|put)$/i.test(request.method)) { + contentLengthValue = "0"; + } + if (request.body !== null) { + const totalBytes = getTotalBytes(request); + if (typeof totalBytes === "number" && !Number.isNaN(totalBytes)) { + contentLengthValue = String(totalBytes); + } + } + if (contentLengthValue) { + headers.set("Content-Length", contentLengthValue); + } + if (!headers.has("User-Agent")) { + headers.set("User-Agent", "node-fetch"); + } + if (request.compress && !headers.has("Accept-Encoding")) { + headers.set("Accept-Encoding", "gzip,deflate,br"); + } + let { agent } = request; + if (typeof agent === "function") { + agent = agent(parsedURL); + } + if (!headers.has("Connection") && !agent) { + headers.set("Connection", "close"); + } + const search = getSearch(parsedURL); + const requestOptions = { + path: parsedURL.pathname + search, + pathname: parsedURL.pathname, + hostname: parsedURL.hostname, + protocol: parsedURL.protocol, + port: parsedURL.port, + hash: parsedURL.hash, + search: parsedURL.search, + query: parsedURL.query, + href: parsedURL.href, + method: request.method, + headers: headers[Symbol.for("nodejs.util.inspect.custom")](), + insecureHTTPParser: request.insecureHTTPParser, + agent + }; + return requestOptions; + }; + var AbortError = class extends FetchBaseError { + constructor(message2, type = "aborted") { + super(message2, type); + } + }; + var supportedSchemas = /* @__PURE__ */ new Set(["data:", "http:", "https:"]); + async function fetch(url2, options_) { + return new Promise((resolve, reject) => { + const request = new Request(url2, options_); + const options = getNodeRequestOptions(request); + if (!supportedSchemas.has(options.protocol)) { + throw new TypeError(`node-fetch cannot load ${url2}. URL scheme "${options.protocol.replace(/:$/, "")}" is not supported.`); + } + if (options.protocol === "data:") { + const data = dataUriToBuffer(request.url); + const response2 = new Response(data, { headers: { "Content-Type": data.typeFull } }); + resolve(response2); + return; + } + const send = (options.protocol === "https:" ? https : http).request; + const { signal } = request; + let response = null; + const abort = () => { + const error = new AbortError("The operation was aborted."); + reject(error); + if (request.body && request.body instanceof Stream.Readable) { + request.body.destroy(error); + } + if (!response || !response.body) { + return; + } + response.body.emit("error", error); + }; + if (signal && signal.aborted) { + abort(); + return; + } + const abortAndFinalize = () => { + abort(); + finalize(); + }; + const request_ = send(options); + if (signal) { + signal.addEventListener("abort", abortAndFinalize); + } + const finalize = () => { + request_.abort(); + if (signal) { + signal.removeEventListener("abort", abortAndFinalize); + } + }; + request_.on("error", (err) => { + reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, "system", err)); + finalize(); + }); + request_.on("response", (response_) => { + request_.setTimeout(0); + const headers = fromRawHeaders(response_.rawHeaders); + if (isRedirect(response_.statusCode)) { + const location = headers.get("Location"); + const locationURL = location === null ? null : new URL(location, request.url); + switch (request.redirect) { + case "error": + reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, "no-redirect")); + finalize(); + return; + case "manual": + if (locationURL !== null) { + try { + headers.set("Location", locationURL); + } catch (error) { + reject(error); + } + } + break; + case "follow": { + if (locationURL === null) { + break; + } + if (request.counter >= request.follow) { + reject(new FetchError(`maximum redirect reached at: ${request.url}`, "max-redirect")); + finalize(); + return; + } + const requestOptions = { + headers: new Headers(request.headers), + follow: request.follow, + counter: request.counter + 1, + agent: request.agent, + compress: request.compress, + method: request.method, + body: request.body, + signal: request.signal, + size: request.size + }; + if (response_.statusCode !== 303 && request.body && options_.body instanceof Stream.Readable) { + reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect")); + finalize(); + return; + } + if (response_.statusCode === 303 || (response_.statusCode === 301 || response_.statusCode === 302) && request.method === "POST") { + requestOptions.method = "GET"; + requestOptions.body = void 0; + requestOptions.headers.delete("content-length"); + } + resolve(fetch(new Request(locationURL, requestOptions))); + finalize(); + return; + } + } + } + response_.once("end", () => { + if (signal) { + signal.removeEventListener("abort", abortAndFinalize); + } + }); + let body = Stream.pipeline(response_, new Stream.PassThrough(), (error) => { + reject(error); + }); + if (process.version < "v12.10") { + response_.on("aborted", abortAndFinalize); + } + const responseOptions = { + url: request.url, + status: response_.statusCode, + statusText: response_.statusMessage, + headers, + size: request.size, + counter: request.counter, + highWaterMark: request.highWaterMark + }; + const codings = headers.get("Content-Encoding"); + if (!request.compress || request.method === "HEAD" || codings === null || response_.statusCode === 204 || response_.statusCode === 304) { + response = new Response(body, responseOptions); + resolve(response); + return; + } + const zlibOptions = { + flush: zlib.Z_SYNC_FLUSH, + finishFlush: zlib.Z_SYNC_FLUSH + }; + if (codings === "gzip" || codings === "x-gzip") { + body = Stream.pipeline(body, zlib.createGunzip(zlibOptions), (error) => { + reject(error); + }); + response = new Response(body, responseOptions); + resolve(response); + return; + } + if (codings === "deflate" || codings === "x-deflate") { + const raw = Stream.pipeline(response_, new Stream.PassThrough(), (error) => { + reject(error); + }); + raw.once("data", (chunk) => { + if ((chunk[0] & 15) === 8) { + body = Stream.pipeline(body, zlib.createInflate(), (error) => { + reject(error); + }); + } else { + body = Stream.pipeline(body, zlib.createInflateRaw(), (error) => { + reject(error); + }); + } + response = new Response(body, responseOptions); + resolve(response); + }); + return; + } + if (codings === "br") { + body = Stream.pipeline(body, zlib.createBrotliDecompress(), (error) => { + reject(error); + }); + response = new Response(body, responseOptions); + resolve(response); + return; + } + response = new Response(body, responseOptions); + resolve(response); + }); + writeToStream(request_, request); + }); + } + exports2.AbortError = AbortError; + exports2.FetchError = FetchError; + exports2.Headers = Headers; + exports2.Request = Request; + exports2.Response = Response; + exports2["default"] = fetch; + exports2.isRedirect = isRedirect; + } +}); + +// ../network/fetch/lib/fetch.js +var require_fetch = __commonJS({ + "../network/fetch/lib/fetch.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ResponseError = exports2.fetch = exports2.Response = exports2.isRedirect = void 0; + var core_loggers_1 = require_lib9(); + var retry_1 = require_retry2(); + var node_fetch_1 = __importStar5(require_dist6()); + Object.defineProperty(exports2, "Response", { enumerable: true, get: function() { + return node_fetch_1.Response; + } }); + var node_fetch_2 = require_dist6(); + Object.defineProperty(exports2, "isRedirect", { enumerable: true, get: function() { + return node_fetch_2.isRedirect; + } }); + var NO_RETRY_ERROR_CODES = /* @__PURE__ */ new Set([ + "SELF_SIGNED_CERT_IN_CHAIN", + "ERR_OSSL_PEM_NO_START_LINE" + ]); + async function fetch(url, opts = {}) { + const retryOpts = opts.retry ?? {}; + const maxRetries = retryOpts.retries ?? 2; + const op = (0, retry_1.operation)({ + factor: retryOpts.factor ?? 10, + maxTimeout: retryOpts.maxTimeout ?? 6e4, + minTimeout: retryOpts.minTimeout ?? 1e4, + randomize: false, + retries: maxRetries + }); + try { + return await new Promise((resolve, reject) => { + op.attempt(async (attempt) => { + try { + const res = await (0, node_fetch_1.default)(url, opts); + if (res.status >= 500 && res.status < 600 || [408, 409, 420, 429].includes(res.status)) { + throw new ResponseError(res); + } else { + resolve(res); + } + } catch (error) { + if (error.code && NO_RETRY_ERROR_CODES.has(error.code)) { + throw error; + } + const timeout = op.retry(error); + if (timeout === false) { + reject(op.mainError()); + return; + } + core_loggers_1.requestRetryLogger.debug({ + attempt, + error, + maxRetries, + method: opts.method ?? "GET", + timeout, + url: url.toString() + }); + } + }); + }); + } catch (err) { + if (err instanceof ResponseError) { + return err.res; + } + throw err; + } + } + exports2.fetch = fetch; + var ResponseError = class extends Error { + constructor(res) { + super(res.statusText); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, ResponseError); + } + this.name = this.constructor.name; + this.res = res; + this.code = this.status = this.statusCode = res.status; + this.url = res.url; + } + }; + exports2.ResponseError = ResponseError; + } +}); + +// ../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js +var require_ms2 = __commonJS({ + "../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports2, module2) { + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var w = d * 7; + var y = d * 365.25; + module2.exports = function(val, options) { + options = options || {}; + var type = typeof val; + if (type === "string" && val.length > 0) { + return parse2(val); + } else if (type === "number" && isFinite(val)) { + return options.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse2(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match) { + return; + } + var n = parseFloat(match[1]); + var type = (match[2] || "ms").toLowerCase(); + switch (type) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "weeks": + case "week": + case "w": + return n * w; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } + } + function fmtShort(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return Math.round(ms / d) + "d"; + } + if (msAbs >= h) { + return Math.round(ms / h) + "h"; + } + if (msAbs >= m) { + return Math.round(ms / m) + "m"; + } + if (msAbs >= s) { + return Math.round(ms / s) + "s"; + } + return ms + "ms"; + } + function fmtLong(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return plural(ms, msAbs, d, "day"); + } + if (msAbs >= h) { + return plural(ms, msAbs, h, "hour"); + } + if (msAbs >= m) { + return plural(ms, msAbs, m, "minute"); + } + if (msAbs >= s) { + return plural(ms, msAbs, s, "second"); + } + return ms + " ms"; + } + function plural(ms, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); + } + } +}); + +// ../node_modules/.pnpm/humanize-ms@1.2.1/node_modules/humanize-ms/index.js +var require_humanize_ms = __commonJS({ + "../node_modules/.pnpm/humanize-ms@1.2.1/node_modules/humanize-ms/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var ms = require_ms2(); + module2.exports = function(t) { + if (typeof t === "number") + return t; + var r = ms(t); + if (r === void 0) { + var err = new Error(util.format("humanize-ms(%j) result undefined", t)); + console.warn(err.stack); + } + return r; + }; + } +}); + +// ../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/callsite-tostring.js +var require_callsite_tostring = __commonJS({ + "../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/callsite-tostring.js"(exports2, module2) { + "use strict"; + module2.exports = callSiteToString2; + function callSiteFileLocation(callSite) { + var fileName; + var fileLocation = ""; + if (callSite.isNative()) { + fileLocation = "native"; + } else if (callSite.isEval()) { + fileName = callSite.getScriptNameOrSourceURL(); + if (!fileName) { + fileLocation = callSite.getEvalOrigin(); + } + } else { + fileName = callSite.getFileName(); + } + if (fileName) { + fileLocation += fileName; + var lineNumber = callSite.getLineNumber(); + if (lineNumber != null) { + fileLocation += ":" + lineNumber; + var columnNumber = callSite.getColumnNumber(); + if (columnNumber) { + fileLocation += ":" + columnNumber; + } + } + } + return fileLocation || "unknown source"; + } + function callSiteToString2(callSite) { + var addSuffix = true; + var fileLocation = callSiteFileLocation(callSite); + var functionName = callSite.getFunctionName(); + var isConstructor = callSite.isConstructor(); + var isMethodCall = !(callSite.isToplevel() || isConstructor); + var line = ""; + if (isMethodCall) { + var methodName = callSite.getMethodName(); + var typeName = getConstructorName(callSite); + if (functionName) { + if (typeName && functionName.indexOf(typeName) !== 0) { + line += typeName + "."; + } + line += functionName; + if (methodName && functionName.lastIndexOf("." + methodName) !== functionName.length - methodName.length - 1) { + line += " [as " + methodName + "]"; + } + } else { + line += typeName + "." + (methodName || ""); + } + } else if (isConstructor) { + line += "new " + (functionName || ""); + } else if (functionName) { + line += functionName; + } else { + addSuffix = false; + line += fileLocation; + } + if (addSuffix) { + line += " (" + fileLocation + ")"; + } + return line; + } + function getConstructorName(obj) { + var receiver = obj.receiver; + return receiver.constructor && receiver.constructor.name || null; + } + } +}); + +// ../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/event-listener-count.js +var require_event_listener_count = __commonJS({ + "../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/event-listener-count.js"(exports2, module2) { + "use strict"; + module2.exports = eventListenerCount2; + function eventListenerCount2(emitter, type) { + return emitter.listeners(type).length; + } + } +}); + +// ../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/index.js +var require_compat = __commonJS({ + "../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/index.js"(exports2, module2) { + "use strict"; + var EventEmitter = require("events").EventEmitter; + lazyProperty(module2.exports, "callSiteToString", function callSiteToString2() { + var limit = Error.stackTraceLimit; + var obj = {}; + var prep = Error.prepareStackTrace; + function prepareObjectStackTrace2(obj2, stack3) { + return stack3; + } + Error.prepareStackTrace = prepareObjectStackTrace2; + Error.stackTraceLimit = 2; + Error.captureStackTrace(obj); + var stack2 = obj.stack.slice(); + Error.prepareStackTrace = prep; + Error.stackTraceLimit = limit; + return stack2[0].toString ? toString : require_callsite_tostring(); + }); + lazyProperty(module2.exports, "eventListenerCount", function eventListenerCount2() { + return EventEmitter.listenerCount || require_event_listener_count(); + }); + function lazyProperty(obj, prop, getter) { + function get() { + var val = getter(); + Object.defineProperty(obj, prop, { + configurable: true, + enumerable: true, + value: val + }); + return val; + } + Object.defineProperty(obj, prop, { + configurable: true, + enumerable: true, + get + }); + } + function toString(obj) { + return obj.toString(); + } + } +}); + +// ../node_modules/.pnpm/depd@1.1.2/node_modules/depd/index.js +var require_depd = __commonJS({ + "../node_modules/.pnpm/depd@1.1.2/node_modules/depd/index.js"(exports, module) { + var callSiteToString = require_compat().callSiteToString; + var eventListenerCount = require_compat().eventListenerCount; + var relative = require("path").relative; + module.exports = depd; + var basePath = process.cwd(); + function containsNamespace(str, namespace) { + var vals = str.split(/[ ,]+/); + var ns = String(namespace).toLowerCase(); + for (var i = 0; i < vals.length; i++) { + var val = vals[i]; + if (val && (val === "*" || val.toLowerCase() === ns)) { + return true; + } + } + return false; + } + function convertDataDescriptorToAccessor(obj, prop, message2) { + var descriptor = Object.getOwnPropertyDescriptor(obj, prop); + var value = descriptor.value; + descriptor.get = function getter() { + return value; + }; + if (descriptor.writable) { + descriptor.set = function setter(val) { + return value = val; + }; + } + delete descriptor.value; + delete descriptor.writable; + Object.defineProperty(obj, prop, descriptor); + return descriptor; + } + function createArgumentsString(arity) { + var str = ""; + for (var i = 0; i < arity; i++) { + str += ", arg" + i; + } + return str.substr(2); + } + function createStackString(stack2) { + var str = this.name + ": " + this.namespace; + if (this.message) { + str += " deprecated " + this.message; + } + for (var i = 0; i < stack2.length; i++) { + str += "\n at " + callSiteToString(stack2[i]); + } + return str; + } + function depd(namespace) { + if (!namespace) { + throw new TypeError("argument namespace is required"); + } + var stack2 = getStack(); + var site2 = callSiteLocation(stack2[1]); + var file = site2[0]; + function deprecate2(message2) { + log.call(deprecate2, message2); + } + deprecate2._file = file; + deprecate2._ignored = isignored(namespace); + deprecate2._namespace = namespace; + deprecate2._traced = istraced(namespace); + deprecate2._warned = /* @__PURE__ */ Object.create(null); + deprecate2.function = wrapfunction; + deprecate2.property = wrapproperty; + return deprecate2; + } + function isignored(namespace) { + if (process.noDeprecation) { + return true; + } + var str = process.env.NO_DEPRECATION || ""; + return containsNamespace(str, namespace); + } + function istraced(namespace) { + if (process.traceDeprecation) { + return true; + } + var str = process.env.TRACE_DEPRECATION || ""; + return containsNamespace(str, namespace); + } + function log(message2, site2) { + var haslisteners = eventListenerCount(process, "deprecation") !== 0; + if (!haslisteners && this._ignored) { + return; + } + var caller; + var callFile; + var callSite; + var depSite; + var i = 0; + var seen = false; + var stack2 = getStack(); + var file = this._file; + if (site2) { + depSite = site2; + callSite = callSiteLocation(stack2[1]); + callSite.name = depSite.name; + file = callSite[0]; + } else { + i = 2; + depSite = callSiteLocation(stack2[i]); + callSite = depSite; + } + for (; i < stack2.length; i++) { + caller = callSiteLocation(stack2[i]); + callFile = caller[0]; + if (callFile === file) { + seen = true; + } else if (callFile === this._file) { + file = this._file; + } else if (seen) { + break; + } + } + var key = caller ? depSite.join(":") + "__" + caller.join(":") : void 0; + if (key !== void 0 && key in this._warned) { + return; + } + this._warned[key] = true; + var msg = message2; + if (!msg) { + msg = callSite === depSite || !callSite.name ? defaultMessage(depSite) : defaultMessage(callSite); + } + if (haslisteners) { + var err = DeprecationError(this._namespace, msg, stack2.slice(i)); + process.emit("deprecation", err); + return; + } + var format = process.stderr.isTTY ? formatColor : formatPlain; + var output = format.call(this, msg, caller, stack2.slice(i)); + process.stderr.write(output + "\n", "utf8"); + } + function callSiteLocation(callSite) { + var file = callSite.getFileName() || ""; + var line = callSite.getLineNumber(); + var colm = callSite.getColumnNumber(); + if (callSite.isEval()) { + file = callSite.getEvalOrigin() + ", " + file; + } + var site2 = [file, line, colm]; + site2.callSite = callSite; + site2.name = callSite.getFunctionName(); + return site2; + } + function defaultMessage(site2) { + var callSite = site2.callSite; + var funcName = site2.name; + if (!funcName) { + funcName = ""; + } + var context = callSite.getThis(); + var typeName = context && callSite.getTypeName(); + if (typeName === "Object") { + typeName = void 0; + } + if (typeName === "Function") { + typeName = context.name || typeName; + } + return typeName && callSite.getMethodName() ? typeName + "." + funcName : funcName; + } + function formatPlain(msg, caller, stack2) { + var timestamp = (/* @__PURE__ */ new Date()).toUTCString(); + var formatted = timestamp + " " + this._namespace + " deprecated " + msg; + if (this._traced) { + for (var i = 0; i < stack2.length; i++) { + formatted += "\n at " + callSiteToString(stack2[i]); + } + return formatted; + } + if (caller) { + formatted += " at " + formatLocation(caller); + } + return formatted; + } + function formatColor(msg, caller, stack2) { + var formatted = "\x1B[36;1m" + this._namespace + "\x1B[22;39m \x1B[33;1mdeprecated\x1B[22;39m \x1B[0m" + msg + "\x1B[39m"; + if (this._traced) { + for (var i = 0; i < stack2.length; i++) { + formatted += "\n \x1B[36mat " + callSiteToString(stack2[i]) + "\x1B[39m"; + } + return formatted; + } + if (caller) { + formatted += " \x1B[36m" + formatLocation(caller) + "\x1B[39m"; + } + return formatted; + } + function formatLocation(callSite) { + return relative(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2]; + } + function getStack() { + var limit = Error.stackTraceLimit; + var obj = {}; + var prep = Error.prepareStackTrace; + Error.prepareStackTrace = prepareObjectStackTrace; + Error.stackTraceLimit = Math.max(10, limit); + Error.captureStackTrace(obj); + var stack2 = obj.stack.slice(1); + Error.prepareStackTrace = prep; + Error.stackTraceLimit = limit; + return stack2; + } + function prepareObjectStackTrace(obj, stack2) { + return stack2; + } + function wrapfunction(fn, message) { + if (typeof fn !== "function") { + throw new TypeError("argument fn must be a function"); + } + var args = createArgumentsString(fn.length); + var deprecate = this; + var stack = getStack(); + var site = callSiteLocation(stack[1]); + site.name = fn.name; + var deprecatedfn = eval("(function (" + args + ') {\n"use strict"\nlog.call(deprecate, message, site)\nreturn fn.apply(this, arguments)\n})'); + return deprecatedfn; + } + function wrapproperty(obj, prop, message2) { + if (!obj || typeof obj !== "object" && typeof obj !== "function") { + throw new TypeError("argument obj must be object"); + } + var descriptor = Object.getOwnPropertyDescriptor(obj, prop); + if (!descriptor) { + throw new TypeError("must call property on owner object"); + } + if (!descriptor.configurable) { + throw new TypeError("property must be configurable"); + } + var deprecate2 = this; + var stack2 = getStack(); + var site2 = callSiteLocation(stack2[1]); + site2.name = prop; + if ("value" in descriptor) { + descriptor = convertDataDescriptorToAccessor(obj, prop, message2); + } + var get = descriptor.get; + var set = descriptor.set; + if (typeof get === "function") { + descriptor.get = function getter() { + log.call(deprecate2, message2, site2); + return get.apply(this, arguments); + }; + } + if (typeof set === "function") { + descriptor.set = function setter() { + log.call(deprecate2, message2, site2); + return set.apply(this, arguments); + }; + } + Object.defineProperty(obj, prop, descriptor); + } + function DeprecationError(namespace, message2, stack2) { + var error = new Error(); + var stackString; + Object.defineProperty(error, "constructor", { + value: DeprecationError + }); + Object.defineProperty(error, "message", { + configurable: true, + enumerable: false, + value: message2, + writable: true + }); + Object.defineProperty(error, "name", { + enumerable: false, + configurable: true, + value: "DeprecationError", + writable: true + }); + Object.defineProperty(error, "namespace", { + configurable: true, + enumerable: false, + value: namespace, + writable: true + }); + Object.defineProperty(error, "stack", { + configurable: true, + enumerable: false, + get: function() { + if (stackString !== void 0) { + return stackString; + } + return stackString = createStackString.call(this, stack2); + }, + set: function setter(val) { + stackString = val; + } + }); + return error; + } + } +}); + +// ../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/constants.js +var require_constants7 = __commonJS({ + "../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/constants.js"(exports2, module2) { + "use strict"; + module2.exports = { + // agent + CURRENT_ID: Symbol("agentkeepalive#currentId"), + CREATE_ID: Symbol("agentkeepalive#createId"), + INIT_SOCKET: Symbol("agentkeepalive#initSocket"), + CREATE_HTTPS_CONNECTION: Symbol("agentkeepalive#createHttpsConnection"), + // socket + SOCKET_CREATED_TIME: Symbol("agentkeepalive#socketCreatedTime"), + SOCKET_NAME: Symbol("agentkeepalive#socketName"), + SOCKET_REQUEST_COUNT: Symbol("agentkeepalive#socketRequestCount"), + SOCKET_REQUEST_FINISHED_COUNT: Symbol("agentkeepalive#socketRequestFinishedCount") + }; + } +}); + +// ../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/agent.js +var require_agent = __commonJS({ + "../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/agent.js"(exports2, module2) { + "use strict"; + var OriginalAgent = require("http").Agent; + var ms = require_humanize_ms(); + var debug = require_src()("agentkeepalive"); + var deprecate2 = require_depd()("agentkeepalive"); + var { + INIT_SOCKET, + CURRENT_ID, + CREATE_ID, + SOCKET_CREATED_TIME, + SOCKET_NAME, + SOCKET_REQUEST_COUNT, + SOCKET_REQUEST_FINISHED_COUNT + } = require_constants7(); + var defaultTimeoutListenerCount = 1; + var majorVersion = parseInt(process.version.split(".", 1)[0].substring(1)); + if (majorVersion >= 11 && majorVersion <= 12) { + defaultTimeoutListenerCount = 2; + } else if (majorVersion >= 13) { + defaultTimeoutListenerCount = 3; + } + var Agent = class extends OriginalAgent { + constructor(options) { + options = options || {}; + options.keepAlive = options.keepAlive !== false; + if (options.freeSocketTimeout === void 0) { + options.freeSocketTimeout = 4e3; + } + if (options.keepAliveTimeout) { + deprecate2("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"); + options.freeSocketTimeout = options.keepAliveTimeout; + delete options.keepAliveTimeout; + } + if (options.freeSocketKeepAliveTimeout) { + deprecate2("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"); + options.freeSocketTimeout = options.freeSocketKeepAliveTimeout; + delete options.freeSocketKeepAliveTimeout; + } + if (options.timeout === void 0) { + options.timeout = Math.max(options.freeSocketTimeout * 2, 8e3); + } + options.timeout = ms(options.timeout); + options.freeSocketTimeout = ms(options.freeSocketTimeout); + options.socketActiveTTL = options.socketActiveTTL ? ms(options.socketActiveTTL) : 0; + super(options); + this[CURRENT_ID] = 0; + this.createSocketCount = 0; + this.createSocketCountLastCheck = 0; + this.createSocketErrorCount = 0; + this.createSocketErrorCountLastCheck = 0; + this.closeSocketCount = 0; + this.closeSocketCountLastCheck = 0; + this.errorSocketCount = 0; + this.errorSocketCountLastCheck = 0; + this.requestCount = 0; + this.requestCountLastCheck = 0; + this.timeoutSocketCount = 0; + this.timeoutSocketCountLastCheck = 0; + this.on("free", (socket) => { + const timeout = this.calcSocketTimeout(socket); + if (timeout > 0 && socket.timeout !== timeout) { + socket.setTimeout(timeout); + } + }); + } + get freeSocketKeepAliveTimeout() { + deprecate2("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"); + return this.options.freeSocketTimeout; + } + get timeout() { + deprecate2("agent.timeout is deprecated, please use agent.options.timeout instead"); + return this.options.timeout; + } + get socketActiveTTL() { + deprecate2("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"); + return this.options.socketActiveTTL; + } + calcSocketTimeout(socket) { + let freeSocketTimeout = this.options.freeSocketTimeout; + const socketActiveTTL = this.options.socketActiveTTL; + if (socketActiveTTL) { + const aliveTime = Date.now() - socket[SOCKET_CREATED_TIME]; + const diff = socketActiveTTL - aliveTime; + if (diff <= 0) { + return diff; + } + if (freeSocketTimeout && diff < freeSocketTimeout) { + freeSocketTimeout = diff; + } + } + if (freeSocketTimeout) { + const customFreeSocketTimeout = socket.freeSocketTimeout || socket.freeSocketKeepAliveTimeout; + return customFreeSocketTimeout || freeSocketTimeout; + } + } + keepSocketAlive(socket) { + const result2 = super.keepSocketAlive(socket); + if (!result2) + return result2; + const customTimeout = this.calcSocketTimeout(socket); + if (typeof customTimeout === "undefined") { + return true; + } + if (customTimeout <= 0) { + debug( + "%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT], + customTimeout + ); + return false; + } + if (socket.timeout !== customTimeout) { + socket.setTimeout(customTimeout); + } + return true; + } + // only call on addRequest + reuseSocket(...args2) { + super.reuseSocket(...args2); + const socket = args2[0]; + const req = args2[1]; + req.reusedSocket = true; + const agentTimeout = this.options.timeout; + if (getSocketTimeout(socket) !== agentTimeout) { + socket.setTimeout(agentTimeout); + debug("%s reset timeout to %sms", socket[SOCKET_NAME], agentTimeout); + } + socket[SOCKET_REQUEST_COUNT]++; + debug( + "%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT], + getSocketTimeout(socket) + ); + } + [CREATE_ID]() { + const id = this[CURRENT_ID]++; + if (this[CURRENT_ID] === Number.MAX_SAFE_INTEGER) + this[CURRENT_ID] = 0; + return id; + } + [INIT_SOCKET](socket, options) { + if (options.timeout) { + const timeout = getSocketTimeout(socket); + if (!timeout) { + socket.setTimeout(options.timeout); + } + } + if (this.options.keepAlive) { + socket.setNoDelay(true); + } + this.createSocketCount++; + if (this.options.socketActiveTTL) { + socket[SOCKET_CREATED_TIME] = Date.now(); + } + socket[SOCKET_NAME] = `sock[${this[CREATE_ID]()}#${options._agentKey}]`.split("-----BEGIN", 1)[0]; + socket[SOCKET_REQUEST_COUNT] = 1; + socket[SOCKET_REQUEST_FINISHED_COUNT] = 0; + installListeners(this, socket, options); + } + createConnection(options, oncreate) { + let called = false; + const onNewCreate = (err, socket) => { + if (called) + return; + called = true; + if (err) { + this.createSocketErrorCount++; + return oncreate(err); + } + this[INIT_SOCKET](socket, options); + oncreate(err, socket); + }; + const newSocket = super.createConnection(options, onNewCreate); + if (newSocket) + onNewCreate(null, newSocket); + } + get statusChanged() { + const changed = this.createSocketCount !== this.createSocketCountLastCheck || this.createSocketErrorCount !== this.createSocketErrorCountLastCheck || this.closeSocketCount !== this.closeSocketCountLastCheck || this.errorSocketCount !== this.errorSocketCountLastCheck || this.timeoutSocketCount !== this.timeoutSocketCountLastCheck || this.requestCount !== this.requestCountLastCheck; + if (changed) { + this.createSocketCountLastCheck = this.createSocketCount; + this.createSocketErrorCountLastCheck = this.createSocketErrorCount; + this.closeSocketCountLastCheck = this.closeSocketCount; + this.errorSocketCountLastCheck = this.errorSocketCount; + this.timeoutSocketCountLastCheck = this.timeoutSocketCount; + this.requestCountLastCheck = this.requestCount; + } + return changed; + } + getCurrentStatus() { + return { + createSocketCount: this.createSocketCount, + createSocketErrorCount: this.createSocketErrorCount, + closeSocketCount: this.closeSocketCount, + errorSocketCount: this.errorSocketCount, + timeoutSocketCount: this.timeoutSocketCount, + requestCount: this.requestCount, + freeSockets: inspect(this.freeSockets), + sockets: inspect(this.sockets), + requests: inspect(this.requests) + }; + } + }; + function getSocketTimeout(socket) { + return socket.timeout || socket._idleTimeout; + } + function installListeners(agent, socket, options) { + debug("%s create, timeout %sms", socket[SOCKET_NAME], getSocketTimeout(socket)); + function onFree() { + if (!socket._httpMessage && socket[SOCKET_REQUEST_COUNT] === 1) + return; + socket[SOCKET_REQUEST_FINISHED_COUNT]++; + agent.requestCount++; + debug( + "%s(requests: %s, finished: %s) free", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT] + ); + const name = agent.getName(options); + if (socket.writable && agent.requests[name] && agent.requests[name].length) { + socket[SOCKET_REQUEST_COUNT]++; + debug( + "%s(requests: %s, finished: %s) will be reuse on agent free event", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT] + ); + } + } + socket.on("free", onFree); + function onClose(isError) { + debug( + "%s(requests: %s, finished: %s) close, isError: %s", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT], + isError + ); + agent.closeSocketCount++; + } + socket.on("close", onClose); + function onTimeout() { + const listenerCount = socket.listeners("timeout").length; + const timeout = getSocketTimeout(socket); + const req = socket._httpMessage; + const reqTimeoutListenerCount = req && req.listeners("timeout").length || 0; + debug( + "%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT], + timeout, + listenerCount, + defaultTimeoutListenerCount, + !!req, + reqTimeoutListenerCount + ); + if (debug.enabled) { + debug("timeout listeners: %s", socket.listeners("timeout").map((f) => f.name).join(", ")); + } + agent.timeoutSocketCount++; + const name = agent.getName(options); + if (agent.freeSockets[name] && agent.freeSockets[name].indexOf(socket) !== -1) { + socket.destroy(); + agent.removeSocket(socket, options); + debug("%s is free, destroy quietly", socket[SOCKET_NAME]); + } else { + if (reqTimeoutListenerCount === 0) { + const error = new Error("Socket timeout"); + error.code = "ERR_SOCKET_TIMEOUT"; + error.timeout = timeout; + socket.destroy(error); + agent.removeSocket(socket, options); + debug("%s destroy with timeout error", socket[SOCKET_NAME]); + } + } + } + socket.on("timeout", onTimeout); + function onError(err) { + const listenerCount = socket.listeners("error").length; + debug( + "%s(requests: %s, finished: %s) error: %s, listenerCount: %s", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT], + err, + listenerCount + ); + agent.errorSocketCount++; + if (listenerCount === 1) { + debug("%s emit uncaught error event", socket[SOCKET_NAME]); + socket.removeListener("error", onError); + socket.emit("error", err); + } + } + socket.on("error", onError); + function onRemove() { + debug( + "%s(requests: %s, finished: %s) agentRemove", + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], + socket[SOCKET_REQUEST_FINISHED_COUNT] + ); + socket.removeListener("close", onClose); + socket.removeListener("error", onError); + socket.removeListener("free", onFree); + socket.removeListener("timeout", onTimeout); + socket.removeListener("agentRemove", onRemove); + } + socket.on("agentRemove", onRemove); + } + module2.exports = Agent; + function inspect(obj) { + const res = {}; + for (const key in obj) { + res[key] = obj[key].length; + } + return res; + } + } +}); + +// ../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/https_agent.js +var require_https_agent = __commonJS({ + "../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/lib/https_agent.js"(exports2, module2) { + "use strict"; + var OriginalHttpsAgent = require("https").Agent; + var HttpAgent = require_agent(); + var { + INIT_SOCKET, + CREATE_HTTPS_CONNECTION + } = require_constants7(); + var HttpsAgent = class extends HttpAgent { + constructor(options) { + super(options); + this.defaultPort = 443; + this.protocol = "https:"; + this.maxCachedSessions = this.options.maxCachedSessions; + if (this.maxCachedSessions === void 0) { + this.maxCachedSessions = 100; + } + this._sessionCache = { + map: {}, + list: [] + }; + } + createConnection(options) { + const socket = this[CREATE_HTTPS_CONNECTION](options); + this[INIT_SOCKET](socket, options); + return socket; + } + }; + HttpsAgent.prototype[CREATE_HTTPS_CONNECTION] = OriginalHttpsAgent.prototype.createConnection; + [ + "getName", + "_getSession", + "_cacheSession", + // https://github.com/nodejs/node/pull/4982 + "_evictSession" + ].forEach(function(method) { + if (typeof OriginalHttpsAgent.prototype[method] === "function") { + HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method]; + } + }); + module2.exports = HttpsAgent; + } +}); + +// ../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/index.js +var require_agentkeepalive = __commonJS({ + "../node_modules/.pnpm/agentkeepalive@4.2.1/node_modules/agentkeepalive/index.js"(exports2, module2) { + "use strict"; + module2.exports = require_agent(); + module2.exports.HttpsAgent = require_https_agent(); + module2.exports.constants = require_constants7(); + } +}); + +// ../node_modules/.pnpm/lru-cache@7.10.1/node_modules/lru-cache/index.js +var require_lru_cache2 = __commonJS({ + "../node_modules/.pnpm/lru-cache@7.10.1/node_modules/lru-cache/index.js"(exports2, module2) { + var perf = typeof performance === "object" && performance && typeof performance.now === "function" ? performance : Date; + var hasAbortController = typeof AbortController === "function"; + var AC = hasAbortController ? AbortController : class AbortController { + constructor() { + this.signal = new AS(); + } + abort() { + this.signal.dispatchEvent("abort"); + } + }; + var AS = hasAbortController ? AbortSignal : class AbortSignal { + constructor() { + this.aborted = false; + this._listeners = []; + } + dispatchEvent(type) { + if (type === "abort") { + this.aborted = true; + const e = { type, target: this }; + this.onabort(e); + this._listeners.forEach((f) => f(e), this); + } + } + onabort() { + } + addEventListener(ev, fn2) { + if (ev === "abort") { + this._listeners.push(fn2); + } + } + removeEventListener(ev, fn2) { + if (ev === "abort") { + this._listeners = this._listeners.filter((f) => f !== fn2); + } + } + }; + var warned = /* @__PURE__ */ new Set(); + var deprecatedOption = (opt, instead) => { + const code = `LRU_CACHE_OPTION_${opt}`; + if (shouldWarn(code)) { + warn(code, `${opt} option`, `options.${instead}`, LRUCache); + } + }; + var deprecatedMethod = (method, instead) => { + const code = `LRU_CACHE_METHOD_${method}`; + if (shouldWarn(code)) { + const { prototype } = LRUCache; + const { get } = Object.getOwnPropertyDescriptor(prototype, method); + warn(code, `${method} method`, `cache.${instead}()`, get); + } + }; + var deprecatedProperty = (field, instead) => { + const code = `LRU_CACHE_PROPERTY_${field}`; + if (shouldWarn(code)) { + const { prototype } = LRUCache; + const { get } = Object.getOwnPropertyDescriptor(prototype, field); + warn(code, `${field} property`, `cache.${instead}`, get); + } + }; + var emitWarning = (...a) => { + typeof process === "object" && process && typeof process.emitWarning === "function" ? process.emitWarning(...a) : console.error(...a); + }; + var shouldWarn = (code) => !warned.has(code); + var warn = (code, what, instead, fn2) => { + warned.add(code); + const msg = `The ${what} is deprecated. Please use ${instead} instead.`; + emitWarning(msg, "DeprecationWarning", code, fn2); + }; + var isPosInt = (n) => n && n === Math.floor(n) && n > 0 && isFinite(n); + var getUintArray = (max) => !isPosInt(max) ? null : max <= Math.pow(2, 8) ? Uint8Array : max <= Math.pow(2, 16) ? Uint16Array : max <= Math.pow(2, 32) ? Uint32Array : max <= Number.MAX_SAFE_INTEGER ? ZeroArray : null; + var ZeroArray = class extends Array { + constructor(size) { + super(size); + this.fill(0); + } + }; + var Stack = class { + constructor(max) { + if (max === 0) { + return []; + } + const UintArray = getUintArray(max); + this.heap = new UintArray(max); + this.length = 0; + } + push(n) { + this.heap[this.length++] = n; + } + pop() { + return this.heap[--this.length]; + } + }; + var LRUCache = class { + constructor(options = {}) { + const { + max = 0, + ttl, + ttlResolution = 1, + ttlAutopurge, + updateAgeOnGet, + updateAgeOnHas, + allowStale, + dispose, + disposeAfter, + noDisposeOnSet, + noUpdateTTL, + maxSize = 0, + sizeCalculation, + fetchMethod, + noDeleteOnFetchRejection + } = options; + const { length, maxAge, stale } = options instanceof LRUCache ? {} : options; + if (max !== 0 && !isPosInt(max)) { + throw new TypeError("max option must be a nonnegative integer"); + } + const UintArray = max ? getUintArray(max) : Array; + if (!UintArray) { + throw new Error("invalid max value: " + max); + } + this.max = max; + this.maxSize = maxSize; + this.sizeCalculation = sizeCalculation || length; + if (this.sizeCalculation) { + if (!this.maxSize) { + throw new TypeError( + "cannot set sizeCalculation without setting maxSize" + ); + } + if (typeof this.sizeCalculation !== "function") { + throw new TypeError("sizeCalculation set to non-function"); + } + } + this.fetchMethod = fetchMethod || null; + if (this.fetchMethod && typeof this.fetchMethod !== "function") { + throw new TypeError( + "fetchMethod must be a function if specified" + ); + } + this.keyMap = /* @__PURE__ */ new Map(); + this.keyList = new Array(max).fill(null); + this.valList = new Array(max).fill(null); + this.next = new UintArray(max); + this.prev = new UintArray(max); + this.head = 0; + this.tail = 0; + this.free = new Stack(max); + this.initialFill = 1; + this.size = 0; + if (typeof dispose === "function") { + this.dispose = dispose; + } + if (typeof disposeAfter === "function") { + this.disposeAfter = disposeAfter; + this.disposed = []; + } else { + this.disposeAfter = null; + this.disposed = null; + } + this.noDisposeOnSet = !!noDisposeOnSet; + this.noUpdateTTL = !!noUpdateTTL; + this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection; + if (this.maxSize !== 0) { + if (!isPosInt(this.maxSize)) { + throw new TypeError( + "maxSize must be a positive integer if specified" + ); + } + this.initializeSizeTracking(); + } + this.allowStale = !!allowStale || !!stale; + this.updateAgeOnGet = !!updateAgeOnGet; + this.updateAgeOnHas = !!updateAgeOnHas; + this.ttlResolution = isPosInt(ttlResolution) || ttlResolution === 0 ? ttlResolution : 1; + this.ttlAutopurge = !!ttlAutopurge; + this.ttl = ttl || maxAge || 0; + if (this.ttl) { + if (!isPosInt(this.ttl)) { + throw new TypeError( + "ttl must be a positive integer if specified" + ); + } + this.initializeTTLTracking(); + } + if (this.max === 0 && this.ttl === 0 && this.maxSize === 0) { + throw new TypeError( + "At least one of max, maxSize, or ttl is required" + ); + } + if (!this.ttlAutopurge && !this.max && !this.maxSize) { + const code = "LRU_CACHE_UNBOUNDED"; + if (shouldWarn(code)) { + warned.add(code); + const msg = "TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption."; + emitWarning(msg, "UnboundedCacheWarning", code, LRUCache); + } + } + if (stale) { + deprecatedOption("stale", "allowStale"); + } + if (maxAge) { + deprecatedOption("maxAge", "ttl"); + } + if (length) { + deprecatedOption("length", "sizeCalculation"); + } + } + getRemainingTTL(key) { + return this.has(key, { updateAgeOnHas: false }) ? Infinity : 0; + } + initializeTTLTracking() { + this.ttls = new ZeroArray(this.max); + this.starts = new ZeroArray(this.max); + this.setItemTTL = (index, ttl) => { + this.starts[index] = ttl !== 0 ? perf.now() : 0; + this.ttls[index] = ttl; + if (ttl !== 0 && this.ttlAutopurge) { + const t = setTimeout(() => { + if (this.isStale(index)) { + this.delete(this.keyList[index]); + } + }, ttl + 1); + if (t.unref) { + t.unref(); + } + } + }; + this.updateItemAge = (index) => { + this.starts[index] = this.ttls[index] !== 0 ? perf.now() : 0; + }; + let cachedNow = 0; + const getNow = () => { + const n = perf.now(); + if (this.ttlResolution > 0) { + cachedNow = n; + const t = setTimeout( + () => cachedNow = 0, + this.ttlResolution + ); + if (t.unref) { + t.unref(); + } + } + return n; + }; + this.getRemainingTTL = (key) => { + const index = this.keyMap.get(key); + if (index === void 0) { + return 0; + } + return this.ttls[index] === 0 || this.starts[index] === 0 ? Infinity : this.starts[index] + this.ttls[index] - (cachedNow || getNow()); + }; + this.isStale = (index) => { + return this.ttls[index] !== 0 && this.starts[index] !== 0 && (cachedNow || getNow()) - this.starts[index] > this.ttls[index]; + }; + } + updateItemAge(index) { + } + setItemTTL(index, ttl) { + } + isStale(index) { + return false; + } + initializeSizeTracking() { + this.calculatedSize = 0; + this.sizes = new ZeroArray(this.max); + this.removeItemSize = (index) => this.calculatedSize -= this.sizes[index]; + this.requireSize = (k, v, size, sizeCalculation) => { + if (!isPosInt(size)) { + if (sizeCalculation) { + if (typeof sizeCalculation !== "function") { + throw new TypeError("sizeCalculation must be a function"); + } + size = sizeCalculation(v, k); + if (!isPosInt(size)) { + throw new TypeError( + "sizeCalculation return invalid (expect positive integer)" + ); + } + } else { + throw new TypeError( + "invalid size value (must be positive integer)" + ); + } + } + return size; + }; + this.addItemSize = (index, v, k, size) => { + this.sizes[index] = size; + const maxSize = this.maxSize - this.sizes[index]; + while (this.calculatedSize > maxSize) { + this.evict(true); + } + this.calculatedSize += this.sizes[index]; + }; + } + removeItemSize(index) { + } + addItemSize(index, v, k, size) { + } + requireSize(k, v, size, sizeCalculation) { + if (size || sizeCalculation) { + throw new TypeError( + "cannot set size without setting maxSize on cache" + ); + } + } + *indexes({ allowStale = this.allowStale } = {}) { + if (this.size) { + for (let i = this.tail; true; ) { + if (!this.isValidIndex(i)) { + break; + } + if (allowStale || !this.isStale(i)) { + yield i; + } + if (i === this.head) { + break; + } else { + i = this.prev[i]; + } + } + } + } + *rindexes({ allowStale = this.allowStale } = {}) { + if (this.size) { + for (let i = this.head; true; ) { + if (!this.isValidIndex(i)) { + break; + } + if (allowStale || !this.isStale(i)) { + yield i; + } + if (i === this.tail) { + break; + } else { + i = this.next[i]; + } + } + } + } + isValidIndex(index) { + return this.keyMap.get(this.keyList[index]) === index; + } + *entries() { + for (const i of this.indexes()) { + yield [this.keyList[i], this.valList[i]]; + } + } + *rentries() { + for (const i of this.rindexes()) { + yield [this.keyList[i], this.valList[i]]; + } + } + *keys() { + for (const i of this.indexes()) { + yield this.keyList[i]; + } + } + *rkeys() { + for (const i of this.rindexes()) { + yield this.keyList[i]; + } + } + *values() { + for (const i of this.indexes()) { + yield this.valList[i]; + } + } + *rvalues() { + for (const i of this.rindexes()) { + yield this.valList[i]; + } + } + [Symbol.iterator]() { + return this.entries(); + } + find(fn2, getOptions = {}) { + for (const i of this.indexes()) { + if (fn2(this.valList[i], this.keyList[i], this)) { + return this.get(this.keyList[i], getOptions); + } + } + } + forEach(fn2, thisp = this) { + for (const i of this.indexes()) { + fn2.call(thisp, this.valList[i], this.keyList[i], this); + } + } + rforEach(fn2, thisp = this) { + for (const i of this.rindexes()) { + fn2.call(thisp, this.valList[i], this.keyList[i], this); + } + } + get prune() { + deprecatedMethod("prune", "purgeStale"); + return this.purgeStale; + } + purgeStale() { + let deleted = false; + for (const i of this.rindexes({ allowStale: true })) { + if (this.isStale(i)) { + this.delete(this.keyList[i]); + deleted = true; + } + } + return deleted; + } + dump() { + const arr = []; + for (const i of this.indexes()) { + const key = this.keyList[i]; + const value = this.valList[i]; + const entry = { value }; + if (this.ttls) { + entry.ttl = this.ttls[i]; + } + if (this.sizes) { + entry.size = this.sizes[i]; + } + arr.unshift([key, entry]); + } + return arr; + } + load(arr) { + this.clear(); + for (const [key, entry] of arr) { + this.set(key, entry.value, entry); + } + } + dispose(v, k, reason) { + } + set(k, v, { + ttl = this.ttl, + noDisposeOnSet = this.noDisposeOnSet, + size = 0, + sizeCalculation = this.sizeCalculation, + noUpdateTTL = this.noUpdateTTL + } = {}) { + size = this.requireSize(k, v, size, sizeCalculation); + let index = this.size === 0 ? void 0 : this.keyMap.get(k); + if (index === void 0) { + index = this.newIndex(); + this.keyList[index] = k; + this.valList[index] = v; + this.keyMap.set(k, index); + this.next[this.tail] = index; + this.prev[index] = this.tail; + this.tail = index; + this.size++; + this.addItemSize(index, v, k, size); + noUpdateTTL = false; + } else { + const oldVal = this.valList[index]; + if (v !== oldVal) { + if (this.isBackgroundFetch(oldVal)) { + oldVal.__abortController.abort(); + } else { + if (!noDisposeOnSet) { + this.dispose(oldVal, k, "set"); + if (this.disposeAfter) { + this.disposed.push([oldVal, k, "set"]); + } + } + } + this.removeItemSize(index); + this.valList[index] = v; + this.addItemSize(index, v, k, size); + } + this.moveToTail(index); + } + if (ttl !== 0 && this.ttl === 0 && !this.ttls) { + this.initializeTTLTracking(); + } + if (!noUpdateTTL) { + this.setItemTTL(index, ttl); + } + if (this.disposeAfter) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + return this; + } + newIndex() { + if (this.size === 0) { + return this.tail; + } + if (this.size === this.max && this.max !== 0) { + return this.evict(false); + } + if (this.free.length !== 0) { + return this.free.pop(); + } + return this.initialFill++; + } + pop() { + if (this.size) { + const val = this.valList[this.head]; + this.evict(true); + return val; + } + } + evict(free) { + const head = this.head; + const k = this.keyList[head]; + const v = this.valList[head]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(); + } else { + this.dispose(v, k, "evict"); + if (this.disposeAfter) { + this.disposed.push([v, k, "evict"]); + } + } + this.removeItemSize(head); + if (free) { + this.keyList[head] = null; + this.valList[head] = null; + this.free.push(head); + } + this.head = this.next[head]; + this.keyMap.delete(k); + this.size--; + return head; + } + has(k, { updateAgeOnHas = this.updateAgeOnHas } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0) { + if (!this.isStale(index)) { + if (updateAgeOnHas) { + this.updateItemAge(index); + } + return true; + } + } + return false; + } + // like get(), but without any LRU updating or TTL expiration + peek(k, { allowStale = this.allowStale } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0 && (allowStale || !this.isStale(index))) { + return this.valList[index]; + } + } + backgroundFetch(k, index, options) { + const v = index === void 0 ? void 0 : this.valList[index]; + if (this.isBackgroundFetch(v)) { + return v; + } + const ac = new AC(); + const fetchOpts = { + signal: ac.signal, + options + }; + const cb = (v2) => { + if (!ac.signal.aborted) { + this.set(k, v2, fetchOpts.options); + } + return v2; + }; + const eb = (er) => { + if (this.valList[index] === p) { + const del = !options.noDeleteOnFetchRejection || p.__staleWhileFetching === void 0; + if (del) { + this.delete(k); + } else { + this.valList[index] = p.__staleWhileFetching; + } + } + if (p.__returned === p) { + throw er; + } + }; + const pcall = (res) => res(this.fetchMethod(k, v, fetchOpts)); + const p = new Promise(pcall).then(cb, eb); + p.__abortController = ac; + p.__staleWhileFetching = v; + p.__returned = null; + if (index === void 0) { + this.set(k, p, fetchOpts.options); + index = this.keyMap.get(k); + } else { + this.valList[index] = p; + } + return p; + } + isBackgroundFetch(p) { + return p && typeof p === "object" && typeof p.then === "function" && Object.prototype.hasOwnProperty.call( + p, + "__staleWhileFetching" + ) && Object.prototype.hasOwnProperty.call(p, "__returned") && (p.__returned === p || p.__returned === null); + } + // this takes the union of get() and set() opts, because it does both + async fetch(k, { + // get options + allowStale = this.allowStale, + updateAgeOnGet = this.updateAgeOnGet, + // set options + ttl = this.ttl, + noDisposeOnSet = this.noDisposeOnSet, + size = 0, + sizeCalculation = this.sizeCalculation, + noUpdateTTL = this.noUpdateTTL, + // fetch exclusive options + noDeleteOnFetchRejection = this.noDeleteOnFetchRejection + } = {}) { + if (!this.fetchMethod) { + return this.get(k, { allowStale, updateAgeOnGet }); + } + const options = { + allowStale, + updateAgeOnGet, + ttl, + noDisposeOnSet, + size, + sizeCalculation, + noUpdateTTL, + noDeleteOnFetchRejection + }; + let index = this.keyMap.get(k); + if (index === void 0) { + const p = this.backgroundFetch(k, index, options); + return p.__returned = p; + } else { + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + return allowStale && v.__staleWhileFetching !== void 0 ? v.__staleWhileFetching : v.__returned = v; + } + if (!this.isStale(index)) { + this.moveToTail(index); + if (updateAgeOnGet) { + this.updateItemAge(index); + } + return v; + } + const p = this.backgroundFetch(k, index, options); + return allowStale && p.__staleWhileFetching !== void 0 ? p.__staleWhileFetching : p.__returned = p; + } + } + get(k, { + allowStale = this.allowStale, + updateAgeOnGet = this.updateAgeOnGet + } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0) { + const value = this.valList[index]; + const fetching = this.isBackgroundFetch(value); + if (this.isStale(index)) { + if (!fetching) { + this.delete(k); + return allowStale ? value : void 0; + } else { + return allowStale ? value.__staleWhileFetching : void 0; + } + } else { + if (fetching) { + return void 0; + } + this.moveToTail(index); + if (updateAgeOnGet) { + this.updateItemAge(index); + } + return value; + } + } + } + connect(p, n) { + this.prev[n] = p; + this.next[p] = n; + } + moveToTail(index) { + if (index !== this.tail) { + if (index === this.head) { + this.head = this.next[index]; + } else { + this.connect(this.prev[index], this.next[index]); + } + this.connect(this.tail, index); + this.tail = index; + } + } + get del() { + deprecatedMethod("del", "delete"); + return this.delete; + } + delete(k) { + let deleted = false; + if (this.size !== 0) { + const index = this.keyMap.get(k); + if (index !== void 0) { + deleted = true; + if (this.size === 1) { + this.clear(); + } else { + this.removeItemSize(index); + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(); + } else { + this.dispose(v, k, "delete"); + if (this.disposeAfter) { + this.disposed.push([v, k, "delete"]); + } + } + this.keyMap.delete(k); + this.keyList[index] = null; + this.valList[index] = null; + if (index === this.tail) { + this.tail = this.prev[index]; + } else if (index === this.head) { + this.head = this.next[index]; + } else { + this.next[this.prev[index]] = this.next[index]; + this.prev[this.next[index]] = this.prev[index]; + } + this.size--; + this.free.push(index); + } + } + } + if (this.disposed) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + return deleted; + } + clear() { + for (const index of this.rindexes({ allowStale: true })) { + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(); + } else { + const k = this.keyList[index]; + this.dispose(v, k, "delete"); + if (this.disposeAfter) { + this.disposed.push([v, k, "delete"]); + } + } + } + this.keyMap.clear(); + this.valList.fill(null); + this.keyList.fill(null); + if (this.ttls) { + this.ttls.fill(0); + this.starts.fill(0); + } + if (this.sizes) { + this.sizes.fill(0); + } + this.head = 0; + this.tail = 0; + this.initialFill = 1; + this.free.length = 0; + this.calculatedSize = 0; + this.size = 0; + if (this.disposed) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + } + get reset() { + deprecatedMethod("reset", "clear"); + return this.clear; + } + get length() { + deprecatedProperty("length", "size"); + return this.size; + } + static get AbortController() { + return AC; + } + static get AbortSignal() { + return AS; + } + }; + module2.exports = LRUCache; + } +}); + +// ../node_modules/.pnpm/@pnpm+constants@6.2.0/node_modules/@pnpm/constants/lib/index.js +var require_lib35 = __commonJS({ + "../node_modules/.pnpm/@pnpm+constants@6.2.0/node_modules/@pnpm/constants/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.WORKSPACE_MANIFEST_FILENAME = exports2.LAYOUT_VERSION = exports2.ENGINE_NAME = exports2.LOCKFILE_VERSION_V6 = exports2.LOCKFILE_VERSION = exports2.WANTED_LOCKFILE = void 0; + exports2.WANTED_LOCKFILE = "pnpm-lock.yaml"; + exports2.LOCKFILE_VERSION = 5.4; + exports2.LOCKFILE_VERSION_V6 = "6.0"; + exports2.ENGINE_NAME = `${process.platform}-${process.arch}-node-${process.version.split(".")[0]}`; + exports2.LAYOUT_VERSION = 5; + exports2.WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml"; + } +}); + +// ../node_modules/.pnpm/@pnpm+error@4.0.1/node_modules/@pnpm/error/lib/index.js +var require_lib36 = __commonJS({ + "../node_modules/.pnpm/@pnpm+error@4.0.1/node_modules/@pnpm/error/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LockfileMissingDependencyError = exports2.FetchError = exports2.PnpmError = void 0; + var constants_1 = require_lib35(); + var PnpmError = class extends Error { + constructor(code, message2, opts) { + super(message2); + this.code = `ERR_PNPM_${code}`; + this.hint = opts?.hint; + this.attempts = opts?.attempts; + } + }; + exports2.PnpmError = PnpmError; + var FetchError = class extends PnpmError { + constructor(request, response, hint) { + const message2 = `GET ${request.url}: ${response.statusText} - ${response.status}`; + const authHeaderValue = request.authHeaderValue ? hideAuthInformation(request.authHeaderValue) : void 0; + if (response.status === 401 || response.status === 403 || response.status === 404) { + hint = hint ? `${hint} + +` : ""; + if (authHeaderValue) { + hint += `An authorization header was used: ${authHeaderValue}`; + } else { + hint += "No authorization header was set for the request."; + } + } + super(`FETCH_${response.status}`, message2, { hint }); + this.request = request; + this.response = response; + } + }; + exports2.FetchError = FetchError; + function hideAuthInformation(authHeaderValue) { + const [authType, token] = authHeaderValue.split(" "); + return `${authType} ${token.substring(0, 4)}[hidden]`; + } + var LockfileMissingDependencyError = class extends PnpmError { + constructor(depPath) { + const message2 = `Broken lockfile: no entry for '${depPath}' in ${constants_1.WANTED_LOCKFILE}`; + super("LOCKFILE_MISSING_DEPENDENCY", message2, { + hint: "This issue is probably caused by a badly resolved merge conflict.\nTo fix the lockfile, run 'pnpm install --no-frozen-lockfile'." + }); + } + }; + exports2.LockfileMissingDependencyError = LockfileMissingDependencyError; + } +}); + +// ../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js +var require_promisify = __commonJS({ + "../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function promisify(fn2) { + return function(req, opts) { + return new Promise((resolve, reject) => { + fn2.call(this, req, opts, (err, rtn) => { + if (err) { + reject(err); + } else { + resolve(rtn); + } + }); + }); + }; + } + exports2.default = promisify; + } +}); + +// ../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js +var require_src4 = __commonJS({ + "../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js"(exports2, module2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + var events_1 = require("events"); + var debug_1 = __importDefault4(require_src()); + var promisify_1 = __importDefault4(require_promisify()); + var debug = debug_1.default("agent-base"); + function isAgent(v) { + return Boolean(v) && typeof v.addRequest === "function"; + } + function isSecureEndpoint() { + const { stack: stack2 } = new Error(); + if (typeof stack2 !== "string") + return false; + return stack2.split("\n").some((l) => l.indexOf("(https.js:") !== -1 || l.indexOf("node:https:") !== -1); + } + function createAgent(callback, opts) { + return new createAgent.Agent(callback, opts); + } + (function(createAgent2) { + class Agent extends events_1.EventEmitter { + constructor(callback, _opts) { + super(); + let opts = _opts; + if (typeof callback === "function") { + this.callback = callback; + } else if (callback) { + opts = callback; + } + this.timeout = null; + if (opts && typeof opts.timeout === "number") { + this.timeout = opts.timeout; + } + this.maxFreeSockets = 1; + this.maxSockets = 1; + this.maxTotalSockets = Infinity; + this.sockets = {}; + this.freeSockets = {}; + this.requests = {}; + this.options = {}; + } + get defaultPort() { + if (typeof this.explicitDefaultPort === "number") { + return this.explicitDefaultPort; + } + return isSecureEndpoint() ? 443 : 80; + } + set defaultPort(v) { + this.explicitDefaultPort = v; + } + get protocol() { + if (typeof this.explicitProtocol === "string") { + return this.explicitProtocol; + } + return isSecureEndpoint() ? "https:" : "http:"; + } + set protocol(v) { + this.explicitProtocol = v; + } + callback(req, opts, fn2) { + throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); + } + /** + * Called by node-core's "_http_client.js" module when creating + * a new HTTP request with this Agent instance. + * + * @api public + */ + addRequest(req, _opts) { + const opts = Object.assign({}, _opts); + if (typeof opts.secureEndpoint !== "boolean") { + opts.secureEndpoint = isSecureEndpoint(); + } + if (opts.host == null) { + opts.host = "localhost"; + } + if (opts.port == null) { + opts.port = opts.secureEndpoint ? 443 : 80; + } + if (opts.protocol == null) { + opts.protocol = opts.secureEndpoint ? "https:" : "http:"; + } + if (opts.host && opts.path) { + delete opts.path; + } + delete opts.agent; + delete opts.hostname; + delete opts._defaultAgent; + delete opts.defaultPort; + delete opts.createConnection; + req._last = true; + req.shouldKeepAlive = false; + let timedOut = false; + let timeoutId = null; + const timeoutMs = opts.timeout || this.timeout; + const onerror = (err) => { + if (req._hadError) + return; + req.emit("error", err); + req._hadError = true; + }; + const ontimeout = () => { + timeoutId = null; + timedOut = true; + const err = new Error(`A "socket" was not created for HTTP request before ${timeoutMs}ms`); + err.code = "ETIMEOUT"; + onerror(err); + }; + const callbackError = (err) => { + if (timedOut) + return; + if (timeoutId !== null) { + clearTimeout(timeoutId); + timeoutId = null; + } + onerror(err); + }; + const onsocket = (socket) => { + if (timedOut) + return; + if (timeoutId != null) { + clearTimeout(timeoutId); + timeoutId = null; + } + if (isAgent(socket)) { + debug("Callback returned another Agent instance %o", socket.constructor.name); + socket.addRequest(req, opts); + return; + } + if (socket) { + socket.once("free", () => { + this.freeSocket(socket, opts); + }); + req.onSocket(socket); + return; + } + const err = new Error(`no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\``); + onerror(err); + }; + if (typeof this.callback !== "function") { + onerror(new Error("`callback` is not defined")); + return; + } + if (!this.promisifiedCallback) { + if (this.callback.length >= 3) { + debug("Converting legacy callback function to promise"); + this.promisifiedCallback = promisify_1.default(this.callback); + } else { + this.promisifiedCallback = this.callback; + } + } + if (typeof timeoutMs === "number" && timeoutMs > 0) { + timeoutId = setTimeout(ontimeout, timeoutMs); + } + if ("port" in opts && typeof opts.port !== "number") { + opts.port = Number(opts.port); + } + try { + debug("Resolving socket for %o request: %o", opts.protocol, `${req.method} ${req.path}`); + Promise.resolve(this.promisifiedCallback(req, opts)).then(onsocket, callbackError); + } catch (err) { + Promise.reject(err).catch(callbackError); + } + } + freeSocket(socket, opts) { + debug("Freeing socket %o %o", socket.constructor.name, opts); + socket.destroy(); + } + destroy() { + debug("Destroying agent %o", this.constructor.name); + } + } + createAgent2.Agent = Agent; + createAgent2.prototype = createAgent2.Agent.prototype; + })(createAgent || (createAgent = {})); + module2.exports = createAgent; + } +}); + +// ../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js +var require_parse_proxy_response = __commonJS({ + "../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var debug_1 = __importDefault4(require_src()); + var debug = debug_1.default("https-proxy-agent:parse-proxy-response"); + function parseProxyResponse(socket) { + return new Promise((resolve, reject) => { + let buffersLength = 0; + const buffers = []; + function read() { + const b = socket.read(); + if (b) + ondata(b); + else + socket.once("readable", read); + } + function cleanup() { + socket.removeListener("end", onend); + socket.removeListener("error", onerror); + socket.removeListener("close", onclose); + socket.removeListener("readable", read); + } + function onclose(err) { + debug("onclose had error %o", err); + } + function onend() { + debug("onend"); + } + function onerror(err) { + cleanup(); + debug("onerror %o", err); + reject(err); + } + function ondata(b) { + buffers.push(b); + buffersLength += b.length; + const buffered = Buffer.concat(buffers, buffersLength); + const endOfHeaders = buffered.indexOf("\r\n\r\n"); + if (endOfHeaders === -1) { + debug("have not received end of HTTP headers yet..."); + read(); + return; + } + const firstLine = buffered.toString("ascii", 0, buffered.indexOf("\r\n")); + const statusCode = +firstLine.split(" ")[1]; + debug("got proxy server response: %o", firstLine); + resolve({ + statusCode, + buffered + }); + } + socket.on("error", onerror); + socket.on("close", onclose); + socket.on("end", onend); + read(); + }); + } + exports2.default = parseProxyResponse; + } +}); + +// ../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js +var require_agent2 = __commonJS({ + "../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var net_1 = __importDefault4(require("net")); + var tls_1 = __importDefault4(require("tls")); + var url_1 = __importDefault4(require("url")); + var assert_1 = __importDefault4(require("assert")); + var debug_1 = __importDefault4(require_src()); + var agent_base_1 = require_src4(); + var parse_proxy_response_1 = __importDefault4(require_parse_proxy_response()); + var debug = debug_1.default("https-proxy-agent:agent"); + var HttpsProxyAgent = class extends agent_base_1.Agent { + constructor(_opts) { + let opts; + if (typeof _opts === "string") { + opts = url_1.default.parse(_opts); + } else { + opts = _opts; + } + if (!opts) { + throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); + } + debug("creating new HttpsProxyAgent instance: %o", opts); + super(opts); + const proxy = Object.assign({}, opts); + this.secureProxy = opts.secureProxy || isHTTPS(proxy.protocol); + proxy.host = proxy.hostname || proxy.host; + if (typeof proxy.port === "string") { + proxy.port = parseInt(proxy.port, 10); + } + if (!proxy.port && proxy.host) { + proxy.port = this.secureProxy ? 443 : 80; + } + if (this.secureProxy && !("ALPNProtocols" in proxy)) { + proxy.ALPNProtocols = ["http 1.1"]; + } + if (proxy.host && proxy.path) { + delete proxy.path; + delete proxy.pathname; + } + this.proxy = proxy; + } + /** + * Called when the node-core HTTP client library is creating a + * new HTTP request. + * + * @api protected + */ + callback(req, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const { proxy, secureProxy } = this; + let socket; + if (secureProxy) { + debug("Creating `tls.Socket`: %o", proxy); + socket = tls_1.default.connect(proxy); + } else { + debug("Creating `net.Socket`: %o", proxy); + socket = net_1.default.connect(proxy); + } + const headers = Object.assign({}, proxy.headers); + const hostname = `${opts.host}:${opts.port}`; + let payload = `CONNECT ${hostname} HTTP/1.1\r +`; + if (proxy.auth) { + headers["Proxy-Authorization"] = `Basic ${Buffer.from(proxy.auth).toString("base64")}`; + } + let { host, port, secureEndpoint } = opts; + if (!isDefaultPort(port, secureEndpoint)) { + host += `:${port}`; + } + headers.Host = host; + headers.Connection = "close"; + for (const name of Object.keys(headers)) { + payload += `${name}: ${headers[name]}\r +`; + } + const proxyResponsePromise = parse_proxy_response_1.default(socket); + socket.write(`${payload}\r +`); + const { statusCode, buffered } = yield proxyResponsePromise; + if (statusCode === 200) { + req.once("socket", resume); + if (opts.secureEndpoint) { + debug("Upgrading socket connection to TLS"); + const servername = opts.servername || opts.host; + return tls_1.default.connect(Object.assign(Object.assign({}, omit(opts, "host", "hostname", "path", "port")), { + socket, + servername + })); + } + return socket; + } + socket.destroy(); + const fakeSocket = new net_1.default.Socket({ writable: false }); + fakeSocket.readable = true; + req.once("socket", (s) => { + debug("replaying proxy buffer for failed request"); + assert_1.default(s.listenerCount("data") > 0); + s.push(buffered); + s.push(null); + }); + return fakeSocket; + }); + } + }; + exports2.default = HttpsProxyAgent; + function resume(socket) { + socket.resume(); + } + function isDefaultPort(port, secure) { + return Boolean(!secure && port === 80 || secure && port === 443); + } + function isHTTPS(protocol) { + return typeof protocol === "string" ? /^https:?$/i.test(protocol) : false; + } + function omit(obj, ...keys) { + const ret = {}; + let key; + for (key in obj) { + if (!keys.includes(key)) { + ret[key] = obj[key]; + } + } + return ret; + } + } +}); + +// ../node_modules/.pnpm/@tootallnate+once@2.0.0/node_modules/@tootallnate/once/dist/index.js +var require_dist7 = __commonJS({ + "../node_modules/.pnpm/@tootallnate+once@2.0.0/node_modules/@tootallnate/once/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function once(emitter, name, { signal } = {}) { + return new Promise((resolve, reject) => { + function cleanup() { + signal === null || signal === void 0 ? void 0 : signal.removeEventListener("abort", cleanup); + emitter.removeListener(name, onEvent); + emitter.removeListener("error", onError); + } + function onEvent(...args2) { + cleanup(); + resolve(args2); + } + function onError(err) { + cleanup(); + reject(err); + } + signal === null || signal === void 0 ? void 0 : signal.addEventListener("abort", cleanup); + emitter.on(name, onEvent); + emitter.on("error", onError); + }); + } + exports2.default = once; + } +}); + +// ../node_modules/.pnpm/http-proxy-agent@5.0.0/node_modules/http-proxy-agent/dist/agent.js +var require_agent3 = __commonJS({ + "../node_modules/.pnpm/http-proxy-agent@5.0.0/node_modules/http-proxy-agent/dist/agent.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var net_1 = __importDefault4(require("net")); + var tls_1 = __importDefault4(require("tls")); + var url_1 = __importDefault4(require("url")); + var debug_1 = __importDefault4(require_src()); + var once_1 = __importDefault4(require_dist7()); + var agent_base_1 = require_src4(); + var debug = (0, debug_1.default)("http-proxy-agent"); + function isHTTPS(protocol) { + return typeof protocol === "string" ? /^https:?$/i.test(protocol) : false; + } + var HttpProxyAgent = class extends agent_base_1.Agent { + constructor(_opts) { + let opts; + if (typeof _opts === "string") { + opts = url_1.default.parse(_opts); + } else { + opts = _opts; + } + if (!opts) { + throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); + } + debug("Creating new HttpProxyAgent instance: %o", opts); + super(opts); + const proxy = Object.assign({}, opts); + this.secureProxy = opts.secureProxy || isHTTPS(proxy.protocol); + proxy.host = proxy.hostname || proxy.host; + if (typeof proxy.port === "string") { + proxy.port = parseInt(proxy.port, 10); + } + if (!proxy.port && proxy.host) { + proxy.port = this.secureProxy ? 443 : 80; + } + if (proxy.host && proxy.path) { + delete proxy.path; + delete proxy.pathname; + } + this.proxy = proxy; + } + /** + * Called when the node-core HTTP client library is creating a + * new HTTP request. + * + * @api protected + */ + callback(req, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const { proxy, secureProxy } = this; + const parsed = url_1.default.parse(req.path); + if (!parsed.protocol) { + parsed.protocol = "http:"; + } + if (!parsed.hostname) { + parsed.hostname = opts.hostname || opts.host || null; + } + if (parsed.port == null && typeof opts.port) { + parsed.port = String(opts.port); + } + if (parsed.port === "80") { + parsed.port = ""; + } + req.path = url_1.default.format(parsed); + if (proxy.auth) { + req.setHeader("Proxy-Authorization", `Basic ${Buffer.from(proxy.auth).toString("base64")}`); + } + let socket; + if (secureProxy) { + debug("Creating `tls.Socket`: %o", proxy); + socket = tls_1.default.connect(proxy); + } else { + debug("Creating `net.Socket`: %o", proxy); + socket = net_1.default.connect(proxy); + } + if (req._header) { + let first; + let endOfHeaders; + debug("Regenerating stored HTTP header string for request"); + req._header = null; + req._implicitHeader(); + if (req.output && req.output.length > 0) { + debug("Patching connection write() output buffer with updated header"); + first = req.output[0]; + endOfHeaders = first.indexOf("\r\n\r\n") + 4; + req.output[0] = req._header + first.substring(endOfHeaders); + debug("Output buffer: %o", req.output); + } else if (req.outputData && req.outputData.length > 0) { + debug("Patching connection write() output buffer with updated header"); + first = req.outputData[0].data; + endOfHeaders = first.indexOf("\r\n\r\n") + 4; + req.outputData[0].data = req._header + first.substring(endOfHeaders); + debug("Output buffer: %o", req.outputData[0].data); + } + } + yield (0, once_1.default)(socket, "connect"); + return socket; + }); + } + }; + exports2.default = HttpProxyAgent; + } +}); + +// ../node_modules/.pnpm/http-proxy-agent@5.0.0/node_modules/http-proxy-agent/dist/index.js +var require_dist8 = __commonJS({ + "../node_modules/.pnpm/http-proxy-agent@5.0.0/node_modules/http-proxy-agent/dist/index.js"(exports2, module2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + var agent_1 = __importDefault4(require_agent3()); + function createHttpProxyAgent(opts) { + return new agent_1.default(opts); + } + (function(createHttpProxyAgent2) { + createHttpProxyAgent2.HttpProxyAgent = agent_1.default; + createHttpProxyAgent2.prototype = agent_1.default.prototype; + })(createHttpProxyAgent || (createHttpProxyAgent = {})); + module2.exports = createHttpProxyAgent; + } +}); + +// ../node_modules/.pnpm/ip@2.0.0/node_modules/ip/lib/ip.js +var require_ip = __commonJS({ + "../node_modules/.pnpm/ip@2.0.0/node_modules/ip/lib/ip.js"(exports2) { + var ip = exports2; + var { Buffer: Buffer2 } = require("buffer"); + var os = require("os"); + ip.toBuffer = function(ip2, buff, offset) { + offset = ~~offset; + let result2; + if (this.isV4Format(ip2)) { + result2 = buff || Buffer2.alloc(offset + 4); + ip2.split(/\./g).map((byte) => { + result2[offset++] = parseInt(byte, 10) & 255; + }); + } else if (this.isV6Format(ip2)) { + const sections = ip2.split(":", 8); + let i; + for (i = 0; i < sections.length; i++) { + const isv4 = this.isV4Format(sections[i]); + let v4Buffer; + if (isv4) { + v4Buffer = this.toBuffer(sections[i]); + sections[i] = v4Buffer.slice(0, 2).toString("hex"); + } + if (v4Buffer && ++i < 8) { + sections.splice(i, 0, v4Buffer.slice(2, 4).toString("hex")); + } + } + if (sections[0] === "") { + while (sections.length < 8) + sections.unshift("0"); + } else if (sections[sections.length - 1] === "") { + while (sections.length < 8) + sections.push("0"); + } else if (sections.length < 8) { + for (i = 0; i < sections.length && sections[i] !== ""; i++) + ; + const argv2 = [i, 1]; + for (i = 9 - sections.length; i > 0; i--) { + argv2.push("0"); + } + sections.splice(...argv2); + } + result2 = buff || Buffer2.alloc(offset + 16); + for (i = 0; i < sections.length; i++) { + const word = parseInt(sections[i], 16); + result2[offset++] = word >> 8 & 255; + result2[offset++] = word & 255; + } + } + if (!result2) { + throw Error(`Invalid ip address: ${ip2}`); + } + return result2; + }; + ip.toString = function(buff, offset, length) { + offset = ~~offset; + length = length || buff.length - offset; + let result2 = []; + if (length === 4) { + for (let i = 0; i < length; i++) { + result2.push(buff[offset + i]); + } + result2 = result2.join("."); + } else if (length === 16) { + for (let i = 0; i < length; i += 2) { + result2.push(buff.readUInt16BE(offset + i).toString(16)); + } + result2 = result2.join(":"); + result2 = result2.replace(/(^|:)0(:0)*:0(:|$)/, "$1::$3"); + result2 = result2.replace(/:{3,4}/, "::"); + } + return result2; + }; + var ipv4Regex = /^(\d{1,3}\.){3,3}\d{1,3}$/; + var ipv6Regex = /^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i; + ip.isV4Format = function(ip2) { + return ipv4Regex.test(ip2); + }; + ip.isV6Format = function(ip2) { + return ipv6Regex.test(ip2); + }; + function _normalizeFamily(family) { + if (family === 4) { + return "ipv4"; + } + if (family === 6) { + return "ipv6"; + } + return family ? family.toLowerCase() : "ipv4"; + } + ip.fromPrefixLen = function(prefixlen, family) { + if (prefixlen > 32) { + family = "ipv6"; + } else { + family = _normalizeFamily(family); + } + let len = 4; + if (family === "ipv6") { + len = 16; + } + const buff = Buffer2.alloc(len); + for (let i = 0, n = buff.length; i < n; ++i) { + let bits = 8; + if (prefixlen < 8) { + bits = prefixlen; + } + prefixlen -= bits; + buff[i] = ~(255 >> bits) & 255; + } + return ip.toString(buff); + }; + ip.mask = function(addr, mask) { + addr = ip.toBuffer(addr); + mask = ip.toBuffer(mask); + const result2 = Buffer2.alloc(Math.max(addr.length, mask.length)); + let i; + if (addr.length === mask.length) { + for (i = 0; i < addr.length; i++) { + result2[i] = addr[i] & mask[i]; + } + } else if (mask.length === 4) { + for (i = 0; i < mask.length; i++) { + result2[i] = addr[addr.length - 4 + i] & mask[i]; + } + } else { + for (i = 0; i < result2.length - 6; i++) { + result2[i] = 0; + } + result2[10] = 255; + result2[11] = 255; + for (i = 0; i < addr.length; i++) { + result2[i + 12] = addr[i] & mask[i + 12]; + } + i += 12; + } + for (; i < result2.length; i++) { + result2[i] = 0; + } + return ip.toString(result2); + }; + ip.cidr = function(cidrString) { + const cidrParts = cidrString.split("/"); + const addr = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr}`); + } + const mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + return ip.mask(addr, mask); + }; + ip.subnet = function(addr, mask) { + const networkAddress = ip.toLong(ip.mask(addr, mask)); + const maskBuffer = ip.toBuffer(mask); + let maskLength = 0; + for (let i = 0; i < maskBuffer.length; i++) { + if (maskBuffer[i] === 255) { + maskLength += 8; + } else { + let octet = maskBuffer[i] & 255; + while (octet) { + octet = octet << 1 & 255; + maskLength++; + } + } + } + const numberOfAddresses = 2 ** (32 - maskLength); + return { + networkAddress: ip.fromLong(networkAddress), + firstAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress) : ip.fromLong(networkAddress + 1), + lastAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress + numberOfAddresses - 1) : ip.fromLong(networkAddress + numberOfAddresses - 2), + broadcastAddress: ip.fromLong(networkAddress + numberOfAddresses - 1), + subnetMask: mask, + subnetMaskLength: maskLength, + numHosts: numberOfAddresses <= 2 ? numberOfAddresses : numberOfAddresses - 2, + length: numberOfAddresses, + contains(other) { + return networkAddress === ip.toLong(ip.mask(other, mask)); + } + }; + }; + ip.cidrSubnet = function(cidrString) { + const cidrParts = cidrString.split("/"); + const addr = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr}`); + } + const mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + return ip.subnet(addr, mask); + }; + ip.not = function(addr) { + const buff = ip.toBuffer(addr); + for (let i = 0; i < buff.length; i++) { + buff[i] = 255 ^ buff[i]; + } + return ip.toString(buff); + }; + ip.or = function(a, b) { + a = ip.toBuffer(a); + b = ip.toBuffer(b); + if (a.length === b.length) { + for (let i = 0; i < a.length; ++i) { + a[i] |= b[i]; + } + return ip.toString(a); + } + let buff = a; + let other = b; + if (b.length > a.length) { + buff = b; + other = a; + } + const offset = buff.length - other.length; + for (let i = offset; i < buff.length; ++i) { + buff[i] |= other[i - offset]; + } + return ip.toString(buff); + }; + ip.isEqual = function(a, b) { + a = ip.toBuffer(a); + b = ip.toBuffer(b); + if (a.length === b.length) { + for (let i = 0; i < a.length; i++) { + if (a[i] !== b[i]) + return false; + } + return true; + } + if (b.length === 4) { + const t = b; + b = a; + a = t; + } + for (let i = 0; i < 10; i++) { + if (b[i] !== 0) + return false; + } + const word = b.readUInt16BE(10); + if (word !== 0 && word !== 65535) + return false; + for (let i = 0; i < 4; i++) { + if (a[i] !== b[i + 12]) + return false; + } + return true; + }; + ip.isPrivate = function(addr) { + return /^(::f{4}:)?10\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?192\.168\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?172\.(1[6-9]|2\d|30|31)\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?169\.254\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^f[cd][0-9a-f]{2}:/i.test(addr) || /^fe80:/i.test(addr) || /^::1$/.test(addr) || /^::$/.test(addr); + }; + ip.isPublic = function(addr) { + return !ip.isPrivate(addr); + }; + ip.isLoopback = function(addr) { + return /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/.test(addr) || /^fe80::1$/.test(addr) || /^::1$/.test(addr) || /^::$/.test(addr); + }; + ip.loopback = function(family) { + family = _normalizeFamily(family); + if (family !== "ipv4" && family !== "ipv6") { + throw new Error("family must be ipv4 or ipv6"); + } + return family === "ipv4" ? "127.0.0.1" : "fe80::1"; + }; + ip.address = function(name, family) { + const interfaces = os.networkInterfaces(); + family = _normalizeFamily(family); + if (name && name !== "private" && name !== "public") { + const res = interfaces[name].filter((details) => { + const itemFamily = _normalizeFamily(details.family); + return itemFamily === family; + }); + if (res.length === 0) { + return void 0; + } + return res[0].address; + } + const all = Object.keys(interfaces).map((nic) => { + const addresses = interfaces[nic].filter((details) => { + details.family = _normalizeFamily(details.family); + if (details.family !== family || ip.isLoopback(details.address)) { + return false; + } + if (!name) { + return true; + } + return name === "public" ? ip.isPrivate(details.address) : ip.isPublic(details.address); + }); + return addresses.length ? addresses[0].address : void 0; + }).filter(Boolean); + return !all.length ? ip.loopback(family) : all[0]; + }; + ip.toLong = function(ip2) { + let ipl = 0; + ip2.split(".").forEach((octet) => { + ipl <<= 8; + ipl += parseInt(octet); + }); + return ipl >>> 0; + }; + ip.fromLong = function(ipl) { + return `${ipl >>> 24}.${ipl >> 16 & 255}.${ipl >> 8 & 255}.${ipl & 255}`; + }; + } +}); + +// ../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js +var require_utils8 = __commonJS({ + "../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var buffer_1 = require("buffer"); + var ERRORS = { + INVALID_ENCODING: "Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.", + INVALID_SMARTBUFFER_SIZE: "Invalid size provided. Size must be a valid integer greater than zero.", + INVALID_SMARTBUFFER_BUFFER: "Invalid Buffer provided in SmartBufferOptions.", + INVALID_SMARTBUFFER_OBJECT: "Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.", + INVALID_OFFSET: "An invalid offset value was provided.", + INVALID_OFFSET_NON_NUMBER: "An invalid offset value was provided. A numeric value is required.", + INVALID_LENGTH: "An invalid length value was provided.", + INVALID_LENGTH_NON_NUMBER: "An invalid length value was provived. A numeric value is required.", + INVALID_TARGET_OFFSET: "Target offset is beyond the bounds of the internal SmartBuffer data.", + INVALID_TARGET_LENGTH: "Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.", + INVALID_READ_BEYOND_BOUNDS: "Attempted to read beyond the bounds of the managed data.", + INVALID_WRITE_BEYOND_BOUNDS: "Attempted to write beyond the bounds of the managed data." + }; + exports2.ERRORS = ERRORS; + function checkEncoding(encoding) { + if (!buffer_1.Buffer.isEncoding(encoding)) { + throw new Error(ERRORS.INVALID_ENCODING); + } + } + exports2.checkEncoding = checkEncoding; + function isFiniteInteger(value) { + return typeof value === "number" && isFinite(value) && isInteger(value); + } + exports2.isFiniteInteger = isFiniteInteger; + function checkOffsetOrLengthValue(value, offset) { + if (typeof value === "number") { + if (!isFiniteInteger(value) || value < 0) { + throw new Error(offset ? ERRORS.INVALID_OFFSET : ERRORS.INVALID_LENGTH); + } + } else { + throw new Error(offset ? ERRORS.INVALID_OFFSET_NON_NUMBER : ERRORS.INVALID_LENGTH_NON_NUMBER); + } + } + function checkLengthValue(length) { + checkOffsetOrLengthValue(length, false); + } + exports2.checkLengthValue = checkLengthValue; + function checkOffsetValue(offset) { + checkOffsetOrLengthValue(offset, true); + } + exports2.checkOffsetValue = checkOffsetValue; + function checkTargetOffset(offset, buff) { + if (offset < 0 || offset > buff.length) { + throw new Error(ERRORS.INVALID_TARGET_OFFSET); + } + } + exports2.checkTargetOffset = checkTargetOffset; + function isInteger(value) { + return typeof value === "number" && isFinite(value) && Math.floor(value) === value; + } + function bigIntAndBufferInt64Check(bufferMethod) { + if (typeof BigInt === "undefined") { + throw new Error("Platform does not support JS BigInt type."); + } + if (typeof buffer_1.Buffer.prototype[bufferMethod] === "undefined") { + throw new Error(`Platform does not support Buffer.prototype.${bufferMethod}.`); + } + } + exports2.bigIntAndBufferInt64Check = bigIntAndBufferInt64Check; + } +}); + +// ../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js +var require_smartbuffer = __commonJS({ + "../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils_1 = require_utils8(); + var DEFAULT_SMARTBUFFER_SIZE = 4096; + var DEFAULT_SMARTBUFFER_ENCODING = "utf8"; + var SmartBuffer = class { + /** + * Creates a new SmartBuffer instance. + * + * @param options { SmartBufferOptions } The SmartBufferOptions to apply to this instance. + */ + constructor(options) { + this.length = 0; + this._encoding = DEFAULT_SMARTBUFFER_ENCODING; + this._writeOffset = 0; + this._readOffset = 0; + if (SmartBuffer.isSmartBufferOptions(options)) { + if (options.encoding) { + utils_1.checkEncoding(options.encoding); + this._encoding = options.encoding; + } + if (options.size) { + if (utils_1.isFiniteInteger(options.size) && options.size > 0) { + this._buff = Buffer.allocUnsafe(options.size); + } else { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_SIZE); + } + } else if (options.buff) { + if (Buffer.isBuffer(options.buff)) { + this._buff = options.buff; + this.length = options.buff.length; + } else { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_BUFFER); + } + } else { + this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); + } + } else { + if (typeof options !== "undefined") { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_OBJECT); + } + this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); + } + } + /** + * Creates a new SmartBuffer instance with the provided internal Buffer size and optional encoding. + * + * @param size { Number } The size of the internal Buffer. + * @param encoding { String } The BufferEncoding to use for strings. + * + * @return { SmartBuffer } + */ + static fromSize(size, encoding) { + return new this({ + size, + encoding + }); + } + /** + * Creates a new SmartBuffer instance with the provided Buffer and optional encoding. + * + * @param buffer { Buffer } The Buffer to use as the internal Buffer value. + * @param encoding { String } The BufferEncoding to use for strings. + * + * @return { SmartBuffer } + */ + static fromBuffer(buff, encoding) { + return new this({ + buff, + encoding + }); + } + /** + * Creates a new SmartBuffer instance with the provided SmartBufferOptions options. + * + * @param options { SmartBufferOptions } The options to use when creating the SmartBuffer instance. + */ + static fromOptions(options) { + return new this(options); + } + /** + * Type checking function that determines if an object is a SmartBufferOptions object. + */ + static isSmartBufferOptions(options) { + const castOptions = options; + return castOptions && (castOptions.encoding !== void 0 || castOptions.size !== void 0 || castOptions.buff !== void 0); + } + // Signed integers + /** + * Reads an Int8 value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt8(offset) { + return this._readNumberValue(Buffer.prototype.readInt8, 1, offset); + } + /** + * Reads an Int16BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt16BE(offset) { + return this._readNumberValue(Buffer.prototype.readInt16BE, 2, offset); + } + /** + * Reads an Int16LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt16LE(offset) { + return this._readNumberValue(Buffer.prototype.readInt16LE, 2, offset); + } + /** + * Reads an Int32BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt32BE(offset) { + return this._readNumberValue(Buffer.prototype.readInt32BE, 4, offset); + } + /** + * Reads an Int32LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt32LE(offset) { + return this._readNumberValue(Buffer.prototype.readInt32LE, 4, offset); + } + /** + * Reads a BigInt64BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigInt64BE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigInt64BE"); + return this._readNumberValue(Buffer.prototype.readBigInt64BE, 8, offset); + } + /** + * Reads a BigInt64LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigInt64LE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigInt64LE"); + return this._readNumberValue(Buffer.prototype.readBigInt64LE, 8, offset); + } + /** + * Writes an Int8 value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt8(value, offset) { + this._writeNumberValue(Buffer.prototype.writeInt8, 1, value, offset); + return this; + } + /** + * Inserts an Int8 value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt8(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt8, 1, value, offset); + } + /** + * Writes an Int16BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt16BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); + } + /** + * Inserts an Int16BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt16BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); + } + /** + * Writes an Int16LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt16LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); + } + /** + * Inserts an Int16LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt16LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); + } + /** + * Writes an Int32BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt32BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); + } + /** + * Inserts an Int32BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt32BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); + } + /** + * Writes an Int32LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt32LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); + } + /** + * Inserts an Int32LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt32LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); + } + /** + * Writes a BigInt64BE value to the current write position (or at optional offset). + * + * @param value { BigInt } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); + return this._writeNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); + } + /** + * Inserts a BigInt64BE value at the given offset value. + * + * @param value { BigInt } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); + return this._insertNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); + } + /** + * Writes a BigInt64LE value to the current write position (or at optional offset). + * + * @param value { BigInt } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); + return this._writeNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); + } + /** + * Inserts a Int64LE value at the given offset value. + * + * @param value { BigInt } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); + return this._insertNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); + } + // Unsigned Integers + /** + * Reads an UInt8 value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt8(offset) { + return this._readNumberValue(Buffer.prototype.readUInt8, 1, offset); + } + /** + * Reads an UInt16BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt16BE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt16BE, 2, offset); + } + /** + * Reads an UInt16LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt16LE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt16LE, 2, offset); + } + /** + * Reads an UInt32BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt32BE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt32BE, 4, offset); + } + /** + * Reads an UInt32LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt32LE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt32LE, 4, offset); + } + /** + * Reads a BigUInt64BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigUInt64BE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigUInt64BE"); + return this._readNumberValue(Buffer.prototype.readBigUInt64BE, 8, offset); + } + /** + * Reads a BigUInt64LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigUInt64LE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigUInt64LE"); + return this._readNumberValue(Buffer.prototype.readBigUInt64LE, 8, offset); + } + /** + * Writes an UInt8 value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt8(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); + } + /** + * Inserts an UInt8 value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt8(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); + } + /** + * Writes an UInt16BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt16BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); + } + /** + * Inserts an UInt16BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt16BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); + } + /** + * Writes an UInt16LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt16LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); + } + /** + * Inserts an UInt16LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt16LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); + } + /** + * Writes an UInt32BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt32BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); + } + /** + * Inserts an UInt32BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt32BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); + } + /** + * Writes an UInt32LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt32LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); + } + /** + * Inserts an UInt32LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt32LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); + } + /** + * Writes a BigUInt64BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigUInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); + return this._writeNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); + } + /** + * Inserts a BigUInt64BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigUInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); + return this._insertNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); + } + /** + * Writes a BigUInt64LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigUInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); + return this._writeNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); + } + /** + * Inserts a BigUInt64LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigUInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); + return this._insertNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); + } + // Floating Point + /** + * Reads an FloatBE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readFloatBE(offset) { + return this._readNumberValue(Buffer.prototype.readFloatBE, 4, offset); + } + /** + * Reads an FloatLE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readFloatLE(offset) { + return this._readNumberValue(Buffer.prototype.readFloatLE, 4, offset); + } + /** + * Writes a FloatBE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeFloatBE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); + } + /** + * Inserts a FloatBE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertFloatBE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); + } + /** + * Writes a FloatLE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeFloatLE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); + } + /** + * Inserts a FloatLE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertFloatLE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); + } + // Double Floating Point + /** + * Reads an DoublEBE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readDoubleBE(offset) { + return this._readNumberValue(Buffer.prototype.readDoubleBE, 8, offset); + } + /** + * Reads an DoubleLE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readDoubleLE(offset) { + return this._readNumberValue(Buffer.prototype.readDoubleLE, 8, offset); + } + /** + * Writes a DoubleBE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeDoubleBE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); + } + /** + * Inserts a DoubleBE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertDoubleBE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); + } + /** + * Writes a DoubleLE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeDoubleLE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); + } + /** + * Inserts a DoubleLE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertDoubleLE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); + } + // Strings + /** + * Reads a String from the current read position. + * + * @param arg1 { Number | String } The number of bytes to read as a String, or the BufferEncoding to use for + * the string (Defaults to instance level encoding). + * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding). + * + * @return { String } + */ + readString(arg1, encoding) { + let lengthVal; + if (typeof arg1 === "number") { + utils_1.checkLengthValue(arg1); + lengthVal = Math.min(arg1, this.length - this._readOffset); + } else { + encoding = arg1; + lengthVal = this.length - this._readOffset; + } + if (typeof encoding !== "undefined") { + utils_1.checkEncoding(encoding); + } + const value = this._buff.slice(this._readOffset, this._readOffset + lengthVal).toString(encoding || this._encoding); + this._readOffset += lengthVal; + return value; + } + /** + * Inserts a String + * + * @param value { String } The String value to insert. + * @param offset { Number } The offset to insert the string at. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + insertString(value, offset, encoding) { + utils_1.checkOffsetValue(offset); + return this._handleString(value, true, offset, encoding); + } + /** + * Writes a String + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string at, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + writeString(value, arg2, encoding) { + return this._handleString(value, false, arg2, encoding); + } + /** + * Reads a null-terminated String from the current read position. + * + * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding). + * + * @return { String } + */ + readStringNT(encoding) { + if (typeof encoding !== "undefined") { + utils_1.checkEncoding(encoding); + } + let nullPos = this.length; + for (let i = this._readOffset; i < this.length; i++) { + if (this._buff[i] === 0) { + nullPos = i; + break; + } + } + const value = this._buff.slice(this._readOffset, nullPos); + this._readOffset = nullPos + 1; + return value.toString(encoding || this._encoding); + } + /** + * Inserts a null-terminated String. + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + insertStringNT(value, offset, encoding) { + utils_1.checkOffsetValue(offset); + this.insertString(value, offset, encoding); + this.insertUInt8(0, offset + value.length); + return this; + } + /** + * Writes a null-terminated String. + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + writeStringNT(value, arg2, encoding) { + this.writeString(value, arg2, encoding); + this.writeUInt8(0, typeof arg2 === "number" ? arg2 + value.length : this.writeOffset); + return this; + } + // Buffers + /** + * Reads a Buffer from the internal read position. + * + * @param length { Number } The length of data to read as a Buffer. + * + * @return { Buffer } + */ + readBuffer(length) { + if (typeof length !== "undefined") { + utils_1.checkLengthValue(length); + } + const lengthVal = typeof length === "number" ? length : this.length; + const endPoint = Math.min(this.length, this._readOffset + lengthVal); + const value = this._buff.slice(this._readOffset, endPoint); + this._readOffset = endPoint; + return value; + } + /** + * Writes a Buffer to the current write position. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + insertBuffer(value, offset) { + utils_1.checkOffsetValue(offset); + return this._handleBuffer(value, true, offset); + } + /** + * Writes a Buffer to the current write position. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + writeBuffer(value, offset) { + return this._handleBuffer(value, false, offset); + } + /** + * Reads a null-terminated Buffer from the current read poisiton. + * + * @return { Buffer } + */ + readBufferNT() { + let nullPos = this.length; + for (let i = this._readOffset; i < this.length; i++) { + if (this._buff[i] === 0) { + nullPos = i; + break; + } + } + const value = this._buff.slice(this._readOffset, nullPos); + this._readOffset = nullPos + 1; + return value; + } + /** + * Inserts a null-terminated Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + insertBufferNT(value, offset) { + utils_1.checkOffsetValue(offset); + this.insertBuffer(value, offset); + this.insertUInt8(0, offset + value.length); + return this; + } + /** + * Writes a null-terminated Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + writeBufferNT(value, offset) { + if (typeof offset !== "undefined") { + utils_1.checkOffsetValue(offset); + } + this.writeBuffer(value, offset); + this.writeUInt8(0, typeof offset === "number" ? offset + value.length : this._writeOffset); + return this; + } + /** + * Clears the SmartBuffer instance to its original empty state. + */ + clear() { + this._writeOffset = 0; + this._readOffset = 0; + this.length = 0; + return this; + } + /** + * Gets the remaining data left to be read from the SmartBuffer instance. + * + * @return { Number } + */ + remaining() { + return this.length - this._readOffset; + } + /** + * Gets the current read offset value of the SmartBuffer instance. + * + * @return { Number } + */ + get readOffset() { + return this._readOffset; + } + /** + * Sets the read offset value of the SmartBuffer instance. + * + * @param offset { Number } - The offset value to set. + */ + set readOffset(offset) { + utils_1.checkOffsetValue(offset); + utils_1.checkTargetOffset(offset, this); + this._readOffset = offset; + } + /** + * Gets the current write offset value of the SmartBuffer instance. + * + * @return { Number } + */ + get writeOffset() { + return this._writeOffset; + } + /** + * Sets the write offset value of the SmartBuffer instance. + * + * @param offset { Number } - The offset value to set. + */ + set writeOffset(offset) { + utils_1.checkOffsetValue(offset); + utils_1.checkTargetOffset(offset, this); + this._writeOffset = offset; + } + /** + * Gets the currently set string encoding of the SmartBuffer instance. + * + * @return { BufferEncoding } The string Buffer encoding currently set. + */ + get encoding() { + return this._encoding; + } + /** + * Sets the string encoding of the SmartBuffer instance. + * + * @param encoding { BufferEncoding } The string Buffer encoding to set. + */ + set encoding(encoding) { + utils_1.checkEncoding(encoding); + this._encoding = encoding; + } + /** + * Gets the underlying internal Buffer. (This includes unmanaged data in the Buffer) + * + * @return { Buffer } The Buffer value. + */ + get internalBuffer() { + return this._buff; + } + /** + * Gets the value of the internal managed Buffer (Includes managed data only) + * + * @param { Buffer } + */ + toBuffer() { + return this._buff.slice(0, this.length); + } + /** + * Gets the String value of the internal managed Buffer + * + * @param encoding { String } The BufferEncoding to display the Buffer as (defaults to instance level encoding). + */ + toString(encoding) { + const encodingVal = typeof encoding === "string" ? encoding : this._encoding; + utils_1.checkEncoding(encodingVal); + return this._buff.toString(encodingVal, 0, this.length); + } + /** + * Destroys the SmartBuffer instance. + */ + destroy() { + this.clear(); + return this; + } + /** + * Handles inserting and writing strings. + * + * @param value { String } The String value to insert. + * @param isInsert { Boolean } True if inserting a string, false if writing. + * @param arg2 { Number | String } The offset to insert the string at, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + */ + _handleString(value, isInsert, arg3, encoding) { + let offsetVal = this._writeOffset; + let encodingVal = this._encoding; + if (typeof arg3 === "number") { + offsetVal = arg3; + } else if (typeof arg3 === "string") { + utils_1.checkEncoding(arg3); + encodingVal = arg3; + } + if (typeof encoding === "string") { + utils_1.checkEncoding(encoding); + encodingVal = encoding; + } + const byteLength = Buffer.byteLength(value, encodingVal); + if (isInsert) { + this.ensureInsertable(byteLength, offsetVal); + } else { + this._ensureWriteable(byteLength, offsetVal); + } + this._buff.write(value, offsetVal, byteLength, encodingVal); + if (isInsert) { + this._writeOffset += byteLength; + } else { + if (typeof arg3 === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + byteLength); + } else { + this._writeOffset += byteLength; + } + } + return this; + } + /** + * Handles writing or insert of a Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + */ + _handleBuffer(value, isInsert, offset) { + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + if (isInsert) { + this.ensureInsertable(value.length, offsetVal); + } else { + this._ensureWriteable(value.length, offsetVal); + } + value.copy(this._buff, offsetVal); + if (isInsert) { + this._writeOffset += value.length; + } else { + if (typeof offset === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + value.length); + } else { + this._writeOffset += value.length; + } + } + return this; + } + /** + * Ensures that the internal Buffer is large enough to read data. + * + * @param length { Number } The length of the data that needs to be read. + * @param offset { Number } The offset of the data that needs to be read. + */ + ensureReadable(length, offset) { + let offsetVal = this._readOffset; + if (typeof offset !== "undefined") { + utils_1.checkOffsetValue(offset); + offsetVal = offset; + } + if (offsetVal < 0 || offsetVal + length > this.length) { + throw new Error(utils_1.ERRORS.INVALID_READ_BEYOND_BOUNDS); + } + } + /** + * Ensures that the internal Buffer is large enough to insert data. + * + * @param dataLength { Number } The length of the data that needs to be written. + * @param offset { Number } The offset of the data to be written. + */ + ensureInsertable(dataLength, offset) { + utils_1.checkOffsetValue(offset); + this._ensureCapacity(this.length + dataLength); + if (offset < this.length) { + this._buff.copy(this._buff, offset + dataLength, offset, this._buff.length); + } + if (offset + dataLength > this.length) { + this.length = offset + dataLength; + } else { + this.length += dataLength; + } + } + /** + * Ensures that the internal Buffer is large enough to write data. + * + * @param dataLength { Number } The length of the data that needs to be written. + * @param offset { Number } The offset of the data to be written (defaults to writeOffset). + */ + _ensureWriteable(dataLength, offset) { + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + this._ensureCapacity(offsetVal + dataLength); + if (offsetVal + dataLength > this.length) { + this.length = offsetVal + dataLength; + } + } + /** + * Ensures that the internal Buffer is large enough to write at least the given amount of data. + * + * @param minLength { Number } The minimum length of the data needs to be written. + */ + _ensureCapacity(minLength) { + const oldLength = this._buff.length; + if (minLength > oldLength) { + let data = this._buff; + let newLength = oldLength * 3 / 2 + 1; + if (newLength < minLength) { + newLength = minLength; + } + this._buff = Buffer.allocUnsafe(newLength); + data.copy(this._buff, 0, 0, oldLength); + } + } + /** + * Reads a numeric number value using the provided function. + * + * @typeparam T { number | bigint } The type of the value to be read + * + * @param func { Function(offset: number) => number } The function to read data on the internal Buffer with. + * @param byteSize { Number } The number of bytes read. + * @param offset { Number } The offset to read from (optional). When this is not provided, the managed readOffset is used instead. + * + * @returns { T } the number value + */ + _readNumberValue(func, byteSize, offset) { + this.ensureReadable(byteSize, offset); + const value = func.call(this._buff, typeof offset === "number" ? offset : this._readOffset); + if (typeof offset === "undefined") { + this._readOffset += byteSize; + } + return value; + } + /** + * Inserts a numeric number value based on the given offset and value. + * + * @typeparam T { number | bigint } The type of the value to be written + * + * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with. + * @param byteSize { Number } The number of bytes written. + * @param value { T } The number value to write. + * @param offset { Number } the offset to write the number at (REQUIRED). + * + * @returns SmartBuffer this buffer + */ + _insertNumberValue(func, byteSize, value, offset) { + utils_1.checkOffsetValue(offset); + this.ensureInsertable(byteSize, offset); + func.call(this._buff, value, offset); + this._writeOffset += byteSize; + return this; + } + /** + * Writes a numeric number value based on the given offset and value. + * + * @typeparam T { number | bigint } The type of the value to be written + * + * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with. + * @param byteSize { Number } The number of bytes written. + * @param value { T } The number value to write. + * @param offset { Number } the offset to write the number at (REQUIRED). + * + * @returns SmartBuffer this buffer + */ + _writeNumberValue(func, byteSize, value, offset) { + if (typeof offset === "number") { + if (offset < 0) { + throw new Error(utils_1.ERRORS.INVALID_WRITE_BEYOND_BOUNDS); + } + utils_1.checkOffsetValue(offset); + } + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + this._ensureWriteable(byteSize, offsetVal); + func.call(this._buff, value, offsetVal); + if (typeof offset === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + byteSize); + } else { + this._writeOffset += byteSize; + } + return this; + } + }; + exports2.SmartBuffer = SmartBuffer; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/constants.js +var require_constants8 = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SOCKS5_NO_ACCEPTABLE_AUTH = exports2.SOCKS5_CUSTOM_AUTH_END = exports2.SOCKS5_CUSTOM_AUTH_START = exports2.SOCKS_INCOMING_PACKET_SIZES = exports2.SocksClientState = exports2.Socks5Response = exports2.Socks5HostType = exports2.Socks5Auth = exports2.Socks4Response = exports2.SocksCommand = exports2.ERRORS = exports2.DEFAULT_TIMEOUT = void 0; + var DEFAULT_TIMEOUT = 3e4; + exports2.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT; + var ERRORS = { + InvalidSocksCommand: "An invalid SOCKS command was provided. Valid options are connect, bind, and associate.", + InvalidSocksCommandForOperation: "An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.", + InvalidSocksCommandChain: "An invalid SOCKS command was provided. Chaining currently only supports the connect command.", + InvalidSocksClientOptionsDestination: "An invalid destination host was provided.", + InvalidSocksClientOptionsExistingSocket: "An invalid existing socket was provided. This should be an instance of stream.Duplex.", + InvalidSocksClientOptionsProxy: "Invalid SOCKS proxy details were provided.", + InvalidSocksClientOptionsTimeout: "An invalid timeout value was provided. Please enter a value above 0 (in ms).", + InvalidSocksClientOptionsProxiesLength: "At least two socks proxies must be provided for chaining.", + InvalidSocksClientOptionsCustomAuthRange: "Custom auth must be a value between 0x80 and 0xFE.", + InvalidSocksClientOptionsCustomAuthOptions: "When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.", + NegotiationError: "Negotiation error", + SocketClosed: "Socket closed", + ProxyConnectionTimedOut: "Proxy connection timed out", + InternalError: "SocksClient internal error (this should not happen)", + InvalidSocks4HandshakeResponse: "Received invalid Socks4 handshake response", + Socks4ProxyRejectedConnection: "Socks4 Proxy rejected connection", + InvalidSocks4IncomingConnectionResponse: "Socks4 invalid incoming connection response", + Socks4ProxyRejectedIncomingBoundConnection: "Socks4 Proxy rejected incoming bound connection", + InvalidSocks5InitialHandshakeResponse: "Received invalid Socks5 initial handshake response", + InvalidSocks5IntiailHandshakeSocksVersion: "Received invalid Socks5 initial handshake (invalid socks version)", + InvalidSocks5InitialHandshakeNoAcceptedAuthType: "Received invalid Socks5 initial handshake (no accepted authentication type)", + InvalidSocks5InitialHandshakeUnknownAuthType: "Received invalid Socks5 initial handshake (unknown authentication type)", + Socks5AuthenticationFailed: "Socks5 Authentication failed", + InvalidSocks5FinalHandshake: "Received invalid Socks5 final handshake response", + InvalidSocks5FinalHandshakeRejected: "Socks5 proxy rejected connection", + InvalidSocks5IncomingConnectionResponse: "Received invalid Socks5 incoming connection response", + Socks5ProxyRejectedIncomingBoundConnection: "Socks5 Proxy rejected incoming bound connection" + }; + exports2.ERRORS = ERRORS; + var SOCKS_INCOMING_PACKET_SIZES = { + Socks5InitialHandshakeResponse: 2, + Socks5UserPassAuthenticationResponse: 2, + // Command response + incoming connection (bind) + Socks5ResponseHeader: 5, + Socks5ResponseIPv4: 10, + Socks5ResponseIPv6: 22, + Socks5ResponseHostname: (hostNameLength) => hostNameLength + 7, + // Command response + incoming connection (bind) + Socks4Response: 8 + // 2 header + 2 port + 4 ip + }; + exports2.SOCKS_INCOMING_PACKET_SIZES = SOCKS_INCOMING_PACKET_SIZES; + var SocksCommand; + (function(SocksCommand2) { + SocksCommand2[SocksCommand2["connect"] = 1] = "connect"; + SocksCommand2[SocksCommand2["bind"] = 2] = "bind"; + SocksCommand2[SocksCommand2["associate"] = 3] = "associate"; + })(SocksCommand || (SocksCommand = {})); + exports2.SocksCommand = SocksCommand; + var Socks4Response; + (function(Socks4Response2) { + Socks4Response2[Socks4Response2["Granted"] = 90] = "Granted"; + Socks4Response2[Socks4Response2["Failed"] = 91] = "Failed"; + Socks4Response2[Socks4Response2["Rejected"] = 92] = "Rejected"; + Socks4Response2[Socks4Response2["RejectedIdent"] = 93] = "RejectedIdent"; + })(Socks4Response || (Socks4Response = {})); + exports2.Socks4Response = Socks4Response; + var Socks5Auth; + (function(Socks5Auth2) { + Socks5Auth2[Socks5Auth2["NoAuth"] = 0] = "NoAuth"; + Socks5Auth2[Socks5Auth2["GSSApi"] = 1] = "GSSApi"; + Socks5Auth2[Socks5Auth2["UserPass"] = 2] = "UserPass"; + })(Socks5Auth || (Socks5Auth = {})); + exports2.Socks5Auth = Socks5Auth; + var SOCKS5_CUSTOM_AUTH_START = 128; + exports2.SOCKS5_CUSTOM_AUTH_START = SOCKS5_CUSTOM_AUTH_START; + var SOCKS5_CUSTOM_AUTH_END = 254; + exports2.SOCKS5_CUSTOM_AUTH_END = SOCKS5_CUSTOM_AUTH_END; + var SOCKS5_NO_ACCEPTABLE_AUTH = 255; + exports2.SOCKS5_NO_ACCEPTABLE_AUTH = SOCKS5_NO_ACCEPTABLE_AUTH; + var Socks5Response; + (function(Socks5Response2) { + Socks5Response2[Socks5Response2["Granted"] = 0] = "Granted"; + Socks5Response2[Socks5Response2["Failure"] = 1] = "Failure"; + Socks5Response2[Socks5Response2["NotAllowed"] = 2] = "NotAllowed"; + Socks5Response2[Socks5Response2["NetworkUnreachable"] = 3] = "NetworkUnreachable"; + Socks5Response2[Socks5Response2["HostUnreachable"] = 4] = "HostUnreachable"; + Socks5Response2[Socks5Response2["ConnectionRefused"] = 5] = "ConnectionRefused"; + Socks5Response2[Socks5Response2["TTLExpired"] = 6] = "TTLExpired"; + Socks5Response2[Socks5Response2["CommandNotSupported"] = 7] = "CommandNotSupported"; + Socks5Response2[Socks5Response2["AddressNotSupported"] = 8] = "AddressNotSupported"; + })(Socks5Response || (Socks5Response = {})); + exports2.Socks5Response = Socks5Response; + var Socks5HostType; + (function(Socks5HostType2) { + Socks5HostType2[Socks5HostType2["IPv4"] = 1] = "IPv4"; + Socks5HostType2[Socks5HostType2["Hostname"] = 3] = "Hostname"; + Socks5HostType2[Socks5HostType2["IPv6"] = 4] = "IPv6"; + })(Socks5HostType || (Socks5HostType = {})); + exports2.Socks5HostType = Socks5HostType; + var SocksClientState; + (function(SocksClientState2) { + SocksClientState2[SocksClientState2["Created"] = 0] = "Created"; + SocksClientState2[SocksClientState2["Connecting"] = 1] = "Connecting"; + SocksClientState2[SocksClientState2["Connected"] = 2] = "Connected"; + SocksClientState2[SocksClientState2["SentInitialHandshake"] = 3] = "SentInitialHandshake"; + SocksClientState2[SocksClientState2["ReceivedInitialHandshakeResponse"] = 4] = "ReceivedInitialHandshakeResponse"; + SocksClientState2[SocksClientState2["SentAuthentication"] = 5] = "SentAuthentication"; + SocksClientState2[SocksClientState2["ReceivedAuthenticationResponse"] = 6] = "ReceivedAuthenticationResponse"; + SocksClientState2[SocksClientState2["SentFinalHandshake"] = 7] = "SentFinalHandshake"; + SocksClientState2[SocksClientState2["ReceivedFinalResponse"] = 8] = "ReceivedFinalResponse"; + SocksClientState2[SocksClientState2["BoundWaitingForConnection"] = 9] = "BoundWaitingForConnection"; + SocksClientState2[SocksClientState2["Established"] = 10] = "Established"; + SocksClientState2[SocksClientState2["Disconnected"] = 11] = "Disconnected"; + SocksClientState2[SocksClientState2["Error"] = 99] = "Error"; + })(SocksClientState || (SocksClientState = {})); + exports2.SocksClientState = SocksClientState; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/util.js +var require_util5 = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.shuffleArray = exports2.SocksClientError = void 0; + var SocksClientError = class extends Error { + constructor(message2, options) { + super(message2); + this.options = options; + } + }; + exports2.SocksClientError = SocksClientError; + function shuffleArray(array) { + for (let i = array.length - 1; i > 0; i--) { + const j = Math.floor(Math.random() * (i + 1)); + [array[i], array[j]] = [array[j], array[i]]; + } + } + exports2.shuffleArray = shuffleArray; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/helpers.js +var require_helpers = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/helpers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateSocksClientChainOptions = exports2.validateSocksClientOptions = void 0; + var util_1 = require_util5(); + var constants_1 = require_constants8(); + var stream = require("stream"); + function validateSocksClientOptions(options, acceptedCommands = ["connect", "bind", "associate"]) { + if (!constants_1.SocksCommand[options.command]) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommand, options); + } + if (acceptedCommands.indexOf(options.command) === -1) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandForOperation, options); + } + if (!isValidSocksRemoteHost(options.destination)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options); + } + if (!isValidSocksProxy(options.proxy)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options); + } + validateCustomProxyAuth(options.proxy, options); + if (options.timeout && !isValidTimeoutValue(options.timeout)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options); + } + if (options.existing_socket && !(options.existing_socket instanceof stream.Duplex)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsExistingSocket, options); + } + } + exports2.validateSocksClientOptions = validateSocksClientOptions; + function validateSocksClientChainOptions(options) { + if (options.command !== "connect") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandChain, options); + } + if (!isValidSocksRemoteHost(options.destination)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options); + } + if (!(options.proxies && Array.isArray(options.proxies) && options.proxies.length >= 2)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxiesLength, options); + } + options.proxies.forEach((proxy) => { + if (!isValidSocksProxy(proxy)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options); + } + validateCustomProxyAuth(proxy, options); + }); + if (options.timeout && !isValidTimeoutValue(options.timeout)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options); + } + } + exports2.validateSocksClientChainOptions = validateSocksClientChainOptions; + function validateCustomProxyAuth(proxy, options) { + if (proxy.custom_auth_method !== void 0) { + if (proxy.custom_auth_method < constants_1.SOCKS5_CUSTOM_AUTH_START || proxy.custom_auth_method > constants_1.SOCKS5_CUSTOM_AUTH_END) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthRange, options); + } + if (proxy.custom_auth_request_handler === void 0 || typeof proxy.custom_auth_request_handler !== "function") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); + } + if (proxy.custom_auth_response_size === void 0) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); + } + if (proxy.custom_auth_response_handler === void 0 || typeof proxy.custom_auth_response_handler !== "function") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); + } + } + } + function isValidSocksRemoteHost(remoteHost) { + return remoteHost && typeof remoteHost.host === "string" && typeof remoteHost.port === "number" && remoteHost.port >= 0 && remoteHost.port <= 65535; + } + function isValidSocksProxy(proxy) { + return proxy && (typeof proxy.host === "string" || typeof proxy.ipaddress === "string") && typeof proxy.port === "number" && proxy.port >= 0 && proxy.port <= 65535 && (proxy.type === 4 || proxy.type === 5); + } + function isValidTimeoutValue(value) { + return typeof value === "number" && value > 0; + } + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/receivebuffer.js +var require_receivebuffer = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/receivebuffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ReceiveBuffer = void 0; + var ReceiveBuffer = class { + constructor(size = 4096) { + this.buffer = Buffer.allocUnsafe(size); + this.offset = 0; + this.originalSize = size; + } + get length() { + return this.offset; + } + append(data) { + if (!Buffer.isBuffer(data)) { + throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer."); + } + if (this.offset + data.length >= this.buffer.length) { + const tmp = this.buffer; + this.buffer = Buffer.allocUnsafe(Math.max(this.buffer.length + this.originalSize, this.buffer.length + data.length)); + tmp.copy(this.buffer); + } + data.copy(this.buffer, this.offset); + return this.offset += data.length; + } + peek(length) { + if (length > this.offset) { + throw new Error("Attempted to read beyond the bounds of the managed internal data."); + } + return this.buffer.slice(0, length); + } + get(length) { + if (length > this.offset) { + throw new Error("Attempted to read beyond the bounds of the managed internal data."); + } + const value = Buffer.allocUnsafe(length); + this.buffer.slice(0, length).copy(value); + this.buffer.copyWithin(0, length, length + this.offset - length); + this.offset -= length; + return value; + } + }; + exports2.ReceiveBuffer = ReceiveBuffer; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/client/socksclient.js +var require_socksclient = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/client/socksclient.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SocksClientError = exports2.SocksClient = void 0; + var events_1 = require("events"); + var net = require("net"); + var ip = require_ip(); + var smart_buffer_1 = require_smartbuffer(); + var constants_1 = require_constants8(); + var helpers_1 = require_helpers(); + var receivebuffer_1 = require_receivebuffer(); + var util_1 = require_util5(); + Object.defineProperty(exports2, "SocksClientError", { enumerable: true, get: function() { + return util_1.SocksClientError; + } }); + var SocksClient = class extends events_1.EventEmitter { + constructor(options) { + super(); + this.options = Object.assign({}, options); + (0, helpers_1.validateSocksClientOptions)(options); + this.setState(constants_1.SocksClientState.Created); + } + /** + * Creates a new SOCKS connection. + * + * Note: Supports callbacks and promises. Only supports the connect command. + * @param options { SocksClientOptions } Options. + * @param callback { Function } An optional callback function. + * @returns { Promise } + */ + static createConnection(options, callback) { + return new Promise((resolve, reject) => { + try { + (0, helpers_1.validateSocksClientOptions)(options, ["connect"]); + } catch (err) { + if (typeof callback === "function") { + callback(err); + return resolve(err); + } else { + return reject(err); + } + } + const client = new SocksClient(options); + client.connect(options.existing_socket); + client.once("established", (info) => { + client.removeAllListeners(); + if (typeof callback === "function") { + callback(null, info); + resolve(info); + } else { + resolve(info); + } + }); + client.once("error", (err) => { + client.removeAllListeners(); + if (typeof callback === "function") { + callback(err); + resolve(err); + } else { + reject(err); + } + }); + }); + } + /** + * Creates a new SOCKS connection chain to a destination host through 2 or more SOCKS proxies. + * + * Note: Supports callbacks and promises. Only supports the connect method. + * Note: Implemented via createConnection() factory function. + * @param options { SocksClientChainOptions } Options + * @param callback { Function } An optional callback function. + * @returns { Promise } + */ + static createConnectionChain(options, callback) { + return new Promise((resolve, reject) => __awaiter4(this, void 0, void 0, function* () { + try { + (0, helpers_1.validateSocksClientChainOptions)(options); + } catch (err) { + if (typeof callback === "function") { + callback(err); + return resolve(err); + } else { + return reject(err); + } + } + if (options.randomizeChain) { + (0, util_1.shuffleArray)(options.proxies); + } + try { + let sock; + for (let i = 0; i < options.proxies.length; i++) { + const nextProxy = options.proxies[i]; + const nextDestination = i === options.proxies.length - 1 ? options.destination : { + host: options.proxies[i + 1].host || options.proxies[i + 1].ipaddress, + port: options.proxies[i + 1].port + }; + const result2 = yield SocksClient.createConnection({ + command: "connect", + proxy: nextProxy, + destination: nextDestination, + existing_socket: sock + }); + sock = sock || result2.socket; + } + if (typeof callback === "function") { + callback(null, { socket: sock }); + resolve({ socket: sock }); + } else { + resolve({ socket: sock }); + } + } catch (err) { + if (typeof callback === "function") { + callback(err); + resolve(err); + } else { + reject(err); + } + } + })); + } + /** + * Creates a SOCKS UDP Frame. + * @param options + */ + static createUDPFrame(options) { + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt16BE(0); + buff.writeUInt8(options.frameNumber || 0); + if (net.isIPv4(options.remoteHost.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv4); + buff.writeUInt32BE(ip.toLong(options.remoteHost.host)); + } else if (net.isIPv6(options.remoteHost.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv6); + buff.writeBuffer(ip.toBuffer(options.remoteHost.host)); + } else { + buff.writeUInt8(constants_1.Socks5HostType.Hostname); + buff.writeUInt8(Buffer.byteLength(options.remoteHost.host)); + buff.writeString(options.remoteHost.host); + } + buff.writeUInt16BE(options.remoteHost.port); + buff.writeBuffer(options.data); + return buff.toBuffer(); + } + /** + * Parses a SOCKS UDP frame. + * @param data + */ + static parseUDPFrame(data) { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const frameNumber = buff.readUInt8(); + const hostType = buff.readUInt8(); + let remoteHost; + if (hostType === constants_1.Socks5HostType.IPv4) { + remoteHost = ip.fromLong(buff.readUInt32BE()); + } else if (hostType === constants_1.Socks5HostType.IPv6) { + remoteHost = ip.toString(buff.readBuffer(16)); + } else { + remoteHost = buff.readString(buff.readUInt8()); + } + const remotePort = buff.readUInt16BE(); + return { + frameNumber, + remoteHost: { + host: remoteHost, + port: remotePort + }, + data: buff.readBuffer() + }; + } + /** + * Internal state setter. If the SocksClient is in an error state, it cannot be changed to a non error state. + */ + setState(newState) { + if (this.state !== constants_1.SocksClientState.Error) { + this.state = newState; + } + } + /** + * Starts the connection establishment to the proxy and destination. + * @param existingSocket Connected socket to use instead of creating a new one (internal use). + */ + connect(existingSocket) { + this.onDataReceived = (data) => this.onDataReceivedHandler(data); + this.onClose = () => this.onCloseHandler(); + this.onError = (err) => this.onErrorHandler(err); + this.onConnect = () => this.onConnectHandler(); + const timer = setTimeout(() => this.onEstablishedTimeout(), this.options.timeout || constants_1.DEFAULT_TIMEOUT); + if (timer.unref && typeof timer.unref === "function") { + timer.unref(); + } + if (existingSocket) { + this.socket = existingSocket; + } else { + this.socket = new net.Socket(); + } + this.socket.once("close", this.onClose); + this.socket.once("error", this.onError); + this.socket.once("connect", this.onConnect); + this.socket.on("data", this.onDataReceived); + this.setState(constants_1.SocksClientState.Connecting); + this.receiveBuffer = new receivebuffer_1.ReceiveBuffer(); + if (existingSocket) { + this.socket.emit("connect"); + } else { + this.socket.connect(this.getSocketOptions()); + if (this.options.set_tcp_nodelay !== void 0 && this.options.set_tcp_nodelay !== null) { + this.socket.setNoDelay(!!this.options.set_tcp_nodelay); + } + } + this.prependOnceListener("established", (info) => { + setImmediate(() => { + if (this.receiveBuffer.length > 0) { + const excessData = this.receiveBuffer.get(this.receiveBuffer.length); + info.socket.emit("data", excessData); + } + info.socket.resume(); + }); + }); + } + // Socket options (defaults host/port to options.proxy.host/options.proxy.port) + getSocketOptions() { + return Object.assign(Object.assign({}, this.options.socket_options), { host: this.options.proxy.host || this.options.proxy.ipaddress, port: this.options.proxy.port }); + } + /** + * Handles internal Socks timeout callback. + * Note: If the Socks client is not BoundWaitingForConnection or Established, the connection will be closed. + */ + onEstablishedTimeout() { + if (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.BoundWaitingForConnection) { + this.closeSocket(constants_1.ERRORS.ProxyConnectionTimedOut); + } + } + /** + * Handles Socket connect event. + */ + onConnectHandler() { + this.setState(constants_1.SocksClientState.Connected); + if (this.options.proxy.type === 4) { + this.sendSocks4InitialHandshake(); + } else { + this.sendSocks5InitialHandshake(); + } + this.setState(constants_1.SocksClientState.SentInitialHandshake); + } + /** + * Handles Socket data event. + * @param data + */ + onDataReceivedHandler(data) { + this.receiveBuffer.append(data); + this.processData(); + } + /** + * Handles processing of the data we have received. + */ + processData() { + while (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.Error && this.receiveBuffer.length >= this.nextRequiredPacketBufferSize) { + if (this.state === constants_1.SocksClientState.SentInitialHandshake) { + if (this.options.proxy.type === 4) { + this.handleSocks4FinalHandshakeResponse(); + } else { + this.handleInitialSocks5HandshakeResponse(); + } + } else if (this.state === constants_1.SocksClientState.SentAuthentication) { + this.handleInitialSocks5AuthenticationHandshakeResponse(); + } else if (this.state === constants_1.SocksClientState.SentFinalHandshake) { + this.handleSocks5FinalHandshakeResponse(); + } else if (this.state === constants_1.SocksClientState.BoundWaitingForConnection) { + if (this.options.proxy.type === 4) { + this.handleSocks4IncomingConnectionResponse(); + } else { + this.handleSocks5IncomingConnectionResponse(); + } + } else { + this.closeSocket(constants_1.ERRORS.InternalError); + break; + } + } + } + /** + * Handles Socket close event. + * @param had_error + */ + onCloseHandler() { + this.closeSocket(constants_1.ERRORS.SocketClosed); + } + /** + * Handles Socket error event. + * @param err + */ + onErrorHandler(err) { + this.closeSocket(err.message); + } + /** + * Removes internal event listeners on the underlying Socket. + */ + removeInternalSocketHandlers() { + this.socket.pause(); + this.socket.removeListener("data", this.onDataReceived); + this.socket.removeListener("close", this.onClose); + this.socket.removeListener("error", this.onError); + this.socket.removeListener("connect", this.onConnect); + } + /** + * Closes and destroys the underlying Socket. Emits an error event. + * @param err { String } An error string to include in error event. + */ + closeSocket(err) { + if (this.state !== constants_1.SocksClientState.Error) { + this.setState(constants_1.SocksClientState.Error); + this.socket.destroy(); + this.removeInternalSocketHandlers(); + this.emit("error", new util_1.SocksClientError(err, this.options)); + } + } + /** + * Sends initial Socks v4 handshake request. + */ + sendSocks4InitialHandshake() { + const userId = this.options.proxy.userId || ""; + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(4); + buff.writeUInt8(constants_1.SocksCommand[this.options.command]); + buff.writeUInt16BE(this.options.destination.port); + if (net.isIPv4(this.options.destination.host)) { + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + buff.writeStringNT(userId); + } else { + buff.writeUInt8(0); + buff.writeUInt8(0); + buff.writeUInt8(0); + buff.writeUInt8(1); + buff.writeStringNT(userId); + buff.writeStringNT(this.options.destination.host); + } + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks4Response; + this.socket.write(buff.toBuffer()); + } + /** + * Handles Socks v4 handshake response. + * @param data + */ + handleSocks4FinalHandshakeResponse() { + const data = this.receiveBuffer.get(8); + if (data[1] !== constants_1.Socks4Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedConnection} - (${constants_1.Socks4Response[data[1]]})`); + } else { + if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const remoteHost = { + port: buff.readUInt16BE(), + host: ip.fromLong(buff.readUInt32BE()) + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + this.setState(constants_1.SocksClientState.BoundWaitingForConnection); + this.emit("bound", { remoteHost, socket: this.socket }); + } else { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { socket: this.socket }); + } + } + } + /** + * Handles Socks v4 incoming connection request (BIND) + * @param data + */ + handleSocks4IncomingConnectionResponse() { + const data = this.receiveBuffer.get(8); + if (data[1] !== constants_1.Socks4Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${constants_1.Socks4Response[data[1]]})`); + } else { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const remoteHost = { + port: buff.readUInt16BE(), + host: ip.fromLong(buff.readUInt32BE()) + }; + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } + } + /** + * Sends initial Socks v5 handshake request. + */ + sendSocks5InitialHandshake() { + const buff = new smart_buffer_1.SmartBuffer(); + const supportedAuthMethods = [constants_1.Socks5Auth.NoAuth]; + if (this.options.proxy.userId || this.options.proxy.password) { + supportedAuthMethods.push(constants_1.Socks5Auth.UserPass); + } + if (this.options.proxy.custom_auth_method !== void 0) { + supportedAuthMethods.push(this.options.proxy.custom_auth_method); + } + buff.writeUInt8(5); + buff.writeUInt8(supportedAuthMethods.length); + for (const authMethod of supportedAuthMethods) { + buff.writeUInt8(authMethod); + } + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentInitialHandshake); + } + /** + * Handles initial Socks v5 handshake response. + * @param data + */ + handleInitialSocks5HandshakeResponse() { + const data = this.receiveBuffer.get(2); + if (data[0] !== 5) { + this.closeSocket(constants_1.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion); + } else if (data[1] === constants_1.SOCKS5_NO_ACCEPTABLE_AUTH) { + this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType); + } else { + if (data[1] === constants_1.Socks5Auth.NoAuth) { + this.socks5ChosenAuthType = constants_1.Socks5Auth.NoAuth; + this.sendSocks5CommandRequest(); + } else if (data[1] === constants_1.Socks5Auth.UserPass) { + this.socks5ChosenAuthType = constants_1.Socks5Auth.UserPass; + this.sendSocks5UserPassAuthentication(); + } else if (data[1] === this.options.proxy.custom_auth_method) { + this.socks5ChosenAuthType = this.options.proxy.custom_auth_method; + this.sendSocks5CustomAuthentication(); + } else { + this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType); + } + } + } + /** + * Sends Socks v5 user & password auth handshake. + * + * Note: No auth and user/pass are currently supported. + */ + sendSocks5UserPassAuthentication() { + const userId = this.options.proxy.userId || ""; + const password = this.options.proxy.password || ""; + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(1); + buff.writeUInt8(Buffer.byteLength(userId)); + buff.writeString(userId); + buff.writeUInt8(Buffer.byteLength(password)); + buff.writeString(password); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentAuthentication); + } + sendSocks5CustomAuthentication() { + return __awaiter4(this, void 0, void 0, function* () { + this.nextRequiredPacketBufferSize = this.options.proxy.custom_auth_response_size; + this.socket.write(yield this.options.proxy.custom_auth_request_handler()); + this.setState(constants_1.SocksClientState.SentAuthentication); + }); + } + handleSocks5CustomAuthHandshakeResponse(data) { + return __awaiter4(this, void 0, void 0, function* () { + return yield this.options.proxy.custom_auth_response_handler(data); + }); + } + handleSocks5AuthenticationNoAuthHandshakeResponse(data) { + return __awaiter4(this, void 0, void 0, function* () { + return data[1] === 0; + }); + } + handleSocks5AuthenticationUserPassHandshakeResponse(data) { + return __awaiter4(this, void 0, void 0, function* () { + return data[1] === 0; + }); + } + /** + * Handles Socks v5 auth handshake response. + * @param data + */ + handleInitialSocks5AuthenticationHandshakeResponse() { + return __awaiter4(this, void 0, void 0, function* () { + this.setState(constants_1.SocksClientState.ReceivedAuthenticationResponse); + let authResult = false; + if (this.socks5ChosenAuthType === constants_1.Socks5Auth.NoAuth) { + authResult = yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)); + } else if (this.socks5ChosenAuthType === constants_1.Socks5Auth.UserPass) { + authResult = yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)); + } else if (this.socks5ChosenAuthType === this.options.proxy.custom_auth_method) { + authResult = yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size)); + } + if (!authResult) { + this.closeSocket(constants_1.ERRORS.Socks5AuthenticationFailed); + } else { + this.sendSocks5CommandRequest(); + } + }); + } + /** + * Sends Socks v5 final handshake request. + */ + sendSocks5CommandRequest() { + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(5); + buff.writeUInt8(constants_1.SocksCommand[this.options.command]); + buff.writeUInt8(0); + if (net.isIPv4(this.options.destination.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv4); + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + } else if (net.isIPv6(this.options.destination.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv6); + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + } else { + buff.writeUInt8(constants_1.Socks5HostType.Hostname); + buff.writeUInt8(this.options.destination.host.length); + buff.writeString(this.options.destination.host); + } + buff.writeUInt16BE(this.options.destination.port); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentFinalHandshake); + } + /** + * Handles Socks v5 final handshake response. + * @param data + */ + handleSocks5FinalHandshakeResponse() { + const header = this.receiveBuffer.peek(5); + if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${constants_1.Socks5Response[header[1]]}`); + } else { + const addressType = header[3]; + let remoteHost; + let buff; + if (addressType === constants_1.Socks5HostType.IPv4) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.fromLong(buff.readUInt32BE()), + port: buff.readUInt16BE() + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + } else if (addressType === constants_1.Socks5HostType.Hostname) { + const hostLength = header[4]; + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); + remoteHost = { + host: buff.readString(hostLength), + port: buff.readUInt16BE() + }; + } else if (addressType === constants_1.Socks5HostType.IPv6) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.toString(buff.readBuffer(16)), + port: buff.readUInt16BE() + }; + } + this.setState(constants_1.SocksClientState.ReceivedFinalResponse); + if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.connect) { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { + this.setState(constants_1.SocksClientState.BoundWaitingForConnection); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; + this.emit("bound", { remoteHost, socket: this.socket }); + } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.associate) { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { + remoteHost, + socket: this.socket + }); + } + } + } + /** + * Handles Socks v5 incoming connection request (BIND). + */ + handleSocks5IncomingConnectionResponse() { + const header = this.receiveBuffer.peek(5); + if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${constants_1.Socks5Response[header[1]]}`); + } else { + const addressType = header[3]; + let remoteHost; + let buff; + if (addressType === constants_1.Socks5HostType.IPv4) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.fromLong(buff.readUInt32BE()), + port: buff.readUInt16BE() + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + } else if (addressType === constants_1.Socks5HostType.Hostname) { + const hostLength = header[4]; + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); + remoteHost = { + host: buff.readString(hostLength), + port: buff.readUInt16BE() + }; + } else if (addressType === constants_1.Socks5HostType.IPv6) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.toString(buff.readBuffer(16)), + port: buff.readUInt16BE() + }; + } + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } + } + get socksClientOptions() { + return Object.assign({}, this.options); + } + }; + exports2.SocksClient = SocksClient; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/index.js +var require_build2 = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_socksclient(), exports2); + } +}); + +// ../node_modules/.pnpm/socks-proxy-agent@6.1.1/node_modules/socks-proxy-agent/dist/agent.js +var require_agent4 = __commonJS({ + "../node_modules/.pnpm/socks-proxy-agent@6.1.1/node_modules/socks-proxy-agent/dist/agent.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var dns_1 = __importDefault4(require("dns")); + var tls_1 = __importDefault4(require("tls")); + var url_1 = __importDefault4(require("url")); + var debug_1 = __importDefault4(require_src()); + var agent_base_1 = require_src4(); + var socks_1 = require_build2(); + var debug = debug_1.default("socks-proxy-agent"); + function dnsLookup(host) { + return new Promise((resolve, reject) => { + dns_1.default.lookup(host, (err, res) => { + if (err) { + reject(err); + } else { + resolve(res); + } + }); + }); + } + function parseSocksProxy(opts) { + let port = 0; + let lookup = false; + let type = 5; + const host = opts.hostname || opts.host; + if (!host) { + throw new TypeError('No "host"'); + } + if (typeof opts.port === "number") { + port = opts.port; + } else if (typeof opts.port === "string") { + port = parseInt(opts.port, 10); + } + if (!port) { + port = 1080; + } + if (opts.protocol) { + switch (opts.protocol.replace(":", "")) { + case "socks4": + lookup = true; + case "socks4a": + type = 4; + break; + case "socks5": + lookup = true; + case "socks": + case "socks5h": + type = 5; + break; + default: + throw new TypeError(`A "socks" protocol must be specified! Got: ${opts.protocol}`); + } + } + if (typeof opts.type !== "undefined") { + if (opts.type === 4 || opts.type === 5) { + type = opts.type; + } else { + throw new TypeError(`"type" must be 4 or 5, got: ${opts.type}`); + } + } + const proxy = { + host, + port, + type + }; + let userId = opts.userId || opts.username; + let password = opts.password; + if (opts.auth) { + const auth = opts.auth.split(":"); + userId = auth[0]; + password = auth[1]; + } + if (userId) { + Object.defineProperty(proxy, "userId", { + value: userId, + enumerable: false + }); + } + if (password) { + Object.defineProperty(proxy, "password", { + value: password, + enumerable: false + }); + } + return { lookup, proxy }; + } + var SocksProxyAgent = class extends agent_base_1.Agent { + constructor(_opts) { + let opts; + if (typeof _opts === "string") { + opts = url_1.default.parse(_opts); + } else { + opts = _opts; + } + if (!opts) { + throw new TypeError("a SOCKS proxy server `host` and `port` must be specified!"); + } + super(opts); + const parsedProxy = parseSocksProxy(opts); + this.lookup = parsedProxy.lookup; + this.proxy = parsedProxy.proxy; + this.tlsConnectionOptions = opts.tls || {}; + } + /** + * Initiates a SOCKS connection to the specified SOCKS proxy server, + * which in turn connects to the specified remote host and port. + * + * @api protected + */ + callback(req, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const { lookup, proxy } = this; + let { host, port, timeout } = opts; + if (!host) { + throw new Error("No `host` defined!"); + } + if (lookup) { + host = yield dnsLookup(host); + } + const socksOpts = { + proxy, + destination: { host, port }, + command: "connect", + timeout + }; + debug("Creating socks proxy connection: %o", socksOpts); + const { socket } = yield socks_1.SocksClient.createConnection(socksOpts); + debug("Successfully created socks proxy connection"); + if (opts.secureEndpoint) { + debug("Upgrading socket connection to TLS"); + const servername = opts.servername || opts.host; + return tls_1.default.connect(Object.assign(Object.assign(Object.assign({}, omit(opts, "host", "hostname", "path", "port")), { + socket, + servername + }), this.tlsConnectionOptions)); + } + return socket; + }); + } + }; + exports2.default = SocksProxyAgent; + function omit(obj, ...keys) { + const ret = {}; + let key; + for (key in obj) { + if (!keys.includes(key)) { + ret[key] = obj[key]; + } + } + return ret; + } + } +}); + +// ../node_modules/.pnpm/socks-proxy-agent@6.1.1/node_modules/socks-proxy-agent/dist/index.js +var require_dist9 = __commonJS({ + "../node_modules/.pnpm/socks-proxy-agent@6.1.1/node_modules/socks-proxy-agent/dist/index.js"(exports2, module2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + var agent_1 = __importDefault4(require_agent4()); + function createSocksProxyAgent(opts) { + return new agent_1.default(opts); + } + (function(createSocksProxyAgent2) { + createSocksProxyAgent2.SocksProxyAgent = agent_1.default; + createSocksProxyAgent2.prototype = agent_1.default.prototype; + })(createSocksProxyAgent || (createSocksProxyAgent = {})); + module2.exports = createSocksProxyAgent; + } +}); + +// ../node_modules/.pnpm/@pnpm+network.proxy-agent@0.1.0/node_modules/@pnpm/network.proxy-agent/dist/proxy-agent.js +var require_proxy_agent = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.proxy-agent@0.1.0/node_modules/@pnpm/network.proxy-agent/dist/proxy-agent.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getProxyAgent = void 0; + var error_1 = require_lib36(); + var agent_1 = __importDefault4(require_agent2()); + var http_proxy_agent_1 = __importDefault4(require_dist8()); + var socks_proxy_agent_1 = __importDefault4(require_dist9()); + var lru_cache_1 = __importDefault4(require_lru_cache2()); + var DEFAULT_MAX_SOCKETS = 50; + var AGENT_CACHE = new lru_cache_1.default({ max: 50 }); + function getProxyAgent(uri, opts) { + var _a, _b, _c; + const parsedUri = new URL(uri); + const pxuri = getProxyUri(parsedUri, opts); + if (!pxuri) + return; + const isHttps = parsedUri.protocol === "https:"; + const key = [ + `https:${isHttps.toString()}`, + `proxy:${pxuri.protocol}//${pxuri.username}:${pxuri.password}@${pxuri.host}:${pxuri.port}`, + `local-address:${(_a = opts.localAddress) !== null && _a !== void 0 ? _a : ">no-local-address<"}`, + `strict-ssl:${isHttps ? Boolean(opts.strictSsl).toString() : ">no-strict-ssl<"}`, + `ca:${isHttps && ((_b = opts.ca) === null || _b === void 0 ? void 0 : _b.toString()) || ">no-ca<"}`, + `cert:${isHttps && ((_c = opts.cert) === null || _c === void 0 ? void 0 : _c.toString()) || ">no-cert<"}`, + `key:${isHttps && opts.key || ">no-key<"}` + ].join(":"); + if (AGENT_CACHE.peek(key)) { + return AGENT_CACHE.get(key); + } + const proxy = getProxy(pxuri, opts, isHttps); + AGENT_CACHE.set(key, proxy); + return proxy; + } + exports2.getProxyAgent = getProxyAgent; + function getProxyUri(uri, opts) { + const { protocol } = uri; + let proxy; + switch (protocol) { + case "http:": { + proxy = opts.httpProxy; + break; + } + case "https:": { + proxy = opts.httpsProxy; + break; + } + } + if (!proxy) { + return void 0; + } + if (!proxy.includes("://")) { + proxy = `${protocol}//${proxy}`; + } + if (typeof proxy !== "string") { + return proxy; + } + try { + return new URL(proxy); + } catch (err) { + throw new error_1.PnpmError("INVALID_PROXY", "Couldn't parse proxy URL", { + hint: `If your proxy URL contains a username and password, make sure to URL-encode them (you may use the encodeURIComponent function). For instance, https-proxy=https://use%21r:pas%2As@my.proxy:1234/foo. Do not encode the colon (:) between the username and password.` + }); + } + } + function getProxy(proxyUrl, opts, isHttps) { + var _a, _b; + const popts = { + auth: getAuth(proxyUrl), + ca: opts.ca, + cert: opts.cert, + host: proxyUrl.hostname, + key: opts.key, + localAddress: opts.localAddress, + maxSockets: (_a = opts.maxSockets) !== null && _a !== void 0 ? _a : DEFAULT_MAX_SOCKETS, + path: proxyUrl.pathname, + port: proxyUrl.port, + protocol: proxyUrl.protocol, + rejectUnauthorized: opts.strictSsl, + timeout: typeof opts.timeout !== "number" || opts.timeout === 0 ? 0 : opts.timeout + 1 + }; + if (proxyUrl.protocol === "http:" || proxyUrl.protocol === "https:") { + if (!isHttps) { + return (0, http_proxy_agent_1.default)(popts); + } else { + return new PatchedHttpsProxyAgent(popts); + } + } + if ((_b = proxyUrl.protocol) === null || _b === void 0 ? void 0 : _b.startsWith("socks")) { + return (0, socks_proxy_agent_1.default)(popts); + } + return void 0; + } + function getAuth(user) { + if (!user.username) { + return void 0; + } + let auth = user.username; + if (user.password) { + auth += `:${user.password}`; + } + return decodeURIComponent(auth); + } + var extraOpts = Symbol("extra agent opts"); + var PatchedHttpsProxyAgent = class extends agent_1.default { + constructor(opts) { + super(opts); + this[extraOpts] = opts; + } + callback(req, opts) { + return super.callback(req, Object.assign(Object.assign({}, this[extraOpts]), opts)); + } + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+network.proxy-agent@0.1.0/node_modules/@pnpm/network.proxy-agent/dist/index.js +var require_dist10 = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.proxy-agent@0.1.0/node_modules/@pnpm/network.proxy-agent/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getProxyAgent = void 0; + var proxy_agent_1 = require_proxy_agent(); + Object.defineProperty(exports2, "getProxyAgent", { enumerable: true, get: function() { + return proxy_agent_1.getProxyAgent; + } }); + } +}); + +// ../node_modules/.pnpm/@pnpm+network.agent@0.1.0/node_modules/@pnpm/network.agent/dist/agent.js +var require_agent5 = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.agent@0.1.0/node_modules/@pnpm/network.agent/dist/agent.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAgent = void 0; + var url_1 = require("url"); + var agentkeepalive_1 = __importDefault4(require_agentkeepalive()); + var lru_cache_1 = __importDefault4(require_lru_cache2()); + var network_proxy_agent_1 = require_dist10(); + var HttpsAgent = agentkeepalive_1.default.HttpsAgent; + var DEFAULT_MAX_SOCKETS = 50; + var AGENT_CACHE = new lru_cache_1.default({ max: 50 }); + function getAgent(uri, opts) { + if ((opts.httpProxy || opts.httpsProxy) && !checkNoProxy(uri, opts)) { + const proxyAgent = (0, network_proxy_agent_1.getProxyAgent)(uri, opts); + if (proxyAgent) + return proxyAgent; + } + return getNonProxyAgent(uri, opts); + } + exports2.getAgent = getAgent; + function getNonProxyAgent(uri, opts) { + var _a, _b, _c, _d, _e; + const parsedUri = new url_1.URL(uri); + const isHttps = parsedUri.protocol === "https:"; + const key = [ + `https:${isHttps.toString()}`, + `local-address:${(_a = opts.localAddress) !== null && _a !== void 0 ? _a : ">no-local-address<"}`, + `strict-ssl:${isHttps ? Boolean(opts.strictSsl).toString() : ">no-strict-ssl<"}`, + `ca:${isHttps && ((_b = opts.ca) === null || _b === void 0 ? void 0 : _b.toString()) || ">no-ca<"}`, + `cert:${isHttps && ((_c = opts.cert) === null || _c === void 0 ? void 0 : _c.toString()) || ">no-cert<"}`, + `key:${isHttps && opts.key || ">no-key<"}` + ].join(":"); + if (AGENT_CACHE.peek(key)) { + return AGENT_CACHE.get(key); + } + const agentTimeout = typeof opts.timeout !== "number" || opts.timeout === 0 ? 0 : opts.timeout + 1; + const agent = isHttps ? new HttpsAgent({ + ca: opts.ca, + cert: opts.cert, + key: opts.key, + localAddress: opts.localAddress, + maxSockets: (_d = opts.maxSockets) !== null && _d !== void 0 ? _d : DEFAULT_MAX_SOCKETS, + rejectUnauthorized: opts.strictSsl, + timeout: agentTimeout + }) : new agentkeepalive_1.default({ + localAddress: opts.localAddress, + maxSockets: (_e = opts.maxSockets) !== null && _e !== void 0 ? _e : DEFAULT_MAX_SOCKETS, + timeout: agentTimeout + }); + AGENT_CACHE.set(key, agent); + return agent; + } + function checkNoProxy(uri, opts) { + const host = new url_1.URL(uri).hostname.split(".").filter((x) => x).reverse(); + if (typeof opts.noProxy === "string") { + const noproxyArr = opts.noProxy.split(/\s*,\s*/g); + return noproxyArr.some((no) => { + const noParts = no.split(".").filter((x) => x).reverse(); + if (noParts.length === 0) { + return false; + } + for (let i = 0; i < noParts.length; i++) { + if (host[i] !== noParts[i]) { + return false; + } + } + return true; + }); + } + return opts.noProxy; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+network.agent@0.1.0/node_modules/@pnpm/network.agent/dist/index.js +var require_dist11 = __commonJS({ + "../node_modules/.pnpm/@pnpm+network.agent@0.1.0/node_modules/@pnpm/network.agent/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getAgent = void 0; + var agent_1 = require_agent5(); + Object.defineProperty(exports2, "getAgent", { enumerable: true, get: function() { + return agent_1.getAgent; + } }); + } +}); + +// ../network/fetch/lib/fetchFromRegistry.js +var require_fetchFromRegistry = __commonJS({ + "../network/fetch/lib/fetchFromRegistry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createFetchFromRegistry = exports2.fetchWithAgent = void 0; + var url_1 = require("url"); + var network_agent_1 = require_dist11(); + var fetch_1 = require_fetch(); + var USER_AGENT = "pnpm"; + var ABBREVIATED_DOC = "application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"; + var JSON_DOC = "application/json"; + var MAX_FOLLOWED_REDIRECTS = 20; + function fetchWithAgent(url, opts) { + const agent = (0, network_agent_1.getAgent)(url.toString(), { + ...opts.agentOptions, + strictSsl: opts.agentOptions.strictSsl ?? true + }); + const headers = opts.headers ?? {}; + headers["connection"] = agent ? "keep-alive" : "close"; + return (0, fetch_1.fetch)(url, { + ...opts, + agent + }); + } + exports2.fetchWithAgent = fetchWithAgent; + function createFetchFromRegistry(defaultOpts) { + return async (url, opts) => { + const headers = { + "user-agent": USER_AGENT, + ...getHeaders({ + auth: opts?.authHeaderValue, + fullMetadata: defaultOpts.fullMetadata, + userAgent: defaultOpts.userAgent + }) + }; + let redirects = 0; + let urlObject = new url_1.URL(url); + const originalHost = urlObject.host; + while (true) { + const agentOptions = { + ...defaultOpts, + ...opts, + strictSsl: defaultOpts.strictSsl ?? true + }; + const response = await fetchWithAgent(urlObject, { + agentOptions, + // if verifying integrity, node-fetch must not decompress + compress: opts?.compress ?? false, + headers, + redirect: "manual", + retry: opts?.retry, + timeout: opts?.timeout ?? 6e4 + }); + if (!(0, fetch_1.isRedirect)(response.status) || redirects >= MAX_FOLLOWED_REDIRECTS) { + return response; + } + redirects++; + urlObject = new url_1.URL(response.headers.get("location")); + if (!headers["authorization"] || originalHost === urlObject.host) + continue; + delete headers.authorization; + } + }; + } + exports2.createFetchFromRegistry = createFetchFromRegistry; + function getHeaders(opts) { + const headers = { + accept: opts.fullMetadata === true ? JSON_DOC : ABBREVIATED_DOC + }; + if (opts.auth) { + headers["authorization"] = opts.auth; + } + if (opts.userAgent) { + headers["user-agent"] = opts.userAgent; + } + return headers; + } + } +}); + +// ../network/fetch/lib/index.js +var require_lib37 = __commonJS({ + "../network/fetch/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchWithAgent = exports2.createFetchFromRegistry = exports2.fetch = void 0; + var fetch_1 = require_fetch(); + Object.defineProperty(exports2, "fetch", { enumerable: true, get: function() { + return fetch_1.fetch; + } }); + var fetchFromRegistry_1 = require_fetchFromRegistry(); + Object.defineProperty(exports2, "createFetchFromRegistry", { enumerable: true, get: function() { + return fetchFromRegistry_1.createFetchFromRegistry; + } }); + Object.defineProperty(exports2, "fetchWithAgent", { enumerable: true, get: function() { + return fetchFromRegistry_1.fetchWithAgent; + } }); + } +}); + +// ../node_modules/.pnpm/version-selector-type@3.0.0/node_modules/version-selector-type/index.js +var require_version_selector_type = __commonJS({ + "../node_modules/.pnpm/version-selector-type@3.0.0/node_modules/version-selector-type/index.js"(exports2, module2) { + "use strict"; + var semver = require_semver2(); + module2.exports = (selector) => versionSelectorType(true, selector); + module2.exports.strict = (selector) => versionSelectorType(false, selector); + function versionSelectorType(loose, selector) { + if (typeof selector !== "string") { + throw new TypeError("`selector` should be a string"); + } + let normalizedSelector; + if (normalizedSelector = semver.valid(selector, loose)) { + return { + normalized: normalizedSelector, + type: "version" + }; + } + if (normalizedSelector = semver.validRange(selector, loose)) { + return { + normalized: normalizedSelector, + type: "range" + }; + } + if (encodeURIComponent(selector) === selector) { + return { + normalized: selector, + type: "tag" + }; + } + return null; + } + } +}); + +// ../env/node.resolver/lib/index.js +var require_lib38 = __commonJS({ + "../env/node.resolver/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveNodeVersions = exports2.resolveNodeVersion = void 0; + var semver_12 = __importDefault4(require_semver2()); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + var SEMVER_OPTS = { + includePrerelease: true, + loose: true + }; + async function resolveNodeVersion(fetch, versionSpec, nodeMirrorBaseUrl) { + const allVersions = await fetchAllVersions(fetch, nodeMirrorBaseUrl); + if (versionSpec === "latest") { + return allVersions[0].version; + } + const { versions, versionRange } = filterVersions(allVersions, versionSpec); + return semver_12.default.maxSatisfying(versions, versionRange, SEMVER_OPTS) ?? null; + } + exports2.resolveNodeVersion = resolveNodeVersion; + async function resolveNodeVersions(fetch, versionSpec, nodeMirrorBaseUrl) { + const allVersions = await fetchAllVersions(fetch, nodeMirrorBaseUrl); + if (!versionSpec) { + return allVersions.map(({ version: version2 }) => version2); + } + if (versionSpec === "latest") { + return [allVersions[0].version]; + } + const { versions, versionRange } = filterVersions(allVersions, versionSpec); + return versions.filter((version2) => semver_12.default.satisfies(version2, versionRange, SEMVER_OPTS)); + } + exports2.resolveNodeVersions = resolveNodeVersions; + async function fetchAllVersions(fetch, nodeMirrorBaseUrl) { + const response = await fetch(`${nodeMirrorBaseUrl ?? "https://nodejs.org/download/release/"}index.json`); + return (await response.json()).map(({ version: version2, lts }) => ({ + version: version2.substring(1), + lts + })); + } + function filterVersions(versions, versionSelector) { + if (versionSelector === "lts") { + return { + versions: versions.filter(({ lts }) => lts !== false).map(({ version: version2 }) => version2), + versionRange: "*" + }; + } + const vst = (0, version_selector_type_1.default)(versionSelector); + if (vst?.type === "tag") { + const wantedLtsVersion = vst.normalized.toLowerCase(); + return { + versions: versions.filter(({ lts }) => typeof lts === "string" && lts.toLowerCase() === wantedLtsVersion).map(({ version: version2 }) => version2), + versionRange: "*" + }; + } + return { + versions: versions.map(({ version: version2 }) => version2), + versionRange: versionSelector + }; + } + } +}); + +// ../pkg-manager/package-bins/lib/index.js +var require_lib39 = __commonJS({ + "../pkg-manager/package-bins/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getBinsFromPackageManifest = void 0; + var path_1 = __importDefault4(require("path")); + var fast_glob_1 = __importDefault4(require_out4()); + var is_subdir_1 = __importDefault4(require_is_subdir()); + async function getBinsFromPackageManifest(manifest, pkgPath) { + if (manifest.bin) { + return commandsFromBin(manifest.bin, manifest.name, pkgPath); + } + if (manifest.directories?.bin) { + const binDir = path_1.default.join(pkgPath, manifest.directories.bin); + const files = await findFiles(binDir); + return files.map((file) => ({ + name: path_1.default.basename(file), + path: path_1.default.join(binDir, file) + })); + } + return []; + } + exports2.getBinsFromPackageManifest = getBinsFromPackageManifest; + async function findFiles(dir) { + try { + return await (0, fast_glob_1.default)("**", { + cwd: dir, + onlyFiles: true, + followSymbolicLinks: false + }); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + return []; + } + } + function commandsFromBin(bin, pkgName, pkgPath) { + if (typeof bin === "string") { + return [ + { + name: pkgName.startsWith("@") ? pkgName.slice(pkgName.indexOf("/") + 1) : pkgName, + path: path_1.default.join(pkgPath, bin) + } + ]; + } + return Object.keys(bin).filter((commandName) => encodeURIComponent(commandName) === commandName || commandName === "$").map((commandName) => ({ + name: commandName, + path: path_1.default.join(pkgPath, bin[commandName]) + })).filter((cmd) => (0, is_subdir_1.default)(pkgPath, cmd.path)); + } + } +}); + +// ../node_modules/.pnpm/spdx-license-ids@3.0.13/node_modules/spdx-license-ids/index.json +var require_spdx_license_ids = __commonJS({ + "../node_modules/.pnpm/spdx-license-ids@3.0.13/node_modules/spdx-license-ids/index.json"(exports2, module2) { + module2.exports = [ + "0BSD", + "AAL", + "ADSL", + "AFL-1.1", + "AFL-1.2", + "AFL-2.0", + "AFL-2.1", + "AFL-3.0", + "AGPL-1.0-only", + "AGPL-1.0-or-later", + "AGPL-3.0-only", + "AGPL-3.0-or-later", + "AMDPLPA", + "AML", + "AMPAS", + "ANTLR-PD", + "ANTLR-PD-fallback", + "APAFML", + "APL-1.0", + "APSL-1.0", + "APSL-1.1", + "APSL-1.2", + "APSL-2.0", + "Abstyles", + "AdaCore-doc", + "Adobe-2006", + "Adobe-Glyph", + "Afmparse", + "Aladdin", + "Apache-1.0", + "Apache-1.1", + "Apache-2.0", + "App-s2p", + "Arphic-1999", + "Artistic-1.0", + "Artistic-1.0-Perl", + "Artistic-1.0-cl8", + "Artistic-2.0", + "BSD-1-Clause", + "BSD-2-Clause", + "BSD-2-Clause-Patent", + "BSD-2-Clause-Views", + "BSD-3-Clause", + "BSD-3-Clause-Attribution", + "BSD-3-Clause-Clear", + "BSD-3-Clause-LBNL", + "BSD-3-Clause-Modification", + "BSD-3-Clause-No-Military-License", + "BSD-3-Clause-No-Nuclear-License", + "BSD-3-Clause-No-Nuclear-License-2014", + "BSD-3-Clause-No-Nuclear-Warranty", + "BSD-3-Clause-Open-MPI", + "BSD-4-Clause", + "BSD-4-Clause-Shortened", + "BSD-4-Clause-UC", + "BSD-4.3RENO", + "BSD-4.3TAHOE", + "BSD-Advertising-Acknowledgement", + "BSD-Attribution-HPND-disclaimer", + "BSD-Protection", + "BSD-Source-Code", + "BSL-1.0", + "BUSL-1.1", + "Baekmuk", + "Bahyph", + "Barr", + "Beerware", + "BitTorrent-1.0", + "BitTorrent-1.1", + "Bitstream-Charter", + "Bitstream-Vera", + "BlueOak-1.0.0", + "Borceux", + "Brian-Gladman-3-Clause", + "C-UDA-1.0", + "CAL-1.0", + "CAL-1.0-Combined-Work-Exception", + "CATOSL-1.1", + "CC-BY-1.0", + "CC-BY-2.0", + "CC-BY-2.5", + "CC-BY-2.5-AU", + "CC-BY-3.0", + "CC-BY-3.0-AT", + "CC-BY-3.0-DE", + "CC-BY-3.0-IGO", + "CC-BY-3.0-NL", + "CC-BY-3.0-US", + "CC-BY-4.0", + "CC-BY-NC-1.0", + "CC-BY-NC-2.0", + "CC-BY-NC-2.5", + "CC-BY-NC-3.0", + "CC-BY-NC-3.0-DE", + "CC-BY-NC-4.0", + "CC-BY-NC-ND-1.0", + "CC-BY-NC-ND-2.0", + "CC-BY-NC-ND-2.5", + "CC-BY-NC-ND-3.0", + "CC-BY-NC-ND-3.0-DE", + "CC-BY-NC-ND-3.0-IGO", + "CC-BY-NC-ND-4.0", + "CC-BY-NC-SA-1.0", + "CC-BY-NC-SA-2.0", + "CC-BY-NC-SA-2.0-DE", + "CC-BY-NC-SA-2.0-FR", + "CC-BY-NC-SA-2.0-UK", + "CC-BY-NC-SA-2.5", + "CC-BY-NC-SA-3.0", + "CC-BY-NC-SA-3.0-DE", + "CC-BY-NC-SA-3.0-IGO", + "CC-BY-NC-SA-4.0", + "CC-BY-ND-1.0", + "CC-BY-ND-2.0", + "CC-BY-ND-2.5", + "CC-BY-ND-3.0", + "CC-BY-ND-3.0-DE", + "CC-BY-ND-4.0", + "CC-BY-SA-1.0", + "CC-BY-SA-2.0", + "CC-BY-SA-2.0-UK", + "CC-BY-SA-2.1-JP", + "CC-BY-SA-2.5", + "CC-BY-SA-3.0", + "CC-BY-SA-3.0-AT", + "CC-BY-SA-3.0-DE", + "CC-BY-SA-4.0", + "CC-PDDC", + "CC0-1.0", + "CDDL-1.0", + "CDDL-1.1", + "CDL-1.0", + "CDLA-Permissive-1.0", + "CDLA-Permissive-2.0", + "CDLA-Sharing-1.0", + "CECILL-1.0", + "CECILL-1.1", + "CECILL-2.0", + "CECILL-2.1", + "CECILL-B", + "CECILL-C", + "CERN-OHL-1.1", + "CERN-OHL-1.2", + "CERN-OHL-P-2.0", + "CERN-OHL-S-2.0", + "CERN-OHL-W-2.0", + "CFITSIO", + "CMU-Mach", + "CNRI-Jython", + "CNRI-Python", + "CNRI-Python-GPL-Compatible", + "COIL-1.0", + "CPAL-1.0", + "CPL-1.0", + "CPOL-1.02", + "CUA-OPL-1.0", + "Caldera", + "ClArtistic", + "Clips", + "Community-Spec-1.0", + "Condor-1.1", + "Cornell-Lossless-JPEG", + "Crossword", + "CrystalStacker", + "Cube", + "D-FSL-1.0", + "DL-DE-BY-2.0", + "DOC", + "DRL-1.0", + "DSDP", + "Dotseqn", + "ECL-1.0", + "ECL-2.0", + "EFL-1.0", + "EFL-2.0", + "EPICS", + "EPL-1.0", + "EPL-2.0", + "EUDatagrid", + "EUPL-1.0", + "EUPL-1.1", + "EUPL-1.2", + "Elastic-2.0", + "Entessa", + "ErlPL-1.1", + "Eurosym", + "FDK-AAC", + "FSFAP", + "FSFUL", + "FSFULLR", + "FSFULLRWD", + "FTL", + "Fair", + "Frameworx-1.0", + "FreeBSD-DOC", + "FreeImage", + "GD", + "GFDL-1.1-invariants-only", + "GFDL-1.1-invariants-or-later", + "GFDL-1.1-no-invariants-only", + "GFDL-1.1-no-invariants-or-later", + "GFDL-1.1-only", + "GFDL-1.1-or-later", + "GFDL-1.2-invariants-only", + "GFDL-1.2-invariants-or-later", + "GFDL-1.2-no-invariants-only", + "GFDL-1.2-no-invariants-or-later", + "GFDL-1.2-only", + "GFDL-1.2-or-later", + "GFDL-1.3-invariants-only", + "GFDL-1.3-invariants-or-later", + "GFDL-1.3-no-invariants-only", + "GFDL-1.3-no-invariants-or-later", + "GFDL-1.3-only", + "GFDL-1.3-or-later", + "GL2PS", + "GLWTPL", + "GPL-1.0-only", + "GPL-1.0-or-later", + "GPL-2.0-only", + "GPL-2.0-or-later", + "GPL-3.0-only", + "GPL-3.0-or-later", + "Giftware", + "Glide", + "Glulxe", + "Graphics-Gems", + "HP-1986", + "HPND", + "HPND-Markus-Kuhn", + "HPND-export-US", + "HPND-sell-variant", + "HPND-sell-variant-MIT-disclaimer", + "HTMLTIDY", + "HaskellReport", + "Hippocratic-2.1", + "IBM-pibs", + "ICU", + "IEC-Code-Components-EULA", + "IJG", + "IJG-short", + "IPA", + "IPL-1.0", + "ISC", + "ImageMagick", + "Imlib2", + "Info-ZIP", + "Intel", + "Intel-ACPI", + "Interbase-1.0", + "JPL-image", + "JPNIC", + "JSON", + "Jam", + "JasPer-2.0", + "Kazlib", + "Knuth-CTAN", + "LAL-1.2", + "LAL-1.3", + "LGPL-2.0-only", + "LGPL-2.0-or-later", + "LGPL-2.1-only", + "LGPL-2.1-or-later", + "LGPL-3.0-only", + "LGPL-3.0-or-later", + "LGPLLR", + "LOOP", + "LPL-1.0", + "LPL-1.02", + "LPPL-1.0", + "LPPL-1.1", + "LPPL-1.2", + "LPPL-1.3a", + "LPPL-1.3c", + "LZMA-SDK-9.11-to-9.20", + "LZMA-SDK-9.22", + "Latex2e", + "Leptonica", + "LiLiQ-P-1.1", + "LiLiQ-R-1.1", + "LiLiQ-Rplus-1.1", + "Libpng", + "Linux-OpenIB", + "Linux-man-pages-copyleft", + "MIT", + "MIT-0", + "MIT-CMU", + "MIT-Modern-Variant", + "MIT-Wu", + "MIT-advertising", + "MIT-enna", + "MIT-feh", + "MIT-open-group", + "MITNFA", + "MPL-1.0", + "MPL-1.1", + "MPL-2.0", + "MPL-2.0-no-copyleft-exception", + "MS-LPL", + "MS-PL", + "MS-RL", + "MTLL", + "MakeIndex", + "Martin-Birgmeier", + "Minpack", + "MirOS", + "Motosoto", + "MulanPSL-1.0", + "MulanPSL-2.0", + "Multics", + "Mup", + "NAIST-2003", + "NASA-1.3", + "NBPL-1.0", + "NCGL-UK-2.0", + "NCSA", + "NGPL", + "NICTA-1.0", + "NIST-PD", + "NIST-PD-fallback", + "NLOD-1.0", + "NLOD-2.0", + "NLPL", + "NOSL", + "NPL-1.0", + "NPL-1.1", + "NPOSL-3.0", + "NRL", + "NTP", + "NTP-0", + "Naumen", + "Net-SNMP", + "NetCDF", + "Newsletr", + "Nokia", + "Noweb", + "O-UDA-1.0", + "OCCT-PL", + "OCLC-2.0", + "ODC-By-1.0", + "ODbL-1.0", + "OFFIS", + "OFL-1.0", + "OFL-1.0-RFN", + "OFL-1.0-no-RFN", + "OFL-1.1", + "OFL-1.1-RFN", + "OFL-1.1-no-RFN", + "OGC-1.0", + "OGDL-Taiwan-1.0", + "OGL-Canada-2.0", + "OGL-UK-1.0", + "OGL-UK-2.0", + "OGL-UK-3.0", + "OGTSL", + "OLDAP-1.1", + "OLDAP-1.2", + "OLDAP-1.3", + "OLDAP-1.4", + "OLDAP-2.0", + "OLDAP-2.0.1", + "OLDAP-2.1", + "OLDAP-2.2", + "OLDAP-2.2.1", + "OLDAP-2.2.2", + "OLDAP-2.3", + "OLDAP-2.4", + "OLDAP-2.5", + "OLDAP-2.6", + "OLDAP-2.7", + "OLDAP-2.8", + "OML", + "OPL-1.0", + "OPUBL-1.0", + "OSET-PL-2.1", + "OSL-1.0", + "OSL-1.1", + "OSL-2.0", + "OSL-2.1", + "OSL-3.0", + "OpenPBS-2.3", + "OpenSSL", + "PDDL-1.0", + "PHP-3.0", + "PHP-3.01", + "PSF-2.0", + "Parity-6.0.0", + "Parity-7.0.0", + "Plexus", + "PolyForm-Noncommercial-1.0.0", + "PolyForm-Small-Business-1.0.0", + "PostgreSQL", + "Python-2.0", + "Python-2.0.1", + "QPL-1.0", + "QPL-1.0-INRIA-2004", + "Qhull", + "RHeCos-1.1", + "RPL-1.1", + "RPL-1.5", + "RPSL-1.0", + "RSA-MD", + "RSCPL", + "Rdisc", + "Ruby", + "SAX-PD", + "SCEA", + "SGI-B-1.0", + "SGI-B-1.1", + "SGI-B-2.0", + "SHL-0.5", + "SHL-0.51", + "SISSL", + "SISSL-1.2", + "SMLNJ", + "SMPPL", + "SNIA", + "SPL-1.0", + "SSH-OpenSSH", + "SSH-short", + "SSPL-1.0", + "SWL", + "Saxpath", + "SchemeReport", + "Sendmail", + "Sendmail-8.23", + "SimPL-2.0", + "Sleepycat", + "Spencer-86", + "Spencer-94", + "Spencer-99", + "SugarCRM-1.1.3", + "SunPro", + "Symlinks", + "TAPR-OHL-1.0", + "TCL", + "TCP-wrappers", + "TMate", + "TORQUE-1.1", + "TOSL", + "TPDL", + "TPL-1.0", + "TTWL", + "TU-Berlin-1.0", + "TU-Berlin-2.0", + "UCAR", + "UCL-1.0", + "UPL-1.0", + "Unicode-DFS-2015", + "Unicode-DFS-2016", + "Unicode-TOU", + "Unlicense", + "VOSTROM", + "VSL-1.0", + "Vim", + "W3C", + "W3C-19980720", + "W3C-20150513", + "WTFPL", + "Watcom-1.0", + "Wsuipa", + "X11", + "X11-distribute-modifications-variant", + "XFree86-1.1", + "XSkat", + "Xerox", + "Xnet", + "YPL-1.0", + "YPL-1.1", + "ZPL-1.1", + "ZPL-2.0", + "ZPL-2.1", + "Zed", + "Zend-2.0", + "Zimbra-1.3", + "Zimbra-1.4", + "Zlib", + "blessing", + "bzip2-1.0.6", + "checkmk", + "copyleft-next-0.3.0", + "copyleft-next-0.3.1", + "curl", + "diffmark", + "dvipdfm", + "eGenix", + "etalab-2.0", + "gSOAP-1.3b", + "gnuplot", + "iMatix", + "libpng-2.0", + "libselinux-1.0", + "libtiff", + "libutil-David-Nugent", + "mpi-permissive", + "mpich2", + "mplus", + "psfrag", + "psutils", + "snprintf", + "w3m", + "xinetd", + "xlock", + "xpp", + "zlib-acknowledgement" + ]; + } +}); + +// ../node_modules/.pnpm/spdx-license-ids@3.0.13/node_modules/spdx-license-ids/deprecated.json +var require_deprecated = __commonJS({ + "../node_modules/.pnpm/spdx-license-ids@3.0.13/node_modules/spdx-license-ids/deprecated.json"(exports2, module2) { + module2.exports = [ + "AGPL-1.0", + "AGPL-3.0", + "BSD-2-Clause-FreeBSD", + "BSD-2-Clause-NetBSD", + "GFDL-1.1", + "GFDL-1.2", + "GFDL-1.3", + "GPL-1.0", + "GPL-2.0", + "GPL-2.0-with-GCC-exception", + "GPL-2.0-with-autoconf-exception", + "GPL-2.0-with-bison-exception", + "GPL-2.0-with-classpath-exception", + "GPL-2.0-with-font-exception", + "GPL-3.0", + "GPL-3.0-with-GCC-exception", + "GPL-3.0-with-autoconf-exception", + "LGPL-2.0", + "LGPL-2.1", + "LGPL-3.0", + "Nunit", + "StandardML-NJ", + "bzip2-1.0.5", + "eCos-2.0", + "wxWindows" + ]; + } +}); + +// ../node_modules/.pnpm/spdx-exceptions@2.3.0/node_modules/spdx-exceptions/index.json +var require_spdx_exceptions = __commonJS({ + "../node_modules/.pnpm/spdx-exceptions@2.3.0/node_modules/spdx-exceptions/index.json"(exports2, module2) { + module2.exports = [ + "389-exception", + "Autoconf-exception-2.0", + "Autoconf-exception-3.0", + "Bison-exception-2.2", + "Bootloader-exception", + "Classpath-exception-2.0", + "CLISP-exception-2.0", + "DigiRule-FOSS-exception", + "eCos-exception-2.0", + "Fawkes-Runtime-exception", + "FLTK-exception", + "Font-exception-2.0", + "freertos-exception-2.0", + "GCC-exception-2.0", + "GCC-exception-3.1", + "gnu-javamail-exception", + "GPL-3.0-linking-exception", + "GPL-3.0-linking-source-exception", + "GPL-CC-1.0", + "i2p-gpl-java-exception", + "Libtool-exception", + "Linux-syscall-note", + "LLVM-exception", + "LZMA-exception", + "mif-exception", + "Nokia-Qt-exception-1.1", + "OCaml-LGPL-linking-exception", + "OCCT-exception-1.0", + "OpenJDK-assembly-exception-1.0", + "openvpn-openssl-exception", + "PS-or-PDF-font-exception-20170817", + "Qt-GPL-exception-1.0", + "Qt-LGPL-exception-1.1", + "Qwt-exception-1.0", + "Swift-exception", + "u-boot-exception-2.0", + "Universal-FOSS-exception-1.0", + "WxWindows-exception-3.1" + ]; + } +}); + +// ../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/scan.js +var require_scan3 = __commonJS({ + "../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/scan.js"(exports2, module2) { + "use strict"; + var licenses = [].concat(require_spdx_license_ids()).concat(require_deprecated()); + var exceptions = require_spdx_exceptions(); + module2.exports = function(source) { + var index = 0; + function hasMore() { + return index < source.length; + } + function read(value) { + if (value instanceof RegExp) { + var chars = source.slice(index); + var match = chars.match(value); + if (match) { + index += match[0].length; + return match[0]; + } + } else { + if (source.indexOf(value, index) === index) { + index += value.length; + return value; + } + } + } + function skipWhitespace() { + read(/[ ]*/); + } + function operator() { + var string; + var possibilities = ["WITH", "AND", "OR", "(", ")", ":", "+"]; + for (var i = 0; i < possibilities.length; i++) { + string = read(possibilities[i]); + if (string) { + break; + } + } + if (string === "+" && index > 1 && source[index - 2] === " ") { + throw new Error("Space before `+`"); + } + return string && { + type: "OPERATOR", + string + }; + } + function idstring() { + return read(/[A-Za-z0-9-.]+/); + } + function expectIdstring() { + var string = idstring(); + if (!string) { + throw new Error("Expected idstring at offset " + index); + } + return string; + } + function documentRef() { + if (read("DocumentRef-")) { + var string = expectIdstring(); + return { type: "DOCUMENTREF", string }; + } + } + function licenseRef() { + if (read("LicenseRef-")) { + var string = expectIdstring(); + return { type: "LICENSEREF", string }; + } + } + function identifier() { + var begin = index; + var string = idstring(); + if (licenses.indexOf(string) !== -1) { + return { + type: "LICENSE", + string + }; + } else if (exceptions.indexOf(string) !== -1) { + return { + type: "EXCEPTION", + string + }; + } + index = begin; + } + function parseToken() { + return operator() || documentRef() || licenseRef() || identifier(); + } + var tokens = []; + while (hasMore()) { + skipWhitespace(); + if (!hasMore()) { + break; + } + var token = parseToken(); + if (!token) { + throw new Error("Unexpected `" + source[index] + "` at offset " + index); + } + tokens.push(token); + } + return tokens; + }; + } +}); + +// ../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/parse.js +var require_parse6 = __commonJS({ + "../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/parse.js"(exports2, module2) { + "use strict"; + module2.exports = function(tokens) { + var index = 0; + function hasMore() { + return index < tokens.length; + } + function token() { + return hasMore() ? tokens[index] : null; + } + function next() { + if (!hasMore()) { + throw new Error(); + } + index++; + } + function parseOperator(operator) { + var t = token(); + if (t && t.type === "OPERATOR" && operator === t.string) { + next(); + return t.string; + } + } + function parseWith() { + if (parseOperator("WITH")) { + var t = token(); + if (t && t.type === "EXCEPTION") { + next(); + return t.string; + } + throw new Error("Expected exception after `WITH`"); + } + } + function parseLicenseRef() { + var begin = index; + var string = ""; + var t = token(); + if (t.type === "DOCUMENTREF") { + next(); + string += "DocumentRef-" + t.string + ":"; + if (!parseOperator(":")) { + throw new Error("Expected `:` after `DocumentRef-...`"); + } + } + t = token(); + if (t.type === "LICENSEREF") { + next(); + string += "LicenseRef-" + t.string; + return { license: string }; + } + index = begin; + } + function parseLicense() { + var t = token(); + if (t && t.type === "LICENSE") { + next(); + var node2 = { license: t.string }; + if (parseOperator("+")) { + node2.plus = true; + } + var exception = parseWith(); + if (exception) { + node2.exception = exception; + } + return node2; + } + } + function parseParenthesizedExpression() { + var left = parseOperator("("); + if (!left) { + return; + } + var expr = parseExpression(); + if (!parseOperator(")")) { + throw new Error("Expected `)`"); + } + return expr; + } + function parseAtom() { + return parseParenthesizedExpression() || parseLicenseRef() || parseLicense(); + } + function makeBinaryOpParser(operator, nextParser) { + return function parseBinaryOp() { + var left = nextParser(); + if (!left) { + return; + } + if (!parseOperator(operator)) { + return left; + } + var right = parseBinaryOp(); + if (!right) { + throw new Error("Expected expression"); + } + return { + left, + conjunction: operator.toLowerCase(), + right + }; + }; + } + var parseAnd = makeBinaryOpParser("AND", parseAtom); + var parseExpression = makeBinaryOpParser("OR", parseAnd); + var node = parseExpression(); + if (!node || hasMore()) { + throw new Error("Syntax error"); + } + return node; + }; + } +}); + +// ../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/index.js +var require_spdx_expression_parse = __commonJS({ + "../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/index.js"(exports2, module2) { + "use strict"; + var scan = require_scan3(); + var parse2 = require_parse6(); + module2.exports = function(source) { + return parse2(scan(source)); + }; + } +}); + +// ../node_modules/.pnpm/spdx-correct@3.2.0/node_modules/spdx-correct/index.js +var require_spdx_correct = __commonJS({ + "../node_modules/.pnpm/spdx-correct@3.2.0/node_modules/spdx-correct/index.js"(exports2, module2) { + var parse2 = require_spdx_expression_parse(); + var spdxLicenseIds = require_spdx_license_ids(); + function valid(string) { + try { + parse2(string); + return true; + } catch (error) { + return false; + } + } + function sortTranspositions(a, b) { + var length = b[0].length - a[0].length; + if (length !== 0) + return length; + return a[0].toUpperCase().localeCompare(b[0].toUpperCase()); + } + var transpositions = [ + ["APGL", "AGPL"], + ["Gpl", "GPL"], + ["GLP", "GPL"], + ["APL", "Apache"], + ["ISD", "ISC"], + ["GLP", "GPL"], + ["IST", "ISC"], + ["Claude", "Clause"], + [" or later", "+"], + [" International", ""], + ["GNU", "GPL"], + ["GUN", "GPL"], + ["+", ""], + ["GNU GPL", "GPL"], + ["GNU LGPL", "LGPL"], + ["GNU/GPL", "GPL"], + ["GNU GLP", "GPL"], + ["GNU LESSER GENERAL PUBLIC LICENSE", "LGPL"], + ["GNU Lesser General Public License", "LGPL"], + ["GNU LESSER GENERAL PUBLIC LICENSE", "LGPL-2.1"], + ["GNU Lesser General Public License", "LGPL-2.1"], + ["LESSER GENERAL PUBLIC LICENSE", "LGPL"], + ["Lesser General Public License", "LGPL"], + ["LESSER GENERAL PUBLIC LICENSE", "LGPL-2.1"], + ["Lesser General Public License", "LGPL-2.1"], + ["GNU General Public License", "GPL"], + ["Gnu public license", "GPL"], + ["GNU Public License", "GPL"], + ["GNU GENERAL PUBLIC LICENSE", "GPL"], + ["MTI", "MIT"], + ["Mozilla Public License", "MPL"], + ["Universal Permissive License", "UPL"], + ["WTH", "WTF"], + ["WTFGPL", "WTFPL"], + ["-License", ""] + ].sort(sortTranspositions); + var TRANSPOSED = 0; + var CORRECT = 1; + var transforms = [ + // e.g. 'mit' + function(argument) { + return argument.toUpperCase(); + }, + // e.g. 'MIT ' + function(argument) { + return argument.trim(); + }, + // e.g. 'M.I.T.' + function(argument) { + return argument.replace(/\./g, ""); + }, + // e.g. 'Apache- 2.0' + function(argument) { + return argument.replace(/\s+/g, ""); + }, + // e.g. 'CC BY 4.0'' + function(argument) { + return argument.replace(/\s+/g, "-"); + }, + // e.g. 'LGPLv2.1' + function(argument) { + return argument.replace("v", "-"); + }, + // e.g. 'Apache 2.0' + function(argument) { + return argument.replace(/,?\s*(\d)/, "-$1"); + }, + // e.g. 'GPL 2' + function(argument) { + return argument.replace(/,?\s*(\d)/, "-$1.0"); + }, + // e.g. 'Apache Version 2.0' + function(argument) { + return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2"); + }, + // e.g. 'Apache Version 2' + function(argument) { + return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2.0"); + }, + // e.g. 'ZLIB' + function(argument) { + return argument[0].toUpperCase() + argument.slice(1); + }, + // e.g. 'MPL/2.0' + function(argument) { + return argument.replace("/", "-"); + }, + // e.g. 'Apache 2' + function(argument) { + return argument.replace(/\s*V\s*(\d)/, "-$1").replace(/(\d)$/, "$1.0"); + }, + // e.g. 'GPL-2.0', 'GPL-3.0' + function(argument) { + if (argument.indexOf("3.0") !== -1) { + return argument + "-or-later"; + } else { + return argument + "-only"; + } + }, + // e.g. 'GPL-2.0-' + function(argument) { + return argument + "only"; + }, + // e.g. 'GPL2' + function(argument) { + return argument.replace(/(\d)$/, "-$1.0"); + }, + // e.g. 'BSD 3' + function(argument) { + return argument.replace(/(-| )?(\d)$/, "-$2-Clause"); + }, + // e.g. 'BSD clause 3' + function(argument) { + return argument.replace(/(-| )clause(-| )(\d)/, "-$3-Clause"); + }, + // e.g. 'New BSD license' + function(argument) { + return argument.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i, "BSD-3-Clause"); + }, + // e.g. 'Simplified BSD license' + function(argument) { + return argument.replace(/\bSimplified(-| )?BSD((-| )License)?/i, "BSD-2-Clause"); + }, + // e.g. 'Free BSD license' + function(argument) { + return argument.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i, "BSD-2-Clause-$1BSD"); + }, + // e.g. 'Clear BSD license' + function(argument) { + return argument.replace(/\bClear(-| )?BSD((-| )License)?/i, "BSD-3-Clause-Clear"); + }, + // e.g. 'Old BSD License' + function(argument) { + return argument.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i, "BSD-4-Clause"); + }, + // e.g. 'BY-NC-4.0' + function(argument) { + return "CC-" + argument; + }, + // e.g. 'BY-NC' + function(argument) { + return "CC-" + argument + "-4.0"; + }, + // e.g. 'Attribution-NonCommercial' + function(argument) { + return argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, ""); + }, + // e.g. 'Attribution-NonCommercial' + function(argument) { + return "CC-" + argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, "") + "-4.0"; + } + ]; + var licensesWithVersions = spdxLicenseIds.map(function(id) { + var match = /^(.*)-\d+\.\d+$/.exec(id); + return match ? [match[0], match[1]] : [id, null]; + }).reduce(function(objectMap, item) { + var key = item[1]; + objectMap[key] = objectMap[key] || []; + objectMap[key].push(item[0]); + return objectMap; + }, {}); + var licensesWithOneVersion = Object.keys(licensesWithVersions).map(function makeEntries(key) { + return [key, licensesWithVersions[key]]; + }).filter(function identifySoleVersions(item) { + return ( + // Licenses has just one valid version suffix. + item[1].length === 1 && item[0] !== null && // APL will be considered Apache, rather than APL-1.0 + item[0] !== "APL" + ); + }).map(function createLastResorts(item) { + return [item[0], item[1][0]]; + }); + licensesWithVersions = void 0; + var lastResorts = [ + ["UNLI", "Unlicense"], + ["WTF", "WTFPL"], + ["2 CLAUSE", "BSD-2-Clause"], + ["2-CLAUSE", "BSD-2-Clause"], + ["3 CLAUSE", "BSD-3-Clause"], + ["3-CLAUSE", "BSD-3-Clause"], + ["AFFERO", "AGPL-3.0-or-later"], + ["AGPL", "AGPL-3.0-or-later"], + ["APACHE", "Apache-2.0"], + ["ARTISTIC", "Artistic-2.0"], + ["Affero", "AGPL-3.0-or-later"], + ["BEER", "Beerware"], + ["BOOST", "BSL-1.0"], + ["BSD", "BSD-2-Clause"], + ["CDDL", "CDDL-1.1"], + ["ECLIPSE", "EPL-1.0"], + ["FUCK", "WTFPL"], + ["GNU", "GPL-3.0-or-later"], + ["LGPL", "LGPL-3.0-or-later"], + ["GPLV1", "GPL-1.0-only"], + ["GPL-1", "GPL-1.0-only"], + ["GPLV2", "GPL-2.0-only"], + ["GPL-2", "GPL-2.0-only"], + ["GPL", "GPL-3.0-or-later"], + ["MIT +NO-FALSE-ATTRIBS", "MITNFA"], + ["MIT", "MIT"], + ["MPL", "MPL-2.0"], + ["X11", "X11"], + ["ZLIB", "Zlib"] + ].concat(licensesWithOneVersion).sort(sortTranspositions); + var SUBSTRING = 0; + var IDENTIFIER = 1; + var validTransformation = function(identifier) { + for (var i = 0; i < transforms.length; i++) { + var transformed = transforms[i](identifier).trim(); + if (transformed !== identifier && valid(transformed)) { + return transformed; + } + } + return null; + }; + var validLastResort = function(identifier) { + var upperCased = identifier.toUpperCase(); + for (var i = 0; i < lastResorts.length; i++) { + var lastResort = lastResorts[i]; + if (upperCased.indexOf(lastResort[SUBSTRING]) > -1) { + return lastResort[IDENTIFIER]; + } + } + return null; + }; + var anyCorrection = function(identifier, check) { + for (var i = 0; i < transpositions.length; i++) { + var transposition = transpositions[i]; + var transposed = transposition[TRANSPOSED]; + if (identifier.indexOf(transposed) > -1) { + var corrected = identifier.replace( + transposed, + transposition[CORRECT] + ); + var checked = check(corrected); + if (checked !== null) { + return checked; + } + } + } + return null; + }; + module2.exports = function(identifier, options) { + options = options || {}; + var upgrade = options.upgrade === void 0 ? true : !!options.upgrade; + function postprocess(value) { + return upgrade ? upgradeGPLs(value) : value; + } + var validArugment = typeof identifier === "string" && identifier.trim().length !== 0; + if (!validArugment) { + throw Error("Invalid argument. Expected non-empty string."); + } + identifier = identifier.trim(); + if (valid(identifier)) { + return postprocess(identifier); + } + var noPlus = identifier.replace(/\+$/, "").trim(); + if (valid(noPlus)) { + return postprocess(noPlus); + } + var transformed = validTransformation(identifier); + if (transformed !== null) { + return postprocess(transformed); + } + transformed = anyCorrection(identifier, function(argument) { + if (valid(argument)) { + return argument; + } + return validTransformation(argument); + }); + if (transformed !== null) { + return postprocess(transformed); + } + transformed = validLastResort(identifier); + if (transformed !== null) { + return postprocess(transformed); + } + transformed = anyCorrection(identifier, validLastResort); + if (transformed !== null) { + return postprocess(transformed); + } + return null; + }; + function upgradeGPLs(value) { + if ([ + "GPL-1.0", + "LGPL-1.0", + "AGPL-1.0", + "GPL-2.0", + "LGPL-2.0", + "AGPL-2.0", + "LGPL-2.1" + ].indexOf(value) !== -1) { + return value + "-only"; + } else if ([ + "GPL-1.0+", + "GPL-2.0+", + "GPL-3.0+", + "LGPL-2.0+", + "LGPL-2.1+", + "LGPL-3.0+", + "AGPL-1.0+", + "AGPL-3.0+" + ].indexOf(value) !== -1) { + return value.replace(/\+$/, "-or-later"); + } else if (["GPL-3.0", "LGPL-3.0", "AGPL-3.0"].indexOf(value) !== -1) { + return value + "-or-later"; + } else { + return value; + } + } + } +}); + +// ../node_modules/.pnpm/validate-npm-package-license@3.0.4/node_modules/validate-npm-package-license/index.js +var require_validate_npm_package_license = __commonJS({ + "../node_modules/.pnpm/validate-npm-package-license@3.0.4/node_modules/validate-npm-package-license/index.js"(exports2, module2) { + var parse2 = require_spdx_expression_parse(); + var correct = require_spdx_correct(); + var genericWarning = 'license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "'; + var fileReferenceRE = /^SEE LICEN[CS]E IN (.+)$/; + function startsWith(prefix, string) { + return string.slice(0, prefix.length) === prefix; + } + function usesLicenseRef(ast) { + if (ast.hasOwnProperty("license")) { + var license = ast.license; + return startsWith("LicenseRef", license) || startsWith("DocumentRef", license); + } else { + return usesLicenseRef(ast.left) || usesLicenseRef(ast.right); + } + } + module2.exports = function(argument) { + var ast; + try { + ast = parse2(argument); + } catch (e) { + var match; + if (argument === "UNLICENSED" || argument === "UNLICENCED") { + return { + validForOldPackages: true, + validForNewPackages: true, + unlicensed: true + }; + } else if (match = fileReferenceRE.exec(argument)) { + return { + validForOldPackages: true, + validForNewPackages: true, + inFile: match[1] + }; + } else { + var result2 = { + validForOldPackages: false, + validForNewPackages: false, + warnings: [genericWarning] + }; + if (argument.trim().length !== 0) { + var corrected = correct(argument); + if (corrected) { + result2.warnings.push( + 'license is similar to the valid expression "' + corrected + '"' + ); + } + } + return result2; + } + } + if (usesLicenseRef(ast)) { + return { + validForNewPackages: false, + validForOldPackages: false, + spdx: true, + warnings: [genericWarning] + }; + } else { + return { + validForNewPackages: true, + validForOldPackages: true, + spdx: true + }; + } + }; + } +}); + +// ../node_modules/.pnpm/lru-cache@7.18.3/node_modules/lru-cache/index.js +var require_lru_cache3 = __commonJS({ + "../node_modules/.pnpm/lru-cache@7.18.3/node_modules/lru-cache/index.js"(exports2, module2) { + var perf = typeof performance === "object" && performance && typeof performance.now === "function" ? performance : Date; + var hasAbortController = typeof AbortController === "function"; + var AC = hasAbortController ? AbortController : class AbortController { + constructor() { + this.signal = new AS(); + } + abort(reason = new Error("This operation was aborted")) { + this.signal.reason = this.signal.reason || reason; + this.signal.aborted = true; + this.signal.dispatchEvent({ + type: "abort", + target: this.signal + }); + } + }; + var hasAbortSignal = typeof AbortSignal === "function"; + var hasACAbortSignal = typeof AC.AbortSignal === "function"; + var AS = hasAbortSignal ? AbortSignal : hasACAbortSignal ? AC.AbortController : class AbortSignal { + constructor() { + this.reason = void 0; + this.aborted = false; + this._listeners = []; + } + dispatchEvent(e) { + if (e.type === "abort") { + this.aborted = true; + this.onabort(e); + this._listeners.forEach((f) => f(e), this); + } + } + onabort() { + } + addEventListener(ev, fn2) { + if (ev === "abort") { + this._listeners.push(fn2); + } + } + removeEventListener(ev, fn2) { + if (ev === "abort") { + this._listeners = this._listeners.filter((f) => f !== fn2); + } + } + }; + var warned = /* @__PURE__ */ new Set(); + var deprecatedOption = (opt, instead) => { + const code = `LRU_CACHE_OPTION_${opt}`; + if (shouldWarn(code)) { + warn(code, `${opt} option`, `options.${instead}`, LRUCache); + } + }; + var deprecatedMethod = (method, instead) => { + const code = `LRU_CACHE_METHOD_${method}`; + if (shouldWarn(code)) { + const { prototype } = LRUCache; + const { get } = Object.getOwnPropertyDescriptor(prototype, method); + warn(code, `${method} method`, `cache.${instead}()`, get); + } + }; + var deprecatedProperty = (field, instead) => { + const code = `LRU_CACHE_PROPERTY_${field}`; + if (shouldWarn(code)) { + const { prototype } = LRUCache; + const { get } = Object.getOwnPropertyDescriptor(prototype, field); + warn(code, `${field} property`, `cache.${instead}`, get); + } + }; + var emitWarning = (...a) => { + typeof process === "object" && process && typeof process.emitWarning === "function" ? process.emitWarning(...a) : console.error(...a); + }; + var shouldWarn = (code) => !warned.has(code); + var warn = (code, what, instead, fn2) => { + warned.add(code); + const msg = `The ${what} is deprecated. Please use ${instead} instead.`; + emitWarning(msg, "DeprecationWarning", code, fn2); + }; + var isPosInt = (n) => n && n === Math.floor(n) && n > 0 && isFinite(n); + var getUintArray = (max) => !isPosInt(max) ? null : max <= Math.pow(2, 8) ? Uint8Array : max <= Math.pow(2, 16) ? Uint16Array : max <= Math.pow(2, 32) ? Uint32Array : max <= Number.MAX_SAFE_INTEGER ? ZeroArray : null; + var ZeroArray = class extends Array { + constructor(size) { + super(size); + this.fill(0); + } + }; + var Stack = class { + constructor(max) { + if (max === 0) { + return []; + } + const UintArray = getUintArray(max); + this.heap = new UintArray(max); + this.length = 0; + } + push(n) { + this.heap[this.length++] = n; + } + pop() { + return this.heap[--this.length]; + } + }; + var LRUCache = class { + constructor(options = {}) { + const { + max = 0, + ttl, + ttlResolution = 1, + ttlAutopurge, + updateAgeOnGet, + updateAgeOnHas, + allowStale, + dispose, + disposeAfter, + noDisposeOnSet, + noUpdateTTL, + maxSize = 0, + maxEntrySize = 0, + sizeCalculation, + fetchMethod, + fetchContext, + noDeleteOnFetchRejection, + noDeleteOnStaleGet, + allowStaleOnFetchRejection, + allowStaleOnFetchAbort, + ignoreFetchAbort + } = options; + const { length, maxAge, stale } = options instanceof LRUCache ? {} : options; + if (max !== 0 && !isPosInt(max)) { + throw new TypeError("max option must be a nonnegative integer"); + } + const UintArray = max ? getUintArray(max) : Array; + if (!UintArray) { + throw new Error("invalid max value: " + max); + } + this.max = max; + this.maxSize = maxSize; + this.maxEntrySize = maxEntrySize || this.maxSize; + this.sizeCalculation = sizeCalculation || length; + if (this.sizeCalculation) { + if (!this.maxSize && !this.maxEntrySize) { + throw new TypeError( + "cannot set sizeCalculation without setting maxSize or maxEntrySize" + ); + } + if (typeof this.sizeCalculation !== "function") { + throw new TypeError("sizeCalculation set to non-function"); + } + } + this.fetchMethod = fetchMethod || null; + if (this.fetchMethod && typeof this.fetchMethod !== "function") { + throw new TypeError( + "fetchMethod must be a function if specified" + ); + } + this.fetchContext = fetchContext; + if (!this.fetchMethod && fetchContext !== void 0) { + throw new TypeError( + "cannot set fetchContext without fetchMethod" + ); + } + this.keyMap = /* @__PURE__ */ new Map(); + this.keyList = new Array(max).fill(null); + this.valList = new Array(max).fill(null); + this.next = new UintArray(max); + this.prev = new UintArray(max); + this.head = 0; + this.tail = 0; + this.free = new Stack(max); + this.initialFill = 1; + this.size = 0; + if (typeof dispose === "function") { + this.dispose = dispose; + } + if (typeof disposeAfter === "function") { + this.disposeAfter = disposeAfter; + this.disposed = []; + } else { + this.disposeAfter = null; + this.disposed = null; + } + this.noDisposeOnSet = !!noDisposeOnSet; + this.noUpdateTTL = !!noUpdateTTL; + this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection; + this.allowStaleOnFetchRejection = !!allowStaleOnFetchRejection; + this.allowStaleOnFetchAbort = !!allowStaleOnFetchAbort; + this.ignoreFetchAbort = !!ignoreFetchAbort; + if (this.maxEntrySize !== 0) { + if (this.maxSize !== 0) { + if (!isPosInt(this.maxSize)) { + throw new TypeError( + "maxSize must be a positive integer if specified" + ); + } + } + if (!isPosInt(this.maxEntrySize)) { + throw new TypeError( + "maxEntrySize must be a positive integer if specified" + ); + } + this.initializeSizeTracking(); + } + this.allowStale = !!allowStale || !!stale; + this.noDeleteOnStaleGet = !!noDeleteOnStaleGet; + this.updateAgeOnGet = !!updateAgeOnGet; + this.updateAgeOnHas = !!updateAgeOnHas; + this.ttlResolution = isPosInt(ttlResolution) || ttlResolution === 0 ? ttlResolution : 1; + this.ttlAutopurge = !!ttlAutopurge; + this.ttl = ttl || maxAge || 0; + if (this.ttl) { + if (!isPosInt(this.ttl)) { + throw new TypeError( + "ttl must be a positive integer if specified" + ); + } + this.initializeTTLTracking(); + } + if (this.max === 0 && this.ttl === 0 && this.maxSize === 0) { + throw new TypeError( + "At least one of max, maxSize, or ttl is required" + ); + } + if (!this.ttlAutopurge && !this.max && !this.maxSize) { + const code = "LRU_CACHE_UNBOUNDED"; + if (shouldWarn(code)) { + warned.add(code); + const msg = "TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption."; + emitWarning(msg, "UnboundedCacheWarning", code, LRUCache); + } + } + if (stale) { + deprecatedOption("stale", "allowStale"); + } + if (maxAge) { + deprecatedOption("maxAge", "ttl"); + } + if (length) { + deprecatedOption("length", "sizeCalculation"); + } + } + getRemainingTTL(key) { + return this.has(key, { updateAgeOnHas: false }) ? Infinity : 0; + } + initializeTTLTracking() { + this.ttls = new ZeroArray(this.max); + this.starts = new ZeroArray(this.max); + this.setItemTTL = (index, ttl, start = perf.now()) => { + this.starts[index] = ttl !== 0 ? start : 0; + this.ttls[index] = ttl; + if (ttl !== 0 && this.ttlAutopurge) { + const t = setTimeout(() => { + if (this.isStale(index)) { + this.delete(this.keyList[index]); + } + }, ttl + 1); + if (t.unref) { + t.unref(); + } + } + }; + this.updateItemAge = (index) => { + this.starts[index] = this.ttls[index] !== 0 ? perf.now() : 0; + }; + this.statusTTL = (status, index) => { + if (status) { + status.ttl = this.ttls[index]; + status.start = this.starts[index]; + status.now = cachedNow || getNow(); + status.remainingTTL = status.now + status.ttl - status.start; + } + }; + let cachedNow = 0; + const getNow = () => { + const n = perf.now(); + if (this.ttlResolution > 0) { + cachedNow = n; + const t = setTimeout( + () => cachedNow = 0, + this.ttlResolution + ); + if (t.unref) { + t.unref(); + } + } + return n; + }; + this.getRemainingTTL = (key) => { + const index = this.keyMap.get(key); + if (index === void 0) { + return 0; + } + return this.ttls[index] === 0 || this.starts[index] === 0 ? Infinity : this.starts[index] + this.ttls[index] - (cachedNow || getNow()); + }; + this.isStale = (index) => { + return this.ttls[index] !== 0 && this.starts[index] !== 0 && (cachedNow || getNow()) - this.starts[index] > this.ttls[index]; + }; + } + updateItemAge(_index) { + } + statusTTL(_status, _index) { + } + setItemTTL(_index, _ttl, _start) { + } + isStale(_index) { + return false; + } + initializeSizeTracking() { + this.calculatedSize = 0; + this.sizes = new ZeroArray(this.max); + this.removeItemSize = (index) => { + this.calculatedSize -= this.sizes[index]; + this.sizes[index] = 0; + }; + this.requireSize = (k, v, size, sizeCalculation) => { + if (this.isBackgroundFetch(v)) { + return 0; + } + if (!isPosInt(size)) { + if (sizeCalculation) { + if (typeof sizeCalculation !== "function") { + throw new TypeError("sizeCalculation must be a function"); + } + size = sizeCalculation(v, k); + if (!isPosInt(size)) { + throw new TypeError( + "sizeCalculation return invalid (expect positive integer)" + ); + } + } else { + throw new TypeError( + "invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set." + ); + } + } + return size; + }; + this.addItemSize = (index, size, status) => { + this.sizes[index] = size; + if (this.maxSize) { + const maxSize = this.maxSize - this.sizes[index]; + while (this.calculatedSize > maxSize) { + this.evict(true); + } + } + this.calculatedSize += this.sizes[index]; + if (status) { + status.entrySize = size; + status.totalCalculatedSize = this.calculatedSize; + } + }; + } + removeItemSize(_index) { + } + addItemSize(_index, _size) { + } + requireSize(_k, _v, size, sizeCalculation) { + if (size || sizeCalculation) { + throw new TypeError( + "cannot set size without setting maxSize or maxEntrySize on cache" + ); + } + } + *indexes({ allowStale = this.allowStale } = {}) { + if (this.size) { + for (let i = this.tail; true; ) { + if (!this.isValidIndex(i)) { + break; + } + if (allowStale || !this.isStale(i)) { + yield i; + } + if (i === this.head) { + break; + } else { + i = this.prev[i]; + } + } + } + } + *rindexes({ allowStale = this.allowStale } = {}) { + if (this.size) { + for (let i = this.head; true; ) { + if (!this.isValidIndex(i)) { + break; + } + if (allowStale || !this.isStale(i)) { + yield i; + } + if (i === this.tail) { + break; + } else { + i = this.next[i]; + } + } + } + } + isValidIndex(index) { + return index !== void 0 && this.keyMap.get(this.keyList[index]) === index; + } + *entries() { + for (const i of this.indexes()) { + if (this.valList[i] !== void 0 && this.keyList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield [this.keyList[i], this.valList[i]]; + } + } + } + *rentries() { + for (const i of this.rindexes()) { + if (this.valList[i] !== void 0 && this.keyList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield [this.keyList[i], this.valList[i]]; + } + } + } + *keys() { + for (const i of this.indexes()) { + if (this.keyList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield this.keyList[i]; + } + } + } + *rkeys() { + for (const i of this.rindexes()) { + if (this.keyList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield this.keyList[i]; + } + } + } + *values() { + for (const i of this.indexes()) { + if (this.valList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield this.valList[i]; + } + } + } + *rvalues() { + for (const i of this.rindexes()) { + if (this.valList[i] !== void 0 && !this.isBackgroundFetch(this.valList[i])) { + yield this.valList[i]; + } + } + } + [Symbol.iterator]() { + return this.entries(); + } + find(fn2, getOptions) { + for (const i of this.indexes()) { + const v = this.valList[i]; + const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + if (fn2(value, this.keyList[i], this)) { + return this.get(this.keyList[i], getOptions); + } + } + } + forEach(fn2, thisp = this) { + for (const i of this.indexes()) { + const v = this.valList[i]; + const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + fn2.call(thisp, value, this.keyList[i], this); + } + } + rforEach(fn2, thisp = this) { + for (const i of this.rindexes()) { + const v = this.valList[i]; + const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + fn2.call(thisp, value, this.keyList[i], this); + } + } + get prune() { + deprecatedMethod("prune", "purgeStale"); + return this.purgeStale; + } + purgeStale() { + let deleted = false; + for (const i of this.rindexes({ allowStale: true })) { + if (this.isStale(i)) { + this.delete(this.keyList[i]); + deleted = true; + } + } + return deleted; + } + dump() { + const arr = []; + for (const i of this.indexes({ allowStale: true })) { + const key = this.keyList[i]; + const v = this.valList[i]; + const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + const entry = { value }; + if (this.ttls) { + entry.ttl = this.ttls[i]; + const age = perf.now() - this.starts[i]; + entry.start = Math.floor(Date.now() - age); + } + if (this.sizes) { + entry.size = this.sizes[i]; + } + arr.unshift([key, entry]); + } + return arr; + } + load(arr) { + this.clear(); + for (const [key, entry] of arr) { + if (entry.start) { + const age = Date.now() - entry.start; + entry.start = perf.now() - age; + } + this.set(key, entry.value, entry); + } + } + dispose(_v, _k, _reason) { + } + set(k, v, { + ttl = this.ttl, + start, + noDisposeOnSet = this.noDisposeOnSet, + size = 0, + sizeCalculation = this.sizeCalculation, + noUpdateTTL = this.noUpdateTTL, + status + } = {}) { + size = this.requireSize(k, v, size, sizeCalculation); + if (this.maxEntrySize && size > this.maxEntrySize) { + if (status) { + status.set = "miss"; + status.maxEntrySizeExceeded = true; + } + this.delete(k); + return this; + } + let index = this.size === 0 ? void 0 : this.keyMap.get(k); + if (index === void 0) { + index = this.newIndex(); + this.keyList[index] = k; + this.valList[index] = v; + this.keyMap.set(k, index); + this.next[this.tail] = index; + this.prev[index] = this.tail; + this.tail = index; + this.size++; + this.addItemSize(index, size, status); + if (status) { + status.set = "add"; + } + noUpdateTTL = false; + } else { + this.moveToTail(index); + const oldVal = this.valList[index]; + if (v !== oldVal) { + if (this.isBackgroundFetch(oldVal)) { + oldVal.__abortController.abort(new Error("replaced")); + } else { + if (!noDisposeOnSet) { + this.dispose(oldVal, k, "set"); + if (this.disposeAfter) { + this.disposed.push([oldVal, k, "set"]); + } + } + } + this.removeItemSize(index); + this.valList[index] = v; + this.addItemSize(index, size, status); + if (status) { + status.set = "replace"; + const oldValue = oldVal && this.isBackgroundFetch(oldVal) ? oldVal.__staleWhileFetching : oldVal; + if (oldValue !== void 0) + status.oldValue = oldValue; + } + } else if (status) { + status.set = "update"; + } + } + if (ttl !== 0 && this.ttl === 0 && !this.ttls) { + this.initializeTTLTracking(); + } + if (!noUpdateTTL) { + this.setItemTTL(index, ttl, start); + } + this.statusTTL(status, index); + if (this.disposeAfter) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + return this; + } + newIndex() { + if (this.size === 0) { + return this.tail; + } + if (this.size === this.max && this.max !== 0) { + return this.evict(false); + } + if (this.free.length !== 0) { + return this.free.pop(); + } + return this.initialFill++; + } + pop() { + if (this.size) { + const val = this.valList[this.head]; + this.evict(true); + return val; + } + } + evict(free) { + const head = this.head; + const k = this.keyList[head]; + const v = this.valList[head]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(new Error("evicted")); + } else { + this.dispose(v, k, "evict"); + if (this.disposeAfter) { + this.disposed.push([v, k, "evict"]); + } + } + this.removeItemSize(head); + if (free) { + this.keyList[head] = null; + this.valList[head] = null; + this.free.push(head); + } + this.head = this.next[head]; + this.keyMap.delete(k); + this.size--; + return head; + } + has(k, { updateAgeOnHas = this.updateAgeOnHas, status } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0) { + if (!this.isStale(index)) { + if (updateAgeOnHas) { + this.updateItemAge(index); + } + if (status) + status.has = "hit"; + this.statusTTL(status, index); + return true; + } else if (status) { + status.has = "stale"; + this.statusTTL(status, index); + } + } else if (status) { + status.has = "miss"; + } + return false; + } + // like get(), but without any LRU updating or TTL expiration + peek(k, { allowStale = this.allowStale } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0 && (allowStale || !this.isStale(index))) { + const v = this.valList[index]; + return this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; + } + } + backgroundFetch(k, index, options, context) { + const v = index === void 0 ? void 0 : this.valList[index]; + if (this.isBackgroundFetch(v)) { + return v; + } + const ac = new AC(); + if (options.signal) { + options.signal.addEventListener( + "abort", + () => ac.abort(options.signal.reason) + ); + } + const fetchOpts = { + signal: ac.signal, + options, + context + }; + const cb = (v2, updateCache = false) => { + const { aborted } = ac.signal; + const ignoreAbort = options.ignoreFetchAbort && v2 !== void 0; + if (options.status) { + if (aborted && !updateCache) { + options.status.fetchAborted = true; + options.status.fetchError = ac.signal.reason; + if (ignoreAbort) + options.status.fetchAbortIgnored = true; + } else { + options.status.fetchResolved = true; + } + } + if (aborted && !ignoreAbort && !updateCache) { + return fetchFail(ac.signal.reason); + } + if (this.valList[index] === p) { + if (v2 === void 0) { + if (p.__staleWhileFetching) { + this.valList[index] = p.__staleWhileFetching; + } else { + this.delete(k); + } + } else { + if (options.status) + options.status.fetchUpdated = true; + this.set(k, v2, fetchOpts.options); + } + } + return v2; + }; + const eb = (er) => { + if (options.status) { + options.status.fetchRejected = true; + options.status.fetchError = er; + } + return fetchFail(er); + }; + const fetchFail = (er) => { + const { aborted } = ac.signal; + const allowStaleAborted = aborted && options.allowStaleOnFetchAbort; + const allowStale = allowStaleAborted || options.allowStaleOnFetchRejection; + const noDelete = allowStale || options.noDeleteOnFetchRejection; + if (this.valList[index] === p) { + const del = !noDelete || p.__staleWhileFetching === void 0; + if (del) { + this.delete(k); + } else if (!allowStaleAborted) { + this.valList[index] = p.__staleWhileFetching; + } + } + if (allowStale) { + if (options.status && p.__staleWhileFetching !== void 0) { + options.status.returnedStale = true; + } + return p.__staleWhileFetching; + } else if (p.__returned === p) { + throw er; + } + }; + const pcall = (res, rej) => { + this.fetchMethod(k, v, fetchOpts).then((v2) => res(v2), rej); + ac.signal.addEventListener("abort", () => { + if (!options.ignoreFetchAbort || options.allowStaleOnFetchAbort) { + res(); + if (options.allowStaleOnFetchAbort) { + res = (v2) => cb(v2, true); + } + } + }); + }; + if (options.status) + options.status.fetchDispatched = true; + const p = new Promise(pcall).then(cb, eb); + p.__abortController = ac; + p.__staleWhileFetching = v; + p.__returned = null; + if (index === void 0) { + this.set(k, p, { ...fetchOpts.options, status: void 0 }); + index = this.keyMap.get(k); + } else { + this.valList[index] = p; + } + return p; + } + isBackgroundFetch(p) { + return p && typeof p === "object" && typeof p.then === "function" && Object.prototype.hasOwnProperty.call( + p, + "__staleWhileFetching" + ) && Object.prototype.hasOwnProperty.call(p, "__returned") && (p.__returned === p || p.__returned === null); + } + // this takes the union of get() and set() opts, because it does both + async fetch(k, { + // get options + allowStale = this.allowStale, + updateAgeOnGet = this.updateAgeOnGet, + noDeleteOnStaleGet = this.noDeleteOnStaleGet, + // set options + ttl = this.ttl, + noDisposeOnSet = this.noDisposeOnSet, + size = 0, + sizeCalculation = this.sizeCalculation, + noUpdateTTL = this.noUpdateTTL, + // fetch exclusive options + noDeleteOnFetchRejection = this.noDeleteOnFetchRejection, + allowStaleOnFetchRejection = this.allowStaleOnFetchRejection, + ignoreFetchAbort = this.ignoreFetchAbort, + allowStaleOnFetchAbort = this.allowStaleOnFetchAbort, + fetchContext = this.fetchContext, + forceRefresh = false, + status, + signal + } = {}) { + if (!this.fetchMethod) { + if (status) + status.fetch = "get"; + return this.get(k, { + allowStale, + updateAgeOnGet, + noDeleteOnStaleGet, + status + }); + } + const options = { + allowStale, + updateAgeOnGet, + noDeleteOnStaleGet, + ttl, + noDisposeOnSet, + size, + sizeCalculation, + noUpdateTTL, + noDeleteOnFetchRejection, + allowStaleOnFetchRejection, + allowStaleOnFetchAbort, + ignoreFetchAbort, + status, + signal + }; + let index = this.keyMap.get(k); + if (index === void 0) { + if (status) + status.fetch = "miss"; + const p = this.backgroundFetch(k, index, options, fetchContext); + return p.__returned = p; + } else { + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + const stale = allowStale && v.__staleWhileFetching !== void 0; + if (status) { + status.fetch = "inflight"; + if (stale) + status.returnedStale = true; + } + return stale ? v.__staleWhileFetching : v.__returned = v; + } + const isStale = this.isStale(index); + if (!forceRefresh && !isStale) { + if (status) + status.fetch = "hit"; + this.moveToTail(index); + if (updateAgeOnGet) { + this.updateItemAge(index); + } + this.statusTTL(status, index); + return v; + } + const p = this.backgroundFetch(k, index, options, fetchContext); + const hasStale = p.__staleWhileFetching !== void 0; + const staleVal = hasStale && allowStale; + if (status) { + status.fetch = hasStale && isStale ? "stale" : "refresh"; + if (staleVal && isStale) + status.returnedStale = true; + } + return staleVal ? p.__staleWhileFetching : p.__returned = p; + } + } + get(k, { + allowStale = this.allowStale, + updateAgeOnGet = this.updateAgeOnGet, + noDeleteOnStaleGet = this.noDeleteOnStaleGet, + status + } = {}) { + const index = this.keyMap.get(k); + if (index !== void 0) { + const value = this.valList[index]; + const fetching = this.isBackgroundFetch(value); + this.statusTTL(status, index); + if (this.isStale(index)) { + if (status) + status.get = "stale"; + if (!fetching) { + if (!noDeleteOnStaleGet) { + this.delete(k); + } + if (status) + status.returnedStale = allowStale; + return allowStale ? value : void 0; + } else { + if (status) { + status.returnedStale = allowStale && value.__staleWhileFetching !== void 0; + } + return allowStale ? value.__staleWhileFetching : void 0; + } + } else { + if (status) + status.get = "hit"; + if (fetching) { + return value.__staleWhileFetching; + } + this.moveToTail(index); + if (updateAgeOnGet) { + this.updateItemAge(index); + } + return value; + } + } else if (status) { + status.get = "miss"; + } + } + connect(p, n) { + this.prev[n] = p; + this.next[p] = n; + } + moveToTail(index) { + if (index !== this.tail) { + if (index === this.head) { + this.head = this.next[index]; + } else { + this.connect(this.prev[index], this.next[index]); + } + this.connect(this.tail, index); + this.tail = index; + } + } + get del() { + deprecatedMethod("del", "delete"); + return this.delete; + } + delete(k) { + let deleted = false; + if (this.size !== 0) { + const index = this.keyMap.get(k); + if (index !== void 0) { + deleted = true; + if (this.size === 1) { + this.clear(); + } else { + this.removeItemSize(index); + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(new Error("deleted")); + } else { + this.dispose(v, k, "delete"); + if (this.disposeAfter) { + this.disposed.push([v, k, "delete"]); + } + } + this.keyMap.delete(k); + this.keyList[index] = null; + this.valList[index] = null; + if (index === this.tail) { + this.tail = this.prev[index]; + } else if (index === this.head) { + this.head = this.next[index]; + } else { + this.next[this.prev[index]] = this.next[index]; + this.prev[this.next[index]] = this.prev[index]; + } + this.size--; + this.free.push(index); + } + } + } + if (this.disposed) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + return deleted; + } + clear() { + for (const index of this.rindexes({ allowStale: true })) { + const v = this.valList[index]; + if (this.isBackgroundFetch(v)) { + v.__abortController.abort(new Error("deleted")); + } else { + const k = this.keyList[index]; + this.dispose(v, k, "delete"); + if (this.disposeAfter) { + this.disposed.push([v, k, "delete"]); + } + } + } + this.keyMap.clear(); + this.valList.fill(null); + this.keyList.fill(null); + if (this.ttls) { + this.ttls.fill(0); + this.starts.fill(0); + } + if (this.sizes) { + this.sizes.fill(0); + } + this.head = 0; + this.tail = 0; + this.initialFill = 1; + this.free.length = 0; + this.calculatedSize = 0; + this.size = 0; + if (this.disposed) { + while (this.disposed.length) { + this.disposeAfter(...this.disposed.shift()); + } + } + } + get reset() { + deprecatedMethod("reset", "clear"); + return this.clear; + } + get length() { + deprecatedProperty("length", "size"); + return this.size; + } + static get AbortController() { + return AC; + } + static get AbortSignal() { + return AS; + } + }; + module2.exports = LRUCache; + } +}); + +// ../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/hosts.js +var require_hosts = __commonJS({ + "../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/hosts.js"(exports2, module2) { + "use strict"; + var maybeJoin = (...args2) => args2.every((arg) => arg) ? args2.join("") : ""; + var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : ""; + var formatHashFragment = (f) => f.toLowerCase().replace(/^\W+|\/|\W+$/g, "").replace(/\W+/g, "-"); + var defaults = { + sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`, + sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + edittemplate: ({ domain, user, project, committish, editpath, path: path2 }) => `https://${domain}/${user}/${project}${maybeJoin("/", editpath, "/", maybeEncode(committish || "HEAD"), "/", path2)}`, + browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`, + browsetreetemplate: ({ domain, user, project, committish, treepath, path: path2, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "HEAD")}/${path2}${maybeJoin("#", hashformat(fragment || ""))}`, + browseblobtemplate: ({ domain, user, project, committish, blobpath, path: path2, fragment, hashformat }) => `https://${domain}/${user}/${project}/${blobpath}/${maybeEncode(committish || "HEAD")}/${path2}${maybeJoin("#", hashformat(fragment || ""))}`, + docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`, + httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + filetemplate: ({ domain, user, project, committish, path: path2 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish || "HEAD")}/${path2}`, + shortcuttemplate: ({ type, user, project, committish }) => `${type}:${user}/${project}${maybeJoin("#", committish)}`, + pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`, + bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`, + hashformat: formatHashFragment + }; + var hosts = {}; + hosts.github = { + // First two are insecure and generally shouldn't be used any more, but + // they are still supported. + protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"], + domain: "github.com", + treepath: "tree", + blobpath: "blob", + editpath: "edit", + filetemplate: ({ auth, user, project, committish, path: path2 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish || "HEAD")}/${path2}`, + gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish || "HEAD")}`, + extract: (url) => { + let [, user, project, type, committish] = url.pathname.split("/", 5); + if (type && type !== "tree") { + return; + } + if (!type) { + committish = url.hash.slice(1); + } + if (project && project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (!user || !project) { + return; + } + return { user, project, committish }; + } + }; + hosts.bitbucket = { + protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], + domain: "bitbucket.org", + treepath: "src", + blobpath: "src", + editpath: "?mode=edit", + edittemplate: ({ domain, user, project, committish, treepath, path: path2, editpath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish || "HEAD"), "/", path2, editpath)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish || "HEAD")}.tar.gz`, + extract: (url) => { + let [, user, project, aux] = url.pathname.split("/", 4); + if (["get"].includes(aux)) { + return; + } + if (project && project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (!user || !project) { + return; + } + return { user, project, committish: url.hash.slice(1) }; + } + }; + hosts.gitlab = { + protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], + domain: "gitlab.com", + treepath: "tree", + blobpath: "tree", + editpath: "-/edit", + httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/repository/archive.tar.gz?ref=${maybeEncode(committish || "HEAD")}`, + extract: (url) => { + const path2 = url.pathname.slice(1); + if (path2.includes("/-/") || path2.includes("/archive.tar.gz")) { + return; + } + const segments = path2.split("/"); + let project = segments.pop(); + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + const user = segments.join("/"); + if (!user || !project) { + return; + } + return { user, project, committish: url.hash.slice(1) }; + } + }; + hosts.gist = { + protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"], + domain: "gist.github.com", + editpath: "edit", + sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`, + sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`, + edittemplate: ({ domain, user, project, committish, editpath }) => `https://${domain}/${user}/${project}${maybeJoin("/", maybeEncode(committish))}/${editpath}`, + browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, + browsetreetemplate: ({ domain, project, committish, path: path2, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path2))}`, + browseblobtemplate: ({ domain, project, committish, path: path2, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path2))}`, + docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, + httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`, + filetemplate: ({ user, project, committish, path: path2 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path2}`, + shortcuttemplate: ({ type, project, committish }) => `${type}:${project}${maybeJoin("#", committish)}`, + pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`, + bugstemplate: ({ domain, project }) => `https://${domain}/${project}`, + gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish || "HEAD")}`, + extract: (url) => { + let [, user, project, aux] = url.pathname.split("/", 4); + if (aux === "raw") { + return; + } + if (!project) { + if (!user) { + return; + } + project = user; + user = null; + } + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + return { user, project, committish: url.hash.slice(1) }; + }, + hashformat: function(fragment) { + return fragment && "file-" + formatHashFragment(fragment); + } + }; + hosts.sourcehut = { + protocols: ["git+ssh:", "https:"], + domain: "git.sr.ht", + treepath: "tree", + blobpath: "tree", + filetemplate: ({ domain, user, project, committish, path: path2 }) => `https://${domain}/${user}/${project}/blob/${maybeEncode(committish) || "HEAD"}/${path2}`, + httpstemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, + tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/archive/${maybeEncode(committish) || "HEAD"}.tar.gz`, + bugstemplate: ({ user, project }) => `https://todo.sr.ht/${user}/${project}`, + extract: (url) => { + let [, user, project, aux] = url.pathname.split("/", 4); + if (["archive"].includes(aux)) { + return; + } + if (project && project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (!user || !project) { + return; + } + return { user, project, committish: url.hash.slice(1) }; + } + }; + for (const [name, host] of Object.entries(hosts)) { + hosts[name] = Object.assign({}, defaults, host); + } + module2.exports = hosts; + } +}); + +// ../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/parse-url.js +var require_parse_url = __commonJS({ + "../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/parse-url.js"(exports2, module2) { + var url = require("url"); + var lastIndexOfBefore = (str, char, beforeChar) => { + const startPosition = str.indexOf(beforeChar); + return str.lastIndexOf(char, startPosition > -1 ? startPosition : Infinity); + }; + var safeUrl = (u) => { + try { + return new url.URL(u); + } catch { + } + }; + var correctProtocol = (arg, protocols) => { + const firstColon = arg.indexOf(":"); + const proto = arg.slice(0, firstColon + 1); + if (Object.prototype.hasOwnProperty.call(protocols, proto)) { + return arg; + } + const firstAt = arg.indexOf("@"); + if (firstAt > -1) { + if (firstAt > firstColon) { + return `git+ssh://${arg}`; + } else { + return arg; + } + } + const doubleSlash = arg.indexOf("//"); + if (doubleSlash === firstColon + 1) { + return arg; + } + return `${arg.slice(0, firstColon + 1)}//${arg.slice(firstColon + 1)}`; + }; + var correctUrl = (giturl) => { + const firstAt = lastIndexOfBefore(giturl, "@", "#"); + const lastColonBeforeHash = lastIndexOfBefore(giturl, ":", "#"); + if (lastColonBeforeHash > firstAt) { + giturl = giturl.slice(0, lastColonBeforeHash) + "/" + giturl.slice(lastColonBeforeHash + 1); + } + if (lastIndexOfBefore(giturl, ":", "#") === -1 && giturl.indexOf("//") === -1) { + giturl = `git+ssh://${giturl}`; + } + return giturl; + }; + module2.exports = (giturl, protocols) => { + const withProtocol = protocols ? correctProtocol(giturl, protocols) : giturl; + return safeUrl(withProtocol) || safeUrl(correctUrl(withProtocol)); + }; + } +}); + +// ../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/from-url.js +var require_from_url = __commonJS({ + "../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/from-url.js"(exports2, module2) { + "use strict"; + var parseUrl = require_parse_url(); + var isGitHubShorthand = (arg) => { + const firstHash = arg.indexOf("#"); + const firstSlash = arg.indexOf("/"); + const secondSlash = arg.indexOf("/", firstSlash + 1); + const firstColon = arg.indexOf(":"); + const firstSpace = /\s/.exec(arg); + const firstAt = arg.indexOf("@"); + const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash; + const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash; + const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash; + const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash; + const hasSlash = firstSlash > 0; + const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/"); + const doesNotStartWithDot = !arg.startsWith("."); + return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash; + }; + module2.exports = (giturl, opts, { gitHosts, protocols }) => { + if (!giturl) { + return; + } + const correctedUrl = isGitHubShorthand(giturl) ? `github:${giturl}` : giturl; + const parsed = parseUrl(correctedUrl, protocols); + if (!parsed) { + return; + } + const gitHostShortcut = gitHosts.byShortcut[parsed.protocol]; + const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname]; + const gitHostName = gitHostShortcut || gitHostDomain; + if (!gitHostName) { + return; + } + const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain]; + let auth = null; + if (protocols[parsed.protocol]?.auth && (parsed.username || parsed.password)) { + auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`; + } + let committish = null; + let user = null; + let project = null; + let defaultRepresentation = null; + try { + if (gitHostShortcut) { + let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname; + const firstAt = pathname.indexOf("@"); + if (firstAt > -1) { + pathname = pathname.slice(firstAt + 1); + } + const lastSlash = pathname.lastIndexOf("/"); + if (lastSlash > -1) { + user = decodeURIComponent(pathname.slice(0, lastSlash)); + if (!user) { + user = null; + } + project = decodeURIComponent(pathname.slice(lastSlash + 1)); + } else { + project = decodeURIComponent(pathname); + } + if (project.endsWith(".git")) { + project = project.slice(0, -4); + } + if (parsed.hash) { + committish = decodeURIComponent(parsed.hash.slice(1)); + } + defaultRepresentation = "shortcut"; + } else { + if (!gitHostInfo.protocols.includes(parsed.protocol)) { + return; + } + const segments = gitHostInfo.extract(parsed); + if (!segments) { + return; + } + user = segments.user && decodeURIComponent(segments.user); + project = decodeURIComponent(segments.project); + committish = decodeURIComponent(segments.committish); + defaultRepresentation = protocols[parsed.protocol]?.name || parsed.protocol.slice(0, -1); + } + } catch (err) { + if (err instanceof URIError) { + return; + } else { + throw err; + } + } + return [gitHostName, user, auth, project, committish, defaultRepresentation, opts]; + }; + } +}); + +// ../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/index.js +var require_lib40 = __commonJS({ + "../node_modules/.pnpm/hosted-git-info@6.1.1/node_modules/hosted-git-info/lib/index.js"(exports2, module2) { + "use strict"; + var LRU = require_lru_cache3(); + var hosts = require_hosts(); + var fromUrl = require_from_url(); + var parseUrl = require_parse_url(); + var cache = new LRU({ max: 1e3 }); + var _gitHosts, _protocols, _fill, fill_fn; + var _GitHost = class { + constructor(type, user, auth, project, committish, defaultRepresentation, opts = {}) { + __privateAdd(this, _fill); + Object.assign(this, __privateGet(_GitHost, _gitHosts)[type], { + type, + user, + auth, + project, + committish, + default: defaultRepresentation, + opts + }); + } + static addHost(name, host) { + __privateGet(_GitHost, _gitHosts)[name] = host; + __privateGet(_GitHost, _gitHosts).byDomain[host.domain] = name; + __privateGet(_GitHost, _gitHosts).byShortcut[`${name}:`] = name; + __privateGet(_GitHost, _protocols)[`${name}:`] = { name }; + } + static fromUrl(giturl, opts) { + if (typeof giturl !== "string") { + return; + } + const key = giturl + JSON.stringify(opts || {}); + if (!cache.has(key)) { + const hostArgs = fromUrl(giturl, opts, { + gitHosts: __privateGet(_GitHost, _gitHosts), + protocols: __privateGet(_GitHost, _protocols) + }); + cache.set(key, hostArgs ? new _GitHost(...hostArgs) : void 0); + } + return cache.get(key); + } + static parseUrl(url) { + return parseUrl(url); + } + hash() { + return this.committish ? `#${this.committish}` : ""; + } + ssh(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.sshtemplate, opts); + } + sshurl(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.sshurltemplate, opts); + } + browse(path2, ...args2) { + if (typeof path2 !== "string") { + return __privateMethod(this, _fill, fill_fn).call(this, this.browsetemplate, path2); + } + if (typeof args2[0] !== "string") { + return __privateMethod(this, _fill, fill_fn).call(this, this.browsetreetemplate, { ...args2[0], path: path2 }); + } + return __privateMethod(this, _fill, fill_fn).call(this, this.browsetreetemplate, { ...args2[1], fragment: args2[0], path: path2 }); + } + // If the path is known to be a file, then browseFile should be used. For some hosts + // the url is the same as browse, but for others like GitHub a file can use both `/tree/` + // and `/blob/` in the path. When using a default committish of `HEAD` then the `/tree/` + // path will redirect to a specific commit. Using the `/blob/` path avoids this and + // does not redirect to a different commit. + browseFile(path2, ...args2) { + if (typeof args2[0] !== "string") { + return __privateMethod(this, _fill, fill_fn).call(this, this.browseblobtemplate, { ...args2[0], path: path2 }); + } + return __privateMethod(this, _fill, fill_fn).call(this, this.browseblobtemplate, { ...args2[1], fragment: args2[0], path: path2 }); + } + docs(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.docstemplate, opts); + } + bugs(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.bugstemplate, opts); + } + https(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.httpstemplate, opts); + } + git(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.gittemplate, opts); + } + shortcut(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.shortcuttemplate, opts); + } + path(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.pathtemplate, opts); + } + tarball(opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.tarballtemplate, { ...opts, noCommittish: false }); + } + file(path2, opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.filetemplate, { ...opts, path: path2 }); + } + edit(path2, opts) { + return __privateMethod(this, _fill, fill_fn).call(this, this.edittemplate, { ...opts, path: path2 }); + } + getDefaultRepresentation() { + return this.default; + } + toString(opts) { + if (this.default && typeof this[this.default] === "function") { + return this[this.default](opts); + } + return this.sshurl(opts); + } + }; + var GitHost = _GitHost; + _gitHosts = new WeakMap(); + _protocols = new WeakMap(); + _fill = new WeakSet(); + fill_fn = function(template, opts) { + if (typeof template !== "function") { + return null; + } + const options = { ...this, ...this.opts, ...opts }; + if (!options.path) { + options.path = ""; + } + if (options.path.startsWith("/")) { + options.path = options.path.slice(1); + } + if (options.noCommittish) { + options.committish = null; + } + const result2 = template(options); + return options.noGitPlus && result2.startsWith("git+") ? result2.slice(4) : result2; + }; + __privateAdd(GitHost, _gitHosts, { byShortcut: {}, byDomain: {} }); + __privateAdd(GitHost, _protocols, { + "git+ssh:": { name: "sshurl" }, + "ssh:": { name: "sshurl" }, + "git+https:": { name: "https", auth: true }, + "git:": { auth: true }, + "http:": { auth: true }, + "https:": { auth: true }, + "git+http:": { auth: true } + }); + for (const [name, host] of Object.entries(hosts)) { + GitHost.addHost(name, host); + } + module2.exports = GitHost; + } +}); + +// ../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js +var require_implementation = __commonJS({ + "../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js"(exports2, module2) { + "use strict"; + var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; + var slice = Array.prototype.slice; + var toStr = Object.prototype.toString; + var funcType = "[object Function]"; + module2.exports = function bind(that) { + var target = this; + if (typeof target !== "function" || toStr.call(target) !== funcType) { + throw new TypeError(ERROR_MESSAGE + target); + } + var args2 = slice.call(arguments, 1); + var bound; + var binder = function() { + if (this instanceof bound) { + var result2 = target.apply( + this, + args2.concat(slice.call(arguments)) + ); + if (Object(result2) === result2) { + return result2; + } + return this; + } else { + return target.apply( + that, + args2.concat(slice.call(arguments)) + ); + } + }; + var boundLength = Math.max(0, target.length - args2.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push("$" + i); + } + bound = Function("binder", "return function (" + boundArgs.join(",") + "){ return binder.apply(this,arguments); }")(binder); + if (target.prototype) { + var Empty = function Empty2() { + }; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } + return bound; + }; + } +}); + +// ../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js +var require_function_bind = __commonJS({ + "../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation(); + module2.exports = Function.prototype.bind || implementation; + } +}); + +// ../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js +var require_src5 = __commonJS({ + "../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js"(exports2, module2) { + "use strict"; + var bind = require_function_bind(); + module2.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); + } +}); + +// ../node_modules/.pnpm/is-core-module@2.12.0/node_modules/is-core-module/core.json +var require_core4 = __commonJS({ + "../node_modules/.pnpm/is-core-module@2.12.0/node_modules/is-core-module/core.json"(exports2, module2) { + module2.exports = { + assert: true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + async_hooks: ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + buffer_ieee754: ">= 0.5 && < 0.9.7", + buffer: true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + child_process: true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + cluster: ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + console: true, + "node:console": [">= 14.18 && < 15", ">= 16"], + constants: true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + crypto: true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + _debug_agent: ">= 1 && < 8", + _debugger: "< 8", + dgram: true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + dns: true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + domain: ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + events: true, + "node:events": [">= 14.18 && < 15", ">= 16"], + freelist: "< 6", + fs: true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + _http_agent: ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + _http_client: ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + _http_common: ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + _http_incoming: ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + _http_outgoing: ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + _http_server: ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + http: true, + "node:http": [">= 14.18 && < 15", ">= 16"], + http2: ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + https: true, + "node:https": [">= 14.18 && < 15", ">= 16"], + inspector: ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + "inspector/promises": [">= 19"], + "node:inspector/promises": [">= 19"], + _linklist: "< 8", + module: true, + "node:module": [">= 14.18 && < 15", ">= 16"], + net: true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + os: true, + "node:os": [">= 14.18 && < 15", ">= 16"], + path: true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + perf_hooks: ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + process: ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + punycode: ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + querystring: true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + readline: true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + repl: true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + smalloc: ">= 0.11.5 && < 3", + _stream_duplex: ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + _stream_transform: ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + _stream_wrap: ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + _stream_passthrough: ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + _stream_readable: ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + _stream_writable: ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + stream: true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + string_decoder: true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + sys: [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "test/reporters": [">= 19.9", ">= 20"], + "node:test/reporters": [">= 19.9", ">= 20"], + "node:test": [">= 16.17 && < 17", ">= 18"], + timers: true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + _tls_common: ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + _tls_legacy: ">= 0.11.3 && < 10", + _tls_wrap: ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + tls: true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + trace_events: ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + tty: true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + url: true, + "node:url": [">= 14.18 && < 15", ">= 16"], + util: true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + v8: ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + vm: true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + wasi: [">= 13.4 && < 13.5", ">= 20"], + "node:wasi": ">= 20", + worker_threads: ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + zlib: ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] + }; + } +}); + +// ../node_modules/.pnpm/is-core-module@2.12.0/node_modules/is-core-module/index.js +var require_is_core_module = __commonJS({ + "../node_modules/.pnpm/is-core-module@2.12.0/node_modules/is-core-module/index.js"(exports2, module2) { + "use strict"; + var has = require_src5(); + function specifierIncluded(current, specifier) { + var nodeParts = current.split("."); + var parts = specifier.split(" "); + var op = parts.length > 1 ? parts[0] : "="; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); + for (var i = 0; i < 3; ++i) { + var cur = parseInt(nodeParts[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; + } + if (op === "<") { + return cur < ver; + } + if (op === ">=") { + return cur >= ver; + } + return false; + } + return op === ">="; + } + function matchesRange(current, range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(current, specifiers[i])) { + return false; + } + } + return true; + } + function versionIncluded(nodeVersion, specifierValue) { + if (typeof specifierValue === "boolean") { + return specifierValue; + } + var current = typeof nodeVersion === "undefined" ? process.versions && process.versions.node : nodeVersion; + if (typeof current !== "string") { + throw new TypeError(typeof nodeVersion === "undefined" ? "Unable to determine current node version" : "If provided, a valid node version is required"); + } + if (specifierValue && typeof specifierValue === "object") { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(current, specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(current, specifierValue); + } + var data = require_core4(); + module2.exports = function isCore(x, nodeVersion) { + return has(data, x) && versionIncluded(nodeVersion, data[x]); + }; + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/extract_description.js +var require_extract_description = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/extract_description.js"(exports2, module2) { + module2.exports = extractDescription; + function extractDescription(d) { + if (!d) { + return; + } + if (d === "ERROR: No README data found!") { + return; + } + d = d.trim().split("\n"); + let s = 0; + while (d[s] && d[s].trim().match(/^(#|$)/)) { + s++; + } + const l = d.length; + let e = s + 1; + while (e < l && d[e].trim()) { + e++; + } + return d.slice(s, e).join(" ").trim(); + } + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/typos.json +var require_typos = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/typos.json"(exports2, module2) { + module2.exports = { + topLevel: { + dependancies: "dependencies", + dependecies: "dependencies", + depdenencies: "dependencies", + devEependencies: "devDependencies", + depends: "dependencies", + "dev-dependencies": "devDependencies", + devDependences: "devDependencies", + devDepenencies: "devDependencies", + devdependencies: "devDependencies", + repostitory: "repository", + repo: "repository", + prefereGlobal: "preferGlobal", + hompage: "homepage", + hampage: "homepage", + autohr: "author", + autor: "author", + contributers: "contributors", + publicationConfig: "publishConfig", + script: "scripts" + }, + bugs: { web: "url", name: "url" }, + script: { server: "start", tests: "test" } + }; + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/fixer.js +var require_fixer = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/fixer.js"(exports2, module2) { + var isValidSemver = require_valid(); + var cleanSemver = require_clean(); + var validateLicense = require_validate_npm_package_license(); + var hostedGitInfo = require_lib40(); + var isBuiltinModule = require_is_core_module(); + var depTypes = ["dependencies", "devDependencies", "optionalDependencies"]; + var extractDescription = require_extract_description(); + var url = require("url"); + var typos = require_typos(); + var isEmail = (str) => str.includes("@") && str.indexOf("@") < str.lastIndexOf("."); + module2.exports = { + // default warning function + warn: function() { + }, + fixRepositoryField: function(data) { + if (data.repositories) { + this.warn("repositories"); + data.repository = data.repositories[0]; + } + if (!data.repository) { + return this.warn("missingRepository"); + } + if (typeof data.repository === "string") { + data.repository = { + type: "git", + url: data.repository + }; + } + var r = data.repository.url || ""; + if (r) { + var hosted = hostedGitInfo.fromUrl(r); + if (hosted) { + r = data.repository.url = hosted.getDefaultRepresentation() === "shortcut" ? hosted.https() : hosted.toString(); + } + } + if (r.match(/github.com\/[^/]+\/[^/]+\.git\.git$/)) { + this.warn("brokenGitUrl", r); + } + }, + fixTypos: function(data) { + Object.keys(typos.topLevel).forEach(function(d) { + if (Object.prototype.hasOwnProperty.call(data, d)) { + this.warn("typo", d, typos.topLevel[d]); + } + }, this); + }, + fixScriptsField: function(data) { + if (!data.scripts) { + return; + } + if (typeof data.scripts !== "object") { + this.warn("nonObjectScripts"); + delete data.scripts; + return; + } + Object.keys(data.scripts).forEach(function(k) { + if (typeof data.scripts[k] !== "string") { + this.warn("nonStringScript"); + delete data.scripts[k]; + } else if (typos.script[k] && !data.scripts[typos.script[k]]) { + this.warn("typo", k, typos.script[k], "scripts"); + } + }, this); + }, + fixFilesField: function(data) { + var files = data.files; + if (files && !Array.isArray(files)) { + this.warn("nonArrayFiles"); + delete data.files; + } else if (data.files) { + data.files = data.files.filter(function(file) { + if (!file || typeof file !== "string") { + this.warn("invalidFilename", file); + return false; + } else { + return true; + } + }, this); + } + }, + fixBinField: function(data) { + if (!data.bin) { + return; + } + if (typeof data.bin === "string") { + var b = {}; + var match; + if (match = data.name.match(/^@[^/]+[/](.*)$/)) { + b[match[1]] = data.bin; + } else { + b[data.name] = data.bin; + } + data.bin = b; + } + }, + fixManField: function(data) { + if (!data.man) { + return; + } + if (typeof data.man === "string") { + data.man = [data.man]; + } + }, + fixBundleDependenciesField: function(data) { + var bdd = "bundledDependencies"; + var bd = "bundleDependencies"; + if (data[bdd] && !data[bd]) { + data[bd] = data[bdd]; + delete data[bdd]; + } + if (data[bd] && !Array.isArray(data[bd])) { + this.warn("nonArrayBundleDependencies"); + delete data[bd]; + } else if (data[bd]) { + data[bd] = data[bd].filter(function(filtered) { + if (!filtered || typeof filtered !== "string") { + this.warn("nonStringBundleDependency", filtered); + return false; + } else { + if (!data.dependencies) { + data.dependencies = {}; + } + if (!Object.prototype.hasOwnProperty.call(data.dependencies, filtered)) { + this.warn("nonDependencyBundleDependency", filtered); + data.dependencies[filtered] = "*"; + } + return true; + } + }, this); + } + }, + fixDependencies: function(data, strict) { + objectifyDeps(data, this.warn); + addOptionalDepsToDeps(data, this.warn); + this.fixBundleDependenciesField(data); + ["dependencies", "devDependencies"].forEach(function(deps) { + if (!(deps in data)) { + return; + } + if (!data[deps] || typeof data[deps] !== "object") { + this.warn("nonObjectDependencies", deps); + delete data[deps]; + return; + } + Object.keys(data[deps]).forEach(function(d) { + var r = data[deps][d]; + if (typeof r !== "string") { + this.warn("nonStringDependency", d, JSON.stringify(r)); + delete data[deps][d]; + } + var hosted = hostedGitInfo.fromUrl(data[deps][d]); + if (hosted) { + data[deps][d] = hosted.toString(); + } + }, this); + }, this); + }, + fixModulesField: function(data) { + if (data.modules) { + this.warn("deprecatedModules"); + delete data.modules; + } + }, + fixKeywordsField: function(data) { + if (typeof data.keywords === "string") { + data.keywords = data.keywords.split(/,\s+/); + } + if (data.keywords && !Array.isArray(data.keywords)) { + delete data.keywords; + this.warn("nonArrayKeywords"); + } else if (data.keywords) { + data.keywords = data.keywords.filter(function(kw) { + if (typeof kw !== "string" || !kw) { + this.warn("nonStringKeyword"); + return false; + } else { + return true; + } + }, this); + } + }, + fixVersionField: function(data, strict) { + var loose = !strict; + if (!data.version) { + data.version = ""; + return true; + } + if (!isValidSemver(data.version, loose)) { + throw new Error('Invalid version: "' + data.version + '"'); + } + data.version = cleanSemver(data.version, loose); + return true; + }, + fixPeople: function(data) { + modifyPeople(data, unParsePerson); + modifyPeople(data, parsePerson); + }, + fixNameField: function(data, options) { + if (typeof options === "boolean") { + options = { strict: options }; + } else if (typeof options === "undefined") { + options = {}; + } + var strict = options.strict; + if (!data.name && !strict) { + data.name = ""; + return; + } + if (typeof data.name !== "string") { + throw new Error("name field must be a string."); + } + if (!strict) { + data.name = data.name.trim(); + } + ensureValidName(data.name, strict, options.allowLegacyCase); + if (isBuiltinModule(data.name)) { + this.warn("conflictingName", data.name); + } + }, + fixDescriptionField: function(data) { + if (data.description && typeof data.description !== "string") { + this.warn("nonStringDescription"); + delete data.description; + } + if (data.readme && !data.description) { + data.description = extractDescription(data.readme); + } + if (data.description === void 0) { + delete data.description; + } + if (!data.description) { + this.warn("missingDescription"); + } + }, + fixReadmeField: function(data) { + if (!data.readme) { + this.warn("missingReadme"); + data.readme = "ERROR: No README data found!"; + } + }, + fixBugsField: function(data) { + if (!data.bugs && data.repository && data.repository.url) { + var hosted = hostedGitInfo.fromUrl(data.repository.url); + if (hosted && hosted.bugs()) { + data.bugs = { url: hosted.bugs() }; + } + } else if (data.bugs) { + if (typeof data.bugs === "string") { + if (isEmail(data.bugs)) { + data.bugs = { email: data.bugs }; + } else if (url.parse(data.bugs).protocol) { + data.bugs = { url: data.bugs }; + } else { + this.warn("nonEmailUrlBugsString"); + } + } else { + bugsTypos(data.bugs, this.warn); + var oldBugs = data.bugs; + data.bugs = {}; + if (oldBugs.url) { + if (typeof oldBugs.url === "string" && url.parse(oldBugs.url).protocol) { + data.bugs.url = oldBugs.url; + } else { + this.warn("nonUrlBugsUrlField"); + } + } + if (oldBugs.email) { + if (typeof oldBugs.email === "string" && isEmail(oldBugs.email)) { + data.bugs.email = oldBugs.email; + } else { + this.warn("nonEmailBugsEmailField"); + } + } + } + if (!data.bugs.email && !data.bugs.url) { + delete data.bugs; + this.warn("emptyNormalizedBugs"); + } + } + }, + fixHomepageField: function(data) { + if (!data.homepage && data.repository && data.repository.url) { + var hosted = hostedGitInfo.fromUrl(data.repository.url); + if (hosted && hosted.docs()) { + data.homepage = hosted.docs(); + } + } + if (!data.homepage) { + return; + } + if (typeof data.homepage !== "string") { + this.warn("nonUrlHomepage"); + return delete data.homepage; + } + if (!url.parse(data.homepage).protocol) { + data.homepage = "http://" + data.homepage; + } + }, + fixLicenseField: function(data) { + const license = data.license || data.licence; + if (!license) { + return this.warn("missingLicense"); + } + if (typeof license !== "string" || license.length < 1 || license.trim() === "") { + return this.warn("invalidLicense"); + } + if (!validateLicense(license).validForNewPackages) { + return this.warn("invalidLicense"); + } + } + }; + function isValidScopedPackageName(spec) { + if (spec.charAt(0) !== "@") { + return false; + } + var rest = spec.slice(1).split("/"); + if (rest.length !== 2) { + return false; + } + return rest[0] && rest[1] && rest[0] === encodeURIComponent(rest[0]) && rest[1] === encodeURIComponent(rest[1]); + } + function isCorrectlyEncodedName(spec) { + return !spec.match(/[/@\s+%:]/) && spec === encodeURIComponent(spec); + } + function ensureValidName(name, strict, allowLegacyCase) { + if (name.charAt(0) === "." || !(isValidScopedPackageName(name) || isCorrectlyEncodedName(name)) || strict && !allowLegacyCase && name !== name.toLowerCase() || name.toLowerCase() === "node_modules" || name.toLowerCase() === "favicon.ico") { + throw new Error("Invalid name: " + JSON.stringify(name)); + } + } + function modifyPeople(data, fn2) { + if (data.author) { + data.author = fn2(data.author); + } + ["maintainers", "contributors"].forEach(function(set) { + if (!Array.isArray(data[set])) { + return; + } + data[set] = data[set].map(fn2); + }); + return data; + } + function unParsePerson(person) { + if (typeof person === "string") { + return person; + } + var name = person.name || ""; + var u = person.url || person.web; + var wrappedUrl = u ? " (" + u + ")" : ""; + var e = person.email || person.mail; + var wrappedEmail = e ? " <" + e + ">" : ""; + return name + wrappedEmail + wrappedUrl; + } + function parsePerson(person) { + if (typeof person !== "string") { + return person; + } + var matchedName = person.match(/^([^(<]+)/); + var matchedUrl = person.match(/\(([^()]+)\)/); + var matchedEmail = person.match(/<([^<>]+)>/); + var obj = {}; + if (matchedName && matchedName[0].trim()) { + obj.name = matchedName[0].trim(); + } + if (matchedEmail) { + obj.email = matchedEmail[1]; + } + if (matchedUrl) { + obj.url = matchedUrl[1]; + } + return obj; + } + function addOptionalDepsToDeps(data, warn) { + var o = data.optionalDependencies; + if (!o) { + return; + } + var d = data.dependencies || {}; + Object.keys(o).forEach(function(k) { + d[k] = o[k]; + }); + data.dependencies = d; + } + function depObjectify(deps, type, warn) { + if (!deps) { + return {}; + } + if (typeof deps === "string") { + deps = deps.trim().split(/[\n\r\s\t ,]+/); + } + if (!Array.isArray(deps)) { + return deps; + } + warn("deprecatedArrayDependencies", type); + var o = {}; + deps.filter(function(d) { + return typeof d === "string"; + }).forEach(function(d) { + d = d.trim().split(/(:?[@\s><=])/); + var dn = d.shift(); + var dv = d.join(""); + dv = dv.trim(); + dv = dv.replace(/^@/, ""); + o[dn] = dv; + }); + return o; + } + function objectifyDeps(data, warn) { + depTypes.forEach(function(type) { + if (!data[type]) { + return; + } + data[type] = depObjectify(data[type], type, warn); + }); + } + function bugsTypos(bugs, warn) { + if (!bugs) { + return; + } + Object.keys(bugs).forEach(function(k) { + if (typos.bugs[k]) { + warn("typo", k, typos.bugs[k], "bugs"); + bugs[typos.bugs[k]] = bugs[k]; + delete bugs[k]; + } + }); + } + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/warning_messages.json +var require_warning_messages = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/warning_messages.json"(exports2, module2) { + module2.exports = { + repositories: "'repositories' (plural) Not supported. Please pick one as the 'repository' field", + missingRepository: "No repository field.", + brokenGitUrl: "Probably broken git url: %s", + nonObjectScripts: "scripts must be an object", + nonStringScript: "script values must be string commands", + nonArrayFiles: "Invalid 'files' member", + invalidFilename: "Invalid filename in 'files' list: %s", + nonArrayBundleDependencies: "Invalid 'bundleDependencies' list. Must be array of package names", + nonStringBundleDependency: "Invalid bundleDependencies member: %s", + nonDependencyBundleDependency: "Non-dependency in bundleDependencies: %s", + nonObjectDependencies: "%s field must be an object", + nonStringDependency: "Invalid dependency: %s %s", + deprecatedArrayDependencies: "specifying %s as array is deprecated", + deprecatedModules: "modules field is deprecated", + nonArrayKeywords: "keywords should be an array of strings", + nonStringKeyword: "keywords should be an array of strings", + conflictingName: "%s is also the name of a node core module.", + nonStringDescription: "'description' field should be a string", + missingDescription: "No description", + missingReadme: "No README data", + missingLicense: "No license field.", + nonEmailUrlBugsString: "Bug string field must be url, email, or {email,url}", + nonUrlBugsUrlField: "bugs.url field must be a string url. Deleted.", + nonEmailBugsEmailField: "bugs.email field must be a string email. Deleted.", + emptyNormalizedBugs: "Normalized value of bugs field is an empty object. Deleted.", + nonUrlHomepage: "homepage field must be a string url. Deleted.", + invalidLicense: "license should be a valid SPDX license expression", + typo: "%s should probably be %s." + }; + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/make_warning.js +var require_make_warning = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/make_warning.js"(exports2, module2) { + var util = require("util"); + var messages = require_warning_messages(); + module2.exports = function() { + var args2 = Array.prototype.slice.call(arguments, 0); + var warningName = args2.shift(); + if (warningName === "typo") { + return makeTypoWarning.apply(null, args2); + } else { + var msgTemplate = messages[warningName] ? messages[warningName] : warningName + ": '%s'"; + args2.unshift(msgTemplate); + return util.format.apply(null, args2); + } + }; + function makeTypoWarning(providedName, probableName, field) { + if (field) { + providedName = field + "['" + providedName + "']"; + probableName = field + "['" + probableName + "']"; + } + return util.format(messages.typo, providedName, probableName); + } + } +}); + +// ../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/normalize.js +var require_normalize = __commonJS({ + "../node_modules/.pnpm/normalize-package-data@5.0.0/node_modules/normalize-package-data/lib/normalize.js"(exports2, module2) { + module2.exports = normalize; + var fixer = require_fixer(); + normalize.fixer = fixer; + var makeWarning = require_make_warning(); + var fieldsToFix = [ + "name", + "version", + "description", + "repository", + "modules", + "scripts", + "files", + "bin", + "man", + "bugs", + "keywords", + "readme", + "homepage", + "license" + ]; + var otherThingsToFix = ["dependencies", "people", "typos"]; + var thingsToFix = fieldsToFix.map(function(fieldName) { + return ucFirst(fieldName) + "Field"; + }); + thingsToFix = thingsToFix.concat(otherThingsToFix); + function normalize(data, warn, strict) { + if (warn === true) { + warn = null; + strict = true; + } + if (!strict) { + strict = false; + } + if (!warn || data.private) { + warn = function(msg) { + }; + } + if (data.scripts && data.scripts.install === "node-gyp rebuild" && !data.scripts.preinstall) { + data.gypfile = true; + } + fixer.warn = function() { + warn(makeWarning.apply(null, arguments)); + }; + thingsToFix.forEach(function(thingName) { + fixer["fix" + ucFirst(thingName)](data, strict); + }); + data._id = data.name + "@" + data.version; + } + function ucFirst(string) { + return string.charAt(0).toUpperCase() + string.slice(1); + } + } +}); + +// ../pkg-manifest/read-package-json/lib/index.js +var require_lib41 = __commonJS({ + "../pkg-manifest/read-package-json/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.safeReadPackageJsonFromDir = exports2.safeReadPackageJson = exports2.readPackageJsonFromDir = exports2.readPackageJson = void 0; + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var normalize_package_data_1 = __importDefault4(require_normalize()); + async function readPackageJson(pkgPath) { + try { + const manifest = await (0, load_json_file_1.default)(pkgPath); + (0, normalize_package_data_1.default)(manifest); + return manifest; + } catch (err) { + if (err.code) + throw err; + throw new error_1.PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err.message}`); + } + } + exports2.readPackageJson = readPackageJson; + async function readPackageJsonFromDir(pkgPath) { + return readPackageJson(path_1.default.join(pkgPath, "package.json")); + } + exports2.readPackageJsonFromDir = readPackageJsonFromDir; + async function safeReadPackageJson(pkgPath) { + try { + return await readPackageJson(pkgPath); + } catch (err) { + if (err.code !== "ENOENT") + throw err; + return null; + } + } + exports2.safeReadPackageJson = safeReadPackageJson; + async function safeReadPackageJsonFromDir(pkgPath) { + return safeReadPackageJson(path_1.default.join(pkgPath, "package.json")); + } + exports2.safeReadPackageJsonFromDir = safeReadPackageJsonFromDir; + } +}); + +// ../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js +var require_old = __commonJS({ + "../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js"(exports2) { + var pathModule = require("path"); + var isWindows = process.platform === "win32"; + var fs2 = require("fs"); + var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); + function rethrow() { + var callback; + if (DEBUG) { + var backtrace = new Error(); + callback = debugCallback; + } else + callback = missingCallback; + return callback; + function debugCallback(err) { + if (err) { + backtrace.message = err.message; + err = backtrace; + missingCallback(err); + } + } + function missingCallback(err) { + if (err) { + if (process.throwDeprecation) + throw err; + else if (!process.noDeprecation) { + var msg = "fs: missing callback " + (err.stack || err.message); + if (process.traceDeprecation) + console.trace(msg); + else + console.error(msg); + } + } + } + } + function maybeCallback(cb) { + return typeof cb === "function" ? cb : rethrow(); + } + var normalize = pathModule.normalize; + if (isWindows) { + nextPartRe = /(.*?)(?:[\/\\]+|$)/g; + } else { + nextPartRe = /(.*?)(?:[\/]+|$)/g; + } + var nextPartRe; + if (isWindows) { + splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; + } else { + splitRootRe = /^[\/]*/; + } + var splitRootRe; + exports2.realpathSync = function realpathSync(p, cache) { + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return cache[p]; + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start(); + function start() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs2.lstatSync(base); + knownHard[base] = true; + } + } + while (pos < p.length) { + nextPartRe.lastIndex = pos; + var result2 = nextPartRe.exec(p); + previous = current; + current += result2[0]; + base = previous + result2[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + continue; + } + var resolvedLink; + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + resolvedLink = cache[base]; + } else { + var stat = fs2.lstatSync(base); + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + continue; + } + var linkTarget = null; + if (!isWindows) { + var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + linkTarget = seenLinks[id]; + } + } + if (linkTarget === null) { + fs2.statSync(base); + linkTarget = fs2.readlinkSync(base); + } + resolvedLink = pathModule.resolve(previous, linkTarget); + if (cache) + cache[base] = resolvedLink; + if (!isWindows) + seenLinks[id] = linkTarget; + } + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } + if (cache) + cache[original] = p; + return p; + }; + exports2.realpath = function realpath(p, cache, cb) { + if (typeof cb !== "function") { + cb = maybeCallback(cache); + cache = null; + } + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return process.nextTick(cb.bind(null, null, cache[p])); + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start(); + function start() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs2.lstat(base, function(err) { + if (err) + return cb(err); + knownHard[base] = true; + LOOP(); + }); + } else { + process.nextTick(LOOP); + } + } + function LOOP() { + if (pos >= p.length) { + if (cache) + cache[original] = p; + return cb(null, p); + } + nextPartRe.lastIndex = pos; + var result2 = nextPartRe.exec(p); + previous = current; + current += result2[0]; + base = previous + result2[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + return process.nextTick(LOOP); + } + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + return gotResolvedLink(cache[base]); + } + return fs2.lstat(base, gotStat); + } + function gotStat(err, stat) { + if (err) + return cb(err); + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + return process.nextTick(LOOP); + } + if (!isWindows) { + var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + return gotTarget(null, seenLinks[id], base); + } + } + fs2.stat(base, function(err2) { + if (err2) + return cb(err2); + fs2.readlink(base, function(err3, target) { + if (!isWindows) + seenLinks[id] = target; + gotTarget(err3, target); + }); + }); + } + function gotTarget(err, target, base2) { + if (err) + return cb(err); + var resolvedLink = pathModule.resolve(previous, target); + if (cache) + cache[base2] = resolvedLink; + gotResolvedLink(resolvedLink); + } + function gotResolvedLink(resolvedLink) { + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } + }; + } +}); + +// ../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js +var require_fs5 = __commonJS({ + "../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js"(exports2, module2) { + module2.exports = realpath; + realpath.realpath = realpath; + realpath.sync = realpathSync; + realpath.realpathSync = realpathSync; + realpath.monkeypatch = monkeypatch; + realpath.unmonkeypatch = unmonkeypatch; + var fs2 = require("fs"); + var origRealpath = fs2.realpath; + var origRealpathSync = fs2.realpathSync; + var version2 = process.version; + var ok = /^v[0-5]\./.test(version2); + var old = require_old(); + function newError(er) { + return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); + } + function realpath(p, cache, cb) { + if (ok) { + return origRealpath(p, cache, cb); + } + if (typeof cache === "function") { + cb = cache; + cache = null; + } + origRealpath(p, cache, function(er, result2) { + if (newError(er)) { + old.realpath(p, cache, cb); + } else { + cb(er, result2); + } + }); + } + function realpathSync(p, cache) { + if (ok) { + return origRealpathSync(p, cache); + } + try { + return origRealpathSync(p, cache); + } catch (er) { + if (newError(er)) { + return old.realpathSync(p, cache); + } else { + throw er; + } + } + } + function monkeypatch() { + fs2.realpath = realpath; + fs2.realpathSync = realpathSync; + } + function unmonkeypatch() { + fs2.realpath = origRealpath; + fs2.realpathSync = origRealpathSync; + } + } +}); + +// ../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js +var require_concat_map = __commonJS({ + "../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js"(exports2, module2) { + module2.exports = function(xs, fn2) { + var res = []; + for (var i = 0; i < xs.length; i++) { + var x = fn2(xs[i], i); + if (isArray(x)) + res.push.apply(res, x); + else + res.push(x); + } + return res; + }; + var isArray = Array.isArray || function(xs) { + return Object.prototype.toString.call(xs) === "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js +var require_balanced_match = __commonJS({ + "../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js"(exports2, module2) { + "use strict"; + module2.exports = balanced; + function balanced(a, b, str) { + if (a instanceof RegExp) + a = maybeMatch(a, str); + if (b instanceof RegExp) + b = maybeMatch(b, str); + var r = range(a, b, str); + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; + } + function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; + } + balanced.range = range; + function range(a, b, str) { + var begs, beg, left, right, result2; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + if (ai >= 0 && bi > 0) { + if (a === b) { + return [ai, bi]; + } + begs = []; + left = str.length; + while (i >= 0 && !result2) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result2 = [begs.pop(), bi]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + bi = str.indexOf(b, i + 1); + } + i = ai < bi && ai >= 0 ? ai : bi; + } + if (begs.length) { + result2 = [left, right]; + } + } + return result2; + } + } +}); + +// ../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js +var require_brace_expansion = __commonJS({ + "../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js"(exports2, module2) { + var concatMap = require_concat_map(); + var balanced = require_balanced_match(); + module2.exports = expandTop; + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + function numeric(str) { + return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + } + function unescapeBraces(str) { + return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + } + function parseCommaParts(str) { + if (!str) + return [""]; + var parts = []; + var m = balanced("{", "}", str); + if (!m) + return str.split(","); + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(","); + p[p.length - 1] += "{" + body + "}"; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length - 1] += postParts.shift(); + p.push.apply(p, postParts); + } + parts.push.apply(parts, p); + return parts; + } + function expandTop(str) { + if (!str) + return []; + if (str.substr(0, 2) === "{}") { + str = "\\{\\}" + str.substr(2); + } + return expand(escapeBraces(str), true).map(unescapeBraces); + } + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function expand(str, isTop) { + var expansions = []; + var m = balanced("{", "}", str); + if (!m || /\$$/.test(m.pre)) + return [str]; + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (m.post.match(/,.*\}/)) { + str = m.pre + "{" + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + var post = m.post.length ? expand(m.post, false) : [""]; + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + var pre = m.pre; + var post = m.post.length ? expand(m.post, false) : [""]; + var N; + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length); + var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + N = []; + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") + c = ""; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join("0"); + if (i < 0) + c = "-" + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = concatMap(n, function(el) { + return expand(el, false); + }); + } + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + return expansions; + } + } +}); + +// ../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js +var require_minimatch = __commonJS({ + "../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js"(exports2, module2) { + module2.exports = minimatch; + minimatch.Minimatch = Minimatch; + var path2 = function() { + try { + return require("path"); + } catch (e) { + } + }() || { + sep: "/" + }; + minimatch.sep = path2.sep; + var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; + var expand = require_brace_expansion(); + var plTypes = { + "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, + "?": { open: "(?:", close: ")?" }, + "+": { open: "(?:", close: ")+" }, + "*": { open: "(?:", close: ")*" }, + "@": { open: "(?:", close: ")" } + }; + var qmark = "[^/]"; + var star = qmark + "*?"; + var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; + var reSpecials = charSet("().*{}+?[]^$\\!"); + function charSet(s) { + return s.split("").reduce(function(set, c) { + set[c] = true; + return set; + }, {}); + } + var slashSplit = /\/+/; + minimatch.filter = filter; + function filter(pattern, options) { + options = options || {}; + return function(p, i, list) { + return minimatch(p, pattern, options); + }; + } + function ext(a, b) { + b = b || {}; + var t = {}; + Object.keys(a).forEach(function(k) { + t[k] = a[k]; + }); + Object.keys(b).forEach(function(k) { + t[k] = b[k]; + }); + return t; + } + minimatch.defaults = function(def) { + if (!def || typeof def !== "object" || !Object.keys(def).length) { + return minimatch; + } + var orig = minimatch; + var m = function minimatch2(p, pattern, options) { + return orig(p, pattern, ext(def, options)); + }; + m.Minimatch = function Minimatch2(pattern, options) { + return new orig.Minimatch(pattern, ext(def, options)); + }; + m.Minimatch.defaults = function defaults(options) { + return orig.defaults(ext(def, options)).Minimatch; + }; + m.filter = function filter2(pattern, options) { + return orig.filter(pattern, ext(def, options)); + }; + m.defaults = function defaults(options) { + return orig.defaults(ext(def, options)); + }; + m.makeRe = function makeRe2(pattern, options) { + return orig.makeRe(pattern, ext(def, options)); + }; + m.braceExpand = function braceExpand2(pattern, options) { + return orig.braceExpand(pattern, ext(def, options)); + }; + m.match = function(list, pattern, options) { + return orig.match(list, pattern, ext(def, options)); + }; + return m; + }; + Minimatch.defaults = function(def) { + return minimatch.defaults(def).Minimatch; + }; + function minimatch(p, pattern, options) { + assertValidPattern(pattern); + if (!options) + options = {}; + if (!options.nocomment && pattern.charAt(0) === "#") { + return false; + } + return new Minimatch(pattern, options).match(p); + } + function Minimatch(pattern, options) { + if (!(this instanceof Minimatch)) { + return new Minimatch(pattern, options); + } + assertValidPattern(pattern); + if (!options) + options = {}; + pattern = pattern.trim(); + if (!options.allowWindowsEscape && path2.sep !== "/") { + pattern = pattern.split(path2.sep).join("/"); + } + this.options = options; + this.set = []; + this.pattern = pattern; + this.regexp = null; + this.negate = false; + this.comment = false; + this.empty = false; + this.partial = !!options.partial; + this.make(); + } + Minimatch.prototype.debug = function() { + }; + Minimatch.prototype.make = make; + function make() { + var pattern = this.pattern; + var options = this.options; + if (!options.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + var set = this.globSet = this.braceExpand(); + if (options.debug) + this.debug = function debug() { + console.error.apply(console, arguments); + }; + this.debug(this.pattern, set); + set = this.globParts = set.map(function(s) { + return s.split(slashSplit); + }); + this.debug(this.pattern, set); + set = set.map(function(s, si, set2) { + return s.map(this.parse, this); + }, this); + this.debug(this.pattern, set); + set = set.filter(function(s) { + return s.indexOf(false) === -1; + }); + this.debug(this.pattern, set); + this.set = set; + } + Minimatch.prototype.parseNegate = parseNegate; + function parseNegate() { + var pattern = this.pattern; + var negate = false; + var options = this.options; + var negateOffset = 0; + if (options.nonegate) + return; + for (var i = 0, l = pattern.length; i < l && pattern.charAt(i) === "!"; i++) { + negate = !negate; + negateOffset++; + } + if (negateOffset) + this.pattern = pattern.substr(negateOffset); + this.negate = negate; + } + minimatch.braceExpand = function(pattern, options) { + return braceExpand(pattern, options); + }; + Minimatch.prototype.braceExpand = braceExpand; + function braceExpand(pattern, options) { + if (!options) { + if (this instanceof Minimatch) { + options = this.options; + } else { + options = {}; + } + } + pattern = typeof pattern === "undefined" ? this.pattern : pattern; + assertValidPattern(pattern); + if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + return [pattern]; + } + return expand(pattern); + } + var MAX_PATTERN_LENGTH = 1024 * 64; + var assertValidPattern = function(pattern) { + if (typeof pattern !== "string") { + throw new TypeError("invalid pattern"); + } + if (pattern.length > MAX_PATTERN_LENGTH) { + throw new TypeError("pattern is too long"); + } + }; + Minimatch.prototype.parse = parse2; + var SUBPARSE = {}; + function parse2(pattern, isSub) { + assertValidPattern(pattern); + var options = this.options; + if (pattern === "**") { + if (!options.noglobstar) + return GLOBSTAR; + else + pattern = "*"; + } + if (pattern === "") + return ""; + var re = ""; + var hasMagic = !!options.nocase; + var escaping = false; + var patternListStack = []; + var negativeLists = []; + var stateChar; + var inClass = false; + var reClassStart = -1; + var classStart = -1; + var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + var self2 = this; + function clearStateChar() { + if (stateChar) { + switch (stateChar) { + case "*": + re += star; + hasMagic = true; + break; + case "?": + re += qmark; + hasMagic = true; + break; + default: + re += "\\" + stateChar; + break; + } + self2.debug("clearStateChar %j %j", stateChar, re); + stateChar = false; + } + } + for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { + this.debug("%s %s %s %j", pattern, i, re, c); + if (escaping && reSpecials[c]) { + re += "\\" + c; + escaping = false; + continue; + } + switch (c) { + case "/": { + return false; + } + case "\\": + clearStateChar(); + escaping = true; + continue; + case "?": + case "*": + case "+": + case "@": + case "!": + this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); + if (inClass) { + this.debug(" in class"); + if (c === "!" && i === classStart + 1) + c = "^"; + re += c; + continue; + } + self2.debug("call clearStateChar %j", stateChar); + clearStateChar(); + stateChar = c; + if (options.noext) + clearStateChar(); + continue; + case "(": + if (inClass) { + re += "("; + continue; + } + if (!stateChar) { + re += "\\("; + continue; + } + patternListStack.push({ + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }); + re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; + this.debug("plType %j %j", stateChar, re); + stateChar = false; + continue; + case ")": + if (inClass || !patternListStack.length) { + re += "\\)"; + continue; + } + clearStateChar(); + hasMagic = true; + var pl = patternListStack.pop(); + re += pl.close; + if (pl.type === "!") { + negativeLists.push(pl); + } + pl.reEnd = re.length; + continue; + case "|": + if (inClass || !patternListStack.length || escaping) { + re += "\\|"; + escaping = false; + continue; + } + clearStateChar(); + re += "|"; + continue; + case "[": + clearStateChar(); + if (inClass) { + re += "\\" + c; + continue; + } + inClass = true; + classStart = i; + reClassStart = re.length; + re += c; + continue; + case "]": + if (i === classStart + 1 || !inClass) { + re += "\\" + c; + escaping = false; + continue; + } + var cs = pattern.substring(classStart + 1, i); + try { + RegExp("[" + cs + "]"); + } catch (er) { + var sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; + hasMagic = hasMagic || sp[1]; + inClass = false; + continue; + } + hasMagic = true; + inClass = false; + re += c; + continue; + default: + clearStateChar(); + if (escaping) { + escaping = false; + } else if (reSpecials[c] && !(c === "^" && inClass)) { + re += "\\"; + } + re += c; + } + } + if (inClass) { + cs = pattern.substr(classStart + 1); + sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0]; + hasMagic = hasMagic || sp[1]; + } + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + pl.open.length); + this.debug("setting tail", re, pl); + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) { + if (!$2) { + $2 = "\\"; + } + return $1 + $1 + $2 + "|"; + }); + this.debug("tail=%j\n %s", tail, tail, pl, re); + var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; + hasMagic = true; + re = re.slice(0, pl.reStart) + t + "\\(" + tail; + } + clearStateChar(); + if (escaping) { + re += "\\\\"; + } + var addPatternStart = false; + switch (re.charAt(0)) { + case "[": + case ".": + case "(": + addPatternStart = true; + } + for (var n = negativeLists.length - 1; n > -1; n--) { + var nl = negativeLists[n]; + var nlBefore = re.slice(0, nl.reStart); + var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); + var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); + var nlAfter = re.slice(nl.reEnd); + nlLast += nlAfter; + var openParensBefore = nlBefore.split("(").length - 1; + var cleanAfter = nlAfter; + for (i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + } + nlAfter = cleanAfter; + var dollar = ""; + if (nlAfter === "" && isSub !== SUBPARSE) { + dollar = "$"; + } + var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; + re = newRe; + } + if (re !== "" && hasMagic) { + re = "(?=.)" + re; + } + if (addPatternStart) { + re = patternStart + re; + } + if (isSub === SUBPARSE) { + return [re, hasMagic]; + } + if (!hasMagic) { + return globUnescape(pattern); + } + var flags = options.nocase ? "i" : ""; + try { + var regExp = new RegExp("^" + re + "$", flags); + } catch (er) { + return new RegExp("$."); + } + regExp._glob = pattern; + regExp._src = re; + return regExp; + } + minimatch.makeRe = function(pattern, options) { + return new Minimatch(pattern, options || {}).makeRe(); + }; + Minimatch.prototype.makeRe = makeRe; + function makeRe() { + if (this.regexp || this.regexp === false) + return this.regexp; + var set = this.set; + if (!set.length) { + this.regexp = false; + return this.regexp; + } + var options = this.options; + var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; + var flags = options.nocase ? "i" : ""; + var re = set.map(function(pattern) { + return pattern.map(function(p) { + return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; + }).join("\\/"); + }).join("|"); + re = "^(?:" + re + ")$"; + if (this.negate) + re = "^(?!" + re + ").*$"; + try { + this.regexp = new RegExp(re, flags); + } catch (ex) { + this.regexp = false; + } + return this.regexp; + } + minimatch.match = function(list, pattern, options) { + options = options || {}; + var mm = new Minimatch(pattern, options); + list = list.filter(function(f) { + return mm.match(f); + }); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + Minimatch.prototype.match = function match(f, partial) { + if (typeof partial === "undefined") + partial = this.partial; + this.debug("match", f, this.pattern); + if (this.comment) + return false; + if (this.empty) + return f === ""; + if (f === "/" && partial) + return true; + var options = this.options; + if (path2.sep !== "/") { + f = f.split(path2.sep).join("/"); + } + f = f.split(slashSplit); + this.debug(this.pattern, "split", f); + var set = this.set; + this.debug(this.pattern, "set", set); + var filename; + var i; + for (i = f.length - 1; i >= 0; i--) { + filename = f[i]; + if (filename) + break; + } + for (i = 0; i < set.length; i++) { + var pattern = set[i]; + var file = f; + if (options.matchBase && pattern.length === 1) { + file = [filename]; + } + var hit = this.matchOne(file, pattern, partial); + if (hit) { + if (options.flipNegate) + return true; + return !this.negate; + } + } + if (options.flipNegate) + return false; + return this.negate; + }; + Minimatch.prototype.matchOne = function(file, pattern, partial) { + var options = this.options; + this.debug( + "matchOne", + { "this": this, file, pattern } + ); + this.debug("matchOne", file.length, pattern.length); + for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { + this.debug("matchOne loop"); + var p = pattern[pi]; + var f = file[fi]; + this.debug(pattern, p, f); + if (p === false) + return false; + if (p === GLOBSTAR) { + this.debug("GLOBSTAR", [pattern, p, f]); + var fr = fi; + var pr = pi + 1; + if (pr === pl) { + this.debug("** at the end"); + for (; fi < fl; fi++) { + if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") + return false; + } + return true; + } + while (fr < fl) { + var swallowee = file[fr]; + this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug("globstar found match!", fr, fl, swallowee); + return true; + } else { + if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { + this.debug("dot detected!", file, fr, pattern, pr); + break; + } + this.debug("globstar swallow a segment, and continue"); + fr++; + } + } + if (partial) { + this.debug("\n>>> no match, partial?", file, fr, pattern, pr); + if (fr === fl) + return true; + } + return false; + } + var hit; + if (typeof p === "string") { + hit = f === p; + this.debug("string match", p, f, hit); + } else { + hit = f.match(p); + this.debug("pattern match", p, f, hit); + } + if (!hit) + return false; + } + if (fi === fl && pi === pl) { + return true; + } else if (fi === fl) { + return partial; + } else if (pi === pl) { + return fi === fl - 1 && file[fi] === ""; + } + throw new Error("wtf?"); + }; + function globUnescape(s) { + return s.replace(/\\(.)/g, "$1"); + } + function regExpEscape(s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + } + } +}); + +// ../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js +var require_path_is_absolute = __commonJS({ + "../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js"(exports2, module2) { + "use strict"; + function posix(path2) { + return path2.charAt(0) === "/"; + } + function win32(path2) { + var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + var result2 = splitDeviceRe.exec(path2); + var device = result2[1] || ""; + var isUnc = Boolean(device && device.charAt(1) !== ":"); + return Boolean(result2[2] || isUnc); + } + module2.exports = process.platform === "win32" ? win32 : posix; + module2.exports.posix = posix; + module2.exports.win32 = win32; + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js +var require_common5 = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js"(exports2) { + exports2.setopts = setopts; + exports2.ownProp = ownProp; + exports2.makeAbs = makeAbs; + exports2.finish = finish; + exports2.mark = mark; + exports2.isIgnored = isIgnored; + exports2.childrenIgnored = childrenIgnored; + function ownProp(obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field); + } + var fs2 = require("fs"); + var path2 = require("path"); + var minimatch = require_minimatch(); + var isAbsolute = require_path_is_absolute(); + var Minimatch = minimatch.Minimatch; + function alphasort(a, b) { + return a.localeCompare(b, "en"); + } + function setupIgnores(self2, options) { + self2.ignore = options.ignore || []; + if (!Array.isArray(self2.ignore)) + self2.ignore = [self2.ignore]; + if (self2.ignore.length) { + self2.ignore = self2.ignore.map(ignoreMap); + } + } + function ignoreMap(pattern) { + var gmatcher = null; + if (pattern.slice(-3) === "/**") { + var gpattern = pattern.replace(/(\/\*\*)+$/, ""); + gmatcher = new Minimatch(gpattern, { dot: true }); + } + return { + matcher: new Minimatch(pattern, { dot: true }), + gmatcher + }; + } + function setopts(self2, pattern, options) { + if (!options) + options = {}; + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar"); + } + pattern = "**/" + pattern; + } + self2.silent = !!options.silent; + self2.pattern = pattern; + self2.strict = options.strict !== false; + self2.realpath = !!options.realpath; + self2.realpathCache = options.realpathCache || /* @__PURE__ */ Object.create(null); + self2.follow = !!options.follow; + self2.dot = !!options.dot; + self2.mark = !!options.mark; + self2.nodir = !!options.nodir; + if (self2.nodir) + self2.mark = true; + self2.sync = !!options.sync; + self2.nounique = !!options.nounique; + self2.nonull = !!options.nonull; + self2.nosort = !!options.nosort; + self2.nocase = !!options.nocase; + self2.stat = !!options.stat; + self2.noprocess = !!options.noprocess; + self2.absolute = !!options.absolute; + self2.fs = options.fs || fs2; + self2.maxLength = options.maxLength || Infinity; + self2.cache = options.cache || /* @__PURE__ */ Object.create(null); + self2.statCache = options.statCache || /* @__PURE__ */ Object.create(null); + self2.symlinks = options.symlinks || /* @__PURE__ */ Object.create(null); + setupIgnores(self2, options); + self2.changedCwd = false; + var cwd = process.cwd(); + if (!ownProp(options, "cwd")) + self2.cwd = cwd; + else { + self2.cwd = path2.resolve(options.cwd); + self2.changedCwd = self2.cwd !== cwd; + } + self2.root = options.root || path2.resolve(self2.cwd, "/"); + self2.root = path2.resolve(self2.root); + if (process.platform === "win32") + self2.root = self2.root.replace(/\\/g, "/"); + self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); + if (process.platform === "win32") + self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); + self2.nomount = !!options.nomount; + options.nonegate = true; + options.nocomment = true; + options.allowWindowsEscape = false; + self2.minimatch = new Minimatch(pattern, options); + self2.options = self2.minimatch.options; + } + function finish(self2) { + var nou = self2.nounique; + var all = nou ? [] : /* @__PURE__ */ Object.create(null); + for (var i = 0, l = self2.matches.length; i < l; i++) { + var matches = self2.matches[i]; + if (!matches || Object.keys(matches).length === 0) { + if (self2.nonull) { + var literal = self2.minimatch.globSet[i]; + if (nou) + all.push(literal); + else + all[literal] = true; + } + } else { + var m = Object.keys(matches); + if (nou) + all.push.apply(all, m); + else + m.forEach(function(m2) { + all[m2] = true; + }); + } + } + if (!nou) + all = Object.keys(all); + if (!self2.nosort) + all = all.sort(alphasort); + if (self2.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self2._mark(all[i]); + } + if (self2.nodir) { + all = all.filter(function(e) { + var notDir = !/\/$/.test(e); + var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; + if (notDir && c) + notDir = c !== "DIR" && !Array.isArray(c); + return notDir; + }); + } + } + if (self2.ignore.length) + all = all.filter(function(m2) { + return !isIgnored(self2, m2); + }); + self2.found = all; + } + function mark(self2, p) { + var abs = makeAbs(self2, p); + var c = self2.cache[abs]; + var m = p; + if (c) { + var isDir = c === "DIR" || Array.isArray(c); + var slash = p.slice(-1) === "/"; + if (isDir && !slash) + m += "/"; + else if (!isDir && slash) + m = m.slice(0, -1); + if (m !== p) { + var mabs = makeAbs(self2, m); + self2.statCache[mabs] = self2.statCache[abs]; + self2.cache[mabs] = self2.cache[abs]; + } + } + return m; + } + function makeAbs(self2, f) { + var abs = f; + if (f.charAt(0) === "/") { + abs = path2.join(self2.root, f); + } else if (isAbsolute(f) || f === "") { + abs = f; + } else if (self2.changedCwd) { + abs = path2.resolve(self2.cwd, f); + } else { + abs = path2.resolve(f); + } + if (process.platform === "win32") + abs = abs.replace(/\\/g, "/"); + return abs; + } + function isIgnored(self2, path3) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return item.matcher.match(path3) || !!(item.gmatcher && item.gmatcher.match(path3)); + }); + } + function childrenIgnored(self2, path3) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path3)); + }); + } + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js +var require_sync7 = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js"(exports2, module2) { + module2.exports = globSync; + globSync.GlobSync = GlobSync; + var rp = require_fs5(); + var minimatch = require_minimatch(); + var Minimatch = minimatch.Minimatch; + var Glob = require_glob().Glob; + var util = require("util"); + var path2 = require("path"); + var assert = require("assert"); + var isAbsolute = require_path_is_absolute(); + var common = require_common5(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + function globSync(pattern, options) { + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + return new GlobSync(pattern, options).found; + } + function GlobSync(pattern, options) { + if (!pattern) + throw new Error("must provide pattern"); + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options); + setopts(this, pattern, options); + if (this.noprocess) + return this; + var n = this.minimatch.set.length; + this.matches = new Array(n); + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false); + } + this._finish(); + } + GlobSync.prototype._finish = function() { + assert.ok(this instanceof GlobSync); + if (this.realpath) { + var self2 = this; + this.matches.forEach(function(matchset, index) { + var set = self2.matches[index] = /* @__PURE__ */ Object.create(null); + for (var p in matchset) { + try { + p = self2._makeAbs(p); + var real = rp.realpathSync(p, self2.realpathCache); + set[real] = true; + } catch (er) { + if (er.syscall === "stat") + set[self2._makeAbs(p)] = true; + else + throw er; + } + } + }); + } + common.finish(this); + }; + GlobSync.prototype._process = function(pattern, index, inGlobStar) { + assert.ok(this instanceof GlobSync); + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return; + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar); + }; + GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); + } + } + var len = matchedEntries.length; + if (len === 0) + return; + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix.slice(-1) !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); + } + this._emitMatch(index, e); + } + return; + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) + newPattern = [prefix, e]; + else + newPattern = [e]; + this._process(newPattern.concat(remain), index, inGlobStar); + } + }; + GlobSync.prototype._emitMatch = function(index, e) { + if (isIgnored(this, e)) + return; + var abs = this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) { + e = abs; + } + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + if (this.stat) + this._stat(e); + }; + GlobSync.prototype._readdirInGlobStar = function(abs) { + if (this.follow) + return this._readdir(abs, false); + var entries; + var lstat; + var stat; + try { + lstat = this.fs.lstatSync(abs); + } catch (er) { + if (er.code === "ENOENT") { + return null; + } + } + var isSym = lstat && lstat.isSymbolicLink(); + this.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) + this.cache[abs] = "FILE"; + else + entries = this._readdir(abs, false); + return entries; + }; + GlobSync.prototype._readdir = function(abs, inGlobStar) { + var entries; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return null; + if (Array.isArray(c)) + return c; + } + try { + return this._readdirEntries(abs, this.fs.readdirSync(abs)); + } catch (er) { + this._readdirError(abs, er); + return null; + } + }; + GlobSync.prototype._readdirEntries = function(abs, entries) { + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; + } + } + this.cache[abs] = entries; + return entries; + }; + GlobSync.prototype._readdirError = function(f, er) { + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + throw error; + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) + throw er; + if (!this.silent) + console.error("glob error", er); + break; + } + }; + GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false); + var len = entries.length; + var isSym = this.symlinks[abs]; + if (isSym && inGlobStar) + return; + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true); + } + }; + GlobSync.prototype._processSimple = function(prefix, index) { + var exists = this._stat(prefix); + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return; + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + }; + GlobSync.prototype._stat = function(f) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return false; + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return c; + if (needDir && c === "FILE") + return false; + } + var exists; + var stat = this.statCache[abs]; + if (!stat) { + var lstat; + try { + lstat = this.fs.lstatSync(abs); + } catch (er) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return false; + } + } + if (lstat && lstat.isSymbolicLink()) { + try { + stat = this.fs.statSync(abs); + } catch (er) { + stat = lstat; + } + } else { + stat = lstat; + } + } + this.statCache[abs] = stat; + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return false; + return c; + }; + GlobSync.prototype._mark = function(p) { + return common.mark(this, p); + }; + GlobSync.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + } +}); + +// ../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js +var require_wrappy = __commonJS({ + "../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js"(exports2, module2) { + module2.exports = wrappy; + function wrappy(fn2, cb) { + if (fn2 && cb) + return wrappy(fn2)(cb); + if (typeof fn2 !== "function") + throw new TypeError("need wrapper function"); + Object.keys(fn2).forEach(function(k) { + wrapper[k] = fn2[k]; + }); + return wrapper; + function wrapper() { + var args2 = new Array(arguments.length); + for (var i = 0; i < args2.length; i++) { + args2[i] = arguments[i]; + } + var ret = fn2.apply(this, args2); + var cb2 = args2[args2.length - 1]; + if (typeof ret === "function" && ret !== cb2) { + Object.keys(cb2).forEach(function(k) { + ret[k] = cb2[k]; + }); + } + return ret; + } + } + } +}); + +// ../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js +var require_once = __commonJS({ + "../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js"(exports2, module2) { + var wrappy = require_wrappy(); + module2.exports = wrappy(once); + module2.exports.strict = wrappy(onceStrict); + once.proto = once(function() { + Object.defineProperty(Function.prototype, "once", { + value: function() { + return once(this); + }, + configurable: true + }); + Object.defineProperty(Function.prototype, "onceStrict", { + value: function() { + return onceStrict(this); + }, + configurable: true + }); + }); + function once(fn2) { + var f = function() { + if (f.called) + return f.value; + f.called = true; + return f.value = fn2.apply(this, arguments); + }; + f.called = false; + return f; + } + function onceStrict(fn2) { + var f = function() { + if (f.called) + throw new Error(f.onceError); + f.called = true; + return f.value = fn2.apply(this, arguments); + }; + var name = fn2.name || "Function wrapped with `once`"; + f.onceError = name + " shouldn't be called more than once"; + f.called = false; + return f; + } + } +}); + +// ../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js +var require_inflight = __commonJS({ + "../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js"(exports2, module2) { + var wrappy = require_wrappy(); + var reqs = /* @__PURE__ */ Object.create(null); + var once = require_once(); + module2.exports = wrappy(inflight); + function inflight(key, cb) { + if (reqs[key]) { + reqs[key].push(cb); + return null; + } else { + reqs[key] = [cb]; + return makeres(key); + } + } + function makeres(key) { + return once(function RES() { + var cbs = reqs[key]; + var len = cbs.length; + var args2 = slice(arguments); + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args2); + } + } finally { + if (cbs.length > len) { + cbs.splice(0, len); + process.nextTick(function() { + RES.apply(null, args2); + }); + } else { + delete reqs[key]; + } + } + }); + } + function slice(args2) { + var length = args2.length; + var array = []; + for (var i = 0; i < length; i++) + array[i] = args2[i]; + return array; + } + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js +var require_glob = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js"(exports2, module2) { + module2.exports = glob; + var rp = require_fs5(); + var minimatch = require_minimatch(); + var Minimatch = minimatch.Minimatch; + var inherits = require_inherits(); + var EE = require("events").EventEmitter; + var path2 = require("path"); + var assert = require("assert"); + var isAbsolute = require_path_is_absolute(); + var globSync = require_sync7(); + var common = require_common5(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var inflight = require_inflight(); + var util = require("util"); + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + var once = require_once(); + function glob(pattern, options, cb) { + if (typeof options === "function") + cb = options, options = {}; + if (!options) + options = {}; + if (options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return globSync(pattern, options); + } + return new Glob(pattern, options, cb); + } + glob.sync = globSync; + var GlobSync = glob.GlobSync = globSync.GlobSync; + glob.glob = glob; + function extend(origin, add) { + if (add === null || typeof add !== "object") { + return origin; + } + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; + } + return origin; + } + glob.hasMagic = function(pattern, options_) { + var options = extend({}, options_); + options.noprocess = true; + var g = new Glob(pattern, options); + var set = g.minimatch.set; + if (!pattern) + return false; + if (set.length > 1) + return true; + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== "string") + return true; + } + return false; + }; + glob.Glob = Glob; + inherits(Glob, EE); + function Glob(pattern, options, cb) { + if (typeof options === "function") { + cb = options; + options = null; + } + if (options && options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return new GlobSync(pattern, options); + } + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb); + setopts(this, pattern, options); + this._didRealPath = false; + var n = this.minimatch.set.length; + this.matches = new Array(n); + if (typeof cb === "function") { + cb = once(cb); + this.on("error", cb); + this.on("end", function(matches) { + cb(null, matches); + }); + } + var self2 = this; + this._processing = 0; + this._emitQueue = []; + this._processQueue = []; + this.paused = false; + if (this.noprocess) + return this; + if (n === 0) + return done(); + var sync = true; + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false, done); + } + sync = false; + function done() { + --self2._processing; + if (self2._processing <= 0) { + if (sync) { + process.nextTick(function() { + self2._finish(); + }); + } else { + self2._finish(); + } + } + } + } + Glob.prototype._finish = function() { + assert(this instanceof Glob); + if (this.aborted) + return; + if (this.realpath && !this._didRealpath) + return this._realpath(); + common.finish(this); + this.emit("end", this.found); + }; + Glob.prototype._realpath = function() { + if (this._didRealpath) + return; + this._didRealpath = true; + var n = this.matches.length; + if (n === 0) + return this._finish(); + var self2 = this; + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next); + function next() { + if (--n === 0) + self2._finish(); + } + }; + Glob.prototype._realpathSet = function(index, cb) { + var matchset = this.matches[index]; + if (!matchset) + return cb(); + var found = Object.keys(matchset); + var self2 = this; + var n = found.length; + if (n === 0) + return cb(); + var set = this.matches[index] = /* @__PURE__ */ Object.create(null); + found.forEach(function(p, i) { + p = self2._makeAbs(p); + rp.realpath(p, self2.realpathCache, function(er, real) { + if (!er) + set[real] = true; + else if (er.syscall === "stat") + set[p] = true; + else + self2.emit("error", er); + if (--n === 0) { + self2.matches[index] = set; + cb(); + } + }); + }); + }; + Glob.prototype._mark = function(p) { + return common.mark(this, p); + }; + Glob.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + Glob.prototype.abort = function() { + this.aborted = true; + this.emit("abort"); + }; + Glob.prototype.pause = function() { + if (!this.paused) { + this.paused = true; + this.emit("pause"); + } + }; + Glob.prototype.resume = function() { + if (this.paused) { + this.emit("resume"); + this.paused = false; + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0); + this._emitQueue.length = 0; + for (var i = 0; i < eq.length; i++) { + var e = eq[i]; + this._emitMatch(e[0], e[1]); + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0); + this._processQueue.length = 0; + for (var i = 0; i < pq.length; i++) { + var p = pq[i]; + this._processing--; + this._process(p[0], p[1], p[2], p[3]); + } + } + } + }; + Glob.prototype._process = function(pattern, index, inGlobStar, cb) { + assert(this instanceof Glob); + assert(typeof cb === "function"); + if (this.aborted) + return; + this._processing++; + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]); + return; + } + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index, cb); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return cb(); + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); + }; + Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); + } + } + var len = matchedEntries.length; + if (len === 0) + return cb(); + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); + } + this._emitMatch(index, e); + } + return cb(); + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + this._process([e].concat(remain), index, inGlobStar, cb); + } + cb(); + }; + Glob.prototype._emitMatch = function(index, e) { + if (this.aborted) + return; + if (isIgnored(this, e)) + return; + if (this.paused) { + this._emitQueue.push([index, e]); + return; + } + var abs = isAbsolute(e) ? e : this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) + e = abs; + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + var st = this.statCache[abs]; + if (st) + this.emit("stat", e, st); + this.emit("match", e); + }; + Glob.prototype._readdirInGlobStar = function(abs, cb) { + if (this.aborted) + return; + if (this.follow) + return this._readdir(abs, false, cb); + var lstatkey = "lstat\0" + abs; + var self2 = this; + var lstatcb = inflight(lstatkey, lstatcb_); + if (lstatcb) + self2.fs.lstat(abs, lstatcb); + function lstatcb_(er, lstat) { + if (er && er.code === "ENOENT") + return cb(); + var isSym = lstat && lstat.isSymbolicLink(); + self2.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) { + self2.cache[abs] = "FILE"; + cb(); + } else + self2._readdir(abs, false, cb); + } + }; + Glob.prototype._readdir = function(abs, inGlobStar, cb) { + if (this.aborted) + return; + cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); + if (!cb) + return; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return cb(); + if (Array.isArray(c)) + return cb(null, c); + } + var self2 = this; + self2.fs.readdir(abs, readdirCb(this, abs, cb)); + }; + function readdirCb(self2, abs, cb) { + return function(er, entries) { + if (er) + self2._readdirError(abs, er, cb); + else + self2._readdirEntries(abs, entries, cb); + }; + } + Glob.prototype._readdirEntries = function(abs, entries, cb) { + if (this.aborted) + return; + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; + } + } + this.cache[abs] = entries; + return cb(null, entries); + }; + Glob.prototype._readdirError = function(f, er, cb) { + if (this.aborted) + return; + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + this.emit("error", error); + this.abort(); + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) { + this.emit("error", er); + this.abort(); + } + if (!this.silent) + console.error("glob error", er); + break; + } + return cb(); + }; + Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false, cb); + var isSym = this.symlinks[abs]; + var len = entries.length; + if (isSym && inGlobStar) + return cb(); + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true, cb); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true, cb); + } + cb(); + }; + Glob.prototype._processSimple = function(prefix, index, cb) { + var self2 = this; + this._stat(prefix, function(er, exists) { + self2._processSimple2(prefix, index, er, exists, cb); + }); + }; + Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return cb(); + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + cb(); + }; + Glob.prototype._stat = function(f, cb) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return cb(); + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return cb(null, c); + if (needDir && c === "FILE") + return cb(); + } + var exists; + var stat = this.statCache[abs]; + if (stat !== void 0) { + if (stat === false) + return cb(null, stat); + else { + var type = stat.isDirectory() ? "DIR" : "FILE"; + if (needDir && type === "FILE") + return cb(); + else + return cb(null, type, stat); + } + } + var self2 = this; + var statcb = inflight("stat\0" + abs, lstatcb_); + if (statcb) + self2.fs.lstat(abs, statcb); + function lstatcb_(er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + return self2.fs.stat(abs, function(er2, stat2) { + if (er2) + self2._stat2(f, abs, null, lstat, cb); + else + self2._stat2(f, abs, er2, stat2, cb); + }); + } else { + self2._stat2(f, abs, er, lstat, cb); + } + } + }; + Glob.prototype._stat2 = function(f, abs, er, stat, cb) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return cb(); + } + var needDir = f.slice(-1) === "/"; + this.statCache[abs] = stat; + if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) + return cb(null, false, stat); + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return cb(); + return cb(null, c, stat); + }; + } +}); + +// ../node_modules/.pnpm/rimraf@3.0.2/node_modules/rimraf/rimraf.js +var require_rimraf = __commonJS({ + "../node_modules/.pnpm/rimraf@3.0.2/node_modules/rimraf/rimraf.js"(exports2, module2) { + var assert = require("assert"); + var path2 = require("path"); + var fs2 = require("fs"); + var glob = void 0; + try { + glob = require_glob(); + } catch (_err) { + } + var defaultGlobOpts = { + nosort: true, + silent: true + }; + var timeout = 0; + var isWindows = process.platform === "win32"; + var defaults = (options) => { + const methods = [ + "unlink", + "chmod", + "stat", + "lstat", + "rmdir", + "readdir" + ]; + methods.forEach((m) => { + options[m] = options[m] || fs2[m]; + m = m + "Sync"; + options[m] = options[m] || fs2[m]; + }); + options.maxBusyTries = options.maxBusyTries || 3; + options.emfileWait = options.emfileWait || 1e3; + if (options.glob === false) { + options.disableGlob = true; + } + if (options.disableGlob !== true && glob === void 0) { + throw Error("glob dependency not found, set `options.disableGlob = true` if intentional"); + } + options.disableGlob = options.disableGlob || false; + options.glob = options.glob || defaultGlobOpts; + }; + var rimraf = (p, options, cb) => { + if (typeof options === "function") { + cb = options; + options = {}; + } + assert(p, "rimraf: missing path"); + assert.equal(typeof p, "string", "rimraf: path should be a string"); + assert.equal(typeof cb, "function", "rimraf: callback function required"); + assert(options, "rimraf: invalid options argument provided"); + assert.equal(typeof options, "object", "rimraf: options should be object"); + defaults(options); + let busyTries = 0; + let errState = null; + let n = 0; + const next = (er) => { + errState = errState || er; + if (--n === 0) + cb(errState); + }; + const afterGlob = (er, results) => { + if (er) + return cb(er); + n = results.length; + if (n === 0) + return cb(); + results.forEach((p2) => { + const CB = (er2) => { + if (er2) { + if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) { + busyTries++; + return setTimeout(() => rimraf_(p2, options, CB), busyTries * 100); + } + if (er2.code === "EMFILE" && timeout < options.emfileWait) { + return setTimeout(() => rimraf_(p2, options, CB), timeout++); + } + if (er2.code === "ENOENT") + er2 = null; + } + timeout = 0; + next(er2); + }; + rimraf_(p2, options, CB); + }); + }; + if (options.disableGlob || !glob.hasMagic(p)) + return afterGlob(null, [p]); + options.lstat(p, (er, stat) => { + if (!er) + return afterGlob(null, [p]); + glob(p, options.glob, afterGlob); + }); + }; + var rimraf_ = (p, options, cb) => { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.lstat(p, (er, st) => { + if (er && er.code === "ENOENT") + return cb(null); + if (er && er.code === "EPERM" && isWindows) + fixWinEPERM(p, options, er, cb); + if (st && st.isDirectory()) + return rmdir(p, options, er, cb); + options.unlink(p, (er2) => { + if (er2) { + if (er2.code === "ENOENT") + return cb(null); + if (er2.code === "EPERM") + return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); + if (er2.code === "EISDIR") + return rmdir(p, options, er2, cb); + } + return cb(er2); + }); + }); + }; + var fixWinEPERM = (p, options, er, cb) => { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.chmod(p, 438, (er2) => { + if (er2) + cb(er2.code === "ENOENT" ? null : er); + else + options.stat(p, (er3, stats) => { + if (er3) + cb(er3.code === "ENOENT" ? null : er); + else if (stats.isDirectory()) + rmdir(p, options, er, cb); + else + options.unlink(p, cb); + }); + }); + }; + var fixWinEPERMSync = (p, options, er) => { + assert(p); + assert(options); + try { + options.chmodSync(p, 438); + } catch (er2) { + if (er2.code === "ENOENT") + return; + else + throw er; + } + let stats; + try { + stats = options.statSync(p); + } catch (er3) { + if (er3.code === "ENOENT") + return; + else + throw er; + } + if (stats.isDirectory()) + rmdirSync(p, options, er); + else + options.unlinkSync(p); + }; + var rmdir = (p, options, originalEr, cb) => { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.rmdir(p, (er) => { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) + rmkids(p, options, cb); + else if (er && er.code === "ENOTDIR") + cb(originalEr); + else + cb(er); + }); + }; + var rmkids = (p, options, cb) => { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.readdir(p, (er, files) => { + if (er) + return cb(er); + let n = files.length; + if (n === 0) + return options.rmdir(p, cb); + let errState; + files.forEach((f) => { + rimraf(path2.join(p, f), options, (er2) => { + if (errState) + return; + if (er2) + return cb(errState = er2); + if (--n === 0) + options.rmdir(p, cb); + }); + }); + }); + }; + var rimrafSync = (p, options) => { + options = options || {}; + defaults(options); + assert(p, "rimraf: missing path"); + assert.equal(typeof p, "string", "rimraf: path should be a string"); + assert(options, "rimraf: missing options"); + assert.equal(typeof options, "object", "rimraf: options should be object"); + let results; + if (options.disableGlob || !glob.hasMagic(p)) { + results = [p]; + } else { + try { + options.lstatSync(p); + results = [p]; + } catch (er) { + results = glob.sync(p, options.glob); + } + } + if (!results.length) + return; + for (let i = 0; i < results.length; i++) { + const p2 = results[i]; + let st; + try { + st = options.lstatSync(p2); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM" && isWindows) + fixWinEPERMSync(p2, options, er); + } + try { + if (st && st.isDirectory()) + rmdirSync(p2, options, null); + else + options.unlinkSync(p2); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM") + return isWindows ? fixWinEPERMSync(p2, options, er) : rmdirSync(p2, options, er); + if (er.code !== "EISDIR") + throw er; + rmdirSync(p2, options, er); + } + } + }; + var rmdirSync = (p, options, originalEr) => { + assert(p); + assert(options); + try { + options.rmdirSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "ENOTDIR") + throw originalEr; + if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") + rmkidsSync(p, options); + } + }; + var rmkidsSync = (p, options) => { + assert(p); + assert(options); + options.readdirSync(p).forEach((f) => rimrafSync(path2.join(p, f), options)); + const retries = isWindows ? 100 : 1; + let i = 0; + do { + let threw = true; + try { + const ret = options.rmdirSync(p, options); + threw = false; + return ret; + } finally { + if (++i < retries && threw) + continue; + } + } while (true); + }; + module2.exports = rimraf; + rimraf.sync = rimrafSync; + } +}); + +// ../node_modules/.pnpm/@zkochan+rimraf@2.1.2/node_modules/@zkochan/rimraf/index.js +var require_rimraf2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+rimraf@2.1.2/node_modules/@zkochan/rimraf/index.js"(exports2, module2) { + var rimraf = require_rimraf(); + var { promisify } = require("util"); + var rimrafP = promisify(rimraf); + module2.exports = async (p) => { + try { + await rimrafP(p); + } catch (err) { + if (err.code === "ENOTDIR" || err.code === "ENOENT") + return; + throw err; + } + }; + module2.exports.sync = (p) => { + try { + rimraf.sync(p); + } catch (err) { + if (err.code === "ENOTDIR" || err.code === "ENOENT") + return; + throw err; + } + }; + } +}); + +// ../node_modules/.pnpm/cmd-extension@1.0.2/node_modules/cmd-extension/index.js +var require_cmd_extension = __commonJS({ + "../node_modules/.pnpm/cmd-extension@1.0.2/node_modules/cmd-extension/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var cmdExtension; + if (process.env.PATHEXT) { + cmdExtension = process.env.PATHEXT.split(path2.delimiter).find((ext) => ext.toUpperCase() === ".CMD"); + } + module2.exports = cmdExtension || ".cmd"; + } +}); + +// ../pkg-manager/remove-bins/lib/removeBins.js +var require_removeBins = __commonJS({ + "../pkg-manager/remove-bins/lib/removeBins.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeBinsOfDependency = exports2.removeBin = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var package_bins_1 = require_lib39(); + var read_package_json_1 = require_lib41(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var cmd_extension_1 = __importDefault4(require_cmd_extension()); + var is_windows_1 = __importDefault4(require_is_windows()); + async function removeOnWin(cmd) { + core_loggers_1.removalLogger.debug(cmd); + await Promise.all([ + (0, rimraf_1.default)(cmd), + (0, rimraf_1.default)(`${cmd}.ps1`), + (0, rimraf_1.default)(`${cmd}${cmd_extension_1.default}`) + ]); + } + async function removeOnNonWin(p) { + core_loggers_1.removalLogger.debug(p); + return (0, rimraf_1.default)(p); + } + exports2.removeBin = (0, is_windows_1.default)() ? removeOnWin : removeOnNonWin; + async function removeBinsOfDependency(dependencyDir, opts) { + const uninstalledPkgJson = await (0, read_package_json_1.safeReadPackageJsonFromDir)(dependencyDir); + if (!uninstalledPkgJson) + return; + const cmds = await (0, package_bins_1.getBinsFromPackageManifest)(uninstalledPkgJson, dependencyDir); + if (!opts.dryRun) { + await Promise.all(cmds.map((cmd) => path_1.default.join(opts.binsDir, cmd.name)).map(exports2.removeBin)); + } + return uninstalledPkgJson; + } + exports2.removeBinsOfDependency = removeBinsOfDependency; + } +}); + +// ../pkg-manager/remove-bins/lib/index.js +var require_lib42 = __commonJS({ + "../pkg-manager/remove-bins/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeBinsOfDependency = exports2.removeBin = void 0; + var removeBins_1 = require_removeBins(); + Object.defineProperty(exports2, "removeBin", { enumerable: true, get: function() { + return removeBins_1.removeBin; + } }); + Object.defineProperty(exports2, "removeBinsOfDependency", { enumerable: true, get: function() { + return removeBins_1.removeBinsOfDependency; + } }); + } +}); + +// ../env/plugin-commands-env/lib/parseNodeEditionSpecifier.js +var require_parseNodeEditionSpecifier = __commonJS({ + "../env/plugin-commands-env/lib/parseNodeEditionSpecifier.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseNodeEditionSpecifier = void 0; + function parseNodeEditionSpecifier(specifier) { + if (specifier.includes("/")) { + const [releaseChannel, versionSpecifier] = specifier.split("/"); + return { releaseChannel, versionSpecifier }; + } + const prereleaseMatch = specifier.match(/-(nightly|rc|test|v8-canary)/); + if (prereleaseMatch != null) { + return { releaseChannel: prereleaseMatch[1], versionSpecifier: specifier }; + } + if (["nightly", "rc", "test", "release", "v8-canary"].includes(specifier)) { + return { releaseChannel: specifier, versionSpecifier: "latest" }; + } + return { releaseChannel: "release", versionSpecifier: specifier }; + } + exports2.parseNodeEditionSpecifier = parseNodeEditionSpecifier; + } +}); + +// ../env/plugin-commands-env/lib/utils.js +var require_utils9 = __commonJS({ + "../env/plugin-commands-env/lib/utils.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNodeExecPathInNodeDir = exports2.getNodeExecPathInBinDir = exports2.getNodeExecPathAndTargetDir = exports2.CURRENT_NODE_DIRNAME = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + exports2.CURRENT_NODE_DIRNAME = "nodejs_current"; + async function getNodeExecPathAndTargetDir(pnpmHomeDir) { + const nodePath = getNodeExecPathInBinDir(pnpmHomeDir); + const nodeCurrentDirLink = path_1.default.join(pnpmHomeDir, exports2.CURRENT_NODE_DIRNAME); + let nodeCurrentDir; + try { + nodeCurrentDir = await fs_1.promises.readlink(nodeCurrentDirLink); + } catch (err) { + nodeCurrentDir = void 0; + } + return { nodePath, nodeLink: nodeCurrentDir ? getNodeExecPathInNodeDir(nodeCurrentDir) : void 0 }; + } + exports2.getNodeExecPathAndTargetDir = getNodeExecPathAndTargetDir; + function getNodeExecPathInBinDir(pnpmHomeDir) { + return path_1.default.resolve(pnpmHomeDir, process.platform === "win32" ? "node.exe" : "node"); + } + exports2.getNodeExecPathInBinDir = getNodeExecPathInBinDir; + function getNodeExecPathInNodeDir(nodeDir) { + return path_1.default.join(nodeDir, process.platform === "win32" ? "node.exe" : "bin/node"); + } + exports2.getNodeExecPathInNodeDir = getNodeExecPathInNodeDir; + } +}); + +// ../env/plugin-commands-env/lib/getNodeMirror.js +var require_getNodeMirror = __commonJS({ + "../env/plugin-commands-env/lib/getNodeMirror.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNodeMirror = void 0; + function getNodeMirror(rawConfig, releaseChannel) { + const configKey = `node-mirror:${releaseChannel}`; + const nodeMirror = rawConfig[configKey] ?? `https://nodejs.org/download/${releaseChannel}/`; + return normalizeNodeMirror(nodeMirror); + } + exports2.getNodeMirror = getNodeMirror; + function normalizeNodeMirror(nodeMirror) { + return nodeMirror.endsWith("/") ? nodeMirror : `${nodeMirror}/`; + } + } +}); + +// ../fetching/pick-fetcher/lib/index.js +var require_lib43 = __commonJS({ + "../fetching/pick-fetcher/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pickFetcher = void 0; + function pickFetcher(fetcherByHostingType, resolution) { + let fetcherType = resolution.type; + if (resolution.type == null) { + if (resolution.tarball.startsWith("file:")) { + fetcherType = "localTarball"; + } else if (isGitHostedPkgUrl(resolution.tarball)) { + fetcherType = "gitHostedTarball"; + } else { + fetcherType = "remoteTarball"; + } + } + const fetch = fetcherByHostingType[fetcherType]; + if (!fetch) { + throw new Error(`Fetching for dependency type "${resolution.type ?? "undefined"}" is not supported`); + } + return fetch; + } + exports2.pickFetcher = pickFetcher; + function isGitHostedPkgUrl(url) { + return (url.startsWith("https://codeload.github.com/") || url.startsWith("https://bitbucket.org/") || url.startsWith("https://gitlab.com/")) && url.includes("tar.gz"); + } + } +}); + +// ../node_modules/.pnpm/universalify@2.0.0/node_modules/universalify/index.js +var require_universalify = __commonJS({ + "../node_modules/.pnpm/universalify@2.0.0/node_modules/universalify/index.js"(exports2) { + "use strict"; + exports2.fromCallback = function(fn2) { + return Object.defineProperty(function(...args2) { + if (typeof args2[args2.length - 1] === "function") + fn2.apply(this, args2); + else { + return new Promise((resolve, reject) => { + fn2.call( + this, + ...args2, + (err, res) => err != null ? reject(err) : resolve(res) + ); + }); + } + }, "name", { value: fn2.name }); + }; + exports2.fromPromise = function(fn2) { + return Object.defineProperty(function(...args2) { + const cb = args2[args2.length - 1]; + if (typeof cb !== "function") + return fn2.apply(this, args2); + else + fn2.apply(this, args2.slice(0, -1)).then((r) => cb(null, r), cb); + }, "name", { value: fn2.name }); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/fs/index.js +var require_fs6 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/fs/index.js"(exports2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var api = [ + "access", + "appendFile", + "chmod", + "chown", + "close", + "copyFile", + "fchmod", + "fchown", + "fdatasync", + "fstat", + "fsync", + "ftruncate", + "futimes", + "lchmod", + "lchown", + "link", + "lstat", + "mkdir", + "mkdtemp", + "open", + "opendir", + "readdir", + "readFile", + "readlink", + "realpath", + "rename", + "rm", + "rmdir", + "stat", + "symlink", + "truncate", + "unlink", + "utimes", + "writeFile" + ].filter((key) => { + return typeof fs2[key] === "function"; + }); + Object.assign(exports2, fs2); + api.forEach((method) => { + exports2[method] = u(fs2[method]); + }); + exports2.exists = function(filename, callback) { + if (typeof callback === "function") { + return fs2.exists(filename, callback); + } + return new Promise((resolve) => { + return fs2.exists(filename, resolve); + }); + }; + exports2.read = function(fd, buffer, offset, length, position, callback) { + if (typeof callback === "function") { + return fs2.read(fd, buffer, offset, length, position, callback); + } + return new Promise((resolve, reject) => { + fs2.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => { + if (err) + return reject(err); + resolve({ bytesRead, buffer: buffer2 }); + }); + }); + }; + exports2.write = function(fd, buffer, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.write(fd, buffer, ...args2); + } + return new Promise((resolve, reject) => { + fs2.write(fd, buffer, ...args2, (err, bytesWritten, buffer2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffer: buffer2 }); + }); + }); + }; + if (typeof fs2.writev === "function") { + exports2.writev = function(fd, buffers, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.writev(fd, buffers, ...args2); + } + return new Promise((resolve, reject) => { + fs2.writev(fd, buffers, ...args2, (err, bytesWritten, buffers2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffers: buffers2 }); + }); + }); + }; + } + if (typeof fs2.realpath.native === "function") { + exports2.realpath.native = u(fs2.realpath.native); + } else { + process.emitWarning( + "fs.realpath.native is not a function. Is fs being monkey-patched?", + "Warning", + "fs-extra-WARN0003" + ); + } + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/utils.js +var require_utils10 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + module2.exports.checkPath = function checkPath(pth) { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path2.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; + } + } + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js +var require_make_dir = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs6(); + var { checkPath } = require_utils10(); + var getMode = (options) => { + const defaults = { mode: 511 }; + if (typeof options === "number") + return options; + return { ...defaults, ...options }.mode; + }; + module2.exports.makeDir = async (dir, options) => { + checkPath(dir); + return fs2.mkdir(dir, { + mode: getMode(options), + recursive: true + }); + }; + module2.exports.makeDirSync = (dir, options) => { + checkPath(dir); + return fs2.mkdirSync(dir, { + mode: getMode(options), + recursive: true + }); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/index.js +var require_mkdirs = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var { makeDir: _makeDir, makeDirSync } = require_make_dir(); + var makeDir = u(_makeDir); + module2.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/utimes.js +var require_utimes = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + function utimesMillis(path2, atime, mtime, callback) { + fs2.open(path2, "r+", (err, fd) => { + if (err) + return callback(err); + fs2.futimes(fd, atime, mtime, (futimesErr) => { + fs2.close(fd, (closeErr) => { + if (callback) + callback(futimesErr || closeErr); + }); + }); + }); + } + function utimesMillisSync(path2, atime, mtime) { + const fd = fs2.openSync(path2, "r+"); + fs2.futimesSync(fd, atime, mtime); + return fs2.closeSync(fd); + } + module2.exports = { + utimesMillis, + utimesMillisSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/stat.js +var require_stat = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs6(); + var path2 = require("path"); + var util = require("util"); + function getStats(src, dest, opts) { + const statFunc = opts.dereference ? (file) => fs2.stat(file, { bigint: true }) : (file) => fs2.lstat(file, { bigint: true }); + return Promise.all([ + statFunc(src), + statFunc(dest).catch((err) => { + if (err.code === "ENOENT") + return null; + throw err; + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })); + } + function getStatsSync(src, dest, opts) { + let destStat; + const statFunc = opts.dereference ? (file) => fs2.statSync(file, { bigint: true }) : (file) => fs2.lstatSync(file, { bigint: true }); + const srcStat = statFunc(src); + try { + destStat = statFunc(dest); + } catch (err) { + if (err.code === "ENOENT") + return { srcStat, destStat: null }; + throw err; + } + return { srcStat, destStat }; + } + function checkPaths(src, dest, funcName, opts, cb) { + util.callbackify(getStats)(src, dest, opts, (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path2.basename(src); + const destBaseName = path2.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return cb(null, { srcStat, destStat, isChangingCase: true }); + } + return cb(new Error("Source and destination must not be the same.")); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`)); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return cb(null, { srcStat, destStat }); + }); + } + function checkPathsSync(src, dest, funcName, opts) { + const { srcStat, destStat } = getStatsSync(src, dest, opts); + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path2.basename(src); + const destBaseName = path2.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true }; + } + throw new Error("Source and destination must not be the same."); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); + } + return { srcStat, destStat }; + } + function checkParentPaths(src, srcStat, dest, funcName, cb) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return cb(); + fs2.stat(destParent, { bigint: true }, (err, destStat) => { + if (err) { + if (err.code === "ENOENT") + return cb(); + return cb(err); + } + if (areIdentical(srcStat, destStat)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return checkParentPaths(src, srcStat, destParent, funcName, cb); + }); + } + function checkParentPathsSync(src, srcStat, dest, funcName) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return; + let destStat; + try { + destStat = fs2.statSync(destParent, { bigint: true }); + } catch (err) { + if (err.code === "ENOENT") + return; + throw err; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPathsSync(src, srcStat, destParent, funcName); + } + function areIdentical(srcStat, destStat) { + return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev; + } + function isSrcSubdir(src, dest) { + const srcArr = path2.resolve(src).split(path2.sep).filter((i) => i); + const destArr = path2.resolve(dest).split(path2.sep).filter((i) => i); + return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true); + } + function errMsg(src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`; + } + module2.exports = { + checkPaths, + checkPathsSync, + checkParentPaths, + checkParentPathsSync, + isSrcSubdir, + areIdentical + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy-sync.js +var require_copy_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirsSync = require_mkdirs().mkdirsSync; + var utimesMillisSync = require_utimes().utimesMillisSync; + var stat = require_stat(); + function copySync(src, dest, opts) { + if (typeof opts === "function") { + opts = { filter: opts }; + } + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0002" + ); + } + const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts); + stat.checkParentPathsSync(src, srcStat, dest, "copy"); + return handleFilterAndCopy(destStat, src, dest, opts); + } + function handleFilterAndCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + const destParent = path2.dirname(dest); + if (!fs2.existsSync(destParent)) + mkdirsSync(destParent); + return getStats(destStat, src, dest, opts); + } + function startCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + return getStats(destStat, src, dest, opts); + } + function getStats(destStat, src, dest, opts) { + const statSync = opts.dereference ? fs2.statSync : fs2.lstatSync; + const srcStat = statSync(src); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts); + else if (srcStat.isSocket()) + throw new Error(`Cannot copy a socket file: ${src}`); + else if (srcStat.isFIFO()) + throw new Error(`Cannot copy a FIFO pipe: ${src}`); + throw new Error(`Unknown file: ${src}`); + } + function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) + return copyFile(srcStat, src, dest, opts); + return mayCopyFile(srcStat, src, dest, opts); + } + function mayCopyFile(srcStat, src, dest, opts) { + if (opts.overwrite) { + fs2.unlinkSync(dest); + return copyFile(srcStat, src, dest, opts); + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + function copyFile(srcStat, src, dest, opts) { + fs2.copyFileSync(src, dest); + if (opts.preserveTimestamps) + handleTimestamps(srcStat.mode, src, dest); + return setDestMode(dest, srcStat.mode); + } + function handleTimestamps(srcMode, src, dest) { + if (fileIsNotWritable(srcMode)) + makeFileWritable(dest, srcMode); + return setDestTimestamps(src, dest); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return setDestMode(dest, srcMode | 128); + } + function setDestMode(dest, srcMode) { + return fs2.chmodSync(dest, srcMode); + } + function setDestTimestamps(src, dest) { + const updatedSrcStat = fs2.statSync(src); + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts); + return copyDir(src, dest, opts); + } + function mkDirAndCopy(srcMode, src, dest, opts) { + fs2.mkdirSync(dest); + copyDir(src, dest, opts); + return setDestMode(dest, srcMode); + } + function copyDir(src, dest, opts) { + fs2.readdirSync(src).forEach((item) => copyDirItem(item, src, dest, opts)); + } + function copyDirItem(item, src, dest, opts) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts); + return startCopy(destStat, srcItem, destItem, opts); + } + function onLink(destStat, src, dest, opts) { + let resolvedSrc = fs2.readlinkSync(src); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs2.symlinkSync(resolvedSrc, dest); + } else { + let resolvedDest; + try { + resolvedDest = fs2.readlinkSync(dest); + } catch (err) { + if (err.code === "EINVAL" || err.code === "UNKNOWN") + return fs2.symlinkSync(resolvedSrc, dest); + throw err; + } + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (fs2.statSync(dest).isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + return copyLink(resolvedSrc, dest); + } + } + function copyLink(resolvedSrc, dest) { + fs2.unlinkSync(dest); + return fs2.symlinkSync(resolvedSrc, dest); + } + module2.exports = copySync; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/path-exists/index.js +var require_path_exists2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs2 = require_fs6(); + function pathExists(path2) { + return fs2.access(path2).then(() => true).catch(() => false); + } + module2.exports = { + pathExists: u(pathExists), + pathExistsSync: fs2.existsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy.js +var require_copy = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirs = require_mkdirs().mkdirs; + var pathExists = require_path_exists2().pathExists; + var utimesMillis = require_utimes().utimesMillis; + var stat = require_stat(); + function copy(src, dest, opts, cb) { + if (typeof opts === "function" && !cb) { + cb = opts; + opts = {}; + } else if (typeof opts === "function") { + opts = { filter: opts }; + } + cb = cb || function() { + }; + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0001" + ); + } + stat.checkPaths(src, dest, "copy", opts, (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + stat.checkParentPaths(src, srcStat, dest, "copy", (err2) => { + if (err2) + return cb(err2); + if (opts.filter) + return handleFilter(checkParentDir, destStat, src, dest, opts, cb); + return checkParentDir(destStat, src, dest, opts, cb); + }); + }); + } + function checkParentDir(destStat, src, dest, opts, cb) { + const destParent = path2.dirname(dest); + pathExists(destParent, (err, dirExists) => { + if (err) + return cb(err); + if (dirExists) + return getStats(destStat, src, dest, opts, cb); + mkdirs(destParent, (err2) => { + if (err2) + return cb(err2); + return getStats(destStat, src, dest, opts, cb); + }); + }); + } + function handleFilter(onInclude, destStat, src, dest, opts, cb) { + Promise.resolve(opts.filter(src, dest)).then((include) => { + if (include) + return onInclude(destStat, src, dest, opts, cb); + return cb(); + }, (error) => cb(error)); + } + function startCopy(destStat, src, dest, opts, cb) { + if (opts.filter) + return handleFilter(getStats, destStat, src, dest, opts, cb); + return getStats(destStat, src, dest, opts, cb); + } + function getStats(destStat, src, dest, opts, cb) { + const stat2 = opts.dereference ? fs2.stat : fs2.lstat; + stat2(src, (err, srcStat) => { + if (err) + return cb(err); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts, cb); + else if (srcStat.isSocket()) + return cb(new Error(`Cannot copy a socket file: ${src}`)); + else if (srcStat.isFIFO()) + return cb(new Error(`Cannot copy a FIFO pipe: ${src}`)); + return cb(new Error(`Unknown file: ${src}`)); + }); + } + function onFile(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return copyFile(srcStat, src, dest, opts, cb); + return mayCopyFile(srcStat, src, dest, opts, cb); + } + function mayCopyFile(srcStat, src, dest, opts, cb) { + if (opts.overwrite) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return copyFile(srcStat, src, dest, opts, cb); + }); + } else if (opts.errorOnExist) { + return cb(new Error(`'${dest}' already exists`)); + } else + return cb(); + } + function copyFile(srcStat, src, dest, opts, cb) { + fs2.copyFile(src, dest, (err) => { + if (err) + return cb(err); + if (opts.preserveTimestamps) + return handleTimestampsAndMode(srcStat.mode, src, dest, cb); + return setDestMode(dest, srcStat.mode, cb); + }); + } + function handleTimestampsAndMode(srcMode, src, dest, cb) { + if (fileIsNotWritable(srcMode)) { + return makeFileWritable(dest, srcMode, (err) => { + if (err) + return cb(err); + return setDestTimestampsAndMode(srcMode, src, dest, cb); + }); + } + return setDestTimestampsAndMode(srcMode, src, dest, cb); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode, cb) { + return setDestMode(dest, srcMode | 128, cb); + } + function setDestTimestampsAndMode(srcMode, src, dest, cb) { + setDestTimestamps(src, dest, (err) => { + if (err) + return cb(err); + return setDestMode(dest, srcMode, cb); + }); + } + function setDestMode(dest, srcMode, cb) { + return fs2.chmod(dest, srcMode, cb); + } + function setDestTimestamps(src, dest, cb) { + fs2.stat(src, (err, updatedSrcStat) => { + if (err) + return cb(err); + return utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime, cb); + }); + } + function onDir(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts, cb); + return copyDir(src, dest, opts, cb); + } + function mkDirAndCopy(srcMode, src, dest, opts, cb) { + fs2.mkdir(dest, (err) => { + if (err) + return cb(err); + copyDir(src, dest, opts, (err2) => { + if (err2) + return cb(err2); + return setDestMode(dest, srcMode, cb); + }); + }); + } + function copyDir(src, dest, opts, cb) { + fs2.readdir(src, (err, items) => { + if (err) + return cb(err); + return copyDirItems(items, src, dest, opts, cb); + }); + } + function copyDirItems(items, src, dest, opts, cb) { + const item = items.pop(); + if (!item) + return cb(); + return copyDirItem(items, item, src, dest, opts, cb); + } + function copyDirItem(items, item, src, dest, opts, cb) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + stat.checkPaths(srcItem, destItem, "copy", opts, (err, stats) => { + if (err) + return cb(err); + const { destStat } = stats; + startCopy(destStat, srcItem, destItem, opts, (err2) => { + if (err2) + return cb(err2); + return copyDirItems(items, src, dest, opts, cb); + }); + }); + } + function onLink(destStat, src, dest, opts, cb) { + fs2.readlink(src, (err, resolvedSrc) => { + if (err) + return cb(err); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs2.symlink(resolvedSrc, dest, cb); + } else { + fs2.readlink(dest, (err2, resolvedDest) => { + if (err2) { + if (err2.code === "EINVAL" || err2.code === "UNKNOWN") + return fs2.symlink(resolvedSrc, dest, cb); + return cb(err2); + } + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)); + } + if (destStat.isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)); + } + return copyLink(resolvedSrc, dest, cb); + }); + } + }); + } + function copyLink(resolvedSrc, dest, cb) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return fs2.symlink(resolvedSrc, dest, cb); + }); + } + module2.exports = copy; + } +}); + +// ../node_modules/.pnpm/rename-overwrite@4.0.3/node_modules/rename-overwrite/index.js +var require_rename_overwrite = __commonJS({ + "../node_modules/.pnpm/rename-overwrite@4.0.3/node_modules/rename-overwrite/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var { promisify } = require("util"); + var copySync = require_copy_sync(); + var copy = promisify(require_copy()); + var path2 = require("path"); + var rimraf = require_rimraf2(); + module2.exports = async function renameOverwrite(oldPath, newPath, retry = 0) { + try { + await fs2.promises.rename(oldPath, newPath); + } catch (err) { + retry++; + if (retry > 3) + throw err; + switch (err.code) { + case "ENOTEMPTY": + case "EEXIST": + case "ENOTDIR": + await rimraf(newPath); + await renameOverwrite(oldPath, newPath, retry); + break; + case "EPERM": + case "EACCESS": { + await rimraf(newPath); + const start = Date.now(); + let backoff = 0; + let lastError = err; + while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS")) { + await new Promise((resolve) => setTimeout(resolve, backoff)); + try { + await fs2.promises.rename(oldPath, newPath); + return; + } catch (err2) { + lastError = err2; + } + if (backoff < 100) { + backoff += 10; + } + } + throw lastError; + } + case "ENOENT": + try { + await fs2.promises.stat(oldPath); + } catch (statErr) { + if (statErr.code === "ENOENT") { + throw statErr; + } + } + await fs2.promises.mkdir(path2.dirname(newPath), { recursive: true }); + await renameOverwrite(oldPath, newPath, retry); + break; + case "EXDEV": + try { + await rimraf(newPath); + } catch (rimrafErr) { + if (rimrafErr.code !== "ENOENT") { + throw rimrafErr; + } + } + await copy(oldPath, newPath); + await rimraf(oldPath); + break; + default: + throw err; + } + } + }; + module2.exports.sync = function renameOverwriteSync(oldPath, newPath, retry = 0) { + try { + fs2.renameSync(oldPath, newPath); + } catch (err) { + retry++; + if (retry > 3) + throw err; + switch (err.code) { + case "ENOTEMPTY": + case "EEXIST": + case "EPERM": + case "ENOTDIR": + rimraf.sync(newPath); + fs2.renameSync(oldPath, newPath); + return; + case "ENOENT": + fs2.mkdirSync(path2.dirname(newPath), { recursive: true }); + renameOverwriteSync(oldPath, newPath, retry); + return; + case "EXDEV": + try { + rimraf.sync(newPath); + } catch (rimrafErr) { + if (rimrafErr.code !== "ENOENT") { + throw rimrafErr; + } + } + copySync(oldPath, newPath); + rimraf.sync(oldPath); + break; + default: + throw err; + } + } + }; + } +}); + +// ../node_modules/.pnpm/minipass@4.2.8/node_modules/minipass/index.js +var require_minipass = __commonJS({ + "../node_modules/.pnpm/minipass@4.2.8/node_modules/minipass/index.js"(exports2, module2) { + "use strict"; + var proc = typeof process === "object" && process ? process : { + stdout: null, + stderr: null + }; + var EE = require("events"); + var Stream = require("stream"); + var stringdecoder = require("string_decoder"); + var SD = stringdecoder.StringDecoder; + var EOF = Symbol("EOF"); + var MAYBE_EMIT_END = Symbol("maybeEmitEnd"); + var EMITTED_END = Symbol("emittedEnd"); + var EMITTING_END = Symbol("emittingEnd"); + var EMITTED_ERROR = Symbol("emittedError"); + var CLOSED = Symbol("closed"); + var READ = Symbol("read"); + var FLUSH = Symbol("flush"); + var FLUSHCHUNK = Symbol("flushChunk"); + var ENCODING = Symbol("encoding"); + var DECODER = Symbol("decoder"); + var FLOWING = Symbol("flowing"); + var PAUSED = Symbol("paused"); + var RESUME = Symbol("resume"); + var BUFFER = Symbol("buffer"); + var PIPES = Symbol("pipes"); + var BUFFERLENGTH = Symbol("bufferLength"); + var BUFFERPUSH = Symbol("bufferPush"); + var BUFFERSHIFT = Symbol("bufferShift"); + var OBJECTMODE = Symbol("objectMode"); + var DESTROYED = Symbol("destroyed"); + var ERROR = Symbol("error"); + var EMITDATA = Symbol("emitData"); + var EMITEND = Symbol("emitEnd"); + var EMITEND2 = Symbol("emitEnd2"); + var ASYNC = Symbol("async"); + var ABORT = Symbol("abort"); + var ABORTED = Symbol("aborted"); + var SIGNAL = Symbol("signal"); + var defer = (fn2) => Promise.resolve().then(fn2); + var doIter = global._MP_NO_ITERATOR_SYMBOLS_ !== "1"; + var ASYNCITERATOR = doIter && Symbol.asyncIterator || Symbol("asyncIterator not implemented"); + var ITERATOR = doIter && Symbol.iterator || Symbol("iterator not implemented"); + var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish"; + var isArrayBuffer = (b) => b instanceof ArrayBuffer || typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0; + var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b); + var Pipe = class { + constructor(src, dest, opts) { + this.src = src; + this.dest = dest; + this.opts = opts; + this.ondrain = () => src[RESUME](); + dest.on("drain", this.ondrain); + } + unpipe() { + this.dest.removeListener("drain", this.ondrain); + } + // istanbul ignore next - only here for the prototype + proxyErrors() { + } + end() { + this.unpipe(); + if (this.opts.end) + this.dest.end(); + } + }; + var PipeProxyErrors = class extends Pipe { + unpipe() { + this.src.removeListener("error", this.proxyErrors); + super.unpipe(); + } + constructor(src, dest, opts) { + super(src, dest, opts); + this.proxyErrors = (er) => dest.emit("error", er); + src.on("error", this.proxyErrors); + } + }; + var Minipass = class extends Stream { + constructor(options) { + super(); + this[FLOWING] = false; + this[PAUSED] = false; + this[PIPES] = []; + this[BUFFER] = []; + this[OBJECTMODE] = options && options.objectMode || false; + if (this[OBJECTMODE]) + this[ENCODING] = null; + else + this[ENCODING] = options && options.encoding || null; + if (this[ENCODING] === "buffer") + this[ENCODING] = null; + this[ASYNC] = options && !!options.async || false; + this[DECODER] = this[ENCODING] ? new SD(this[ENCODING]) : null; + this[EOF] = false; + this[EMITTED_END] = false; + this[EMITTING_END] = false; + this[CLOSED] = false; + this[EMITTED_ERROR] = null; + this.writable = true; + this.readable = true; + this[BUFFERLENGTH] = 0; + this[DESTROYED] = false; + if (options && options.debugExposeBuffer === true) { + Object.defineProperty(this, "buffer", { get: () => this[BUFFER] }); + } + if (options && options.debugExposePipes === true) { + Object.defineProperty(this, "pipes", { get: () => this[PIPES] }); + } + this[SIGNAL] = options && options.signal; + this[ABORTED] = false; + if (this[SIGNAL]) { + this[SIGNAL].addEventListener("abort", () => this[ABORT]()); + if (this[SIGNAL].aborted) { + this[ABORT](); + } + } + } + get bufferLength() { + return this[BUFFERLENGTH]; + } + get encoding() { + return this[ENCODING]; + } + set encoding(enc) { + if (this[OBJECTMODE]) + throw new Error("cannot set encoding in objectMode"); + if (this[ENCODING] && enc !== this[ENCODING] && (this[DECODER] && this[DECODER].lastNeed || this[BUFFERLENGTH])) + throw new Error("cannot change encoding"); + if (this[ENCODING] !== enc) { + this[DECODER] = enc ? new SD(enc) : null; + if (this[BUFFER].length) + this[BUFFER] = this[BUFFER].map((chunk) => this[DECODER].write(chunk)); + } + this[ENCODING] = enc; + } + setEncoding(enc) { + this.encoding = enc; + } + get objectMode() { + return this[OBJECTMODE]; + } + set objectMode(om) { + this[OBJECTMODE] = this[OBJECTMODE] || !!om; + } + get ["async"]() { + return this[ASYNC]; + } + set ["async"](a) { + this[ASYNC] = this[ASYNC] || !!a; + } + // drop everything and get out of the flow completely + [ABORT]() { + this[ABORTED] = true; + this.emit("abort", this[SIGNAL].reason); + this.destroy(this[SIGNAL].reason); + } + get aborted() { + return this[ABORTED]; + } + set aborted(_) { + } + write(chunk, encoding, cb) { + if (this[ABORTED]) + return false; + if (this[EOF]) + throw new Error("write after end"); + if (this[DESTROYED]) { + this.emit( + "error", + Object.assign( + new Error("Cannot call write after a stream was destroyed"), + { code: "ERR_STREAM_DESTROYED" } + ) + ); + return true; + } + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (!encoding) + encoding = "utf8"; + const fn2 = this[ASYNC] ? defer : (f) => f(); + if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) { + if (isArrayBufferView(chunk)) + chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); + else if (isArrayBuffer(chunk)) + chunk = Buffer.from(chunk); + else if (typeof chunk !== "string") + this.objectMode = true; + } + if (this[OBJECTMODE]) { + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (!chunk.length) { + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (typeof chunk === "string" && // unless it is a string already ready for us to use + !(encoding === this[ENCODING] && !this[DECODER].lastNeed)) { + chunk = Buffer.from(chunk, encoding); + } + if (Buffer.isBuffer(chunk) && this[ENCODING]) + chunk = this[DECODER].write(chunk); + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + read(n) { + if (this[DESTROYED]) + return null; + if (this[BUFFERLENGTH] === 0 || n === 0 || n > this[BUFFERLENGTH]) { + this[MAYBE_EMIT_END](); + return null; + } + if (this[OBJECTMODE]) + n = null; + if (this[BUFFER].length > 1 && !this[OBJECTMODE]) { + if (this.encoding) + this[BUFFER] = [this[BUFFER].join("")]; + else + this[BUFFER] = [Buffer.concat(this[BUFFER], this[BUFFERLENGTH])]; + } + const ret = this[READ](n || null, this[BUFFER][0]); + this[MAYBE_EMIT_END](); + return ret; + } + [READ](n, chunk) { + if (n === chunk.length || n === null) + this[BUFFERSHIFT](); + else { + this[BUFFER][0] = chunk.slice(n); + chunk = chunk.slice(0, n); + this[BUFFERLENGTH] -= n; + } + this.emit("data", chunk); + if (!this[BUFFER].length && !this[EOF]) + this.emit("drain"); + return chunk; + } + end(chunk, encoding, cb) { + if (typeof chunk === "function") + cb = chunk, chunk = null; + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (chunk) + this.write(chunk, encoding); + if (cb) + this.once("end", cb); + this[EOF] = true; + this.writable = false; + if (this.flowing || !this[PAUSED]) + this[MAYBE_EMIT_END](); + return this; + } + // don't let the internal resume be overwritten + [RESUME]() { + if (this[DESTROYED]) + return; + this[PAUSED] = false; + this[FLOWING] = true; + this.emit("resume"); + if (this[BUFFER].length) + this[FLUSH](); + else if (this[EOF]) + this[MAYBE_EMIT_END](); + else + this.emit("drain"); + } + resume() { + return this[RESUME](); + } + pause() { + this[FLOWING] = false; + this[PAUSED] = true; + } + get destroyed() { + return this[DESTROYED]; + } + get flowing() { + return this[FLOWING]; + } + get paused() { + return this[PAUSED]; + } + [BUFFERPUSH](chunk) { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] += 1; + else + this[BUFFERLENGTH] += chunk.length; + this[BUFFER].push(chunk); + } + [BUFFERSHIFT]() { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] -= 1; + else + this[BUFFERLENGTH] -= this[BUFFER][0].length; + return this[BUFFER].shift(); + } + [FLUSH](noDrain) { + do { + } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) && this[BUFFER].length); + if (!noDrain && !this[BUFFER].length && !this[EOF]) + this.emit("drain"); + } + [FLUSHCHUNK](chunk) { + this.emit("data", chunk); + return this.flowing; + } + pipe(dest, opts) { + if (this[DESTROYED]) + return; + const ended = this[EMITTED_END]; + opts = opts || {}; + if (dest === proc.stdout || dest === proc.stderr) + opts.end = false; + else + opts.end = opts.end !== false; + opts.proxyErrors = !!opts.proxyErrors; + if (ended) { + if (opts.end) + dest.end(); + } else { + this[PIPES].push( + !opts.proxyErrors ? new Pipe(this, dest, opts) : new PipeProxyErrors(this, dest, opts) + ); + if (this[ASYNC]) + defer(() => this[RESUME]()); + else + this[RESUME](); + } + return dest; + } + unpipe(dest) { + const p = this[PIPES].find((p2) => p2.dest === dest); + if (p) { + this[PIPES].splice(this[PIPES].indexOf(p), 1); + p.unpipe(); + } + } + addListener(ev, fn2) { + return this.on(ev, fn2); + } + on(ev, fn2) { + const ret = super.on(ev, fn2); + if (ev === "data" && !this[PIPES].length && !this.flowing) + this[RESUME](); + else if (ev === "readable" && this[BUFFERLENGTH] !== 0) + super.emit("readable"); + else if (isEndish(ev) && this[EMITTED_END]) { + super.emit(ev); + this.removeAllListeners(ev); + } else if (ev === "error" && this[EMITTED_ERROR]) { + if (this[ASYNC]) + defer(() => fn2.call(this, this[EMITTED_ERROR])); + else + fn2.call(this, this[EMITTED_ERROR]); + } + return ret; + } + get emittedEnd() { + return this[EMITTED_END]; + } + [MAYBE_EMIT_END]() { + if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this[BUFFER].length === 0 && this[EOF]) { + this[EMITTING_END] = true; + this.emit("end"); + this.emit("prefinish"); + this.emit("finish"); + if (this[CLOSED]) + this.emit("close"); + this[EMITTING_END] = false; + } + } + emit(ev, data, ...extra) { + if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) + return; + else if (ev === "data") { + return !this[OBJECTMODE] && !data ? false : this[ASYNC] ? defer(() => this[EMITDATA](data)) : this[EMITDATA](data); + } else if (ev === "end") { + return this[EMITEND](); + } else if (ev === "close") { + this[CLOSED] = true; + if (!this[EMITTED_END] && !this[DESTROYED]) + return; + const ret2 = super.emit("close"); + this.removeAllListeners("close"); + return ret2; + } else if (ev === "error") { + this[EMITTED_ERROR] = data; + super.emit(ERROR, data); + const ret2 = !this[SIGNAL] || this.listeners("error").length ? super.emit("error", data) : false; + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "resume") { + const ret2 = super.emit("resume"); + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "finish" || ev === "prefinish") { + const ret2 = super.emit(ev); + this.removeAllListeners(ev); + return ret2; + } + const ret = super.emit(ev, data, ...extra); + this[MAYBE_EMIT_END](); + return ret; + } + [EMITDATA](data) { + for (const p of this[PIPES]) { + if (p.dest.write(data) === false) + this.pause(); + } + const ret = super.emit("data", data); + this[MAYBE_EMIT_END](); + return ret; + } + [EMITEND]() { + if (this[EMITTED_END]) + return; + this[EMITTED_END] = true; + this.readable = false; + if (this[ASYNC]) + defer(() => this[EMITEND2]()); + else + this[EMITEND2](); + } + [EMITEND2]() { + if (this[DECODER]) { + const data = this[DECODER].end(); + if (data) { + for (const p of this[PIPES]) { + p.dest.write(data); + } + super.emit("data", data); + } + } + for (const p of this[PIPES]) { + p.end(); + } + const ret = super.emit("end"); + this.removeAllListeners("end"); + return ret; + } + // const all = await stream.collect() + collect() { + const buf = []; + if (!this[OBJECTMODE]) + buf.dataLength = 0; + const p = this.promise(); + this.on("data", (c) => { + buf.push(c); + if (!this[OBJECTMODE]) + buf.dataLength += c.length; + }); + return p.then(() => buf); + } + // const data = await stream.concat() + concat() { + return this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this.collect().then( + (buf) => this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength) + ); + } + // stream.promise().then(() => done, er => emitted error) + promise() { + return new Promise((resolve, reject) => { + this.on(DESTROYED, () => reject(new Error("stream destroyed"))); + this.on("error", (er) => reject(er)); + this.on("end", () => resolve()); + }); + } + // for await (let chunk of stream) + [ASYNCITERATOR]() { + let stopped = false; + const stop = () => { + this.pause(); + stopped = true; + return Promise.resolve({ done: true }); + }; + const next = () => { + if (stopped) + return stop(); + const res = this.read(); + if (res !== null) + return Promise.resolve({ done: false, value: res }); + if (this[EOF]) + return stop(); + let resolve = null; + let reject = null; + const onerr = (er) => { + this.removeListener("data", ondata); + this.removeListener("end", onend); + this.removeListener(DESTROYED, ondestroy); + stop(); + reject(er); + }; + const ondata = (value) => { + this.removeListener("error", onerr); + this.removeListener("end", onend); + this.removeListener(DESTROYED, ondestroy); + this.pause(); + resolve({ value, done: !!this[EOF] }); + }; + const onend = () => { + this.removeListener("error", onerr); + this.removeListener("data", ondata); + this.removeListener(DESTROYED, ondestroy); + stop(); + resolve({ done: true }); + }; + const ondestroy = () => onerr(new Error("stream destroyed")); + return new Promise((res2, rej) => { + reject = rej; + resolve = res2; + this.once(DESTROYED, ondestroy); + this.once("error", onerr); + this.once("end", onend); + this.once("data", ondata); + }); + }; + return { + next, + throw: stop, + return: stop, + [ASYNCITERATOR]() { + return this; + } + }; + } + // for (let chunk of stream) + [ITERATOR]() { + let stopped = false; + const stop = () => { + this.pause(); + this.removeListener(ERROR, stop); + this.removeListener(DESTROYED, stop); + this.removeListener("end", stop); + stopped = true; + return { done: true }; + }; + const next = () => { + if (stopped) + return stop(); + const value = this.read(); + return value === null ? stop() : { value }; + }; + this.once("end", stop); + this.once(ERROR, stop); + this.once(DESTROYED, stop); + return { + next, + throw: stop, + return: stop, + [ITERATOR]() { + return this; + } + }; + } + destroy(er) { + if (this[DESTROYED]) { + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + this[DESTROYED] = true; + this[BUFFER].length = 0; + this[BUFFERLENGTH] = 0; + if (typeof this.close === "function" && !this[CLOSED]) + this.close(); + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + static isStream(s) { + return !!s && (s instanceof Minipass || s instanceof Stream || s instanceof EE && // readable + (typeof s.pipe === "function" || // writable + typeof s.write === "function" && typeof s.end === "function")); + } + }; + module2.exports = Minipass; + } +}); + +// ../node_modules/.pnpm/ssri@10.0.1/node_modules/ssri/lib/index.js +var require_lib44 = __commonJS({ + "../node_modules/.pnpm/ssri@10.0.1/node_modules/ssri/lib/index.js"(exports2, module2) { + "use strict"; + var crypto6 = require("crypto"); + var MiniPass = require_minipass(); + var SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"]; + var BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i; + var SRI_REGEX = /^([a-z0-9]+)-([^?]+)([?\S*]*)$/; + var STRICT_SRI_REGEX = /^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/; + var VCHAR_REGEX = /^[\x21-\x7E]+$/; + var defaultOpts = { + algorithms: ["sha512"], + error: false, + options: [], + pickAlgorithm: getPrioritizedHash, + sep: " ", + single: false, + strict: false + }; + var ssriOpts = (opts = {}) => ({ ...defaultOpts, ...opts }); + var getOptString = (options) => !options || !options.length ? "" : `?${options.join("?")}`; + var _onEnd = Symbol("_onEnd"); + var _getOptions = Symbol("_getOptions"); + var _emittedSize = Symbol("_emittedSize"); + var _emittedIntegrity = Symbol("_emittedIntegrity"); + var _emittedVerified = Symbol("_emittedVerified"); + var IntegrityStream = class extends MiniPass { + constructor(opts) { + super(); + this.size = 0; + this.opts = opts; + this[_getOptions](); + const { algorithms = defaultOpts.algorithms } = opts; + this.algorithms = Array.from( + new Set(algorithms.concat(this.algorithm ? [this.algorithm] : [])) + ); + this.hashes = this.algorithms.map(crypto6.createHash); + } + [_getOptions]() { + const { + integrity, + size, + options + } = { ...defaultOpts, ...this.opts }; + this.sri = integrity ? parse2(integrity, this.opts) : null; + this.expectedSize = size; + this.goodSri = this.sri ? !!Object.keys(this.sri).length : false; + this.algorithm = this.goodSri ? this.sri.pickAlgorithm(this.opts) : null; + this.digests = this.goodSri ? this.sri[this.algorithm] : null; + this.optString = getOptString(options); + } + on(ev, handler) { + if (ev === "size" && this[_emittedSize]) { + return handler(this[_emittedSize]); + } + if (ev === "integrity" && this[_emittedIntegrity]) { + return handler(this[_emittedIntegrity]); + } + if (ev === "verified" && this[_emittedVerified]) { + return handler(this[_emittedVerified]); + } + return super.on(ev, handler); + } + emit(ev, data) { + if (ev === "end") { + this[_onEnd](); + } + return super.emit(ev, data); + } + write(data) { + this.size += data.length; + this.hashes.forEach((h) => h.update(data)); + return super.write(data); + } + [_onEnd]() { + if (!this.goodSri) { + this[_getOptions](); + } + const newSri = parse2(this.hashes.map((h, i) => { + return `${this.algorithms[i]}-${h.digest("base64")}${this.optString}`; + }).join(" "), this.opts); + const match = this.goodSri && newSri.match(this.sri, this.opts); + if (typeof this.expectedSize === "number" && this.size !== this.expectedSize) { + const err = new Error(`stream size mismatch when checking ${this.sri}. + Wanted: ${this.expectedSize} + Found: ${this.size}`); + err.code = "EBADSIZE"; + err.found = this.size; + err.expected = this.expectedSize; + err.sri = this.sri; + this.emit("error", err); + } else if (this.sri && !match) { + const err = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = this.digests; + err.algorithm = this.algorithm; + err.sri = this.sri; + this.emit("error", err); + } else { + this[_emittedSize] = this.size; + this.emit("size", this.size); + this[_emittedIntegrity] = newSri; + this.emit("integrity", newSri); + if (match) { + this[_emittedVerified] = match; + this.emit("verified", match); + } + } + } + }; + var Hash = class { + get isHash() { + return true; + } + constructor(hash, opts) { + opts = ssriOpts(opts); + const strict = !!opts.strict; + this.source = hash.trim(); + this.digest = ""; + this.algorithm = ""; + this.options = []; + const match = this.source.match( + strict ? STRICT_SRI_REGEX : SRI_REGEX + ); + if (!match) { + return; + } + if (strict && !SPEC_ALGORITHMS.some((a) => a === match[1])) { + return; + } + this.algorithm = match[1]; + this.digest = match[2]; + const rawOpts = match[3]; + if (rawOpts) { + this.options = rawOpts.slice(1).split("?"); + } + } + hexDigest() { + return this.digest && Buffer.from(this.digest, "base64").toString("hex"); + } + toJSON() { + return this.toString(); + } + toString(opts) { + opts = ssriOpts(opts); + if (opts.strict) { + if (!// The spec has very restricted productions for algorithms. + // https://www.w3.org/TR/CSP2/#source-list-syntax + (SPEC_ALGORITHMS.some((x) => x === this.algorithm) && // Usually, if someone insists on using a "different" base64, we + // leave it as-is, since there's multiple standards, and the + // specified is not a URL-safe variant. + // https://www.w3.org/TR/CSP2/#base64_value + this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars. + // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression + // https://tools.ietf.org/html/rfc5234#appendix-B.1 + this.options.every((opt) => opt.match(VCHAR_REGEX)))) { + return ""; + } + } + const options = this.options && this.options.length ? `?${this.options.join("?")}` : ""; + return `${this.algorithm}-${this.digest}${options}`; + } + }; + var Integrity = class { + get isIntegrity() { + return true; + } + toJSON() { + return this.toString(); + } + isEmpty() { + return Object.keys(this).length === 0; + } + toString(opts) { + opts = ssriOpts(opts); + let sep = opts.sep || " "; + if (opts.strict) { + sep = sep.replace(/\S+/g, " "); + } + return Object.keys(this).map((k) => { + return this[k].map((hash) => { + return Hash.prototype.toString.call(hash, opts); + }).filter((x) => x.length).join(sep); + }).filter((x) => x.length).join(sep); + } + concat(integrity, opts) { + opts = ssriOpts(opts); + const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts); + return parse2(`${this.toString(opts)} ${other}`, opts); + } + hexDigest() { + return parse2(this, { single: true }).hexDigest(); + } + // add additional hashes to an integrity value, but prevent + // *changing* an existing integrity hash. + merge(integrity, opts) { + opts = ssriOpts(opts); + const other = parse2(integrity, opts); + for (const algo in other) { + if (this[algo]) { + if (!this[algo].find((hash) => other[algo].find((otherhash) => hash.digest === otherhash.digest))) { + throw new Error("hashes do not match, cannot update integrity"); + } + } else { + this[algo] = other[algo]; + } + } + } + match(integrity, opts) { + opts = ssriOpts(opts); + const other = parse2(integrity, opts); + if (!other) { + return false; + } + const algo = other.pickAlgorithm(opts); + return this[algo] && other[algo] && this[algo].find( + (hash) => other[algo].find( + (otherhash) => hash.digest === otherhash.digest + ) + ) || false; + } + pickAlgorithm(opts) { + opts = ssriOpts(opts); + const pickAlgorithm = opts.pickAlgorithm; + const keys = Object.keys(this); + return keys.reduce((acc, algo) => { + return pickAlgorithm(acc, algo) || acc; + }); + } + }; + module2.exports.parse = parse2; + function parse2(sri, opts) { + if (!sri) { + return null; + } + opts = ssriOpts(opts); + if (typeof sri === "string") { + return _parse(sri, opts); + } else if (sri.algorithm && sri.digest) { + const fullSri = new Integrity(); + fullSri[sri.algorithm] = [sri]; + return _parse(stringify2(fullSri, opts), opts); + } else { + return _parse(stringify2(sri, opts), opts); + } + } + function _parse(integrity, opts) { + if (opts.single) { + return new Hash(integrity, opts); + } + const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => { + const hash = new Hash(string, opts); + if (hash.algorithm && hash.digest) { + const algo = hash.algorithm; + if (!acc[algo]) { + acc[algo] = []; + } + acc[algo].push(hash); + } + return acc; + }, new Integrity()); + return hashes.isEmpty() ? null : hashes; + } + module2.exports.stringify = stringify2; + function stringify2(obj, opts) { + opts = ssriOpts(opts); + if (obj.algorithm && obj.digest) { + return Hash.prototype.toString.call(obj, opts); + } else if (typeof obj === "string") { + return stringify2(parse2(obj, opts), opts); + } else { + return Integrity.prototype.toString.call(obj, opts); + } + } + module2.exports.fromHex = fromHex; + function fromHex(hexDigest, algorithm, opts) { + opts = ssriOpts(opts); + const optString = getOptString(opts.options); + return parse2( + `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`, + opts + ); + } + module2.exports.fromData = fromData; + function fromData(data, opts) { + opts = ssriOpts(opts); + const algorithms = opts.algorithms; + const optString = getOptString(opts.options); + return algorithms.reduce((acc, algo) => { + const digest = crypto6.createHash(algo).update(data).digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const hashAlgo = hash.algorithm; + if (!acc[hashAlgo]) { + acc[hashAlgo] = []; + } + acc[hashAlgo].push(hash); + } + return acc; + }, new Integrity()); + } + module2.exports.fromStream = fromStream; + function fromStream(stream, opts) { + opts = ssriOpts(opts); + const istream = integrityStream(opts); + return new Promise((resolve, reject) => { + stream.pipe(istream); + stream.on("error", reject); + istream.on("error", reject); + let sri; + istream.on("integrity", (s) => { + sri = s; + }); + istream.on("end", () => resolve(sri)); + istream.on("data", () => { + }); + }); + } + module2.exports.checkData = checkData; + function checkData(data, sri, opts) { + opts = ssriOpts(opts); + sri = parse2(sri, opts); + if (!sri || !Object.keys(sri).length) { + if (opts.error) { + throw Object.assign( + new Error("No valid integrity hashes to check against"), + { + code: "EINTEGRITY" + } + ); + } else { + return false; + } + } + const algorithm = sri.pickAlgorithm(opts); + const digest = crypto6.createHash(algorithm).update(data).digest("base64"); + const newSri = parse2({ algorithm, digest }); + const match = newSri.match(sri, opts); + if (match || !opts.error) { + return match; + } else if (typeof opts.size === "number" && data.length !== opts.size) { + const err = new Error(`data size mismatch when checking ${sri}. + Wanted: ${opts.size} + Found: ${data.length}`); + err.code = "EBADSIZE"; + err.found = data.length; + err.expected = opts.size; + err.sri = sri; + throw err; + } else { + const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = sri; + err.algorithm = algorithm; + err.sri = sri; + throw err; + } + } + module2.exports.checkStream = checkStream; + function checkStream(stream, sri, opts) { + opts = ssriOpts(opts); + opts.integrity = sri; + sri = parse2(sri, opts); + if (!sri || !Object.keys(sri).length) { + return Promise.reject(Object.assign( + new Error("No valid integrity hashes to check against"), + { + code: "EINTEGRITY" + } + )); + } + const checker = integrityStream(opts); + return new Promise((resolve, reject) => { + stream.pipe(checker); + stream.on("error", reject); + checker.on("error", reject); + let verified; + checker.on("verified", (s) => { + verified = s; + }); + checker.on("end", () => resolve(verified)); + checker.on("data", () => { + }); + }); + } + module2.exports.integrityStream = integrityStream; + function integrityStream(opts = {}) { + return new IntegrityStream(opts); + } + module2.exports.create = createIntegrity; + function createIntegrity(opts) { + opts = ssriOpts(opts); + const algorithms = opts.algorithms; + const optString = getOptString(opts.options); + const hashes = algorithms.map(crypto6.createHash); + return { + update: function(chunk, enc) { + hashes.forEach((h) => h.update(chunk, enc)); + return this; + }, + digest: function(enc) { + const integrity = algorithms.reduce((acc, algo) => { + const digest = hashes.shift().digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const hashAlgo = hash.algorithm; + if (!acc[hashAlgo]) { + acc[hashAlgo] = []; + } + acc[hashAlgo].push(hash); + } + return acc; + }, new Integrity()); + return integrity; + } + }; + } + var NODE_HASHES = new Set(crypto6.getHashes()); + var DEFAULT_PRIORITY = [ + "md5", + "whirlpool", + "sha1", + "sha224", + "sha256", + "sha384", + "sha512", + // TODO - it's unclear _which_ of these Node will actually use as its name + // for the algorithm, so we guesswork it based on the OpenSSL names. + "sha3", + "sha3-256", + "sha3-384", + "sha3-512", + "sha3_256", + "sha3_384", + "sha3_512" + ].filter((algo) => NODE_HASHES.has(algo)); + function getPrioritizedHash(algo1, algo2) { + return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2; + } + } +}); + +// ../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js +var require_buffer_from = __commonJS({ + "../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js"(exports2, module2) { + var toString = Object.prototype.toString; + var isModern = typeof Buffer !== "undefined" && typeof Buffer.alloc === "function" && typeof Buffer.allocUnsafe === "function" && typeof Buffer.from === "function"; + function isArrayBuffer(input) { + return toString.call(input).slice(8, -1) === "ArrayBuffer"; + } + function fromArrayBuffer(obj, byteOffset, length) { + byteOffset >>>= 0; + var maxLength = obj.byteLength - byteOffset; + if (maxLength < 0) { + throw new RangeError("'offset' is out of bounds"); + } + if (length === void 0) { + length = maxLength; + } else { + length >>>= 0; + if (length > maxLength) { + throw new RangeError("'length' is out of bounds"); + } + } + return isModern ? Buffer.from(obj.slice(byteOffset, byteOffset + length)) : new Buffer(new Uint8Array(obj.slice(byteOffset, byteOffset + length))); + } + function fromString(string, encoding) { + if (typeof encoding !== "string" || encoding === "") { + encoding = "utf8"; + } + if (!Buffer.isEncoding(encoding)) { + throw new TypeError('"encoding" must be a valid string encoding'); + } + return isModern ? Buffer.from(string, encoding) : new Buffer(string, encoding); + } + function bufferFrom(value, encodingOrOffset, length) { + if (typeof value === "number") { + throw new TypeError('"value" argument must not be a number'); + } + if (isArrayBuffer(value)) { + return fromArrayBuffer(value, encodingOrOffset, length); + } + if (typeof value === "string") { + return fromString(value, encodingOrOffset); + } + return isModern ? Buffer.from(value) : new Buffer(value); + } + module2.exports = bufferFrom; + } +}); + +// ../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js +var require_typedarray = __commonJS({ + "../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js"(exports2) { + var undefined2 = void 0; + var MAX_ARRAY_LENGTH = 1e5; + var ECMAScript = function() { + var opts = Object.prototype.toString, ophop = Object.prototype.hasOwnProperty; + return { + // Class returns internal [[Class]] property, used to avoid cross-frame instanceof issues: + Class: function(v) { + return opts.call(v).replace(/^\[object *|\]$/g, ""); + }, + HasProperty: function(o, p) { + return p in o; + }, + HasOwnProperty: function(o, p) { + return ophop.call(o, p); + }, + IsCallable: function(o) { + return typeof o === "function"; + }, + ToInt32: function(v) { + return v >> 0; + }, + ToUint32: function(v) { + return v >>> 0; + } + }; + }(); + var LN2 = Math.LN2; + var abs = Math.abs; + var floor = Math.floor; + var log2 = Math.log; + var min = Math.min; + var pow = Math.pow; + var round = Math.round; + function configureProperties(obj) { + if (getOwnPropNames && defineProp) { + var props = getOwnPropNames(obj), i; + for (i = 0; i < props.length; i += 1) { + defineProp(obj, props[i], { + value: obj[props[i]], + writable: false, + enumerable: false, + configurable: false + }); + } + } + } + var defineProp; + if (Object.defineProperty && function() { + try { + Object.defineProperty({}, "x", {}); + return true; + } catch (e) { + return false; + } + }()) { + defineProp = Object.defineProperty; + } else { + defineProp = function(o, p, desc) { + if (!o === Object(o)) + throw new TypeError("Object.defineProperty called on non-object"); + if (ECMAScript.HasProperty(desc, "get") && Object.prototype.__defineGetter__) { + Object.prototype.__defineGetter__.call(o, p, desc.get); + } + if (ECMAScript.HasProperty(desc, "set") && Object.prototype.__defineSetter__) { + Object.prototype.__defineSetter__.call(o, p, desc.set); + } + if (ECMAScript.HasProperty(desc, "value")) { + o[p] = desc.value; + } + return o; + }; + } + var getOwnPropNames = Object.getOwnPropertyNames || function(o) { + if (o !== Object(o)) + throw new TypeError("Object.getOwnPropertyNames called on non-object"); + var props = [], p; + for (p in o) { + if (ECMAScript.HasOwnProperty(o, p)) { + props.push(p); + } + } + return props; + }; + function makeArrayAccessors(obj) { + if (!defineProp) { + return; + } + if (obj.length > MAX_ARRAY_LENGTH) + throw new RangeError("Array too large for polyfill"); + function makeArrayAccessor(index) { + defineProp(obj, index, { + "get": function() { + return obj._getter(index); + }, + "set": function(v) { + obj._setter(index, v); + }, + enumerable: true, + configurable: false + }); + } + var i; + for (i = 0; i < obj.length; i += 1) { + makeArrayAccessor(i); + } + } + function as_signed(value, bits) { + var s = 32 - bits; + return value << s >> s; + } + function as_unsigned(value, bits) { + var s = 32 - bits; + return value << s >>> s; + } + function packI8(n) { + return [n & 255]; + } + function unpackI8(bytes) { + return as_signed(bytes[0], 8); + } + function packU8(n) { + return [n & 255]; + } + function unpackU8(bytes) { + return as_unsigned(bytes[0], 8); + } + function packU8Clamped(n) { + n = round(Number(n)); + return [n < 0 ? 0 : n > 255 ? 255 : n & 255]; + } + function packI16(n) { + return [n >> 8 & 255, n & 255]; + } + function unpackI16(bytes) { + return as_signed(bytes[0] << 8 | bytes[1], 16); + } + function packU16(n) { + return [n >> 8 & 255, n & 255]; + } + function unpackU16(bytes) { + return as_unsigned(bytes[0] << 8 | bytes[1], 16); + } + function packI32(n) { + return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; + } + function unpackI32(bytes) { + return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); + } + function packU32(n) { + return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; + } + function unpackU32(bytes) { + return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); + } + function packIEEE754(v, ebits, fbits) { + var bias = (1 << ebits - 1) - 1, s, e, f, ln, i, bits, str, bytes; + function roundToEven(n) { + var w = floor(n), f2 = n - w; + if (f2 < 0.5) + return w; + if (f2 > 0.5) + return w + 1; + return w % 2 ? w + 1 : w; + } + if (v !== v) { + e = (1 << ebits) - 1; + f = pow(2, fbits - 1); + s = 0; + } else if (v === Infinity || v === -Infinity) { + e = (1 << ebits) - 1; + f = 0; + s = v < 0 ? 1 : 0; + } else if (v === 0) { + e = 0; + f = 0; + s = 1 / v === -Infinity ? 1 : 0; + } else { + s = v < 0; + v = abs(v); + if (v >= pow(2, 1 - bias)) { + e = min(floor(log2(v) / LN2), 1023); + f = roundToEven(v / pow(2, e) * pow(2, fbits)); + if (f / pow(2, fbits) >= 2) { + e = e + 1; + f = 1; + } + if (e > bias) { + e = (1 << ebits) - 1; + f = 0; + } else { + e = e + bias; + f = f - pow(2, fbits); + } + } else { + e = 0; + f = roundToEven(v / pow(2, 1 - bias - fbits)); + } + } + bits = []; + for (i = fbits; i; i -= 1) { + bits.push(f % 2 ? 1 : 0); + f = floor(f / 2); + } + for (i = ebits; i; i -= 1) { + bits.push(e % 2 ? 1 : 0); + e = floor(e / 2); + } + bits.push(s ? 1 : 0); + bits.reverse(); + str = bits.join(""); + bytes = []; + while (str.length) { + bytes.push(parseInt(str.substring(0, 8), 2)); + str = str.substring(8); + } + return bytes; + } + function unpackIEEE754(bytes, ebits, fbits) { + var bits = [], i, j, b, str, bias, s, e, f; + for (i = bytes.length; i; i -= 1) { + b = bytes[i - 1]; + for (j = 8; j; j -= 1) { + bits.push(b % 2 ? 1 : 0); + b = b >> 1; + } + } + bits.reverse(); + str = bits.join(""); + bias = (1 << ebits - 1) - 1; + s = parseInt(str.substring(0, 1), 2) ? -1 : 1; + e = parseInt(str.substring(1, 1 + ebits), 2); + f = parseInt(str.substring(1 + ebits), 2); + if (e === (1 << ebits) - 1) { + return f !== 0 ? NaN : s * Infinity; + } else if (e > 0) { + return s * pow(2, e - bias) * (1 + f / pow(2, fbits)); + } else if (f !== 0) { + return s * pow(2, -(bias - 1)) * (f / pow(2, fbits)); + } else { + return s < 0 ? -0 : 0; + } + } + function unpackF64(b) { + return unpackIEEE754(b, 11, 52); + } + function packF64(v) { + return packIEEE754(v, 11, 52); + } + function unpackF32(b) { + return unpackIEEE754(b, 8, 23); + } + function packF32(v) { + return packIEEE754(v, 8, 23); + } + (function() { + var ArrayBuffer2 = function ArrayBuffer3(length) { + length = ECMAScript.ToInt32(length); + if (length < 0) + throw new RangeError("ArrayBuffer size is not a small enough positive integer"); + this.byteLength = length; + this._bytes = []; + this._bytes.length = length; + var i; + for (i = 0; i < this.byteLength; i += 1) { + this._bytes[i] = 0; + } + configureProperties(this); + }; + exports2.ArrayBuffer = exports2.ArrayBuffer || ArrayBuffer2; + var ArrayBufferView = function ArrayBufferView2() { + }; + function makeConstructor(bytesPerElement, pack, unpack) { + var ctor; + ctor = function(buffer, byteOffset, length) { + var array, sequence, i, s; + if (!arguments.length || typeof arguments[0] === "number") { + this.length = ECMAScript.ToInt32(arguments[0]); + if (length < 0) + throw new RangeError("ArrayBufferView size is not a small enough positive integer"); + this.byteLength = this.length * this.BYTES_PER_ELEMENT; + this.buffer = new ArrayBuffer2(this.byteLength); + this.byteOffset = 0; + } else if (typeof arguments[0] === "object" && arguments[0].constructor === ctor) { + array = arguments[0]; + this.length = array.length; + this.byteLength = this.length * this.BYTES_PER_ELEMENT; + this.buffer = new ArrayBuffer2(this.byteLength); + this.byteOffset = 0; + for (i = 0; i < this.length; i += 1) { + this._setter(i, array._getter(i)); + } + } else if (typeof arguments[0] === "object" && !(arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { + sequence = arguments[0]; + this.length = ECMAScript.ToUint32(sequence.length); + this.byteLength = this.length * this.BYTES_PER_ELEMENT; + this.buffer = new ArrayBuffer2(this.byteLength); + this.byteOffset = 0; + for (i = 0; i < this.length; i += 1) { + s = sequence[i]; + this._setter(i, Number(s)); + } + } else if (typeof arguments[0] === "object" && (arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { + this.buffer = buffer; + this.byteOffset = ECMAScript.ToUint32(byteOffset); + if (this.byteOffset > this.buffer.byteLength) { + throw new RangeError("byteOffset out of range"); + } + if (this.byteOffset % this.BYTES_PER_ELEMENT) { + throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size."); + } + if (arguments.length < 3) { + this.byteLength = this.buffer.byteLength - this.byteOffset; + if (this.byteLength % this.BYTES_PER_ELEMENT) { + throw new RangeError("length of buffer minus byteOffset not a multiple of the element size"); + } + this.length = this.byteLength / this.BYTES_PER_ELEMENT; + } else { + this.length = ECMAScript.ToUint32(length); + this.byteLength = this.length * this.BYTES_PER_ELEMENT; + } + if (this.byteOffset + this.byteLength > this.buffer.byteLength) { + throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); + } + } else { + throw new TypeError("Unexpected argument type(s)"); + } + this.constructor = ctor; + configureProperties(this); + makeArrayAccessors(this); + }; + ctor.prototype = new ArrayBufferView(); + ctor.prototype.BYTES_PER_ELEMENT = bytesPerElement; + ctor.prototype._pack = pack; + ctor.prototype._unpack = unpack; + ctor.BYTES_PER_ELEMENT = bytesPerElement; + ctor.prototype._getter = function(index) { + if (arguments.length < 1) + throw new SyntaxError("Not enough arguments"); + index = ECMAScript.ToUint32(index); + if (index >= this.length) { + return undefined2; + } + var bytes = [], i, o; + for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { + bytes.push(this.buffer._bytes[o]); + } + return this._unpack(bytes); + }; + ctor.prototype.get = ctor.prototype._getter; + ctor.prototype._setter = function(index, value) { + if (arguments.length < 2) + throw new SyntaxError("Not enough arguments"); + index = ECMAScript.ToUint32(index); + if (index >= this.length) { + return undefined2; + } + var bytes = this._pack(value), i, o; + for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { + this.buffer._bytes[o] = bytes[i]; + } + }; + ctor.prototype.set = function(index, value) { + if (arguments.length < 1) + throw new SyntaxError("Not enough arguments"); + var array, sequence, offset, len, i, s, d, byteOffset, byteLength, tmp; + if (typeof arguments[0] === "object" && arguments[0].constructor === this.constructor) { + array = arguments[0]; + offset = ECMAScript.ToUint32(arguments[1]); + if (offset + array.length > this.length) { + throw new RangeError("Offset plus length of array is out of range"); + } + byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT; + byteLength = array.length * this.BYTES_PER_ELEMENT; + if (array.buffer === this.buffer) { + tmp = []; + for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) { + tmp[i] = array.buffer._bytes[s]; + } + for (i = 0, d = byteOffset; i < byteLength; i += 1, d += 1) { + this.buffer._bytes[d] = tmp[i]; + } + } else { + for (i = 0, s = array.byteOffset, d = byteOffset; i < byteLength; i += 1, s += 1, d += 1) { + this.buffer._bytes[d] = array.buffer._bytes[s]; + } + } + } else if (typeof arguments[0] === "object" && typeof arguments[0].length !== "undefined") { + sequence = arguments[0]; + len = ECMAScript.ToUint32(sequence.length); + offset = ECMAScript.ToUint32(arguments[1]); + if (offset + len > this.length) { + throw new RangeError("Offset plus length of array is out of range"); + } + for (i = 0; i < len; i += 1) { + s = sequence[i]; + this._setter(offset + i, Number(s)); + } + } else { + throw new TypeError("Unexpected argument type(s)"); + } + }; + ctor.prototype.subarray = function(start, end) { + function clamp(v, min2, max) { + return v < min2 ? min2 : v > max ? max : v; + } + start = ECMAScript.ToInt32(start); + end = ECMAScript.ToInt32(end); + if (arguments.length < 1) { + start = 0; + } + if (arguments.length < 2) { + end = this.length; + } + if (start < 0) { + start = this.length + start; + } + if (end < 0) { + end = this.length + end; + } + start = clamp(start, 0, this.length); + end = clamp(end, 0, this.length); + var len = end - start; + if (len < 0) { + len = 0; + } + return new this.constructor( + this.buffer, + this.byteOffset + start * this.BYTES_PER_ELEMENT, + len + ); + }; + return ctor; + } + var Int8Array2 = makeConstructor(1, packI8, unpackI8); + var Uint8Array2 = makeConstructor(1, packU8, unpackU8); + var Uint8ClampedArray2 = makeConstructor(1, packU8Clamped, unpackU8); + var Int16Array2 = makeConstructor(2, packI16, unpackI16); + var Uint16Array2 = makeConstructor(2, packU16, unpackU16); + var Int32Array2 = makeConstructor(4, packI32, unpackI32); + var Uint32Array2 = makeConstructor(4, packU32, unpackU32); + var Float32Array2 = makeConstructor(4, packF32, unpackF32); + var Float64Array2 = makeConstructor(8, packF64, unpackF64); + exports2.Int8Array = exports2.Int8Array || Int8Array2; + exports2.Uint8Array = exports2.Uint8Array || Uint8Array2; + exports2.Uint8ClampedArray = exports2.Uint8ClampedArray || Uint8ClampedArray2; + exports2.Int16Array = exports2.Int16Array || Int16Array2; + exports2.Uint16Array = exports2.Uint16Array || Uint16Array2; + exports2.Int32Array = exports2.Int32Array || Int32Array2; + exports2.Uint32Array = exports2.Uint32Array || Uint32Array2; + exports2.Float32Array = exports2.Float32Array || Float32Array2; + exports2.Float64Array = exports2.Float64Array || Float64Array2; + })(); + (function() { + function r(array, index) { + return ECMAScript.IsCallable(array.get) ? array.get(index) : array[index]; + } + var IS_BIG_ENDIAN = function() { + var u16array = new exports2.Uint16Array([4660]), u8array = new exports2.Uint8Array(u16array.buffer); + return r(u8array, 0) === 18; + }(); + var DataView2 = function DataView3(buffer, byteOffset, byteLength) { + if (arguments.length === 0) { + buffer = new exports2.ArrayBuffer(0); + } else if (!(buffer instanceof exports2.ArrayBuffer || ECMAScript.Class(buffer) === "ArrayBuffer")) { + throw new TypeError("TypeError"); + } + this.buffer = buffer || new exports2.ArrayBuffer(0); + this.byteOffset = ECMAScript.ToUint32(byteOffset); + if (this.byteOffset > this.buffer.byteLength) { + throw new RangeError("byteOffset out of range"); + } + if (arguments.length < 3) { + this.byteLength = this.buffer.byteLength - this.byteOffset; + } else { + this.byteLength = ECMAScript.ToUint32(byteLength); + } + if (this.byteOffset + this.byteLength > this.buffer.byteLength) { + throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); + } + configureProperties(this); + }; + function makeGetter(arrayType) { + return function(byteOffset, littleEndian) { + byteOffset = ECMAScript.ToUint32(byteOffset); + if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { + throw new RangeError("Array index out of range"); + } + byteOffset += this.byteOffset; + var uint8Array = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT), bytes = [], i; + for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { + bytes.push(r(uint8Array, i)); + } + if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { + bytes.reverse(); + } + return r(new arrayType(new exports2.Uint8Array(bytes).buffer), 0); + }; + } + DataView2.prototype.getUint8 = makeGetter(exports2.Uint8Array); + DataView2.prototype.getInt8 = makeGetter(exports2.Int8Array); + DataView2.prototype.getUint16 = makeGetter(exports2.Uint16Array); + DataView2.prototype.getInt16 = makeGetter(exports2.Int16Array); + DataView2.prototype.getUint32 = makeGetter(exports2.Uint32Array); + DataView2.prototype.getInt32 = makeGetter(exports2.Int32Array); + DataView2.prototype.getFloat32 = makeGetter(exports2.Float32Array); + DataView2.prototype.getFloat64 = makeGetter(exports2.Float64Array); + function makeSetter(arrayType) { + return function(byteOffset, value, littleEndian) { + byteOffset = ECMAScript.ToUint32(byteOffset); + if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { + throw new RangeError("Array index out of range"); + } + var typeArray = new arrayType([value]), byteArray = new exports2.Uint8Array(typeArray.buffer), bytes = [], i, byteView; + for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { + bytes.push(r(byteArray, i)); + } + if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { + bytes.reverse(); + } + byteView = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT); + byteView.set(bytes); + }; + } + DataView2.prototype.setUint8 = makeSetter(exports2.Uint8Array); + DataView2.prototype.setInt8 = makeSetter(exports2.Int8Array); + DataView2.prototype.setUint16 = makeSetter(exports2.Uint16Array); + DataView2.prototype.setInt16 = makeSetter(exports2.Int16Array); + DataView2.prototype.setUint32 = makeSetter(exports2.Uint32Array); + DataView2.prototype.setInt32 = makeSetter(exports2.Int32Array); + DataView2.prototype.setFloat32 = makeSetter(exports2.Float32Array); + DataView2.prototype.setFloat64 = makeSetter(exports2.Float64Array); + exports2.DataView = exports2.DataView || DataView2; + })(); + } +}); + +// ../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js +var require_concat_stream = __commonJS({ + "../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js"(exports2, module2) { + var Writable = require_readable().Writable; + var inherits = require_inherits(); + var bufferFrom = require_buffer_from(); + if (typeof Uint8Array === "undefined") { + U8 = require_typedarray().Uint8Array; + } else { + U8 = Uint8Array; + } + var U8; + function ConcatStream(opts, cb) { + if (!(this instanceof ConcatStream)) + return new ConcatStream(opts, cb); + if (typeof opts === "function") { + cb = opts; + opts = {}; + } + if (!opts) + opts = {}; + var encoding = opts.encoding; + var shouldInferEncoding = false; + if (!encoding) { + shouldInferEncoding = true; + } else { + encoding = String(encoding).toLowerCase(); + if (encoding === "u8" || encoding === "uint8") { + encoding = "uint8array"; + } + } + Writable.call(this, { objectMode: true }); + this.encoding = encoding; + this.shouldInferEncoding = shouldInferEncoding; + if (cb) + this.on("finish", function() { + cb(this.getBody()); + }); + this.body = []; + } + module2.exports = ConcatStream; + inherits(ConcatStream, Writable); + ConcatStream.prototype._write = function(chunk, enc, next) { + this.body.push(chunk); + next(); + }; + ConcatStream.prototype.inferEncoding = function(buff) { + var firstBuffer = buff === void 0 ? this.body[0] : buff; + if (Buffer.isBuffer(firstBuffer)) + return "buffer"; + if (typeof Uint8Array !== "undefined" && firstBuffer instanceof Uint8Array) + return "uint8array"; + if (Array.isArray(firstBuffer)) + return "array"; + if (typeof firstBuffer === "string") + return "string"; + if (Object.prototype.toString.call(firstBuffer) === "[object Object]") + return "object"; + return "buffer"; + }; + ConcatStream.prototype.getBody = function() { + if (!this.encoding && this.body.length === 0) + return []; + if (this.shouldInferEncoding) + this.encoding = this.inferEncoding(); + if (this.encoding === "array") + return arrayConcat(this.body); + if (this.encoding === "string") + return stringConcat(this.body); + if (this.encoding === "buffer") + return bufferConcat(this.body); + if (this.encoding === "uint8array") + return u8Concat(this.body); + return this.body; + }; + var isArray = Array.isArray || function(arr) { + return Object.prototype.toString.call(arr) == "[object Array]"; + }; + function isArrayish(arr) { + return /Array\]$/.test(Object.prototype.toString.call(arr)); + } + function isBufferish(p) { + return typeof p === "string" || isArrayish(p) || p && typeof p.subarray === "function"; + } + function stringConcat(parts) { + var strings = []; + var needsToString = false; + for (var i = 0; i < parts.length; i++) { + var p = parts[i]; + if (typeof p === "string") { + strings.push(p); + } else if (Buffer.isBuffer(p)) { + strings.push(p); + } else if (isBufferish(p)) { + strings.push(bufferFrom(p)); + } else { + strings.push(bufferFrom(String(p))); + } + } + if (Buffer.isBuffer(parts[0])) { + strings = Buffer.concat(strings); + strings = strings.toString("utf8"); + } else { + strings = strings.join(""); + } + return strings; + } + function bufferConcat(parts) { + var bufs = []; + for (var i = 0; i < parts.length; i++) { + var p = parts[i]; + if (Buffer.isBuffer(p)) { + bufs.push(p); + } else if (isBufferish(p)) { + bufs.push(bufferFrom(p)); + } else { + bufs.push(bufferFrom(String(p))); + } + } + return Buffer.concat(bufs); + } + function arrayConcat(parts) { + var res = []; + for (var i = 0; i < parts.length; i++) { + res.push.apply(res, parts[i]); + } + return res; + } + function u8Concat(parts) { + var len = 0; + for (var i = 0; i < parts.length; i++) { + if (typeof parts[i] === "string") { + parts[i] = bufferFrom(parts[i]); + } + len += parts[i].length; + } + var u8 = new U8(len); + for (var i = 0, offset = 0; i < parts.length; i++) { + var part = parts[i]; + for (var j = 0; j < part.length; j++) { + u8[offset++] = part[j]; + } + } + return u8; + } + } +}); + +// ../store/cafs/lib/parseJson.js +var require_parseJson = __commonJS({ + "../store/cafs/lib/parseJson.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseJsonStream = exports2.parseJsonBuffer = void 0; + var concat_stream_1 = __importDefault4(require_concat_stream()); + var strip_bom_1 = __importDefault4(require_strip_bom()); + function parseJsonBuffer(buffer, deferred) { + try { + deferred.resolve(JSON.parse((0, strip_bom_1.default)(buffer.toString()))); + } catch (err) { + deferred.reject(err); + } + } + exports2.parseJsonBuffer = parseJsonBuffer; + function parseJsonStream(stream, deferred) { + const _concatStream = (0, concat_stream_1.default)((buffer) => { + parseJsonBuffer(buffer, deferred); + }); + stream.pipe(_concatStream); + return () => { + stream.unpipe(_concatStream); + }; + } + exports2.parseJsonStream = parseJsonStream; + } +}); + +// ../store/cafs/lib/addFilesFromDir.js +var require_addFilesFromDir = __commonJS({ + "../store/cafs/lib/addFilesFromDir.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addFilesFromDir = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var graceful_fs_1 = __importDefault4(require_lib15()); + var p_limit_12 = __importDefault4(require_p_limit()); + var parseJson_1 = require_parseJson(); + var limit = (0, p_limit_12.default)(20); + var MAX_BULK_SIZE = 1 * 1024 * 1024; + async function addFilesFromDir(cafs, dirname, manifest) { + const index = {}; + await _retrieveFileIntegrities(cafs, dirname, dirname, index, manifest); + if (manifest && !index["package.json"]) { + manifest.resolve(void 0); + } + return index; + } + exports2.addFilesFromDir = addFilesFromDir; + async function _retrieveFileIntegrities(cafs, rootDir, currDir, index, deferredManifest) { + try { + const files = await fs_1.promises.readdir(currDir); + await Promise.all(files.map(async (file) => { + const fullPath = path_1.default.join(currDir, file); + const stat = await fs_1.promises.stat(fullPath); + if (stat.isDirectory()) { + await _retrieveFileIntegrities(cafs, rootDir, fullPath, index); + return; + } + if (stat.isFile()) { + const relativePath = path_1.default.relative(rootDir, fullPath); + const writeResult = limit(async () => { + if (deferredManifest != null && rootDir === currDir && file === "package.json") { + const buffer = await graceful_fs_1.default.readFile(fullPath); + (0, parseJson_1.parseJsonBuffer)(buffer, deferredManifest); + return cafs.addBuffer(buffer, stat.mode); + } + if (stat.size < MAX_BULK_SIZE) { + const buffer = await graceful_fs_1.default.readFile(fullPath); + return cafs.addBuffer(buffer, stat.mode); + } + return cafs.addStream(graceful_fs_1.default.createReadStream(fullPath), stat.mode); + }); + index[relativePath] = { + mode: stat.mode, + size: stat.size, + writeResult + }; + } + })); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + } + } + } +}); + +// ../node_modules/.pnpm/through@2.3.8/node_modules/through/index.js +var require_through = __commonJS({ + "../node_modules/.pnpm/through@2.3.8/node_modules/through/index.js"(exports2, module2) { + var Stream = require("stream"); + exports2 = module2.exports = through; + through.through = through; + function through(write, end, opts) { + write = write || function(data) { + this.queue(data); + }; + end = end || function() { + this.queue(null); + }; + var ended = false, destroyed = false, buffer = [], _ended = false; + var stream = new Stream(); + stream.readable = stream.writable = true; + stream.paused = false; + stream.autoDestroy = !(opts && opts.autoDestroy === false); + stream.write = function(data) { + write.call(this, data); + return !stream.paused; + }; + function drain() { + while (buffer.length && !stream.paused) { + var data = buffer.shift(); + if (null === data) + return stream.emit("end"); + else + stream.emit("data", data); + } + } + stream.queue = stream.push = function(data) { + if (_ended) + return stream; + if (data === null) + _ended = true; + buffer.push(data); + drain(); + return stream; + }; + stream.on("end", function() { + stream.readable = false; + if (!stream.writable && stream.autoDestroy) + process.nextTick(function() { + stream.destroy(); + }); + }); + function _end() { + stream.writable = false; + end.call(stream); + if (!stream.readable && stream.autoDestroy) + stream.destroy(); + } + stream.end = function(data) { + if (ended) + return; + ended = true; + if (arguments.length) + stream.write(data); + _end(); + return stream; + }; + stream.destroy = function() { + if (destroyed) + return; + destroyed = true; + ended = true; + buffer.length = 0; + stream.writable = stream.readable = false; + stream.emit("close"); + return stream; + }; + stream.pause = function() { + if (stream.paused) + return; + stream.paused = true; + return stream; + }; + stream.resume = function() { + if (stream.paused) { + stream.paused = false; + stream.emit("resume"); + } + drain(); + if (!stream.paused) + stream.emit("drain"); + return stream; + }; + return stream; + } + } +}); + +// ../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bzip2.js +var require_bzip2 = __commonJS({ + "../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bzip2.js"(exports2, module2) { + function Bzip2Error(message3) { + this.name = "Bzip2Error"; + this.message = message3; + this.stack = new Error().stack; + } + Bzip2Error.prototype = new Error(); + var message2 = { + Error: function(message3) { + throw new Bzip2Error(message3); + } + }; + var bzip2 = {}; + bzip2.Bzip2Error = Bzip2Error; + bzip2.crcTable = [ + 0, + 79764919, + 159529838, + 222504665, + 319059676, + 398814059, + 445009330, + 507990021, + 638119352, + 583659535, + 797628118, + 726387553, + 890018660, + 835552979, + 1015980042, + 944750013, + 1276238704, + 1221641927, + 1167319070, + 1095957929, + 1595256236, + 1540665371, + 1452775106, + 1381403509, + 1780037320, + 1859660671, + 1671105958, + 1733955601, + 2031960084, + 2111593891, + 1889500026, + 1952343757, + 2552477408, + 2632100695, + 2443283854, + 2506133561, + 2334638140, + 2414271883, + 2191915858, + 2254759653, + 3190512472, + 3135915759, + 3081330742, + 3009969537, + 2905550212, + 2850959411, + 2762807018, + 2691435357, + 3560074640, + 3505614887, + 3719321342, + 3648080713, + 3342211916, + 3287746299, + 3467911202, + 3396681109, + 4063920168, + 4143685023, + 4223187782, + 4286162673, + 3779000052, + 3858754371, + 3904687514, + 3967668269, + 881225847, + 809987520, + 1023691545, + 969234094, + 662832811, + 591600412, + 771767749, + 717299826, + 311336399, + 374308984, + 453813921, + 533576470, + 25881363, + 88864420, + 134795389, + 214552010, + 2023205639, + 2086057648, + 1897238633, + 1976864222, + 1804852699, + 1867694188, + 1645340341, + 1724971778, + 1587496639, + 1516133128, + 1461550545, + 1406951526, + 1302016099, + 1230646740, + 1142491917, + 1087903418, + 2896545431, + 2825181984, + 2770861561, + 2716262478, + 3215044683, + 3143675388, + 3055782693, + 3001194130, + 2326604591, + 2389456536, + 2200899649, + 2280525302, + 2578013683, + 2640855108, + 2418763421, + 2498394922, + 3769900519, + 3832873040, + 3912640137, + 3992402750, + 4088425275, + 4151408268, + 4197601365, + 4277358050, + 3334271071, + 3263032808, + 3476998961, + 3422541446, + 3585640067, + 3514407732, + 3694837229, + 3640369242, + 1762451694, + 1842216281, + 1619975040, + 1682949687, + 2047383090, + 2127137669, + 1938468188, + 2001449195, + 1325665622, + 1271206113, + 1183200824, + 1111960463, + 1543535498, + 1489069629, + 1434599652, + 1363369299, + 622672798, + 568075817, + 748617968, + 677256519, + 907627842, + 853037301, + 1067152940, + 995781531, + 51762726, + 131386257, + 177728840, + 240578815, + 269590778, + 349224269, + 429104020, + 491947555, + 4046411278, + 4126034873, + 4172115296, + 4234965207, + 3794477266, + 3874110821, + 3953728444, + 4016571915, + 3609705398, + 3555108353, + 3735388376, + 3664026991, + 3290680682, + 3236090077, + 3449943556, + 3378572211, + 3174993278, + 3120533705, + 3032266256, + 2961025959, + 2923101090, + 2868635157, + 2813903052, + 2742672763, + 2604032198, + 2683796849, + 2461293480, + 2524268063, + 2284983834, + 2364738477, + 2175806836, + 2238787779, + 1569362073, + 1498123566, + 1409854455, + 1355396672, + 1317987909, + 1246755826, + 1192025387, + 1137557660, + 2072149281, + 2135122070, + 1912620623, + 1992383480, + 1753615357, + 1816598090, + 1627664531, + 1707420964, + 295390185, + 358241886, + 404320391, + 483945776, + 43990325, + 106832002, + 186451547, + 266083308, + 932423249, + 861060070, + 1041341759, + 986742920, + 613929101, + 542559546, + 756411363, + 701822548, + 3316196985, + 3244833742, + 3425377559, + 3370778784, + 3601682597, + 3530312978, + 3744426955, + 3689838204, + 3819031489, + 3881883254, + 3928223919, + 4007849240, + 4037393693, + 4100235434, + 4180117107, + 4259748804, + 2310601993, + 2373574846, + 2151335527, + 2231098320, + 2596047829, + 2659030626, + 2470359227, + 2550115596, + 2947551409, + 2876312838, + 2788305887, + 2733848168, + 3165939309, + 3094707162, + 3040238851, + 2985771188 + ]; + bzip2.array = function(bytes) { + var bit = 0, byte = 0; + var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255]; + return function(n) { + var result2 = 0; + while (n > 0) { + var left = 8 - bit; + if (n >= left) { + result2 <<= left; + result2 |= BITMASK[left] & bytes[byte++]; + bit = 0; + n -= left; + } else { + result2 <<= n; + result2 |= (bytes[byte] & BITMASK[n] << 8 - n - bit) >> 8 - n - bit; + bit += n; + n = 0; + } + } + return result2; + }; + }; + bzip2.simple = function(srcbuffer, stream) { + var bits = bzip2.array(srcbuffer); + var size = bzip2.header(bits); + var ret = false; + var bufsize = 1e5 * size; + var buf = new Int32Array(bufsize); + do { + ret = bzip2.decompress(bits, stream, buf, bufsize); + } while (!ret); + }; + bzip2.header = function(bits) { + this.byteCount = new Int32Array(256); + this.symToByte = new Uint8Array(256); + this.mtfSymbol = new Int32Array(256); + this.selectors = new Uint8Array(32768); + if (bits(8 * 3) != 4348520) + message2.Error("No magic number found"); + var i = bits(8) - 48; + if (i < 1 || i > 9) + message2.Error("Not a BZIP archive"); + return i; + }; + bzip2.decompress = function(bits, stream, buf, bufsize, streamCRC) { + var MAX_HUFCODE_BITS = 20; + var MAX_SYMBOLS = 258; + var SYMBOL_RUNA = 0; + var SYMBOL_RUNB = 1; + var GROUP_SIZE = 50; + var crc = 0 ^ -1; + for (var h = "", i = 0; i < 6; i++) + h += bits(8).toString(16); + if (h == "177245385090") { + var finalCRC = bits(32) | 0; + if (finalCRC !== streamCRC) + message2.Error("Error in bzip2: crc32 do not match"); + bits(null); + return null; + } + if (h != "314159265359") + message2.Error("eek not valid bzip data"); + var crcblock = bits(32) | 0; + if (bits(1)) + message2.Error("unsupported obsolete version"); + var origPtr = bits(24); + if (origPtr > bufsize) + message2.Error("Initial position larger than buffer size"); + var t = bits(16); + var symTotal = 0; + for (i = 0; i < 16; i++) { + if (t & 1 << 15 - i) { + var k = bits(16); + for (j = 0; j < 16; j++) { + if (k & 1 << 15 - j) { + this.symToByte[symTotal++] = 16 * i + j; + } + } + } + } + var groupCount = bits(3); + if (groupCount < 2 || groupCount > 6) + message2.Error("another error"); + var nSelectors = bits(15); + if (nSelectors == 0) + message2.Error("meh"); + for (var i = 0; i < groupCount; i++) + this.mtfSymbol[i] = i; + for (var i = 0; i < nSelectors; i++) { + for (var j = 0; bits(1); j++) + if (j >= groupCount) + message2.Error("whoops another error"); + var uc = this.mtfSymbol[j]; + for (var k = j - 1; k >= 0; k--) { + this.mtfSymbol[k + 1] = this.mtfSymbol[k]; + } + this.mtfSymbol[0] = uc; + this.selectors[i] = uc; + } + var symCount = symTotal + 2; + var groups = []; + var length = new Uint8Array(MAX_SYMBOLS), temp = new Uint16Array(MAX_HUFCODE_BITS + 1); + var hufGroup; + for (var j = 0; j < groupCount; j++) { + t = bits(5); + for (var i = 0; i < symCount; i++) { + while (true) { + if (t < 1 || t > MAX_HUFCODE_BITS) + message2.Error("I gave up a while ago on writing error messages"); + if (!bits(1)) + break; + if (!bits(1)) + t++; + else + t--; + } + length[i] = t; + } + var minLen, maxLen; + minLen = maxLen = length[0]; + for (var i = 1; i < symCount; i++) { + if (length[i] > maxLen) + maxLen = length[i]; + else if (length[i] < minLen) + minLen = length[i]; + } + hufGroup = groups[j] = {}; + hufGroup.permute = new Int32Array(MAX_SYMBOLS); + hufGroup.limit = new Int32Array(MAX_HUFCODE_BITS + 1); + hufGroup.base = new Int32Array(MAX_HUFCODE_BITS + 1); + hufGroup.minLen = minLen; + hufGroup.maxLen = maxLen; + var base = hufGroup.base; + var limit = hufGroup.limit; + var pp = 0; + for (var i = minLen; i <= maxLen; i++) + for (var t = 0; t < symCount; t++) + if (length[t] == i) + hufGroup.permute[pp++] = t; + for (i = minLen; i <= maxLen; i++) + temp[i] = limit[i] = 0; + for (i = 0; i < symCount; i++) + temp[length[i]]++; + pp = t = 0; + for (i = minLen; i < maxLen; i++) { + pp += temp[i]; + limit[i] = pp - 1; + pp <<= 1; + base[i + 1] = pp - (t += temp[i]); + } + limit[maxLen] = pp + temp[maxLen] - 1; + base[minLen] = 0; + } + for (var i = 0; i < 256; i++) { + this.mtfSymbol[i] = i; + this.byteCount[i] = 0; + } + var runPos, count, symCount, selector; + runPos = count = symCount = selector = 0; + while (true) { + if (!symCount--) { + symCount = GROUP_SIZE - 1; + if (selector >= nSelectors) + message2.Error("meow i'm a kitty, that's an error"); + hufGroup = groups[this.selectors[selector++]]; + base = hufGroup.base; + limit = hufGroup.limit; + } + i = hufGroup.minLen; + j = bits(i); + while (true) { + if (i > hufGroup.maxLen) + message2.Error("rawr i'm a dinosaur"); + if (j <= limit[i]) + break; + i++; + j = j << 1 | bits(1); + } + j -= base[i]; + if (j < 0 || j >= MAX_SYMBOLS) + message2.Error("moo i'm a cow"); + var nextSym = hufGroup.permute[j]; + if (nextSym == SYMBOL_RUNA || nextSym == SYMBOL_RUNB) { + if (!runPos) { + runPos = 1; + t = 0; + } + if (nextSym == SYMBOL_RUNA) + t += runPos; + else + t += 2 * runPos; + runPos <<= 1; + continue; + } + if (runPos) { + runPos = 0; + if (count + t > bufsize) + message2.Error("Boom."); + uc = this.symToByte[this.mtfSymbol[0]]; + this.byteCount[uc] += t; + while (t--) + buf[count++] = uc; + } + if (nextSym > symTotal) + break; + if (count >= bufsize) + message2.Error("I can't think of anything. Error"); + i = nextSym - 1; + uc = this.mtfSymbol[i]; + for (var k = i - 1; k >= 0; k--) { + this.mtfSymbol[k + 1] = this.mtfSymbol[k]; + } + this.mtfSymbol[0] = uc; + uc = this.symToByte[uc]; + this.byteCount[uc]++; + buf[count++] = uc; + } + if (origPtr < 0 || origPtr >= count) + message2.Error("I'm a monkey and I'm throwing something at someone, namely you"); + var j = 0; + for (var i = 0; i < 256; i++) { + k = j + this.byteCount[i]; + this.byteCount[i] = j; + j = k; + } + for (var i = 0; i < count; i++) { + uc = buf[i] & 255; + buf[this.byteCount[uc]] |= i << 8; + this.byteCount[uc]++; + } + var pos = 0, current = 0, run = 0; + if (count) { + pos = buf[origPtr]; + current = pos & 255; + pos >>= 8; + run = -1; + } + count = count; + var copies, previous, outbyte; + while (count) { + count--; + previous = current; + pos = buf[pos]; + current = pos & 255; + pos >>= 8; + if (run++ == 3) { + copies = current; + outbyte = previous; + current = -1; + } else { + copies = 1; + outbyte = current; + } + while (copies--) { + crc = (crc << 8 ^ this.crcTable[(crc >> 24 ^ outbyte) & 255]) & 4294967295; + stream(outbyte); + } + if (current != previous) + run = 0; + } + crc = (crc ^ -1) >>> 0; + if ((crc | 0) != (crcblock | 0)) + message2.Error("Error in bzip2: crc32 do not match"); + streamCRC = (crc ^ (streamCRC << 1 | streamCRC >>> 31)) & 4294967295; + return streamCRC; + }; + module2.exports = bzip2; + } +}); + +// ../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bit_iterator.js +var require_bit_iterator = __commonJS({ + "../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bit_iterator.js"(exports2, module2) { + var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255]; + module2.exports = function bitIterator(nextBuffer) { + var bit = 0, byte = 0; + var bytes = nextBuffer(); + var f = function(n) { + if (n === null && bit != 0) { + bit = 0; + byte++; + return; + } + var result2 = 0; + while (n > 0) { + if (byte >= bytes.length) { + byte = 0; + bytes = nextBuffer(); + } + var left = 8 - bit; + if (bit === 0 && n > 0) + f.bytesRead++; + if (n >= left) { + result2 <<= left; + result2 |= BITMASK[left] & bytes[byte++]; + bit = 0; + n -= left; + } else { + result2 <<= n; + result2 |= (bytes[byte] & BITMASK[n] << 8 - n - bit) >> 8 - n - bit; + bit += n; + n = 0; + } + } + return result2; + }; + f.bytesRead = 0; + return f; + }; + } +}); + +// ../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/index.js +var require_unbzip2_stream = __commonJS({ + "../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/index.js"(exports2, module2) { + var through = require_through(); + var bz2 = require_bzip2(); + var bitIterator = require_bit_iterator(); + module2.exports = unbzip2Stream; + function unbzip2Stream() { + var bufferQueue = []; + var hasBytes = 0; + var blockSize = 0; + var broken = false; + var done = false; + var bitReader = null; + var streamCRC = null; + function decompressBlock(push) { + if (!blockSize) { + blockSize = bz2.header(bitReader); + streamCRC = 0; + return true; + } else { + var bufsize = 1e5 * blockSize; + var buf = new Int32Array(bufsize); + var chunk = []; + var f = function(b) { + chunk.push(b); + }; + streamCRC = bz2.decompress(bitReader, f, buf, bufsize, streamCRC); + if (streamCRC === null) { + blockSize = 0; + return false; + } else { + push(Buffer.from(chunk)); + return true; + } + } + } + var outlength = 0; + function decompressAndQueue(stream) { + if (broken) + return; + try { + return decompressBlock(function(d) { + stream.queue(d); + if (d !== null) { + outlength += d.length; + } else { + } + }); + } catch (e) { + stream.emit("error", e); + broken = true; + return false; + } + } + return through( + function write(data) { + bufferQueue.push(data); + hasBytes += data.length; + if (bitReader === null) { + bitReader = bitIterator(function() { + return bufferQueue.shift(); + }); + } + while (!broken && hasBytes - bitReader.bytesRead + 1 >= (25e3 + 1e5 * blockSize || 4)) { + decompressAndQueue(this); + } + }, + function end(x) { + while (!broken && bitReader && hasBytes > bitReader.bytesRead) { + decompressAndQueue(this); + } + if (!broken) { + if (streamCRC !== null) + this.emit("error", new Error("input stream ended prematurely")); + this.queue(null); + } + } + ); + } + } +}); + +// ../node_modules/.pnpm/is-bzip2@1.0.0/node_modules/is-bzip2/index.js +var require_is_bzip2 = __commonJS({ + "../node_modules/.pnpm/is-bzip2@1.0.0/node_modules/is-bzip2/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(buf) { + if (!buf || buf.length < 3) { + return false; + } + return buf[0] === 66 && buf[1] === 90 && buf[2] === 104; + }; + } +}); + +// ../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js +var require_process_nextick_args = __commonJS({ + "../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js"(exports2, module2) { + "use strict"; + if (typeof process === "undefined" || !process.version || process.version.indexOf("v0.") === 0 || process.version.indexOf("v1.") === 0 && process.version.indexOf("v1.8.") !== 0) { + module2.exports = { nextTick }; + } else { + module2.exports = process; + } + function nextTick(fn2, arg1, arg2, arg3) { + if (typeof fn2 !== "function") { + throw new TypeError('"callback" argument must be a function'); + } + var len = arguments.length; + var args2, i; + switch (len) { + case 0: + case 1: + return process.nextTick(fn2); + case 2: + return process.nextTick(function afterTickOne() { + fn2.call(null, arg1); + }); + case 3: + return process.nextTick(function afterTickTwo() { + fn2.call(null, arg1, arg2); + }); + case 4: + return process.nextTick(function afterTickThree() { + fn2.call(null, arg1, arg2, arg3); + }); + default: + args2 = new Array(len - 1); + i = 0; + while (i < args2.length) { + args2[i++] = arguments[i]; + } + return process.nextTick(function afterTick() { + fn2.apply(null, args2); + }); + } + } + } +}); + +// ../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js +var require_isarray = __commonJS({ + "../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js"(exports2, module2) { + var toString = {}.toString; + module2.exports = Array.isArray || function(arr) { + return toString.call(arr) == "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js +var require_stream7 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { + module2.exports = require("stream"); + } +}); + +// ../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js +var require_safe_buffer2 = __commonJS({ + "../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js"(exports2, module2) { + var buffer = require("buffer"); + var Buffer2 = buffer.Buffer; + function copyProps(src, dst) { + for (var key in src) { + dst[key] = src[key]; + } + } + if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { + module2.exports = buffer; + } else { + copyProps(buffer, exports2); + exports2.Buffer = SafeBuffer; + } + function SafeBuffer(arg, encodingOrOffset, length) { + return Buffer2(arg, encodingOrOffset, length); + } + copyProps(Buffer2, SafeBuffer); + SafeBuffer.from = function(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + throw new TypeError("Argument must not be a number"); + } + return Buffer2(arg, encodingOrOffset, length); + }; + SafeBuffer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + var buf = Buffer2(size); + if (fill !== void 0) { + if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + } else { + buf.fill(0); + } + return buf; + }; + SafeBuffer.allocUnsafe = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return Buffer2(size); + }; + SafeBuffer.allocUnsafeSlow = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return buffer.SlowBuffer(size); + }; + } +}); + +// ../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js +var require_util6 = __commonJS({ + "../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js"(exports2) { + function isArray(arg) { + if (Array.isArray) { + return Array.isArray(arg); + } + return objectToString(arg) === "[object Array]"; + } + exports2.isArray = isArray; + function isBoolean(arg) { + return typeof arg === "boolean"; + } + exports2.isBoolean = isBoolean; + function isNull(arg) { + return arg === null; + } + exports2.isNull = isNull; + function isNullOrUndefined(arg) { + return arg == null; + } + exports2.isNullOrUndefined = isNullOrUndefined; + function isNumber(arg) { + return typeof arg === "number"; + } + exports2.isNumber = isNumber; + function isString(arg) { + return typeof arg === "string"; + } + exports2.isString = isString; + function isSymbol(arg) { + return typeof arg === "symbol"; + } + exports2.isSymbol = isSymbol; + function isUndefined(arg) { + return arg === void 0; + } + exports2.isUndefined = isUndefined; + function isRegExp(re) { + return objectToString(re) === "[object RegExp]"; + } + exports2.isRegExp = isRegExp; + function isObject(arg) { + return typeof arg === "object" && arg !== null; + } + exports2.isObject = isObject; + function isDate(d) { + return objectToString(d) === "[object Date]"; + } + exports2.isDate = isDate; + function isError(e) { + return objectToString(e) === "[object Error]" || e instanceof Error; + } + exports2.isError = isError; + function isFunction(arg) { + return typeof arg === "function"; + } + exports2.isFunction = isFunction; + function isPrimitive(arg) { + return arg === null || typeof arg === "boolean" || typeof arg === "number" || typeof arg === "string" || typeof arg === "symbol" || // ES6 symbol + typeof arg === "undefined"; + } + exports2.isPrimitive = isPrimitive; + exports2.isBuffer = require("buffer").Buffer.isBuffer; + function objectToString(o) { + return Object.prototype.toString.call(o); + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js +var require_BufferList = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js"(exports2, module2) { + "use strict"; + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + var Buffer2 = require_safe_buffer2().Buffer; + var util = require("util"); + function copyBuffer(src, target, offset) { + src.copy(target, offset); + } + module2.exports = function() { + function BufferList() { + _classCallCheck(this, BufferList); + this.head = null; + this.tail = null; + this.length = 0; + } + BufferList.prototype.push = function push(v) { + var entry = { data: v, next: null }; + if (this.length > 0) + this.tail.next = entry; + else + this.head = entry; + this.tail = entry; + ++this.length; + }; + BufferList.prototype.unshift = function unshift(v) { + var entry = { data: v, next: this.head }; + if (this.length === 0) + this.tail = entry; + this.head = entry; + ++this.length; + }; + BufferList.prototype.shift = function shift() { + if (this.length === 0) + return; + var ret = this.head.data; + if (this.length === 1) + this.head = this.tail = null; + else + this.head = this.head.next; + --this.length; + return ret; + }; + BufferList.prototype.clear = function clear() { + this.head = this.tail = null; + this.length = 0; + }; + BufferList.prototype.join = function join(s) { + if (this.length === 0) + return ""; + var p = this.head; + var ret = "" + p.data; + while (p = p.next) { + ret += s + p.data; + } + return ret; + }; + BufferList.prototype.concat = function concat(n) { + if (this.length === 0) + return Buffer2.alloc(0); + var ret = Buffer2.allocUnsafe(n >>> 0); + var p = this.head; + var i = 0; + while (p) { + copyBuffer(p.data, ret, i); + i += p.data.length; + p = p.next; + } + return ret; + }; + return BufferList; + }(); + if (util && util.inspect && util.inspect.custom) { + module2.exports.prototype[util.inspect.custom] = function() { + var obj = util.inspect({ length: this.length }); + return this.constructor.name + " " + obj; + }; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js +var require_destroy2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + function destroy(err, cb) { + var _this = this; + var readableDestroyed = this._readableState && this._readableState.destroyed; + var writableDestroyed = this._writableState && this._writableState.destroyed; + if (readableDestroyed || writableDestroyed) { + if (cb) { + cb(err); + } else if (err) { + if (!this._writableState) { + pna.nextTick(emitErrorNT, this, err); + } else if (!this._writableState.errorEmitted) { + this._writableState.errorEmitted = true; + pna.nextTick(emitErrorNT, this, err); + } + } + return this; + } + if (this._readableState) { + this._readableState.destroyed = true; + } + if (this._writableState) { + this._writableState.destroyed = true; + } + this._destroy(err || null, function(err2) { + if (!cb && err2) { + if (!_this._writableState) { + pna.nextTick(emitErrorNT, _this, err2); + } else if (!_this._writableState.errorEmitted) { + _this._writableState.errorEmitted = true; + pna.nextTick(emitErrorNT, _this, err2); + } + } else if (cb) { + cb(err2); + } + }); + return this; + } + function undestroy() { + if (this._readableState) { + this._readableState.destroyed = false; + this._readableState.reading = false; + this._readableState.ended = false; + this._readableState.endEmitted = false; + } + if (this._writableState) { + this._writableState.destroyed = false; + this._writableState.ended = false; + this._writableState.ending = false; + this._writableState.finalCalled = false; + this._writableState.prefinished = false; + this._writableState.finished = false; + this._writableState.errorEmitted = false; + } + } + function emitErrorNT(self2, err) { + self2.emit("error", err); + } + module2.exports = { + destroy, + undestroy + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js +var require_stream_writable2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + module2.exports = Writable; + function CorkedRequest(state) { + var _this = this; + this.next = null; + this.entry = null; + this.finish = function() { + onCorkedFinish(_this, state); + }; + } + var asyncWrite = !process.browser && ["v0.10", "v0.9."].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; + var Duplex; + Writable.WritableState = WritableState; + var util = Object.create(require_util6()); + util.inherits = require_inherits(); + var internalUtil = { + deprecate: require_node2() + }; + var Stream = require_stream7(); + var Buffer2 = require_safe_buffer2().Buffer; + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { + }; + function _uint8ArrayToBuffer(chunk) { + return Buffer2.from(chunk); + } + function _isUint8Array(obj) { + return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array; + } + var destroyImpl = require_destroy2(); + util.inherits(Writable, Stream); + function nop() { + } + function WritableState(options, stream) { + Duplex = Duplex || require_stream_duplex2(); + options = options || {}; + var isDuplex = stream instanceof Duplex; + this.objectMode = !!options.objectMode; + if (isDuplex) + this.objectMode = this.objectMode || !!options.writableObjectMode; + var hwm = options.highWaterMark; + var writableHwm = options.writableHighWaterMark; + var defaultHwm = this.objectMode ? 16 : 16 * 1024; + if (hwm || hwm === 0) + this.highWaterMark = hwm; + else if (isDuplex && (writableHwm || writableHwm === 0)) + this.highWaterMark = writableHwm; + else + this.highWaterMark = defaultHwm; + this.highWaterMark = Math.floor(this.highWaterMark); + this.finalCalled = false; + this.needDrain = false; + this.ending = false; + this.ended = false; + this.finished = false; + this.destroyed = false; + var noDecode = options.decodeStrings === false; + this.decodeStrings = !noDecode; + this.defaultEncoding = options.defaultEncoding || "utf8"; + this.length = 0; + this.writing = false; + this.corked = 0; + this.sync = true; + this.bufferProcessing = false; + this.onwrite = function(er) { + onwrite(stream, er); + }; + this.writecb = null; + this.writelen = 0; + this.bufferedRequest = null; + this.lastBufferedRequest = null; + this.pendingcb = 0; + this.prefinished = false; + this.errorEmitted = false; + this.bufferedRequestCount = 0; + this.corkedRequestsFree = new CorkedRequest(this); + } + WritableState.prototype.getBuffer = function getBuffer() { + var current = this.bufferedRequest; + var out = []; + while (current) { + out.push(current); + current = current.next; + } + return out; + }; + (function() { + try { + Object.defineProperty(WritableState.prototype, "buffer", { + get: internalUtil.deprecate(function() { + return this.getBuffer(); + }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") + }); + } catch (_) { + } + })(); + var realHasInstance; + if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { + realHasInstance = Function.prototype[Symbol.hasInstance]; + Object.defineProperty(Writable, Symbol.hasInstance, { + value: function(object) { + if (realHasInstance.call(this, object)) + return true; + if (this !== Writable) + return false; + return object && object._writableState instanceof WritableState; + } + }); + } else { + realHasInstance = function(object) { + return object instanceof this; + }; + } + function Writable(options) { + Duplex = Duplex || require_stream_duplex2(); + if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) { + return new Writable(options); + } + this._writableState = new WritableState(options, this); + this.writable = true; + if (options) { + if (typeof options.write === "function") + this._write = options.write; + if (typeof options.writev === "function") + this._writev = options.writev; + if (typeof options.destroy === "function") + this._destroy = options.destroy; + if (typeof options.final === "function") + this._final = options.final; + } + Stream.call(this); + } + Writable.prototype.pipe = function() { + this.emit("error", new Error("Cannot pipe, not readable")); + }; + function writeAfterEnd(stream, cb) { + var er = new Error("write after end"); + stream.emit("error", er); + pna.nextTick(cb, er); + } + function validChunk(stream, state, chunk, cb) { + var valid = true; + var er = false; + if (chunk === null) { + er = new TypeError("May not write null values to stream"); + } else if (typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { + er = new TypeError("Invalid non-string/buffer chunk"); + } + if (er) { + stream.emit("error", er); + pna.nextTick(cb, er); + valid = false; + } + return valid; + } + Writable.prototype.write = function(chunk, encoding, cb) { + var state = this._writableState; + var ret = false; + var isBuf = !state.objectMode && _isUint8Array(chunk); + if (isBuf && !Buffer2.isBuffer(chunk)) { + chunk = _uint8ArrayToBuffer(chunk); + } + if (typeof encoding === "function") { + cb = encoding; + encoding = null; + } + if (isBuf) + encoding = "buffer"; + else if (!encoding) + encoding = state.defaultEncoding; + if (typeof cb !== "function") + cb = nop; + if (state.ended) + writeAfterEnd(this, cb); + else if (isBuf || validChunk(this, state, chunk, cb)) { + state.pendingcb++; + ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); + } + return ret; + }; + Writable.prototype.cork = function() { + var state = this._writableState; + state.corked++; + }; + Writable.prototype.uncork = function() { + var state = this._writableState; + if (state.corked) { + state.corked--; + if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) + clearBuffer(this, state); + } + }; + Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { + if (typeof encoding === "string") + encoding = encoding.toLowerCase(); + if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) + throw new TypeError("Unknown encoding: " + encoding); + this._writableState.defaultEncoding = encoding; + return this; + }; + function decodeChunk(state, chunk, encoding) { + if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { + chunk = Buffer2.from(chunk, encoding); + } + return chunk; + } + Object.defineProperty(Writable.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._writableState.highWaterMark; + } + }); + function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { + if (!isBuf) { + var newChunk = decodeChunk(state, chunk, encoding); + if (chunk !== newChunk) { + isBuf = true; + encoding = "buffer"; + chunk = newChunk; + } + } + var len = state.objectMode ? 1 : chunk.length; + state.length += len; + var ret = state.length < state.highWaterMark; + if (!ret) + state.needDrain = true; + if (state.writing || state.corked) { + var last = state.lastBufferedRequest; + state.lastBufferedRequest = { + chunk, + encoding, + isBuf, + callback: cb, + next: null + }; + if (last) { + last.next = state.lastBufferedRequest; + } else { + state.bufferedRequest = state.lastBufferedRequest; + } + state.bufferedRequestCount += 1; + } else { + doWrite(stream, state, false, len, chunk, encoding, cb); + } + return ret; + } + function doWrite(stream, state, writev, len, chunk, encoding, cb) { + state.writelen = len; + state.writecb = cb; + state.writing = true; + state.sync = true; + if (writev) + stream._writev(chunk, state.onwrite); + else + stream._write(chunk, encoding, state.onwrite); + state.sync = false; + } + function onwriteError(stream, state, sync, er, cb) { + --state.pendingcb; + if (sync) { + pna.nextTick(cb, er); + pna.nextTick(finishMaybe, stream, state); + stream._writableState.errorEmitted = true; + stream.emit("error", er); + } else { + cb(er); + stream._writableState.errorEmitted = true; + stream.emit("error", er); + finishMaybe(stream, state); + } + } + function onwriteStateUpdate(state) { + state.writing = false; + state.writecb = null; + state.length -= state.writelen; + state.writelen = 0; + } + function onwrite(stream, er) { + var state = stream._writableState; + var sync = state.sync; + var cb = state.writecb; + onwriteStateUpdate(state); + if (er) + onwriteError(stream, state, sync, er, cb); + else { + var finished = needFinish(state); + if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { + clearBuffer(stream, state); + } + if (sync) { + asyncWrite(afterWrite, stream, state, finished, cb); + } else { + afterWrite(stream, state, finished, cb); + } + } + } + function afterWrite(stream, state, finished, cb) { + if (!finished) + onwriteDrain(stream, state); + state.pendingcb--; + cb(); + finishMaybe(stream, state); + } + function onwriteDrain(stream, state) { + if (state.length === 0 && state.needDrain) { + state.needDrain = false; + stream.emit("drain"); + } + } + function clearBuffer(stream, state) { + state.bufferProcessing = true; + var entry = state.bufferedRequest; + if (stream._writev && entry && entry.next) { + var l = state.bufferedRequestCount; + var buffer = new Array(l); + var holder = state.corkedRequestsFree; + holder.entry = entry; + var count = 0; + var allBuffers = true; + while (entry) { + buffer[count] = entry; + if (!entry.isBuf) + allBuffers = false; + entry = entry.next; + count += 1; + } + buffer.allBuffers = allBuffers; + doWrite(stream, state, true, state.length, buffer, "", holder.finish); + state.pendingcb++; + state.lastBufferedRequest = null; + if (holder.next) { + state.corkedRequestsFree = holder.next; + holder.next = null; + } else { + state.corkedRequestsFree = new CorkedRequest(state); + } + state.bufferedRequestCount = 0; + } else { + while (entry) { + var chunk = entry.chunk; + var encoding = entry.encoding; + var cb = entry.callback; + var len = state.objectMode ? 1 : chunk.length; + doWrite(stream, state, false, len, chunk, encoding, cb); + entry = entry.next; + state.bufferedRequestCount--; + if (state.writing) { + break; + } + } + if (entry === null) + state.lastBufferedRequest = null; + } + state.bufferedRequest = entry; + state.bufferProcessing = false; + } + Writable.prototype._write = function(chunk, encoding, cb) { + cb(new Error("_write() is not implemented")); + }; + Writable.prototype._writev = null; + Writable.prototype.end = function(chunk, encoding, cb) { + var state = this._writableState; + if (typeof chunk === "function") { + cb = chunk; + chunk = null; + encoding = null; + } else if (typeof encoding === "function") { + cb = encoding; + encoding = null; + } + if (chunk !== null && chunk !== void 0) + this.write(chunk, encoding); + if (state.corked) { + state.corked = 1; + this.uncork(); + } + if (!state.ending) + endWritable(this, state, cb); + }; + function needFinish(state) { + return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; + } + function callFinal(stream, state) { + stream._final(function(err) { + state.pendingcb--; + if (err) { + stream.emit("error", err); + } + state.prefinished = true; + stream.emit("prefinish"); + finishMaybe(stream, state); + }); + } + function prefinish(stream, state) { + if (!state.prefinished && !state.finalCalled) { + if (typeof stream._final === "function") { + state.pendingcb++; + state.finalCalled = true; + pna.nextTick(callFinal, stream, state); + } else { + state.prefinished = true; + stream.emit("prefinish"); + } + } + } + function finishMaybe(stream, state) { + var need = needFinish(state); + if (need) { + prefinish(stream, state); + if (state.pendingcb === 0) { + state.finished = true; + stream.emit("finish"); + } + } + return need; + } + function endWritable(stream, state, cb) { + state.ending = true; + finishMaybe(stream, state); + if (cb) { + if (state.finished) + pna.nextTick(cb); + else + stream.once("finish", cb); + } + state.ended = true; + stream.writable = false; + } + function onCorkedFinish(corkReq, state, err) { + var entry = corkReq.entry; + corkReq.entry = null; + while (entry) { + var cb = entry.callback; + state.pendingcb--; + cb(err); + entry = entry.next; + } + state.corkedRequestsFree.next = corkReq; + } + Object.defineProperty(Writable.prototype, "destroyed", { + get: function() { + if (this._writableState === void 0) { + return false; + } + return this._writableState.destroyed; + }, + set: function(value) { + if (!this._writableState) { + return; + } + this._writableState.destroyed = value; + } + }); + Writable.prototype.destroy = destroyImpl.destroy; + Writable.prototype._undestroy = destroyImpl.undestroy; + Writable.prototype._destroy = function(err, cb) { + this.end(); + cb(err); + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js +var require_stream_duplex2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + var objectKeys = Object.keys || function(obj) { + var keys2 = []; + for (var key in obj) { + keys2.push(key); + } + return keys2; + }; + module2.exports = Duplex; + var util = Object.create(require_util6()); + util.inherits = require_inherits(); + var Readable = require_stream_readable2(); + var Writable = require_stream_writable2(); + util.inherits(Duplex, Readable); + { + keys = objectKeys(Writable.prototype); + for (v = 0; v < keys.length; v++) { + method = keys[v]; + if (!Duplex.prototype[method]) + Duplex.prototype[method] = Writable.prototype[method]; + } + } + var keys; + var method; + var v; + function Duplex(options) { + if (!(this instanceof Duplex)) + return new Duplex(options); + Readable.call(this, options); + Writable.call(this, options); + if (options && options.readable === false) + this.readable = false; + if (options && options.writable === false) + this.writable = false; + this.allowHalfOpen = true; + if (options && options.allowHalfOpen === false) + this.allowHalfOpen = false; + this.once("end", onend); + } + Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._writableState.highWaterMark; + } + }); + function onend() { + if (this.allowHalfOpen || this._writableState.ended) + return; + pna.nextTick(onEndNT, this); + } + function onEndNT(self2) { + self2.end(); + } + Object.defineProperty(Duplex.prototype, "destroyed", { + get: function() { + if (this._readableState === void 0 || this._writableState === void 0) { + return false; + } + return this._readableState.destroyed && this._writableState.destroyed; + }, + set: function(value) { + if (this._readableState === void 0 || this._writableState === void 0) { + return; + } + this._readableState.destroyed = value; + this._writableState.destroyed = value; + } + }); + Duplex.prototype._destroy = function(err, cb) { + this.push(null); + this.end(); + pna.nextTick(cb, err); + }; + } +}); + +// ../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js +var require_string_decoder2 = __commonJS({ + "../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js"(exports2) { + "use strict"; + var Buffer2 = require_safe_buffer2().Buffer; + var isEncoding = Buffer2.isEncoding || function(encoding) { + encoding = "" + encoding; + switch (encoding && encoding.toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + case "raw": + return true; + default: + return false; + } + }; + function _normalizeEncoding(enc) { + if (!enc) + return "utf8"; + var retried; + while (true) { + switch (enc) { + case "utf8": + case "utf-8": + return "utf8"; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return "utf16le"; + case "latin1": + case "binary": + return "latin1"; + case "base64": + case "ascii": + case "hex": + return enc; + default: + if (retried) + return; + enc = ("" + enc).toLowerCase(); + retried = true; + } + } + } + function normalizeEncoding(enc) { + var nenc = _normalizeEncoding(enc); + if (typeof nenc !== "string" && (Buffer2.isEncoding === isEncoding || !isEncoding(enc))) + throw new Error("Unknown encoding: " + enc); + return nenc || enc; + } + exports2.StringDecoder = StringDecoder; + function StringDecoder(encoding) { + this.encoding = normalizeEncoding(encoding); + var nb; + switch (this.encoding) { + case "utf16le": + this.text = utf16Text; + this.end = utf16End; + nb = 4; + break; + case "utf8": + this.fillLast = utf8FillLast; + nb = 4; + break; + case "base64": + this.text = base64Text; + this.end = base64End; + nb = 3; + break; + default: + this.write = simpleWrite; + this.end = simpleEnd; + return; + } + this.lastNeed = 0; + this.lastTotal = 0; + this.lastChar = Buffer2.allocUnsafe(nb); + } + StringDecoder.prototype.write = function(buf) { + if (buf.length === 0) + return ""; + var r; + var i; + if (this.lastNeed) { + r = this.fillLast(buf); + if (r === void 0) + return ""; + i = this.lastNeed; + this.lastNeed = 0; + } else { + i = 0; + } + if (i < buf.length) + return r ? r + this.text(buf, i) : this.text(buf, i); + return r || ""; + }; + StringDecoder.prototype.end = utf8End; + StringDecoder.prototype.text = utf8Text; + StringDecoder.prototype.fillLast = function(buf) { + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); + this.lastNeed -= buf.length; + }; + function utf8CheckByte(byte) { + if (byte <= 127) + return 0; + else if (byte >> 5 === 6) + return 2; + else if (byte >> 4 === 14) + return 3; + else if (byte >> 3 === 30) + return 4; + return byte >> 6 === 2 ? -1 : -2; + } + function utf8CheckIncomplete(self2, buf, i) { + var j = buf.length - 1; + if (j < i) + return 0; + var nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 1; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 2; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) { + if (nb === 2) + nb = 0; + else + self2.lastNeed = nb - 3; + } + return nb; + } + return 0; + } + function utf8CheckExtraBytes(self2, buf, p) { + if ((buf[0] & 192) !== 128) { + self2.lastNeed = 0; + return "\uFFFD"; + } + if (self2.lastNeed > 1 && buf.length > 1) { + if ((buf[1] & 192) !== 128) { + self2.lastNeed = 1; + return "\uFFFD"; + } + if (self2.lastNeed > 2 && buf.length > 2) { + if ((buf[2] & 192) !== 128) { + self2.lastNeed = 2; + return "\uFFFD"; + } + } + } + } + function utf8FillLast(buf) { + var p = this.lastTotal - this.lastNeed; + var r = utf8CheckExtraBytes(this, buf, p); + if (r !== void 0) + return r; + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, p, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, p, 0, buf.length); + this.lastNeed -= buf.length; + } + function utf8Text(buf, i) { + var total = utf8CheckIncomplete(this, buf, i); + if (!this.lastNeed) + return buf.toString("utf8", i); + this.lastTotal = total; + var end = buf.length - (total - this.lastNeed); + buf.copy(this.lastChar, 0, end); + return buf.toString("utf8", i, end); + } + function utf8End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + "\uFFFD"; + return r; + } + function utf16Text(buf, i) { + if ((buf.length - i) % 2 === 0) { + var r = buf.toString("utf16le", i); + if (r) { + var c = r.charCodeAt(r.length - 1); + if (c >= 55296 && c <= 56319) { + this.lastNeed = 2; + this.lastTotal = 4; + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + return r.slice(0, -1); + } + } + return r; + } + this.lastNeed = 1; + this.lastTotal = 2; + this.lastChar[0] = buf[buf.length - 1]; + return buf.toString("utf16le", i, buf.length - 1); + } + function utf16End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) { + var end = this.lastTotal - this.lastNeed; + return r + this.lastChar.toString("utf16le", 0, end); + } + return r; + } + function base64Text(buf, i) { + var n = (buf.length - i) % 3; + if (n === 0) + return buf.toString("base64", i); + this.lastNeed = 3 - n; + this.lastTotal = 3; + if (n === 1) { + this.lastChar[0] = buf[buf.length - 1]; + } else { + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + } + return buf.toString("base64", i, buf.length - n); + } + function base64End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); + return r; + } + function simpleWrite(buf) { + return buf.toString(this.encoding); + } + function simpleEnd(buf) { + return buf && buf.length ? this.write(buf) : ""; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js +var require_stream_readable2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + module2.exports = Readable; + var isArray = require_isarray(); + var Duplex; + Readable.ReadableState = ReadableState; + var EE = require("events").EventEmitter; + var EElistenerCount = function(emitter, type) { + return emitter.listeners(type).length; + }; + var Stream = require_stream7(); + var Buffer2 = require_safe_buffer2().Buffer; + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { + }; + function _uint8ArrayToBuffer(chunk) { + return Buffer2.from(chunk); + } + function _isUint8Array(obj) { + return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array; + } + var util = Object.create(require_util6()); + util.inherits = require_inherits(); + var debugUtil = require("util"); + var debug = void 0; + if (debugUtil && debugUtil.debuglog) { + debug = debugUtil.debuglog("stream"); + } else { + debug = function() { + }; + } + var BufferList = require_BufferList(); + var destroyImpl = require_destroy2(); + var StringDecoder; + util.inherits(Readable, Stream); + var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; + function prependListener(emitter, event, fn2) { + if (typeof emitter.prependListener === "function") + return emitter.prependListener(event, fn2); + if (!emitter._events || !emitter._events[event]) + emitter.on(event, fn2); + else if (isArray(emitter._events[event])) + emitter._events[event].unshift(fn2); + else + emitter._events[event] = [fn2, emitter._events[event]]; + } + function ReadableState(options, stream) { + Duplex = Duplex || require_stream_duplex2(); + options = options || {}; + var isDuplex = stream instanceof Duplex; + this.objectMode = !!options.objectMode; + if (isDuplex) + this.objectMode = this.objectMode || !!options.readableObjectMode; + var hwm = options.highWaterMark; + var readableHwm = options.readableHighWaterMark; + var defaultHwm = this.objectMode ? 16 : 16 * 1024; + if (hwm || hwm === 0) + this.highWaterMark = hwm; + else if (isDuplex && (readableHwm || readableHwm === 0)) + this.highWaterMark = readableHwm; + else + this.highWaterMark = defaultHwm; + this.highWaterMark = Math.floor(this.highWaterMark); + this.buffer = new BufferList(); + this.length = 0; + this.pipes = null; + this.pipesCount = 0; + this.flowing = null; + this.ended = false; + this.endEmitted = false; + this.reading = false; + this.sync = true; + this.needReadable = false; + this.emittedReadable = false; + this.readableListening = false; + this.resumeScheduled = false; + this.destroyed = false; + this.defaultEncoding = options.defaultEncoding || "utf8"; + this.awaitDrain = 0; + this.readingMore = false; + this.decoder = null; + this.encoding = null; + if (options.encoding) { + if (!StringDecoder) + StringDecoder = require_string_decoder2().StringDecoder; + this.decoder = new StringDecoder(options.encoding); + this.encoding = options.encoding; + } + } + function Readable(options) { + Duplex = Duplex || require_stream_duplex2(); + if (!(this instanceof Readable)) + return new Readable(options); + this._readableState = new ReadableState(options, this); + this.readable = true; + if (options) { + if (typeof options.read === "function") + this._read = options.read; + if (typeof options.destroy === "function") + this._destroy = options.destroy; + } + Stream.call(this); + } + Object.defineProperty(Readable.prototype, "destroyed", { + get: function() { + if (this._readableState === void 0) { + return false; + } + return this._readableState.destroyed; + }, + set: function(value) { + if (!this._readableState) { + return; + } + this._readableState.destroyed = value; + } + }); + Readable.prototype.destroy = destroyImpl.destroy; + Readable.prototype._undestroy = destroyImpl.undestroy; + Readable.prototype._destroy = function(err, cb) { + this.push(null); + cb(err); + }; + Readable.prototype.push = function(chunk, encoding) { + var state = this._readableState; + var skipChunkCheck; + if (!state.objectMode) { + if (typeof chunk === "string") { + encoding = encoding || state.defaultEncoding; + if (encoding !== state.encoding) { + chunk = Buffer2.from(chunk, encoding); + encoding = ""; + } + skipChunkCheck = true; + } + } else { + skipChunkCheck = true; + } + return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); + }; + Readable.prototype.unshift = function(chunk) { + return readableAddChunk(this, chunk, null, true, false); + }; + function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { + var state = stream._readableState; + if (chunk === null) { + state.reading = false; + onEofChunk(stream, state); + } else { + var er; + if (!skipChunkCheck) + er = chunkInvalid(state, chunk); + if (er) { + stream.emit("error", er); + } else if (state.objectMode || chunk && chunk.length > 0) { + if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer2.prototype) { + chunk = _uint8ArrayToBuffer(chunk); + } + if (addToFront) { + if (state.endEmitted) + stream.emit("error", new Error("stream.unshift() after end event")); + else + addChunk(stream, state, chunk, true); + } else if (state.ended) { + stream.emit("error", new Error("stream.push() after EOF")); + } else { + state.reading = false; + if (state.decoder && !encoding) { + chunk = state.decoder.write(chunk); + if (state.objectMode || chunk.length !== 0) + addChunk(stream, state, chunk, false); + else + maybeReadMore(stream, state); + } else { + addChunk(stream, state, chunk, false); + } + } + } else if (!addToFront) { + state.reading = false; + } + } + return needMoreData(state); + } + function addChunk(stream, state, chunk, addToFront) { + if (state.flowing && state.length === 0 && !state.sync) { + stream.emit("data", chunk); + stream.read(0); + } else { + state.length += state.objectMode ? 1 : chunk.length; + if (addToFront) + state.buffer.unshift(chunk); + else + state.buffer.push(chunk); + if (state.needReadable) + emitReadable(stream); + } + maybeReadMore(stream, state); + } + function chunkInvalid(state, chunk) { + var er; + if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { + er = new TypeError("Invalid non-string/buffer chunk"); + } + return er; + } + function needMoreData(state) { + return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); + } + Readable.prototype.isPaused = function() { + return this._readableState.flowing === false; + }; + Readable.prototype.setEncoding = function(enc) { + if (!StringDecoder) + StringDecoder = require_string_decoder2().StringDecoder; + this._readableState.decoder = new StringDecoder(enc); + this._readableState.encoding = enc; + return this; + }; + var MAX_HWM = 8388608; + function computeNewHighWaterMark(n) { + if (n >= MAX_HWM) { + n = MAX_HWM; + } else { + n--; + n |= n >>> 1; + n |= n >>> 2; + n |= n >>> 4; + n |= n >>> 8; + n |= n >>> 16; + n++; + } + return n; + } + function howMuchToRead(n, state) { + if (n <= 0 || state.length === 0 && state.ended) + return 0; + if (state.objectMode) + return 1; + if (n !== n) { + if (state.flowing && state.length) + return state.buffer.head.data.length; + else + return state.length; + } + if (n > state.highWaterMark) + state.highWaterMark = computeNewHighWaterMark(n); + if (n <= state.length) + return n; + if (!state.ended) { + state.needReadable = true; + return 0; + } + return state.length; + } + Readable.prototype.read = function(n) { + debug("read", n); + n = parseInt(n, 10); + var state = this._readableState; + var nOrig = n; + if (n !== 0) + state.emittedReadable = false; + if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { + debug("read: emitReadable", state.length, state.ended); + if (state.length === 0 && state.ended) + endReadable(this); + else + emitReadable(this); + return null; + } + n = howMuchToRead(n, state); + if (n === 0 && state.ended) { + if (state.length === 0) + endReadable(this); + return null; + } + var doRead = state.needReadable; + debug("need readable", doRead); + if (state.length === 0 || state.length - n < state.highWaterMark) { + doRead = true; + debug("length less than watermark", doRead); + } + if (state.ended || state.reading) { + doRead = false; + debug("reading or ended", doRead); + } else if (doRead) { + debug("do read"); + state.reading = true; + state.sync = true; + if (state.length === 0) + state.needReadable = true; + this._read(state.highWaterMark); + state.sync = false; + if (!state.reading) + n = howMuchToRead(nOrig, state); + } + var ret; + if (n > 0) + ret = fromList(n, state); + else + ret = null; + if (ret === null) { + state.needReadable = true; + n = 0; + } else { + state.length -= n; + } + if (state.length === 0) { + if (!state.ended) + state.needReadable = true; + if (nOrig !== n && state.ended) + endReadable(this); + } + if (ret !== null) + this.emit("data", ret); + return ret; + }; + function onEofChunk(stream, state) { + if (state.ended) + return; + if (state.decoder) { + var chunk = state.decoder.end(); + if (chunk && chunk.length) { + state.buffer.push(chunk); + state.length += state.objectMode ? 1 : chunk.length; + } + } + state.ended = true; + emitReadable(stream); + } + function emitReadable(stream) { + var state = stream._readableState; + state.needReadable = false; + if (!state.emittedReadable) { + debug("emitReadable", state.flowing); + state.emittedReadable = true; + if (state.sync) + pna.nextTick(emitReadable_, stream); + else + emitReadable_(stream); + } + } + function emitReadable_(stream) { + debug("emit readable"); + stream.emit("readable"); + flow(stream); + } + function maybeReadMore(stream, state) { + if (!state.readingMore) { + state.readingMore = true; + pna.nextTick(maybeReadMore_, stream, state); + } + } + function maybeReadMore_(stream, state) { + var len = state.length; + while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { + debug("maybeReadMore read 0"); + stream.read(0); + if (len === state.length) + break; + else + len = state.length; + } + state.readingMore = false; + } + Readable.prototype._read = function(n) { + this.emit("error", new Error("_read() is not implemented")); + }; + Readable.prototype.pipe = function(dest, pipeOpts) { + var src = this; + var state = this._readableState; + switch (state.pipesCount) { + case 0: + state.pipes = dest; + break; + case 1: + state.pipes = [state.pipes, dest]; + break; + default: + state.pipes.push(dest); + break; + } + state.pipesCount += 1; + debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); + var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; + var endFn = doEnd ? onend : unpipe; + if (state.endEmitted) + pna.nextTick(endFn); + else + src.once("end", endFn); + dest.on("unpipe", onunpipe); + function onunpipe(readable, unpipeInfo) { + debug("onunpipe"); + if (readable === src) { + if (unpipeInfo && unpipeInfo.hasUnpiped === false) { + unpipeInfo.hasUnpiped = true; + cleanup(); + } + } + } + function onend() { + debug("onend"); + dest.end(); + } + var ondrain = pipeOnDrain(src); + dest.on("drain", ondrain); + var cleanedUp = false; + function cleanup() { + debug("cleanup"); + dest.removeListener("close", onclose); + dest.removeListener("finish", onfinish); + dest.removeListener("drain", ondrain); + dest.removeListener("error", onerror); + dest.removeListener("unpipe", onunpipe); + src.removeListener("end", onend); + src.removeListener("end", unpipe); + src.removeListener("data", ondata); + cleanedUp = true; + if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) + ondrain(); + } + var increasedAwaitDrain = false; + src.on("data", ondata); + function ondata(chunk) { + debug("ondata"); + increasedAwaitDrain = false; + var ret = dest.write(chunk); + if (false === ret && !increasedAwaitDrain) { + if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { + debug("false write response, pause", state.awaitDrain); + state.awaitDrain++; + increasedAwaitDrain = true; + } + src.pause(); + } + } + function onerror(er) { + debug("onerror", er); + unpipe(); + dest.removeListener("error", onerror); + if (EElistenerCount(dest, "error") === 0) + dest.emit("error", er); + } + prependListener(dest, "error", onerror); + function onclose() { + dest.removeListener("finish", onfinish); + unpipe(); + } + dest.once("close", onclose); + function onfinish() { + debug("onfinish"); + dest.removeListener("close", onclose); + unpipe(); + } + dest.once("finish", onfinish); + function unpipe() { + debug("unpipe"); + src.unpipe(dest); + } + dest.emit("pipe", src); + if (!state.flowing) { + debug("pipe resume"); + src.resume(); + } + return dest; + }; + function pipeOnDrain(src) { + return function() { + var state = src._readableState; + debug("pipeOnDrain", state.awaitDrain); + if (state.awaitDrain) + state.awaitDrain--; + if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { + state.flowing = true; + flow(src); + } + }; + } + Readable.prototype.unpipe = function(dest) { + var state = this._readableState; + var unpipeInfo = { hasUnpiped: false }; + if (state.pipesCount === 0) + return this; + if (state.pipesCount === 1) { + if (dest && dest !== state.pipes) + return this; + if (!dest) + dest = state.pipes; + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + if (dest) + dest.emit("unpipe", this, unpipeInfo); + return this; + } + if (!dest) { + var dests = state.pipes; + var len = state.pipesCount; + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + for (var i = 0; i < len; i++) { + dests[i].emit("unpipe", this, { hasUnpiped: false }); + } + return this; + } + var index = indexOf(state.pipes, dest); + if (index === -1) + return this; + state.pipes.splice(index, 1); + state.pipesCount -= 1; + if (state.pipesCount === 1) + state.pipes = state.pipes[0]; + dest.emit("unpipe", this, unpipeInfo); + return this; + }; + Readable.prototype.on = function(ev, fn2) { + var res = Stream.prototype.on.call(this, ev, fn2); + if (ev === "data") { + if (this._readableState.flowing !== false) + this.resume(); + } else if (ev === "readable") { + var state = this._readableState; + if (!state.endEmitted && !state.readableListening) { + state.readableListening = state.needReadable = true; + state.emittedReadable = false; + if (!state.reading) { + pna.nextTick(nReadingNextTick, this); + } else if (state.length) { + emitReadable(this); + } + } + } + return res; + }; + Readable.prototype.addListener = Readable.prototype.on; + function nReadingNextTick(self2) { + debug("readable nexttick read 0"); + self2.read(0); + } + Readable.prototype.resume = function() { + var state = this._readableState; + if (!state.flowing) { + debug("resume"); + state.flowing = true; + resume(this, state); + } + return this; + }; + function resume(stream, state) { + if (!state.resumeScheduled) { + state.resumeScheduled = true; + pna.nextTick(resume_, stream, state); + } + } + function resume_(stream, state) { + if (!state.reading) { + debug("resume read 0"); + stream.read(0); + } + state.resumeScheduled = false; + state.awaitDrain = 0; + stream.emit("resume"); + flow(stream); + if (state.flowing && !state.reading) + stream.read(0); + } + Readable.prototype.pause = function() { + debug("call pause flowing=%j", this._readableState.flowing); + if (false !== this._readableState.flowing) { + debug("pause"); + this._readableState.flowing = false; + this.emit("pause"); + } + return this; + }; + function flow(stream) { + var state = stream._readableState; + debug("flow", state.flowing); + while (state.flowing && stream.read() !== null) { + } + } + Readable.prototype.wrap = function(stream) { + var _this = this; + var state = this._readableState; + var paused = false; + stream.on("end", function() { + debug("wrapped end"); + if (state.decoder && !state.ended) { + var chunk = state.decoder.end(); + if (chunk && chunk.length) + _this.push(chunk); + } + _this.push(null); + }); + stream.on("data", function(chunk) { + debug("wrapped data"); + if (state.decoder) + chunk = state.decoder.write(chunk); + if (state.objectMode && (chunk === null || chunk === void 0)) + return; + else if (!state.objectMode && (!chunk || !chunk.length)) + return; + var ret = _this.push(chunk); + if (!ret) { + paused = true; + stream.pause(); + } + }); + for (var i in stream) { + if (this[i] === void 0 && typeof stream[i] === "function") { + this[i] = function(method) { + return function() { + return stream[method].apply(stream, arguments); + }; + }(i); + } + } + for (var n = 0; n < kProxyEvents.length; n++) { + stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); + } + this._read = function(n2) { + debug("wrapped _read", n2); + if (paused) { + paused = false; + stream.resume(); + } + }; + return this; + }; + Object.defineProperty(Readable.prototype, "readableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._readableState.highWaterMark; + } + }); + Readable._fromList = fromList; + function fromList(n, state) { + if (state.length === 0) + return null; + var ret; + if (state.objectMode) + ret = state.buffer.shift(); + else if (!n || n >= state.length) { + if (state.decoder) + ret = state.buffer.join(""); + else if (state.buffer.length === 1) + ret = state.buffer.head.data; + else + ret = state.buffer.concat(state.length); + state.buffer.clear(); + } else { + ret = fromListPartial(n, state.buffer, state.decoder); + } + return ret; + } + function fromListPartial(n, list, hasStrings) { + var ret; + if (n < list.head.data.length) { + ret = list.head.data.slice(0, n); + list.head.data = list.head.data.slice(n); + } else if (n === list.head.data.length) { + ret = list.shift(); + } else { + ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); + } + return ret; + } + function copyFromBufferString(n, list) { + var p = list.head; + var c = 1; + var ret = p.data; + n -= ret.length; + while (p = p.next) { + var str = p.data; + var nb = n > str.length ? str.length : n; + if (nb === str.length) + ret += str; + else + ret += str.slice(0, n); + n -= nb; + if (n === 0) { + if (nb === str.length) { + ++c; + if (p.next) + list.head = p.next; + else + list.head = list.tail = null; + } else { + list.head = p; + p.data = str.slice(nb); + } + break; + } + ++c; + } + list.length -= c; + return ret; + } + function copyFromBuffer(n, list) { + var ret = Buffer2.allocUnsafe(n); + var p = list.head; + var c = 1; + p.data.copy(ret); + n -= p.data.length; + while (p = p.next) { + var buf = p.data; + var nb = n > buf.length ? buf.length : n; + buf.copy(ret, ret.length - n, 0, nb); + n -= nb; + if (n === 0) { + if (nb === buf.length) { + ++c; + if (p.next) + list.head = p.next; + else + list.head = list.tail = null; + } else { + list.head = p; + p.data = buf.slice(nb); + } + break; + } + ++c; + } + list.length -= c; + return ret; + } + function endReadable(stream) { + var state = stream._readableState; + if (state.length > 0) + throw new Error('"endReadable()" called on non-empty stream'); + if (!state.endEmitted) { + state.ended = true; + pna.nextTick(endReadableNT, state, stream); + } + } + function endReadableNT(state, stream) { + if (!state.endEmitted && state.length === 0) { + state.endEmitted = true; + stream.readable = false; + stream.emit("end"); + } + } + function indexOf(xs, x) { + for (var i = 0, l = xs.length; i < l; i++) { + if (xs[i] === x) + return i; + } + return -1; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js +var require_stream_transform2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { + "use strict"; + module2.exports = Transform; + var Duplex = require_stream_duplex2(); + var util = Object.create(require_util6()); + util.inherits = require_inherits(); + util.inherits(Transform, Duplex); + function afterTransform(er, data) { + var ts = this._transformState; + ts.transforming = false; + var cb = ts.writecb; + if (!cb) { + return this.emit("error", new Error("write callback called multiple times")); + } + ts.writechunk = null; + ts.writecb = null; + if (data != null) + this.push(data); + cb(er); + var rs = this._readableState; + rs.reading = false; + if (rs.needReadable || rs.length < rs.highWaterMark) { + this._read(rs.highWaterMark); + } + } + function Transform(options) { + if (!(this instanceof Transform)) + return new Transform(options); + Duplex.call(this, options); + this._transformState = { + afterTransform: afterTransform.bind(this), + needTransform: false, + transforming: false, + writecb: null, + writechunk: null, + writeencoding: null + }; + this._readableState.needReadable = true; + this._readableState.sync = false; + if (options) { + if (typeof options.transform === "function") + this._transform = options.transform; + if (typeof options.flush === "function") + this._flush = options.flush; + } + this.on("prefinish", prefinish); + } + function prefinish() { + var _this = this; + if (typeof this._flush === "function") { + this._flush(function(er, data) { + done(_this, er, data); + }); + } else { + done(this, null, null); + } + } + Transform.prototype.push = function(chunk, encoding) { + this._transformState.needTransform = false; + return Duplex.prototype.push.call(this, chunk, encoding); + }; + Transform.prototype._transform = function(chunk, encoding, cb) { + throw new Error("_transform() is not implemented"); + }; + Transform.prototype._write = function(chunk, encoding, cb) { + var ts = this._transformState; + ts.writecb = cb; + ts.writechunk = chunk; + ts.writeencoding = encoding; + if (!ts.transforming) { + var rs = this._readableState; + if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) + this._read(rs.highWaterMark); + } + }; + Transform.prototype._read = function(n) { + var ts = this._transformState; + if (ts.writechunk !== null && ts.writecb && !ts.transforming) { + ts.transforming = true; + this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); + } else { + ts.needTransform = true; + } + }; + Transform.prototype._destroy = function(err, cb) { + var _this2 = this; + Duplex.prototype._destroy.call(this, err, function(err2) { + cb(err2); + _this2.emit("close"); + }); + }; + function done(stream, er, data) { + if (er) + return stream.emit("error", er); + if (data != null) + stream.push(data); + if (stream._writableState.length) + throw new Error("Calling transform done when ws.length != 0"); + if (stream._transformState.transforming) + throw new Error("Calling transform done when still transforming"); + return stream.push(null); + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js +var require_stream_passthrough2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { + "use strict"; + module2.exports = PassThrough; + var Transform = require_stream_transform2(); + var util = Object.create(require_util6()); + util.inherits = require_inherits(); + util.inherits(PassThrough, Transform); + function PassThrough(options) { + if (!(this instanceof PassThrough)) + return new PassThrough(options); + Transform.call(this, options); + } + PassThrough.prototype._transform = function(chunk, encoding, cb) { + cb(null, chunk); + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js +var require_readable2 = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js"(exports2, module2) { + var Stream = require("stream"); + if (process.env.READABLE_STREAM === "disable" && Stream) { + module2.exports = Stream; + exports2 = module2.exports = Stream.Readable; + exports2.Readable = Stream.Readable; + exports2.Writable = Stream.Writable; + exports2.Duplex = Stream.Duplex; + exports2.Transform = Stream.Transform; + exports2.PassThrough = Stream.PassThrough; + exports2.Stream = Stream; + } else { + exports2 = module2.exports = require_stream_readable2(); + exports2.Stream = Stream || exports2; + exports2.Readable = exports2; + exports2.Writable = require_stream_writable2(); + exports2.Duplex = require_stream_duplex2(); + exports2.Transform = require_stream_transform2(); + exports2.PassThrough = require_stream_passthrough2(); + } + } +}); + +// ../node_modules/.pnpm/end-of-stream@1.4.4/node_modules/end-of-stream/index.js +var require_end_of_stream2 = __commonJS({ + "../node_modules/.pnpm/end-of-stream@1.4.4/node_modules/end-of-stream/index.js"(exports2, module2) { + var once = require_once(); + var noop = function() { + }; + var isRequest = function(stream) { + return stream.setHeader && typeof stream.abort === "function"; + }; + var isChildProcess = function(stream) { + return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3; + }; + var eos = function(stream, opts, callback) { + if (typeof opts === "function") + return eos(stream, null, opts); + if (!opts) + opts = {}; + callback = once(callback || noop); + var ws = stream._writableState; + var rs = stream._readableState; + var readable = opts.readable || opts.readable !== false && stream.readable; + var writable = opts.writable || opts.writable !== false && stream.writable; + var cancelled = false; + var onlegacyfinish = function() { + if (!stream.writable) + onfinish(); + }; + var onfinish = function() { + writable = false; + if (!readable) + callback.call(stream); + }; + var onend = function() { + readable = false; + if (!writable) + callback.call(stream); + }; + var onexit = function(exitCode) { + callback.call(stream, exitCode ? new Error("exited with error code: " + exitCode) : null); + }; + var onerror = function(err) { + callback.call(stream, err); + }; + var onclose = function() { + process.nextTick(onclosenexttick); + }; + var onclosenexttick = function() { + if (cancelled) + return; + if (readable && !(rs && (rs.ended && !rs.destroyed))) + return callback.call(stream, new Error("premature close")); + if (writable && !(ws && (ws.ended && !ws.destroyed))) + return callback.call(stream, new Error("premature close")); + }; + var onrequest = function() { + stream.req.on("finish", onfinish); + }; + if (isRequest(stream)) { + stream.on("complete", onfinish); + stream.on("abort", onclose); + if (stream.req) + onrequest(); + else + stream.on("request", onrequest); + } else if (writable && !ws) { + stream.on("end", onlegacyfinish); + stream.on("close", onlegacyfinish); + } + if (isChildProcess(stream)) + stream.on("exit", onexit); + stream.on("end", onend); + stream.on("finish", onfinish); + if (opts.error !== false) + stream.on("error", onerror); + stream.on("close", onclose); + return function() { + cancelled = true; + stream.removeListener("complete", onfinish); + stream.removeListener("abort", onclose); + stream.removeListener("request", onrequest); + if (stream.req) + stream.req.removeListener("finish", onfinish); + stream.removeListener("end", onlegacyfinish); + stream.removeListener("close", onlegacyfinish); + stream.removeListener("finish", onfinish); + stream.removeListener("exit", onexit); + stream.removeListener("end", onend); + stream.removeListener("error", onerror); + stream.removeListener("close", onclose); + }; + }; + module2.exports = eos; + } +}); + +// ../node_modules/.pnpm/stream-shift@1.0.1/node_modules/stream-shift/index.js +var require_stream_shift = __commonJS({ + "../node_modules/.pnpm/stream-shift@1.0.1/node_modules/stream-shift/index.js"(exports2, module2) { + module2.exports = shift; + function shift(stream) { + var rs = stream._readableState; + if (!rs) + return null; + return rs.objectMode || typeof stream._duplexState === "number" ? stream.read() : stream.read(getStateLength(rs)); + } + function getStateLength(state) { + if (state.buffer.length) { + if (state.buffer.head) { + return state.buffer.head.data.length; + } + return state.buffer[0].length; + } + return state.length; + } + } +}); + +// ../node_modules/.pnpm/duplexify@3.7.1/node_modules/duplexify/index.js +var require_duplexify = __commonJS({ + "../node_modules/.pnpm/duplexify@3.7.1/node_modules/duplexify/index.js"(exports2, module2) { + var stream = require_readable2(); + var eos = require_end_of_stream2(); + var inherits = require_inherits(); + var shift = require_stream_shift(); + var SIGNAL_FLUSH = Buffer.from && Buffer.from !== Uint8Array.from ? Buffer.from([0]) : new Buffer([0]); + var onuncork = function(self2, fn2) { + if (self2._corked) + self2.once("uncork", fn2); + else + fn2(); + }; + var autoDestroy = function(self2, err) { + if (self2._autoDestroy) + self2.destroy(err); + }; + var destroyer = function(self2, end2) { + return function(err) { + if (err) + autoDestroy(self2, err.message === "premature close" ? null : err); + else if (end2 && !self2._ended) + self2.end(); + }; + }; + var end = function(ws, fn2) { + if (!ws) + return fn2(); + if (ws._writableState && ws._writableState.finished) + return fn2(); + if (ws._writableState) + return ws.end(fn2); + ws.end(); + fn2(); + }; + var toStreams2 = function(rs) { + return new stream.Readable({ objectMode: true, highWaterMark: 16 }).wrap(rs); + }; + var Duplexify = function(writable, readable, opts) { + if (!(this instanceof Duplexify)) + return new Duplexify(writable, readable, opts); + stream.Duplex.call(this, opts); + this._writable = null; + this._readable = null; + this._readable2 = null; + this._autoDestroy = !opts || opts.autoDestroy !== false; + this._forwardDestroy = !opts || opts.destroy !== false; + this._forwardEnd = !opts || opts.end !== false; + this._corked = 1; + this._ondrain = null; + this._drained = false; + this._forwarding = false; + this._unwrite = null; + this._unread = null; + this._ended = false; + this.destroyed = false; + if (writable) + this.setWritable(writable); + if (readable) + this.setReadable(readable); + }; + inherits(Duplexify, stream.Duplex); + Duplexify.obj = function(writable, readable, opts) { + if (!opts) + opts = {}; + opts.objectMode = true; + opts.highWaterMark = 16; + return new Duplexify(writable, readable, opts); + }; + Duplexify.prototype.cork = function() { + if (++this._corked === 1) + this.emit("cork"); + }; + Duplexify.prototype.uncork = function() { + if (this._corked && --this._corked === 0) + this.emit("uncork"); + }; + Duplexify.prototype.setWritable = function(writable) { + if (this._unwrite) + this._unwrite(); + if (this.destroyed) { + if (writable && writable.destroy) + writable.destroy(); + return; + } + if (writable === null || writable === false) { + this.end(); + return; + } + var self2 = this; + var unend = eos(writable, { writable: true, readable: false }, destroyer(this, this._forwardEnd)); + var ondrain = function() { + var ondrain2 = self2._ondrain; + self2._ondrain = null; + if (ondrain2) + ondrain2(); + }; + var clear = function() { + self2._writable.removeListener("drain", ondrain); + unend(); + }; + if (this._unwrite) + process.nextTick(ondrain); + this._writable = writable; + this._writable.on("drain", ondrain); + this._unwrite = clear; + this.uncork(); + }; + Duplexify.prototype.setReadable = function(readable) { + if (this._unread) + this._unread(); + if (this.destroyed) { + if (readable && readable.destroy) + readable.destroy(); + return; + } + if (readable === null || readable === false) { + this.push(null); + this.resume(); + return; + } + var self2 = this; + var unend = eos(readable, { writable: false, readable: true }, destroyer(this)); + var onreadable = function() { + self2._forward(); + }; + var onend = function() { + self2.push(null); + }; + var clear = function() { + self2._readable2.removeListener("readable", onreadable); + self2._readable2.removeListener("end", onend); + unend(); + }; + this._drained = true; + this._readable = readable; + this._readable2 = readable._readableState ? readable : toStreams2(readable); + this._readable2.on("readable", onreadable); + this._readable2.on("end", onend); + this._unread = clear; + this._forward(); + }; + Duplexify.prototype._read = function() { + this._drained = true; + this._forward(); + }; + Duplexify.prototype._forward = function() { + if (this._forwarding || !this._readable2 || !this._drained) + return; + this._forwarding = true; + var data; + while (this._drained && (data = shift(this._readable2)) !== null) { + if (this.destroyed) + continue; + this._drained = this.push(data); + } + this._forwarding = false; + }; + Duplexify.prototype.destroy = function(err) { + if (this.destroyed) + return; + this.destroyed = true; + var self2 = this; + process.nextTick(function() { + self2._destroy(err); + }); + }; + Duplexify.prototype._destroy = function(err) { + if (err) { + var ondrain = this._ondrain; + this._ondrain = null; + if (ondrain) + ondrain(err); + else + this.emit("error", err); + } + if (this._forwardDestroy) { + if (this._readable && this._readable.destroy) + this._readable.destroy(); + if (this._writable && this._writable.destroy) + this._writable.destroy(); + } + this.emit("close"); + }; + Duplexify.prototype._write = function(data, enc, cb) { + if (this.destroyed) + return cb(); + if (this._corked) + return onuncork(this, this._write.bind(this, data, enc, cb)); + if (data === SIGNAL_FLUSH) + return this._finish(cb); + if (!this._writable) + return cb(); + if (this._writable.write(data) === false) + this._ondrain = cb; + else + cb(); + }; + Duplexify.prototype._finish = function(cb) { + var self2 = this; + this.emit("preend"); + onuncork(this, function() { + end(self2._forwardEnd && self2._writable, function() { + if (self2._writableState.prefinished === false) + self2._writableState.prefinished = true; + self2.emit("prefinish"); + onuncork(self2, cb); + }); + }); + }; + Duplexify.prototype.end = function(data, enc, cb) { + if (typeof data === "function") + return this.end(null, null, data); + if (typeof enc === "function") + return this.end(data, null, enc); + this._ended = true; + if (data) + this.write(data); + if (!this._writableState.ending) + this.write(SIGNAL_FLUSH); + return stream.Writable.prototype.end.call(this, cb); + }; + module2.exports = Duplexify; + } +}); + +// ../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js +var require_immutable = __commonJS({ + "../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js"(exports2, module2) { + module2.exports = extend; + var hasOwnProperty = Object.prototype.hasOwnProperty; + function extend() { + var target = {}; + for (var i = 0; i < arguments.length; i++) { + var source = arguments[i]; + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + return target; + } + } +}); + +// ../node_modules/.pnpm/through2@2.0.5/node_modules/through2/through2.js +var require_through22 = __commonJS({ + "../node_modules/.pnpm/through2@2.0.5/node_modules/through2/through2.js"(exports2, module2) { + var Transform = require_readable2().Transform; + var inherits = require("util").inherits; + var xtend = require_immutable(); + function DestroyableTransform(opts) { + Transform.call(this, opts); + this._destroyed = false; + } + inherits(DestroyableTransform, Transform); + DestroyableTransform.prototype.destroy = function(err) { + if (this._destroyed) + return; + this._destroyed = true; + var self2 = this; + process.nextTick(function() { + if (err) + self2.emit("error", err); + self2.emit("close"); + }); + }; + function noop(chunk, enc, callback) { + callback(null, chunk); + } + function through2(construct) { + return function(options, transform, flush) { + if (typeof options == "function") { + flush = transform; + transform = options; + options = {}; + } + if (typeof transform != "function") + transform = noop; + if (typeof flush != "function") + flush = null; + return construct(options, transform, flush); + }; + } + module2.exports = through2(function(options, transform, flush) { + var t2 = new DestroyableTransform(options); + t2._transform = transform; + if (flush) + t2._flush = flush; + return t2; + }); + module2.exports.ctor = through2(function(options, transform, flush) { + function Through2(override) { + if (!(this instanceof Through2)) + return new Through2(override); + this.options = xtend(options, override); + DestroyableTransform.call(this, this.options); + } + inherits(Through2, DestroyableTransform); + Through2.prototype._transform = transform; + if (flush) + Through2.prototype._flush = flush; + return Through2; + }); + module2.exports.obj = through2(function(options, transform, flush) { + var t2 = new DestroyableTransform(xtend({ objectMode: true, highWaterMark: 16 }, options)); + t2._transform = transform; + if (flush) + t2._flush = flush; + return t2; + }); + } +}); + +// ../node_modules/.pnpm/peek-stream@1.1.3/node_modules/peek-stream/index.js +var require_peek_stream = __commonJS({ + "../node_modules/.pnpm/peek-stream@1.1.3/node_modules/peek-stream/index.js"(exports2, module2) { + var duplexify = require_duplexify(); + var through = require_through22(); + var bufferFrom = require_buffer_from(); + var isObject = function(data) { + return !Buffer.isBuffer(data) && typeof data !== "string"; + }; + var peek = function(opts, onpeek) { + if (typeof opts === "number") + opts = { maxBuffer: opts }; + if (typeof opts === "function") + return peek(null, opts); + if (!opts) + opts = {}; + var maxBuffer = typeof opts.maxBuffer === "number" ? opts.maxBuffer : 65535; + var strict = opts.strict; + var newline = opts.newline !== false; + var buffer = []; + var bufferSize = 0; + var dup = duplexify.obj(); + var peeker = through.obj({ highWaterMark: 1 }, function(data, enc, cb) { + if (isObject(data)) + return ready(data, null, cb); + if (!Buffer.isBuffer(data)) + data = bufferFrom(data); + if (newline) { + var nl = Array.prototype.indexOf.call(data, 10); + if (nl > 0 && data[nl - 1] === 13) + nl--; + if (nl > -1) { + buffer.push(data.slice(0, nl)); + return ready(Buffer.concat(buffer), data.slice(nl), cb); + } + } + buffer.push(data); + bufferSize += data.length; + if (bufferSize < maxBuffer) + return cb(); + if (strict) + return cb(new Error("No newline found")); + ready(Buffer.concat(buffer), null, cb); + }); + var onpreend = function() { + if (strict) + return dup.destroy(new Error("No newline found")); + dup.cork(); + ready(Buffer.concat(buffer), null, function(err) { + if (err) + return dup.destroy(err); + dup.uncork(); + }); + }; + var ready = function(data, overflow, cb) { + dup.removeListener("preend", onpreend); + onpeek(data, function(err, parser) { + if (err) + return cb(err); + dup.setWritable(parser); + dup.setReadable(parser); + if (data) + parser.write(data); + if (overflow) + parser.write(overflow); + overflow = buffer = peeker = null; + cb(); + }); + }; + dup.on("preend", onpreend); + dup.setWritable(peeker); + return dup; + }; + module2.exports = peek; + } +}); + +// ../node_modules/.pnpm/pump@2.0.1/node_modules/pump/index.js +var require_pump = __commonJS({ + "../node_modules/.pnpm/pump@2.0.1/node_modules/pump/index.js"(exports2, module2) { + var once = require_once(); + var eos = require_end_of_stream2(); + var fs2 = require("fs"); + var noop = function() { + }; + var ancient = /^v?\.0/.test(process.version); + var isFn = function(fn2) { + return typeof fn2 === "function"; + }; + var isFS = function(stream) { + if (!ancient) + return false; + if (!fs2) + return false; + return (stream instanceof (fs2.ReadStream || noop) || stream instanceof (fs2.WriteStream || noop)) && isFn(stream.close); + }; + var isRequest = function(stream) { + return stream.setHeader && isFn(stream.abort); + }; + var destroyer = function(stream, reading, writing, callback) { + callback = once(callback); + var closed = false; + stream.on("close", function() { + closed = true; + }); + eos(stream, { readable: reading, writable: writing }, function(err) { + if (err) + return callback(err); + closed = true; + callback(); + }); + var destroyed = false; + return function(err) { + if (closed) + return; + if (destroyed) + return; + destroyed = true; + if (isFS(stream)) + return stream.close(noop); + if (isRequest(stream)) + return stream.abort(); + if (isFn(stream.destroy)) + return stream.destroy(); + callback(err || new Error("stream was destroyed")); + }; + }; + var call = function(fn2) { + fn2(); + }; + var pipe = function(from, to) { + return from.pipe(to); + }; + var pump = function() { + var streams = Array.prototype.slice.call(arguments); + var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop; + if (Array.isArray(streams[0])) + streams = streams[0]; + if (streams.length < 2) + throw new Error("pump requires two streams per minimum"); + var error; + var destroys = streams.map(function(stream, i) { + var reading = i < streams.length - 1; + var writing = i > 0; + return destroyer(stream, reading, writing, function(err) { + if (!error) + error = err; + if (err) + destroys.forEach(call); + if (reading) + return; + destroys.forEach(call); + callback(error); + }); + }); + streams.reduce(pipe); + }; + module2.exports = pump; + } +}); + +// ../node_modules/.pnpm/pumpify@1.5.1/node_modules/pumpify/index.js +var require_pumpify = __commonJS({ + "../node_modules/.pnpm/pumpify@1.5.1/node_modules/pumpify/index.js"(exports2, module2) { + var pump = require_pump(); + var inherits = require_inherits(); + var Duplexify = require_duplexify(); + var toArray = function(args2) { + if (!args2.length) + return []; + return Array.isArray(args2[0]) ? args2[0] : Array.prototype.slice.call(args2); + }; + var define2 = function(opts) { + var Pumpify = function() { + var streams = toArray(arguments); + if (!(this instanceof Pumpify)) + return new Pumpify(streams); + Duplexify.call(this, null, null, opts); + if (streams.length) + this.setPipeline(streams); + }; + inherits(Pumpify, Duplexify); + Pumpify.prototype.setPipeline = function() { + var streams = toArray(arguments); + var self2 = this; + var ended = false; + var w = streams[0]; + var r = streams[streams.length - 1]; + r = r.readable ? r : null; + w = w.writable ? w : null; + var onclose = function() { + streams[0].emit("error", new Error("stream was destroyed")); + }; + this.on("close", onclose); + this.on("prefinish", function() { + if (!ended) + self2.cork(); + }); + pump(streams, function(err) { + self2.removeListener("close", onclose); + if (err) + return self2.destroy(err.message === "premature close" ? null : err); + ended = true; + if (self2._autoDestroy === false) + self2._autoDestroy = true; + self2.uncork(); + }); + if (this.destroyed) + return onclose(); + this.setWritable(w); + this.setReadable(r); + }; + return Pumpify; + }; + module2.exports = define2({ autoDestroy: false, destroy: false }); + module2.exports.obj = define2({ autoDestroy: false, destroy: false, objectMode: true, highWaterMark: 16 }); + module2.exports.ctor = define2; + } +}); + +// ../node_modules/.pnpm/bzip2-maybe@1.0.0/node_modules/bzip2-maybe/index.js +var require_bzip2_maybe = __commonJS({ + "../node_modules/.pnpm/bzip2-maybe@1.0.0/node_modules/bzip2-maybe/index.js"(exports2, module2) { + var bz2 = require_unbzip2_stream(); + var isBzip2 = require_is_bzip2(); + var peek = require_peek_stream(); + var pumpify = require_pumpify(); + var through = require_through22(); + var bzip2 = function() { + return peek({ newline: false, maxBuffer: 10 }, function(data, swap) { + if (isBzip2(data)) { + return swap(null, pumpify(bz2(), bzip2())); + } + swap(null, through()); + }); + }; + module2.exports = bzip2; + } +}); + +// ../node_modules/.pnpm/is-gzip@1.0.0/node_modules/is-gzip/index.js +var require_is_gzip = __commonJS({ + "../node_modules/.pnpm/is-gzip@1.0.0/node_modules/is-gzip/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(buf) { + if (!buf || buf.length < 3) { + return false; + } + return buf[0] === 31 && buf[1] === 139 && buf[2] === 8; + }; + } +}); + +// ../node_modules/.pnpm/is-deflate@1.0.0/node_modules/is-deflate/index.js +var require_is_deflate = __commonJS({ + "../node_modules/.pnpm/is-deflate@1.0.0/node_modules/is-deflate/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(buf) { + if (!buf || buf.length < 2) + return false; + return buf[0] === 120 && (buf[1] === 1 || buf[1] === 156 || buf[1] === 218); + }; + } +}); + +// ../node_modules/.pnpm/gunzip-maybe@1.4.2/node_modules/gunzip-maybe/index.js +var require_gunzip_maybe = __commonJS({ + "../node_modules/.pnpm/gunzip-maybe@1.4.2/node_modules/gunzip-maybe/index.js"(exports2, module2) { + var zlib = require("zlib"); + var peek = require_peek_stream(); + var through = require_through22(); + var pumpify = require_pumpify(); + var isGzip = require_is_gzip(); + var isDeflate = require_is_deflate(); + var isCompressed = function(data) { + if (isGzip(data)) + return 1; + if (isDeflate(data)) + return 2; + return 0; + }; + var gunzip = function(maxRecursion) { + if (maxRecursion === void 0) + maxRecursion = 3; + return peek({ newline: false, maxBuffer: 10 }, function(data, swap) { + if (maxRecursion < 0) + return swap(new Error("Maximum recursion reached")); + switch (isCompressed(data)) { + case 1: + swap(null, pumpify(zlib.createGunzip(), gunzip(maxRecursion - 1))); + break; + case 2: + swap(null, pumpify(zlib.createInflate(), gunzip(maxRecursion - 1))); + break; + default: + swap(null, through()); + } + }); + }; + module2.exports = gunzip; + } +}); + +// ../node_modules/.pnpm/decompress-maybe@1.0.0/node_modules/decompress-maybe/index.js +var require_decompress_maybe = __commonJS({ + "../node_modules/.pnpm/decompress-maybe@1.0.0/node_modules/decompress-maybe/index.js"(exports2, module2) { + var bzipMaybe = require_bzip2_maybe(); + var gunzipMaybe = require_gunzip_maybe(); + var pumpify = require_pumpify(); + module2.exports = function() { + return pumpify(bzipMaybe(), gunzipMaybe()); + }; + } +}); + +// ../node_modules/.pnpm/p-reflect@2.1.0/node_modules/p-reflect/index.js +var require_p_reflect = __commonJS({ + "../node_modules/.pnpm/p-reflect@2.1.0/node_modules/p-reflect/index.js"(exports2, module2) { + "use strict"; + var pReflect = async (promise) => { + try { + const value = await promise; + return { + isFulfilled: true, + isRejected: false, + value + }; + } catch (error) { + return { + isFulfilled: false, + isRejected: true, + reason: error + }; + } + }; + module2.exports = pReflect; + module2.exports.default = pReflect; + } +}); + +// ../node_modules/.pnpm/promise-share@1.0.0/node_modules/promise-share/index.js +var require_promise_share = __commonJS({ + "../node_modules/.pnpm/promise-share@1.0.0/node_modules/promise-share/index.js"(exports2, module2) { + "use strict"; + var pReflect = require_p_reflect(); + module2.exports = function pShare(p) { + const reflected = pReflect(p); + return async () => { + const reflection = await reflected; + if (reflection.isRejected) + throw reflection.reason; + return reflection.value; + }; + }; + } +}); + +// ../node_modules/.pnpm/safe-promise-defer@1.0.1/node_modules/safe-promise-defer/lib/index.js +var require_lib45 = __commonJS({ + "../node_modules/.pnpm/safe-promise-defer@1.0.1/node_modules/safe-promise-defer/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var promise_share_1 = __importDefault4(require_promise_share()); + function safeDeferredPromise() { + let _resolve; + let _reject; + const promiseFn = (0, promise_share_1.default)(new Promise((resolve, reject) => { + _resolve = resolve; + _reject = reject; + })); + return Object.assign(promiseFn, { resolve: _resolve, reject: _reject }); + } + exports2.default = safeDeferredPromise; + } +}); + +// ../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js +var require_BufferList2 = __commonJS({ + "../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js"(exports2, module2) { + "use strict"; + var { Buffer: Buffer2 } = require("buffer"); + var symbol = Symbol.for("BufferList"); + function BufferList(buf) { + if (!(this instanceof BufferList)) { + return new BufferList(buf); + } + BufferList._init.call(this, buf); + } + BufferList._init = function _init(buf) { + Object.defineProperty(this, symbol, { value: true }); + this._bufs = []; + this.length = 0; + if (buf) { + this.append(buf); + } + }; + BufferList.prototype._new = function _new(buf) { + return new BufferList(buf); + }; + BufferList.prototype._offset = function _offset(offset) { + if (offset === 0) { + return [0, 0]; + } + let tot = 0; + for (let i = 0; i < this._bufs.length; i++) { + const _t = tot + this._bufs[i].length; + if (offset < _t || i === this._bufs.length - 1) { + return [i, offset - tot]; + } + tot = _t; + } + }; + BufferList.prototype._reverseOffset = function(blOffset) { + const bufferId = blOffset[0]; + let offset = blOffset[1]; + for (let i = 0; i < bufferId; i++) { + offset += this._bufs[i].length; + } + return offset; + }; + BufferList.prototype.get = function get(index) { + if (index > this.length || index < 0) { + return void 0; + } + const offset = this._offset(index); + return this._bufs[offset[0]][offset[1]]; + }; + BufferList.prototype.slice = function slice(start, end) { + if (typeof start === "number" && start < 0) { + start += this.length; + } + if (typeof end === "number" && end < 0) { + end += this.length; + } + return this.copy(null, 0, start, end); + }; + BufferList.prototype.copy = function copy(dst, dstStart, srcStart, srcEnd) { + if (typeof srcStart !== "number" || srcStart < 0) { + srcStart = 0; + } + if (typeof srcEnd !== "number" || srcEnd > this.length) { + srcEnd = this.length; + } + if (srcStart >= this.length) { + return dst || Buffer2.alloc(0); + } + if (srcEnd <= 0) { + return dst || Buffer2.alloc(0); + } + const copy2 = !!dst; + const off = this._offset(srcStart); + const len = srcEnd - srcStart; + let bytes = len; + let bufoff = copy2 && dstStart || 0; + let start = off[1]; + if (srcStart === 0 && srcEnd === this.length) { + if (!copy2) { + return this._bufs.length === 1 ? this._bufs[0] : Buffer2.concat(this._bufs, this.length); + } + for (let i = 0; i < this._bufs.length; i++) { + this._bufs[i].copy(dst, bufoff); + bufoff += this._bufs[i].length; + } + return dst; + } + if (bytes <= this._bufs[off[0]].length - start) { + return copy2 ? this._bufs[off[0]].copy(dst, dstStart, start, start + bytes) : this._bufs[off[0]].slice(start, start + bytes); + } + if (!copy2) { + dst = Buffer2.allocUnsafe(len); + } + for (let i = off[0]; i < this._bufs.length; i++) { + const l = this._bufs[i].length - start; + if (bytes > l) { + this._bufs[i].copy(dst, bufoff, start); + bufoff += l; + } else { + this._bufs[i].copy(dst, bufoff, start, start + bytes); + bufoff += l; + break; + } + bytes -= l; + if (start) { + start = 0; + } + } + if (dst.length > bufoff) + return dst.slice(0, bufoff); + return dst; + }; + BufferList.prototype.shallowSlice = function shallowSlice(start, end) { + start = start || 0; + end = typeof end !== "number" ? this.length : end; + if (start < 0) { + start += this.length; + } + if (end < 0) { + end += this.length; + } + if (start === end) { + return this._new(); + } + const startOffset = this._offset(start); + const endOffset = this._offset(end); + const buffers = this._bufs.slice(startOffset[0], endOffset[0] + 1); + if (endOffset[1] === 0) { + buffers.pop(); + } else { + buffers[buffers.length - 1] = buffers[buffers.length - 1].slice(0, endOffset[1]); + } + if (startOffset[1] !== 0) { + buffers[0] = buffers[0].slice(startOffset[1]); + } + return this._new(buffers); + }; + BufferList.prototype.toString = function toString(encoding, start, end) { + return this.slice(start, end).toString(encoding); + }; + BufferList.prototype.consume = function consume(bytes) { + bytes = Math.trunc(bytes); + if (Number.isNaN(bytes) || bytes <= 0) + return this; + while (this._bufs.length) { + if (bytes >= this._bufs[0].length) { + bytes -= this._bufs[0].length; + this.length -= this._bufs[0].length; + this._bufs.shift(); + } else { + this._bufs[0] = this._bufs[0].slice(bytes); + this.length -= bytes; + break; + } + } + return this; + }; + BufferList.prototype.duplicate = function duplicate() { + const copy = this._new(); + for (let i = 0; i < this._bufs.length; i++) { + copy.append(this._bufs[i]); + } + return copy; + }; + BufferList.prototype.append = function append(buf) { + if (buf == null) { + return this; + } + if (buf.buffer) { + this._appendBuffer(Buffer2.from(buf.buffer, buf.byteOffset, buf.byteLength)); + } else if (Array.isArray(buf)) { + for (let i = 0; i < buf.length; i++) { + this.append(buf[i]); + } + } else if (this._isBufferList(buf)) { + for (let i = 0; i < buf._bufs.length; i++) { + this.append(buf._bufs[i]); + } + } else { + if (typeof buf === "number") { + buf = buf.toString(); + } + this._appendBuffer(Buffer2.from(buf)); + } + return this; + }; + BufferList.prototype._appendBuffer = function appendBuffer(buf) { + this._bufs.push(buf); + this.length += buf.length; + }; + BufferList.prototype.indexOf = function(search, offset, encoding) { + if (encoding === void 0 && typeof offset === "string") { + encoding = offset; + offset = void 0; + } + if (typeof search === "function" || Array.isArray(search)) { + throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.'); + } else if (typeof search === "number") { + search = Buffer2.from([search]); + } else if (typeof search === "string") { + search = Buffer2.from(search, encoding); + } else if (this._isBufferList(search)) { + search = search.slice(); + } else if (Array.isArray(search.buffer)) { + search = Buffer2.from(search.buffer, search.byteOffset, search.byteLength); + } else if (!Buffer2.isBuffer(search)) { + search = Buffer2.from(search); + } + offset = Number(offset || 0); + if (isNaN(offset)) { + offset = 0; + } + if (offset < 0) { + offset = this.length + offset; + } + if (offset < 0) { + offset = 0; + } + if (search.length === 0) { + return offset > this.length ? this.length : offset; + } + const blOffset = this._offset(offset); + let blIndex = blOffset[0]; + let buffOffset = blOffset[1]; + for (; blIndex < this._bufs.length; blIndex++) { + const buff = this._bufs[blIndex]; + while (buffOffset < buff.length) { + const availableWindow = buff.length - buffOffset; + if (availableWindow >= search.length) { + const nativeSearchResult = buff.indexOf(search, buffOffset); + if (nativeSearchResult !== -1) { + return this._reverseOffset([blIndex, nativeSearchResult]); + } + buffOffset = buff.length - search.length + 1; + } else { + const revOffset = this._reverseOffset([blIndex, buffOffset]); + if (this._match(revOffset, search)) { + return revOffset; + } + buffOffset++; + } + } + buffOffset = 0; + } + return -1; + }; + BufferList.prototype._match = function(offset, search) { + if (this.length - offset < search.length) { + return false; + } + for (let searchOffset = 0; searchOffset < search.length; searchOffset++) { + if (this.get(offset + searchOffset) !== search[searchOffset]) { + return false; + } + } + return true; + }; + (function() { + const methods = { + readDoubleBE: 8, + readDoubleLE: 8, + readFloatBE: 4, + readFloatLE: 4, + readInt32BE: 4, + readInt32LE: 4, + readUInt32BE: 4, + readUInt32LE: 4, + readInt16BE: 2, + readInt16LE: 2, + readUInt16BE: 2, + readUInt16LE: 2, + readInt8: 1, + readUInt8: 1, + readIntBE: null, + readIntLE: null, + readUIntBE: null, + readUIntLE: null + }; + for (const m in methods) { + (function(m2) { + if (methods[m2] === null) { + BufferList.prototype[m2] = function(offset, byteLength) { + return this.slice(offset, offset + byteLength)[m2](0, byteLength); + }; + } else { + BufferList.prototype[m2] = function(offset = 0) { + return this.slice(offset, offset + methods[m2])[m2](0); + }; + } + })(m); + } + })(); + BufferList.prototype._isBufferList = function _isBufferList(b) { + return b instanceof BufferList || BufferList.isBufferList(b); + }; + BufferList.isBufferList = function isBufferList(b) { + return b != null && b[symbol]; + }; + module2.exports = BufferList; + } +}); + +// ../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js +var require_bl = __commonJS({ + "../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js"(exports2, module2) { + "use strict"; + var DuplexStream = require_readable().Duplex; + var inherits = require_inherits(); + var BufferList = require_BufferList2(); + function BufferListStream(callback) { + if (!(this instanceof BufferListStream)) { + return new BufferListStream(callback); + } + if (typeof callback === "function") { + this._callback = callback; + const piper = function piper2(err) { + if (this._callback) { + this._callback(err); + this._callback = null; + } + }.bind(this); + this.on("pipe", function onPipe(src) { + src.on("error", piper); + }); + this.on("unpipe", function onUnpipe(src) { + src.removeListener("error", piper); + }); + callback = null; + } + BufferList._init.call(this, callback); + DuplexStream.call(this); + } + inherits(BufferListStream, DuplexStream); + Object.assign(BufferListStream.prototype, BufferList.prototype); + BufferListStream.prototype._new = function _new(callback) { + return new BufferListStream(callback); + }; + BufferListStream.prototype._write = function _write(buf, encoding, callback) { + this._appendBuffer(buf); + if (typeof callback === "function") { + callback(); + } + }; + BufferListStream.prototype._read = function _read(size) { + if (!this.length) { + return this.push(null); + } + size = Math.min(size, this.length); + this.push(this.slice(0, size)); + this.consume(size); + }; + BufferListStream.prototype.end = function end(chunk) { + DuplexStream.prototype.end.call(this, chunk); + if (this._callback) { + this._callback(null, this.slice()); + this._callback = null; + } + }; + BufferListStream.prototype._destroy = function _destroy(err, cb) { + this._bufs.length = 0; + this.length = 0; + cb(err); + }; + BufferListStream.prototype._isBufferList = function _isBufferList(b) { + return b instanceof BufferListStream || b instanceof BufferList || BufferListStream.isBufferList(b); + }; + BufferListStream.isBufferList = BufferList.isBufferList; + module2.exports = BufferListStream; + module2.exports.BufferListStream = BufferListStream; + module2.exports.BufferList = BufferList; + } +}); + +// ../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js +var require_headers = __commonJS({ + "../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js"(exports2) { + var alloc = Buffer.alloc; + var ZEROS = "0000000000000000000"; + var SEVENS = "7777777777777777777"; + var ZERO_OFFSET = "0".charCodeAt(0); + var USTAR_MAGIC = Buffer.from("ustar\0", "binary"); + var USTAR_VER = Buffer.from("00", "binary"); + var GNU_MAGIC = Buffer.from("ustar ", "binary"); + var GNU_VER = Buffer.from(" \0", "binary"); + var MASK = parseInt("7777", 8); + var MAGIC_OFFSET = 257; + var VERSION_OFFSET = 263; + var clamp = function(index, len, defaultValue) { + if (typeof index !== "number") + return defaultValue; + index = ~~index; + if (index >= len) + return len; + if (index >= 0) + return index; + index += len; + if (index >= 0) + return index; + return 0; + }; + var toType = function(flag) { + switch (flag) { + case 0: + return "file"; + case 1: + return "link"; + case 2: + return "symlink"; + case 3: + return "character-device"; + case 4: + return "block-device"; + case 5: + return "directory"; + case 6: + return "fifo"; + case 7: + return "contiguous-file"; + case 72: + return "pax-header"; + case 55: + return "pax-global-header"; + case 27: + return "gnu-long-link-path"; + case 28: + case 30: + return "gnu-long-path"; + } + return null; + }; + var toTypeflag = function(flag) { + switch (flag) { + case "file": + return 0; + case "link": + return 1; + case "symlink": + return 2; + case "character-device": + return 3; + case "block-device": + return 4; + case "directory": + return 5; + case "fifo": + return 6; + case "contiguous-file": + return 7; + case "pax-header": + return 72; + } + return 0; + }; + var indexOf = function(block, num, offset, end) { + for (; offset < end; offset++) { + if (block[offset] === num) + return offset; + } + return end; + }; + var cksum = function(block) { + var sum = 8 * 32; + for (var i = 0; i < 148; i++) + sum += block[i]; + for (var j = 156; j < 512; j++) + sum += block[j]; + return sum; + }; + var encodeOct = function(val, n) { + val = val.toString(8); + if (val.length > n) + return SEVENS.slice(0, n) + " "; + else + return ZEROS.slice(0, n - val.length) + val + " "; + }; + function parse256(buf) { + var positive; + if (buf[0] === 128) + positive = true; + else if (buf[0] === 255) + positive = false; + else + return null; + var tuple = []; + for (var i = buf.length - 1; i > 0; i--) { + var byte = buf[i]; + if (positive) + tuple.push(byte); + else + tuple.push(255 - byte); + } + var sum = 0; + var l = tuple.length; + for (i = 0; i < l; i++) { + sum += tuple[i] * Math.pow(256, i); + } + return positive ? sum : -1 * sum; + } + var decodeOct = function(val, offset, length) { + val = val.slice(offset, offset + length); + offset = 0; + if (val[offset] & 128) { + return parse256(val); + } else { + while (offset < val.length && val[offset] === 32) + offset++; + var end = clamp(indexOf(val, 32, offset, val.length), val.length, val.length); + while (offset < end && val[offset] === 0) + offset++; + if (end === offset) + return 0; + return parseInt(val.slice(offset, end).toString(), 8); + } + }; + var decodeStr = function(val, offset, length, encoding) { + return val.slice(offset, indexOf(val, 0, offset, offset + length)).toString(encoding); + }; + var addLength = function(str) { + var len = Buffer.byteLength(str); + var digits = Math.floor(Math.log(len) / Math.log(10)) + 1; + if (len + digits >= Math.pow(10, digits)) + digits++; + return len + digits + str; + }; + exports2.decodeLongPath = function(buf, encoding) { + return decodeStr(buf, 0, buf.length, encoding); + }; + exports2.encodePax = function(opts) { + var result2 = ""; + if (opts.name) + result2 += addLength(" path=" + opts.name + "\n"); + if (opts.linkname) + result2 += addLength(" linkpath=" + opts.linkname + "\n"); + var pax = opts.pax; + if (pax) { + for (var key in pax) { + result2 += addLength(" " + key + "=" + pax[key] + "\n"); + } + } + return Buffer.from(result2); + }; + exports2.decodePax = function(buf) { + var result2 = {}; + while (buf.length) { + var i = 0; + while (i < buf.length && buf[i] !== 32) + i++; + var len = parseInt(buf.slice(0, i).toString(), 10); + if (!len) + return result2; + var b = buf.slice(i + 1, len - 1).toString(); + var keyIndex = b.indexOf("="); + if (keyIndex === -1) + return result2; + result2[b.slice(0, keyIndex)] = b.slice(keyIndex + 1); + buf = buf.slice(len); + } + return result2; + }; + exports2.encode = function(opts) { + var buf = alloc(512); + var name = opts.name; + var prefix = ""; + if (opts.typeflag === 5 && name[name.length - 1] !== "/") + name += "/"; + if (Buffer.byteLength(name) !== name.length) + return null; + while (Buffer.byteLength(name) > 100) { + var i = name.indexOf("/"); + if (i === -1) + return null; + prefix += prefix ? "/" + name.slice(0, i) : name.slice(0, i); + name = name.slice(i + 1); + } + if (Buffer.byteLength(name) > 100 || Buffer.byteLength(prefix) > 155) + return null; + if (opts.linkname && Buffer.byteLength(opts.linkname) > 100) + return null; + buf.write(name); + buf.write(encodeOct(opts.mode & MASK, 6), 100); + buf.write(encodeOct(opts.uid, 6), 108); + buf.write(encodeOct(opts.gid, 6), 116); + buf.write(encodeOct(opts.size, 11), 124); + buf.write(encodeOct(opts.mtime.getTime() / 1e3 | 0, 11), 136); + buf[156] = ZERO_OFFSET + toTypeflag(opts.type); + if (opts.linkname) + buf.write(opts.linkname, 157); + USTAR_MAGIC.copy(buf, MAGIC_OFFSET); + USTAR_VER.copy(buf, VERSION_OFFSET); + if (opts.uname) + buf.write(opts.uname, 265); + if (opts.gname) + buf.write(opts.gname, 297); + buf.write(encodeOct(opts.devmajor || 0, 6), 329); + buf.write(encodeOct(opts.devminor || 0, 6), 337); + if (prefix) + buf.write(prefix, 345); + buf.write(encodeOct(cksum(buf), 6), 148); + return buf; + }; + exports2.decode = function(buf, filenameEncoding, allowUnknownFormat) { + var typeflag = buf[156] === 0 ? 0 : buf[156] - ZERO_OFFSET; + var name = decodeStr(buf, 0, 100, filenameEncoding); + var mode = decodeOct(buf, 100, 8); + var uid = decodeOct(buf, 108, 8); + var gid = decodeOct(buf, 116, 8); + var size = decodeOct(buf, 124, 12); + var mtime = decodeOct(buf, 136, 12); + var type = toType(typeflag); + var linkname = buf[157] === 0 ? null : decodeStr(buf, 157, 100, filenameEncoding); + var uname = decodeStr(buf, 265, 32); + var gname = decodeStr(buf, 297, 32); + var devmajor = decodeOct(buf, 329, 8); + var devminor = decodeOct(buf, 337, 8); + var c = cksum(buf); + if (c === 8 * 32) + return null; + if (c !== decodeOct(buf, 148, 8)) + throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?"); + if (USTAR_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0) { + if (buf[345]) + name = decodeStr(buf, 345, 155, filenameEncoding) + "/" + name; + } else if (GNU_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0 && GNU_VER.compare(buf, VERSION_OFFSET, VERSION_OFFSET + 2) === 0) { + } else { + if (!allowUnknownFormat) { + throw new Error("Invalid tar header: unknown format."); + } + } + if (typeflag === 0 && name && name[name.length - 1] === "/") + typeflag = 5; + return { + name, + mode, + uid, + gid, + size, + mtime: new Date(1e3 * mtime), + type, + linkname, + uname, + gname, + devmajor, + devminor + }; + }; + } +}); + +// ../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js +var require_extract = __commonJS({ + "../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js"(exports2, module2) { + var util = require("util"); + var bl = require_bl(); + var headers = require_headers(); + var Writable = require_readable().Writable; + var PassThrough = require_readable().PassThrough; + var noop = function() { + }; + var overflow = function(size) { + size &= 511; + return size && 512 - size; + }; + var emptyStream = function(self2, offset) { + var s = new Source(self2, offset); + s.end(); + return s; + }; + var mixinPax = function(header, pax) { + if (pax.path) + header.name = pax.path; + if (pax.linkpath) + header.linkname = pax.linkpath; + if (pax.size) + header.size = parseInt(pax.size, 10); + header.pax = pax; + return header; + }; + var Source = function(self2, offset) { + this._parent = self2; + this.offset = offset; + PassThrough.call(this, { autoDestroy: false }); + }; + util.inherits(Source, PassThrough); + Source.prototype.destroy = function(err) { + this._parent.destroy(err); + }; + var Extract = function(opts) { + if (!(this instanceof Extract)) + return new Extract(opts); + Writable.call(this, opts); + opts = opts || {}; + this._offset = 0; + this._buffer = bl(); + this._missing = 0; + this._partial = false; + this._onparse = noop; + this._header = null; + this._stream = null; + this._overflow = null; + this._cb = null; + this._locked = false; + this._destroyed = false; + this._pax = null; + this._paxGlobal = null; + this._gnuLongPath = null; + this._gnuLongLinkPath = null; + var self2 = this; + var b = self2._buffer; + var oncontinue = function() { + self2._continue(); + }; + var onunlock = function(err) { + self2._locked = false; + if (err) + return self2.destroy(err); + if (!self2._stream) + oncontinue(); + }; + var onstreamend = function() { + self2._stream = null; + var drain = overflow(self2._header.size); + if (drain) + self2._parse(drain, ondrain); + else + self2._parse(512, onheader); + if (!self2._locked) + oncontinue(); + }; + var ondrain = function() { + self2._buffer.consume(overflow(self2._header.size)); + self2._parse(512, onheader); + oncontinue(); + }; + var onpaxglobalheader = function() { + var size = self2._header.size; + self2._paxGlobal = headers.decodePax(b.slice(0, size)); + b.consume(size); + onstreamend(); + }; + var onpaxheader = function() { + var size = self2._header.size; + self2._pax = headers.decodePax(b.slice(0, size)); + if (self2._paxGlobal) + self2._pax = Object.assign({}, self2._paxGlobal, self2._pax); + b.consume(size); + onstreamend(); + }; + var ongnulongpath = function() { + var size = self2._header.size; + this._gnuLongPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); + b.consume(size); + onstreamend(); + }; + var ongnulonglinkpath = function() { + var size = self2._header.size; + this._gnuLongLinkPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); + b.consume(size); + onstreamend(); + }; + var onheader = function() { + var offset = self2._offset; + var header; + try { + header = self2._header = headers.decode(b.slice(0, 512), opts.filenameEncoding, opts.allowUnknownFormat); + } catch (err) { + self2.emit("error", err); + } + b.consume(512); + if (!header) { + self2._parse(512, onheader); + oncontinue(); + return; + } + if (header.type === "gnu-long-path") { + self2._parse(header.size, ongnulongpath); + oncontinue(); + return; + } + if (header.type === "gnu-long-link-path") { + self2._parse(header.size, ongnulonglinkpath); + oncontinue(); + return; + } + if (header.type === "pax-global-header") { + self2._parse(header.size, onpaxglobalheader); + oncontinue(); + return; + } + if (header.type === "pax-header") { + self2._parse(header.size, onpaxheader); + oncontinue(); + return; + } + if (self2._gnuLongPath) { + header.name = self2._gnuLongPath; + self2._gnuLongPath = null; + } + if (self2._gnuLongLinkPath) { + header.linkname = self2._gnuLongLinkPath; + self2._gnuLongLinkPath = null; + } + if (self2._pax) { + self2._header = header = mixinPax(header, self2._pax); + self2._pax = null; + } + self2._locked = true; + if (!header.size || header.type === "directory") { + self2._parse(512, onheader); + self2.emit("entry", header, emptyStream(self2, offset), onunlock); + return; + } + self2._stream = new Source(self2, offset); + self2.emit("entry", header, self2._stream, onunlock); + self2._parse(header.size, onstreamend); + oncontinue(); + }; + this._onheader = onheader; + this._parse(512, onheader); + }; + util.inherits(Extract, Writable); + Extract.prototype.destroy = function(err) { + if (this._destroyed) + return; + this._destroyed = true; + if (err) + this.emit("error", err); + this.emit("close"); + if (this._stream) + this._stream.emit("close"); + }; + Extract.prototype._parse = function(size, onparse) { + if (this._destroyed) + return; + this._offset += size; + this._missing = size; + if (onparse === this._onheader) + this._partial = false; + this._onparse = onparse; + }; + Extract.prototype._continue = function() { + if (this._destroyed) + return; + var cb = this._cb; + this._cb = noop; + if (this._overflow) + this._write(this._overflow, void 0, cb); + else + cb(); + }; + Extract.prototype._write = function(data, enc, cb) { + if (this._destroyed) + return; + var s = this._stream; + var b = this._buffer; + var missing = this._missing; + if (data.length) + this._partial = true; + if (data.length < missing) { + this._missing -= data.length; + this._overflow = null; + if (s) + return s.write(data, cb); + b.append(data); + return cb(); + } + this._cb = cb; + this._missing = 0; + var overflow2 = null; + if (data.length > missing) { + overflow2 = data.slice(missing); + data = data.slice(0, missing); + } + if (s) + s.end(data); + else + b.append(data); + this._overflow = overflow2; + this._onparse(); + }; + Extract.prototype._final = function(cb) { + if (this._partial) + return this.destroy(new Error("Unexpected end of data")); + cb(); + }; + module2.exports = Extract; + } +}); + +// ../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js +var require_fs_constants = __commonJS({ + "../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js"(exports2, module2) { + module2.exports = require("fs").constants || require("constants"); + } +}); + +// ../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js +var require_pack = __commonJS({ + "../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js"(exports2, module2) { + var constants = require_fs_constants(); + var eos = require_end_of_stream2(); + var inherits = require_inherits(); + var alloc = Buffer.alloc; + var Readable = require_readable().Readable; + var Writable = require_readable().Writable; + var StringDecoder = require("string_decoder").StringDecoder; + var headers = require_headers(); + var DMODE = parseInt("755", 8); + var FMODE = parseInt("644", 8); + var END_OF_TAR = alloc(1024); + var noop = function() { + }; + var overflow = function(self2, size) { + size &= 511; + if (size) + self2.push(END_OF_TAR.slice(0, 512 - size)); + }; + function modeToType(mode) { + switch (mode & constants.S_IFMT) { + case constants.S_IFBLK: + return "block-device"; + case constants.S_IFCHR: + return "character-device"; + case constants.S_IFDIR: + return "directory"; + case constants.S_IFIFO: + return "fifo"; + case constants.S_IFLNK: + return "symlink"; + } + return "file"; + } + var Sink = function(to) { + Writable.call(this); + this.written = 0; + this._to = to; + this._destroyed = false; + }; + inherits(Sink, Writable); + Sink.prototype._write = function(data, enc, cb) { + this.written += data.length; + if (this._to.push(data)) + return cb(); + this._to._drain = cb; + }; + Sink.prototype.destroy = function() { + if (this._destroyed) + return; + this._destroyed = true; + this.emit("close"); + }; + var LinkSink = function() { + Writable.call(this); + this.linkname = ""; + this._decoder = new StringDecoder("utf-8"); + this._destroyed = false; + }; + inherits(LinkSink, Writable); + LinkSink.prototype._write = function(data, enc, cb) { + this.linkname += this._decoder.write(data); + cb(); + }; + LinkSink.prototype.destroy = function() { + if (this._destroyed) + return; + this._destroyed = true; + this.emit("close"); + }; + var Void = function() { + Writable.call(this); + this._destroyed = false; + }; + inherits(Void, Writable); + Void.prototype._write = function(data, enc, cb) { + cb(new Error("No body allowed for this entry")); + }; + Void.prototype.destroy = function() { + if (this._destroyed) + return; + this._destroyed = true; + this.emit("close"); + }; + var Pack = function(opts) { + if (!(this instanceof Pack)) + return new Pack(opts); + Readable.call(this, opts); + this._drain = noop; + this._finalized = false; + this._finalizing = false; + this._destroyed = false; + this._stream = null; + }; + inherits(Pack, Readable); + Pack.prototype.entry = function(header, buffer, callback) { + if (this._stream) + throw new Error("already piping an entry"); + if (this._finalized || this._destroyed) + return; + if (typeof buffer === "function") { + callback = buffer; + buffer = null; + } + if (!callback) + callback = noop; + var self2 = this; + if (!header.size || header.type === "symlink") + header.size = 0; + if (!header.type) + header.type = modeToType(header.mode); + if (!header.mode) + header.mode = header.type === "directory" ? DMODE : FMODE; + if (!header.uid) + header.uid = 0; + if (!header.gid) + header.gid = 0; + if (!header.mtime) + header.mtime = /* @__PURE__ */ new Date(); + if (typeof buffer === "string") + buffer = Buffer.from(buffer); + if (Buffer.isBuffer(buffer)) { + header.size = buffer.length; + this._encode(header); + var ok = this.push(buffer); + overflow(self2, header.size); + if (ok) + process.nextTick(callback); + else + this._drain = callback; + return new Void(); + } + if (header.type === "symlink" && !header.linkname) { + var linkSink = new LinkSink(); + eos(linkSink, function(err) { + if (err) { + self2.destroy(); + return callback(err); + } + header.linkname = linkSink.linkname; + self2._encode(header); + callback(); + }); + return linkSink; + } + this._encode(header); + if (header.type !== "file" && header.type !== "contiguous-file") { + process.nextTick(callback); + return new Void(); + } + var sink = new Sink(this); + this._stream = sink; + eos(sink, function(err) { + self2._stream = null; + if (err) { + self2.destroy(); + return callback(err); + } + if (sink.written !== header.size) { + self2.destroy(); + return callback(new Error("size mismatch")); + } + overflow(self2, header.size); + if (self2._finalizing) + self2.finalize(); + callback(); + }); + return sink; + }; + Pack.prototype.finalize = function() { + if (this._stream) { + this._finalizing = true; + return; + } + if (this._finalized) + return; + this._finalized = true; + this.push(END_OF_TAR); + this.push(null); + }; + Pack.prototype.destroy = function(err) { + if (this._destroyed) + return; + this._destroyed = true; + if (err) + this.emit("error", err); + this.emit("close"); + if (this._stream && this._stream.destroy) + this._stream.destroy(); + }; + Pack.prototype._encode = function(header) { + if (!header.pax) { + var buf = headers.encode(header); + if (buf) { + this.push(buf); + return; + } + } + this._encodePax(header); + }; + Pack.prototype._encodePax = function(header) { + var paxHeader = headers.encodePax({ + name: header.name, + linkname: header.linkname, + pax: header.pax + }); + var newHeader = { + name: "PaxHeader", + mode: header.mode, + uid: header.uid, + gid: header.gid, + size: paxHeader.length, + mtime: header.mtime, + type: "pax-header", + linkname: header.linkname && "PaxHeader", + uname: header.uname, + gname: header.gname, + devmajor: header.devmajor, + devminor: header.devminor + }; + this.push(headers.encode(newHeader)); + this.push(paxHeader); + overflow(this, paxHeader.length); + newHeader.size = header.size; + newHeader.type = header.type; + this.push(headers.encode(newHeader)); + }; + Pack.prototype._read = function(n) { + var drain = this._drain; + this._drain = noop; + drain(); + }; + module2.exports = Pack; + } +}); + +// ../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js +var require_tar_stream = __commonJS({ + "../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js"(exports2) { + exports2.extract = require_extract(); + exports2.pack = require_pack(); + } +}); + +// ../store/cafs/lib/addFilesFromTarball.js +var require_addFilesFromTarball = __commonJS({ + "../store/cafs/lib/addFilesFromTarball.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addFilesFromTarball = void 0; + var decompress_maybe_1 = __importDefault4(require_decompress_maybe()); + var safe_promise_defer_1 = __importDefault4(require_lib45()); + var tar_stream_1 = __importDefault4(require_tar_stream()); + var parseJson_1 = require_parseJson(); + async function addFilesFromTarball(addStreamToCafs, _ignore, stream, manifest) { + const ignore = _ignore ?? (() => false); + const extract = tar_stream_1.default.extract({ allowUnknownFormat: true }); + const filesIndex = {}; + let unpipeManifestStream; + let lastManifest; + await new Promise((resolve, reject) => { + extract.on("entry", (header, fileStream, next) => { + const filename = header.name.slice(header.name.indexOf("/") + 1).replace(/\/\//g, "/"); + if (header.type !== "file" || ignore(filename)) { + fileStream.resume(); + next(); + return; + } + if (filename === "package.json" && manifest != null) { + unpipeManifestStream?.(); + lastManifest = (0, safe_promise_defer_1.default)(); + unpipeManifestStream = (0, parseJson_1.parseJsonStream)(fileStream, lastManifest); + } + const writeResult = addStreamToCafs(fileStream, header.mode); + filesIndex[filename] = { + mode: header.mode, + size: header.size, + writeResult + }; + next(); + }); + extract.on("finish", () => { + resolve(); + }); + extract.on("error", reject); + stream.on("error", reject).pipe((0, decompress_maybe_1.default)()).on("error", reject).pipe(extract); + }); + if (!filesIndex["package.json"] && manifest != null) { + manifest.resolve(void 0); + } else if (lastManifest && manifest) { + lastManifest().then(manifest.resolve).catch(manifest.reject); + } + return filesIndex; + } + exports2.addFilesFromTarball = addFilesFromTarball; + } +}); + +// ../store/cafs/lib/getFilePathInCafs.js +var require_getFilePathInCafs = __commonJS({ + "../store/cafs/lib/getFilePathInCafs.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.contentPathFromHex = exports2.getFilePathInCafs = exports2.getFilePathByModeInCafs = exports2.modeIsExecutable = void 0; + var path_1 = __importDefault4(require("path")); + var ssri_1 = __importDefault4(require_lib44()); + var modeIsExecutable = (mode) => (mode & 73) === 73; + exports2.modeIsExecutable = modeIsExecutable; + function getFilePathByModeInCafs(cafsDir, integrity, mode) { + const fileType = (0, exports2.modeIsExecutable)(mode) ? "exec" : "nonexec"; + return path_1.default.join(cafsDir, contentPathFromIntegrity(integrity, fileType)); + } + exports2.getFilePathByModeInCafs = getFilePathByModeInCafs; + function getFilePathInCafs(cafsDir, integrity, fileType) { + return path_1.default.join(cafsDir, contentPathFromIntegrity(integrity, fileType)); + } + exports2.getFilePathInCafs = getFilePathInCafs; + function contentPathFromIntegrity(integrity, fileType) { + const sri = ssri_1.default.parse(integrity, { single: true }); + return contentPathFromHex(fileType, sri.hexDigest()); + } + function contentPathFromHex(fileType, hex) { + const p = path_1.default.join(hex.slice(0, 2), hex.slice(2)); + switch (fileType) { + case "exec": + return `${p}-exec`; + case "nonexec": + return p; + case "index": + return `${p}-index.json`; + } + } + exports2.contentPathFromHex = contentPathFromHex; + } +}); + +// ../store/cafs/lib/checkPkgFilesIntegrity.js +var require_checkPkgFilesIntegrity = __commonJS({ + "../store/cafs/lib/checkPkgFilesIntegrity.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.verifyFileIntegrity = exports2.checkPkgFilesIntegrity = void 0; + var fs_1 = require("fs"); + var graceful_fs_1 = __importDefault4(require_lib15()); + var rimraf_1 = __importDefault4(require_rimraf2()); + var p_limit_12 = __importDefault4(require_p_limit()); + var ssri_1 = __importDefault4(require_lib44()); + var getFilePathInCafs_1 = require_getFilePathInCafs(); + var parseJson_1 = require_parseJson(); + var limit = (0, p_limit_12.default)(20); + var MAX_BULK_SIZE = 1 * 1024 * 1024; + global["verifiedFileIntegrity"] = 0; + async function checkPkgFilesIntegrity(cafsDir, pkgIndex, manifest) { + const verifiedFilesCache = /* @__PURE__ */ new Set(); + const _checkFilesIntegrity = checkFilesIntegrity.bind(null, verifiedFilesCache, cafsDir); + const verified = await _checkFilesIntegrity(pkgIndex.files, manifest); + if (!verified) + return false; + if (pkgIndex.sideEffects) { + await Promise.all(Object.entries(pkgIndex.sideEffects).map(async ([sideEffectName, files]) => { + if (!await _checkFilesIntegrity(files)) { + delete pkgIndex.sideEffects[sideEffectName]; + } + })); + } + return true; + } + exports2.checkPkgFilesIntegrity = checkPkgFilesIntegrity; + async function checkFilesIntegrity(verifiedFilesCache, cafsDir, files, manifest) { + let allVerified = true; + await Promise.all(Object.entries(files).map(async ([f, fstat]) => limit(async () => { + if (!fstat.integrity) { + throw new Error(`Integrity checksum is missing for ${f}`); + } + const filename = (0, getFilePathInCafs_1.getFilePathByModeInCafs)(cafsDir, fstat.integrity, fstat.mode); + const deferredManifest = manifest && f === "package.json" ? manifest : void 0; + if (!deferredManifest && verifiedFilesCache.has(filename)) + return; + if (await verifyFile(filename, fstat, deferredManifest)) { + verifiedFilesCache.add(filename); + } else { + allVerified = false; + } + }))); + if (manifest && !files["package.json"]) { + manifest.resolve(void 0); + } + return allVerified; + } + async function verifyFile(filename, fstat, deferredManifest) { + const currentFile = await checkFile(filename, fstat.checkedAt); + if (currentFile == null) + return false; + if (currentFile.isModified) { + if (currentFile.size !== fstat.size) { + await (0, rimraf_1.default)(filename); + return false; + } + return verifyFileIntegrity(filename, fstat, deferredManifest); + } + if (deferredManifest != null) { + (0, parseJson_1.parseJsonBuffer)(await graceful_fs_1.default.readFile(filename), deferredManifest); + } + return true; + } + async function verifyFileIntegrity(filename, expectedFile, deferredManifest) { + global["verifiedFileIntegrity"]++; + try { + if (expectedFile.size > MAX_BULK_SIZE && deferredManifest == null) { + const ok2 = Boolean(await ssri_1.default.checkStream(graceful_fs_1.default.createReadStream(filename), expectedFile.integrity)); + if (!ok2) { + await (0, rimraf_1.default)(filename); + } + return ok2; + } + const data = await graceful_fs_1.default.readFile(filename); + const ok = Boolean(ssri_1.default.checkData(data, expectedFile.integrity)); + if (!ok) { + await (0, rimraf_1.default)(filename); + } else if (deferredManifest != null) { + (0, parseJson_1.parseJsonBuffer)(data, deferredManifest); + } + return ok; + } catch (err) { + switch (err.code) { + case "ENOENT": + return false; + case "EINTEGRITY": { + await (0, rimraf_1.default)(filename); + return false; + } + } + throw err; + } + } + exports2.verifyFileIntegrity = verifyFileIntegrity; + async function checkFile(filename, checkedAt) { + try { + const { mtimeMs, size } = await fs_1.promises.stat(filename); + return { + isModified: mtimeMs - (checkedAt ?? 0) > 100, + size + }; + } catch (err) { + if (err.code === "ENOENT") + return null; + throw err; + } + } + } +}); + +// ../store/cafs/lib/readManifestFromStore.js +var require_readManifestFromStore = __commonJS({ + "../store/cafs/lib/readManifestFromStore.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readManifestFromStore = void 0; + var graceful_fs_1 = __importDefault4(require_lib15()); + var getFilePathInCafs_1 = require_getFilePathInCafs(); + var parseJson_1 = require_parseJson(); + async function readManifestFromStore(cafsDir, pkgIndex, deferredManifest) { + const pkg = pkgIndex.files["package.json"]; + if (deferredManifest) { + if (pkg) { + const fileName = (0, getFilePathInCafs_1.getFilePathByModeInCafs)(cafsDir, pkg.integrity, pkg.mode); + (0, parseJson_1.parseJsonBuffer)(await graceful_fs_1.default.readFile(fileName), deferredManifest); + } else { + deferredManifest.resolve(void 0); + } + } + return true; + } + exports2.readManifestFromStore = readManifestFromStore; + } +}); + +// ../store/cafs/lib/writeFile.js +var require_writeFile = __commonJS({ + "../store/cafs/lib/writeFile.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.writeFile = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var graceful_fs_1 = __importDefault4(require_lib15()); + var dirs = /* @__PURE__ */ new Set(); + async function writeFile(fileDest, buffer, mode) { + await makeDirForFile(fileDest); + await graceful_fs_1.default.writeFile(fileDest, buffer, { mode }); + } + exports2.writeFile = writeFile; + async function makeDirForFile(fileDest) { + const dir = path_1.default.dirname(fileDest); + if (!dirs.has(dir)) { + await fs_1.promises.mkdir(dir, { recursive: true }); + dirs.add(dir); + } + } + } +}); + +// ../store/cafs/lib/index.js +var require_lib46 = __commonJS({ + "../store/cafs/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createCafs = exports2.getFilePathInCafs = exports2.getFilePathByModeInCafs = exports2.readManifestFromStore = exports2.checkPkgFilesIntegrity = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var get_stream_1 = __importDefault4(require_get_stream()); + var path_temp_1 = __importDefault4(require_path_temp()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + var ssri_1 = __importDefault4(require_lib44()); + var addFilesFromDir_1 = require_addFilesFromDir(); + var addFilesFromTarball_1 = require_addFilesFromTarball(); + var checkPkgFilesIntegrity_1 = require_checkPkgFilesIntegrity(); + Object.defineProperty(exports2, "checkPkgFilesIntegrity", { enumerable: true, get: function() { + return checkPkgFilesIntegrity_1.checkPkgFilesIntegrity; + } }); + var readManifestFromStore_1 = require_readManifestFromStore(); + Object.defineProperty(exports2, "readManifestFromStore", { enumerable: true, get: function() { + return readManifestFromStore_1.readManifestFromStore; + } }); + var getFilePathInCafs_1 = require_getFilePathInCafs(); + Object.defineProperty(exports2, "getFilePathInCafs", { enumerable: true, get: function() { + return getFilePathInCafs_1.getFilePathInCafs; + } }); + Object.defineProperty(exports2, "getFilePathByModeInCafs", { enumerable: true, get: function() { + return getFilePathInCafs_1.getFilePathByModeInCafs; + } }); + var writeFile_1 = require_writeFile(); + function createCafs(cafsDir, ignore) { + const locker = /* @__PURE__ */ new Map(); + const _writeBufferToCafs = writeBufferToCafs.bind(null, locker, cafsDir); + const addStream = addStreamToCafs.bind(null, _writeBufferToCafs); + const addBuffer = addBufferToCafs.bind(null, _writeBufferToCafs); + return { + addFilesFromDir: addFilesFromDir_1.addFilesFromDir.bind(null, { addBuffer, addStream }), + addFilesFromTarball: addFilesFromTarball_1.addFilesFromTarball.bind(null, addStream, ignore ?? null), + getFilePathInCafs: getFilePathInCafs_1.getFilePathInCafs.bind(null, cafsDir), + getFilePathByModeInCafs: getFilePathInCafs_1.getFilePathByModeInCafs.bind(null, cafsDir) + }; + } + exports2.createCafs = createCafs; + async function addStreamToCafs(writeBufferToCafs2, fileStream, mode) { + const buffer = await get_stream_1.default.buffer(fileStream); + return addBufferToCafs(writeBufferToCafs2, buffer, mode); + } + async function addBufferToCafs(writeBufferToCafs2, buffer, mode) { + const integrity = ssri_1.default.fromData(buffer); + const isExecutable = (0, getFilePathInCafs_1.modeIsExecutable)(mode); + const fileDest = (0, getFilePathInCafs_1.contentPathFromHex)(isExecutable ? "exec" : "nonexec", integrity.hexDigest()); + const checkedAt = await writeBufferToCafs2(buffer, fileDest, isExecutable ? 493 : void 0, integrity); + return { checkedAt, integrity }; + } + async function writeBufferToCafs(locker, cafsDir, buffer, fileDest, mode, integrity) { + fileDest = path_1.default.join(cafsDir, fileDest); + if (locker.has(fileDest)) { + return locker.get(fileDest); + } + const p = (async () => { + if (await existsSame(fileDest, integrity)) { + return Date.now(); + } + const temp = (0, path_temp_1.default)(path_1.default.dirname(fileDest)); + await (0, writeFile_1.writeFile)(temp, buffer, mode); + const birthtimeMs = Date.now(); + await (0, rename_overwrite_1.default)(temp, fileDest); + return birthtimeMs; + })(); + locker.set(fileDest, p); + return p; + } + async function existsSame(filename, integrity) { + let existingFile; + try { + existingFile = await fs_1.promises.stat(filename); + } catch (err) { + return false; + } + return (0, checkPkgFilesIntegrity_1.verifyFileIntegrity)(filename, { + size: existingFile.size, + integrity + }); + } + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/fs/index.js +var require_fs7 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/fs/index.js"(exports2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var api = [ + "access", + "appendFile", + "chmod", + "chown", + "close", + "copyFile", + "fchmod", + "fchown", + "fdatasync", + "fstat", + "fsync", + "ftruncate", + "futimes", + "lchmod", + "lchown", + "link", + "lstat", + "mkdir", + "mkdtemp", + "open", + "opendir", + "readdir", + "readFile", + "readlink", + "realpath", + "rename", + "rm", + "rmdir", + "stat", + "symlink", + "truncate", + "unlink", + "utimes", + "writeFile" + ].filter((key) => { + return typeof fs2[key] === "function"; + }); + Object.assign(exports2, fs2); + api.forEach((method) => { + exports2[method] = u(fs2[method]); + }); + exports2.exists = function(filename, callback) { + if (typeof callback === "function") { + return fs2.exists(filename, callback); + } + return new Promise((resolve) => { + return fs2.exists(filename, resolve); + }); + }; + exports2.read = function(fd, buffer, offset, length, position, callback) { + if (typeof callback === "function") { + return fs2.read(fd, buffer, offset, length, position, callback); + } + return new Promise((resolve, reject) => { + fs2.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => { + if (err) + return reject(err); + resolve({ bytesRead, buffer: buffer2 }); + }); + }); + }; + exports2.write = function(fd, buffer, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.write(fd, buffer, ...args2); + } + return new Promise((resolve, reject) => { + fs2.write(fd, buffer, ...args2, (err, bytesWritten, buffer2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffer: buffer2 }); + }); + }); + }; + exports2.readv = function(fd, buffers, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.readv(fd, buffers, ...args2); + } + return new Promise((resolve, reject) => { + fs2.readv(fd, buffers, ...args2, (err, bytesRead, buffers2) => { + if (err) + return reject(err); + resolve({ bytesRead, buffers: buffers2 }); + }); + }); + }; + exports2.writev = function(fd, buffers, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.writev(fd, buffers, ...args2); + } + return new Promise((resolve, reject) => { + fs2.writev(fd, buffers, ...args2, (err, bytesWritten, buffers2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffers: buffers2 }); + }); + }); + }; + if (typeof fs2.realpath.native === "function") { + exports2.realpath.native = u(fs2.realpath.native); + } else { + process.emitWarning( + "fs.realpath.native is not a function. Is fs being monkey-patched?", + "Warning", + "fs-extra-WARN0003" + ); + } + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/utils.js +var require_utils11 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + module2.exports.checkPath = function checkPath(pth) { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path2.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; + } + } + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/make-dir.js +var require_make_dir2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs7(); + var { checkPath } = require_utils11(); + var getMode = (options) => { + const defaults = { mode: 511 }; + if (typeof options === "number") + return options; + return { ...defaults, ...options }.mode; + }; + module2.exports.makeDir = async (dir, options) => { + checkPath(dir); + return fs2.mkdir(dir, { + mode: getMode(options), + recursive: true + }); + }; + module2.exports.makeDirSync = (dir, options) => { + checkPath(dir); + return fs2.mkdirSync(dir, { + mode: getMode(options), + recursive: true + }); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/index.js +var require_mkdirs2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var { makeDir: _makeDir, makeDirSync } = require_make_dir2(); + var makeDir = u(_makeDir); + module2.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/path-exists/index.js +var require_path_exists3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs2 = require_fs7(); + function pathExists(path2) { + return fs2.access(path2).then(() => true).catch(() => false); + } + module2.exports = { + pathExists: u(pathExists), + pathExistsSync: fs2.existsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/util/utimes.js +var require_utimes2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + function utimesMillis(path2, atime, mtime, callback) { + fs2.open(path2, "r+", (err, fd) => { + if (err) + return callback(err); + fs2.futimes(fd, atime, mtime, (futimesErr) => { + fs2.close(fd, (closeErr) => { + if (callback) + callback(futimesErr || closeErr); + }); + }); + }); + } + function utimesMillisSync(path2, atime, mtime) { + const fd = fs2.openSync(path2, "r+"); + fs2.futimesSync(fd, atime, mtime); + return fs2.closeSync(fd); + } + module2.exports = { + utimesMillis, + utimesMillisSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/util/stat.js +var require_stat2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs7(); + var path2 = require("path"); + var util = require("util"); + function getStats(src, dest, opts) { + const statFunc = opts.dereference ? (file) => fs2.stat(file, { bigint: true }) : (file) => fs2.lstat(file, { bigint: true }); + return Promise.all([ + statFunc(src), + statFunc(dest).catch((err) => { + if (err.code === "ENOENT") + return null; + throw err; + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })); + } + function getStatsSync(src, dest, opts) { + let destStat; + const statFunc = opts.dereference ? (file) => fs2.statSync(file, { bigint: true }) : (file) => fs2.lstatSync(file, { bigint: true }); + const srcStat = statFunc(src); + try { + destStat = statFunc(dest); + } catch (err) { + if (err.code === "ENOENT") + return { srcStat, destStat: null }; + throw err; + } + return { srcStat, destStat }; + } + function checkPaths(src, dest, funcName, opts, cb) { + util.callbackify(getStats)(src, dest, opts, (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path2.basename(src); + const destBaseName = path2.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return cb(null, { srcStat, destStat, isChangingCase: true }); + } + return cb(new Error("Source and destination must not be the same.")); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`)); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return cb(null, { srcStat, destStat }); + }); + } + function checkPathsSync(src, dest, funcName, opts) { + const { srcStat, destStat } = getStatsSync(src, dest, opts); + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path2.basename(src); + const destBaseName = path2.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true }; + } + throw new Error("Source and destination must not be the same."); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); + } + return { srcStat, destStat }; + } + function checkParentPaths(src, srcStat, dest, funcName, cb) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return cb(); + fs2.stat(destParent, { bigint: true }, (err, destStat) => { + if (err) { + if (err.code === "ENOENT") + return cb(); + return cb(err); + } + if (areIdentical(srcStat, destStat)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return checkParentPaths(src, srcStat, destParent, funcName, cb); + }); + } + function checkParentPathsSync(src, srcStat, dest, funcName) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return; + let destStat; + try { + destStat = fs2.statSync(destParent, { bigint: true }); + } catch (err) { + if (err.code === "ENOENT") + return; + throw err; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPathsSync(src, srcStat, destParent, funcName); + } + function areIdentical(srcStat, destStat) { + return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev; + } + function isSrcSubdir(src, dest) { + const srcArr = path2.resolve(src).split(path2.sep).filter((i) => i); + const destArr = path2.resolve(dest).split(path2.sep).filter((i) => i); + return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true); + } + function errMsg(src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`; + } + module2.exports = { + checkPaths, + checkPathsSync, + checkParentPaths, + checkParentPathsSync, + isSrcSubdir, + areIdentical + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/copy.js +var require_copy2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirs = require_mkdirs2().mkdirs; + var pathExists = require_path_exists3().pathExists; + var utimesMillis = require_utimes2().utimesMillis; + var stat = require_stat2(); + function copy(src, dest, opts, cb) { + if (typeof opts === "function" && !cb) { + cb = opts; + opts = {}; + } else if (typeof opts === "function") { + opts = { filter: opts }; + } + cb = cb || function() { + }; + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0001" + ); + } + stat.checkPaths(src, dest, "copy", opts, (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + stat.checkParentPaths(src, srcStat, dest, "copy", (err2) => { + if (err2) + return cb(err2); + runFilter(src, dest, opts, (err3, include) => { + if (err3) + return cb(err3); + if (!include) + return cb(); + checkParentDir(destStat, src, dest, opts, cb); + }); + }); + }); + } + function checkParentDir(destStat, src, dest, opts, cb) { + const destParent = path2.dirname(dest); + pathExists(destParent, (err, dirExists) => { + if (err) + return cb(err); + if (dirExists) + return getStats(destStat, src, dest, opts, cb); + mkdirs(destParent, (err2) => { + if (err2) + return cb(err2); + return getStats(destStat, src, dest, opts, cb); + }); + }); + } + function runFilter(src, dest, opts, cb) { + if (!opts.filter) + return cb(null, true); + Promise.resolve(opts.filter(src, dest)).then((include) => cb(null, include), (error) => cb(error)); + } + function getStats(destStat, src, dest, opts, cb) { + const stat2 = opts.dereference ? fs2.stat : fs2.lstat; + stat2(src, (err, srcStat) => { + if (err) + return cb(err); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts, cb); + else if (srcStat.isSocket()) + return cb(new Error(`Cannot copy a socket file: ${src}`)); + else if (srcStat.isFIFO()) + return cb(new Error(`Cannot copy a FIFO pipe: ${src}`)); + return cb(new Error(`Unknown file: ${src}`)); + }); + } + function onFile(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return copyFile(srcStat, src, dest, opts, cb); + return mayCopyFile(srcStat, src, dest, opts, cb); + } + function mayCopyFile(srcStat, src, dest, opts, cb) { + if (opts.overwrite) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return copyFile(srcStat, src, dest, opts, cb); + }); + } else if (opts.errorOnExist) { + return cb(new Error(`'${dest}' already exists`)); + } else + return cb(); + } + function copyFile(srcStat, src, dest, opts, cb) { + fs2.copyFile(src, dest, (err) => { + if (err) + return cb(err); + if (opts.preserveTimestamps) + return handleTimestampsAndMode(srcStat.mode, src, dest, cb); + return setDestMode(dest, srcStat.mode, cb); + }); + } + function handleTimestampsAndMode(srcMode, src, dest, cb) { + if (fileIsNotWritable(srcMode)) { + return makeFileWritable(dest, srcMode, (err) => { + if (err) + return cb(err); + return setDestTimestampsAndMode(srcMode, src, dest, cb); + }); + } + return setDestTimestampsAndMode(srcMode, src, dest, cb); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode, cb) { + return setDestMode(dest, srcMode | 128, cb); + } + function setDestTimestampsAndMode(srcMode, src, dest, cb) { + setDestTimestamps(src, dest, (err) => { + if (err) + return cb(err); + return setDestMode(dest, srcMode, cb); + }); + } + function setDestMode(dest, srcMode, cb) { + return fs2.chmod(dest, srcMode, cb); + } + function setDestTimestamps(src, dest, cb) { + fs2.stat(src, (err, updatedSrcStat) => { + if (err) + return cb(err); + return utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime, cb); + }); + } + function onDir(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts, cb); + return copyDir(src, dest, opts, cb); + } + function mkDirAndCopy(srcMode, src, dest, opts, cb) { + fs2.mkdir(dest, (err) => { + if (err) + return cb(err); + copyDir(src, dest, opts, (err2) => { + if (err2) + return cb(err2); + return setDestMode(dest, srcMode, cb); + }); + }); + } + function copyDir(src, dest, opts, cb) { + fs2.readdir(src, (err, items) => { + if (err) + return cb(err); + return copyDirItems(items, src, dest, opts, cb); + }); + } + function copyDirItems(items, src, dest, opts, cb) { + const item = items.pop(); + if (!item) + return cb(); + return copyDirItem(items, item, src, dest, opts, cb); + } + function copyDirItem(items, item, src, dest, opts, cb) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + runFilter(srcItem, destItem, opts, (err, include) => { + if (err) + return cb(err); + if (!include) + return copyDirItems(items, src, dest, opts, cb); + stat.checkPaths(srcItem, destItem, "copy", opts, (err2, stats) => { + if (err2) + return cb(err2); + const { destStat } = stats; + getStats(destStat, srcItem, destItem, opts, (err3) => { + if (err3) + return cb(err3); + return copyDirItems(items, src, dest, opts, cb); + }); + }); + }); + } + function onLink(destStat, src, dest, opts, cb) { + fs2.readlink(src, (err, resolvedSrc) => { + if (err) + return cb(err); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs2.symlink(resolvedSrc, dest, cb); + } else { + fs2.readlink(dest, (err2, resolvedDest) => { + if (err2) { + if (err2.code === "EINVAL" || err2.code === "UNKNOWN") + return fs2.symlink(resolvedSrc, dest, cb); + return cb(err2); + } + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)); + } + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)); + } + return copyLink(resolvedSrc, dest, cb); + }); + } + }); + } + function copyLink(resolvedSrc, dest, cb) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return fs2.symlink(resolvedSrc, dest, cb); + }); + } + module2.exports = copy; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/copy-sync.js +var require_copy_sync2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirsSync = require_mkdirs2().mkdirsSync; + var utimesMillisSync = require_utimes2().utimesMillisSync; + var stat = require_stat2(); + function copySync(src, dest, opts) { + if (typeof opts === "function") { + opts = { filter: opts }; + } + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0002" + ); + } + const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts); + stat.checkParentPathsSync(src, srcStat, dest, "copy"); + if (opts.filter && !opts.filter(src, dest)) + return; + const destParent = path2.dirname(dest); + if (!fs2.existsSync(destParent)) + mkdirsSync(destParent); + return getStats(destStat, src, dest, opts); + } + function getStats(destStat, src, dest, opts) { + const statSync = opts.dereference ? fs2.statSync : fs2.lstatSync; + const srcStat = statSync(src); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts); + else if (srcStat.isSocket()) + throw new Error(`Cannot copy a socket file: ${src}`); + else if (srcStat.isFIFO()) + throw new Error(`Cannot copy a FIFO pipe: ${src}`); + throw new Error(`Unknown file: ${src}`); + } + function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) + return copyFile(srcStat, src, dest, opts); + return mayCopyFile(srcStat, src, dest, opts); + } + function mayCopyFile(srcStat, src, dest, opts) { + if (opts.overwrite) { + fs2.unlinkSync(dest); + return copyFile(srcStat, src, dest, opts); + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + function copyFile(srcStat, src, dest, opts) { + fs2.copyFileSync(src, dest); + if (opts.preserveTimestamps) + handleTimestamps(srcStat.mode, src, dest); + return setDestMode(dest, srcStat.mode); + } + function handleTimestamps(srcMode, src, dest) { + if (fileIsNotWritable(srcMode)) + makeFileWritable(dest, srcMode); + return setDestTimestamps(src, dest); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return setDestMode(dest, srcMode | 128); + } + function setDestMode(dest, srcMode) { + return fs2.chmodSync(dest, srcMode); + } + function setDestTimestamps(src, dest) { + const updatedSrcStat = fs2.statSync(src); + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts); + return copyDir(src, dest, opts); + } + function mkDirAndCopy(srcMode, src, dest, opts) { + fs2.mkdirSync(dest); + copyDir(src, dest, opts); + return setDestMode(dest, srcMode); + } + function copyDir(src, dest, opts) { + fs2.readdirSync(src).forEach((item) => copyDirItem(item, src, dest, opts)); + } + function copyDirItem(item, src, dest, opts) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + if (opts.filter && !opts.filter(srcItem, destItem)) + return; + const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts); + return getStats(destStat, srcItem, destItem, opts); + } + function onLink(destStat, src, dest, opts) { + let resolvedSrc = fs2.readlinkSync(src); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs2.symlinkSync(resolvedSrc, dest); + } else { + let resolvedDest; + try { + resolvedDest = fs2.readlinkSync(dest); + } catch (err) { + if (err.code === "EINVAL" || err.code === "UNKNOWN") + return fs2.symlinkSync(resolvedSrc, dest); + throw err; + } + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + return copyLink(resolvedSrc, dest); + } + } + function copyLink(resolvedSrc, dest) { + fs2.unlinkSync(dest); + return fs2.symlinkSync(resolvedSrc, dest); + } + module2.exports = copySync; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/index.js +var require_copy3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + module2.exports = { + copy: u(require_copy2()), + copySync: require_copy_sync2() + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/remove/index.js +var require_remove = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var u = require_universalify().fromCallback; + function remove(path2, callback) { + fs2.rm(path2, { recursive: true, force: true }, callback); + } + function removeSync(path2) { + fs2.rmSync(path2, { recursive: true, force: true }); + } + module2.exports = { + remove: u(remove), + removeSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/empty/index.js +var require_empty2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs2 = require_fs7(); + var path2 = require("path"); + var mkdir = require_mkdirs2(); + var remove = require_remove(); + var emptyDir = u(async function emptyDir2(dir) { + let items; + try { + items = await fs2.readdir(dir); + } catch { + return mkdir.mkdirs(dir); + } + return Promise.all(items.map((item) => remove.remove(path2.join(dir, item)))); + }); + function emptyDirSync(dir) { + let items; + try { + items = fs2.readdirSync(dir); + } catch { + return mkdir.mkdirsSync(dir); + } + items.forEach((item) => { + item = path2.join(dir, item); + remove.removeSync(item); + }); + } + module2.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/file.js +var require_file = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var mkdir = require_mkdirs2(); + function createFile(file, callback) { + function makeFile() { + fs2.writeFile(file, "", (err) => { + if (err) + return callback(err); + callback(); + }); + } + fs2.stat(file, (err, stats) => { + if (!err && stats.isFile()) + return callback(); + const dir = path2.dirname(file); + fs2.stat(dir, (err2, stats2) => { + if (err2) { + if (err2.code === "ENOENT") { + return mkdir.mkdirs(dir, (err3) => { + if (err3) + return callback(err3); + makeFile(); + }); + } + return callback(err2); + } + if (stats2.isDirectory()) + makeFile(); + else { + fs2.readdir(dir, (err3) => { + if (err3) + return callback(err3); + }); + } + }); + }); + } + function createFileSync(file) { + let stats; + try { + stats = fs2.statSync(file); + } catch { + } + if (stats && stats.isFile()) + return; + const dir = path2.dirname(file); + try { + if (!fs2.statSync(dir).isDirectory()) { + fs2.readdirSync(dir); + } + } catch (err) { + if (err && err.code === "ENOENT") + mkdir.mkdirsSync(dir); + else + throw err; + } + fs2.writeFileSync(file, ""); + } + module2.exports = { + createFile: u(createFile), + createFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/link.js +var require_link = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var mkdir = require_mkdirs2(); + var pathExists = require_path_exists3().pathExists; + var { areIdentical } = require_stat2(); + function createLink(srcpath, dstpath, callback) { + function makeLink(srcpath2, dstpath2) { + fs2.link(srcpath2, dstpath2, (err) => { + if (err) + return callback(err); + callback(null); + }); + } + fs2.lstat(dstpath, (_, dstStat) => { + fs2.lstat(srcpath, (err, srcStat) => { + if (err) { + err.message = err.message.replace("lstat", "ensureLink"); + return callback(err); + } + if (dstStat && areIdentical(srcStat, dstStat)) + return callback(null); + const dir = path2.dirname(dstpath); + pathExists(dir, (err2, dirExists) => { + if (err2) + return callback(err2); + if (dirExists) + return makeLink(srcpath, dstpath); + mkdir.mkdirs(dir, (err3) => { + if (err3) + return callback(err3); + makeLink(srcpath, dstpath); + }); + }); + }); + }); + } + function createLinkSync(srcpath, dstpath) { + let dstStat; + try { + dstStat = fs2.lstatSync(dstpath); + } catch { + } + try { + const srcStat = fs2.lstatSync(srcpath); + if (dstStat && areIdentical(srcStat, dstStat)) + return; + } catch (err) { + err.message = err.message.replace("lstat", "ensureLink"); + throw err; + } + const dir = path2.dirname(dstpath); + const dirExists = fs2.existsSync(dir); + if (dirExists) + return fs2.linkSync(srcpath, dstpath); + mkdir.mkdirsSync(dir); + return fs2.linkSync(srcpath, dstpath); + } + module2.exports = { + createLink: u(createLink), + createLinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink-paths.js +var require_symlink_paths = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var pathExists = require_path_exists3().pathExists; + function symlinkPaths(srcpath, dstpath, callback) { + if (path2.isAbsolute(srcpath)) { + return fs2.lstat(srcpath, (err) => { + if (err) { + err.message = err.message.replace("lstat", "ensureSymlink"); + return callback(err); + } + return callback(null, { + toCwd: srcpath, + toDst: srcpath + }); + }); + } else { + const dstdir = path2.dirname(dstpath); + const relativeToDst = path2.join(dstdir, srcpath); + return pathExists(relativeToDst, (err, exists) => { + if (err) + return callback(err); + if (exists) { + return callback(null, { + toCwd: relativeToDst, + toDst: srcpath + }); + } else { + return fs2.lstat(srcpath, (err2) => { + if (err2) { + err2.message = err2.message.replace("lstat", "ensureSymlink"); + return callback(err2); + } + return callback(null, { + toCwd: srcpath, + toDst: path2.relative(dstdir, srcpath) + }); + }); + } + }); + } + } + function symlinkPathsSync(srcpath, dstpath) { + let exists; + if (path2.isAbsolute(srcpath)) { + exists = fs2.existsSync(srcpath); + if (!exists) + throw new Error("absolute srcpath does not exist"); + return { + toCwd: srcpath, + toDst: srcpath + }; + } else { + const dstdir = path2.dirname(dstpath); + const relativeToDst = path2.join(dstdir, srcpath); + exists = fs2.existsSync(relativeToDst); + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + }; + } else { + exists = fs2.existsSync(srcpath); + if (!exists) + throw new Error("relative srcpath does not exist"); + return { + toCwd: srcpath, + toDst: path2.relative(dstdir, srcpath) + }; + } + } + } + module2.exports = { + symlinkPaths, + symlinkPathsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink-type.js +var require_symlink_type = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + function symlinkType(srcpath, type, callback) { + callback = typeof type === "function" ? type : callback; + type = typeof type === "function" ? false : type; + if (type) + return callback(null, type); + fs2.lstat(srcpath, (err, stats) => { + if (err) + return callback(null, "file"); + type = stats && stats.isDirectory() ? "dir" : "file"; + callback(null, type); + }); + } + function symlinkTypeSync(srcpath, type) { + let stats; + if (type) + return type; + try { + stats = fs2.lstatSync(srcpath); + } catch { + return "file"; + } + return stats && stats.isDirectory() ? "dir" : "file"; + } + module2.exports = { + symlinkType, + symlinkTypeSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink.js +var require_symlink = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_fs7(); + var _mkdirs = require_mkdirs2(); + var mkdirs = _mkdirs.mkdirs; + var mkdirsSync = _mkdirs.mkdirsSync; + var _symlinkPaths = require_symlink_paths(); + var symlinkPaths = _symlinkPaths.symlinkPaths; + var symlinkPathsSync = _symlinkPaths.symlinkPathsSync; + var _symlinkType = require_symlink_type(); + var symlinkType = _symlinkType.symlinkType; + var symlinkTypeSync = _symlinkType.symlinkTypeSync; + var pathExists = require_path_exists3().pathExists; + var { areIdentical } = require_stat2(); + function createSymlink(srcpath, dstpath, type, callback) { + callback = typeof type === "function" ? type : callback; + type = typeof type === "function" ? false : type; + fs2.lstat(dstpath, (err, stats) => { + if (!err && stats.isSymbolicLink()) { + Promise.all([ + fs2.stat(srcpath), + fs2.stat(dstpath) + ]).then(([srcStat, dstStat]) => { + if (areIdentical(srcStat, dstStat)) + return callback(null); + _createSymlink(srcpath, dstpath, type, callback); + }); + } else + _createSymlink(srcpath, dstpath, type, callback); + }); + } + function _createSymlink(srcpath, dstpath, type, callback) { + symlinkPaths(srcpath, dstpath, (err, relative2) => { + if (err) + return callback(err); + srcpath = relative2.toDst; + symlinkType(relative2.toCwd, type, (err2, type2) => { + if (err2) + return callback(err2); + const dir = path2.dirname(dstpath); + pathExists(dir, (err3, dirExists) => { + if (err3) + return callback(err3); + if (dirExists) + return fs2.symlink(srcpath, dstpath, type2, callback); + mkdirs(dir, (err4) => { + if (err4) + return callback(err4); + fs2.symlink(srcpath, dstpath, type2, callback); + }); + }); + }); + }); + } + function createSymlinkSync(srcpath, dstpath, type) { + let stats; + try { + stats = fs2.lstatSync(dstpath); + } catch { + } + if (stats && stats.isSymbolicLink()) { + const srcStat = fs2.statSync(srcpath); + const dstStat = fs2.statSync(dstpath); + if (areIdentical(srcStat, dstStat)) + return; + } + const relative2 = symlinkPathsSync(srcpath, dstpath); + srcpath = relative2.toDst; + type = symlinkTypeSync(relative2.toCwd, type); + const dir = path2.dirname(dstpath); + const exists = fs2.existsSync(dir); + if (exists) + return fs2.symlinkSync(srcpath, dstpath, type); + mkdirsSync(dir); + return fs2.symlinkSync(srcpath, dstpath, type); + } + module2.exports = { + createSymlink: u(createSymlink), + createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/index.js +var require_ensure = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) { + "use strict"; + var { createFile, createFileSync } = require_file(); + var { createLink, createLinkSync } = require_link(); + var { createSymlink, createSymlinkSync } = require_symlink(); + module2.exports = { + // file + createFile, + createFileSync, + ensureFile: createFile, + ensureFileSync: createFileSync, + // link + createLink, + createLinkSync, + ensureLink: createLink, + ensureLinkSync: createLinkSync, + // symlink + createSymlink, + createSymlinkSync, + ensureSymlink: createSymlink, + ensureSymlinkSync: createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/utils.js +var require_utils12 = __commonJS({ + "../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/utils.js"(exports2, module2) { + function stringify2(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) { + const EOF = finalEOL ? EOL : ""; + const str = JSON.stringify(obj, replacer, spaces); + return str.replace(/\n/g, EOL) + EOF; + } + function stripBom(content) { + if (Buffer.isBuffer(content)) + content = content.toString("utf8"); + return content.replace(/^\uFEFF/, ""); + } + module2.exports = { stringify: stringify2, stripBom }; + } +}); + +// ../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/index.js +var require_jsonfile = __commonJS({ + "../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/index.js"(exports2, module2) { + var _fs; + try { + _fs = require_graceful_fs(); + } catch (_) { + _fs = require("fs"); + } + var universalify = require_universalify(); + var { stringify: stringify2, stripBom } = require_utils12(); + async function _readFile(file, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + const fs2 = options.fs || _fs; + const shouldThrow = "throws" in options ? options.throws : true; + let data = await universalify.fromCallback(fs2.readFile)(file, options); + data = stripBom(data); + let obj; + try { + obj = JSON.parse(data, options ? options.reviver : null); + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}`; + throw err; + } else { + return null; + } + } + return obj; + } + var readFile = universalify.fromPromise(_readFile); + function readFileSync(file, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + const fs2 = options.fs || _fs; + const shouldThrow = "throws" in options ? options.throws : true; + try { + let content = fs2.readFileSync(file, options); + content = stripBom(content); + return JSON.parse(content, options.reviver); + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}`; + throw err; + } else { + return null; + } + } + } + async function _writeFile(file, obj, options = {}) { + const fs2 = options.fs || _fs; + const str = stringify2(obj, options); + await universalify.fromCallback(fs2.writeFile)(file, str, options); + } + var writeFile = universalify.fromPromise(_writeFile); + function writeFileSync(file, obj, options = {}) { + const fs2 = options.fs || _fs; + const str = stringify2(obj, options); + return fs2.writeFileSync(file, str, options); + } + var jsonfile = { + readFile, + readFileSync, + writeFile, + writeFileSync + }; + module2.exports = jsonfile; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/jsonfile.js +var require_jsonfile2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) { + "use strict"; + var jsonFile = require_jsonfile(); + module2.exports = { + // jsonfile exports + readJson: jsonFile.readFile, + readJsonSync: jsonFile.readFileSync, + writeJson: jsonFile.writeFile, + writeJsonSync: jsonFile.writeFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/output-file/index.js +var require_output_file = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdir = require_mkdirs2(); + var pathExists = require_path_exists3().pathExists; + function outputFile(file, data, encoding, callback) { + if (typeof encoding === "function") { + callback = encoding; + encoding = "utf8"; + } + const dir = path2.dirname(file); + pathExists(dir, (err, itDoes) => { + if (err) + return callback(err); + if (itDoes) + return fs2.writeFile(file, data, encoding, callback); + mkdir.mkdirs(dir, (err2) => { + if (err2) + return callback(err2); + fs2.writeFile(file, data, encoding, callback); + }); + }); + } + function outputFileSync(file, ...args2) { + const dir = path2.dirname(file); + if (fs2.existsSync(dir)) { + return fs2.writeFileSync(file, ...args2); + } + mkdir.mkdirsSync(dir); + fs2.writeFileSync(file, ...args2); + } + module2.exports = { + outputFile: u(outputFile), + outputFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/output-json.js +var require_output_json = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) { + "use strict"; + var { stringify: stringify2 } = require_utils12(); + var { outputFile } = require_output_file(); + async function outputJson(file, data, options = {}) { + const str = stringify2(data, options); + await outputFile(file, str, options); + } + module2.exports = outputJson; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/output-json-sync.js +var require_output_json_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) { + "use strict"; + var { stringify: stringify2 } = require_utils12(); + var { outputFileSync } = require_output_file(); + function outputJsonSync(file, data, options) { + const str = stringify2(data, options); + outputFileSync(file, str, options); + } + module2.exports = outputJsonSync; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/index.js +var require_json2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/json/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var jsonFile = require_jsonfile2(); + jsonFile.outputJson = u(require_output_json()); + jsonFile.outputJsonSync = require_output_json_sync(); + jsonFile.outputJSON = jsonFile.outputJson; + jsonFile.outputJSONSync = jsonFile.outputJsonSync; + jsonFile.writeJSON = jsonFile.writeJson; + jsonFile.writeJSONSync = jsonFile.writeJsonSync; + jsonFile.readJSON = jsonFile.readJson; + jsonFile.readJSONSync = jsonFile.readJsonSync; + module2.exports = jsonFile; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/move.js +var require_move = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/move.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var copy = require_copy3().copy; + var remove = require_remove().remove; + var mkdirp = require_mkdirs2().mkdirp; + var pathExists = require_path_exists3().pathExists; + var stat = require_stat2(); + function move(src, dest, opts, cb) { + if (typeof opts === "function") { + cb = opts; + opts = {}; + } + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + stat.checkPaths(src, dest, "move", opts, (err, stats) => { + if (err) + return cb(err); + const { srcStat, isChangingCase = false } = stats; + stat.checkParentPaths(src, srcStat, dest, "move", (err2) => { + if (err2) + return cb(err2); + if (isParentRoot(dest)) + return doRename(src, dest, overwrite, isChangingCase, cb); + mkdirp(path2.dirname(dest), (err3) => { + if (err3) + return cb(err3); + return doRename(src, dest, overwrite, isChangingCase, cb); + }); + }); + }); + } + function isParentRoot(dest) { + const parent = path2.dirname(dest); + const parsedPath = path2.parse(parent); + return parsedPath.root === parent; + } + function doRename(src, dest, overwrite, isChangingCase, cb) { + if (isChangingCase) + return rename(src, dest, overwrite, cb); + if (overwrite) { + return remove(dest, (err) => { + if (err) + return cb(err); + return rename(src, dest, overwrite, cb); + }); + } + pathExists(dest, (err, destExists) => { + if (err) + return cb(err); + if (destExists) + return cb(new Error("dest already exists.")); + return rename(src, dest, overwrite, cb); + }); + } + function rename(src, dest, overwrite, cb) { + fs2.rename(src, dest, (err) => { + if (!err) + return cb(); + if (err.code !== "EXDEV") + return cb(err); + return moveAcrossDevice(src, dest, overwrite, cb); + }); + } + function moveAcrossDevice(src, dest, overwrite, cb) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + }; + copy(src, dest, opts, (err) => { + if (err) + return cb(err); + return remove(src, cb); + }); + } + module2.exports = move; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/move-sync.js +var require_move_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var copySync = require_copy3().copySync; + var removeSync = require_remove().removeSync; + var mkdirpSync = require_mkdirs2().mkdirpSync; + var stat = require_stat2(); + function moveSync(src, dest, opts) { + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts); + stat.checkParentPathsSync(src, srcStat, dest, "move"); + if (!isParentRoot(dest)) + mkdirpSync(path2.dirname(dest)); + return doRename(src, dest, overwrite, isChangingCase); + } + function isParentRoot(dest) { + const parent = path2.dirname(dest); + const parsedPath = path2.parse(parent); + return parsedPath.root === parent; + } + function doRename(src, dest, overwrite, isChangingCase) { + if (isChangingCase) + return rename(src, dest, overwrite); + if (overwrite) { + removeSync(dest); + return rename(src, dest, overwrite); + } + if (fs2.existsSync(dest)) + throw new Error("dest already exists."); + return rename(src, dest, overwrite); + } + function rename(src, dest, overwrite) { + try { + fs2.renameSync(src, dest); + } catch (err) { + if (err.code !== "EXDEV") + throw err; + return moveAcrossDevice(src, dest, overwrite); + } + } + function moveAcrossDevice(src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + }; + copySync(src, dest, opts); + return removeSync(src); + } + module2.exports = moveSync; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/index.js +var require_move2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/move/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + module2.exports = { + move: u(require_move()), + moveSync: require_move_sync() + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/index.js +var require_lib47 = __commonJS({ + "../node_modules/.pnpm/fs-extra@11.1.1/node_modules/fs-extra/lib/index.js"(exports2, module2) { + "use strict"; + module2.exports = { + // Export promiseified graceful-fs: + ...require_fs7(), + // Export extra methods: + ...require_copy3(), + ...require_empty2(), + ...require_ensure(), + ...require_json2(), + ...require_mkdirs2(), + ...require_move2(), + ...require_output_file(), + ...require_path_exists3(), + ...require_remove() + }; + } +}); + +// ../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/lib/truncate.js +var require_truncate = __commonJS({ + "../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/lib/truncate.js"(exports2, module2) { + "use strict"; + function isHighSurrogate(codePoint) { + return codePoint >= 55296 && codePoint <= 56319; + } + function isLowSurrogate(codePoint) { + return codePoint >= 56320 && codePoint <= 57343; + } + module2.exports = function truncate(getLength, string, byteLength) { + if (typeof string !== "string") { + throw new Error("Input must be string"); + } + var charLength = string.length; + var curByteLength = 0; + var codePoint; + var segment; + for (var i = 0; i < charLength; i += 1) { + codePoint = string.charCodeAt(i); + segment = string[i]; + if (isHighSurrogate(codePoint) && isLowSurrogate(string.charCodeAt(i + 1))) { + i += 1; + segment += string[i]; + } + curByteLength += getLength(segment); + if (curByteLength === byteLength) { + return string.slice(0, i + 1); + } else if (curByteLength > byteLength) { + return string.slice(0, i - segment.length + 1); + } + } + return string; + }; + } +}); + +// ../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/index.js +var require_truncate_utf8_bytes = __commonJS({ + "../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/index.js"(exports2, module2) { + "use strict"; + var truncate = require_truncate(); + var getLength = Buffer.byteLength.bind(Buffer); + module2.exports = truncate.bind(null, getLength); + } +}); + +// ../node_modules/.pnpm/sanitize-filename@1.6.3/node_modules/sanitize-filename/index.js +var require_sanitize_filename = __commonJS({ + "../node_modules/.pnpm/sanitize-filename@1.6.3/node_modules/sanitize-filename/index.js"(exports2, module2) { + "use strict"; + var truncate = require_truncate_utf8_bytes(); + var illegalRe = /[\/\?<>\\:\*\|"]/g; + var controlRe = /[\x00-\x1f\x80-\x9f]/g; + var reservedRe = /^\.+$/; + var windowsReservedRe = /^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i; + var windowsTrailingRe = /[\. ]+$/; + function sanitize(input, replacement) { + if (typeof input !== "string") { + throw new Error("Input must be string"); + } + var sanitized = input.replace(illegalRe, replacement).replace(controlRe, replacement).replace(reservedRe, replacement).replace(windowsReservedRe, replacement).replace(windowsTrailingRe, replacement); + return truncate(sanitized, 255); + } + module2.exports = function(input, options) { + var replacement = options && options.replacement || ""; + var output = sanitize(input, replacement); + if (replacement === "") { + return output; + } + return sanitize(output, ""); + }; + } +}); + +// ../node_modules/.pnpm/make-empty-dir@2.0.0/node_modules/make-empty-dir/index.js +var require_make_empty_dir = __commonJS({ + "../node_modules/.pnpm/make-empty-dir@2.0.0/node_modules/make-empty-dir/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs").promises; + var path2 = require("path"); + var rimraf = require_rimraf2(); + module2.exports = async function makeEmptyDir(dir, opts) { + if (opts && opts.recursive) { + await fs2.mkdir(path2.dirname(dir), { recursive: true }); + } + try { + await fs2.mkdir(dir); + return "created"; + } catch (err) { + if (err.code === "EEXIST") { + await removeContentsOfDir(dir); + return "emptied"; + } + throw err; + } + }; + async function removeContentsOfDir(dir) { + const items = await fs2.readdir(dir); + for (const item of items) { + await rimraf(path2.join(dir, item)); + } + } + } +}); + +// ../fs/indexed-pkg-importer/lib/importIndexedDir.js +var require_importIndexedDir = __commonJS({ + "../fs/indexed-pkg-importer/lib/importIndexedDir.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.importIndexedDir = void 0; + var fs_1 = require("fs"); + var fs_extra_1 = require_lib47(); + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var sanitize_filename_1 = __importDefault4(require_sanitize_filename()); + var make_empty_dir_1 = __importDefault4(require_make_empty_dir()); + var path_temp_1 = __importDefault4(require_path_temp()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + var filenameConflictsLogger = (0, logger_1.logger)("_filename-conflicts"); + async function importIndexedDir(importFile, newDir, filenames, opts) { + const stage = (0, path_temp_1.default)(path_1.default.dirname(newDir)); + try { + await tryImportIndexedDir(importFile, stage, filenames); + if (opts.keepModulesDir) { + await moveOrMergeModulesDirs(path_1.default.join(newDir, "node_modules"), path_1.default.join(stage, "node_modules")); + } + await (0, rename_overwrite_1.default)(stage, newDir); + } catch (err) { + try { + await (0, rimraf_1.default)(stage); + } catch (err2) { + } + if (err["code"] === "EEXIST") { + const { uniqueFileMap, conflictingFileNames } = getUniqueFileMap(filenames); + if (Object.keys(conflictingFileNames).length === 0) + throw err; + filenameConflictsLogger.debug({ + conflicts: conflictingFileNames, + writingTo: newDir + }); + (0, logger_1.globalWarn)(`Not all files were linked to "${path_1.default.relative(process.cwd(), newDir)}". Some of the files have equal names in different case, which is an issue on case-insensitive filesystems. The conflicting file names are: ${JSON.stringify(conflictingFileNames)}`); + await importIndexedDir(importFile, newDir, uniqueFileMap, opts); + return; + } + if (err["code"] === "ENOENT") { + const { sanitizedFilenames, invalidFilenames } = sanitizeFilenames(filenames); + if (invalidFilenames.length === 0) + throw err; + (0, logger_1.globalWarn)(`The package linked to "${path_1.default.relative(process.cwd(), newDir)}" had files with invalid names: ${invalidFilenames.join(", ")}. They were renamed.`); + await importIndexedDir(importFile, newDir, sanitizedFilenames, opts); + return; + } + throw err; + } + } + exports2.importIndexedDir = importIndexedDir; + function sanitizeFilenames(filenames) { + const sanitizedFilenames = {}; + const invalidFilenames = []; + for (const [filename, src] of Object.entries(filenames)) { + const sanitizedFilename = filename.split("/").map((f) => (0, sanitize_filename_1.default)(f)).join("/"); + if (sanitizedFilename !== filename) { + invalidFilenames.push(filename); + } + sanitizedFilenames[sanitizedFilename] = src; + } + return { sanitizedFilenames, invalidFilenames }; + } + async function tryImportIndexedDir(importFile, newDir, filenames) { + await (0, make_empty_dir_1.default)(newDir, { recursive: true }); + const alldirs = /* @__PURE__ */ new Set(); + Object.keys(filenames).forEach((f) => { + const dir = path_1.default.dirname(f); + if (dir === ".") + return; + alldirs.add(dir); + }); + await Promise.all(Array.from(alldirs).sort((d1, d2) => d1.length - d2.length).map(async (dir) => fs_1.promises.mkdir(path_1.default.join(newDir, dir), { recursive: true }))); + await Promise.all(Object.entries(filenames).map(async ([f, src]) => { + const dest = path_1.default.join(newDir, f); + await importFile(src, dest); + })); + } + function getUniqueFileMap(fileMap) { + const lowercaseFiles = /* @__PURE__ */ new Map(); + const conflictingFileNames = {}; + const uniqueFileMap = {}; + for (const filename of Object.keys(fileMap).sort()) { + const lowercaseFilename = filename.toLowerCase(); + if (lowercaseFiles.has(lowercaseFilename)) { + conflictingFileNames[filename] = lowercaseFiles.get(lowercaseFilename); + continue; + } + lowercaseFiles.set(lowercaseFilename, filename); + uniqueFileMap[filename] = fileMap[filename]; + } + return { + conflictingFileNames, + uniqueFileMap + }; + } + async function moveOrMergeModulesDirs(src, dest) { + try { + await renameEvenAcrossDevices(src, dest); + } catch (err) { + switch (err.code) { + case "ENOENT": return; - case "1": - case "2": - case "3": - case "4": - case "5": - case "6": - case "7": - case "8": - case "9": - buffer = read(); - lexState = "decimalInteger"; + case "ENOTEMPTY": + case "EPERM": + await mergeModulesDirs(src, dest); return; - case "I": - read(); - literal("nfinity"); - return newToken("numeric", sign * Infinity); - case "N": - read(); - literal("aN"); - return newToken("numeric", NaN); + default: + throw err; + } + } + } + async function renameEvenAcrossDevices(src, dest) { + try { + await fs_1.promises.rename(src, dest); + } catch (err) { + if (err.code !== "EXDEV") + throw err; + await (0, fs_extra_1.copy)(src, dest); + } + } + async function mergeModulesDirs(src, dest) { + const srcFiles = await fs_1.promises.readdir(src); + const destFiles = new Set(await fs_1.promises.readdir(dest)); + const filesToMove = srcFiles.filter((file) => !destFiles.has(file)); + await Promise.all(filesToMove.map((file) => renameEvenAcrossDevices(path_1.default.join(src, file), path_1.default.join(dest, file)))); + } + } +}); + +// ../fs/indexed-pkg-importer/lib/index.js +var require_lib48 = __commonJS({ + "../fs/indexed-pkg-importer/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.copyPkg = exports2.createIndexedPkgImporter = void 0; + var fs_1 = require("fs"); + var graceful_fs_1 = __importDefault4(require_lib15()); + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var core_loggers_1 = require_lib9(); + var p_limit_12 = __importDefault4(require_p_limit()); + var path_exists_1 = __importDefault4(require_path_exists()); + var importIndexedDir_1 = require_importIndexedDir(); + var limitLinking = (0, p_limit_12.default)(16); + function createIndexedPkgImporter(packageImportMethod) { + const importPackage = createImportPackage(packageImportMethod); + return async (to, opts) => limitLinking(async () => importPackage(to, opts)); + } + exports2.createIndexedPkgImporter = createIndexedPkgImporter; + function createImportPackage(packageImportMethod) { + switch (packageImportMethod ?? "auto") { + case "clone": + core_loggers_1.packageImportMethodLogger.debug({ method: "clone" }); + return clonePkg; + case "hardlink": + core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); + return hardlinkPkg.bind(null, linkOrCopy); + case "auto": { + return createAutoImporter(); + } + case "clone-or-copy": + return createCloneOrCopyImporter(); + case "copy": + core_loggers_1.packageImportMethodLogger.debug({ method: "copy" }); + return copyPkg; + default: + throw new Error(`Unknown package import method ${packageImportMethod}`); + } + } + function createAutoImporter() { + let auto = initialAuto; + return async (to, opts) => auto(to, opts); + async function initialAuto(to, opts) { + try { + if (!await clonePkg(to, opts)) + return void 0; + core_loggers_1.packageImportMethodLogger.debug({ method: "clone" }); + auto = clonePkg; + return "clone"; + } catch (err) { + } + try { + if (!await hardlinkPkg(graceful_fs_1.default.link, to, opts)) + return void 0; + core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); + auto = hardlinkPkg.bind(null, linkOrCopy); + return "hardlink"; + } catch (err) { + if (err.message.startsWith("EXDEV: cross-device link not permitted")) { + (0, logger_1.globalWarn)(err.message); + (0, logger_1.globalInfo)("Falling back to copying packages from store"); + core_loggers_1.packageImportMethodLogger.debug({ method: "copy" }); + auto = copyPkg; + return auto(to, opts); + } + core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); + auto = hardlinkPkg.bind(null, linkOrCopy); + return auto(to, opts); + } + } + } + function createCloneOrCopyImporter() { + let auto = initialAuto; + return async (to, opts) => auto(to, opts); + async function initialAuto(to, opts) { + try { + if (!await clonePkg(to, opts)) + return void 0; + core_loggers_1.packageImportMethodLogger.debug({ method: "clone" }); + auto = clonePkg; + return "clone"; + } catch (err) { + } + core_loggers_1.packageImportMethodLogger.debug({ method: "copy" }); + auto = copyPkg; + return auto(to, opts); + } + } + async function clonePkg(to, opts) { + const pkgJsonPath = path_1.default.join(to, "package.json"); + if (!opts.fromStore || opts.force || !await (0, path_exists_1.default)(pkgJsonPath)) { + await (0, importIndexedDir_1.importIndexedDir)(cloneFile, to, opts.filesMap, opts); + return "clone"; + } + return void 0; + } + async function cloneFile(from, to) { + await graceful_fs_1.default.copyFile(from, to, fs_1.constants.COPYFILE_FICLONE_FORCE); + } + async function hardlinkPkg(importFile, to, opts) { + if (!opts.fromStore || opts.force || !await pkgLinkedToStore(opts.filesMap, to)) { + await (0, importIndexedDir_1.importIndexedDir)(importFile, to, opts.filesMap, opts); + return "hardlink"; + } + return void 0; + } + async function linkOrCopy(existingPath, newPath) { + try { + await graceful_fs_1.default.link(existingPath, newPath); + } catch (err) { + if (err["code"] === "EEXIST") + return; + await graceful_fs_1.default.copyFile(existingPath, newPath); + } + } + async function pkgLinkedToStore(filesMap, to) { + if (filesMap["package.json"]) { + if (await isSameFile("package.json", to, filesMap)) { + return true; + } + } else { + const [anyFile] = Object.keys(filesMap); + if (await isSameFile(anyFile, to, filesMap)) + return true; + } + return false; + } + async function isSameFile(filename, linkedPkgDir, filesMap) { + const linkedFile = path_1.default.join(linkedPkgDir, filename); + let stats0; + try { + stats0 = await graceful_fs_1.default.stat(linkedFile); + } catch (err) { + if (err.code === "ENOENT") + return false; + } + const stats1 = await graceful_fs_1.default.stat(filesMap[filename]); + if (stats0.ino === stats1.ino) + return true; + (0, logger_1.globalInfo)(`Relinking ${linkedPkgDir} from the store`); + return false; + } + async function copyPkg(to, opts) { + const pkgJsonPath = path_1.default.join(to, "package.json"); + if (!opts.fromStore || opts.force || !await (0, path_exists_1.default)(pkgJsonPath)) { + await (0, importIndexedDir_1.importIndexedDir)(graceful_fs_1.default.copyFile, to, opts.filesMap, opts); + return "copy"; + } + return void 0; + } + exports2.copyPkg = copyPkg; + } +}); + +// ../store/create-cafs-store/lib/index.js +var require_lib49 = __commonJS({ + "../store/create-cafs-store/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createCafsStore = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var cafs_1 = require_lib46(); + var fs_indexed_pkg_importer_1 = require_lib48(); + var mem_1 = __importDefault4(require_dist4()); + var path_temp_1 = __importDefault4(require_path_temp()); + var map_1 = __importDefault4(require_map4()); + function createPackageImporter(opts) { + const cachedImporterCreator = opts.importIndexedPackage ? () => opts.importIndexedPackage : (0, mem_1.default)(fs_indexed_pkg_importer_1.createIndexedPkgImporter); + const packageImportMethod = opts.packageImportMethod; + const gfm = getFlatMap.bind(null, opts.cafsDir); + return async (to, opts2) => { + const { filesMap, isBuilt } = gfm(opts2.filesResponse, opts2.sideEffectsCacheKey); + const pkgImportMethod = opts2.requiresBuild && !isBuilt ? "clone-or-copy" : opts2.filesResponse.packageImportMethod ?? packageImportMethod; + const impPkg = cachedImporterCreator(pkgImportMethod); + const importMethod = await impPkg(to, { + filesMap, + fromStore: opts2.filesResponse.fromStore, + force: opts2.force, + keepModulesDir: Boolean(opts2.keepModulesDir) + }); + return { importMethod, isBuilt }; + }; + } + function getFlatMap(cafsDir, filesResponse, targetEngine) { + if (filesResponse.local) { + return { + filesMap: filesResponse.filesIndex, + isBuilt: false + }; + } + let isBuilt; + let filesIndex; + if (targetEngine && filesResponse.sideEffects?.[targetEngine] != null) { + filesIndex = filesResponse.sideEffects?.[targetEngine]; + isBuilt = true; + } else { + filesIndex = filesResponse.filesIndex; + isBuilt = false; + } + const filesMap = (0, map_1.default)(({ integrity, mode }) => (0, cafs_1.getFilePathByModeInCafs)(cafsDir, integrity, mode), filesIndex); + return { filesMap, isBuilt }; + } + function createCafsStore(storeDir, opts) { + const cafsDir = path_1.default.join(storeDir, "files"); + const baseTempDir = path_1.default.join(storeDir, "tmp"); + const importPackage = createPackageImporter({ + importIndexedPackage: opts?.importPackage, + packageImportMethod: opts?.packageImportMethod, + cafsDir + }); + return { + ...(0, cafs_1.createCafs)(cafsDir, opts?.ignoreFile), + cafsDir, + importPackage, + tempDir: async () => { + const tmpDir = (0, path_temp_1.default)(baseTempDir); + await fs_1.promises.mkdir(tmpDir, { recursive: true }); + return tmpDir; + } + }; + } + exports2.createCafsStore = createCafsStore; + } +}); + +// ../fetching/tarball-fetcher/lib/errorTypes/BadTarballError.js +var require_BadTarballError = __commonJS({ + "../fetching/tarball-fetcher/lib/errorTypes/BadTarballError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BadTarballError = void 0; + var error_1 = require_lib8(); + var BadTarballError = class extends error_1.PnpmError { + constructor(opts) { + const message2 = `Actual size (${opts.receivedSize}) of tarball (${opts.tarballUrl}) did not match the one specified in 'Content-Length' header (${opts.expectedSize})`; + super("BAD_TARBALL_SIZE", message2, { + attempts: opts?.attempts + }); + this.expectedSize = opts.expectedSize; + this.receivedSize = opts.receivedSize; + } + }; + exports2.BadTarballError = BadTarballError; + } +}); + +// ../fetching/tarball-fetcher/lib/errorTypes/index.js +var require_errorTypes = __commonJS({ + "../fetching/tarball-fetcher/lib/errorTypes/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BadTarballError = void 0; + var BadTarballError_1 = require_BadTarballError(); + Object.defineProperty(exports2, "BadTarballError", { enumerable: true, get: function() { + return BadTarballError_1.BadTarballError; + } }); + } +}); + +// ../fetching/tarball-fetcher/lib/remoteTarballFetcher.js +var require_remoteTarballFetcher = __commonJS({ + "../fetching/tarball-fetcher/lib/remoteTarballFetcher.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createDownloader = exports2.TarballIntegrityError = void 0; + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var retry = __importStar5(require_retry2()); + var ssri_1 = __importDefault4(require_lib44()); + var errorTypes_1 = require_errorTypes(); + var BIG_TARBALL_SIZE = 1024 * 1024 * 5; + var TarballIntegrityError = class extends error_1.PnpmError { + constructor(opts) { + super("TARBALL_INTEGRITY", `Got unexpected checksum for "${opts.url}". Wanted "${opts.expected}". Got "${opts.found}".`, { + attempts: opts.attempts, + hint: `This error may happen when a package is republished to the registry with the same version. +In this case, the metadata in the local pnpm cache will contain the old integrity checksum. + +If you think that this is the case, then run "pnpm store prune" and rerun the command that failed. +"pnpm store prune" will remove your local metadata cache.` + }); + this.found = opts.found; + this.expected = opts.expected; + this.algorithm = opts.algorithm; + this.sri = opts.sri; + this.url = opts.url; + } + }; + exports2.TarballIntegrityError = TarballIntegrityError; + function createDownloader(fetchFromRegistry, gotOpts) { + const retryOpts = { + factor: 10, + maxTimeout: 6e4, + minTimeout: 1e4, + retries: 2, + ...gotOpts.retry + }; + return async function download(url, opts) { + const authHeaderValue = opts.getAuthHeaderByURI(url); + const op = retry.operation(retryOpts); + return new Promise((resolve, reject) => { + op.attempt(async (attempt) => { + try { + resolve(await fetch(attempt)); + } catch (error) { + if (error.response?.status === 401 || error.response?.status === 403 || error.code === "ERR_PNPM_PREPARE_PKG_FAILURE") { + reject(error); + return; + } + const timeout = op.retry(error); + if (timeout === false) { + reject(op.mainError()); + return; + } + core_loggers_1.requestRetryLogger.debug({ + attempt, + error, + maxRetries: retryOpts.retries, + method: "GET", + timeout, + url + }); + } + }); + }); + async function fetch(currentAttempt) { + try { + const res = await fetchFromRegistry(url, { + authHeaderValue, + // The fetch library can retry requests on bad HTTP responses. + // However, it is not enough to retry on bad HTTP responses only. + // Requests should also be retried when the tarball's integrity check fails. + // Hence, we tell fetch to not retry, + // and we perform the retries from this function instead. + retry: { retries: 0 }, + timeout: gotOpts.timeout + }); + if (res.status !== 200) { + throw new error_1.FetchError({ url, authHeaderValue }, res); + } + const contentLength = res.headers.has("content-length") && res.headers.get("content-length"); + const size = typeof contentLength === "string" ? parseInt(contentLength, 10) : null; + if (opts.onStart != null) { + opts.onStart(size, currentAttempt); + } + const onProgress = size != null && size >= BIG_TARBALL_SIZE ? opts.onProgress : void 0; + let downloaded = 0; + res.body.on("data", (chunk) => { + downloaded += chunk.length; + if (onProgress != null) + onProgress(downloaded); + }); + return await new Promise(async (resolve, reject) => { + const stream = res.body.on("error", reject); + try { + const [integrityCheckResult, filesIndex] = await Promise.all([ + opts.integrity ? safeCheckStream(res.body, opts.integrity, url) : true, + opts.cafs.addFilesFromTarball(res.body, opts.manifest), + waitTillClosed({ stream, size, getDownloaded: () => downloaded, url }) + ]); + if (integrityCheckResult !== true) { + throw integrityCheckResult; + } + resolve({ filesIndex }); + } catch (err) { + if (err["code"] !== "ERR_PNPM_TARBALL_INTEGRITY" && err["code"] !== "ERR_PNPM_BAD_TARBALL_SIZE") { + const extractError = new error_1.PnpmError("TARBALL_EXTRACT", `Failed to unpack the tarball from "${url}": ${err.message}`); + reject(extractError); + return; + } + reject(err); + } + }); + } catch (err) { + err.attempts = currentAttempt; + err.resource = url; + throw err; + } + } + }; + } + exports2.createDownloader = createDownloader; + async function safeCheckStream(stream, integrity, url) { + try { + await ssri_1.default.checkStream(stream, integrity); + return true; + } catch (err) { + return new TarballIntegrityError({ + algorithm: err["algorithm"], + expected: err["expected"], + found: err["found"], + sri: err["sri"], + url + }); + } + } + async function waitTillClosed(opts) { + return new Promise((resolve, reject) => { + opts.stream.on("end", () => { + const downloaded = opts.getDownloaded(); + if (opts.size !== null && opts.size !== downloaded) { + const err = new errorTypes_1.BadTarballError({ + expectedSize: opts.size, + receivedSize: downloaded, + tarballUrl: opts.url + }); + reject(err); + return; + } + resolve(); + }); + }); + } + } +}); + +// ../fetching/tarball-fetcher/lib/localTarballFetcher.js +var require_localTarballFetcher = __commonJS({ + "../fetching/tarball-fetcher/lib/localTarballFetcher.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createLocalTarballFetcher = void 0; + var path_1 = __importDefault4(require("path")); + var graceful_fs_1 = __importDefault4(require_lib15()); + var ssri_1 = __importDefault4(require_lib44()); + var remoteTarballFetcher_1 = require_remoteTarballFetcher(); + var isAbsolutePath = /^[/]|^[A-Za-z]:/; + function createLocalTarballFetcher() { + const fetch = (cafs, resolution, opts) => { + const tarball = resolvePath(opts.lockfileDir, resolution.tarball.slice(5)); + return fetchFromLocalTarball(cafs, tarball, { + integrity: resolution.integrity, + manifest: opts.manifest + }); + }; + return fetch; + } + exports2.createLocalTarballFetcher = createLocalTarballFetcher; + function resolvePath(where, spec) { + if (isAbsolutePath.test(spec)) + return spec; + return path_1.default.resolve(where, spec); + } + async function fetchFromLocalTarball(cafs, tarball, opts) { + try { + const tarballStream = graceful_fs_1.default.createReadStream(tarball); + const [fetchResult] = await Promise.all([ + cafs.addFilesFromTarball(tarballStream, opts.manifest), + opts.integrity && ssri_1.default.checkStream(tarballStream, opts.integrity) + // eslint-disable-line + ]); + return { filesIndex: fetchResult }; + } catch (err) { + const error = new remoteTarballFetcher_1.TarballIntegrityError({ + attempts: 1, + algorithm: err["algorithm"], + expected: err["expected"], + found: err["found"], + sri: err["sri"], + url: tarball + }); + error["resource"] = tarball; + throw error; + } + } + } +}); + +// ../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/lib/spawn.js +var require_spawn = __commonJS({ + "../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/lib/spawn.js"(exports2, module2) { + "use strict"; + module2.exports = spawn; + var _spawn = require("child_process").spawn; + var EventEmitter = require("events").EventEmitter; + var progressEnabled; + var running = 0; + function startRunning(log2) { + if (progressEnabled == null) + progressEnabled = log2.progressEnabled; + if (progressEnabled) + log2.disableProgress(); + ++running; + } + function stopRunning(log2) { + --running; + if (progressEnabled && running === 0) + log2.enableProgress(); + } + function willCmdOutput(stdio) { + if (stdio === "inherit") + return true; + if (!Array.isArray(stdio)) + return false; + for (let fh = 1; fh <= 2; ++fh) { + if (stdio[fh] === "inherit") + return true; + if (stdio[fh] === 1 || stdio[fh] === 2) + return true; + } + return false; + } + function spawn(cmd, args2, options, log2) { + const cmdWillOutput = willCmdOutput(options && options.stdio); + if (cmdWillOutput) + startRunning(log2); + const raw = _spawn(cmd, args2, options); + const cooked = new EventEmitter(); + raw.on("error", function(er) { + if (cmdWillOutput) + stopRunning(log2); + er.file = cmd; + cooked.emit("error", er); + }).on("close", function(code, signal) { + if (cmdWillOutput) + stopRunning(log2); + if (code === 127) { + const er = new Error("spawn ENOENT"); + er.code = "ENOENT"; + er.errno = "ENOENT"; + er.syscall = "spawn"; + er.file = cmd; + cooked.emit("error", er); + } else { + cooked.emit("close", code, signal); + } + }); + cooked.stdin = raw.stdin; + cooked.stdout = raw.stdout; + cooked.stderr = raw.stderr; + cooked.kill = function(sig) { + return raw.kill(sig); + }; + return cooked; + } + } +}); + +// ../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.es6.js +var tslib_es6_exports = {}; +__export(tslib_es6_exports, { + __assign: () => __assign, + __asyncDelegator: () => __asyncDelegator, + __asyncGenerator: () => __asyncGenerator, + __asyncValues: () => __asyncValues, + __await: () => __await, + __awaiter: () => __awaiter, + __classPrivateFieldGet: () => __classPrivateFieldGet, + __classPrivateFieldSet: () => __classPrivateFieldSet, + __createBinding: () => __createBinding, + __decorate: () => __decorate, + __exportStar: () => __exportStar, + __extends: () => __extends, + __generator: () => __generator, + __importDefault: () => __importDefault, + __importStar: () => __importStar, + __makeTemplateObject: () => __makeTemplateObject, + __metadata: () => __metadata, + __param: () => __param, + __read: () => __read, + __rest: () => __rest, + __spread: () => __spread, + __spreadArrays: () => __spreadArrays, + __values: () => __values +}); +function __extends(d, b) { + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} +function __rest(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} +function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") + r = Reflect.decorate(decorators, target, key, desc); + else + for (var i = decorators.length - 1; i >= 0; i--) + if (d = decorators[i]) + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} +function __param(paramIndex, decorator) { + return function(target, key) { + decorator(target, key, paramIndex); + }; +} +function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") + return Reflect.metadata(metadataKey, metadataValue); +} +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } +} +function __createBinding(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; +} +function __exportStar(m, exports2) { + for (var p in m) + if (p !== "default" && !exports2.hasOwnProperty(p)) + exports2[p] = m[p]; +} +function __values(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function __read(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; +} +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} +function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +} +function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); +} +function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } +} +function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function(e) { + throw e; + }), verb("return"), i[Symbol.iterator] = function() { + return this; + }, i; + function verb(n, f) { + i[n] = o[n] ? function(v) { + return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; + } : f; + } +} +function __asyncValues(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); + }; + } + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ value: v2, done: d }); + }, reject); + } +} +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { + Object.defineProperty(cooked, "raw", { value: raw }); + } else { + cooked.raw = raw; + } + return cooked; +} +function __importStar(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (Object.hasOwnProperty.call(mod, k)) + result2[k] = mod[k]; + } + result2.default = mod; + return result2; +} +function __importDefault(mod) { + return mod && mod.__esModule ? mod : { default: mod }; +} +function __classPrivateFieldGet(receiver, privateMap) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to get private field on non-instance"); + } + return privateMap.get(receiver); +} +function __classPrivateFieldSet(receiver, privateMap, value) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to set private field on non-instance"); + } + privateMap.set(receiver, value); + return value; +} +var extendStatics, __assign; +var init_tslib_es6 = __esm({ + "../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.es6.js"() { + extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (b2.hasOwnProperty(p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + __assign = function() { + __assign = Object.assign || function __assign4(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); + }; + } +}); + +// ../node_modules/.pnpm/tslib@2.6.0/node_modules/tslib/tslib.es6.mjs +var tslib_es6_exports2 = {}; +__export(tslib_es6_exports2, { + __addDisposableResource: () => __addDisposableResource, + __assign: () => __assign2, + __asyncDelegator: () => __asyncDelegator2, + __asyncGenerator: () => __asyncGenerator2, + __asyncValues: () => __asyncValues2, + __await: () => __await2, + __awaiter: () => __awaiter2, + __classPrivateFieldGet: () => __classPrivateFieldGet2, + __classPrivateFieldIn: () => __classPrivateFieldIn, + __classPrivateFieldSet: () => __classPrivateFieldSet2, + __createBinding: () => __createBinding2, + __decorate: () => __decorate2, + __disposeResources: () => __disposeResources, + __esDecorate: () => __esDecorate, + __exportStar: () => __exportStar2, + __extends: () => __extends2, + __generator: () => __generator2, + __importDefault: () => __importDefault2, + __importStar: () => __importStar2, + __makeTemplateObject: () => __makeTemplateObject2, + __metadata: () => __metadata2, + __param: () => __param2, + __propKey: () => __propKey, + __read: () => __read2, + __rest: () => __rest2, + __runInitializers: () => __runInitializers, + __setFunctionName: () => __setFunctionName, + __spread: () => __spread2, + __spreadArray: () => __spreadArray, + __spreadArrays: () => __spreadArrays2, + __values: () => __values2, + default: () => tslib_es6_default +}); +function __extends2(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics2(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} +function __rest2(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} +function __decorate2(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") + r = Reflect.decorate(decorators, target, key, desc); + else + for (var i = decorators.length - 1; i >= 0; i--) + if (d = decorators[i]) + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} +function __param2(paramIndex, decorator) { + return function(target, key) { + decorator(target, key, paramIndex); + }; +} +function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { + function accept(f) { + if (f !== void 0 && typeof f !== "function") + throw new TypeError("Function expected"); + return f; + } + var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; + var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; + var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); + var _, done = false; + for (var i = decorators.length - 1; i >= 0; i--) { + var context = {}; + for (var p in contextIn) + context[p] = p === "access" ? {} : contextIn[p]; + for (var p in contextIn.access) + context.access[p] = contextIn.access[p]; + context.addInitializer = function(f) { + if (done) + throw new TypeError("Cannot add initializers after decoration has completed"); + extraInitializers.push(accept(f || null)); + }; + var result2 = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); + if (kind === "accessor") { + if (result2 === void 0) + continue; + if (result2 === null || typeof result2 !== "object") + throw new TypeError("Object expected"); + if (_ = accept(result2.get)) + descriptor.get = _; + if (_ = accept(result2.set)) + descriptor.set = _; + if (_ = accept(result2.init)) + initializers.unshift(_); + } else if (_ = accept(result2)) { + if (kind === "field") + initializers.unshift(_); + else + descriptor[key] = _; + } + } + if (target) + Object.defineProperty(target, contextIn.name, descriptor); + done = true; +} +function __runInitializers(thisArg, initializers, value) { + var useValue = arguments.length > 2; + for (var i = 0; i < initializers.length; i++) { + value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); + } + return useValue ? value : void 0; +} +function __propKey(x) { + return typeof x === "symbol" ? x : "".concat(x); +} +function __setFunctionName(f, name, prefix) { + if (typeof name === "symbol") + name = name.description ? "[".concat(name.description, "]") : ""; + return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); +} +function __metadata2(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") + return Reflect.metadata(metadataKey, metadataValue); +} +function __awaiter2(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} +function __generator2(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } +} +function __exportStar2(m, o) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) + __createBinding2(o, m, p); +} +function __values2(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function __read2(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; +} +function __spread2() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read2(arguments[i])); + return ar; +} +function __spreadArrays2() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +} +function __spreadArray(to, from, pack) { + if (pack || arguments.length === 2) + for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) + ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +} +function __await2(v) { + return this instanceof __await2 ? (this.v = v, this) : new __await2(v); +} +function __asyncGenerator2(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await2 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } +} +function __asyncDelegator2(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function(e) { + throw e; + }), verb("return"), i[Symbol.iterator] = function() { + return this; + }, i; + function verb(n, f) { + i[n] = o[n] ? function(v) { + return (p = !p) ? { value: __await2(o[n](v)), done: false } : f ? f(v) : v; + } : f; + } +} +function __asyncValues2(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values2 === "function" ? __values2(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); + }; + } + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ value: v2, done: d }); + }, reject); + } +} +function __makeTemplateObject2(cooked, raw) { + if (Object.defineProperty) { + Object.defineProperty(cooked, "raw", { value: raw }); + } else { + cooked.raw = raw; + } + return cooked; +} +function __importStar2(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding2(result2, mod, k); + } + __setModuleDefault(result2, mod); + return result2; +} +function __importDefault2(mod) { + return mod && mod.__esModule ? mod : { default: mod }; +} +function __classPrivateFieldGet2(receiver, state, kind, f) { + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a getter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot read private member from an object whose class did not declare it"); + return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); +} +function __classPrivateFieldSet2(receiver, state, value, kind, f) { + if (kind === "m") + throw new TypeError("Private method is not writable"); + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a setter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot write private member to an object whose class did not declare it"); + return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; +} +function __classPrivateFieldIn(state, receiver) { + if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") + throw new TypeError("Cannot use 'in' operator on non-object"); + return typeof state === "function" ? receiver === state : state.has(receiver); +} +function __addDisposableResource(env, value, async) { + if (value !== null && value !== void 0) { + if (typeof value !== "object") + throw new TypeError("Object expected."); + var dispose; + if (async) { + if (!Symbol.asyncDispose) + throw new TypeError("Symbol.asyncDispose is not defined."); + dispose = value[Symbol.asyncDispose]; + } + if (dispose === void 0) { + if (!Symbol.dispose) + throw new TypeError("Symbol.dispose is not defined."); + dispose = value[Symbol.dispose]; + } + if (typeof dispose !== "function") + throw new TypeError("Object not disposable."); + env.stack.push({ value, dispose, async }); + } else if (async) { + env.stack.push({ async: true }); + } + return value; +} +function __disposeResources(env) { + function fail(e) { + env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e; + env.hasError = true; + } + function next() { + while (env.stack.length) { + var rec = env.stack.pop(); + try { + var result2 = rec.dispose && rec.dispose.call(rec.value); + if (rec.async) + return Promise.resolve(result2).then(next, function(e) { + fail(e); + return next(); + }); + } catch (e) { + fail(e); + } + } + if (env.hasError) + throw env.error; + } + return next(); +} +var extendStatics2, __assign2, __createBinding2, __setModuleDefault, _SuppressedError, tslib_es6_default; +var init_tslib_es62 = __esm({ + "../node_modules/.pnpm/tslib@2.6.0/node_modules/tslib/tslib.es6.mjs"() { + extendStatics2 = function(d, b) { + extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics2(d, b); + }; + __assign2 = function() { + __assign2 = Object.assign || function __assign4(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; } - throw invalidChar(read()); - }, - zero() { - switch (c) { - case ".": - buffer += read(); - lexState = "decimalPoint"; - return; - case "e": - case "E": - buffer += read(); - lexState = "decimalExponent"; - return; - case "x": - case "X": - buffer += read(); - lexState = "hexadecimal"; + return t; + }; + return __assign2.apply(this, arguments); + }; + __createBinding2 = Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }; + __setModuleDefault = Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }; + _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message2) { + var e = new Error(message2); + return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; + }; + tslib_es6_default = { + __extends: __extends2, + __assign: __assign2, + __rest: __rest2, + __decorate: __decorate2, + __param: __param2, + __metadata: __metadata2, + __awaiter: __awaiter2, + __generator: __generator2, + __createBinding: __createBinding2, + __exportStar: __exportStar2, + __values: __values2, + __read: __read2, + __spread: __spread2, + __spreadArrays: __spreadArrays2, + __spreadArray, + __await: __await2, + __asyncGenerator: __asyncGenerator2, + __asyncDelegator: __asyncDelegator2, + __asyncValues: __asyncValues2, + __makeTemplateObject: __makeTemplateObject2, + __importStar: __importStar2, + __importDefault: __importDefault2, + __classPrivateFieldGet: __classPrivateFieldGet2, + __classPrivateFieldSet: __classPrivateFieldSet2, + __classPrivateFieldIn, + __addDisposableResource, + __disposeResources + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/constants.js +var require_constants9 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SAFE_TIME = exports2.S_IFLNK = exports2.S_IFREG = exports2.S_IFDIR = exports2.S_IFMT = void 0; + exports2.S_IFMT = 61440; + exports2.S_IFDIR = 16384; + exports2.S_IFREG = 32768; + exports2.S_IFLNK = 40960; + exports2.SAFE_TIME = 456789e3; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/errors.js +var require_errors2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/errors.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ERR_DIR_CLOSED = exports2.EOPNOTSUPP = exports2.ENOTEMPTY = exports2.EROFS = exports2.EEXIST = exports2.EISDIR = exports2.ENOTDIR = exports2.ENOENT = exports2.EBADF = exports2.EINVAL = exports2.ENOSYS = exports2.EBUSY = void 0; + function makeError(code, message2) { + return Object.assign(new Error(`${code}: ${message2}`), { code }); + } + function EBUSY(message2) { + return makeError(`EBUSY`, message2); + } + exports2.EBUSY = EBUSY; + function ENOSYS(message2, reason) { + return makeError(`ENOSYS`, `${message2}, ${reason}`); + } + exports2.ENOSYS = ENOSYS; + function EINVAL(reason) { + return makeError(`EINVAL`, `invalid argument, ${reason}`); + } + exports2.EINVAL = EINVAL; + function EBADF(reason) { + return makeError(`EBADF`, `bad file descriptor, ${reason}`); + } + exports2.EBADF = EBADF; + function ENOENT(reason) { + return makeError(`ENOENT`, `no such file or directory, ${reason}`); + } + exports2.ENOENT = ENOENT; + function ENOTDIR(reason) { + return makeError(`ENOTDIR`, `not a directory, ${reason}`); + } + exports2.ENOTDIR = ENOTDIR; + function EISDIR(reason) { + return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); + } + exports2.EISDIR = EISDIR; + function EEXIST(reason) { + return makeError(`EEXIST`, `file already exists, ${reason}`); + } + exports2.EEXIST = EEXIST; + function EROFS(reason) { + return makeError(`EROFS`, `read-only filesystem, ${reason}`); + } + exports2.EROFS = EROFS; + function ENOTEMPTY(reason) { + return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); + } + exports2.ENOTEMPTY = ENOTEMPTY; + function EOPNOTSUPP(reason) { + return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); + } + exports2.EOPNOTSUPP = EOPNOTSUPP; + function ERR_DIR_CLOSED() { + return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); + } + exports2.ERR_DIR_CLOSED = ERR_DIR_CLOSED; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/statUtils.js +var require_statUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/statUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.areStatsEqual = exports2.convertToBigIntStats = exports2.clearStats = exports2.makeEmptyStats = exports2.makeDefaultStats = exports2.BigIntStatsEntry = exports2.StatEntry = exports2.DirEntry = exports2.DEFAULT_MODE = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var nodeUtils = tslib_12.__importStar(require("util")); + var constants_1 = require_constants9(); + exports2.DEFAULT_MODE = constants_1.S_IFREG | 420; + var DirEntry = class { + constructor() { + this.name = ``; + this.mode = 0; + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; + } + }; + exports2.DirEntry = DirEntry; + var StatEntry = class { + constructor() { + this.uid = 0; + this.gid = 0; + this.size = 0; + this.blksize = 0; + this.atimeMs = 0; + this.mtimeMs = 0; + this.ctimeMs = 0; + this.birthtimeMs = 0; + this.atime = /* @__PURE__ */ new Date(0); + this.mtime = /* @__PURE__ */ new Date(0); + this.ctime = /* @__PURE__ */ new Date(0); + this.birthtime = /* @__PURE__ */ new Date(0); + this.dev = 0; + this.ino = 0; + this.mode = exports2.DEFAULT_MODE; + this.nlink = 1; + this.rdev = 0; + this.blocks = 1; + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR; + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG; + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK; + } + }; + exports2.StatEntry = StatEntry; + var BigIntStatsEntry = class { + constructor() { + this.uid = BigInt(0); + this.gid = BigInt(0); + this.size = BigInt(0); + this.blksize = BigInt(0); + this.atimeMs = BigInt(0); + this.mtimeMs = BigInt(0); + this.ctimeMs = BigInt(0); + this.birthtimeMs = BigInt(0); + this.atimeNs = BigInt(0); + this.mtimeNs = BigInt(0); + this.ctimeNs = BigInt(0); + this.birthtimeNs = BigInt(0); + this.atime = /* @__PURE__ */ new Date(0); + this.mtime = /* @__PURE__ */ new Date(0); + this.ctime = /* @__PURE__ */ new Date(0); + this.birthtime = /* @__PURE__ */ new Date(0); + this.dev = BigInt(0); + this.ino = BigInt(0); + this.mode = BigInt(exports2.DEFAULT_MODE); + this.nlink = BigInt(1); + this.rdev = BigInt(0); + this.blocks = BigInt(1); + } + isBlockDevice() { + return false; + } + isCharacterDevice() { + return false; + } + isDirectory() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFDIR); + } + isFIFO() { + return false; + } + isFile() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFREG); + } + isSocket() { + return false; + } + isSymbolicLink() { + return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFLNK); + } + }; + exports2.BigIntStatsEntry = BigIntStatsEntry; + function makeDefaultStats() { + return new StatEntry(); + } + exports2.makeDefaultStats = makeDefaultStats; + function makeEmptyStats() { + return clearStats(makeDefaultStats()); + } + exports2.makeEmptyStats = makeEmptyStats; + function clearStats(stats) { + for (const key in stats) { + if (Object.prototype.hasOwnProperty.call(stats, key)) { + const element = stats[key]; + if (typeof element === `number`) { + stats[key] = 0; + } else if (typeof element === `bigint`) { + stats[key] = BigInt(0); + } else if (nodeUtils.types.isDate(element)) { + stats[key] = /* @__PURE__ */ new Date(0); + } + } + } + return stats; + } + exports2.clearStats = clearStats; + function convertToBigIntStats(stats) { + const bigintStats = new BigIntStatsEntry(); + for (const key in stats) { + if (Object.prototype.hasOwnProperty.call(stats, key)) { + const element = stats[key]; + if (typeof element === `number`) { + bigintStats[key] = BigInt(element); + } else if (nodeUtils.types.isDate(element)) { + bigintStats[key] = new Date(element); + } + } + } + bigintStats.atimeNs = bigintStats.atimeMs * BigInt(1e6); + bigintStats.mtimeNs = bigintStats.mtimeMs * BigInt(1e6); + bigintStats.ctimeNs = bigintStats.ctimeMs * BigInt(1e6); + bigintStats.birthtimeNs = bigintStats.birthtimeMs * BigInt(1e6); + return bigintStats; + } + exports2.convertToBigIntStats = convertToBigIntStats; + function areStatsEqual(a, b) { + if (a.atimeMs !== b.atimeMs) + return false; + if (a.birthtimeMs !== b.birthtimeMs) + return false; + if (a.blksize !== b.blksize) + return false; + if (a.blocks !== b.blocks) + return false; + if (a.ctimeMs !== b.ctimeMs) + return false; + if (a.dev !== b.dev) + return false; + if (a.gid !== b.gid) + return false; + if (a.ino !== b.ino) + return false; + if (a.isBlockDevice() !== b.isBlockDevice()) + return false; + if (a.isCharacterDevice() !== b.isCharacterDevice()) + return false; + if (a.isDirectory() !== b.isDirectory()) + return false; + if (a.isFIFO() !== b.isFIFO()) + return false; + if (a.isFile() !== b.isFile()) + return false; + if (a.isSocket() !== b.isSocket()) + return false; + if (a.isSymbolicLink() !== b.isSymbolicLink()) + return false; + if (a.mode !== b.mode) + return false; + if (a.mtimeMs !== b.mtimeMs) + return false; + if (a.nlink !== b.nlink) + return false; + if (a.rdev !== b.rdev) + return false; + if (a.size !== b.size) + return false; + if (a.uid !== b.uid) + return false; + const aN = a; + const bN = b; + if (aN.atimeNs !== bN.atimeNs) + return false; + if (aN.mtimeNs !== bN.mtimeNs) + return false; + if (aN.ctimeNs !== bN.ctimeNs) + return false; + if (aN.birthtimeNs !== bN.birthtimeNs) + return false; + return true; + } + exports2.areStatsEqual = areStatsEqual; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/path.js +var require_path3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/path.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toFilename = exports2.convertPath = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var path_1 = tslib_12.__importDefault(require("path")); + var PathType; + (function(PathType2) { + PathType2[PathType2["File"] = 0] = "File"; + PathType2[PathType2["Portable"] = 1] = "Portable"; + PathType2[PathType2["Native"] = 2] = "Native"; + })(PathType || (PathType = {})); + exports2.PortablePath = { + root: `/`, + dot: `.` + }; + exports2.Filename = { + home: `~`, + nodeModules: `node_modules`, + manifest: `package.json`, + lockfile: `yarn.lock`, + virtual: `__virtual__`, + /** + * @deprecated + */ + pnpJs: `.pnp.js`, + pnpCjs: `.pnp.cjs`, + pnpData: `.pnp.data.json`, + pnpEsmLoader: `.pnp.loader.mjs`, + rc: `.yarnrc.yml` + }; + exports2.npath = Object.create(path_1.default); + exports2.ppath = Object.create(path_1.default.posix); + exports2.npath.cwd = () => process.cwd(); + exports2.ppath.cwd = () => toPortablePath(process.cwd()); + exports2.ppath.resolve = (...segments) => { + if (segments.length > 0 && exports2.ppath.isAbsolute(segments[0])) { + return path_1.default.posix.resolve(...segments); + } else { + return path_1.default.posix.resolve(exports2.ppath.cwd(), ...segments); + } + }; + var contains = function(pathUtils, from, to) { + from = pathUtils.normalize(from); + to = pathUtils.normalize(to); + if (from === to) + return `.`; + if (!from.endsWith(pathUtils.sep)) + from = from + pathUtils.sep; + if (to.startsWith(from)) { + return to.slice(from.length); + } else { + return null; + } + }; + exports2.npath.fromPortablePath = fromPortablePath; + exports2.npath.toPortablePath = toPortablePath; + exports2.npath.contains = (from, to) => contains(exports2.npath, from, to); + exports2.ppath.contains = (from, to) => contains(exports2.ppath, from, to); + var WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; + var UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/; + var PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; + var UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; + function fromPortablePath(p) { + if (process.platform !== `win32`) + return p; + let portablePathMatch, uncPortablePathMatch; + if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP)) + p = portablePathMatch[1]; + else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP)) + p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`; + else + return p; + return p.replace(/\//g, `\\`); + } + function toPortablePath(p) { + if (process.platform !== `win32`) + return p; + p = p.replace(/\\/g, `/`); + let windowsPathMatch, uncWindowsPathMatch; + if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP)) + p = `/${windowsPathMatch[1]}`; + else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP)) + p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; + return p; + } + function convertPath(targetPathUtils, sourcePath) { + return targetPathUtils === exports2.npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); + } + exports2.convertPath = convertPath; + function toFilename(filename) { + if (exports2.npath.parse(filename).dir !== `` || exports2.ppath.parse(filename).dir !== ``) + throw new Error(`Invalid filename: "${filename}"`); + return filename; + } + exports2.toFilename = toFilename; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js +var require_copyPromise = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.copyPromise = exports2.setupCopyIndex = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var constants = tslib_12.__importStar(require_constants9()); + var path_1 = require_path3(); + var defaultTime = new Date(constants.SAFE_TIME * 1e3); + var defaultTimeMs = defaultTime.getTime(); + async function setupCopyIndex(destinationFs, linkStrategy) { + const hexCharacters = `0123456789abcdef`; + await destinationFs.mkdirPromise(linkStrategy.indexPath, { recursive: true }); + const promises = []; + for (const l1 of hexCharacters) + for (const l2 of hexCharacters) + promises.push(destinationFs.mkdirPromise(destinationFs.pathUtils.join(linkStrategy.indexPath, `${l1}${l2}`), { recursive: true })); + await Promise.all(promises); + return linkStrategy.indexPath; + } + exports2.setupCopyIndex = setupCopyIndex; + async function copyPromise(destinationFs, destination, sourceFs, source, opts) { + const normalizedDestination = destinationFs.pathUtils.normalize(destination); + const normalizedSource = sourceFs.pathUtils.normalize(source); + const prelayout = []; + const postlayout = []; + const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : await sourceFs.lstatPromise(normalizedSource); + await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] }); + await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts, didParentExist: true }); + for (const operation of prelayout) + await operation(); + await Promise.all(postlayout.map((operation) => { + return operation(); + })); + } + exports2.copyPromise = copyPromise; + async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { + var _a, _b, _c; + const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; + const sourceStat = await sourceFs.lstatPromise(source); + const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat; + let updated; + switch (true) { + case sourceStat.isDirectory(): + { + updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isFile(): + { + updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isSymbolicLink(): + { + updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + default: + { + throw new Error(`Unsupported file type (${sourceStat.mode})`); + } + break; + } + if (((_a = opts.linkStrategy) === null || _a === void 0 ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) { + if (updated || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _b === void 0 ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _c === void 0 ? void 0 : _c.getTime()) !== atime.getTime()) { + postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); + updated = true; + } + if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) { + postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511)); + updated = true; + } + } + return updated; + } + async function maybeLStat(baseFs, p) { + try { + return await baseFs.lstatPromise(p); + } catch (e) { + return null; + } + } + async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null && !destinationStat.isDirectory()) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + let updated = false; + if (destinationStat === null) { + prelayout.push(async () => { + try { + await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode }); + } catch (err) { + if (err.code !== `EEXIST`) { + throw err; + } + } + }); + updated = true; + } + const entries = await sourceFs.readdirPromise(source); + const nextOpts = opts.didParentExist && !destinationStat ? { ...opts, didParentExist: false } : opts; + if (opts.stableSort) { + for (const entry of entries.sort()) { + if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) { + updated = true; + } + } + } else { + const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { + await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts); + })); + if (entriesUpdateStatus.some((status) => status)) { + updated = true; + } + } + return updated; + } + async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, linkStrategy) { + const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` }); + const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${sourceHash}.dat`); + let AtomicBehavior; + (function(AtomicBehavior2) { + AtomicBehavior2[AtomicBehavior2["Lock"] = 0] = "Lock"; + AtomicBehavior2[AtomicBehavior2["Rename"] = 1] = "Rename"; + })(AtomicBehavior || (AtomicBehavior = {})); + let atomicBehavior = AtomicBehavior.Rename; + let indexStat = await maybeLStat(destinationFs, indexPath); + if (destinationStat) { + const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; + const isIndexModified = (indexStat === null || indexStat === void 0 ? void 0 : indexStat.mtimeMs) !== defaultTimeMs; + if (isDestinationHardlinkedFromIndex) { + if (isIndexModified && linkStrategy.autoRepair) { + atomicBehavior = AtomicBehavior.Lock; + indexStat = null; + } + } + if (!isDestinationHardlinkedFromIndex) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + } + const tempPath = !indexStat && atomicBehavior === AtomicBehavior.Rename ? `${indexPath}.${Math.floor(Math.random() * 4294967296).toString(16).padStart(8, `0`)}` : null; + let tempPathCleaned = false; + prelayout.push(async () => { + if (!indexStat) { + if (atomicBehavior === AtomicBehavior.Lock) { + await destinationFs.lockPromise(indexPath, async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(indexPath, content); + }); + } + if (atomicBehavior === AtomicBehavior.Rename && tempPath) { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(tempPath, content); + try { + await destinationFs.linkPromise(tempPath, indexPath); + } catch (err) { + if (err.code === `EEXIST`) { + tempPathCleaned = true; + await destinationFs.unlinkPromise(tempPath); + } else { + throw err; + } + } + } + } + if (!destinationStat) { + await destinationFs.linkPromise(indexPath, destination); + } + }); + postlayout.push(async () => { + if (!indexStat) + await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime); + if (tempPath && !tempPathCleaned) { + await destinationFs.unlinkPromise(tempPath); + } + }); + return false; + } + async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + prelayout.push(async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(destination, content); + }); + return true; + } + async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + var _a; + if (((_a = opts.linkStrategy) === null || _a === void 0 ? void 0 : _a.type) === `HardlinkFromIndex`) { + return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); + } else { + return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + } + async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + prelayout.push(async () => { + await destinationFs.symlinkPromise((0, path_1.convertPath)(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); + }); + return true; + } + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js +var require_opendir = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.opendir = exports2.CustomDir = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var errors = tslib_12.__importStar(require_errors2()); + var CustomDir = class { + constructor(path2, nextDirent, opts = {}) { + this.path = path2; + this.nextDirent = nextDirent; + this.opts = opts; + this.closed = false; + } + throwIfClosed() { + if (this.closed) { + throw errors.ERR_DIR_CLOSED(); + } + } + async *[Symbol.asyncIterator]() { + try { + let dirent; + while ((dirent = await this.read()) !== null) { + yield dirent; + } + } finally { + await this.close(); + } + } + read(cb) { + const dirent = this.readSync(); + if (typeof cb !== `undefined`) + return cb(null, dirent); + return Promise.resolve(dirent); + } + readSync() { + this.throwIfClosed(); + return this.nextDirent(); + } + close(cb) { + this.closeSync(); + if (typeof cb !== `undefined`) + return cb(null); + return Promise.resolve(); + } + closeSync() { + var _a, _b; + this.throwIfClosed(); + (_b = (_a = this.opts).onClose) === null || _b === void 0 ? void 0 : _b.call(_a); + this.closed = true; + } + }; + exports2.CustomDir = CustomDir; + function opendir(fakeFs, path2, entries, opts) { + const nextDirent = () => { + const filename = entries.shift(); + if (typeof filename === `undefined`) + return null; + return Object.assign(fakeFs.statSync(fakeFs.pathUtils.join(path2, filename)), { + name: filename + }); + }; + return new CustomDir(path2, nextDirent, opts); + } + exports2.opendir = opendir; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js +var require_CustomStatWatcher = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CustomStatWatcher = exports2.assertStatus = exports2.Status = exports2.Event = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var events_1 = require("events"); + var statUtils = tslib_12.__importStar(require_statUtils()); + var Event; + (function(Event2) { + Event2["Change"] = "change"; + Event2["Stop"] = "stop"; + })(Event = exports2.Event || (exports2.Event = {})); + var Status; + (function(Status2) { + Status2["Ready"] = "ready"; + Status2["Running"] = "running"; + Status2["Stopped"] = "stopped"; + })(Status = exports2.Status || (exports2.Status = {})); + function assertStatus(current, expected) { + if (current !== expected) { + throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); + } + } + exports2.assertStatus = assertStatus; + var CustomStatWatcher = class extends events_1.EventEmitter { + static create(fakeFs, path2, opts) { + const statWatcher = new CustomStatWatcher(fakeFs, path2, opts); + statWatcher.start(); + return statWatcher; + } + constructor(fakeFs, path2, { bigint = false } = {}) { + super(); + this.status = Status.Ready; + this.changeListeners = /* @__PURE__ */ new Map(); + this.startTimeout = null; + this.fakeFs = fakeFs; + this.path = path2; + this.bigint = bigint; + this.lastStats = this.stat(); + } + start() { + assertStatus(this.status, Status.Ready); + this.status = Status.Running; + this.startTimeout = setTimeout(() => { + this.startTimeout = null; + if (!this.fakeFs.existsSync(this.path)) { + this.emit(Event.Change, this.lastStats, this.lastStats); + } + }, 3); + } + stop() { + assertStatus(this.status, Status.Running); + this.status = Status.Stopped; + if (this.startTimeout !== null) { + clearTimeout(this.startTimeout); + this.startTimeout = null; + } + this.emit(Event.Stop); + } + stat() { + try { + return this.fakeFs.statSync(this.path, { bigint: this.bigint }); + } catch (error) { + const statInstance = this.bigint ? new statUtils.BigIntStatsEntry() : new statUtils.StatEntry(); + return statUtils.clearStats(statInstance); + } + } + /** + * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes. + * + * @param opts.persistent Decides whether the interval should be immediately unref-ed. + */ + makeInterval(opts) { + const interval = setInterval(() => { + const currentStats = this.stat(); + const previousStats = this.lastStats; + if (statUtils.areStatsEqual(currentStats, previousStats)) return; + this.lastStats = currentStats; + this.emit(Event.Change, currentStats, previousStats); + }, opts.interval); + return opts.persistent ? interval : interval.unref(); + } + /** + * Registers a listener and assigns it an interval. + */ + registerChangeListener(listener, opts) { + this.addListener(Event.Change, listener); + this.changeListeners.set(listener, this.makeInterval(opts)); + } + /** + * Unregisters the listener and clears the assigned interval. + */ + unregisterChangeListener(listener) { + this.removeListener(Event.Change, listener); + const interval = this.changeListeners.get(listener); + if (typeof interval !== `undefined`) + clearInterval(interval); + this.changeListeners.delete(listener); + } + /** + * Unregisters all listeners and clears all assigned intervals. + */ + unregisterAllChangeListeners() { + for (const listener of this.changeListeners.keys()) { + this.unregisterChangeListener(listener); } - return newToken("numeric", sign * 0); - }, - decimalInteger() { - switch (c) { - case ".": - buffer += read(); - lexState = "decimalPoint"; + } + hasChangeListeners() { + return this.changeListeners.size > 0; + } + /** + * Refs all stored intervals. + */ + ref() { + for (const interval of this.changeListeners.values()) + interval.ref(); + return this; + } + /** + * Unrefs all stored intervals. + */ + unref() { + for (const interval of this.changeListeners.values()) + interval.unref(); + return this; + } + }; + exports2.CustomStatWatcher = CustomStatWatcher; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js +var require_watchFile = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = void 0; + var CustomStatWatcher_1 = require_CustomStatWatcher(); + var statWatchersByFakeFS = /* @__PURE__ */ new WeakMap(); + function watchFile(fakeFs, path2, a, b) { + let bigint; + let persistent; + let interval; + let listener; + switch (typeof a) { + case `function`: + { + bigint = false; + persistent = true; + interval = 5007; + listener = a; + } + break; + default: + { + ({ + bigint = false, + persistent = true, + interval = 5007 + } = a); + listener = b; + } + break; + } + let statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + statWatchersByFakeFS.set(fakeFs, statWatchers = /* @__PURE__ */ new Map()); + let statWatcher = statWatchers.get(path2); + if (typeof statWatcher === `undefined`) { + statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path2, { bigint }); + statWatchers.set(path2, statWatcher); + } + statWatcher.registerChangeListener(listener, { persistent, interval }); + return statWatcher; + } + exports2.watchFile = watchFile; + function unwatchFile(fakeFs, path2, cb) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + const statWatcher = statWatchers.get(path2); + if (typeof statWatcher === `undefined`) + return; + if (typeof cb === `undefined`) + statWatcher.unregisterAllChangeListeners(); + else + statWatcher.unregisterChangeListener(cb); + if (!statWatcher.hasChangeListeners()) { + statWatcher.stop(); + statWatchers.delete(path2); + } + } + exports2.unwatchFile = unwatchFile; + function unwatchAllFiles(fakeFs) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + for (const path2 of statWatchers.keys()) { + unwatchFile(fakeFs, path2); + } + } + exports2.unwatchAllFiles = unwatchAllFiles; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/FakeFS.js +var require_FakeFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/FakeFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.normalizeLineEndings = exports2.BasePortableFakeFS = exports2.FakeFS = void 0; + var crypto_1 = require("crypto"); + var os_1 = require("os"); + var copyPromise_1 = require_copyPromise(); + var path_1 = require_path3(); + var FakeFS = class { + constructor(pathUtils) { + this.pathUtils = pathUtils; + } + async *genTraversePromise(init, { stableSort = false } = {}) { + const stack2 = [init]; + while (stack2.length > 0) { + const p = stack2.shift(); + const entry = await this.lstatPromise(p); + if (entry.isDirectory()) { + const entries = await this.readdirPromise(p); + if (stableSort) { + for (const entry2 of entries.sort()) { + stack2.push(this.pathUtils.join(p, entry2)); + } + } else { + throw new Error(`Not supported`); + } + } else { + yield p; + } + } + } + async checksumFilePromise(path2, { algorithm = `sha512` } = {}) { + const fd = await this.openPromise(path2, `r`); + try { + const CHUNK_SIZE = 65536; + const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE); + const hash = (0, crypto_1.createHash)(algorithm); + let bytesRead = 0; + while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0) + hash.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead)); + return hash.digest(`hex`); + } finally { + await this.closePromise(fd); + } + } + async removePromise(p, { recursive = true, maxRetries = 5 } = {}) { + let stat; + try { + stat = await this.lstatPromise(p); + } catch (error) { + if (error.code === `ENOENT`) { return; - case "e": - case "E": - buffer += read(); - lexState = "decimalExponent"; + } else { + throw error; + } + } + if (stat.isDirectory()) { + if (recursive) { + const entries = await this.readdirPromise(p); + await Promise.all(entries.map((entry) => { + return this.removePromise(this.pathUtils.resolve(p, entry)); + })); + } + for (let t = 0; t <= maxRetries; t++) { + try { + await this.rmdirPromise(p); + break; + } catch (error) { + if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) { + throw error; + } else if (t < maxRetries) { + await new Promise((resolve) => setTimeout(resolve, t * 100)); + } + } + } + } else { + await this.unlinkPromise(p); + } + } + removeSync(p, { recursive = true } = {}) { + let stat; + try { + stat = this.lstatSync(p); + } catch (error) { + if (error.code === `ENOENT`) { return; + } else { + throw error; + } } - if (util.isDigit(c)) { - buffer += read(); + if (stat.isDirectory()) { + if (recursive) + for (const entry of this.readdirSync(p)) + this.removeSync(this.pathUtils.resolve(p, entry)); + this.rmdirSync(p); + } else { + this.unlinkSync(p); + } + } + async mkdirpPromise(p, { chmod, utimes } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return void 0; + const parts = p.split(this.pathUtils.sep); + let createdDirectory; + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + await this.mkdirPromise(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + createdDirectory !== null && createdDirectory !== void 0 ? createdDirectory : createdDirectory = subPath; + if (chmod != null) + await this.chmodPromise(subPath, chmod); + if (utimes != null) { + await this.utimesPromise(subPath, utimes[0], utimes[1]); + } else { + const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); + await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); + } + } + } + return createdDirectory; + } + mkdirpSync(p, { chmod, utimes } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return void 0; + const parts = p.split(this.pathUtils.sep); + let createdDirectory; + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + this.mkdirSync(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + createdDirectory !== null && createdDirectory !== void 0 ? createdDirectory : createdDirectory = subPath; + if (chmod != null) + this.chmodSync(subPath, chmod); + if (utimes != null) { + this.utimesSync(subPath, utimes[0], utimes[1]); + } else { + const parentStat = this.statSync(this.pathUtils.dirname(subPath)); + this.utimesSync(subPath, parentStat.atime, parentStat.mtime); + } + } + } + return createdDirectory; + } + async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) { + return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy }); + } + copySync(destination, source, { baseFs = this, overwrite = true } = {}) { + const stat = baseFs.lstatSync(source); + const exists = this.existsSync(destination); + if (stat.isDirectory()) { + this.mkdirpSync(destination); + const directoryListing = baseFs.readdirSync(source); + for (const entry of directoryListing) { + this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { baseFs, overwrite }); + } + } else if (stat.isFile()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const content = baseFs.readFileSync(source); + this.writeFileSync(destination, content); + } + } else if (stat.isSymbolicLink()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const target = baseFs.readlinkSync(source); + this.symlinkSync((0, path_1.convertPath)(this.pathUtils, target), destination); + } + } else { + throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); + } + const mode = stat.mode & 511; + this.chmodSync(destination, mode); + } + async changeFilePromise(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferPromise(p, content, opts); + } else { + return this.changeFileTextPromise(p, content, opts); + } + } + async changeFileBufferPromise(p, content, { mode } = {}) { + let current = Buffer.alloc(0); + try { + current = await this.readFilePromise(p); + } catch (error) { + } + if (Buffer.compare(current, content) === 0) + return; + await this.writeFilePromise(p, content, { mode }); + } + async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) { + let current = ``; + try { + current = await this.readFilePromise(p, `utf8`); + } catch (error) { + } + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) + return; + await this.writeFilePromise(p, normalizedContent, { mode }); + } + changeFileSync(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferSync(p, content, opts); + } else { + return this.changeFileTextSync(p, content, opts); + } + } + changeFileBufferSync(p, content, { mode } = {}) { + let current = Buffer.alloc(0); + try { + current = this.readFileSync(p); + } catch (error) { + } + if (Buffer.compare(current, content) === 0) return; + this.writeFileSync(p, content, { mode }); + } + changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) { + let current = ``; + try { + current = this.readFileSync(p, `utf8`); + } catch (error) { + } + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) + return; + this.writeFileSync(p, normalizedContent, { mode }); + } + async movePromise(fromP, toP) { + try { + await this.renamePromise(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + await this.copyPromise(toP, fromP); + await this.removePromise(fromP); + } else { + throw error; + } + } + } + moveSync(fromP, toP) { + try { + this.renameSync(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + this.copySync(toP, fromP); + this.removeSync(fromP); + } else { + throw error; + } } - return newToken("numeric", sign * Number(buffer)); - }, - decimalPointLeading() { - if (util.isDigit(c)) { - buffer += read(); - lexState = "decimalFraction"; - return; + } + async lockPromise(affectedPath, callback) { + const lockPath = `${affectedPath}.flock`; + const interval = 1e3 / 60; + const startTime = Date.now(); + let fd = null; + const isAlive = async () => { + let pid; + try { + [pid] = await this.readJsonPromise(lockPath); + } catch (error) { + return Date.now() - startTime < 500; + } + try { + process.kill(pid, 0); + return true; + } catch (error) { + return false; + } + }; + while (fd === null) { + try { + fd = await this.openPromise(lockPath, `wx`); + } catch (error) { + if (error.code === `EEXIST`) { + if (!await isAlive()) { + try { + await this.unlinkPromise(lockPath); + continue; + } catch (error2) { + } + } + if (Date.now() - startTime < 60 * 1e3) { + await new Promise((resolve) => setTimeout(resolve, interval)); + } else { + throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); + } + } else { + throw error; + } + } } - throw invalidChar(read()); - }, - decimalPoint() { - switch (c) { - case "e": - case "E": - buffer += read(); - lexState = "decimalExponent"; - return; + await this.writePromise(fd, JSON.stringify([process.pid])); + try { + return await callback(); + } finally { + try { + await this.closePromise(fd); + await this.unlinkPromise(lockPath); + } catch (error) { + } } - if (util.isDigit(c)) { - buffer += read(); - lexState = "decimalFraction"; - return; + } + async readJsonPromise(p) { + const content = await this.readFilePromise(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; } - return newToken("numeric", sign * Number(buffer)); - }, - decimalFraction() { - switch (c) { - case "e": - case "E": - buffer += read(); - lexState = "decimalExponent"; - return; + } + readJsonSync(p) { + const content = this.readFileSync(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; } - if (util.isDigit(c)) { - buffer += read(); - return; + } + async writeJsonPromise(p, data) { + return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)} +`); + } + writeJsonSync(p, data) { + return this.writeFileSync(p, `${JSON.stringify(data, null, 2)} +`); + } + async preserveTimePromise(p, cb) { + const stat = await this.lstatPromise(p); + const result2 = await cb(); + if (typeof result2 !== `undefined`) + p = result2; + await this.lutimesPromise(p, stat.atime, stat.mtime); + } + async preserveTimeSync(p, cb) { + const stat = this.lstatSync(p); + const result2 = cb(); + if (typeof result2 !== `undefined`) + p = result2; + this.lutimesSync(p, stat.atime, stat.mtime); + } + }; + exports2.FakeFS = FakeFS; + var BasePortableFakeFS = class extends FakeFS { + constructor() { + super(path_1.ppath); + } + }; + exports2.BasePortableFakeFS = BasePortableFakeFS; + function getEndOfLine(content) { + const matches = content.match(/\r?\n/g); + if (matches === null) + return os_1.EOL; + const crlf = matches.filter((nl) => nl === `\r +`).length; + const lf = matches.length - crlf; + return crlf > lf ? `\r +` : ` +`; + } + function normalizeLineEndings(originalContent, newContent) { + return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); + } + exports2.normalizeLineEndings = normalizeLineEndings; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js +var require_ProxiedFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ProxiedFS = void 0; + var FakeFS_1 = require_FakeFS(); + var ProxiedFS = class extends FakeFS_1.FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + resolve(path2) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path2))); + } + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); + } + async openPromise(p, flags, mode) { + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + } + openSync(p, flags, mode) { + return this.baseFs.openSync(this.mapToBase(p), flags, mode); + } + async opendirPromise(p, opts) { + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); + } + opendirSync(p, opts) { + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); + } + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + } + readSync(fd, buffer, offset, length, position) { + return this.baseFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); } - return newToken("numeric", sign * Number(buffer)); - }, - decimalExponent() { - switch (c) { - case "+": - case "-": - buffer += read(); - lexState = "decimalExponentSign"; - return; + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); } - if (util.isDigit(c)) { - buffer += read(); - lexState = "decimalExponentInteger"; - return; + } + async closePromise(fd) { + return this.baseFs.closePromise(fd); + } + closeSync(fd) { + this.baseFs.closeSync(fd); + } + createReadStream(p, opts) { + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + } + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + } + async realpathPromise(p) { + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + } + realpathSync(p) { + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + } + async existsPromise(p) { + return this.baseFs.existsPromise(this.mapToBase(p)); + } + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); + } + accessSync(p, mode) { + return this.baseFs.accessSync(this.mapToBase(p), mode); + } + async accessPromise(p, mode) { + return this.baseFs.accessPromise(this.mapToBase(p), mode); + } + async statPromise(p, opts) { + return this.baseFs.statPromise(this.mapToBase(p), opts); + } + statSync(p, opts) { + return this.baseFs.statSync(this.mapToBase(p), opts); + } + async fstatPromise(fd, opts) { + return this.baseFs.fstatPromise(fd, opts); + } + fstatSync(fd, opts) { + return this.baseFs.fstatSync(fd, opts); + } + lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); + } + lstatSync(p, opts) { + return this.baseFs.lstatSync(this.mapToBase(p), opts); + } + async fchmodPromise(fd, mask) { + return this.baseFs.fchmodPromise(fd, mask); + } + fchmodSync(fd, mask) { + return this.baseFs.fchmodSync(fd, mask); + } + async chmodPromise(p, mask) { + return this.baseFs.chmodPromise(this.mapToBase(p), mask); + } + chmodSync(p, mask) { + return this.baseFs.chmodSync(this.mapToBase(p), mask); + } + async fchownPromise(fd, uid, gid) { + return this.baseFs.fchownPromise(fd, uid, gid); + } + fchownSync(fd, uid, gid) { + return this.baseFs.fchownSync(fd, uid, gid); + } + async chownPromise(p, uid, gid) { + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + } + chownSync(p, uid, gid) { + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + } + async renamePromise(oldP, newP) { + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + } + renameSync(oldP, newP) { + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + async appendFilePromise(p, content, opts) { + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + } + appendFileSync(p, content, opts) { + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + } + async writeFilePromise(p, content, opts) { + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + } + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + } + async unlinkPromise(p) { + return this.baseFs.unlinkPromise(this.mapToBase(p)); + } + unlinkSync(p) { + return this.baseFs.unlinkSync(this.mapToBase(p)); + } + async utimesPromise(p, atime, mtime) { + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + } + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + } + async lutimesPromise(p, atime, mtime) { + return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); + } + lutimesSync(p, atime, mtime) { + return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + } + mkdirSync(p, opts) { + return this.baseFs.mkdirSync(this.mapToBase(p), opts); + } + async rmdirPromise(p, opts) { + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + } + rmdirSync(p, opts) { + return this.baseFs.rmdirSync(this.mapToBase(p), opts); + } + async linkPromise(existingP, newP) { + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + } + linkSync(existingP, newP) { + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + } + async symlinkPromise(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + } + symlinkSync(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + } + async readFilePromise(p, encoding) { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } + readFileSync(p, encoding) { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } + async readdirPromise(p, opts) { + return this.baseFs.readdirPromise(this.mapToBase(p), opts); + } + readdirSync(p, opts) { + return this.baseFs.readdirSync(this.mapToBase(p), opts); + } + async readlinkPromise(p) { + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + } + readlinkSync(p) { + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + } + async truncatePromise(p, len) { + return this.baseFs.truncatePromise(this.mapToBase(p), len); + } + truncateSync(p, len) { + return this.baseFs.truncateSync(this.mapToBase(p), len); + } + async ftruncatePromise(fd, len) { + return this.baseFs.ftruncatePromise(fd, len); + } + ftruncateSync(fd, len) { + return this.baseFs.ftruncateSync(fd, len); + } + watch(p, a, b) { + return this.baseFs.watch( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); + } + watchFile(p, a, b) { + return this.baseFs.watchFile( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); + } + unwatchFile(p, cb) { + return this.baseFs.unwatchFile(this.mapToBase(p), cb); + } + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); } - throw invalidChar(read()); - }, - decimalExponentSign() { - if (util.isDigit(c)) { - buffer += read(); - lexState = "decimalExponentInteger"; - return; + } + }; + exports2.ProxiedFS = ProxiedFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/AliasFS.js +var require_AliasFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/AliasFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AliasFS = void 0; + var ProxiedFS_1 = require_ProxiedFS(); + var AliasFS = class extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs, pathUtils }) { + super(pathUtils); + this.target = target; + this.baseFs = baseFs; + } + getRealPath() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapFromBase(p) { + return p; + } + mapToBase(p) { + return p; + } + }; + exports2.AliasFS = AliasFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NodeFS.js +var require_NodeFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NodeFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodeFS = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var fs_1 = tslib_12.__importDefault(require("fs")); + var FakeFS_1 = require_FakeFS(); + var path_1 = require_path3(); + var NodeFS = class extends FakeFS_1.BasePortableFakeFS { + constructor(realFs = fs_1.default) { + super(); + this.realFs = realFs; + } + getExtractHint() { + return false; + } + getRealPath() { + return path_1.PortablePath.root; + } + resolve(p) { + return path_1.ppath.resolve(p); + } + async openPromise(p, flags, mode) { + return await new Promise((resolve, reject) => { + this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); + } + openSync(p, flags, mode) { + return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode); + } + async opendirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then((dir) => { + return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); + }); + } + opendirSync(p, opts) { + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts) : this.realFs.opendirSync(path_1.npath.fromPortablePath(p)); + return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); + } + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); + } + readSync(fd, buffer, offset, length, position) { + return this.realFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.realFs.writeSync(fd, buffer, offset); + } else { + return this.realFs.writeSync(fd, buffer, offset, length, position); } - throw invalidChar(read()); - }, - decimalExponentInteger() { - if (util.isDigit(c)) { - buffer += read(); - return; + } + async closePromise(fd) { + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); + } + closeSync(fd) { + this.realFs.closeSync(fd); + } + createReadStream(p, opts) { + const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); + } + createWriteStream(p, opts) { + const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); + } + async realpathPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then((path2) => { + return path_1.npath.toPortablePath(path2); + }); + } + realpathSync(p) { + return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {})); + } + async existsPromise(p) { + return await new Promise((resolve) => { + this.realFs.exists(path_1.npath.fromPortablePath(p), resolve); + }); + } + accessSync(p, mode) { + return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode); + } + async accessPromise(p, mode) { + return await new Promise((resolve, reject) => { + this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(path_1.npath.fromPortablePath(p)); + } + async statPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + statSync(p, opts) { + if (opts) { + return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts); + } else { + return this.realFs.statSync(path_1.npath.fromPortablePath(p)); } - return newToken("numeric", sign * Number(buffer)); - }, - hexadecimal() { - if (util.isHexDigit(c)) { - buffer += read(); - lexState = "hexadecimalInteger"; - return; + } + async fstatPromise(fd, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); + } + fstatSync(fd, opts) { + if (opts) { + return this.realFs.fstatSync(fd, opts); + } else { + return this.realFs.fstatSync(fd); } - throw invalidChar(read()); - }, - hexadecimalInteger() { - if (util.isHexDigit(c)) { - buffer += read(); - return; + } + async lstatPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.lstat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + lstatSync(p, opts) { + if (opts) { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts); + } else { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p)); } - return newToken("numeric", sign * Number(buffer)); - }, - string() { - switch (c) { - case "\\": - read(); - buffer += escape(); - return; - case '"': - if (doubleQuote) { - read(); - return newToken("string", buffer); - } - buffer += read(); - return; - case "'": - if (!doubleQuote) { - read(); - return newToken("string", buffer); - } - buffer += read(); - return; - case "\n": - case "\r": - throw invalidChar(read()); - case "\u2028": - case "\u2029": - separatorChar(c); - break; - case void 0: - throw invalidChar(read()); + } + async fchmodPromise(fd, mask) { + return await new Promise((resolve, reject) => { + this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); + }); + } + fchmodSync(fd, mask) { + return this.realFs.fchmodSync(fd, mask); + } + async chmodPromise(p, mask) { + return await new Promise((resolve, reject) => { + this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); + } + chmodSync(p, mask) { + return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask); + } + async fchownPromise(fd, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); + }); + } + fchownSync(fd, uid, gid) { + return this.realFs.fchownSync(fd, uid, gid); + } + async chownPromise(p, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); + } + chownSync(p, uid, gid) { + return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid); + } + async renamePromise(oldP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + renameSync(oldP, newP) { + return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return await new Promise((resolve, reject) => { + this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags); + } + async appendFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + appendFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); } - buffer += read(); - }, - start() { - switch (c) { - case "{": - case "[": - return newToken("punctuator", read()); + } + async writeFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + writeFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); } - lexState = "value"; - }, - beforePropertyName() { - switch (c) { - case "$": - case "_": - buffer = read(); - lexState = "identifierName"; - return; - case "\\": - read(); - lexState = "identifierNameStartEscape"; - return; - case "}": - return newToken("punctuator", read()); - case '"': - case "'": - doubleQuote = read() === '"'; - lexState = "string"; - return; + } + async unlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + unlinkSync(p) { + return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p)); + } + async utimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + utimesSync(p, atime, mtime) { + this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime); + } + async lutimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + lutimesSync(p, atime, mtime) { + this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); + } + mkdirSync(p, opts) { + return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts); + } + async rmdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + rmdirSync(p, opts) { + return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts); + } + async linkPromise(existingP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + linkSync(existingP, newP) { + return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP)); + } + async symlinkPromise(target, p, type) { + return await new Promise((resolve, reject) => { + this.realFs.symlink(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); + } + symlinkSync(target, p, type) { + return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type); + } + async readFilePromise(p, encoding) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); + } + readFileSync(p, encoding) { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); + } + async readdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + this.realFs.readdir(path_1.npath.fromPortablePath(p), { withFileTypes: true }, this.makeCallback(resolve, reject)); + } else { + this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject)); + } + }); + } + readdirSync(p, opts) { + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), { withFileTypes: true }); + } else { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p)); } - if (util.isIdStartChar(c)) { - buffer += read(); - lexState = "identifierName"; - return; + } + async readlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then((path2) => { + return path_1.npath.toPortablePath(path2); + }); + } + readlinkSync(p) { + return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p))); + } + async truncatePromise(p, len) { + return await new Promise((resolve, reject) => { + this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); + } + truncateSync(p, len) { + return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len); + } + async ftruncatePromise(fd, len) { + return await new Promise((resolve, reject) => { + this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); + }); + } + ftruncateSync(fd, len) { + return this.realFs.ftruncateSync(fd, len); + } + watch(p, a, b) { + return this.realFs.watch( + path_1.npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); + } + watchFile(p, a, b) { + return this.realFs.watchFile( + path_1.npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); + } + unwatchFile(p, cb) { + return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb); + } + makeCallback(resolve, reject) { + return (err, result2) => { + if (err) { + reject(err); + } else { + resolve(result2); + } + }; + } + }; + exports2.NodeFS = NodeFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/CwdFS.js +var require_CwdFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/CwdFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CwdFS = void 0; + var NodeFS_1 = require_NodeFS(); + var ProxiedFS_1 = require_ProxiedFS(); + var path_1 = require_path3(); + var CwdFS = class extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.target = this.pathUtils.normalize(target); + this.baseFs = baseFs; + } + getRealPath() { + return this.pathUtils.resolve(this.baseFs.getRealPath(), this.target); + } + resolve(p) { + if (this.pathUtils.isAbsolute(p)) { + return path_1.ppath.normalize(p); + } else { + return this.baseFs.resolve(path_1.ppath.join(this.target, p)); } - throw invalidChar(read()); - }, - afterPropertyName() { - if (c === ":") { - return newToken("punctuator", read()); + } + mapFromBase(path2) { + return path2; + } + mapToBase(path2) { + if (this.pathUtils.isAbsolute(path2)) { + return path2; + } else { + return this.pathUtils.join(this.target, path2); } - throw invalidChar(read()); - }, - beforePropertyValue() { - lexState = "value"; - }, - afterPropertyValue() { - switch (c) { - case ",": - case "}": - return newToken("punctuator", read()); + } + }; + exports2.CwdFS = CwdFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/JailFS.js +var require_JailFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/JailFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.JailFS = void 0; + var NodeFS_1 = require_NodeFS(); + var ProxiedFS_1 = require_ProxiedFS(); + var path_1 = require_path3(); + var JAIL_ROOT = path_1.PortablePath.root; + var JailFS = class extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.target = this.pathUtils.resolve(path_1.PortablePath.root, target); + this.baseFs = baseFs; + } + getRealPath() { + return this.pathUtils.resolve(this.baseFs.getRealPath(), this.pathUtils.relative(path_1.PortablePath.root, this.target)); + } + getTarget() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapToBase(p) { + const normalized = this.pathUtils.normalize(p); + if (this.pathUtils.isAbsolute(p)) + return this.pathUtils.resolve(this.target, this.pathUtils.relative(JAIL_ROOT, p)); + if (normalized.match(/^\.\.\/?/)) + throw new Error(`Resolving this path (${p}) would escape the jail`); + return this.pathUtils.resolve(this.target, p); + } + mapFromBase(p) { + return this.pathUtils.resolve(JAIL_ROOT, this.pathUtils.relative(this.target, p)); + } + }; + exports2.JailFS = JailFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/LazyFS.js +var require_LazyFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/LazyFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LazyFS = void 0; + var ProxiedFS_1 = require_ProxiedFS(); + var LazyFS = class extends ProxiedFS_1.ProxiedFS { + constructor(factory, pathUtils) { + super(pathUtils); + this.instance = null; + this.factory = factory; + } + get baseFs() { + if (!this.instance) + this.instance = this.factory(); + return this.instance; + } + set baseFs(value) { + this.instance = value; + } + mapFromBase(p) { + return p; + } + mapToBase(p) { + return p; + } + }; + exports2.LazyFS = LazyFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/MountFS.js +var require_MountFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/MountFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MountFS = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var fs_1 = require("fs"); + var FakeFS_1 = require_FakeFS(); + var NodeFS_1 = require_NodeFS(); + var watchFile_1 = require_watchFile(); + var errors = tslib_12.__importStar(require_errors2()); + var path_1 = require_path3(); + var MOUNT_MASK = 4278190080; + var MountFS = class extends FakeFS_1.BasePortableFakeFS { + constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, magicByte = 42, maxOpenFiles = Infinity, useCache = true, maxAge = 5e3, getMountPoint, factoryPromise, factorySync }) { + if (Math.floor(magicByte) !== magicByte || !(magicByte > 1 && magicByte <= 127)) + throw new Error(`The magic byte must be set to a round value between 1 and 127 included`); + super(); + this.fdMap = /* @__PURE__ */ new Map(); + this.nextFd = 3; + this.isMount = /* @__PURE__ */ new Set(); + this.notMount = /* @__PURE__ */ new Set(); + this.realPaths = /* @__PURE__ */ new Map(); + this.limitOpenFilesTimeout = null; + this.baseFs = baseFs; + this.mountInstances = useCache ? /* @__PURE__ */ new Map() : null; + this.factoryPromise = factoryPromise; + this.factorySync = factorySync; + this.filter = filter; + this.getMountPoint = getMountPoint; + this.magic = magicByte << 24; + this.maxAge = maxAge; + this.maxOpenFiles = maxOpenFiles; + } + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + saveAndClose() { + var _a; + (0, watchFile_1.unwatchAllFiles)(this); + if (this.mountInstances) { + for (const [path2, { childFs }] of this.mountInstances.entries()) { + (_a = childFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + this.mountInstances.delete(path2); + } } - throw invalidChar(read()); - }, - beforeArrayValue() { - if (c === "]") { - return newToken("punctuator", read()); + } + discardAndClose() { + var _a; + (0, watchFile_1.unwatchAllFiles)(this); + if (this.mountInstances) { + for (const [path2, { childFs }] of this.mountInstances.entries()) { + (_a = childFs.discardAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + this.mountInstances.delete(path2); + } + } + } + resolve(p) { + return this.baseFs.resolve(p); + } + remapFd(mountFs, fd) { + const remappedFd = this.nextFd++ | this.magic; + this.fdMap.set(remappedFd, [mountFs, fd]); + return remappedFd; + } + async openPromise(p, flags, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.openPromise(p, flags, mode); + }, async (mountFs, { subPath }) => { + return this.remapFd(mountFs, await mountFs.openPromise(subPath, flags, mode)); + }); + } + openSync(p, flags, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.openSync(p, flags, mode); + }, (mountFs, { subPath }) => { + return this.remapFd(mountFs, mountFs.openSync(subPath, flags, mode)); + }); + } + async opendirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.opendirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.opendirPromise(subPath, opts); + }, { + requireSubpath: false + }); + } + opendirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.opendirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.opendirSync(subPath, opts); + }, { + requireSubpath: false + }); + } + async readPromise(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`read`); + const [mountFs, realFd] = entry; + return await mountFs.readPromise(realFd, buffer, offset, length, position); + } + readSync(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.readSync(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`readSync`); + const [mountFs, realFd] = entry; + return mountFs.readSync(realFd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } } - lexState = "value"; - }, - afterArrayValue() { - switch (c) { - case ",": - case "]": - return newToken("punctuator", read()); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`write`); + const [mountFs, realFd] = entry; + if (typeof buffer === `string`) { + return await mountFs.writePromise(realFd, buffer, offset); + } else { + return await mountFs.writePromise(realFd, buffer, offset, length, position); } - throw invalidChar(read()); - }, - end() { - throw invalidChar(read()); } - }; - function newToken(type, value) { - return { - type, - value, - line, - column - }; - } - function literal(s) { - for (const c2 of s) { - const p = peek(); - if (p !== c2) { - throw invalidChar(read()); + writeSync(fd, buffer, offset, length, position) { + if ((fd & MOUNT_MASK) !== this.magic) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`writeSync`); + const [mountFs, realFd] = entry; + if (typeof buffer === `string`) { + return mountFs.writeSync(realFd, buffer, offset); + } else { + return mountFs.writeSync(realFd, buffer, offset, length, position); } - read(); } - } - function escape() { - const c2 = peek(); - switch (c2) { - case "b": - read(); - return "\b"; - case "f": - read(); - return "\f"; - case "n": - read(); - return "\n"; - case "r": - read(); - return "\r"; - case "t": - read(); - return " "; - case "v": - read(); - return "\v"; - case "0": - read(); - if (util.isDigit(peek())) { - throw invalidChar(read()); + async closePromise(fd) { + if ((fd & MOUNT_MASK) !== this.magic) + return await this.baseFs.closePromise(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`close`); + this.fdMap.delete(fd); + const [mountFs, realFd] = entry; + return await mountFs.closePromise(realFd); + } + closeSync(fd) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.closeSync(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`closeSync`); + this.fdMap.delete(fd); + const [mountFs, realFd] = entry; + return mountFs.closeSync(realFd); + } + createReadStream(p, opts) { + if (p === null) + return this.baseFs.createReadStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createReadStream(p, opts); + }, (mountFs, { archivePath, subPath }) => { + const stream = mountFs.createReadStream(subPath, opts); + stream.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath)); + return stream; + }); + } + createWriteStream(p, opts) { + if (p === null) + return this.baseFs.createWriteStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createWriteStream(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.createWriteStream(subPath, opts); + }); + } + async realpathPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.realpathPromise(p); + }, async (mountFs, { archivePath, subPath }) => { + let realArchivePath = this.realPaths.get(archivePath); + if (typeof realArchivePath === `undefined`) { + realArchivePath = await this.baseFs.realpathPromise(archivePath); + this.realPaths.set(archivePath, realArchivePath); } - return "\0"; - case "x": - read(); - return hexEscape(); - case "u": - read(); - return unicodeEscape(); - case "\n": - case "\u2028": - case "\u2029": - read(); - return ""; - case "\r": - read(); - if (peek() === "\n") { - read(); + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await mountFs.realpathPromise(subPath))); + }); + } + realpathSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.realpathSync(p); + }, (mountFs, { archivePath, subPath }) => { + let realArchivePath = this.realPaths.get(archivePath); + if (typeof realArchivePath === `undefined`) { + realArchivePath = this.baseFs.realpathSync(archivePath); + this.realPaths.set(archivePath, realArchivePath); } - return ""; - case "1": - case "2": - case "3": - case "4": - case "5": - case "6": - case "7": - case "8": - case "9": - throw invalidChar(read()); - case void 0: - throw invalidChar(read()); + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, mountFs.realpathSync(subPath))); + }); } - return read(); - } - function hexEscape() { - let buffer2 = ""; - let c2 = peek(); - if (!util.isHexDigit(c2)) { - throw invalidChar(read()); + async existsPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.existsPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.existsPromise(subPath); + }); } - buffer2 += read(); - c2 = peek(); - if (!util.isHexDigit(c2)) { - throw invalidChar(read()); + existsSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.existsSync(p); + }, (mountFs, { subPath }) => { + return mountFs.existsSync(subPath); + }); } - buffer2 += read(); - return String.fromCodePoint(parseInt(buffer2, 16)); - } - function unicodeEscape() { - let buffer2 = ""; - let count = 4; - while (count-- > 0) { - const c2 = peek(); - if (!util.isHexDigit(c2)) { - throw invalidChar(read()); - } - buffer2 += read(); + async accessPromise(p, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.accessPromise(p, mode); + }, async (mountFs, { subPath }) => { + return await mountFs.accessPromise(subPath, mode); + }); } - return String.fromCodePoint(parseInt(buffer2, 16)); - } - var parseStates = { - start() { - if (token.type === "eof") { - throw invalidEOF(); - } - push(); - }, - beforePropertyName() { - switch (token.type) { - case "identifier": - case "string": - key = token.value; - parseState = "afterPropertyName"; - return; - case "punctuator": - pop(); - return; - case "eof": - throw invalidEOF(); - } - }, - afterPropertyName() { - if (token.type === "eof") { - throw invalidEOF(); - } - parseState = "beforePropertyValue"; - }, - beforePropertyValue() { - if (token.type === "eof") { - throw invalidEOF(); - } - push(); - }, - beforeArrayValue() { - if (token.type === "eof") { - throw invalidEOF(); + accessSync(p, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.accessSync(p, mode); + }, (mountFs, { subPath }) => { + return mountFs.accessSync(subPath, mode); + }); + } + async statPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.statPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.statPromise(subPath, opts); + }); + } + statSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.statSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.statSync(subPath, opts); + }); + } + async fstatPromise(fd, opts) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fstatPromise(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fstat`); + const [mountFs, realFd] = entry; + return mountFs.fstatPromise(realFd, opts); + } + fstatSync(fd, opts) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fstatSync(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fstatSync`); + const [mountFs, realFd] = entry; + return mountFs.fstatSync(realFd, opts); + } + async lstatPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lstatPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.lstatPromise(subPath, opts); + }); + } + lstatSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.lstatSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.lstatSync(subPath, opts); + }); + } + async fchmodPromise(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodPromise(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmod`); + const [mountFs, realFd] = entry; + return mountFs.fchmodPromise(realFd, mask); + } + fchmodSync(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodSync(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmodSync`); + const [mountFs, realFd] = entry; + return mountFs.fchmodSync(realFd, mask); + } + async chmodPromise(p, mask) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chmodPromise(p, mask); + }, async (mountFs, { subPath }) => { + return await mountFs.chmodPromise(subPath, mask); + }); + } + chmodSync(p, mask) { + return this.makeCallSync(p, () => { + return this.baseFs.chmodSync(p, mask); + }, (mountFs, { subPath }) => { + return mountFs.chmodSync(subPath, mask); + }); + } + async fchownPromise(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownPromise(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchown`); + const [zipFs, realFd] = entry; + return zipFs.fchownPromise(realFd, uid, gid); + } + fchownSync(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownSync(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchownSync`); + const [zipFs, realFd] = entry; + return zipFs.fchownSync(realFd, uid, gid); + } + async chownPromise(p, uid, gid) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chownPromise(p, uid, gid); + }, async (mountFs, { subPath }) => { + return await mountFs.chownPromise(subPath, uid, gid); + }); + } + chownSync(p, uid, gid) { + return this.makeCallSync(p, () => { + return this.baseFs.chownSync(p, uid, gid); + }, (mountFs, { subPath }) => { + return mountFs.chownSync(subPath, uid, gid); + }); + } + async renamePromise(oldP, newP) { + return await this.makeCallPromise(oldP, async () => { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.renamePromise(oldP, newP); + }, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }); + }, async (mountFsO, { subPath: subPathO }) => { + return await this.makeCallPromise(newP, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }, async (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + } else { + return await mountFsO.renamePromise(subPathO, subPathN); + } + }); + }); + } + renameSync(oldP, newP) { + return this.makeCallSync(oldP, () => { + return this.makeCallSync(newP, () => { + return this.baseFs.renameSync(oldP, newP); + }, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }); + }, (mountFsO, { subPath: subPathO }) => { + return this.makeCallSync(newP, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + }, (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); + } else { + return mountFsO.renameSync(subPathO, subPathN); + } + }); + }); + } + async copyFilePromise(sourceP, destP, flags = 0) { + const fallback = async (sourceFs, sourceP2, destFs, destP2) => { + if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) + throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP2}' -> ${destP2}'`), { code: `EXDEV` }); + if (flags & fs_1.constants.COPYFILE_EXCL && await this.existsPromise(sourceP2)) + throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EEXIST` }); + let content; + try { + content = await sourceFs.readFilePromise(sourceP2); + } catch (error) { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EINVAL` }); + } + await destFs.writeFilePromise(destP2, content); + }; + return await this.makeCallPromise(sourceP, async () => { + return await this.makeCallPromise(destP, async () => { + return await this.baseFs.copyFilePromise(sourceP, destP, flags); + }, async (mountFsD, { subPath: subPathD }) => { + return await fallback(this.baseFs, sourceP, mountFsD, subPathD); + }); + }, async (mountFsS, { subPath: subPathS }) => { + return await this.makeCallPromise(destP, async () => { + return await fallback(mountFsS, subPathS, this.baseFs, destP); + }, async (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return await fallback(mountFsS, subPathS, mountFsD, subPathD); + } else { + return await mountFsS.copyFilePromise(subPathS, subPathD, flags); + } + }); + }); + } + copyFileSync(sourceP, destP, flags = 0) { + const fallback = (sourceFs, sourceP2, destFs, destP2) => { + if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) + throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP2}' -> ${destP2}'`), { code: `EXDEV` }); + if (flags & fs_1.constants.COPYFILE_EXCL && this.existsSync(sourceP2)) + throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EEXIST` }); + let content; + try { + content = sourceFs.readFileSync(sourceP2); + } catch (error) { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EINVAL` }); + } + destFs.writeFileSync(destP2, content); + }; + return this.makeCallSync(sourceP, () => { + return this.makeCallSync(destP, () => { + return this.baseFs.copyFileSync(sourceP, destP, flags); + }, (mountFsD, { subPath: subPathD }) => { + return fallback(this.baseFs, sourceP, mountFsD, subPathD); + }); + }, (mountFsS, { subPath: subPathS }) => { + return this.makeCallSync(destP, () => { + return fallback(mountFsS, subPathS, this.baseFs, destP); + }, (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return fallback(mountFsS, subPathS, mountFsD, subPathD); + } else { + return mountFsS.copyFileSync(subPathS, subPathD, flags); + } + }); + }); + } + async appendFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.appendFilePromise(p, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.appendFilePromise(subPath, content, opts); + }); + } + appendFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.appendFileSync(p, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.appendFileSync(subPath, content, opts); + }); + } + async writeFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.writeFilePromise(p, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.writeFilePromise(subPath, content, opts); + }); + } + writeFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.writeFileSync(p, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.writeFileSync(subPath, content, opts); + }); + } + async unlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.unlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.unlinkPromise(subPath); + }); + } + unlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.unlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.unlinkSync(subPath); + }); + } + async utimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.utimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.utimesPromise(subPath, atime, mtime); + }); + } + utimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.utimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.utimesSync(subPath, atime, mtime); + }); + } + async lutimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lutimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.lutimesPromise(subPath, atime, mtime); + }); + } + lutimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.lutimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.lutimesSync(subPath, atime, mtime); + }); + } + async mkdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.mkdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.mkdirPromise(subPath, opts); + }); + } + mkdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.mkdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.mkdirSync(subPath, opts); + }); + } + async rmdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.rmdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.rmdirPromise(subPath, opts); + }); + } + rmdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.rmdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.rmdirSync(subPath, opts); + }); + } + async linkPromise(existingP, newP) { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.linkPromise(existingP, newP); + }, async (mountFs, { subPath }) => { + return await mountFs.linkPromise(existingP, subPath); + }); + } + linkSync(existingP, newP) { + return this.makeCallSync(newP, () => { + return this.baseFs.linkSync(existingP, newP); + }, (mountFs, { subPath }) => { + return mountFs.linkSync(existingP, subPath); + }); + } + async symlinkPromise(target, p, type) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.symlinkPromise(target, p, type); + }, async (mountFs, { subPath }) => { + return await mountFs.symlinkPromise(target, subPath); + }); + } + symlinkSync(target, p, type) { + return this.makeCallSync(p, () => { + return this.baseFs.symlinkSync(target, p, type); + }, (mountFs, { subPath }) => { + return mountFs.symlinkSync(target, subPath); + }); + } + async readFilePromise(p, encoding) { + return this.makeCallPromise(p, async () => { + return await this.baseFs.readFilePromise(p, encoding); + }, async (mountFs, { subPath }) => { + return await mountFs.readFilePromise(subPath, encoding); + }); + } + readFileSync(p, encoding) { + return this.makeCallSync(p, () => { + return this.baseFs.readFileSync(p, encoding); + }, (mountFs, { subPath }) => { + return mountFs.readFileSync(subPath, encoding); + }); + } + async readdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.readdirPromise(subPath, opts); + }, { + requireSubpath: false + }); + } + readdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.readdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.readdirSync(subPath, opts); + }, { + requireSubpath: false + }); + } + async readlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.readlinkPromise(subPath); + }); + } + readlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.readlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.readlinkSync(subPath); + }); + } + async truncatePromise(p, len) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.truncatePromise(p, len); + }, async (mountFs, { subPath }) => { + return await mountFs.truncatePromise(subPath, len); + }); + } + truncateSync(p, len) { + return this.makeCallSync(p, () => { + return this.baseFs.truncateSync(p, len); + }, (mountFs, { subPath }) => { + return mountFs.truncateSync(subPath, len); + }); + } + async ftruncatePromise(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncatePromise(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncate`); + const [mountFs, realFd] = entry; + return mountFs.ftruncatePromise(realFd, len); + } + ftruncateSync(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncateSync(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncateSync`); + const [mountFs, realFd] = entry; + return mountFs.ftruncateSync(realFd, len); + } + watch(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watch( + p, + // @ts-expect-error + a, + b + ); + }, (mountFs, { subPath }) => { + return mountFs.watch( + subPath, + // @ts-expect-error + a, + b + ); + }); + } + watchFile(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watchFile( + p, + // @ts-expect-error + a, + b + ); + }, () => { + return (0, watchFile_1.watchFile)(this, p, a, b); + }); + } + unwatchFile(p, cb) { + return this.makeCallSync(p, () => { + return this.baseFs.unwatchFile(p, cb); + }, () => { + return (0, watchFile_1.unwatchFile)(this, p, cb); + }); + } + async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return await discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return await discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return await discard(); + return await this.getMountPromise(mountInfo.archivePath, async (mountFs) => await accept(mountFs, mountInfo)); + } + makeCallSync(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return discard(); + return this.getMountSync(mountInfo.archivePath, (mountFs) => accept(mountFs, mountInfo)); + } + findMount(p) { + if (this.filter && !this.filter.test(p)) + return null; + let filePath = ``; + while (true) { + const pathPartWithArchive = p.substring(filePath.length); + const mountPoint = this.getMountPoint(pathPartWithArchive, filePath); + if (!mountPoint) + return null; + filePath = this.pathUtils.join(filePath, mountPoint); + if (!this.isMount.has(filePath)) { + if (this.notMount.has(filePath)) + continue; + try { + if (!this.baseFs.lstatSync(filePath).isFile()) { + this.notMount.add(filePath); + continue; + } + } catch { + return null; + } + this.isMount.add(filePath); + } + return { + archivePath: filePath, + subPath: this.pathUtils.join(path_1.PortablePath.root, p.substring(filePath.length)) + }; } - if (token.type === "punctuator" && token.value === "]") { - pop(); + } + limitOpenFiles(max) { + var _a, _b, _c; + if (this.mountInstances === null) return; + const now = Date.now(); + let nextExpiresAt = now + this.maxAge; + let closeCount = max === null ? 0 : this.mountInstances.size - max; + for (const [path2, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) { + if (refCount !== 0 || ((_a = childFs.hasOpenFileHandles) === null || _a === void 0 ? void 0 : _a.call(childFs))) { + continue; + } else if (now >= expiresAt) { + (_b = childFs.saveAndClose) === null || _b === void 0 ? void 0 : _b.call(childFs); + this.mountInstances.delete(path2); + closeCount -= 1; + continue; + } else if (max === null || closeCount <= 0) { + nextExpiresAt = expiresAt; + break; + } + (_c = childFs.saveAndClose) === null || _c === void 0 ? void 0 : _c.call(childFs); + this.mountInstances.delete(path2); + closeCount -= 1; } - push(); - }, - afterPropertyValue() { - if (token.type === "eof") { - throw invalidEOF(); - } - switch (token.value) { - case ",": - parseState = "beforePropertyName"; - return; - case "}": - pop(); - } - }, - afterArrayValue() { - if (token.type === "eof") { - throw invalidEOF(); - } - switch (token.value) { - case ",": - parseState = "beforeArrayValue"; - return; - case "]": - pop(); + if (this.limitOpenFilesTimeout === null && (max === null && this.mountInstances.size > 0 || max !== null) && isFinite(nextExpiresAt)) { + this.limitOpenFilesTimeout = setTimeout(() => { + this.limitOpenFilesTimeout = null; + this.limitOpenFiles(null); + }, nextExpiresAt - now).unref(); } - }, - end() { } - }; - function push() { - let value; - switch (token.type) { - case "punctuator": - switch (token.value) { - case "{": - value = {}; - break; - case "[": - value = []; - break; + async getMountPromise(p, accept) { + var _a; + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + const createFsInstance = await this.factoryPromise(this.baseFs, p); + cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: createFsInstance(), + expiresAt: 0, + refCount: 0 + }; + } + } + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + cachedMountFs.refCount += 1; + try { + return await accept(cachedMountFs.childFs); + } finally { + cachedMountFs.refCount -= 1; } - break; - case "null": - case "boolean": - case "numeric": - case "string": - value = token.value; - break; - } - if (root === void 0) { - root = value; - } else { - const parent = stack2[stack2.length - 1]; - if (Array.isArray(parent)) { - parent.push(value); } else { - parent[key] = value; + const mountFs = (await this.factoryPromise(this.baseFs, p))(); + try { + return await accept(mountFs); + } finally { + (_a = mountFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(mountFs); + } } } - if (value !== null && typeof value === "object") { - stack2.push(value); - if (Array.isArray(value)) { - parseState = "beforeArrayValue"; - } else { - parseState = "beforePropertyName"; - } - } else { - const current = stack2[stack2.length - 1]; - if (current == null) { - parseState = "end"; - } else if (Array.isArray(current)) { - parseState = "afterArrayValue"; + getMountSync(p, accept) { + var _a; + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: this.factorySync(this.baseFs, p), + expiresAt: 0, + refCount: 0 + }; + } + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + return accept(cachedMountFs.childFs); } else { - parseState = "afterPropertyValue"; + const childFs = this.factorySync(this.baseFs, p); + try { + return accept(childFs); + } finally { + (_a = childFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + } } } - } - function pop() { - stack2.pop(); - const current = stack2[stack2.length - 1]; - if (current == null) { - parseState = "end"; - } else if (Array.isArray(current)) { - parseState = "afterArrayValue"; - } else { - parseState = "afterPropertyValue"; + }; + exports2.MountFS = MountFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NoFS.js +var require_NoFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NoFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoFS = void 0; + var FakeFS_1 = require_FakeFS(); + var path_1 = require_path3(); + var makeError = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` }); + var NoFS = class extends FakeFS_1.FakeFS { + constructor() { + super(path_1.ppath); } - } - function invalidChar(c2) { - if (c2 === void 0) { - return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); + getExtractHint() { + throw makeError(); } - return syntaxError(`JSON5: invalid character '${formatChar(c2)}' at ${line}:${column}`); - } - function invalidEOF() { - return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); - } - function invalidIdentifier() { - column -= 5; - return syntaxError(`JSON5: invalid identifier character at ${line}:${column}`); - } - function separatorChar(c2) { - console.warn(`JSON5: '${formatChar(c2)}' in strings is not valid ECMAScript; consider escaping`); - } - function formatChar(c2) { - const replacements = { - "'": "\\'", - '"': '\\"', - "\\": "\\\\", - "\b": "\\b", - "\f": "\\f", - "\n": "\\n", - "\r": "\\r", - " ": "\\t", - "\v": "\\v", - "\0": "\\0", - "\u2028": "\\u2028", - "\u2029": "\\u2029" - }; - if (replacements[c2]) { - return replacements[c2]; + getRealPath() { + throw makeError(); } - if (c2 < " ") { - const hexString = c2.charCodeAt(0).toString(16); - return "\\x" + ("00" + hexString).substring(hexString.length); + resolve() { + throw makeError(); + } + async openPromise() { + throw makeError(); + } + openSync() { + throw makeError(); + } + async opendirPromise() { + throw makeError(); + } + opendirSync() { + throw makeError(); + } + async readPromise() { + throw makeError(); + } + readSync() { + throw makeError(); + } + async writePromise() { + throw makeError(); + } + writeSync() { + throw makeError(); + } + async closePromise() { + throw makeError(); + } + closeSync() { + throw makeError(); + } + createWriteStream() { + throw makeError(); + } + createReadStream() { + throw makeError(); + } + async realpathPromise() { + throw makeError(); + } + realpathSync() { + throw makeError(); + } + async readdirPromise() { + throw makeError(); + } + readdirSync() { + throw makeError(); + } + async existsPromise(p) { + throw makeError(); + } + existsSync(p) { + throw makeError(); + } + async accessPromise() { + throw makeError(); + } + accessSync() { + throw makeError(); + } + async statPromise() { + throw makeError(); + } + statSync() { + throw makeError(); + } + async fstatPromise(fd) { + throw makeError(); + } + fstatSync(fd) { + throw makeError(); + } + async lstatPromise(p) { + throw makeError(); + } + lstatSync(p) { + throw makeError(); + } + async fchmodPromise() { + throw makeError(); + } + fchmodSync() { + throw makeError(); + } + async chmodPromise() { + throw makeError(); + } + chmodSync() { + throw makeError(); + } + async fchownPromise() { + throw makeError(); + } + fchownSync() { + throw makeError(); + } + async chownPromise() { + throw makeError(); + } + chownSync() { + throw makeError(); + } + async mkdirPromise() { + throw makeError(); + } + mkdirSync() { + throw makeError(); + } + async rmdirPromise() { + throw makeError(); + } + rmdirSync() { + throw makeError(); + } + async linkPromise() { + throw makeError(); + } + linkSync() { + throw makeError(); + } + async symlinkPromise() { + throw makeError(); + } + symlinkSync() { + throw makeError(); + } + async renamePromise() { + throw makeError(); + } + renameSync() { + throw makeError(); + } + async copyFilePromise() { + throw makeError(); + } + copyFileSync() { + throw makeError(); + } + async appendFilePromise() { + throw makeError(); + } + appendFileSync() { + throw makeError(); + } + async writeFilePromise() { + throw makeError(); + } + writeFileSync() { + throw makeError(); + } + async unlinkPromise() { + throw makeError(); + } + unlinkSync() { + throw makeError(); + } + async utimesPromise() { + throw makeError(); + } + utimesSync() { + throw makeError(); + } + async lutimesPromise() { + throw makeError(); + } + lutimesSync() { + throw makeError(); + } + async readFilePromise() { + throw makeError(); + } + readFileSync() { + throw makeError(); + } + async readlinkPromise() { + throw makeError(); + } + readlinkSync() { + throw makeError(); + } + async truncatePromise() { + throw makeError(); + } + truncateSync() { + throw makeError(); + } + async ftruncatePromise(fd, len) { + throw makeError(); + } + ftruncateSync(fd, len) { + throw makeError(); + } + watch() { + throw makeError(); + } + watchFile() { + throw makeError(); + } + unwatchFile() { + throw makeError(); + } + }; + exports2.NoFS = NoFS; + NoFS.instance = new NoFS(); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/PosixFS.js +var require_PosixFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/PosixFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PosixFS = void 0; + var ProxiedFS_1 = require_ProxiedFS(); + var path_1 = require_path3(); + var PosixFS = class extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; + } + mapFromBase(path2) { + return path_1.npath.fromPortablePath(path2); + } + mapToBase(path2) { + return path_1.npath.toPortablePath(path2); + } + }; + exports2.PosixFS = PosixFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/VirtualFS.js +var require_VirtualFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/VirtualFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualFS = void 0; + var NodeFS_1 = require_NodeFS(); + var ProxiedFS_1 = require_ProxiedFS(); + var path_1 = require_path3(); + var NUMBER_REGEXP = /^[0-9]+$/; + var VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; + var VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; + var VirtualFS = class extends ProxiedFS_1.ProxiedFS { + static makeVirtualPath(base, component, to) { + if (path_1.ppath.basename(base) !== `__virtual__`) + throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); + if (!path_1.ppath.basename(component).match(VALID_COMPONENT)) + throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); + const target = path_1.ppath.relative(path_1.ppath.dirname(base), to); + const segments = target.split(`/`); + let depth = 0; + while (depth < segments.length && segments[depth] === `..`) + depth += 1; + const finalSegments = segments.slice(depth); + const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments); + return fullVirtualPath; + } + static resolveVirtual(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match || !match[3] && match[5]) + return p; + const target = path_1.ppath.dirname(match[1]); + if (!match[3] || !match[4]) + return target; + const isnum = NUMBER_REGEXP.test(match[4]); + if (!isnum) + return p; + const depth = Number(match[4]); + const backstep = `../`.repeat(depth); + const subpath = match[5] || `.`; + return VirtualFS.resolveVirtual(path_1.ppath.join(target, backstep, subpath)); + } + constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.baseFs = baseFs; + } + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + realpathSync(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return this.baseFs.realpathSync(p); + if (!match[5]) + return p; + const realpath = this.baseFs.realpathSync(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + async realpathPromise(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return await this.baseFs.realpathPromise(p); + if (!match[5]) + return p; + const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + mapToBase(p) { + if (p === ``) + return p; + if (this.pathUtils.isAbsolute(p)) + return VirtualFS.resolveVirtual(p); + const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot)); + const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); + return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot; } - return c2; - } - function syntaxError(message2) { - const err = new SyntaxError(message2); - err.lineNumber = line; - err.columnNumber = column; - return err; - } + mapFromBase(p) { + return p; + } + }; + exports2.VirtualFS = VirtualFS; } }); -// ../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/stringify.js -var require_stringify2 = __commonJS({ - "../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/stringify.js"(exports2, module2) { - var util = require_util4(); - module2.exports = function stringify(value, replacer, space) { - const stack2 = []; - let indent = ""; - let propertyList; - let replacerFunc; - let gap = ""; - let quote; - if (replacer != null && typeof replacer === "object" && !Array.isArray(replacer)) { - space = replacer.space; - quote = replacer.quote; - replacer = replacer.replacer; +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NodePathFS.js +var require_NodePathFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/NodePathFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodePathFS = void 0; + var url_1 = require("url"); + var util_1 = require("util"); + var ProxiedFS_1 = require_ProxiedFS(); + var path_1 = require_path3(); + var NodePathFS = class extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; } - if (typeof replacer === "function") { - replacerFunc = replacer; - } else if (Array.isArray(replacer)) { - propertyList = []; - for (const v of replacer) { - let item; - if (typeof v === "string") { - item = v; - } else if (typeof v === "number" || v instanceof String || v instanceof Number) { - item = String(v); - } - if (item !== void 0 && propertyList.indexOf(item) < 0) { - propertyList.push(item); - } + mapFromBase(path2) { + return path2; + } + mapToBase(path2) { + if (typeof path2 === `string`) + return path2; + if (path2 instanceof url_1.URL) + return (0, url_1.fileURLToPath)(path2); + if (Buffer.isBuffer(path2)) { + const str = path2.toString(); + if (Buffer.byteLength(str) !== path2.byteLength) + throw new Error(`Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942`); + return str; } + throw new Error(`Unsupported path type: ${(0, util_1.inspect)(path2)}`); } - if (space instanceof Number) { - space = Number(space); - } else if (space instanceof String) { - space = String(space); + }; + exports2.NodePathFS = NodePathFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js +var require_FileHandle = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js"(exports2) { + "use strict"; + var _a; + var _b; + var _c; + var _d; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.FileHandle = void 0; + var kBaseFs = Symbol(`kBaseFs`); + var kFd = Symbol(`kFd`); + var kClosePromise = Symbol(`kClosePromise`); + var kCloseResolve = Symbol(`kCloseResolve`); + var kCloseReject = Symbol(`kCloseReject`); + var kRefs = Symbol(`kRefs`); + var kRef = Symbol(`kRef`); + var kUnref = Symbol(`kUnref`); + var FileHandle = class { + constructor(fd, baseFs) { + this[_a] = 1; + this[_b] = void 0; + this[_c] = void 0; + this[_d] = void 0; + this[kBaseFs] = baseFs; + this[kFd] = fd; } - if (typeof space === "number") { - if (space > 0) { - space = Math.min(10, Math.floor(space)); - gap = " ".substr(0, space); + get fd() { + return this[kFd]; + } + async appendFile(data, options) { + var _e; + try { + this[kRef](this.appendFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + return await this[kBaseFs].appendFilePromise(this.fd, data, encoding ? { encoding } : void 0); + } finally { + this[kUnref](); } - } else if (typeof space === "string") { - gap = space.substr(0, 10); } - return serializeProperty("", { "": value }); - function serializeProperty(key, holder) { - let value2 = holder[key]; - if (value2 != null) { - if (typeof value2.toJSON5 === "function") { - value2 = value2.toJSON5(key); - } else if (typeof value2.toJSON === "function") { - value2 = value2.toJSON(key); - } + async chown(uid, gid) { + try { + this[kRef](this.chown); + return await this[kBaseFs].fchownPromise(this.fd, uid, gid); + } finally { + this[kUnref](); } - if (replacerFunc) { - value2 = replacerFunc.call(holder, key, value2); + } + async chmod(mode) { + try { + this[kRef](this.chmod); + return await this[kBaseFs].fchmodPromise(this.fd, mode); + } finally { + this[kUnref](); } - if (value2 instanceof Number) { - value2 = Number(value2); - } else if (value2 instanceof String) { - value2 = String(value2); - } else if (value2 instanceof Boolean) { - value2 = value2.valueOf(); + } + createReadStream(options) { + return this[kBaseFs].createReadStream(null, { ...options, fd: this.fd }); + } + createWriteStream(options) { + return this[kBaseFs].createWriteStream(null, { ...options, fd: this.fd }); + } + // FIXME: Missing FakeFS version + datasync() { + throw new Error(`Method not implemented.`); + } + // FIXME: Missing FakeFS version + sync() { + throw new Error(`Method not implemented.`); + } + async read(bufferOrOptions, offset, length, position) { + var _e, _f, _g; + try { + this[kRef](this.read); + let buffer; + if (!Buffer.isBuffer(bufferOrOptions)) { + bufferOrOptions !== null && bufferOrOptions !== void 0 ? bufferOrOptions : bufferOrOptions = {}; + buffer = (_e = bufferOrOptions.buffer) !== null && _e !== void 0 ? _e : Buffer.alloc(16384); + offset = bufferOrOptions.offset || 0; + length = (_f = bufferOrOptions.length) !== null && _f !== void 0 ? _f : buffer.byteLength; + position = (_g = bufferOrOptions.position) !== null && _g !== void 0 ? _g : null; + } else { + buffer = bufferOrOptions; + } + offset !== null && offset !== void 0 ? offset : offset = 0; + length !== null && length !== void 0 ? length : length = 0; + if (length === 0) { + return { + bytesRead: length, + buffer + }; + } + const bytesRead = await this[kBaseFs].readPromise(this.fd, buffer, offset, length, position); + return { + bytesRead, + buffer + }; + } finally { + this[kUnref](); } - switch (value2) { - case null: - return "null"; - case true: - return "true"; - case false: - return "false"; + } + async readFile(options) { + var _e; + try { + this[kRef](this.readFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + return await this[kBaseFs].readFilePromise(this.fd, encoding); + } finally { + this[kUnref](); } - if (typeof value2 === "string") { - return quoteString(value2, false); + } + async stat(opts) { + try { + this[kRef](this.stat); + return await this[kBaseFs].fstatPromise(this.fd, opts); + } finally { + this[kUnref](); } - if (typeof value2 === "number") { - return String(value2); + } + async truncate(len) { + try { + this[kRef](this.truncate); + return await this[kBaseFs].ftruncatePromise(this.fd, len); + } finally { + this[kUnref](); } - if (typeof value2 === "object") { - return Array.isArray(value2) ? serializeArray(value2) : serializeObject(value2); + } + // FIXME: Missing FakeFS version + utimes(atime, mtime) { + throw new Error(`Method not implemented.`); + } + async writeFile(data, options) { + var _e; + try { + this[kRef](this.writeFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + await this[kBaseFs].writeFilePromise(this.fd, data, encoding); + } finally { + this[kUnref](); } - return void 0; } - function quoteString(value2) { - const quotes = { - "'": 0.1, - '"': 0.2 - }; - const replacements = { - "'": "\\'", - '"': '\\"', - "\\": "\\\\", - "\b": "\\b", - "\f": "\\f", - "\n": "\\n", - "\r": "\\r", - " ": "\\t", - "\v": "\\v", - "\0": "\\0", - "\u2028": "\\u2028", - "\u2029": "\\u2029" - }; - let product = ""; - for (let i = 0; i < value2.length; i++) { - const c = value2[i]; - switch (c) { - case "'": - case '"': - quotes[c]++; - product += c; - continue; - case "\0": - if (util.isDigit(value2[i + 1])) { - product += "\\x00"; - continue; - } - } - if (replacements[c]) { - product += replacements[c]; - continue; - } - if (c < " ") { - let hexString = c.charCodeAt(0).toString(16); - product += "\\x" + ("00" + hexString).substring(hexString.length); - continue; + async write(...args2) { + try { + this[kRef](this.write); + if (ArrayBuffer.isView(args2[0])) { + const [buffer, offset, length, position] = args2; + const bytesWritten = await this[kBaseFs].writePromise(this.fd, buffer, offset !== null && offset !== void 0 ? offset : void 0, length !== null && length !== void 0 ? length : void 0, position !== null && position !== void 0 ? position : void 0); + return { bytesWritten, buffer }; + } else { + const [data, position, encoding] = args2; + const bytesWritten = await this[kBaseFs].writePromise(this.fd, data, position, encoding); + return { bytesWritten, buffer: data }; } - product += c; + } finally { + this[kUnref](); } - const quoteChar = quote || Object.keys(quotes).reduce((a, b) => quotes[a] < quotes[b] ? a : b); - product = product.replace(new RegExp(quoteChar, "g"), replacements[quoteChar]); - return quoteChar + product + quoteChar; } - function serializeObject(value2) { - if (stack2.indexOf(value2) >= 0) { - throw TypeError("Converting circular structure to JSON5"); - } - stack2.push(value2); - let stepback = indent; - indent = indent + gap; - let keys = propertyList || Object.keys(value2); - let partial = []; - for (const key of keys) { - const propertyString = serializeProperty(key, value2); - if (propertyString !== void 0) { - let member = serializeKey(key) + ":"; - if (gap !== "") { - member += " "; + // TODO: Use writev from FakeFS when that is implemented + async writev(buffers, position) { + try { + this[kRef](this.writev); + let bytesWritten = 0; + if (typeof position !== `undefined`) { + for (const buffer of buffers) { + const writeResult = await this.write(buffer, void 0, void 0, position); + bytesWritten += writeResult.bytesWritten; + position += writeResult.bytesWritten; } - member += propertyString; - partial.push(member); - } - } - let final; - if (partial.length === 0) { - final = "{}"; - } else { - let properties; - if (gap === "") { - properties = partial.join(","); - final = "{" + properties + "}"; } else { - let separator = ",\n" + indent; - properties = partial.join(separator); - final = "{\n" + indent + properties + ",\n" + stepback + "}"; + for (const buffer of buffers) { + const writeResult = await this.write(buffer); + bytesWritten += writeResult.bytesWritten; + } } + return { + buffers, + bytesWritten + }; + } finally { + this[kUnref](); } - stack2.pop(); - indent = stepback; - return final; } - function serializeKey(key) { - if (key.length === 0) { - return quoteString(key, true); - } - const firstChar = String.fromCodePoint(key.codePointAt(0)); - if (!util.isIdStartChar(firstChar)) { - return quoteString(key, true); - } - for (let i = firstChar.length; i < key.length; i++) { - if (!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))) { - return quoteString(key, true); - } - } - return key; + // FIXME: Missing FakeFS version + readv(buffers, position) { + throw new Error(`Method not implemented.`); } - function serializeArray(value2) { - if (stack2.indexOf(value2) >= 0) { - throw TypeError("Converting circular structure to JSON5"); + close() { + if (this[kFd] === -1) + return Promise.resolve(); + if (this[kClosePromise]) + return this[kClosePromise]; + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kClosePromise] = this[kBaseFs].closePromise(fd).finally(() => { + this[kClosePromise] = void 0; + }); + } else { + this[kClosePromise] = new Promise((resolve, reject) => { + this[kCloseResolve] = resolve; + this[kCloseReject] = reject; + }).finally(() => { + this[kClosePromise] = void 0; + this[kCloseReject] = void 0; + this[kCloseResolve] = void 0; + }); } - stack2.push(value2); - let stepback = indent; - indent = indent + gap; - let partial = []; - for (let i = 0; i < value2.length; i++) { - const propertyString = serializeProperty(String(i), value2); - partial.push(propertyString !== void 0 ? propertyString : "null"); + return this[kClosePromise]; + } + [(_a = kRefs, _b = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) { + if (this[kFd] === -1) { + const err = new Error(`file closed`); + err.code = `EBADF`; + err.syscall = caller.name; + throw err; } - let final; - if (partial.length === 0) { - final = "[]"; - } else { - if (gap === "") { - let properties = partial.join(","); - final = "[" + properties + "]"; - } else { - let separator = ",\n" + indent; - let properties = partial.join(separator); - final = "[\n" + indent + properties + ",\n" + stepback + "]"; - } + this[kRefs]++; + } + [kUnref]() { + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kBaseFs].closePromise(fd).then(this[kCloseResolve], this[kCloseReject]); } - stack2.pop(); - indent = stepback; - return final; } }; + exports2.FileHandle = FileHandle; } }); -// ../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/index.js -var require_lib16 = __commonJS({ - "../../node_modules/.pnpm/json5@2.2.0/node_modules/json5/lib/index.js"(exports2, module2) { - var parse = require_parse2(); - var stringify = require_stringify2(); - var JSON5 = { - parse, - stringify - }; - module2.exports = JSON5; - } -}); - -// ../../node_modules/.pnpm/imurmurhash@0.1.4/node_modules/imurmurhash/imurmurhash.js -var require_imurmurhash = __commonJS({ - "../../node_modules/.pnpm/imurmurhash@0.1.4/node_modules/imurmurhash/imurmurhash.js"(exports2, module2) { - (function() { - var cache; - function MurmurHash3(key, seed) { - var m = this instanceof MurmurHash3 ? this : cache; - m.reset(seed); - if (typeof key === "string" && key.length > 0) { - m.hash(key); - } - if (m !== this) { - return m; - } - } - ; - MurmurHash3.prototype.hash = function(key) { - var h1, k1, i, top, len; - len = key.length; - this.len += len; - k1 = this.k1; - i = 0; - switch (this.rem) { - case 0: - k1 ^= len > i ? key.charCodeAt(i++) & 65535 : 0; - case 1: - k1 ^= len > i ? (key.charCodeAt(i++) & 65535) << 8 : 0; - case 2: - k1 ^= len > i ? (key.charCodeAt(i++) & 65535) << 16 : 0; - case 3: - k1 ^= len > i ? (key.charCodeAt(i) & 255) << 24 : 0; - k1 ^= len > i ? (key.charCodeAt(i++) & 65280) >> 8 : 0; +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js +var require_patchFs = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extendFs = exports2.patchFs = void 0; + var util_1 = require("util"); + var NodePathFS_1 = require_NodePathFS(); + var FileHandle_1 = require_FileHandle(); + var SYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([ + `accessSync`, + `appendFileSync`, + `createReadStream`, + `createWriteStream`, + `chmodSync`, + `fchmodSync`, + `chownSync`, + `fchownSync`, + `closeSync`, + `copyFileSync`, + `linkSync`, + `lstatSync`, + `fstatSync`, + `lutimesSync`, + `mkdirSync`, + `openSync`, + `opendirSync`, + `readlinkSync`, + `readFileSync`, + `readdirSync`, + `readlinkSync`, + `realpathSync`, + `renameSync`, + `rmdirSync`, + `statSync`, + `symlinkSync`, + `truncateSync`, + `ftruncateSync`, + `unlinkSync`, + `unwatchFile`, + `utimesSync`, + `watch`, + `watchFile`, + `writeFileSync`, + `writeSync` + ]); + var ASYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([ + `accessPromise`, + `appendFilePromise`, + `fchmodPromise`, + `chmodPromise`, + `fchownPromise`, + `chownPromise`, + `closePromise`, + `copyFilePromise`, + `linkPromise`, + `fstatPromise`, + `lstatPromise`, + `lutimesPromise`, + `mkdirPromise`, + `openPromise`, + `opendirPromise`, + `readdirPromise`, + `realpathPromise`, + `readFilePromise`, + `readdirPromise`, + `readlinkPromise`, + `renamePromise`, + `rmdirPromise`, + `statPromise`, + `symlinkPromise`, + `truncatePromise`, + `ftruncatePromise`, + `unlinkPromise`, + `utimesPromise`, + `writeFilePromise`, + `writeSync` + ]); + function patchFs(patchedFs, fakeFs) { + fakeFs = new NodePathFS_1.NodePathFS(fakeFs); + const setupFn = (target, name, replacement) => { + const orig = target[name]; + target[name] = replacement; + if (typeof (orig === null || orig === void 0 ? void 0 : orig[util_1.promisify.custom]) !== `undefined`) { + replacement[util_1.promisify.custom] = orig[util_1.promisify.custom]; } - this.rem = len + this.rem & 3; - len -= this.rem; - if (len > 0) { - h1 = this.h1; - while (1) { - k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295; - k1 = k1 << 15 | k1 >>> 17; - k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295; - h1 ^= k1; - h1 = h1 << 13 | h1 >>> 19; - h1 = h1 * 5 + 3864292196 & 4294967295; - if (i >= len) { - break; + }; + { + setupFn(patchedFs, `exists`, (p, ...args2) => { + const hasCallback = typeof args2[args2.length - 1] === `function`; + const callback = hasCallback ? args2.pop() : () => { + }; + process.nextTick(() => { + fakeFs.existsPromise(p).then((exists) => { + callback(exists); + }, () => { + callback(false); + }); + }); + }); + setupFn(patchedFs, `read`, (...args2) => { + let [fd, buffer, offset, length, position, callback] = args2; + if (args2.length <= 3) { + let options = {}; + if (args2.length < 3) { + callback = args2[1]; + } else { + options = args2[1]; + callback = args2[2]; } - k1 = key.charCodeAt(i++) & 65535 ^ (key.charCodeAt(i++) & 65535) << 8 ^ (key.charCodeAt(i++) & 65535) << 16; - top = key.charCodeAt(i++); - k1 ^= (top & 255) << 24 ^ (top & 65280) >> 8; + ({ + buffer = Buffer.alloc(16384), + offset = 0, + length = buffer.byteLength, + position + } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) { + process.nextTick(() => { + callback(null, 0, buffer); + }); + return; } - k1 = 0; - switch (this.rem) { - case 3: - k1 ^= (key.charCodeAt(i + 2) & 65535) << 16; - case 2: - k1 ^= (key.charCodeAt(i + 1) & 65535) << 8; - case 1: - k1 ^= key.charCodeAt(i) & 65535; + if (position == null) + position = -1; + process.nextTick(() => { + fakeFs.readPromise(fd, buffer, offset, length, position).then((bytesRead) => { + callback(null, bytesRead, buffer); + }, (error) => { + callback(error, 0, buffer); + }); + }); + }); + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFs[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + const wrapper = (...args2) => { + const hasCallback = typeof args2[args2.length - 1] === `function`; + const callback = hasCallback ? args2.pop() : () => { + }; + process.nextTick(() => { + fakeImpl.apply(fakeFs, args2).then((result2) => { + callback(null, result2); + }, (error) => { + callback(error); + }); + }); + }; + setupFn(patchedFs, origName, wrapper); + } + patchedFs.realpath.native = patchedFs.realpath; + } + { + setupFn(patchedFs, `existsSync`, (p) => { + try { + return fakeFs.existsSync(p); + } catch (error) { + return false; } - this.h1 = h1; + }); + setupFn(patchedFs, `readSync`, (...args2) => { + let [fd, buffer, offset, length, position] = args2; + if (args2.length <= 3) { + const options = args2[2] || {}; + ({ offset = 0, length = buffer.byteLength, position } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) + return 0; + if (position == null) + position = -1; + return fakeFs.readSync(fd, buffer, offset, length, position); + }); + for (const fnName of SYNC_IMPLEMENTATIONS) { + const origName = fnName; + if (typeof patchedFs[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + setupFn(patchedFs, origName, fakeImpl.bind(fakeFs)); } - this.k1 = k1; - return this; - }; - MurmurHash3.prototype.result = function() { - var k1, h1; - k1 = this.k1; - h1 = this.h1; - if (k1 > 0) { - k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295; - k1 = k1 << 15 | k1 >>> 17; - k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295; - h1 ^= k1; + patchedFs.realpathSync.native = patchedFs.realpathSync; + } + { + const patchedFsPromises = patchedFs.promises; + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFsPromises[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + if (fnName === `open`) + continue; + setupFn(patchedFsPromises, origName, (pathLike, ...args2) => { + if (pathLike instanceof FileHandle_1.FileHandle) { + return pathLike[origName].apply(pathLike, args2); + } else { + return fakeImpl.call(fakeFs, pathLike, ...args2); + } + }); } - h1 ^= this.len; - h1 ^= h1 >>> 16; - h1 = h1 * 51819 + (h1 & 65535) * 2246770688 & 4294967295; - h1 ^= h1 >>> 13; - h1 = h1 * 44597 + (h1 & 65535) * 3266445312 & 4294967295; - h1 ^= h1 >>> 16; - return h1 >>> 0; - }; - MurmurHash3.prototype.reset = function(seed) { - this.h1 = typeof seed === "number" ? seed : 0; - this.rem = this.k1 = this.len = 0; - return this; - }; - cache = new MurmurHash3(); - if (typeof module2 != "undefined") { - module2.exports = MurmurHash3; - } else { - this.MurmurHash3 = MurmurHash3; + setupFn(patchedFsPromises, `open`, async (...args2) => { + const fd = await fakeFs.openPromise(...args2); + return new FileHandle_1.FileHandle(fd, fakeFs); + }); } - })(); + { + patchedFs.read[util_1.promisify.custom] = async (fd, buffer, ...args2) => { + const res = fakeFs.readPromise(fd, buffer, ...args2); + return { bytesRead: await res, buffer }; + }; + patchedFs.write[util_1.promisify.custom] = async (fd, buffer, ...args2) => { + const res = fakeFs.writePromise(fd, buffer, ...args2); + return { bytesWritten: await res, buffer }; + }; + } + } + exports2.patchFs = patchFs; + function extendFs(realFs, fakeFs) { + const patchedFs = Object.create(realFs); + patchFs(patchedFs, fakeFs); + return patchedFs; + } + exports2.extendFs = extendFs; } }); -// ../../node_modules/.pnpm/is-typedarray@1.0.0/node_modules/is-typedarray/index.js -var require_is_typedarray = __commonJS({ - "../../node_modules/.pnpm/is-typedarray@1.0.0/node_modules/is-typedarray/index.js"(exports2, module2) { - module2.exports = isTypedArray; - isTypedArray.strict = isStrictTypedArray; - isTypedArray.loose = isLooseTypedArray; - var toString = Object.prototype.toString; - var names = { - "[object Int8Array]": true, - "[object Int16Array]": true, - "[object Int32Array]": true, - "[object Uint8Array]": true, - "[object Uint8ClampedArray]": true, - "[object Uint16Array]": true, - "[object Uint32Array]": true, - "[object Float32Array]": true, - "[object Float64Array]": true - }; - function isTypedArray(arr) { - return isStrictTypedArray(arr) || isLooseTypedArray(arr); - } - function isStrictTypedArray(arr) { - return arr instanceof Int8Array || arr instanceof Int16Array || arr instanceof Int32Array || arr instanceof Uint8Array || arr instanceof Uint8ClampedArray || arr instanceof Uint16Array || arr instanceof Uint32Array || arr instanceof Float32Array || arr instanceof Float64Array; +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/xfs.js +var require_xfs = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/xfs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.xfs = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var os_1 = tslib_12.__importDefault(require("os")); + var NodeFS_1 = require_NodeFS(); + var path_1 = require_path3(); + function getTempName(prefix) { + const hash = Math.ceil(Math.random() * 4294967296).toString(16).padStart(8, `0`); + return `${prefix}${hash}`; } - function isLooseTypedArray(arr) { - return names[toString.call(arr)]; + var tmpdirs = /* @__PURE__ */ new Set(); + var tmpEnv = null; + function initTmpEnv() { + if (tmpEnv) + return tmpEnv; + const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir()); + const realTmpdir = exports2.xfs.realpathSync(tmpdir); + process.once(`exit`, () => { + exports2.xfs.rmtempSync(); + }); + return tmpEnv = { + tmpdir, + realTmpdir + }; } + exports2.xfs = Object.assign(new NodeFS_1.NodeFS(), { + detachTemp(p) { + tmpdirs.delete(p); + }, + mktempSync(cb) { + const { tmpdir, realTmpdir } = initTmpEnv(); + while (true) { + const name = getTempName(`xfs-`); + try { + this.mkdirSync(path_1.ppath.join(tmpdir, name)); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + const realP = path_1.ppath.join(realTmpdir, name); + tmpdirs.add(realP); + if (typeof cb === `undefined`) + return realP; + try { + return cb(realP); + } finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + this.removeSync(realP); + } catch { + } + } + } + } + }, + async mktempPromise(cb) { + const { tmpdir, realTmpdir } = initTmpEnv(); + while (true) { + const name = getTempName(`xfs-`); + try { + await this.mkdirPromise(path_1.ppath.join(tmpdir, name)); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + const realP = path_1.ppath.join(realTmpdir, name); + tmpdirs.add(realP); + if (typeof cb === `undefined`) + return realP; + try { + return await cb(realP); + } finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + await this.removePromise(realP); + } catch { + } + } + } + } + }, + async rmtempPromise() { + await Promise.all(Array.from(tmpdirs.values()).map(async (p) => { + try { + await exports2.xfs.removePromise(p, { maxRetries: 0 }); + tmpdirs.delete(p); + } catch { + } + })); + }, + rmtempSync() { + for (const p of tmpdirs) { + try { + exports2.xfs.removeSync(p); + tmpdirs.delete(p); + } catch { + } + } + } + }); } }); -// ../../node_modules/.pnpm/typedarray-to-buffer@3.1.5/node_modules/typedarray-to-buffer/index.js -var require_typedarray_to_buffer = __commonJS({ - "../../node_modules/.pnpm/typedarray-to-buffer@3.1.5/node_modules/typedarray-to-buffer/index.js"(exports2, module2) { - var isTypedArray = require_is_typedarray().strict; - module2.exports = function typedarrayToBuffer(arr) { - if (isTypedArray(arr)) { - var buf = Buffer.from(arr.buffer); - if (arr.byteLength !== arr.buffer.byteLength) { - buf = buf.slice(arr.byteOffset, arr.byteOffset + arr.byteLength); - } - return buf; - } else { - return Buffer.from(arr); - } - }; +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/index.js +var require_lib50 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.25/node_modules/@yarnpkg/fslib/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.xfs = exports2.extendFs = exports2.patchFs = exports2.VirtualFS = exports2.ProxiedFS = exports2.PosixFS = exports2.NodeFS = exports2.NoFS = exports2.MountFS = exports2.LazyFS = exports2.JailFS = exports2.CwdFS = exports2.BasePortableFakeFS = exports2.FakeFS = exports2.AliasFS = exports2.toFilename = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = exports2.normalizeLineEndings = exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = exports2.opendir = exports2.setupCopyIndex = exports2.statUtils = exports2.errors = exports2.constants = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var constants = tslib_12.__importStar(require_constants9()); + exports2.constants = constants; + var errors = tslib_12.__importStar(require_errors2()); + exports2.errors = errors; + var statUtils = tslib_12.__importStar(require_statUtils()); + exports2.statUtils = statUtils; + var copyPromise_1 = require_copyPromise(); + Object.defineProperty(exports2, "setupCopyIndex", { enumerable: true, get: function() { + return copyPromise_1.setupCopyIndex; + } }); + var opendir_1 = require_opendir(); + Object.defineProperty(exports2, "opendir", { enumerable: true, get: function() { + return opendir_1.opendir; + } }); + var watchFile_1 = require_watchFile(); + Object.defineProperty(exports2, "watchFile", { enumerable: true, get: function() { + return watchFile_1.watchFile; + } }); + Object.defineProperty(exports2, "unwatchFile", { enumerable: true, get: function() { + return watchFile_1.unwatchFile; + } }); + Object.defineProperty(exports2, "unwatchAllFiles", { enumerable: true, get: function() { + return watchFile_1.unwatchAllFiles; + } }); + var FakeFS_1 = require_FakeFS(); + Object.defineProperty(exports2, "normalizeLineEndings", { enumerable: true, get: function() { + return FakeFS_1.normalizeLineEndings; + } }); + var path_1 = require_path3(); + Object.defineProperty(exports2, "PortablePath", { enumerable: true, get: function() { + return path_1.PortablePath; + } }); + Object.defineProperty(exports2, "Filename", { enumerable: true, get: function() { + return path_1.Filename; + } }); + var path_2 = require_path3(); + Object.defineProperty(exports2, "npath", { enumerable: true, get: function() { + return path_2.npath; + } }); + Object.defineProperty(exports2, "ppath", { enumerable: true, get: function() { + return path_2.ppath; + } }); + Object.defineProperty(exports2, "toFilename", { enumerable: true, get: function() { + return path_2.toFilename; + } }); + var AliasFS_1 = require_AliasFS(); + Object.defineProperty(exports2, "AliasFS", { enumerable: true, get: function() { + return AliasFS_1.AliasFS; + } }); + var FakeFS_2 = require_FakeFS(); + Object.defineProperty(exports2, "FakeFS", { enumerable: true, get: function() { + return FakeFS_2.FakeFS; + } }); + Object.defineProperty(exports2, "BasePortableFakeFS", { enumerable: true, get: function() { + return FakeFS_2.BasePortableFakeFS; + } }); + var CwdFS_1 = require_CwdFS(); + Object.defineProperty(exports2, "CwdFS", { enumerable: true, get: function() { + return CwdFS_1.CwdFS; + } }); + var JailFS_1 = require_JailFS(); + Object.defineProperty(exports2, "JailFS", { enumerable: true, get: function() { + return JailFS_1.JailFS; + } }); + var LazyFS_1 = require_LazyFS(); + Object.defineProperty(exports2, "LazyFS", { enumerable: true, get: function() { + return LazyFS_1.LazyFS; + } }); + var MountFS_1 = require_MountFS(); + Object.defineProperty(exports2, "MountFS", { enumerable: true, get: function() { + return MountFS_1.MountFS; + } }); + var NoFS_1 = require_NoFS(); + Object.defineProperty(exports2, "NoFS", { enumerable: true, get: function() { + return NoFS_1.NoFS; + } }); + var NodeFS_1 = require_NodeFS(); + Object.defineProperty(exports2, "NodeFS", { enumerable: true, get: function() { + return NodeFS_1.NodeFS; + } }); + var PosixFS_1 = require_PosixFS(); + Object.defineProperty(exports2, "PosixFS", { enumerable: true, get: function() { + return PosixFS_1.PosixFS; + } }); + var ProxiedFS_1 = require_ProxiedFS(); + Object.defineProperty(exports2, "ProxiedFS", { enumerable: true, get: function() { + return ProxiedFS_1.ProxiedFS; + } }); + var VirtualFS_1 = require_VirtualFS(); + Object.defineProperty(exports2, "VirtualFS", { enumerable: true, get: function() { + return VirtualFS_1.VirtualFS; + } }); + var patchFs_1 = require_patchFs(); + Object.defineProperty(exports2, "patchFs", { enumerable: true, get: function() { + return patchFs_1.patchFs; + } }); + Object.defineProperty(exports2, "extendFs", { enumerable: true, get: function() { + return patchFs_1.extendFs; + } }); + var xfs_1 = require_xfs(); + Object.defineProperty(exports2, "xfs", { enumerable: true, get: function() { + return xfs_1.xfs; + } }); } }); -// ../../node_modules/.pnpm/write-file-atomic@3.0.3/node_modules/write-file-atomic/index.js -var require_write_file_atomic = __commonJS({ - "../../node_modules/.pnpm/write-file-atomic@3.0.3/node_modules/write-file-atomic/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/shell.js +var require_shell = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/shell.js"(exports2, module2) { "use strict"; - module2.exports = writeFile; - module2.exports.sync = writeFileSync; - module2.exports._getTmpname = getTmpname; - module2.exports._cleanupOnExit = cleanupOnExit; - var fs = require("fs"); - var MurmurHash3 = require_imurmurhash(); - var onExit = require_signal_exit(); - var path = require("path"); - var isTypedArray = require_is_typedarray(); - var typedArrayToBuffer = require_typedarray_to_buffer(); - var { promisify } = require("util"); - var activeFiles = {}; - var threadId = function getId() { - try { - const workerThreads = require("worker_threads"); - return workerThreads.threadId; - } catch (e) { - return 0; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; } - }(); - var invocations = 0; - function getTmpname(filename) { - return filename + "." + MurmurHash3(__filename).hash(String(process.pid)).hash(String(threadId)).hash(String(++invocations)).result(); + ctor.prototype = parent.prototype; + child.prototype = new ctor(); } - function cleanupOnExit(tmpfile) { - return () => { - try { - fs.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile); - } catch (_) { + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); + } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; + } + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); + } + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; + } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(line) { + return line ? line : []; + }, peg$c1 = function(command, type, then) { + return [{ command, type }].concat(then || []); + }, peg$c2 = function(command, type) { + return [{ command, type: type || ";" }]; + }, peg$c3 = function(then) { + return then; + }, peg$c4 = ";", peg$c5 = peg$literalExpectation(";", false), peg$c6 = "&", peg$c7 = peg$literalExpectation("&", false), peg$c8 = function(chain, then) { + return then ? { chain, then } : { chain }; + }, peg$c9 = function(type, then) { + return { type, line: then }; + }, peg$c10 = "&&", peg$c11 = peg$literalExpectation("&&", false), peg$c12 = "||", peg$c13 = peg$literalExpectation("||", false), peg$c14 = function(main, then) { + return then ? { ...main, then } : main; + }, peg$c15 = function(type, then) { + return { type, chain: then }; + }, peg$c16 = "|&", peg$c17 = peg$literalExpectation("|&", false), peg$c18 = "|", peg$c19 = peg$literalExpectation("|", false), peg$c20 = "=", peg$c21 = peg$literalExpectation("=", false), peg$c22 = function(name, arg) { + return { name, args: [arg] }; + }, peg$c23 = function(name) { + return { name, args: [] }; + }, peg$c24 = "(", peg$c25 = peg$literalExpectation("(", false), peg$c26 = ")", peg$c27 = peg$literalExpectation(")", false), peg$c28 = function(subshell, args2) { + return { type: `subshell`, subshell, args: args2 }; + }, peg$c29 = "{", peg$c30 = peg$literalExpectation("{", false), peg$c31 = "}", peg$c32 = peg$literalExpectation("}", false), peg$c33 = function(group, args2) { + return { type: `group`, group, args: args2 }; + }, peg$c34 = function(envs, args2) { + return { type: `command`, args: args2, envs }; + }, peg$c35 = function(envs) { + return { type: `envs`, envs }; + }, peg$c36 = function(args2) { + return args2; + }, peg$c37 = function(arg) { + return arg; + }, peg$c38 = /^[0-9]/, peg$c39 = peg$classExpectation([["0", "9"]], false, false), peg$c40 = function(fd, redirect, arg) { + return { type: `redirection`, subtype: redirect, fd: fd !== null ? parseInt(fd) : null, args: [arg] }; + }, peg$c41 = ">>", peg$c42 = peg$literalExpectation(">>", false), peg$c43 = ">&", peg$c44 = peg$literalExpectation(">&", false), peg$c45 = ">", peg$c46 = peg$literalExpectation(">", false), peg$c47 = "<<<", peg$c48 = peg$literalExpectation("<<<", false), peg$c49 = "<&", peg$c50 = peg$literalExpectation("<&", false), peg$c51 = "<", peg$c52 = peg$literalExpectation("<", false), peg$c53 = function(segments) { + return { type: `argument`, segments: [].concat(...segments) }; + }, peg$c54 = function(string) { + return string; + }, peg$c55 = "$'", peg$c56 = peg$literalExpectation("$'", false), peg$c57 = "'", peg$c58 = peg$literalExpectation("'", false), peg$c59 = function(text2) { + return [{ type: `text`, text: text2 }]; + }, peg$c60 = '""', peg$c61 = peg$literalExpectation('""', false), peg$c62 = function() { + return { type: `text`, text: `` }; + }, peg$c63 = '"', peg$c64 = peg$literalExpectation('"', false), peg$c65 = function(segments) { + return segments; + }, peg$c66 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: true }; + }, peg$c67 = function(shell) { + return { type: `shell`, shell, quoted: true }; + }, peg$c68 = function(variable) { + return { type: `variable`, ...variable, quoted: true }; + }, peg$c69 = function(text2) { + return { type: `text`, text: text2 }; + }, peg$c70 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: false }; + }, peg$c71 = function(shell) { + return { type: `shell`, shell, quoted: false }; + }, peg$c72 = function(variable) { + return { type: `variable`, ...variable, quoted: false }; + }, peg$c73 = function(pattern) { + return { type: `glob`, pattern }; + }, peg$c74 = /^[^']/, peg$c75 = peg$classExpectation(["'"], true, false), peg$c76 = function(chars) { + return chars.join(``); + }, peg$c77 = /^[^$"]/, peg$c78 = peg$classExpectation(["$", '"'], true, false), peg$c79 = "\\\n", peg$c80 = peg$literalExpectation("\\\n", false), peg$c81 = function() { + return ``; + }, peg$c82 = "\\", peg$c83 = peg$literalExpectation("\\", false), peg$c84 = /^[\\$"`]/, peg$c85 = peg$classExpectation(["\\", "$", '"', "`"], false, false), peg$c86 = function(c) { + return c; + }, peg$c87 = "\\a", peg$c88 = peg$literalExpectation("\\a", false), peg$c89 = function() { + return "a"; + }, peg$c90 = "\\b", peg$c91 = peg$literalExpectation("\\b", false), peg$c92 = function() { + return "\b"; + }, peg$c93 = /^[Ee]/, peg$c94 = peg$classExpectation(["E", "e"], false, false), peg$c95 = function() { + return "\x1B"; + }, peg$c96 = "\\f", peg$c97 = peg$literalExpectation("\\f", false), peg$c98 = function() { + return "\f"; + }, peg$c99 = "\\n", peg$c100 = peg$literalExpectation("\\n", false), peg$c101 = function() { + return "\n"; + }, peg$c102 = "\\r", peg$c103 = peg$literalExpectation("\\r", false), peg$c104 = function() { + return "\r"; + }, peg$c105 = "\\t", peg$c106 = peg$literalExpectation("\\t", false), peg$c107 = function() { + return " "; + }, peg$c108 = "\\v", peg$c109 = peg$literalExpectation("\\v", false), peg$c110 = function() { + return "\v"; + }, peg$c111 = /^[\\'"?]/, peg$c112 = peg$classExpectation(["\\", "'", '"', "?"], false, false), peg$c113 = function(c) { + return String.fromCharCode(parseInt(c, 16)); + }, peg$c114 = "\\x", peg$c115 = peg$literalExpectation("\\x", false), peg$c116 = "\\u", peg$c117 = peg$literalExpectation("\\u", false), peg$c118 = "\\U", peg$c119 = peg$literalExpectation("\\U", false), peg$c120 = function(c) { + return String.fromCodePoint(parseInt(c, 16)); + }, peg$c121 = /^[0-7]/, peg$c122 = peg$classExpectation([["0", "7"]], false, false), peg$c123 = /^[0-9a-fA-f]/, peg$c124 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "f"]], false, false), peg$c125 = peg$anyExpectation(), peg$c126 = "-", peg$c127 = peg$literalExpectation("-", false), peg$c128 = "+", peg$c129 = peg$literalExpectation("+", false), peg$c130 = ".", peg$c131 = peg$literalExpectation(".", false), peg$c132 = function(sign, left, right) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseFloat(left.join(``) + `.` + right.join(``)) }; + }, peg$c133 = function(sign, value) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseInt(value.join(``)) }; + }, peg$c134 = function(variable) { + return { type: `variable`, ...variable }; + }, peg$c135 = function(name) { + return { type: `variable`, name }; + }, peg$c136 = function(value) { + return value; + }, peg$c137 = "*", peg$c138 = peg$literalExpectation("*", false), peg$c139 = "/", peg$c140 = peg$literalExpectation("/", false), peg$c141 = function(left, op, right) { + return { type: op === `*` ? `multiplication` : `division`, right }; + }, peg$c142 = function(left, rest) { + return rest.reduce((left2, right) => ({ left: left2, ...right }), left); + }, peg$c143 = function(left, op, right) { + return { type: op === `+` ? `addition` : `subtraction`, right }; + }, peg$c144 = "$((", peg$c145 = peg$literalExpectation("$((", false), peg$c146 = "))", peg$c147 = peg$literalExpectation("))", false), peg$c148 = function(arithmetic) { + return arithmetic; + }, peg$c149 = "$(", peg$c150 = peg$literalExpectation("$(", false), peg$c151 = function(command) { + return command; + }, peg$c152 = "${", peg$c153 = peg$literalExpectation("${", false), peg$c154 = ":-", peg$c155 = peg$literalExpectation(":-", false), peg$c156 = function(name, arg) { + return { name, defaultValue: arg }; + }, peg$c157 = ":-}", peg$c158 = peg$literalExpectation(":-}", false), peg$c159 = function(name) { + return { name, defaultValue: [] }; + }, peg$c160 = ":+", peg$c161 = peg$literalExpectation(":+", false), peg$c162 = function(name, arg) { + return { name, alternativeValue: arg }; + }, peg$c163 = ":+}", peg$c164 = peg$literalExpectation(":+}", false), peg$c165 = function(name) { + return { name, alternativeValue: [] }; + }, peg$c166 = function(name) { + return { name }; + }, peg$c167 = "$", peg$c168 = peg$literalExpectation("$", false), peg$c169 = function(pattern) { + return options.isGlobPattern(pattern); + }, peg$c170 = function(pattern) { + return pattern; + }, peg$c171 = /^[a-zA-Z0-9_]/, peg$c172 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false), peg$c173 = function() { + return text(); + }, peg$c174 = /^[$@*?#a-zA-Z0-9_\-]/, peg$c175 = peg$classExpectation(["$", "@", "*", "?", "#", ["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c176 = /^[(){}<>$|&; \t"']/, peg$c177 = peg$classExpectation(["(", ")", "{", "}", "<", ">", "$", "|", "&", ";", " ", " ", '"', "'"], false, false), peg$c178 = /^[<>&; \t"']/, peg$c179 = peg$classExpectation(["<", ">", "&", ";", " ", " ", '"', "'"], false, false), peg$c180 = /^[ \t]/, peg$c181 = peg$classExpectation([" ", " "], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; + } + peg$posDetailsCache[pos] = details; + return details; + } + } + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } + }; + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; + } + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } + peg$maxFailExpected.push(expected2); + } + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); + } + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseStart() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseShellLine(); + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s1); + } + s0 = s1; + return s0; + } + function peg$parseShellLine() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLineThen(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c1(s1, s3, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - }; - } - function serializeActiveFile(absoluteName) { - return new Promise((resolve) => { - if (!activeFiles[absoluteName]) - activeFiles[absoluteName] = []; - activeFiles[absoluteName].push(resolve); - if (activeFiles[absoluteName].length === 1) - resolve(); - }); - } - function isChownErrOk(err) { - if (err.code === "ENOSYS") { - return true; + return s0; } - const nonroot = !process.getuid || process.getuid() !== 0; - if (nonroot) { - if (err.code === "EINVAL" || err.code === "EPERM") { - return true; + function peg$parseShellLineThen() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - } - return false; - } - async function writeFileAsync(filename, data, options = {}) { - if (typeof options === "string") { - options = { encoding: options }; - } - let fd; - let tmpfile; - const removeOnExitHandler = onExit(cleanupOnExit(() => tmpfile)); - const absoluteName = path.resolve(filename); - try { - await serializeActiveFile(absoluteName); - const truename = await promisify(fs.realpath)(filename).catch(() => filename); - tmpfile = getTmpname(truename); - if (!options.mode || !options.chown) { - const stats = await promisify(fs.stat)(truename).catch(() => { - }); - if (stats) { - if (options.mode == null) { - options.mode = stats.mode; + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); } - if (options.chown == null && process.getuid) { - options.chown = { uid: stats.uid, gid: stats.gid }; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - fd = await promisify(fs.open)(tmpfile, "w", options.mode); - if (options.tmpfileCreated) { - await options.tmpfileCreated(tmpfile); + return s0; + } + function peg$parseShellLineType() { + var s0; + if (input.charCodeAt(peg$currPos) === 59) { + s0 = peg$c4; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } } - if (isTypedArray(data)) { - data = typedArrayToBuffer(data); + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 38) { + s0 = peg$c6; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } } - if (Buffer.isBuffer(data)) { - await promisify(fs.write)(fd, data, 0, data.length, 0); - } else if (data != null) { - await promisify(fs.write)(fd, String(data), 0, String(options.encoding || "utf8")); + return s0; + } + function peg$parseCommandLine() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommandChain(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineThen(); + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (options.fsync !== false) { - await promisify(fs.fsync)(fd); + return s0; + } + function peg$parseCommandLineThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - await promisify(fs.close)(fd); - fd = null; - if (options.chown) { - await promisify(fs.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err) => { - if (!isChownErrOk(err)) { - throw err; + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); } - }); - } - if (options.mode) { - await promisify(fs.chmod)(tmpfile, options.mode).catch((err) => { - if (!isChownErrOk(err)) { - throw err; + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c9(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - } - await promisify(fs.rename)(tmpfile, truename); - } finally { - if (fd) { - await promisify(fs.close)(fd).catch(() => { - }); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - removeOnExitHandler(); - await promisify(fs.unlink)(tmpfile).catch(() => { - }); - activeFiles[absoluteName].shift(); - if (activeFiles[absoluteName].length > 0) { - activeFiles[absoluteName][0](); - } else - delete activeFiles[absoluteName]; - } - } - function writeFile(filename, data, options, callback) { - if (options instanceof Function) { - callback = options; - options = {}; - } - const promise = writeFileAsync(filename, data, options); - if (callback) { - promise.then(callback, callback); - } - return promise; - } - function writeFileSync(filename, data, options) { - if (typeof options === "string") - options = { encoding: options }; - else if (!options) - options = {}; - try { - filename = fs.realpathSync(filename); - } catch (ex) { + return s0; } - const tmpfile = getTmpname(filename); - if (!options.mode || !options.chown) { - try { - const stats = fs.statSync(filename); - options = Object.assign({}, options); - if (!options.mode) { - options.mode = stats.mode; + function peg$parseCommandLineType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c10) { + s0 = peg$c10; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c11); } - if (!options.chown && process.getuid) { - options.chown = { uid: stats.uid, gid: stats.gid }; + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c12) { + s0 = peg$c12; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } } - } catch (ex) { } + return s0; } - let fd; - const cleanup = cleanupOnExit(tmpfile); - const removeOnExitHandler = onExit(cleanup); - let threw = true; - try { - fd = fs.openSync(tmpfile, "w", options.mode || 438); - if (options.tmpfileCreated) { - options.tmpfileCreated(tmpfile); - } - if (isTypedArray(data)) { - data = typedArrayToBuffer(data); - } - if (Buffer.isBuffer(data)) { - fs.writeSync(fd, data, 0, data.length, 0); - } else if (data != null) { - fs.writeSync(fd, String(data), 0, String(options.encoding || "utf8")); + function peg$parseCommandChain() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommand(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainThen(); + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c14(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (options.fsync !== false) { - fs.fsyncSync(fd); + return s0; + } + function peg$parseCommandChainThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - fs.closeSync(fd); - fd = null; - if (options.chown) { - try { - fs.chownSync(tmpfile, options.chown.uid, options.chown.gid); - } catch (err) { - if (!isChownErrOk(err)) { - throw err; + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); } - } - } - if (options.mode) { - try { - fs.chmodSync(tmpfile, options.mode); - } catch (err) { - if (!isChownErrOk(err)) { - throw err; + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandChain(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - fs.renameSync(tmpfile, filename); - threw = false; - } finally { - if (fd) { - try { - fs.closeSync(fd); - } catch (ex) { + return s0; + } + function peg$parseCommandChainType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c16) { + s0 = peg$c16; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c17); } } - removeOnExitHandler(); - if (threw) { - cleanup(); + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 124) { + s0 = peg$c18; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c19); + } + } } + return s0; } - } - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/common.js -var require_common2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/common.js"(exports2, module2) { - "use strict"; - function isNothing(subject) { - return typeof subject === "undefined" || subject === null; - } - function isObject(subject) { - return typeof subject === "object" && subject !== null; - } - function toArray(sequence) { - if (Array.isArray(sequence)) - return sequence; - else if (isNothing(sequence)) - return []; - return [sequence]; - } - function extend(target, source) { - var index, length, key, sourceKeys; - if (source) { - sourceKeys = Object.keys(source); - for (index = 0, length = sourceKeys.length; index < length; index += 1) { - key = sourceKeys[index]; - target[key] = source[key]; + function peg$parseVariableAssignment() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parseStrictValueArgument(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c22(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - } - return target; - } - function repeat(string, count) { - var result = "", cycle; - for (cycle = 0; cycle < count; cycle += 1) { - result += string; - } - return result; - } - function isNegativeZero(number) { - return number === 0 && Number.NEGATIVE_INFINITY === 1 / number; - } - module2.exports.isNothing = isNothing; - module2.exports.isObject = isObject; - module2.exports.toArray = toArray; - module2.exports.repeat = repeat; - module2.exports.isNegativeZero = isNegativeZero; - module2.exports.extend = extend; - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/exception.js -var require_exception = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/exception.js"(exports2, module2) { - "use strict"; - function formatError(exception, compact) { - var where = "", message2 = exception.reason || "(unknown reason)"; - if (!exception.mark) - return message2; - if (exception.mark.name) { - where += 'in "' + exception.mark.name + '" '; - } - where += "(" + (exception.mark.line + 1) + ":" + (exception.mark.column + 1) + ")"; - if (!compact && exception.mark.snippet) { - where += "\n\n" + exception.mark.snippet; - } - return message2 + " " + where; - } - function YAMLException(reason, mark) { - Error.call(this); - this.name = "YAMLException"; - this.reason = reason; - this.mark = mark; - this.message = formatError(this, false); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } else { - this.stack = new Error().stack || ""; - } - } - YAMLException.prototype = Object.create(Error.prototype); - YAMLException.prototype.constructor = YAMLException; - YAMLException.prototype.toString = function toString(compact) { - return this.name + ": " + formatError(this, compact); - }; - module2.exports = YAMLException; - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/snippet.js -var require_snippet2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/snippet.js"(exports2, module2) { - "use strict"; - var common = require_common2(); - function getLine(buffer, lineStart, lineEnd, position, maxLineLength) { - var head = ""; - var tail = ""; - var maxHalfLength = Math.floor(maxLineLength / 2) - 1; - if (position - lineStart > maxHalfLength) { - head = " ... "; - lineStart = position - maxHalfLength + head.length; - } - if (lineEnd - position > maxHalfLength) { - tail = " ..."; - lineEnd = position + maxHalfLength - tail.length; - } - return { - str: head + buffer.slice(lineStart, lineEnd).replace(/\t/g, "\u2192") + tail, - pos: position - lineStart + head.length - }; - } - function padStart(string, max) { - return common.repeat(" ", max - string.length) + string; - } - function makeSnippet(mark, options) { - options = Object.create(options || null); - if (!mark.buffer) - return null; - if (!options.maxLength) - options.maxLength = 79; - if (typeof options.indent !== "number") - options.indent = 1; - if (typeof options.linesBefore !== "number") - options.linesBefore = 3; - if (typeof options.linesAfter !== "number") - options.linesAfter = 2; - var re = /\r?\n|\r|\0/g; - var lineStarts = [0]; - var lineEnds = []; - var match; - var foundLineNo = -1; - while (match = re.exec(mark.buffer)) { - lineEnds.push(match.index); - lineStarts.push(match.index + match[0].length); - if (mark.position <= match.index && foundLineNo < 0) { - foundLineNo = lineStarts.length - 2; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c23(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } + return s0; } - if (foundLineNo < 0) - foundLineNo = lineStarts.length - 1; - var result = "", i, line; - var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length; - var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3); - for (i = 1; i <= options.linesBefore; i++) { - if (foundLineNo - i < 0) - break; - line = getLine(mark.buffer, lineStarts[foundLineNo - i], lineEnds[foundLineNo - i], mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i]), maxLineLength); - result = common.repeat(" ", options.indent) + padStart((mark.line - i + 1).toString(), lineNoLength) + " | " + line.str + "\n" + result; - } - line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength); - result += common.repeat(" ", options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + " | " + line.str + "\n"; - result += common.repeat("-", options.indent + lineNoLength + 3 + line.pos) + "^\n"; - for (i = 1; i <= options.linesAfter; i++) { - if (foundLineNo + i >= lineEnds.length) - break; - line = getLine(mark.buffer, lineStarts[foundLineNo + i], lineEnds[foundLineNo + i], mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i]), maxLineLength); - result += common.repeat(" ", options.indent) + padStart((mark.line + i + 1).toString(), lineNoLength) + " | " + line.str + "\n"; - } - return result.replace(/\n$/, ""); - } - module2.exports = makeSnippet; - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type.js -var require_type2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type.js"(exports2, module2) { - "use strict"; - var YAMLException = require_exception(); - var TYPE_CONSTRUCTOR_OPTIONS = [ - "kind", - "multi", - "resolve", - "construct", - "instanceOf", - "predicate", - "represent", - "representName", - "defaultStyle", - "styleAliases" - ]; - var YAML_NODE_KINDS = [ - "scalar", - "sequence", - "mapping" - ]; - function compileStyleAliases(map) { - var result = {}; - if (map !== null) { - Object.keys(map).forEach(function(style) { - map[style].forEach(function(alias) { - result[String(alias)] = style; - }); - }); - } - return result; - } - function Type(tag, options) { - options = options || {}; - Object.keys(options).forEach(function(name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + function peg$parseCommand() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - }); - this.tag = tag; - this.kind = options["kind"] || null; - this.resolve = options["resolve"] || function() { - return true; - }; - this.construct = options["construct"] || function(data) { - return data; - }; - this.instanceOf = options["instanceOf"] || null; - this.predicate = options["predicate"] || null; - this.represent = options["represent"] || null; - this.representName = options["representName"] || null; - this.defaultStyle = options["defaultStyle"] || null; - this.multi = options["multi"] || false; - this.styleAliases = compileStyleAliases(options["styleAliases"] || null); - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); - } - } - module2.exports = Type; - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema.js -var require_schema = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema.js"(exports2, module2) { - "use strict"; - var YAMLException = require_exception(); - var Type = require_type2(); - function compileList(schema, name, result) { - var exclude = []; - schema[name].forEach(function(currentType) { - result.forEach(function(previousType, previousIndex) { - if (previousType.tag === currentType.tag && previousType.kind === currentType.kind && previousType.multi === currentType.multi) { - exclude.push(previousIndex); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 40) { + s2 = peg$c24; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s6 = peg$c26; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c28(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - result.push(currentType); - }); - return result.filter(function(type, index) { - return exclude.indexOf(index) === -1; - }); - } - function compileMap() { - var result = { - scalar: {}, - sequence: {}, - mapping: {}, - fallback: {}, - multi: { - scalar: [], - sequence: [], - mapping: [], - fallback: [] - } - }, index, length; - function collectType(type) { - if (type.multi) { - result.multi[type.kind].push(type); - result.multi["fallback"].push(type); } else { - result[type.kind][type.tag] = result["fallback"][type.tag] = type; + peg$currPos = s0; + s0 = peg$FAILED; } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 123) { + s2 = peg$c29; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s6 = peg$c31; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c33(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseArgument(); + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseArgument(); + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c34(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c35(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } + return s0; } - for (index = 0, length = arguments.length; index < length; index += 1) { - arguments[index].forEach(collectType); - } - return result; - } - function Schema(definition) { - return this.extend(definition); - } - Schema.prototype.extend = function extend(definition) { - var implicit = []; - var explicit = []; - if (definition instanceof Type) { - explicit.push(definition); - } else if (Array.isArray(definition)) { - explicit = explicit.concat(definition); - } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) { - if (definition.implicit) - implicit = implicit.concat(definition.implicit); - if (definition.explicit) - explicit = explicit.concat(definition.explicit); - } else { - throw new YAMLException("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })"); - } - implicit.forEach(function(type) { - if (!(type instanceof Type)) { - throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); + function peg$parseCommandString() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseValueArgument(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseValueArgument(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c36(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (type.loadKind && type.loadKind !== "scalar") { - throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); + return s0; + } + function peg$parseArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - if (type.multi) { - throw new YAMLException("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit."); + if (s1 !== peg$FAILED) { + s2 = peg$parseRedirectArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - explicit.forEach(function(type) { - if (!(type instanceof Type)) { - throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - }); - var result = Object.create(Schema.prototype); - result.implicit = (this.implicit || []).concat(implicit); - result.explicit = (this.explicit || []).concat(explicit); - result.compiledImplicit = compileList(result, "implicit", []); - result.compiledExplicit = compileList(result, "explicit", []); - result.compiledTypeMap = compileMap(result.compiledImplicit, result.compiledExplicit); - return result; - }; - module2.exports = Schema; - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/str.js -var require_str = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/str.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - module2.exports = new Type("tag:yaml.org,2002:str", { - kind: "scalar", - construct: function(data) { - return data !== null ? data : ""; - } - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/seq.js -var require_seq = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/seq.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - module2.exports = new Type("tag:yaml.org,2002:seq", { - kind: "sequence", - construct: function(data) { - return data !== null ? data : []; - } - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/map.js -var require_map2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/map.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - module2.exports = new Type("tag:yaml.org,2002:map", { - kind: "mapping", - construct: function(data) { - return data !== null ? data : {}; + return s0; } - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/failsafe.js -var require_failsafe = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/failsafe.js"(exports2, module2) { - "use strict"; - var Schema = require_schema(); - module2.exports = new Schema({ - explicit: [ - require_str(), - require_seq(), - require_map2() - ] - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/null.js -var require_null = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/null.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - function resolveYamlNull(data) { - if (data === null) - return true; - var max = data.length; - return max === 1 && data === "~" || max === 4 && (data === "null" || data === "Null" || data === "NULL"); - } - function constructYamlNull() { - return null; - } - function isNull(object) { - return object === null; - } - module2.exports = new Type("tag:yaml.org,2002:null", { - kind: "scalar", - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function() { - return "~"; - }, - lowercase: function() { - return "null"; - }, - uppercase: function() { - return "NULL"; - }, - camelcase: function() { - return "Null"; - }, - empty: function() { - return ""; + function peg$parseRedirectArgument() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - }, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/bool.js -var require_bool = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/bool.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - function resolveYamlBoolean(data) { - if (data === null) - return false; - var max = data.length; - return max === 4 && (data === "true" || data === "True" || data === "TRUE") || max === 5 && (data === "false" || data === "False" || data === "FALSE"); - } - function constructYamlBoolean(data) { - return data === "true" || data === "True" || data === "TRUE"; - } - function isBoolean(object) { - return Object.prototype.toString.call(object) === "[object Boolean]"; - } - module2.exports = new Type("tag:yaml.org,2002:bool", { - kind: "scalar", - resolve: resolveYamlBoolean, - construct: constructYamlBoolean, - predicate: isBoolean, - represent: { - lowercase: function(object) { - return object ? "true" : "false"; - }, - uppercase: function(object) { - return object ? "TRUE" : "FALSE"; - }, - camelcase: function(object) { - return object ? "True" : "False"; + if (s1 !== peg$FAILED) { + if (peg$c38.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + s3 = peg$parseRedirectType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseValueArgument(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(s2, s3, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/int.js -var require_int = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/int.js"(exports2, module2) { - "use strict"; - var common = require_common2(); - var Type = require_type2(); - function isHexCode(c) { - return 48 <= c && c <= 57 || 65 <= c && c <= 70 || 97 <= c && c <= 102; - } - function isOctCode(c) { - return 48 <= c && c <= 55; - } - function isDecCode(c) { - return 48 <= c && c <= 57; - } - function resolveYamlInteger(data) { - if (data === null) - return false; - var max = data.length, index = 0, hasDigits = false, ch; - if (!max) - return false; - ch = data[index]; - if (ch === "-" || ch === "+") { - ch = data[++index]; + return s0; } - if (ch === "0") { - if (index + 1 === max) - return true; - ch = data[++index]; - if (ch === "b") { - index++; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (ch !== "0" && ch !== "1") - return false; - hasDigits = true; + function peg$parseRedirectType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c41) { + s0 = peg$c41; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); } - return hasDigits && ch !== "_"; } - if (ch === "x") { - index++; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (!isHexCode(data.charCodeAt(index))) - return false; - hasDigits = true; + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c43) { + s0 = peg$c43; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c44); + } } - return hasDigits && ch !== "_"; - } - if (ch === "o") { - index++; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (!isOctCode(data.charCodeAt(index))) - return false; - hasDigits = true; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 62) { + s0 = peg$c45; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c46); + } + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c47) { + s0 = peg$c47; + peg$currPos += 3; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c48); + } + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c49) { + s0 = peg$c49; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c50); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 60) { + s0 = peg$c51; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c52); + } + } + } + } + } } - return hasDigits && ch !== "_"; } + return s0; } - if (ch === "_") - return false; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (!isDecCode(data.charCodeAt(index))) { - return false; + function peg$parseValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - hasDigits = true; - } - if (!hasDigits || ch === "_") - return false; - return true; - } - function constructYamlInteger(data) { - var value = data, sign = 1, ch; - if (value.indexOf("_") !== -1) { - value = value.replace(/_/g, ""); - } - ch = value[0]; - if (ch === "-" || ch === "+") { - if (ch === "-") - sign = -1; - value = value.slice(1); - ch = value[0]; - } - if (value === "0") - return 0; - if (ch === "0") { - if (value[1] === "b") - return sign * parseInt(value.slice(2), 2); - if (value[1] === "x") - return sign * parseInt(value.slice(2), 16); - if (value[1] === "o") - return sign * parseInt(value.slice(2), 8); - } - return sign * parseInt(value, 10); - } - function isInteger(object) { - return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object)); - } - module2.exports = new Type("tag:yaml.org,2002:int", { - kind: "scalar", - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function(obj) { - return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1); - }, - octal: function(obj) { - return obj >= 0 ? "0o" + obj.toString(8) : "-0o" + obj.toString(8).slice(1); - }, - decimal: function(obj) { - return obj.toString(10); - }, - hexadecimal: function(obj) { - return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1); + if (s1 !== peg$FAILED) { + s2 = peg$parseStrictValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - defaultStyle: "decimal", - styleAliases: { - binary: [2, "bin"], - octal: [8, "oct"], - decimal: [10, "dec"], - hexadecimal: [16, "hex"] - } - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/float.js -var require_float = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/float.js"(exports2, module2) { - "use strict"; - var common = require_common2(); - var Type = require_type2(); - var YAML_FLOAT_PATTERN = new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"); - function resolveYamlFloat(data) { - if (data === null) - return false; - if (!YAML_FLOAT_PATTERN.test(data) || data[data.length - 1] === "_") { - return false; - } - return true; - } - function constructYamlFloat(data) { - var value, sign; - value = data.replace(/_/g, "").toLowerCase(); - sign = value[0] === "-" ? -1 : 1; - if ("+-".indexOf(value[0]) >= 0) { - value = value.slice(1); - } - if (value === ".inf") { - return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; - } else if (value === ".nan") { - return NaN; + return s0; } - return sign * parseFloat(value, 10); - } - var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; - function representYamlFloat(object, style) { - var res; - if (isNaN(object)) { - switch (style) { - case "lowercase": - return ".nan"; - case "uppercase": - return ".NAN"; - case "camelcase": - return ".NaN"; - } - } else if (Number.POSITIVE_INFINITY === object) { - switch (style) { - case "lowercase": - return ".inf"; - case "uppercase": - return ".INF"; - case "camelcase": - return ".Inf"; + function peg$parseStrictValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseArgumentSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseArgumentSegment(); + } + } else { + s1 = peg$FAILED; } - } else if (Number.NEGATIVE_INFINITY === object) { - switch (style) { - case "lowercase": - return "-.inf"; - case "uppercase": - return "-.INF"; - case "camelcase": - return "-.Inf"; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c53(s1); } - } else if (common.isNegativeZero(object)) { - return "-0.0"; - } - res = object.toString(10); - return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res; - } - function isFloat(object) { - return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object)); - } - module2.exports = new Type("tag:yaml.org,2002:float", { - kind: "scalar", - resolve: resolveYamlFloat, - construct: constructYamlFloat, - predicate: isFloat, - represent: representYamlFloat, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/json.js -var require_json = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/json.js"(exports2, module2) { - "use strict"; - module2.exports = require_failsafe().extend({ - implicit: [ - require_null(), - require_bool(), - require_int(), - require_float() - ] - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/core.js -var require_core2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/core.js"(exports2, module2) { - "use strict"; - module2.exports = require_json(); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/timestamp.js -var require_timestamp2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/timestamp.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - var YAML_DATE_REGEXP = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"); - var YAML_TIMESTAMP_REGEXP = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$"); - function resolveYamlTimestamp(data) { - if (data === null) - return false; - if (YAML_DATE_REGEXP.exec(data) !== null) - return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) - return true; - return false; - } - function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date; - match = YAML_DATE_REGEXP.exec(data); - if (match === null) - match = YAML_TIMESTAMP_REGEXP.exec(data); - if (match === null) - throw new Error("Date resolve error"); - year = +match[1]; - month = +match[2] - 1; - day = +match[3]; - if (!match[4]) { - return new Date(Date.UTC(year, month, day)); + s0 = s1; + return s0; } - hour = +match[4]; - minute = +match[5]; - second = +match[6]; - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { - fraction += "0"; + function peg$parseArgumentSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseCQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); } - fraction = +fraction; - } - if (match[9]) { - tz_hour = +match[10]; - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 6e4; - if (match[9] === "-") - delta = -delta; - } - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - if (delta) - date.setTime(date.getTime() - delta); - return date; - } - function representYamlTimestamp(object) { - return object.toISOString(); - } - module2.exports = new Type("tag:yaml.org,2002:timestamp", { - kind: "scalar", - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/merge.js -var require_merge4 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/merge.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - function resolveYamlMerge(data) { - return data === "<<" || data === null; - } - module2.exports = new Type("tag:yaml.org,2002:merge", { - kind: "scalar", - resolve: resolveYamlMerge - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/binary.js -var require_binary = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/binary.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - var BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; - function resolveYamlBinary(data) { - if (data === null) - return false; - var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; - for (idx = 0; idx < max; idx++) { - code = map.indexOf(data.charAt(idx)); - if (code > 64) - continue; - if (code < 0) - return false; - bitlen += 6; - } - return bitlen % 8 === 0; - } - function constructYamlBinary(data) { - var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max = input.length, map = BASE64_MAP, bits = 0, result = []; - for (idx = 0; idx < max; idx++) { - if (idx % 4 === 0 && idx) { - result.push(bits >> 16 & 255); - result.push(bits >> 8 & 255); - result.push(bits & 255); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSglQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + } + } } - bits = bits << 6 | map.indexOf(input.charAt(idx)); - } - tailbits = max % 4 * 6; - if (tailbits === 0) { - result.push(bits >> 16 & 255); - result.push(bits >> 8 & 255); - result.push(bits & 255); - } else if (tailbits === 18) { - result.push(bits >> 10 & 255); - result.push(bits >> 2 & 255); - } else if (tailbits === 12) { - result.push(bits >> 4 & 255); + return s0; } - return new Uint8Array(result); - } - function representYamlBinary(object) { - var result = "", bits = 0, idx, tail, max = object.length, map = BASE64_MAP; - for (idx = 0; idx < max; idx++) { - if (idx % 3 === 0 && idx) { - result += map[bits >> 18 & 63]; - result += map[bits >> 12 & 63]; - result += map[bits >> 6 & 63]; - result += map[bits & 63]; + function peg$parseCQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); + } } - bits = (bits << 8) + object[idx]; - } - tail = max % 3; - if (tail === 0) { - result += map[bits >> 18 & 63]; - result += map[bits >> 12 & 63]; - result += map[bits >> 6 & 63]; - result += map[bits & 63]; - } else if (tail === 2) { - result += map[bits >> 10 & 63]; - result += map[bits >> 4 & 63]; - result += map[bits << 2 & 63]; - result += map[64]; - } else if (tail === 1) { - result += map[bits >> 2 & 63]; - result += map[bits << 4 & 63]; - result += map[64]; - result += map[64]; - } - return result; - } - function isBinary(obj) { - return Object.prototype.toString.call(obj) === "[object Uint8Array]"; - } - module2.exports = new Type("tag:yaml.org,2002:binary", { - kind: "scalar", - resolve: resolveYamlBinary, - construct: constructYamlBinary, - predicate: isBinary, - represent: representYamlBinary - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/omap.js -var require_omap = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/omap.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var _toString = Object.prototype.toString; - function resolveYamlOmap(data) { - if (data === null) - return true; - var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data; - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; - if (_toString.call(pair) !== "[object Object]") - return false; - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) - pairHasKey = true; - else - return false; + if (s1 !== peg$FAILED) { + s2 = peg$parseCQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (!pairHasKey) - return false; - if (objectKeys.indexOf(pairKey) === -1) - objectKeys.push(pairKey); - else - return false; - } - return true; - } - function constructYamlOmap(data) { - return data !== null ? data : []; - } - module2.exports = new Type("tag:yaml.org,2002:omap", { - kind: "sequence", - resolve: resolveYamlOmap, - construct: constructYamlOmap - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/pairs.js -var require_pairs2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/pairs.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - var _toString = Object.prototype.toString; - function resolveYamlPairs(data) { - if (data === null) - return true; - var index, length, pair, keys, result, object = data; - result = new Array(object.length); - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - if (_toString.call(pair) !== "[object Object]") - return false; - keys = Object.keys(pair); - if (keys.length !== 1) - return false; - result[index] = [keys[0], pair[keys[0]]]; - } - return true; - } - function constructYamlPairs(data) { - if (data === null) - return []; - var index, length, pair, keys, result, object = data; - result = new Array(object.length); - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - keys = Object.keys(pair); - result[index] = [keys[0], pair[keys[0]]]; + return s0; } - return result; - } - module2.exports = new Type("tag:yaml.org,2002:pairs", { - kind: "sequence", - resolve: resolveYamlPairs, - construct: constructYamlPairs - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/set.js -var require_set = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/type/set.js"(exports2, module2) { - "use strict"; - var Type = require_type2(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - function resolveYamlSet(data) { - if (data === null) - return true; - var key, object = data; - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) - return false; + function peg$parseSglQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 39) { + s1 = peg$c57; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } } + if (s1 !== peg$FAILED) { + s2 = peg$parseSglQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; } - return true; - } - function constructYamlSet(data) { - return data !== null ? data : {}; - } - module2.exports = new Type("tag:yaml.org,2002:set", { - kind: "mapping", - resolve: resolveYamlSet, - construct: constructYamlSet - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/default.js -var require_default = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/schema/default.js"(exports2, module2) { - "use strict"; - module2.exports = require_core2().extend({ - implicit: [ - require_timestamp2(), - require_merge4() - ], - explicit: [ - require_binary(), - require_omap(), - require_pairs2(), - require_set() - ] - }); - } -}); - -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/loader.js -var require_loader = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/loader.js"(exports2, module2) { - "use strict"; - var common = require_common2(); - var YAMLException = require_exception(); - var makeSnippet = require_snippet2(); - var DEFAULT_SCHEMA = require_default(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var CONTEXT_FLOW_IN = 1; - var CONTEXT_FLOW_OUT = 2; - var CONTEXT_BLOCK_IN = 3; - var CONTEXT_BLOCK_OUT = 4; - var CHOMPING_CLIP = 1; - var CHOMPING_STRIP = 2; - var CHOMPING_KEEP = 3; - var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; - var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; - var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; - var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; - var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; - function _class(obj) { - return Object.prototype.toString.call(obj); - } - function is_EOL(c) { - return c === 10 || c === 13; - } - function is_WHITE_SPACE(c) { - return c === 9 || c === 32; - } - function is_WS_OR_EOL(c) { - return c === 9 || c === 32 || c === 10 || c === 13; - } - function is_FLOW_INDICATOR(c) { - return c === 44 || c === 91 || c === 93 || c === 123 || c === 125; - } - function fromHexCode(c) { - var lc; - if (48 <= c && c <= 57) { - return c - 48; - } - lc = c | 32; - if (97 <= lc && lc <= 102) { - return lc - 97 + 10; - } - return -1; - } - function escapedHexLen(c) { - if (c === 120) { - return 2; - } - if (c === 117) { - return 4; - } - if (c === 85) { - return 8; - } - return 0; - } - function fromDecimalCode(c) { - if (48 <= c && c <= 57) { - return c - 48; - } - return -1; - } - function simpleEscapeSequence(c) { - return c === 48 ? "\0" : c === 97 ? "\x07" : c === 98 ? "\b" : c === 116 ? " " : c === 9 ? " " : c === 110 ? "\n" : c === 118 ? "\v" : c === 102 ? "\f" : c === 114 ? "\r" : c === 101 ? "" : c === 32 ? " " : c === 34 ? '"' : c === 47 ? "/" : c === 92 ? "\\" : c === 78 ? "\x85" : c === 95 ? "\xA0" : c === 76 ? "\u2028" : c === 80 ? "\u2029" : ""; - } - function charFromCodepoint(c) { - if (c <= 65535) { - return String.fromCharCode(c); - } - return String.fromCharCode((c - 65536 >> 10) + 55296, (c - 65536 & 1023) + 56320); - } - var simpleEscapeCheck = new Array(256); - var simpleEscapeMap = new Array(256); - for (i = 0; i < 256; i++) { - simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; - simpleEscapeMap[i] = simpleEscapeSequence(i); - } - var i; - function State(input, options) { - this.input = input; - this.filename = options["filename"] || null; - this.schema = options["schema"] || DEFAULT_SCHEMA; - this.onWarning = options["onWarning"] || null; - this.legacy = options["legacy"] || false; - this.json = options["json"] || false; - this.listener = options["listener"] || null; - this.implicitTypes = this.schema.compiledImplicit; - this.typeMap = this.schema.compiledTypeMap; - this.length = input.length; - this.position = 0; - this.line = 0; - this.lineStart = 0; - this.lineIndent = 0; - this.firstTabInLine = -1; - this.documents = []; - } - function generateError(state, message2) { - var mark = { - name: state.filename, - buffer: state.input.slice(0, -1), - position: state.position, - line: state.line, - column: state.position - state.lineStart - }; - mark.snippet = makeSnippet(mark); - return new YAMLException(message2, mark); - } - function throwError(state, message2) { - throw generateError(state, message2); - } - function throwWarning(state, message2) { - if (state.onWarning) { - state.onWarning.call(null, generateError(state, message2)); - } - } - var directiveHandlers = { - YAML: function handleYamlDirective(state, name, args2) { - var match, major, minor; - if (state.version !== null) { - throwError(state, "duplication of %YAML directive"); + function peg$parseDblQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c60) { + s1 = peg$c60; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c61); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c62(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c63; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseDblQuoteStringSegment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseDblQuoteStringSegment(); + } + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c63; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - if (args2.length !== 1) { - throwError(state, "YAML directive accepts exactly one argument"); + return s0; + } + function peg$parsePlainString() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePlainStringSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePlainStringSegment(); + } + } else { + s1 = peg$FAILED; } - match = /^([0-9]+)\.([0-9]+)$/.exec(args2[0]); - if (match === null) { - throwError(state, "ill-formed argument of the YAML directive"); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s1); } - major = parseInt(match[1], 10); - minor = parseInt(match[2], 10); - if (major !== 1) { - throwError(state, "unacceptable YAML version of the document"); + s0 = s1; + return s0; + } + function peg$parseDblQuoteStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(s1); } - state.version = args2[0]; - state.checkLineBreaks = minor < 2; - if (minor !== 1 && minor !== 2) { - throwWarning(state, "unsupported YAML version of the document"); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c67(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c68(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } + } } - }, - TAG: function handleTagDirective(state, name, args2) { - var handle, prefix; - if (args2.length !== 2) { - throwError(state, "TAG directive accepts exactly two arguments"); + return s0; + } + function peg$parsePlainStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c70(s1); } - handle = args2[0]; - prefix = args2[1]; - if (!PATTERN_TAG_HANDLE.test(handle)) { - throwError(state, "ill-formed tag handle (first argument) of the TAG directive"); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c71(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseGlob(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c73(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } + } + } } - if (_hasOwnProperty.call(state.tagMap, handle)) { - throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); + return s0; + } + function peg$parseSglQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } } - if (!PATTERN_TAG_URI.test(prefix)) { - throwError(state, "ill-formed tag prefix (second argument) of the TAG directive"); + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } + } } - try { - prefix = decodeURIComponent(prefix); - } catch (err) { - throwError(state, "tag prefix is malformed: " + prefix); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - state.tagMap[handle] = prefix; + s0 = s1; + return s0; } - }; - function captureSegment(state, start, end, checkJson) { - var _position, _length, _character, _result; - if (start < end) { - _result = state.input.slice(start, end); - if (checkJson) { - for (_position = 0, _length = _result.length; _position < _length; _position += 1) { - _character = _result.charCodeAt(_position); - if (!(_character === 9 || 32 <= _character && _character <= 1114111)) { - throwError(state, "expected valid JSON character"); + function peg$parseDblQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); } } - } else if (PATTERN_NON_PRINTABLE.test(_result)) { - throwError(state, "the stream contains non-printable characters"); } - state.result += _result; - } - } - function mergeMappings(state, destination, source, overridableKeys) { - var sourceKeys, key, index, quantity; - if (!common.isObject(source)) { - throwError(state, "cannot merge mappings; the provided source object is unacceptable"); - } - sourceKeys = Object.keys(source); - for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { - key = sourceKeys[index]; - if (!_hasOwnProperty.call(destination, key)) { - destination[key] = source[key]; - overridableKeys[key] = true; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); + } + } + } + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } + s0 = s1; + return s0; } - } - function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startLineStart, startPos) { - var index, quantity; - if (Array.isArray(keyNode)) { - keyNode = Array.prototype.slice.call(keyNode); - for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { - if (Array.isArray(keyNode[index])) { - throwError(state, "nested arrays are not supported inside keys"); + function peg$parseDblQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); } - if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") { - keyNode[index] = "[object Object]"; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c84.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c85); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } + return s0; } - if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") { - keyNode = "[object Object]"; + function peg$parseCQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } + } + } + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } + } + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); + } + s0 = s1; + return s0; } - keyNode = String(keyNode); - if (_result === null) { - _result = {}; + function peg$parseCQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c87) { + s1 = peg$c87; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c88); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c89(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c90) { + s1 = peg$c90; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c92(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c93.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c94); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c95(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c96) { + s1 = peg$c96; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c97); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c98(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c99) { + s1 = peg$c99; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c100); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c101(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c102) { + s1 = peg$c102; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c103); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c104(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c105) { + s1 = peg$c105; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c106); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c107(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c108) { + s1 = peg$c108; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c109); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c110(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c111.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c112); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$parseHexCodeString(); + } + } + } + } + } + } + } + } + } + return s0; } - if (keyTag === "tag:yaml.org,2002:merge") { - if (Array.isArray(valueNode)) { - for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { - mergeMappings(state, _result, valueNode[index], overridableKeys); + function peg$parseHexCodeString() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseHexCodeChar0(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } else { - mergeMappings(state, _result, valueNode, overridableKeys); + peg$currPos = s0; + s0 = peg$FAILED; } - } else { - if (!state.json && !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { - state.line = startLine || state.line; - state.lineStart = startLineStart || state.lineStart; - state.position = startPos || state.position; - throwError(state, "duplicated mapping key"); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c114) { + s1 = peg$c114; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c115); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar0(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 === peg$FAILED) { + s3 = peg$parseHexCodeChar0(); + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c116) { + s1 = peg$c116; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c117); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c118) { + s1 = peg$c118; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c119); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s8 = peg$parseHexCodeChar(); + if (s8 !== peg$FAILED) { + s9 = peg$parseHexCodeChar(); + if (s9 !== peg$FAILED) { + s10 = peg$parseHexCodeChar(); + if (s10 !== peg$FAILED) { + s11 = peg$parseHexCodeChar(); + if (s11 !== peg$FAILED) { + s4 = [s4, s5, s6, s7, s8, s9, s10, s11]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c120(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } } - if (keyNode === "__proto__") { - Object.defineProperty(_result, keyNode, { - configurable: true, - enumerable: true, - writable: true, - value: valueNode - }); + return s0; + } + function peg$parseHexCodeChar0() { + var s0; + if (peg$c121.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; } else { - _result[keyNode] = valueNode; + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c122); + } } - delete overridableKeys[keyNode]; + return s0; } - return _result; - } - function readLineBreak(state) { - var ch; - ch = state.input.charCodeAt(state.position); - if (ch === 10) { - state.position++; - } else if (ch === 13) { - state.position++; - if (state.input.charCodeAt(state.position) === 10) { - state.position++; + function peg$parseHexCodeChar() { + var s0; + if (peg$c123.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c124); + } } - } else { - throwError(state, "a line break is expected"); + return s0; } - state.line += 1; - state.lineStart = state.position; - state.firstTabInLine = -1; - } - function skipSeparationSpace(state, allowComments, checkIndent) { - var lineBreaks = 0, ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - if (ch === 9 && state.firstTabInLine === -1) { - state.firstTabInLine = state.position; + function peg$parsePlainStringText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - ch = state.input.charCodeAt(++state.position); } - if (allowComments && ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 10 && ch !== 13 && ch !== 0); + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - if (is_EOL(ch)) { - readLineBreak(state); - ch = state.input.charCodeAt(state.position); - lineBreaks++; - state.lineIndent = 0; - while (ch === 32) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } } } else { - break; + s1 = peg$FAILED; } - } - if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { - throwWarning(state, "deficient indentation"); - } - return lineBreaks; - } - function testDocumentSeparator(state) { - var _position = state.position, ch; - ch = state.input.charCodeAt(_position); - if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) { - _position += 3; - ch = state.input.charCodeAt(_position); - if (ch === 0 || is_WS_OR_EOL(ch)) { - return true; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } + s0 = s1; + return s0; } - return false; - } - function writeFoldedLines(state, count) { - if (count === 1) { - state.result += " "; - } else if (count > 1) { - state.result += common.repeat("\n", count - 1); - } - } - function readPlainScalar(state, nodeIndent, withinFlowCollection) { - var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch; - ch = state.input.charCodeAt(state.position); - if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) { - return false; - } - if (ch === 63 || ch === 45) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { - return false; + function peg$parseArithmeticPrimary() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c126; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } + } + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c128; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c129); + } + } + } + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 46) { + s3 = peg$c130; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c131); + } + } + if (s3 !== peg$FAILED) { + s4 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c132(s1, s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c126; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } + } + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c128; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c129); + } + } + } + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c133(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c134(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseIdentifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c135(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 40) { + s1 = peg$c24; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s5 = peg$c26; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c136(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } } + return s0; } - state.kind = "scalar"; - state.result = ""; - captureStart = captureEnd = state.position; - hasPendingContent = false; - while (ch !== 0) { - if (ch === 58) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { - break; - } - } else if (ch === 35) { - preceding = state.input.charCodeAt(state.position - 1); - if (is_WS_OR_EOL(preceding)) { - break; + function peg$parseArithmeticTimesExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticPrimary(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) { - break; - } else if (is_EOL(ch)) { - _line = state.line; - _lineStart = state.lineStart; - _lineIndent = state.lineIndent; - skipSeparationSpace(state, false, -1); - if (state.lineIndent >= nodeIndent) { - hasPendingContent = true; - ch = state.input.charCodeAt(state.position); - continue; + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c137; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c138); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c139; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c140); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c141(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { - state.position = captureEnd; - state.line = _line; - state.lineStart = _lineStart; - state.lineIndent = _lineIndent; - break; + peg$currPos = s3; + s3 = peg$FAILED; } - } - if (hasPendingContent) { - captureSegment(state, captureStart, captureEnd, false); - writeFoldedLines(state, state.line - _line); - captureStart = captureEnd = state.position; - hasPendingContent = false; - } - if (!is_WHITE_SPACE(ch)) { - captureEnd = state.position + 1; - } - ch = state.input.charCodeAt(++state.position); - } - captureSegment(state, captureStart, captureEnd, false); - if (state.result) { - return true; - } - state.kind = _kind; - state.result = _result; - return false; - } - function readSingleQuotedScalar(state, nodeIndent) { - var ch, captureStart, captureEnd; - ch = state.input.charCodeAt(state.position); - if (ch !== 39) { - return false; - } - state.kind = "scalar"; - state.result = ""; - state.position++; - captureStart = captureEnd = state.position; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 39) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - if (ch === 39) { - captureStart = state.position; - state.position++; - captureEnd = state.position; + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c137; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c138); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c139; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c140); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c141(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c142(s1, s2); + s0 = s1; } else { - return true; + peg$currPos = s0; + s0 = peg$FAILED; } - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, "unexpected end of the document within a single quoted scalar"); } else { - state.position++; - captureEnd = state.position; + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - throwError(state, "unexpected end of the stream within a single quoted scalar"); - } - function readDoubleQuotedScalar(state, nodeIndent) { - var captureStart, captureEnd, hexLength, hexResult, tmp, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 34) { - return false; - } - state.kind = "scalar"; - state.result = ""; - state.position++; - captureStart = captureEnd = state.position; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 34) { - captureSegment(state, captureStart, state.position, true); - state.position++; - return true; - } else if (ch === 92) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - if (is_EOL(ch)) { - skipSeparationSpace(state, false, nodeIndent); - } else if (ch < 256 && simpleEscapeCheck[ch]) { - state.result += simpleEscapeMap[ch]; - state.position++; - } else if ((tmp = escapedHexLen(ch)) > 0) { - hexLength = tmp; - hexResult = 0; - for (; hexLength > 0; hexLength--) { - ch = state.input.charCodeAt(++state.position); - if ((tmp = fromHexCode(ch)) >= 0) { - hexResult = (hexResult << 4) + tmp; + function peg$parseArithmeticExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticTimesExpression(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c128; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c129); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c126; + peg$currPos++; } else { - throwError(state, "expected hexadecimal character"); + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } } } - state.result += charFromCodepoint(hexResult); - state.position++; + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c143(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { - throwError(state, "unknown escape sequence"); + peg$currPos = s3; + s3 = peg$FAILED; } - captureStart = captureEnd = state.position; - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, "unexpected end of the document within a double quoted scalar"); - } else { - state.position++; - captureEnd = state.position; - } - } - throwError(state, "unexpected end of the stream within a double quoted scalar"); - } - function readFlowCollection(state, nodeIndent) { - var readNext = true, _line, _lineStart, _pos, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = Object.create(null), keyNode, keyTag, valueNode, ch; - ch = state.input.charCodeAt(state.position); - if (ch === 91) { - terminator = 93; - isMapping = false; - _result = []; - } else if (ch === 123) { - terminator = 125; - isMapping = true; - _result = {}; - } else { - return false; - } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - ch = state.input.charCodeAt(++state.position); - while (ch !== 0) { - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if (ch === terminator) { - state.position++; - state.tag = _tag; - state.anchor = _anchor; - state.kind = isMapping ? "mapping" : "sequence"; - state.result = _result; - return true; - } else if (!readNext) { - throwError(state, "missed comma between flow collection entries"); - } else if (ch === 44) { - throwError(state, "expected the node content, but found ','"); - } - keyTag = keyNode = valueNode = null; - isPair = isExplicitPair = false; - if (ch === 63) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following)) { - isPair = isExplicitPair = true; - state.position++; - skipSeparationSpace(state, true, nodeIndent); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c128; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c129); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c126; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c143(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c142(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - } - _line = state.line; - _lineStart = state.lineStart; - _pos = state.position; - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - keyTag = state.tag; - keyNode = state.result; - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if ((isExplicitPair || state.line === _line) && ch === 58) { - isPair = true; - ch = state.input.charCodeAt(++state.position); - skipSeparationSpace(state, true, nodeIndent); - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - valueNode = state.result; - } - if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos); - } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos)); } else { - _result.push(keyNode); + peg$currPos = s0; + s0 = peg$FAILED; } - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if (ch === 44) { - readNext = true; - ch = state.input.charCodeAt(++state.position); + return s0; + } + function peg$parseArithmetic() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 3) === peg$c144) { + s1 = peg$c144; + peg$currPos += 3; } else { - readNext = false; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c145); + } } - } - throwError(state, "unexpected end of the stream within a flow collection"); - } - function readBlockScalar(state, nodeIndent) { - var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch; - ch = state.input.charCodeAt(state.position); - if (ch === 124) { - folding = false; - } else if (ch === 62) { - folding = true; - } else { - return false; - } - state.kind = "scalar"; - state.result = ""; - while (ch !== 0) { - ch = state.input.charCodeAt(++state.position); - if (ch === 43 || ch === 45) { - if (CHOMPING_CLIP === chomping) { - chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP; - } else { - throwError(state, "repeat of a chomping mode identifier"); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); } - } else if ((tmp = fromDecimalCode(ch)) >= 0) { - if (tmp === 0) { - throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one"); - } else if (!detectedIndent) { - textIndent = nodeIndent + tmp - 1; - detectedIndent = true; + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c146) { + s5 = peg$c146; + peg$currPos += 2; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c147); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c148(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - throwError(state, "repeat of an indentation width identifier"); + peg$currPos = s0; + s0 = peg$FAILED; } } else { - break; - } - } - if (is_WHITE_SPACE(ch)) { - do { - ch = state.input.charCodeAt(++state.position); - } while (is_WHITE_SPACE(ch)); - if (ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (!is_EOL(ch) && ch !== 0); + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - while (ch !== 0) { - readLineBreak(state); - state.lineIndent = 0; - ch = state.input.charCodeAt(state.position); - while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - if (!detectedIndent && state.lineIndent > textIndent) { - textIndent = state.lineIndent; - } - if (is_EOL(ch)) { - emptyLines++; - continue; - } - if (state.lineIndent < textIndent) { - if (chomping === CHOMPING_KEEP) { - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); - } else if (chomping === CHOMPING_CLIP) { - if (didReadContent) { - state.result += "\n"; - } + function peg$parseSubshell() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c149) { + s1 = peg$c149; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c150); } - break; } - if (folding) { - if (is_WHITE_SPACE(ch)) { - atMoreIndented = true; - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); - } else if (atMoreIndented) { - atMoreIndented = false; - state.result += common.repeat("\n", emptyLines + 1); - } else if (emptyLines === 0) { - if (didReadContent) { - state.result += " "; + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s3 = peg$c26; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c151(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } else { - state.result += common.repeat("\n", emptyLines); + peg$currPos = s0; + s0 = peg$FAILED; } } else { - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); - } - didReadContent = true; - detectedIndent = true; - emptyLines = 0; - captureStart = state.position; - while (!is_EOL(ch) && ch !== 0) { - ch = state.input.charCodeAt(++state.position); + peg$currPos = s0; + s0 = peg$FAILED; } - captureSegment(state, captureStart, state.position, false); - } - return true; - } - function readBlockSequence(state, nodeIndent) { - var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch; - if (state.firstTabInLine !== -1) - return false; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; + return s0; } - ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - if (state.firstTabInLine !== -1) { - state.position = state.firstTabInLine; - throwError(state, "tab characters must not be used in indentation"); - } - if (ch !== 45) { - break; - } - following = state.input.charCodeAt(state.position + 1); - if (!is_WS_OR_EOL(following)) { - break; - } - detected = true; - state.position++; - if (skipSeparationSpace(state, true, -1)) { - if (state.lineIndent <= nodeIndent) { - _result.push(null); - ch = state.input.charCodeAt(state.position); - continue; + function peg$parseVariable() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); } } - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); - _result.push(state.result); - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { - throwError(state, "bad indentation of a sequence entry"); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = "sequence"; - state.result = _result; - return true; - } - return false; - } - function readBlockMapping(state, nodeIndent, flowIndent) { - var following, allowCompact, _line, _keyLine, _keyLineStart, _keyPos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = Object.create(null), keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch; - if (state.firstTabInLine !== -1) - return false; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - if (!atExplicitKey && state.firstTabInLine !== -1) { - state.position = state.firstTabInLine; - throwError(state, "tab characters must not be used in indentation"); - } - following = state.input.charCodeAt(state.position + 1); - _line = state.line; - if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) { - if (ch === 63) { - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); - keyTag = keyNode = valueNode = null; + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c154) { + s3 = peg$c154; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c155); + } + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c156(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - detected = true; - atExplicitKey = true; - allowCompact = true; - } else if (atExplicitKey) { - atExplicitKey = false; - allowCompact = true; } else { - throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"); + peg$currPos = s0; + s0 = peg$FAILED; } - state.position += 1; - ch = following; } else { - _keyLine = state.line; - _keyLineStart = state.lineStart; - _keyPos = state.position; - if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - break; - } - if (state.line === _line) { - ch = state.input.charCodeAt(state.position); - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); } - if (ch === 58) { - ch = state.input.charCodeAt(++state.position); - if (!is_WS_OR_EOL(ch)) { - throwError(state, "a whitespace character is expected after the key-value separator within a block mapping"); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c157) { + s3 = peg$c157; + peg$currPos += 3; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c158); + } } - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); - keyTag = keyNode = valueNode = null; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c159(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - detected = true; - atExplicitKey = false; - allowCompact = false; - keyTag = state.tag; - keyNode = state.result; - } else if (detected) { - throwError(state, "can not read an implicit mapping pair; a colon is missed"); } else { - state.tag = _tag; - state.anchor = _anchor; - return true; + peg$currPos = s0; + s0 = peg$FAILED; } - } else if (detected) { - throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key"); } else { - state.tag = _tag; - state.anchor = _anchor; - return true; - } - } - if (state.line === _line || state.lineIndent > nodeIndent) { - if (atExplicitKey) { - _keyLine = state.line; - _keyLineStart = state.lineStart; - _keyPos = state.position; + peg$currPos = s0; + s0 = peg$FAILED; } - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { - if (atExplicitKey) { - keyNode = state.result; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; } else { - valueNode = state.result; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); + } } - } - if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos); - keyTag = keyNode = valueNode = null; - } - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - } - if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { - throwError(state, "bad indentation of a mapping entry"); - } else if (state.lineIndent < nodeIndent) { - break; - } - } - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); - } - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = "mapping"; - state.result = _result; - } - return detected; - } - function readTagProperty(state) { - var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 33) - return false; - if (state.tag !== null) { - throwError(state, "duplication of a tag property"); - } - ch = state.input.charCodeAt(++state.position); - if (ch === 60) { - isVerbatim = true; - ch = state.input.charCodeAt(++state.position); - } else if (ch === 33) { - isNamed = true; - tagHandle = "!!"; - ch = state.input.charCodeAt(++state.position); - } else { - tagHandle = "!"; - } - _position = state.position; - if (isVerbatim) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0 && ch !== 62); - if (state.position < state.length) { - tagName = state.input.slice(_position, state.position); - ch = state.input.charCodeAt(++state.position); - } else { - throwError(state, "unexpected end of the stream within a verbatim tag"); - } - } else { - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - if (ch === 33) { - if (!isNamed) { - tagHandle = state.input.slice(_position - 1, state.position + 1); - if (!PATTERN_TAG_HANDLE.test(tagHandle)) { - throwError(state, "named tag handle cannot contain such characters"); + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c160) { + s3 = peg$c160; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c161); + } + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c162(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - isNamed = true; - _position = state.position + 1; } else { - throwError(state, "tag suffix cannot contain exclamation marks"); + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c163) { + s3 = peg$c163; + peg$currPos += 3; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c164); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c165(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s3 = peg$c31; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c166(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 36) { + s1 = peg$c167; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c168); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c166(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } } - } - ch = state.input.charCodeAt(++state.position); - } - tagName = state.input.slice(_position, state.position); - if (PATTERN_FLOW_INDICATORS.test(tagName)) { - throwError(state, "tag suffix cannot contain flow indicator characters"); - } - } - if (tagName && !PATTERN_TAG_URI.test(tagName)) { - throwError(state, "tag name cannot contain such characters: " + tagName); - } - try { - tagName = decodeURIComponent(tagName); - } catch (err) { - throwError(state, "tag name is malformed: " + tagName); - } - if (isVerbatim) { - state.tag = tagName; - } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { - state.tag = state.tagMap[tagHandle] + tagName; - } else if (tagHandle === "!") { - state.tag = "!" + tagName; - } else if (tagHandle === "!!") { - state.tag = "tag:yaml.org,2002:" + tagName; - } else { - throwError(state, 'undeclared tag handle "' + tagHandle + '"'); - } - return true; - } - function readAnchorProperty(state) { - var _position, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 38) - return false; - if (state.anchor !== null) { - throwError(state, "duplication of an anchor property"); - } - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (state.position === _position) { - throwError(state, "name of an anchor node must contain at least one character"); - } - state.anchor = state.input.slice(_position, state.position); - return true; - } - function readAlias(state) { - var _position, alias, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 42) - return false; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (state.position === _position) { - throwError(state, "name of an alias node must contain at least one character"); - } - alias = state.input.slice(_position, state.position); - if (!_hasOwnProperty.call(state.anchorMap, alias)) { - throwError(state, 'unidentified alias "' + alias + '"'); - } - state.result = state.anchorMap[alias]; - skipSeparationSpace(state, true, -1); - return true; - } - function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { - var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, typeList, type, flowIndent, blockIndent; - if (state.listener !== null) { - state.listener("open", state); - } - state.tag = null; - state.anchor = null; - state.kind = null; - state.result = null; - allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext; - if (allowToSeek) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; } } + return s0; } - if (indentStatus === 1) { - while (readTagProperty(state) || readAnchorProperty(state)) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - allowBlockCollections = allowBlockStyles; - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } + function peg$parseGlob() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseGlobText(); + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c169(s1); + if (s2) { + s2 = void 0; } else { - allowBlockCollections = false; + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c170(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - if (allowBlockCollections) { - allowBlockCollections = atNewLine || allowCompact; - } - if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { - if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { - flowIndent = parentIndent; + function peg$parseGlobText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; } else { - flowIndent = parentIndent + 1; + peg$currPos = s3; + s3 = peg$FAILED; } - blockIndent = state.position - state.lineStart; - if (indentStatus === 1) { - if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) { - hasContent = true; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; } else { - if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) { - hasContent = true; - } else if (readAlias(state)) { - hasContent = true; - if (state.tag !== null || state.anchor !== null) { - throwError(state, "alias node should not have any properties"); + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } } - } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { - hasContent = true; - if (state.tag === null) { - state.tag = "?"; + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } } - } else if (indentStatus === 0) { - hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); + } else { + s1 = peg$FAILED; } - } - if (state.tag === null) { - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - } else if (state.tag === "?") { - if (state.result !== null && state.kind !== "scalar") { - throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + s0 = s1; + return s0; + } + function peg$parseEnvVariable() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c171.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c172); + } } - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; - if (type.resolve(state.result)) { - state.result = type.construct(state.result); - state.tag = type.tag; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c171.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c172); + } } - break; } + } else { + s1 = peg$FAILED; } - } else if (state.tag !== "!") { - if (_hasOwnProperty.call(state.typeMap[state.kind || "fallback"], state.tag)) { - type = state.typeMap[state.kind || "fallback"][state.tag]; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c173(); + } + s0 = s1; + return s0; + } + function peg$parseIdentifier() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; } else { - type = null; - typeList = state.typeMap.multi[state.kind || "fallback"]; - for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) { - if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) { - type = typeList[typeIndex]; - break; - } + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); } } - if (!type) { - throwError(state, "unknown tag !<" + state.tag + ">"); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); + } + } + } + } else { + s1 = peg$FAILED; } - if (state.result !== null && type.kind !== state.kind) { - throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c173(); } - if (!type.resolve(state.result, state.tag)) { - throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag"); + s0 = s1; + return s0; + } + function peg$parseSpecialShellChars() { + var s0; + if (peg$c176.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; } else { - state.result = type.construct(state.result, state.tag); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c177); } } + return s0; } - if (state.listener !== null) { - state.listener("close", state); - } - return state.tag !== null || state.anchor !== null || hasContent; - } - function readDocument(state) { - var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch; - state.version = null; - state.checkLineBreaks = state.legacy; - state.tagMap = Object.create(null); - state.anchorMap = Object.create(null); - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - if (state.lineIndent > 0 || ch !== 37) { - break; - } - hasDirectives = true; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - directiveName = state.input.slice(_position, state.position); - directiveArgs = []; - if (directiveName.length < 1) { - throwError(state, "directive name must not be less than one character in length"); - } - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0 && !is_EOL(ch)); - break; - } - if (is_EOL(ch)) - break; - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); + function peg$parseGlobSpecialShellChars() { + var s0; + if (peg$c178.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c179); } - directiveArgs.push(state.input.slice(_position, state.position)); } - if (ch !== 0) - readLineBreak(state); - if (_hasOwnProperty.call(directiveHandlers, directiveName)) { - directiveHandlers[directiveName](state, directiveName, directiveArgs); + return s0; + } + function peg$parseS() { + var s0, s1; + s0 = []; + if (peg$c180.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; } else { - throwWarning(state, 'unknown document directive "' + directiveName + '"'); + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c181); + } } - } - skipSeparationSpace(state, true, -1); - if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) { - state.position += 3; - skipSeparationSpace(state, true, -1); - } else if (hasDirectives) { - throwError(state, "directives end mark is expected"); - } - composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); - skipSeparationSpace(state, true, -1); - if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { - throwWarning(state, "non-ASCII line breaks are interpreted as content"); - } - state.documents.push(state.result); - if (state.position === state.lineStart && testDocumentSeparator(state)) { - if (state.input.charCodeAt(state.position) === 46) { - state.position += 3; - skipSeparationSpace(state, true, -1); + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c180.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c181); + } + } + } + } else { + s0 = peg$FAILED; } - return; + return s0; } - if (state.position < state.length - 1) { - throwError(state, "end of the stream or a document separator is expected"); + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; } else { - return; - } - } - function loadDocuments(input, options) { - input = String(input); - options = options || {}; - if (input.length !== 0) { - if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) { - input += "\n"; - } - if (input.charCodeAt(0) === 65279) { - input = input.slice(1); + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } - var state = new State(input, options); - var nullpos = input.indexOf("\0"); - if (nullpos !== -1) { - state.position = nullpos; - throwError(state, "null byte is not allowed in input"); - } - state.input += "\0"; - while (state.input.charCodeAt(state.position) === 32) { - state.lineIndent += 1; - state.position += 1; - } - while (state.position < state.length - 1) { - readDocument(state); - } - return state.documents; - } - function loadAll(input, iterator, options) { - if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") { - options = iterator; - iterator = null; - } - var documents = loadDocuments(input, options); - if (typeof iterator !== "function") { - return documents; - } - for (var index = 0, length = documents.length; index < length; index += 1) { - iterator(documents[index]); - } - } - function load(input, options) { - var documents = loadDocuments(input, options); - if (documents.length === 0) { - return void 0; - } else if (documents.length === 1) { - return documents[0]; - } - throw new YAMLException("expected a single document in the stream, but found more"); } - module2.exports.loadAll = loadAll; - module2.exports.load = load; + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; } }); -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/dumper.js -var require_dumper = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/lib/dumper.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/shell.js +var require_shell2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/shell.js"(exports2) { "use strict"; - var common = require_common2(); - var YAMLException = require_exception(); - var DEFAULT_SCHEMA = require_default(); - var _toString = Object.prototype.toString; - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var CHAR_BOM = 65279; - var CHAR_TAB = 9; - var CHAR_LINE_FEED = 10; - var CHAR_CARRIAGE_RETURN = 13; - var CHAR_SPACE = 32; - var CHAR_EXCLAMATION = 33; - var CHAR_DOUBLE_QUOTE = 34; - var CHAR_SHARP = 35; - var CHAR_PERCENT = 37; - var CHAR_AMPERSAND = 38; - var CHAR_SINGLE_QUOTE = 39; - var CHAR_ASTERISK = 42; - var CHAR_COMMA = 44; - var CHAR_MINUS = 45; - var CHAR_COLON = 58; - var CHAR_EQUALS = 61; - var CHAR_GREATER_THAN = 62; - var CHAR_QUESTION = 63; - var CHAR_COMMERCIAL_AT = 64; - var CHAR_LEFT_SQUARE_BRACKET = 91; - var CHAR_RIGHT_SQUARE_BRACKET = 93; - var CHAR_GRAVE_ACCENT = 96; - var CHAR_LEFT_CURLY_BRACKET = 123; - var CHAR_VERTICAL_LINE = 124; - var CHAR_RIGHT_CURLY_BRACKET = 125; - var ESCAPE_SEQUENCES = {}; - ESCAPE_SEQUENCES[0] = "\\0"; - ESCAPE_SEQUENCES[7] = "\\a"; - ESCAPE_SEQUENCES[8] = "\\b"; - ESCAPE_SEQUENCES[9] = "\\t"; - ESCAPE_SEQUENCES[10] = "\\n"; - ESCAPE_SEQUENCES[11] = "\\v"; - ESCAPE_SEQUENCES[12] = "\\f"; - ESCAPE_SEQUENCES[13] = "\\r"; - ESCAPE_SEQUENCES[27] = "\\e"; - ESCAPE_SEQUENCES[34] = '\\"'; - ESCAPE_SEQUENCES[92] = "\\\\"; - ESCAPE_SEQUENCES[133] = "\\N"; - ESCAPE_SEQUENCES[160] = "\\_"; - ESCAPE_SEQUENCES[8232] = "\\L"; - ESCAPE_SEQUENCES[8233] = "\\P"; - var DEPRECATED_BOOLEANS_SYNTAX = [ - "y", - "Y", - "yes", - "Yes", - "YES", - "on", - "On", - "ON", - "n", - "N", - "no", - "No", - "NO", - "off", - "Off", - "OFF" - ]; - var DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; - var SINGLE_LINE_KEYS = { - cpu: true, - engines: true, - os: true, - resolution: true - }; - function compileStyleMap(schema, map) { - var result, keys, index, length, tag, style, type; - if (map === null) - return {}; - result = {}; - keys = Object.keys(map); - for (index = 0, length = keys.length; index < length; index += 1) { - tag = keys[index]; - style = String(map[tag]); - if (tag.slice(0, 2) === "!!") { - tag = "tag:yaml.org,2002:" + tag.slice(2); - } - type = schema.compiledTypeMap["fallback"][tag]; - if (type && _hasOwnProperty.call(type.styleAliases, style)) { - style = type.styleAliases[style]; - } - result[tag] = style; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyShell = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyValueArgument = exports2.stringifyRedirectArgument = exports2.stringifyArgument = exports2.stringifyEnvSegment = exports2.stringifyCommand = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyShellLine = exports2.parseShell = void 0; + var shell_1 = require_shell(); + function parseShell(source, options = { isGlobPattern: () => false }) { + try { + return (0, shell_1.parse)(source, options); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } - return result; } - function encodeHex(character) { - var string, handle, length; - string = character.toString(16).toUpperCase(); - if (character <= 255) { - handle = "x"; - length = 2; - } else if (character <= 65535) { - handle = "u"; - length = 4; - } else if (character <= 4294967295) { - handle = "U"; - length = 8; - } else { - throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF"); + exports2.parseShell = parseShell; + function stringifyShellLine(shellLine, { endSemicolon = false } = {}) { + return shellLine.map(({ command, type }, index) => `${stringifyCommandLine(command)}${type === `;` ? index !== shellLine.length - 1 || endSemicolon ? `;` : `` : ` &`}`).join(` `); + } + exports2.stringifyShellLine = stringifyShellLine; + exports2.stringifyShell = stringifyShellLine; + function stringifyCommandLine(commandLine) { + return `${stringifyCommandChain(commandLine.chain)}${commandLine.then ? ` ${stringifyCommandLineThen(commandLine.then)}` : ``}`; + } + exports2.stringifyCommandLine = stringifyCommandLine; + function stringifyCommandLineThen(commandLineThen) { + return `${commandLineThen.type} ${stringifyCommandLine(commandLineThen.line)}`; + } + exports2.stringifyCommandLineThen = stringifyCommandLineThen; + function stringifyCommandChain(commandChain) { + return `${stringifyCommand(commandChain)}${commandChain.then ? ` ${stringifyCommandChainThen(commandChain.then)}` : ``}`; + } + exports2.stringifyCommandChain = stringifyCommandChain; + function stringifyCommandChainThen(commandChainThen) { + return `${commandChainThen.type} ${stringifyCommandChain(commandChainThen.chain)}`; + } + exports2.stringifyCommandChainThen = stringifyCommandChainThen; + function stringifyCommand(command) { + switch (command.type) { + case `command`: + return `${command.envs.length > 0 ? `${command.envs.map((env) => stringifyEnvSegment(env)).join(` `)} ` : ``}${command.args.map((argument) => stringifyArgument(argument)).join(` `)}`; + case `subshell`: + return `(${stringifyShellLine(command.subshell)})${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `group`: + return `{ ${stringifyShellLine(command.group, { + /* Bash compat */ + endSemicolon: true + })} }${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `envs`: + return command.envs.map((env) => stringifyEnvSegment(env)).join(` `); + default: + throw new Error(`Unsupported command type: "${command.type}"`); } - return "\\" + handle + common.repeat("0", length - string.length) + string; } - var QUOTING_TYPE_SINGLE = 1; - var QUOTING_TYPE_DOUBLE = 2; - function State(options) { - this.blankLines = options["blankLines"] || false; - this.schema = options["schema"] || DEFAULT_SCHEMA; - this.indent = Math.max(1, options["indent"] || 2); - this.noArrayIndent = options["noArrayIndent"] || false; - this.skipInvalid = options["skipInvalid"] || false; - this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"]; - this.styleMap = compileStyleMap(this.schema, options["styles"] || null); - this.sortKeys = options["sortKeys"] || false; - this.lineWidth = options["lineWidth"] || 80; - this.noRefs = options["noRefs"] || false; - this.noCompatMode = options["noCompatMode"] || false; - this.condenseFlow = options["condenseFlow"] || false; - this.quotingType = options["quotingType"] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE; - this.forceQuotes = options["forceQuotes"] || false; - this.replacer = typeof options["replacer"] === "function" ? options["replacer"] : null; - this.implicitTypes = this.schema.compiledImplicit; - this.explicitTypes = this.schema.compiledExplicit; - this.tag = null; - this.result = ""; - this.duplicates = []; - this.usedDuplicates = null; + exports2.stringifyCommand = stringifyCommand; + function stringifyEnvSegment(envSegment) { + return `${envSegment.name}=${envSegment.args[0] ? stringifyValueArgument(envSegment.args[0]) : ``}`; } - function indentString(string, spaces) { - var ind = common.repeat(" ", spaces), position = 0, next = -1, result = "", line, length = string.length; - while (position < length) { - next = string.indexOf("\n", position); - if (next === -1) { - line = string.slice(position); - position = length; - } else { - line = string.slice(position, next + 1); - position = next + 1; + exports2.stringifyEnvSegment = stringifyEnvSegment; + function stringifyArgument(argument) { + switch (argument.type) { + case `redirection`: + return stringifyRedirectArgument(argument); + case `argument`: + return stringifyValueArgument(argument); + default: + throw new Error(`Unsupported argument type: "${argument.type}"`); + } + } + exports2.stringifyArgument = stringifyArgument; + function stringifyRedirectArgument(argument) { + return `${argument.subtype} ${argument.args.map((argument2) => stringifyValueArgument(argument2)).join(` `)}`; + } + exports2.stringifyRedirectArgument = stringifyRedirectArgument; + function stringifyValueArgument(argument) { + return argument.segments.map((segment) => stringifyArgumentSegment(segment)).join(``); + } + exports2.stringifyValueArgument = stringifyValueArgument; + function stringifyArgumentSegment(argumentSegment) { + const doubleQuoteIfRequested = (string, quote) => quote ? `"${string}"` : string; + const quoteIfNeeded = (text) => { + if (text === ``) + return `""`; + if (!text.match(/[(){}<>$|&; \t"']/)) + return text; + return `$'${text.replace(/\\/g, `\\\\`).replace(/'/g, `\\'`).replace(/\f/g, `\\f`).replace(/\n/g, `\\n`).replace(/\r/g, `\\r`).replace(/\t/g, `\\t`).replace(/\v/g, `\\v`).replace(/\0/g, `\\0`)}'`; + }; + switch (argumentSegment.type) { + case `text`: + return quoteIfNeeded(argumentSegment.text); + case `glob`: + return argumentSegment.pattern; + case `shell`: + return doubleQuoteIfRequested(`\${${stringifyShellLine(argumentSegment.shell)}}`, argumentSegment.quoted); + case `variable`: + return doubleQuoteIfRequested(typeof argumentSegment.defaultValue === `undefined` ? typeof argumentSegment.alternativeValue === `undefined` ? `\${${argumentSegment.name}}` : argumentSegment.alternativeValue.length === 0 ? `\${${argumentSegment.name}:+}` : `\${${argumentSegment.name}:+${argumentSegment.alternativeValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}` : argumentSegment.defaultValue.length === 0 ? `\${${argumentSegment.name}:-}` : `\${${argumentSegment.name}:-${argumentSegment.defaultValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}`, argumentSegment.quoted); + case `arithmetic`: + return `$(( ${stringifyArithmeticExpression(argumentSegment.arithmetic)} ))`; + default: + throw new Error(`Unsupported argument segment type: "${argumentSegment.type}"`); + } + } + exports2.stringifyArgumentSegment = stringifyArgumentSegment; + function stringifyArithmeticExpression(argument) { + const getOperator = (type) => { + switch (type) { + case `addition`: + return `+`; + case `subtraction`: + return `-`; + case `multiplication`: + return `*`; + case `division`: + return `/`; + default: + throw new Error(`Can't extract operator from arithmetic expression of type "${type}"`); } - if (line.length && line !== "\n") - result += ind; - result += line; + }; + const parenthesizeIfRequested = (string, parenthesize) => parenthesize ? `( ${string} )` : string; + const stringifyAndParenthesizeIfNeeded = (expression) => ( + // Right now we parenthesize all arithmetic operator expressions because it's easier + parenthesizeIfRequested(stringifyArithmeticExpression(expression), ![`number`, `variable`].includes(expression.type)) + ); + switch (argument.type) { + case `number`: + return String(argument.value); + case `variable`: + return argument.name; + default: + return `${stringifyAndParenthesizeIfNeeded(argument.left)} ${getOperator(argument.type)} ${stringifyAndParenthesizeIfNeeded(argument.right)}`; } - return result; - } - function generateNextLine(state, level, doubleLine) { - return "\n" + (doubleLine ? "\n" : "") + common.repeat(" ", state.indent * level); } - function testImplicitResolving(state, str) { - var index, length, type; - for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { - type = state.implicitTypes[index]; - if (type.resolve(str)) { - return true; - } + exports2.stringifyArithmeticExpression = stringifyArithmeticExpression; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js +var require_resolution = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; } - return false; - } - function isWhitespace(c) { - return c === CHAR_SPACE || c === CHAR_TAB; - } - function isPrintable(c) { - return 32 <= c && c <= 126 || 161 <= c && c <= 55295 && c !== 8232 && c !== 8233 || 57344 <= c && c <= 65533 && c !== CHAR_BOM || 65536 <= c && c <= 1114111; - } - function isNsCharOrWhitespace(c) { - return isPrintable(c) && c !== CHAR_BOM && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; - } - function isPlainSafe(c, prev, inblock) { - var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c); - var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c); - return (inblock ? cIsNsCharOrWhitespace : cIsNsCharOrWhitespace && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET) && c !== CHAR_SHARP && !(prev === CHAR_COLON && !cIsNsChar) || isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c === CHAR_SHARP || prev === CHAR_COLON && cIsNsChar; - } - function isPlainSafeFirst(c) { - return isPrintable(c) && c !== CHAR_BOM && !isWhitespace(c) && c !== CHAR_MINUS && c !== CHAR_QUESTION && c !== CHAR_COLON && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_SHARP && c !== CHAR_AMPERSAND && c !== CHAR_ASTERISK && c !== CHAR_EXCLAMATION && c !== CHAR_VERTICAL_LINE && c !== CHAR_EQUALS && c !== CHAR_GREATER_THAN && c !== CHAR_SINGLE_QUOTE && c !== CHAR_DOUBLE_QUOTE && c !== CHAR_PERCENT && c !== CHAR_COMMERCIAL_AT && c !== CHAR_GRAVE_ACCENT; - } - function isPlainSafeLast(c) { - return !isWhitespace(c) && c !== CHAR_COLON; + ctor.prototype = parent.prototype; + child.prototype = new ctor(); } - function codePointAt(string, pos) { - var first = string.charCodeAt(pos), second; - if (first >= 55296 && first <= 56319 && pos + 1 < string.length) { - second = string.charCodeAt(pos + 1); - if (second >= 56320 && second <= 57343) { - return (first - 55296) * 1024 + second - 56320 + 65536; - } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); } - return first; - } - function needIndentIndicator(string) { - var leadingSpaceRe = /^\n* /; - return leadingSpaceRe.test(string); } - var STYLE_PLAIN = 1; - var STYLE_SINGLE = 2; - var STYLE_LITERAL = 3; - var STYLE_FOLDED = 4; - var STYLE_DOUBLE = 5; - function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType, quotingType, forceQuotes, inblock) { - var i; - var char = 0; - var prevChar = null; - var hasLineBreak = false; - var hasFoldableLine = false; - var shouldTrackWidth = lineWidth !== -1; - var previousLineBreak = -1; - var plain = isPlainSafeFirst(codePointAt(string, 0)) && isPlainSafeLast(codePointAt(string, string.length - 1)); - if (singleLineOnly || forceQuotes) { - for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { - char = codePointAt(string, i); - if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - plain = plain && isPlainSafe(char, prevChar, inblock); - prevChar = char; - } - } else { - for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { - char = codePointAt(string, i); - if (char === CHAR_LINE_FEED) { - hasLineBreak = true; - if (shouldTrackWidth) { - hasFoldableLine = hasFoldableLine || i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "; - previousLineBreak = i; - } - } else if (!isPrintable(char)) { - return STYLE_DOUBLE; + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } - plain = plain && isPlainSafe(char, prevChar, inblock); - prevChar = char; + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "); + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); } - if (!hasLineBreak && !hasFoldableLine) { - if (plain && !forceQuotes && !testAmbiguousType(string)) { - return STYLE_PLAIN; - } - return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - if (indentPerLevel > 9 && needIndentIndicator(string)) { - return STYLE_DOUBLE; + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - if (!forceQuotes) { - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); } - return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; - } - function writeScalar(state, string, level, iskey, inblock, singleLO) { - state.dump = function() { - if (string.length === 0) { - return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''"; + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - if (!state.noCompatMode) { - if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) { - return state.quotingType === QUOTING_TYPE_DOUBLE ? '"' + string + '"' : "'" + string + "'"; + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } } + descriptions.length = j; } - var indent = state.indent * Math.max(1, level); - var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); - var singleLineOnly = iskey || singleLO || state.flowLevel > -1 && level >= state.flowLevel; - function testAmbiguity(string2) { - return testImplicitResolving(state, string2); - } - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity, state.quotingType, state.forceQuotes && !iskey, inblock)) { - case STYLE_PLAIN: - return string; - case STYLE_SINGLE: - return "'" + string.replace(/'/g, "''") + "'"; - case STYLE_LITERAL: - return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent)); - case STYLE_FOLDED: - return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); - case STYLE_DOUBLE: - return '"' + escapeString(string, lineWidth) + '"'; + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; default: - throw new YAMLException("impossible error: invalid scalar style"); + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; } - }(); - } - function blockHeader(string, indentPerLevel) { - var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ""; - var clip = string[string.length - 1] === "\n"; - var keep = clip && (string[string.length - 2] === "\n" || string === "\n"); - var chomp = keep ? "+" : clip ? "" : "-"; - return indentIndicator + chomp + "\n"; - } - function dropEndingNewline(string) { - return string[string.length - 1] === "\n" ? string.slice(0, -1) : string; - } - function foldString(string, width) { - var lineRe = /(\n+)([^\n]*)/g; - var result = function() { - var nextLF = string.indexOf("\n"); - nextLF = nextLF !== -1 ? nextLF : string.length; - lineRe.lastIndex = nextLF; - return foldLine(string.slice(0, nextLF), width); - }(); - var prevMoreIndented = string[0] === "\n" || string[0] === " "; - var moreIndented; - var match; - while (match = lineRe.exec(string)) { - var prefix = match[1], line = match[2]; - moreIndented = line[0] === " "; - result += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width); - prevMoreIndented = moreIndented; } - return result; - } - function foldLine(line, width) { - if (line === "" || line[0] === " ") - return line; - var breakRe = / [^ ]/g; - var match; - var start = 0, end, curr = 0, next = 0; - var result = ""; - while (match = breakRe.exec(line)) { - next = match.index; - if (next - start > width) { - end = curr > start ? curr : next; - result += "\n" + line.slice(start, end); - start = end + 1; + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { resolution: peg$parseresolution }, peg$startRuleFunction = peg$parseresolution, peg$c0 = "/", peg$c1 = peg$literalExpectation("/", false), peg$c2 = function(from, descriptor) { + return { from, descriptor }; + }, peg$c3 = function(descriptor) { + return { descriptor }; + }, peg$c4 = "@", peg$c5 = peg$literalExpectation("@", false), peg$c6 = function(fullName, description) { + return { fullName, description }; + }, peg$c7 = function(fullName) { + return { fullName }; + }, peg$c8 = function() { + return text(); + }, peg$c9 = /^[^\/@]/, peg$c10 = peg$classExpectation(["/", "@"], true, false), peg$c11 = /^[^\/]/, peg$c12 = peg$classExpectation(["/"], true, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); } - curr = next; + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; } - result += "\n"; - if (line.length - start > width && curr > start) { - result += line.slice(start, curr) + "\n" + line.slice(curr + 1); - } else { - result += line.slice(start); + function text() { + return input.substring(peg$savedPos, peg$currPos); } - return result.slice(1); - } - function escapeString(string) { - var result = ""; - var char = 0; - var escapeSeq; - for (var i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { - char = codePointAt(string, i); - escapeSeq = ESCAPE_SEQUENCES[char]; - if (!escapeSeq && isPrintable(char)) { - result += string[i]; - if (char >= 65536) - result += string[i + 1]; - } else { - result += escapeSeq || encodeHex(char); - } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); } - return result; - } - function writeFlowSequence(state, level, object) { - var _result = "", _tag = state.tag, index, length, value; - for (index = 0, length = object.length; index < length; index += 1) { - value = object[index]; - if (state.replacer) { - value = state.replacer.call(object, String(index), value); - } - if (writeNode(state, level, value, false, false) || typeof value === "undefined" && writeNode(state, level, null, false, false)) { - if (_result !== "") - _result += "," + (!state.condenseFlow ? " " : ""); - _result += state.dump; - } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); } - state.tag = _tag; - state.dump = "[" + _result + "]"; - } - function writeBlockSequence(state, level, object, compact) { - var _result = "", _tag = state.tag, index, length, value; - for (index = 0, length = object.length; index < length; index += 1) { - value = object[index]; - if (state.replacer) { - value = state.replacer.call(object, String(index), value); - } - if (writeNode(state, level + 1, value, true, true, false, true) || typeof value === "undefined" && writeNode(state, level + 1, null, true, true, false, true)) { - if (!compact || _result !== "") { - _result += generateNextLine(state, level); + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; } - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - _result += "-"; - } else { - _result += "- "; + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; } - _result += state.dump; + peg$posDetailsCache[pos] = details; + return details; } } - state.tag = _tag; - state.dump = _result || "[]"; - } - function writeFlowMapping(state, level, object, singleLineOnly) { - var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer; - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ""; - if (_result !== "") - pairBuffer += ", "; - if (state.condenseFlow) - pairBuffer += '"'; - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - if (state.replacer) { - objectValue = state.replacer.call(object, objectKey, objectValue); - } - if (!writeNode(state, level, objectKey, false, false, singleLineOnly)) { - continue; + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } + }; + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; } - if (state.dump.length > 1024) - pairBuffer += "? "; - pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " "); - if (!writeNode(state, level, objectValue, false, false, singleLineOnly)) { - continue; + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } - pairBuffer += state.dump; - _result += pairBuffer; + peg$maxFailExpected.push(expected2); } - state.tag = _tag; - state.dump = "{" + _result + "}"; - } - function writeBlockMapping(state, level, object, compact, doubleLine) { - var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer; - if (state.sortKeys === true) { - objectKeyList.sort(); - } else if (typeof state.sortKeys === "function") { - objectKeyList.sort(state.sortKeys); - } else if (state.sortKeys) { - throw new YAMLException("sortKeys must be a boolean or a function"); + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); } - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ""; - if (!compact || _result !== "") { - pairBuffer += generateNextLine(state, level, doubleLine); - } - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - if (state.replacer) { - objectValue = state.replacer.call(object, objectKey, objectValue); + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseresolution() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s2 = peg$c0; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parsespecifier(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (!writeNode(state, level + 1, objectKey, true, true, true)) { - continue; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s1); + } + s0 = s1; } - explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024; - if (explicitPair) { - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += "?"; + return s0; + } + function peg$parsespecifier() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 64) { + s2 = peg$c4; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parsedescription(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c6(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - pairBuffer += "? "; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - pairBuffer += state.dump; - if (explicitPair) { - pairBuffer += generateNextLine(state, level); - } - if (!writeNode(state, level + 1, objectValue, true, explicitPair, null, null, objectKey)) { - continue; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c7(s1); + } + s0 = s1; } - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += ":"; + return s0; + } + function peg$parsefullName() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 64) { + s1 = peg$c4; + peg$currPos++; } else { - pairBuffer += ": "; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } } - pairBuffer += state.dump; - _result += pairBuffer; - } - state.tag = _tag; - state.dump = _result || "{}"; - } - function detectType(state, object, explicit) { - var _result, typeList, index, length, type, style; - typeList = explicit ? state.explicitTypes : state.implicitTypes; - for (index = 0, length = typeList.length; index < length; index += 1) { - type = typeList[index]; - if ((type.instanceOf || type.predicate) && (!type.instanceOf || typeof object === "object" && object instanceof type.instanceOf) && (!type.predicate || type.predicate(object))) { - if (explicit) { - if (type.multi && type.representName) { - state.tag = type.representName(object); + if (s1 !== peg$FAILED) { + s2 = peg$parseident(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s3 = peg$c0; + peg$currPos++; } else { - state.tag = type.tag; + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } } - } else { - state.tag = "?"; - } - if (type.represent) { - style = state.styleMap[type.tag] || type.defaultStyle; - if (_toString.call(type.represent) === "[object Function]") { - _result = type.represent(object, style); - } else if (_hasOwnProperty.call(type.represent, style)) { - _result = type.represent[style](object, style); + if (s3 !== peg$FAILED) { + s4 = peg$parseident(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - throw new YAMLException("!<" + type.tag + '> tag resolver accepts not "' + style + '" style'); + peg$currPos = s0; + s0 = peg$FAILED; } - state.dump = _result; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return true; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseident(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + } + s0 = s1; + } + return s0; } - return false; - } - function writeNode(state, level, object, block, compact, iskey, isblockseq, objectKey, singleLineOnly) { - state.tag = null; - state.dump = object; - if (!detectType(state, object, false)) { - detectType(state, object, true); - } - var type = _toString.call(state.dump); - var inblock = block; - var tagStr; - if (block) { - block = state.flowLevel < 0 || state.flowLevel > level; - } - var objectOrArray = type === "[object Object]" || type === "[object Array]", duplicateIndex, duplicate; - if (objectOrArray) { - duplicateIndex = state.duplicates.indexOf(object); - duplicate = duplicateIndex !== -1; - } - if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) { - compact = false; - } - if (duplicate && state.usedDuplicates[duplicateIndex]) { - state.dump = "*ref_" + duplicateIndex; - } else { - if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { - state.usedDuplicates[duplicateIndex] = true; + function peg$parseident() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } } - if (type === "[object Object]") { - singleLineOnly = SINGLE_LINE_KEYS[objectKey]; - if (block && Object.keys(state.dump).length !== 0 && !singleLineOnly) { - var doubleLine = state.blankLines ? objectKey === "packages" || objectKey === "importers" || level === 0 : false; - writeBlockMapping(state, level, state.dump, compact, doubleLine); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + state.dump; - } - } else { - writeFlowMapping(state, level, state.dump, singleLineOnly); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + " " + state.dump; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } } } - } else if (type === "[object Array]") { - singleLineOnly = SINGLE_LINE_KEYS[objectKey]; - if (block && state.dump.length !== 0 && !singleLineOnly) { - if (state.noArrayIndent && !isblockseq && level > 0) { - writeBlockSequence(state, level - 1, state.dump, compact); + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + } + s0 = s1; + return s0; + } + function peg$parsedescription() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); + } + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; } else { - writeBlockSequence(state, level, state.dump, compact); - } - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + state.dump; - } - } else { - writeFlowSequence(state, level, state.dump, singleLineOnly); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + " " + state.dump; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); + } } } - } else if (type === "[object String]") { - if (state.tag !== "?") { - writeScalar(state, state.dump, level, iskey, inblock, singleLineOnly); - } - } else if (type === "[object Undefined]") { - return false; } else { - if (state.skipInvalid) - return false; - throw new YAMLException("unacceptable kind of an object to dump " + type); + s1 = peg$FAILED; } - if (state.tag !== null && state.tag !== "?") { - tagStr = encodeURI(state.tag[0] === "!" ? state.tag.slice(1) : state.tag).replace(/!/g, "%21"); - if (state.tag[0] === "!") { - tagStr = "!" + tagStr; - } else if (tagStr.slice(0, 18) === "tag:yaml.org,2002:") { - tagStr = "!!" + tagStr.slice(18); - } else { - tagStr = "!<" + tagStr + ">"; - } - state.dump = tagStr + " " + state.dump; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); } + s0 = s1; + return s0; + } + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); + } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } - return true; } - function getDuplicateReferences(object, state) { - var objects = [], duplicatesIndexes = [], index, length; - inspectNode(object, objects, duplicatesIndexes); - for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { - state.duplicates.push(objects[duplicatesIndexes[index]]); + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/resolution.js +var require_resolution2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/resolution.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyResolution = exports2.parseResolution = void 0; + var resolution_1 = require_resolution(); + function parseResolution(source) { + const legacyResolution = source.match(/^\*{1,2}\/(.*)/); + if (legacyResolution) + throw new Error(`The override for '${source}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${legacyResolution[1]}' instead.`); + try { + return (0, resolution_1.parse)(source); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } - state.usedDuplicates = new Array(length); } - function inspectNode(object, objects, duplicatesIndexes) { - var objectKeyList, index, length; - if (object !== null && typeof object === "object") { - index = objects.indexOf(object); - if (index !== -1) { - if (duplicatesIndexes.indexOf(index) === -1) { - duplicatesIndexes.push(index); - } - } else { - objects.push(object); - if (Array.isArray(object)) { - for (index = 0, length = object.length; index < length; index += 1) { - inspectNode(object[index], objects, duplicatesIndexes); - } - } else { - objectKeyList = Object.keys(object); - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); - } - } + exports2.parseResolution = parseResolution; + function stringifyResolution(resolution) { + let str = ``; + if (resolution.from) { + str += resolution.from.fullName; + if (resolution.from.description) + str += `@${resolution.from.description}`; + str += `/`; + } + str += resolution.descriptor.fullName; + if (resolution.descriptor.description) + str += `@${resolution.descriptor.description}`; + return str; + } + exports2.stringifyResolution = stringifyResolution; + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/common.js +var require_common6 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/common.js"(exports2, module2) { + "use strict"; + function isNothing(subject) { + return typeof subject === "undefined" || subject === null; + } + function isObject(subject) { + return typeof subject === "object" && subject !== null; + } + function toArray(sequence) { + if (Array.isArray(sequence)) + return sequence; + else if (isNothing(sequence)) + return []; + return [sequence]; + } + function extend(target, source) { + var index, length, key, sourceKeys; + if (source) { + sourceKeys = Object.keys(source); + for (index = 0, length = sourceKeys.length; index < length; index += 1) { + key = sourceKeys[index]; + target[key] = source[key]; } } + return target; } - function dump(input, options) { - options = options || {}; - var state = new State(options); - if (!state.noRefs) - getDuplicateReferences(input, state); - var value = input; - if (state.replacer) { - value = state.replacer.call({ "": value }, "", value); + function repeat(string, count) { + var result2 = "", cycle; + for (cycle = 0; cycle < count; cycle += 1) { + result2 += string; } - if (writeNode(state, 0, value, true, true)) - return state.dump + "\n"; - return ""; + return result2; } - module2.exports.dump = dump; + function isNegativeZero(number) { + return number === 0 && Number.NEGATIVE_INFINITY === 1 / number; + } + module2.exports.isNothing = isNothing; + module2.exports.isObject = isObject; + module2.exports.toArray = toArray; + module2.exports.repeat = repeat; + module2.exports.isNegativeZero = isNegativeZero; + module2.exports.extend = extend; } }); -// ../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/index.js -var require_js_yaml = __commonJS({ - "../../node_modules/.pnpm/@zkochan+js-yaml@0.0.5/node_modules/@zkochan/js-yaml/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/exception.js +var require_exception2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/exception.js"(exports2, module2) { "use strict"; - var loader = require_loader(); - var dumper = require_dumper(); - function renamed(from, to) { - return function() { - throw new Error("Function yaml." + from + " is removed in js-yaml 4. Use yaml." + to + " instead, which is now safe by default."); - }; + function YAMLException(reason, mark) { + Error.call(this); + this.name = "YAMLException"; + this.reason = reason; + this.mark = mark; + this.message = (this.reason || "(unknown reason)") + (this.mark ? " " + this.mark.toString() : ""); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack || ""; + } } - module2.exports.Type = require_type2(); - module2.exports.Schema = require_schema(); - module2.exports.FAILSAFE_SCHEMA = require_failsafe(); - module2.exports.JSON_SCHEMA = require_json(); - module2.exports.CORE_SCHEMA = require_core2(); - module2.exports.DEFAULT_SCHEMA = require_default(); - module2.exports.load = loader.load; - module2.exports.loadAll = loader.loadAll; - module2.exports.dump = dumper.dump; - module2.exports.YAMLException = require_exception(); - module2.exports.safeLoad = renamed("safeLoad", "load"); - module2.exports.safeLoadAll = renamed("safeLoadAll", "loadAll"); - module2.exports.safeDump = renamed("safeDump", "dump"); + YAMLException.prototype = Object.create(Error.prototype); + YAMLException.prototype.constructor = YAMLException; + YAMLException.prototype.toString = function toString(compact) { + var result2 = this.name + ": "; + result2 += this.reason || "(unknown reason)"; + if (!compact && this.mark) { + result2 += " " + this.mark.toString(); + } + return result2; + }; + module2.exports = YAMLException; } }); -// ../../node_modules/.pnpm/write-yaml-file@4.2.0/node_modules/write-yaml-file/index.js -var require_write_yaml_file = __commonJS({ - "../../node_modules/.pnpm/write-yaml-file@4.2.0/node_modules/write-yaml-file/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/mark.js +var require_mark = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/mark.js"(exports2, module2) { "use strict"; - var path = require("path"); - var fs = require("fs"); - var writeFileAtomic = require_write_file_atomic(); - var YAML = require_js_yaml(); - var main = (fn2, fp, data, opts) => { - if (!fp) { - throw new TypeError("Expected a filepath"); + var common = require_common6(); + function Mark(name, buffer, position, line, column) { + this.name = name; + this.buffer = buffer; + this.position = position; + this.line = line; + this.column = column; + } + Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { + var head, start, tail, end, snippet; + if (!this.buffer) + return null; + indent = indent || 4; + maxLength = maxLength || 75; + head = ""; + start = this.position; + while (start > 0 && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(start - 1)) === -1) { + start -= 1; + if (this.position - start > maxLength / 2 - 1) { + head = " ... "; + start += 5; + break; + } } - if (data === void 0) { - throw new TypeError("Expected data to stringify"); + tail = ""; + end = this.position; + while (end < this.buffer.length && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(end)) === -1) { + end += 1; + if (end - this.position > maxLength / 2 - 1) { + tail = " ... "; + end -= 5; + break; + } } - opts = opts || {}; - const yaml = YAML.dump(data, opts); - return fn2(fp, yaml, { mode: opts.mode }); - }; - module2.exports = async (fp, data, opts) => { - await fs.promises.mkdir(path.dirname(fp), { recursive: true }); - return main(writeFileAtomic, fp, data, opts); + snippet = this.buffer.slice(start, end); + return common.repeat(" ", indent) + head + snippet + tail + "\n" + common.repeat(" ", indent + this.position - start + head.length) + "^"; }; - module2.exports.sync = (fp, data, opts) => { - fs.mkdirSync(path.dirname(fp), { recursive: true }); - main(writeFileAtomic.sync, fp, data, opts); + Mark.prototype.toString = function toString(compact) { + var snippet, where = ""; + if (this.name) { + where += 'in "' + this.name + '" '; + } + where += "at line " + (this.line + 1) + ", column " + (this.column + 1); + if (!compact) { + snippet = this.getSnippet(); + if (snippet) { + where += ":\n" + snippet; + } + } + return where; }; + module2.exports = Mark; } }); -// ../write-project-manifest/lib/index.js -var require_lib17 = __commonJS({ - "../write-project-manifest/lib/index.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type.js +var require_type3 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var json5_1 = __importDefault(require_lib16()); - var write_file_atomic_1 = __importDefault(require_write_file_atomic()); - var write_yaml_file_1 = __importDefault(require_write_yaml_file()); - var YAML_FORMAT = { - noCompatMode: true, - noRefs: true + var YAMLException = require_exception2(); + var TYPE_CONSTRUCTOR_OPTIONS = [ + "kind", + "resolve", + "construct", + "instanceOf", + "predicate", + "represent", + "defaultStyle", + "styleAliases" + ]; + var YAML_NODE_KINDS = [ + "scalar", + "sequence", + "mapping" + ]; + function compileStyleAliases(map) { + var result2 = {}; + if (map !== null) { + Object.keys(map).forEach(function(style) { + map[style].forEach(function(alias) { + result2[String(alias)] = style; + }); + }); + } + return result2; + } + function Type(tag, options) { + options = options || {}; + Object.keys(options).forEach(function(name) { + if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { + throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + } + }); + this.tag = tag; + this.kind = options["kind"] || null; + this.resolve = options["resolve"] || function() { + return true; + }; + this.construct = options["construct"] || function(data) { + return data; + }; + this.instanceOf = options["instanceOf"] || null; + this.predicate = options["predicate"] || null; + this.represent = options["represent"] || null; + this.defaultStyle = options["defaultStyle"] || null; + this.styleAliases = compileStyleAliases(options["styleAliases"] || null); + if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { + throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); + } + } + module2.exports = Type; + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema.js +var require_schema2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema.js"(exports2, module2) { + "use strict"; + var common = require_common6(); + var YAMLException = require_exception2(); + var Type = require_type3(); + function compileList(schema, name, result2) { + var exclude = []; + schema.include.forEach(function(includedSchema) { + result2 = compileList(includedSchema, name, result2); + }); + schema[name].forEach(function(currentType) { + result2.forEach(function(previousType, previousIndex) { + if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { + exclude.push(previousIndex); + } + }); + result2.push(currentType); + }); + return result2.filter(function(type, index) { + return exclude.indexOf(index) === -1; + }); + } + function compileMap() { + var result2 = { + scalar: {}, + sequence: {}, + mapping: {}, + fallback: {} + }, index, length; + function collectType(type) { + result2[type.kind][type.tag] = result2["fallback"][type.tag] = type; + } + for (index = 0, length = arguments.length; index < length; index += 1) { + arguments[index].forEach(collectType); + } + return result2; + } + function Schema(definition) { + this.include = definition.include || []; + this.implicit = definition.implicit || []; + this.explicit = definition.explicit || []; + this.implicit.forEach(function(type) { + if (type.loadKind && type.loadKind !== "scalar") { + throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); + } + }); + this.compiledImplicit = compileList(this, "implicit", []); + this.compiledExplicit = compileList(this, "explicit", []); + this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); + } + Schema.DEFAULT = null; + Schema.create = function createSchema() { + var schemas, types; + switch (arguments.length) { + case 1: + schemas = Schema.DEFAULT; + types = arguments[0]; + break; + case 2: + schemas = arguments[0]; + types = arguments[1]; + break; + default: + throw new YAMLException("Wrong number of arguments for Schema.create function"); + } + schemas = common.toArray(schemas); + types = common.toArray(types); + if (!schemas.every(function(schema) { + return schema instanceof Schema; + })) { + throw new YAMLException("Specified list of super schemas (or a single Schema object) contains a non-Schema object."); + } + if (!types.every(function(type) { + return type instanceof Type; + })) { + throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); + } + return new Schema({ + include: schemas, + explicit: types + }); }; - async function writeProjectManifest(filePath, manifest, opts) { - var _a; - const fileType = filePath.substr(filePath.lastIndexOf(".") + 1).toLowerCase(); - if (fileType === "yaml") { - return write_yaml_file_1.default(filePath, manifest, YAML_FORMAT); + module2.exports = Schema; + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/str.js +var require_str2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/str.js"(exports2, module2) { + "use strict"; + var Type = require_type3(); + module2.exports = new Type("tag:yaml.org,2002:str", { + kind: "scalar", + construct: function(data) { + return data !== null ? data : ""; } - await fs_1.promises.mkdir(path_1.default.dirname(filePath), { recursive: true }); - const trailingNewline = (opts === null || opts === void 0 ? void 0 : opts.insertFinalNewline) === false ? "" : "\n"; - const json = (fileType === "json5" ? json5_1.default : JSON).stringify(manifest, void 0, (_a = opts === null || opts === void 0 ? void 0 : opts.indent) !== null && _a !== void 0 ? _a : " "); - return write_file_atomic_1.default(filePath, `${json}${trailingNewline}`); + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/seq.js +var require_seq2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/seq.js"(exports2, module2) { + "use strict"; + var Type = require_type3(); + module2.exports = new Type("tag:yaml.org,2002:seq", { + kind: "sequence", + construct: function(data) { + return data !== null ? data : []; + } + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/map.js +var require_map5 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/map.js"(exports2, module2) { + "use strict"; + var Type = require_type3(); + module2.exports = new Type("tag:yaml.org,2002:map", { + kind: "mapping", + construct: function(data) { + return data !== null ? data : {}; + } + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +var require_failsafe2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js"(exports2, module2) { + "use strict"; + var Schema = require_schema2(); + module2.exports = new Schema({ + explicit: [ + require_str2(), + require_seq2(), + require_map5() + ] + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/null.js +var require_null2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/null.js"(exports2, module2) { + "use strict"; + var Type = require_type3(); + function resolveYamlNull(data) { + if (data === null) + return true; + var max = data.length; + return max === 1 && data === "~" || max === 4 && (data === "null" || data === "Null" || data === "NULL"); + } + function constructYamlNull() { + return null; + } + function isNull(object) { + return object === null; } - exports2.default = writeProjectManifest; + module2.exports = new Type("tag:yaml.org,2002:null", { + kind: "scalar", + resolve: resolveYamlNull, + construct: constructYamlNull, + predicate: isNull, + represent: { + canonical: function() { + return "~"; + }, + lowercase: function() { + return "null"; + }, + uppercase: function() { + return "NULL"; + }, + camelcase: function() { + return "Null"; + } + }, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/read-yaml-file@2.1.0/node_modules/read-yaml-file/index.js -var require_read_yaml_file = __commonJS({ - "../../node_modules/.pnpm/read-yaml-file@2.1.0/node_modules/read-yaml-file/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/bool.js +var require_bool2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/bool.js"(exports2, module2) { "use strict"; - var fs = require("fs"); - var stripBom = require_strip_bom(); - var yaml = require_js_yaml(); - var parse = (data) => yaml.load(stripBom(data)); - var readYamlFile = (fp) => fs.promises.readFile(fp, "utf8").then((data) => parse(data)); - module2.exports = readYamlFile; - module2.exports.default = readYamlFile; - module2.exports.sync = (fp) => parse(fs.readFileSync(fp, "utf8")); + var Type = require_type3(); + function resolveYamlBoolean(data) { + if (data === null) + return false; + var max = data.length; + return max === 4 && (data === "true" || data === "True" || data === "TRUE") || max === 5 && (data === "false" || data === "False" || data === "FALSE"); + } + function constructYamlBoolean(data) { + return data === "true" || data === "True" || data === "TRUE"; + } + function isBoolean(object) { + return Object.prototype.toString.call(object) === "[object Boolean]"; + } + module2.exports = new Type("tag:yaml.org,2002:bool", { + kind: "scalar", + resolve: resolveYamlBoolean, + construct: constructYamlBoolean, + predicate: isBoolean, + represent: { + lowercase: function(object) { + return object ? "true" : "false"; + }, + uppercase: function(object) { + return object ? "TRUE" : "FALSE"; + }, + camelcase: function(object) { + return object ? "True" : "False"; + } + }, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/detect-indent@6.1.0/node_modules/detect-indent/index.js -var require_detect_indent = __commonJS({ - "../../node_modules/.pnpm/detect-indent@6.1.0/node_modules/detect-indent/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/int.js +var require_int2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/int.js"(exports2, module2) { "use strict"; - var INDENT_REGEX = /^(?:( )+|\t+)/; - var INDENT_TYPE_SPACE = "space"; - var INDENT_TYPE_TAB = "tab"; - function makeIndentsMap(string, ignoreSingleSpaces) { - const indents = new Map(); - let previousSize = 0; - let previousIndentType; - let key; - for (const line of string.split(/\n/g)) { - if (!line) { - continue; + var common = require_common6(); + var Type = require_type3(); + function isHexCode(c) { + return 48 <= c && c <= 57 || 65 <= c && c <= 70 || 97 <= c && c <= 102; + } + function isOctCode(c) { + return 48 <= c && c <= 55; + } + function isDecCode(c) { + return 48 <= c && c <= 57; + } + function resolveYamlInteger(data) { + if (data === null) + return false; + var max = data.length, index = 0, hasDigits = false, ch; + if (!max) + return false; + ch = data[index]; + if (ch === "-" || ch === "+") { + ch = data[++index]; + } + if (ch === "0") { + if (index + 1 === max) + return true; + ch = data[++index]; + if (ch === "b") { + index++; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (ch !== "0" && ch !== "1") + return false; + hasDigits = true; + } + return hasDigits && ch !== "_"; } - let indent; - let indentType; - let weight; - let entry; - const matches = line.match(INDENT_REGEX); - if (matches === null) { - previousSize = 0; - previousIndentType = ""; - } else { - indent = matches[0].length; - if (matches[1]) { - indentType = INDENT_TYPE_SPACE; - } else { - indentType = INDENT_TYPE_TAB; + if (ch === "x") { + index++; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (!isHexCode(data.charCodeAt(index))) + return false; + hasDigits = true; } - if (ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && indent === 1) { + return hasDigits && ch !== "_"; + } + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") continue; - } - if (indentType !== previousIndentType) { - previousSize = 0; - } - previousIndentType = indentType; - weight = 0; - const indentDifference = indent - previousSize; - previousSize = indent; - if (indentDifference === 0) { - weight++; - } else { - const absoluteIndentDifference = indentDifference > 0 ? indentDifference : -indentDifference; - key = encodeIndentsKey(indentType, absoluteIndentDifference); - } - entry = indents.get(key); - if (entry === void 0) { - entry = [1, 0]; - } else { - entry = [++entry[0], entry[1] + weight]; - } - indents.set(key, entry); + if (!isOctCode(data.charCodeAt(index))) + return false; + hasDigits = true; } + return hasDigits && ch !== "_"; } - return indents; + if (ch === "_") + return false; + for (; index < max; index++) { + ch = data[index]; + if (ch === "_") + continue; + if (ch === ":") + break; + if (!isDecCode(data.charCodeAt(index))) { + return false; + } + hasDigits = true; + } + if (!hasDigits || ch === "_") + return false; + if (ch !== ":") + return true; + return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); } - function encodeIndentsKey(indentType, indentAmount) { - const typeCharacter = indentType === INDENT_TYPE_SPACE ? "s" : "t"; - return typeCharacter + String(indentAmount); + function constructYamlInteger(data) { + var value = data, sign = 1, ch, base, digits = []; + if (value.indexOf("_") !== -1) { + value = value.replace(/_/g, ""); + } + ch = value[0]; + if (ch === "-" || ch === "+") { + if (ch === "-") + sign = -1; + value = value.slice(1); + ch = value[0]; + } + if (value === "0") + return 0; + if (ch === "0") { + if (value[1] === "b") + return sign * parseInt(value.slice(2), 2); + if (value[1] === "x") + return sign * parseInt(value, 16); + return sign * parseInt(value, 8); + } + if (value.indexOf(":") !== -1) { + value.split(":").forEach(function(v) { + digits.unshift(parseInt(v, 10)); + }); + value = 0; + base = 1; + digits.forEach(function(d) { + value += d * base; + base *= 60; + }); + return sign * value; + } + return sign * parseInt(value, 10); } - function decodeIndentsKey(indentsKey) { - const keyHasTypeSpace = indentsKey[0] === "s"; - const type = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; - const amount = Number(indentsKey.slice(1)); - return { type, amount }; + function isInteger(object) { + return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object)); } - function getMostUsedKey(indents) { - let result; - let maxUsed = 0; - let maxWeight = 0; - for (const [key, [usedCount, weight]] of indents) { - if (usedCount > maxUsed || usedCount === maxUsed && weight > maxWeight) { - maxUsed = usedCount; - maxWeight = weight; - result = key; + module2.exports = new Type("tag:yaml.org,2002:int", { + kind: "scalar", + resolve: resolveYamlInteger, + construct: constructYamlInteger, + predicate: isInteger, + represent: { + binary: function(obj) { + return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1); + }, + octal: function(obj) { + return obj >= 0 ? "0" + obj.toString(8) : "-0" + obj.toString(8).slice(1); + }, + decimal: function(obj) { + return obj.toString(10); + }, + /* eslint-disable max-len */ + hexadecimal: function(obj) { + return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1); } + }, + defaultStyle: "decimal", + styleAliases: { + binary: [2, "bin"], + octal: [8, "oct"], + decimal: [10, "dec"], + hexadecimal: [16, "hex"] } - return result; - } - function makeIndentString(type, amount) { - const indentCharacter = type === INDENT_TYPE_SPACE ? " " : " "; - return indentCharacter.repeat(amount); + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/float.js +var require_float2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/float.js"(exports2, module2) { + "use strict"; + var common = require_common6(); + var Type = require_type3(); + var YAML_FLOAT_PATTERN = new RegExp( + // 2.5e4, 2.5 and integers + "^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$" + ); + function resolveYamlFloat(data) { + if (data === null) + return false; + if (!YAML_FLOAT_PATTERN.test(data) || // Quick hack to not allow integers end with `_` + // Probably should update regexp & check speed + data[data.length - 1] === "_") { + return false; + } + return true; } - module2.exports = (string) => { - if (typeof string !== "string") { - throw new TypeError("Expected a string"); + function constructYamlFloat(data) { + var value, sign, base, digits; + value = data.replace(/_/g, "").toLowerCase(); + sign = value[0] === "-" ? -1 : 1; + digits = []; + if ("+-".indexOf(value[0]) >= 0) { + value = value.slice(1); } - let indents = makeIndentsMap(string, true); - if (indents.size === 0) { - indents = makeIndentsMap(string, false); + if (value === ".inf") { + return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; + } else if (value === ".nan") { + return NaN; + } else if (value.indexOf(":") >= 0) { + value.split(":").forEach(function(v) { + digits.unshift(parseFloat(v, 10)); + }); + value = 0; + base = 1; + digits.forEach(function(d) { + value += d * base; + base *= 60; + }); + return sign * value; } - const keyOfMostUsedIndent = getMostUsedKey(indents); - let type; - let amount = 0; - let indent = ""; - if (keyOfMostUsedIndent !== void 0) { - ({ type, amount } = decodeIndentsKey(keyOfMostUsedIndent)); - indent = makeIndentString(type, amount); + return sign * parseFloat(value, 10); + } + var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; + function representYamlFloat(object, style) { + var res; + if (isNaN(object)) { + switch (style) { + case "lowercase": + return ".nan"; + case "uppercase": + return ".NAN"; + case "camelcase": + return ".NaN"; + } + } else if (Number.POSITIVE_INFINITY === object) { + switch (style) { + case "lowercase": + return ".inf"; + case "uppercase": + return ".INF"; + case "camelcase": + return ".Inf"; + } + } else if (Number.NEGATIVE_INFINITY === object) { + switch (style) { + case "lowercase": + return "-.inf"; + case "uppercase": + return "-.INF"; + case "camelcase": + return "-.Inf"; + } + } else if (common.isNegativeZero(object)) { + return "-0.0"; } - return { - amount, - type, - indent - }; - }; + res = object.toString(10); + return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res; + } + function isFloat(object) { + return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object)); + } + module2.exports = new Type("tag:yaml.org,2002:float", { + kind: "scalar", + resolve: resolveYamlFloat, + construct: constructYamlFloat, + predicate: isFloat, + represent: representYamlFloat, + defaultStyle: "lowercase" + }); } }); -// ../../node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js -var require_fast_deep_equal = __commonJS({ - "../../node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/json.js +var require_json3 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/json.js"(exports2, module2) { "use strict"; - module2.exports = function equal(a, b) { - if (a === b) - return true; - if (a && b && typeof a == "object" && typeof b == "object") { - if (a.constructor !== b.constructor) - return false; - var length, i, keys; - if (Array.isArray(a)) { - length = a.length; - if (length != b.length) - return false; - for (i = length; i-- !== 0; ) - if (!equal(a[i], b[i])) - return false; - return true; - } - if (a.constructor === RegExp) - return a.source === b.source && a.flags === b.flags; - if (a.valueOf !== Object.prototype.valueOf) - return a.valueOf() === b.valueOf(); - if (a.toString !== Object.prototype.toString) - return a.toString() === b.toString(); - keys = Object.keys(a); - length = keys.length; - if (length !== Object.keys(b).length) - return false; - for (i = length; i-- !== 0; ) - if (!Object.prototype.hasOwnProperty.call(b, keys[i])) - return false; - for (i = length; i-- !== 0; ) { - var key = keys[i]; - if (!equal(a[key], b[key])) - return false; - } - return true; - } - return a !== a && b !== b; - }; + var Schema = require_schema2(); + module2.exports = new Schema({ + include: [ + require_failsafe2() + ], + implicit: [ + require_null2(), + require_bool2(), + require_int2(), + require_float2() + ] + }); } }); -// ../../node_modules/.pnpm/is-plain-obj@2.1.0/node_modules/is-plain-obj/index.js -var require_is_plain_obj = __commonJS({ - "../../node_modules/.pnpm/is-plain-obj@2.1.0/node_modules/is-plain-obj/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/core.js +var require_core5 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/core.js"(exports2, module2) { "use strict"; - module2.exports = (value) => { - if (Object.prototype.toString.call(value) !== "[object Object]") { - return false; - } - const prototype = Object.getPrototypeOf(value); - return prototype === null || prototype === Object.prototype; - }; + var Schema = require_schema2(); + module2.exports = new Schema({ + include: [ + require_json3() + ] + }); } }); -// ../../node_modules/.pnpm/sort-keys@4.2.0/node_modules/sort-keys/index.js -var require_sort_keys = __commonJS({ - "../../node_modules/.pnpm/sort-keys@4.2.0/node_modules/sort-keys/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +var require_timestamp3 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/timestamp.js"(exports2, module2) { "use strict"; - var isPlainObject = require_is_plain_obj(); - module2.exports = (object, options = {}) => { - if (!isPlainObject(object) && !Array.isArray(object)) { - throw new TypeError("Expected a plain object or array"); + var Type = require_type3(); + var YAML_DATE_REGEXP = new RegExp( + "^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$" + ); + var YAML_TIMESTAMP_REGEXP = new RegExp( + "^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$" + ); + function resolveYamlTimestamp(data) { + if (data === null) + return false; + if (YAML_DATE_REGEXP.exec(data) !== null) + return true; + if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) + return true; + return false; + } + function constructYamlTimestamp(data) { + var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date; + match = YAML_DATE_REGEXP.exec(data); + if (match === null) + match = YAML_TIMESTAMP_REGEXP.exec(data); + if (match === null) + throw new Error("Date resolve error"); + year = +match[1]; + month = +match[2] - 1; + day = +match[3]; + if (!match[4]) { + return new Date(Date.UTC(year, month, day)); } - const { deep } = options; - const seenInput = []; - const seenOutput = []; - const deepSortArray = (array) => { - const seenIndex = seenInput.indexOf(array); - if (seenIndex !== -1) { - return seenOutput[seenIndex]; - } - const result = []; - seenInput.push(array); - seenOutput.push(result); - result.push(...array.map((item) => { - if (Array.isArray(item)) { - return deepSortArray(item); - } - if (isPlainObject(item)) { - return sortKeys(item); - } - return item; - })); - return result; - }; - const sortKeys = (object2) => { - const seenIndex = seenInput.indexOf(object2); - if (seenIndex !== -1) { - return seenOutput[seenIndex]; - } - const result = {}; - const keys = Object.keys(object2).sort(options.compare); - seenInput.push(object2); - seenOutput.push(result); - for (const key of keys) { - const value = object2[key]; - let newValue; - if (deep && Array.isArray(value)) { - newValue = deepSortArray(value); - } else { - newValue = deep && isPlainObject(value) ? sortKeys(value) : value; - } - Object.defineProperty(result, key, { - ...Object.getOwnPropertyDescriptor(object2, key), - value: newValue - }); + hour = +match[4]; + minute = +match[5]; + second = +match[6]; + if (match[7]) { + fraction = match[7].slice(0, 3); + while (fraction.length < 3) { + fraction += "0"; } - return result; - }; - if (Array.isArray(object)) { - return deep ? deepSortArray(object) : object.slice(); + fraction = +fraction; } - return sortKeys(object); - }; - } -}); - -// ../graceful-fs/lib/index.js -var require_lib18 = __commonJS({ - "../graceful-fs/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var util_1 = require("util"); - var graceful_fs_1 = __importDefault(require_graceful_fs()); - exports2.default = { - createReadStream: graceful_fs_1.default.createReadStream, - readFile: util_1.promisify(graceful_fs_1.default.readFile), - writeFile: util_1.promisify(graceful_fs_1.default.writeFile) - }; + if (match[9]) { + tz_hour = +match[10]; + tz_minute = +(match[11] || 0); + delta = (tz_hour * 60 + tz_minute) * 6e4; + if (match[9] === "-") + delta = -delta; + } + date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); + if (delta) + date.setTime(date.getTime() - delta); + return date; + } + function representYamlTimestamp(object) { + return object.toISOString(); + } + module2.exports = new Type("tag:yaml.org,2002:timestamp", { + kind: "scalar", + resolve: resolveYamlTimestamp, + construct: constructYamlTimestamp, + instanceOf: Date, + represent: representYamlTimestamp + }); } }); -// ../read-project-manifest/lib/readFile.js -var require_readFile = __commonJS({ - "../read-project-manifest/lib/readFile.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/merge.js +var require_merge4 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/merge.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readJsonFile = exports2.readJson5File = void 0; - var graceful_fs_1 = __importDefault(require_lib18()); - var json5_1 = __importDefault(require_lib16()); - var parse_json_1 = __importDefault(require_parse_json()); - var strip_bom_1 = __importDefault(require_strip_bom()); - async function readJson5File(filePath) { - const text = await readFileWithoutBom(filePath); - try { - return { - data: json5_1.default.parse(text), - text - }; - } catch (err) { - err.message = `${err.message} in ${filePath}`; - err["code"] = "ERR_PNPM_JSON5_PARSE"; - throw err; - } - } - exports2.readJson5File = readJson5File; - async function readJsonFile(filePath) { - const text = await readFileWithoutBom(filePath); - try { - return { - data: parse_json_1.default(text, filePath), - text - }; - } catch (err) { - err["code"] = "ERR_PNPM_JSON_PARSE"; - throw err; - } - } - exports2.readJsonFile = readJsonFile; - async function readFileWithoutBom(path) { - return strip_bom_1.default(await graceful_fs_1.default.readFile(path, "utf8")); + var Type = require_type3(); + function resolveYamlMerge(data) { + return data === "<<" || data === null; } + module2.exports = new Type("tag:yaml.org,2002:merge", { + kind: "scalar", + resolve: resolveYamlMerge + }); } }); -// ../read-project-manifest/lib/index.js -var require_lib19 = __commonJS({ - "../read-project-manifest/lib/index.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/binary.js +var require_binary2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/binary.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readExactProjectManifest = exports2.tryReadProjectManifest = exports2.readProjectManifestOnly = exports2.safeReadProjectManifestOnly = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var write_project_manifest_1 = __importDefault(require_lib17()); - var read_yaml_file_1 = __importDefault(require_read_yaml_file()); - var detect_indent_1 = __importDefault(require_detect_indent()); - var fast_deep_equal_1 = __importDefault(require_fast_deep_equal()); - var is_windows_1 = __importDefault(require_is_windows()); - var sort_keys_1 = __importDefault(require_sort_keys()); - var readFile_1 = require_readFile(); - async function safeReadProjectManifestOnly(projectDir) { - try { - return await readProjectManifestOnly(projectDir); - } catch (err) { - if (err.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") { - return null; - } - throw err; - } + var NodeBuffer; + try { + _require = require; + NodeBuffer = _require("buffer").Buffer; + } catch (__) { } - exports2.safeReadProjectManifestOnly = safeReadProjectManifestOnly; - async function readProjectManifest(projectDir) { - const result = await tryReadProjectManifest(projectDir); - if (result.manifest !== null) { - return result; + var _require; + var Type = require_type3(); + var BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; + function resolveYamlBinary(data) { + if (data === null) + return false; + var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; + for (idx = 0; idx < max; idx++) { + code = map.indexOf(data.charAt(idx)); + if (code > 64) + continue; + if (code < 0) + return false; + bitlen += 6; } - throw new error_1.default("NO_IMPORTER_MANIFEST_FOUND", `No package.json (or package.yaml, or package.json5) was found in "${projectDir}".`); - } - exports2.default = readProjectManifest; - async function readProjectManifestOnly(projectDir) { - const { manifest } = await readProjectManifest(projectDir); - return manifest; + return bitlen % 8 === 0; } - exports2.readProjectManifestOnly = readProjectManifestOnly; - async function tryReadProjectManifest(projectDir) { - try { - const manifestPath = path_1.default.join(projectDir, "package.json"); - const { data, text } = await readFile_1.readJsonFile(manifestPath); - return { - fileName: "package.json", - manifest: data, - writeProjectManifest: createManifestWriter({ - ...detectFileFormatting(text), - initialManifest: data, - manifestPath - }) - }; - } catch (err) { - if (err.code !== "ENOENT") - throw err; - } - try { - const manifestPath = path_1.default.join(projectDir, "package.json5"); - const { data, text } = await readFile_1.readJson5File(manifestPath); - return { - fileName: "package.json5", - manifest: data, - writeProjectManifest: createManifestWriter({ - ...detectFileFormatting(text), - initialManifest: data, - manifestPath - }) - }; - } catch (err) { - if (err.code !== "ENOENT") - throw err; + function constructYamlBinary(data) { + var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max = input.length, map = BASE64_MAP, bits = 0, result2 = []; + for (idx = 0; idx < max; idx++) { + if (idx % 4 === 0 && idx) { + result2.push(bits >> 16 & 255); + result2.push(bits >> 8 & 255); + result2.push(bits & 255); + } + bits = bits << 6 | map.indexOf(input.charAt(idx)); } - try { - const manifestPath = path_1.default.join(projectDir, "package.yaml"); - const manifest = await readPackageYaml(manifestPath); - return { - fileName: "package.yaml", - manifest, - writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath }) - }; - } catch (err) { - if (err.code !== "ENOENT") - throw err; + tailbits = max % 4 * 6; + if (tailbits === 0) { + result2.push(bits >> 16 & 255); + result2.push(bits >> 8 & 255); + result2.push(bits & 255); + } else if (tailbits === 18) { + result2.push(bits >> 10 & 255); + result2.push(bits >> 2 & 255); + } else if (tailbits === 12) { + result2.push(bits >> 4 & 255); } - if (is_windows_1.default()) { - let s; - try { - s = await fs_1.promises.stat(projectDir); - } catch (err) { - } - if (s != null && !s.isDirectory()) { - const err = new Error(`"${projectDir}" is not a directory`); - err["code"] = "ENOTDIR"; - throw err; - } + if (NodeBuffer) { + return NodeBuffer.from ? NodeBuffer.from(result2) : new NodeBuffer(result2); } - const filePath = path_1.default.join(projectDir, "package.json"); - return { - fileName: "package.json", - manifest: null, - writeProjectManifest: async (manifest) => write_project_manifest_1.default(filePath, manifest) - }; + return result2; } - exports2.tryReadProjectManifest = tryReadProjectManifest; - function detectFileFormatting(text) { - return { - indent: detect_indent_1.default(text).indent, - insertFinalNewline: text.endsWith("\n") - }; - } - async function readExactProjectManifest(manifestPath) { - const base = path_1.default.basename(manifestPath).toLowerCase(); - switch (base) { - case "package.json": { - const { data, text } = await readFile_1.readJsonFile(manifestPath); - return { - manifest: data, - writeProjectManifest: createManifestWriter({ - ...detectFileFormatting(text), - initialManifest: data, - manifestPath - }) - }; - } - case "package.json5": { - const { data, text } = await readFile_1.readJson5File(manifestPath); - return { - manifest: data, - writeProjectManifest: createManifestWriter({ - ...detectFileFormatting(text), - initialManifest: data, - manifestPath - }) - }; - } - case "package.yaml": { - const manifest = await readPackageYaml(manifestPath); - return { - manifest, - writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath }) - }; + function representYamlBinary(object) { + var result2 = "", bits = 0, idx, tail, max = object.length, map = BASE64_MAP; + for (idx = 0; idx < max; idx++) { + if (idx % 3 === 0 && idx) { + result2 += map[bits >> 18 & 63]; + result2 += map[bits >> 12 & 63]; + result2 += map[bits >> 6 & 63]; + result2 += map[bits & 63]; } + bits = (bits << 8) + object[idx]; } - throw new Error(`Not supported manifest name "${base}"`); - } - exports2.readExactProjectManifest = readExactProjectManifest; - async function readPackageYaml(filePath) { - try { - return await read_yaml_file_1.default(filePath); - } catch (err) { - if (err.name !== "YAMLException") - throw err; - err.message = `${err.message} -in ${filePath}`; - err.code = "ERR_PNPM_YAML_PARSE"; - throw err; + tail = max % 3; + if (tail === 0) { + result2 += map[bits >> 18 & 63]; + result2 += map[bits >> 12 & 63]; + result2 += map[bits >> 6 & 63]; + result2 += map[bits & 63]; + } else if (tail === 2) { + result2 += map[bits >> 10 & 63]; + result2 += map[bits >> 4 & 63]; + result2 += map[bits << 2 & 63]; + result2 += map[64]; + } else if (tail === 1) { + result2 += map[bits >> 2 & 63]; + result2 += map[bits << 4 & 63]; + result2 += map[64]; + result2 += map[64]; } + return result2; } - function createManifestWriter(opts) { - const initialManifest = normalize(JSON.parse(JSON.stringify(opts.initialManifest))); - return async (updatedManifest, force) => { - updatedManifest = normalize(updatedManifest); - if (force === true || !fast_deep_equal_1.default(initialManifest, updatedManifest)) { - return write_project_manifest_1.default(opts.manifestPath, updatedManifest, { - indent: opts.indent, - insertFinalNewline: opts.insertFinalNewline - }); - } - return Promise.resolve(void 0); - }; + function isBinary(object) { + return NodeBuffer && NodeBuffer.isBuffer(object); } - var dependencyKeys = new Set([ - "dependencies", - "devDependencies", - "optionalDependencies", - "peerDependencies" - ]); - function normalize(manifest) { - const result = {}; - for (const key of Object.keys(manifest)) { - if (!dependencyKeys.has(key)) { - result[key] = manifest[key]; - } else if (Object.keys(manifest[key]).length !== 0) { - result[key] = sort_keys_1.default(manifest[key]); + module2.exports = new Type("tag:yaml.org,2002:binary", { + kind: "scalar", + resolve: resolveYamlBinary, + construct: constructYamlBinary, + predicate: isBinary, + represent: representYamlBinary + }); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/omap.js +var require_omap2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/omap.js"(exports2, module2) { + "use strict"; + var Type = require_type3(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var _toString = Object.prototype.toString; + function resolveYamlOmap(data) { + if (data === null) + return true; + var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data; + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + pairHasKey = false; + if (_toString.call(pair) !== "[object Object]") + return false; + for (pairKey in pair) { + if (_hasOwnProperty.call(pair, pairKey)) { + if (!pairHasKey) + pairHasKey = true; + else + return false; + } } + if (!pairHasKey) + return false; + if (objectKeys.indexOf(pairKey) === -1) + objectKeys.push(pairKey); + else + return false; } - return result; + return true; } + function constructYamlOmap(data) { + return data !== null ? data : []; + } + module2.exports = new Type("tag:yaml.org,2002:omap", { + kind: "sequence", + resolve: resolveYamlOmap, + construct: constructYamlOmap + }); } }); -// ../cli-utils/lib/readDepNameCompletions.js -var require_readDepNameCompletions = __commonJS({ - "../cli-utils/lib/readDepNameCompletions.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/pairs.js +var require_pairs3 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/pairs.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readDepNameCompletions = void 0; - var manifest_utils_1 = require_lib15(); - var read_project_manifest_1 = __importDefault(require_lib19()); - async function readDepNameCompletions(dir) { - const { manifest } = await read_project_manifest_1.default(dir !== null && dir !== void 0 ? dir : process.cwd()); - return Object.keys(manifest_utils_1.getAllDependenciesFromManifest(manifest)).map((name) => ({ name })); + var Type = require_type3(); + var _toString = Object.prototype.toString; + function resolveYamlPairs(data) { + if (data === null) + return true; + var index, length, pair, keys, result2, object = data; + result2 = new Array(object.length); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + if (_toString.call(pair) !== "[object Object]") + return false; + keys = Object.keys(pair); + if (keys.length !== 1) + return false; + result2[index] = [keys[0], pair[keys[0]]]; + } + return true; } - exports2.readDepNameCompletions = readDepNameCompletions; + function constructYamlPairs(data) { + if (data === null) + return []; + var index, length, pair, keys, result2, object = data; + result2 = new Array(object.length); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + keys = Object.keys(pair); + result2[index] = [keys[0], pair[keys[0]]]; + } + return result2; + } + module2.exports = new Type("tag:yaml.org,2002:pairs", { + kind: "sequence", + resolve: resolveYamlPairs, + construct: constructYamlPairs + }); } }); -// ../cli-utils/lib/readProjectManifest.js -var require_readProjectManifest = __commonJS({ - "../cli-utils/lib/readProjectManifest.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/set.js +var require_set2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/set.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var Type = require_type3(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + function resolveYamlSet(data) { + if (data === null) + return true; + var key, object = data; + for (key in object) { + if (_hasOwnProperty.call(object, key)) { + if (object[key] !== null) + return false; + } } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.tryReadProjectManifest = exports2.readProjectManifestOnly = exports2.readProjectManifest = void 0; - var read_project_manifest_1 = __importStar2(require_lib19()); - var utils = read_project_manifest_1; - var packageIsInstallable_1 = require_packageIsInstallable(); - async function readProjectManifest(projectDir, opts) { - const { fileName, manifest, writeProjectManifest } = await read_project_manifest_1.default(projectDir); - packageIsInstallable_1.packageIsInstallable(projectDir, manifest, opts); - return { fileName, manifest, writeProjectManifest }; - } - exports2.readProjectManifest = readProjectManifest; - async function readProjectManifestOnly(projectDir, opts) { - const manifest = await utils.readProjectManifestOnly(projectDir); - packageIsInstallable_1.packageIsInstallable(projectDir, manifest, opts); - return manifest; + return true; } - exports2.readProjectManifestOnly = readProjectManifestOnly; - async function tryReadProjectManifest(projectDir, opts) { - const { fileName, manifest, writeProjectManifest } = await utils.tryReadProjectManifest(projectDir); - if (manifest == null) - return { fileName, manifest, writeProjectManifest }; - packageIsInstallable_1.packageIsInstallable(projectDir, manifest, opts); - return { fileName, manifest, writeProjectManifest }; + function constructYamlSet(data) { + return data !== null ? data : {}; } - exports2.tryReadProjectManifest = tryReadProjectManifest; + module2.exports = new Type("tag:yaml.org,2002:set", { + kind: "mapping", + resolve: resolveYamlSet, + construct: constructYamlSet + }); } }); -// ../cli-utils/lib/recursiveSummary.js -var require_recursiveSummary = __commonJS({ - "../cli-utils/lib/recursiveSummary.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +var require_default_safe = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.throwOnCommandFail = void 0; - var error_1 = __importDefault(require_lib8()); - var RecursiveFailError = class extends error_1.default { - constructor(command, recursiveSummary) { - super("RECURSIVE_FAIL", `"${command}" failed in ${recursiveSummary.fails.length} packages`); - this.fails = recursiveSummary.fails; - this.passes = recursiveSummary.passes; - } - }; - function throwOnCommandFail(command, recursiveSummary) { - if (recursiveSummary.fails.length > 0) { - throw new RecursiveFailError(command, recursiveSummary); - } - } - exports2.throwOnCommandFail = throwOnCommandFail; + var Schema = require_schema2(); + module2.exports = new Schema({ + include: [ + require_core5() + ], + implicit: [ + require_timestamp3(), + require_merge4() + ], + explicit: [ + require_binary2(), + require_omap2(), + require_pairs3(), + require_set2() + ] + }); } }); -// ../cli-utils/lib/style.js -var require_style = __commonJS({ - "../cli-utils/lib/style.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +var require_undefined = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.TABLE_OPTIONS = void 0; - var chalk_1 = __importDefault(require_source()); - exports2.TABLE_OPTIONS = { - border: { - topBody: "\u2500", - topJoin: "\u252C", - topLeft: "\u250C", - topRight: "\u2510", - bottomBody: "\u2500", - bottomJoin: "\u2534", - bottomLeft: "\u2514", - bottomRight: "\u2518", - bodyJoin: "\u2502", - bodyLeft: "\u2502", - bodyRight: "\u2502", - joinBody: "\u2500", - joinJoin: "\u253C", - joinLeft: "\u251C", - joinRight: "\u2524" - }, - columns: {} - }; - for (const [key, value] of Object.entries(exports2.TABLE_OPTIONS.border)) { - exports2.TABLE_OPTIONS.border[key] = chalk_1.default.grey(value); + var Type = require_type3(); + function resolveJavascriptUndefined() { + return true; + } + function constructJavascriptUndefined() { + return void 0; + } + function representJavascriptUndefined() { + return ""; + } + function isUndefined(object) { + return typeof object === "undefined"; } + module2.exports = new Type("tag:yaml.org,2002:js/undefined", { + kind: "scalar", + resolve: resolveJavascriptUndefined, + construct: constructJavascriptUndefined, + predicate: isUndefined, + represent: representJavascriptUndefined + }); } }); -// ../cli-utils/lib/index.js -var require_lib20 = __commonJS({ - "../cli-utils/lib/index.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +var require_regexp = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; + var Type = require_type3(); + function resolveJavascriptRegExp(data) { + if (data === null) + return false; + if (data.length === 0) + return false; + var regexp = data, tail = /\/([gim]*)$/.exec(data), modifiers = ""; + if (regexp[0] === "/") { + if (tail) + modifiers = tail[1]; + if (modifiers.length > 3) + return false; + if (regexp[regexp.length - modifiers.length - 1] !== "/") + return false; + } + return true; + } + function constructJavascriptRegExp(data) { + var regexp = data, tail = /\/([gim]*)$/.exec(data), modifiers = ""; + if (regexp[0] === "/") { + if (tail) + modifiers = tail[1]; + regexp = regexp.slice(1, regexp.length - modifiers.length - 1); + } + return new RegExp(regexp, modifiers); + } + function representJavascriptRegExp(object) { + var result2 = "/" + object.source + "/"; + if (object.global) + result2 += "g"; + if (object.multiline) + result2 += "m"; + if (object.ignoreCase) + result2 += "i"; + return result2; + } + function isRegExp(object) { + return Object.prototype.toString.call(object) === "[object RegExp]"; + } + module2.exports = new Type("tag:yaml.org,2002:js/regexp", { + kind: "scalar", + resolve: resolveJavascriptRegExp, + construct: constructJavascriptRegExp, + predicate: isRegExp, + represent: representJavascriptRegExp }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.docsUrl = exports2.getConfig = void 0; - var cli_meta_1 = __importDefault(require_lib4()); - var getConfig_1 = __importDefault(require_getConfig()); - exports2.getConfig = getConfig_1.default; - __exportStar(require_packageIsInstallable(), exports2); - __exportStar(require_readDepNameCompletions(), exports2); - __exportStar(require_readProjectManifest(), exports2); - __exportStar(require_recursiveSummary(), exports2); - __exportStar(require_style(), exports2); - var docsUrl = (cmd) => { - const [pnpmMajorVersion] = cli_meta_1.default.version.split("."); - return `https://pnpm.io/${pnpmMajorVersion}.x/cli/${cmd}`; - }; - exports2.docsUrl = docsUrl; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/array.js -var require_array2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/array.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/function.js +var require_function = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/function.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.splitWhen = exports2.flatten = void 0; - function flatten(items) { - return items.reduce((collection, item) => [].concat(collection, item), []); + var esprima; + try { + _require = require; + esprima = _require("esprima"); + } catch (_) { + if (typeof window !== "undefined") + esprima = window.esprima; } - exports2.flatten = flatten; - function splitWhen(items, predicate) { - const result = [[]]; - let groupIndex = 0; - for (const item of items) { - if (predicate(item)) { - groupIndex++; - result[groupIndex] = []; - } else { - result[groupIndex].push(item); + var _require; + var Type = require_type3(); + function resolveJavascriptFunction(data) { + if (data === null) + return false; + try { + var source = "(" + data + ")", ast = esprima.parse(source, { range: true }); + if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") { + return false; } + return true; + } catch (err) { + return false; } - return result; } - exports2.splitWhen = splitWhen; + function constructJavascriptFunction(data) { + var source = "(" + data + ")", ast = esprima.parse(source, { range: true }), params = [], body; + if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") { + throw new Error("Failed to resolve function"); + } + ast.body[0].expression.params.forEach(function(param) { + params.push(param.name); + }); + body = ast.body[0].expression.body.range; + if (ast.body[0].expression.body.type === "BlockStatement") { + return new Function(params, source.slice(body[0] + 1, body[1] - 1)); + } + return new Function(params, "return " + source.slice(body[0], body[1])); + } + function representJavascriptFunction(object) { + return object.toString(); + } + function isFunction(object) { + return Object.prototype.toString.call(object) === "[object Function]"; + } + module2.exports = new Type("tag:yaml.org,2002:js/function", { + kind: "scalar", + resolve: resolveJavascriptFunction, + construct: constructJavascriptFunction, + predicate: isFunction, + represent: representJavascriptFunction + }); } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/errno.js -var require_errno = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/errno.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +var require_default_full = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_full.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isEnoentCodeError = void 0; - function isEnoentCodeError(error) { - return error.code === "ENOENT"; - } - exports2.isEnoentCodeError = isEnoentCodeError; + var Schema = require_schema2(); + module2.exports = Schema.DEFAULT = new Schema({ + include: [ + require_default_safe() + ], + explicit: [ + require_undefined(), + require_regexp(), + require_function() + ] + }); } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/fs.js -var require_fs = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/fs.js"(exports2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/loader.js +var require_loader2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/loader.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createDirentFromStats = void 0; - var DirentFromStats = class { - constructor(name, stats) { - this.name = name; - this.isBlockDevice = stats.isBlockDevice.bind(stats); - this.isCharacterDevice = stats.isCharacterDevice.bind(stats); - this.isDirectory = stats.isDirectory.bind(stats); - this.isFIFO = stats.isFIFO.bind(stats); - this.isFile = stats.isFile.bind(stats); - this.isSocket = stats.isSocket.bind(stats); - this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + var common = require_common6(); + var YAMLException = require_exception2(); + var Mark = require_mark(); + var DEFAULT_SAFE_SCHEMA = require_default_safe(); + var DEFAULT_FULL_SCHEMA = require_default_full(); + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var CONTEXT_FLOW_IN = 1; + var CONTEXT_FLOW_OUT = 2; + var CONTEXT_BLOCK_IN = 3; + var CONTEXT_BLOCK_OUT = 4; + var CHOMPING_CLIP = 1; + var CHOMPING_STRIP = 2; + var CHOMPING_KEEP = 3; + var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; + var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; + var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; + var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; + var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; + function _class(obj) { + return Object.prototype.toString.call(obj); + } + function is_EOL(c) { + return c === 10 || c === 13; + } + function is_WHITE_SPACE(c) { + return c === 9 || c === 32; + } + function is_WS_OR_EOL(c) { + return c === 9 || c === 32 || c === 10 || c === 13; + } + function is_FLOW_INDICATOR(c) { + return c === 44 || c === 91 || c === 93 || c === 123 || c === 125; + } + function fromHexCode(c) { + var lc; + if (48 <= c && c <= 57) { + return c - 48; + } + lc = c | 32; + if (97 <= lc && lc <= 102) { + return lc - 97 + 10; + } + return -1; + } + function escapedHexLen(c) { + if (c === 120) { + return 2; + } + if (c === 117) { + return 4; + } + if (c === 85) { + return 8; + } + return 0; + } + function fromDecimalCode(c) { + if (48 <= c && c <= 57) { + return c - 48; + } + return -1; + } + function simpleEscapeSequence(c) { + return c === 48 ? "\0" : c === 97 ? "\x07" : c === 98 ? "\b" : c === 116 ? " " : c === 9 ? " " : c === 110 ? "\n" : c === 118 ? "\v" : c === 102 ? "\f" : c === 114 ? "\r" : c === 101 ? "\x1B" : c === 32 ? " " : c === 34 ? '"' : c === 47 ? "/" : c === 92 ? "\\" : c === 78 ? "\x85" : c === 95 ? "\xA0" : c === 76 ? "\u2028" : c === 80 ? "\u2029" : ""; + } + function charFromCodepoint(c) { + if (c <= 65535) { + return String.fromCharCode(c); + } + return String.fromCharCode( + (c - 65536 >> 10) + 55296, + (c - 65536 & 1023) + 56320 + ); + } + var simpleEscapeCheck = new Array(256); + var simpleEscapeMap = new Array(256); + for (i = 0; i < 256; i++) { + simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; + simpleEscapeMap[i] = simpleEscapeSequence(i); + } + var i; + function State(input, options) { + this.input = input; + this.filename = options["filename"] || null; + this.schema = options["schema"] || DEFAULT_FULL_SCHEMA; + this.onWarning = options["onWarning"] || null; + this.legacy = options["legacy"] || false; + this.json = options["json"] || false; + this.listener = options["listener"] || null; + this.implicitTypes = this.schema.compiledImplicit; + this.typeMap = this.schema.compiledTypeMap; + this.length = input.length; + this.position = 0; + this.line = 0; + this.lineStart = 0; + this.lineIndent = 0; + this.documents = []; + } + function generateError(state, message2) { + return new YAMLException( + message2, + new Mark(state.filename, state.input, state.position, state.line, state.position - state.lineStart) + ); + } + function throwError(state, message2) { + throw generateError(state, message2); + } + function throwWarning(state, message2) { + if (state.onWarning) { + state.onWarning.call(null, generateError(state, message2)); + } + } + var directiveHandlers = { + YAML: function handleYamlDirective(state, name, args2) { + var match, major, minor; + if (state.version !== null) { + throwError(state, "duplication of %YAML directive"); + } + if (args2.length !== 1) { + throwError(state, "YAML directive accepts exactly one argument"); + } + match = /^([0-9]+)\.([0-9]+)$/.exec(args2[0]); + if (match === null) { + throwError(state, "ill-formed argument of the YAML directive"); + } + major = parseInt(match[1], 10); + minor = parseInt(match[2], 10); + if (major !== 1) { + throwError(state, "unacceptable YAML version of the document"); + } + state.version = args2[0]; + state.checkLineBreaks = minor < 2; + if (minor !== 1 && minor !== 2) { + throwWarning(state, "unsupported YAML version of the document"); + } + }, + TAG: function handleTagDirective(state, name, args2) { + var handle, prefix; + if (args2.length !== 2) { + throwError(state, "TAG directive accepts exactly two arguments"); + } + handle = args2[0]; + prefix = args2[1]; + if (!PATTERN_TAG_HANDLE.test(handle)) { + throwError(state, "ill-formed tag handle (first argument) of the TAG directive"); + } + if (_hasOwnProperty.call(state.tagMap, handle)) { + throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); + } + if (!PATTERN_TAG_URI.test(prefix)) { + throwError(state, "ill-formed tag prefix (second argument) of the TAG directive"); + } + state.tagMap[handle] = prefix; } }; - function createDirentFromStats(name, stats) { - return new DirentFromStats(name, stats); + function captureSegment(state, start, end, checkJson) { + var _position, _length, _character, _result; + if (start < end) { + _result = state.input.slice(start, end); + if (checkJson) { + for (_position = 0, _length = _result.length; _position < _length; _position += 1) { + _character = _result.charCodeAt(_position); + if (!(_character === 9 || 32 <= _character && _character <= 1114111)) { + throwError(state, "expected valid JSON character"); + } + } + } else if (PATTERN_NON_PRINTABLE.test(_result)) { + throwError(state, "the stream contains non-printable characters"); + } + state.result += _result; + } } - exports2.createDirentFromStats = createDirentFromStats; - } -}); - -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/path.js -var require_path2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/path.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.removeLeadingDotSegment = exports2.escape = exports2.makeAbsolute = exports2.unixify = void 0; - var path = require("path"); - var LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; - var UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g; - function unixify(filepath) { - return filepath.replace(/\\/g, "/"); + function mergeMappings(state, destination, source, overridableKeys) { + var sourceKeys, key, index, quantity; + if (!common.isObject(source)) { + throwError(state, "cannot merge mappings; the provided source object is unacceptable"); + } + sourceKeys = Object.keys(source); + for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { + key = sourceKeys[index]; + if (!_hasOwnProperty.call(destination, key)) { + destination[key] = source[key]; + overridableKeys[key] = true; + } + } } - exports2.unixify = unixify; - function makeAbsolute(cwd, filepath) { - return path.resolve(cwd, filepath); + function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { + var index, quantity; + if (Array.isArray(keyNode)) { + keyNode = Array.prototype.slice.call(keyNode); + for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { + if (Array.isArray(keyNode[index])) { + throwError(state, "nested arrays are not supported inside keys"); + } + if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") { + keyNode[index] = "[object Object]"; + } + } + } + if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") { + keyNode = "[object Object]"; + } + keyNode = String(keyNode); + if (_result === null) { + _result = {}; + } + if (keyTag === "tag:yaml.org,2002:merge") { + if (Array.isArray(valueNode)) { + for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { + mergeMappings(state, _result, valueNode[index], overridableKeys); + } + } else { + mergeMappings(state, _result, valueNode, overridableKeys); + } + } else { + if (!state.json && !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { + state.line = startLine || state.line; + state.position = startPos || state.position; + throwError(state, "duplicated mapping key"); + } + _result[keyNode] = valueNode; + delete overridableKeys[keyNode]; + } + return _result; } - exports2.makeAbsolute = makeAbsolute; - function escape(pattern) { - return pattern.replace(UNESCAPED_GLOB_SYMBOLS_RE, "\\$2"); + function readLineBreak(state) { + var ch; + ch = state.input.charCodeAt(state.position); + if (ch === 10) { + state.position++; + } else if (ch === 13) { + state.position++; + if (state.input.charCodeAt(state.position) === 10) { + state.position++; + } + } else { + throwError(state, "a line break is expected"); + } + state.line += 1; + state.lineStart = state.position; } - exports2.escape = escape; - function removeLeadingDotSegment(entry) { - if (entry.charAt(0) === ".") { - const secondCharactery = entry.charAt(1); - if (secondCharactery === "/" || secondCharactery === "\\") { - return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); + function skipSeparationSpace(state, allowComments, checkIndent) { + var lineBreaks = 0, ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (allowComments && ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 10 && ch !== 13 && ch !== 0); + } + if (is_EOL(ch)) { + readLineBreak(state); + ch = state.input.charCodeAt(state.position); + lineBreaks++; + state.lineIndent = 0; + while (ch === 32) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); + } + } else { + break; } } - return entry; - } - exports2.removeLeadingDotSegment = removeLeadingDotSegment; - } -}); - -// ../../node_modules/.pnpm/is-extglob@2.1.1/node_modules/is-extglob/index.js -var require_is_extglob = __commonJS({ - "../../node_modules/.pnpm/is-extglob@2.1.1/node_modules/is-extglob/index.js"(exports2, module2) { - module2.exports = function isExtglob(str) { - if (typeof str !== "string" || str === "") { - return false; + if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { + throwWarning(state, "deficient indentation"); } - var match; - while (match = /(\\).|([@?!+*]\(.*\))/g.exec(str)) { - if (match[2]) + return lineBreaks; + } + function testDocumentSeparator(state) { + var _position = state.position, ch; + ch = state.input.charCodeAt(_position); + if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) { + _position += 3; + ch = state.input.charCodeAt(_position); + if (ch === 0 || is_WS_OR_EOL(ch)) { return true; - str = str.slice(match.index + match[0].length); + } } return false; - }; - } -}); - -// ../../node_modules/.pnpm/is-glob@4.0.1/node_modules/is-glob/index.js -var require_is_glob = __commonJS({ - "../../node_modules/.pnpm/is-glob@4.0.1/node_modules/is-glob/index.js"(exports2, module2) { - var isExtglob = require_is_extglob(); - var chars = { "{": "}", "(": ")", "[": "]" }; - var strictRegex = /\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/; - var relaxedRegex = /\\(.)|(^!|[*?{}()[\]]|\(\?)/; - module2.exports = function isGlob(str, options) { - if (typeof str !== "string" || str === "") { - return false; + } + function writeFoldedLines(state, count) { + if (count === 1) { + state.result += " "; + } else if (count > 1) { + state.result += common.repeat("\n", count - 1); } - if (isExtglob(str)) { - return true; + } + function readPlainScalar(state, nodeIndent, withinFlowCollection) { + var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch; + ch = state.input.charCodeAt(state.position); + if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) { + return false; } - var regex = strictRegex; - var match; - if (options && options.strict === false) { - regex = relaxedRegex; + if (ch === 63 || ch === 45) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { + return false; + } } - while (match = regex.exec(str)) { - if (match[2]) - return true; - var idx = match.index + match[0].length; - var open = match[1]; - var close = open ? chars[open] : null; - if (open && close) { - var n = str.indexOf(close, idx); - if (n !== -1) { - idx = n + 1; + state.kind = "scalar"; + state.result = ""; + captureStart = captureEnd = state.position; + hasPendingContent = false; + while (ch !== 0) { + if (ch === 58) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { + break; + } + } else if (ch === 35) { + preceding = state.input.charCodeAt(state.position - 1); + if (is_WS_OR_EOL(preceding)) { + break; + } + } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) { + break; + } else if (is_EOL(ch)) { + _line = state.line; + _lineStart = state.lineStart; + _lineIndent = state.lineIndent; + skipSeparationSpace(state, false, -1); + if (state.lineIndent >= nodeIndent) { + hasPendingContent = true; + ch = state.input.charCodeAt(state.position); + continue; + } else { + state.position = captureEnd; + state.line = _line; + state.lineStart = _lineStart; + state.lineIndent = _lineIndent; + break; } } - str = str.slice(idx); - } - return false; - }; - } -}); - -// ../../node_modules/.pnpm/glob-parent@5.1.2/node_modules/glob-parent/index.js -var require_glob_parent = __commonJS({ - "../../node_modules/.pnpm/glob-parent@5.1.2/node_modules/glob-parent/index.js"(exports2, module2) { - "use strict"; - var isGlob = require_is_glob(); - var pathPosixDirname = require("path").posix.dirname; - var isWin32 = require("os").platform() === "win32"; - var slash = "/"; - var backslash = /\\/g; - var enclosure = /[\{\[].*[\}\]]$/; - var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/; - var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g; - module2.exports = function globParent(str, opts) { - var options = Object.assign({ flipBackslashes: true }, opts); - if (options.flipBackslashes && isWin32 && str.indexOf(slash) < 0) { - str = str.replace(backslash, slash); - } - if (enclosure.test(str)) { - str += slash; - } - str += "a"; - do { - str = pathPosixDirname(str); - } while (isGlob(str) || globby.test(str)); - return str.replace(escaped, "$1"); - }; - } -}); - -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/utils.js -var require_utils3 = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/utils.js"(exports2) { - "use strict"; - exports2.isInteger = (num) => { - if (typeof num === "number") { - return Number.isInteger(num); + if (hasPendingContent) { + captureSegment(state, captureStart, captureEnd, false); + writeFoldedLines(state, state.line - _line); + captureStart = captureEnd = state.position; + hasPendingContent = false; + } + if (!is_WHITE_SPACE(ch)) { + captureEnd = state.position + 1; + } + ch = state.input.charCodeAt(++state.position); } - if (typeof num === "string" && num.trim() !== "") { - return Number.isInteger(Number(num)); + captureSegment(state, captureStart, captureEnd, false); + if (state.result) { + return true; } + state.kind = _kind; + state.result = _result; return false; - }; - exports2.find = (node, type) => node.nodes.find((node2) => node2.type === type); - exports2.exceedsLimit = (min, max, step = 1, limit) => { - if (limit === false) - return false; - if (!exports2.isInteger(min) || !exports2.isInteger(max)) + } + function readSingleQuotedScalar(state, nodeIndent) { + var ch, captureStart, captureEnd; + ch = state.input.charCodeAt(state.position); + if (ch !== 39) { return false; - return (Number(max) - Number(min)) / Number(step) >= limit; - }; - exports2.escapeNode = (block, n = 0, type) => { - let node = block.nodes[n]; - if (!node) - return; - if (type && node.type === type || node.type === "open" || node.type === "close") { - if (node.escaped !== true) { - node.value = "\\" + node.value; - node.escaped = true; + } + state.kind = "scalar"; + state.result = ""; + state.position++; + captureStart = captureEnd = state.position; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 39) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); + if (ch === 39) { + captureStart = state.position; + state.position++; + captureEnd = state.position; + } else { + return true; + } + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, "unexpected end of the document within a single quoted scalar"); + } else { + state.position++; + captureEnd = state.position; } } - }; - exports2.encloseBrace = (node) => { - if (node.type !== "brace") + throwError(state, "unexpected end of the stream within a single quoted scalar"); + } + function readDoubleQuotedScalar(state, nodeIndent) { + var captureStart, captureEnd, hexLength, hexResult, tmp, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 34) { return false; - if (node.commas >> 0 + node.ranges >> 0 === 0) { - node.invalid = true; - return true; } - return false; - }; - exports2.isInvalidBrace = (block) => { - if (block.type !== "brace") - return false; - if (block.invalid === true || block.dollar) - return true; - if (block.commas >> 0 + block.ranges >> 0 === 0) { - block.invalid = true; - return true; + state.kind = "scalar"; + state.result = ""; + state.position++; + captureStart = captureEnd = state.position; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 34) { + captureSegment(state, captureStart, state.position, true); + state.position++; + return true; + } else if (ch === 92) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); + if (is_EOL(ch)) { + skipSeparationSpace(state, false, nodeIndent); + } else if (ch < 256 && simpleEscapeCheck[ch]) { + state.result += simpleEscapeMap[ch]; + state.position++; + } else if ((tmp = escapedHexLen(ch)) > 0) { + hexLength = tmp; + hexResult = 0; + for (; hexLength > 0; hexLength--) { + ch = state.input.charCodeAt(++state.position); + if ((tmp = fromHexCode(ch)) >= 0) { + hexResult = (hexResult << 4) + tmp; + } else { + throwError(state, "expected hexadecimal character"); + } + } + state.result += charFromCodepoint(hexResult); + state.position++; + } else { + throwError(state, "unknown escape sequence"); + } + captureStart = captureEnd = state.position; + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, "unexpected end of the document within a double quoted scalar"); + } else { + state.position++; + captureEnd = state.position; + } } - if (block.open !== true || block.close !== true) { - block.invalid = true; - return true; + throwError(state, "unexpected end of the stream within a double quoted scalar"); + } + function readFlowCollection(state, nodeIndent) { + var readNext = true, _line, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = {}, keyNode, keyTag, valueNode, ch; + ch = state.input.charCodeAt(state.position); + if (ch === 91) { + terminator = 93; + isMapping = false; + _result = []; + } else if (ch === 123) { + terminator = 125; + isMapping = true; + _result = {}; + } else { + return false; } - return false; - }; - exports2.isOpenOrClose = (node) => { - if (node.type === "open" || node.type === "close") { - return true; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - return node.open === true || node.close === true; - }; - exports2.reduce = (nodes) => nodes.reduce((acc, node) => { - if (node.type === "text") - acc.push(node.value); - if (node.type === "range") - node.type = "text"; - return acc; - }, []); - exports2.flatten = (...args2) => { - const result = []; - const flat = (arr) => { - for (let i = 0; i < arr.length; i++) { - let ele = arr[i]; - Array.isArray(ele) ? flat(ele, result) : ele !== void 0 && result.push(ele); + ch = state.input.charCodeAt(++state.position); + while (ch !== 0) { + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if (ch === terminator) { + state.position++; + state.tag = _tag; + state.anchor = _anchor; + state.kind = isMapping ? "mapping" : "sequence"; + state.result = _result; + return true; + } else if (!readNext) { + throwError(state, "missed comma between flow collection entries"); } - return result; - }; - flat(args2); - return result; - }; - } -}); - -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/stringify.js -var require_stringify3 = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/stringify.js"(exports2, module2) { - "use strict"; - var utils = require_utils3(); - module2.exports = (ast, options = {}) => { - let stringify = (node, parent = {}) => { - let invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); - let invalidNode = node.invalid === true && options.escapeInvalid === true; - let output = ""; - if (node.value) { - if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { - return "\\" + node.value; + keyTag = keyNode = valueNode = null; + isPair = isExplicitPair = false; + if (ch === 63) { + following = state.input.charCodeAt(state.position + 1); + if (is_WS_OR_EOL(following)) { + isPair = isExplicitPair = true; + state.position++; + skipSeparationSpace(state, true, nodeIndent); } - return node.value; } - if (node.value) { - return node.value; + _line = state.line; + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + keyTag = state.tag; + keyNode = state.result; + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if ((isExplicitPair || state.line === _line) && ch === 58) { + isPair = true; + ch = state.input.charCodeAt(++state.position); + skipSeparationSpace(state, true, nodeIndent); + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + valueNode = state.result; } - if (node.nodes) { - for (let child of node.nodes) { - output += stringify(child); - } + if (isMapping) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); + } else if (isPair) { + _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); + } else { + _result.push(keyNode); + } + skipSeparationSpace(state, true, nodeIndent); + ch = state.input.charCodeAt(state.position); + if (ch === 44) { + readNext = true; + ch = state.input.charCodeAt(++state.position); + } else { + readNext = false; } - return output; - }; - return stringify(ast); - }; - } -}); - -// ../../node_modules/.pnpm/is-number@7.0.0/node_modules/is-number/index.js -var require_is_number = __commonJS({ - "../../node_modules/.pnpm/is-number@7.0.0/node_modules/is-number/index.js"(exports2, module2) { - "use strict"; - module2.exports = function(num) { - if (typeof num === "number") { - return num - num === 0; - } - if (typeof num === "string" && num.trim() !== "") { - return Number.isFinite ? Number.isFinite(+num) : isFinite(+num); - } - return false; - }; - } -}); - -// ../../node_modules/.pnpm/to-regex-range@5.0.1/node_modules/to-regex-range/index.js -var require_to_regex_range = __commonJS({ - "../../node_modules/.pnpm/to-regex-range@5.0.1/node_modules/to-regex-range/index.js"(exports2, module2) { - "use strict"; - var isNumber = require_is_number(); - var toRegexRange = (min, max, options) => { - if (isNumber(min) === false) { - throw new TypeError("toRegexRange: expected the first argument to be a number"); - } - if (max === void 0 || min === max) { - return String(min); } - if (isNumber(max) === false) { - throw new TypeError("toRegexRange: expected the second argument to be a number."); + throwError(state, "unexpected end of the stream within a flow collection"); + } + function readBlockScalar(state, nodeIndent) { + var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch; + ch = state.input.charCodeAt(state.position); + if (ch === 124) { + folding = false; + } else if (ch === 62) { + folding = true; + } else { + return false; } - let opts = { relaxZeros: true, ...options }; - if (typeof opts.strictZeros === "boolean") { - opts.relaxZeros = opts.strictZeros === false; + state.kind = "scalar"; + state.result = ""; + while (ch !== 0) { + ch = state.input.charCodeAt(++state.position); + if (ch === 43 || ch === 45) { + if (CHOMPING_CLIP === chomping) { + chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP; + } else { + throwError(state, "repeat of a chomping mode identifier"); + } + } else if ((tmp = fromDecimalCode(ch)) >= 0) { + if (tmp === 0) { + throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one"); + } else if (!detectedIndent) { + textIndent = nodeIndent + tmp - 1; + detectedIndent = true; + } else { + throwError(state, "repeat of an indentation width identifier"); + } + } else { + break; + } } - let relax = String(opts.relaxZeros); - let shorthand = String(opts.shorthand); - let capture = String(opts.capture); - let wrap = String(opts.wrap); - let cacheKey = min + ":" + max + "=" + relax + shorthand + capture + wrap; - if (toRegexRange.cache.hasOwnProperty(cacheKey)) { - return toRegexRange.cache[cacheKey].result; + if (is_WHITE_SPACE(ch)) { + do { + ch = state.input.charCodeAt(++state.position); + } while (is_WHITE_SPACE(ch)); + if (ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (!is_EOL(ch) && ch !== 0); + } } - let a = Math.min(min, max); - let b = Math.max(min, max); - if (Math.abs(a - b) === 1) { - let result = min + "|" + max; - if (opts.capture) { - return `(${result})`; + while (ch !== 0) { + readLineBreak(state); + state.lineIndent = 0; + ch = state.input.charCodeAt(state.position); + while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); } - if (opts.wrap === false) { - return result; + if (!detectedIndent && state.lineIndent > textIndent) { + textIndent = state.lineIndent; } - return `(?:${result})`; - } - let isPadded = hasPadding(min) || hasPadding(max); - let state = { min, max, a, b }; - let positives = []; - let negatives = []; - if (isPadded) { - state.isPadded = isPadded; - state.maxLen = String(state.max).length; - } - if (a < 0) { - let newMin = b < 0 ? Math.abs(b) : 1; - negatives = splitToPatterns(newMin, Math.abs(a), state, opts); - a = state.a = 0; - } - if (b >= 0) { - positives = splitToPatterns(a, b, state, opts); - } - state.negatives = negatives; - state.positives = positives; - state.result = collatePatterns(negatives, positives, opts); - if (opts.capture === true) { - state.result = `(${state.result})`; - } else if (opts.wrap !== false && positives.length + negatives.length > 1) { - state.result = `(?:${state.result})`; + if (is_EOL(ch)) { + emptyLines++; + continue; + } + if (state.lineIndent < textIndent) { + if (chomping === CHOMPING_KEEP) { + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } else if (chomping === CHOMPING_CLIP) { + if (didReadContent) { + state.result += "\n"; + } + } + break; + } + if (folding) { + if (is_WHITE_SPACE(ch)) { + atMoreIndented = true; + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } else if (atMoreIndented) { + atMoreIndented = false; + state.result += common.repeat("\n", emptyLines + 1); + } else if (emptyLines === 0) { + if (didReadContent) { + state.result += " "; + } + } else { + state.result += common.repeat("\n", emptyLines); + } + } else { + state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); + } + didReadContent = true; + detectedIndent = true; + emptyLines = 0; + captureStart = state.position; + while (!is_EOL(ch) && ch !== 0) { + ch = state.input.charCodeAt(++state.position); + } + captureSegment(state, captureStart, state.position, false); } - toRegexRange.cache[cacheKey] = state; - return state.result; - }; - function collatePatterns(neg, pos, options) { - let onlyNegative = filterPatterns(neg, pos, "-", false, options) || []; - let onlyPositive = filterPatterns(pos, neg, "", false, options) || []; - let intersected = filterPatterns(neg, pos, "-?", true, options) || []; - let subpatterns = onlyNegative.concat(intersected).concat(onlyPositive); - return subpatterns.join("|"); + return true; } - function splitToRanges(min, max) { - let nines = 1; - let zeros = 1; - let stop = countNines(min, nines); - let stops = new Set([max]); - while (min <= stop && stop <= max) { - stops.add(stop); - nines += 1; - stop = countNines(min, nines); + function readBlockSequence(state, nodeIndent) { + var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - stop = countZeros(max + 1, zeros) - 1; - while (min < stop && stop <= max) { - stops.add(stop); - zeros += 1; - stop = countZeros(max + 1, zeros) - 1; + ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + if (ch !== 45) { + break; + } + following = state.input.charCodeAt(state.position + 1); + if (!is_WS_OR_EOL(following)) { + break; + } + detected = true; + state.position++; + if (skipSeparationSpace(state, true, -1)) { + if (state.lineIndent <= nodeIndent) { + _result.push(null); + ch = state.input.charCodeAt(state.position); + continue; + } + } + _line = state.line; + composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); + _result.push(state.result); + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { + throwError(state, "bad indentation of a sequence entry"); + } else if (state.lineIndent < nodeIndent) { + break; + } } - stops = [...stops]; - stops.sort(compare); - return stops; + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = "sequence"; + state.result = _result; + return true; + } + return false; } - function rangeToPattern(start, stop, options) { - if (start === stop) { - return { pattern: start, count: [], digits: 0 }; + function readBlockMapping(state, nodeIndent, flowIndent) { + var following, allowCompact, _line, _pos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = {}, keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - let zipped = zip(start, stop); - let digits = zipped.length; - let pattern = ""; - let count = 0; - for (let i = 0; i < digits; i++) { - let [startDigit, stopDigit] = zipped[i]; - if (startDigit === stopDigit) { - pattern += startDigit; - } else if (startDigit !== "0" || stopDigit !== "9") { - pattern += toCharacterClass(startDigit, stopDigit, options); + ch = state.input.charCodeAt(state.position); + while (ch !== 0) { + following = state.input.charCodeAt(state.position + 1); + _line = state.line; + _pos = state.position; + if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) { + if (ch === 63) { + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); + keyTag = keyNode = valueNode = null; + } + detected = true; + atExplicitKey = true; + allowCompact = true; + } else if (atExplicitKey) { + atExplicitKey = false; + allowCompact = true; + } else { + throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"); + } + state.position += 1; + ch = following; + } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { + if (state.line === _line) { + ch = state.input.charCodeAt(state.position); + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (ch === 58) { + ch = state.input.charCodeAt(++state.position); + if (!is_WS_OR_EOL(ch)) { + throwError(state, "a whitespace character is expected after the key-value separator within a block mapping"); + } + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); + keyTag = keyNode = valueNode = null; + } + detected = true; + atExplicitKey = false; + allowCompact = false; + keyTag = state.tag; + keyNode = state.result; + } else if (detected) { + throwError(state, "can not read an implicit mapping pair; a colon is missed"); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; + } + } else if (detected) { + throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key"); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; + } } else { - count++; + break; } - } - if (count) { - pattern += options.shorthand === true ? "\\d" : "[0-9]"; - } - return { pattern, count: [count], digits }; - } - function splitToPatterns(min, max, tok, options) { - let ranges = splitToRanges(min, max); - let tokens = []; - let start = min; - let prev; - for (let i = 0; i < ranges.length; i++) { - let max2 = ranges[i]; - let obj = rangeToPattern(String(start), String(max2), options); - let zeros = ""; - if (!tok.isPadded && prev && prev.pattern === obj.pattern) { - if (prev.count.length > 1) { - prev.count.pop(); + if (state.line === _line || state.lineIndent > nodeIndent) { + if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { + if (atExplicitKey) { + keyNode = state.result; + } else { + valueNode = state.result; + } } - prev.count.push(obj.count[0]); - prev.string = prev.pattern + toQuantifier(prev.count); - start = max2 + 1; - continue; + if (!atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); + keyTag = keyNode = valueNode = null; + } + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); } - if (tok.isPadded) { - zeros = padZeros(max2, tok, options); + if (state.lineIndent > nodeIndent && ch !== 0) { + throwError(state, "bad indentation of a mapping entry"); + } else if (state.lineIndent < nodeIndent) { + break; } - obj.string = zeros + obj.pattern + toQuantifier(obj.count); - tokens.push(obj); - start = max2 + 1; - prev = obj; } - return tokens; - } - function filterPatterns(arr, comparison, prefix, intersection, options) { - let result = []; - for (let ele of arr) { - let { string } = ele; - if (!intersection && !contains(comparison, "string", string)) { - result.push(prefix + string); - } - if (intersection && contains(comparison, "string", string)) { - result.push(prefix + string); - } + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); } - return result; - } - function zip(a, b) { - let arr = []; - for (let i = 0; i < a.length; i++) - arr.push([a[i], b[i]]); - return arr; - } - function compare(a, b) { - return a > b ? 1 : b > a ? -1 : 0; - } - function contains(arr, key, val) { - return arr.some((ele) => ele[key] === val); - } - function countNines(min, len) { - return Number(String(min).slice(0, -len) + "9".repeat(len)); - } - function countZeros(integer, zeros) { - return integer - integer % Math.pow(10, zeros); - } - function toQuantifier(digits) { - let [start = 0, stop = ""] = digits; - if (stop || start > 1) { - return `{${start + (stop ? "," + stop : "")}}`; + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = "mapping"; + state.result = _result; } - return ""; - } - function toCharacterClass(a, b, options) { - return `[${a}${b - a === 1 ? "" : "-"}${b}]`; - } - function hasPadding(str) { - return /^-?(0+)\d/.test(str); + return detected; } - function padZeros(value, tok, options) { - if (!tok.isPadded) { - return value; + function readTagProperty(state) { + var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 33) + return false; + if (state.tag !== null) { + throwError(state, "duplication of a tag property"); } - let diff = Math.abs(tok.maxLen - String(value).length); - let relax = options.relaxZeros !== false; - switch (diff) { - case 0: - return ""; - case 1: - return relax ? "0?" : "0"; - case 2: - return relax ? "0{0,2}" : "00"; - default: { - return relax ? `0{0,${diff}}` : `0{${diff}}`; + ch = state.input.charCodeAt(++state.position); + if (ch === 60) { + isVerbatim = true; + ch = state.input.charCodeAt(++state.position); + } else if (ch === 33) { + isNamed = true; + tagHandle = "!!"; + ch = state.input.charCodeAt(++state.position); + } else { + tagHandle = "!"; + } + _position = state.position; + if (isVerbatim) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 0 && ch !== 62); + if (state.position < state.length) { + tagName = state.input.slice(_position, state.position); + ch = state.input.charCodeAt(++state.position); + } else { + throwError(state, "unexpected end of the stream within a verbatim tag"); + } + } else { + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + if (ch === 33) { + if (!isNamed) { + tagHandle = state.input.slice(_position - 1, state.position + 1); + if (!PATTERN_TAG_HANDLE.test(tagHandle)) { + throwError(state, "named tag handle cannot contain such characters"); + } + isNamed = true; + _position = state.position + 1; + } else { + throwError(state, "tag suffix cannot contain exclamation marks"); + } + } + ch = state.input.charCodeAt(++state.position); + } + tagName = state.input.slice(_position, state.position); + if (PATTERN_FLOW_INDICATORS.test(tagName)) { + throwError(state, "tag suffix cannot contain flow indicator characters"); } } + if (tagName && !PATTERN_TAG_URI.test(tagName)) { + throwError(state, "tag name cannot contain such characters: " + tagName); + } + if (isVerbatim) { + state.tag = tagName; + } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { + state.tag = state.tagMap[tagHandle] + tagName; + } else if (tagHandle === "!") { + state.tag = "!" + tagName; + } else if (tagHandle === "!!") { + state.tag = "tag:yaml.org,2002:" + tagName; + } else { + throwError(state, 'undeclared tag handle "' + tagHandle + '"'); + } + return true; } - toRegexRange.cache = {}; - toRegexRange.clearCache = () => toRegexRange.cache = {}; - module2.exports = toRegexRange; - } -}); - -// ../../node_modules/.pnpm/fill-range@7.0.1/node_modules/fill-range/index.js -var require_fill_range = __commonJS({ - "../../node_modules/.pnpm/fill-range@7.0.1/node_modules/fill-range/index.js"(exports2, module2) { - "use strict"; - var util = require("util"); - var toRegexRange = require_to_regex_range(); - var isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); - var transform = (toNumber) => { - return (value) => toNumber === true ? Number(value) : String(value); - }; - var isValidValue = (value) => { - return typeof value === "number" || typeof value === "string" && value !== ""; - }; - var isNumber = (num) => Number.isInteger(+num); - var zeros = (input) => { - let value = `${input}`; - let index = -1; - if (value[0] === "-") - value = value.slice(1); - if (value === "0") + function readAnchorProperty(state) { + var _position, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 38) return false; - while (value[++index] === "0") - ; - return index > 0; - }; - var stringify = (start, end, options) => { - if (typeof start === "string" || typeof end === "string") { - return true; + if (state.anchor !== null) { + throwError(state, "duplication of an anchor property"); } - return options.stringify === true; - }; - var pad = (input, maxLength, toNumber) => { - if (maxLength > 0) { - let dash = input[0] === "-" ? "-" : ""; - if (dash) - input = input.slice(1); - input = dash + input.padStart(dash ? maxLength - 1 : maxLength, "0"); + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); } - if (toNumber === false) { - return String(input); + if (state.position === _position) { + throwError(state, "name of an anchor node must contain at least one character"); } - return input; - }; - var toMaxLen = (input, maxLength) => { - let negative = input[0] === "-" ? "-" : ""; - if (negative) { - input = input.slice(1); - maxLength--; + state.anchor = state.input.slice(_position, state.position); + return true; + } + function readAlias(state) { + var _position, alias, ch; + ch = state.input.charCodeAt(state.position); + if (ch !== 42) + return false; + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); } - while (input.length < maxLength) - input = "0" + input; - return negative ? "-" + input : input; - }; - var toSequence = (parts, options) => { - parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); - parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); - let prefix = options.capture ? "" : "?:"; - let positives = ""; - let negatives = ""; - let result; - if (parts.positives.length) { - positives = parts.positives.join("|"); + if (state.position === _position) { + throwError(state, "name of an alias node must contain at least one character"); } - if (parts.negatives.length) { - negatives = `-(${prefix}${parts.negatives.join("|")})`; + alias = state.input.slice(_position, state.position); + if (!_hasOwnProperty.call(state.anchorMap, alias)) { + throwError(state, 'unidentified alias "' + alias + '"'); } - if (positives && negatives) { - result = `${positives}|${negatives}`; - } else { - result = positives || negatives; + state.result = state.anchorMap[alias]; + skipSeparationSpace(state, true, -1); + return true; + } + function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { + var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, type, flowIndent, blockIndent; + if (state.listener !== null) { + state.listener("open", state); } - if (options.wrap) { - return `(${prefix}${result})`; + state.tag = null; + state.anchor = null; + state.kind = null; + state.result = null; + allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext; + if (allowToSeek) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; + } + } } - return result; - }; - var toRange = (a, b, isNumbers, options) => { - if (isNumbers) { - return toRegexRange(a, b, { wrap: false, ...options }); + if (indentStatus === 1) { + while (readTagProperty(state) || readAnchorProperty(state)) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; + allowBlockCollections = allowBlockStyles; + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; + } + } else { + allowBlockCollections = false; + } + } } - let start = String.fromCharCode(a); - if (a === b) - return start; - let stop = String.fromCharCode(b); - return `[${start}-${stop}]`; - }; - var toRegex = (start, end, options) => { - if (Array.isArray(start)) { - let wrap = options.wrap === true; - let prefix = options.capture ? "" : "?:"; - return wrap ? `(${prefix}${start.join("|")})` : start.join("|"); + if (allowBlockCollections) { + allowBlockCollections = atNewLine || allowCompact; } - return toRegexRange(start, end, options); - }; - var rangeError = (...args2) => { - return new RangeError("Invalid range arguments: " + util.inspect(...args2)); - }; - var invalidRange = (start, end, options) => { - if (options.strictRanges === true) - throw rangeError([start, end]); - return []; - }; - var invalidStep = (step, options) => { - if (options.strictRanges === true) { - throw new TypeError(`Expected step "${step}" to be a number`); + if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { + if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { + flowIndent = parentIndent; + } else { + flowIndent = parentIndent + 1; + } + blockIndent = state.position - state.lineStart; + if (indentStatus === 1) { + if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) { + hasContent = true; + } else { + if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) { + hasContent = true; + } else if (readAlias(state)) { + hasContent = true; + if (state.tag !== null || state.anchor !== null) { + throwError(state, "alias node should not have any properties"); + } + } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { + hasContent = true; + if (state.tag === null) { + state.tag = "?"; + } + } + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + } + } else if (indentStatus === 0) { + hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); + } } - return []; - }; - var fillNumbers = (start, end, step = 1, options = {}) => { - let a = Number(start); - let b = Number(end); - if (!Number.isInteger(a) || !Number.isInteger(b)) { - if (options.strictRanges === true) - throw rangeError([start, end]); - return []; + if (state.tag !== null && state.tag !== "!") { + if (state.tag === "?") { + if (state.result !== null && state.kind !== "scalar") { + throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + } + for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { + type = state.implicitTypes[typeIndex]; + if (type.resolve(state.result)) { + state.result = type.construct(state.result); + state.tag = type.tag; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + break; + } + } + } else if (_hasOwnProperty.call(state.typeMap[state.kind || "fallback"], state.tag)) { + type = state.typeMap[state.kind || "fallback"][state.tag]; + if (state.result !== null && type.kind !== state.kind) { + throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); + } + if (!type.resolve(state.result)) { + throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag"); + } else { + state.result = type.construct(state.result); + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + } + } else { + throwError(state, "unknown tag !<" + state.tag + ">"); + } } - if (a === 0) - a = 0; - if (b === 0) - b = 0; - let descending = a > b; - let startString = String(start); - let endString = String(end); - let stepString = String(step); - step = Math.max(Math.abs(step), 1); - let padded = zeros(startString) || zeros(endString) || zeros(stepString); - let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; - let toNumber = padded === false && stringify(start, end, options) === false; - let format = options.transform || transform(toNumber); - if (options.toRegex && step === 1) { - return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); + if (state.listener !== null) { + state.listener("close", state); } - let parts = { negatives: [], positives: [] }; - let push = (num) => parts[num < 0 ? "negatives" : "positives"].push(Math.abs(num)); - let range = []; - let index = 0; - while (descending ? a >= b : a <= b) { - if (options.toRegex === true && step > 1) { - push(a); + return state.tag !== null || state.anchor !== null || hasContent; + } + function readDocument(state) { + var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch; + state.version = null; + state.checkLineBreaks = state.legacy; + state.tagMap = {}; + state.anchorMap = {}; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + if (state.lineIndent > 0 || ch !== 37) { + break; + } + hasDirectives = true; + ch = state.input.charCodeAt(++state.position); + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } + directiveName = state.input.slice(_position, state.position); + directiveArgs = []; + if (directiveName.length < 1) { + throwError(state, "directive name must not be less than one character in length"); + } + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } + if (ch === 35) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 0 && !is_EOL(ch)); + break; + } + if (is_EOL(ch)) + break; + _position = state.position; + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } + directiveArgs.push(state.input.slice(_position, state.position)); + } + if (ch !== 0) + readLineBreak(state); + if (_hasOwnProperty.call(directiveHandlers, directiveName)) { + directiveHandlers[directiveName](state, directiveName, directiveArgs); } else { - range.push(pad(format(a, index), maxLen, toNumber)); + throwWarning(state, 'unknown document directive "' + directiveName + '"'); } - a = descending ? a - step : a + step; - index++; } - if (options.toRegex === true) { - return step > 1 ? toSequence(parts, options) : toRegex(range, null, { wrap: false, ...options }); + skipSeparationSpace(state, true, -1); + if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) { + state.position += 3; + skipSeparationSpace(state, true, -1); + } else if (hasDirectives) { + throwError(state, "directives end mark is expected"); } - return range; - }; - var fillLetters = (start, end, step = 1, options = {}) => { - if (!isNumber(start) && start.length > 1 || !isNumber(end) && end.length > 1) { - return invalidRange(start, end, options); + composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); + skipSeparationSpace(state, true, -1); + if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { + throwWarning(state, "non-ASCII line breaks are interpreted as content"); } - let format = options.transform || ((val) => String.fromCharCode(val)); - let a = `${start}`.charCodeAt(0); - let b = `${end}`.charCodeAt(0); - let descending = a > b; - let min = Math.min(a, b); - let max = Math.max(a, b); - if (options.toRegex && step === 1) { - return toRange(min, max, false, options); + state.documents.push(state.result); + if (state.position === state.lineStart && testDocumentSeparator(state)) { + if (state.input.charCodeAt(state.position) === 46) { + state.position += 3; + skipSeparationSpace(state, true, -1); + } + return; } - let range = []; - let index = 0; - while (descending ? a >= b : a <= b) { - range.push(format(a, index)); - a = descending ? a - step : a + step; - index++; + if (state.position < state.length - 1) { + throwError(state, "end of the stream or a document separator is expected"); + } else { + return; } - if (options.toRegex === true) { - return toRegex(range, null, { wrap: false, options }); + } + function loadDocuments(input, options) { + input = String(input); + options = options || {}; + if (input.length !== 0) { + if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) { + input += "\n"; + } + if (input.charCodeAt(0) === 65279) { + input = input.slice(1); + } } - return range; - }; - var fill = (start, end, step, options = {}) => { - if (end == null && isValidValue(start)) { - return [start]; + var state = new State(input, options); + var nullpos = input.indexOf("\0"); + if (nullpos !== -1) { + state.position = nullpos; + throwError(state, "null byte is not allowed in input"); } - if (!isValidValue(start) || !isValidValue(end)) { - return invalidRange(start, end, options); + state.input += "\0"; + while (state.input.charCodeAt(state.position) === 32) { + state.lineIndent += 1; + state.position += 1; } - if (typeof step === "function") { - return fill(start, end, 1, { transform: step }); + while (state.position < state.length - 1) { + readDocument(state); } - if (isObject(step)) { - return fill(start, end, 0, step); + return state.documents; + } + function loadAll(input, iterator, options) { + if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") { + options = iterator; + iterator = null; } - let opts = { ...options }; - if (opts.capture === true) - opts.wrap = true; - step = step || opts.step || 1; - if (!isNumber(step)) { - if (step != null && !isObject(step)) - return invalidStep(step, opts); - return fill(start, end, 1, step); + var documents = loadDocuments(input, options); + if (typeof iterator !== "function") { + return documents; } - if (isNumber(start) && isNumber(end)) { - return fillNumbers(start, end, step, opts); + for (var index = 0, length = documents.length; index < length; index += 1) { + iterator(documents[index]); } - return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); - }; - module2.exports = fill; + } + function load(input, options) { + var documents = loadDocuments(input, options); + if (documents.length === 0) { + return void 0; + } else if (documents.length === 1) { + return documents[0]; + } + throw new YAMLException("expected a single document in the stream, but found more"); + } + function safeLoadAll(input, iterator, options) { + if (typeof iterator === "object" && iterator !== null && typeof options === "undefined") { + options = iterator; + iterator = null; + } + return loadAll(input, iterator, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); + } + function safeLoad(input, options) { + return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); + } + module2.exports.loadAll = loadAll; + module2.exports.load = load; + module2.exports.safeLoadAll = safeLoadAll; + module2.exports.safeLoad = safeLoad; } }); -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/compile.js -var require_compile = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/compile.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/dumper.js +var require_dumper2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/dumper.js"(exports2, module2) { "use strict"; - var fill = require_fill_range(); - var utils = require_utils3(); - var compile = (ast, options = {}) => { - let walk = (node, parent = {}) => { - let invalidBlock = utils.isInvalidBrace(parent); - let invalidNode = node.invalid === true && options.escapeInvalid === true; - let invalid = invalidBlock === true || invalidNode === true; - let prefix = options.escapeInvalid === true ? "\\" : ""; - let output = ""; - if (node.isOpen === true) { - return prefix + node.value; - } - if (node.isClose === true) { - return prefix + node.value; - } - if (node.type === "open") { - return invalid ? prefix + node.value : "("; + var common = require_common6(); + var YAMLException = require_exception2(); + var DEFAULT_FULL_SCHEMA = require_default_full(); + var DEFAULT_SAFE_SCHEMA = require_default_safe(); + var _toString = Object.prototype.toString; + var _hasOwnProperty = Object.prototype.hasOwnProperty; + var CHAR_TAB = 9; + var CHAR_LINE_FEED = 10; + var CHAR_CARRIAGE_RETURN = 13; + var CHAR_SPACE = 32; + var CHAR_EXCLAMATION = 33; + var CHAR_DOUBLE_QUOTE = 34; + var CHAR_SHARP = 35; + var CHAR_PERCENT = 37; + var CHAR_AMPERSAND = 38; + var CHAR_SINGLE_QUOTE = 39; + var CHAR_ASTERISK = 42; + var CHAR_COMMA = 44; + var CHAR_MINUS = 45; + var CHAR_COLON = 58; + var CHAR_EQUALS = 61; + var CHAR_GREATER_THAN = 62; + var CHAR_QUESTION = 63; + var CHAR_COMMERCIAL_AT = 64; + var CHAR_LEFT_SQUARE_BRACKET = 91; + var CHAR_RIGHT_SQUARE_BRACKET = 93; + var CHAR_GRAVE_ACCENT = 96; + var CHAR_LEFT_CURLY_BRACKET = 123; + var CHAR_VERTICAL_LINE = 124; + var CHAR_RIGHT_CURLY_BRACKET = 125; + var ESCAPE_SEQUENCES = {}; + ESCAPE_SEQUENCES[0] = "\\0"; + ESCAPE_SEQUENCES[7] = "\\a"; + ESCAPE_SEQUENCES[8] = "\\b"; + ESCAPE_SEQUENCES[9] = "\\t"; + ESCAPE_SEQUENCES[10] = "\\n"; + ESCAPE_SEQUENCES[11] = "\\v"; + ESCAPE_SEQUENCES[12] = "\\f"; + ESCAPE_SEQUENCES[13] = "\\r"; + ESCAPE_SEQUENCES[27] = "\\e"; + ESCAPE_SEQUENCES[34] = '\\"'; + ESCAPE_SEQUENCES[92] = "\\\\"; + ESCAPE_SEQUENCES[133] = "\\N"; + ESCAPE_SEQUENCES[160] = "\\_"; + ESCAPE_SEQUENCES[8232] = "\\L"; + ESCAPE_SEQUENCES[8233] = "\\P"; + var DEPRECATED_BOOLEANS_SYNTAX = [ + "y", + "Y", + "yes", + "Yes", + "YES", + "on", + "On", + "ON", + "n", + "N", + "no", + "No", + "NO", + "off", + "Off", + "OFF" + ]; + function compileStyleMap(schema, map) { + var result2, keys, index, length, tag, style, type; + if (map === null) + return {}; + result2 = {}; + keys = Object.keys(map); + for (index = 0, length = keys.length; index < length; index += 1) { + tag = keys[index]; + style = String(map[tag]); + if (tag.slice(0, 2) === "!!") { + tag = "tag:yaml.org,2002:" + tag.slice(2); } - if (node.type === "close") { - return invalid ? prefix + node.value : ")"; + type = schema.compiledTypeMap["fallback"][tag]; + if (type && _hasOwnProperty.call(type.styleAliases, style)) { + style = type.styleAliases[style]; } - if (node.type === "comma") { - return node.prev.type === "comma" ? "" : invalid ? node.value : "|"; + result2[tag] = style; + } + return result2; + } + function encodeHex(character) { + var string, handle, length; + string = character.toString(16).toUpperCase(); + if (character <= 255) { + handle = "x"; + length = 2; + } else if (character <= 65535) { + handle = "u"; + length = 4; + } else if (character <= 4294967295) { + handle = "U"; + length = 8; + } else { + throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF"); + } + return "\\" + handle + common.repeat("0", length - string.length) + string; + } + function State(options) { + this.schema = options["schema"] || DEFAULT_FULL_SCHEMA; + this.indent = Math.max(1, options["indent"] || 2); + this.noArrayIndent = options["noArrayIndent"] || false; + this.skipInvalid = options["skipInvalid"] || false; + this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"]; + this.styleMap = compileStyleMap(this.schema, options["styles"] || null); + this.sortKeys = options["sortKeys"] || false; + this.lineWidth = options["lineWidth"] || 80; + this.noRefs = options["noRefs"] || false; + this.noCompatMode = options["noCompatMode"] || false; + this.condenseFlow = options["condenseFlow"] || false; + this.implicitTypes = this.schema.compiledImplicit; + this.explicitTypes = this.schema.compiledExplicit; + this.tag = null; + this.result = ""; + this.duplicates = []; + this.usedDuplicates = null; + } + function indentString(string, spaces) { + var ind = common.repeat(" ", spaces), position = 0, next = -1, result2 = "", line, length = string.length; + while (position < length) { + next = string.indexOf("\n", position); + if (next === -1) { + line = string.slice(position); + position = length; + } else { + line = string.slice(position, next + 1); + position = next + 1; } - if (node.value) { - return node.value; + if (line.length && line !== "\n") + result2 += ind; + result2 += line; + } + return result2; + } + function generateNextLine(state, level) { + return "\n" + common.repeat(" ", state.indent * level); + } + function testImplicitResolving(state, str) { + var index, length, type; + for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { + type = state.implicitTypes[index]; + if (type.resolve(str)) { + return true; } - if (node.nodes && node.ranges > 0) { - let args2 = utils.reduce(node.nodes); - let range = fill(...args2, { ...options, wrap: false, toRegex: true }); - if (range.length !== 0) { - return args2.length > 1 && range.length > 1 ? `(${range})` : range; + } + return false; + } + function isWhitespace(c) { + return c === CHAR_SPACE || c === CHAR_TAB; + } + function isPrintable(c) { + return 32 <= c && c <= 126 || 161 <= c && c <= 55295 && c !== 8232 && c !== 8233 || 57344 <= c && c <= 65533 && c !== 65279 || 65536 <= c && c <= 1114111; + } + function isNsChar(c) { + return isPrintable(c) && !isWhitespace(c) && c !== 65279 && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; + } + function isPlainSafe(c, prev) { + return isPrintable(c) && c !== 65279 && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_COLON && (c !== CHAR_SHARP || prev && isNsChar(prev)); + } + function isPlainSafeFirst(c) { + return isPrintable(c) && c !== 65279 && !isWhitespace(c) && c !== CHAR_MINUS && c !== CHAR_QUESTION && c !== CHAR_COLON && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_SHARP && c !== CHAR_AMPERSAND && c !== CHAR_ASTERISK && c !== CHAR_EXCLAMATION && c !== CHAR_VERTICAL_LINE && c !== CHAR_EQUALS && c !== CHAR_GREATER_THAN && c !== CHAR_SINGLE_QUOTE && c !== CHAR_DOUBLE_QUOTE && c !== CHAR_PERCENT && c !== CHAR_COMMERCIAL_AT && c !== CHAR_GRAVE_ACCENT; + } + function needIndentIndicator(string) { + var leadingSpaceRe = /^\n* /; + return leadingSpaceRe.test(string); + } + var STYLE_PLAIN = 1; + var STYLE_SINGLE = 2; + var STYLE_LITERAL = 3; + var STYLE_FOLDED = 4; + var STYLE_DOUBLE = 5; + function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { + var i; + var char, prev_char; + var hasLineBreak = false; + var hasFoldableLine = false; + var shouldTrackWidth = lineWidth !== -1; + var previousLineBreak = -1; + var plain = isPlainSafeFirst(string.charCodeAt(0)) && !isWhitespace(string.charCodeAt(string.length - 1)); + if (singleLineOnly) { + for (i = 0; i < string.length; i++) { + char = string.charCodeAt(i); + if (!isPrintable(char)) { + return STYLE_DOUBLE; } + prev_char = i > 0 ? string.charCodeAt(i - 1) : null; + plain = plain && isPlainSafe(char, prev_char); } - if (node.nodes) { - for (let child of node.nodes) { - output += walk(child, node); + } else { + for (i = 0; i < string.length; i++) { + char = string.charCodeAt(i); + if (char === CHAR_LINE_FEED) { + hasLineBreak = true; + if (shouldTrackWidth) { + hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented. + i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "; + previousLineBreak = i; + } + } else if (!isPrintable(char)) { + return STYLE_DOUBLE; } + prev_char = i > 0 ? string.charCodeAt(i - 1) : null; + plain = plain && isPlainSafe(char, prev_char); } - return output; - }; - return walk(ast); - }; - module2.exports = compile; - } -}); - -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/expand.js -var require_expand2 = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/expand.js"(exports2, module2) { - "use strict"; - var fill = require_fill_range(); - var stringify = require_stringify3(); - var utils = require_utils3(); - var append = (queue = "", stash = "", enclose = false) => { - let result = []; - queue = [].concat(queue); - stash = [].concat(stash); - if (!stash.length) - return queue; - if (!queue.length) { - return enclose ? utils.flatten(stash).map((ele) => `{${ele}}`) : stash; + hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "); } - for (let item of queue) { - if (Array.isArray(item)) { - for (let value of item) { - result.push(append(value, stash, enclose)); - } - } else { - for (let ele of stash) { - if (enclose === true && typeof ele === "string") - ele = `{${ele}}`; - result.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); - } - } + if (!hasLineBreak && !hasFoldableLine) { + return plain && !testAmbiguousType(string) ? STYLE_PLAIN : STYLE_SINGLE; } - return utils.flatten(result); - }; - var expand = (ast, options = {}) => { - let rangeLimit = options.rangeLimit === void 0 ? 1e3 : options.rangeLimit; - let walk = (node, parent = {}) => { - node.queue = []; - let p = parent; - let q = parent.queue; - while (p.type !== "brace" && p.type !== "root" && p.parent) { - p = p.parent; - q = p.queue; + if (indentPerLevel > 9 && needIndentIndicator(string)) { + return STYLE_DOUBLE; + } + return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; + } + function writeScalar(state, string, level, iskey) { + state.dump = function() { + if (string.length === 0) { + return "''"; } - if (node.invalid || node.dollar) { - q.push(append(q.pop(), stringify(node, options))); - return; + if (!state.noCompatMode && DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { + return "'" + string + "'"; } - if (node.type === "brace" && node.invalid !== true && node.nodes.length === 2) { - q.push(append(q.pop(), ["{}"])); - return; + var indent = state.indent * Math.max(1, level); + var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); + var singleLineOnly = iskey || state.flowLevel > -1 && level >= state.flowLevel; + function testAmbiguity(string2) { + return testImplicitResolving(state, string2); } - if (node.nodes && node.ranges > 0) { - let args2 = utils.reduce(node.nodes); - if (utils.exceedsLimit(...args2, options.step, rangeLimit)) { - throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit."); - } - let range = fill(...args2, options); - if (range.length === 0) { - range = stringify(node, options); - } - q.push(append(q.pop(), range)); - node.nodes = []; - return; + switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { + case STYLE_PLAIN: + return string; + case STYLE_SINGLE: + return "'" + string.replace(/'/g, "''") + "'"; + case STYLE_LITERAL: + return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent)); + case STYLE_FOLDED: + return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); + case STYLE_DOUBLE: + return '"' + escapeString(string, lineWidth) + '"'; + default: + throw new YAMLException("impossible error: invalid scalar style"); } - let enclose = utils.encloseBrace(node); - let queue = node.queue; - let block = node; - while (block.type !== "brace" && block.type !== "root" && block.parent) { - block = block.parent; - queue = block.queue; + }(); + } + function blockHeader(string, indentPerLevel) { + var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ""; + var clip = string[string.length - 1] === "\n"; + var keep = clip && (string[string.length - 2] === "\n" || string === "\n"); + var chomp = keep ? "+" : clip ? "" : "-"; + return indentIndicator + chomp + "\n"; + } + function dropEndingNewline(string) { + return string[string.length - 1] === "\n" ? string.slice(0, -1) : string; + } + function foldString(string, width) { + var lineRe = /(\n+)([^\n]*)/g; + var result2 = function() { + var nextLF = string.indexOf("\n"); + nextLF = nextLF !== -1 ? nextLF : string.length; + lineRe.lastIndex = nextLF; + return foldLine(string.slice(0, nextLF), width); + }(); + var prevMoreIndented = string[0] === "\n" || string[0] === " "; + var moreIndented; + var match; + while (match = lineRe.exec(string)) { + var prefix = match[1], line = match[2]; + moreIndented = line[0] === " "; + result2 += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width); + prevMoreIndented = moreIndented; + } + return result2; + } + function foldLine(line, width) { + if (line === "" || line[0] === " ") + return line; + var breakRe = / [^ ]/g; + var match; + var start = 0, end, curr = 0, next = 0; + var result2 = ""; + while (match = breakRe.exec(line)) { + next = match.index; + if (next - start > width) { + end = curr > start ? curr : next; + result2 += "\n" + line.slice(start, end); + start = end + 1; } - for (let i = 0; i < node.nodes.length; i++) { - let child = node.nodes[i]; - if (child.type === "comma" && node.type === "brace") { - if (i === 1) - queue.push(""); - queue.push(""); - continue; - } - if (child.type === "close") { - q.push(append(q.pop(), queue, enclose)); - continue; - } - if (child.value && child.type !== "open") { - queue.push(append(queue.pop(), child.value)); + curr = next; + } + result2 += "\n"; + if (line.length - start > width && curr > start) { + result2 += line.slice(start, curr) + "\n" + line.slice(curr + 1); + } else { + result2 += line.slice(start); + } + return result2.slice(1); + } + function escapeString(string) { + var result2 = ""; + var char, nextChar; + var escapeSeq; + for (var i = 0; i < string.length; i++) { + char = string.charCodeAt(i); + if (char >= 55296 && char <= 56319) { + nextChar = string.charCodeAt(i + 1); + if (nextChar >= 56320 && nextChar <= 57343) { + result2 += encodeHex((char - 55296) * 1024 + nextChar - 56320 + 65536); + i++; continue; } - if (child.nodes) { - walk(child, node); - } } - return queue; - }; - return utils.flatten(walk(ast)); - }; - module2.exports = expand; - } -}); - -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/constants.js -var require_constants4 = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/constants.js"(exports2, module2) { - "use strict"; - module2.exports = { - MAX_LENGTH: 1024 * 64, - CHAR_0: "0", - CHAR_9: "9", - CHAR_UPPERCASE_A: "A", - CHAR_LOWERCASE_A: "a", - CHAR_UPPERCASE_Z: "Z", - CHAR_LOWERCASE_Z: "z", - CHAR_LEFT_PARENTHESES: "(", - CHAR_RIGHT_PARENTHESES: ")", - CHAR_ASTERISK: "*", - CHAR_AMPERSAND: "&", - CHAR_AT: "@", - CHAR_BACKSLASH: "\\", - CHAR_BACKTICK: "`", - CHAR_CARRIAGE_RETURN: "\r", - CHAR_CIRCUMFLEX_ACCENT: "^", - CHAR_COLON: ":", - CHAR_COMMA: ",", - CHAR_DOLLAR: "$", - CHAR_DOT: ".", - CHAR_DOUBLE_QUOTE: '"', - CHAR_EQUAL: "=", - CHAR_EXCLAMATION_MARK: "!", - CHAR_FORM_FEED: "\f", - CHAR_FORWARD_SLASH: "/", - CHAR_HASH: "#", - CHAR_HYPHEN_MINUS: "-", - CHAR_LEFT_ANGLE_BRACKET: "<", - CHAR_LEFT_CURLY_BRACE: "{", - CHAR_LEFT_SQUARE_BRACKET: "[", - CHAR_LINE_FEED: "\n", - CHAR_NO_BREAK_SPACE: "\xA0", - CHAR_PERCENT: "%", - CHAR_PLUS: "+", - CHAR_QUESTION_MARK: "?", - CHAR_RIGHT_ANGLE_BRACKET: ">", - CHAR_RIGHT_CURLY_BRACE: "}", - CHAR_RIGHT_SQUARE_BRACKET: "]", - CHAR_SEMICOLON: ";", - CHAR_SINGLE_QUOTE: "'", - CHAR_SPACE: " ", - CHAR_TAB: " ", - CHAR_UNDERSCORE: "_", - CHAR_VERTICAL_LINE: "|", - CHAR_ZERO_WIDTH_NOBREAK_SPACE: "\uFEFF" - }; - } -}); - -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/parse.js -var require_parse3 = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/lib/parse.js"(exports2, module2) { - "use strict"; - var stringify = require_stringify3(); - var { - MAX_LENGTH, - CHAR_BACKSLASH, - CHAR_BACKTICK, - CHAR_COMMA, - CHAR_DOT, - CHAR_LEFT_PARENTHESES, - CHAR_RIGHT_PARENTHESES, - CHAR_LEFT_CURLY_BRACE, - CHAR_RIGHT_CURLY_BRACE, - CHAR_LEFT_SQUARE_BRACKET, - CHAR_RIGHT_SQUARE_BRACKET, - CHAR_DOUBLE_QUOTE, - CHAR_SINGLE_QUOTE, - CHAR_NO_BREAK_SPACE, - CHAR_ZERO_WIDTH_NOBREAK_SPACE - } = require_constants4(); - var parse = (input, options = {}) => { - if (typeof input !== "string") { - throw new TypeError("Expected a string"); - } - let opts = options || {}; - let max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; - if (input.length > max) { - throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); + escapeSeq = ESCAPE_SEQUENCES[char]; + result2 += !escapeSeq && isPrintable(char) ? string[i] : escapeSeq || encodeHex(char); } - let ast = { type: "root", input, nodes: [] }; - let stack2 = [ast]; - let block = ast; - let prev = ast; - let brackets = 0; - let length = input.length; - let index = 0; - let depth = 0; - let value; - let memo = {}; - const advance = () => input[index++]; - const push = (node) => { - if (node.type === "text" && prev.type === "dot") { - prev.type = "text"; - } - if (prev && prev.type === "text" && node.type === "text") { - prev.value += node.value; - return; + return result2; + } + function writeFlowSequence(state, level, object) { + var _result = "", _tag = state.tag, index, length; + for (index = 0, length = object.length; index < length; index += 1) { + if (writeNode(state, level, object[index], false, false)) { + if (index !== 0) + _result += "," + (!state.condenseFlow ? " " : ""); + _result += state.dump; } - block.nodes.push(node); - node.parent = block; - node.prev = prev; - prev = node; - return node; - }; - push({ type: "bos" }); - while (index < length) { - block = stack2[stack2.length - 1]; - value = advance(); - if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { - continue; + } + state.tag = _tag; + state.dump = "[" + _result + "]"; + } + function writeBlockSequence(state, level, object, compact) { + var _result = "", _tag = state.tag, index, length; + for (index = 0, length = object.length; index < length; index += 1) { + if (writeNode(state, level + 1, object[index], true, true)) { + if (!compact || index !== 0) { + _result += generateNextLine(state, level); + } + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + _result += "-"; + } else { + _result += "- "; + } + _result += state.dump; } - if (value === CHAR_BACKSLASH) { - push({ type: "text", value: (options.keepEscaping ? value : "") + advance() }); + } + state.tag = _tag; + state.dump = _result || "[]"; + } + function writeFlowMapping(state, level, object) { + var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer; + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + pairBuffer = ""; + if (index !== 0) + pairBuffer += ", "; + if (state.condenseFlow) + pairBuffer += '"'; + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; + if (!writeNode(state, level, objectKey, false, false)) { continue; } - if (value === CHAR_RIGHT_SQUARE_BRACKET) { - push({ type: "text", value: "\\" + value }); + if (state.dump.length > 1024) + pairBuffer += "? "; + pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " "); + if (!writeNode(state, level, objectValue, false, false)) { continue; } - if (value === CHAR_LEFT_SQUARE_BRACKET) { - brackets++; - let closed = true; - let next; - while (index < length && (next = advance())) { - value += next; - if (next === CHAR_LEFT_SQUARE_BRACKET) { - brackets++; - continue; - } - if (next === CHAR_BACKSLASH) { - value += advance(); - continue; - } - if (next === CHAR_RIGHT_SQUARE_BRACKET) { - brackets--; - if (brackets === 0) { - break; - } - } - } - push({ type: "text", value }); - continue; + pairBuffer += state.dump; + _result += pairBuffer; + } + state.tag = _tag; + state.dump = "{" + _result + "}"; + } + function writeBlockMapping(state, level, object, compact) { + var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer; + if (state.sortKeys === true) { + objectKeyList.sort(); + } else if (typeof state.sortKeys === "function") { + objectKeyList.sort(state.sortKeys); + } else if (state.sortKeys) { + throw new YAMLException("sortKeys must be a boolean or a function"); + } + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + pairBuffer = ""; + if (!compact || index !== 0) { + pairBuffer += generateNextLine(state, level); } - if (value === CHAR_LEFT_PARENTHESES) { - block = push({ type: "paren", nodes: [] }); - stack2.push(block); - push({ type: "text", value }); + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; + if (!writeNode(state, level + 1, objectKey, true, true, true)) { continue; } - if (value === CHAR_RIGHT_PARENTHESES) { - if (block.type !== "paren") { - push({ type: "text", value }); - continue; + explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024; + if (explicitPair) { + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += "?"; + } else { + pairBuffer += "? "; } - block = stack2.pop(); - push({ type: "text", value }); - block = stack2[stack2.length - 1]; - continue; } - if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { - let open = value; - let next; - if (options.keepQuotes !== true) { - value = ""; - } - while (index < length && (next = advance())) { - if (next === CHAR_BACKSLASH) { - value += next + advance(); - continue; - } - if (next === open) { - if (options.keepQuotes === true) - value += next; - break; - } - value += next; - } - push({ type: "text", value }); - continue; + pairBuffer += state.dump; + if (explicitPair) { + pairBuffer += generateNextLine(state, level); } - if (value === CHAR_LEFT_CURLY_BRACE) { - depth++; - let dollar = prev.value && prev.value.slice(-1) === "$" || block.dollar === true; - let brace = { - type: "brace", - open: true, - close: false, - dollar, - depth, - commas: 0, - ranges: 0, - nodes: [] - }; - block = push(brace); - stack2.push(block); - push({ type: "open", value }); + if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { continue; } - if (value === CHAR_RIGHT_CURLY_BRACE) { - if (block.type !== "brace") { - push({ type: "text", value }); - continue; - } - let type = "close"; - block = stack2.pop(); - block.close = true; - push({ type, value }); - depth--; - block = stack2[stack2.length - 1]; - continue; + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += ":"; + } else { + pairBuffer += ": "; } - if (value === CHAR_COMMA && depth > 0) { - if (block.ranges > 0) { - block.ranges = 0; - let open = block.nodes.shift(); - block.nodes = [open, { type: "text", value: stringify(block) }]; + pairBuffer += state.dump; + _result += pairBuffer; + } + state.tag = _tag; + state.dump = _result || "{}"; + } + function detectType(state, object, explicit) { + var _result, typeList, index, length, type, style; + typeList = explicit ? state.explicitTypes : state.implicitTypes; + for (index = 0, length = typeList.length; index < length; index += 1) { + type = typeList[index]; + if ((type.instanceOf || type.predicate) && (!type.instanceOf || typeof object === "object" && object instanceof type.instanceOf) && (!type.predicate || type.predicate(object))) { + state.tag = explicit ? type.tag : "?"; + if (type.represent) { + style = state.styleMap[type.tag] || type.defaultStyle; + if (_toString.call(type.represent) === "[object Function]") { + _result = type.represent(object, style); + } else if (_hasOwnProperty.call(type.represent, style)) { + _result = type.represent[style](object, style); + } else { + throw new YAMLException("!<" + type.tag + '> tag resolver accepts not "' + style + '" style'); + } + state.dump = _result; } - push({ type: "comma", value }); - block.commas++; - continue; + return true; } - if (value === CHAR_DOT && depth > 0 && block.commas === 0) { - let siblings = block.nodes; - if (depth === 0 || siblings.length === 0) { - push({ type: "text", value }); - continue; + } + return false; + } + function writeNode(state, level, object, block, compact, iskey) { + state.tag = null; + state.dump = object; + if (!detectType(state, object, false)) { + detectType(state, object, true); + } + var type = _toString.call(state.dump); + if (block) { + block = state.flowLevel < 0 || state.flowLevel > level; + } + var objectOrArray = type === "[object Object]" || type === "[object Array]", duplicateIndex, duplicate; + if (objectOrArray) { + duplicateIndex = state.duplicates.indexOf(object); + duplicate = duplicateIndex !== -1; + } + if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) { + compact = false; + } + if (duplicate && state.usedDuplicates[duplicateIndex]) { + state.dump = "*ref_" + duplicateIndex; + } else { + if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { + state.usedDuplicates[duplicateIndex] = true; + } + if (type === "[object Object]") { + if (block && Object.keys(state.dump).length !== 0) { + writeBlockMapping(state, level, state.dump, compact); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + state.dump; + } + } else { + writeFlowMapping(state, level, state.dump); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + " " + state.dump; + } } - if (prev.type === "dot") { - block.range = []; - prev.value += value; - prev.type = "range"; - if (block.nodes.length !== 3 && block.nodes.length !== 5) { - block.invalid = true; - block.ranges = 0; - prev.type = "text"; - continue; + } else if (type === "[object Array]") { + var arrayLevel = state.noArrayIndent && level > 0 ? level - 1 : level; + if (block && state.dump.length !== 0) { + writeBlockSequence(state, arrayLevel, state.dump, compact); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + state.dump; + } + } else { + writeFlowSequence(state, arrayLevel, state.dump); + if (duplicate) { + state.dump = "&ref_" + duplicateIndex + " " + state.dump; } - block.ranges++; - block.args = []; - continue; } - if (prev.type === "range") { - siblings.pop(); - let before = siblings[siblings.length - 1]; - before.value += prev.value + value; - prev = before; - block.ranges--; - continue; + } else if (type === "[object String]") { + if (state.tag !== "?") { + writeScalar(state, state.dump, level, iskey); } - push({ type: "dot", value }); - continue; + } else { + if (state.skipInvalid) + return false; + throw new YAMLException("unacceptable kind of an object to dump " + type); + } + if (state.tag !== null && state.tag !== "?") { + state.dump = "!<" + state.tag + "> " + state.dump; } - push({ type: "text", value }); } - do { - block = stack2.pop(); - if (block.type !== "root") { - block.nodes.forEach((node) => { - if (!node.nodes) { - if (node.type === "open") - node.isOpen = true; - if (node.type === "close") - node.isClose = true; - if (!node.nodes) - node.type = "text"; - node.invalid = true; + return true; + } + function getDuplicateReferences(object, state) { + var objects = [], duplicatesIndexes = [], index, length; + inspectNode(object, objects, duplicatesIndexes); + for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { + state.duplicates.push(objects[duplicatesIndexes[index]]); + } + state.usedDuplicates = new Array(length); + } + function inspectNode(object, objects, duplicatesIndexes) { + var objectKeyList, index, length; + if (object !== null && typeof object === "object") { + index = objects.indexOf(object); + if (index !== -1) { + if (duplicatesIndexes.indexOf(index) === -1) { + duplicatesIndexes.push(index); + } + } else { + objects.push(object); + if (Array.isArray(object)) { + for (index = 0, length = object.length; index < length; index += 1) { + inspectNode(object[index], objects, duplicatesIndexes); } - }); - let parent = stack2[stack2.length - 1]; - let index2 = parent.nodes.indexOf(block); - parent.nodes.splice(index2, 1, ...block.nodes); + } else { + objectKeyList = Object.keys(object); + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); + } + } } - } while (stack2.length > 0); - push({ type: "eos" }); - return ast; - }; - module2.exports = parse; + } + } + function dump(input, options) { + options = options || {}; + var state = new State(options); + if (!state.noRefs) + getDuplicateReferences(input, state); + if (writeNode(state, 0, input, true, true)) + return state.dump + "\n"; + return ""; + } + function safeDump(input, options) { + return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); + } + module2.exports.dump = dump; + module2.exports.safeDump = safeDump; } }); -// ../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/index.js -var require_braces = __commonJS({ - "../../node_modules/.pnpm/braces@3.0.2/node_modules/braces/index.js"(exports2, module2) { +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml.js +var require_js_yaml2 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml.js"(exports2, module2) { "use strict"; - var stringify = require_stringify3(); - var compile = require_compile(); - var expand = require_expand2(); - var parse = require_parse3(); - var braces = (input, options = {}) => { - let output = []; - if (Array.isArray(input)) { - for (let pattern of input) { - let result = braces.create(pattern, options); - if (Array.isArray(result)) { - output.push(...result); - } else { - output.push(result); + var loader = require_loader2(); + var dumper = require_dumper2(); + function deprecated(name) { + return function() { + throw new Error("Function " + name + " is deprecated and cannot be used."); + }; + } + module2.exports.Type = require_type3(); + module2.exports.Schema = require_schema2(); + module2.exports.FAILSAFE_SCHEMA = require_failsafe2(); + module2.exports.JSON_SCHEMA = require_json3(); + module2.exports.CORE_SCHEMA = require_core5(); + module2.exports.DEFAULT_SAFE_SCHEMA = require_default_safe(); + module2.exports.DEFAULT_FULL_SCHEMA = require_default_full(); + module2.exports.load = loader.load; + module2.exports.loadAll = loader.loadAll; + module2.exports.safeLoad = loader.safeLoad; + module2.exports.safeLoadAll = loader.safeLoadAll; + module2.exports.dump = dumper.dump; + module2.exports.safeDump = dumper.safeDump; + module2.exports.YAMLException = require_exception2(); + module2.exports.MINIMAL_SCHEMA = require_failsafe2(); + module2.exports.SAFE_SCHEMA = require_default_safe(); + module2.exports.DEFAULT_SCHEMA = require_default_full(); + module2.exports.scan = deprecated("scan"); + module2.exports.parse = deprecated("parse"); + module2.exports.compose = deprecated("compose"); + module2.exports.addConstructor = deprecated("addConstructor"); + } +}); + +// ../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/index.js +var require_js_yaml3 = __commonJS({ + "../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/index.js"(exports2, module2) { + "use strict"; + var yaml = require_js_yaml2(); + module2.exports = yaml; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/syml.js +var require_syml = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/grammars/syml.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - } else { - output = [].concat(braces.create(input, options)); + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); } - if (options && options.expand === true && options.nodupes === true) { - output = [...new Set(output)]; + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - return output; - }; - braces.parse = (input, options = {}) => parse(input, options); - braces.stringify = (input, options = {}) => { - if (typeof input === "string") { - return stringify(braces.parse(input, options), options); + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - return stringify(input, options); - }; - braces.compile = (input, options = {}) => { - if (typeof input === "string") { - input = braces.parse(input, options); + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); } - return compile(input, options); + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); + } + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; + } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; }; - braces.expand = (input, options = {}) => { - if (typeof input === "string") { - input = braces.parse(input, options); + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(statements) { + return [].concat(...statements); + }, peg$c1 = "-", peg$c2 = peg$literalExpectation("-", false), peg$c3 = function(value) { + return value; + }, peg$c4 = function(statements) { + return Object.assign({}, ...statements); + }, peg$c5 = "#", peg$c6 = peg$literalExpectation("#", false), peg$c7 = peg$anyExpectation(), peg$c8 = function() { + return {}; + }, peg$c9 = ":", peg$c10 = peg$literalExpectation(":", false), peg$c11 = function(property, value) { + return { [property]: value }; + }, peg$c12 = ",", peg$c13 = peg$literalExpectation(",", false), peg$c14 = function(property, other) { + return other; + }, peg$c15 = function(property, others, value) { + return Object.assign({}, ...[property].concat(others).map((property2) => ({ [property2]: value }))); + }, peg$c16 = function(statements) { + return statements; + }, peg$c17 = function(expression) { + return expression; + }, peg$c18 = peg$otherExpectation("correct indentation"), peg$c19 = " ", peg$c20 = peg$literalExpectation(" ", false), peg$c21 = function(spaces) { + return spaces.length === indentLevel * INDENT_STEP; + }, peg$c22 = function(spaces) { + return spaces.length === (indentLevel + 1) * INDENT_STEP; + }, peg$c23 = function() { + indentLevel++; + return true; + }, peg$c24 = function() { + indentLevel--; + return true; + }, peg$c25 = function() { + return text(); + }, peg$c26 = peg$otherExpectation("pseudostring"), peg$c27 = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, peg$c28 = peg$classExpectation(["\r", "\n", " ", " ", "?", ":", ",", "]", "[", "{", "}", "#", "&", "*", "!", "|", ">", "'", '"', "%", "@", "`", "-"], true, false), peg$c29 = /^[^\r\n\t ,\][{}:#"']/, peg$c30 = peg$classExpectation(["\r", "\n", " ", " ", ",", "]", "[", "{", "}", ":", "#", '"', "'"], true, false), peg$c31 = function() { + return text().replace(/^ *| *$/g, ""); + }, peg$c32 = "--", peg$c33 = peg$literalExpectation("--", false), peg$c34 = /^[a-zA-Z\/0-9]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], "/", ["0", "9"]], false, false), peg$c36 = /^[^\r\n\t :,]/, peg$c37 = peg$classExpectation(["\r", "\n", " ", " ", ":", ","], true, false), peg$c38 = "null", peg$c39 = peg$literalExpectation("null", false), peg$c40 = function() { + return null; + }, peg$c41 = "true", peg$c42 = peg$literalExpectation("true", false), peg$c43 = function() { + return true; + }, peg$c44 = "false", peg$c45 = peg$literalExpectation("false", false), peg$c46 = function() { + return false; + }, peg$c47 = peg$otherExpectation("string"), peg$c48 = '"', peg$c49 = peg$literalExpectation('"', false), peg$c50 = function() { + return ""; + }, peg$c51 = function(chars) { + return chars; + }, peg$c52 = function(chars) { + return chars.join(``); + }, peg$c53 = /^[^"\\\0-\x1F\x7F]/, peg$c54 = peg$classExpectation(['"', "\\", ["\0", ""], "\x7F"], true, false), peg$c55 = '\\"', peg$c56 = peg$literalExpectation('\\"', false), peg$c57 = function() { + return `"`; + }, peg$c58 = "\\\\", peg$c59 = peg$literalExpectation("\\\\", false), peg$c60 = function() { + return `\\`; + }, peg$c61 = "\\/", peg$c62 = peg$literalExpectation("\\/", false), peg$c63 = function() { + return `/`; + }, peg$c64 = "\\b", peg$c65 = peg$literalExpectation("\\b", false), peg$c66 = function() { + return `\b`; + }, peg$c67 = "\\f", peg$c68 = peg$literalExpectation("\\f", false), peg$c69 = function() { + return `\f`; + }, peg$c70 = "\\n", peg$c71 = peg$literalExpectation("\\n", false), peg$c72 = function() { + return ` +`; + }, peg$c73 = "\\r", peg$c74 = peg$literalExpectation("\\r", false), peg$c75 = function() { + return `\r`; + }, peg$c76 = "\\t", peg$c77 = peg$literalExpectation("\\t", false), peg$c78 = function() { + return ` `; + }, peg$c79 = "\\u", peg$c80 = peg$literalExpectation("\\u", false), peg$c81 = function(h1, h2, h3, h4) { + return String.fromCharCode(parseInt(`0x${h1}${h2}${h3}${h4}`)); + }, peg$c82 = /^[0-9a-fA-F]/, peg$c83 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "F"]], false, false), peg$c84 = peg$otherExpectation("blank space"), peg$c85 = /^[ \t]/, peg$c86 = peg$classExpectation([" ", " "], false, false), peg$c87 = peg$otherExpectation("white space"), peg$c88 = /^[ \t\n\r]/, peg$c89 = peg$classExpectation([" ", " ", "\n", "\r"], false, false), peg$c90 = "\r\n", peg$c91 = peg$literalExpectation("\r\n", false), peg$c92 = "\n", peg$c93 = peg$literalExpectation("\n", false), peg$c94 = "\r", peg$c95 = peg$literalExpectation("\r", false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; } - let result = expand(input, options); - if (options.noempty === true) { - result = result.filter(Boolean); + function text() { + return input.substring(peg$savedPos, peg$currPos); } - if (options.nodupes === true) { - result = [...new Set(result)]; + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); } - return result; - }; - braces.create = (input, options = {}) => { - if (input === "" || input.length < 3) { - return [input]; + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); } - return options.expand !== true ? braces.compile(input, options) : braces.expand(input, options); - }; - module2.exports = braces; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/constants.js -var require_constants5 = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/constants.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var WIN_SLASH = "\\\\/"; - var WIN_NO_SLASH = `[^${WIN_SLASH}]`; - var DOT_LITERAL = "\\."; - var PLUS_LITERAL = "\\+"; - var QMARK_LITERAL = "\\?"; - var SLASH_LITERAL = "\\/"; - var ONE_CHAR = "(?=.)"; - var QMARK = "[^/]"; - var END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; - var START_ANCHOR = `(?:^|${SLASH_LITERAL})`; - var DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; - var NO_DOT = `(?!${DOT_LITERAL})`; - var NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; - var NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; - var NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; - var QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; - var STAR = `${QMARK}*?`; - var POSIX_CHARS = { - DOT_LITERAL, - PLUS_LITERAL, - QMARK_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - QMARK, - END_ANCHOR, - DOTS_SLASH, - NO_DOT, - NO_DOTS, - NO_DOT_SLASH, - NO_DOTS_SLASH, - QMARK_NO_DOT, - STAR, - START_ANCHOR - }; - var WINDOWS_CHARS = { - ...POSIX_CHARS, - SLASH_LITERAL: `[${WIN_SLASH}]`, - QMARK: WIN_NO_SLASH, - STAR: `${WIN_NO_SLASH}*?`, - DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, - NO_DOT: `(?!${DOT_LITERAL})`, - NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, - NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, - NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, - QMARK_NO_DOT: `[^.${WIN_SLASH}]`, - START_ANCHOR: `(?:^|[${WIN_SLASH}])`, - END_ANCHOR: `(?:[${WIN_SLASH}]|$)` - }; - var POSIX_REGEX_SOURCE = { - alnum: "a-zA-Z0-9", - alpha: "a-zA-Z", - ascii: "\\x00-\\x7F", - blank: " \\t", - cntrl: "\\x00-\\x1F\\x7F", - digit: "0-9", - graph: "\\x21-\\x7E", - lower: "a-z", - print: "\\x20-\\x7E ", - punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~", - space: " \\t\\r\\n\\v\\f", - upper: "A-Z", - word: "A-Za-z0-9_", - xdigit: "A-Fa-f0-9" - }; - module2.exports = { - MAX_LENGTH: 1024 * 64, - POSIX_REGEX_SOURCE, - REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, - REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, - REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, - REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, - REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, - REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, - REPLACEMENTS: { - "***": "*", - "**/**": "**", - "**/**/**": "**" - }, - CHAR_0: 48, - CHAR_9: 57, - CHAR_UPPERCASE_A: 65, - CHAR_LOWERCASE_A: 97, - CHAR_UPPERCASE_Z: 90, - CHAR_LOWERCASE_Z: 122, - CHAR_LEFT_PARENTHESES: 40, - CHAR_RIGHT_PARENTHESES: 41, - CHAR_ASTERISK: 42, - CHAR_AMPERSAND: 38, - CHAR_AT: 64, - CHAR_BACKWARD_SLASH: 92, - CHAR_CARRIAGE_RETURN: 13, - CHAR_CIRCUMFLEX_ACCENT: 94, - CHAR_COLON: 58, - CHAR_COMMA: 44, - CHAR_DOT: 46, - CHAR_DOUBLE_QUOTE: 34, - CHAR_EQUAL: 61, - CHAR_EXCLAMATION_MARK: 33, - CHAR_FORM_FEED: 12, - CHAR_FORWARD_SLASH: 47, - CHAR_GRAVE_ACCENT: 96, - CHAR_HASH: 35, - CHAR_HYPHEN_MINUS: 45, - CHAR_LEFT_ANGLE_BRACKET: 60, - CHAR_LEFT_CURLY_BRACE: 123, - CHAR_LEFT_SQUARE_BRACKET: 91, - CHAR_LINE_FEED: 10, - CHAR_NO_BREAK_SPACE: 160, - CHAR_PERCENT: 37, - CHAR_PLUS: 43, - CHAR_QUESTION_MARK: 63, - CHAR_RIGHT_ANGLE_BRACKET: 62, - CHAR_RIGHT_CURLY_BRACE: 125, - CHAR_RIGHT_SQUARE_BRACKET: 93, - CHAR_SEMICOLON: 59, - CHAR_SINGLE_QUOTE: 39, - CHAR_SPACE: 32, - CHAR_TAB: 9, - CHAR_UNDERSCORE: 95, - CHAR_VERTICAL_LINE: 124, - CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, - SEP: path.sep, - extglobChars(chars) { + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; + } + peg$posDetailsCache[pos] = details; + return details; + } + } + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); return { - "!": { type: "negate", open: "(?:(?!(?:", close: `))${chars.STAR})` }, - "?": { type: "qmark", open: "(?:", close: ")?" }, - "+": { type: "plus", open: "(?:", close: ")+" }, - "*": { type: "star", open: "(?:", close: ")*" }, - "@": { type: "at", open: "(?:", close: ")" } + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } }; - }, - globChars(win32) { - return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; } - }; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/utils.js -var require_utils4 = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/utils.js"(exports2) { - "use strict"; - var path = require("path"); - var win32 = process.platform === "win32"; - var { - REGEX_BACKSLASH, - REGEX_REMOVE_BACKSLASH, - REGEX_SPECIAL_CHARS, - REGEX_SPECIAL_CHARS_GLOBAL - } = require_constants5(); - exports2.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); - exports2.hasRegexChars = (str) => REGEX_SPECIAL_CHARS.test(str); - exports2.isRegexChar = (str) => str.length === 1 && exports2.hasRegexChars(str); - exports2.escapeRegex = (str) => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1"); - exports2.toPosixSlashes = (str) => str.replace(REGEX_BACKSLASH, "/"); - exports2.removeBackslashes = (str) => { - return str.replace(REGEX_REMOVE_BACKSLASH, (match) => { - return match === "\\" ? "" : match; - }); - }; - exports2.supportsLookbehinds = () => { - const segs = process.version.slice(1).split(".").map(Number); - if (segs.length === 3 && segs[0] >= 9 || segs[0] === 8 && segs[1] >= 10) { - return true; + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; + } + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } + peg$maxFailExpected.push(expected2); } - return false; - }; - exports2.isWindows = (options) => { - if (options && typeof options.windows === "boolean") { - return options.windows; + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); } - return win32 === true || path.sep === "\\"; - }; - exports2.escapeLast = (input, char, lastIdx) => { - const idx = input.lastIndexOf(char, lastIdx); - if (idx === -1) - return input; - if (input[idx - 1] === "\\") - return exports2.escapeLast(input, char, idx - 1); - return `${input.slice(0, idx)}\\${input.slice(idx)}`; - }; - exports2.removePrefix = (input, state = {}) => { - let output = input; - if (output.startsWith("./")) { - output = output.slice(2); - state.prefix = "./"; + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); } - return output; - }; - exports2.wrapOutput = (input, state = {}, options = {}) => { - const prepend = options.contains ? "" : "^"; - const append = options.contains ? "" : "$"; - let output = `${prepend}(?:${input})${append}`; - if (state.negated === true) { - output = `(?:^(?!${output}).*$)`; + function peg$parseStart() { + var s0; + s0 = peg$parsePropertyStatements(); + return s0; } - return output; - }; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/scan.js -var require_scan2 = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/scan.js"(exports2, module2) { - "use strict"; - var utils = require_utils4(); - var { - CHAR_ASTERISK, - CHAR_AT, - CHAR_BACKWARD_SLASH, - CHAR_COMMA, - CHAR_DOT, - CHAR_EXCLAMATION_MARK, - CHAR_FORWARD_SLASH, - CHAR_LEFT_CURLY_BRACE, - CHAR_LEFT_PARENTHESES, - CHAR_LEFT_SQUARE_BRACKET, - CHAR_PLUS, - CHAR_QUESTION_MARK, - CHAR_RIGHT_CURLY_BRACE, - CHAR_RIGHT_PARENTHESES, - CHAR_RIGHT_SQUARE_BRACKET - } = require_constants5(); - var isPathSeparator = (code) => { - return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; - }; - var depth = (token) => { - if (token.isPrefix !== true) { - token.depth = token.isGlobstar ? Infinity : 1; + function peg$parseItemStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseItemStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseItemStatement(); + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s1); + } + s0 = s1; + return s0; } - }; - var scan = (input, options) => { - const opts = options || {}; - const length = input.length - 1; - const scanToEnd = opts.parts === true || opts.scanToEnd === true; - const slashes = []; - const tokens = []; - const parts = []; - let str = input; - let index = -1; - let start = 0; - let lastIndex = 0; - let isBrace = false; - let isBracket = false; - let isGlob = false; - let isExtglob = false; - let isGlobstar = false; - let braceEscaped = false; - let backslashes = false; - let negated = false; - let negatedExtglob = false; - let finished = false; - let braces = 0; - let prev; - let code; - let token = { value: "", depth: 0, isGlob: false }; - const eos = () => index >= length; - const peek = () => str.charCodeAt(index + 1); - const advance = () => { - prev = code; - return str.charCodeAt(++index); - }; - while (index < length) { - code = advance(); - let next; - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - code = advance(); - if (code === CHAR_LEFT_CURLY_BRACE) { - braceEscaped = true; + function peg$parseItemStatement() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s2 = peg$c1; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); + } } - continue; + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExpression(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { - braces++; - while (eos() !== true && (code = advance())) { - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - advance(); - continue; + return s0; + } + function peg$parsePropertyStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePropertyStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePropertyStatement(); + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c4(s1); + } + s0 = s1; + return s0; + } + function peg$parsePropertyStatement() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8; + s0 = peg$currPos; + s1 = peg$parseB(); + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 35) { + s3 = peg$c5; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c6); } - if (code === CHAR_LEFT_CURLY_BRACE) { - braces++; - continue; + } + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; } - if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { - isBrace = token.isBrace = true; - isGlob = token.isGlob = true; - finished = true; - if (scanToEnd === true) { - continue; + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; + } + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + s3 = [s3, s4]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseEOL_ANY(); + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseEOL_ANY(); + } + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseLegacyLiteral(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseEOL_ANY(); + if (s6 !== peg$FAILED) { + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseEOL_ANY(); + } + } else { + s5 = peg$FAILED; + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s5 = peg$c9; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 === peg$FAILED) { + s6 = null; + } + if (s6 !== peg$FAILED) { + s7 = peg$parseExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s3, s7); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - break; } - if (braceEscaped !== true && code === CHAR_COMMA) { - isBrace = token.isBrace = true; - isGlob = token.isGlob = true; - finished = true; - if (scanToEnd === true) { - continue; + } + } + return s0; + } + function peg$parseExpression() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = peg$currPos; + peg$silentFails++; + s2 = peg$currPos; + s3 = peg$parseEOL(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExtradent(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c1; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); } - break; } - if (code === CHAR_RIGHT_CURLY_BRACE) { - braces--; - if (braces === 0) { - braceEscaped = false; - isBrace = token.isBrace = true; - finished = true; - break; + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 !== peg$FAILED) { + s3 = [s3, s4, s5, s6]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - if (scanToEnd === true) { - continue; - } - break; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - if (code === CHAR_FORWARD_SLASH) { - slashes.push(index); - tokens.push(token); - token = { value: "", depth: 0, isGlob: false }; - if (finished === true) - continue; - if (prev === CHAR_DOT && index === start + 1) { - start += 2; - continue; - } - lastIndex = index + 1; - continue; + peg$silentFails--; + if (s2 !== peg$FAILED) { + peg$currPos = s1; + s1 = void 0; + } else { + s1 = peg$FAILED; } - if (opts.noext !== true) { - const isExtglobChar = code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK; - if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { - isGlob = token.isGlob = true; - isExtglob = token.isExtglob = true; - finished = true; - if (code === CHAR_EXCLAMATION_MARK && index === start) { - negatedExtglob = true; - } - if (scanToEnd === true) { - while (eos() !== true && (code = advance())) { - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - code = advance(); - continue; - } - if (code === CHAR_RIGHT_PARENTHESES) { - isGlob = token.isGlob = true; - finished = true; - break; + if (s1 !== peg$FAILED) { + s2 = peg$parseEOL_ANY(); + if (s2 !== peg$FAILED) { + s3 = peg$parseIndent(); + if (s3 !== peg$FAILED) { + s4 = peg$parseItemStatements(); + if (s4 !== peg$FAILED) { + s5 = peg$parseDedent(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - continue; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - break; - } - } - if (code === CHAR_ASTERISK) { - if (prev === CHAR_ASTERISK) - isGlobstar = token.isGlobstar = true; - isGlob = token.isGlob = true; - finished = true; - if (scanToEnd === true) { - continue; - } - break; - } - if (code === CHAR_QUESTION_MARK) { - isGlob = token.isGlob = true; - finished = true; - if (scanToEnd === true) { - continue; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - break; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (code === CHAR_LEFT_SQUARE_BRACKET) { - while (eos() !== true && (next = advance())) { - if (next === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - advance(); - continue; - } - if (next === CHAR_RIGHT_SQUARE_BRACKET) { - isBracket = token.isBracket = true; - isGlob = token.isGlob = true; - finished = true; - break; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = peg$parseIndent(); + if (s2 !== peg$FAILED) { + s3 = peg$parsePropertyStatements(); + if (s3 !== peg$FAILED) { + s4 = peg$parseDedent(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (scanToEnd === true) { - continue; - } - break; - } - if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { - negated = token.negated = true; - start++; - continue; - } - if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { - isGlob = token.isGlob = true; - if (scanToEnd === true) { - while (eos() !== true && (code = advance())) { - if (code === CHAR_LEFT_PARENTHESES) { - backslashes = token.backslashes = true; - code = advance(); - continue; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseLiteral(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseEOL_ANY(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseEOL_ANY(); + } + } else { + s2 = peg$FAILED; } - if (code === CHAR_RIGHT_PARENTHESES) { - finished = true; - break; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c17(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - continue; - } - break; - } - if (isGlob === true) { - finished = true; - if (scanToEnd === true) { - continue; } - break; - } - } - if (opts.noext === true) { - isExtglob = false; - isGlob = false; - } - let base = str; - let prefix = ""; - let glob = ""; - if (start > 0) { - prefix = str.slice(0, start); - str = str.slice(start); - lastIndex -= start; - } - if (base && isGlob === true && lastIndex > 0) { - base = str.slice(0, lastIndex); - glob = str.slice(lastIndex); - } else if (isGlob === true) { - base = ""; - glob = str; - } else { - base = str; - } - if (base && base !== "" && base !== "/" && base !== str) { - if (isPathSeparator(base.charCodeAt(base.length - 1))) { - base = base.slice(0, -1); - } - } - if (opts.unescape === true) { - if (glob) - glob = utils.removeBackslashes(glob); - if (base && backslashes === true) { - base = utils.removeBackslashes(base); } + return s0; } - const state = { - prefix, - input, - start, - base, - glob, - isBrace, - isBracket, - isGlob, - isExtglob, - isGlobstar, - negated, - negatedExtglob - }; - if (opts.tokens === true) { - state.maxDepth = 0; - if (!isPathSeparator(code)) { - tokens.push(token); + function peg$parseSamedent() { + var s0, s1, s2; + peg$silentFails++; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } } - state.tokens = tokens; - } - if (opts.parts === true || opts.tokens === true) { - let prevIndex; - for (let idx = 0; idx < slashes.length; idx++) { - const n = prevIndex ? prevIndex + 1 : start; - const i = slashes[idx]; - const value = input.slice(n, i); - if (opts.tokens) { - if (idx === 0 && start !== 0) { - tokens[idx].isPrefix = true; - tokens[idx].value = prefix; - } else { - tokens[idx].value = value; + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } - depth(tokens[idx]); - state.maxDepth += tokens[idx].depth; } - if (idx !== 0 || value !== "") { - parts.push(value); - } - prevIndex = i; } - if (prevIndex && prevIndex + 1 < input.length) { - const value = input.slice(prevIndex + 1); - parts.push(value); - if (opts.tokens) { - tokens[tokens.length - 1].value = value; - depth(tokens[tokens.length - 1]); - state.maxDepth += tokens[tokens.length - 1].depth; + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c21(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; } - } - state.slashes = slashes; - state.parts = parts; - } - return state; - }; - module2.exports = scan; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/parse.js -var require_parse4 = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/parse.js"(exports2, module2) { - "use strict"; - var constants = require_constants5(); - var utils = require_utils4(); - var { - MAX_LENGTH, - POSIX_REGEX_SOURCE, - REGEX_NON_SPECIAL_CHARS, - REGEX_SPECIAL_CHARS_BACKREF, - REPLACEMENTS - } = constants; - var expandRange = (args2, options) => { - if (typeof options.expandRange === "function") { - return options.expandRange(...args2, options); - } - args2.sort(); - const value = `[${args2.join("-")}]`; - try { - new RegExp(value); - } catch (ex) { - return args2.map((v) => utils.escapeRegex(v)).join(".."); - } - return value; - }; - var syntaxError = (type, char) => { - return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; - }; - var parse = (input, options) => { - if (typeof input !== "string") { - throw new TypeError("Expected a string"); - } - input = REPLACEMENTS[input] || input; - const opts = { ...options }; - const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; - let len = input.length; - if (len > max) { - throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); - } - const bos = { type: "bos", value: "", output: opts.prepend || "" }; - const tokens = [bos]; - const capture = opts.capture ? "" : "?:"; - const win32 = utils.isWindows(options); - const PLATFORM_CHARS = constants.globChars(win32); - const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); - const { - DOT_LITERAL, - PLUS_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - DOTS_SLASH, - NO_DOT, - NO_DOT_SLASH, - NO_DOTS_SLASH, - QMARK, - QMARK_NO_DOT, - STAR, - START_ANCHOR - } = PLATFORM_CHARS; - const globstar = (opts2) => { - return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; - }; - const nodot = opts.dot ? "" : NO_DOT; - const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; - let star = opts.bash === true ? globstar(opts) : STAR; - if (opts.capture) { - star = `(${star})`; - } - if (typeof opts.noext === "boolean") { - opts.noextglob = opts.noext; - } - const state = { - input, - index: -1, - start: 0, - dot: opts.dot === true, - consumed: "", - output: "", - prefix: "", - backtrack: false, - negated: false, - brackets: 0, - braces: 0, - parens: 0, - quotes: 0, - globstar: false, - tokens - }; - input = utils.removePrefix(input, state); - len = input.length; - const extglobs = []; - const braces = []; - const stack2 = []; - let prev = bos; - let value; - const eos = () => state.index === len - 1; - const peek = state.peek = (n = 1) => input[state.index + n]; - const advance = state.advance = () => input[++state.index] || ""; - const remaining = () => input.slice(state.index + 1); - const consume = (value2 = "", num = 0) => { - state.consumed += value2; - state.index += num; - }; - const append = (token) => { - state.output += token.output != null ? token.output : token.value; - consume(token.value); - }; - const negate = () => { - let count = 1; - while (peek() === "!" && (peek(2) !== "(" || peek(3) === "?")) { - advance(); - state.start++; - count++; - } - if (count % 2 === 0) { - return false; - } - state.negated = true; - state.start++; - return true; - }; - const increment = (type) => { - state[type]++; - stack2.push(type); - }; - const decrement = (type) => { - state[type]--; - stack2.pop(); - }; - const push = (tok) => { - if (prev.type === "globstar") { - const isBrace = state.braces > 0 && (tok.type === "comma" || tok.type === "brace"); - const isExtglob = tok.extglob === true || extglobs.length && (tok.type === "pipe" || tok.type === "paren"); - if (tok.type !== "slash" && tok.type !== "paren" && !isBrace && !isExtglob) { - state.output = state.output.slice(0, -prev.output.length); - prev.type = "star"; - prev.value = "*"; - prev.output = star; - state.output += prev.output; + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (extglobs.length && tok.type !== "paren") { - extglobs[extglobs.length - 1].inner += tok.value; - } - if (tok.value || tok.output) - append(tok); - if (prev && prev.type === "text" && tok.type === "text") { - prev.value += tok.value; - prev.output = (prev.output || "") + tok.value; - return; - } - tok.prev = prev; - tokens.push(tok); - prev = tok; - }; - const extglobOpen = (type, value2) => { - const token = { ...EXTGLOB_CHARS[value2], conditions: 1, inner: "" }; - token.prev = prev; - token.parens = state.parens; - token.output = state.output; - const output = (opts.capture ? "(" : "") + token.open; - increment("parens"); - push({ type, value: value2, output: state.output ? "" : ONE_CHAR }); - push({ type: "paren", extglob: true, value: advance(), output }); - extglobs.push(token); - }; - const extglobClose = (token) => { - let output = token.close + (opts.capture ? ")" : ""); - let rest; - if (token.type === "negate") { - let extglobStar = star; - if (token.inner && token.inner.length > 1 && token.inner.includes("/")) { - extglobStar = globstar(opts); - } - if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { - output = token.close = `)$))${extglobStar}`; - } - if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { - output = token.close = `)${rest})${extglobStar})`; - } - if (token.prev.type === "bos") { - state.negatedExtglob = true; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c18); } } - push({ type: "paren", extglob: true, value, output }); - decrement("parens"); - }; - if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { - let backslashes = false; - let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { - if (first === "\\") { - backslashes = true; - return m; + return s0; + } + function peg$parseExtradent() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } - if (first === "?") { - if (esc) { - return esc + first + (rest ? QMARK.repeat(rest.length) : ""); - } - if (index === 0) { - return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ""); + } + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } - return QMARK.repeat(chars.length); - } - if (first === ".") { - return DOT_LITERAL.repeat(chars.length); } - if (first === "*") { - if (esc) { - return esc + first + (rest ? star : ""); - } - return star; + } + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c22(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; } - return esc ? m : `\\${m}`; - }); - if (backslashes === true) { - if (opts.unescape === true) { - output = output.replace(/\\/g, ""); + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; } else { - output = output.replace(/\\+/g, (m) => { - return m.length % 2 === 0 ? "\\\\" : m ? "\\" : ""; - }); + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (output === input && opts.contains === true) { - state.output = input; - return state; + return s0; + } + function peg$parseIndent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c23(); + if (s0) { + s0 = void 0; + } else { + s0 = peg$FAILED; } - state.output = utils.wrapOutput(output, state, options); - return state; + return s0; } - while (!eos()) { - value = advance(); - if (value === "\0") { - continue; + function peg$parseDedent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c24(); + if (s0) { + s0 = void 0; + } else { + s0 = peg$FAILED; } - if (value === "\\") { - const next = peek(); - if (next === "/" && opts.bash !== true) { - continue; - } - if (next === "." || next === ";") { - continue; - } - if (!next) { - value += "\\"; - push({ type: "text", value }); - continue; - } - const match = /^\\+/.exec(remaining()); - let slashes = 0; - if (match && match[0].length > 2) { - slashes = match[0].length; - state.index += slashes; - if (slashes % 2 !== 0) { - value += "\\"; + return s0; + } + function peg$parseName() { + var s0; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); + } + return s0; + } + function peg$parseLegacyName() { + var s0, s1, s2; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parsepseudostringLegacy(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsepseudostringLegacy(); } - } - if (opts.unescape === true) { - value = advance(); } else { - value += advance(); + s1 = peg$FAILED; } - if (state.brackets === 0) { - push({ type: "text", value }); - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c25(); } + s0 = s1; } - if (state.brackets > 0 && (value !== "]" || prev.value === "[" || prev.value === "[^")) { - if (opts.posix !== false && value === ":") { - const inner = prev.value.slice(1); - if (inner.includes("[")) { - prev.posix = true; - if (inner.includes(":")) { - const idx = prev.value.lastIndexOf("["); - const pre = prev.value.slice(0, idx); - const rest2 = prev.value.slice(idx + 2); - const posix = POSIX_REGEX_SOURCE[rest2]; - if (posix) { - prev.value = pre + posix; - state.backtrack = true; - advance(); - if (!bos.output && tokens.indexOf(prev) === 1) { - bos.output = ONE_CHAR; - } - continue; - } - } + return s0; + } + function peg$parseLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parseboolean(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); } } - if (value === "[" && peek() !== ":" || value === "-" && peek() === "]") { - value = `\\${value}`; - } - if (value === "]" && (prev.value === "[" || prev.value === "[^")) { - value = `\\${value}`; - } - if (opts.posix === true && value === "!" && prev.value === "[") { - value = "^"; - } - prev.value += value; - append({ value }); - continue; - } - if (state.quotes === 1 && value !== '"') { - value = utils.escapeRegex(value); - prev.value += value; - append({ value }); - continue; - } - if (value === '"') { - state.quotes = state.quotes === 1 ? 0 : 1; - if (opts.keepQuotes === true) { - push({ type: "text", value }); - } - continue; - } - if (value === "(") { - increment("parens"); - push({ type: "paren", value }); - continue; - } - if (value === ")") { - if (state.parens === 0 && opts.strictBrackets === true) { - throw new SyntaxError(syntaxError("opening", "(")); - } - const extglob = extglobs[extglobs.length - 1]; - if (extglob && state.parens === extglob.parens + 1) { - extglobClose(extglobs.pop()); - continue; - } - push({ type: "paren", value, output: state.parens ? ")" : "\\)" }); - decrement("parens"); - continue; } - if (value === "[") { - if (opts.nobracket === true || !remaining().includes("]")) { - if (opts.nobracket !== true && opts.strictBrackets === true) { - throw new SyntaxError(syntaxError("closing", "]")); - } - value = `\\${value}`; - } else { - increment("brackets"); + return s0; + } + function peg$parseLegacyLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostringLegacy(); } - push({ type: "bracket", value }); - continue; } - if (value === "]") { - if (opts.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) { - push({ type: "text", value, output: `\\${value}` }); - continue; - } - if (state.brackets === 0) { - if (opts.strictBrackets === true) { - throw new SyntaxError(syntaxError("opening", "[")); - } - push({ type: "text", value, output: `\\${value}` }); - continue; - } - decrement("brackets"); - const prevValue = prev.value.slice(1); - if (prev.posix !== true && prevValue[0] === "^" && !prevValue.includes("/")) { - value = `/${value}`; - } - prev.value += value; - append({ value }); - if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { - continue; - } - const escaped = utils.escapeRegex(prev.value); - state.output = state.output.slice(0, -prev.value.length); - if (opts.literalBrackets === true) { - state.output += escaped; - prev.value = escaped; - continue; + return s0; + } + function peg$parsepseudostring() { + var s0, s1, s2, s3, s4, s5; + peg$silentFails++; + s0 = peg$currPos; + if (peg$c27.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c28); } - prev.value = `(${capture}${escaped}|${prev.value})`; - state.output += prev.value; - continue; - } - if (value === "{" && opts.nobrace !== true) { - increment("braces"); - const open = { - type: "brace", - value, - output: "(", - outputIndex: state.output.length, - tokensIndex: state.tokens.length - }; - braces.push(open); - push(open); - continue; } - if (value === "}") { - const brace = braces[braces.length - 1]; - if (opts.nobrace === true || !brace) { - push({ type: "text", value, output: value }); - continue; + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; } - let output = ")"; - if (brace.dots === true) { - const arr = tokens.slice(); - const range = []; - for (let i = arr.length - 1; i >= 0; i--) { - tokens.pop(); - if (arr[i].type === "brace") { - break; - } - if (arr[i].type !== "dots") { - range.unshift(arr[i].value); + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); } } - output = expandRange(range, opts); - state.backtrack = true; + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - if (brace.comma !== true && brace.dots !== true) { - const out = state.output.slice(0, brace.outputIndex); - const toks = state.tokens.slice(brace.tokensIndex); - brace.value = brace.output = "\\{"; - value = output = "\\}"; - state.output = out; - for (const t of toks) { - state.output += t.output || t.value; + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } } - push({ type: "brace", value, output }); - decrement("braces"); - braces.pop(); - continue; - } - if (value === "|") { - if (extglobs.length > 0) { - extglobs[extglobs.length - 1].conditions++; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - push({ type: "text", value }); - continue; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (value === ",") { - let output = value; - const brace = braces[braces.length - 1]; - if (brace && stack2[stack2.length - 1] === "braces") { - brace.comma = true; - output = "|"; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c26); } - push({ type: "comma", value, output }); - continue; } - if (value === "/") { - if (prev.type === "dot" && state.index === state.start + 1) { - state.start = state.index + 1; - state.consumed = ""; - state.output = ""; - tokens.pop(); - prev = bos; - continue; + return s0; + } + function peg$parsepseudostringLegacy() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c32) { + s1 = peg$c32; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c33); } - push({ type: "slash", value, output: SLASH_LITERAL }); - continue; } - if (value === ".") { - if (state.braces > 0 && prev.type === "dot") { - if (prev.value === ".") - prev.output = DOT_LITERAL; - const brace = braces[braces.length - 1]; - prev.type = "dots"; - prev.output += value; - prev.value += value; - brace.dots = true; - continue; - } - if (state.braces + state.parens === 0 && prev.type !== "bos" && prev.type !== "slash") { - push({ type: "text", value, output: DOT_LITERAL }); - continue; - } - push({ type: "dot", value, output: DOT_LITERAL }); - continue; + if (s1 === peg$FAILED) { + s1 = null; } - if (value === "?") { - const isGroup = prev && prev.value === "("; - if (!isGroup && opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { - extglobOpen("qmark", value); - continue; + if (s1 !== peg$FAILED) { + if (peg$c34.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c35); + } } - if (prev && prev.type === "paren") { - const next = peek(); - let output = value; - if (next === "<" && !utils.supportsLookbehinds()) { - throw new Error("Node.js v10 or higher is required for regex lookbehinds"); + if (s2 !== peg$FAILED) { + s3 = []; + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); + } } - if (prev.value === "(" && !/[!=<:]/.test(next) || next === "<" && !/<([!=]|\w+>)/.test(remaining())) { - output = `\\${value}`; + while (s4 !== peg$FAILED) { + s3.push(s4); + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); + } + } } - push({ type: "text", value, output }); - continue; - } - if (opts.dot !== true && (prev.type === "slash" || prev.type === "bos")) { - push({ type: "qmark", value, output: QMARK_NO_DOT }); - continue; - } - push({ type: "qmark", value, output: QMARK }); - continue; - } - if (value === "!") { - if (opts.noextglob !== true && peek() === "(") { - if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) { - extglobOpen("negate", value); - continue; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (opts.nonegate !== true && state.index === 0) { - negate(); - continue; - } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (value === "+") { - if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { - extglobOpen("plus", value); - continue; - } - if (prev && prev.value === "(" || opts.regex === false) { - push({ type: "plus", value, output: PLUS_LITERAL }); - continue; - } - if (prev && (prev.type === "bracket" || prev.type === "paren" || prev.type === "brace") || state.parens > 0) { - push({ type: "plus", value }); - continue; + return s0; + } + function peg$parsenull() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c38) { + s1 = peg$c38; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); } - push({ type: "plus", value: PLUS_LITERAL }); - continue; } - if (value === "@") { - if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { - push({ type: "at", extglob: true, value, output: "" }); - continue; - } - push({ type: "text", value }); - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(); } - if (value !== "*") { - if (value === "$" || value === "^") { - value = `\\${value}`; - } - const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); - if (match) { - value += match[0]; - state.index += match[0].length; + s0 = s1; + return s0; + } + function peg$parseboolean() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c41) { + s1 = peg$c41; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); } - push({ type: "text", value }); - continue; - } - if (prev && (prev.type === "globstar" || prev.star === true)) { - prev.type = "star"; - prev.star = true; - prev.value += value; - prev.output = star; - state.backtrack = true; - state.globstar = true; - consume(value); - continue; } - let rest = remaining(); - if (opts.noextglob !== true && /^\([^?]/.test(rest)) { - extglobOpen("star", value); - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c43(); } - if (prev.type === "star") { - if (opts.noglobstar === true) { - consume(value); - continue; - } - const prior = prev.prev; - const before = prior.prev; - const isStart = prior.type === "slash" || prior.type === "bos"; - const afterStar = before && (before.type === "star" || before.type === "globstar"); - if (opts.bash === true && (!isStart || rest[0] && rest[0] !== "/")) { - push({ type: "star", value, output: "" }); - continue; - } - const isBrace = state.braces > 0 && (prior.type === "comma" || prior.type === "brace"); - const isExtglob = extglobs.length && (prior.type === "pipe" || prior.type === "paren"); - if (!isStart && prior.type !== "paren" && !isBrace && !isExtglob) { - push({ type: "star", value, output: "" }); - continue; - } - while (rest.slice(0, 3) === "/**") { - const after = input[state.index + 4]; - if (after && after !== "/") { - break; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 5) === peg$c44) { + s1 = peg$c44; + peg$currPos += 5; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c45); } - rest = rest.slice(3); - consume("/**", 3); - } - if (prior.type === "bos" && eos()) { - prev.type = "globstar"; - prev.value += value; - prev.output = globstar(opts); - state.output = prev.output; - state.globstar = true; - consume(value); - continue; - } - if (prior.type === "slash" && prior.prev.type !== "bos" && !afterStar && eos()) { - state.output = state.output.slice(0, -(prior.output + prev.output).length); - prior.output = `(?:${prior.output}`; - prev.type = "globstar"; - prev.output = globstar(opts) + (opts.strictSlashes ? ")" : "|$)"); - prev.value += value; - state.globstar = true; - state.output += prior.output + prev.output; - consume(value); - continue; - } - if (prior.type === "slash" && prior.prev.type !== "bos" && rest[0] === "/") { - const end = rest[1] !== void 0 ? "|$" : ""; - state.output = state.output.slice(0, -(prior.output + prev.output).length); - prior.output = `(?:${prior.output}`; - prev.type = "globstar"; - prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; - prev.value += value; - state.output += prior.output + prev.output; - state.globstar = true; - consume(value + advance()); - push({ type: "slash", value: "/", output: "" }); - continue; } - if (prior.type === "bos" && rest[0] === "/") { - prev.type = "globstar"; - prev.value += value; - prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; - state.output = prev.output; - state.globstar = true; - consume(value + advance()); - push({ type: "slash", value: "/", output: "" }); - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c46(); } - state.output = state.output.slice(0, -prev.output.length); - prev.type = "globstar"; - prev.output = globstar(opts); - prev.value += value; - state.output += prev.output; - state.globstar = true; - consume(value); - continue; + s0 = s1; } - const token = { type: "star", value, output: star }; - if (opts.bash === true) { - token.output = ".*?"; - if (prev.type === "bos" || prev.type === "slash") { - token.output = nodot + token.output; + return s0; + } + function peg$parsestring() { + var s0, s1, s2, s3; + peg$silentFails++; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); } - push(token); - continue; - } - if (prev && (prev.type === "bracket" || prev.type === "paren") && opts.regex === true) { - token.output = value; - push(token); - continue; } - if (state.index === state.start || prev.type === "slash" || prev.type === "dot") { - if (prev.type === "dot") { - state.output += NO_DOT_SLASH; - prev.output += NO_DOT_SLASH; - } else if (opts.dot === true) { - state.output += NO_DOTS_SLASH; - prev.output += NO_DOTS_SLASH; + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s2 = peg$c48; + peg$currPos++; } else { - state.output += nodot; - prev.output += nodot; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } } - if (peek() !== "*") { - state.output += ONE_CHAR; - prev.output += ONE_CHAR; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c50(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - push(token); - } - while (state.brackets > 0) { - if (opts.strictBrackets === true) - throw new SyntaxError(syntaxError("closing", "]")); - state.output = utils.escapeLast(state.output, "["); - decrement("brackets"); - } - while (state.parens > 0) { - if (opts.strictBrackets === true) - throw new SyntaxError(syntaxError("closing", ")")); - state.output = utils.escapeLast(state.output, "("); - decrement("parens"); - } - while (state.braces > 0) { - if (opts.strictBrackets === true) - throw new SyntaxError(syntaxError("closing", "}")); - state.output = utils.escapeLast(state.output, "{"); - decrement("braces"); - } - if (opts.strictSlashes !== true && (prev.type === "star" || prev.type === "bracket")) { - push({ type: "maybe_slash", value: "", output: `${SLASH_LITERAL}?` }); - } - if (state.backtrack === true) { - state.output = ""; - for (const token of state.tokens) { - state.output += token.output != null ? token.output : token.value; - if (token.suffix) { - state.output += token.suffix; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parsechars(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c48; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c51(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } - } - return state; - }; - parse.fastpaths = (input, options) => { - const opts = { ...options }; - const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; - const len = input.length; - if (len > max) { - throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); - } - input = REPLACEMENTS[input] || input; - const win32 = utils.isWindows(options); - const { - DOT_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - DOTS_SLASH, - NO_DOT, - NO_DOTS, - NO_DOTS_SLASH, - STAR, - START_ANCHOR - } = constants.globChars(win32); - const nodot = opts.dot ? NO_DOTS : NO_DOT; - const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; - const capture = opts.capture ? "" : "?:"; - const state = { negated: false, prefix: "" }; - let star = opts.bash === true ? ".*?" : STAR; - if (opts.capture) { - star = `(${star})`; - } - const globstar = (opts2) => { - if (opts2.noglobstar === true) - return star; - return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; - }; - const create = (str) => { - switch (str) { - case "*": - return `${nodot}${ONE_CHAR}${star}`; - case ".*": - return `${DOT_LITERAL}${ONE_CHAR}${star}`; - case "*.*": - return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; - case "*/*": - return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; - case "**": - return nodot + globstar(opts); - case "**/*": - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; - case "**/*.*": - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; - case "**/.*": - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; - default: { - const match = /^(.*?)\.(\w+)$/.exec(str); - if (!match) - return; - const source2 = create(match[1]); - if (!source2) - return; - return source2 + DOT_LITERAL + match[2]; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c47); } } - }; - const output = utils.removePrefix(input, state); - let source = create(output); - if (source && opts.strictSlashes !== true) { - source += `${SLASH_LITERAL}?`; + return s0; } - return source; - }; - module2.exports = parse; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/picomatch.js -var require_picomatch = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/lib/picomatch.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var scan = require_scan2(); - var parse = require_parse4(); - var utils = require_utils4(); - var constants = require_constants5(); - var isObject = (val) => val && typeof val === "object" && !Array.isArray(val); - var picomatch = (glob, options, returnState = false) => { - if (Array.isArray(glob)) { - const fns = glob.map((input) => picomatch(input, options, returnState)); - const arrayMatcher = (str) => { - for (const isMatch of fns) { - const state2 = isMatch(str); - if (state2) - return state2; + function peg$parsechars() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsechar(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsechar(); } - return false; - }; - return arrayMatcher; - } - const isState = isObject(glob) && glob.tokens && glob.input; - if (glob === "" || typeof glob !== "string" && !isState) { - throw new TypeError("Expected pattern to be a non-empty string"); - } - const opts = options || {}; - const posix = utils.isWindows(options); - const regex = isState ? picomatch.compileRe(glob, options) : picomatch.makeRe(glob, options, false, true); - const state = regex.state; - delete regex.state; - let isIgnored = () => false; - if (opts.ignore) { - const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null }; - isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); - } - const matcher = (input, returnObject = false) => { - const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix }); - const result = { glob, state, regex, posix, input, output, match, isMatch }; - if (typeof opts.onResult === "function") { - opts.onResult(result); + } else { + s1 = peg$FAILED; } - if (isMatch === false) { - result.isMatch = false; - return returnObject ? result : false; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c52(s1); } - if (isIgnored(input)) { - if (typeof opts.onIgnore === "function") { - opts.onIgnore(result); + s0 = s1; + return s0; + } + function peg$parsechar() { + var s0, s1, s2, s3, s4, s5; + if (peg$c53.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c54); } - result.isMatch = false; - return returnObject ? result : false; } - if (typeof opts.onMatch === "function") { - opts.onMatch(result); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c57(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c58) { + s1 = peg$c58; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c59); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c60(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c61) { + s1 = peg$c61; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c62); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c63(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c64) { + s1 = peg$c64; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c65); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c67) { + s1 = peg$c67; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c68); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c70) { + s1 = peg$c70; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c71); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c73) { + s1 = peg$c73; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c74); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c75(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c76) { + s1 = peg$c76; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c77); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c78(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parsehexDigit(); + if (s2 !== peg$FAILED) { + s3 = peg$parsehexDigit(); + if (s3 !== peg$FAILED) { + s4 = peg$parsehexDigit(); + if (s4 !== peg$FAILED) { + s5 = peg$parsehexDigit(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(s2, s3, s4, s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } + } + } + } + } + } } - return returnObject ? result : true; - }; - if (returnState) { - matcher.state = state; - } - return matcher; - }; - picomatch.test = (input, regex, options, { glob, posix } = {}) => { - if (typeof input !== "string") { - throw new TypeError("Expected input to be a string"); - } - if (input === "") { - return { isMatch: false, output: "" }; - } - const opts = options || {}; - const format = opts.format || (posix ? utils.toPosixSlashes : null); - let match = input === glob; - let output = match && format ? format(input) : input; - if (match === false) { - output = format ? format(input) : input; - match = output === glob; + return s0; } - if (match === false || opts.capture === true) { - if (opts.matchBase === true || opts.basename === true) { - match = picomatch.matchBase(input, regex, options, posix); + function peg$parsehexDigit() { + var s0; + if (peg$c82.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; } else { - match = regex.exec(output); + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } } + return s0; } - return { isMatch: Boolean(match), match, output }; - }; - picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { - const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); - return regex.test(path.basename(input)); - }; - picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); - picomatch.parse = (pattern, options) => { - if (Array.isArray(pattern)) - return pattern.map((p) => picomatch.parse(p, options)); - return parse(pattern, { ...options, fastpaths: false }); - }; - picomatch.scan = (input, options) => scan(input, options); - picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { - if (returnOutput === true) { - return state.output; - } - const opts = options || {}; - const prepend = opts.contains ? "" : "^"; - const append = opts.contains ? "" : "$"; - let source = `${prepend}(?:${state.output})${append}`; - if (state && state.negated === true) { - source = `^(?!${source}).*$`; - } - const regex = picomatch.toRegex(source, options); - if (returnState === true) { - regex.state = state; - } - return regex; - }; - picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { - if (!input || typeof input !== "string") { - throw new TypeError("Expected a non-empty string"); - } - let parsed = { negated: false, fastpaths: true }; - if (options.fastpaths !== false && (input[0] === "." || input[0] === "*")) { - parsed.output = parse.fastpaths(input, options); - } - if (!parsed.output) { - parsed = parse(input, options); - } - return picomatch.compileRe(parsed, options, returnOutput, returnState); - }; - picomatch.toRegex = (source, options) => { - try { - const opts = options || {}; - return new RegExp(source, opts.flags || (opts.nocase ? "i" : "")); - } catch (err) { - if (options && options.debug === true) - throw err; - return /$^/; - } - }; - picomatch.constants = constants; - module2.exports = picomatch; - } -}); - -// ../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/index.js -var require_picomatch2 = __commonJS({ - "../../node_modules/.pnpm/picomatch@2.3.0/node_modules/picomatch/index.js"(exports2, module2) { - "use strict"; - module2.exports = require_picomatch(); - } -}); - -// ../../node_modules/.pnpm/micromatch@4.0.4/node_modules/micromatch/index.js -var require_micromatch = __commonJS({ - "../../node_modules/.pnpm/micromatch@4.0.4/node_modules/micromatch/index.js"(exports2, module2) { - "use strict"; - var util = require("util"); - var braces = require_braces(); - var picomatch = require_picomatch2(); - var utils = require_utils4(); - var isEmptyString = (val) => val === "" || val === "./"; - var micromatch = (list, patterns, options) => { - patterns = [].concat(patterns); - list = [].concat(list); - let omit = new Set(); - let keep = new Set(); - let items = new Set(); - let negatives = 0; - let onResult = (state) => { - items.add(state.output); - if (options && options.onResult) { - options.onResult(state); - } - }; - for (let i = 0; i < patterns.length; i++) { - let isMatch = picomatch(String(patterns[i]), { ...options, onResult }, true); - let negated = isMatch.state.negated || isMatch.state.negatedExtglob; - if (negated) - negatives++; - for (let item of list) { - let matched = isMatch(item, true); - let match = negated ? !matched.isMatch : matched.isMatch; - if (!match) - continue; - if (negated) { - omit.add(matched.output); - } else { - omit.delete(matched.output); - keep.add(matched.output); + function peg$parseB() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); } } - } - let result = negatives === patterns.length ? [...items] : [...keep]; - let matches = result.filter((item) => !omit.has(item)); - if (options && matches.length === 0) { - if (options.failglob === true) { - throw new Error(`No matches found for "${patterns.join(", ")}"`); + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); + } + } + } + } else { + s0 = peg$FAILED; } - if (options.nonull === true || options.nullglob === true) { - return options.unescape ? patterns.map((p) => p.replace(/\\/g, "")) : patterns; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c84); + } } + return s0; } - return matches; - }; - micromatch.match = micromatch; - micromatch.matcher = (pattern, options) => picomatch(pattern, options); - micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); - micromatch.any = micromatch.isMatch; - micromatch.not = (list, patterns, options = {}) => { - patterns = [].concat(patterns).map(String); - let result = new Set(); - let items = []; - let onResult = (state) => { - if (options.onResult) - options.onResult(state); - items.push(state.output); - }; - let matches = micromatch(list, patterns, { ...options, onResult }); - for (let item of items) { - if (!matches.includes(item)) { - result.add(item); + function peg$parseS() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); + } } - } - return [...result]; - }; - micromatch.contains = (str, pattern, options) => { - if (typeof str !== "string") { - throw new TypeError(`Expected a string: "${util.inspect(str)}"`); - } - if (Array.isArray(pattern)) { - return pattern.some((p) => micromatch.contains(str, p, options)); - } - if (typeof pattern === "string") { - if (isEmptyString(str) || isEmptyString(pattern)) { - return false; + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); + } + } + } + } else { + s0 = peg$FAILED; } - if (str.includes(pattern) || str.startsWith("./") && str.slice(2).includes(pattern)) { - return true; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c87); + } } + return s0; } - return micromatch.isMatch(str, pattern, { ...options, contains: true }); - }; - micromatch.matchKeys = (obj, patterns, options) => { - if (!utils.isObject(obj)) { - throw new TypeError("Expected the first argument to be an object"); - } - let keys = micromatch(Object.keys(obj), patterns, options); - let res = {}; - for (let key of keys) - res[key] = obj[key]; - return res; - }; - micromatch.some = (list, patterns, options) => { - let items = [].concat(list); - for (let pattern of [].concat(patterns)) { - let isMatch = picomatch(String(pattern), options); - if (items.some((item) => isMatch(item))) { - return true; + function peg$parseEOL_ANY() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - return false; - }; - micromatch.every = (list, patterns, options) => { - let items = [].concat(list); - for (let pattern of [].concat(patterns)) { - let isMatch = picomatch(String(pattern), options); - if (!items.every((item) => isMatch(item))) { - return false; + function peg$parseEOL() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c90) { + s0 = peg$c90; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); + } } - } - return true; - }; - micromatch.all = (str, patterns, options) => { - if (typeof str !== "string") { - throw new TypeError(`Expected a string: "${util.inspect(str)}"`); - } - return [].concat(patterns).every((p) => picomatch(p, options)(str)); - }; - micromatch.capture = (glob, input, options) => { - let posix = utils.isWindows(options); - let regex = picomatch.makeRe(String(glob), { ...options, capture: true }); - let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); - if (match) { - return match.slice(1).map((v) => v === void 0 ? "" : v); - } - }; - micromatch.makeRe = (...args2) => picomatch.makeRe(...args2); - micromatch.scan = (...args2) => picomatch.scan(...args2); - micromatch.parse = (patterns, options) => { - let res = []; - for (let pattern of [].concat(patterns || [])) { - for (let str of braces(String(pattern), options)) { - res.push(picomatch.parse(str, options)); + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 10) { + s0 = peg$c92; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c93); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 13) { + s0 = peg$c94; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c95); + } + } + } } + return s0; } - return res; - }; - micromatch.braces = (pattern, options) => { - if (typeof pattern !== "string") - throw new TypeError("Expected a string"); - if (options && options.nobrace === true || !/\{.*\}/.test(pattern)) { - return [pattern]; + const INDENT_STEP = 2; + let indentLevel = 0; + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); + } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } - return braces(pattern, options); - }; - micromatch.braceExpand = (pattern, options) => { - if (typeof pattern !== "string") - throw new TypeError("Expected a string"); - return micromatch.braces(pattern, { ...options, expand: true }); + } + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse }; - module2.exports = micromatch; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/pattern.js -var require_pattern = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/pattern.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/syml.js +var require_syml2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/syml.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.matchAny = exports2.convertPatternsToRe = exports2.makeRe = exports2.getPatternParts = exports2.expandBraceExpansion = exports2.expandPatternsWithBraceExpansion = exports2.isAffectDepthOfReadingPattern = exports2.endsWithSlashGlobStar = exports2.hasGlobStar = exports2.getBaseDirectory = exports2.isPatternRelatedToParentDirectory = exports2.getPatternsOutsideCurrentDirectory = exports2.getPatternsInsideCurrentDirectory = exports2.getPositivePatterns = exports2.getNegativePatterns = exports2.isPositivePattern = exports2.isNegativePattern = exports2.convertToNegativePattern = exports2.convertToPositivePattern = exports2.isDynamicPattern = exports2.isStaticPattern = void 0; - var path = require("path"); - var globParent = require_glob_parent(); - var micromatch = require_micromatch(); - var GLOBSTAR = "**"; - var ESCAPE_SYMBOL = "\\"; - var COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; - var REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[.*]/; - var REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\(.*\|.*\)/; - var GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\(.*\)/; - var BRACE_EXPANSIONS_SYMBOLS_RE = /{.*(?:,|\.\.).*}/; - function isStaticPattern(pattern, options = {}) { - return !isDynamicPattern(pattern, options); - } - exports2.isStaticPattern = isStaticPattern; - function isDynamicPattern(pattern, options = {}) { - if (pattern === "") { - return false; - } - if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { - return true; - } - if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { - return true; + exports2.parseSyml = exports2.stringifySyml = exports2.PreserveOrdering = void 0; + var js_yaml_1 = require_js_yaml3(); + var syml_1 = require_syml(); + var simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/; + var specialObjectKeys = [`__metadata`, `version`, `resolution`, `dependencies`, `peerDependencies`, `dependenciesMeta`, `peerDependenciesMeta`, `binaries`]; + var PreserveOrdering = class { + constructor(data) { + this.data = data; } - if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { - return true; + }; + exports2.PreserveOrdering = PreserveOrdering; + function stringifyString(value) { + if (value.match(simpleStringPattern)) { + return value; + } else { + return JSON.stringify(value); } - if (options.braceExpansion !== false && BRACE_EXPANSIONS_SYMBOLS_RE.test(pattern)) { + } + function isRemovableField(value) { + if (typeof value === `undefined`) return true; - } + if (typeof value === `object` && value !== null) + return Object.keys(value).every((key) => isRemovableField(value[key])); return false; } - exports2.isDynamicPattern = isDynamicPattern; - function convertToPositivePattern(pattern) { - return isNegativePattern(pattern) ? pattern.slice(1) : pattern; - } - exports2.convertToPositivePattern = convertToPositivePattern; - function convertToNegativePattern(pattern) { - return "!" + pattern; - } - exports2.convertToNegativePattern = convertToNegativePattern; - function isNegativePattern(pattern) { - return pattern.startsWith("!") && pattern[1] !== "("; - } - exports2.isNegativePattern = isNegativePattern; - function isPositivePattern(pattern) { - return !isNegativePattern(pattern); - } - exports2.isPositivePattern = isPositivePattern; - function getNegativePatterns(patterns) { - return patterns.filter(isNegativePattern); - } - exports2.getNegativePatterns = getNegativePatterns; - function getPositivePatterns(patterns) { - return patterns.filter(isPositivePattern); - } - exports2.getPositivePatterns = getPositivePatterns; - function getPatternsInsideCurrentDirectory(patterns) { - return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); - } - exports2.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; - function getPatternsOutsideCurrentDirectory(patterns) { - return patterns.filter(isPatternRelatedToParentDirectory); - } - exports2.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; - function isPatternRelatedToParentDirectory(pattern) { - return pattern.startsWith("..") || pattern.startsWith("./.."); - } - exports2.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; - function getBaseDirectory(pattern) { - return globParent(pattern, { flipBackslashes: false }); - } - exports2.getBaseDirectory = getBaseDirectory; - function hasGlobStar(pattern) { - return pattern.includes(GLOBSTAR); - } - exports2.hasGlobStar = hasGlobStar; - function endsWithSlashGlobStar(pattern) { - return pattern.endsWith("/" + GLOBSTAR); - } - exports2.endsWithSlashGlobStar = endsWithSlashGlobStar; - function isAffectDepthOfReadingPattern(pattern) { - const basename = path.basename(pattern); - return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); - } - exports2.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; - function expandPatternsWithBraceExpansion(patterns) { - return patterns.reduce((collection, pattern) => { - return collection.concat(expandBraceExpansion(pattern)); - }, []); - } - exports2.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; - function expandBraceExpansion(pattern) { - return micromatch.braces(pattern, { - expand: true, - nodupes: true - }); - } - exports2.expandBraceExpansion = expandBraceExpansion; - function getPatternParts(pattern, options) { - let { parts } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { parts: true })); - if (parts.length === 0) { - parts = [pattern]; - } - if (parts[0].startsWith("/")) { - parts[0] = parts[0].slice(1); - parts.unshift(""); - } - return parts; - } - exports2.getPatternParts = getPatternParts; - function makeRe(pattern, options) { - return micromatch.makeRe(pattern, options); - } - exports2.makeRe = makeRe; - function convertPatternsToRe(patterns, options) { - return patterns.map((pattern) => makeRe(pattern, options)); - } - exports2.convertPatternsToRe = convertPatternsToRe; - function matchAny(entry, patternsRe) { - return patternsRe.some((patternRe) => patternRe.test(entry)); - } - exports2.matchAny = matchAny; - } -}); - -// ../../node_modules/.pnpm/merge2@1.4.1/node_modules/merge2/index.js -var require_merge22 = __commonJS({ - "../../node_modules/.pnpm/merge2@1.4.1/node_modules/merge2/index.js"(exports2, module2) { - "use strict"; - var Stream = require("stream"); - var PassThrough = Stream.PassThrough; - var slice = Array.prototype.slice; - module2.exports = merge2; - function merge2() { - const streamsQueue = []; - const args2 = slice.call(arguments); - let merging = false; - let options = args2[args2.length - 1]; - if (options && !Array.isArray(options) && options.pipe == null) { - args2.pop(); - } else { - options = {}; - } - const doEnd = options.end !== false; - const doPipeError = options.pipeError === true; - if (options.objectMode == null) { - options.objectMode = true; - } - if (options.highWaterMark == null) { - options.highWaterMark = 64 * 1024; - } - const mergedStream = PassThrough(options); - function addStream() { - for (let i = 0, len = arguments.length; i < len; i++) { - streamsQueue.push(pauseStreams(arguments[i], options)); - } - mergeStream(); - return this; + function stringifyValue(value, indentLevel, newLineIfObject) { + if (value === null) + return `null +`; + if (typeof value === `number` || typeof value === `boolean`) + return `${value.toString()} +`; + if (typeof value === `string`) + return `${stringifyString(value)} +`; + if (Array.isArray(value)) { + if (value.length === 0) + return `[] +`; + const indent = ` `.repeat(indentLevel); + const serialized = value.map((sub) => { + return `${indent}- ${stringifyValue(sub, indentLevel + 1, false)}`; + }).join(``); + return ` +${serialized}`; } - function mergeStream() { - if (merging) { - return; - } - merging = true; - let streams = streamsQueue.shift(); - if (!streams) { - process.nextTick(endStream); - return; - } - if (!Array.isArray(streams)) { - streams = [streams]; - } - let pipesCount = streams.length + 1; - function next() { - if (--pipesCount > 0) { - return; - } - merging = false; - mergeStream(); - } - function pipe(stream) { - function onend() { - stream.removeListener("merge2UnpipeEnd", onend); - stream.removeListener("end", onend); - if (doPipeError) { - stream.removeListener("error", onerror); - } - next(); - } - function onerror(err) { - mergedStream.emit("error", err); - } - if (stream._readableState.endEmitted) { - return next(); - } - stream.on("merge2UnpipeEnd", onend); - stream.on("end", onend); - if (doPipeError) { - stream.on("error", onerror); - } - stream.pipe(mergedStream, { end: false }); - stream.resume(); + if (typeof value === `object` && value) { + let data; + let sort; + if (value instanceof PreserveOrdering) { + data = value.data; + sort = false; + } else { + data = value; + sort = true; } - for (let i = 0; i < streams.length; i++) { - pipe(streams[i]); + const indent = ` `.repeat(indentLevel); + const keys = Object.keys(data); + if (sort) { + keys.sort((a, b) => { + const aIndex = specialObjectKeys.indexOf(a); + const bIndex = specialObjectKeys.indexOf(b); + if (aIndex === -1 && bIndex === -1) + return a < b ? -1 : a > b ? 1 : 0; + if (aIndex !== -1 && bIndex === -1) + return -1; + if (aIndex === -1 && bIndex !== -1) + return 1; + return aIndex - bIndex; + }); } - next(); - } - function endStream() { - merging = false; - mergedStream.emit("queueDrain"); - if (doEnd) { - mergedStream.end(); + const fields = keys.filter((key) => { + return !isRemovableField(data[key]); + }).map((key, index) => { + const value2 = data[key]; + const stringifiedKey = stringifyString(key); + const stringifiedValue = stringifyValue(value2, indentLevel + 1, true); + const recordIndentation = index > 0 || newLineIfObject ? indent : ``; + const keyPart = stringifiedKey.length > 1024 ? `? ${stringifiedKey} +${recordIndentation}:` : `${stringifiedKey}:`; + const valuePart = stringifiedValue.startsWith(` +`) ? stringifiedValue : ` ${stringifiedValue}`; + return `${recordIndentation}${keyPart}${valuePart}`; + }).join(indentLevel === 0 ? ` +` : ``) || ` +`; + if (!newLineIfObject) { + return `${fields}`; + } else { + return ` +${fields}`; } } - mergedStream.setMaxListeners(0); - mergedStream.add = addStream; - mergedStream.on("unpipe", function(stream) { - stream.emit("merge2UnpipeEnd"); - }); - if (args2.length) { - addStream.apply(null, args2); - } - return mergedStream; + throw new Error(`Unsupported value type (${value})`); } - function pauseStreams(streams, options) { - if (!Array.isArray(streams)) { - if (!streams._readableState && streams.pipe) { - streams = streams.pipe(PassThrough(options)); - } - if (!streams._readableState || !streams.pause || !streams.pipe) { - throw new Error("Only readable stream can be merged."); - } - streams.pause(); - } else { - for (let i = 0, len = streams.length; i < len; i++) { - streams[i] = pauseStreams(streams[i], options); - } + function stringifySyml(value) { + try { + const stringified = stringifyValue(value, 0, false); + return stringified !== ` +` ? stringified : ``; + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } - return streams; } - } -}); - -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/stream.js -var require_stream2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/stream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.merge = void 0; - var merge2 = require_merge22(); - function merge(streams) { - const mergedStream = merge2(streams); - streams.forEach((stream) => { - stream.once("error", (error) => mergedStream.emit("error", error)); + exports2.stringifySyml = stringifySyml; + stringifySyml.PreserveOrdering = PreserveOrdering; + function parseViaPeg(source) { + if (!source.endsWith(` +`)) + source += ` +`; + return (0, syml_1.parse)(source); + } + var LEGACY_REGEXP = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i; + function parseViaJsYaml(source) { + if (LEGACY_REGEXP.test(source)) + return parseViaPeg(source); + const value = (0, js_yaml_1.safeLoad)(source, { + schema: js_yaml_1.FAILSAFE_SCHEMA, + json: true }); - mergedStream.once("close", () => propagateCloseEventToSources(streams)); - mergedStream.once("end", () => propagateCloseEventToSources(streams)); - return mergedStream; + if (value === void 0 || value === null) + return {}; + if (typeof value !== `object`) + throw new Error(`Expected an indexed object, got a ${typeof value} instead. Does your file follow Yaml's rules?`); + if (Array.isArray(value)) + throw new Error(`Expected an indexed object, got an array instead. Does your file follow Yaml's rules?`); + return value; } - exports2.merge = merge; - function propagateCloseEventToSources(streams) { - streams.forEach((stream) => stream.emit("close")); + function parseSyml(source) { + return parseViaJsYaml(source); } + exports2.parseSyml = parseSyml; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/string.js -var require_string2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/string.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/index.js +var require_lib51 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@2.5.1/node_modules/@yarnpkg/parsers/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isEmpty = exports2.isString = void 0; - function isString(input) { - return typeof input === "string"; - } - exports2.isString = isString; - function isEmpty(input) { - return input === ""; - } - exports2.isEmpty = isEmpty; + exports2.stringifySyml = exports2.parseSyml = exports2.stringifyResolution = exports2.parseResolution = exports2.stringifyValueArgument = exports2.stringifyShellLine = exports2.stringifyRedirectArgument = exports2.stringifyEnvSegment = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommand = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyArgument = exports2.stringifyShell = exports2.parseShell = void 0; + var shell_1 = require_shell2(); + Object.defineProperty(exports2, "parseShell", { enumerable: true, get: function() { + return shell_1.parseShell; + } }); + Object.defineProperty(exports2, "stringifyShell", { enumerable: true, get: function() { + return shell_1.stringifyShell; + } }); + Object.defineProperty(exports2, "stringifyArgument", { enumerable: true, get: function() { + return shell_1.stringifyArgument; + } }); + Object.defineProperty(exports2, "stringifyArgumentSegment", { enumerable: true, get: function() { + return shell_1.stringifyArgumentSegment; + } }); + Object.defineProperty(exports2, "stringifyArithmeticExpression", { enumerable: true, get: function() { + return shell_1.stringifyArithmeticExpression; + } }); + Object.defineProperty(exports2, "stringifyCommand", { enumerable: true, get: function() { + return shell_1.stringifyCommand; + } }); + Object.defineProperty(exports2, "stringifyCommandChain", { enumerable: true, get: function() { + return shell_1.stringifyCommandChain; + } }); + Object.defineProperty(exports2, "stringifyCommandChainThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandChainThen; + } }); + Object.defineProperty(exports2, "stringifyCommandLine", { enumerable: true, get: function() { + return shell_1.stringifyCommandLine; + } }); + Object.defineProperty(exports2, "stringifyCommandLineThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandLineThen; + } }); + Object.defineProperty(exports2, "stringifyEnvSegment", { enumerable: true, get: function() { + return shell_1.stringifyEnvSegment; + } }); + Object.defineProperty(exports2, "stringifyRedirectArgument", { enumerable: true, get: function() { + return shell_1.stringifyRedirectArgument; + } }); + Object.defineProperty(exports2, "stringifyShellLine", { enumerable: true, get: function() { + return shell_1.stringifyShellLine; + } }); + Object.defineProperty(exports2, "stringifyValueArgument", { enumerable: true, get: function() { + return shell_1.stringifyValueArgument; + } }); + var resolution_1 = require_resolution2(); + Object.defineProperty(exports2, "parseResolution", { enumerable: true, get: function() { + return resolution_1.parseResolution; + } }); + Object.defineProperty(exports2, "stringifyResolution", { enumerable: true, get: function() { + return resolution_1.stringifyResolution; + } }); + var syml_1 = require_syml2(); + Object.defineProperty(exports2, "parseSyml", { enumerable: true, get: function() { + return syml_1.parseSyml; + } }); + Object.defineProperty(exports2, "stringifySyml", { enumerable: true, get: function() { + return syml_1.stringifySyml; + } }); } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/index.js -var require_utils5 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/utils/index.js"(exports2) { +// ../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/util.js +var require_util7 = __commonJS({ + "../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/util.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.string = exports2.stream = exports2.pattern = exports2.path = exports2.fs = exports2.errno = exports2.array = void 0; - var array = require_array2(); - exports2.array = array; - var errno = require_errno(); - exports2.errno = errno; - var fs = require_fs(); - exports2.fs = fs; - var path = require_path2(); - exports2.path = path; - var pattern = require_pattern(); - exports2.pattern = pattern; - var stream = require_stream2(); - exports2.stream = stream; - var string = require_string2(); - exports2.string = string; + var stringReplaceAll = (string, substring, replacer) => { + let index = string.indexOf(substring); + if (index === -1) { + return string; + } + const substringLength = substring.length; + let endIndex = 0; + let returnValue = ""; + do { + returnValue += string.substr(endIndex, index - endIndex) + substring + replacer; + endIndex = index + substringLength; + index = string.indexOf(substring, endIndex); + } while (index !== -1); + returnValue += string.substr(endIndex); + return returnValue; + }; + var stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => { + let endIndex = 0; + let returnValue = ""; + do { + const gotCR = string[index - 1] === "\r"; + returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix; + endIndex = index + 1; + index = string.indexOf("\n", endIndex); + } while (index !== -1); + returnValue += string.substr(endIndex); + return returnValue; + }; + module2.exports = { + stringReplaceAll, + stringEncaseCRLFWithFirstIndex + }; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/managers/tasks.js -var require_tasks = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/managers/tasks.js"(exports2) { +// ../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/templates.js +var require_templates3 = __commonJS({ + "../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/templates.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.convertPatternGroupToTask = exports2.convertPatternGroupsToTasks = exports2.groupPatternsByBaseDirectory = exports2.getNegativePatternsAsPositive = exports2.getPositivePatterns = exports2.convertPatternsToTasks = exports2.generate = void 0; - var utils = require_utils5(); - function generate(patterns, settings) { - const positivePatterns = getPositivePatterns(patterns); - const negativePatterns = getNegativePatternsAsPositive(patterns, settings.ignore); - const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); - const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); - const staticTasks = convertPatternsToTasks(staticPatterns, negativePatterns, false); - const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, true); - return staticTasks.concat(dynamicTasks); - } - exports2.generate = generate; - function convertPatternsToTasks(positive, negative, dynamic) { - const tasks = []; - const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); - const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); - const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); - const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); - tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); - if ("." in insideCurrentDirectoryGroup) { - tasks.push(convertPatternGroupToTask(".", patternsInsideCurrentDirectory, negative, dynamic)); - } else { - tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + var TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; + var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; + var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; + var ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi; + var ESCAPES = /* @__PURE__ */ new Map([ + ["n", "\n"], + ["r", "\r"], + ["t", " "], + ["b", "\b"], + ["f", "\f"], + ["v", "\v"], + ["0", "\0"], + ["\\", "\\"], + ["e", "\x1B"], + ["a", "\x07"] + ]); + function unescape2(c) { + const u = c[0] === "u"; + const bracket = c[1] === "{"; + if (u && !bracket && c.length === 5 || c[0] === "x" && c.length === 3) { + return String.fromCharCode(parseInt(c.slice(1), 16)); } - return tasks; - } - exports2.convertPatternsToTasks = convertPatternsToTasks; - function getPositivePatterns(patterns) { - return utils.pattern.getPositivePatterns(patterns); - } - exports2.getPositivePatterns = getPositivePatterns; - function getNegativePatternsAsPositive(patterns, ignore) { - const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); - const positive = negative.map(utils.pattern.convertToPositivePattern); - return positive; + if (u && bracket) { + return String.fromCodePoint(parseInt(c.slice(2, -1), 16)); + } + return ESCAPES.get(c) || c; } - exports2.getNegativePatternsAsPositive = getNegativePatternsAsPositive; - function groupPatternsByBaseDirectory(patterns) { - const group = {}; - return patterns.reduce((collection, pattern) => { - const base = utils.pattern.getBaseDirectory(pattern); - if (base in collection) { - collection[base].push(pattern); + function parseArguments(name, arguments_) { + const results = []; + const chunks = arguments_.trim().split(/\s*,\s*/g); + let matches; + for (const chunk of chunks) { + const number = Number(chunk); + if (!Number.isNaN(number)) { + results.push(number); + } else if (matches = chunk.match(STRING_REGEX)) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape2(escape) : character)); } else { - collection[base] = [pattern]; + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); } - return collection; - }, group); - } - exports2.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; - function convertPatternGroupsToTasks(positive, negative, dynamic) { - return Object.keys(positive).map((base) => { - return convertPatternGroupToTask(base, positive[base], negative, dynamic); - }); - } - exports2.convertPatternGroupsToTasks = convertPatternGroupsToTasks; - function convertPatternGroupToTask(base, positive, negative, dynamic) { - return { - dynamic, - positive, - negative, - base, - patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) - }; + } + return results; } - exports2.convertPatternGroupToTask = convertPatternGroupToTask; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/async.js -var require_async2 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/async.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.read = void 0; - function read(path, settings, callback) { - settings.fs.lstat(path, (lstatError, lstat) => { - if (lstatError !== null) { - callFailureCallback(callback, lstatError); - return; - } - if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { - callSuccessCallback(callback, lstat); - return; + function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + const results = []; + let matches; + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + if (matches[2]) { + const args2 = parseArguments(name, matches[2]); + results.push([name].concat(args2)); + } else { + results.push([name]); } - settings.fs.stat(path, (statError, stat) => { - if (statError !== null) { - if (settings.throwErrorOnBrokenSymbolicLink) { - callFailureCallback(callback, statError); - return; - } - callSuccessCallback(callback, lstat); - return; - } - if (settings.markSymbolicLink) { - stat.isSymbolicLink = () => true; - } - callSuccessCallback(callback, stat); - }); - }); - } - exports2.read = read; - function callFailureCallback(callback, error) { - callback(error); - } - function callSuccessCallback(callback, result) { - callback(null, result); + } + return results; } - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/sync.js -var require_sync = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/providers/sync.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.read = void 0; - function read(path, settings) { - const lstat = settings.fs.lstatSync(path); - if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { - return lstat; + function buildStyle(chalk, styles) { + const enabled = {}; + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); + } } - try { - const stat = settings.fs.statSync(path); - if (settings.markSymbolicLink) { - stat.isSymbolicLink = () => true; + let current = chalk; + for (const [styleName, styles2] of Object.entries(enabled)) { + if (!Array.isArray(styles2)) { + continue; } - return stat; - } catch (error) { - if (!settings.throwErrorOnBrokenSymbolicLink) { - return lstat; + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); } - throw error; + current = styles2.length > 0 ? current[styleName](...styles2) : current[styleName]; } + return current; } - exports2.read = read; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/adapters/fs.js -var require_fs2 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/adapters/fs.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; - var fs = require("fs"); - exports2.FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - stat: fs.stat, - lstatSync: fs.lstatSync, - statSync: fs.statSync - }; - function createFileSystemAdapter(fsMethods) { - if (fsMethods === void 0) { - return exports2.FILE_SYSTEM_ADAPTER; + module2.exports = (chalk, temporary) => { + const styles = []; + const chunks = []; + let chunk = []; + temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => { + if (escapeCharacter) { + chunk.push(unescape2(escapeCharacter)); + } else if (style) { + const string = chunk.join(""); + chunk = []; + chunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string)); + styles.push({ inverse, styles: parseStyle(style) }); + } else if (close) { + if (styles.length === 0) { + throw new Error("Found extraneous } in Chalk template literal"); + } + chunks.push(buildStyle(chalk, styles)(chunk.join(""))); + chunk = []; + styles.pop(); + } else { + chunk.push(character); + } + }); + chunks.push(chunk.join("")); + if (styles.length > 0) { + const errMsg = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; + throw new Error(errMsg); } - return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); - } - exports2.createFileSystemAdapter = createFileSystemAdapter; + return chunks.join(""); + }; } }); -// ../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/settings.js -var require_settings = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/settings.js"(exports2) { +// ../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/index.js +var require_source2 = __commonJS({ + "../node_modules/.pnpm/chalk@3.0.0/node_modules/chalk/source/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs = require_fs2(); - var Settings = class { - constructor(_options = {}) { - this._options = _options; - this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); - this.fs = fs.createFileSystemAdapter(this._options.fs); - this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); - } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; + var ansiStyles = require_ansi_styles2(); + var { stdout: stdoutColor, stderr: stderrColor } = require_supports_color2(); + var { + stringReplaceAll, + stringEncaseCRLFWithFirstIndex + } = require_util7(); + var levelMapping = [ + "ansi", + "ansi", + "ansi256", + "ansi16m" + ]; + var styles = /* @__PURE__ */ Object.create(null); + var applyOptions = (object, options = {}) => { + if (options.level > 3 || options.level < 0) { + throw new Error("The `level` option should be an integer from 0 to 3"); } + const colorLevel = stdoutColor ? stdoutColor.level : 0; + object.level = options.level === void 0 ? colorLevel : options.level; }; - exports2.default = Settings; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/index.js -var require_out = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.statSync = exports2.stat = exports2.Settings = void 0; - var async = require_async2(); - var sync = require_sync(); - var settings_1 = require_settings(); - exports2.Settings = settings_1.default; - function stat(path, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === "function") { - async.read(path, getSettings(), optionsOrSettingsOrCallback); - return; + var ChalkClass = class { + constructor(options) { + return chalkFactory(options); } - async.read(path, getSettings(optionsOrSettingsOrCallback), callback); + }; + var chalkFactory = (options) => { + const chalk2 = {}; + applyOptions(chalk2, options); + chalk2.template = (...arguments_) => chalkTag(chalk2.template, ...arguments_); + Object.setPrototypeOf(chalk2, Chalk.prototype); + Object.setPrototypeOf(chalk2.template, chalk2); + chalk2.template.constructor = () => { + throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead."); + }; + chalk2.template.Instance = ChalkClass; + return chalk2.template; + }; + function Chalk(options) { + return chalkFactory(options); } - exports2.stat = stat; - function statSync(path, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - return sync.read(path, settings); + for (const [styleName, style] of Object.entries(ansiStyles)) { + styles[styleName] = { + get() { + const builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty); + Object.defineProperty(this, styleName, { value: builder }); + return builder; + } + }; } - exports2.statSync = statSync; - function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; + styles.visible = { + get() { + const builder = createBuilder(this, this._styler, true); + Object.defineProperty(this, "visible", { value: builder }); + return builder; } - return new settings_1.default(settingsOrOptions); + }; + var usedModels = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"]; + for (const model of usedModels) { + styles[model] = { + get() { + const { level } = this; + return function(...arguments_) { + const styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler); + return createBuilder(this, styler, this._isEmpty); + }; + } + }; } - } -}); - -// ../../node_modules/.pnpm/queue-microtask@1.2.3/node_modules/queue-microtask/index.js -var require_queue_microtask = __commonJS({ - "../../node_modules/.pnpm/queue-microtask@1.2.3/node_modules/queue-microtask/index.js"(exports2, module2) { - var promise; - module2.exports = typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : global) : (cb) => (promise || (promise = Promise.resolve())).then(cb).catch((err) => setTimeout(() => { - throw err; - }, 0)); - } -}); - -// ../../node_modules/.pnpm/run-parallel@1.2.0/node_modules/run-parallel/index.js -var require_run_parallel = __commonJS({ - "../../node_modules/.pnpm/run-parallel@1.2.0/node_modules/run-parallel/index.js"(exports2, module2) { - module2.exports = runParallel; - var queueMicrotask2 = require_queue_microtask(); - function runParallel(tasks, cb) { - let results, pending, keys; - let isSync = true; - if (Array.isArray(tasks)) { - results = []; - pending = tasks.length; + for (const model of usedModels) { + const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const { level } = this; + return function(...arguments_) { + const styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler); + return createBuilder(this, styler, this._isEmpty); + }; + } + }; + } + var proto = Object.defineProperties(() => { + }, { + ...styles, + level: { + enumerable: true, + get() { + return this._generator.level; + }, + set(level) { + this._generator.level = level; + } + } + }); + var createStyler = (open, close, parent) => { + let openAll; + let closeAll; + if (parent === void 0) { + openAll = open; + closeAll = close; } else { - keys = Object.keys(tasks); - results = {}; - pending = keys.length; + openAll = parent.openAll + open; + closeAll = close + parent.closeAll; } - function done(err) { - function end() { - if (cb) - cb(err, results); - cb = null; + return { + open, + close, + openAll, + closeAll, + parent + }; + }; + var createBuilder = (self2, _styler, _isEmpty) => { + const builder = (...arguments_) => { + return applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" ")); + }; + builder.__proto__ = proto; + builder._generator = self2; + builder._styler = _styler; + builder._isEmpty = _isEmpty; + return builder; + }; + var applyStyle = (self2, string) => { + if (self2.level <= 0 || !string) { + return self2._isEmpty ? "" : string; + } + let styler = self2._styler; + if (styler === void 0) { + return string; + } + const { openAll, closeAll } = styler; + if (string.indexOf("\x1B") !== -1) { + while (styler !== void 0) { + string = stringReplaceAll(string, styler.close, styler.open); + styler = styler.parent; } - if (isSync) - queueMicrotask2(end); - else - end(); } - function each(i, err, result) { - results[i] = result; - if (--pending === 0 || err) { - done(err); - } + const lfIndex = string.indexOf("\n"); + if (lfIndex !== -1) { + string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex); + } + return openAll + string + closeAll; + }; + var template; + var chalkTag = (chalk2, ...strings) => { + const [firstString] = strings; + if (!Array.isArray(firstString)) { + return strings.join(" "); + } + const arguments_ = strings.slice(1); + const parts = [firstString.raw[0]]; + for (let i = 1; i < firstString.length; i++) { + parts.push( + String(arguments_[i - 1]).replace(/[{}\\]/g, "\\$&"), + String(firstString.raw[i]) + ); } - if (!pending) { - done(null); - } else if (keys) { - keys.forEach(function(key) { - tasks[key](function(err, result) { - each(key, err, result); - }); - }); - } else { - tasks.forEach(function(task, i) { - task(function(err, result) { - each(i, err, result); - }); - }); + if (template === void 0) { + template = require_templates3(); } - isSync = false; - } - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/constants.js -var require_constants6 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/constants.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; - var NODE_PROCESS_VERSION_PARTS = process.versions.node.split("."); - if (NODE_PROCESS_VERSION_PARTS[0] === void 0 || NODE_PROCESS_VERSION_PARTS[1] === void 0) { - throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); - } - var MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); - var MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); - var SUPPORTED_MAJOR_VERSION = 10; - var SUPPORTED_MINOR_VERSION = 10; - var IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; - var IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; - exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; + return template(chalk2, parts.join("")); + }; + Object.defineProperties(Chalk.prototype, styles); + var chalk = Chalk(); + chalk.supportsColor = stdoutColor; + chalk.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 }); + chalk.stderr.supportsColor = stderrColor; + chalk.Level = { + None: 0, + Basic: 1, + Ansi256: 2, + TrueColor: 3, + 0: "None", + 1: "Basic", + 2: "Ansi256", + 3: "TrueColor" + }; + module2.exports = chalk; } }); -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/fs.js -var require_fs3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/fs.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/errors.js +var require_errors3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/errors.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createDirentFromStats = void 0; - var DirentFromStats = class { - constructor(name, stats) { - this.name = name; - this.isBlockDevice = stats.isBlockDevice.bind(stats); - this.isCharacterDevice = stats.isCharacterDevice.bind(stats); - this.isDirectory = stats.isDirectory.bind(stats); - this.isFIFO = stats.isFIFO.bind(stats); - this.isFile = stats.isFile.bind(stats); - this.isSocket = stats.isSocket.bind(stats); - this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + exports2.ShellError = void 0; + var ShellError = class extends Error { + constructor(message2) { + super(message2); + this.name = `ShellError`; } }; - function createDirentFromStats(name, stats) { - return new DirentFromStats(name, stats); - } - exports2.createDirentFromStats = createDirentFromStats; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/index.js -var require_utils6 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/utils/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.fs = void 0; - var fs = require_fs3(); - exports2.fs = fs; + exports2.ShellError = ShellError; } }); -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/common.js -var require_common3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/common.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/globUtils.js +var require_globUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/globUtils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.joinPathSegments = void 0; - function joinPathSegments(a, b, separator) { - if (a.endsWith(separator)) { - return a + b; + exports2.isBraceExpansion = exports2.match = exports2.isGlobPattern = exports2.fastGlobOptions = exports2.micromatchOptions = void 0; + var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var fslib_12 = require_lib50(); + var fast_glob_1 = tslib_12.__importDefault(require_out4()); + var fs_1 = tslib_12.__importDefault(require("fs")); + var micromatch_12 = tslib_12.__importDefault(require_micromatch()); + exports2.micromatchOptions = { + // This is required because we don't want ")/*" to be a valid shell glob pattern. + strictBrackets: true + }; + exports2.fastGlobOptions = { + onlyDirectories: false, + onlyFiles: false + }; + function isGlobPattern(pattern) { + if (!micromatch_12.default.scan(pattern, exports2.micromatchOptions).isGlob) + return false; + try { + micromatch_12.default.parse(pattern, exports2.micromatchOptions); + } catch { + return false; } - return a + separator + b; + return true; } - exports2.joinPathSegments = joinPathSegments; + exports2.isGlobPattern = isGlobPattern; + function match(pattern, { cwd, baseFs }) { + return (0, fast_glob_1.default)(pattern, { + ...exports2.fastGlobOptions, + cwd: fslib_12.npath.fromPortablePath(cwd), + fs: (0, fslib_12.extendFs)(fs_1.default, new fslib_12.PosixFS(baseFs)) + }); + } + exports2.match = match; + function isBraceExpansion(pattern) { + return micromatch_12.default.scan(pattern, exports2.micromatchOptions).isBrace; + } + exports2.isBraceExpansion = isBraceExpansion; } }); -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/async.js -var require_async3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/async.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/pipe.js +var require_pipe2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; - var fsStat = require_out(); - var rpl = require_run_parallel(); - var constants_1 = require_constants6(); - var utils = require_utils6(); - var common = require_common3(); - function read(directory, settings, callback) { - if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { - readdirWithFileTypes(directory, settings, callback); - return; - } - readdir(directory, settings, callback); - } - exports2.read = read; - function readdirWithFileTypes(directory, settings, callback) { - settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => { - if (readdirError !== null) { - callFailureCallback(callback, readdirError); - return; - } - const entries = dirents.map((dirent) => ({ - dirent, - name: dirent.name, - path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) - })); - if (!settings.followSymbolicLinks) { - callSuccessCallback(callback, entries); - return; - } - const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); - rpl(tasks, (rplError, rplEntries) => { - if (rplError !== null) { - callFailureCallback(callback, rplError); - return; - } - callSuccessCallback(callback, rplEntries); - }); - }); + exports2.createOutputStreamsWithPrefix = exports2.start = exports2.Handle = exports2.ProtectedStream = exports2.makeBuiltin = exports2.makeProcess = exports2.Pipe = void 0; + var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var cross_spawn_1 = tslib_12.__importDefault(require_cross_spawn()); + var stream_12 = require("stream"); + var string_decoder_1 = require("string_decoder"); + var Pipe; + (function(Pipe2) { + Pipe2[Pipe2["STDIN"] = 0] = "STDIN"; + Pipe2[Pipe2["STDOUT"] = 1] = "STDOUT"; + Pipe2[Pipe2["STDERR"] = 2] = "STDERR"; + })(Pipe = exports2.Pipe || (exports2.Pipe = {})); + var activeChildren = /* @__PURE__ */ new Set(); + function sigintHandler() { } - exports2.readdirWithFileTypes = readdirWithFileTypes; - function makeRplTaskEntry(entry, settings) { - return (done) => { - if (!entry.dirent.isSymbolicLink()) { - done(null, entry); - return; - } - settings.fs.stat(entry.path, (statError, stats) => { - if (statError !== null) { - if (settings.throwErrorOnBrokenSymbolicLink) { - done(statError); - return; - } - done(null, entry); - return; - } - entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); - done(null, entry); - }); - }; + function sigtermHandler() { + for (const child of activeChildren) { + child.kill(); + } } - function readdir(directory, settings, callback) { - settings.fs.readdir(directory, (readdirError, names) => { - if (readdirError !== null) { - callFailureCallback(callback, readdirError); - return; + function makeProcess(name, args2, opts, spawnOpts) { + return (stdio) => { + const stdin = stdio[0] instanceof stream_12.Transform ? `pipe` : stdio[0]; + const stdout = stdio[1] instanceof stream_12.Transform ? `pipe` : stdio[1]; + const stderr = stdio[2] instanceof stream_12.Transform ? `pipe` : stdio[2]; + const child = (0, cross_spawn_1.default)(name, args2, { ...spawnOpts, stdio: [ + stdin, + stdout, + stderr + ] }); + activeChildren.add(child); + if (activeChildren.size === 1) { + process.on(`SIGINT`, sigintHandler); + process.on(`SIGTERM`, sigtermHandler); } - const tasks = names.map((name) => { - const path = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); - return (done) => { - fsStat.stat(path, settings.fsStatSettings, (error, stats) => { - if (error !== null) { - done(error); - return; + if (stdio[0] instanceof stream_12.Transform) + stdio[0].pipe(child.stdin); + if (stdio[1] instanceof stream_12.Transform) + child.stdout.pipe(stdio[1], { end: false }); + if (stdio[2] instanceof stream_12.Transform) + child.stderr.pipe(stdio[2], { end: false }); + return { + stdin: child.stdin, + promise: new Promise((resolve) => { + child.on(`error`, (error) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); } - const entry = { - name, - path, - dirent: utils.fs.createDirentFromStats(name, stats) - }; - if (settings.stats) { - entry.stats = stats; + switch (error.code) { + case `ENOENT`: + { + stdio[2].write(`command not found: ${name} +`); + resolve(127); + } + break; + case `EACCES`: + { + stdio[2].write(`permission denied: ${name} +`); + resolve(128); + } + break; + default: + { + stdio[2].write(`uncaught error: ${error.message} +`); + resolve(1); + } + break; } - done(null, entry); }); - }; - }); - rpl(tasks, (rplError, entries) => { - if (rplError !== null) { - callFailureCallback(callback, rplError); - return; - } - callSuccessCallback(callback, entries); - }); - }); - } - exports2.readdir = readdir; - function callFailureCallback(callback, error) { - callback(error); - } - function callSuccessCallback(callback, result) { - callback(null, result); - } - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/sync.js -var require_sync2 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/providers/sync.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; - var fsStat = require_out(); - var constants_1 = require_constants6(); - var utils = require_utils6(); - var common = require_common3(); - function read(directory, settings) { - if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { - return readdirWithFileTypes(directory, settings); - } - return readdir(directory, settings); - } - exports2.read = read; - function readdirWithFileTypes(directory, settings) { - const dirents = settings.fs.readdirSync(directory, { withFileTypes: true }); - return dirents.map((dirent) => { - const entry = { - dirent, - name: dirent.name, - path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + child.on(`close`, (code) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); + } + if (code !== null) { + resolve(code); + } else { + resolve(129); + } + }); + }) }; - if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { - try { - const stats = settings.fs.statSync(entry.path); - entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); - } catch (error) { - if (settings.throwErrorOnBrokenSymbolicLink) { - throw error; - } - } - } - return entry; - }); + }; } - exports2.readdirWithFileTypes = readdirWithFileTypes; - function readdir(directory, settings) { - const names = settings.fs.readdirSync(directory); - return names.map((name) => { - const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); - const stats = fsStat.statSync(entryPath, settings.fsStatSettings); - const entry = { - name, - path: entryPath, - dirent: utils.fs.createDirentFromStats(name, stats) + exports2.makeProcess = makeProcess; + function makeBuiltin(builtin) { + return (stdio) => { + const stdin = stdio[0] === `pipe` ? new stream_12.PassThrough() : stdio[0]; + return { + stdin, + promise: Promise.resolve().then(() => builtin({ + stdin, + stdout: stdio[1], + stderr: stdio[2] + })) }; - if (settings.stats) { - entry.stats = stats; - } - return entry; - }); + }; } - exports2.readdir = readdir; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/adapters/fs.js -var require_fs4 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/adapters/fs.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; - var fs = require("fs"); - exports2.FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - stat: fs.stat, - lstatSync: fs.lstatSync, - statSync: fs.statSync, - readdir: fs.readdir, - readdirSync: fs.readdirSync + exports2.makeBuiltin = makeBuiltin; + var ProtectedStream = class { + constructor(stream) { + this.stream = stream; + } + close() { + } + get() { + return this.stream; + } }; - function createFileSystemAdapter(fsMethods) { - if (fsMethods === void 0) { - return exports2.FILE_SYSTEM_ADAPTER; + exports2.ProtectedStream = ProtectedStream; + var PipeStream = class { + constructor() { + this.stream = null; } - return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); - } - exports2.createFileSystemAdapter = createFileSystemAdapter; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/settings.js -var require_settings2 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/settings.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path = require("path"); - var fsStat = require_out(); - var fs = require_fs4(); - var Settings = class { - constructor(_options = {}) { - this._options = _options; - this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); - this.fs = fs.createFileSystemAdapter(this._options.fs); - this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); - this.stats = this._getValue(this._options.stats, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); - this.fsStatSettings = new fsStat.Settings({ - followSymbolicLink: this.followSymbolicLinks, - fs: this.fs, - throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink - }); + close() { + if (this.stream === null) { + throw new Error(`Assertion failed: No stream attached`); + } else { + this.stream.end(); + } } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; + attach(stream) { + this.stream = stream; + } + get() { + if (this.stream === null) { + throw new Error(`Assertion failed: No stream attached`); + } else { + return this.stream; + } } }; - exports2.default = Settings; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/index.js -var require_out2 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Settings = exports2.scandirSync = exports2.scandir = void 0; - var async = require_async3(); - var sync = require_sync2(); - var settings_1 = require_settings2(); - exports2.Settings = settings_1.default; - function scandir(path, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === "function") { - async.read(path, getSettings(), optionsOrSettingsOrCallback); - return; + var Handle = class { + static start(implementation, { stdin, stdout, stderr }) { + const chain = new Handle(null, implementation); + chain.stdin = stdin; + chain.stdout = stdout; + chain.stderr = stderr; + return chain; } - async.read(path, getSettings(optionsOrSettingsOrCallback), callback); - } - exports2.scandir = scandir; - function scandirSync(path, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - return sync.read(path, settings); - } - exports2.scandirSync = scandirSync; - function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; + constructor(ancestor, implementation) { + this.stdin = null; + this.stdout = null; + this.stderr = null; + this.pipe = null; + this.ancestor = ancestor; + this.implementation = implementation; } - return new settings_1.default(settingsOrOptions); - } - } -}); - -// ../../node_modules/.pnpm/reusify@1.0.4/node_modules/reusify/reusify.js -var require_reusify = __commonJS({ - "../../node_modules/.pnpm/reusify@1.0.4/node_modules/reusify/reusify.js"(exports2, module2) { - "use strict"; - function reusify(Constructor) { - var head = new Constructor(); - var tail = head; - function get() { - var current = head; - if (current.next) { - head = current.next; + pipeTo(implementation, source = Pipe.STDOUT) { + const next = new Handle(this, implementation); + const pipe = new PipeStream(); + next.pipe = pipe; + next.stdout = this.stdout; + next.stderr = this.stderr; + if ((source & Pipe.STDOUT) === Pipe.STDOUT) + this.stdout = pipe; + else if (this.ancestor !== null) + this.stderr = this.ancestor.stdout; + if ((source & Pipe.STDERR) === Pipe.STDERR) + this.stderr = pipe; + else if (this.ancestor !== null) + this.stderr = this.ancestor.stderr; + return next; + } + async exec() { + const stdio = [ + `ignore`, + `ignore`, + `ignore` + ]; + if (this.pipe) { + stdio[0] = `pipe`; } else { - head = new Constructor(); - tail = head; + if (this.stdin === null) { + throw new Error(`Assertion failed: No input stream registered`); + } else { + stdio[0] = this.stdin.get(); + } } - current.next = null; - return current; + let stdoutLock; + if (this.stdout === null) { + throw new Error(`Assertion failed: No output stream registered`); + } else { + stdoutLock = this.stdout; + stdio[1] = stdoutLock.get(); + } + let stderrLock; + if (this.stderr === null) { + throw new Error(`Assertion failed: No error stream registered`); + } else { + stderrLock = this.stderr; + stdio[2] = stderrLock.get(); + } + const child = this.implementation(stdio); + if (this.pipe) + this.pipe.attach(child.stdin); + return await child.promise.then((code) => { + stdoutLock.close(); + stderrLock.close(); + return code; + }); } - function release(obj) { - tail.next = obj; - tail = obj; + async run() { + const promises = []; + for (let handle = this; handle; handle = handle.ancestor) + promises.push(handle.exec()); + const exitCodes = await Promise.all(promises); + return exitCodes[0]; } + }; + exports2.Handle = Handle; + function start(p, opts) { + return Handle.start(p, opts); + } + exports2.start = start; + function createStreamReporter(reportFn, prefix = null) { + const stream = new stream_12.PassThrough(); + const decoder = new string_decoder_1.StringDecoder(); + let buffer = ``; + stream.on(`data`, (chunk) => { + let chunkStr = decoder.write(chunk); + let lineIndex; + do { + lineIndex = chunkStr.indexOf(` +`); + if (lineIndex !== -1) { + const line = buffer + chunkStr.substring(0, lineIndex); + chunkStr = chunkStr.substring(lineIndex + 1); + buffer = ``; + if (prefix !== null) { + reportFn(`${prefix} ${line}`); + } else { + reportFn(line); + } + } + } while (lineIndex !== -1); + buffer += chunkStr; + }); + stream.on(`end`, () => { + const last = decoder.end(); + if (last !== ``) { + if (prefix !== null) { + reportFn(`${prefix} ${last}`); + } else { + reportFn(last); + } + } + }); + return stream; + } + function createOutputStreamsWithPrefix(state, { prefix }) { return { - get, - release + stdout: createStreamReporter((text) => state.stdout.write(`${text} +`), state.stdout.isTTY ? prefix : null), + stderr: createStreamReporter((text) => state.stderr.write(`${text} +`), state.stderr.isTTY ? prefix : null) }; } - module2.exports = reusify; + exports2.createOutputStreamsWithPrefix = createOutputStreamsWithPrefix; } }); -// ../../node_modules/.pnpm/fastq@1.13.0/node_modules/fastq/queue.js -var require_queue2 = __commonJS({ - "../../node_modules/.pnpm/fastq@1.13.0/node_modules/fastq/queue.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/index.js +var require_lib52 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@3.2.5(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/index.js"(exports2) { "use strict"; - var reusify = require_reusify(); - function fastqueue(context, worker, concurrency) { - if (typeof context === "function") { - concurrency = worker; - worker = context; - context = null; - } - if (concurrency < 1) { - throw new Error("fastqueue concurrency must be greater than 1"); - } - var cache = reusify(Task); - var queueHead = null; - var queueTail = null; - var _running = 0; - var errorHandler = null; - var self2 = { - push, - drain: noop, - saturated: noop, - pause, - paused: false, - concurrency, - running, - resume, - idle, - length, - getQueue, - unshift, - empty: noop, - kill, - killAndDrain, - error - }; - return self2; - function running() { - return _running; - } - function pause() { - self2.paused = true; - } - function length() { - var current = queueHead; - var counter = 0; - while (current) { - current = current.next; - counter++; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.execute = exports2.ShellError = exports2.globUtils = void 0; + var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var fslib_12 = require_lib50(); + var parsers_1 = require_lib51(); + var chalk_1 = tslib_12.__importDefault(require_source2()); + var os_1 = require("os"); + var stream_12 = require("stream"); + var util_1 = require("util"); + var errors_1 = require_errors3(); + Object.defineProperty(exports2, "ShellError", { enumerable: true, get: function() { + return errors_1.ShellError; + } }); + var globUtils = tslib_12.__importStar(require_globUtils()); + exports2.globUtils = globUtils; + var pipe_1 = require_pipe2(); + var pipe_2 = require_pipe2(); + var setTimeoutPromise = (0, util_1.promisify)(setTimeout); + var StreamType; + (function(StreamType2) { + StreamType2[StreamType2["Readable"] = 1] = "Readable"; + StreamType2[StreamType2["Writable"] = 2] = "Writable"; + })(StreamType || (StreamType = {})); + function getFileDescriptorStream(fd, type, state) { + const stream = new stream_12.PassThrough({ autoDestroy: true }); + switch (fd) { + case pipe_2.Pipe.STDIN: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stdin.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable && state.stdin instanceof stream_12.Writable) { + stream.pipe(state.stdin, { end: false }); + } + } + break; + case pipe_2.Pipe.STDOUT: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stdout.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable) { + stream.pipe(state.stdout, { end: false }); + } + } + break; + case pipe_2.Pipe.STDERR: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stderr.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable) { + stream.pipe(state.stderr, { end: false }); + } + } + break; + default: { + throw new errors_1.ShellError(`Bad file descriptor: "${fd}"`); } - return counter; } - function getQueue() { - var current = queueHead; - var tasks = []; - while (current) { - tasks.push(current.value); - current = current.next; + return stream; + } + function cloneState(state, mergeWith = {}) { + const newState = { ...state, ...mergeWith }; + newState.environment = { ...state.environment, ...mergeWith.environment }; + newState.variables = { ...state.variables, ...mergeWith.variables }; + return newState; + } + var BUILTINS = /* @__PURE__ */ new Map([ + [`cd`, async ([target = (0, os_1.homedir)(), ...rest], opts, state) => { + const resolvedTarget = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(target)); + const stat = await opts.baseFs.statPromise(resolvedTarget).catch((error) => { + throw error.code === `ENOENT` ? new errors_1.ShellError(`cd: no such file or directory: ${target}`) : error; + }); + if (!stat.isDirectory()) + throw new errors_1.ShellError(`cd: not a directory: ${target}`); + state.cwd = resolvedTarget; + return 0; + }], + [`pwd`, async (args2, opts, state) => { + state.stdout.write(`${fslib_12.npath.fromPortablePath(state.cwd)} +`); + return 0; + }], + [`:`, async (args2, opts, state) => { + return 0; + }], + [`true`, async (args2, opts, state) => { + return 0; + }], + [`false`, async (args2, opts, state) => { + return 1; + }], + [`exit`, async ([code, ...rest], opts, state) => { + return state.exitCode = parseInt(code !== null && code !== void 0 ? code : state.variables[`?`], 10); + }], + [`echo`, async (args2, opts, state) => { + state.stdout.write(`${args2.join(` `)} +`); + return 0; + }], + [`sleep`, async ([time], opts, state) => { + if (typeof time === `undefined`) + throw new errors_1.ShellError(`sleep: missing operand`); + const seconds = Number(time); + if (Number.isNaN(seconds)) + throw new errors_1.ShellError(`sleep: invalid time interval '${time}'`); + return await setTimeoutPromise(1e3 * seconds, 0); + }], + [`__ysh_run_procedure`, async (args2, opts, state) => { + const procedure = state.procedures[args2[0]]; + const exitCode = await (0, pipe_2.start)(procedure, { + stdin: new pipe_2.ProtectedStream(state.stdin), + stdout: new pipe_2.ProtectedStream(state.stdout), + stderr: new pipe_2.ProtectedStream(state.stderr) + }).run(); + return exitCode; + }], + [`__ysh_set_redirects`, async (args2, opts, state) => { + let stdin = state.stdin; + let stdout = state.stdout; + let stderr = state.stderr; + const inputs = []; + const outputs = []; + const errors = []; + let t = 0; + while (args2[t] !== `--`) { + const key = args2[t++]; + const { type, fd } = JSON.parse(key); + const pushInput = (readableFactory) => { + switch (fd) { + case null: + case 0: + { + inputs.push(readableFactory); + } + break; + default: + throw new Error(`Unsupported file descriptor: "${fd}"`); + } + }; + const pushOutput = (writable) => { + switch (fd) { + case null: + case 1: + { + outputs.push(writable); + } + break; + case 2: + { + errors.push(writable); + } + break; + default: + throw new Error(`Unsupported file descriptor: "${fd}"`); + } + }; + const count = Number(args2[t++]); + const last = t + count; + for (let u = t; u < last; ++t, ++u) { + switch (type) { + case `<`: + { + pushInput(() => { + return opts.baseFs.createReadStream(fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args2[u]))); + }); + } + break; + case `<<<`: + { + pushInput(() => { + const input = new stream_12.PassThrough(); + process.nextTick(() => { + input.write(`${args2[u]} +`); + input.end(); + }); + return input; + }); + } + break; + case `<&`: + { + pushInput(() => getFileDescriptorStream(Number(args2[u]), StreamType.Readable, state)); + } + break; + case `>`: + case `>>`: + { + const outputPath = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args2[u])); + if (outputPath === `/dev/null`) { + pushOutput(new stream_12.Writable({ + autoDestroy: true, + emitClose: true, + write(chunk, encoding, callback) { + setImmediate(callback); + } + })); + } else { + pushOutput(opts.baseFs.createWriteStream(outputPath, type === `>>` ? { flags: `a` } : void 0)); + } + } + break; + case `>&`: + { + pushOutput(getFileDescriptorStream(Number(args2[u]), StreamType.Writable, state)); + } + break; + default: { + throw new Error(`Assertion failed: Unsupported redirection type: "${type}"`); + } + } + } } - return tasks; - } - function resume() { - if (!self2.paused) - return; - self2.paused = false; - for (var i = 0; i < self2.concurrency; i++) { - _running++; - release(); + if (inputs.length > 0) { + const pipe = new stream_12.PassThrough(); + stdin = pipe; + const bindInput = (n) => { + if (n === inputs.length) { + pipe.end(); + } else { + const input = inputs[n](); + input.pipe(pipe, { end: false }); + input.on(`end`, () => { + bindInput(n + 1); + }); + } + }; + bindInput(0); } - } - function idle() { - return _running === 0 && self2.length() === 0; - } - function push(value, done) { - var current = cache.get(); - current.context = context; - current.release = release; - current.value = value; - current.callback = done || noop; - current.errorHandler = errorHandler; - if (_running === self2.concurrency || self2.paused) { - if (queueTail) { - queueTail.next = current; - queueTail = current; - } else { - queueHead = current; - queueTail = current; - self2.saturated(); + if (outputs.length > 0) { + const pipe = new stream_12.PassThrough(); + stdout = pipe; + for (const output of outputs) { + pipe.pipe(output); } - } else { - _running++; - worker.call(context, current.value, current.worked); } - } - function unshift(value, done) { - var current = cache.get(); - current.context = context; - current.release = release; - current.value = value; - current.callback = done || noop; - if (_running === self2.concurrency || self2.paused) { - if (queueHead) { - current.next = queueHead; - queueHead = current; - } else { - queueHead = current; - queueTail = current; - self2.saturated(); + if (errors.length > 0) { + const pipe = new stream_12.PassThrough(); + stderr = pipe; + for (const error of errors) { + pipe.pipe(error); } - } else { - _running++; - worker.call(context, current.value, current.worked); } + const exitCode = await (0, pipe_2.start)(makeCommandAction(args2.slice(t + 1), opts, state), { + stdin: new pipe_2.ProtectedStream(stdin), + stdout: new pipe_2.ProtectedStream(stdout), + stderr: new pipe_2.ProtectedStream(stderr) + }).run(); + await Promise.all(outputs.map((output) => { + return new Promise((resolve, reject) => { + output.on(`error`, (error) => { + reject(error); + }); + output.on(`close`, () => { + resolve(); + }); + output.end(); + }); + })); + await Promise.all(errors.map((err) => { + return new Promise((resolve, reject) => { + err.on(`error`, (error) => { + reject(error); + }); + err.on(`close`, () => { + resolve(); + }); + err.end(); + }); + })); + return exitCode; + }] + ]); + async function executeBufferedSubshell(ast, opts, state) { + const chunks = []; + const stdout = new stream_12.PassThrough(); + stdout.on(`data`, (chunk) => chunks.push(chunk)); + await executeShellLine(ast, opts, cloneState(state, { stdout })); + return Buffer.concat(chunks).toString().replace(/[\r\n]+$/, ``); + } + async function applyEnvVariables(environmentSegments, opts, state) { + const envPromises = environmentSegments.map(async (envSegment) => { + const interpolatedArgs = await interpolateArguments(envSegment.args, opts, state); + return { + name: envSegment.name, + value: interpolatedArgs.join(` `) + }; + }); + const interpolatedEnvs = await Promise.all(envPromises); + return interpolatedEnvs.reduce((envs, env) => { + envs[env.name] = env.value; + return envs; + }, {}); + } + function split(raw) { + return raw.match(/[^ \r\n\t]+/g) || []; + } + async function evaluateVariable(segment, opts, state, push, pushAndClose = push) { + switch (segment.name) { + case `$`: + { + push(String(process.pid)); + } + break; + case `#`: + { + push(String(opts.args.length)); + } + break; + case `@`: + { + if (segment.quoted) { + for (const raw of opts.args) { + pushAndClose(raw); + } + } else { + for (const raw of opts.args) { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + push(parts[parts.length - 1]); + } + } + } + break; + case `*`: + { + const raw = opts.args.join(` `); + if (segment.quoted) { + push(raw); + } else { + for (const part of split(raw)) { + pushAndClose(part); + } + } + } + break; + case `PPID`: + { + push(String(process.ppid)); + } + break; + case `RANDOM`: + { + push(String(Math.floor(Math.random() * 32768))); + } + break; + default: + { + const argIndex = parseInt(segment.name, 10); + let raw; + const isArgument = Number.isFinite(argIndex); + if (isArgument) { + if (argIndex >= 0 && argIndex < opts.args.length) { + raw = opts.args[argIndex]; + } + } else { + if (Object.prototype.hasOwnProperty.call(state.variables, segment.name)) { + raw = state.variables[segment.name]; + } else if (Object.prototype.hasOwnProperty.call(state.environment, segment.name)) { + raw = state.environment[segment.name]; + } + } + if (typeof raw !== `undefined` && segment.alternativeValue) { + raw = (await interpolateArguments(segment.alternativeValue, opts, state)).join(` `); + } else if (typeof raw === `undefined`) { + if (segment.defaultValue) { + raw = (await interpolateArguments(segment.defaultValue, opts, state)).join(` `); + } else if (segment.alternativeValue) { + raw = ``; + } + } + if (typeof raw === `undefined`) { + if (isArgument) + throw new errors_1.ShellError(`Unbound argument #${argIndex}`); + throw new errors_1.ShellError(`Unbound variable "${segment.name}"`); + } + if (segment.quoted) { + push(raw); + } else { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + const part = parts[parts.length - 1]; + if (typeof part !== `undefined`) { + push(part); + } + } + } + break; } - function release(holder) { - if (holder) { - cache.release(holder); + } + var operators = { + addition: (left, right) => left + right, + subtraction: (left, right) => left - right, + multiplication: (left, right) => left * right, + division: (left, right) => Math.trunc(left / right) + }; + async function evaluateArithmetic(arithmetic, opts, state) { + if (arithmetic.type === `number`) { + if (!Number.isInteger(arithmetic.value)) { + throw new Error(`Invalid number: "${arithmetic.value}", only integers are allowed`); + } else { + return arithmetic.value; } - var next = queueHead; - if (next) { - if (!self2.paused) { - if (queueTail === queueHead) { - queueTail = null; - } - queueHead = next.next; - next.next = null; - worker.call(context, next.value, next.worked); - if (queueTail === null) { - self2.empty(); + } else if (arithmetic.type === `variable`) { + const parts = []; + await evaluateVariable({ ...arithmetic, quoted: true }, opts, state, (result2) => parts.push(result2)); + const number = Number(parts.join(` `)); + if (Number.isNaN(number)) { + return evaluateArithmetic({ type: `variable`, name: parts.join(` `) }, opts, state); + } else { + return evaluateArithmetic({ type: `number`, value: number }, opts, state); + } + } else { + return operators[arithmetic.type](await evaluateArithmetic(arithmetic.left, opts, state), await evaluateArithmetic(arithmetic.right, opts, state)); + } + } + async function interpolateArguments(commandArgs, opts, state) { + const redirections = /* @__PURE__ */ new Map(); + const interpolated = []; + let interpolatedSegments = []; + const push = (segment) => { + interpolatedSegments.push(segment); + }; + const close = () => { + if (interpolatedSegments.length > 0) + interpolated.push(interpolatedSegments.join(``)); + interpolatedSegments = []; + }; + const pushAndClose = (segment) => { + push(segment); + close(); + }; + const redirect = (type, fd, target) => { + const key = JSON.stringify({ type, fd }); + let targets = redirections.get(key); + if (typeof targets === `undefined`) + redirections.set(key, targets = []); + targets.push(target); + }; + for (const commandArg of commandArgs) { + let isGlob = false; + switch (commandArg.type) { + case `redirection`: + { + const interpolatedArgs = await interpolateArguments(commandArg.args, opts, state); + for (const interpolatedArg of interpolatedArgs) { + redirect(commandArg.subtype, commandArg.fd, interpolatedArg); + } } - } else { - _running--; + break; + case `argument`: + { + for (const segment of commandArg.segments) { + switch (segment.type) { + case `text`: + { + push(segment.text); + } + break; + case `glob`: + { + push(segment.pattern); + isGlob = true; + } + break; + case `shell`: + { + const raw = await executeBufferedSubshell(segment.shell, opts, state); + if (segment.quoted) { + push(raw); + } else { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + push(parts[parts.length - 1]); + } + } + break; + case `variable`: + { + await evaluateVariable(segment, opts, state, push, pushAndClose); + } + break; + case `arithmetic`: + { + push(String(await evaluateArithmetic(segment.arithmetic, opts, state))); + } + break; + } + } + } + break; + } + close(); + if (isGlob) { + const pattern = interpolated.pop(); + if (typeof pattern === `undefined`) + throw new Error(`Assertion failed: Expected a glob pattern to have been set`); + const matches = await opts.glob.match(pattern, { cwd: state.cwd, baseFs: opts.baseFs }); + if (matches.length === 0) { + const braceExpansionNotice = globUtils.isBraceExpansion(pattern) ? `. Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22` : ``; + throw new errors_1.ShellError(`No matches found: "${pattern}"${braceExpansionNotice}`); + } + for (const match of matches.sort()) { + pushAndClose(match); } - } else if (--_running === 0) { - self2.drain(); } } - function kill() { - queueHead = null; - queueTail = null; - self2.drain = noop; - } - function killAndDrain() { - queueHead = null; - queueTail = null; - self2.drain(); - self2.drain = noop; + if (redirections.size > 0) { + const redirectionArgs = []; + for (const [key, targets] of redirections.entries()) + redirectionArgs.splice(redirectionArgs.length, 0, key, String(targets.length), ...targets); + interpolated.splice(0, 0, `__ysh_set_redirects`, ...redirectionArgs, `--`); } - function error(handler) { - errorHandler = handler; + return interpolated; + } + function makeCommandAction(args2, opts, state) { + if (!opts.builtins.has(args2[0])) + args2 = [`command`, ...args2]; + const nativeCwd = fslib_12.npath.fromPortablePath(state.cwd); + let env = state.environment; + if (typeof env.PWD !== `undefined`) + env = { ...env, PWD: nativeCwd }; + const [name, ...rest] = args2; + if (name === `command`) { + return (0, pipe_1.makeProcess)(rest[0], rest.slice(1), opts, { + cwd: nativeCwd, + env + }); } + const builtin = opts.builtins.get(name); + if (typeof builtin === `undefined`) + throw new Error(`Assertion failed: A builtin should exist for "${name}"`); + return (0, pipe_1.makeBuiltin)(async ({ stdin, stdout, stderr }) => { + const { stdin: initialStdin, stdout: initialStdout, stderr: initialStderr } = state; + state.stdin = stdin; + state.stdout = stdout; + state.stderr = stderr; + try { + return await builtin(rest, opts, state); + } finally { + state.stdin = initialStdin; + state.stdout = initialStdout; + state.stderr = initialStderr; + } + }); } - function noop() { + function makeSubshellAction(ast, opts, state) { + return (stdio) => { + const stdin = new stream_12.PassThrough(); + const promise = executeShellLine(ast, opts, cloneState(state, { stdin })); + return { stdin, promise }; + }; } - function Task() { - this.value = null; - this.callback = noop; - this.next = null; - this.release = noop; - this.context = null; - this.errorHandler = null; - var self2 = this; - this.worked = function worked(err, result) { - var callback = self2.callback; - var errorHandler = self2.errorHandler; - var val = self2.value; - self2.value = null; - self2.callback = noop; - if (self2.errorHandler) { - errorHandler(err, val); - } - callback.call(self2.context, err, result); - self2.release(self2); + function makeGroupAction(ast, opts, state) { + return (stdio) => { + const stdin = new stream_12.PassThrough(); + const promise = executeShellLine(ast, opts, state); + return { stdin, promise }; }; } - function queueAsPromised(context, worker, concurrency) { - if (typeof context === "function") { - concurrency = worker; - worker = context; - context = null; - } - function asyncWrapper(arg, cb) { - worker.call(this, arg).then(function(res) { - cb(null, res); - }, cb); + function makeActionFromProcedure(procedure, args2, opts, activeState) { + if (args2.length === 0) { + return procedure; + } else { + let key; + do { + key = String(Math.random()); + } while (Object.prototype.hasOwnProperty.call(activeState.procedures, key)); + activeState.procedures = { ...activeState.procedures }; + activeState.procedures[key] = procedure; + return makeCommandAction([...args2, `__ysh_run_procedure`, key], opts, activeState); } - var queue = fastqueue(context, asyncWrapper, concurrency); - var pushCb = queue.push; - var unshiftCb = queue.unshift; - queue.push = push; - queue.unshift = unshift; - queue.drained = drained; - return queue; - function push(value) { - var p = new Promise(function(resolve, reject) { - pushCb(value, function(err, result) { - if (err) { - reject(err); - return; + } + async function executeCommandChainImpl(node, opts, state) { + let current = node; + let pipeType = null; + let execution = null; + while (current) { + const activeState = current.then ? { ...state } : state; + let action; + switch (current.type) { + case `command`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const environment = await applyEnvVariables(current.envs, opts, state); + action = current.envs.length ? makeCommandAction(args2, opts, cloneState(activeState, { environment })) : makeCommandAction(args2, opts, activeState); } - resolve(result); - }); - }); - p.catch(noop); - return p; - } - function unshift(value) { - var p = new Promise(function(resolve, reject) { - unshiftCb(value, function(err, result) { - if (err) { - reject(err); - return; + break; + case `subshell`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const procedure = makeSubshellAction(current.subshell, opts, activeState); + action = makeActionFromProcedure(procedure, args2, opts, activeState); } - resolve(result); + break; + case `group`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const procedure = makeGroupAction(current.group, opts, activeState); + action = makeActionFromProcedure(procedure, args2, opts, activeState); + } + break; + case `envs`: + { + const environment = await applyEnvVariables(current.envs, opts, state); + activeState.environment = { ...activeState.environment, ...environment }; + action = makeCommandAction([`true`], opts, activeState); + } + break; + } + if (typeof action === `undefined`) + throw new Error(`Assertion failed: An action should have been generated`); + if (pipeType === null) { + execution = (0, pipe_2.start)(action, { + stdin: new pipe_2.ProtectedStream(activeState.stdin), + stdout: new pipe_2.ProtectedStream(activeState.stdout), + stderr: new pipe_2.ProtectedStream(activeState.stderr) }); - }); - p.catch(noop); - return p; - } - function drained() { - var previousDrain = queue.drain; - var p = new Promise(function(resolve) { - queue.drain = function() { - previousDrain(); - resolve(); - }; - }); - return p; - } - } - module2.exports = fastqueue; - module2.exports.promise = queueAsPromised; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/common.js -var require_common4 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/common.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.joinPathSegments = exports2.replacePathSegmentSeparator = exports2.isAppliedFilter = exports2.isFatalError = void 0; - function isFatalError(settings, error) { - if (settings.errorFilter === null) { - return true; - } - return !settings.errorFilter(error); - } - exports2.isFatalError = isFatalError; - function isAppliedFilter(filter, value) { - return filter === null || filter(value); - } - exports2.isAppliedFilter = isAppliedFilter; - function replacePathSegmentSeparator(filepath, separator) { - return filepath.split(/[/\\]/).join(separator); - } - exports2.replacePathSegmentSeparator = replacePathSegmentSeparator; - function joinPathSegments(a, b, separator) { - if (a === "") { - return b; - } - if (a.endsWith(separator)) { - return a + b; - } - return a + separator + b; - } - exports2.joinPathSegments = joinPathSegments; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/reader.js -var require_reader = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/reader.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var common = require_common4(); - var Reader = class { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); - } - }; - exports2.default = Reader; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/async.js -var require_async4 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/async.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var events_1 = require("events"); - var fsScandir = require_out2(); - var fastq = require_queue2(); - var common = require_common4(); - var reader_1 = require_reader(); - var AsyncReader = class extends reader_1.default { - constructor(_root, _settings) { - super(_root, _settings); - this._settings = _settings; - this._scandir = fsScandir.scandir; - this._emitter = new events_1.EventEmitter(); - this._queue = fastq(this._worker.bind(this), this._settings.concurrency); - this._isFatalError = false; - this._isDestroyed = false; - this._queue.drain = () => { - if (!this._isFatalError) { - this._emitter.emit("end"); + } else { + if (execution === null) + throw new Error(`Assertion failed: The execution pipeline should have been setup`); + switch (pipeType) { + case `|`: + { + execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT); + } + break; + case `|&`: + { + execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT | pipe_2.Pipe.STDERR); + } + break; } - }; - } - read() { - this._isFatalError = false; - this._isDestroyed = false; - setImmediate(() => { - this._pushToQueue(this._root, this._settings.basePath); - }); - return this._emitter; - } - get isDestroyed() { - return this._isDestroyed; - } - destroy() { - if (this._isDestroyed) { - throw new Error("The reader is already destroyed"); } - this._isDestroyed = true; - this._queue.killAndDrain(); - } - onEntry(callback) { - this._emitter.on("entry", callback); - } - onError(callback) { - this._emitter.once("error", callback); - } - onEnd(callback) { - this._emitter.once("end", callback); + if (current.then) { + pipeType = current.then.type; + current = current.then.chain; + } else { + current = null; + } } - _pushToQueue(directory, base) { - const queueItem = { directory, base }; - this._queue.push(queueItem, (error) => { - if (error !== null) { - this._handleError(error); + if (execution === null) + throw new Error(`Assertion failed: The execution pipeline should have been setup`); + return await execution.run(); + } + async function executeCommandChain(node, opts, state, { background = false } = {}) { + function getColorizer(index) { + const colors = [`#2E86AB`, `#A23B72`, `#F18F01`, `#C73E1D`, `#CCE2A3`]; + const colorName = colors[index % colors.length]; + return chalk_1.default.hex(colorName); + } + if (background) { + const index = state.nextBackgroundJobIndex++; + const colorizer = getColorizer(index); + const rawPrefix = `[${index}]`; + const prefix = colorizer(rawPrefix); + const { stdout, stderr } = (0, pipe_1.createOutputStreamsWithPrefix)(state, { prefix }); + state.backgroundJobs.push(executeCommandChainImpl(node, opts, cloneState(state, { stdout, stderr })).catch((error) => stderr.write(`${error.message} +`)).finally(() => { + if (state.stdout.isTTY) { + state.stdout.write(`Job ${prefix}, '${colorizer((0, parsers_1.stringifyCommandChain)(node))}' has ended +`); } - }); + })); + return 0; } - _worker(item, done) { - this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { - if (error !== null) { - done(error, void 0); - return; - } - for (const entry of entries) { - this._handleEntry(entry, item.base); + return await executeCommandChainImpl(node, opts, state); + } + async function executeCommandLine(node, opts, state, { background = false } = {}) { + let code; + const setCode = (newCode) => { + code = newCode; + state.variables[`?`] = String(newCode); + }; + const executeChain = async (line) => { + try { + return await executeCommandChain(line.chain, opts, state, { background: background && typeof line.then === `undefined` }); + } catch (error) { + if (!(error instanceof errors_1.ShellError)) + throw error; + state.stderr.write(`${error.message} +`); + return 1; + } + }; + setCode(await executeChain(node)); + while (node.then) { + if (state.exitCode !== null) + return state.exitCode; + switch (node.then.type) { + case `&&`: + { + if (code === 0) { + setCode(await executeChain(node.then.line)); + } + } + break; + case `||`: + { + if (code !== 0) { + setCode(await executeChain(node.then.line)); + } + } + break; + default: { + throw new Error(`Assertion failed: Unsupported command type: "${node.then.type}"`); } - done(null, void 0); - }); - } - _handleError(error) { - if (this._isDestroyed || !common.isFatalError(this._settings, error)) { - return; } - this._isFatalError = true; - this._isDestroyed = true; - this._emitter.emit("error", error); + node = node.then.line; } - _handleEntry(entry, base) { - if (this._isDestroyed || this._isFatalError) { - return; + return code; + } + async function executeShellLine(node, opts, state) { + const originalBackgroundJobs = state.backgroundJobs; + state.backgroundJobs = []; + let rightMostExitCode = 0; + for (const { command, type } of node) { + rightMostExitCode = await executeCommandLine(command, opts, state, { background: type === `&` }); + if (state.exitCode !== null) + return state.exitCode; + state.variables[`?`] = String(rightMostExitCode); + } + await Promise.all(state.backgroundJobs); + state.backgroundJobs = originalBackgroundJobs; + return rightMostExitCode; + } + function locateArgsVariableInSegment(segment) { + switch (segment.type) { + case `variable`: { + return segment.name === `@` || segment.name === `#` || segment.name === `*` || Number.isFinite(parseInt(segment.name, 10)) || `defaultValue` in segment && !!segment.defaultValue && segment.defaultValue.some((arg) => locateArgsVariableInArgument(arg)) || `alternativeValue` in segment && !!segment.alternativeValue && segment.alternativeValue.some((arg) => locateArgsVariableInArgument(arg)); } - const fullpath = entry.path; - if (base !== void 0) { - entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + case `arithmetic`: { + return locateArgsVariableInArithmetic(segment.arithmetic); } - if (common.isAppliedFilter(this._settings.entryFilter, entry)) { - this._emitEntry(entry); + case `shell`: { + return locateArgsVariable(segment.shell); } - if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { - this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + default: { + return false; } } - _emitEntry(entry) { - this._emitter.emit("entry", entry); - } - }; - exports2.default = AsyncReader; - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/async.js -var require_async5 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/async.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var async_1 = require_async4(); - var AsyncProvider = class { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new async_1.default(this._root, this._settings); - this._storage = []; - } - read(callback) { - this._reader.onError((error) => { - callFailureCallback(callback, error); - }); - this._reader.onEntry((entry) => { - this._storage.push(entry); - }); - this._reader.onEnd(() => { - callSuccessCallback(callback, this._storage); - }); - this._reader.read(); + } + function locateArgsVariableInArgument(arg) { + switch (arg.type) { + case `redirection`: { + return arg.args.some((arg2) => locateArgsVariableInArgument(arg2)); + } + case `argument`: { + return arg.segments.some((segment) => locateArgsVariableInSegment(segment)); + } + default: + throw new Error(`Assertion failed: Unsupported argument type: "${arg.type}"`); } - }; - exports2.default = AsyncProvider; - function callFailureCallback(callback, error) { - callback(error); } - function callSuccessCallback(callback, entries) { - callback(null, entries); + function locateArgsVariableInArithmetic(arg) { + switch (arg.type) { + case `variable`: { + return locateArgsVariableInSegment(arg); + } + case `number`: { + return false; + } + default: + return locateArgsVariableInArithmetic(arg.left) || locateArgsVariableInArithmetic(arg.right); + } } - } -}); - -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/stream.js -var require_stream3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/stream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var stream_1 = require("stream"); - var async_1 = require_async4(); - var StreamProvider = class { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new async_1.default(this._root, this._settings); - this._stream = new stream_1.Readable({ - objectMode: true, - read: () => { - }, - destroy: () => { - if (!this._reader.isDestroyed) { - this._reader.destroy(); + function locateArgsVariable(node) { + return node.some(({ command }) => { + while (command) { + let chain = command.chain; + while (chain) { + let hasArgs; + switch (chain.type) { + case `subshell`: + { + hasArgs = locateArgsVariable(chain.subshell); + } + break; + case `command`: + { + hasArgs = chain.envs.some((env) => env.args.some((arg) => { + return locateArgsVariableInArgument(arg); + })) || chain.args.some((arg) => { + return locateArgsVariableInArgument(arg); + }); + } + break; } + if (hasArgs) + return true; + if (!chain.then) + break; + chain = chain.then.chain; } - }); + if (!command.then) + break; + command = command.then.line; + } + return false; + }); + } + async function execute(command, args2 = [], { baseFs = new fslib_12.NodeFS(), builtins = {}, cwd = fslib_12.npath.toPortablePath(process.cwd()), env = process.env, stdin = process.stdin, stdout = process.stdout, stderr = process.stderr, variables = {}, glob = globUtils } = {}) { + const normalizedEnv = {}; + for (const [key, value] of Object.entries(env)) + if (typeof value !== `undefined`) + normalizedEnv[key] = value; + const normalizedBuiltins = new Map(BUILTINS); + for (const [key, builtin] of Object.entries(builtins)) + normalizedBuiltins.set(key, builtin); + if (stdin === null) { + stdin = new stream_12.PassThrough(); + stdin.end(); } - read() { - this._reader.onError((error) => { - this._stream.emit("error", error); - }); - this._reader.onEntry((entry) => { - this._stream.push(entry); - }); - this._reader.onEnd(() => { - this._stream.push(null); - }); - this._reader.read(); - return this._stream; + const ast = (0, parsers_1.parseShell)(command, glob); + if (!locateArgsVariable(ast) && ast.length > 0 && args2.length > 0) { + let { command: command2 } = ast[ast.length - 1]; + while (command2.then) + command2 = command2.then.line; + let chain = command2.chain; + while (chain.then) + chain = chain.then.chain; + if (chain.type === `command`) { + chain.args = chain.args.concat(args2.map((arg) => { + return { + type: `argument`, + segments: [{ + type: `text`, + text: arg + }] + }; + })); + } } - }; - exports2.default = StreamProvider; + return await executeShellLine(ast, { + args: args2, + baseFs, + builtins: normalizedBuiltins, + initialStdin: stdin, + initialStdout: stdout, + initialStderr: stderr, + glob + }, { + cwd, + environment: normalizedEnv, + exitCode: null, + procedures: {}, + stdin, + stdout, + stderr, + variables: Object.assign({}, variables, { + [`?`]: 0 + }), + nextBackgroundJobIndex: 1, + backgroundJobs: [] + }); + } + exports2.execute = execute; } }); -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/sync.js -var require_sync3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/readers/sync.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fsScandir = require_out2(); - var common = require_common4(); - var reader_1 = require_reader(); - var SyncReader = class extends reader_1.default { - constructor() { - super(...arguments); - this._scandir = fsScandir.scandirSync; - this._storage = []; - this._queue = new Set(); - } - read() { - this._pushToQueue(this._root, this._settings.basePath); - this._handleQueue(); - return this._storage; - } - _pushToQueue(directory, base) { - this._queue.add({ directory, base }); - } - _handleQueue() { - for (const item of this._queue.values()) { - this._handleDirectory(item.directory, item.base); - } - } - _handleDirectory(directory, base) { - try { - const entries = this._scandir(directory, this._settings.fsScandirSettings); - for (const entry of entries) { - this._handleEntry(entry, base); +// ../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/async-map.js +var require_async_map = __commonJS({ + "../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/async-map.js"(exports2, module2) { + module2.exports = asyncMap; + function asyncMap() { + var steps = Array.prototype.slice.call(arguments), list = steps.shift() || [], cb_ = steps.pop(); + if (typeof cb_ !== "function") + throw new Error( + "No callback provided to asyncMap" + ); + if (!list) + return cb_(null, []); + if (!Array.isArray(list)) + list = [list]; + var n = steps.length, data = [], errState = null, l = list.length, a = l * n; + if (!a) + return cb_(null, []); + function cb(er) { + if (er && !errState) + errState = er; + var argLen = arguments.length; + for (var i = 1; i < argLen; i++) + if (arguments[i] !== void 0) { + data[i - 1] = (data[i - 1] || []).concat(arguments[i]); } - } catch (error) { - this._handleError(error); - } - } - _handleError(error) { - if (!common.isFatalError(this._settings, error)) { - return; - } - throw error; - } - _handleEntry(entry, base) { - const fullpath = entry.path; - if (base !== void 0) { - entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); - } - if (common.isAppliedFilter(this._settings.entryFilter, entry)) { - this._pushToStorage(entry); - } - if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { - this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + if (list.length > l) { + var newList = list.slice(l); + a += (list.length - l) * n; + l = list.length; + process.nextTick(function() { + newList.forEach(function(ar) { + steps.forEach(function(fn2) { + fn2(ar, cb); + }); + }); + }); } + if (--a === 0) + cb_.apply(null, [errState].concat(data)); } - _pushToStorage(entry) { - this._storage.push(entry); - } - }; - exports2.default = SyncReader; + list.forEach(function(ar) { + steps.forEach(function(fn2) { + fn2(ar, cb); + }); + }); + } } }); -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/sync.js -var require_sync4 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/providers/sync.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var sync_1 = require_sync3(); - var SyncProvider = class { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new sync_1.default(this._root, this._settings); - } - read() { - return this._reader.read(); - } - }; - exports2.default = SyncProvider; +// ../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/bind-actor.js +var require_bind_actor = __commonJS({ + "../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/bind-actor.js"(exports2, module2) { + module2.exports = bindActor; + function bindActor() { + var args2 = Array.prototype.slice.call(arguments), obj = null, fn2; + if (typeof args2[0] === "object") { + obj = args2.shift(); + fn2 = args2.shift(); + if (typeof fn2 === "string") + fn2 = obj[fn2]; + } else + fn2 = args2.shift(); + return function(cb) { + fn2.apply(obj, args2.concat(cb)); + }; + } } }); -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/settings.js -var require_settings3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/settings.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path = require("path"); - var fsScandir = require_out2(); - var Settings = class { - constructor(_options = {}) { - this._options = _options; - this.basePath = this._getValue(this._options.basePath, void 0); - this.concurrency = this._getValue(this._options.concurrency, Number.POSITIVE_INFINITY); - this.deepFilter = this._getValue(this._options.deepFilter, null); - this.entryFilter = this._getValue(this._options.entryFilter, null); - this.errorFilter = this._getValue(this._options.errorFilter, null); - this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); - this.fsScandirSettings = new fsScandir.Settings({ - followSymbolicLinks: this._options.followSymbolicLinks, - fs: this._options.fs, - pathSegmentSeparator: this._options.pathSegmentSeparator, - stats: this._options.stats, - throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink +// ../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/chain.js +var require_chain = __commonJS({ + "../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/chain.js"(exports2, module2) { + module2.exports = chain; + var bindActor = require_bind_actor(); + chain.first = {}; + chain.last = {}; + function chain(things, cb) { + var res = []; + (function LOOP(i, len) { + if (i >= len) + return cb(null, res); + if (Array.isArray(things[i])) + things[i] = bindActor.apply( + null, + things[i].map(function(i2) { + return i2 === chain.first ? res[0] : i2 === chain.last ? res[res.length - 1] : i2; + }) + ); + if (!things[i]) + return LOOP(i + 1, len); + things[i](function(er, data) { + if (er) + return cb(er, res); + if (data !== void 0) + res = res.concat(data); + LOOP(i + 1, len); }); - } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; - } - }; - exports2.default = Settings; + })(0, things.length); + } } }); -// ../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/index.js -var require_out3 = __commonJS({ - "../../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Settings = exports2.walkStream = exports2.walkSync = exports2.walk = void 0; - var async_1 = require_async5(); - var stream_1 = require_stream3(); - var sync_1 = require_sync4(); - var settings_1 = require_settings3(); - exports2.Settings = settings_1.default; - function walk(directory, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === "function") { - new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); - return; - } - new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); - } - exports2.walk = walk; - function walkSync(directory, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - const provider = new sync_1.default(directory, settings); - return provider.read(); - } - exports2.walkSync = walkSync; - function walkStream(directory, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - const provider = new stream_1.default(directory, settings); - return provider.read(); - } - exports2.walkStream = walkStream; - function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; - } - return new settings_1.default(settingsOrOptions); - } +// ../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/slide.js +var require_slide = __commonJS({ + "../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/slide.js"(exports2) { + exports2.asyncMap = require_async_map(); + exports2.bindActor = require_bind_actor(); + exports2.chain = require_chain(); } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/reader.js -var require_reader2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/reader.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path = require("path"); - var fsStat = require_out(); - var utils = require_utils5(); - var Reader = class { - constructor(_settings) { - this._settings = _settings; - this._fsStatSettings = new fsStat.Settings({ - followSymbolicLink: this._settings.followSymbolicLinks, - fs: this._settings.fs, - throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks - }); - } - _getFullEntryPath(filepath) { - return path.resolve(this._settings.cwd, filepath); +// ../node_modules/.pnpm/uid-number@0.0.6/node_modules/uid-number/uid-number.js +var require_uid_number = __commonJS({ + "../node_modules/.pnpm/uid-number@0.0.6/node_modules/uid-number/uid-number.js"(exports2, module2) { + module2.exports = uidNumber; + var child_process = require("child_process"); + var path2 = require("path"); + var uidSupport = process.getuid && process.setuid; + var uidCache = {}; + var gidCache = {}; + function uidNumber(uid, gid, cb) { + if (!uidSupport) + return cb(); + if (typeof cb !== "function") + cb = gid, gid = null; + if (typeof cb !== "function") + cb = uid, uid = null; + if (gid == null) + gid = process.getgid(); + if (uid == null) + uid = process.getuid(); + if (!isNaN(gid)) + gid = gidCache[gid] = +gid; + if (!isNaN(uid)) + uid = uidCache[uid] = +uid; + if (uidCache.hasOwnProperty(uid)) + uid = uidCache[uid]; + if (gidCache.hasOwnProperty(gid)) + gid = gidCache[gid]; + if (typeof gid === "number" && typeof uid === "number") { + return process.nextTick(cb.bind(null, null, uid, gid)); } - _makeEntry(stats, pattern) { - const entry = { - name: pattern, - path: pattern, - dirent: utils.fs.createDirentFromStats(pattern, stats) - }; - if (this._settings.stats) { - entry.stats = stats; + var getter = require.resolve("./get-uid-gid.js"); + child_process.execFile( + process.execPath, + [getter, uid, gid], + function(code, out, stderr) { + if (code) { + var er = new Error("could not get uid/gid\n" + stderr); + er.code = code; + return cb(er); + } + try { + out = JSON.parse(out + ""); + } catch (ex) { + return cb(ex); + } + if (out.error) { + var er = new Error(out.error); + er.errno = out.errno; + return cb(er); + } + if (isNaN(out.uid) || isNaN(out.gid)) + return cb(new Error( + "Could not get uid/gid: " + JSON.stringify(out) + )); + cb(null, uidCache[uid] = +out.uid, gidCache[gid] = +out.gid); } - return entry; - } - _isFatalError(error) { - return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; - } - }; - exports2.default = Reader; + ); + } } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/stream.js -var require_stream4 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/stream.js"(exports2) { +// ../node_modules/.pnpm/umask@1.1.0/node_modules/umask/index.js +var require_umask = __commonJS({ + "../node_modules/.pnpm/umask@1.1.0/node_modules/umask/index.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var stream_1 = require("stream"); - var fsStat = require_out(); - var fsWalk = require_out3(); - var reader_1 = require_reader2(); - var ReaderStream = class extends reader_1.default { - constructor() { - super(...arguments); - this._walkStream = fsWalk.walkStream; - this._stat = fsStat.stat; + var util = require("util"); + function toString(val) { + val = val.toString(8); + while (val.length < 4) { + val = "0" + val; } - dynamic(root, options) { - return this._walkStream(root, options); + return val; + } + var defaultUmask = 18; + var defaultUmaskString = toString(defaultUmask); + function validate2(data, k, val) { + if (typeof val === "number" && !isNaN(val)) { + data[k] = val; + return true; } - static(patterns, options) { - const filepaths = patterns.map(this._getFullEntryPath, this); - const stream = new stream_1.PassThrough({ objectMode: true }); - stream._write = (index, _enc, done) => { - return this._getEntry(filepaths[index], patterns[index], options).then((entry) => { - if (entry !== null && options.entryFilter(entry)) { - stream.push(entry); - } - if (index === filepaths.length - 1) { - stream.end(); - } - done(); - }).catch(done); - }; - for (let i = 0; i < filepaths.length; i++) { - stream.write(i); + if (typeof val === "string") { + if (val.charAt(0) !== "0") { + return false; } - return stream; + data[k] = parseInt(val, 8); + return true; } - _getEntry(filepath, pattern, options) { - return this._getStat(filepath).then((stats) => this._makeEntry(stats, pattern)).catch((error) => { - if (options.errorFilter(error)) { - return null; - } - throw error; - }); + return false; + } + function convert_fromString(val, cb) { + if (typeof val === "string") { + if (val.charAt(0) === "0" && /^[0-7]+$/.test(val)) { + val = parseInt(val, 8); + } else if (val.charAt(0) !== "0" && /^[0-9]+$/.test(val)) { + val = parseInt(val, 10); + } else { + return cb( + new Error(util.format( + "Expected octal string, got %j, defaulting to %j", + val, + defaultUmaskString + )), + defaultUmask + ); + } + } else if (typeof val !== "number") { + return cb( + new Error(util.format( + "Expected number or octal string, got %j, defaulting to %j", + val, + defaultUmaskString + )), + defaultUmask + ); } - _getStat(filepath) { - return new Promise((resolve, reject) => { - this._stat(filepath, this._fsStatSettings, (error, stats) => { - return error === null ? resolve(stats) : reject(error); - }); - }); + val = Math.floor(val); + if (val < 0 || val > 511) { + return cb( + new Error(util.format("Must be in range 0..511 (0000..0777), got %j", val)), + defaultUmask + ); } - }; - exports2.default = ReaderStream; + cb(null, val); + } + function fromString(val, cb) { + convert_fromString(val, cb || function(err, result2) { + val = result2; + }); + return val; + } + exports2.toString = toString; + exports2.fromString = fromString; + exports2.validate = validate2; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/matchers/matcher.js -var require_matcher = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/matchers/matcher.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var utils = require_utils5(); - var Matcher = class { - constructor(_patterns, _settings, _micromatchOptions) { - this._patterns = _patterns; - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - this._storage = []; - this._fillStorage(); +// ../node_modules/.pnpm/@pnpm+byline@1.0.0/node_modules/@pnpm/byline/lib/byline.js +var require_byline = __commonJS({ + "../node_modules/.pnpm/@pnpm+byline@1.0.0/node_modules/@pnpm/byline/lib/byline.js"(exports2, module2) { + var stream = require("stream"); + var util = require("util"); + var timers = require("timers"); + module2.exports = function(readStream, options) { + return module2.exports.createStream(readStream, options); + }; + module2.exports.createStream = function(readStream, options) { + if (readStream) { + return createLineStream(readStream, options); + } else { + return new LineStream(options); } - _fillStorage() { - const patterns = utils.pattern.expandPatternsWithBraceExpansion(this._patterns); - for (const pattern of patterns) { - const segments = this._getPatternSegments(pattern); - const sections = this._splitSegmentsIntoSections(segments); - this._storage.push({ - complete: sections.length <= 1, - pattern, - segments, - sections - }); + }; + module2.exports.createLineStream = function(readStream) { + console.log("WARNING: byline#createLineStream is deprecated and will be removed soon"); + return createLineStream(readStream); + }; + function createLineStream(readStream, options) { + if (!readStream) { + throw new Error("expected readStream"); + } + if (!readStream.readable) { + throw new Error("readStream must be readable"); + } + var ls = new LineStream(options); + readStream.pipe(ls); + return ls; + } + module2.exports.LineStream = LineStream; + function LineStream(options) { + stream.Transform.call(this, options); + options = options || {}; + this._readableState.objectMode = true; + this._lineBuffer = []; + this._keepEmptyLines = options.keepEmptyLines || false; + this._lastChunkEndedWithCR = false; + var self2 = this; + this.on("pipe", function(src) { + if (!self2.encoding) { + if (src instanceof stream.Readable) { + self2.encoding = src._readableState.encoding; + } + } + }); + } + util.inherits(LineStream, stream.Transform); + LineStream.prototype._transform = function(chunk, encoding, done) { + encoding = encoding || "utf8"; + if (Buffer.isBuffer(chunk)) { + if (encoding == "buffer") { + chunk = chunk.toString(); + encoding = "utf8"; + } else { + chunk = chunk.toString(encoding); } } - _getPatternSegments(pattern) { - const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); - return parts.map((part) => { - const dynamic = utils.pattern.isDynamicPattern(part, this._settings); - if (!dynamic) { - return { - dynamic: false, - pattern: part - }; + this._chunkEncoding = encoding; + var lines = chunk.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g); + if (this._lastChunkEndedWithCR && chunk[0] == "\n") { + lines.shift(); + } + if (this._lineBuffer.length > 0) { + this._lineBuffer[this._lineBuffer.length - 1] += lines[0]; + lines.shift(); + } + this._lastChunkEndedWithCR = chunk[chunk.length - 1] == "\r"; + this._lineBuffer = this._lineBuffer.concat(lines); + this._pushBuffer(encoding, 1, done); + }; + LineStream.prototype._pushBuffer = function(encoding, keep, done) { + while (this._lineBuffer.length > keep) { + var line = this._lineBuffer.shift(); + if (this._keepEmptyLines || line.length > 0) { + if (!this.push(this._reencode(line, encoding))) { + var self2 = this; + timers.setImmediate(function() { + self2._pushBuffer(encoding, keep, done); + }); + return; } - return { - dynamic: true, - pattern: part, - patternRe: utils.pattern.makeRe(part, this._micromatchOptions) - }; - }); + } } - _splitSegmentsIntoSections(segments) { - return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); + done(); + }; + LineStream.prototype._flush = function(done) { + this._pushBuffer(this._chunkEncoding, 0, done); + }; + LineStream.prototype._reencode = function(line, chunkEncoding) { + if (this.encoding && this.encoding != chunkEncoding) { + return Buffer.from(line, chunkEncoding).toString(this.encoding); + } else if (this.encoding) { + return line; + } else { + return Buffer.from(line, chunkEncoding); } }; - exports2.default = Matcher; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/matchers/partial.js -var require_partial = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/matchers/partial.js"(exports2) { +// ../node_modules/.pnpm/resolve-from@5.0.0/node_modules/resolve-from/index.js +var require_resolve_from = __commonJS({ + "../node_modules/.pnpm/resolve-from@5.0.0/node_modules/resolve-from/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var matcher_1 = require_matcher(); - var PartialMatcher = class extends matcher_1.default { - match(filepath) { - const parts = filepath.split("/"); - const levels = parts.length; - const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); - for (const pattern of patterns) { - const section = pattern.sections[0]; - if (!pattern.complete && levels > section.length) { - return true; - } - const match = parts.every((part, index) => { - const segment = pattern.segments[index]; - if (segment.dynamic && segment.patternRe.test(part)) { - return true; - } - if (!segment.dynamic && segment.pattern === part) { - return true; - } - return false; - }); - if (match) { - return true; - } + var path2 = require("path"); + var Module = require("module"); + var fs2 = require("fs"); + var resolveFrom = (fromDirectory, moduleId, silent) => { + if (typeof fromDirectory !== "string") { + throw new TypeError(`Expected \`fromDir\` to be of type \`string\`, got \`${typeof fromDirectory}\``); + } + if (typeof moduleId !== "string") { + throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof moduleId}\``); + } + try { + fromDirectory = fs2.realpathSync(fromDirectory); + } catch (error) { + if (error.code === "ENOENT") { + fromDirectory = path2.resolve(fromDirectory); + } else if (silent) { + return; + } else { + throw error; + } + } + const fromFile = path2.join(fromDirectory, "noop.js"); + const resolveFileName = () => Module._resolveFilename(moduleId, { + id: fromFile, + filename: fromFile, + paths: Module._nodeModulePaths(fromDirectory) + }); + if (silent) { + try { + return resolveFileName(); + } catch (error) { + return; } - return false; } + return resolveFileName(); }; - exports2.default = PartialMatcher; + module2.exports = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId); + module2.exports.silent = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId, true); } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/deep.js -var require_deep = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/deep.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var utils = require_utils5(); - var partial_1 = require_partial(); - var DeepFilter = class { - constructor(_settings, _micromatchOptions) { - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - } - getFilter(basePath2, positive, negative) { - const matcher = this._getMatcher(positive); - const negativeRe = this._getNegativePatternsRe(negative); - return (entry) => this._filter(basePath2, entry, matcher, negativeRe); +// ../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js +var require_extendPath = __commonJS({ + "../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js"(exports2, module2) { + var path2 = require("path"); + var which = require_which2(); + module2.exports = (wd, originalPath, nodeGyp, opts) => { + const pathArr = [...opts.extraBinPaths || []]; + const p = wd.split(/[\\/]node_modules[\\/]/); + let acc = path2.resolve(p.shift()); + pathArr.unshift(nodeGyp); + p.forEach((pp) => { + pathArr.unshift(path2.join(acc, "node_modules", ".bin")); + acc = path2.join(acc, "node_modules", pp); + }); + pathArr.unshift(path2.join(acc, "node_modules", ".bin")); + if (shouldPrependCurrentNodeDirToPATH(opts)) { + pathArr.push(path2.dirname(process.execPath)); } - _getMatcher(patterns) { - return new partial_1.default(patterns, this._settings, this._micromatchOptions); + if (originalPath) + pathArr.push(originalPath); + return pathArr.join(process.platform === "win32" ? ";" : ":"); + }; + function shouldPrependCurrentNodeDirToPATH(opts) { + const cfgsetting = opts.scriptsPrependNodePath; + if (cfgsetting === false || cfgsetting == null) + return false; + if (cfgsetting === true) + return true; + let isDifferentNodeInPath; + const isWindows = process.platform === "win32"; + let foundExecPath; + try { + foundExecPath = which.sync(path2.basename(process.execPath), { pathExt: isWindows ? ";" : ":" }); + isDifferentNodeInPath = fs.realpathSync(process.execPath).toUpperCase() !== fs.realpathSync(foundExecPath).toUpperCase(); + } catch (e) { + isDifferentNodeInPath = true; } - _getNegativePatternsRe(patterns) { - const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); - return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); + if (cfgsetting === "warn-only") { + if (isDifferentNodeInPath && !shouldPrependCurrentNodeDirToPATH.hasWarned) { + if (foundExecPath) { + opts.log.warn("lifecycle", `The node binary used for scripts is ${foundExecPath} but pnpm is using ${process.execPath} itself. Use the \`--scripts-prepend-node-path\` option to include the path for the node binary pnpm was executed with.`); + } else { + opts.log.warn("lifecycle", `pnpm is using ${process.execPath} but there is no node binary in the current PATH. Use the \`--scripts-prepend-node-path\` option to include the path for the node binary pnpm was executed with.`); + } + shouldPrependCurrentNodeDirToPATH.hasWarned = true; + } + return false; } - _filter(basePath2, entry, matcher, negativeRe) { - if (this._isSkippedByDeep(basePath2, entry.path)) { - return false; + return isDifferentNodeInPath; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/index.js +var require_npm_lifecycle = __commonJS({ + "../node_modules/.pnpm/@pnpm+npm-lifecycle@2.0.1(typanion@3.12.1)/node_modules/@pnpm/npm-lifecycle/index.js"(exports2, module2) { + "use strict"; + exports2 = module2.exports = lifecycle; + exports2.makeEnv = makeEnv; + var spawn = require_spawn(); + var { execute } = require_lib52(); + var path2 = require("path"); + var Stream = require("stream").Stream; + var fs2 = require("fs"); + var chain = require_slide().chain; + var uidNumber = require_uid_number(); + var umask = require_umask(); + var byline = require_byline(); + var { PnpmError } = require_lib36(); + var resolveFrom = require_resolve_from(); + var { PassThrough } = require("stream"); + var extendPath = require_extendPath(); + var DEFAULT_NODE_GYP_PATH; + try { + DEFAULT_NODE_GYP_PATH = resolveFrom(__dirname, "node-gyp/bin/node-gyp"); + } catch (err) { + } + var hookStatCache = /* @__PURE__ */ new Map(); + var PATH = "PATH"; + if (process.platform === "win32") { + PATH = "Path"; + Object.keys(process.env).forEach((e) => { + if (e.match(/^PATH$/i)) { + PATH = e; } - if (this._isSkippedSymbolicLink(entry)) { - return false; + }); + } + function logid(pkg, stage) { + return `${pkg._id}~${stage}:`; + } + function hookStat(dir, stage, cb) { + const hook = path2.join(dir, ".hooks", stage); + const cachedStatError = hookStatCache.get(hook); + if (cachedStatError === void 0) { + return fs2.stat(hook, (statError) => { + hookStatCache.set(hook, statError); + cb(statError); + }); + } + return setImmediate(() => cb(cachedStatError)); + } + function lifecycle(pkg, stage, wd, opts) { + return new Promise((resolve, reject) => { + while (pkg && pkg._data) + pkg = pkg._data; + if (!pkg) + return reject(new Error("Invalid package data")); + opts.log.info("lifecycle", logid(pkg, stage), pkg._id); + if (!pkg.scripts) + pkg.scripts = {}; + if (stage === "prepublish" && opts.ignorePrepublish) { + opts.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-prepublish is set to true", pkg._id); + delete pkg.scripts.prepublish; } - const filepath = utils.path.removeLeadingDotSegment(entry.path); - if (this._isSkippedByPositivePatterns(filepath, matcher)) { - return false; + hookStat(opts.dir, stage, (statError) => { + if (!pkg.scripts[stage] && statError) + return resolve(); + validWd(wd || path2.resolve(opts.dir, pkg.name), (er, wd2) => { + if (er) + return reject(er); + const env = makeEnv(pkg, opts); + env.npm_lifecycle_event = stage; + env.npm_node_execpath = env.NODE = env.NODE || process.execPath; + if (process.pkg != null) { + env.npm_execpath = process.execPath; + } else { + env.npm_execpath = require.main ? require.main.filename : process.cwd(); + } + env.INIT_CWD = process.cwd(); + env.npm_config_node_gyp = env.npm_config_node_gyp || DEFAULT_NODE_GYP_PATH; + if (opts.extraEnv) { + for (const [key, value] of Object.entries(opts.extraEnv)) { + env[key] = value; + } + } + if (!opts.unsafePerm) + env.TMPDIR = wd2; + lifecycle_(pkg, stage, wd2, opts, env, (er2) => { + if (er2) + return reject(er2); + return resolve(); + }); + }); + }); + }); + } + function lifecycle_(pkg, stage, wd, opts, env, cb) { + env[PATH] = extendPath(wd, env[PATH], path2.join(__dirname, "node-gyp-bin"), opts); + let packageLifecycle = pkg.scripts && pkg.scripts.hasOwnProperty(stage); + if (opts.ignoreScripts) { + opts.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-scripts is set to true", pkg._id); + packageLifecycle = false; + } else if (packageLifecycle) { + env.npm_lifecycle_script = pkg.scripts[stage]; + } else { + opts.log.silly("lifecycle", logid(pkg, stage), `no script for ${stage}, continuing`); + } + function done(er) { + if (er) { + if (opts.force) { + opts.log.info("lifecycle", logid(pkg, stage), "forced, continuing", er); + er = null; + } else if (opts.failOk) { + opts.log.warn("lifecycle", logid(pkg, stage), "continuing anyway", er.message); + er = null; + } } - return this._isSkippedByNegativePatterns(filepath, negativeRe); + cb(er); } - _isSkippedByDeep(basePath2, entryPath) { - if (this._settings.deep === Infinity) { - return false; + chain( + [ + packageLifecycle && [runPackageLifecycle, pkg, stage, env, wd, opts], + [runHookLifecycle, pkg, stage, env, wd, opts] + ], + done + ); + } + function validWd(d, cb) { + fs2.stat(d, (er, st) => { + if (er || !st.isDirectory()) { + const p = path2.dirname(d); + if (p === d) { + return cb(new Error("Could not find suitable wd")); + } + return validWd(p, cb); } - return this._getEntryLevel(basePath2, entryPath) >= this._settings.deep; + return cb(null, d); + }); + } + function runPackageLifecycle(pkg, stage, env, wd, opts, cb) { + const cmd = env.npm_lifecycle_script; + const note = ` +> ${pkg._id} ${stage} ${wd} +> ${cmd} +`; + runCmd(note, cmd, pkg, env, stage, wd, opts, cb); + } + var running = false; + var queue = []; + function dequeue() { + running = false; + if (queue.length) { + const r = queue.shift(); + runCmd.apply(null, r); } - _getEntryLevel(basePath2, entryPath) { - const entryPathDepth = entryPath.split("/").length; - if (basePath2 === "") { - return entryPathDepth; + } + function runCmd(note, cmd, pkg, env, stage, wd, opts, cb) { + if (opts.runConcurrently !== true) { + if (running) { + queue.push([note, cmd, pkg, env, stage, wd, opts, cb]); + return; } - const basePathDepth = basePath2.split("/").length; - return entryPathDepth - basePathDepth; + running = true; } - _isSkippedSymbolicLink(entry) { - return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); + opts.log.pause(); + let unsafe = opts.unsafePerm; + const user = unsafe ? null : opts.user; + const group = unsafe ? null : opts.group; + if (opts.log.level !== "silent") { + opts.log.clearProgress(); + console.log(note); + opts.log.showProgress(); } - _isSkippedByPositivePatterns(entryPath, matcher) { - return !this._settings.baseNameMatch && !matcher.match(entryPath); + opts.log.verbose("lifecycle", logid(pkg, stage), "unsafe-perm in lifecycle", unsafe); + if (process.platform === "win32") { + unsafe = true; } - _isSkippedByNegativePatterns(entryPath, patternsRe) { - return !utils.pattern.matchAny(entryPath, patternsRe); + if (unsafe) { + runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, 0, 0, cb); + } else { + uidNumber(user, group, (er, uid, gid) => { + runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb); + }); } - }; - exports2.default = DeepFilter; - } -}); - -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/entry.js -var require_entry = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/entry.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var utils = require_utils5(); - var EntryFilter = class { - constructor(_settings, _micromatchOptions) { - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - this.index = new Map(); + } + function runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb_) { + function cb(er) { + cb_.apply(null, arguments); + opts.log.resume(); + process.nextTick(dequeue); } - getFilter(positive, negative) { - const positiveRe = utils.pattern.convertPatternsToRe(positive, this._micromatchOptions); - const negativeRe = utils.pattern.convertPatternsToRe(negative, this._micromatchOptions); - return (entry) => this._filter(entry, positiveRe, negativeRe); + const conf = { + cwd: wd, + env, + stdio: opts.stdio || [0, 1, 2] + }; + if (!unsafe) { + conf.uid = uid ^ 0; + conf.gid = gid ^ 0; } - _filter(entry, positiveRe, negativeRe) { - if (this._settings.unique && this._isDuplicateEntry(entry)) { - return false; - } - if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { - return false; + let sh = "sh"; + let shFlag = "-c"; + const customShell = opts.scriptShell; + if (customShell) { + sh = customShell; + } else if (process.platform === "win32") { + sh = process.env.comspec || "cmd"; + shFlag = "/d /s /c"; + conf.windowsVerbatimArguments = true; + } + opts.log.verbose("lifecycle", logid(pkg, stage), "PATH:", env[PATH]); + opts.log.verbose("lifecycle", logid(pkg, stage), "CWD:", wd); + opts.log.silly("lifecycle", logid(pkg, stage), "Args:", [shFlag, cmd]); + if (opts.shellEmulator) { + const execOpts = { cwd: wd, env }; + if (opts.stdio === "pipe") { + const stdout = new PassThrough(); + const stderr = new PassThrough(); + byline(stdout).on("data", (data) => { + opts.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString()); + }); + byline(stderr).on("data", (data) => { + opts.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString()); + }); + execOpts.stdout = stdout; + execOpts.stderr = stderr; } - if (this._isSkippedByAbsoluteNegativePatterns(entry.path, negativeRe)) { - return false; + execute(cmd, [], execOpts).then((code) => { + opts.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code); + if (code) { + var er = new Error(`Exit status ${code}`); + er.errno = code; + } + procError(er); + }).catch((err) => procError(err)); + return; + } + const proc = spawn(sh, [shFlag, cmd], conf, opts.log); + proc.on("error", procError); + proc.on("close", (code, signal) => { + opts.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code, " signal:", signal); + let err; + if (signal) { + err = new PnpmError("CHILD_PROCESS_FAILED", `Command failed with signal "${signal}"`); + process.kill(process.pid, signal); + } else if (code) { + err = new PnpmError("CHILD_PROCESS_FAILED", `Exit status ${code}`); + err.errno = code; } - const filepath = this._settings.baseNameMatch ? entry.name : entry.path; - const isMatched = this._isMatchToPatterns(filepath, positiveRe) && !this._isMatchToPatterns(entry.path, negativeRe); - if (this._settings.unique && isMatched) { - this._createIndexRecord(entry); + procError(err); + }); + byline(proc.stdout).on("data", (data) => { + opts.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString()); + }); + byline(proc.stderr).on("data", (data) => { + opts.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString()); + }); + process.once("SIGTERM", procKill); + process.once("SIGINT", procInterupt); + process.on("exit", procKill); + function procError(er) { + if (er) { + opts.log.info("lifecycle", logid(pkg, stage), `Failed to exec ${stage} script`); + er.message = `${pkg._id} ${stage}: \`${cmd}\` +${er.message}`; + if (er.code !== "EPERM") { + er.code = "ELIFECYCLE"; + } + fs2.stat(opts.dir, (statError, d) => { + if (statError && statError.code === "ENOENT" && opts.dir.split(path2.sep).slice(-1)[0] === "node_modules") { + opts.log.warn("", "Local package.json exists, but node_modules missing, did you mean to install?"); + } + }); + er.pkgid = pkg._id; + er.stage = stage; + er.script = cmd; + er.pkgname = pkg.name; } - return isMatched; - } - _isDuplicateEntry(entry) { - return this.index.has(entry.path); - } - _createIndexRecord(entry) { - this.index.set(entry.path, void 0); + process.removeListener("SIGTERM", procKill); + process.removeListener("SIGTERM", procInterupt); + process.removeListener("SIGINT", procKill); + return cb(er); } - _onlyFileFilter(entry) { - return this._settings.onlyFiles && !entry.dirent.isFile(); + let called = false; + function procKill() { + if (called) + return; + called = true; + proc.kill(); } - _onlyDirectoryFilter(entry) { - return this._settings.onlyDirectories && !entry.dirent.isDirectory(); + function procInterupt() { + proc.kill("SIGINT"); + proc.on("exit", () => { + process.exit(); + }); + process.once("SIGINT", procKill); } - _isSkippedByAbsoluteNegativePatterns(entryPath, patternsRe) { - if (!this._settings.absolute) { - return false; + } + function runHookLifecycle(pkg, stage, env, wd, opts, cb) { + hookStat(opts.dir, stage, (er) => { + if (er) + return cb(); + const cmd = path2.join(opts.dir, ".hooks", stage); + const note = ` +> ${pkg._id} ${stage} ${wd} +> ${cmd}`; + runCmd(note, cmd, pkg, env, stage, wd, opts, cb); + }); + } + function makeEnv(data, opts, prefix, env) { + prefix = prefix || "npm_package_"; + if (!env) { + env = {}; + for (var i in process.env) { + if (!i.match(/^npm_/) && (!i.match(/^PATH$/i) || i === PATH)) { + env[i] = process.env[i]; + } } - const fullpath = utils.path.makeAbsolute(this._settings.cwd, entryPath); - return utils.pattern.matchAny(fullpath, patternsRe); + if (opts.production) + env.NODE_ENV = "production"; + } else if (!data.hasOwnProperty("_lifecycleEnv")) { + Object.defineProperty( + data, + "_lifecycleEnv", + { + value: env, + enumerable: false + } + ); } - _isMatchToPatterns(entryPath, patternsRe) { - const filepath = utils.path.removeLeadingDotSegment(entryPath); - return utils.pattern.matchAny(filepath, patternsRe); + if (opts.nodeOptions) + env.NODE_OPTIONS = opts.nodeOptions; + for (i in data) { + if (i.charAt(0) !== "_") { + const envKey = (prefix + i).replace(/[^a-zA-Z0-9_]/g, "_"); + if (i === "readme") { + continue; + } + if (data[i] && typeof data[i] === "object") { + try { + JSON.stringify(data[i]); + makeEnv(data[i], opts, `${envKey}_`, env); + } catch (ex) { + const d = data[i]; + makeEnv( + { name: d.name, version: d.version, path: d.path }, + opts, + `${envKey}_`, + env + ); + } + } else { + env[envKey] = String(data[i]); + env[envKey] = env[envKey].includes("\n") ? JSON.stringify(env[envKey]) : env[envKey]; + } + } } - }; - exports2.default = EntryFilter; + if (prefix !== "npm_package_") + return env; + prefix = "npm_config_"; + const pkgConfig = {}; + const pkgVerConfig = {}; + const namePref = `${data.name}:`; + const verPref = `${data.name}@${data.version}:`; + Object.keys(opts.config).forEach((i2) => { + if (i2.charAt(0) === "_" && i2.indexOf(`_${namePref}`) !== 0 || i2.match(/:_/)) { + return; + } + let value = opts.config[i2]; + if (value instanceof Stream || Array.isArray(value)) + return; + if (i2.match(/umask/)) + value = umask.toString(value); + if (!value) + value = ""; + else if (typeof value === "number") + value = `${value}`; + else if (typeof value !== "string") + value = JSON.stringify(value); + value = value.includes("\n") ? JSON.stringify(value) : value; + i2 = i2.replace(/^_+/, ""); + let k; + if (i2.indexOf(namePref) === 0) { + k = i2.substr(namePref.length).replace(/[^a-zA-Z0-9_]/g, "_"); + pkgConfig[k] = value; + } else if (i2.indexOf(verPref) === 0) { + k = i2.substr(verPref.length).replace(/[^a-zA-Z0-9_]/g, "_"); + pkgVerConfig[k] = value; + } + const envKey = (prefix + i2).replace(/[^a-zA-Z0-9_]/g, "_"); + env[envKey] = value; + }); + prefix = "npm_package_config_"; + [pkgConfig, pkgVerConfig].forEach((conf) => { + for (const i2 in conf) { + const envKey = prefix + i2; + env[envKey] = conf[i2]; + } + }); + return env; + } } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/error.js -var require_error = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/filters/error.js"(exports2) { +// ../exec/lifecycle/lib/runLifecycleHook.js +var require_runLifecycleHook = __commonJS({ + "../exec/lifecycle/lib/runLifecycleHook.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - var utils = require_utils5(); - var ErrorFilter = class { - constructor(_settings) { - this._settings = _settings; + exports2.runLifecycleHook = void 0; + var core_loggers_1 = require_lib9(); + var logger_1 = require_lib6(); + var npm_lifecycle_1 = __importDefault4(require_npm_lifecycle()); + var error_1 = require_lib8(); + var fs_1 = require("fs"); + function noop() { + } + async function runLifecycleHook(stage, manifest, opts) { + const optional = opts.optional === true; + const m = { _id: getId(manifest), ...manifest }; + m.scripts = { ...m.scripts }; + if (stage === "start" && !m.scripts.start) { + if (!(0, fs_1.existsSync)("server.js")) { + throw new error_1.PnpmError("NO_SCRIPT_OR_SERVER", "Missing script start or file server.js"); + } + m.scripts.start = "node server.js"; } - getFilter() { - return (error) => this._isNonFatalError(error); + if (opts.args?.length && m.scripts?.[stage]) { + const escapedArgs = opts.args.map((arg) => JSON.stringify(arg)); + m.scripts[stage] = `${m.scripts[stage]} ${escapedArgs.join(" ")}`; } - _isNonFatalError(error) { - return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; + if (m.scripts[stage] === "npx only-allow pnpm") + return; + if (opts.stdio !== "inherit") { + core_loggers_1.lifecycleLogger.debug({ + depPath: opts.depPath, + optional, + script: m.scripts[stage], + stage, + wd: opts.pkgRoot + }); } - }; - exports2.default = ErrorFilter; + const logLevel = opts.stdio !== "inherit" || opts.silent ? "silent" : void 0; + await (0, npm_lifecycle_1.default)(m, stage, opts.pkgRoot, { + config: opts.rawConfig, + dir: opts.rootModulesDir, + extraBinPaths: opts.extraBinPaths ?? [], + extraEnv: { + ...opts.extraEnv, + INIT_CWD: opts.initCwd ?? process.cwd(), + PNPM_SCRIPT_SRC_DIR: opts.pkgRoot + }, + log: { + clearProgress: noop, + info: noop, + level: logLevel, + pause: noop, + resume: noop, + showProgress: noop, + silly: npmLog, + verbose: npmLog, + warn: (...msg) => { + (0, logger_1.globalWarn)(msg.join(" ")); + } + }, + runConcurrently: true, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + stdio: opts.stdio ?? "pipe", + unsafePerm: opts.unsafePerm + }); + function npmLog(prefix, logid, stdtype, line) { + switch (stdtype) { + case "stdout": + case "stderr": + core_loggers_1.lifecycleLogger.debug({ + depPath: opts.depPath, + line: line.toString(), + stage, + stdio: stdtype, + wd: opts.pkgRoot + }); + return; + case "Returned: code:": { + if (opts.stdio === "inherit") { + return; + } + const code = arguments[3] ?? 1; + core_loggers_1.lifecycleLogger.debug({ + depPath: opts.depPath, + exitCode: code, + optional, + stage, + wd: opts.pkgRoot + }); + } + } + } + } + exports2.runLifecycleHook = runLifecycleHook; + function getId(manifest) { + return `${manifest.name ?? ""}@${manifest.version ?? ""}`; + } } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/transformers/entry.js -var require_entry2 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/transformers/entry.js"(exports2) { +// ../fs/read-modules-dir/lib/index.js +var require_lib53 = __commonJS({ + "../fs/read-modules-dir/lib/index.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - var utils = require_utils5(); - var EntryTransformer = class { - constructor(_settings) { - this._settings = _settings; - } - getTransformer() { - return (entry) => this._transform(entry); + exports2.readModulesDir = void 0; + var path_1 = __importDefault4(require("path")); + var util_1 = __importDefault4(require("util")); + var graceful_fs_1 = __importDefault4(require_graceful_fs()); + var readdir = util_1.default.promisify(graceful_fs_1.default.readdir); + async function readModulesDir(modulesDir) { + try { + return await _readModulesDir(modulesDir); + } catch (err) { + if (err["code"] === "ENOENT") + return null; + throw err; } - _transform(entry) { - let filepath = entry.path; - if (this._settings.absolute) { - filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); - filepath = utils.path.unixify(filepath); - } - if (this._settings.markDirectories && entry.dirent.isDirectory()) { - filepath += "/"; - } - if (!this._settings.objectMode) { - return filepath; + } + exports2.readModulesDir = readModulesDir; + async function _readModulesDir(modulesDir, scope) { + let pkgNames = []; + const parentDir = scope ? path_1.default.join(modulesDir, scope) : modulesDir; + for (const dir of await readdir(parentDir, { withFileTypes: true })) { + if (dir.isFile() || dir.name[0] === ".") + continue; + if (!scope && dir.name[0] === "@") { + pkgNames = [ + ...pkgNames, + ...await _readModulesDir(modulesDir, dir.name) + ]; + continue; } - return Object.assign(Object.assign({}, entry), { path: filepath }); + const pkgName = scope ? `${scope}/${dir.name}` : dir.name; + pkgNames.push(pkgName); } - }; - exports2.default = EntryTransformer; + return pkgNames; + } } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/provider.js -var require_provider = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/provider.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+cmd-shim@6.0.0/node_modules/@zkochan/cmd-shim/index.js +var require_cmd_shim = __commonJS({ + "../node_modules/.pnpm/@zkochan+cmd-shim@6.0.0/node_modules/@zkochan/cmd-shim/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path = require("path"); - var deep_1 = require_deep(); - var entry_1 = require_entry(); - var error_1 = require_error(); - var entry_2 = require_entry2(); - var Provider = class { - constructor(_settings) { - this._settings = _settings; - this.errorFilter = new error_1.default(this._settings); - this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); - this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); - this.entryTransformer = new entry_2.default(this._settings); + cmdShim.ifExists = cmdShimIfExists; + var util_1 = require("util"); + var path2 = require("path"); + var isWindows = require_is_windows(); + var CMD_EXTENSION = require_cmd_extension(); + var shebangExpr = /^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/; + var DEFAULT_OPTIONS = { + // Create PowerShell file by default if the option hasn't been specified + createPwshFile: true, + createCmdFile: isWindows(), + fs: require_graceful_fs() + }; + var extensionToProgramMap = /* @__PURE__ */ new Map([ + [".js", "node"], + [".cjs", "node"], + [".mjs", "node"], + [".cmd", "cmd"], + [".bat", "cmd"], + [".ps1", "pwsh"], + [".sh", "sh"] + ]); + function ingestOptions(opts) { + const opts_ = { ...DEFAULT_OPTIONS, ...opts }; + const fs2 = opts_.fs; + opts_.fs_ = { + chmod: fs2.chmod ? (0, util_1.promisify)(fs2.chmod) : async () => { + }, + mkdir: (0, util_1.promisify)(fs2.mkdir), + readFile: (0, util_1.promisify)(fs2.readFile), + stat: (0, util_1.promisify)(fs2.stat), + unlink: (0, util_1.promisify)(fs2.unlink), + writeFile: (0, util_1.promisify)(fs2.writeFile) + }; + return opts_; + } + async function cmdShim(src, to, opts) { + const opts_ = ingestOptions(opts); + await cmdShim_(src, to, opts_); + } + function cmdShimIfExists(src, to, opts) { + return cmdShim(src, to, opts).catch(() => { + }); + } + function rm(path3, opts) { + return opts.fs_.unlink(path3).catch(() => { + }); + } + async function cmdShim_(src, to, opts) { + const srcRuntimeInfo = await searchScriptRuntime(src, opts); + await writeShimsPreCommon(to, opts); + return writeAllShims(src, to, srcRuntimeInfo, opts); + } + function writeShimsPreCommon(target, opts) { + return opts.fs_.mkdir(path2.dirname(target), { recursive: true }); + } + function writeAllShims(src, to, srcRuntimeInfo, opts) { + const opts_ = ingestOptions(opts); + const generatorAndExts = [{ generator: generateShShim, extension: "" }]; + if (opts_.createCmdFile) { + generatorAndExts.push({ generator: generateCmdShim, extension: CMD_EXTENSION }); } - _getRootDirectory(task) { - return path.resolve(this._settings.cwd, task.base); + if (opts_.createPwshFile) { + generatorAndExts.push({ generator: generatePwshShim, extension: ".ps1" }); } - _getReaderOptions(task) { - const basePath2 = task.base === "." ? "" : task.base; + return Promise.all(generatorAndExts.map((generatorAndExt) => writeShim(src, to + generatorAndExt.extension, srcRuntimeInfo, generatorAndExt.generator, opts_))); + } + function writeShimPre(target, opts) { + return rm(target, opts); + } + function writeShimPost(target, opts) { + return chmodShim(target, opts); + } + async function searchScriptRuntime(target, opts) { + try { + const data = await opts.fs_.readFile(target, "utf8"); + const firstLine = data.trim().split(/\r*\n/)[0]; + const shebang = firstLine.match(shebangExpr); + if (!shebang) { + const targetExtension = path2.extname(target).toLowerCase(); + return { + // undefined if extension is unknown but it's converted to null. + program: extensionToProgramMap.get(targetExtension) || null, + additionalArgs: "" + }; + } return { - basePath: basePath2, - pathSegmentSeparator: "/", - concurrency: this._settings.concurrency, - deepFilter: this.deepFilter.getFilter(basePath2, task.positive, task.negative), - entryFilter: this.entryFilter.getFilter(task.positive, task.negative), - errorFilter: this.errorFilter.getFilter(), - followSymbolicLinks: this._settings.followSymbolicLinks, - fs: this._settings.fs, - stats: this._settings.stats, - throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink, - transform: this.entryTransformer.getTransformer() + program: shebang[1], + additionalArgs: shebang[2] }; + } catch (err) { + if (!isWindows() || err.code !== "ENOENT") + throw err; + if (await opts.fs_.stat(`${target}${getExeExtension()}`)) { + return { + program: null, + additionalArgs: "" + }; + } + throw err; } - _getMicromatchOptions() { - return { - dot: this._settings.dot, - matchBase: this._settings.baseNameMatch, - nobrace: !this._settings.braceExpansion, - nocase: !this._settings.caseSensitiveMatch, - noext: !this._settings.extglob, - noglobstar: !this._settings.globstar, - posix: true, - strictSlashes: false - }; + } + function getExeExtension() { + let cmdExtension; + if (process.env.PATHEXT) { + cmdExtension = process.env.PATHEXT.split(path2.delimiter).find((ext) => ext.toLowerCase() === ".exe"); } - }; - exports2.default = Provider; - } -}); - -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/async.js -var require_async6 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/async.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var stream_1 = require_stream4(); - var provider_1 = require_provider(); - var ProviderAsync = class extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new stream_1.default(this._settings); + return cmdExtension || ".exe"; + } + async function writeShim(src, to, srcRuntimeInfo, generateShimScript, opts) { + const defaultArgs = opts.preserveSymlinks ? "--preserve-symlinks" : ""; + const args2 = [srcRuntimeInfo.additionalArgs, defaultArgs].filter((arg) => arg).join(" "); + opts = Object.assign({}, opts, { + prog: srcRuntimeInfo.program, + args: args2 + }); + await writeShimPre(to, opts); + await opts.fs_.writeFile(to, generateShimScript(src, to, opts), "utf8"); + return writeShimPost(to, opts); + } + function generateCmdShim(src, to, opts) { + const shTarget = path2.relative(path2.dirname(to), src); + let target = shTarget.split("/").join("\\"); + const quotedPathToTarget = path2.isAbsolute(target) ? `"${target}"` : `"%~dp0\\${target}"`; + let longProg; + let prog = opts.prog; + let args2 = opts.args || ""; + const nodePath = normalizePathEnvVar(opts.nodePath).win32; + const prependToPath = normalizePathEnvVar(opts.prependToPath).win32; + if (!prog) { + prog = quotedPathToTarget; + args2 = ""; + target = ""; + } else if (prog === "node" && opts.nodeExecPath) { + prog = `"${opts.nodeExecPath}"`; + target = quotedPathToTarget; + } else { + longProg = `"%~dp0\\${prog}.exe"`; + target = quotedPathToTarget; } - read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const entries = []; - return new Promise((resolve, reject) => { - const stream = this.api(root, task, options); - stream.once("error", reject); - stream.on("data", (entry) => entries.push(options.transform(entry))); - stream.once("end", () => resolve(entries)); - }); + let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; + let cmd = "@SETLOCAL\r\n"; + if (prependToPath) { + cmd += `@SET "PATH=${prependToPath}:%PATH%"\r +`; } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); - } - return this._reader.static(task.patterns, options); + if (nodePath) { + cmd += `@IF NOT DEFINED NODE_PATH (\r + @SET "NODE_PATH=${nodePath}"\r +) ELSE (\r + @SET "NODE_PATH=${nodePath};%NODE_PATH%"\r +)\r +`; } - }; - exports2.default = ProviderAsync; - } -}); + if (longProg) { + cmd += `@IF EXIST ${longProg} (\r + ${longProg} ${args2} ${target} ${progArgs}%*\r +) ELSE (\r + @SET PATHEXT=%PATHEXT:;.JS;=;%\r + ${prog} ${args2} ${target} ${progArgs}%*\r +)\r +`; + } else { + cmd += `@${prog} ${args2} ${target} ${progArgs}%*\r +`; + } + return cmd; + } + function generateShShim(src, to, opts) { + let shTarget = path2.relative(path2.dirname(to), src); + let shProg = opts.prog && opts.prog.split("\\").join("/"); + let shLongProg; + shTarget = shTarget.split("\\").join("/"); + const quotedPathToTarget = path2.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`; + let args2 = opts.args || ""; + const shNodePath = normalizePathEnvVar(opts.nodePath).posix; + if (!shProg) { + shProg = quotedPathToTarget; + args2 = ""; + shTarget = ""; + } else if (opts.prog === "node" && opts.nodeExecPath) { + shProg = `"${opts.nodeExecPath}"`; + shTarget = quotedPathToTarget; + } else { + shLongProg = `"$basedir/${opts.prog}"`; + shTarget = quotedPathToTarget; + } + let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; + let sh = `#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/stream.js -var require_stream5 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/stream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var stream_1 = require("stream"); - var stream_2 = require_stream4(); - var provider_1 = require_provider(); - var ProviderStream = class extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new stream_2.default(this._settings); +case \`uname\` in + *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; +esac + +`; + if (opts.prependToPath) { + sh += `export PATH="${opts.prependToPath}:$PATH" +`; } - read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const source = this.api(root, task, options); - const destination = new stream_1.Readable({ objectMode: true, read: () => { - } }); - source.once("error", (error) => destination.emit("error", error)).on("data", (entry) => destination.emit("data", options.transform(entry))).once("end", () => destination.emit("end")); - destination.once("close", () => source.destroy()); - return destination; + if (shNodePath) { + sh += `if [ -z "$NODE_PATH" ]; then + export NODE_PATH="${shNodePath}" +else + export NODE_PATH="${shNodePath}:$NODE_PATH" +fi +`; } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); - } - return this._reader.static(task.patterns, options); + if (shLongProg) { + sh += `if [ -x ${shLongProg} ]; then + exec ${shLongProg} ${args2} ${shTarget} ${progArgs}"$@" +else + exec ${shProg} ${args2} ${shTarget} ${progArgs}"$@" +fi +`; + } else { + sh += `${shProg} ${args2} ${shTarget} ${progArgs}"$@" +exit $? +`; } - }; - exports2.default = ProviderStream; - } -}); + return sh; + } + function generatePwshShim(src, to, opts) { + let shTarget = path2.relative(path2.dirname(to), src); + const shProg = opts.prog && opts.prog.split("\\").join("/"); + let pwshProg = shProg && `"${shProg}$exe"`; + let pwshLongProg; + shTarget = shTarget.split("\\").join("/"); + const quotedPathToTarget = path2.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`; + let args2 = opts.args || ""; + let normalizedNodePathEnvVar = normalizePathEnvVar(opts.nodePath); + const nodePath = normalizedNodePathEnvVar.win32; + const shNodePath = normalizedNodePathEnvVar.posix; + let normalizedPrependPathEnvVar = normalizePathEnvVar(opts.prependToPath); + const prependPath = normalizedPrependPathEnvVar.win32; + const shPrependPath = normalizedPrependPathEnvVar.posix; + if (!pwshProg) { + pwshProg = quotedPathToTarget; + args2 = ""; + shTarget = ""; + } else if (opts.prog === "node" && opts.nodeExecPath) { + pwshProg = `"${opts.nodeExecPath}"`; + shTarget = quotedPathToTarget; + } else { + pwshLongProg = `"$basedir/${opts.prog}$exe"`; + shTarget = quotedPathToTarget; + } + let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; + let pwsh = `#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/sync.js -var require_sync5 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/readers/sync.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fsStat = require_out(); - var fsWalk = require_out3(); - var reader_1 = require_reader2(); - var ReaderSync = class extends reader_1.default { - constructor() { - super(...arguments); - this._walkSync = fsWalk.walkSync; - this._statSync = fsStat.statSync; +$exe="" +${nodePath || prependPath ? '$pathsep=":"\n' : ""}${nodePath ? `$env_node_path=$env:NODE_PATH +$new_node_path="${nodePath}" +` : ""}${prependPath ? `$env_path=$env:PATH +$prepend_path="${prependPath}" +` : ""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +${nodePath || prependPath ? ' $pathsep=";"\n' : ""}}`; + if (shNodePath || shPrependPath) { + pwsh += ` else { +${shNodePath ? ` $new_node_path="${shNodePath}" +` : ""}${shPrependPath ? ` $prepend_path="${shPrependPath}" +` : ""}} +`; } - dynamic(root, options) { - return this._walkSync(root, options); + if (shNodePath) { + pwsh += `if ([string]::IsNullOrEmpty($env_node_path)) { + $env:NODE_PATH=$new_node_path +} else { + $env:NODE_PATH="$new_node_path$pathsep$env_node_path" +} +`; } - static(patterns, options) { - const entries = []; - for (const pattern of patterns) { - const filepath = this._getFullEntryPath(pattern); - const entry = this._getEntry(filepath, pattern, options); - if (entry === null || !options.entryFilter(entry)) { - continue; - } - entries.push(entry); - } - return entries; + if (opts.prependToPath) { + pwsh += ` +$env:PATH="$prepend_path$pathsep$env:PATH" +`; } - _getEntry(filepath, pattern, options) { - try { - const stats = this._getStat(filepath); - return this._makeEntry(stats, pattern); - } catch (error) { - if (options.errorFilter(error)) { - return null; - } - throw error; - } + if (pwshLongProg) { + pwsh += ` +$ret=0 +if (Test-Path ${pwshLongProg}) { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & ${pwshLongProg} ${args2} ${shTarget} ${progArgs}$args + } else { + & ${pwshLongProg} ${args2} ${shTarget} ${progArgs}$args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args + } else { + & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args + } + $ret=$LASTEXITCODE +} +${nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}${prependPath ? "$env:PATH=$env_path\n" : ""}exit $ret +`; + } else { + pwsh += ` +# Support pipeline input +if ($MyInvocation.ExpectingInput) { + $input | & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args +} else { + & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args +} +${nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}${prependPath ? "$env:PATH=$env_path\n" : ""}exit $LASTEXITCODE +`; + } + return pwsh; + } + function chmodShim(to, opts) { + return opts.fs_.chmod(to, 493); + } + function normalizePathEnvVar(nodePath) { + if (!nodePath || !nodePath.length) { + return { + win32: "", + posix: "" + }; } - _getStat(filepath) { - return this._statSync(filepath, this._fsStatSettings); + let split = typeof nodePath === "string" ? nodePath.split(path2.delimiter) : Array.from(nodePath); + let result2 = {}; + for (let i = 0; i < split.length; i++) { + const win32 = split[i].split("/").join("\\"); + const posix = isWindows() ? split[i].split("\\").join("/").replace(/^([^:\\/]*):/, (_, $1) => `/mnt/${$1.toLowerCase()}`) : split[i]; + result2.win32 = result2.win32 ? `${result2.win32};${win32}` : win32; + result2.posix = result2.posix ? `${result2.posix}:${posix}` : posix; + result2[i] = { win32, posix }; } - }; - exports2.default = ReaderSync; + return result2; + } + module2.exports = cmdShim; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/sync.js -var require_sync6 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/providers/sync.js"(exports2) { +// ../node_modules/.pnpm/p-try@2.2.0/node_modules/p-try/index.js +var require_p_try = __commonJS({ + "../node_modules/.pnpm/p-try@2.2.0/node_modules/p-try/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var sync_1 = require_sync5(); - var provider_1 = require_provider(); - var ProviderSync = class extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new sync_1.default(this._settings); - } - read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const entries = this.api(root, task, options); - return entries.map(options.transform); + var pTry = (fn2, ...arguments_) => new Promise((resolve) => { + resolve(fn2(...arguments_)); + }); + module2.exports = pTry; + module2.exports.default = pTry; + } +}); + +// ../node_modules/.pnpm/p-limit@2.3.0/node_modules/p-limit/index.js +var require_p_limit2 = __commonJS({ + "../node_modules/.pnpm/p-limit@2.3.0/node_modules/p-limit/index.js"(exports2, module2) { + "use strict"; + var pTry = require_p_try(); + var pLimit = (concurrency) => { + if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { + return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up")); } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); + const queue = []; + let activeCount = 0; + const next = () => { + activeCount--; + if (queue.length > 0) { + queue.shift()(); } - return this._reader.static(task.patterns, options); - } + }; + const run = (fn2, resolve, ...args2) => { + activeCount++; + const result2 = pTry(fn2, ...args2); + resolve(result2); + result2.then(next, next); + }; + const enqueue = (fn2, resolve, ...args2) => { + if (activeCount < concurrency) { + run(fn2, resolve, ...args2); + } else { + queue.push(run.bind(null, fn2, resolve, ...args2)); + } + }; + const generator = (fn2, ...args2) => new Promise((resolve) => enqueue(fn2, resolve, ...args2)); + Object.defineProperties(generator, { + activeCount: { + get: () => activeCount + }, + pendingCount: { + get: () => queue.length + }, + clearQueue: { + value: () => { + queue.length = 0; + } + } + }); + return generator; }; - exports2.default = ProviderSync; + module2.exports = pLimit; + module2.exports.default = pLimit; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/settings.js -var require_settings4 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/settings.js"(exports2) { +// ../node_modules/.pnpm/p-settle@4.1.1/node_modules/p-settle/index.js +var require_p_settle = __commonJS({ + "../node_modules/.pnpm/p-settle@4.1.1/node_modules/p-settle/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; - var fs = require("fs"); - var os = require("os"); - var CPU_COUNT = Math.max(os.cpus().length, 1); - exports2.DEFAULT_FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - lstatSync: fs.lstatSync, - stat: fs.stat, - statSync: fs.statSync, - readdir: fs.readdir, - readdirSync: fs.readdirSync - }; - var Settings = class { - constructor(_options = {}) { - this._options = _options; - this.absolute = this._getValue(this._options.absolute, false); - this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); - this.braceExpansion = this._getValue(this._options.braceExpansion, true); - this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); - this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); - this.cwd = this._getValue(this._options.cwd, process.cwd()); - this.deep = this._getValue(this._options.deep, Infinity); - this.dot = this._getValue(this._options.dot, false); - this.extglob = this._getValue(this._options.extglob, true); - this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); - this.fs = this._getFileSystemMethods(this._options.fs); - this.globstar = this._getValue(this._options.globstar, true); - this.ignore = this._getValue(this._options.ignore, []); - this.markDirectories = this._getValue(this._options.markDirectories, false); - this.objectMode = this._getValue(this._options.objectMode, false); - this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); - this.onlyFiles = this._getValue(this._options.onlyFiles, true); - this.stats = this._getValue(this._options.stats, false); - this.suppressErrors = this._getValue(this._options.suppressErrors, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); - this.unique = this._getValue(this._options.unique, true); - if (this.onlyDirectories) { - this.onlyFiles = false; + var pReflect = require_p_reflect(); + var pLimit = require_p_limit2(); + module2.exports = async (array, options = {}) => { + const { concurrency = Infinity } = options; + const limit = pLimit(concurrency); + return Promise.all(array.map((element) => { + if (element && typeof element.then === "function") { + return pReflect(element); } - if (this.stats) { - this.objectMode = true; + if (typeof element === "function") { + return pReflect(limit(() => element())); } - } - _getValue(option, value) { - return option === void 0 ? value : option; - } - _getFileSystemMethods(methods = {}) { - return Object.assign(Object.assign({}, exports2.DEFAULT_FILE_SYSTEM_ADAPTER), methods); - } + return pReflect(Promise.resolve(element)); + })); }; - exports2.default = Settings; } }); -// ../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/index.js -var require_out4 = __commonJS({ - "../../node_modules/.pnpm/fast-glob@3.2.7/node_modules/fast-glob/out/index.js"(exports2, module2) { - "use strict"; - var taskManager = require_tasks(); - var async_1 = require_async6(); - var stream_1 = require_stream5(); - var sync_1 = require_sync6(); - var settings_1 = require_settings4(); - var utils = require_utils5(); - async function FastGlob(source, options) { - assertPatternsInput(source); - const works = getWorks(source, async_1.default, options); - const result = await Promise.all(works); - return utils.array.flatten(result); - } - (function(FastGlob2) { - function sync(source, options) { - assertPatternsInput(source); - const works = getWorks(source, sync_1.default, options); - return utils.array.flatten(works); - } - FastGlob2.sync = sync; - function stream(source, options) { - assertPatternsInput(source); - const works = getWorks(source, stream_1.default, options); - return utils.stream.merge(works); - } - FastGlob2.stream = stream; - function generateTasks(source, options) { - assertPatternsInput(source); - const patterns = [].concat(source); - const settings = new settings_1.default(options); - return taskManager.generate(patterns, settings); - } - FastGlob2.generateTasks = generateTasks; - function isDynamicPattern(source, options) { - assertPatternsInput(source); - const settings = new settings_1.default(options); - return utils.pattern.isDynamicPattern(source, settings); - } - FastGlob2.isDynamicPattern = isDynamicPattern; - function escapePath(source) { - assertPatternsInput(source); - return utils.path.escape(source); - } - FastGlob2.escapePath = escapePath; - })(FastGlob || (FastGlob = {})); - function getWorks(source, _Provider, options) { - const patterns = [].concat(source); - const settings = new settings_1.default(options); - const tasks = taskManager.generate(patterns, settings); - const provider = new _Provider(settings); - return tasks.map(provider.read, provider); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isTypedArray.js +var require_isTypedArray = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isTypedArray.js"(exports2, module2) { + function _isTypedArray(val) { + var type = Object.prototype.toString.call(val); + return type === "[object Uint8ClampedArray]" || type === "[object Int8Array]" || type === "[object Uint8Array]" || type === "[object Int16Array]" || type === "[object Uint16Array]" || type === "[object Int32Array]" || type === "[object Uint32Array]" || type === "[object Float32Array]" || type === "[object Float64Array]" || type === "[object BigInt64Array]" || type === "[object BigUint64Array]"; } - function assertPatternsInput(input) { - const source = [].concat(input); - const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); - if (!isValidSource) { - throw new TypeError("Patterns must be a string (non empty) or an array of strings"); - } + module2.exports = _isTypedArray; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/empty.js +var require_empty3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/empty.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isArguments = require_isArguments(); + var _isArray = require_isArray(); + var _isObject = require_isObject(); + var _isString = require_isString(); + var _isTypedArray = require_isTypedArray(); + var empty = /* @__PURE__ */ _curry1(function empty2(x) { + return x != null && typeof x["fantasy-land/empty"] === "function" ? x["fantasy-land/empty"]() : x != null && x.constructor != null && typeof x.constructor["fantasy-land/empty"] === "function" ? x.constructor["fantasy-land/empty"]() : x != null && typeof x.empty === "function" ? x.empty() : x != null && x.constructor != null && typeof x.constructor.empty === "function" ? x.constructor.empty() : _isArray(x) ? [] : _isString(x) ? "" : _isObject(x) ? {} : _isArguments(x) ? function() { + return arguments; + }() : _isTypedArray(x) ? x.constructor.from("") : void 0; + }); + module2.exports = empty; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/isEmpty.js +var require_isEmpty2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/isEmpty.js"(exports2, module2) { + var _curry1 = require_curry1(); + var empty = require_empty3(); + var equals = require_equals2(); + var isEmpty = /* @__PURE__ */ _curry1(function isEmpty2(x) { + return x != null && equals(x, empty(x)); + }); + module2.exports = isEmpty; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_identity.js +var require_identity2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_identity.js"(exports2, module2) { + function _identity(x) { + return x; } - module2.exports = FastGlob; + module2.exports = _identity; } }); -// ../../node_modules/.pnpm/p-map@2.1.0/node_modules/p-map/index.js -var require_p_map = __commonJS({ - "../../node_modules/.pnpm/p-map@2.1.0/node_modules/p-map/index.js"(exports2, module2) { - "use strict"; - var pMap = (iterable, mapper, options) => new Promise((resolve, reject) => { - options = Object.assign({ - concurrency: Infinity - }, options); - if (typeof mapper !== "function") { - throw new TypeError("Mapper function is required"); - } - const { concurrency } = options; - if (!(typeof concurrency === "number" && concurrency >= 1)) { - throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${concurrency}\` (${typeof concurrency})`); - } - const ret = []; - const iterator = iterable[Symbol.iterator](); - let isRejected = false; - let isIterableDone = false; - let resolvingCount = 0; - let currentIndex = 0; - const next = () => { - if (isRejected) { - return; - } - const nextItem = iterator.next(); - const i = currentIndex; - currentIndex++; - if (nextItem.done) { - isIterableDone = true; - if (resolvingCount === 0) { - resolve(ret); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_makeFlat.js +var require_makeFlat = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_makeFlat.js"(exports2, module2) { + var _isArrayLike = require_isArrayLike2(); + function _makeFlat(recursive) { + return function flatt(list) { + var value, jlen, j; + var result2 = []; + var idx = 0; + var ilen = list.length; + while (idx < ilen) { + if (_isArrayLike(list[idx])) { + value = recursive ? flatt(list[idx]) : list[idx]; + j = 0; + jlen = value.length; + while (j < jlen) { + result2[result2.length] = value[j]; + j += 1; + } + } else { + result2[result2.length] = list[idx]; } - return; + idx += 1; } - resolvingCount++; - Promise.resolve(nextItem.value).then((element) => mapper(element, i)).then((value) => { - ret[i] = value; - resolvingCount--; - next(); - }, (error) => { - isRejected = true; - reject(error); - }); + return result2; }; - for (let i = 0; i < concurrency; i++) { - next(); - if (isIterableDone) { - break; - } - } - }); - module2.exports = pMap; - module2.exports.default = pMap; + } + module2.exports = _makeFlat; } }); -// ../../node_modules/.pnpm/p-filter@2.1.0/node_modules/p-filter/index.js -var require_p_filter = __commonJS({ - "../../node_modules/.pnpm/p-filter@2.1.0/node_modules/p-filter/index.js"(exports2, module2) { - "use strict"; - var pMap = require_p_map(); - var pFilter = async (iterable, filterer, options) => { - const values = await pMap(iterable, (element, index) => Promise.all([filterer(element, index), element]), options); - return values.filter((value) => Boolean(value[0])).map((value) => value[1]); - }; - module2.exports = pFilter; - module2.exports.default = pFilter; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_forceReduced.js +var require_forceReduced = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_forceReduced.js"(exports2, module2) { + function _forceReduced(x) { + return { + "@@transducer/value": x, + "@@transducer/reduced": true + }; + } + module2.exports = _forceReduced; } }); -// ../find-packages/lib/index.js -var require_lib21 = __commonJS({ - "../find-packages/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_flatCat.js +var require_flatCat = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_flatCat.js"(exports2, module2) { + var _forceReduced = require_forceReduced(); + var _isArrayLike = require_isArrayLike2(); + var _reduce = require_reduce2(); + var _xfBase = require_xfBase(); + var preservingReduced = function(xf) { + return { + "@@transducer/init": _xfBase.init, + "@@transducer/result": function(result2) { + return xf["@@transducer/result"](result2); + }, + "@@transducer/step": function(result2, input) { + var ret = xf["@@transducer/step"](result2, input); + return ret["@@transducer/reduced"] ? _forceReduced(ret) : ret; + } + }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var read_project_manifest_1 = require_lib19(); - var fast_glob_1 = __importDefault(require_out4()); - var p_filter_1 = __importDefault(require_p_filter()); - var DEFAULT_IGNORE = [ - "**/node_modules/**", - "**/bower_components/**", - "**/test/**", - "**/tests/**" - ]; - async function findPkgs(root, opts) { - var _a; - opts = opts !== null && opts !== void 0 ? opts : {}; - const globOpts = { ...opts, cwd: root, includeRoot: void 0 }; - globOpts.ignore = (_a = opts.ignore) !== null && _a !== void 0 ? _a : DEFAULT_IGNORE; - const patterns = normalizePatterns(opts.patterns != null ? opts.patterns : [".", "**"]); - const paths = await fast_glob_1.default(patterns, globOpts); - if (opts.includeRoot) { - Array.prototype.push.apply(paths, await fast_glob_1.default(normalizePatterns(["."]), globOpts)); - } - return p_filter_1.default(Array.from(new Set(paths.map((manifestPath) => path_1.default.join(root, manifestPath)).sort((path1, path2) => path_1.default.dirname(path1).localeCompare(path_1.default.dirname(path2)))), async (manifestPath) => { - try { - return { - dir: path_1.default.dirname(manifestPath), - ...await read_project_manifest_1.readExactProjectManifest(manifestPath) + var _flatCat = function _xcat(xf) { + var rxf = preservingReduced(xf); + return { + "@@transducer/init": _xfBase.init, + "@@transducer/result": function(result2) { + return rxf["@@transducer/result"](result2); + }, + "@@transducer/step": function(result2, input) { + return !_isArrayLike(input) ? _reduce(rxf, result2, [input]) : _reduce(rxf, result2, input); + } + }; + }; + module2.exports = _flatCat; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xchain.js +var require_xchain = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xchain.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _flatCat = require_flatCat(); + var map = require_map4(); + var _xchain = /* @__PURE__ */ _curry2(function _xchain2(f, xf) { + return map(f, _flatCat(xf)); + }); + module2.exports = _xchain; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/chain.js +var require_chain2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/chain.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _makeFlat = require_makeFlat(); + var _xchain = require_xchain(); + var map = require_map4(); + var chain = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["fantasy-land/chain", "chain"], _xchain, function chain2(fn2, monad) { + if (typeof monad === "function") { + return function(x) { + return fn2(monad(x))(x); }; - } catch (err) { - if (err.code === "ENOENT") { - return null; - } - throw err; } - }), Boolean); - } - exports2.default = findPkgs; - function normalizePatterns(patterns) { - const normalizedPatterns = []; - for (const pattern of patterns) { - normalizedPatterns.push(pattern.replace(/\/?$/, "/package.json")); - normalizedPatterns.push(pattern.replace(/\/?$/, "/package.json5")); - normalizedPatterns.push(pattern.replace(/\/?$/, "/package.yaml")); - } - return normalizedPatterns; - } + return _makeFlat(false)(map(fn2, monad)); + }) + ); + module2.exports = chain; } }); -// ../find-workspace-packages/lib/index.js -var require_lib22 = __commonJS({ - "../find-workspace-packages/lib/index.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unnest.js +var require_unnest = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unnest.js"(exports2, module2) { + var _identity = require_identity2(); + var chain = require_chain2(); + var unnest = /* @__PURE__ */ chain(_identity); + module2.exports = unnest; + } +}); + +// ../node_modules/.pnpm/symlink-dir@5.1.1/node_modules/symlink-dir/dist/index.js +var require_dist12 = __commonJS({ + "../node_modules/.pnpm/symlink-dir@5.1.1/node_modules/symlink-dir/dist/index.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.arrayOfWorkspacePackagesToMap = exports2.findWorkspacePackagesNoCheck = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var constants_1 = require_lib7(); - var find_packages_1 = __importDefault(require_lib21()); - var read_yaml_file_1 = __importDefault(require_read_yaml_file()); - exports2.default = async (workspaceRoot, opts) => { - const pkgs = await findWorkspacePackagesNoCheck(workspaceRoot, opts); - for (const pkg of pkgs) { - cli_utils_1.packageIsInstallable(pkg.dir, pkg.manifest, opts !== null && opts !== void 0 ? opts : {}); - } - return pkgs; - }; - async function findWorkspacePackagesNoCheck(workspaceRoot, opts) { - var _a; - let patterns = opts === null || opts === void 0 ? void 0 : opts.patterns; - if (patterns == null) { - const packagesManifest = await requirePackagesManifest(workspaceRoot); - patterns = (_a = packagesManifest === null || packagesManifest === void 0 ? void 0 : packagesManifest.packages) !== null && _a !== void 0 ? _a : void 0; - } - const pkgs = await find_packages_1.default(workspaceRoot, { - ignore: [ - "**/node_modules/**", - "**/bower_components/**" - ], - includeRoot: true, - patterns - }); - pkgs.sort((pkg1, pkg2) => pkg1.dir.localeCompare(pkg2.dir)); - return pkgs; + var betterPathResolve = require_better_path_resolve(); + var fs_1 = require("fs"); + var path2 = require("path"); + var renameOverwrite = require_rename_overwrite(); + var IS_WINDOWS = process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE); + var symlinkType = IS_WINDOWS ? "junction" : "dir"; + var resolveSrc = IS_WINDOWS ? resolveSrcOnWin : resolveSrcOnNonWin; + function resolveSrcOnWin(src, dest) { + return `${src}\\`; } - exports2.findWorkspacePackagesNoCheck = findWorkspacePackagesNoCheck; - async function requirePackagesManifest(dir) { + function resolveSrcOnNonWin(src, dest) { + return path2.relative(path2.dirname(dest), src); + } + function symlinkDir(src, dest, opts) { + dest = betterPathResolve(dest); + src = betterPathResolve(src); + if (src === dest) + throw new Error(`Symlink path is the same as the target path (${src})`); + src = resolveSrc(src, dest); + return forceSymlink(src, dest, opts); + } + async function forceSymlink(src, dest, opts) { try { - return await read_yaml_file_1.default(path_1.default.join(dir, constants_1.WORKSPACE_MANIFEST_FILENAME)); + await fs_1.promises.symlink(src, dest, symlinkType); + return { reused: false }; } catch (err) { - if (err["code"] === "ENOENT") { - return null; + switch (err.code) { + case "ENOENT": + try { + await fs_1.promises.mkdir(path2.dirname(dest), { recursive: true }); + } catch (mkdirError) { + mkdirError.message = `Error while trying to symlink "${src}" to "${dest}". The error happened while trying to create the parent directory for the symlink target. Details: ${mkdirError}`; + throw mkdirError; + } + await forceSymlink(src, dest, opts); + return { reused: false }; + case "EEXIST": + case "EISDIR": + if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) { + throw err; + } + break; + default: + throw err; } - throw err; } - } - function arrayOfWorkspacePackagesToMap(pkgs) { - return pkgs.reduce((acc, pkg) => { - var _a; - if (!pkg.manifest.name) - return acc; - if (!acc[pkg.manifest.name]) { - acc[pkg.manifest.name] = {}; + let linkString; + try { + linkString = await fs_1.promises.readlink(dest); + } catch (err) { + const parentDir = path2.dirname(dest); + let warn; + if (opts === null || opts === void 0 ? void 0 : opts.renameTried) { + await fs_1.promises.unlink(dest); + warn = `Symlink wanted name was occupied by directory or file. Old entity removed: "${parentDir}${path2.sep}{${path2.basename(dest)}".`; + } else { + const ignore = `.ignored_${path2.basename(dest)}`; + await renameOverwrite(dest, path2.join(parentDir, ignore)); + warn = `Symlink wanted name was occupied by directory or file. Old entity moved: "${parentDir}${path2.sep}{${path2.basename(dest)} => ${ignore}".`; } - acc[pkg.manifest.name][(_a = pkg.manifest.version) !== null && _a !== void 0 ? _a : "0.0.0"] = pkg; - return acc; - }, {}); + return { + ...await forceSymlink(src, dest, { ...opts, renameTried: true }), + warn + }; + } + if (src === linkString) { + return { reused: true }; + } + await fs_1.promises.unlink(dest); + return await forceSymlink(src, dest, opts); } - exports2.arrayOfWorkspacePackagesToMap = arrayOfWorkspacePackagesToMap; + symlinkDir["default"] = symlinkDir; + module2.exports = symlinkDir; } }); -// ../../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js -var require_escape_string_regexp2 = __commonJS({ - "../../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js"(exports2, module2) { - "use strict"; - module2.exports = (string) => { - if (typeof string !== "string") { - throw new TypeError("Expected a string"); - } - return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); +// ../node_modules/.pnpm/bin-links@4.0.1/node_modules/bin-links/lib/fix-bin.js +var require_fix_bin = __commonJS({ + "../node_modules/.pnpm/bin-links@4.0.1/node_modules/bin-links/lib/fix-bin.js"(exports2, module2) { + var { + chmod, + open, + readFile + } = require("fs/promises"); + var execMode = 511 & ~process.umask(); + var writeFileAtomic = require_lib13(); + var isWindowsHashBang = (buf) => buf[0] === "#".charCodeAt(0) && buf[1] === "!".charCodeAt(0) && /^#![^\n]+\r\n/.test(buf.toString()); + var isWindowsHashbangFile = (file) => { + const FALSE = () => false; + return open(file, "r").then((fh) => { + const buf = Buffer.alloc(2048); + return fh.read(buf, 0, 2048, 0).then( + () => { + const isWHB = isWindowsHashBang(buf); + return fh.close().then(() => isWHB, () => isWHB); + }, + // don't leak FD if read() fails + () => fh.close().then(FALSE, FALSE) + ); + }, FALSE); }; + var dos2Unix = (file) => readFile(file, "utf8").then((content) => writeFileAtomic(file, content.replace(/^(#![^\n]+)\r\n/, "$1\n"))); + var fixBin = (file, mode = execMode) => chmod(file, mode).then(() => isWindowsHashbangFile(file)).then((isWHB) => isWHB ? dos2Unix(file) : null); + module2.exports = fixBin; } }); -// ../matcher/lib/index.js -var require_lib23 = __commonJS({ - "../matcher/lib/index.js"(exports2) { +// ../pkg-manager/link-bins/lib/index.js +var require_lib54 = __commonJS({ + "../pkg-manager/link-bins/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var escape_string_regexp_1 = __importDefault(require_escape_string_regexp2()); - function matcher(patterns) { - if (typeof patterns === "string") - return matcherFromPattern(patterns); - switch (patterns.length) { - case 0: - return () => false; - case 1: - return matcherFromPattern(patterns[0]); + exports2.linkBinsOfPackages = exports2.linkBins = void 0; + var fs_1 = require("fs"); + var module_1 = __importDefault4(require("module")); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var package_bins_1 = require_lib39(); + var read_modules_dir_1 = require_lib53(); + var read_package_json_1 = require_lib41(); + var read_project_manifest_1 = require_lib16(); + var cmd_shim_1 = __importDefault4(require_cmd_shim()); + var rimraf_1 = __importDefault4(require_rimraf2()); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var is_windows_1 = __importDefault4(require_is_windows()); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var p_settle_1 = __importDefault4(require_p_settle()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var unnest_1 = __importDefault4(require_unnest()); + var partition_1 = __importDefault4(require_partition4()); + var symlink_dir_1 = __importDefault4(require_dist12()); + var fix_bin_1 = __importDefault4(require_fix_bin()); + var binsConflictLogger = (0, logger_1.logger)("bins-conflict"); + var IS_WINDOWS = (0, is_windows_1.default)(); + var EXECUTABLE_SHEBANG_SUPPORTED = !IS_WINDOWS; + var POWER_SHELL_IS_SUPPORTED = IS_WINDOWS; + async function linkBins(modulesDir, binsDir, opts) { + const allDeps = await (0, read_modules_dir_1.readModulesDir)(modulesDir); + if (allDeps === null) + return []; + const pkgBinOpts = { + allowExoticManifests: false, + ...opts + }; + const directDependencies = opts.projectManifest == null ? void 0 : new Set(Object.keys((0, manifest_utils_1.getAllDependenciesFromManifest)(opts.projectManifest))); + const allCmds = (0, unnest_1.default)((await Promise.all(allDeps.map((alias) => ({ + depDir: path_1.default.resolve(modulesDir, alias), + isDirectDependency: directDependencies?.has(alias), + nodeExecPath: opts.nodeExecPathByAlias?.[alias] + })).filter(({ depDir }) => !(0, is_subdir_1.default)(depDir, binsDir)).map(async ({ depDir, isDirectDependency, nodeExecPath }) => { + const target = (0, normalize_path_1.default)(depDir); + const cmds = await getPackageBins(pkgBinOpts, target, nodeExecPath); + return cmds.map((cmd) => ({ ...cmd, isDirectDependency })); + }))).filter((cmds) => cmds.length)); + const cmdsToLink = directDependencies != null ? preferDirectCmds(allCmds) : allCmds; + return _linkBins(cmdsToLink, binsDir, opts); + } + exports2.linkBins = linkBins; + function preferDirectCmds(allCmds) { + const [directCmds, hoistedCmds] = (0, partition_1.default)((cmd) => cmd.isDirectDependency === true, allCmds); + const usedDirectCmds = new Set(directCmds.map((directCmd) => directCmd.name)); + return [ + ...directCmds, + ...hoistedCmds.filter(({ name }) => !usedDirectCmds.has(name)) + ]; + } + async function linkBinsOfPackages(pkgs, binsTarget, opts = {}) { + if (pkgs.length === 0) + return []; + const allCmds = (0, unnest_1.default)((await Promise.all(pkgs.map(async (pkg) => getPackageBinsFromManifest(pkg.manifest, pkg.location, pkg.nodeExecPath)))).filter((cmds) => cmds.length)); + return _linkBins(allCmds, binsTarget, opts); + } + exports2.linkBinsOfPackages = linkBinsOfPackages; + async function _linkBins(allCmds, binsDir, opts) { + if (allCmds.length === 0) + return []; + await fs_1.promises.mkdir(binsDir, { recursive: true }); + const [cmdsWithOwnName, cmdsWithOtherNames] = (0, partition_1.default)(({ ownName }) => ownName, allCmds); + const results1 = await (0, p_settle_1.default)(cmdsWithOwnName.map(async (cmd) => linkBin(cmd, binsDir, opts))); + const usedNames = Object.fromEntries(cmdsWithOwnName.map((cmd) => [cmd.name, cmd.name])); + const results2 = await (0, p_settle_1.default)(cmdsWithOtherNames.map(async (cmd) => { + if (usedNames[cmd.name]) { + binsConflictLogger.debug({ + binaryName: cmd.name, + binsDir, + linkedPkgName: usedNames[cmd.name], + skippedPkgName: cmd.pkgName + }); + return Promise.resolve(void 0); + } + usedNames[cmd.name] = cmd.pkgName; + return linkBin(cmd, binsDir, opts); + })); + for (const result2 of [...results1, ...results2]) { + if (result2.isRejected) { + throw result2.reason; + } } - const matchArr = patterns.map(matcherFromPattern); - return (input) => matchArr.some((match) => match(input)); + return allCmds.map((cmd) => cmd.pkgName); } - exports2.default = matcher; - function matcherFromPattern(pattern) { - if (pattern === "*") { - return () => true; + async function isFromModules(filename) { + const real = await fs_1.promises.realpath(filename); + return (0, normalize_path_1.default)(real).includes("/node_modules/"); + } + async function getPackageBins(opts, target, nodeExecPath) { + const manifest = opts.allowExoticManifests ? await (0, read_project_manifest_1.safeReadProjectManifestOnly)(target) : await safeReadPkgJson(target); + if (manifest == null) { + return []; } - const escapedPattern = escape_string_regexp_1.default(pattern).replace(/\\\*/g, ".*"); - if (escapedPattern === pattern) { - return (input) => input === pattern; + if ((0, isEmpty_1.default)(manifest.bin) && !await isFromModules(target)) { + opts.warn(`Package in ${target} must have a non-empty bin field to get bin linked.`, "EMPTY_BIN"); } - const regexp = new RegExp(`^${escapedPattern}$`); - return (input) => regexp.test(input); + if (typeof manifest.bin === "string" && !manifest.name) { + throw new error_1.PnpmError("INVALID_PACKAGE_NAME", `Package in ${target} must have a name to get bin linked.`); + } + return getPackageBinsFromManifest(manifest, target, nodeExecPath); } - } -}); - -// ../resolve-workspace-range/lib/index.js -var require_lib24 = __commonJS({ - "../resolve-workspace-range/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var semver_1 = __importDefault(require_semver2()); - function default_1(range, versions) { - if (range === "*" || range === "^" || range === "~") { - return semver_1.default.maxSatisfying(versions, "*", { - includePrerelease: true + async function getPackageBinsFromManifest(manifest, pkgDir, nodeExecPath) { + const cmds = await (0, package_bins_1.getBinsFromPackageManifest)(manifest, pkgDir); + return cmds.map((cmd) => ({ + ...cmd, + ownName: cmd.name === manifest.name, + pkgName: manifest.name, + makePowerShellShim: POWER_SHELL_IS_SUPPORTED && manifest.name !== "pnpm", + nodeExecPath + })); + } + async function linkBin(cmd, binsDir, opts) { + const externalBinPath = path_1.default.join(binsDir, cmd.name); + if (IS_WINDOWS) { + const exePath = path_1.default.join(binsDir, `${cmd.name}${getExeExtension()}`); + if ((0, fs_1.existsSync)(exePath)) { + (0, logger_1.globalWarn)(`The target bin directory already contains an exe called ${cmd.name}, so removing ${exePath}`); + await (0, rimraf_1.default)(exePath); + } + } + if (opts?.preferSymlinkedExecutables && !IS_WINDOWS && cmd.nodeExecPath == null) { + try { + await (0, symlink_dir_1.default)(cmd.path, externalBinPath); + await (0, fix_bin_1.default)(cmd.path, 493); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + (0, logger_1.globalWarn)(`Failed to create bin at ${externalBinPath}. The source file at ${cmd.path} does not exist.`); + } + return; + } + try { + let nodePath; + if (opts?.extraNodePaths?.length) { + nodePath = []; + for (const modulesPath of await getBinNodePaths(cmd.path)) { + if (opts.extraNodePaths.includes(modulesPath)) + break; + nodePath.push(modulesPath); + } + nodePath.push(...opts.extraNodePaths); + } + await (0, cmd_shim_1.default)(cmd.path, externalBinPath, { + createPwshFile: cmd.makePowerShellShim, + nodePath, + nodeExecPath: cmd.nodeExecPath }); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + (0, logger_1.globalWarn)(`Failed to create bin at ${externalBinPath}. The source file at ${cmd.path} does not exist.`); + return; + } + if (EXECUTABLE_SHEBANG_SUPPORTED) { + await (0, fix_bin_1.default)(cmd.path, 493); + } + } + function getExeExtension() { + let cmdExtension; + if (process.env.PATHEXT) { + cmdExtension = process.env.PATHEXT.split(path_1.default.delimiter).find((ext) => ext.toUpperCase() === ".EXE"); + } + return cmdExtension ?? ".exe"; + } + async function getBinNodePaths(target) { + const targetDir = path_1.default.dirname(target); + try { + const targetRealPath = await fs_1.promises.realpath(targetDir); + return module_1.default["_nodeModulePaths"](targetRealPath); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + return module_1.default["_nodeModulePaths"](targetDir); + } + } + async function safeReadPkgJson(pkgDir) { + try { + return await (0, read_package_json_1.readPackageJsonFromDir)(pkgDir); + } catch (err) { + if (err.code === "ENOENT") { + return null; + } + throw err; } - return semver_1.default.maxSatisfying(versions, range, { - loose: true - }); } - exports2.default = default_1; } }); -// ../../node_modules/.pnpm/builtins@1.0.3/node_modules/builtins/builtins.json -var require_builtins = __commonJS({ - "../../node_modules/.pnpm/builtins@1.0.3/node_modules/builtins/builtins.json"(exports2, module2) { - module2.exports = [ - "assert", - "buffer", - "child_process", - "cluster", - "console", - "constants", - "crypto", - "dgram", - "dns", - "domain", - "events", - "fs", - "http", - "https", - "module", - "net", - "os", - "path", - "process", - "punycode", - "querystring", - "readline", - "repl", - "stream", - "string_decoder", - "timers", - "tls", - "tty", - "url", - "util", - "v8", - "vm", - "zlib" - ]; +// ../node_modules/.pnpm/npm-normalize-package-bin@2.0.0/node_modules/npm-normalize-package-bin/lib/index.js +var require_lib55 = __commonJS({ + "../node_modules/.pnpm/npm-normalize-package-bin@2.0.0/node_modules/npm-normalize-package-bin/lib/index.js"(exports2, module2) { + var { join, basename } = require("path"); + var normalize = (pkg) => !pkg.bin ? removeBin(pkg) : typeof pkg.bin === "string" ? normalizeString(pkg) : Array.isArray(pkg.bin) ? normalizeArray(pkg) : typeof pkg.bin === "object" ? normalizeObject(pkg) : removeBin(pkg); + var normalizeString = (pkg) => { + if (!pkg.name) { + return removeBin(pkg); + } + pkg.bin = { [pkg.name]: pkg.bin }; + return normalizeObject(pkg); + }; + var normalizeArray = (pkg) => { + pkg.bin = pkg.bin.reduce((acc, k) => { + acc[basename(k)] = k; + return acc; + }, {}); + return normalizeObject(pkg); + }; + var removeBin = (pkg) => { + delete pkg.bin; + return pkg; + }; + var normalizeObject = (pkg) => { + const orig = pkg.bin; + const clean = {}; + let hasBins = false; + Object.keys(orig).forEach((binKey) => { + const base = join("/", basename(binKey.replace(/\\|:/g, "/"))).slice(1); + if (typeof orig[binKey] !== "string" || !base) { + return; + } + const binTarget = join("/", orig[binKey]).replace(/\\/g, "/").slice(1); + if (!binTarget) { + return; + } + clean[base] = binTarget; + hasBins = true; + }); + if (hasBins) { + pkg.bin = clean; + } else { + delete pkg.bin; + } + return pkg; + }; + module2.exports = normalize; } }); -// ../../node_modules/.pnpm/validate-npm-package-name@3.0.0/node_modules/validate-npm-package-name/index.js -var require_validate_npm_package_name = __commonJS({ - "../../node_modules/.pnpm/validate-npm-package-name@3.0.0/node_modules/validate-npm-package-name/index.js"(exports2, module2) { +// ../node_modules/.pnpm/npm-bundled@2.0.1/node_modules/npm-bundled/lib/index.js +var require_lib56 = __commonJS({ + "../node_modules/.pnpm/npm-bundled@2.0.1/node_modules/npm-bundled/lib/index.js"(exports2, module2) { "use strict"; - var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$"); - var builtins = require_builtins(); - var blacklist = [ - "node_modules", - "favicon.ico" - ]; - var validate = module2.exports = function(name) { - var warnings = []; - var errors = []; - if (name === null) { - errors.push("name cannot be null"); - return done(warnings, errors); - } - if (name === void 0) { - errors.push("name cannot be undefined"); - return done(warnings, errors); + var fs2 = require("fs"); + var path2 = require("path"); + var EE = require("events").EventEmitter; + var normalizePackageBin = require_lib55(); + var BundleWalker = class extends EE { + constructor(opt) { + opt = opt || {}; + super(opt); + this.path = path2.resolve(opt.path || process.cwd()); + this.parent = opt.parent || null; + if (this.parent) { + this.result = this.parent.result; + if (!this.parent.parent) { + const base = path2.basename(this.path); + const scope = path2.basename(path2.dirname(this.path)); + this.result.add(/^@/.test(scope) ? scope + "/" + base : base); + } + this.root = this.parent.root; + this.packageJsonCache = this.parent.packageJsonCache; + } else { + this.result = /* @__PURE__ */ new Set(); + this.root = this.path; + this.packageJsonCache = opt.packageJsonCache || /* @__PURE__ */ new Map(); + } + this.seen = /* @__PURE__ */ new Set(); + this.didDone = false; + this.children = 0; + this.node_modules = []; + this.package = null; + this.bundle = null; } - if (typeof name !== "string") { - errors.push("name must be a string"); - return done(warnings, errors); + addListener(ev, fn2) { + return this.on(ev, fn2); } - if (!name.length) { - errors.push("name length must be greater than zero"); + on(ev, fn2) { + const ret = super.on(ev, fn2); + if (ev === "done" && this.didDone) { + this.emit("done", this.result); + } + return ret; } - if (name.match(/^\./)) { - errors.push("name cannot start with a period"); + done() { + if (!this.didDone) { + this.didDone = true; + if (!this.parent) { + const res = Array.from(this.result); + this.result = res; + this.emit("done", res); + } else { + this.emit("done"); + } + } } - if (name.match(/^_/)) { - errors.push("name cannot start with an underscore"); + start() { + const pj = path2.resolve(this.path, "package.json"); + if (this.packageJsonCache.has(pj)) { + this.onPackage(this.packageJsonCache.get(pj)); + } else { + this.readPackageJson(pj); + } + return this; } - if (name.trim() !== name) { - errors.push("name cannot contain leading or trailing spaces"); + readPackageJson(pj) { + fs2.readFile(pj, (er, data) => er ? this.done() : this.onPackageJson(pj, data)); } - blacklist.forEach(function(blacklistedName) { - if (name.toLowerCase() === blacklistedName) { - errors.push(blacklistedName + " is a blacklisted name"); + onPackageJson(pj, data) { + try { + this.package = normalizePackageBin(JSON.parse(data + "")); + } catch (er) { + return this.done(); } - }); - builtins.forEach(function(builtin) { - if (name.toLowerCase() === builtin) { - warnings.push(builtin + " is a core module name"); + this.packageJsonCache.set(pj, this.package); + this.onPackage(this.package); + } + allDepsBundled(pkg) { + return Object.keys(pkg.dependencies || {}).concat( + Object.keys(pkg.optionalDependencies || {}) + ); + } + onPackage(pkg) { + const bdRaw = this.parent ? this.allDepsBundled(pkg) : pkg.bundleDependencies || pkg.bundledDependencies || []; + const bd = Array.from(new Set( + Array.isArray(bdRaw) ? bdRaw : bdRaw === true ? this.allDepsBundled(pkg) : Object.keys(bdRaw) + )); + if (!bd.length) { + return this.done(); } - }); - if (name.length > 214) { - warnings.push("name can no longer contain more than 214 characters"); + this.bundle = bd; + this.readModules(); } - if (name.toLowerCase() !== name) { - warnings.push("name can no longer contain capital letters"); + readModules() { + readdirNodeModules(this.path + "/node_modules", (er, nm) => er ? this.onReaddir([]) : this.onReaddir(nm)); } - if (/[~'!()*]/.test(name.split("/").slice(-1)[0])) { - warnings.push(`name can no longer contain special characters ("~'!()*")`); + onReaddir(nm) { + this.node_modules = nm; + this.bundle.forEach((dep) => this.childDep(dep)); + if (this.children === 0) { + this.done(); + } } - if (encodeURIComponent(name) !== name) { - var nameMatch = name.match(scopedPackagePattern); - if (nameMatch) { - var user = nameMatch[1]; - var pkg = nameMatch[2]; - if (encodeURIComponent(user) === user && encodeURIComponent(pkg) === pkg) { - return done(warnings, errors); + childDep(dep) { + if (this.node_modules.indexOf(dep) !== -1) { + if (!this.seen.has(dep)) { + this.seen.add(dep); + this.child(dep); } + } else if (this.parent) { + this.parent.childDep(dep); } - errors.push("name can only contain URL-friendly characters"); } - return done(warnings, errors); - }; - validate.scopedPackagePattern = scopedPackagePattern; - var done = function(warnings, errors) { - var result = { - validForNewPackages: errors.length === 0 && warnings.length === 0, - validForOldPackages: errors.length === 0, - warnings, - errors - }; - if (!result.warnings.length) - delete result.warnings; - if (!result.errors.length) - delete result.errors; - return result; - }; - } -}); - -// ../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host-info.js -var require_git_host_info = __commonJS({ - "../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host-info.js"(exports2, module2) { - "use strict"; - var maybeJoin = (...args2) => args2.every((arg) => arg) ? args2.join("") : ""; - var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : ""; - var defaults = { - sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`, - sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, - browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`, - browsefiletemplate: ({ domain, user, project, committish, treepath, path, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path}${maybeJoin("#", hashformat(fragment || ""))}`, - docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`, - httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, - filetemplate: ({ domain, user, project, committish, path }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path}`, - shortcuttemplate: ({ type, user, project, committish }) => `${type}:${user}/${project}${maybeJoin("#", committish)}`, - pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`, - bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`, - hashformat: formatHashFragment + child(dep) { + const p = this.path + "/node_modules/" + dep; + this.children += 1; + const child = new BundleWalker({ + path: p, + parent: this + }); + child.on("done", (_) => { + if (--this.children === 0) { + this.done(); + } + }); + child.start(); + } }; - var gitHosts = {}; - gitHosts.github = Object.assign({}, defaults, { - protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"], - domain: "github.com", - treepath: "tree", - filetemplate: ({ auth, user, project, committish, path }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path}`, - gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, - tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish) || "master"}`, - extract: (url) => { - let [, user, project, type, committish] = url.pathname.split("/", 5); - if (type && type !== "tree") { - return; - } - if (!type) { - committish = url.hash.slice(1); - } - if (project && project.endsWith(".git")) { - project = project.slice(0, -4); - } - if (!user || !project) { - return; - } - return { user, project, committish }; + var BundleWalkerSync = class extends BundleWalker { + start() { + super.start(); + this.done(); + return this; } - }); - gitHosts.bitbucket = Object.assign({}, defaults, { - protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], - domain: "bitbucket.org", - treepath: "src", - tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish) || "master"}.tar.gz`, - extract: (url) => { - let [, user, project, aux] = url.pathname.split("/", 4); - if (["get"].includes(aux)) { - return; - } - if (project && project.endsWith(".git")) { - project = project.slice(0, -4); + readPackageJson(pj) { + try { + this.onPackageJson(pj, fs2.readFileSync(pj)); + } catch { } - if (!user || !project) { - return; + return this; + } + readModules() { + try { + this.onReaddir(readdirNodeModulesSync(this.path + "/node_modules")); + } catch { + this.onReaddir([]); } - return { user, project, committish: url.hash.slice(1) }; } - }); - gitHosts.gitlab = Object.assign({}, defaults, { - protocols: ["git+ssh:", "git+https:", "ssh:", "https:"], - domain: "gitlab.com", - treepath: "tree", - httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`, - tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/api/v4/projects/${user}%2F${project}/repository/archive.tar.gz?ref=${maybeEncode(committish) || "master"}`, - extract: (url) => { - const path = url.pathname.slice(1); - if (path.includes("/-/") || path.includes("/archive.tar.gz")) { - return; + child(dep) { + new BundleWalkerSync({ + path: this.path + "/node_modules/" + dep, + parent: this + }).start(); + } + }; + var readdirNodeModules = (nm, cb) => { + fs2.readdir(nm, (er, set) => { + if (er) { + cb(er); + } else { + const scopes = set.filter((f) => /^@/.test(f)); + if (!scopes.length) { + cb(null, set); + } else { + const unscoped = set.filter((f) => !/^@/.test(f)); + let count = scopes.length; + scopes.forEach((scope) => { + fs2.readdir(nm + "/" + scope, (readdirEr, pkgs) => { + if (readdirEr || !pkgs.length) { + unscoped.push(scope); + } else { + unscoped.push.apply(unscoped, pkgs.map((p) => scope + "/" + p)); + } + if (--count === 0) { + cb(null, unscoped); + } + }); + }); + } } - const segments = path.split("/"); - let project = segments.pop(); - if (project.endsWith(".git")) { - project = project.slice(0, -4); + }); + }; + var readdirNodeModulesSync = (nm) => { + const set = fs2.readdirSync(nm); + const unscoped = set.filter((f) => !/^@/.test(f)); + const scopes = set.filter((f) => /^@/.test(f)).map((scope) => { + try { + const pkgs = fs2.readdirSync(nm + "/" + scope); + return pkgs.length ? pkgs.map((p) => scope + "/" + p) : [scope]; + } catch (er) { + return [scope]; } - const user = segments.join("/"); - if (!user || !project) { - return; + }).reduce((a, b) => a.concat(b), []); + return unscoped.concat(scopes); + }; + var walk = (options, callback) => { + const p = new Promise((resolve, reject) => { + new BundleWalker(options).on("done", resolve).on("error", reject).start(); + }); + return callback ? p.then((res) => callback(null, res), callback) : p; + }; + var walkSync = (options) => { + return new BundleWalkerSync(options).start().result; + }; + module2.exports = walk; + walk.sync = walkSync; + walk.BundleWalker = BundleWalker; + walk.BundleWalkerSync = BundleWalkerSync; + } +}); + +// ../node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/lib/path.js +var require_path4 = __commonJS({ + "../node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/lib/path.js"(exports2, module2) { + var isWindows = typeof process === "object" && process && process.platform === "win32"; + module2.exports = isWindows ? { sep: "\\" } : { sep: "/" }; + } +}); + +// ../node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.js +var require_brace_expansion2 = __commonJS({ + "../node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.js"(exports2, module2) { + var balanced = require_balanced_match(); + module2.exports = expandTop; + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + function numeric(str) { + return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + } + function unescapeBraces(str) { + return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + } + function parseCommaParts(str) { + if (!str) + return [""]; + var parts = []; + var m = balanced("{", "}", str); + if (!m) + return str.split(","); + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(","); + p[p.length - 1] += "{" + body + "}"; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length - 1] += postParts.shift(); + p.push.apply(p, postParts); + } + parts.push.apply(parts, p); + return parts; + } + function expandTop(str) { + if (!str) + return []; + if (str.substr(0, 2) === "{}") { + str = "\\{\\}" + str.substr(2); + } + return expand(escapeBraces(str), true).map(unescapeBraces); + } + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function expand(str, isTop) { + var expansions = []; + var m = balanced("{", "}", str); + if (!m) + return [str]; + var pre = m.pre; + var post = m.post.length ? expand(m.post, false) : [""]; + if (/\$$/.test(m.pre)) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + "{" + m.body + "}" + post[k]; + expansions.push(expansion); } - return { user, project, committish: url.hash.slice(1) }; - } - }); - gitHosts.gist = Object.assign({}, defaults, { - protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"], - domain: "gist.github.com", - sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`, - sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`, - browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, - browsefiletemplate: ({ domain, project, committish, path, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path))}`, - docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`, - httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`, - filetemplate: ({ user, project, committish, path }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path}`, - shortcuttemplate: ({ type, project, committish }) => `${type}:${project}${maybeJoin("#", committish)}`, - pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`, - bugstemplate: ({ domain, project }) => `https://${domain}/${project}`, - gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`, - tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish) || "master"}`, - extract: (url) => { - let [, user, project, aux] = url.pathname.split("/", 4); - if (aux === "raw") { - return; + } else { + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (m.post.match(/,.*\}/)) { + str = m.pre + "{" + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } } - if (!project) { - if (!user) { - return; + var N; + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length); + var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + N = []; + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") + c = ""; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join("0"); + if (i < 0) + c = "-" + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = []; + for (var j = 0; j < n.length; j++) { + N.push.apply(N, expand(n[j], false)); } - project = user; - user = null; } - if (project.endsWith(".git")) { - project = project.slice(0, -4); + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } } - return { user, project, committish: url.hash.slice(1) }; - }, - hashformat: function(fragment) { - return fragment && "file-" + formatHashFragment(fragment); } - }); - var names = Object.keys(gitHosts); - gitHosts.byShortcut = {}; - gitHosts.byDomain = {}; - for (const name of names) { - gitHosts.byShortcut[`${name}:`] = name; - gitHosts.byDomain[gitHosts[name].domain] = name; - } - function formatHashFragment(fragment) { - return fragment.toLowerCase().replace(/^\W+|\/|\W+$/g, "").replace(/\W+/g, "-"); + return expansions; } - module2.exports = gitHosts; } }); -// ../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host.js -var require_git_host = __commonJS({ - "../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/git-host.js"(exports2, module2) { - "use strict"; - var gitHosts = require_git_host_info(); - var GitHost = class { - constructor(type, user, auth, project, committish, defaultRepresentation, opts = {}) { - Object.assign(this, gitHosts[type]); - this.type = type; - this.user = user; - this.auth = auth; - this.project = project; - this.committish = committish; - this.default = defaultRepresentation; - this.opts = opts; +// ../node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/minimatch.js +var require_minimatch2 = __commonJS({ + "../node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/minimatch.js"(exports2, module2) { + var minimatch = module2.exports = (p, pattern, options = {}) => { + assertValidPattern(pattern); + if (!options.nocomment && pattern.charAt(0) === "#") { + return false; } - hash() { - return this.committish ? `#${this.committish}` : ""; + return new Minimatch(pattern, options).match(p); + }; + module2.exports = minimatch; + var path2 = require_path4(); + minimatch.sep = path2.sep; + var GLOBSTAR = Symbol("globstar **"); + minimatch.GLOBSTAR = GLOBSTAR; + var expand = require_brace_expansion2(); + var plTypes = { + "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, + "?": { open: "(?:", close: ")?" }, + "+": { open: "(?:", close: ")+" }, + "*": { open: "(?:", close: ")*" }, + "@": { open: "(?:", close: ")" } + }; + var qmark = "[^/]"; + var star = qmark + "*?"; + var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; + var charSet = (s) => s.split("").reduce((set, c) => { + set[c] = true; + return set; + }, {}); + var reSpecials = charSet("().*{}+?[]^$\\!"); + var addPatternStartSet = charSet("[.("); + var slashSplit = /\/+/; + minimatch.filter = (pattern, options = {}) => (p, i, list) => minimatch(p, pattern, options); + var ext = (a, b = {}) => { + const t = {}; + Object.keys(a).forEach((k) => t[k] = a[k]); + Object.keys(b).forEach((k) => t[k] = b[k]); + return t; + }; + minimatch.defaults = (def) => { + if (!def || typeof def !== "object" || !Object.keys(def).length) { + return minimatch; } - ssh(opts) { - return this._fill(this.sshtemplate, opts); + const orig = minimatch; + const m = (p, pattern, options) => orig(p, pattern, ext(def, options)); + m.Minimatch = class Minimatch extends orig.Minimatch { + constructor(pattern, options) { + super(pattern, ext(def, options)); + } + }; + m.Minimatch.defaults = (options) => orig.defaults(ext(def, options)).Minimatch; + m.filter = (pattern, options) => orig.filter(pattern, ext(def, options)); + m.defaults = (options) => orig.defaults(ext(def, options)); + m.makeRe = (pattern, options) => orig.makeRe(pattern, ext(def, options)); + m.braceExpand = (pattern, options) => orig.braceExpand(pattern, ext(def, options)); + m.match = (list, pattern, options) => orig.match(list, pattern, ext(def, options)); + return m; + }; + minimatch.braceExpand = (pattern, options) => braceExpand(pattern, options); + var braceExpand = (pattern, options = {}) => { + assertValidPattern(pattern); + if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + return [pattern]; } - _fill(template, opts) { - if (typeof template === "function") { - const options = { ...this, ...this.opts, ...opts }; - if (!options.path) { - options.path = ""; - } - if (options.path.startsWith("/")) { - options.path = options.path.slice(1); + return expand(pattern); + }; + var MAX_PATTERN_LENGTH = 1024 * 64; + var assertValidPattern = (pattern) => { + if (typeof pattern !== "string") { + throw new TypeError("invalid pattern"); + } + if (pattern.length > MAX_PATTERN_LENGTH) { + throw new TypeError("pattern is too long"); + } + }; + var SUBPARSE = Symbol("subparse"); + minimatch.makeRe = (pattern, options) => new Minimatch(pattern, options || {}).makeRe(); + minimatch.match = (list, pattern, options = {}) => { + const mm = new Minimatch(pattern, options); + list = list.filter((f) => mm.match(f)); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + var globUnescape = (s) => s.replace(/\\(.)/g, "$1"); + var charUnescape = (s) => s.replace(/\\([^-\]])/g, "$1"); + var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + var braExpEscape = (s) => s.replace(/[[\]\\]/g, "\\$&"); + var Minimatch = class { + constructor(pattern, options) { + assertValidPattern(pattern); + if (!options) + options = {}; + this.options = options; + this.set = []; + this.pattern = pattern; + this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options.allowWindowsEscape === false; + if (this.windowsPathsNoEscape) { + this.pattern = this.pattern.replace(/\\/g, "/"); + } + this.regexp = null; + this.negate = false; + this.comment = false; + this.empty = false; + this.partial = !!options.partial; + this.make(); + } + debug() { + } + make() { + const pattern = this.pattern; + const options = this.options; + if (!options.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + let set = this.globSet = this.braceExpand(); + if (options.debug) + this.debug = (...args2) => console.error(...args2); + this.debug(this.pattern, set); + set = this.globParts = set.map((s) => s.split(slashSplit)); + this.debug(this.pattern, set); + set = set.map((s, si, set2) => s.map(this.parse, this)); + this.debug(this.pattern, set); + set = set.filter((s) => s.indexOf(false) === -1); + this.debug(this.pattern, set); + this.set = set; + } + parseNegate() { + if (this.options.nonegate) + return; + const pattern = this.pattern; + let negate = false; + let negateOffset = 0; + for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) { + negate = !negate; + negateOffset++; + } + if (negateOffset) + this.pattern = pattern.slice(negateOffset); + this.negate = negate; + } + // set partial to true to test if, for example, + // "/a/b" matches the start of "/*/b/*/d" + // Partial means, if you run out of file before you run + // out of pattern, then that's fine, as long as all + // the parts match. + matchOne(file, pattern, partial) { + var options = this.options; + this.debug( + "matchOne", + { "this": this, file, pattern } + ); + this.debug("matchOne", file.length, pattern.length); + for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { + this.debug("matchOne loop"); + var p = pattern[pi]; + var f = file[fi]; + this.debug(pattern, p, f); + if (p === false) + return false; + if (p === GLOBSTAR) { + this.debug("GLOBSTAR", [pattern, p, f]); + var fr = fi; + var pr = pi + 1; + if (pr === pl) { + this.debug("** at the end"); + for (; fi < fl; fi++) { + if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") + return false; + } + return true; + } + while (fr < fl) { + var swallowee = file[fr]; + this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug("globstar found match!", fr, fl, swallowee); + return true; + } else { + if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { + this.debug("dot detected!", file, fr, pattern, pr); + break; + } + this.debug("globstar swallow a segment, and continue"); + fr++; + } + } + if (partial) { + this.debug("\n>>> no match, partial?", file, fr, pattern, pr); + if (fr === fl) + return true; + } + return false; } - if (options.noCommittish) { - options.committish = null; + var hit; + if (typeof p === "string") { + hit = f === p; + this.debug("string match", p, f, hit); + } else { + hit = f.match(p); + this.debug("pattern match", p, f, hit); } - const result = template(options); - return options.noGitPlus && result.startsWith("git+") ? result.slice(4) : result; + if (!hit) + return false; } - return null; + if (fi === fl && pi === pl) { + return true; + } else if (fi === fl) { + return partial; + } else if (pi === pl) { + return fi === fl - 1 && file[fi] === ""; + } + throw new Error("wtf?"); } - sshurl(opts) { - return this._fill(this.sshurltemplate, opts); + braceExpand() { + return braceExpand(this.pattern, this.options); } - browse(path, fragment, opts) { - if (typeof path !== "string") { - return this._fill(this.browsetemplate, path); + parse(pattern, isSub) { + assertValidPattern(pattern); + const options = this.options; + if (pattern === "**") { + if (!options.noglobstar) + return GLOBSTAR; + else + pattern = "*"; } - if (typeof fragment !== "string") { - opts = fragment; - fragment = null; + if (pattern === "") + return ""; + let re = ""; + let hasMagic = false; + let escaping = false; + const patternListStack = []; + const negativeLists = []; + let stateChar; + let inClass = false; + let reClassStart = -1; + let classStart = -1; + let cs; + let pl; + let sp; + let dotTravAllowed = pattern.charAt(0) === "."; + let dotFileAllowed = options.dot || dotTravAllowed; + const patternStart = () => dotTravAllowed ? "" : dotFileAllowed ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + const subPatternStart = (p) => p.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + const clearStateChar = () => { + if (stateChar) { + switch (stateChar) { + case "*": + re += star; + hasMagic = true; + break; + case "?": + re += qmark; + hasMagic = true; + break; + default: + re += "\\" + stateChar; + break; + } + this.debug("clearStateChar %j %j", stateChar, re); + stateChar = false; + } + }; + for (let i = 0, c; i < pattern.length && (c = pattern.charAt(i)); i++) { + this.debug("%s %s %s %j", pattern, i, re, c); + if (escaping) { + if (c === "/") { + return false; + } + if (reSpecials[c]) { + re += "\\"; + } + re += c; + escaping = false; + continue; + } + switch (c) { + case "/": { + return false; + } + case "\\": + if (inClass && pattern.charAt(i + 1) === "-") { + re += c; + continue; + } + clearStateChar(); + escaping = true; + continue; + case "?": + case "*": + case "+": + case "@": + case "!": + this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); + if (inClass) { + this.debug(" in class"); + if (c === "!" && i === classStart + 1) + c = "^"; + re += c; + continue; + } + this.debug("call clearStateChar %j", stateChar); + clearStateChar(); + stateChar = c; + if (options.noext) + clearStateChar(); + continue; + case "(": { + if (inClass) { + re += "("; + continue; + } + if (!stateChar) { + re += "\\("; + continue; + } + const plEntry = { + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }; + this.debug(this.pattern, " ", plEntry); + patternListStack.push(plEntry); + re += plEntry.open; + if (plEntry.start === 0 && plEntry.type !== "!") { + dotTravAllowed = true; + re += subPatternStart(pattern.slice(i + 1)); + } + this.debug("plType %j %j", stateChar, re); + stateChar = false; + continue; + } + case ")": { + const plEntry = patternListStack[patternListStack.length - 1]; + if (inClass || !plEntry) { + re += "\\)"; + continue; + } + patternListStack.pop(); + clearStateChar(); + hasMagic = true; + pl = plEntry; + re += pl.close; + if (pl.type === "!") { + negativeLists.push(Object.assign(pl, { reEnd: re.length })); + } + continue; + } + case "|": { + const plEntry = patternListStack[patternListStack.length - 1]; + if (inClass || !plEntry) { + re += "\\|"; + continue; + } + clearStateChar(); + re += "|"; + if (plEntry.start === 0 && plEntry.type !== "!") { + dotTravAllowed = true; + re += subPatternStart(pattern.slice(i + 1)); + } + continue; + } + case "[": + clearStateChar(); + if (inClass) { + re += "\\" + c; + continue; + } + inClass = true; + classStart = i; + reClassStart = re.length; + re += c; + continue; + case "]": + if (i === classStart + 1 || !inClass) { + re += "\\" + c; + continue; + } + cs = pattern.substring(classStart + 1, i); + try { + RegExp("[" + braExpEscape(charUnescape(cs)) + "]"); + re += c; + } catch (er) { + re = re.substring(0, reClassStart) + "(?:$.)"; + } + hasMagic = true; + inClass = false; + continue; + default: + clearStateChar(); + if (reSpecials[c] && !(c === "^" && inClass)) { + re += "\\"; + } + re += c; + break; + } + } + if (inClass) { + cs = pattern.slice(classStart + 1); + sp = this.parse(cs, SUBPARSE); + re = re.substring(0, reClassStart) + "\\[" + sp[0]; + hasMagic = hasMagic || sp[1]; + } + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + let tail; + tail = re.slice(pl.reStart + pl.open.length); + this.debug("setting tail", re, pl); + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, (_, $1, $2) => { + if (!$2) { + $2 = "\\"; + } + return $1 + $1 + $2 + "|"; + }); + this.debug("tail=%j\n %s", tail, tail, pl, re); + const t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; + hasMagic = true; + re = re.slice(0, pl.reStart) + t + "\\(" + tail; + } + clearStateChar(); + if (escaping) { + re += "\\\\"; + } + const addPatternStart = addPatternStartSet[re.charAt(0)]; + for (let n = negativeLists.length - 1; n > -1; n--) { + const nl = negativeLists[n]; + const nlBefore = re.slice(0, nl.reStart); + const nlFirst = re.slice(nl.reStart, nl.reEnd - 8); + let nlAfter = re.slice(nl.reEnd); + const nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + nlAfter; + const closeParensBefore = nlBefore.split(")").length; + const openParensBefore = nlBefore.split("(").length - closeParensBefore; + let cleanAfter = nlAfter; + for (let i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + } + nlAfter = cleanAfter; + const dollar = nlAfter === "" && isSub !== SUBPARSE ? "(?:$|\\/)" : ""; + re = nlBefore + nlFirst + nlAfter + dollar + nlLast; + } + if (re !== "" && hasMagic) { + re = "(?=.)" + re; + } + if (addPatternStart) { + re = patternStart() + re; + } + if (isSub === SUBPARSE) { + return [re, hasMagic]; + } + if (options.nocase && !hasMagic) { + hasMagic = pattern.toUpperCase() !== pattern.toLowerCase(); + } + if (!hasMagic) { + return globUnescape(pattern); + } + const flags = options.nocase ? "i" : ""; + try { + return Object.assign(new RegExp("^" + re + "$", flags), { + _glob: pattern, + _src: re + }); + } catch (er) { + return new RegExp("$."); } - return this._fill(this.browsefiletemplate, { ...opts, fragment, path }); - } - docs(opts) { - return this._fill(this.docstemplate, opts); - } - bugs(opts) { - return this._fill(this.bugstemplate, opts); - } - https(opts) { - return this._fill(this.httpstemplate, opts); - } - git(opts) { - return this._fill(this.gittemplate, opts); - } - shortcut(opts) { - return this._fill(this.shortcuttemplate, opts); - } - path(opts) { - return this._fill(this.pathtemplate, opts); - } - tarball(opts) { - return this._fill(this.tarballtemplate, { ...opts, noCommittish: false }); - } - file(path, opts) { - return this._fill(this.filetemplate, { ...opts, path }); } - getDefaultRepresentation() { - return this.default; + makeRe() { + if (this.regexp || this.regexp === false) + return this.regexp; + const set = this.set; + if (!set.length) { + this.regexp = false; + return this.regexp; + } + const options = this.options; + const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; + const flags = options.nocase ? "i" : ""; + let re = set.map((pattern) => { + pattern = pattern.map( + (p) => typeof p === "string" ? regExpEscape(p) : p === GLOBSTAR ? GLOBSTAR : p._src + ).reduce((set2, p) => { + if (!(set2[set2.length - 1] === GLOBSTAR && p === GLOBSTAR)) { + set2.push(p); + } + return set2; + }, []); + pattern.forEach((p, i) => { + if (p !== GLOBSTAR || pattern[i - 1] === GLOBSTAR) { + return; + } + if (i === 0) { + if (pattern.length > 1) { + pattern[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + pattern[i + 1]; + } else { + pattern[i] = twoStar; + } + } else if (i === pattern.length - 1) { + pattern[i - 1] += "(?:\\/|" + twoStar + ")?"; + } else { + pattern[i - 1] += "(?:\\/|\\/" + twoStar + "\\/)" + pattern[i + 1]; + pattern[i + 1] = GLOBSTAR; + } + }); + return pattern.filter((p) => p !== GLOBSTAR).join("/"); + }).join("|"); + re = "^(?:" + re + ")$"; + if (this.negate) + re = "^(?!" + re + ").*$"; + try { + this.regexp = new RegExp(re, flags); + } catch (ex) { + this.regexp = false; + } + return this.regexp; } - toString(opts) { - if (this.default && typeof this[this.default] === "function") { - return this[this.default](opts); + match(f, partial = this.partial) { + this.debug("match", f, this.pattern); + if (this.comment) + return false; + if (this.empty) + return f === ""; + if (f === "/" && partial) + return true; + const options = this.options; + if (path2.sep !== "/") { + f = f.split(path2.sep).join("/"); + } + f = f.split(slashSplit); + this.debug(this.pattern, "split", f); + const set = this.set; + this.debug(this.pattern, "set", set); + let filename; + for (let i = f.length - 1; i >= 0; i--) { + filename = f[i]; + if (filename) + break; } - return this.sshurl(opts); + for (let i = 0; i < set.length; i++) { + const pattern = set[i]; + let file = f; + if (options.matchBase && pattern.length === 1) { + file = [filename]; + } + const hit = this.matchOne(file, pattern, partial); + if (hit) { + if (options.flipNegate) + return true; + return !this.negate; + } + } + if (options.flipNegate) + return false; + return this.negate; + } + static defaults(def) { + return minimatch.defaults(def).Minimatch; } }; - module2.exports = GitHost; + minimatch.Minimatch = Minimatch; } }); -// ../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/index.js -var require_hosted_git_info = __commonJS({ - "../../node_modules/.pnpm/@zkochan+hosted-git-info@4.0.2/node_modules/@zkochan/hosted-git-info/index.js"(exports2, module2) { +// ../node_modules/.pnpm/ignore-walk@5.0.1/node_modules/ignore-walk/lib/index.js +var require_lib57 = __commonJS({ + "../node_modules/.pnpm/ignore-walk@5.0.1/node_modules/ignore-walk/lib/index.js"(exports2, module2) { "use strict"; - var url = require("url"); - var gitHosts = require_git_host_info(); - var GitHost = module2.exports = require_git_host(); - var LRU = require_lru_cache(); - var cache = new LRU({ max: 1e3 }); - var protocolToRepresentationMap = { - "git+ssh:": "sshurl", - "git+https:": "https", - "ssh:": "sshurl", - "git:": "git" - }; - function protocolToRepresentation(protocol) { - return protocolToRepresentationMap[protocol] || protocol.slice(0, -1); - } - var authProtocols = { - "git:": true, - "https:": true, - "git+https:": true, - "http:": true, - "git+http:": true - }; - var knownProtocols = Object.keys(gitHosts.byShortcut).concat(["http:", "https:", "git:", "git+ssh:", "git+https:", "ssh:"]); - module2.exports.fromUrl = function(giturl, opts) { - if (typeof giturl !== "string") { - return; - } - const key = giturl + JSON.stringify(opts || {}); - if (!cache.has(key)) { - cache.set(key, fromUrl(giturl, opts)); - } - return cache.get(key); - }; - function fromUrl(giturl, opts) { - if (!giturl) { - return; - } - const url2 = isGitHubShorthand(giturl) ? "github:" + giturl : correctProtocol(giturl); - const parsed = parseGitUrl(url2); - if (!parsed) { - return parsed; - } - const gitHostShortcut = gitHosts.byShortcut[parsed.protocol]; - const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname]; - const gitHostName = gitHostShortcut || gitHostDomain; - if (!gitHostName) { - return; + var fs2 = require("fs"); + var path2 = require("path"); + var EE = require("events").EventEmitter; + var Minimatch = require_minimatch2().Minimatch; + var Walker = class extends EE { + constructor(opts) { + opts = opts || {}; + super(opts); + this.isSymbolicLink = opts.isSymbolicLink; + this.path = opts.path || process.cwd(); + this.basename = path2.basename(this.path); + this.ignoreFiles = opts.ignoreFiles || [".ignore"]; + this.ignoreRules = {}; + this.parent = opts.parent || null; + this.includeEmpty = !!opts.includeEmpty; + this.root = this.parent ? this.parent.root : this.path; + this.follow = !!opts.follow; + this.result = this.parent ? this.parent.result : /* @__PURE__ */ new Set(); + this.entries = null; + this.sawError = false; } - const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain]; - let auth = null; - if (authProtocols[parsed.protocol] && (parsed.username || parsed.password)) { - auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`; + sort(a, b) { + return a.localeCompare(b, "en"); } - let committish = null; - let user = null; - let project = null; - let defaultRepresentation = null; - try { - if (gitHostShortcut) { - let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname; - const firstAt = pathname.indexOf("@"); - if (firstAt > -1) { - pathname = pathname.slice(firstAt + 1); + emit(ev, data) { + let ret = false; + if (!(this.sawError && ev === "error")) { + if (ev === "error") { + this.sawError = true; + } else if (ev === "done" && !this.parent) { + data = Array.from(data).map((e) => /^@/.test(e) ? `./${e}` : e).sort(this.sort); + this.result = data; } - const lastSlash = pathname.lastIndexOf("/"); - if (lastSlash > -1) { - user = decodeURIComponent(pathname.slice(0, lastSlash)); - if (!user) { - user = null; - } - project = decodeURIComponent(pathname.slice(lastSlash + 1)); + if (ev === "error" && this.parent) { + ret = this.parent.emit("error", data); } else { - project = decodeURIComponent(pathname); - } - if (project.endsWith(".git")) { - project = project.slice(0, -4); - } - if (parsed.hash) { - committish = decodeURIComponent(parsed.hash.slice(1)); - } - defaultRepresentation = "shortcut"; - } else { - if (!gitHostInfo.protocols.includes(parsed.protocol)) { - return; - } - const segments = gitHostInfo.extract(parsed); - if (!segments) { - return; + ret = super.emit(ev, data); } - user = segments.user && decodeURIComponent(segments.user); - project = decodeURIComponent(segments.project); - committish = decodeURIComponent(segments.committish); - defaultRepresentation = protocolToRepresentation(parsed.protocol); - } - } catch (err) { - if (err instanceof URIError) { - return; - } else { - throw err; } + return ret; } - return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts); - } - var correctProtocol = (arg) => { - const firstColon = arg.indexOf(":"); - const proto = arg.slice(0, firstColon + 1); - if (knownProtocols.includes(proto)) { - return arg; + start() { + fs2.readdir(this.path, (er, entries) => er ? this.emit("error", er) : this.onReaddir(entries)); + return this; } - const firstAt = arg.indexOf("@"); - if (firstAt > -1) { - if (firstAt > firstColon) { - return `git+ssh://${arg}`; + isIgnoreFile(e) { + return e !== "." && e !== ".." && this.ignoreFiles.indexOf(e) !== -1; + } + onReaddir(entries) { + this.entries = entries; + if (entries.length === 0) { + if (this.includeEmpty) { + this.result.add(this.path.slice(this.root.length + 1)); + } + this.emit("done", this.result); } else { - return arg; + const hasIg = this.entries.some((e) => this.isIgnoreFile(e)); + if (hasIg) { + this.addIgnoreFiles(); + } else { + this.filterEntries(); + } } } - const doubleSlash = arg.indexOf("//"); - if (doubleSlash === firstColon + 1) { - return arg; - } - return arg.slice(0, firstColon + 1) + "//" + arg.slice(firstColon + 1); - }; - var isGitHubShorthand = (arg) => { - const firstHash = arg.indexOf("#"); - const firstSlash = arg.indexOf("/"); - const secondSlash = arg.indexOf("/", firstSlash + 1); - const firstColon = arg.indexOf(":"); - const firstSpace = /\s/.exec(arg); - const firstAt = arg.indexOf("@"); - const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash; - const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash; - const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash; - const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash; - const hasSlash = firstSlash > 0; - const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/"); - const doesNotStartWithDot = !arg.startsWith("."); - return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash; - }; - var correctUrl = (giturl) => { - const firstAt = giturl.indexOf("@"); - const lastHash = giturl.lastIndexOf("#"); - let firstColon = giturl.indexOf(":"); - let lastColon = giturl.lastIndexOf(":", lastHash > -1 ? lastHash : Infinity); - let corrected; - if (lastColon > firstAt) { - corrected = giturl.slice(0, lastColon) + "/" + giturl.slice(lastColon + 1); - firstColon = corrected.indexOf(":"); - lastColon = corrected.lastIndexOf(":"); - } - if (firstColon === -1 && giturl.indexOf("//") === -1) { - corrected = `git+ssh://${corrected}`; - } - return corrected; - }; - var parseGitUrl = (giturl) => { - let result; - try { - result = new url.URL(giturl); - } catch (err) { + addIgnoreFiles() { + const newIg = this.entries.filter((e) => this.isIgnoreFile(e)); + let igCount = newIg.length; + const then = (_) => { + if (--igCount === 0) { + this.filterEntries(); + } + }; + newIg.forEach((e) => this.addIgnoreFile(e, then)); } - if (result) { - return result; + addIgnoreFile(file, then) { + const ig = path2.resolve(this.path, file); + fs2.readFile(ig, "utf8", (er, data) => er ? this.emit("error", er) : this.onReadIgnoreFile(file, data, then)); } - const correctedUrl = correctUrl(giturl); - try { - result = new url.URL(correctedUrl); - } catch (err) { + onReadIgnoreFile(file, data, then) { + const mmopt = { + matchBase: true, + dot: true, + flipNegate: true, + nocase: true + }; + const rules = data.split(/\r?\n/).filter((line) => !/^#|^$/.test(line.trim())).map((rule) => { + return new Minimatch(rule.trim(), mmopt); + }); + this.ignoreRules[file] = rules; + then(); } - return result; - }; - } -}); - -// ../../node_modules/.pnpm/@zkochan+npm-package-arg@2.0.1/node_modules/@zkochan/npm-package-arg/npa.js -var require_npa = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-package-arg@2.0.1/node_modules/@zkochan/npm-package-arg/npa.js"(exports2, module2) { - "use strict"; - module2.exports = npa; - module2.exports.resolve = resolve; - module2.exports.Result = Result; - var url; - var HostedGit; - var semver; - var path; - var validatePackageName; - var os; - var isWindows = process.platform === "win32" || global.FAKE_WINDOWS; - var hasSlashes = isWindows ? /\\|[/]/ : /[/]/; - var isURL = /^(?:git[+])?[a-z]+:/i; - var isFilename = /[.](?:tgz|tar.gz|tar)$/i; - function npa(arg, where) { - let name; - let spec; - if (typeof arg === "object") { - if (arg instanceof Result && (!where || where === arg.where)) { - return arg; - } else if (arg.name && arg.rawSpec) { - return npa.resolve(arg.name, arg.rawSpec, where || arg.where); + filterEntries() { + const filtered = this.entries.map((entry) => { + const passFile = this.filterEntry(entry); + const passDir = this.filterEntry(entry, true); + return passFile || passDir ? [entry, passFile, passDir] : false; + }).filter((e) => e); + let entryCount = filtered.length; + if (entryCount === 0) { + this.emit("done", this.result); } else { - return npa(arg.raw, where || arg.where); + const then = (_) => { + if (--entryCount === 0) { + this.emit("done", this.result); + } + }; + filtered.forEach((filt) => { + const entry = filt[0]; + const file = filt[1]; + const dir = filt[2]; + this.stat({ entry, file, dir }, then); + }); } } - const nameEndsAt = arg[0] === "@" ? arg.slice(1).indexOf("@") + 1 : arg.indexOf("@"); - const namePart = nameEndsAt > 0 ? arg.slice(0, nameEndsAt) : arg; - if (isURL.test(arg)) { - spec = arg; - } else if (namePart[0] !== "@" && (hasSlashes.test(namePart) || isFilename.test(namePart))) { - spec = arg; - } else if (nameEndsAt > 0) { - name = namePart; - spec = arg.slice(nameEndsAt + 1); - } else { - if (!validatePackageName) - validatePackageName = require_validate_npm_package_name(); - const valid = validatePackageName(arg); - if (valid.validForOldPackages) { - name = arg; + onstat({ st, entry, file, dir, isSymbolicLink }, then) { + const abs = this.path + "/" + entry; + if (!st.isDirectory()) { + if (file) { + this.result.add(abs.slice(this.root.length + 1)); + } + then(); } else { - spec = arg; + if (dir) { + this.walker(entry, { isSymbolicLink }, then); + } else { + then(); + } } } - return resolve(name, spec, where, arg); - } - var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; - function resolve(name, spec, where, arg) { - const res = new Result({ - raw: arg, - name, - rawSpec: spec, - fromArgument: arg != null - }); - if (name) - res.setName(name); - if (spec && (isFilespec.test(spec) || /^file:/i.test(spec))) { - return fromFile(res, where); - } - if (spec && spec.startsWith("npm:")) { - return Object.assign(npa(spec.substr(4), where), { - alias: name, - raw: res.raw, - rawSpec: res.rawSpec + stat({ entry, file, dir }, then) { + const abs = this.path + "/" + entry; + fs2.lstat(abs, (lstatErr, lstatResult) => { + if (lstatErr) { + this.emit("error", lstatErr); + } else { + const isSymbolicLink = lstatResult.isSymbolicLink(); + if (this.follow && isSymbolicLink) { + fs2.stat(abs, (statErr, statResult) => { + if (statErr) { + this.emit("error", statErr); + } else { + this.onstat({ st: statResult, entry, file, dir, isSymbolicLink }, then); + } + }); + } else { + this.onstat({ st: lstatResult, entry, file, dir, isSymbolicLink }, then); + } + } }); } - if (!HostedGit) - HostedGit = require_hosted_git_info(); - const hosted = HostedGit.fromUrl(spec, { noGitPlus: true, noCommittish: true }); - if (hosted) { - return fromHostedGit(res, hosted); - } else if (spec && isURL.test(spec)) { - return fromURL(res); - } else if (spec && (hasSlashes.test(spec) || isFilename.test(spec))) { - return fromFile(res, where); - } else { - return fromRegistry(res); + walkerOpt(entry, opts) { + return { + path: this.path + "/" + entry, + parent: this, + ignoreFiles: this.ignoreFiles, + follow: this.follow, + includeEmpty: this.includeEmpty, + ...opts + }; } - } - function invalidPackageName(name, valid) { - const err = new Error(`Invalid package name "${name}": ${valid.errors.join("; ")}`); - err.code = "EINVALIDPACKAGENAME"; - return err; - } - function invalidTagName(name) { - const err = new Error(`Invalid tag name "${name}": Tags may not have any characters that encodeURIComponent encodes.`); - err.code = "EINVALIDTAGNAME"; - return err; - } - function Result(opts) { - this.type = opts.type; - this.registry = opts.registry; - this.where = opts.where; - if (opts.raw == null) { - this.raw = opts.name ? opts.name + "@" + opts.rawSpec : opts.rawSpec; - } else { - this.raw = opts.raw; + walker(entry, opts, then) { + new Walker(this.walkerOpt(entry, opts)).on("done", then).start(); } - this.name = void 0; - this.escapedName = void 0; - this.scope = void 0; - this.rawSpec = opts.rawSpec == null ? "" : opts.rawSpec; - this.saveSpec = opts.saveSpec; - this.fetchSpec = opts.fetchSpec; - if (opts.name) - this.setName(opts.name); - this.gitRange = opts.gitRange; - this.gitCommittish = opts.gitCommittish; - this.hosted = opts.hosted; - } - Result.prototype = {}; - Result.prototype.setName = function(name) { - if (!validatePackageName) - validatePackageName = require_validate_npm_package_name(); - const valid = validatePackageName(name); - if (!valid.validForOldPackages) { - throw invalidPackageName(name, valid); + filterEntry(entry, partial) { + let included = true; + if (this.parent && this.parent.filterEntry) { + var pt = this.basename + "/" + entry; + included = this.parent.filterEntry(pt, partial); + } + this.ignoreFiles.forEach((f) => { + if (this.ignoreRules[f]) { + this.ignoreRules[f].forEach((rule) => { + if (rule.negate !== included) { + const match = rule.match("/" + entry) || rule.match(entry) || !!partial && (rule.match("/" + entry + "/") || rule.match(entry + "/")) || !!partial && rule.negate && (rule.match("/" + entry, true) || rule.match(entry, true)); + if (match) { + included = rule.negate; + } + } + }); + } + }); + return included; } - this.name = name; - this.scope = name[0] === "@" ? name.slice(0, name.indexOf("/")) : void 0; - this.escapedName = name.replace("/", "%2f"); - return this; - }; - Result.prototype.toString = function() { - const full = []; - if (this.name != null && this.name !== "") - full.push(this.name); - const spec = this.saveSpec || this.fetchSpec || this.rawSpec; - if (spec != null && spec !== "") - full.push(spec); - return full.length ? full.join("@") : this.raw; - }; - Result.prototype.toJSON = function() { - const result = Object.assign({}, this); - delete result.hosted; - return result; }; - function setGitCommittish(res, committish) { - if (committish != null && committish.length >= 7 && committish.slice(0, 7) === "semver:") { - res.gitRange = decodeURIComponent(committish.slice(7)); - res.gitCommittish = null; - } else { - res.gitCommittish = committish === "" ? null : committish; + var WalkerSync = class extends Walker { + start() { + this.onReaddir(fs2.readdirSync(this.path)); + return this; } - return res; - } - var isAbsolutePath = /^[/]|^[A-Za-z]:/; - function resolvePath(where, spec) { - if (isAbsolutePath.test(spec)) - return spec; - if (!path) - path = require("path"); - return path.resolve(where, spec); - } - function isAbsolute(dir) { - if (dir[0] === "/") - return true; - if (/^[A-Za-z]:/.test(dir)) - return true; - return false; - } - function fromFile(res, where) { - if (!where) - where = process.cwd(); - res.type = isFilename.test(res.rawSpec) ? "file" : "directory"; - res.where = where; - const spec = res.rawSpec.replace(/\\/g, "/").replace(/^file:[/]*([A-Za-z]:)/, "$1").replace(/^file:(?:[/]*([~./]))?/, "$1"); - if (/^~[/]/.test(spec)) { - if (!os) - os = require("os"); - res.fetchSpec = resolvePath(os.homedir(), spec.slice(2)); - res.saveSpec = "file:" + spec; - } else { - res.fetchSpec = resolvePath(where, spec); - if (isAbsolute(spec)) { - res.saveSpec = "file:" + spec; - } else { - if (!path) - path = require("path"); - res.saveSpec = "file:" + path.relative(where, res.fetchSpec); + addIgnoreFile(file, then) { + const ig = path2.resolve(this.path, file); + this.onReadIgnoreFile(file, fs2.readFileSync(ig, "utf8"), then); + } + stat({ entry, file, dir }, then) { + const abs = this.path + "/" + entry; + let st = fs2.lstatSync(abs); + const isSymbolicLink = st.isSymbolicLink(); + if (this.follow && isSymbolicLink) { + st = fs2.statSync(abs); } + this.onstat({ st, entry, file, dir, isSymbolicLink }, then); } - return res; + walker(entry, opts, then) { + new WalkerSync(this.walkerOpt(entry, opts)).start(); + then(); + } + }; + var walk = (opts, callback) => { + const p = new Promise((resolve, reject) => { + new Walker(opts).on("done", resolve).on("error", reject).start(); + }); + return callback ? p.then((res) => callback(null, res), callback) : p; + }; + var walkSync = (opts) => new WalkerSync(opts).start().result; + module2.exports = walk; + walk.sync = walkSync; + walk.Walker = Walker; + walk.WalkerSync = WalkerSync; + } +}); + +// ../node_modules/.pnpm/glob@8.1.0/node_modules/glob/common.js +var require_common7 = __commonJS({ + "../node_modules/.pnpm/glob@8.1.0/node_modules/glob/common.js"(exports2) { + exports2.setopts = setopts; + exports2.ownProp = ownProp; + exports2.makeAbs = makeAbs; + exports2.finish = finish; + exports2.mark = mark; + exports2.isIgnored = isIgnored; + exports2.childrenIgnored = childrenIgnored; + function ownProp(obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field); } - function fromHostedGit(res, hosted) { - res.type = "git"; - res.hosted = hosted; - res.saveSpec = hosted.toString({ noGitPlus: false, noCommittish: false }); - res.fetchSpec = hosted.getDefaultRepresentation() === "shortcut" ? null : hosted.toString(); - return setGitCommittish(res, hosted.committish); + var fs2 = require("fs"); + var path2 = require("path"); + var minimatch = require_minimatch2(); + var isAbsolute = require("path").isAbsolute; + var Minimatch = minimatch.Minimatch; + function alphasort(a, b) { + return a.localeCompare(b, "en"); } - function unsupportedURLType(protocol, spec) { - const err = new Error(`Unsupported URL Type "${protocol}": ${spec}`); - err.code = "EUNSUPPORTEDPROTOCOL"; - return err; + function setupIgnores(self2, options) { + self2.ignore = options.ignore || []; + if (!Array.isArray(self2.ignore)) + self2.ignore = [self2.ignore]; + if (self2.ignore.length) { + self2.ignore = self2.ignore.map(ignoreMap); + } } - function matchGitScp(spec) { - const matched = spec.match(/^git\+ssh:\/\/([^:#]+:[^#]+(?:\.git)?)(?:#(.*))?$/i); - return matched && !matched[1].match(/:[0-9]+\/?.*$/i) && { - fetchSpec: matched[1], - gitCommittish: matched[2] == null ? null : matched[2] + function ignoreMap(pattern) { + var gmatcher = null; + if (pattern.slice(-3) === "/**") { + var gpattern = pattern.replace(/(\/\*\*)+$/, ""); + gmatcher = new Minimatch(gpattern, { dot: true }); + } + return { + matcher: new Minimatch(pattern, { dot: true }), + gmatcher }; } - function fromURL(res) { - if (!url) - url = require("url"); - const urlparse = url.parse(res.rawSpec); - res.saveSpec = res.rawSpec; - switch (urlparse.protocol) { - case "git:": - case "git+http:": - case "git+https:": - case "git+rsync:": - case "git+ftp:": - case "git+file:": - case "git+ssh:": { - res.type = "git"; - const match = urlparse.protocol === "git+ssh:" && matchGitScp(res.rawSpec); - if (match) { - res.fetchSpec = match.fetchSpec; - res.gitCommittish = match.gitCommittish; - } else { - setGitCommittish(res, urlparse.hash != null ? urlparse.hash.slice(1) : ""); - urlparse.protocol = urlparse.protocol.replace(/^git[+]/, ""); - delete urlparse.hash; - res.fetchSpec = url.format(urlparse); - } - break; + function setopts(self2, pattern, options) { + if (!options) + options = {}; + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar"); } - case "http:": - case "https:": - res.type = "remote"; - res.fetchSpec = res.saveSpec; - break; - default: - throw unsupportedURLType(urlparse.protocol, res.rawSpec); + pattern = "**/" + pattern; } - return res; - } - function fromRegistry(res) { - res.registry = true; - const spec = res.rawSpec === "" ? "latest" : res.rawSpec; - res.saveSpec = null; - res.fetchSpec = spec; - if (!semver) - semver = require_semver2(); - const version = semver.valid(spec, true); - const range = semver.validRange(spec, true); - if (version) { - res.type = "version"; - } else if (range) { - res.type = "range"; - } else { - if (encodeURIComponent(spec) !== spec) { - throw invalidTagName(spec); - } - res.type = "tag"; + self2.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options.allowWindowsEscape === false; + if (self2.windowsPathsNoEscape) { + pattern = pattern.replace(/\\/g, "/"); } - return res; - } - } -}); - -// ../pkgs-graph/lib/index.js -var require_lib25 = __commonJS({ - "../pkgs-graph/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var resolve_workspace_range_1 = __importDefault(require_lib24()); - var npm_package_arg_1 = __importDefault(require_npa()); - function default_1(pkgs, opts) { - const pkgMap = createPkgMap(pkgs); - const unmatched = []; - const graph = Object.keys(pkgMap).reduce((acc, pkgSpec) => { - acc[pkgSpec] = { - dependencies: createNode(pkgMap[pkgSpec]), - package: pkgMap[pkgSpec] - }; - return acc; - }, {}); - return { graph, unmatched }; - function createNode(pkg) { - const dependencies = { - ...!(opts === null || opts === void 0 ? void 0 : opts.ignoreDevDeps) && pkg.manifest.devDependencies, - ...pkg.manifest.optionalDependencies, - ...pkg.manifest.dependencies - }; - return Object.keys(dependencies).map((depName) => { - let spec; - let rawSpec = dependencies[depName]; - const isWorkspaceSpec = rawSpec.startsWith("workspace:"); - try { - if (isWorkspaceSpec) { - rawSpec = rawSpec.substr(10); - if (rawSpec === "^" || rawSpec === "~") { - rawSpec = "*"; - } - ; - } - spec = npm_package_arg_1.default.resolve(depName, rawSpec, pkg.dir); - } catch (err) { - return ""; - } - if (spec.type === "directory") { - const matchedPkg2 = Object.values(pkgMap).find((pkg2) => path_1.default.relative(pkg2.dir, spec.fetchSpec) === ""); - if (matchedPkg2 == null) { - return ""; - } - return matchedPkg2.dir; - } - if (spec.type !== "version" && spec.type !== "range") - return ""; - const pkgs2 = Object.values(pkgMap).filter((pkg2) => pkg2.manifest.name === depName); - if (pkgs2.length === 0) - return ""; - const versions = pkgs2.filter(({ manifest }) => manifest.version).map((pkg2) => pkg2.manifest.version); - const strictWorkspaceMatching = (opts === null || opts === void 0 ? void 0 : opts.linkWorkspacePackages) === false && !isWorkspaceSpec; - if (strictWorkspaceMatching) { - unmatched.push({ pkgName: depName, range: rawSpec }); - return ""; - } - if (versions.includes(rawSpec)) { - const matchedPkg2 = pkgs2.find((pkg2) => pkg2.manifest.name === depName && pkg2.manifest.version === rawSpec); - return matchedPkg2.dir; - } - const matched = resolve_workspace_range_1.default(rawSpec, versions); - if (!matched) { - unmatched.push({ pkgName: depName, range: rawSpec }); - return ""; - } - const matchedPkg = pkgs2.find((pkg2) => pkg2.manifest.name === depName && pkg2.manifest.version === matched); - return matchedPkg.dir; - }).filter(Boolean); + self2.silent = !!options.silent; + self2.pattern = pattern; + self2.strict = options.strict !== false; + self2.realpath = !!options.realpath; + self2.realpathCache = options.realpathCache || /* @__PURE__ */ Object.create(null); + self2.follow = !!options.follow; + self2.dot = !!options.dot; + self2.mark = !!options.mark; + self2.nodir = !!options.nodir; + if (self2.nodir) + self2.mark = true; + self2.sync = !!options.sync; + self2.nounique = !!options.nounique; + self2.nonull = !!options.nonull; + self2.nosort = !!options.nosort; + self2.nocase = !!options.nocase; + self2.stat = !!options.stat; + self2.noprocess = !!options.noprocess; + self2.absolute = !!options.absolute; + self2.fs = options.fs || fs2; + self2.maxLength = options.maxLength || Infinity; + self2.cache = options.cache || /* @__PURE__ */ Object.create(null); + self2.statCache = options.statCache || /* @__PURE__ */ Object.create(null); + self2.symlinks = options.symlinks || /* @__PURE__ */ Object.create(null); + setupIgnores(self2, options); + self2.changedCwd = false; + var cwd = process.cwd(); + if (!ownProp(options, "cwd")) + self2.cwd = path2.resolve(cwd); + else { + self2.cwd = path2.resolve(options.cwd); + self2.changedCwd = self2.cwd !== cwd; } - } - exports2.default = default_1; - function createPkgMap(pkgs) { - const pkgMap = {}; - for (const pkg of pkgs) { - pkgMap[pkg.dir] = pkg; + self2.root = options.root || path2.resolve(self2.cwd, "/"); + self2.root = path2.resolve(self2.root); + self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); + self2.nomount = !!options.nomount; + if (process.platform === "win32") { + self2.root = self2.root.replace(/\\/g, "/"); + self2.cwd = self2.cwd.replace(/\\/g, "/"); + self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); } - return pkgMap; - } - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArray.js -var require_isArray = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArray.js"(exports2, module2) { - module2.exports = Array.isArray || function _isArray(val) { - return val != null && val.length >= 0 && Object.prototype.toString.call(val) === "[object Array]"; - }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isTransformer.js -var require_isTransformer = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isTransformer.js"(exports2, module2) { - function _isTransformer(obj) { - return obj != null && typeof obj["@@transducer/step"] === "function"; + options.nonegate = true; + options.nocomment = true; + self2.minimatch = new Minimatch(pattern, options); + self2.options = self2.minimatch.options; } - module2.exports = _isTransformer; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_dispatchable.js -var require_dispatchable = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_dispatchable.js"(exports2, module2) { - var _isArray = require_isArray(); - var _isTransformer = require_isTransformer(); - function _dispatchable(methodNames, xf, fn2) { - return function() { - if (arguments.length === 0) { - return fn2(); - } - var args2 = Array.prototype.slice.call(arguments, 0); - var obj = args2.pop(); - if (!_isArray(obj)) { - var idx = 0; - while (idx < methodNames.length) { - if (typeof obj[methodNames[idx]] === "function") { - return obj[methodNames[idx]].apply(obj, args2); - } - idx += 1; - } - if (_isTransformer(obj)) { - var transducer = xf.apply(null, args2); - return transducer(obj); + function finish(self2) { + var nou = self2.nounique; + var all = nou ? [] : /* @__PURE__ */ Object.create(null); + for (var i = 0, l = self2.matches.length; i < l; i++) { + var matches = self2.matches[i]; + if (!matches || Object.keys(matches).length === 0) { + if (self2.nonull) { + var literal = self2.minimatch.globSet[i]; + if (nou) + all.push(literal); + else + all[literal] = true; } + } else { + var m = Object.keys(matches); + if (nou) + all.push.apply(all, m); + else + m.forEach(function(m2) { + all[m2] = true; + }); + } + } + if (!nou) + all = Object.keys(all); + if (!self2.nosort) + all = all.sort(alphasort); + if (self2.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self2._mark(all[i]); } - return fn2.apply(this, arguments); - }; - } - module2.exports = _dispatchable; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_filter.js -var require_filter2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_filter.js"(exports2, module2) { - function _filter(fn2, list) { - var idx = 0; - var len = list.length; - var result = []; - while (idx < len) { - if (fn2(list[idx])) { - result[result.length] = list[idx]; + if (self2.nodir) { + all = all.filter(function(e) { + var notDir = !/\/$/.test(e); + var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; + if (notDir && c) + notDir = c !== "DIR" && !Array.isArray(c); + return notDir; + }); } - idx += 1; } - return result; - } - module2.exports = _filter; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isObject.js -var require_isObject = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isObject.js"(exports2, module2) { - function _isObject(x) { - return Object.prototype.toString.call(x) === "[object Object]"; - } - module2.exports = _isObject; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isString.js -var require_isString = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isString.js"(exports2, module2) { - function _isString(x) { - return Object.prototype.toString.call(x) === "[object String]"; + if (self2.ignore.length) + all = all.filter(function(m2) { + return !isIgnored(self2, m2); + }); + self2.found = all; } - module2.exports = _isString; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArrayLike.js -var require_isArrayLike2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isArrayLike.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _isArray = require_isArray(); - var _isString = require_isString(); - var _isArrayLike = /* @__PURE__ */ _curry1(function isArrayLike(x) { - if (_isArray(x)) { - return true; + function mark(self2, p) { + var abs = makeAbs(self2, p); + var c = self2.cache[abs]; + var m = p; + if (c) { + var isDir = c === "DIR" || Array.isArray(c); + var slash = p.slice(-1) === "/"; + if (isDir && !slash) + m += "/"; + else if (!isDir && slash) + m = m.slice(0, -1); + if (m !== p) { + var mabs = makeAbs(self2, m); + self2.statCache[mabs] = self2.statCache[abs]; + self2.cache[mabs] = self2.cache[abs]; + } } - if (!x) { - return false; + return m; + } + function makeAbs(self2, f) { + var abs = f; + if (f.charAt(0) === "/") { + abs = path2.join(self2.root, f); + } else if (isAbsolute(f) || f === "") { + abs = f; + } else if (self2.changedCwd) { + abs = path2.resolve(self2.cwd, f); + } else { + abs = path2.resolve(f); } - if (typeof x !== "object") { + if (process.platform === "win32") + abs = abs.replace(/\\/g, "/"); + return abs; + } + function isIgnored(self2, path3) { + if (!self2.ignore.length) return false; - } - if (_isString(x)) { + return self2.ignore.some(function(item) { + return item.matcher.match(path3) || !!(item.gmatcher && item.gmatcher.match(path3)); + }); + } + function childrenIgnored(self2, path3) { + if (!self2.ignore.length) return false; - } - if (x.nodeType === 1) { - return !!x.length; - } - if (x.length === 0) { - return true; - } - if (x.length > 0) { - return x.hasOwnProperty(0) && x.hasOwnProperty(x.length - 1); - } - return false; - }); - module2.exports = _isArrayLike; + return self2.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path3)); + }); + } } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xwrap.js -var require_xwrap = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xwrap.js"(exports2, module2) { - var XWrap = /* @__PURE__ */ function() { - function XWrap2(fn2) { - this.f = fn2; +// ../node_modules/.pnpm/glob@8.1.0/node_modules/glob/sync.js +var require_sync8 = __commonJS({ + "../node_modules/.pnpm/glob@8.1.0/node_modules/glob/sync.js"(exports2, module2) { + module2.exports = globSync; + globSync.GlobSync = GlobSync; + var rp = require_fs5(); + var minimatch = require_minimatch2(); + var Minimatch = minimatch.Minimatch; + var Glob = require_glob2().Glob; + var util = require("util"); + var path2 = require("path"); + var assert = require("assert"); + var isAbsolute = require("path").isAbsolute; + var common = require_common7(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + function globSync(pattern, options) { + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + return new GlobSync(pattern, options).found; + } + function GlobSync(pattern, options) { + if (!pattern) + throw new Error("must provide pattern"); + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options); + setopts(this, pattern, options); + if (this.noprocess) + return this; + var n = this.minimatch.set.length; + this.matches = new Array(n); + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false); } - XWrap2.prototype["@@transducer/init"] = function() { - throw new Error("init not implemented on XWrap"); - }; - XWrap2.prototype["@@transducer/result"] = function(acc) { - return acc; - }; - XWrap2.prototype["@@transducer/step"] = function(acc, x) { - return this.f(acc, x); - }; - return XWrap2; - }(); - function _xwrap(fn2) { - return new XWrap(fn2); + this._finish(); } - module2.exports = _xwrap; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_arity.js -var require_arity = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_arity.js"(exports2, module2) { - function _arity(n, fn2) { + GlobSync.prototype._finish = function() { + assert.ok(this instanceof GlobSync); + if (this.realpath) { + var self2 = this; + this.matches.forEach(function(matchset, index) { + var set = self2.matches[index] = /* @__PURE__ */ Object.create(null); + for (var p in matchset) { + try { + p = self2._makeAbs(p); + var real = rp.realpathSync(p, self2.realpathCache); + set[real] = true; + } catch (er) { + if (er.syscall === "stat") + set[self2._makeAbs(p)] = true; + else + throw er; + } + } + }); + } + common.finish(this); + }; + GlobSync.prototype._process = function(pattern, index, inGlobStar) { + assert.ok(this instanceof GlobSync); + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index); + return; case 0: - return function() { - return fn2.apply(this, arguments); - }; - case 1: - return function(a0) { - return fn2.apply(this, arguments); - }; - case 2: - return function(a0, a1) { - return fn2.apply(this, arguments); - }; - case 3: - return function(a0, a1, a2) { - return fn2.apply(this, arguments); - }; - case 4: - return function(a0, a1, a2, a3) { - return fn2.apply(this, arguments); - }; - case 5: - return function(a0, a1, a2, a3, a4) { - return fn2.apply(this, arguments); - }; - case 6: - return function(a0, a1, a2, a3, a4, a5) { - return fn2.apply(this, arguments); - }; - case 7: - return function(a0, a1, a2, a3, a4, a5, a6) { - return fn2.apply(this, arguments); - }; - case 8: - return function(a0, a1, a2, a3, a4, a5, a6, a7) { - return fn2.apply(this, arguments); - }; - case 9: - return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) { - return fn2.apply(this, arguments); - }; - case 10: - return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) { - return fn2.apply(this, arguments); - }; + prefix = null; + break; default: - throw new Error("First argument to _arity must be a non-negative integer no greater than ten"); - } - } - module2.exports = _arity; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/bind.js -var require_bind = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/bind.js"(exports2, module2) { - var _arity = require_arity(); - var _curry2 = require_curry2(); - var bind = /* @__PURE__ */ _curry2(function bind2(fn2, thisObj) { - return _arity(fn2.length, function() { - return fn2.apply(thisObj, arguments); - }); - }); - module2.exports = bind; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_reduce.js -var require_reduce2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_reduce.js"(exports2, module2) { - var _isArrayLike = require_isArrayLike2(); - var _xwrap = require_xwrap(); - var bind = require_bind(); - function _arrayReduce(xf, acc, list) { - var idx = 0; - var len = list.length; - while (idx < len) { - acc = xf["@@transducer/step"](acc, list[idx]); - if (acc && acc["@@transducer/reduced"]) { - acc = acc["@@transducer/value"]; + prefix = pattern.slice(0, n).join("/"); break; - } - idx += 1; } - return xf["@@transducer/result"](acc); - } - function _iterableReduce(xf, acc, iter) { - var step = iter.next(); - while (!step.done) { - acc = xf["@@transducer/step"](acc, step.value); - if (acc && acc["@@transducer/reduced"]) { - acc = acc["@@transducer/value"]; - break; + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return; + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar); + }; + GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); } - step = iter.next(); } - return xf["@@transducer/result"](acc); - } - function _methodReduce(xf, acc, obj, methodName) { - return xf["@@transducer/result"](obj[methodName](bind(xf["@@transducer/step"], xf), acc)); - } - var symIterator = typeof Symbol !== "undefined" ? Symbol.iterator : "@@iterator"; - function _reduce(fn2, acc, list) { - if (typeof fn2 === "function") { - fn2 = _xwrap(fn2); + var len = matchedEntries.length; + if (len === 0) + return; + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix.slice(-1) !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); + } + this._emitMatch(index, e); + } + return; } - if (_isArrayLike(list)) { - return _arrayReduce(fn2, acc, list); + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) + newPattern = [prefix, e]; + else + newPattern = [e]; + this._process(newPattern.concat(remain), index, inGlobStar); } - if (typeof list["fantasy-land/reduce"] === "function") { - return _methodReduce(fn2, acc, list, "fantasy-land/reduce"); + }; + GlobSync.prototype._emitMatch = function(index, e) { + if (isIgnored(this, e)) + return; + var abs = this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) { + e = abs; } - if (list[symIterator] != null) { - return _iterableReduce(fn2, acc, list[symIterator]()); + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; } - if (typeof list.next === "function") { - return _iterableReduce(fn2, acc, list); + this.matches[index][e] = true; + if (this.stat) + this._stat(e); + }; + GlobSync.prototype._readdirInGlobStar = function(abs) { + if (this.follow) + return this._readdir(abs, false); + var entries; + var lstat; + var stat; + try { + lstat = this.fs.lstatSync(abs); + } catch (er) { + if (er.code === "ENOENT") { + return null; + } } - if (typeof list.reduce === "function") { - return _methodReduce(fn2, acc, list, "reduce"); + var isSym = lstat && lstat.isSymbolicLink(); + this.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) + this.cache[abs] = "FILE"; + else + entries = this._readdir(abs, false); + return entries; + }; + GlobSync.prototype._readdir = function(abs, inGlobStar) { + var entries; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return null; + if (Array.isArray(c)) + return c; } - throw new TypeError("reduce: list must be array or iterable"); - } - module2.exports = _reduce; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xfBase.js -var require_xfBase = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xfBase.js"(exports2, module2) { - module2.exports = { - init: function() { - return this.xf["@@transducer/init"](); - }, - result: function(result) { - return this.xf["@@transducer/result"](result); + try { + return this._readdirEntries(abs, this.fs.readdirSync(abs)); + } catch (er) { + this._readdirError(abs, er); + return null; } }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xfilter.js -var require_xfilter = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xfilter.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _xfBase = require_xfBase(); - var XFilter = /* @__PURE__ */ function() { - function XFilter2(f, xf) { - this.xf = xf; - this.f = f; - } - XFilter2.prototype["@@transducer/init"] = _xfBase.init; - XFilter2.prototype["@@transducer/result"] = _xfBase.result; - XFilter2.prototype["@@transducer/step"] = function(result, input) { - return this.f(input) ? this.xf["@@transducer/step"](result, input) : result; - }; - return XFilter2; - }(); - var _xfilter = /* @__PURE__ */ _curry2(function _xfilter2(f, xf) { - return new XFilter(f, xf); - }); - module2.exports = _xfilter; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/filter.js -var require_filter3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/filter.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _dispatchable = require_dispatchable(); - var _filter = require_filter2(); - var _isObject = require_isObject(); - var _reduce = require_reduce2(); - var _xfilter = require_xfilter(); - var keys = require_keys(); - var filter = /* @__PURE__ */ _curry2(/* @__PURE__ */ _dispatchable(["filter"], _xfilter, function(pred, filterable) { - return _isObject(filterable) ? _reduce(function(acc, key) { - if (pred(filterable[key])) { - acc[key] = filterable[key]; + GlobSync.prototype._readdirEntries = function(abs, entries) { + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; } - return acc; - }, {}, keys(filterable)) : _filter(pred, filterable); - })); - module2.exports = filter; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_map.js -var require_map3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_map.js"(exports2, module2) { - function _map(fn2, functor) { - var idx = 0; - var len = functor.length; - var result = Array(len); - while (idx < len) { - result[idx] = fn2(functor[idx]); - idx += 1; } - return result; - } - module2.exports = _map; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curryN.js -var require_curryN = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curryN.js"(exports2, module2) { - var _arity = require_arity(); - var _isPlaceholder = require_isPlaceholder(); - function _curryN(length, received, fn2) { - return function() { - var combined = []; - var argsIdx = 0; - var left = length; - var combinedIdx = 0; - while (combinedIdx < received.length || argsIdx < arguments.length) { - var result; - if (combinedIdx < received.length && (!_isPlaceholder(received[combinedIdx]) || argsIdx >= arguments.length)) { - result = received[combinedIdx]; - } else { - result = arguments[argsIdx]; - argsIdx += 1; - } - combined[combinedIdx] = result; - if (!_isPlaceholder(result)) { - left -= 1; + this.cache[abs] = entries; + return entries; + }; + GlobSync.prototype._readdirError = function(f, er) { + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + throw error; } - combinedIdx += 1; - } - return left <= 0 ? fn2.apply(this, combined) : _arity(left, _curryN(length, combined, fn2)); - }; - } - module2.exports = _curryN; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/curryN.js -var require_curryN2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/curryN.js"(exports2, module2) { - var _arity = require_arity(); - var _curry1 = require_curry1(); - var _curry2 = require_curry2(); - var _curryN = require_curryN(); - var curryN = /* @__PURE__ */ _curry2(function curryN2(length, fn2) { - if (length === 1) { - return _curry1(fn2); + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) + throw er; + if (!this.silent) + console.error("glob error", er); + break; } - return _arity(length, _curryN(length, [], fn2)); - }); - module2.exports = curryN; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/max.js -var require_max2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/max.js"(exports2, module2) { - var _curry2 = require_curry2(); - var max = /* @__PURE__ */ _curry2(function max2(a, b) { - return b > a ? b : a; - }); - module2.exports = max; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xmap.js -var require_xmap = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xmap.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _xfBase = require_xfBase(); - var XMap = /* @__PURE__ */ function() { - function XMap2(f, xf) { - this.xf = xf; - this.f = f; + }; + GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false); + var len = entries.length; + var isSym = this.symlinks[abs]; + if (isSym && inGlobStar) + return; + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true); } - XMap2.prototype["@@transducer/init"] = _xfBase.init; - XMap2.prototype["@@transducer/result"] = _xfBase.result; - XMap2.prototype["@@transducer/step"] = function(result, input) { - return this.xf["@@transducer/step"](result, this.f(input)); - }; - return XMap2; - }(); - var _xmap = /* @__PURE__ */ _curry2(function _xmap2(f, xf) { - return new XMap(f, xf); - }); - module2.exports = _xmap; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/map.js -var require_map4 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/map.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _dispatchable = require_dispatchable(); - var _map = require_map3(); - var _reduce = require_reduce2(); - var _xmap = require_xmap(); - var curryN = require_curryN2(); - var keys = require_keys(); - var map = /* @__PURE__ */ _curry2(/* @__PURE__ */ _dispatchable(["fantasy-land/map", "map"], _xmap, function map2(fn2, functor) { - switch (Object.prototype.toString.call(functor)) { - case "[object Function]": - return curryN(functor.length, function() { - return fn2.call(this, functor.apply(this, arguments)); - }); - case "[object Object]": - return _reduce(function(acc, key) { - acc[key] = fn2(functor[key]); - return acc; - }, {}, keys(functor)); - default: - return _map(fn2, functor); + }; + GlobSync.prototype._processSimple = function(prefix, index) { + var exists = this._stat(prefix); + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return; + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } } - })); - module2.exports = map; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isInteger.js -var require_isInteger = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_isInteger.js"(exports2, module2) { - module2.exports = Number.isInteger || function _isInteger(n) { - return n << 0 === n; + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/nth.js -var require_nth = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/nth.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _isString = require_isString(); - var nth = /* @__PURE__ */ _curry2(function nth2(offset, list) { - var idx = offset < 0 ? list.length + offset : offset; - return _isString(list) ? list.charAt(idx) : list[idx]; - }); - module2.exports = nth; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/paths.js -var require_paths = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/paths.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _isInteger = require_isInteger(); - var nth = require_nth(); - var paths = /* @__PURE__ */ _curry2(function paths2(pathsArray, obj) { - return pathsArray.map(function(paths3) { - var val = obj; - var idx = 0; - var p; - while (idx < paths3.length) { - if (val == null) { - return; + GlobSync.prototype._stat = function(f) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return false; + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return c; + if (needDir && c === "FILE") + return false; + } + var exists; + var stat = this.statCache[abs]; + if (!stat) { + var lstat; + try { + lstat = this.fs.lstatSync(abs); + } catch (er) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return false; } - p = paths3[idx]; - val = _isInteger(p) ? nth(p, val) : val[p]; - idx += 1; } - return val; - }); - }); - module2.exports = paths; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/path.js -var require_path3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/path.js"(exports2, module2) { - var _curry2 = require_curry2(); - var paths = require_paths(); - var path = /* @__PURE__ */ _curry2(function path2(pathAr, obj) { - return paths([pathAr], obj)[0]; - }); - module2.exports = path; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/prop.js -var require_prop = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/prop.js"(exports2, module2) { - var _curry2 = require_curry2(); - var path = require_path3(); - var prop = /* @__PURE__ */ _curry2(function prop2(p, obj) { - return path([p], obj); - }); - module2.exports = prop; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pluck.js -var require_pluck2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pluck.js"(exports2, module2) { - var _curry2 = require_curry2(); - var map = require_map4(); - var prop = require_prop(); - var pluck = /* @__PURE__ */ _curry2(function pluck2(p, list) { - return map(prop(p), list); - }); - module2.exports = pluck; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry3.js -var require_curry3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_curry3.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _curry2 = require_curry2(); - var _isPlaceholder = require_isPlaceholder(); - function _curry3(fn2) { - return function f3(a, b, c) { - switch (arguments.length) { - case 0: - return f3; - case 1: - return _isPlaceholder(a) ? f3 : _curry2(function(_b, _c) { - return fn2(a, _b, _c); - }); - case 2: - return _isPlaceholder(a) && _isPlaceholder(b) ? f3 : _isPlaceholder(a) ? _curry2(function(_a, _c) { - return fn2(_a, b, _c); - }) : _isPlaceholder(b) ? _curry2(function(_b, _c) { - return fn2(a, _b, _c); - }) : _curry1(function(_c) { - return fn2(a, b, _c); - }); - default: - return _isPlaceholder(a) && _isPlaceholder(b) && _isPlaceholder(c) ? f3 : _isPlaceholder(a) && _isPlaceholder(b) ? _curry2(function(_a, _b) { - return fn2(_a, _b, c); - }) : _isPlaceholder(a) && _isPlaceholder(c) ? _curry2(function(_a, _c) { - return fn2(_a, b, _c); - }) : _isPlaceholder(b) && _isPlaceholder(c) ? _curry2(function(_b, _c) { - return fn2(a, _b, _c); - }) : _isPlaceholder(a) ? _curry1(function(_a) { - return fn2(_a, b, c); - }) : _isPlaceholder(b) ? _curry1(function(_b) { - return fn2(a, _b, c); - }) : _isPlaceholder(c) ? _curry1(function(_c) { - return fn2(a, b, _c); - }) : fn2(a, b, c); + if (lstat && lstat.isSymbolicLink()) { + try { + stat = this.fs.statSync(abs); + } catch (er) { + stat = lstat; + } + } else { + stat = lstat; } - }; - } - module2.exports = _curry3; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reduce.js -var require_reduce3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reduce.js"(exports2, module2) { - var _curry3 = require_curry3(); - var _reduce = require_reduce2(); - var reduce = /* @__PURE__ */ _curry3(_reduce); - module2.exports = reduce; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/converge.js -var require_converge = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/converge.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _map = require_map3(); - var curryN = require_curryN2(); - var max = require_max2(); - var pluck = require_pluck2(); - var reduce = require_reduce3(); - var converge = /* @__PURE__ */ _curry2(function converge2(after, fns) { - return curryN(reduce(max, 0, pluck("length", fns)), function() { - var args2 = arguments; - var context = this; - return after.apply(context, _map(function(fn2) { - return fn2.apply(context, args2); - }, fns)); - }); - }); - module2.exports = converge; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/juxt.js -var require_juxt = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/juxt.js"(exports2, module2) { - var _curry1 = require_curry1(); - var converge = require_converge(); - var juxt = /* @__PURE__ */ _curry1(function juxt2(fns) { - return converge(function() { - return Array.prototype.slice.call(arguments, 0); - }, fns); - }); - module2.exports = juxt; + } + this.statCache[abs] = stat; + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return false; + return c; + }; + GlobSync.prototype._mark = function(p) { + return common.mark(this, p); + }; + GlobSync.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_complement.js -var require_complement = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_complement.js"(exports2, module2) { - function _complement(f) { - return function() { - return !f.apply(this, arguments); - }; +// ../node_modules/.pnpm/glob@8.1.0/node_modules/glob/glob.js +var require_glob2 = __commonJS({ + "../node_modules/.pnpm/glob@8.1.0/node_modules/glob/glob.js"(exports2, module2) { + module2.exports = glob; + var rp = require_fs5(); + var minimatch = require_minimatch2(); + var Minimatch = minimatch.Minimatch; + var inherits = require_inherits(); + var EE = require("events").EventEmitter; + var path2 = require("path"); + var assert = require("assert"); + var isAbsolute = require("path").isAbsolute; + var globSync = require_sync8(); + var common = require_common7(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var inflight = require_inflight(); + var util = require("util"); + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + var once = require_once(); + function glob(pattern, options, cb) { + if (typeof options === "function") + cb = options, options = {}; + if (!options) + options = {}; + if (options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return globSync(pattern, options); + } + return new Glob(pattern, options, cb); } - module2.exports = _complement; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reject.js -var require_reject = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reject.js"(exports2, module2) { - var _complement = require_complement(); - var _curry2 = require_curry2(); - var filter = require_filter3(); - var reject = /* @__PURE__ */ _curry2(function reject2(pred, filterable) { - return filter(_complement(pred), filterable); - }); - module2.exports = reject; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/partition.js -var require_partition4 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/partition.js"(exports2, module2) { - var filter = require_filter3(); - var juxt = require_juxt(); - var reject = require_reject(); - var partition = /* @__PURE__ */ juxt([filter, reject]); - module2.exports = partition; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pick.js -var require_pick = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pick.js"(exports2, module2) { - var _curry2 = require_curry2(); - var pick = /* @__PURE__ */ _curry2(function pick2(names, obj) { - var result = {}; - var idx = 0; - while (idx < names.length) { - if (names[idx] in obj) { - result[names[idx]] = obj[names[idx]]; - } - idx += 1; + glob.sync = globSync; + var GlobSync = glob.GlobSync = globSync.GlobSync; + glob.glob = glob; + function extend(origin, add) { + if (add === null || typeof add !== "object") { + return origin; } - return result; - }); - module2.exports = pick; - } -}); - -// ../../node_modules/.pnpm/@zkochan+which@2.0.3/node_modules/@zkochan/which/which.js -var require_which2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+which@2.0.3/node_modules/@zkochan/which/which.js"(exports2, module2) { - var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys"; - var path = require("path"); - var COLON = isWindows ? ";" : ":"; - var isexe = require_isexe(); - var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); - var getPathInfo = (cmd, opt) => { - const colon = opt.colon || COLON; - const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : (opt.path || process.env.PATH || "").split(colon); - const pathExtExe = isWindows ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : ""; - const pathExt = isWindows ? pathExtExe.split(colon) : [""]; - if (isWindows) { - if (cmd.indexOf(".") !== -1 && pathExt[0] !== "") - pathExt.unshift(""); + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; } - return { - pathEnv, - pathExt, - pathExtExe - }; + return origin; + } + glob.hasMagic = function(pattern, options_) { + var options = extend({}, options_); + options.noprocess = true; + var g = new Glob(pattern, options); + var set = g.minimatch.set; + if (!pattern) + return false; + if (set.length > 1) + return true; + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== "string") + return true; + } + return false; }; - var which = (cmd, opt, cb) => { - if (typeof opt === "function") { - cb = opt; - opt = {}; + glob.Glob = Glob; + inherits(Glob, EE); + function Glob(pattern, options, cb) { + if (typeof options === "function") { + cb = options; + options = null; } - if (!opt) - opt = {}; - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); - const found = []; - const step = (i) => new Promise((resolve, reject) => { - if (i === pathEnv.length) - return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd)); - const ppRaw = pathEnv[i]; - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; - const pCmd = path.join(pathPart, cmd); - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; - resolve(subStep(p, i, 0)); - }); - const subStep = (p, i, ii) => new Promise((resolve, reject) => { - if (ii === pathExt.length) - return resolve(step(i + 1)); - const ext = pathExt[ii]; - isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { - if (!er && is) { - if (opt.all) - found.push(p + ext); - else - return resolve(p + ext); + if (options && options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return new GlobSync(pattern, options); + } + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb); + setopts(this, pattern, options); + this._didRealPath = false; + var n = this.minimatch.set.length; + this.matches = new Array(n); + if (typeof cb === "function") { + cb = once(cb); + this.on("error", cb); + this.on("end", function(matches) { + cb(null, matches); + }); + } + var self2 = this; + this._processing = 0; + this._emitQueue = []; + this._processQueue = []; + this.paused = false; + if (this.noprocess) + return this; + if (n === 0) + return done(); + var sync = true; + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false, done); + } + sync = false; + function done() { + --self2._processing; + if (self2._processing <= 0) { + if (sync) { + process.nextTick(function() { + self2._finish(); + }); + } else { + self2._finish(); + } + } + } + } + Glob.prototype._finish = function() { + assert(this instanceof Glob); + if (this.aborted) + return; + if (this.realpath && !this._didRealpath) + return this._realpath(); + common.finish(this); + this.emit("end", this.found); + }; + Glob.prototype._realpath = function() { + if (this._didRealpath) + return; + this._didRealpath = true; + var n = this.matches.length; + if (n === 0) + return this._finish(); + var self2 = this; + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next); + function next() { + if (--n === 0) + self2._finish(); + } + }; + Glob.prototype._realpathSet = function(index, cb) { + var matchset = this.matches[index]; + if (!matchset) + return cb(); + var found = Object.keys(matchset); + var self2 = this; + var n = found.length; + if (n === 0) + return cb(); + var set = this.matches[index] = /* @__PURE__ */ Object.create(null); + found.forEach(function(p, i) { + p = self2._makeAbs(p); + rp.realpath(p, self2.realpathCache, function(er, real) { + if (!er) + set[real] = true; + else if (er.syscall === "stat") + set[p] = true; + else + self2.emit("error", er); + if (--n === 0) { + self2.matches[index] = set; + cb(); } - return resolve(subStep(p, i, ii + 1)); }); }); - return cb ? step(0).then((res) => cb(null, res), cb) : step(0); }; - var whichSync = (cmd, opt) => { - opt = opt || {}; - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); - const found = []; - for (let i = 0; i < pathEnv.length; i++) { - const ppRaw = pathEnv[i]; - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw; - const pCmd = path.join(pathPart, cmd); - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd; - for (let j = 0; j < pathExt.length; j++) { - const cur = p + pathExt[j]; - try { - const is = isexe.sync(cur, { pathExt: pathExtExe }); - if (is) { - if (opt.all) - found.push(cur); - else - return cur; - } - } catch (ex) { + Glob.prototype._mark = function(p) { + return common.mark(this, p); + }; + Glob.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + Glob.prototype.abort = function() { + this.aborted = true; + this.emit("abort"); + }; + Glob.prototype.pause = function() { + if (!this.paused) { + this.paused = true; + this.emit("pause"); + } + }; + Glob.prototype.resume = function() { + if (this.paused) { + this.emit("resume"); + this.paused = false; + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0); + this._emitQueue.length = 0; + for (var i = 0; i < eq.length; i++) { + var e = eq[i]; + this._emitMatch(e[0], e[1]); + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0); + this._processQueue.length = 0; + for (var i = 0; i < pq.length; i++) { + var p = pq[i]; + this._processing--; + this._process(p[0], p[1], p[2], p[3]); } } } - if (opt.all && found.length) - return found; - if (opt.nothrow) - return null; - throw getNotFoundError(cmd); }; - module2.exports = which; - which.sync = whichSync; - } -}); - -// ../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js -var require_path_key = __commonJS({ - "../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js"(exports2, module2) { - "use strict"; - var pathKey = (options = {}) => { - const environment = options.env || process.env; - const platform = options.platform || process.platform; - if (platform !== "win32") { - return "PATH"; + Glob.prototype._process = function(pattern, index, inGlobStar, cb) { + assert(this instanceof Glob); + assert(typeof cb === "function"); + if (this.aborted) + return; + this._processing++; + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]); + return; } - return Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path"; + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index, cb); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return cb(); + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); }; - module2.exports = pathKey; - module2.exports.default = pathKey; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/resolveCommand.js -var require_resolveCommand = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var which = require_which(); - var getPathKey = require_path_key(); - function resolveCommandAttempt(parsed, withoutPathExt) { - const env = parsed.options.env || process.env; - const cwd = process.cwd(); - const hasCustomCwd = parsed.options.cwd != null; - const shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled; - if (shouldSwitchCwd) { - try { - process.chdir(parsed.options.cwd); - } catch (err) { + Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); } } - let resolved; - try { - resolved = which.sync(parsed.command, { - path: env[getPathKey({ env })], - pathExt: withoutPathExt ? path.delimiter : void 0 - }); - } catch (e) { - } finally { - if (shouldSwitchCwd) { - process.chdir(cwd); + var len = matchedEntries.length; + if (len === 0) + return cb(); + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); + } + this._emitMatch(index, e); } + return cb(); } - if (resolved) { - resolved = path.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved); - } - return resolved; - } - function resolveCommand(parsed) { - return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true); - } - module2.exports = resolveCommand; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/escape.js -var require_escape = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/escape.js"(exports2, module2) { - "use strict"; - var metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g; - function escapeCommand(arg) { - arg = arg.replace(metaCharsRegExp, "^$1"); - return arg; - } - function escapeArgument(arg, doubleEscapeMetaChars) { - arg = `${arg}`; - arg = arg.replace(/(\\*)"/g, '$1$1\\"'); - arg = arg.replace(/(\\*)$/, "$1$1"); - arg = `"${arg}"`; - arg = arg.replace(metaCharsRegExp, "^$1"); - if (doubleEscapeMetaChars) { - arg = arg.replace(metaCharsRegExp, "^$1"); - } - return arg; - } - module2.exports.command = escapeCommand; - module2.exports.argument = escapeArgument; - } -}); - -// ../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js -var require_shebang_regex = __commonJS({ - "../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js"(exports2, module2) { - "use strict"; - module2.exports = /^#!(.*)/; - } -}); - -// ../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js -var require_shebang_command = __commonJS({ - "../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js"(exports2, module2) { - "use strict"; - var shebangRegex = require_shebang_regex(); - module2.exports = (string = "") => { - const match = string.match(shebangRegex); - if (!match) { - return null; - } - const [path, argument] = match[0].replace(/#! ?/, "").split(" "); - const binary = path.split("/").pop(); - if (binary === "env") { - return argument; + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + this._process([e].concat(remain), index, inGlobStar, cb); } - return argument ? `${binary} ${argument}` : binary; + cb(); }; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/readShebang.js -var require_readShebang = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/util/readShebang.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var shebangCommand = require_shebang_command(); - function readShebang(command) { - const size = 150; - const buffer = Buffer.alloc(size); - let fd; - try { - fd = fs.openSync(command, "r"); - fs.readSync(fd, buffer, 0, size, 0); - fs.closeSync(fd); - } catch (e) { - } - return shebangCommand(buffer.toString()); - } - module2.exports = readShebang; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/parse.js -var require_parse5 = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/parse.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var resolveCommand = require_resolveCommand(); - var escape = require_escape(); - var readShebang = require_readShebang(); - var isWin = process.platform === "win32"; - var isExecutableRegExp = /\.(?:com|exe)$/i; - var isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i; - function detectShebang(parsed) { - parsed.file = resolveCommand(parsed); - const shebang = parsed.file && readShebang(parsed.file); - if (shebang) { - parsed.args.unshift(parsed.file); - parsed.command = shebang; - return resolveCommand(parsed); + Glob.prototype._emitMatch = function(index, e) { + if (this.aborted) + return; + if (isIgnored(this, e)) + return; + if (this.paused) { + this._emitQueue.push([index, e]); + return; } - return parsed.file; - } - function parseNonShell(parsed) { - if (!isWin) { - return parsed; + var abs = isAbsolute(e) ? e : this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) + e = abs; + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; } - const commandFile = detectShebang(parsed); - const needsShell = !isExecutableRegExp.test(commandFile); - if (parsed.options.forceShell || needsShell) { - const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile); - parsed.command = path.normalize(parsed.command); - parsed.command = escape.command(parsed.command); - parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars)); - const shellCommand = [parsed.command].concat(parsed.args).join(" "); - parsed.args = ["/d", "/s", "/c", `"${shellCommand}"`]; - parsed.command = process.env.comspec || "cmd.exe"; - parsed.options.windowsVerbatimArguments = true; + this.matches[index][e] = true; + var st = this.statCache[abs]; + if (st) + this.emit("stat", e, st); + this.emit("match", e); + }; + Glob.prototype._readdirInGlobStar = function(abs, cb) { + if (this.aborted) + return; + if (this.follow) + return this._readdir(abs, false, cb); + var lstatkey = "lstat\0" + abs; + var self2 = this; + var lstatcb = inflight(lstatkey, lstatcb_); + if (lstatcb) + self2.fs.lstat(abs, lstatcb); + function lstatcb_(er, lstat) { + if (er && er.code === "ENOENT") + return cb(); + var isSym = lstat && lstat.isSymbolicLink(); + self2.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) { + self2.cache[abs] = "FILE"; + cb(); + } else + self2._readdir(abs, false, cb); } - return parsed; - } - function parse(command, args2, options) { - if (args2 && !Array.isArray(args2)) { - options = args2; - args2 = null; + }; + Glob.prototype._readdir = function(abs, inGlobStar, cb) { + if (this.aborted) + return; + cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); + if (!cb) + return; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return cb(); + if (Array.isArray(c)) + return cb(null, c); } - args2 = args2 ? args2.slice(0) : []; - options = Object.assign({}, options); - const parsed = { - command, - args: args2, - options, - file: void 0, - original: { - command, - args: args2 - } + var self2 = this; + self2.fs.readdir(abs, readdirCb(this, abs, cb)); + }; + function readdirCb(self2, abs, cb) { + return function(er, entries) { + if (er) + self2._readdirError(abs, er, cb); + else + self2._readdirEntries(abs, entries, cb); }; - return options.shell ? parsed : parseNonShell(parsed); - } - module2.exports = parse; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/enoent.js -var require_enoent = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/lib/enoent.js"(exports2, module2) { - "use strict"; - var isWin = process.platform === "win32"; - function notFoundError(original, syscall) { - return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), { - code: "ENOENT", - errno: "ENOENT", - syscall: `${syscall} ${original.command}`, - path: original.command, - spawnargs: original.args - }); } - function hookChildProcess(cp, parsed) { - if (!isWin) { + Glob.prototype._readdirEntries = function(abs, entries, cb) { + if (this.aborted) return; - } - const originalEmit = cp.emit; - cp.emit = function(name, arg1) { - if (name === "exit") { - const err = verifyENOENT(arg1, parsed, "spawn"); - if (err) { - return originalEmit.call(cp, "error", err); - } + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; } - return originalEmit.apply(cp, arguments); - }; - } - function verifyENOENT(status, parsed) { - if (isWin && status === 1 && !parsed.file) { - return notFoundError(parsed.original, "spawn"); - } - return null; - } - function verifyENOENTSync(status, parsed) { - if (isWin && status === 1 && !parsed.file) { - return notFoundError(parsed.original, "spawnSync"); } - return null; - } - module2.exports = { - hookChildProcess, - verifyENOENT, - verifyENOENTSync, - notFoundError + this.cache[abs] = entries; + return cb(null, entries); }; - } -}); - -// ../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/index.js -var require_cross_spawn = __commonJS({ - "../../node_modules/.pnpm/cross-spawn@7.0.3/node_modules/cross-spawn/index.js"(exports2, module2) { - "use strict"; - var cp = require("child_process"); - var parse = require_parse5(); - var enoent = require_enoent(); - function spawn(command, args2, options) { - const parsed = parse(command, args2, options); - const spawned = cp.spawn(parsed.command, parsed.args, parsed.options); - enoent.hookChildProcess(spawned, parsed); - return spawned; - } - function spawnSync(command, args2, options) { - const parsed = parse(command, args2, options); - const result = cp.spawnSync(parsed.command, parsed.args, parsed.options); - result.error = result.error || enoent.verifyENOENTSync(result.status, parsed); - return result; - } - module2.exports = spawn; - module2.exports.spawn = spawn; - module2.exports.sync = spawnSync; - module2.exports._parse = parse; - module2.exports._enoent = enoent; - } -}); - -// ../../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js -var require_strip_final_newline = __commonJS({ - "../../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js"(exports2, module2) { - "use strict"; - module2.exports = (input) => { - const LF = typeof input === "string" ? "\n" : "\n".charCodeAt(); - const CR = typeof input === "string" ? "\r" : "\r".charCodeAt(); - if (input[input.length - 1] === LF) { - input = input.slice(0, input.length - 1); - } - if (input[input.length - 1] === CR) { - input = input.slice(0, input.length - 1); + Glob.prototype._readdirError = function(f, er, cb) { + if (this.aborted) + return; + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + this.emit("error", error); + this.abort(); + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) { + this.emit("error", er); + this.abort(); + } + if (!this.silent) + console.error("glob error", er); + break; } - return input; + return cb(); }; - } -}); - -// ../../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js -var require_npm_run_path = __commonJS({ - "../../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var pathKey = require_path_key(); - var npmRunPath = (options) => { - options = { - cwd: process.cwd(), - path: process.env[pathKey()], - execPath: process.execPath, - ...options - }; - let previous; - let cwdPath = path.resolve(options.cwd); - const result = []; - while (previous !== cwdPath) { - result.push(path.join(cwdPath, "node_modules/.bin")); - previous = cwdPath; - cwdPath = path.resolve(cwdPath, ".."); + Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false, cb); + var isSym = this.symlinks[abs]; + var len = entries.length; + if (isSym && inGlobStar) + return cb(); + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true, cb); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true, cb); } - const execPathDir = path.resolve(options.cwd, options.execPath, ".."); - result.push(execPathDir); - return result.concat(options.path).join(path.delimiter); + cb(); }; - module2.exports = npmRunPath; - module2.exports.default = npmRunPath; - module2.exports.env = (options) => { - options = { - env: process.env, - ...options - }; - const env = { ...options.env }; - const path2 = pathKey({ env }); - options.path = env[path2]; - env[path2] = module2.exports(options); - return env; + Glob.prototype._processSimple = function(prefix, index, cb) { + var self2 = this; + this._stat(prefix, function(er, exists) { + self2._processSimple2(prefix, index, er, exists, cb); + }); }; - } -}); - -// ../../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js -var require_mimic_fn = __commonJS({ - "../../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js"(exports2, module2) { - "use strict"; - var mimicFn = (to, from) => { - for (const prop of Reflect.ownKeys(from)) { - Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop)); + Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return cb(); + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } } - return to; + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + cb(); }; - module2.exports = mimicFn; - module2.exports.default = mimicFn; - } -}); - -// ../../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js -var require_onetime = __commonJS({ - "../../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js"(exports2, module2) { - "use strict"; - var mimicFn = require_mimic_fn(); - var calledFunctions = new WeakMap(); - var onetime = (function_, options = {}) => { - if (typeof function_ !== "function") { - throw new TypeError("Expected a function"); + Glob.prototype._stat = function(f, cb) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return cb(); + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return cb(null, c); + if (needDir && c === "FILE") + return cb(); } - let returnValue; - let callCount = 0; - const functionName = function_.displayName || function_.name || ""; - const onetime2 = function(...arguments_) { - calledFunctions.set(onetime2, ++callCount); - if (callCount === 1) { - returnValue = function_.apply(this, arguments_); - function_ = null; - } else if (options.throw === true) { - throw new Error(`Function \`${functionName}\` can only be called once`); + var exists; + var stat = this.statCache[abs]; + if (stat !== void 0) { + if (stat === false) + return cb(null, stat); + else { + var type = stat.isDirectory() ? "DIR" : "FILE"; + if (needDir && type === "FILE") + return cb(); + else + return cb(null, type, stat); } - return returnValue; - }; - mimicFn(onetime2, function_); - calledFunctions.set(onetime2, callCount); - return onetime2; + } + var self2 = this; + var statcb = inflight("stat\0" + abs, lstatcb_); + if (statcb) + self2.fs.lstat(abs, statcb); + function lstatcb_(er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + return self2.fs.stat(abs, function(er2, stat2) { + if (er2) + self2._stat2(f, abs, null, lstat, cb); + else + self2._stat2(f, abs, er2, stat2, cb); + }); + } else { + self2._stat2(f, abs, er, lstat, cb); + } + } }; - module2.exports = onetime; - module2.exports.default = onetime; - module2.exports.callCount = (function_) => { - if (!calledFunctions.has(function_)) { - throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`); + Glob.prototype._stat2 = function(f, abs, er, stat, cb) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return cb(); } - return calledFunctions.get(function_); + var needDir = f.slice(-1) === "/"; + this.statCache[abs] = stat; + if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) + return cb(null, false, stat); + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return cb(); + return cb(null, c, stat); }; } }); -// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js -var require_core3 = __commonJS({ - "../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js"(exports2) { +// ../node_modules/.pnpm/npm-packlist@5.1.3/node_modules/npm-packlist/lib/index.js +var require_lib58 = __commonJS({ + "../node_modules/.pnpm/npm-packlist@5.1.3/node_modules/npm-packlist/lib/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SIGNALS = void 0; - var SIGNALS = [ - { - 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: true - }, - { - 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: true - }, - { - name: "SIGSTOP", - number: 19, - action: "pause", - description: "Paused", - standard: "posix", - forced: true - }, - { - 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" + var bundleWalk = require_lib56(); + var BundleWalker = bundleWalk.BundleWalker; + var ignoreWalk = require_lib57(); + var IgnoreWalker = ignoreWalk.Walker; + var rootBuiltinRules = Symbol("root-builtin-rules"); + var packageNecessaryRules = Symbol("package-necessary-rules"); + var path2 = require("path"); + var normalizePackageBin = require_lib55(); + var packageMustHaveFileNames = "readme|copying|license|licence"; + var packageMustHaves = `@(${packageMustHaveFileNames}){,.*[^~$]}`; + var packageMustHavesRE = new RegExp(`^(${packageMustHaveFileNames})(\\..*[^~$])?$`, "i"); + var fs2 = require("fs"); + var glob = require_glob2(); + var globify = (pattern) => pattern.split("\\").join("/"); + var readOutOfTreeIgnoreFiles = (root, rel, result2 = "") => { + for (const file of [".npmignore", ".gitignore"]) { + try { + const ignoreContent = fs2.readFileSync(path2.join(root, file), { encoding: "utf8" }); + result2 += ignoreContent + "\n"; + break; + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + } + } + if (!rel) { + return result2; + } + const firstRel = rel.split(path2.sep)[0]; + const newRoot = path2.join(root, firstRel); + const newRel = path2.relative(newRoot, path2.join(root, rel)); + return readOutOfTreeIgnoreFiles(newRoot, newRel, result2); + }; + var pathHasPkg = (input) => { + if (!input.startsWith("node_modules/")) { + return false; + } + const segments = input.slice("node_modules/".length).split("/", 2); + return segments[0].startsWith("@") ? segments.length === 2 : true; + }; + var pkgFromPath = (input) => { + const segments = input.slice("node_modules/".length).split("/", 2); + return segments[0].startsWith("@") ? segments.join("/") : segments[0]; + }; + var defaultRules = [ + ".npmignore", + ".gitignore", + "**/.git", + "**/.svn", + "**/.hg", + "**/CVS", + "**/.git/**", + "**/.svn/**", + "**/.hg/**", + "**/CVS/**", + "/.lock-wscript", + "/.wafpickle-*", + "/build/config.gypi", + "npm-debug.log", + "**/.npmrc", + ".*.swp", + ".DS_Store", + "**/.DS_Store/**", + "._*", + "**/._*/**", + "*.orig", + "/package-lock.json", + "/yarn.lock", + "/pnpm-lock.yaml", + "/archived-packages/**" + ]; + var nameIsBadForWindows = (file) => /\*/.test(file); + var Walker = class extends IgnoreWalker { + constructor(opt) { + opt = opt || {}; + opt.ignoreFiles = [ + rootBuiltinRules, + "package.json", + ".npmignore", + ".gitignore", + packageNecessaryRules + ]; + opt.includeEmpty = false; + opt.path = opt.path || process.cwd(); + const followRe = /^(?:\/node_modules\/(?:@[^/]+\/[^/]+|[^/]+)\/)*\/node_modules(?:\/@[^/]+)?$/; + const rootPath = opt.parent ? opt.parent.root : opt.path; + const followTestPath = opt.path.replace(/\\/g, "/").slice(rootPath.length); + opt.follow = followRe.test(followTestPath); + super(opt); + if (this.isProject) { + this.bundled = opt.bundled || []; + this.bundledScopes = Array.from(new Set( + this.bundled.filter((f) => /^@/.test(f)).map((f) => f.split("/")[0]) + )); + this.packageJsonCache = this.parent ? this.parent.packageJsonCache : opt.packageJsonCache || /* @__PURE__ */ new Map(); + let rules = defaultRules.join("\n") + "\n"; + if (opt.prefix && opt.workspaces) { + const gPath = globify(opt.path); + const gPrefix = globify(opt.prefix); + const gWorkspaces = opt.workspaces.map((ws) => globify(ws)); + if (gPath !== gPrefix && gWorkspaces.includes(gPath)) { + const relpath = path2.relative(opt.prefix, path2.dirname(opt.path)); + rules += readOutOfTreeIgnoreFiles(opt.prefix, relpath); + } else if (gPath === gPrefix) { + rules += opt.workspaces.map((ws) => globify(path2.relative(opt.path, ws))).join("\n"); + } + } + super.onReadIgnoreFile(rootBuiltinRules, rules, (_) => _); + } else { + this.bundled = []; + this.bundledScopes = []; + this.packageJsonCache = this.parent.packageJsonCache; + } } - ]; - exports2.SIGNALS = SIGNALS; + get isProject() { + return !this.parent || this.parent.follow && this.isSymbolicLink; + } + onReaddir(entries) { + if (this.isProject) { + entries = entries.filter( + (e) => e !== ".git" && !(e === "node_modules" && this.bundled.length === 0) + ); + } + if (!this.isProject || !entries.includes("package.json")) { + return super.onReaddir(entries); + } + const ig = path2.resolve(this.path, "package.json"); + if (this.packageJsonCache.has(ig)) { + const pkg = this.packageJsonCache.get(ig); + if (!pkg || typeof pkg !== "object") { + return this.readPackageJson(entries); + } + return this.getPackageFiles(entries, JSON.stringify(pkg)); + } + this.readPackageJson(entries); + } + onReadPackageJson(entries, er, pkg) { + if (er) { + this.emit("error", er); + } else { + this.getPackageFiles(entries, pkg); + } + } + mustHaveFilesFromPackage(pkg) { + const files = []; + if (pkg.browser) { + files.push("/" + pkg.browser); + } + if (pkg.main) { + files.push("/" + pkg.main); + } + if (pkg.bin) { + for (const key in pkg.bin) { + files.push("/" + pkg.bin[key]); + } + } + files.push( + "/package.json", + "/npm-shrinkwrap.json", + "!/package-lock.json", + packageMustHaves + ); + return files; + } + getPackageFiles(entries, pkg) { + try { + pkg = normalizePackageBin(JSON.parse(pkg.toString())); + } catch (er) { + return super.onReaddir(entries); + } + const ig = path2.resolve(this.path, "package.json"); + this.packageJsonCache.set(ig, pkg); + if (!Array.isArray(pkg.files)) { + return super.onReaddir(entries); + } + pkg.files.push(...this.mustHaveFilesFromPackage(pkg)); + if ((pkg.bundleDependencies || pkg.bundledDependencies) && entries.includes("node_modules")) { + pkg.files.push("node_modules"); + } + const patterns = Array.from(new Set(pkg.files)).reduce((set2, pattern) => { + const excl = pattern.match(/^!+/); + if (excl) { + pattern = pattern.slice(excl[0].length); + } + pattern = pattern.replace(/^\.?\/+/, ""); + const negate = excl && excl[0].length % 2 === 1; + set2.push({ pattern, negate }); + return set2; + }, []); + let n = patterns.length; + const set = /* @__PURE__ */ new Set(); + const negates = /* @__PURE__ */ new Set(); + const results = []; + const then = (pattern, negate, er, fileList, i) => { + if (er) { + return this.emit("error", er); + } + results[i] = { negate, fileList }; + if (--n === 0) { + processResults(results); + } + }; + const processResults = (processed) => { + for (const { negate, fileList } of processed) { + if (negate) { + fileList.forEach((f) => { + f = f.replace(/\/+$/, ""); + set.delete(f); + negates.add(f); + }); + } else { + fileList.forEach((f) => { + f = f.replace(/\/+$/, ""); + set.add(f); + negates.delete(f); + }); + } + } + const list = Array.from(set); + pkg.files = list.concat(Array.from(negates).map((f) => "!" + f)); + const rdResult = Array.from(new Set( + list.map((f) => f.replace(/^\/+/, "")) + )); + super.onReaddir(rdResult); + }; + patterns.forEach(({ pattern, negate }, i) => this.globFiles(pattern, (er, res) => then(pattern, negate, er, res, i))); + } + filterEntry(entry, partial) { + const p = this.path.slice(this.root.length + 1); + const { isProject } = this; + const pkg = isProject && pathHasPkg(entry) ? pkgFromPath(entry) : null; + const rootNM = isProject && entry === "node_modules"; + const rootPJ = isProject && entry === "package.json"; + return ( + // if we're in a bundled package, check with the parent. + /^node_modules($|\/)/i.test(p) && !this.isProject ? this.parent.filterEntry( + this.basename + "/" + entry, + partial + ) : pkg ? this.bundled.indexOf(pkg) !== -1 || this.bundledScopes.indexOf(pkg) !== -1 : rootNM ? !!this.bundled.length : rootPJ ? true : packageMustHavesRE.test(entry) ? true : isProject && (entry === "npm-shrinkwrap.json" || entry === "package.json") ? true : isProject && entry === "package-lock.json" ? false : super.filterEntry(entry, partial) + ); + } + filterEntries() { + if (this.ignoreRules[".npmignore"]) { + this.ignoreRules[".gitignore"] = null; + } + this.filterEntries = super.filterEntries; + super.filterEntries(); + } + addIgnoreFile(file, then) { + const ig = path2.resolve(this.path, file); + if (file === "package.json" && !this.isProject) { + then(); + } else if (this.packageJsonCache.has(ig)) { + this.onPackageJson(ig, this.packageJsonCache.get(ig), then); + } else { + super.addIgnoreFile(file, then); + } + } + onPackageJson(ig, pkg, then) { + this.packageJsonCache.set(ig, pkg); + if (Array.isArray(pkg.files)) { + super.onReadIgnoreFile("package.json", pkg.files.map( + (f) => "!" + f + ).join("\n") + "\n", then); + } else { + const rules = this.mustHaveFilesFromPackage(pkg).map((f) => `!${f}`); + const data = rules.join("\n") + "\n"; + super.onReadIgnoreFile(packageNecessaryRules, data, then); + } + } + // override parent stat function to completely skip any filenames + // that will break windows entirely. + // XXX(isaacs) Next major version should make this an error instead. + stat({ entry, file, dir }, then) { + if (nameIsBadForWindows(entry)) { + then(); + } else { + super.stat({ entry, file, dir }, then); + } + } + // override parent onstat function to nix all symlinks, other than + // those coming out of the followed bundled symlink deps + onstat({ st, entry, file, dir, isSymbolicLink }, then) { + if (st.isSymbolicLink()) { + then(); + } else { + super.onstat({ st, entry, file, dir, isSymbolicLink }, then); + } + } + onReadIgnoreFile(file, data, then) { + if (file === "package.json") { + try { + const ig = path2.resolve(this.path, file); + this.onPackageJson(ig, JSON.parse(data), then); + } catch (er) { + then(); + } + } else { + super.onReadIgnoreFile(file, data, then); + } + } + sort(a, b) { + const exta = path2.extname(a).toLowerCase(); + const extb = path2.extname(b).toLowerCase(); + const basea = path2.basename(a).toLowerCase(); + const baseb = path2.basename(b).toLowerCase(); + return exta.localeCompare(extb, "en") || basea.localeCompare(baseb, "en") || a.localeCompare(b, "en"); + } + globFiles(pattern, cb) { + glob(globify(pattern), { dot: true, cwd: this.path, nocase: true }, cb); + } + readPackageJson(entries) { + fs2.readFile(this.path + "/package.json", (er, pkg) => this.onReadPackageJson(entries, er, pkg)); + } + walker(entry, opt, then) { + new Walker(this.walkerOpt(entry, opt)).on("done", then).start(); + } + }; + var walk = (options, callback) => { + options = options || {}; + const p = new Promise((resolve, reject) => { + const bw = new BundleWalker(options); + bw.on("done", (bundled) => { + options.bundled = bundled; + options.packageJsonCache = bw.packageJsonCache; + new Walker(options).on("done", resolve).on("error", reject).start(); + }); + bw.start(); + }); + return callback ? p.then((res) => callback(null, res), callback) : p; + }; + module2.exports = walk; + walk.Walker = Walker; } }); -// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js -var require_realtime = __commonJS({ - "../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js"(exports2) { +// ../fetching/directory-fetcher/lib/index.js +var require_lib59 = __commonJS({ + "../fetching/directory-fetcher/lib/index.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SIGRTMAX = exports2.getRealtimeSignals = void 0; - var getRealtimeSignals = function() { - const length = SIGRTMAX - SIGRTMIN + 1; - return Array.from({ length }, getRealtimeSignal); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.getRealtimeSignals = getRealtimeSignals; - var getRealtimeSignal = function(value, index) { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchFromDir = exports2.createDirectoryFetcher = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var read_project_manifest_1 = require_lib16(); + var npm_packlist_1 = __importDefault4(require_lib58()); + var directoryFetcherLogger = (0, logger_1.logger)("directory-fetcher"); + function createDirectoryFetcher(opts) { + const readFileStat = opts?.resolveSymlinks === true ? realFileStat : fileStat; + const fetchFromDir2 = opts?.includeOnlyPackageFiles ? fetchPackageFilesFromDir : fetchAllFilesFromDir.bind(null, readFileStat); + const directoryFetcher = (cafs, resolution, opts2) => { + const dir = path_1.default.join(opts2.lockfileDir, resolution.directory); + return fetchFromDir2(dir, opts2); + }; return { - name: `SIGRT${index + 1}`, - number: SIGRTMIN + index, - action: "terminate", - description: "Application-specific signal (realtime)", - standard: "posix" + directory: directoryFetcher }; - }; - var SIGRTMIN = 34; - var SIGRTMAX = 64; - exports2.SIGRTMAX = SIGRTMAX; + } + exports2.createDirectoryFetcher = createDirectoryFetcher; + async function fetchFromDir(dir, opts) { + if (opts.includeOnlyPackageFiles) { + return fetchPackageFilesFromDir(dir, opts); + } + const readFileStat = opts?.resolveSymlinks === true ? realFileStat : fileStat; + return fetchAllFilesFromDir(readFileStat, dir, opts); + } + exports2.fetchFromDir = fetchFromDir; + async function fetchAllFilesFromDir(readFileStat, dir, opts) { + const filesIndex = await _fetchAllFilesFromDir(readFileStat, dir); + if (opts.manifest) { + const manifest = await (0, read_project_manifest_1.safeReadProjectManifestOnly)(dir) ?? {}; + opts.manifest.resolve(manifest); + } + return { + local: true, + filesIndex, + packageImportMethod: "hardlink" + }; + } + async function _fetchAllFilesFromDir(readFileStat, dir, relativeDir = "") { + const filesIndex = {}; + const files = await fs_1.promises.readdir(dir); + await Promise.all(files.filter((file) => file !== "node_modules").map(async (file) => { + const { filePath, stat } = await readFileStat(path_1.default.join(dir, file)); + if (!filePath) + return; + const relativeSubdir = `${relativeDir}${relativeDir ? "/" : ""}${file}`; + if (stat.isDirectory()) { + const subFilesIndex = await _fetchAllFilesFromDir(readFileStat, filePath, relativeSubdir); + Object.assign(filesIndex, subFilesIndex); + } else { + filesIndex[relativeSubdir] = filePath; + } + })); + return filesIndex; + } + async function realFileStat(filePath) { + let stat = await fs_1.promises.lstat(filePath); + if (!stat.isSymbolicLink()) { + return { filePath, stat }; + } + try { + filePath = await fs_1.promises.realpath(filePath); + stat = await fs_1.promises.stat(filePath); + return { filePath, stat }; + } catch (err) { + if (err.code === "ENOENT") { + directoryFetcherLogger.debug({ brokenSymlink: filePath }); + return { filePath: null, stat: null }; + } + throw err; + } + } + async function fileStat(filePath) { + try { + return { + filePath, + stat: await fs_1.promises.stat(filePath) + }; + } catch (err) { + if (err.code === "ENOENT") { + directoryFetcherLogger.debug({ brokenSymlink: filePath }); + return { filePath: null, stat: null }; + } + throw err; + } + } + async function fetchPackageFilesFromDir(dir, opts) { + const files = await (0, npm_packlist_1.default)({ path: dir }); + const filesIndex = Object.fromEntries(files.map((file) => [file, path_1.default.join(dir, file)])); + if (opts.manifest) { + const manifest = await (0, read_project_manifest_1.safeReadProjectManifestOnly)(dir) ?? {}; + opts.manifest.resolve(manifest); + } + return { + local: true, + filesIndex, + packageImportMethod: "hardlink" + }; + } } }); -// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js -var require_signals2 = __commonJS({ - "../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js"(exports2) { +// ../node_modules/.pnpm/run-groups@3.0.1/node_modules/run-groups/lib/index.js +var require_lib60 = __commonJS({ + "../node_modules/.pnpm/run-groups@3.0.1/node_modules/run-groups/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getSignals = void 0; - var _os = require("os"); - var _core = require_core3(); - var _realtime = require_realtime(); - var getSignals = function() { - const realtimeSignals = (0, _realtime.getRealtimeSignals)(); - const signals = [..._core.SIGNALS, ...realtimeSignals].map(normalizeSignal); - return signals; - }; - exports2.getSignals = getSignals; - var normalizeSignal = function({ - name, - number: defaultNumber, - description, - action, - forced = false, - standard - }) { - const { - signals: { [name]: constantSignal } - } = _os.constants; - const supported = constantSignal !== void 0; - const number = supported ? constantSignal : defaultNumber; - return { name, number, description, supported, action, forced, standard }; + var pLimit = require_p_limit(); + exports2.default = async (concurrency, groups) => { + const limitRun = pLimit(concurrency); + for (const tasks of groups) { + await Promise.all(tasks.map((task) => limitRun(task))); + } }; } }); -// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js -var require_main = __commonJS({ - "../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js"(exports2) { +// ../exec/lifecycle/lib/runLifecycleHooksConcurrently.js +var require_runLifecycleHooksConcurrently = __commonJS({ + "../exec/lifecycle/lib/runLifecycleHooksConcurrently.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.signalsByNumber = exports2.signalsByName = void 0; - var _os = require("os"); - var _signals = require_signals2(); - var _realtime = require_realtime(); - var getSignalsByName = function() { - const signals = (0, _signals.getSignals)(); - return signals.reduce(getSignalByName, {}); - }; - var getSignalByName = function(signalByNameMemo, { name, number, description, supported, action, forced, standard }) { - return { - ...signalByNameMemo, - [name]: { name, number, description, supported, action, forced, standard } - }; - }; - var signalsByName = getSignalsByName(); - exports2.signalsByName = signalsByName; - var getSignalsByNumber = function() { - const signals = (0, _signals.getSignals)(); - const length = _realtime.SIGRTMAX + 1; - const signalsA = Array.from({ length }, (value, number) => getSignalByNumber(number, signals)); - return Object.assign({}, ...signalsA); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var getSignalByNumber = function(number, signals) { - const signal = findSignalByNumber(number, signals); - if (signal === void 0) { - return {}; - } - const { name, description, supported, action, forced, standard } = signal; - return { - [number]: { - name, - number, - description, - supported, - action, - forced, - standard + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.runLifecycleHooksConcurrently = void 0; + var fs_1 = __importDefault4(require("fs")); + var link_bins_1 = require_lib54(); + var logger_1 = require_lib6(); + var path_1 = __importDefault4(require("path")); + var directory_fetcher_1 = require_lib59(); + var run_groups_1 = __importDefault4(require_lib60()); + var runLifecycleHook_1 = require_runLifecycleHook(); + async function runLifecycleHooksConcurrently(stages, importers, childConcurrency, opts) { + const importersByBuildIndex = /* @__PURE__ */ new Map(); + for (const importer of importers) { + if (!importersByBuildIndex.has(importer.buildIndex)) { + importersByBuildIndex.set(importer.buildIndex, [importer]); + } else { + importersByBuildIndex.get(importer.buildIndex).push(importer); } - }; - }; - var findSignalByNumber = function(number, signals) { - const signal = signals.find(({ name }) => _os.constants.signals[name] === number); - if (signal !== void 0) { - return signal; } - return signals.find((signalA) => signalA.number === number); - }; - var signalsByNumber = getSignalsByNumber(); - exports2.signalsByNumber = signalsByNumber; + const sortedBuildIndexes = Array.from(importersByBuildIndex.keys()).sort((a, b) => a - b); + const groups = sortedBuildIndexes.map((buildIndex) => { + const importers2 = importersByBuildIndex.get(buildIndex); + return importers2.map(({ manifest, modulesDir, rootDir, stages: importerStages, targetDirs }) => async () => { + await (0, link_bins_1.linkBins)(modulesDir, path_1.default.join(modulesDir, ".bin"), { + extraNodePaths: opts.extraNodePaths, + allowExoticManifests: true, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + projectManifest: manifest, + warn: (message2) => { + logger_1.logger.warn({ message: message2, prefix: rootDir }); + } + }); + const runLifecycleHookOpts = { + ...opts, + depPath: rootDir, + pkgRoot: rootDir, + rootModulesDir: modulesDir + }; + let isBuilt = false; + for (const stage of importerStages ?? stages) { + if (manifest.scripts == null || !manifest.scripts[stage]) + continue; + await (0, runLifecycleHook_1.runLifecycleHook)(stage, manifest, runLifecycleHookOpts); + isBuilt = true; + } + if (targetDirs == null || targetDirs.length === 0 || !isBuilt) + return; + const filesResponse = await (0, directory_fetcher_1.fetchFromDir)(rootDir, { resolveSymlinks: opts.resolveSymlinksInInjectedDirs }); + await Promise.all(targetDirs.map(async (targetDir) => { + const targetModulesDir = path_1.default.join(targetDir, "node_modules"); + const nodeModulesIndex = {}; + if (fs_1.default.existsSync(targetModulesDir)) { + await scanDir("node_modules", targetModulesDir, targetModulesDir, nodeModulesIndex); + } + return opts.storeController.importPackage(targetDir, { + filesResponse: { + fromStore: false, + ...filesResponse, + filesIndex: { + ...filesResponse.filesIndex, + ...nodeModulesIndex + } + }, + force: false + }); + })); + }); + }); + await (0, run_groups_1.default)(childConcurrency, groups); + } + exports2.runLifecycleHooksConcurrently = runLifecycleHooksConcurrently; + async function scanDir(prefix, rootDir, currentDir, index) { + const files = await fs_1.default.promises.readdir(currentDir); + await Promise.all(files.map(async (file) => { + const fullPath = path_1.default.join(currentDir, file); + const stat = await fs_1.default.promises.stat(fullPath); + if (stat.isDirectory()) { + return scanDir(prefix, rootDir, fullPath, index); + } + if (stat.isFile()) { + const relativePath = path_1.default.relative(rootDir, fullPath); + index[path_1.default.join(prefix, relativePath)] = fullPath; + } + })); + } } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js -var require_error2 = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js"(exports2, module2) { +// ../exec/lifecycle/lib/index.js +var require_lib61 = __commonJS({ + "../exec/lifecycle/lib/index.js"(exports2) { "use strict"; - var { signalsByName } = require_main(); - var getErrorPrefix = ({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }) => { - if (timedOut) { - return `timed out after ${timeout} milliseconds`; - } - if (isCanceled) { - return "was canceled"; - } - if (errorCode !== void 0) { - return `failed with ${errorCode}`; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.runPostinstallHooks = exports2.runLifecycleHooksConcurrently = exports2.runLifecycleHook = exports2.makeNodeRequireOption = void 0; + var path_1 = __importDefault4(require("path")); + var read_package_json_1 = require_lib41(); + var path_exists_1 = __importDefault4(require_path_exists()); + var runLifecycleHook_1 = require_runLifecycleHook(); + Object.defineProperty(exports2, "runLifecycleHook", { enumerable: true, get: function() { + return runLifecycleHook_1.runLifecycleHook; + } }); + var runLifecycleHooksConcurrently_1 = require_runLifecycleHooksConcurrently(); + Object.defineProperty(exports2, "runLifecycleHooksConcurrently", { enumerable: true, get: function() { + return runLifecycleHooksConcurrently_1.runLifecycleHooksConcurrently; + } }); + function makeNodeRequireOption(modulePath) { + let { NODE_OPTIONS } = process.env; + NODE_OPTIONS = `${NODE_OPTIONS ?? ""} --require=${modulePath}`.trim(); + return { NODE_OPTIONS }; + } + exports2.makeNodeRequireOption = makeNodeRequireOption; + async function runPostinstallHooks(opts) { + const pkg = await (0, read_package_json_1.safeReadPackageJsonFromDir)(opts.pkgRoot); + if (pkg == null) + return false; + if (pkg.scripts == null) { + pkg.scripts = {}; } - if (signal !== void 0) { - return `was killed with ${signal} (${signalDescription})`; + if (!pkg.scripts.install) { + await checkBindingGyp(opts.pkgRoot, pkg.scripts); } - if (exitCode !== void 0) { - return `failed with exit code ${exitCode}`; + if (pkg.scripts.preinstall) { + await (0, runLifecycleHook_1.runLifecycleHook)("preinstall", pkg, opts); } - return "failed"; - }; - var makeError = ({ - stdout, - stderr, - all, - error, - signal, - exitCode, - command, - escapedCommand, - timedOut, - isCanceled, - killed, - parsed: { options: { timeout } } - }) => { - exitCode = exitCode === null ? void 0 : exitCode; - signal = signal === null ? void 0 : signal; - const signalDescription = signal === void 0 ? void 0 : signalsByName[signal].description; - const errorCode = error && error.code; - const prefix = getErrorPrefix({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }); - const execaMessage = `Command ${prefix}: ${command}`; - const isError = Object.prototype.toString.call(error) === "[object Error]"; - const shortMessage = isError ? `${execaMessage} -${error.message}` : execaMessage; - const message2 = [shortMessage, stderr, stdout].filter(Boolean).join("\n"); - if (isError) { - error.originalMessage = error.message; - error.message = message2; - } else { - error = new Error(message2); + if (pkg.scripts.install) { + await (0, runLifecycleHook_1.runLifecycleHook)("install", pkg, opts); } - error.shortMessage = shortMessage; - error.command = command; - error.escapedCommand = escapedCommand; - error.exitCode = exitCode; - error.signal = signal; - error.signalDescription = signalDescription; - error.stdout = stdout; - error.stderr = stderr; - if (all !== void 0) { - error.all = all; + if (pkg.scripts.postinstall) { + await (0, runLifecycleHook_1.runLifecycleHook)("postinstall", pkg, opts); } - if ("bufferedData" in error) { - delete error.bufferedData; + return pkg.scripts.preinstall != null || pkg.scripts.install != null || pkg.scripts.postinstall != null; + } + exports2.runPostinstallHooks = runPostinstallHooks; + async function checkBindingGyp(root, scripts) { + if (await (0, path_exists_1.default)(path_1.default.join(root, "binding.gyp"))) { + scripts.install = "node-gyp rebuild"; } - error.failed = true; - error.timedOut = Boolean(timedOut); - error.isCanceled = isCanceled; - error.killed = killed && !timedOut; - return error; - }; - module2.exports = makeError; + } } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js -var require_stdio = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js"(exports2, module2) { +// ../node_modules/.pnpm/p-locate@4.1.0/node_modules/p-locate/index.js +var require_p_locate2 = __commonJS({ + "../node_modules/.pnpm/p-locate@4.1.0/node_modules/p-locate/index.js"(exports2, module2) { "use strict"; - var aliases = ["stdin", "stdout", "stderr"]; - var hasAlias = (options) => aliases.some((alias) => options[alias] !== void 0); - var normalizeStdio = (options) => { - if (!options) { - return; - } - const { stdio } = options; - if (stdio === void 0) { - return aliases.map((alias) => options[alias]); - } - if (hasAlias(options)) { - throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map((alias) => `\`${alias}\``).join(", ")}`); - } - if (typeof stdio === "string") { - return stdio; - } - if (!Array.isArray(stdio)) { - throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``); + var pLimit = require_p_limit2(); + var EndError = class extends Error { + constructor(value) { + super(); + this.value = value; } - const length = Math.max(stdio.length, aliases.length); - return Array.from({ length }, (value, index) => stdio[index]); }; - module2.exports = normalizeStdio; - module2.exports.node = (options) => { - const stdio = normalizeStdio(options); - if (stdio === "ipc") { - return "ipc"; - } - if (stdio === void 0 || typeof stdio === "string") { - return [stdio, stdio, stdio, "ipc"]; + var testElement = async (element, tester) => tester(await element); + var finder = async (element) => { + const values = await Promise.all(element); + if (values[1] === true) { + throw new EndError(values[0]); } - if (stdio.includes("ipc")) { - return stdio; + return false; + }; + var pLocate = async (iterable, tester, options) => { + options = { + concurrency: Infinity, + preserveOrder: true, + ...options + }; + const limit = pLimit(options.concurrency); + const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]); + const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); + try { + await Promise.all(items.map((element) => checkLimit(finder, element))); + } catch (error) { + if (error instanceof EndError) { + return error.value; + } + throw error; } - return [...stdio, "ipc"]; }; + module2.exports = pLocate; + module2.exports.default = pLocate; } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js -var require_kill = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js"(exports2, module2) { +// ../node_modules/.pnpm/locate-path@5.0.0/node_modules/locate-path/index.js +var require_locate_path2 = __commonJS({ + "../node_modules/.pnpm/locate-path@5.0.0/node_modules/locate-path/index.js"(exports2, module2) { "use strict"; - var os = require("os"); - var onExit = require_signal_exit(); - var DEFAULT_FORCE_KILL_TIMEOUT = 1e3 * 5; - var spawnedKill = (kill, signal = "SIGTERM", options = {}) => { - const killResult = kill(signal); - setKillTimeout(kill, signal, options, killResult); - return killResult; + var path2 = require("path"); + var fs2 = require("fs"); + var { promisify } = require("util"); + var pLocate = require_p_locate2(); + var fsStat = promisify(fs2.stat); + var fsLStat = promisify(fs2.lstat); + var typeMappings = { + directory: "isDirectory", + file: "isFile" }; - var setKillTimeout = (kill, signal, options, killResult) => { - if (!shouldForceKill(signal, options, killResult)) { + function checkType({ type }) { + if (type in typeMappings) { return; } - const timeout = getForceKillAfterTimeout(options); - const t = setTimeout(() => { - kill("SIGKILL"); - }, timeout); - if (t.unref) { - t.unref(); - } - }; - var shouldForceKill = (signal, { forceKillAfterTimeout }, killResult) => { - return isSigterm(signal) && forceKillAfterTimeout !== false && killResult; - }; - var isSigterm = (signal) => { - return signal === os.constants.signals.SIGTERM || typeof signal === "string" && signal.toUpperCase() === "SIGTERM"; - }; - var getForceKillAfterTimeout = ({ forceKillAfterTimeout = true }) => { - if (forceKillAfterTimeout === true) { - return DEFAULT_FORCE_KILL_TIMEOUT; - } - if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) { - throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`); - } - return forceKillAfterTimeout; - }; - var spawnedCancel = (spawned, context) => { - const killResult = spawned.kill(); - if (killResult) { - context.isCanceled = true; - } - }; - var timeoutKill = (spawned, signal, reject) => { - spawned.kill(signal); - reject(Object.assign(new Error("Timed out"), { timedOut: true, signal })); + throw new Error(`Invalid type specified: ${type}`); + } + var matchType = (type, stat) => type === void 0 || stat[typeMappings[type]](); + module2.exports = async (paths, options) => { + options = { + cwd: process.cwd(), + type: "file", + allowSymlinks: true, + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fsStat : fsLStat; + return pLocate(paths, async (path_) => { + try { + const stat = await statFn(path2.resolve(options.cwd, path_)); + return matchType(options.type, stat); + } catch (_) { + return false; + } + }, options); }; - var setupTimeout = (spawned, { timeout, killSignal = "SIGTERM" }, spawnedPromise) => { - if (timeout === 0 || timeout === void 0) { - return spawnedPromise; + module2.exports.sync = (paths, options) => { + options = { + cwd: process.cwd(), + allowSymlinks: true, + type: "file", + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fs2.statSync : fs2.lstatSync; + for (const path_ of paths) { + try { + const stat = statFn(path2.resolve(options.cwd, path_)); + if (matchType(options.type, stat)) { + return path_; + } + } catch (_) { + } } - let timeoutId; - const timeoutPromise = new Promise((resolve, reject) => { - timeoutId = setTimeout(() => { - timeoutKill(spawned, killSignal, reject); - }, timeout); - }); - const safeSpawnedPromise = spawnedPromise.finally(() => { - clearTimeout(timeoutId); - }); - return Promise.race([timeoutPromise, safeSpawnedPromise]); }; - var validateTimeout = ({ timeout }) => { - if (timeout !== void 0 && (!Number.isFinite(timeout) || timeout < 0)) { - throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`); + } +}); + +// ../node_modules/.pnpm/find-up@4.1.0/node_modules/find-up/index.js +var require_find_up2 = __commonJS({ + "../node_modules/.pnpm/find-up@4.1.0/node_modules/find-up/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var locatePath = require_locate_path2(); + var pathExists = require_path_exists(); + var stop = Symbol("findUp.stop"); + module2.exports = async (name, options = {}) => { + let directory = path2.resolve(options.cwd || ""); + const { root } = path2.parse(directory); + const paths = [].concat(name); + const runMatcher = async (locateOptions) => { + if (typeof name !== "function") { + return locatePath(paths, locateOptions); + } + const foundPath = await name(locateOptions.cwd); + if (typeof foundPath === "string") { + return locatePath([foundPath], locateOptions); + } + return foundPath; + }; + while (true) { + const foundPath = await runMatcher({ ...options, cwd: directory }); + if (foundPath === stop) { + return; + } + if (foundPath) { + return path2.resolve(directory, foundPath); + } + if (directory === root) { + return; + } + directory = path2.dirname(directory); } }; - var setExitHandler = async (spawned, { cleanup, detached }, timedPromise) => { - if (!cleanup || detached) { - return timedPromise; + module2.exports.sync = (name, options = {}) => { + let directory = path2.resolve(options.cwd || ""); + const { root } = path2.parse(directory); + const paths = [].concat(name); + const runMatcher = (locateOptions) => { + if (typeof name !== "function") { + return locatePath.sync(paths, locateOptions); + } + const foundPath = name(locateOptions.cwd); + if (typeof foundPath === "string") { + return locatePath.sync([foundPath], locateOptions); + } + return foundPath; + }; + while (true) { + const foundPath = runMatcher({ ...options, cwd: directory }); + if (foundPath === stop) { + return; + } + if (foundPath) { + return path2.resolve(directory, foundPath); + } + if (directory === root) { + return; + } + directory = path2.dirname(directory); } - const removeExitHandler = onExit(() => { - spawned.kill(); - }); - return timedPromise.finally(() => { - removeExitHandler(); - }); - }; - module2.exports = { - spawnedKill, - spawnedCancel, - setupTimeout, - validateTimeout, - setExitHandler }; + module2.exports.exists = pathExists; + module2.exports.sync.exists = pathExists.sync; + module2.exports.stop = stop; } }); -// ../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js -var require_is_stream = __commonJS({ - "../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js"(exports2, module2) { +// ../node_modules/.pnpm/pkg-dir@4.2.0/node_modules/pkg-dir/index.js +var require_pkg_dir = __commonJS({ + "../node_modules/.pnpm/pkg-dir@4.2.0/node_modules/pkg-dir/index.js"(exports2, module2) { "use strict"; - var isStream = (stream) => stream !== null && typeof stream === "object" && typeof stream.pipe === "function"; - isStream.writable = (stream) => isStream(stream) && stream.writable !== false && typeof stream._write === "function" && typeof stream._writableState === "object"; - isStream.readable = (stream) => isStream(stream) && stream.readable !== false && typeof stream._read === "function" && typeof stream._readableState === "object"; - isStream.duplex = (stream) => isStream.writable(stream) && isStream.readable(stream); - isStream.transform = (stream) => isStream.duplex(stream) && typeof stream._transform === "function"; - module2.exports = isStream; + var path2 = require("path"); + var findUp = require_find_up2(); + var pkgDir = async (cwd) => { + const filePath = await findUp("package.json", { cwd }); + return filePath && path2.dirname(filePath); + }; + module2.exports = pkgDir; + module2.exports.default = pkgDir; + module2.exports.sync = (cwd) => { + const filePath = findUp.sync("package.json", { cwd }); + return filePath && path2.dirname(filePath); + }; } }); -// ../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js -var require_buffer_stream = __commonJS({ - "../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports2, module2) { +// ../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/core.js +var require_core6 = __commonJS({ + "../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/core.js"(exports2) { "use strict"; - var { PassThrough: PassThroughStream } = require("stream"); - module2.exports = (options) => { - options = { ...options }; - const { array } = options; - let { encoding } = options; - const isBuffer = encoding === "buffer"; - let objectMode = false; - if (array) { - objectMode = !(encoding || isBuffer); - } else { - encoding = encoding || "utf8"; - } - if (isBuffer) { - encoding = null; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readPackageJSON = exports2.extractWorkspaces = exports2.isMatchWorkspaces = exports2.checkWorkspaces = exports2.findWorkspaceRoot = void 0; + var path_1 = __importDefault4(require("path")); + var pkg_dir_1 = __importDefault4(require_pkg_dir()); + var fs_1 = require("fs"); + var micromatch_12 = __importDefault4(require_micromatch()); + function findWorkspaceRoot(initial) { + if (!initial) { + initial = process.cwd(); } - const stream = new PassThroughStream({ objectMode }); - if (encoding) { - stream.setEncoding(encoding); + let _pkg = pkg_dir_1.default.sync(initial); + if (!_pkg) { + return null; } - let length = 0; - const chunks = []; - stream.on("data", (chunk) => { - chunks.push(chunk); - if (objectMode) { - length = chunks.length; - } else { - length += chunk.length; + initial = path_1.default.normalize(_pkg); + let previous = null; + let current = initial; + do { + const manifest = readPackageJSON(current); + const workspaces = extractWorkspaces(manifest); + let { done, found } = checkWorkspaces(current, initial); + if (done) { + return found; } - }); - stream.getBufferedValue = () => { - if (array) { - return chunks; + previous = current; + current = path_1.default.dirname(current); + } while (current !== previous); + return null; + } + exports2.findWorkspaceRoot = findWorkspaceRoot; + function checkWorkspaces(current, initial) { + const manifest = readPackageJSON(current); + const workspaces = extractWorkspaces(manifest); + let done = false; + let found; + let relativePath; + if (workspaces) { + done = true; + relativePath = path_1.default.relative(current, initial); + if (relativePath === "" || isMatchWorkspaces(relativePath, workspaces)) { + found = current; + } else { + found = null; } - return isBuffer ? Buffer.concat(chunks, length) : chunks.join(""); + } + return { + done, + found, + relativePath }; - stream.getBufferedLength = () => length; - return stream; - }; + } + exports2.checkWorkspaces = checkWorkspaces; + function isMatchWorkspaces(relativePath, workspaces) { + let ls = micromatch_12.default([relativePath], workspaces); + return ls.length > 0; + } + exports2.isMatchWorkspaces = isMatchWorkspaces; + function extractWorkspaces(manifest) { + const workspaces = (manifest || {}).workspaces; + return workspaces && workspaces.packages || (Array.isArray(workspaces) ? workspaces : null); + } + exports2.extractWorkspaces = extractWorkspaces; + function readPackageJSON(dir) { + const file = path_1.default.join(dir, "package.json"); + if (fs_1.existsSync(file)) { + return JSON.parse(fs_1.readFileSync(file, "utf8")); + } + return null; + } + exports2.readPackageJSON = readPackageJSON; + findWorkspaceRoot.findWorkspaceRoot = findWorkspaceRoot; + findWorkspaceRoot.readPackageJSON = readPackageJSON; + findWorkspaceRoot.extractWorkspaces = extractWorkspaces; + findWorkspaceRoot.isMatchWorkspaces = isMatchWorkspaces; + findWorkspaceRoot.default = findWorkspaceRoot; + exports2.default = findWorkspaceRoot; } }); -// ../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js -var require_get_stream = __commonJS({ - "../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports2, module2) { +// ../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/index.js +var require_find_yarn_workspace_root2 = __commonJS({ + "../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/index.js"(exports2, module2) { "use strict"; - var { constants: BufferConstants } = require("buffer"); - var stream = require("stream"); - var { promisify } = require("util"); - var bufferStream = require_buffer_stream(); - var streamPipelinePromisified = promisify(stream.pipeline); - var MaxBufferError = class extends Error { - constructor() { - super("maxBuffer exceeded"); - this.name = "MaxBufferError"; - } + var core_1 = require_core6(); + module2.exports = core_1.findWorkspaceRoot; + } +}); + +// ../node_modules/.pnpm/pify@4.0.1/node_modules/pify/index.js +var require_pify = __commonJS({ + "../node_modules/.pnpm/pify@4.0.1/node_modules/pify/index.js"(exports2, module2) { + "use strict"; + var processFn = (fn2, options) => function(...args2) { + const P = options.promiseModule; + return new P((resolve, reject) => { + if (options.multiArgs) { + args2.push((...result2) => { + if (options.errorFirst) { + if (result2[0]) { + reject(result2); + } else { + result2.shift(); + resolve(result2); + } + } else { + resolve(result2); + } + }); + } else if (options.errorFirst) { + args2.push((error, result2) => { + if (error) { + reject(error); + } else { + resolve(result2); + } + }); + } else { + args2.push(resolve); + } + fn2.apply(this, args2); + }); }; - async function getStream(inputStream, options) { - if (!inputStream) { - throw new Error("Expected a stream"); + module2.exports = (input, options) => { + options = Object.assign({ + exclude: [/.+(Sync|Stream)$/], + errorFirst: true, + promiseModule: Promise + }, options); + const objType = typeof input; + if (!(input !== null && (objType === "object" || objType === "function"))) { + throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${input === null ? "null" : objType}\``); } - options = { - maxBuffer: Infinity, - ...options + const filter = (key) => { + const match = (pattern) => typeof pattern === "string" ? key === pattern : pattern.test(key); + return options.include ? options.include.some(match) : !options.exclude.some(match); }; - const { maxBuffer } = options; - const stream2 = bufferStream(options); - await new Promise((resolve, reject) => { - const rejectPromise = (error) => { - if (error && stream2.getBufferedLength() <= BufferConstants.MAX_LENGTH) { - error.bufferedData = stream2.getBufferedValue(); - } - reject(error); + let ret; + if (objType === "function") { + ret = function(...args2) { + return options.excludeMain ? input(...args2) : processFn(input, options).apply(this, args2); }; - (async () => { - try { - await streamPipelinePromisified(inputStream, stream2); - resolve(); - } catch (error) { - rejectPromise(error); - } - })(); - stream2.on("data", () => { - if (stream2.getBufferedLength() > maxBuffer) { - rejectPromise(new MaxBufferError()); - } - }); - }); - return stream2.getBufferedValue(); - } - module2.exports = getStream; - module2.exports.buffer = (stream2, options) => getStream(stream2, { ...options, encoding: "buffer" }); - module2.exports.array = (stream2, options) => getStream(stream2, { ...options, array: true }); - module2.exports.MaxBufferError = MaxBufferError; + } else { + ret = Object.create(Object.getPrototypeOf(input)); + } + for (const key in input) { + const property = input[key]; + ret[key] = typeof property === "function" && filter(key) ? processFn(property, options) : property; + } + return ret; + }; } }); -// ../../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js -var require_merge_stream = __commonJS({ - "../../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js"(exports2, module2) { +// ../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js +var require_strip_bom2 = __commonJS({ + "../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js"(exports2, module2) { "use strict"; - var { PassThrough } = require("stream"); - module2.exports = function() { - var sources = []; - var output = new PassThrough({ objectMode: true }); - output.setMaxListeners(0); - output.add = add; - output.isEmpty = isEmpty; - output.on("unpipe", remove); - Array.prototype.slice.call(arguments).forEach(add); - return output; - function add(source) { - if (Array.isArray(source)) { - source.forEach(add); - return this; - } - sources.push(source); - source.once("end", remove.bind(null, source)); - source.once("error", output.emit.bind(output, "error")); - source.pipe(output, { end: false }); - return this; + module2.exports = (x) => { + if (typeof x !== "string") { + throw new TypeError("Expected a string, got " + typeof x); } - function isEmpty() { - return sources.length == 0; + if (x.charCodeAt(0) === 65279) { + return x.slice(1); } - function remove(source) { - sources = sources.filter(function(it) { - return it !== source; - }); - if (!sources.length && output.readable) { - output.end(); - } + return x; + }; + } +}); + +// ../node_modules/.pnpm/load-yaml-file@0.2.0/node_modules/load-yaml-file/index.js +var require_load_yaml_file = __commonJS({ + "../node_modules/.pnpm/load-yaml-file@0.2.0/node_modules/load-yaml-file/index.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var pify = require_pify(); + var stripBom = require_strip_bom2(); + var yaml = require_js_yaml3(); + var parse2 = (data) => yaml.safeLoad(stripBom(data)); + module2.exports = (fp) => pify(fs2.readFile)(fp, "utf8").then((data) => parse2(data)); + module2.exports.sync = (fp) => parse2(fs2.readFileSync(fp, "utf8")); + } +}); + +// ../node_modules/.pnpm/which-pm@2.0.0/node_modules/which-pm/index.js +var require_which_pm = __commonJS({ + "../node_modules/.pnpm/which-pm@2.0.0/node_modules/which-pm/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var pathExists = require_path_exists(); + var loadYamlFile = require_load_yaml_file(); + module2.exports = async function(pkgPath) { + const modulesPath = path2.join(pkgPath, "node_modules"); + const exists = await pathExists(path2.join(modulesPath, ".yarn-integrity")); + if (exists) + return { name: "yarn" }; + try { + const modules = await loadYamlFile(path2.join(modulesPath, ".modules.yaml")); + return toNameAndVersion(modules.packageManager); + } catch (err) { + if (err.code !== "ENOENT") + throw err; } + const modulesExists = await pathExists(modulesPath); + return modulesExists ? { name: "npm" } : null; }; + function toNameAndVersion(pkgSpec) { + if (pkgSpec[0] === "@") { + const woPrefix = pkgSpec.substr(1); + const parts2 = woPrefix.split("@"); + return { + name: `@${parts2[0]}`, + version: parts2[1] + }; + } + const parts = pkgSpec.split("@"); + return { + name: parts[0], + version: parts[1] + }; + } } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js -var require_stream6 = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js"(exports2, module2) { +// ../node_modules/.pnpm/preferred-pm@3.0.3/node_modules/preferred-pm/index.js +var require_preferred_pm = __commonJS({ + "../node_modules/.pnpm/preferred-pm@3.0.3/node_modules/preferred-pm/index.js"(exports2, module2) { "use strict"; - var isStream = require_is_stream(); - var getStream = require_get_stream(); - var mergeStream = require_merge_stream(); - var handleInput = (spawned, input) => { - if (input === void 0 || spawned.stdin === void 0) { - return; + var findYarnWorkspaceRoot = require_find_yarn_workspace_root2(); + var findUp = require_find_up(); + var path2 = require("path"); + var pathExists = require_path_exists(); + var whichPM = require_which_pm(); + module2.exports = async function preferredPM(pkgPath) { + if (typeof pkgPath !== "string") { + throw new TypeError(`pkgPath should be a string, got ${typeof pkgPath}`); } - if (isStream(input)) { - input.pipe(spawned.stdin); - } else { - spawned.stdin.end(input); + if (await pathExists(path2.join(pkgPath, "package-lock.json"))) { + return { + name: "npm", + version: ">=5" + }; } - }; - var makeAllStream = (spawned, { all }) => { - if (!all || !spawned.stdout && !spawned.stderr) { - return; + if (await pathExists(path2.join(pkgPath, "yarn.lock"))) { + return { + name: "yarn", + version: "*" + }; } - const mixed = mergeStream(); - if (spawned.stdout) { - mixed.add(spawned.stdout); + if (await pathExists(path2.join(pkgPath, "pnpm-lock.yaml"))) { + return { + name: "pnpm", + version: ">=3" + }; } - if (spawned.stderr) { - mixed.add(spawned.stderr); + if (await pathExists(path2.join(pkgPath, "shrinkwrap.yaml"))) { + return { + name: "pnpm", + version: "1 || 2" + }; } - return mixed; - }; - var getBufferedData = async (stream, streamPromise) => { - if (!stream) { - return; + if (await findUp("pnpm-lock.yaml", { cwd: pkgPath })) { + return { + name: "pnpm", + version: ">=3" + }; } - stream.destroy(); try { - return await streamPromise; - } catch (error) { - return error.bufferedData; + if (typeof findYarnWorkspaceRoot(pkgPath) === "string") { + return { + name: "yarn", + version: "*" + }; + } + } catch (err) { } + const pm = await whichPM(pkgPath); + return pm && { name: pm.name, version: pm.version || "*" }; }; - var getStreamPromise = (stream, { encoding, buffer, maxBuffer }) => { - if (!stream || !buffer) { - return; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/omit.js +var require_omit = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/omit.js"(exports2, module2) { + var _curry2 = require_curry2(); + var omit = /* @__PURE__ */ _curry2(function omit2(names, obj) { + var result2 = {}; + var index = {}; + var idx = 0; + var len = names.length; + while (idx < len) { + index[names[idx]] = 1; + idx += 1; } - if (encoding) { - return getStream(stream, { encoding, maxBuffer }); + for (var prop in obj) { + if (!index.hasOwnProperty(prop)) { + result2[prop] = obj[prop]; + } } - return getStream.buffer(stream, { maxBuffer }); + return result2; + }); + module2.exports = omit; + } +}); + +// ../exec/prepare-package/lib/index.js +var require_lib62 = __commonJS({ + "../exec/prepare-package/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var getSpawnedResult = async ({ stdout, stderr, all }, { encoding, buffer, maxBuffer }, processDone) => { - const stdoutPromise = getStreamPromise(stdout, { encoding, buffer, maxBuffer }); - const stderrPromise = getStreamPromise(stderr, { encoding, buffer, maxBuffer }); - const allPromise = getStreamPromise(all, { encoding, buffer, maxBuffer: maxBuffer * 2 }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.preparePackage = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var lifecycle_1 = require_lib61(); + var read_package_json_1 = require_lib41(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var preferred_pm_1 = __importDefault4(require_preferred_pm()); + var omit_1 = __importDefault4(require_omit()); + var PREPUBLISH_SCRIPTS = [ + "prepublish", + "prepublishOnly", + "prepack", + "publish", + "postpublish" + ]; + async function preparePackage(opts, pkgDir) { + const manifest = await (0, read_package_json_1.safeReadPackageJsonFromDir)(pkgDir); + if (manifest?.scripts == null || !packageShouldBeBuilt(manifest, pkgDir)) + return false; + if (opts.ignoreScripts) + return true; + const pm = (await (0, preferred_pm_1.default)(pkgDir))?.name ?? "npm"; + const execOpts = { + depPath: `${manifest.name}@${manifest.version}`, + pkgRoot: pkgDir, + // We can't prepare a package without running its lifecycle scripts. + // An alternative solution could be to throw an exception. + rawConfig: (0, omit_1.default)(["ignore-scripts"], opts.rawConfig), + rootModulesDir: pkgDir, + unsafePerm: Boolean(opts.unsafePerm) + }; try { - return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]); - } catch (error) { - return Promise.all([ - { error, signal: error.signal, timedOut: error.timedOut }, - getBufferedData(stdout, stdoutPromise), - getBufferedData(stderr, stderrPromise), - getBufferedData(all, allPromise) - ]); - } - }; - var validateInputSync = ({ input }) => { - if (isStream(input)) { - throw new TypeError("The `input` option cannot be a stream in sync mode"); + const installScriptName = `${pm}-install`; + manifest.scripts[installScriptName] = `${pm} install`; + await (0, lifecycle_1.runLifecycleHook)(installScriptName, manifest, execOpts); + for (const scriptName of PREPUBLISH_SCRIPTS) { + if (manifest.scripts[scriptName] == null || manifest.scripts[scriptName] === "") + continue; + await (0, lifecycle_1.runLifecycleHook)(scriptName, manifest, execOpts); + } + } catch (err) { + err.code = "ERR_PNPM_PREPARE_PACKAGE"; + throw err; } - }; - module2.exports = { - handleInput, - makeAllStream, - getSpawnedResult, - validateInputSync - }; + await (0, rimraf_1.default)(path_1.default.join(pkgDir, "node_modules")); + return true; + } + exports2.preparePackage = preparePackage; + function packageShouldBeBuilt(manifest, pkgDir) { + if (manifest.scripts == null) + return false; + const scripts = manifest.scripts; + if (scripts.prepare != null && scripts.prepare !== "") + return true; + const hasPrepublishScript = PREPUBLISH_SCRIPTS.some((scriptName) => scripts[scriptName] != null && scripts[scriptName] !== ""); + if (!hasPrepublishScript) + return false; + const mainFile = manifest.main ?? "index.js"; + return !fs_1.default.existsSync(path_1.default.join(pkgDir, mainFile)); + } } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js -var require_promise = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js"(exports2, module2) { +// ../node_modules/.pnpm/p-map-values@1.0.0/node_modules/p-map-values/lib/index.js +var require_lib63 = __commonJS({ + "../node_modules/.pnpm/p-map-values@1.0.0/node_modules/p-map-values/lib/index.js"(exports2) { "use strict"; - var nativePromisePrototype = (async () => { - })().constructor.prototype; - var descriptors = ["then", "catch", "finally"].map((property) => [ - property, - Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property) - ]); - var mergePromise = (spawned, promise) => { - for (const [property, descriptor] of descriptors) { - const value = typeof promise === "function" ? (...args2) => Reflect.apply(descriptor.value, promise(), args2) : descriptor.value.bind(promise); - Reflect.defineProperty(spawned, property, { ...descriptor, value }); - } - return spawned; + Object.defineProperty(exports2, "__esModule", { value: true }); + async function pMapValue(mapper, obj) { + const result2 = {}; + await Promise.all(Object.entries(obj).map(async ([key, value]) => { + result2[key] = await mapper(value, key, obj); + })); + return result2; + } + exports2.default = pMapValue; + } +}); + +// ../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js +var require_gitHostedTarballFetcher = __commonJS({ + "../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var getSpawnedPromise = (spawned) => { - return new Promise((resolve, reject) => { - spawned.on("exit", (exitCode, signal) => { - resolve({ exitCode, signal }); - }); - spawned.on("error", (error) => { - reject(error); - }); - if (spawned.stdin) { - spawned.stdin.on("error", (error) => { - reject(error); - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.waitForFilesIndex = exports2.createGitHostedTarballFetcher = void 0; + var logger_1 = require_lib6(); + var prepare_package_1 = require_lib62(); + var p_map_values_1 = __importDefault4(require_lib63()); + var omit_1 = __importDefault4(require_omit()); + function createGitHostedTarballFetcher(fetchRemoteTarball, fetcherOpts) { + const fetch = async (cafs, resolution, opts) => { + const { filesIndex } = await fetchRemoteTarball(cafs, resolution, opts); + try { + const prepareResult = await prepareGitHostedPkg(filesIndex, cafs, fetcherOpts); + if (prepareResult.ignoredBuild) { + (0, logger_1.globalWarn)(`The git-hosted package fetched from "${resolution.tarball}" has to be built but the build scripts were ignored.`); + } + return { filesIndex: prepareResult.filesIndex }; + } catch (err) { + err.message = `Failed to prepare git-hosted package fetched from "${resolution.tarball}": ${err.message}`; + throw err; } + }; + return fetch; + } + exports2.createGitHostedTarballFetcher = createGitHostedTarballFetcher; + async function prepareGitHostedPkg(filesIndex, cafs, opts) { + const tempLocation = await cafs.tempDir(); + await cafs.importPackage(tempLocation, { + filesResponse: { + filesIndex: await waitForFilesIndex(filesIndex), + fromStore: false + }, + force: true }); - }; - module2.exports = { - mergePromise, - getSpawnedPromise - }; + const shouldBeBuilt = await (0, prepare_package_1.preparePackage)(opts, tempLocation); + const newFilesIndex = await cafs.addFilesFromDir(tempLocation); + return { + filesIndex: newFilesIndex, + ignoredBuild: opts.ignoreScripts && shouldBeBuilt + }; + } + async function waitForFilesIndex(filesIndex) { + return (0, p_map_values_1.default)(async (fileInfo) => { + const { integrity, checkedAt } = await fileInfo.writeResult; + return { + ...(0, omit_1.default)(["writeResult"], fileInfo), + checkedAt, + integrity: integrity.toString() + }; + }, filesIndex); + } + exports2.waitForFilesIndex = waitForFilesIndex; } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js -var require_command = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js"(exports2, module2) { +// ../fetching/tarball-fetcher/lib/index.js +var require_lib64 = __commonJS({ + "../fetching/tarball-fetcher/lib/index.js"(exports2) { "use strict"; - var normalizeArgs = (file, args2 = []) => { - if (!Array.isArray(args2)) { - return [file]; - } - return [file, ...args2]; - }; - var NO_ESCAPE_REGEXP = /^[\w.-]+$/; - var DOUBLE_QUOTES_REGEXP = /"/g; - var escapeArg = (arg) => { - if (typeof arg !== "string" || NO_ESCAPE_REGEXP.test(arg)) { - return arg; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createTarballFetcher = exports2.waitForFilesIndex = exports2.TarballIntegrityError = exports2.BadTarballError = void 0; + var error_1 = require_lib8(); + var remoteTarballFetcher_1 = require_remoteTarballFetcher(); + Object.defineProperty(exports2, "TarballIntegrityError", { enumerable: true, get: function() { + return remoteTarballFetcher_1.TarballIntegrityError; + } }); + var localTarballFetcher_1 = require_localTarballFetcher(); + var gitHostedTarballFetcher_1 = require_gitHostedTarballFetcher(); + Object.defineProperty(exports2, "waitForFilesIndex", { enumerable: true, get: function() { + return gitHostedTarballFetcher_1.waitForFilesIndex; + } }); + var errorTypes_1 = require_errorTypes(); + Object.defineProperty(exports2, "BadTarballError", { enumerable: true, get: function() { + return errorTypes_1.BadTarballError; + } }); + function createTarballFetcher(fetchFromRegistry, getAuthHeader, opts) { + const download = (0, remoteTarballFetcher_1.createDownloader)(fetchFromRegistry, { + retry: opts.retry, + timeout: opts.timeout + }); + const remoteTarballFetcher = fetchFromTarball.bind(null, { + download, + getAuthHeaderByURI: getAuthHeader, + offline: opts.offline + }); + return { + localTarball: (0, localTarballFetcher_1.createLocalTarballFetcher)(), + remoteTarball: remoteTarballFetcher, + gitHostedTarball: (0, gitHostedTarballFetcher_1.createGitHostedTarballFetcher)(remoteTarballFetcher, opts) + }; + } + exports2.createTarballFetcher = createTarballFetcher; + async function fetchFromTarball(ctx, cafs, resolution, opts) { + if (ctx.offline) { + throw new error_1.PnpmError("NO_OFFLINE_TARBALL", `A package is missing from the store but cannot download it in offline mode. The missing package may be downloaded from ${resolution.tarball}.`); } - return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`; - }; - var joinCommand = (file, args2) => { - return normalizeArgs(file, args2).join(" "); - }; - var getEscapedCommand = (file, args2) => { - return normalizeArgs(file, args2).map((arg) => escapeArg(arg)).join(" "); - }; - var SPACES_REGEXP = / +/g; - var parseCommand = (command) => { - const tokens = []; - for (const token of command.trim().split(SPACES_REGEXP)) { - const previousToken = tokens[tokens.length - 1]; - if (previousToken && previousToken.endsWith("\\")) { - tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`; - } else { - tokens.push(token); + return ctx.download(resolution.tarball, { + getAuthHeaderByURI: ctx.getAuthHeaderByURI, + cafs, + integrity: resolution.integrity, + manifest: opts.manifest, + onProgress: opts.onProgress, + onStart: opts.onStart, + registry: resolution.registry + }); + } + } +}); + +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/fileSystem.js +var require_fileSystem = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/fileSystem.js"(exports2) { + exports2.require = function() { + if (typeof process === "object" && process.versions && process.versions["electron"]) { + try { + const originalFs = require("original-fs"); + if (Object.keys(originalFs).length > 0) { + return originalFs; + } + } catch (e) { } } - return tokens; + return require("fs"); }; + } +}); + +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/constants.js +var require_constants10 = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/constants.js"(exports2, module2) { module2.exports = { - joinCommand, - getEscapedCommand, - parseCommand + /* The local file header */ + LOCHDR: 30, + // LOC header size + LOCSIG: 67324752, + // "PK\003\004" + LOCVER: 4, + // version needed to extract + LOCFLG: 6, + // general purpose bit flag + LOCHOW: 8, + // compression method + LOCTIM: 10, + // modification time (2 bytes time, 2 bytes date) + LOCCRC: 14, + // uncompressed file crc-32 value + LOCSIZ: 18, + // compressed size + LOCLEN: 22, + // uncompressed size + LOCNAM: 26, + // filename length + LOCEXT: 28, + // extra field length + /* The Data descriptor */ + EXTSIG: 134695760, + // "PK\007\008" + EXTHDR: 16, + // EXT header size + EXTCRC: 4, + // uncompressed file crc-32 value + EXTSIZ: 8, + // compressed size + EXTLEN: 12, + // uncompressed size + /* The central directory file header */ + CENHDR: 46, + // CEN header size + CENSIG: 33639248, + // "PK\001\002" + CENVEM: 4, + // version made by + CENVER: 6, + // version needed to extract + CENFLG: 8, + // encrypt, decrypt flags + CENHOW: 10, + // compression method + CENTIM: 12, + // modification time (2 bytes time, 2 bytes date) + CENCRC: 16, + // uncompressed file crc-32 value + CENSIZ: 20, + // compressed size + CENLEN: 24, + // uncompressed size + CENNAM: 28, + // filename length + CENEXT: 30, + // extra field length + CENCOM: 32, + // file comment length + CENDSK: 34, + // volume number start + CENATT: 36, + // internal file attributes + CENATX: 38, + // external file attributes (host system dependent) + CENOFF: 42, + // LOC header offset + /* The entries in the end of central directory */ + ENDHDR: 22, + // END header size + ENDSIG: 101010256, + // "PK\005\006" + ENDSUB: 8, + // number of entries on this disk + ENDTOT: 10, + // total number of entries + ENDSIZ: 12, + // central directory size in bytes + ENDOFF: 16, + // offset of first CEN header + ENDCOM: 20, + // zip file comment length + END64HDR: 20, + // zip64 END header size + END64SIG: 117853008, + // zip64 Locator signature, "PK\006\007" + END64START: 4, + // number of the disk with the start of the zip64 + END64OFF: 8, + // relative offset of the zip64 end of central directory + END64NUMDISKS: 16, + // total number of disks + ZIP64SIG: 101075792, + // zip64 signature, "PK\006\006" + ZIP64HDR: 56, + // zip64 record minimum size + ZIP64LEAD: 12, + // leading bytes at the start of the record, not counted by the value stored in ZIP64SIZE + ZIP64SIZE: 4, + // zip64 size of the central directory record + ZIP64VEM: 12, + // zip64 version made by + ZIP64VER: 14, + // zip64 version needed to extract + ZIP64DSK: 16, + // zip64 number of this disk + ZIP64DSKDIR: 20, + // number of the disk with the start of the record directory + ZIP64SUB: 24, + // number of entries on this disk + ZIP64TOT: 32, + // total number of entries + ZIP64SIZB: 40, + // zip64 central directory size in bytes + ZIP64OFF: 48, + // offset of start of central directory with respect to the starting disk number + ZIP64EXTRA: 56, + // extensible data sector + /* Compression methods */ + STORED: 0, + // no compression + SHRUNK: 1, + // shrunk + REDUCED1: 2, + // reduced with compression factor 1 + REDUCED2: 3, + // reduced with compression factor 2 + REDUCED3: 4, + // reduced with compression factor 3 + REDUCED4: 5, + // reduced with compression factor 4 + IMPLODED: 6, + // imploded + // 7 reserved for Tokenizing compression algorithm + DEFLATED: 8, + // deflated + ENHANCED_DEFLATED: 9, + // enhanced deflated + PKWARE: 10, + // PKWare DCL imploded + // 11 reserved by PKWARE + BZIP2: 12, + // compressed using BZIP2 + // 13 reserved by PKWARE + LZMA: 14, + // LZMA + // 15-17 reserved by PKWARE + IBM_TERSE: 18, + // compressed using IBM TERSE + IBM_LZ77: 19, + // IBM LZ77 z + AES_ENCRYPT: 99, + // WinZIP AES encryption method + /* General purpose bit flag */ + // values can obtained with expression 2**bitnr + FLG_ENC: 1, + // Bit 0: encrypted file + FLG_COMP1: 2, + // Bit 1, compression option + FLG_COMP2: 4, + // Bit 2, compression option + FLG_DESC: 8, + // Bit 3, data descriptor + FLG_ENH: 16, + // Bit 4, enhanced deflating + FLG_PATCH: 32, + // Bit 5, indicates that the file is compressed patched data. + FLG_STR: 64, + // Bit 6, strong encryption (patented) + // Bits 7-10: Currently unused. + FLG_EFS: 2048, + // Bit 11: Language encoding flag (EFS) + // Bit 12: Reserved by PKWARE for enhanced compression. + // Bit 13: encrypted the Central Directory (patented). + // Bits 14-15: Reserved by PKWARE. + FLG_MSK: 4096, + // mask header values + /* Load type */ + FILE: 2, + BUFFER: 1, + NONE: 0, + /* 4.5 Extensible data fields */ + EF_ID: 0, + EF_SIZE: 2, + /* Header IDs */ + ID_ZIP64: 1, + ID_AVINFO: 7, + ID_PFS: 8, + ID_OS2: 9, + ID_NTFS: 10, + ID_OPENVMS: 12, + ID_UNIX: 13, + ID_FORK: 14, + ID_PATCH: 15, + ID_X509_PKCS7: 20, + ID_X509_CERTID_F: 21, + ID_X509_CERTID_C: 22, + ID_STRONGENC: 23, + ID_RECORD_MGT: 24, + ID_X509_PKCS7_RL: 25, + ID_IBM1: 101, + ID_IBM2: 102, + ID_POSZIP: 18064, + EF_ZIP64_OR_32: 4294967295, + EF_ZIP64_OR_16: 65535, + EF_ZIP64_SUNCOMP: 0, + EF_ZIP64_SCOMP: 8, + EF_ZIP64_RHO: 16, + EF_ZIP64_DSN: 24 }; } }); -// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js -var require_execa = __commonJS({ - "../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var childProcess = require("child_process"); - var crossSpawn = require_cross_spawn(); - var stripFinalNewline = require_strip_final_newline(); - var npmRunPath = require_npm_run_path(); - var onetime = require_onetime(); - var makeError = require_error2(); - var normalizeStdio = require_stdio(); - var { spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler } = require_kill(); - var { handleInput, getSpawnedResult, makeAllStream, validateInputSync } = require_stream6(); - var { mergePromise, getSpawnedPromise } = require_promise(); - var { joinCommand, parseCommand, getEscapedCommand } = require_command(); - var DEFAULT_MAX_BUFFER = 1e3 * 1e3 * 100; - var getEnv = ({ env: envOption, extendEnv, preferLocal, localDir, execPath }) => { - const env = extendEnv ? { ...process.env, ...envOption } : envOption; - if (preferLocal) { - return npmRunPath.env({ env, cwd: localDir, execPath }); - } - return env; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/errors.js +var require_errors4 = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/errors.js"(exports2, module2) { + module2.exports = { + /* Header error messages */ + INVALID_LOC: "Invalid LOC header (bad signature)", + INVALID_CEN: "Invalid CEN header (bad signature)", + INVALID_END: "Invalid END header (bad signature)", + /* ZipEntry error messages*/ + NO_DATA: "Nothing to decompress", + BAD_CRC: "CRC32 checksum failed", + FILE_IN_THE_WAY: "There is a file in the way: %s", + UNKNOWN_METHOD: "Invalid/unsupported compression method", + /* Inflater error messages */ + AVAIL_DATA: "inflate::Available inflate data did not terminate", + INVALID_DISTANCE: "inflate::Invalid literal/length or distance code in fixed or dynamic block", + TO_MANY_CODES: "inflate::Dynamic block code description: too many length or distance codes", + INVALID_REPEAT_LEN: "inflate::Dynamic block code description: repeat more than specified lengths", + INVALID_REPEAT_FIRST: "inflate::Dynamic block code description: repeat lengths with no first length", + INCOMPLETE_CODES: "inflate::Dynamic block code description: code lengths codes incomplete", + INVALID_DYN_DISTANCE: "inflate::Dynamic block code description: invalid distance code lengths", + INVALID_CODES_LEN: "inflate::Dynamic block code description: invalid literal/length code lengths", + INVALID_STORE_BLOCK: "inflate::Stored block length did not match one's complement", + INVALID_BLOCK_TYPE: "inflate::Invalid block type (type == 3)", + /* ADM-ZIP error messages */ + CANT_EXTRACT_FILE: "Could not extract the file", + CANT_OVERRIDE: "Target file already exists", + NO_ZIP: "No zip file was loaded", + NO_ENTRY: "Entry doesn't exist", + DIRECTORY_CONTENT_ERROR: "A directory cannot have content", + FILE_NOT_FOUND: "File not found: %s", + NOT_IMPLEMENTED: "Not implemented", + INVALID_FILENAME: "Invalid filename", + INVALID_FORMAT: "Invalid or unsupported zip format. No END header found" }; - var handleArguments = (file, args2, options = {}) => { - const parsed = crossSpawn._parse(file, args2, options); - file = parsed.command; - args2 = parsed.args; - options = parsed.options; - options = { - maxBuffer: DEFAULT_MAX_BUFFER, - buffer: true, - stripFinalNewline: true, - extendEnv: true, - preferLocal: false, - localDir: options.cwd || process.cwd(), - execPath: process.execPath, - encoding: "utf8", - reject: true, - cleanup: true, - all: false, - windowsHide: true, - ...options - }; - options.env = getEnv(options); - options.stdio = normalizeStdio(options); - if (process.platform === "win32" && path.basename(file, ".exe") === "cmd") { - args2.unshift("/q"); + } +}); + +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/utils.js +var require_utils13 = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/utils.js"(exports2, module2) { + var fsystem = require_fileSystem().require(); + var pth = require("path"); + var Constants = require_constants10(); + var Errors = require_errors4(); + var isWin = typeof process === "object" && "win32" === process.platform; + var is_Obj = (obj) => obj && typeof obj === "object"; + var crcTable = new Uint32Array(256).map((t, c) => { + for (let k = 0; k < 8; k++) { + if ((c & 1) !== 0) { + c = 3988292384 ^ c >>> 1; + } else { + c >>>= 1; + } } - return { file, args: args2, options, parsed }; - }; - var handleOutput = (options, value, error) => { - if (typeof value !== "string" && !Buffer.isBuffer(value)) { - return error === void 0 ? void 0 : ""; + return c >>> 0; + }); + function Utils(opts) { + this.sep = pth.sep; + this.fs = fsystem; + if (is_Obj(opts)) { + if (is_Obj(opts.fs) && typeof opts.fs.statSync === "function") { + this.fs = opts.fs; + } } - if (options.stripFinalNewline) { - return stripFinalNewline(value); + } + module2.exports = Utils; + Utils.prototype.makeDir = function(folder) { + const self2 = this; + function mkdirSync(fpath) { + let resolvedPath = fpath.split(self2.sep)[0]; + fpath.split(self2.sep).forEach(function(name) { + if (!name || name.substr(-1, 1) === ":") + return; + resolvedPath += self2.sep + name; + var stat; + try { + stat = self2.fs.statSync(resolvedPath); + } catch (e) { + self2.fs.mkdirSync(resolvedPath); + } + if (stat && stat.isFile()) + throw Errors.FILE_IN_THE_WAY.replace("%s", resolvedPath); + }); } - return value; + mkdirSync(folder); }; - var execa = (file, args2, options) => { - const parsed = handleArguments(file, args2, options); - const command = joinCommand(file, args2); - const escapedCommand = getEscapedCommand(file, args2); - validateTimeout(parsed.options); - let spawned; + Utils.prototype.writeFileTo = function(path2, content, overwrite, attr) { + const self2 = this; + if (self2.fs.existsSync(path2)) { + if (!overwrite) + return false; + var stat = self2.fs.statSync(path2); + if (stat.isDirectory()) { + return false; + } + } + var folder = pth.dirname(path2); + if (!self2.fs.existsSync(folder)) { + self2.makeDir(folder); + } + var fd; try { - spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options); - } catch (error) { - const dummySpawned = new childProcess.ChildProcess(); - const errorPromise = Promise.reject(makeError({ - error, - stdout: "", - stderr: "", - all: "", - command, - escapedCommand, - parsed, - timedOut: false, - isCanceled: false, - killed: false - })); - return mergePromise(dummySpawned, errorPromise); + fd = self2.fs.openSync(path2, "w", 438); + } catch (e) { + self2.fs.chmodSync(path2, 438); + fd = self2.fs.openSync(path2, "w", 438); } - const spawnedPromise = getSpawnedPromise(spawned); - const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise); - const processDone = setExitHandler(spawned, parsed.options, timedPromise); - const context = { isCanceled: false }; - spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned)); - spawned.cancel = spawnedCancel.bind(null, spawned, context); - const handlePromise = async () => { - const [{ error, exitCode, signal, timedOut }, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone); - const stdout = handleOutput(parsed.options, stdoutResult); - const stderr = handleOutput(parsed.options, stderrResult); - const all = handleOutput(parsed.options, allResult); - if (error || exitCode !== 0 || signal !== null) { - const returnedError = makeError({ - error, - exitCode, - signal, - stdout, - stderr, - all, - command, - escapedCommand, - parsed, - timedOut, - isCanceled: context.isCanceled, - killed: spawned.killed - }); - if (!parsed.options.reject) { - return returnedError; - } - throw returnedError; + if (fd) { + try { + self2.fs.writeSync(fd, content, 0, content.length, 0); + } finally { + self2.fs.closeSync(fd); } - return { - command, - escapedCommand, - exitCode: 0, - stdout, - stderr, - all, - failed: false, - timedOut: false, - isCanceled: false, - killed: false - }; - }; - const handlePromiseOnce = onetime(handlePromise); - handleInput(spawned, parsed.options.input); - spawned.all = makeAllStream(spawned, parsed.options); - return mergePromise(spawned, handlePromiseOnce); + } + self2.fs.chmodSync(path2, attr || 438); + return true; }; - module2.exports = execa; - module2.exports.sync = (file, args2, options) => { - const parsed = handleArguments(file, args2, options); - const command = joinCommand(file, args2); - const escapedCommand = getEscapedCommand(file, args2); - validateInputSync(parsed.options); - let result; - try { - result = childProcess.spawnSync(parsed.file, parsed.args, parsed.options); - } catch (error) { - throw makeError({ - error, - stdout: "", - stderr: "", - all: "", - command, - escapedCommand, - parsed, - timedOut: false, - isCanceled: false, - killed: false - }); + Utils.prototype.writeFileToAsync = function(path2, content, overwrite, attr, callback) { + if (typeof attr === "function") { + callback = attr; + attr = void 0; } - const stdout = handleOutput(parsed.options, result.stdout, result.error); - const stderr = handleOutput(parsed.options, result.stderr, result.error); - if (result.error || result.status !== 0 || result.signal !== null) { - const error = makeError({ - stdout, - stderr, - error: result.error, - signal: result.signal, - exitCode: result.status, - command, - escapedCommand, - parsed, - timedOut: result.error && result.error.code === "ETIMEDOUT", - isCanceled: false, - killed: result.signal !== null + const self2 = this; + self2.fs.exists(path2, function(exist) { + if (exist && !overwrite) + return callback(false); + self2.fs.stat(path2, function(err, stat) { + if (exist && stat.isDirectory()) { + return callback(false); + } + var folder = pth.dirname(path2); + self2.fs.exists(folder, function(exists) { + if (!exists) + self2.makeDir(folder); + self2.fs.open(path2, "w", 438, function(err2, fd) { + if (err2) { + self2.fs.chmod(path2, 438, function() { + self2.fs.open(path2, "w", 438, function(err3, fd2) { + self2.fs.write(fd2, content, 0, content.length, 0, function() { + self2.fs.close(fd2, function() { + self2.fs.chmod(path2, attr || 438, function() { + callback(true); + }); + }); + }); + }); + }); + } else if (fd) { + self2.fs.write(fd, content, 0, content.length, 0, function() { + self2.fs.close(fd, function() { + self2.fs.chmod(path2, attr || 438, function() { + callback(true); + }); + }); + }); + } else { + self2.fs.chmod(path2, attr || 438, function() { + callback(true); + }); + } + }); + }); }); - if (!parsed.options.reject) { - return error; + }); + }; + Utils.prototype.findFiles = function(path2) { + const self2 = this; + function findSync(dir, pattern, recursive) { + if (typeof pattern === "boolean") { + recursive = pattern; + pattern = void 0; } - throw error; + let files = []; + self2.fs.readdirSync(dir).forEach(function(file) { + var path3 = pth.join(dir, file); + if (self2.fs.statSync(path3).isDirectory() && recursive) + files = files.concat(findSync(path3, pattern, recursive)); + if (!pattern || pattern.test(path3)) { + files.push(pth.normalize(path3) + (self2.fs.statSync(path3).isDirectory() ? self2.sep : "")); + } + }); + return files; } - return { - command, - escapedCommand, - exitCode: 0, - stdout, - stderr, - failed: false, - timedOut: false, - isCanceled: false, - killed: false - }; + return findSync(path2, void 0, true); }; - module2.exports.command = (command, options) => { - const [file, ...args2] = parseCommand(command); - return execa(file, args2, options); + Utils.prototype.getAttributes = function() { }; - module2.exports.commandSync = (command, options) => { - const [file, ...args2] = parseCommand(command); - return execa.sync(file, args2, options); + Utils.prototype.setAttributes = function() { }; - module2.exports.node = (scriptPath, args2, options = {}) => { - if (args2 && !Array.isArray(args2) && typeof args2 === "object") { - options = args2; - args2 = []; + Utils.crc32update = function(crc, byte) { + return crcTable[(crc ^ byte) & 255] ^ crc >>> 8; + }; + Utils.crc32 = function(buf) { + if (typeof buf === "string") { + buf = Buffer.from(buf, "utf8"); } - const stdio = normalizeStdio.node(options); - const defaultExecArgv = process.execArgv.filter((arg) => !arg.startsWith("--inspect")); - const { - nodePath = process.execPath, - nodeOptions = defaultExecArgv - } = options; - return execa(nodePath, [ - ...nodeOptions, - scriptPath, - ...Array.isArray(args2) ? args2 : [] - ], { - ...options, - stdin: void 0, - stdout: void 0, - stderr: void 0, - stdio, - shell: false - }); + if (!crcTable.length) + genCRCTable(); + let len = buf.length; + let crc = ~0; + for (let off = 0; off < len; ) + crc = Utils.crc32update(crc, buf[off++]); + return ~crc >>> 0; }; - } -}); - -// ../../node_modules/.pnpm/safe-execa@0.1.1/node_modules/safe-execa/lib/index.js -var require_lib26 = __commonJS({ - "../../node_modules/.pnpm/safe-execa@0.1.1/node_modules/safe-execa/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + Utils.methodToString = function(method) { + switch (method) { + case Constants.STORED: + return "STORED (" + method + ")"; + case Constants.DEFLATED: + return "DEFLATED (" + method + ")"; + default: + return "UNSUPPORTED (" + method + ")"; + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sync = void 0; - var which_1 = __importDefault(require_which2()); - var execa_1 = __importDefault(require_execa()); - var path_name_1 = __importDefault(require_path_name()); - var pathCache = new Map(); - function sync(file, args2, options) { - const fileAbsolutePath = getCommandAbsolutePathSync(file, options); - return execa_1.default.sync(fileAbsolutePath, args2, options); - } - exports2.sync = sync; - function getCommandAbsolutePathSync(file, options) { - var _a, _b; - if (file.includes("\\") || file.includes("/")) - return file; - const path = (_b = (_a = options === null || options === void 0 ? void 0 : options.env) === null || _a === void 0 ? void 0 : _a[path_name_1.default]) !== null && _b !== void 0 ? _b : process.env[path_name_1.default]; - const key = JSON.stringify([path, file]); - let fileAbsolutePath = pathCache.get(key); - if (fileAbsolutePath == null) { - fileAbsolutePath = which_1.default.sync(file, { path }); - pathCache.set(key, fileAbsolutePath); + Utils.canonical = function(path2) { + if (!path2) + return ""; + var safeSuffix = pth.posix.normalize("/" + path2.split("\\").join("/")); + return pth.join(".", safeSuffix); + }; + Utils.sanitize = function(prefix, name) { + prefix = pth.resolve(pth.normalize(prefix)); + var parts = name.split("/"); + for (var i = 0, l = parts.length; i < l; i++) { + var path2 = pth.normalize(pth.join(prefix, parts.slice(i, l).join(pth.sep))); + if (path2.indexOf(prefix) === 0) { + return path2; + } } - if (fileAbsolutePath == null) { - throw new Error(`Couldn't find ${file}`); + return pth.normalize(pth.join(prefix, pth.basename(name))); + }; + Utils.toBuffer = function toBuffer(input) { + if (Buffer.isBuffer(input)) { + return input; + } else if (input instanceof Uint8Array) { + return Buffer.from(input); + } else { + return typeof input === "string" ? Buffer.from(input, "utf8") : Buffer.alloc(0); } - return fileAbsolutePath; - } - function default_1(file, args2, options) { - const fileAbsolutePath = getCommandAbsolutePathSync(file, options); - return execa_1.default(fileAbsolutePath, args2, options); - } - exports2.default = default_1; + }; + Utils.readBigUInt64LE = function(buffer, index) { + var slice = Buffer.from(buffer.slice(index, index + 8)); + slice.swap64(); + return parseInt(`0x${slice.toString("hex")}`); + }; + Utils.isWin = isWin; + Utils.crcTable = crcTable; } }); -// ../../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js -var require_yocto_queue = __commonJS({ - "../../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js"(exports2, module2) { - var Node = class { - constructor(value) { - this.value = value; - this.next = void 0; - } - }; - var Queue = class { - constructor() { - this.clear(); - } - enqueue(value) { - const node = new Node(value); - if (this._head) { - this._tail.next = node; - this._tail = node; - } else { - this._head = node; - this._tail = node; - } - this._size++; - } - dequeue() { - const current = this._head; - if (!current) { - return; - } - this._head = this._head.next; - this._size--; - return current.value; - } - clear() { - this._head = void 0; - this._tail = void 0; - this._size = 0; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/fattr.js +var require_fattr = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/fattr.js"(exports2, module2) { + var fs2 = require_fileSystem().require(); + var pth = require("path"); + fs2.existsSync = fs2.existsSync || pth.existsSync; + module2.exports = function(path2) { + var _path = path2 || "", _obj = newAttr(), _stat = null; + function newAttr() { + return { + directory: false, + readonly: false, + hidden: false, + executable: false, + mtime: 0, + atime: 0 + }; } - get size() { - return this._size; + if (_path && fs2.existsSync(_path)) { + _stat = fs2.statSync(_path); + _obj.directory = _stat.isDirectory(); + _obj.mtime = _stat.mtime; + _obj.atime = _stat.atime; + _obj.executable = (73 & _stat.mode) !== 0; + _obj.readonly = (128 & _stat.mode) === 0; + _obj.hidden = pth.basename(_path)[0] === "."; + } else { + console.warn("Invalid path: " + _path); } - *[Symbol.iterator]() { - let current = this._head; - while (current) { - yield current.value; - current = current.next; + return { + get directory() { + return _obj.directory; + }, + get readOnly() { + return _obj.readonly; + }, + get hidden() { + return _obj.hidden; + }, + get mtime() { + return _obj.mtime; + }, + get atime() { + return _obj.atime; + }, + get executable() { + return _obj.executable; + }, + decodeAttributes: function() { + }, + encodeAttributes: function() { + }, + toJSON: function() { + return { + path: _path, + isDirectory: _obj.directory, + isReadOnly: _obj.readonly, + isHidden: _obj.hidden, + isExecutable: _obj.executable, + mTime: _obj.mtime, + aTime: _obj.atime + }; + }, + toString: function() { + return JSON.stringify(this.toJSON(), null, " "); } - } + }; }; - module2.exports = Queue; } }); -// ../../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js -var require_p_limit = __commonJS({ - "../../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js"(exports2, module2) { - "use strict"; - var Queue = require_yocto_queue(); - var pLimit = (concurrency) => { - if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { - throw new TypeError("Expected `concurrency` to be a number from 1 and up"); - } - const queue = new Queue(); - let activeCount = 0; - const next = () => { - activeCount--; - if (queue.size > 0) { - queue.dequeue()(); - } - }; - const run = async (fn2, resolve, ...args2) => { - activeCount++; - const result = (async () => fn2(...args2))(); - resolve(result); - try { - await result; - } catch { - } - next(); - }; - const enqueue = (fn2, resolve, ...args2) => { - queue.enqueue(run.bind(null, fn2, resolve, ...args2)); - (async () => { - await Promise.resolve(); - if (activeCount < concurrency && queue.size > 0) { - queue.dequeue()(); +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/index.js +var require_util8 = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/util/index.js"(exports2, module2) { + module2.exports = require_utils13(); + module2.exports.Constants = require_constants10(); + module2.exports.Errors = require_errors4(); + module2.exports.FileAttr = require_fattr(); + } +}); + +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/entryHeader.js +var require_entryHeader = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/entryHeader.js"(exports2, module2) { + var Utils = require_util8(); + var Constants = Utils.Constants; + module2.exports = function() { + var _verMade = 20, _version = 10, _flags = 0, _method = 0, _time = 0, _crc = 0, _compressedSize = 0, _size = 0, _fnameLen = 0, _extraLen = 0, _comLen = 0, _diskStart = 0, _inattr = 0, _attr = 0, _offset = 0; + _verMade |= Utils.isWin ? 2560 : 768; + _flags |= Constants.FLG_EFS; + var _dataHeader = {}; + function setTime(val) { + val = new Date(val); + _time = (val.getFullYear() - 1980 & 127) << 25 | // b09-16 years from 1980 + val.getMonth() + 1 << 21 | // b05-08 month + val.getDate() << 16 | // b00-04 hour + // 2 bytes time + val.getHours() << 11 | // b11-15 hour + val.getMinutes() << 5 | // b05-10 minute + val.getSeconds() >> 1; + } + setTime(+/* @__PURE__ */ new Date()); + return { + get made() { + return _verMade; + }, + set made(val) { + _verMade = val; + }, + get version() { + return _version; + }, + set version(val) { + _version = val; + }, + get flags() { + return _flags; + }, + set flags(val) { + _flags = val; + }, + get method() { + return _method; + }, + set method(val) { + switch (val) { + case Constants.STORED: + this.version = 10; + case Constants.DEFLATED: + default: + this.version = 20; } - })(); + _method = val; + }, + get time() { + return new Date((_time >> 25 & 127) + 1980, (_time >> 21 & 15) - 1, _time >> 16 & 31, _time >> 11 & 31, _time >> 5 & 63, (_time & 31) << 1); + }, + set time(val) { + setTime(val); + }, + get crc() { + return _crc; + }, + set crc(val) { + _crc = Math.max(0, val) >>> 0; + }, + get compressedSize() { + return _compressedSize; + }, + set compressedSize(val) { + _compressedSize = Math.max(0, val) >>> 0; + }, + get size() { + return _size; + }, + set size(val) { + _size = Math.max(0, val) >>> 0; + }, + get fileNameLength() { + return _fnameLen; + }, + set fileNameLength(val) { + _fnameLen = val; + }, + get extraLength() { + return _extraLen; + }, + set extraLength(val) { + _extraLen = val; + }, + get commentLength() { + return _comLen; + }, + set commentLength(val) { + _comLen = val; + }, + get diskNumStart() { + return _diskStart; + }, + set diskNumStart(val) { + _diskStart = Math.max(0, val) >>> 0; + }, + get inAttr() { + return _inattr; + }, + set inAttr(val) { + _inattr = Math.max(0, val) >>> 0; + }, + get attr() { + return _attr; + }, + set attr(val) { + _attr = Math.max(0, val) >>> 0; + }, + // get Unix file permissions + get fileAttr() { + return _attr ? (_attr >>> 0 | 0) >> 16 & 4095 : 0; + }, + get offset() { + return _offset; + }, + set offset(val) { + _offset = Math.max(0, val) >>> 0; + }, + get encripted() { + return (_flags & 1) === 1; + }, + get entryHeaderSize() { + return Constants.CENHDR + _fnameLen + _extraLen + _comLen; + }, + get realDataOffset() { + return _offset + Constants.LOCHDR + _dataHeader.fnameLen + _dataHeader.extraLen; + }, + get dataHeader() { + return _dataHeader; + }, + loadDataHeaderFromBinary: function(input) { + var data = input.slice(_offset, _offset + Constants.LOCHDR); + if (data.readUInt32LE(0) !== Constants.LOCSIG) { + throw new Error(Utils.Errors.INVALID_LOC); + } + _dataHeader = { + // version needed to extract + version: data.readUInt16LE(Constants.LOCVER), + // general purpose bit flag + flags: data.readUInt16LE(Constants.LOCFLG), + // compression method + method: data.readUInt16LE(Constants.LOCHOW), + // modification time (2 bytes time, 2 bytes date) + time: data.readUInt32LE(Constants.LOCTIM), + // uncompressed file crc-32 value + crc: data.readUInt32LE(Constants.LOCCRC), + // compressed size + compressedSize: data.readUInt32LE(Constants.LOCSIZ), + // uncompressed size + size: data.readUInt32LE(Constants.LOCLEN), + // filename length + fnameLen: data.readUInt16LE(Constants.LOCNAM), + // extra field length + extraLen: data.readUInt16LE(Constants.LOCEXT) + }; + }, + loadFromBinary: function(data) { + if (data.length !== Constants.CENHDR || data.readUInt32LE(0) !== Constants.CENSIG) { + throw new Error(Utils.Errors.INVALID_CEN); + } + _verMade = data.readUInt16LE(Constants.CENVEM); + _version = data.readUInt16LE(Constants.CENVER); + _flags = data.readUInt16LE(Constants.CENFLG); + _method = data.readUInt16LE(Constants.CENHOW); + _time = data.readUInt32LE(Constants.CENTIM); + _crc = data.readUInt32LE(Constants.CENCRC); + _compressedSize = data.readUInt32LE(Constants.CENSIZ); + _size = data.readUInt32LE(Constants.CENLEN); + _fnameLen = data.readUInt16LE(Constants.CENNAM); + _extraLen = data.readUInt16LE(Constants.CENEXT); + _comLen = data.readUInt16LE(Constants.CENCOM); + _diskStart = data.readUInt16LE(Constants.CENDSK); + _inattr = data.readUInt16LE(Constants.CENATT); + _attr = data.readUInt32LE(Constants.CENATX); + _offset = data.readUInt32LE(Constants.CENOFF); + }, + dataHeaderToBinary: function() { + var data = Buffer.alloc(Constants.LOCHDR); + data.writeUInt32LE(Constants.LOCSIG, 0); + data.writeUInt16LE(_version, Constants.LOCVER); + data.writeUInt16LE(_flags, Constants.LOCFLG); + data.writeUInt16LE(_method, Constants.LOCHOW); + data.writeUInt32LE(_time, Constants.LOCTIM); + data.writeUInt32LE(_crc, Constants.LOCCRC); + data.writeUInt32LE(_compressedSize, Constants.LOCSIZ); + data.writeUInt32LE(_size, Constants.LOCLEN); + data.writeUInt16LE(_fnameLen, Constants.LOCNAM); + data.writeUInt16LE(_extraLen, Constants.LOCEXT); + return data; + }, + entryHeaderToBinary: function() { + var data = Buffer.alloc(Constants.CENHDR + _fnameLen + _extraLen + _comLen); + data.writeUInt32LE(Constants.CENSIG, 0); + data.writeUInt16LE(_verMade, Constants.CENVEM); + data.writeUInt16LE(_version, Constants.CENVER); + data.writeUInt16LE(_flags, Constants.CENFLG); + data.writeUInt16LE(_method, Constants.CENHOW); + data.writeUInt32LE(_time, Constants.CENTIM); + data.writeUInt32LE(_crc, Constants.CENCRC); + data.writeUInt32LE(_compressedSize, Constants.CENSIZ); + data.writeUInt32LE(_size, Constants.CENLEN); + data.writeUInt16LE(_fnameLen, Constants.CENNAM); + data.writeUInt16LE(_extraLen, Constants.CENEXT); + data.writeUInt16LE(_comLen, Constants.CENCOM); + data.writeUInt16LE(_diskStart, Constants.CENDSK); + data.writeUInt16LE(_inattr, Constants.CENATT); + data.writeUInt32LE(_attr, Constants.CENATX); + data.writeUInt32LE(_offset, Constants.CENOFF); + data.fill(0, Constants.CENHDR); + return data; + }, + toJSON: function() { + const bytes = function(nr) { + return nr + " bytes"; + }; + return { + made: _verMade, + version: _version, + flags: _flags, + method: Utils.methodToString(_method), + time: this.time, + crc: "0x" + _crc.toString(16).toUpperCase(), + compressedSize: bytes(_compressedSize), + size: bytes(_size), + fileNameLength: bytes(_fnameLen), + extraLength: bytes(_extraLen), + commentLength: bytes(_comLen), + diskNumStart: _diskStart, + inAttr: _inattr, + attr: _attr, + offset: _offset, + entryHeaderSize: bytes(Constants.CENHDR + _fnameLen + _extraLen + _comLen) + }; + }, + toString: function() { + return JSON.stringify(this.toJSON(), null, " "); + } }; - const generator = (fn2, ...args2) => new Promise((resolve) => { - enqueue(fn2, resolve, ...args2); - }); - Object.defineProperties(generator, { - activeCount: { - get: () => activeCount + }; + } +}); + +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/mainHeader.js +var require_mainHeader = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/mainHeader.js"(exports2, module2) { + var Utils = require_util8(); + var Constants = Utils.Constants; + module2.exports = function() { + var _volumeEntries = 0, _totalEntries = 0, _size = 0, _offset = 0, _commentLength = 0; + return { + get diskEntries() { + return _volumeEntries; + }, + set diskEntries(val) { + _volumeEntries = _totalEntries = val; + }, + get totalEntries() { + return _totalEntries; + }, + set totalEntries(val) { + _totalEntries = _volumeEntries = val; + }, + get size() { + return _size; + }, + set size(val) { + _size = val; + }, + get offset() { + return _offset; }, - pendingCount: { - get: () => queue.size + set offset(val) { + _offset = val; }, - clearQueue: { - value: () => { - queue.clear(); + get commentLength() { + return _commentLength; + }, + set commentLength(val) { + _commentLength = val; + }, + get mainHeaderSize() { + return Constants.ENDHDR + _commentLength; + }, + loadFromBinary: function(data) { + if ((data.length !== Constants.ENDHDR || data.readUInt32LE(0) !== Constants.ENDSIG) && (data.length < Constants.ZIP64HDR || data.readUInt32LE(0) !== Constants.ZIP64SIG)) { + throw new Error(Utils.Errors.INVALID_END); + } + if (data.readUInt32LE(0) === Constants.ENDSIG) { + _volumeEntries = data.readUInt16LE(Constants.ENDSUB); + _totalEntries = data.readUInt16LE(Constants.ENDTOT); + _size = data.readUInt32LE(Constants.ENDSIZ); + _offset = data.readUInt32LE(Constants.ENDOFF); + _commentLength = data.readUInt16LE(Constants.ENDCOM); + } else { + _volumeEntries = Utils.readBigUInt64LE(data, Constants.ZIP64SUB); + _totalEntries = Utils.readBigUInt64LE(data, Constants.ZIP64TOT); + _size = Utils.readBigUInt64LE(data, Constants.ZIP64SIZE); + _offset = Utils.readBigUInt64LE(data, Constants.ZIP64OFF); + _commentLength = 0; } + }, + toBinary: function() { + var b = Buffer.alloc(Constants.ENDHDR + _commentLength); + b.writeUInt32LE(Constants.ENDSIG, 0); + b.writeUInt32LE(0, 4); + b.writeUInt16LE(_volumeEntries, Constants.ENDSUB); + b.writeUInt16LE(_totalEntries, Constants.ENDTOT); + b.writeUInt32LE(_size, Constants.ENDSIZ); + b.writeUInt32LE(_offset, Constants.ENDOFF); + b.writeUInt16LE(_commentLength, Constants.ENDCOM); + b.fill(" ", Constants.ENDHDR); + return b; + }, + toJSON: function() { + const offset = function(nr, len) { + let offs = nr.toString(16).toUpperCase(); + while (offs.length < len) + offs = "0" + offs; + return "0x" + offs; + }; + return { + diskEntries: _volumeEntries, + totalEntries: _totalEntries, + size: _size + " bytes", + offset: offset(_offset, 4), + commentLength: _commentLength + }; + }, + toString: function() { + return JSON.stringify(this.toJSON(), null, " "); } - }); - return generator; + }; }; - module2.exports = pLimit; } }); -// ../../node_modules/.pnpm/p-locate@5.0.0/node_modules/p-locate/index.js -var require_p_locate = __commonJS({ - "../../node_modules/.pnpm/p-locate@5.0.0/node_modules/p-locate/index.js"(exports2, module2) { - "use strict"; - var pLimit = require_p_limit(); - var EndError = class extends Error { - constructor(value) { - super(); - this.value = value; - } - }; - var testElement = async (element, tester) => tester(await element); - var finder = async (element) => { - const values = await Promise.all(element); - if (values[1] === true) { - throw new EndError(values[0]); - } - return false; - }; - var pLocate = async (iterable, tester, options) => { - options = { - concurrency: Infinity, - preserveOrder: true, - ...options - }; - const limit = pLimit(options.concurrency); - const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]); - const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); - try { - await Promise.all(items.map((element) => checkLimit(finder, element))); - } catch (error) { - if (error instanceof EndError) { - return error.value; - } - throw error; - } - }; - module2.exports = pLocate; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/index.js +var require_headers2 = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/headers/index.js"(exports2) { + exports2.EntryHeader = require_entryHeader(); + exports2.MainHeader = require_mainHeader(); } }); -// ../../node_modules/.pnpm/locate-path@6.0.0/node_modules/locate-path/index.js -var require_locate_path = __commonJS({ - "../../node_modules/.pnpm/locate-path@6.0.0/node_modules/locate-path/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var fs = require("fs"); - var { promisify } = require("util"); - var pLocate = require_p_locate(); - var fsStat = promisify(fs.stat); - var fsLStat = promisify(fs.lstat); - var typeMappings = { - directory: "isDirectory", - file: "isFile" - }; - function checkType({ type }) { - if (type in typeMappings) { - return; - } - throw new Error(`Invalid type specified: ${type}`); - } - var matchType = (type, stat) => type === void 0 || stat[typeMappings[type]](); - module2.exports = async (paths, options) => { - options = { - cwd: process.cwd(), - type: "file", - allowSymlinks: true, - ...options - }; - checkType(options); - const statFn = options.allowSymlinks ? fsStat : fsLStat; - return pLocate(paths, async (path_) => { - try { - const stat = await statFn(path.resolve(options.cwd, path_)); - return matchType(options.type, stat); - } catch { - return false; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/deflater.js +var require_deflater = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/deflater.js"(exports2, module2) { + module2.exports = function(inbuf) { + var zlib = require("zlib"); + var opts = { chunkSize: (parseInt(inbuf.length / 1024) + 1) * 1024 }; + return { + deflate: function() { + return zlib.deflateRawSync(inbuf, opts); + }, + deflateAsync: function(callback) { + var tmp = zlib.createDeflateRaw(opts), parts = [], total = 0; + tmp.on("data", function(data) { + parts.push(data); + total += data.length; + }); + tmp.on("end", function() { + var buf = Buffer.alloc(total), written = 0; + buf.fill(0); + for (var i = 0; i < parts.length; i++) { + var part = parts[i]; + part.copy(buf, written); + written += part.length; + } + callback && callback(buf); + }); + tmp.end(inbuf); } - }, options); - }; - module2.exports.sync = (paths, options) => { - options = { - cwd: process.cwd(), - allowSymlinks: true, - type: "file", - ...options }; - checkType(options); - const statFn = options.allowSymlinks ? fs.statSync : fs.lstatSync; - for (const path_ of paths) { - try { - const stat = statFn(path.resolve(options.cwd, path_)); - if (matchType(options.type, stat)) { - return path_; - } - } catch { - } - } }; } }); -// ../../node_modules/.pnpm/path-exists@4.0.0/node_modules/path-exists/index.js -var require_path_exists = __commonJS({ - "../../node_modules/.pnpm/path-exists@4.0.0/node_modules/path-exists/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var { promisify } = require("util"); - var pAccess = promisify(fs.access); - module2.exports = async (path) => { - try { - await pAccess(path); - return true; - } catch (_) { - return false; - } - }; - module2.exports.sync = (path) => { - try { - fs.accessSync(path); - return true; - } catch (_) { - return false; - } +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/inflater.js +var require_inflater = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/inflater.js"(exports2, module2) { + module2.exports = function(inbuf) { + var zlib = require("zlib"); + return { + inflate: function() { + return zlib.inflateRawSync(inbuf); + }, + inflateAsync: function(callback) { + var tmp = zlib.createInflateRaw(), parts = [], total = 0; + tmp.on("data", function(data) { + parts.push(data); + total += data.length; + }); + tmp.on("end", function() { + var buf = Buffer.alloc(total), written = 0; + buf.fill(0); + for (var i = 0; i < parts.length; i++) { + var part = parts[i]; + part.copy(buf, written); + written += part.length; + } + callback && callback(buf); + }); + tmp.end(inbuf); + } + }; }; } }); -// ../../node_modules/.pnpm/find-up@5.0.0/node_modules/find-up/index.js -var require_find_up = __commonJS({ - "../../node_modules/.pnpm/find-up@5.0.0/node_modules/find-up/index.js"(exports2, module2) { +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/zipcrypto.js +var require_zipcrypto = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/zipcrypto.js"(exports2, module2) { "use strict"; - var path = require("path"); - var locatePath = require_locate_path(); - var pathExists = require_path_exists(); - var stop = Symbol("findUp.stop"); - module2.exports = async (name, options = {}) => { - let directory = path.resolve(options.cwd || ""); - const { root } = path.parse(directory); - const paths = [].concat(name); - const runMatcher = async (locateOptions) => { - if (typeof name !== "function") { - return locatePath(paths, locateOptions); - } - const foundPath = await name(locateOptions.cwd); - if (typeof foundPath === "string") { - return locatePath([foundPath], locateOptions); - } - return foundPath; - }; - while (true) { - const foundPath = await runMatcher({ ...options, cwd: directory }); - if (foundPath === stop) { - return; - } - if (foundPath) { - return path.resolve(directory, foundPath); - } - if (directory === root) { - return; + var { randomFillSync } = require("crypto"); + var crctable = new Uint32Array(256).map((t, crc) => { + for (let j = 0; j < 8; j++) { + if (0 !== (crc & 1)) { + crc = crc >>> 1 ^ 3988292384; + } else { + crc >>>= 1; } - directory = path.dirname(directory); } + return crc >>> 0; + }); + var uMul = (a, b) => Math.imul(a, b) >>> 0; + var crc32update = (pCrc32, bval) => { + return crctable[(pCrc32 ^ bval) & 255] ^ pCrc32 >>> 8; }; - module2.exports.sync = (name, options = {}) => { - let directory = path.resolve(options.cwd || ""); - const { root } = path.parse(directory); - const paths = [].concat(name); - const runMatcher = (locateOptions) => { - if (typeof name !== "function") { - return locatePath.sync(paths, locateOptions); - } - const foundPath = name(locateOptions.cwd); - if (typeof foundPath === "string") { - return locatePath.sync([foundPath], locateOptions); - } - return foundPath; - }; - while (true) { - const foundPath = runMatcher({ ...options, cwd: directory }); - if (foundPath === stop) { - return; - } - if (foundPath) { - return path.resolve(directory, foundPath); - } - if (directory === root) { - return; - } - directory = path.dirname(directory); + var genSalt = () => { + if ("function" === typeof randomFillSync) { + return randomFillSync(Buffer.alloc(12)); + } else { + return genSalt.node(); } }; - module2.exports.exists = pathExists; - module2.exports.sync.exists = pathExists.sync; - module2.exports.stop = stop; - } -}); - -// ../filter-workspace-packages/lib/getChangedPackages.js -var require_getChangedPackages = __commonJS({ - "../filter-workspace-packages/lib/getChangedPackages.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + genSalt.node = () => { + const salt = Buffer.alloc(12); + const len = salt.length; + for (let i = 0; i < len; i++) + salt[i] = Math.random() * 256 & 255; + return salt; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var config = { + genSalt }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var micromatch = __importStar2(require_micromatch()); - var execa_1 = __importDefault(require_lib26()); - var find_up_1 = __importDefault(require_find_up()); - async function changedSince(packageDirs, commit, opts) { - var _a, _b, _c; - const repoRoot = path_1.default.resolve((_a = await find_up_1.default(".git", { cwd: opts.workspaceDir, type: "directory" })) !== null && _a !== void 0 ? _a : opts.workspaceDir, ".."); - const changedDirs = (await getChangedDirsSinceCommit(commit, opts.workspaceDir, (_b = opts.testPattern) !== null && _b !== void 0 ? _b : [], (_c = opts.changedFilesIgnorePattern) !== null && _c !== void 0 ? _c : [])).map((changedDir) => ({ ...changedDir, dir: path_1.default.join(repoRoot, changedDir.dir) })); - const pkgChangeTypes = new Map(); - for (const pkgDir of packageDirs) { - pkgChangeTypes.set(pkgDir, void 0); + function Initkeys(pw) { + const pass = Buffer.isBuffer(pw) ? pw : Buffer.from(pw); + this.keys = new Uint32Array([305419896, 591751049, 878082192]); + for (let i = 0; i < pass.length; i++) { + this.updateKeys(pass[i]); } - for (const changedDir of changedDirs) { - let currentDir = changedDir.dir; - while (!pkgChangeTypes.has(currentDir)) { - const nextDir = path_1.default.dirname(currentDir); - if (nextDir === currentDir) - break; - currentDir = nextDir; + } + Initkeys.prototype.updateKeys = function(byteValue) { + const keys = this.keys; + keys[0] = crc32update(keys[0], byteValue); + keys[1] += keys[0] & 255; + keys[1] = uMul(keys[1], 134775813) + 1; + keys[2] = crc32update(keys[2], keys[1] >>> 24); + return byteValue; + }; + Initkeys.prototype.next = function() { + const k = (this.keys[2] | 2) >>> 0; + return uMul(k, k ^ 1) >> 8 & 255; + }; + function make_decrypter(pwd) { + const keys = new Initkeys(pwd); + return function(data) { + const result2 = Buffer.alloc(data.length); + let pos = 0; + for (let c of data) { + result2[pos++] = keys.updateKeys(c ^ keys.next()); } - if (pkgChangeTypes.get(currentDir) === "source") - continue; - pkgChangeTypes.set(currentDir, changedDir.changeType); - } - const changedPkgs = []; - const ignoreDependentForPkgs = []; - for (const [changedDir, changeType] of pkgChangeTypes.entries()) { - switch (changeType) { - case "source": - changedPkgs.push(changedDir); - break; - case "test": - ignoreDependentForPkgs.push(changedDir); - break; + return result2; + }; + } + function make_encrypter(pwd) { + const keys = new Initkeys(pwd); + return function(data, result2, pos = 0) { + if (!result2) + result2 = Buffer.alloc(data.length); + for (let c of data) { + const k = keys.next(); + result2[pos++] = c ^ k; + keys.updateKeys(c); } - } - return [changedPkgs, ignoreDependentForPkgs]; + return result2; + }; } - exports2.default = changedSince; - async function getChangedDirsSinceCommit(commit, workingDir, testPattern, changedFilesIgnorePattern) { - let diff; - try { - diff = (await execa_1.default("git", [ - "diff", - "--name-only", - commit, - "--", - workingDir - ], { cwd: workingDir })).stdout; - } catch (err) { - throw new error_1.default("FILTER_CHANGED", `Filtering by changed packages failed. ${err.stderr}`); + function decrypt(data, header, pwd) { + if (!data || !Buffer.isBuffer(data) || data.length < 12) { + return Buffer.alloc(0); } - const changedDirs = new Map(); - if (!diff) { - return []; + const decrypter = make_decrypter(pwd); + const salt = decrypter(data.slice(0, 12)); + if (salt[11] !== header.crc >>> 24) { + throw "ADM-ZIP: Wrong Password"; } - const allChangedFiles = diff.split("\n"); - const patterns = changedFilesIgnorePattern.filter((pattern) => pattern.length); - const changedFiles = patterns.length > 0 ? micromatch.not(allChangedFiles, patterns, { - dot: true - }) : allChangedFiles; - for (const changedFile of changedFiles) { - const dir = path_1.default.dirname(changedFile); - if (changedDirs.get(dir) === "source") - continue; - const changeType = testPattern.some((pattern) => micromatch.isMatch(changedFile, pattern)) ? "test" : "source"; - changedDirs.set(dir, changeType); + return decrypter(data.slice(12)); + } + function _salter(data) { + if (Buffer.isBuffer(data) && data.length >= 12) { + config.genSalt = function() { + return data.slice(0, 12); + }; + } else if (data === "node") { + config.genSalt = genSalt.node; + } else { + config.genSalt = genSalt; } - return Array.from(changedDirs.entries()).map(([dir, changeType]) => ({ dir, changeType })); } + function encrypt(data, header, pwd, oldlike = false) { + if (data == null) + data = Buffer.alloc(0); + if (!Buffer.isBuffer(data)) + data = Buffer.from(data.toString()); + const encrypter = make_encrypter(pwd); + const salt = config.genSalt(); + salt[11] = header.crc >>> 24 & 255; + if (oldlike) + salt[10] = header.crc >>> 16 & 255; + const result2 = Buffer.alloc(data.length + 12); + encrypter(salt, result2); + return encrypter(data, result2, 12); + } + module2.exports = { decrypt, encrypt, _salter }; } }); -// ../filter-workspace-packages/lib/parsePackageSelector.js -var require_parsePackageSelector = __commonJS({ - "../filter-workspace-packages/lib/parsePackageSelector.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - exports2.default = (rawSelector, prefix) => { - var _a; - let exclude = false; - if (rawSelector[0] === "!") { - exclude = true; - rawSelector = rawSelector.substring(1); - } - let excludeSelf = false; - const includeDependencies = rawSelector.endsWith("..."); - if (includeDependencies) { - rawSelector = rawSelector.substring(0, rawSelector.length - 3); - if (rawSelector.endsWith("^")) { - excludeSelf = true; - rawSelector = rawSelector.substr(0, rawSelector.length - 1); - } - } - const includeDependents = rawSelector.startsWith("..."); - if (includeDependents) { - rawSelector = rawSelector.substring(3); - if (rawSelector.startsWith("^")) { - excludeSelf = true; - rawSelector = rawSelector.substr(1); - } - } - const matches = rawSelector.match(/^([^.][^{}[\]]*)?(\{[^}]+\})?(\[[^\]]+\])?$/); - if (matches === null) { - if (isSelectorByLocation(rawSelector)) { - return { - exclude, - excludeSelf: false, - parentDir: path_1.default.join(prefix, rawSelector) - }; - } - return { - excludeSelf: false, - namePattern: rawSelector - }; - } - return { - diff: (_a = matches[3]) === null || _a === void 0 ? void 0 : _a.substr(1, matches[3].length - 2), - exclude, - excludeSelf, - includeDependencies, - includeDependents, - namePattern: matches[1], - parentDir: matches[2] && path_1.default.join(prefix, matches[2].substr(1, matches[2].length - 2)) - }; - }; - function isSelectorByLocation(rawSelector) { - if (rawSelector[0] !== ".") - return false; - if (rawSelector.length === 1 || rawSelector[1] === "/" || rawSelector[1] === "\\") - return true; - if (rawSelector[1] !== ".") - return false; - return rawSelector.length === 2 || rawSelector[2] === "/" || rawSelector[2] === "\\"; - } +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/index.js +var require_methods = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/methods/index.js"(exports2) { + exports2.Deflater = require_deflater(); + exports2.Inflater = require_inflater(); + exports2.ZipCrypto = require_zipcrypto(); } }); -// ../filter-workspace-packages/lib/index.js -var require_lib27 = __commonJS({ - "../filter-workspace-packages/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.filterPkgsBySelectorObjects = exports2.filterPackages = exports2.readProjects = exports2.parsePackageSelector = void 0; - var find_workspace_packages_1 = __importDefault(require_lib22()); - var matcher_1 = __importDefault(require_lib23()); - var pkgs_graph_1 = __importDefault(require_lib25()); - var is_subdir_1 = __importDefault(require_is_subdir()); - var difference_1 = __importDefault(require_difference()); - var partition_1 = __importDefault(require_partition4()); - var pick_1 = __importDefault(require_pick()); - var micromatch = __importStar2(require_micromatch()); - var getChangedPackages_1 = __importDefault(require_getChangedPackages()); - var parsePackageSelector_1 = __importDefault(require_parsePackageSelector()); - exports2.parsePackageSelector = parsePackageSelector_1.default; - async function readProjects(workspaceDir, pkgSelectors, opts) { - const allProjects = await find_workspace_packages_1.default(workspaceDir, {}); - const { selectedProjectsGraph } = await filterPkgsBySelectorObjects(allProjects, pkgSelectors, { - linkWorkspacePackages: opts === null || opts === void 0 ? void 0 : opts.linkWorkspacePackages, - workspaceDir, - changedFilesIgnorePattern: opts === null || opts === void 0 ? void 0 : opts.changedFilesIgnorePattern - }); - return { allProjects, selectedProjectsGraph }; - } - exports2.readProjects = readProjects; - async function filterPackages(pkgs, filter, opts) { - const packageSelectors = filter.map(({ filter: f, followProdDepsOnly }) => ({ ...parsePackageSelector_1.default(f, opts.prefix), followProdDepsOnly })); - return filterPkgsBySelectorObjects(pkgs, packageSelectors, opts); - } - exports2.filterPackages = filterPackages; - async function filterPkgsBySelectorObjects(pkgs, packageSelectors, opts) { - const [prodPackageSelectors, allPackageSelectors] = partition_1.default(({ followProdDepsOnly }) => !!followProdDepsOnly, packageSelectors); - if (allPackageSelectors.length > 0 || prodPackageSelectors.length > 0) { - let filteredGraph; - if (allPackageSelectors.length > 0) { - const { graph } = pkgs_graph_1.default(pkgs, { linkWorkspacePackages: opts.linkWorkspacePackages }); - filteredGraph = await filterGraph(graph, allPackageSelectors, { - workspaceDir: opts.workspaceDir, - testPattern: opts.testPattern, - changedFilesIgnorePattern: opts.changedFilesIgnorePattern, - useGlobDirFiltering: opts.useGlobDirFiltering - }); - } - let prodFilteredGraph; - if (prodPackageSelectors.length > 0) { - const { graph } = pkgs_graph_1.default(pkgs, { ignoreDevDeps: true, linkWorkspacePackages: opts.linkWorkspacePackages }); - prodFilteredGraph = await filterGraph(graph, prodPackageSelectors, { - workspaceDir: opts.workspaceDir, - testPattern: opts.testPattern, - changedFilesIgnorePattern: opts.changedFilesIgnorePattern, - useGlobDirFiltering: opts.useGlobDirFiltering - }); +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/zipEntry.js +var require_zipEntry = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/zipEntry.js"(exports2, module2) { + var Utils = require_util8(); + var Headers = require_headers2(); + var Constants = Utils.Constants; + var Methods = require_methods(); + module2.exports = function(input) { + var _entryHeader = new Headers.EntryHeader(), _entryName = Buffer.alloc(0), _comment = Buffer.alloc(0), _isDirectory = false, uncompressedData = null, _extra = Buffer.alloc(0); + function getCompressedDataFromZip() { + if (!input || !Buffer.isBuffer(input)) { + return Buffer.alloc(0); } - return Promise.resolve({ - selectedProjectsGraph: { - ...prodFilteredGraph === null || prodFilteredGraph === void 0 ? void 0 : prodFilteredGraph.selectedProjectsGraph, - ...filteredGraph === null || filteredGraph === void 0 ? void 0 : filteredGraph.selectedProjectsGraph - }, - unmatchedFilters: [ - ...prodFilteredGraph !== void 0 ? prodFilteredGraph.unmatchedFilters : [], - ...filteredGraph !== void 0 ? filteredGraph.unmatchedFilters : [] - ] - }); - } else { - const { graph } = pkgs_graph_1.default(pkgs, { linkWorkspacePackages: opts.linkWorkspacePackages }); - return Promise.resolve({ selectedProjectsGraph: graph, unmatchedFilters: [] }); + _entryHeader.loadDataHeaderFromBinary(input); + return input.slice(_entryHeader.realDataOffset, _entryHeader.realDataOffset + _entryHeader.compressedSize); } - } - exports2.filterPkgsBySelectorObjects = filterPkgsBySelectorObjects; - async function filterGraph(pkgGraph, packageSelectors, opts) { - const [excludeSelectors, includeSelectors] = partition_1.default((selector) => selector.exclude === true, packageSelectors); - const fg = _filterGraph.bind(null, pkgGraph, opts); - const include = includeSelectors.length === 0 ? { selected: Object.keys(pkgGraph), unmatchedFilters: [] } : await fg(includeSelectors); - const exclude = await fg(excludeSelectors); - return { - selectedProjectsGraph: pick_1.default(difference_1.default(include.selected, exclude.selected), pkgGraph), - unmatchedFilters: [...include.unmatchedFilters, ...exclude.unmatchedFilters] - }; - } - exports2.default = filterGraph; - async function _filterGraph(pkgGraph, opts, packageSelectors) { - var _a; - const cherryPickedPackages = []; - const walkedDependencies = new Set(); - const walkedDependents = new Set(); - const walkedDependentsDependencies = new Set(); - const graph = pkgGraphToGraph(pkgGraph); - const unmatchedFilters = []; - let reversedGraph; - const matchPackagesByPath = opts.useGlobDirFiltering === true ? matchPackagesByGlob : matchPackagesByExactPath; - for (const selector of packageSelectors) { - let entryPackages = null; - if (selector.diff) { - let ignoreDependentForPkgs = []; - [entryPackages, ignoreDependentForPkgs] = await getChangedPackages_1.default(Object.keys(pkgGraph), selector.diff, { workspaceDir: (_a = selector.parentDir) !== null && _a !== void 0 ? _a : opts.workspaceDir, testPattern: opts.testPattern, changedFilesIgnorePattern: opts.changedFilesIgnorePattern }); - selectEntries({ - ...selector, - includeDependents: false - }, ignoreDependentForPkgs); - } else if (selector.parentDir) { - entryPackages = matchPackagesByPath(pkgGraph, selector.parentDir); - } - if (selector.namePattern) { - if (entryPackages == null) { - entryPackages = matchPackages(pkgGraph, selector.namePattern); - } else { - entryPackages = matchPackages(pick_1.default(entryPackages, pkgGraph), selector.namePattern); + function crc32OK(data) { + if ((_entryHeader.flags & 8) !== 8) { + if (Utils.crc32(data) !== _entryHeader.dataHeader.crc) { + return false; } + } else { } - if (entryPackages == null) { - throw new Error(`Unsupported package selector: ${JSON.stringify(selector)}`); + return true; + } + function decompress(async, callback, pass) { + if (typeof callback === "undefined" && typeof async === "string") { + pass = async; + async = void 0; } - if (entryPackages.length === 0) { - if (selector.namePattern) { - unmatchedFilters.push(selector.namePattern); - } - if (selector.parentDir) { - unmatchedFilters.push(selector.parentDir); + if (_isDirectory) { + if (async && callback) { + callback(Buffer.alloc(0), Utils.Errors.DIRECTORY_CONTENT_ERROR); } + return Buffer.alloc(0); } - selectEntries(selector, entryPackages); - } - const walked = new Set([...walkedDependencies, ...walkedDependents, ...walkedDependentsDependencies]); - cherryPickedPackages.forEach((cherryPickedPackage) => walked.add(cherryPickedPackage)); - return { - selected: Array.from(walked), - unmatchedFilters - }; - function selectEntries(selector, entryPackages) { - if (selector.includeDependencies) { - pickSubgraph(graph, entryPackages, walkedDependencies, { includeRoot: !selector.excludeSelf }); + var compressedData = getCompressedDataFromZip(); + if (compressedData.length === 0) { + if (async && callback) + callback(compressedData); + return compressedData; } - if (selector.includeDependents) { - if (reversedGraph == null) { - reversedGraph = reverseGraph(graph); + if (_entryHeader.encripted) { + if ("string" !== typeof pass && !Buffer.isBuffer(pass)) { + throw new Error("ADM-ZIP: Incompatible password parameter"); } - pickSubgraph(reversedGraph, entryPackages, walkedDependents, { includeRoot: !selector.excludeSelf }); - } - if (selector.includeDependencies && selector.includeDependents) { - pickSubgraph(graph, Array.from(walkedDependents), walkedDependentsDependencies, { includeRoot: false }); + compressedData = Methods.ZipCrypto.decrypt(compressedData, _entryHeader, pass); } - if (!selector.includeDependencies && !selector.includeDependents) { - Array.prototype.push.apply(cherryPickedPackages, entryPackages); + var data = Buffer.alloc(_entryHeader.size); + switch (_entryHeader.method) { + case Utils.Constants.STORED: + compressedData.copy(data); + if (!crc32OK(data)) { + if (async && callback) + callback(data, Utils.Errors.BAD_CRC); + throw new Error(Utils.Errors.BAD_CRC); + } else { + if (async && callback) + callback(data); + return data; + } + case Utils.Constants.DEFLATED: + var inflater = new Methods.Inflater(compressedData); + if (!async) { + const result2 = inflater.inflate(data); + result2.copy(data, 0); + if (!crc32OK(data)) { + throw new Error(Utils.Errors.BAD_CRC + " " + _entryName.toString()); + } + return data; + } else { + inflater.inflateAsync(function(result2) { + result2.copy(result2, 0); + if (callback) { + if (!crc32OK(result2)) { + callback(result2, Utils.Errors.BAD_CRC); + } else { + callback(result2); + } + } + }); + } + break; + default: + if (async && callback) + callback(Buffer.alloc(0), Utils.Errors.UNKNOWN_METHOD); + throw new Error(Utils.Errors.UNKNOWN_METHOD); } } - } - function pkgGraphToGraph(pkgGraph) { - const graph = {}; - Object.keys(pkgGraph).forEach((nodeId) => { - graph[nodeId] = pkgGraph[nodeId].dependencies; - }); - return graph; - } - function reverseGraph(graph) { - const reversedGraph = {}; - Object.keys(graph).forEach((dependentNodeId) => { - graph[dependentNodeId].forEach((dependencyNodeId) => { - if (!reversedGraph[dependencyNodeId]) { - reversedGraph[dependencyNodeId] = [dependentNodeId]; - } else { - reversedGraph[dependencyNodeId].push(dependentNodeId); - } - }); - }); - return reversedGraph; - } - function matchPackages(graph, pattern) { - const match = matcher_1.default(pattern); - return Object.keys(graph).filter((id) => graph[id].package.manifest.name && match(graph[id].package.manifest.name)); - } - function matchPackagesByExactPath(graph, pathStartsWith) { - return Object.keys(graph).filter((parentDir) => is_subdir_1.default(pathStartsWith, parentDir)); - } - function matchPackagesByGlob(graph, pathStartsWith) { - const format = (str) => str.replace(/\/$/, ""); - const formattedFilter = pathStartsWith.replace(/\\/g, "/").replace(/\/$/, ""); - return Object.keys(graph).filter((parentDir) => micromatch.isMatch(parentDir, formattedFilter, { format })); - } - function pickSubgraph(graph, nextNodeIds, walked, opts) { - for (const nextNodeId of nextNodeIds) { - if (!walked.has(nextNodeId)) { - if (opts.includeRoot) { - walked.add(nextNodeId); + function compress(async, callback) { + if ((!uncompressedData || !uncompressedData.length) && Buffer.isBuffer(input)) { + if (async && callback) + callback(getCompressedDataFromZip()); + return getCompressedDataFromZip(); + } + if (uncompressedData.length && !_isDirectory) { + var compressedData; + switch (_entryHeader.method) { + case Utils.Constants.STORED: + _entryHeader.compressedSize = _entryHeader.size; + compressedData = Buffer.alloc(uncompressedData.length); + uncompressedData.copy(compressedData); + if (async && callback) + callback(compressedData); + return compressedData; + default: + case Utils.Constants.DEFLATED: + var deflater = new Methods.Deflater(uncompressedData); + if (!async) { + var deflated = deflater.deflate(); + _entryHeader.compressedSize = deflated.length; + return deflated; + } else { + deflater.deflateAsync(function(data) { + compressedData = Buffer.alloc(data.length); + _entryHeader.compressedSize = data.length; + data.copy(compressedData); + callback && callback(compressedData); + }); + } + deflater = null; + break; } - if (graph[nextNodeId]) - pickSubgraph(graph, graph[nextNodeId], walked, { includeRoot: true }); + } else if (async && callback) { + callback(Buffer.alloc(0)); + } else { + return Buffer.alloc(0); } } - } - } -}); - -// ../../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry_operation.js -var require_retry_operation = __commonJS({ - "../../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry_operation.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var RetryOperation = class { - constructor(timeouts, options) { - var _a; - this._originalTimeouts = [...timeouts]; - this._timeouts = timeouts; - this._maxRetryTime = (_a = options === null || options === void 0 ? void 0 : options.maxRetryTime) !== null && _a !== void 0 ? _a : Infinity; - this._fn = null; - this._errors = []; - this._attempts = 1; - this._operationStart = null; - this._timer = null; - } - reset() { - this._attempts = 1; - this._timeouts = this._originalTimeouts; + function readUInt64LE(buffer, offset) { + return (buffer.readUInt32LE(offset + 4) << 4) + buffer.readUInt32LE(offset); } - stop() { - if (this._timer) { - clearTimeout(this._timer); + function parseExtra(data) { + var offset = 0; + var signature, size, part; + while (offset < data.length) { + signature = data.readUInt16LE(offset); + offset += 2; + size = data.readUInt16LE(offset); + offset += 2; + part = data.slice(offset, offset + size); + offset += size; + if (Constants.ID_ZIP64 === signature) { + parseZip64ExtendedInformation(part); + } } - this._timeouts = []; } - retry(err) { - if (!err) { - return false; - } - var currentTime = new Date().getTime(); - if (err && currentTime - this._operationStart >= this._maxRetryTime) { - this._errors.unshift(new Error("RetryOperation timeout occurred")); - return false; + function parseZip64ExtendedInformation(data) { + var size, compressedSize, offset, diskNumStart; + if (data.length >= Constants.EF_ZIP64_SCOMP) { + size = readUInt64LE(data, Constants.EF_ZIP64_SUNCOMP); + if (_entryHeader.size === Constants.EF_ZIP64_OR_32) { + _entryHeader.size = size; + } } - this._errors.push(err); - var timeout = this._timeouts.shift(); - if (timeout === void 0) { - return false; + if (data.length >= Constants.EF_ZIP64_RHO) { + compressedSize = readUInt64LE(data, Constants.EF_ZIP64_SCOMP); + if (_entryHeader.compressedSize === Constants.EF_ZIP64_OR_32) { + _entryHeader.compressedSize = compressedSize; + } } - this._timer = setTimeout(() => this._fn(++this._attempts), timeout); - return timeout; - } - attempt(fn2) { - this._fn = fn2; - this._operationStart = new Date().getTime(); - this._fn(this._attempts); - } - errors() { - return this._errors; - } - attempts() { - return this._attempts; - } - mainError() { - if (this._errors.length === 0) { - return null; + if (data.length >= Constants.EF_ZIP64_DSN) { + offset = readUInt64LE(data, Constants.EF_ZIP64_RHO); + if (_entryHeader.offset === Constants.EF_ZIP64_OR_32) { + _entryHeader.offset = offset; + } } - var counts = {}; - var mainError = null; - var mainErrorCount = 0; - for (var i = 0; i < this._errors.length; i++) { - var error = this._errors[i]; - var message2 = error.message; - var count = (counts[message2] || 0) + 1; - counts[message2] = count; - if (count >= mainErrorCount) { - mainError = error; - mainErrorCount = count; + if (data.length >= Constants.EF_ZIP64_DSN + 4) { + diskNumStart = data.readUInt32LE(Constants.EF_ZIP64_DSN); + if (_entryHeader.diskNumStart === Constants.EF_ZIP64_OR_16) { + _entryHeader.diskNumStart = diskNumStart; } } - return mainError; - } - }; - exports2.default = RetryOperation; - } -}); - -// ../../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry.js -var require_retry2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+retry@0.2.0/node_modules/@zkochan/retry/lib/retry.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createTimeout = exports2.createTimeouts = exports2.operation = void 0; - var retry_operation_1 = require_retry_operation(); - function operation(options) { - var timeouts = createTimeouts(options); - return new retry_operation_1.default(timeouts, { - maxRetryTime: options && options.maxRetryTime - }); - } - exports2.operation = operation; - function createTimeouts(options) { - var opts = { - retries: 10, - factor: 2, - minTimeout: 1 * 1e3, - maxTimeout: Infinity, - randomize: false, - ...options - }; - if (opts.minTimeout > opts.maxTimeout) { - throw new Error("minTimeout is greater than maxTimeout"); - } - var timeouts = []; - for (var i = 0; i < opts.retries; i++) { - timeouts.push(createTimeout(i, opts)); - } - timeouts.sort(function(a, b) { - return a - b; - }); - return timeouts; - } - exports2.createTimeouts = createTimeouts; - function createTimeout(attempt, opts) { - var random = opts.randomize ? Math.random() + 1 : 1; - var timeout = Math.round(random * opts.minTimeout * Math.pow(opts.factor, attempt)); - timeout = Math.min(timeout, opts.maxTimeout); - return timeout; - } - exports2.createTimeout = createTimeout; - } -}); - -// ../../node_modules/.pnpm/data-uri-to-buffer@3.0.1/node_modules/data-uri-to-buffer/dist/src/index.js -var require_src2 = __commonJS({ - "../../node_modules/.pnpm/data-uri-to-buffer@3.0.1/node_modules/data-uri-to-buffer/dist/src/index.js"(exports2, module2) { - "use strict"; - function dataUriToBuffer(uri) { - if (!/^data:/i.test(uri)) { - throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")'); } - uri = uri.replace(/\r?\n/g, ""); - const firstComma = uri.indexOf(","); - if (firstComma === -1 || firstComma <= 4) { - throw new TypeError("malformed data: URI"); - } - const meta = uri.substring(5, firstComma).split(";"); - let charset = ""; - let base64 = false; - const type = meta[0] || "text/plain"; - let typeFull = type; - for (let i = 1; i < meta.length; i++) { - if (meta[i] === "base64") { - base64 = true; - } else { - typeFull += `;${meta[i]}`; - if (meta[i].indexOf("charset=") === 0) { - charset = meta[i].substring(8); + return { + get entryName() { + return _entryName.toString(); + }, + get rawEntryName() { + return _entryName; + }, + set entryName(val) { + _entryName = Utils.toBuffer(val); + var lastChar = _entryName[_entryName.length - 1]; + _isDirectory = lastChar === 47 || lastChar === 92; + _entryHeader.fileNameLength = _entryName.length; + }, + get extra() { + return _extra; + }, + set extra(val) { + _extra = val; + _entryHeader.extraLength = val.length; + parseExtra(val); + }, + get comment() { + return _comment.toString(); + }, + set comment(val) { + _comment = Utils.toBuffer(val); + _entryHeader.commentLength = _comment.length; + }, + get name() { + var n = _entryName.toString(); + return _isDirectory ? n.substr(n.length - 1).split("/").pop() : n.split("/").pop(); + }, + get isDirectory() { + return _isDirectory; + }, + getCompressedData: function() { + return compress(false, null); + }, + getCompressedDataAsync: function(callback) { + compress(true, callback); + }, + setData: function(value) { + uncompressedData = Utils.toBuffer(value); + if (!_isDirectory && uncompressedData.length) { + _entryHeader.size = uncompressedData.length; + _entryHeader.method = Utils.Constants.DEFLATED; + _entryHeader.crc = Utils.crc32(value); + _entryHeader.changed = true; + } else { + _entryHeader.method = Utils.Constants.STORED; + } + }, + getData: function(pass) { + if (_entryHeader.changed) { + return uncompressedData; + } else { + return decompress(false, null, pass); + } + }, + getDataAsync: function(callback, pass) { + if (_entryHeader.changed) { + callback(uncompressedData); + } else { + decompress(true, callback, pass); + } + }, + set attr(attr) { + _entryHeader.attr = attr; + }, + get attr() { + return _entryHeader.attr; + }, + set header(data) { + _entryHeader.loadFromBinary(data); + }, + get header() { + return _entryHeader; + }, + packHeader: function() { + var header = _entryHeader.entryHeaderToBinary(); + var addpos = Utils.Constants.CENHDR; + _entryName.copy(header, addpos); + addpos += _entryName.length; + if (_entryHeader.extraLength) { + _extra.copy(header, addpos); + addpos += _entryHeader.extraLength; + } + if (_entryHeader.commentLength) { + _comment.copy(header, addpos); } + return header; + }, + toJSON: function() { + const bytes = function(nr) { + return "<" + (nr && nr.length + " bytes buffer" || "null") + ">"; + }; + return { + entryName: this.entryName, + name: this.name, + comment: this.comment, + isDirectory: this.isDirectory, + header: _entryHeader.toJSON(), + compressedData: bytes(input), + data: bytes(uncompressedData) + }; + }, + toString: function() { + return JSON.stringify(this.toJSON(), null, " "); } - } - if (!meta[0] && !charset.length) { - typeFull += ";charset=US-ASCII"; - charset = "US-ASCII"; - } - const encoding = base64 ? "base64" : "ascii"; - const data = unescape(uri.substring(firstComma + 1)); - const buffer = Buffer.from(data, encoding); - buffer.type = type; - buffer.typeFull = typeFull; - buffer.charset = charset; - return buffer; - } - module2.exports = dataUriToBuffer; + }; + }; } }); -// ../../node_modules/.pnpm/fetch-blob@2.1.2/node_modules/fetch-blob/index.js -var require_fetch_blob = __commonJS({ - "../../node_modules/.pnpm/fetch-blob@2.1.2/node_modules/fetch-blob/index.js"(exports2, module2) { - var { Readable } = require("stream"); - var wm = new WeakMap(); - async function* read(parts) { - for (const part of parts) { - if ("stream" in part) { - yield* part.stream(); - } else { - yield part; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/zipFile.js +var require_zipFile = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/zipFile.js"(exports2, module2) { + var ZipEntry = require_zipEntry(); + var Headers = require_headers2(); + var Utils = require_util8(); + module2.exports = function(inBuffer, options) { + var entryList = [], entryTable = {}, _comment = Buffer.alloc(0), mainHeader = new Headers.MainHeader(), loadedEntries = false; + const opts = Object.assign(/* @__PURE__ */ Object.create(null), options); + const { noSort } = opts; + if (inBuffer) { + readMainHeader(opts.readEntries); + } else { + loadedEntries = true; + } + function iterateEntries(callback) { + const totalEntries = mainHeader.diskEntries; + let index = mainHeader.offset; + for (let i = 0; i < totalEntries; i++) { + let tmp = index; + const entry = new ZipEntry(inBuffer); + entry.header = inBuffer.slice(tmp, tmp += Utils.Constants.CENHDR); + entry.entryName = inBuffer.slice(tmp, tmp += entry.header.fileNameLength); + index += entry.header.entryHeaderSize; + callback(entry); } } - } - var Blob = class { - constructor(blobParts = [], options = {}) { - let size = 0; - const parts = blobParts.map((element) => { - let buffer; - if (element instanceof Buffer) { - buffer = element; - } else if (ArrayBuffer.isView(element)) { - buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength); - } else if (element instanceof ArrayBuffer) { - buffer = Buffer.from(element); - } else if (element instanceof Blob) { - buffer = element; - } else { - buffer = Buffer.from(typeof element === "string" ? element : String(element)); + function readEntries() { + loadedEntries = true; + entryTable = {}; + entryList = new Array(mainHeader.diskEntries); + var index = mainHeader.offset; + for (var i = 0; i < entryList.length; i++) { + var tmp = index, entry = new ZipEntry(inBuffer); + entry.header = inBuffer.slice(tmp, tmp += Utils.Constants.CENHDR); + entry.entryName = inBuffer.slice(tmp, tmp += entry.header.fileNameLength); + if (entry.header.extraLength) { + entry.extra = inBuffer.slice(tmp, tmp += entry.header.extraLength); } - size += buffer.length || buffer.size || 0; - return buffer; - }); - const type = options.type === void 0 ? "" : String(options.type).toLowerCase(); - wm.set(this, { - type: /[^\u0020-\u007E]/.test(type) ? "" : type, - size, - parts - }); - } - get size() { - return wm.get(this).size; - } - get type() { - return wm.get(this).type; - } - async text() { - return Buffer.from(await this.arrayBuffer()).toString(); + if (entry.header.commentLength) + entry.comment = inBuffer.slice(tmp, tmp + entry.header.commentLength); + index += entry.header.entryHeaderSize; + entryList[i] = entry; + entryTable[entry.entryName] = entry; + } } - async arrayBuffer() { - const data = new Uint8Array(this.size); - let offset = 0; - for await (const chunk of this.stream()) { - data.set(chunk, offset); - offset += chunk.length; + function readMainHeader(readNow) { + var i = inBuffer.length - Utils.Constants.ENDHDR, max = Math.max(0, i - 65535), n = max, endStart = inBuffer.length, endOffset = -1, commentEnd = 0; + for (i; i >= n; i--) { + if (inBuffer[i] !== 80) + continue; + if (inBuffer.readUInt32LE(i) === Utils.Constants.ENDSIG) { + endOffset = i; + commentEnd = i; + endStart = i + Utils.Constants.ENDHDR; + n = i - Utils.Constants.END64HDR; + continue; + } + if (inBuffer.readUInt32LE(i) === Utils.Constants.END64SIG) { + n = max; + continue; + } + if (inBuffer.readUInt32LE(i) === Utils.Constants.ZIP64SIG) { + endOffset = i; + endStart = i + Utils.readBigUInt64LE(inBuffer, i + Utils.Constants.ZIP64SIZE) + Utils.Constants.ZIP64LEAD; + break; + } } - return data.buffer; + if (!~endOffset) + throw new Error(Utils.Errors.INVALID_FORMAT); + mainHeader.loadFromBinary(inBuffer.slice(endOffset, endStart)); + if (mainHeader.commentLength) { + _comment = inBuffer.slice(commentEnd + Utils.Constants.ENDHDR); + } + if (readNow) + readEntries(); } - stream() { - return Readable.from(read(wm.get(this).parts)); + function sortEntries() { + if (entryList.length > 1 && !noSort) { + entryList.sort((a, b) => a.entryName.toLowerCase().localeCompare(b.entryName.toLowerCase())); + } } - slice(start = 0, end = this.size, type = "") { - const { size } = this; - let relativeStart = start < 0 ? Math.max(size + start, 0) : Math.min(start, size); - let relativeEnd = end < 0 ? Math.max(size + end, 0) : Math.min(end, size); - const span = Math.max(relativeEnd - relativeStart, 0); - const parts = wm.get(this).parts.values(); - const blobParts = []; - let added = 0; - for (const part of parts) { - const size2 = ArrayBuffer.isView(part) ? part.byteLength : part.size; - if (relativeStart && size2 <= relativeStart) { - relativeStart -= size2; - relativeEnd -= size2; - } else { - const chunk = part.slice(relativeStart, Math.min(size2, relativeEnd)); - blobParts.push(chunk); - added += ArrayBuffer.isView(chunk) ? chunk.byteLength : chunk.size; - relativeStart = 0; - if (added >= span) { - break; + return { + /** + * Returns an array of ZipEntry objects existent in the current opened archive + * @return Array + */ + get entries() { + if (!loadedEntries) { + readEntries(); + } + return entryList; + }, + /** + * Archive comment + * @return {String} + */ + get comment() { + return _comment.toString(); + }, + set comment(val) { + _comment = Utils.toBuffer(val); + mainHeader.commentLength = _comment.length; + }, + getEntryCount: function() { + if (!loadedEntries) { + return mainHeader.diskEntries; + } + return entryList.length; + }, + forEach: function(callback) { + if (!loadedEntries) { + iterateEntries(callback); + return; + } + entryList.forEach(callback); + }, + /** + * Returns a reference to the entry with the given name or null if entry is inexistent + * + * @param entryName + * @return ZipEntry + */ + getEntry: function(entryName) { + if (!loadedEntries) { + readEntries(); + } + return entryTable[entryName] || null; + }, + /** + * Adds the given entry to the entry list + * + * @param entry + */ + setEntry: function(entry) { + if (!loadedEntries) { + readEntries(); + } + entryList.push(entry); + entryTable[entry.entryName] = entry; + mainHeader.totalEntries = entryList.length; + }, + /** + * Removes the entry with the given name from the entry list. + * + * If the entry is a directory, then all nested files and directories will be removed + * @param entryName + */ + deleteEntry: function(entryName) { + if (!loadedEntries) { + readEntries(); + } + var entry = entryTable[entryName]; + if (entry && entry.isDirectory) { + var _self = this; + this.getEntryChildren(entry).forEach(function(child) { + if (child.entryName !== entryName) { + _self.deleteEntry(child.entryName); + } + }); + } + entryList.splice(entryList.indexOf(entry), 1); + delete entryTable[entryName]; + mainHeader.totalEntries = entryList.length; + }, + /** + * Iterates and returns all nested files and directories of the given entry + * + * @param entry + * @return Array + */ + getEntryChildren: function(entry) { + if (!loadedEntries) { + readEntries(); + } + if (entry && entry.isDirectory) { + const list = []; + const name = entry.entryName; + const len = name.length; + entryList.forEach(function(zipEntry) { + if (zipEntry.entryName.substr(0, len) === name) { + list.push(zipEntry); + } + }); + return list; + } + return []; + }, + /** + * Returns the zip file + * + * @return Buffer + */ + compressToBuffer: function() { + if (!loadedEntries) { + readEntries(); + } + sortEntries(); + const dataBlock = []; + const entryHeaders = []; + let totalSize = 0; + let dindex = 0; + mainHeader.size = 0; + mainHeader.offset = 0; + for (const entry of entryList) { + const compressedData = entry.getCompressedData(); + entry.header.offset = dindex; + const dataHeader = entry.header.dataHeaderToBinary(); + const entryNameLen = entry.rawEntryName.length; + const postHeader = Buffer.alloc(entryNameLen + entry.extra.length); + entry.rawEntryName.copy(postHeader, 0); + postHeader.copy(entry.extra, entryNameLen); + const dataLength = dataHeader.length + postHeader.length + compressedData.length; + dindex += dataLength; + dataBlock.push(dataHeader); + dataBlock.push(postHeader); + dataBlock.push(compressedData); + const entryHeader = entry.packHeader(); + entryHeaders.push(entryHeader); + mainHeader.size += entryHeader.length; + totalSize += dataLength + entryHeader.length; + } + totalSize += mainHeader.mainHeaderSize; + mainHeader.offset = dindex; + dindex = 0; + const outBuffer = Buffer.alloc(totalSize); + for (const content of dataBlock) { + content.copy(outBuffer, dindex); + dindex += content.length; + } + for (const content of entryHeaders) { + content.copy(outBuffer, dindex); + dindex += content.length; + } + const mh = mainHeader.toBinary(); + if (_comment) { + _comment.copy(mh, Utils.Constants.ENDHDR); + } + mh.copy(outBuffer, dindex); + return outBuffer; + }, + toAsyncBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) { + try { + if (!loadedEntries) { + readEntries(); } + sortEntries(); + const dataBlock = []; + const entryHeaders = []; + let totalSize = 0; + let dindex = 0; + mainHeader.size = 0; + mainHeader.offset = 0; + const compress2Buffer = function(entryLists) { + if (entryLists.length) { + const entry = entryLists.pop(); + const name = entry.entryName + entry.extra.toString(); + if (onItemStart) + onItemStart(name); + entry.getCompressedDataAsync(function(compressedData) { + if (onItemEnd) + onItemEnd(name); + entry.header.offset = dindex; + const dataHeader = entry.header.dataHeaderToBinary(); + const postHeader = Buffer.alloc(name.length, name); + const dataLength = dataHeader.length + postHeader.length + compressedData.length; + dindex += dataLength; + dataBlock.push(dataHeader); + dataBlock.push(postHeader); + dataBlock.push(compressedData); + const entryHeader = entry.packHeader(); + entryHeaders.push(entryHeader); + mainHeader.size += entryHeader.length; + totalSize += dataLength + entryHeader.length; + compress2Buffer(entryLists); + }); + } else { + totalSize += mainHeader.mainHeaderSize; + mainHeader.offset = dindex; + dindex = 0; + const outBuffer = Buffer.alloc(totalSize); + dataBlock.forEach(function(content) { + content.copy(outBuffer, dindex); + dindex += content.length; + }); + entryHeaders.forEach(function(content) { + content.copy(outBuffer, dindex); + dindex += content.length; + }); + const mh = mainHeader.toBinary(); + if (_comment) { + _comment.copy(mh, Utils.Constants.ENDHDR); + } + mh.copy(outBuffer, dindex); + onSuccess(outBuffer); + } + }; + compress2Buffer(entryList); + } catch (e) { + onFail(e); } } - const blob = new Blob([], { type: String(type).toLowerCase() }); - Object.assign(wm.get(blob), { size: span, parts: blobParts }); - return blob; - } - get [Symbol.toStringTag]() { - return "Blob"; - } - static [Symbol.hasInstance](object) { - return object && typeof object === "object" && typeof object.stream === "function" && object.stream.length === 0 && typeof object.constructor === "function" && /^(Blob|File)$/.test(object[Symbol.toStringTag]); - } + }; }; - Object.defineProperties(Blob.prototype, { - size: { enumerable: true }, - type: { enumerable: true }, - slice: { enumerable: true } - }); - module2.exports = Blob; } }); -// ../../node_modules/.pnpm/node-fetch@3.0.0-beta.9/node_modules/node-fetch/dist/index.cjs -var require_dist2 = __commonJS({ - "../../node_modules/.pnpm/node-fetch@3.0.0-beta.9/node_modules/node-fetch/dist/index.cjs"(exports2, module2) { - "use strict"; - exports2 = module2.exports = fetch; - var http = require("http"); - var https = require("https"); - var zlib = require("zlib"); - var Stream = require("stream"); - var dataUriToBuffer = require_src2(); - var util = require("util"); - var Blob = require_fetch_blob(); - var crypto = require("crypto"); - var url = require("url"); - var FetchBaseError = class extends Error { - constructor(message2, type) { - super(message2); - Error.captureStackTrace(this, this.constructor); - this.type = type; - } - get name() { - return this.constructor.name; - } - get [Symbol.toStringTag]() { - return this.constructor.name; - } - }; - var FetchError = class extends FetchBaseError { - constructor(message2, type, systemError) { - super(message2, type); - if (systemError) { - this.code = this.errno = systemError.code; - this.erroredSysCall = systemError.syscall; - } - } - }; - var NAME = Symbol.toStringTag; - var isURLSearchParameters = (object) => { - return typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && typeof object.sort === "function" && object[NAME] === "URLSearchParams"; - }; - var isBlob = (object) => { - return typeof object === "object" && typeof object.arrayBuffer === "function" && typeof object.type === "string" && typeof object.stream === "function" && typeof object.constructor === "function" && /^(Blob|File)$/.test(object[NAME]); - }; - function isFormData(object) { - return typeof object === "object" && typeof object.append === "function" && typeof object.set === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.delete === "function" && typeof object.keys === "function" && typeof object.values === "function" && typeof object.entries === "function" && typeof object.constructor === "function" && object[NAME] === "FormData"; - } - var isAbortSignal = (object) => { - return typeof object === "object" && object[NAME] === "AbortSignal"; +// ../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/adm-zip.js +var require_adm_zip = __commonJS({ + "../node_modules/.pnpm/adm-zip@0.5.10/node_modules/adm-zip/adm-zip.js"(exports2, module2) { + var Utils = require_util8(); + var pth = require("path"); + var ZipEntry = require_zipEntry(); + var ZipFile = require_zipFile(); + var get_Bool = (val, def) => typeof val === "boolean" ? val : def; + var get_Str = (val, def) => typeof val === "string" ? val : def; + var defaultOptions = { + // option "noSort" : if true it disables files sorting + noSort: false, + // read entries during load (initial loading may be slower) + readEntries: false, + // default method is none + method: Utils.Constants.NONE, + // file system + fs: null }; - var carriage = "\r\n"; - var dashes = "-".repeat(2); - var carriageLength = Buffer.byteLength(carriage); - var getFooter = (boundary) => `${dashes}${boundary}${dashes}${carriage.repeat(2)}`; - function getHeader(boundary, name, field) { - let header = ""; - header += `${dashes}${boundary}${carriage}`; - header += `Content-Disposition: form-data; name="${name}"`; - if (isBlob(field)) { - header += `; filename="${field.name}"${carriage}`; - header += `Content-Type: ${field.type || "application/octet-stream"}`; - } - return `${header}${carriage.repeat(2)}`; - } - var getBoundary = () => crypto.randomBytes(8).toString("hex"); - async function* formDataIterator(form, boundary) { - for (const [name, value] of form) { - yield getHeader(boundary, name, value); - if (isBlob(value)) { - yield* value.stream(); - } else { - yield value; - } - yield carriage; - } - yield getFooter(boundary); - } - function getFormDataLength(form, boundary) { - let length = 0; - for (const [name, value] of form) { - length += Buffer.byteLength(getHeader(boundary, name, value)); - if (isBlob(value)) { - length += value.size; - } else { - length += Buffer.byteLength(String(value)); - } - length += carriageLength; - } - length += Buffer.byteLength(getFooter(boundary)); - return length; - } - var INTERNALS = Symbol("Body internals"); - var Body = class { - constructor(body, { - size = 0 - } = {}) { - let boundary = null; - if (body === null) { - body = null; - } else if (isURLSearchParameters(body)) { - body = Buffer.from(body.toString()); - } else if (isBlob(body)) - ; - else if (Buffer.isBuffer(body)) - ; - else if (util.types.isAnyArrayBuffer(body)) { - body = Buffer.from(body); - } else if (ArrayBuffer.isView(body)) { - body = Buffer.from(body.buffer, body.byteOffset, body.byteLength); - } else if (body instanceof Stream) - ; - else if (isFormData(body)) { - boundary = `NodeFetchFormDataBoundary${getBoundary()}`; - body = Stream.Readable.from(formDataIterator(body, boundary)); - } else { - body = Buffer.from(String(body)); + module2.exports = function(input, options) { + let inBuffer = null; + const opts = Object.assign(/* @__PURE__ */ Object.create(null), defaultOptions); + if (input && "object" === typeof input) { + if (!(input instanceof Uint8Array)) { + Object.assign(opts, input); + input = opts.input ? opts.input : void 0; + if (opts.input) + delete opts.input; } - this[INTERNALS] = { - body, - boundary, - disturbed: false, - error: null - }; - this.size = size; - if (body instanceof Stream) { - body.on("error", (err) => { - const error = err instanceof FetchBaseError ? err : new FetchError(`Invalid response body while trying to fetch ${this.url}: ${err.message}`, "system", err); - this[INTERNALS].error = error; - }); + if (Buffer.isBuffer(input)) { + inBuffer = input; + opts.method = Utils.Constants.BUFFER; + input = void 0; } } - get body() { - return this[INTERNALS].body; - } - get bodyUsed() { - return this[INTERNALS].disturbed; - } - async arrayBuffer() { - const { buffer, byteOffset, byteLength } = await consumeBody(this); - return buffer.slice(byteOffset, byteOffset + byteLength); - } - async blob() { - const ct = this.headers && this.headers.get("content-type") || this[INTERNALS].body && this[INTERNALS].body.type || ""; - const buf = await this.buffer(); - return new Blob([buf], { - type: ct - }); - } - async json() { - const buffer = await consumeBody(this); - return JSON.parse(buffer.toString()); - } - async text() { - const buffer = await consumeBody(this); - return buffer.toString(); - } - buffer() { - return consumeBody(this); - } - }; - Object.defineProperties(Body.prototype, { - body: { enumerable: true }, - bodyUsed: { enumerable: true }, - arrayBuffer: { enumerable: true }, - blob: { enumerable: true }, - json: { enumerable: true }, - text: { enumerable: true } - }); - async function consumeBody(data) { - if (data[INTERNALS].disturbed) { - throw new TypeError(`body used already for: ${data.url}`); - } - data[INTERNALS].disturbed = true; - if (data[INTERNALS].error) { - throw data[INTERNALS].error; - } - let { body } = data; - if (body === null) { - return Buffer.alloc(0); - } - if (isBlob(body)) { - body = body.stream(); - } - if (Buffer.isBuffer(body)) { - return body; - } - if (!(body instanceof Stream)) { - return Buffer.alloc(0); - } - const accum = []; - let accumBytes = 0; - try { - for await (const chunk of body) { - if (data.size > 0 && accumBytes + chunk.length > data.size) { - const err = new FetchError(`content size at ${data.url} over limit: ${data.size}`, "max-size"); - body.destroy(err); - throw err; - } - accumBytes += chunk.length; - accum.push(chunk); - } - } catch (error) { - if (error instanceof FetchBaseError) { - throw error; + Object.assign(opts, options); + const filetools = new Utils(opts); + if (input && "string" === typeof input) { + if (filetools.fs.existsSync(input)) { + opts.method = Utils.Constants.FILE; + opts.filename = input; + inBuffer = filetools.fs.readFileSync(input); } else { - throw new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`, "system", error); + throw new Error(Utils.Errors.INVALID_FILENAME); } } - if (body.readableEnded === true || body._readableState.ended === true) { - try { - if (accum.every((c) => typeof c === "string")) { - return Buffer.from(accum.join("")); + const _zip = new ZipFile(inBuffer, opts); + const { canonical, sanitize } = Utils; + function getEntry(entry) { + if (entry && _zip) { + var item; + if (typeof entry === "string") + item = _zip.getEntry(entry); + if (typeof entry === "object" && typeof entry.entryName !== "undefined" && typeof entry.header !== "undefined") + item = _zip.getEntry(entry.entryName); + if (item) { + return item; } - return Buffer.concat(accum, accumBytes); - } catch (error) { - throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`, "system", error); } - } else { - throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`); - } - } - var clone = (instance, highWaterMark) => { - let p1; - let p2; - let { body } = instance; - if (instance.bodyUsed) { - throw new Error("cannot clone body after it is used"); - } - if (body instanceof Stream && typeof body.getBoundary !== "function") { - p1 = new Stream.PassThrough({ highWaterMark }); - p2 = new Stream.PassThrough({ highWaterMark }); - body.pipe(p1); - body.pipe(p2); - instance[INTERNALS].body = p1; - body = p2; - } - return body; - }; - var extractContentType = (body, request) => { - if (body === null) { return null; } - if (typeof body === "string") { - return "text/plain;charset=UTF-8"; - } - if (isURLSearchParameters(body)) { - return "application/x-www-form-urlencoded;charset=UTF-8"; - } - if (isBlob(body)) { - return body.type || null; - } - if (Buffer.isBuffer(body) || util.types.isAnyArrayBuffer(body) || ArrayBuffer.isView(body)) { - return null; - } - if (body && typeof body.getBoundary === "function") { - return `multipart/form-data;boundary=${body.getBoundary()}`; - } - if (isFormData(body)) { - return `multipart/form-data; boundary=${request[INTERNALS].boundary}`; - } - if (body instanceof Stream) { - return null; - } - return "text/plain;charset=UTF-8"; - }; - var getTotalBytes = (request) => { - const { body } = request; - if (body === null) { - return 0; - } - if (isBlob(body)) { - return body.size; - } - if (Buffer.isBuffer(body)) { - return body.length; - } - if (body && typeof body.getLengthSync === "function") { - return body.hasKnownLength && body.hasKnownLength() ? body.getLengthSync() : null; - } - if (isFormData(body)) { - return getFormDataLength(request[INTERNALS].boundary); - } - return null; - }; - var writeToStream = (dest, { body }) => { - if (body === null) { - dest.end(); - } else if (isBlob(body)) { - body.stream().pipe(dest); - } else if (Buffer.isBuffer(body)) { - dest.write(body); - dest.end(); - } else { - body.pipe(dest); - } - }; - var validateHeaderName = typeof http.validateHeaderName === "function" ? http.validateHeaderName : (name) => { - if (!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)) { - const err = new TypeError(`Header name must be a valid HTTP token [${name}]`); - Object.defineProperty(err, "code", { value: "ERR_INVALID_HTTP_TOKEN" }); - throw err; - } - }; - var validateHeaderValue = typeof http.validateHeaderValue === "function" ? http.validateHeaderValue : (name, value) => { - if (/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)) { - const err = new TypeError(`Invalid character in header content ["${name}"]`); - Object.defineProperty(err, "code", { value: "ERR_INVALID_CHAR" }); - throw err; + function fixPath(zipPath) { + const { join, normalize, sep } = pth.posix; + return join(".", normalize(sep + zipPath.split("\\").join(sep) + sep)); } - }; - var Headers = class extends URLSearchParams { - constructor(init) { - let result = []; - if (init instanceof Headers) { - const raw = init.raw(); - for (const [name, values] of Object.entries(raw)) { - result.push(...values.map((value) => [name, value])); + return { + /** + * Extracts the given entry from the archive and returns the content as a Buffer object + * @param entry ZipEntry object or String with the full path of the entry + * + * @return Buffer or Null in case of error + */ + readFile: function(entry, pass) { + var item = getEntry(entry); + return item && item.getData(pass) || null; + }, + /** + * Asynchronous readFile + * @param entry ZipEntry object or String with the full path of the entry + * @param callback + * + * @return Buffer or Null in case of error + */ + readFileAsync: function(entry, callback) { + var item = getEntry(entry); + if (item) { + item.getDataAsync(callback); + } else { + callback(null, "getEntry failed for:" + entry); } - } else if (init == null) - ; - else if (typeof init === "object" && !util.types.isBoxedPrimitive(init)) { - const method = init[Symbol.iterator]; - if (method == null) { - result.push(...Object.entries(init)); + }, + /** + * Extracts the given entry from the archive and returns the content as plain text in the given encoding + * @param entry ZipEntry object or String with the full path of the entry + * @param encoding Optional. If no encoding is specified utf8 is used + * + * @return String + */ + readAsText: function(entry, encoding) { + var item = getEntry(entry); + if (item) { + var data = item.getData(); + if (data && data.length) { + return data.toString(encoding || "utf8"); + } + } + return ""; + }, + /** + * Asynchronous readAsText + * @param entry ZipEntry object or String with the full path of the entry + * @param callback + * @param encoding Optional. If no encoding is specified utf8 is used + * + * @return String + */ + readAsTextAsync: function(entry, callback, encoding) { + var item = getEntry(entry); + if (item) { + item.getDataAsync(function(data, err) { + if (err) { + callback(data, err); + return; + } + if (data && data.length) { + callback(data.toString(encoding || "utf8")); + } else { + callback(""); + } + }); } else { - if (typeof method !== "function") { - throw new TypeError("Header pairs must be iterable"); + callback(""); + } + }, + /** + * Remove the entry from the file or the entry and all it's nested directories and files if the given entry is a directory + * + * @param entry + */ + deleteFile: function(entry) { + var item = getEntry(entry); + if (item) { + _zip.deleteEntry(item.entryName); + } + }, + /** + * Adds a comment to the zip. The zip must be rewritten after adding the comment. + * + * @param comment + */ + addZipComment: function(comment) { + _zip.comment = comment; + }, + /** + * Returns the zip comment + * + * @return String + */ + getZipComment: function() { + return _zip.comment || ""; + }, + /** + * Adds a comment to a specified zipEntry. The zip must be rewritten after adding the comment + * The comment cannot exceed 65535 characters in length + * + * @param entry + * @param comment + */ + addZipEntryComment: function(entry, comment) { + var item = getEntry(entry); + if (item) { + item.comment = comment; + } + }, + /** + * Returns the comment of the specified entry + * + * @param entry + * @return String + */ + getZipEntryComment: function(entry) { + var item = getEntry(entry); + if (item) { + return item.comment || ""; + } + return ""; + }, + /** + * Updates the content of an existing entry inside the archive. The zip must be rewritten after updating the content + * + * @param entry + * @param content + */ + updateFile: function(entry, content) { + var item = getEntry(entry); + if (item) { + item.setData(content); + } + }, + /** + * Adds a file from the disk to the archive + * + * @param localPath File to add to zip + * @param zipPath Optional path inside the zip + * @param zipName Optional name for the file + */ + addLocalFile: function(localPath, zipPath, zipName, comment) { + if (filetools.fs.existsSync(localPath)) { + zipPath = zipPath ? fixPath(zipPath) : ""; + var p = localPath.split("\\").join("/").split("/").pop(); + zipPath += zipName ? zipName : p; + const _attr = filetools.fs.statSync(localPath); + this.addFile(zipPath, filetools.fs.readFileSync(localPath), comment, _attr); + } else { + throw new Error(Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); + } + }, + /** + * Adds a local directory and all its nested files and directories to the archive + * + * @param localPath + * @param zipPath optional path inside zip + * @param filter optional RegExp or Function if files match will + * be included. + * @param {number | object} attr - number as unix file permissions, object as filesystem Stats object + */ + addLocalFolder: function(localPath, zipPath, filter, attr) { + if (filter instanceof RegExp) { + filter = function(rx) { + return function(filename) { + return rx.test(filename); + }; + }(filter); + } else if ("function" !== typeof filter) { + filter = function() { + return true; + }; + } + zipPath = zipPath ? fixPath(zipPath) : ""; + localPath = pth.normalize(localPath); + if (filetools.fs.existsSync(localPath)) { + const items = filetools.findFiles(localPath); + const self2 = this; + if (items.length) { + items.forEach(function(filepath) { + var p = pth.relative(localPath, filepath).split("\\").join("/"); + if (filter(p)) { + var stats = filetools.fs.statSync(filepath); + if (stats.isFile()) { + self2.addFile(zipPath + p, filetools.fs.readFileSync(filepath), "", attr ? attr : stats); + } else { + self2.addFile(zipPath + p + "/", Buffer.alloc(0), "", attr ? attr : stats); + } + } + }); } - result = [...init].map((pair) => { - if (typeof pair !== "object" || util.types.isBoxedPrimitive(pair)) { - throw new TypeError("Each header pair must be an iterable object"); + } else { + throw new Error(Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); + } + }, + /** + * Asynchronous addLocalFile + * @param localPath + * @param callback + * @param zipPath optional path inside zip + * @param filter optional RegExp or Function if files match will + * be included. + */ + addLocalFolderAsync: function(localPath, callback, zipPath, filter) { + if (filter instanceof RegExp) { + filter = function(rx) { + return function(filename) { + return rx.test(filename); + }; + }(filter); + } else if ("function" !== typeof filter) { + filter = function() { + return true; + }; + } + zipPath = zipPath ? fixPath(zipPath) : ""; + localPath = pth.normalize(localPath); + var self2 = this; + filetools.fs.open(localPath, "r", function(err) { + if (err && err.code === "ENOENT") { + callback(void 0, Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); + } else if (err) { + callback(void 0, err); + } else { + var items = filetools.findFiles(localPath); + var i = -1; + var next = function() { + i += 1; + if (i < items.length) { + var filepath = items[i]; + var p = pth.relative(localPath, filepath).split("\\").join("/"); + p = p.normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^\x20-\x7E]/g, ""); + if (filter(p)) { + filetools.fs.stat(filepath, function(er0, stats) { + if (er0) + callback(void 0, er0); + if (stats.isFile()) { + filetools.fs.readFile(filepath, function(er1, data) { + if (er1) { + callback(void 0, er1); + } else { + self2.addFile(zipPath + p, data, "", stats); + next(); + } + }); + } else { + self2.addFile(zipPath + p + "/", Buffer.alloc(0), "", stats); + next(); + } + }); + } else { + process.nextTick(() => { + next(); + }); + } + } else { + callback(true, void 0); + } + }; + next(); + } + }); + }, + /** + * + * @param {string} localPath - path where files will be extracted + * @param {object} props - optional properties + * @param {string} props.zipPath - optional path inside zip + * @param {regexp, function} props.filter - RegExp or Function if files match will be included. + */ + addLocalFolderPromise: function(localPath, props) { + return new Promise((resolve, reject) => { + const { filter, zipPath } = Object.assign({}, props); + this.addLocalFolderAsync( + localPath, + (done, err) => { + if (err) + reject(err); + if (done) + resolve(this); + }, + zipPath, + filter + ); + }); + }, + /** + * Allows you to create a entry (file or directory) in the zip file. + * If you want to create a directory the entryName must end in / and a null buffer should be provided. + * Comment and attributes are optional + * + * @param {string} entryName + * @param {Buffer | string} content - file content as buffer or utf8 coded string + * @param {string} comment - file comment + * @param {number | object} attr - number as unix file permissions, object as filesystem Stats object + */ + addFile: function(entryName, content, comment, attr) { + let entry = getEntry(entryName); + const update = entry != null; + if (!update) { + entry = new ZipEntry(); + entry.entryName = entryName; + } + entry.comment = comment || ""; + const isStat = "object" === typeof attr && attr instanceof filetools.fs.Stats; + if (isStat) { + entry.header.time = attr.mtime; + } + var fileattr = entry.isDirectory ? 16 : 0; + let unix = entry.isDirectory ? 16384 : 32768; + if (isStat) { + unix |= 4095 & attr.mode; + } else if ("number" === typeof attr) { + unix |= 4095 & attr; + } else { + unix |= entry.isDirectory ? 493 : 420; + } + fileattr = (fileattr | unix << 16) >>> 0; + entry.attr = fileattr; + entry.setData(content); + if (!update) + _zip.setEntry(entry); + }, + /** + * Returns an array of ZipEntry objects representing the files and folders inside the archive + * + * @return Array + */ + getEntries: function() { + return _zip ? _zip.entries : []; + }, + /** + * Returns a ZipEntry object representing the file or folder specified by ``name``. + * + * @param name + * @return ZipEntry + */ + getEntry: function(name) { + return getEntry(name); + }, + getEntryCount: function() { + return _zip.getEntryCount(); + }, + forEach: function(callback) { + return _zip.forEach(callback); + }, + /** + * Extracts the given entry to the given targetPath + * If the entry is a directory inside the archive, the entire directory and it's subdirectories will be extracted + * + * @param entry ZipEntry object or String with the full path of the entry + * @param targetPath Target folder where to write the file + * @param maintainEntryPath If maintainEntryPath is true and the entry is inside a folder, the entry folder + * will be created in targetPath as well. Default is TRUE + * @param overwrite If the file already exists at the target path, the file will be overwriten if this is true. + * Default is FALSE + * @param keepOriginalPermission The file will be set as the permission from the entry if this is true. + * Default is FALSE + * @param outFileName String If set will override the filename of the extracted file (Only works if the entry is a file) + * + * @return Boolean + */ + extractEntryTo: function(entry, targetPath, maintainEntryPath, overwrite, keepOriginalPermission, outFileName) { + overwrite = get_Bool(overwrite, false); + keepOriginalPermission = get_Bool(keepOriginalPermission, false); + maintainEntryPath = get_Bool(maintainEntryPath, true); + outFileName = get_Str(outFileName, get_Str(keepOriginalPermission, void 0)); + var item = getEntry(entry); + if (!item) { + throw new Error(Utils.Errors.NO_ENTRY); + } + var entryName = canonical(item.entryName); + var target = sanitize(targetPath, outFileName && !item.isDirectory ? outFileName : maintainEntryPath ? entryName : pth.basename(entryName)); + if (item.isDirectory) { + var children = _zip.getEntryChildren(item); + children.forEach(function(child) { + if (child.isDirectory) + return; + var content2 = child.getData(); + if (!content2) { + throw new Error(Utils.Errors.CANT_EXTRACT_FILE); } - return [...pair]; - }).map((pair) => { - if (pair.length !== 2) { - throw new TypeError("Each header pair must be a name/value tuple"); + var name = canonical(child.entryName); + var childName = sanitize(targetPath, maintainEntryPath ? name : pth.basename(name)); + const fileAttr2 = keepOriginalPermission ? child.header.fileAttr : void 0; + filetools.writeFileTo(childName, content2, overwrite, fileAttr2); + }); + return true; + } + var content = item.getData(); + if (!content) + throw new Error(Utils.Errors.CANT_EXTRACT_FILE); + if (filetools.fs.existsSync(target) && !overwrite) { + throw new Error(Utils.Errors.CANT_OVERRIDE); + } + const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0; + filetools.writeFileTo(target, content, overwrite, fileAttr); + return true; + }, + /** + * Test the archive + * + */ + test: function(pass) { + if (!_zip) { + return false; + } + for (var entry in _zip.entries) { + try { + if (entry.isDirectory) { + continue; + } + var content = _zip.entries[entry].getData(pass); + if (!content) { + return false; + } + } catch (err) { + return false; + } + } + return true; + }, + /** + * Extracts the entire archive to the given location + * + * @param targetPath Target location + * @param overwrite If the file already exists at the target path, the file will be overwriten if this is true. + * Default is FALSE + * @param keepOriginalPermission The file will be set as the permission from the entry if this is true. + * Default is FALSE + */ + extractAllTo: function(targetPath, overwrite, keepOriginalPermission, pass) { + overwrite = get_Bool(overwrite, false); + pass = get_Str(keepOriginalPermission, pass); + keepOriginalPermission = get_Bool(keepOriginalPermission, false); + if (!_zip) { + throw new Error(Utils.Errors.NO_ZIP); + } + _zip.entries.forEach(function(entry) { + var entryName = sanitize(targetPath, canonical(entry.entryName.toString())); + if (entry.isDirectory) { + filetools.makeDir(entryName); + return; + } + var content = entry.getData(pass); + if (!content) { + throw new Error(Utils.Errors.CANT_EXTRACT_FILE); + } + const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0; + filetools.writeFileTo(entryName, content, overwrite, fileAttr); + try { + filetools.fs.utimesSync(entryName, entry.header.time, entry.header.time); + } catch (err) { + throw new Error(Utils.Errors.CANT_EXTRACT_FILE); + } + }); + }, + /** + * Asynchronous extractAllTo + * + * @param targetPath Target location + * @param overwrite If the file already exists at the target path, the file will be overwriten if this is true. + * Default is FALSE + * @param keepOriginalPermission The file will be set as the permission from the entry if this is true. + * Default is FALSE + * @param callback The callback will be executed when all entries are extracted successfully or any error is thrown. + */ + extractAllToAsync: function(targetPath, overwrite, keepOriginalPermission, callback) { + overwrite = get_Bool(overwrite, false); + if (typeof keepOriginalPermission === "function" && !callback) + callback = keepOriginalPermission; + keepOriginalPermission = get_Bool(keepOriginalPermission, false); + if (!callback) { + callback = function(err) { + throw new Error(err); + }; + } + if (!_zip) { + callback(new Error(Utils.Errors.NO_ZIP)); + return; + } + targetPath = pth.resolve(targetPath); + const getPath = (entry) => sanitize(targetPath, pth.normalize(canonical(entry.entryName.toString()))); + const getError = (msg, file) => new Error(msg + ': "' + file + '"'); + const dirEntries = []; + const fileEntries = /* @__PURE__ */ new Set(); + _zip.entries.forEach((e) => { + if (e.isDirectory) { + dirEntries.push(e); + } else { + fileEntries.add(e); + } + }); + for (const entry of dirEntries) { + const dirPath = getPath(entry); + const dirAttr = keepOriginalPermission ? entry.header.fileAttr : void 0; + try { + filetools.makeDir(dirPath); + if (dirAttr) + filetools.fs.chmodSync(dirPath, dirAttr); + filetools.fs.utimesSync(dirPath, entry.header.time, entry.header.time); + } catch (er) { + callback(getError("Unable to create folder", dirPath)); + } + } + const done = () => { + if (fileEntries.size === 0) { + callback(); + } + }; + for (const entry of fileEntries.values()) { + const entryName = pth.normalize(canonical(entry.entryName.toString())); + const filePath = sanitize(targetPath, entryName); + entry.getDataAsync(function(content, err_1) { + if (err_1) { + callback(new Error(err_1)); + return; + } + if (!content) { + callback(new Error(Utils.Errors.CANT_EXTRACT_FILE)); + } else { + const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0; + filetools.writeFileToAsync(filePath, content, overwrite, fileAttr, function(succ) { + if (!succ) { + callback(getError("Unable to write file", filePath)); + return; + } + filetools.fs.utimes(filePath, entry.header.time, entry.header.time, function(err_2) { + if (err_2) { + callback(getError("Unable to set times", filePath)); + return; + } + fileEntries.delete(entry); + done(); + }); + }); } - return [...pair]; }); } - } else { - throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)"); - } - result = result.length > 0 ? result.map(([name, value]) => { - validateHeaderName(name); - validateHeaderValue(name, String(value)); - return [String(name).toLowerCase(), String(value)]; - }) : void 0; - super(result); - return new Proxy(this, { - get(target, p, receiver) { - switch (p) { - case "append": - case "set": - return (name, value) => { - validateHeaderName(name); - validateHeaderValue(name, String(value)); - return URLSearchParams.prototype[p].call(receiver, String(name).toLowerCase(), String(value)); - }; - case "delete": - case "has": - case "getAll": - return (name) => { - validateHeaderName(name); - return URLSearchParams.prototype[p].call(receiver, String(name).toLowerCase()); - }; - case "keys": - return () => { - target.sort(); - return new Set(URLSearchParams.prototype.keys.call(target)).keys(); - }; - default: - return Reflect.get(target, p, receiver); + done(); + }, + /** + * Writes the newly created zip file to disk at the specified location or if a zip was opened and no ``targetFileName`` is provided, it will overwrite the opened zip + * + * @param targetFileName + * @param callback + */ + writeZip: function(targetFileName, callback) { + if (arguments.length === 1) { + if (typeof targetFileName === "function") { + callback = targetFileName; + targetFileName = ""; } } - }); + if (!targetFileName && opts.filename) { + targetFileName = opts.filename; + } + if (!targetFileName) + return; + var zipData = _zip.compressToBuffer(); + if (zipData) { + var ok = filetools.writeFileTo(targetFileName, zipData, true); + if (typeof callback === "function") + callback(!ok ? new Error("failed") : null, ""); + } + }, + writeZipPromise: function(targetFileName, props) { + const { overwrite, perm } = Object.assign({ overwrite: true }, props); + return new Promise((resolve, reject) => { + if (!targetFileName && opts.filename) + targetFileName = opts.filename; + if (!targetFileName) + reject("ADM-ZIP: ZIP File Name Missing"); + this.toBufferPromise().then((zipData) => { + const ret = (done) => done ? resolve(done) : reject("ADM-ZIP: Wasn't able to write zip file"); + filetools.writeFileToAsync(targetFileName, zipData, overwrite, perm, ret); + }, reject); + }); + }, + toBufferPromise: function() { + return new Promise((resolve, reject) => { + _zip.toAsyncBuffer(resolve, reject); + }); + }, + /** + * Returns the content of the entire zip file as a Buffer object + * + * @return Buffer + */ + toBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) { + this.valueOf = 2; + if (typeof onSuccess === "function") { + _zip.toAsyncBuffer(onSuccess, onFail, onItemStart, onItemEnd); + return null; + } + return _zip.compressToBuffer(); + } + }; + }; + } +}); + +// ../node_modules/.pnpm/temp-dir@2.0.0/node_modules/temp-dir/index.js +var require_temp_dir = __commonJS({ + "../node_modules/.pnpm/temp-dir@2.0.0/node_modules/temp-dir/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var os = require("os"); + var tempDirectorySymbol = Symbol.for("__RESOLVED_TEMP_DIRECTORY__"); + if (!global[tempDirectorySymbol]) { + Object.defineProperty(global, tempDirectorySymbol, { + value: fs2.realpathSync(os.tmpdir()) + }); + } + module2.exports = global[tempDirectorySymbol]; + } +}); + +// ../node_modules/.pnpm/array-union@2.1.0/node_modules/array-union/index.js +var require_array_union = __commonJS({ + "../node_modules/.pnpm/array-union@2.1.0/node_modules/array-union/index.js"(exports2, module2) { + "use strict"; + module2.exports = (...arguments_) => { + return [...new Set([].concat(...arguments_))]; + }; + } +}); + +// ../node_modules/.pnpm/path-type@4.0.0/node_modules/path-type/index.js +var require_path_type = __commonJS({ + "../node_modules/.pnpm/path-type@4.0.0/node_modules/path-type/index.js"(exports2) { + "use strict"; + var { promisify } = require("util"); + var fs2 = require("fs"); + async function isType(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== "string") { + throw new TypeError(`Expected a string, got ${typeof filePath}`); } - get [Symbol.toStringTag]() { - return this.constructor.name; + try { + const stats = await promisify(fs2[fsStatType])(filePath); + return stats[statsMethodName](); + } catch (error) { + if (error.code === "ENOENT") { + return false; + } + throw error; } - toString() { - return Object.prototype.toString.call(this); + } + function isTypeSync(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== "string") { + throw new TypeError(`Expected a string, got ${typeof filePath}`); } - get(name) { - const values = this.getAll(name); - if (values.length === 0) { - return null; - } - let value = values.join(", "); - if (/^content-encoding$/i.test(name)) { - value = value.toLowerCase(); + try { + return fs2[fsStatType](filePath)[statsMethodName](); + } catch (error) { + if (error.code === "ENOENT") { + return false; } - return value; + throw error; } - forEach(callback) { - for (const name of this.keys()) { - callback(this.get(name), name); - } + } + exports2.isFile = isType.bind(null, "stat", "isFile"); + exports2.isDirectory = isType.bind(null, "stat", "isDirectory"); + exports2.isSymlink = isType.bind(null, "lstat", "isSymbolicLink"); + exports2.isFileSync = isTypeSync.bind(null, "statSync", "isFile"); + exports2.isDirectorySync = isTypeSync.bind(null, "statSync", "isDirectory"); + exports2.isSymlinkSync = isTypeSync.bind(null, "lstatSync", "isSymbolicLink"); + } +}); + +// ../node_modules/.pnpm/dir-glob@3.0.1/node_modules/dir-glob/index.js +var require_dir_glob = __commonJS({ + "../node_modules/.pnpm/dir-glob@3.0.1/node_modules/dir-glob/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var pathType = require_path_type(); + var getExtensions = (extensions) => extensions.length > 1 ? `{${extensions.join(",")}}` : extensions[0]; + var getPath = (filepath, cwd) => { + const pth = filepath[0] === "!" ? filepath.slice(1) : filepath; + return path2.isAbsolute(pth) ? pth : path2.join(cwd, pth); + }; + var addExtensions = (file, extensions) => { + if (path2.extname(file)) { + return `**/${file}`; } - *values() { - for (const name of this.keys()) { - yield this.get(name); - } + return `**/${file}.${getExtensions(extensions)}`; + }; + var getGlob = (directory, options) => { + if (options.files && !Array.isArray(options.files)) { + throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof options.files}\``); } - *entries() { - for (const name of this.keys()) { - yield [name, this.get(name)]; - } + if (options.extensions && !Array.isArray(options.extensions)) { + throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof options.extensions}\``); } - [Symbol.iterator]() { - return this.entries(); + if (options.files && options.extensions) { + return options.files.map((x) => path2.posix.join(directory, addExtensions(x, options.extensions))); } - raw() { - return [...this.keys()].reduce((result, key) => { - result[key] = this.getAll(key); - return result; - }, {}); + if (options.files) { + return options.files.map((x) => path2.posix.join(directory, `**/${x}`)); } - [Symbol.for("nodejs.util.inspect.custom")]() { - return [...this.keys()].reduce((result, key) => { - const values = this.getAll(key); - if (key === "host") { - result[key] = values[0]; - } else { - result[key] = values.length > 1 ? values : values[0]; - } - return result; - }, {}); + if (options.extensions) { + return [path2.posix.join(directory, `**/*.${getExtensions(options.extensions)}`)]; } + return [path2.posix.join(directory, "**")]; }; - Object.defineProperties(Headers.prototype, ["get", "entries", "forEach", "values"].reduce((result, property) => { - result[property] = { enumerable: true }; - return result; - }, {})); - function fromRawHeaders(headers = []) { - return new Headers(headers.reduce((result, value, index, array) => { - if (index % 2 === 0) { - result.push(array.slice(index, index + 2)); - } - return result; - }, []).filter(([name, value]) => { - try { - validateHeaderName(name); - validateHeaderValue(name, String(value)); - return true; - } catch { - return false; - } + module2.exports = async (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; + if (typeof options.cwd !== "string") { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } + const globs = await Promise.all([].concat(input).map(async (x) => { + const isDirectory = await pathType.isDirectory(getPath(x, options.cwd)); + return isDirectory ? getGlob(x, options) : x; })); + return [].concat.apply([], globs); + }; + module2.exports.sync = (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; + if (typeof options.cwd !== "string") { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } + const globs = [].concat(input).map((x) => pathType.isDirectorySync(getPath(x, options.cwd)) ? getGlob(x, options) : x); + return [].concat.apply([], globs); + }; + } +}); + +// ../node_modules/.pnpm/ignore@5.2.4/node_modules/ignore/index.js +var require_ignore = __commonJS({ + "../node_modules/.pnpm/ignore@5.2.4/node_modules/ignore/index.js"(exports2, module2) { + function makeArray(subject) { + return Array.isArray(subject) ? subject : [subject]; } - var redirectStatus = new Set([301, 302, 303, 307, 308]); - var isRedirect = (code) => { - return redirectStatus.has(code); + var EMPTY = ""; + var SPACE = " "; + var ESCAPE = "\\"; + var REGEX_TEST_BLANK_LINE = /^\s+$/; + var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/; + var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; + var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; + var REGEX_SPLITALL_CRLF = /\r?\n/g; + var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; + var SLASH = "/"; + var TMP_KEY_IGNORE = "node-ignore"; + if (typeof Symbol !== "undefined") { + TMP_KEY_IGNORE = Symbol.for("node-ignore"); + } + var KEY_IGNORE = TMP_KEY_IGNORE; + var define2 = (object, key, value) => Object.defineProperty(object, key, { value }); + var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; + var RETURN_FALSE = () => false; + var sanitizeRange = (range) => range.replace( + REGEX_REGEXP_RANGE, + (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY + ); + var cleanRangeBackSlash = (slashes) => { + const { length } = slashes; + return slashes.slice(0, length - length % 2); }; - var INTERNALS$1 = Symbol("Response internals"); - var Response = class extends Body { - constructor(body = null, options = {}) { - super(body, options); - const status = options.status || 200; - const headers = new Headers(options.headers); - if (body !== null && !headers.has("Content-Type")) { - const contentType = extractContentType(body); - if (contentType) { - headers.append("Content-Type", contentType); - } + var REPLACERS = [ + // > Trailing spaces are ignored unless they are quoted with backslash ("\") + [ + // (a\ ) -> (a ) + // (a ) -> (a) + // (a \ ) -> (a ) + /\\?\s+$/, + (match) => match.indexOf("\\") === 0 ? SPACE : EMPTY + ], + // replace (\ ) with ' ' + [ + /\\\s/g, + () => SPACE + ], + // Escape metacharacters + // which is written down by users but means special for regular expressions. + // > There are 12 characters with special meanings: + // > - the backslash \, + // > - the caret ^, + // > - the dollar sign $, + // > - the period or dot ., + // > - the vertical bar or pipe symbol |, + // > - the question mark ?, + // > - the asterisk or star *, + // > - the plus sign +, + // > - the opening parenthesis (, + // > - the closing parenthesis ), + // > - and the opening square bracket [, + // > - the opening curly brace {, + // > These special characters are often called "metacharacters". + [ + /[\\$.|*+(){^]/g, + (match) => `\\${match}` + ], + [ + // > a question mark (?) matches a single character + /(?!\\)\?/g, + () => "[^/]" + ], + // leading slash + [ + // > A leading slash matches the beginning of the pathname. + // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". + // A leading slash matches the beginning of the pathname + /^\//, + () => "^" + ], + // replace special metacharacter slash after the leading slash + [ + /\//g, + () => "\\/" + ], + [ + // > A leading "**" followed by a slash means match in all directories. + // > For example, "**/foo" matches file or directory "foo" anywhere, + // > the same as pattern "foo". + // > "**/foo/bar" matches file or directory "bar" anywhere that is directly + // > under directory "foo". + // Notice that the '*'s have been replaced as '\\*' + /^\^*\\\*\\\*\\\//, + // '**/foo' <-> 'foo' + () => "^(?:.*\\/)?" + ], + // starting + [ + // there will be no leading '/' + // (which has been replaced by section "leading slash") + // If starts with '**', adding a '^' to the regular expression also works + /^(?=[^^])/, + function startingReplacer() { + return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^"; } - this[INTERNALS$1] = { - url: options.url, - status, - statusText: options.statusText || "", - headers, - counter: options.counter, - highWaterMark: options.highWaterMark - }; - } - get url() { - return this[INTERNALS$1].url || ""; - } - get status() { - return this[INTERNALS$1].status; + ], + // two globstars + [ + // Use lookahead assertions so that we could match more than one `'/**'` + /\\\/\\\*\\\*(?=\\\/|$)/g, + // Zero, one or several directories + // should not use '*', or it will be replaced by the next replacer + // Check if it is not the last `'/**'` + (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+" + ], + // normal intermediate wildcards + [ + // Never replace escaped '*' + // ignore rule '\*' will match the path '*' + // 'abc.*/' -> go + // 'abc.*' -> skip this rule, + // coz trailing single wildcard will be handed by [trailing wildcard] + /(^|[^\\]+)(\\\*)+(?=.+)/g, + // '*.js' matches '.js' + // '*.js' doesn't match 'abc' + (_, p1, p2) => { + const unescaped = p2.replace(/\\\*/g, "[^\\/]*"); + return p1 + unescaped; + } + ], + [ + // unescape, revert step 3 except for back slash + // For example, if a user escape a '\\*', + // after step 3, the result will be '\\\\\\*' + /\\\\\\(?=[$.|*+(){^])/g, + () => ESCAPE + ], + [ + // '\\\\' -> '\\' + /\\\\/g, + () => ESCAPE + ], + [ + // > The range notation, e.g. [a-zA-Z], + // > can be used to match one of the characters in a range. + // `\` is escaped by step 3 + /(\\)?\[([^\]/]*?)(\\*)($|\])/g, + (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE ? `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range)}${endEscape}]` : "[]" : "[]" + ], + // ending + [ + // 'js' will not match 'js.' + // 'ab' will not match 'abc' + /(?:[^*])$/, + // WTF! + // https://git-scm.com/docs/gitignore + // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) + // which re-fixes #24, #38 + // > If there is a separator at the end of the pattern then the pattern + // > will only match directories, otherwise the pattern can match both + // > files and directories. + // 'js*' will not match 'a.js' + // 'js/' will not match 'a.js' + // 'js' will match 'a.js' and 'a.js/' + (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)` + ], + // trailing wildcard + [ + /(\^|\\\/)?\\\*$/, + (_, p1) => { + const prefix = p1 ? `${p1}[^/]+` : "[^/]*"; + return `${prefix}(?=$|\\/$)`; + } + ] + ]; + var regexCache = /* @__PURE__ */ Object.create(null); + var makeRegex = (pattern, ignoreCase) => { + let source = regexCache[pattern]; + if (!source) { + source = REPLACERS.reduce( + (prev, current) => prev.replace(current[0], current[1].bind(pattern)), + pattern + ); + regexCache[pattern] = source; + } + return ignoreCase ? new RegExp(source, "i") : new RegExp(source); + }; + var isString = (subject) => typeof subject === "string"; + var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0; + var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); + var IgnoreRule = class { + constructor(origin, pattern, negative, regex) { + this.origin = origin; + this.pattern = pattern; + this.negative = negative; + this.regex = regex; } - get ok() { - return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; + }; + var createRule = (pattern, ignoreCase) => { + const origin = pattern; + let negative = false; + if (pattern.indexOf("!") === 0) { + negative = true; + pattern = pattern.substr(1); } - get redirected() { - return this[INTERNALS$1].counter > 0; + pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); + const regex = makeRegex(pattern, ignoreCase); + return new IgnoreRule( + origin, + pattern, + negative, + regex + ); + }; + var throwError = (message2, Ctor) => { + throw new Ctor(message2); + }; + var checkPath = (path2, originalPath, doThrow) => { + if (!isString(path2)) { + return doThrow( + `path must be a string, but got \`${originalPath}\``, + TypeError + ); } - get statusText() { - return this[INTERNALS$1].statusText; + if (!path2) { + return doThrow(`path must not be empty`, TypeError); } - get headers() { - return this[INTERNALS$1].headers; + if (checkPath.isNotRelative(path2)) { + const r = "`path.relative()`d"; + return doThrow( + `path should be a ${r} string, but got "${originalPath}"`, + RangeError + ); } - get highWaterMark() { - return this[INTERNALS$1].highWaterMark; + return true; + }; + var isNotRelative = (path2) => REGEX_TEST_INVALID_PATH.test(path2); + checkPath.isNotRelative = isNotRelative; + checkPath.convert = (p) => p; + var Ignore = class { + constructor({ + ignorecase = true, + ignoreCase = ignorecase, + allowRelativePaths = false + } = {}) { + define2(this, KEY_IGNORE, true); + this._rules = []; + this._ignoreCase = ignoreCase; + this._allowRelativePaths = allowRelativePaths; + this._initCache(); } - clone() { - return new Response(clone(this, this.highWaterMark), { - url: this.url, - status: this.status, - statusText: this.statusText, - headers: this.headers, - ok: this.ok, - redirected: this.redirected, - size: this.size - }); + _initCache() { + this._ignoreCache = /* @__PURE__ */ Object.create(null); + this._testCache = /* @__PURE__ */ Object.create(null); } - static redirect(url2, status = 302) { - if (!isRedirect(status)) { - throw new RangeError('Failed to execute "redirect" on "response": Invalid status code'); + _addPattern(pattern) { + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (checkPattern(pattern)) { + const rule = createRule(pattern, this._ignoreCase); + this._added = true; + this._rules.push(rule); } - return new Response(null, { - headers: { - location: new URL(url2).toString() - }, - status - }); } - get [Symbol.toStringTag]() { - return "Response"; + // @param {Array | string | Ignore} pattern + add(pattern) { + this._added = false; + makeArray( + isString(pattern) ? splitPattern(pattern) : pattern + ).forEach(this._addPattern, this); + if (this._added) { + this._initCache(); + } + return this; } - }; - Object.defineProperties(Response.prototype, { - url: { enumerable: true }, - status: { enumerable: true }, - ok: { enumerable: true }, - redirected: { enumerable: true }, - statusText: { enumerable: true }, - headers: { enumerable: true }, - clone: { enumerable: true } - }); - var getSearch = (parsedURL) => { - if (parsedURL.search) { - return parsedURL.search; + // legacy + addPattern(pattern) { + return this.add(pattern); } - const lastOffset = parsedURL.href.length - 1; - const hash = parsedURL.hash || (parsedURL.href[lastOffset] === "#" ? "#" : ""); - return parsedURL.href[lastOffset - hash.length] === "?" ? "?" : ""; - }; - var INTERNALS$2 = Symbol("Request internals"); - var isRequest = (object) => { - return typeof object === "object" && typeof object[INTERNALS$2] === "object"; - }; - var Request = class extends Body { - constructor(input, init = {}) { - let parsedURL; - if (isRequest(input)) { - parsedURL = new URL(input.url); - } else { - parsedURL = new URL(input); - input = {}; - } - let method = init.method || input.method || "GET"; - method = method.toUpperCase(); - if ((init.body != null || isRequest(input)) && input.body !== null && (method === "GET" || method === "HEAD")) { - throw new TypeError("Request with GET/HEAD method cannot have body"); - } - const inputBody = init.body ? init.body : isRequest(input) && input.body !== null ? clone(input) : null; - super(inputBody, { - size: init.size || input.size || 0 - }); - const headers = new Headers(init.headers || input.headers || {}); - if (inputBody !== null && !headers.has("Content-Type")) { - const contentType = extractContentType(inputBody, this); - if (contentType) { - headers.append("Content-Type", contentType); + // | ignored : unignored + // negative | 0:0 | 0:1 | 1:0 | 1:1 + // -------- | ------- | ------- | ------- | -------- + // 0 | TEST | TEST | SKIP | X + // 1 | TESTIF | SKIP | TEST | X + // - SKIP: always skip + // - TEST: always test + // - TESTIF: only test if checkUnignored + // - X: that never happen + // @param {boolean} whether should check if the path is unignored, + // setting `checkUnignored` to `false` could reduce additional + // path matching. + // @returns {TestResult} true if a file is ignored + _testOne(path2, checkUnignored) { + let ignored = false; + let unignored = false; + this._rules.forEach((rule) => { + const { negative } = rule; + if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { + return; + } + const matched = rule.regex.test(path2); + if (matched) { + ignored = !negative; + unignored = negative; } + }); + return { + ignored, + unignored + }; + } + // @returns {TestResult} + _test(originalPath, cache, checkUnignored, slices) { + const path2 = originalPath && checkPath.convert(originalPath); + checkPath( + path2, + originalPath, + this._allowRelativePaths ? RETURN_FALSE : throwError + ); + return this._t(path2, cache, checkUnignored, slices); + } + _t(path2, cache, checkUnignored, slices) { + if (path2 in cache) { + return cache[path2]; } - let signal = isRequest(input) ? input.signal : null; - if ("signal" in init) { - signal = init.signal; + if (!slices) { + slices = path2.split(SLASH); } - if (signal !== null && !isAbortSignal(signal)) { - throw new TypeError("Expected signal to be an instanceof AbortSignal"); + slices.pop(); + if (!slices.length) { + return cache[path2] = this._testOne(path2, checkUnignored); } - this[INTERNALS$2] = { - method, - redirect: init.redirect || input.redirect || "follow", - headers, - parsedURL, - signal - }; - this.follow = init.follow === void 0 ? input.follow === void 0 ? 20 : input.follow : init.follow; - this.compress = init.compress === void 0 ? input.compress === void 0 ? true : input.compress : init.compress; - this.counter = init.counter || input.counter || 0; - this.agent = init.agent || input.agent; - this.highWaterMark = init.highWaterMark || input.highWaterMark || 16384; - this.insecureHTTPParser = init.insecureHTTPParser || input.insecureHTTPParser || false; - } - get method() { - return this[INTERNALS$2].method; - } - get url() { - return url.format(this[INTERNALS$2].parsedURL); + const parent = this._t( + slices.join(SLASH) + SLASH, + cache, + checkUnignored, + slices + ); + return cache[path2] = parent.ignored ? parent : this._testOne(path2, checkUnignored); } - get headers() { - return this[INTERNALS$2].headers; + ignores(path2) { + return this._test(path2, this._ignoreCache, false).ignored; } - get redirect() { - return this[INTERNALS$2].redirect; + createFilter() { + return (path2) => !this.ignores(path2); } - get signal() { - return this[INTERNALS$2].signal; + filter(paths) { + return makeArray(paths).filter(this.createFilter()); } - clone() { - return new Request(this); + // @returns {TestResult} + test(path2) { + return this._test(path2, this._testCache, true); } - get [Symbol.toStringTag]() { - return "Request"; + }; + var factory = (options) => new Ignore(options); + var isPathValid = (path2) => checkPath(path2 && checkPath.convert(path2), path2, RETURN_FALSE); + factory.isPathValid = isPathValid; + factory.default = factory; + module2.exports = factory; + if ( + // Detect `process` so that it can run in browsers. + typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32") + ) { + const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/"); + checkPath.convert = makePosix; + const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; + checkPath.isNotRelative = (path2) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path2) || isNotRelative(path2); + } + } +}); + +// ../node_modules/.pnpm/slash@3.0.0/node_modules/slash/index.js +var require_slash = __commonJS({ + "../node_modules/.pnpm/slash@3.0.0/node_modules/slash/index.js"(exports2, module2) { + "use strict"; + module2.exports = (path2) => { + const isExtendedLengthPath = /^\\\\\?\\/.test(path2); + const hasNonAscii = /[^\u0000-\u0080]+/.test(path2); + if (isExtendedLengthPath || hasNonAscii) { + return path2; } + return path2.replace(/\\/g, "/"); }; - Object.defineProperties(Request.prototype, { - method: { enumerable: true }, - url: { enumerable: true }, - headers: { enumerable: true }, - redirect: { enumerable: true }, - clone: { enumerable: true }, - signal: { enumerable: true } - }); - var getNodeRequestOptions = (request) => { - const { parsedURL } = request[INTERNALS$2]; - const headers = new Headers(request[INTERNALS$2].headers); - if (!headers.has("Accept")) { - headers.set("Accept", "*/*"); + } +}); + +// ../node_modules/.pnpm/globby@11.1.0/node_modules/globby/gitignore.js +var require_gitignore = __commonJS({ + "../node_modules/.pnpm/globby@11.1.0/node_modules/globby/gitignore.js"(exports2, module2) { + "use strict"; + var { promisify } = require("util"); + var fs2 = require("fs"); + var path2 = require("path"); + var fastGlob = require_out4(); + var gitIgnore = require_ignore(); + var slash = require_slash(); + var DEFAULT_IGNORE = [ + "**/node_modules/**", + "**/flow-typed/**", + "**/coverage/**", + "**/.git" + ]; + var readFileP = promisify(fs2.readFile); + var mapGitIgnorePatternTo = (base) => (ignore) => { + if (ignore.startsWith("!")) { + return "!" + path2.posix.join(base, ignore.slice(1)); } - let contentLengthValue = null; - if (request.body === null && /^(post|put)$/i.test(request.method)) { - contentLengthValue = "0"; + return path2.posix.join(base, ignore); + }; + var parseGitIgnore = (content, options) => { + const base = slash(path2.relative(options.cwd, path2.dirname(options.fileName))); + return content.split(/\r?\n/).filter(Boolean).filter((line) => !line.startsWith("#")).map(mapGitIgnorePatternTo(base)); + }; + var reduceIgnore = (files) => { + const ignores = gitIgnore(); + for (const file of files) { + ignores.add(parseGitIgnore(file.content, { + cwd: file.cwd, + fileName: file.filePath + })); } - if (request.body !== null) { - const totalBytes = getTotalBytes(request); - if (typeof totalBytes === "number" && !Number.isNaN(totalBytes)) { - contentLengthValue = String(totalBytes); + return ignores; + }; + var ensureAbsolutePathForCwd = (cwd, p) => { + cwd = slash(cwd); + if (path2.isAbsolute(p)) { + if (slash(p).startsWith(cwd)) { + return p; } + throw new Error(`Path ${p} is not in cwd ${cwd}`); } - if (contentLengthValue) { - headers.set("Content-Length", contentLengthValue); - } - if (!headers.has("User-Agent")) { - headers.set("User-Agent", "node-fetch"); - } - if (request.compress && !headers.has("Accept-Encoding")) { - headers.set("Accept-Encoding", "gzip,deflate,br"); - } - let { agent } = request; - if (typeof agent === "function") { - agent = agent(parsedURL); - } - if (!headers.has("Connection") && !agent) { - headers.set("Connection", "close"); - } - const search = getSearch(parsedURL); - const requestOptions = { - path: parsedURL.pathname + search, - pathname: parsedURL.pathname, - hostname: parsedURL.hostname, - protocol: parsedURL.protocol, - port: parsedURL.port, - hash: parsedURL.hash, - search: parsedURL.search, - query: parsedURL.query, - href: parsedURL.href, - method: request.method, - headers: headers[Symbol.for("nodejs.util.inspect.custom")](), - insecureHTTPParser: request.insecureHTTPParser, - agent + return path2.join(cwd, p); + }; + var getIsIgnoredPredecate = (ignores, cwd) => { + return (p) => ignores.ignores(slash(path2.relative(cwd, ensureAbsolutePathForCwd(cwd, p.path || p)))); + }; + var getFile = async (file, cwd) => { + const filePath = path2.join(cwd, file); + const content = await readFileP(filePath, "utf8"); + return { + cwd, + filePath, + content }; - return requestOptions; }; - var AbortError = class extends FetchBaseError { - constructor(message2, type = "aborted") { - super(message2, type); - } + var getFileSync = (file, cwd) => { + const filePath = path2.join(cwd, file); + const content = fs2.readFileSync(filePath, "utf8"); + return { + cwd, + filePath, + content + }; }; - var supportedSchemas = new Set(["data:", "http:", "https:"]); - async function fetch(url2, options_) { - return new Promise((resolve, reject) => { - const request = new Request(url2, options_); - const options = getNodeRequestOptions(request); - if (!supportedSchemas.has(options.protocol)) { - throw new TypeError(`node-fetch cannot load ${url2}. URL scheme "${options.protocol.replace(/:$/, "")}" is not supported.`); - } - if (options.protocol === "data:") { - const data = dataUriToBuffer(request.url); - const response2 = new Response(data, { headers: { "Content-Type": data.typeFull } }); - resolve(response2); - return; - } - const send = (options.protocol === "https:" ? https : http).request; - const { signal } = request; - let response = null; - const abort = () => { - const error = new AbortError("The operation was aborted."); - reject(error); - if (request.body && request.body instanceof Stream.Readable) { - request.body.destroy(error); - } - if (!response || !response.body) { - return; - } - response.body.emit("error", error); - }; - if (signal && signal.aborted) { - abort(); - return; - } - const abortAndFinalize = () => { - abort(); - finalize(); - }; - const request_ = send(options); - if (signal) { - signal.addEventListener("abort", abortAndFinalize); - } - const finalize = () => { - request_.abort(); - if (signal) { - signal.removeEventListener("abort", abortAndFinalize); - } - }; - request_.on("error", (err) => { - reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, "system", err)); - finalize(); - }); - request_.on("response", (response_) => { - request_.setTimeout(0); - const headers = fromRawHeaders(response_.rawHeaders); - if (isRedirect(response_.statusCode)) { - const location = headers.get("Location"); - const locationURL = location === null ? null : new URL(location, request.url); - switch (request.redirect) { - case "error": - reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, "no-redirect")); - finalize(); - return; - case "manual": - if (locationURL !== null) { - try { - headers.set("Location", locationURL); - } catch (error) { - reject(error); - } - } - break; - case "follow": { - if (locationURL === null) { - break; - } - if (request.counter >= request.follow) { - reject(new FetchError(`maximum redirect reached at: ${request.url}`, "max-redirect")); - finalize(); - return; - } - const requestOptions = { - headers: new Headers(request.headers), - follow: request.follow, - counter: request.counter + 1, - agent: request.agent, - compress: request.compress, - method: request.method, - body: request.body, - signal: request.signal, - size: request.size - }; - if (response_.statusCode !== 303 && request.body && options_.body instanceof Stream.Readable) { - reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect")); - finalize(); - return; - } - if (response_.statusCode === 303 || (response_.statusCode === 301 || response_.statusCode === 302) && request.method === "POST") { - requestOptions.method = "GET"; - requestOptions.body = void 0; - requestOptions.headers.delete("content-length"); - } - resolve(fetch(new Request(locationURL, requestOptions))); - finalize(); - return; - } - } - } - response_.once("end", () => { - if (signal) { - signal.removeEventListener("abort", abortAndFinalize); - } - }); - let body = Stream.pipeline(response_, new Stream.PassThrough(), (error) => { - reject(error); - }); - if (process.version < "v12.10") { - response_.on("aborted", abortAndFinalize); - } - const responseOptions = { - url: request.url, - status: response_.statusCode, - statusText: response_.statusMessage, - headers, - size: request.size, - counter: request.counter, - highWaterMark: request.highWaterMark - }; - const codings = headers.get("Content-Encoding"); - if (!request.compress || request.method === "HEAD" || codings === null || response_.statusCode === 204 || response_.statusCode === 304) { - response = new Response(body, responseOptions); - resolve(response); - return; - } - const zlibOptions = { - flush: zlib.Z_SYNC_FLUSH, - finishFlush: zlib.Z_SYNC_FLUSH - }; - if (codings === "gzip" || codings === "x-gzip") { - body = Stream.pipeline(body, zlib.createGunzip(zlibOptions), (error) => { - reject(error); - }); - response = new Response(body, responseOptions); - resolve(response); - return; - } - if (codings === "deflate" || codings === "x-deflate") { - const raw = Stream.pipeline(response_, new Stream.PassThrough(), (error) => { - reject(error); - }); - raw.once("data", (chunk) => { - if ((chunk[0] & 15) === 8) { - body = Stream.pipeline(body, zlib.createInflate(), (error) => { - reject(error); - }); - } else { - body = Stream.pipeline(body, zlib.createInflateRaw(), (error) => { - reject(error); - }); - } - response = new Response(body, responseOptions); - resolve(response); - }); - return; - } - if (codings === "br") { - body = Stream.pipeline(body, zlib.createBrotliDecompress(), (error) => { - reject(error); - }); - response = new Response(body, responseOptions); - resolve(response); - return; - } - response = new Response(body, responseOptions); - resolve(response); - }); - writeToStream(request_, request); + var normalizeOptions = ({ + ignore = [], + cwd = slash(process.cwd()) + } = {}) => { + return { ignore, cwd }; + }; + module2.exports = async (options) => { + options = normalizeOptions(options); + const paths = await fastGlob("**/.gitignore", { + ignore: DEFAULT_IGNORE.concat(options.ignore), + cwd: options.cwd }); - } - exports2.AbortError = AbortError; - exports2.FetchError = FetchError; - exports2.Headers = Headers; - exports2.Request = Request; - exports2.Response = Response; - exports2.default = fetch; - exports2.isRedirect = isRedirect; + const files = await Promise.all(paths.map((file) => getFile(file, options.cwd))); + const ignores = reduceIgnore(files); + return getIsIgnoredPredecate(ignores, options.cwd); + }; + module2.exports.sync = (options) => { + options = normalizeOptions(options); + const paths = fastGlob.sync("**/.gitignore", { + ignore: DEFAULT_IGNORE.concat(options.ignore), + cwd: options.cwd + }); + const files = paths.map((file) => getFileSync(file, options.cwd)); + const ignores = reduceIgnore(files); + return getIsIgnoredPredecate(ignores, options.cwd); + }; } }); -// ../fetch/lib/fetch.js -var require_fetch = __commonJS({ - "../fetch/lib/fetch.js"(exports2) { +// ../node_modules/.pnpm/globby@11.1.0/node_modules/globby/stream-utils.js +var require_stream_utils = __commonJS({ + "../node_modules/.pnpm/globby@11.1.0/node_modules/globby/stream-utils.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var { Transform } = require("stream"); + var ObjectTransform = class extends Transform { + constructor() { + super({ + objectMode: true + }); } - __setModuleDefault2(result, mod); - return result; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ResponseError = exports2.isRedirect = exports2.Response = void 0; - var core_loggers_1 = require_lib12(); - var retry_1 = require_retry2(); - var node_fetch_1 = __importStar2(require_dist2()); - Object.defineProperty(exports2, "Response", { enumerable: true, get: function() { - return node_fetch_1.Response; - } }); - var MIN_TIMEOUT = 10; - var MAX_RETRIES = 5; - var MAX_RETRY_AFTER = 20; - var FACTOR = 6; - exports2.isRedirect = node_fetch_1.default.isRedirect; - async function fetchRetry(url, opts = {}) { - const retryOpts = Object.assign({ - factor: FACTOR, - maxRetryAfter: MAX_RETRY_AFTER, - minTimeout: MIN_TIMEOUT, - retries: MAX_RETRIES - }, opts.retry); - const op = retry_1.operation(retryOpts); - try { - return await new Promise((resolve, reject) => op.attempt(async (attempt) => { - var _a; - try { - const res = await node_fetch_1.default(url, opts); - if (res.status >= 500 && res.status < 600 || res.status === 429) { - throw new ResponseError(res); - } else { - resolve(res); - return; - } - } catch (error) { - const timeout = op.retry(error); - if (timeout === false) { - reject(op.mainError()); - return; - } - core_loggers_1.requestRetryLogger.debug({ - attempt, - error, - maxRetries: retryOpts.retries, - method: (_a = opts.method) !== null && _a !== void 0 ? _a : "GET", - timeout, - url: url.toString() - }); - } - })); - } catch (err) { - if (err instanceof ResponseError) { - return err.res; + var FilterStream = class extends ObjectTransform { + constructor(filter) { + super(); + this._filter = filter; + } + _transform(data, encoding, callback) { + if (this._filter(data)) { + this.push(data); } - throw err; + callback(); } - } - exports2.default = fetchRetry; - var ResponseError = class extends Error { - constructor(res) { - super(res.statusText); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, ResponseError); + }; + var UniqueStream = class extends ObjectTransform { + constructor() { + super(); + this._pushed = /* @__PURE__ */ new Set(); + } + _transform(data, encoding, callback) { + if (!this._pushed.has(data)) { + this.push(data); + this._pushed.add(data); } - this.name = this.constructor.name; - this.res = res; - this.code = this.status = this.statusCode = res.status; - this.url = res.url; + callback(); } }; - exports2.ResponseError = ResponseError; + module2.exports = { + FilterStream, + UniqueStream + }; } }); -// ../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js -var require_ms2 = __commonJS({ - "../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports2, module2) { - var s = 1e3; - var m = s * 60; - var h = m * 60; - var d = h * 24; - var w = d * 7; - var y = d * 365.25; - module2.exports = function(val, options) { - options = options || {}; - var type = typeof val; - if (type === "string" && val.length > 0) { - return parse(val); - } else if (type === "number" && isFinite(val)) { - return options.long ? fmtLong(val) : fmtShort(val); +// ../node_modules/.pnpm/globby@11.1.0/node_modules/globby/index.js +var require_globby = __commonJS({ + "../node_modules/.pnpm/globby@11.1.0/node_modules/globby/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var arrayUnion = require_array_union(); + var merge2 = require_merge22(); + var fastGlob = require_out4(); + var dirGlob = require_dir_glob(); + var gitignore = require_gitignore(); + var { FilterStream, UniqueStream } = require_stream_utils(); + var DEFAULT_FILTER = () => false; + var isNegative = (pattern) => pattern[0] === "!"; + var assertPatternsInput = (patterns) => { + if (!patterns.every((pattern) => typeof pattern === "string")) { + throw new TypeError("Patterns must be a string or an array of strings"); } - throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(val)); }; - function parse(str) { - str = String(str); - if (str.length > 100) { + var checkCwdOption = (options = {}) => { + if (!options.cwd) { return; } - var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str); - if (!match) { + let stat; + try { + stat = fs2.statSync(options.cwd); + } catch { return; } - var n = parseFloat(match[1]); - var type = (match[2] || "ms").toLowerCase(); - switch (type) { - case "years": - case "year": - case "yrs": - case "yr": - case "y": - return n * y; - case "weeks": - case "week": - case "w": - return n * w; - case "days": - case "day": - case "d": - return n * d; - case "hours": - case "hour": - case "hrs": - case "hr": - case "h": - return n * h; - case "minutes": - case "minute": - case "mins": - case "min": - case "m": - return n * m; - case "seconds": - case "second": - case "secs": - case "sec": - case "s": - return n * s; - case "milliseconds": - case "millisecond": - case "msecs": - case "msec": - case "ms": - return n; - default: - return void 0; - } - } - function fmtShort(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return Math.round(ms / d) + "d"; - } - if (msAbs >= h) { - return Math.round(ms / h) + "h"; + if (!stat.isDirectory()) { + throw new Error("The `cwd` option must be a path to a directory"); } - if (msAbs >= m) { - return Math.round(ms / m) + "m"; + }; + var getPathString = (p) => p.stats instanceof fs2.Stats ? p.path : p; + var generateGlobTasks = (patterns, taskOptions) => { + patterns = arrayUnion([].concat(patterns)); + assertPatternsInput(patterns); + checkCwdOption(taskOptions); + const globTasks = []; + taskOptions = { + ignore: [], + expandDirectories: true, + ...taskOptions + }; + for (const [index, pattern] of patterns.entries()) { + if (isNegative(pattern)) { + continue; + } + const ignore = patterns.slice(index).filter((pattern2) => isNegative(pattern2)).map((pattern2) => pattern2.slice(1)); + const options = { + ...taskOptions, + ignore: taskOptions.ignore.concat(ignore) + }; + globTasks.push({ pattern, options }); } - if (msAbs >= s) { - return Math.round(ms / s) + "s"; + return globTasks; + }; + var globDirs = (task, fn2) => { + let options = {}; + if (task.options.cwd) { + options.cwd = task.options.cwd; } - return ms + "ms"; - } - function fmtLong(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return plural(ms, msAbs, d, "day"); + if (Array.isArray(task.options.expandDirectories)) { + options = { + ...options, + files: task.options.expandDirectories + }; + } else if (typeof task.options.expandDirectories === "object") { + options = { + ...options, + ...task.options.expandDirectories + }; } - if (msAbs >= h) { - return plural(ms, msAbs, h, "hour"); + return fn2(task.pattern, options); + }; + var getPattern = (task, fn2) => task.options.expandDirectories ? globDirs(task, fn2) : [task.pattern]; + var getFilterSync = (options) => { + return options && options.gitignore ? gitignore.sync({ cwd: options.cwd, ignore: options.ignore }) : DEFAULT_FILTER; + }; + var globToTask = (task) => (glob) => { + const { options } = task; + if (options.ignore && Array.isArray(options.ignore) && options.expandDirectories) { + options.ignore = dirGlob.sync(options.ignore); } - if (msAbs >= m) { - return plural(ms, msAbs, m, "minute"); + return { + pattern: glob, + options + }; + }; + module2.exports = async (patterns, options) => { + const globTasks = generateGlobTasks(patterns, options); + const getFilter = async () => { + return options && options.gitignore ? gitignore({ cwd: options.cwd, ignore: options.ignore }) : DEFAULT_FILTER; + }; + const getTasks = async () => { + const tasks2 = await Promise.all(globTasks.map(async (task) => { + const globs = await getPattern(task, dirGlob); + return Promise.all(globs.map(globToTask(task))); + })); + return arrayUnion(...tasks2); + }; + const [filter, tasks] = await Promise.all([getFilter(), getTasks()]); + const paths = await Promise.all(tasks.map((task) => fastGlob(task.pattern, task.options))); + return arrayUnion(...paths).filter((path_) => !filter(getPathString(path_))); + }; + module2.exports.sync = (patterns, options) => { + const globTasks = generateGlobTasks(patterns, options); + const tasks = []; + for (const task of globTasks) { + const newTask = getPattern(task, dirGlob.sync).map(globToTask(task)); + tasks.push(...newTask); } - if (msAbs >= s) { - return plural(ms, msAbs, s, "second"); + const filter = getFilterSync(options); + let matches = []; + for (const task of tasks) { + matches = arrayUnion(matches, fastGlob.sync(task.pattern, task.options)); } - return ms + " ms"; - } - function plural(ms, msAbs, n, name) { - var isPlural = msAbs >= n * 1.5; - return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); - } + return matches.filter((path_) => !filter(path_)); + }; + module2.exports.stream = (patterns, options) => { + const globTasks = generateGlobTasks(patterns, options); + const tasks = []; + for (const task of globTasks) { + const newTask = getPattern(task, dirGlob.sync).map(globToTask(task)); + tasks.push(...newTask); + } + const filter = getFilterSync(options); + const filterStream = new FilterStream((p) => !filter(p)); + const uniqueStream = new UniqueStream(); + return merge2(tasks.map((task) => fastGlob.stream(task.pattern, task.options))).pipe(filterStream).pipe(uniqueStream); + }; + module2.exports.generateGlobTasks = generateGlobTasks; + module2.exports.hasMagic = (patterns, options) => [].concat(patterns).some((pattern) => fastGlob.isDynamicPattern(pattern, options)); + module2.exports.gitignore = gitignore; } }); -// ../../node_modules/.pnpm/humanize-ms@1.2.1/node_modules/humanize-ms/index.js -var require_humanize_ms = __commonJS({ - "../../node_modules/.pnpm/humanize-ms@1.2.1/node_modules/humanize-ms/index.js"(exports2, module2) { +// ../node_modules/.pnpm/is-path-cwd@2.2.0/node_modules/is-path-cwd/index.js +var require_is_path_cwd = __commonJS({ + "../node_modules/.pnpm/is-path-cwd@2.2.0/node_modules/is-path-cwd/index.js"(exports2, module2) { "use strict"; - var util = require("util"); - var ms = require_ms2(); - module2.exports = function(t) { - if (typeof t === "number") - return t; - var r = ms(t); - if (r === void 0) { - var err = new Error(util.format("humanize-ms(%j) result undefined", t)); - console.warn(err.stack); + var path2 = require("path"); + module2.exports = (path_) => { + let cwd = process.cwd(); + path_ = path2.resolve(path_); + if (process.platform === "win32") { + cwd = cwd.toLowerCase(); + path_ = path_.toLowerCase(); } - return r; + return path_ === cwd; }; } }); -// ../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/callsite-tostring.js -var require_callsite_tostring = __commonJS({ - "../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/callsite-tostring.js"(exports2, module2) { +// ../node_modules/.pnpm/is-path-inside@3.0.3/node_modules/is-path-inside/index.js +var require_is_path_inside = __commonJS({ + "../node_modules/.pnpm/is-path-inside@3.0.3/node_modules/is-path-inside/index.js"(exports2, module2) { "use strict"; - module2.exports = callSiteToString2; - function callSiteFileLocation(callSite) { - var fileName; - var fileLocation = ""; - if (callSite.isNative()) { - fileLocation = "native"; - } else if (callSite.isEval()) { - fileName = callSite.getScriptNameOrSourceURL(); - if (!fileName) { - fileLocation = callSite.getEvalOrigin(); - } - } else { - fileName = callSite.getFileName(); + var path2 = require("path"); + module2.exports = (childPath, parentPath) => { + const relation = path2.relative(parentPath, childPath); + return Boolean( + relation && relation !== ".." && !relation.startsWith(`..${path2.sep}`) && relation !== path2.resolve(childPath) + ); + }; + } +}); + +// ../node_modules/.pnpm/indent-string@4.0.0/node_modules/indent-string/index.js +var require_indent_string = __commonJS({ + "../node_modules/.pnpm/indent-string@4.0.0/node_modules/indent-string/index.js"(exports2, module2) { + "use strict"; + module2.exports = (string, count = 1, options) => { + options = { + indent: " ", + includeEmptyLines: false, + ...options + }; + if (typeof string !== "string") { + throw new TypeError( + `Expected \`input\` to be a \`string\`, got \`${typeof string}\`` + ); } - if (fileName) { - fileLocation += fileName; - var lineNumber = callSite.getLineNumber(); - if (lineNumber != null) { - fileLocation += ":" + lineNumber; - var columnNumber = callSite.getColumnNumber(); - if (columnNumber) { - fileLocation += ":" + columnNumber; - } - } + if (typeof count !== "number") { + throw new TypeError( + `Expected \`count\` to be a \`number\`, got \`${typeof count}\`` + ); } - return fileLocation || "unknown source"; - } - function callSiteToString2(callSite) { - var addSuffix = true; - var fileLocation = callSiteFileLocation(callSite); - var functionName = callSite.getFunctionName(); - var isConstructor = callSite.isConstructor(); - var isMethodCall = !(callSite.isToplevel() || isConstructor); - var line = ""; - if (isMethodCall) { - var methodName = callSite.getMethodName(); - var typeName = getConstructorName(callSite); - if (functionName) { - if (typeName && functionName.indexOf(typeName) !== 0) { - line += typeName + "."; - } - line += functionName; - if (methodName && functionName.lastIndexOf("." + methodName) !== functionName.length - methodName.length - 1) { - line += " [as " + methodName + "]"; - } - } else { - line += typeName + "." + (methodName || ""); - } - } else if (isConstructor) { - line += "new " + (functionName || ""); - } else if (functionName) { - line += functionName; - } else { - addSuffix = false; - line += fileLocation; + if (typeof options.indent !== "string") { + throw new TypeError( + `Expected \`options.indent\` to be a \`string\`, got \`${typeof options.indent}\`` + ); } - if (addSuffix) { - line += " (" + fileLocation + ")"; + if (count === 0) { + return string; } - return line; - } - function getConstructorName(obj) { - var receiver = obj.receiver; - return receiver.constructor && receiver.constructor.name || null; - } + const regex = options.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; + return string.replace(regex, options.indent.repeat(count)); + }; } }); -// ../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/event-listener-count.js -var require_event_listener_count = __commonJS({ - "../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/event-listener-count.js"(exports2, module2) { +// ../node_modules/.pnpm/clean-stack@2.2.0/node_modules/clean-stack/index.js +var require_clean_stack = __commonJS({ + "../node_modules/.pnpm/clean-stack@2.2.0/node_modules/clean-stack/index.js"(exports2, module2) { "use strict"; - module2.exports = eventListenerCount2; - function eventListenerCount2(emitter, type) { - return emitter.listeners(type).length; - } + var os = require("os"); + var extractPathRegex = /\s+at.*(?:\(|\s)(.*)\)?/; + var pathRegex = /^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/; + var homeDir = typeof os.homedir === "undefined" ? "" : os.homedir(); + module2.exports = (stack2, options) => { + options = Object.assign({ pretty: false }, options); + return stack2.replace(/\\/g, "/").split("\n").filter((line) => { + const pathMatches = line.match(extractPathRegex); + if (pathMatches === null || !pathMatches[1]) { + return true; + } + const match = pathMatches[1]; + if (match.includes(".app/Contents/Resources/electron.asar") || match.includes(".app/Contents/Resources/default_app.asar")) { + return false; + } + return !pathRegex.test(match); + }).filter((line) => line.trim() !== "").map((line) => { + if (options.pretty) { + return line.replace(extractPathRegex, (m, p1) => m.replace(p1, p1.replace(homeDir, "~"))); + } + return line; + }).join("\n"); + }; } }); -// ../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/index.js -var require_compat = __commonJS({ - "../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/lib/compat/index.js"(exports2, module2) { +// ../node_modules/.pnpm/aggregate-error@3.1.0/node_modules/aggregate-error/index.js +var require_aggregate_error = __commonJS({ + "../node_modules/.pnpm/aggregate-error@3.1.0/node_modules/aggregate-error/index.js"(exports2, module2) { "use strict"; - var EventEmitter = require("events").EventEmitter; - lazyProperty(module2.exports, "callSiteToString", function callSiteToString2() { - var limit = Error.stackTraceLimit; - var obj = {}; - var prep = Error.prepareStackTrace; - function prepareObjectStackTrace2(obj2, stack3) { - return stack3; - } - Error.prepareStackTrace = prepareObjectStackTrace2; - Error.stackTraceLimit = 2; - Error.captureStackTrace(obj); - var stack2 = obj.stack.slice(); - Error.prepareStackTrace = prep; - Error.stackTraceLimit = limit; - return stack2[0].toString ? toString : require_callsite_tostring(); - }); - lazyProperty(module2.exports, "eventListenerCount", function eventListenerCount2() { - return EventEmitter.listenerCount || require_event_listener_count(); - }); - function lazyProperty(obj, prop, getter) { - function get() { - var val = getter(); - Object.defineProperty(obj, prop, { - configurable: true, - enumerable: true, - value: val + var indentString = require_indent_string(); + var cleanStack = require_clean_stack(); + var cleanInternalStack = (stack2) => stack2.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g, ""); + var AggregateError2 = class extends Error { + constructor(errors) { + if (!Array.isArray(errors)) { + throw new TypeError(`Expected input to be an Array, got ${typeof errors}`); + } + errors = [...errors].map((error) => { + if (error instanceof Error) { + return error; + } + if (error !== null && typeof error === "object") { + return Object.assign(new Error(error.message), error); + } + return new Error(error); }); - return val; + let message2 = errors.map((error) => { + return typeof error.stack === "string" ? cleanInternalStack(cleanStack(error.stack)) : String(error); + }).join("\n"); + message2 = "\n" + indentString(message2, 4); + super(message2); + this.name = "AggregateError"; + Object.defineProperty(this, "_errors", { value: errors }); } - Object.defineProperty(obj, prop, { - configurable: true, - enumerable: true, - get - }); - } - function toString(obj) { - return obj.toString(); - } + *[Symbol.iterator]() { + for (const error of this._errors) { + yield error; + } + } + }; + module2.exports = AggregateError2; } }); -// ../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/index.js -var require_depd = __commonJS({ - "../../node_modules/.pnpm/depd@1.1.2/node_modules/depd/index.js"(exports, module) { - var callSiteToString = require_compat().callSiteToString; - var eventListenerCount = require_compat().eventListenerCount; - var relative = require("path").relative; - module.exports = depd; - var basePath = process.cwd(); - function containsNamespace(str, namespace) { - var vals = str.split(/[ ,]+/); - var ns = String(namespace).toLowerCase(); - for (var i = 0; i < vals.length; i++) { - var val = vals[i]; - if (val && (val === "*" || val.toLowerCase() === ns)) { - return true; +// ../node_modules/.pnpm/p-map@4.0.0/node_modules/p-map/index.js +var require_p_map2 = __commonJS({ + "../node_modules/.pnpm/p-map@4.0.0/node_modules/p-map/index.js"(exports2, module2) { + "use strict"; + var AggregateError2 = require_aggregate_error(); + module2.exports = async (iterable, mapper, { + concurrency = Infinity, + stopOnError = true + } = {}) => { + return new Promise((resolve, reject) => { + if (typeof mapper !== "function") { + throw new TypeError("Mapper function is required"); } - } - return false; - } - function convertDataDescriptorToAccessor(obj, prop, message2) { - var descriptor = Object.getOwnPropertyDescriptor(obj, prop); - var value = descriptor.value; - descriptor.get = function getter() { - return value; - }; - if (descriptor.writable) { - descriptor.set = function setter(val) { - return value = val; + if (!((Number.isSafeInteger(concurrency) || concurrency === Infinity) && concurrency >= 1)) { + throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`); + } + const result2 = []; + const errors = []; + const iterator = iterable[Symbol.iterator](); + let isRejected = false; + let isIterableDone = false; + let resolvingCount = 0; + let currentIndex = 0; + const next = () => { + if (isRejected) { + return; + } + const nextItem = iterator.next(); + const index = currentIndex; + currentIndex++; + if (nextItem.done) { + isIterableDone = true; + if (resolvingCount === 0) { + if (!stopOnError && errors.length !== 0) { + reject(new AggregateError2(errors)); + } else { + resolve(result2); + } + } + return; + } + resolvingCount++; + (async () => { + try { + const element = await nextItem.value; + result2[index] = await mapper(element, index); + resolvingCount--; + next(); + } catch (error) { + if (stopOnError) { + isRejected = true; + reject(error); + } else { + errors.push(error); + resolvingCount--; + next(); + } + } + })(); }; - } - delete descriptor.value; - delete descriptor.writable; - Object.defineProperty(obj, prop, descriptor); - return descriptor; - } - function createArgumentsString(arity) { - var str = ""; - for (var i = 0; i < arity; i++) { - str += ", arg" + i; - } - return str.substr(2); - } - function createStackString(stack2) { - var str = this.name + ": " + this.namespace; - if (this.message) { - str += " deprecated " + this.message; - } - for (var i = 0; i < stack2.length; i++) { - str += "\n at " + callSiteToString(stack2[i]); - } - return str; - } - function depd(namespace) { - if (!namespace) { - throw new TypeError("argument namespace is required"); - } - var stack2 = getStack(); - var site2 = callSiteLocation(stack2[1]); - var file = site2[0]; - function deprecate2(message2) { - log.call(deprecate2, message2); - } - deprecate2._file = file; - deprecate2._ignored = isignored(namespace); - deprecate2._namespace = namespace; - deprecate2._traced = istraced(namespace); - deprecate2._warned = Object.create(null); - deprecate2.function = wrapfunction; - deprecate2.property = wrapproperty; - return deprecate2; - } - function isignored(namespace) { - if (process.noDeprecation) { - return true; - } - var str = process.env.NO_DEPRECATION || ""; - return containsNamespace(str, namespace); - } - function istraced(namespace) { - if (process.traceDeprecation) { - return true; - } - var str = process.env.TRACE_DEPRECATION || ""; - return containsNamespace(str, namespace); - } - function log(message2, site2) { - var haslisteners = eventListenerCount(process, "deprecation") !== 0; - if (!haslisteners && this._ignored) { - return; - } - var caller; - var callFile; - var callSite; - var depSite; - var i = 0; - var seen = false; - var stack2 = getStack(); - var file = this._file; - if (site2) { - depSite = site2; - callSite = callSiteLocation(stack2[1]); - callSite.name = depSite.name; - file = callSite[0]; - } else { - i = 2; - depSite = callSiteLocation(stack2[i]); - callSite = depSite; - } - for (; i < stack2.length; i++) { - caller = callSiteLocation(stack2[i]); - callFile = caller[0]; - if (callFile === file) { - seen = true; - } else if (callFile === this._file) { - file = this._file; - } else if (seen) { - break; + for (let i = 0; i < concurrency; i++) { + next(); + if (isIterableDone) { + break; + } } + }); + }; + } +}); + +// ../node_modules/.pnpm/del@6.1.1/node_modules/del/index.js +var require_del = __commonJS({ + "../node_modules/.pnpm/del@6.1.1/node_modules/del/index.js"(exports2, module2) { + "use strict"; + var { promisify } = require("util"); + var path2 = require("path"); + var globby = require_globby(); + var isGlob = require_is_glob(); + var slash = require_slash(); + var gracefulFs = require_graceful_fs(); + var isPathCwd = require_is_path_cwd(); + var isPathInside = require_is_path_inside(); + var rimraf = require_rimraf(); + var pMap = require_p_map2(); + var rimrafP = promisify(rimraf); + var rimrafOptions = { + glob: false, + unlink: gracefulFs.unlink, + unlinkSync: gracefulFs.unlinkSync, + chmod: gracefulFs.chmod, + chmodSync: gracefulFs.chmodSync, + stat: gracefulFs.stat, + statSync: gracefulFs.statSync, + lstat: gracefulFs.lstat, + lstatSync: gracefulFs.lstatSync, + rmdir: gracefulFs.rmdir, + rmdirSync: gracefulFs.rmdirSync, + readdir: gracefulFs.readdir, + readdirSync: gracefulFs.readdirSync + }; + function safeCheck(file, cwd) { + if (isPathCwd(file)) { + throw new Error("Cannot delete the current working directory. Can be overridden with the `force` option."); } - var key = caller ? depSite.join(":") + "__" + caller.join(":") : void 0; - if (key !== void 0 && key in this._warned) { - return; - } - this._warned[key] = true; - var msg = message2; - if (!msg) { - msg = callSite === depSite || !callSite.name ? defaultMessage(depSite) : defaultMessage(callSite); - } - if (haslisteners) { - var err = DeprecationError(this._namespace, msg, stack2.slice(i)); - process.emit("deprecation", err); - return; + if (!isPathInside(file, cwd)) { + throw new Error("Cannot delete files/directories outside the current working directory. Can be overridden with the `force` option."); } - var format = process.stderr.isTTY ? formatColor : formatPlain; - var output = format.call(this, msg, caller, stack2.slice(i)); - process.stderr.write(output + "\n", "utf8"); } - function callSiteLocation(callSite) { - var file = callSite.getFileName() || ""; - var line = callSite.getLineNumber(); - var colm = callSite.getColumnNumber(); - if (callSite.isEval()) { - file = callSite.getEvalOrigin() + ", " + file; - } - var site2 = [file, line, colm]; - site2.callSite = callSite; - site2.name = callSite.getFunctionName(); - return site2; + function normalizePatterns(patterns) { + patterns = Array.isArray(patterns) ? patterns : [patterns]; + patterns = patterns.map((pattern) => { + if (process.platform === "win32" && isGlob(pattern) === false) { + return slash(pattern); + } + return pattern; + }); + return patterns; } - function defaultMessage(site2) { - var callSite = site2.callSite; - var funcName = site2.name; - if (!funcName) { - funcName = ""; - } - var context = callSite.getThis(); - var typeName = context && callSite.getTypeName(); - if (typeName === "Object") { - typeName = void 0; + module2.exports = async (patterns, { force, dryRun, cwd = process.cwd(), onProgress = () => { + }, ...options } = {}) => { + options = { + expandDirectories: false, + onlyFiles: false, + followSymbolicLinks: false, + cwd, + ...options + }; + patterns = normalizePatterns(patterns); + const files = (await globby(patterns, options)).sort((a, b) => b.localeCompare(a)); + if (files.length === 0) { + onProgress({ + totalCount: 0, + deletedCount: 0, + percent: 1 + }); } - if (typeName === "Function") { - typeName = context.name || typeName; + let deletedCount = 0; + const mapper = async (file) => { + file = path2.resolve(cwd, file); + if (!force) { + safeCheck(file, cwd); + } + if (!dryRun) { + await rimrafP(file, rimrafOptions); + } + deletedCount += 1; + onProgress({ + totalCount: files.length, + deletedCount, + percent: deletedCount / files.length + }); + return file; + }; + const removedFiles = await pMap(files, mapper, options); + removedFiles.sort((a, b) => a.localeCompare(b)); + return removedFiles; + }; + module2.exports.sync = (patterns, { force, dryRun, cwd = process.cwd(), ...options } = {}) => { + options = { + expandDirectories: false, + onlyFiles: false, + followSymbolicLinks: false, + cwd, + ...options + }; + patterns = normalizePatterns(patterns); + const files = globby.sync(patterns, options).sort((a, b) => b.localeCompare(a)); + const removedFiles = files.map((file) => { + file = path2.resolve(cwd, file); + if (!force) { + safeCheck(file, cwd); + } + if (!dryRun) { + rimraf.sync(file, rimrafOptions); + } + return file; + }); + removedFiles.sort((a, b) => a.localeCompare(b)); + return removedFiles; + }; + } +}); + +// ../node_modules/.pnpm/tempy@1.0.1/node_modules/tempy/index.js +var require_tempy = __commonJS({ + "../node_modules/.pnpm/tempy@1.0.1/node_modules/tempy/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var path2 = require("path"); + var uniqueString = require_unique_string(); + var tempDir = require_temp_dir(); + var isStream = require_is_stream(); + var del = require_del(); + var stream = require("stream"); + var { promisify } = require("util"); + var pipeline = promisify(stream.pipeline); + var { writeFile } = fs2.promises; + var getPath = (prefix = "") => path2.join(tempDir, prefix + uniqueString()); + var writeStream = async (filePath, data) => pipeline(data, fs2.createWriteStream(filePath)); + var createTask = (tempyFunction, { extraArguments = 0 } = {}) => async (...arguments_) => { + const [callback, options] = arguments_.slice(extraArguments); + const result2 = await tempyFunction(...arguments_.slice(0, extraArguments), options); + try { + return await callback(result2); + } finally { + await del(result2, { force: true }); } - return typeName && callSite.getMethodName() ? typeName + "." + funcName : funcName; - } - function formatPlain(msg, caller, stack2) { - var timestamp = new Date().toUTCString(); - var formatted = timestamp + " " + this._namespace + " deprecated " + msg; - if (this._traced) { - for (var i = 0; i < stack2.length; i++) { - formatted += "\n at " + callSiteToString(stack2[i]); + }; + module2.exports.file = (options) => { + options = { + ...options + }; + if (options.name) { + if (options.extension !== void 0 && options.extension !== null) { + throw new Error("The `name` and `extension` options are mutually exclusive"); } - return formatted; + return path2.join(module2.exports.directory(), options.name); } - if (caller) { - formatted += " at " + formatLocation(caller); + return getPath() + (options.extension === void 0 || options.extension === null ? "" : "." + options.extension.replace(/^\./, "")); + }; + module2.exports.file.task = createTask(module2.exports.file); + module2.exports.directory = ({ prefix = "" } = {}) => { + const directory = getPath(prefix); + fs2.mkdirSync(directory); + return directory; + }; + module2.exports.directory.task = createTask(module2.exports.directory); + module2.exports.write = async (data, options) => { + const filename = module2.exports.file(options); + const write = isStream(data) ? writeStream : writeFile; + await write(filename, data); + return filename; + }; + module2.exports.write.task = createTask(module2.exports.write, { extraArguments: 1 }); + module2.exports.writeSync = (data, options) => { + const filename = module2.exports.file(options); + fs2.writeFileSync(filename, data); + return filename; + }; + Object.defineProperty(module2.exports, "root", { + get() { + return tempDir; } - return formatted; - } - function formatColor(msg, caller, stack2) { - var formatted = "" + this._namespace + " deprecated " + msg + ""; - if (this._traced) { - for (var i = 0; i < stack2.length; i++) { - formatted += "\n at " + callSiteToString(stack2[i]) + ""; + }); + } +}); + +// ../env/node.fetcher/lib/normalizeArch.js +var require_normalizeArch = __commonJS({ + "../env/node.fetcher/lib/normalizeArch.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNormalizedArch = void 0; + function getNormalizedArch(platform, arch, nodeVersion) { + if (nodeVersion) { + const nodeMajorVersion = +nodeVersion.split(".")[0]; + if (platform === "darwin" && arch === "arm64" && nodeMajorVersion < 16) { + return "x64"; } - return formatted; } - if (caller) { - formatted += " " + formatLocation(caller) + ""; + if (platform === "win32" && arch === "ia32") { + return "x86"; } - return formatted; - } - function formatLocation(callSite) { - return relative(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2]; - } - function getStack() { - var limit = Error.stackTraceLimit; - var obj = {}; - var prep = Error.prepareStackTrace; - Error.prepareStackTrace = prepareObjectStackTrace; - Error.stackTraceLimit = Math.max(10, limit); - Error.captureStackTrace(obj); - var stack2 = obj.stack.slice(1); - Error.prepareStackTrace = prep; - Error.stackTraceLimit = limit; - return stack2; - } - function prepareObjectStackTrace(obj, stack2) { - return stack2; - } - function wrapfunction(fn, message) { - if (typeof fn !== "function") { - throw new TypeError("argument fn must be a function"); + if (arch === "arm") { + return "armv7l"; } - var args = createArgumentsString(fn.length); - var deprecate = this; - var stack = getStack(); - var site = callSiteLocation(stack[1]); - site.name = fn.name; - var deprecatedfn = eval("(function (" + args + ') {\n"use strict"\nlog.call(deprecate, message, site)\nreturn fn.apply(this, arguments)\n})'); - return deprecatedfn; + return arch; } - function wrapproperty(obj, prop, message2) { - if (!obj || typeof obj !== "object" && typeof obj !== "function") { - throw new TypeError("argument obj must be object"); - } - var descriptor = Object.getOwnPropertyDescriptor(obj, prop); - if (!descriptor) { - throw new TypeError("must call property on owner object"); - } - if (!descriptor.configurable) { - throw new TypeError("property must be configurable"); - } - var deprecate2 = this; - var stack2 = getStack(); - var site2 = callSiteLocation(stack2[1]); - site2.name = prop; - if ("value" in descriptor) { - descriptor = convertDataDescriptorToAccessor(obj, prop, message2); - } - var get = descriptor.get; - var set = descriptor.set; - if (typeof get === "function") { - descriptor.get = function getter() { - log.call(deprecate2, message2, site2); - return get.apply(this, arguments); - }; - } - if (typeof set === "function") { - descriptor.set = function setter() { - log.call(deprecate2, message2, site2); - return set.apply(this, arguments); - }; - } - Object.defineProperty(obj, prop, descriptor); + exports2.getNormalizedArch = getNormalizedArch; + } +}); + +// ../env/node.fetcher/lib/getNodeTarball.js +var require_getNodeTarball = __commonJS({ + "../env/node.fetcher/lib/getNodeTarball.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNodeTarball = void 0; + var normalizeArch_1 = require_normalizeArch(); + function getNodeTarball(nodeVersion, nodeMirror, processPlatform, processArch) { + const platform = processPlatform === "win32" ? "win" : processPlatform; + const arch = (0, normalizeArch_1.getNormalizedArch)(processPlatform, processArch, nodeVersion); + const extension = platform === "win" ? "zip" : "tar.gz"; + const pkgName = `node-v${nodeVersion}-${platform}-${arch}`; + return { + pkgName, + tarball: `${nodeMirror}v${nodeVersion}/${pkgName}.${extension}` + }; } - function DeprecationError(namespace, message2, stack2) { - var error = new Error(); - var stackString; - Object.defineProperty(error, "constructor", { - value: DeprecationError - }); - Object.defineProperty(error, "message", { - configurable: true, - enumerable: false, - value: message2, - writable: true - }); - Object.defineProperty(error, "name", { - enumerable: false, - configurable: true, - value: "DeprecationError", - writable: true + exports2.getNodeTarball = getNodeTarball; + } +}); + +// ../env/node.fetcher/lib/index.js +var require_lib65 = __commonJS({ + "../env/node.fetcher/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchNode = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var pick_fetcher_1 = require_lib43(); + var create_cafs_store_1 = require_lib49(); + var tarball_fetcher_1 = require_lib64(); + var adm_zip_1 = __importDefault4(require_adm_zip()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + var tempy_1 = __importDefault4(require_tempy()); + var detect_libc_1 = require_detect_libc(); + var getNodeTarball_1 = require_getNodeTarball(); + async function fetchNode(fetch, version2, targetDir, opts) { + if (await (0, detect_libc_1.isNonGlibcLinux)()) { + throw new error_1.PnpmError("MUSL", 'The current system uses the "MUSL" C standard library. Node.js currently has prebuilt artifacts only for the "glibc" libc, so we can install Node.js only for glibc'); + } + const nodeMirrorBaseUrl = opts.nodeMirrorBaseUrl ?? "https://nodejs.org/download/release/"; + const { tarball, pkgName } = (0, getNodeTarball_1.getNodeTarball)(version2, nodeMirrorBaseUrl, process.platform, process.arch); + if (tarball.endsWith(".zip")) { + await downloadAndUnpackZip(fetch, tarball, targetDir, pkgName); + return; + } + const getAuthHeader = () => void 0; + const fetchers = (0, tarball_fetcher_1.createTarballFetcher)(fetch, getAuthHeader, { + retry: opts.retry, + timeout: opts.fetchTimeout, + // These are not needed for fetching Node.js + rawConfig: {}, + unsafePerm: false }); - Object.defineProperty(error, "namespace", { - configurable: true, - enumerable: false, - value: namespace, - writable: true + const cafs = (0, create_cafs_store_1.createCafsStore)(opts.cafsDir); + const fetchTarball = (0, pick_fetcher_1.pickFetcher)(fetchers, { tarball }); + const { filesIndex } = await fetchTarball(cafs, { tarball }, { + lockfileDir: process.cwd() }); - Object.defineProperty(error, "stack", { - configurable: true, - enumerable: false, - get: function() { - if (stackString !== void 0) { - return stackString; - } - return stackString = createStackString.call(this, stack2); + await cafs.importPackage(targetDir, { + filesResponse: { + filesIndex: await (0, tarball_fetcher_1.waitForFilesIndex)(filesIndex), + fromStore: false }, - set: function setter(val) { - stackString = val; - } + force: true }); - return error; + } + exports2.fetchNode = fetchNode; + async function downloadAndUnpackZip(fetchFromRegistry, zipUrl, targetDir, pkgName) { + const response = await fetchFromRegistry(zipUrl); + const tmp = path_1.default.join(tempy_1.default.directory(), "pnpm.zip"); + const dest = fs_1.default.createWriteStream(tmp); + await new Promise((resolve, reject) => { + response.body.pipe(dest).on("error", reject).on("close", resolve); + }); + const zip = new adm_zip_1.default(tmp); + const nodeDir = path_1.default.dirname(targetDir); + zip.extractAllTo(nodeDir, true); + await (0, rename_overwrite_1.default)(path_1.default.join(nodeDir, pkgName), targetDir); + await fs_1.default.promises.unlink(tmp); } } }); -// ../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/constants.js -var require_constants7 = __commonJS({ - "../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/constants.js"(exports2, module2) { +// ../node_modules/.pnpm/can-link@2.0.0/node_modules/can-link/index.js +var require_can_link = __commonJS({ + "../node_modules/.pnpm/can-link@2.0.0/node_modules/can-link/index.js"(exports2, module2) { "use strict"; - module2.exports = { - CURRENT_ID: Symbol("agentkeepalive#currentId"), - CREATE_ID: Symbol("agentkeepalive#createId"), - INIT_SOCKET: Symbol("agentkeepalive#initSocket"), - CREATE_HTTPS_CONNECTION: Symbol("agentkeepalive#createHttpsConnection"), - SOCKET_CREATED_TIME: Symbol("agentkeepalive#socketCreatedTime"), - SOCKET_NAME: Symbol("agentkeepalive#socketName"), - SOCKET_REQUEST_COUNT: Symbol("agentkeepalive#socketRequestCount"), - SOCKET_REQUEST_FINISHED_COUNT: Symbol("agentkeepalive#socketRequestFinishedCount") + var defaultFS = require("fs"); + module2.exports = async (existingPath, newPath, customFS) => { + const fs2 = customFS || defaultFS; + try { + await fs2.promises.link(existingPath, newPath); + fs2.promises.unlink(newPath).catch(() => { + }); + return true; + } catch (err) { + if (err.code === "EXDEV" || err.code === "EACCES" || err.code === "EPERM") { + return false; + } + throw err; + } + }; + module2.exports.sync = (existingPath, newPath, customFS) => { + const fs2 = customFS || defaultFS; + try { + fs2.linkSync(existingPath, newPath); + fs2.unlinkSync(newPath); + return true; + } catch (err) { + if (err.code === "EXDEV" || err.code === "EACCES" || err.code === "EPERM") { + return false; + } + throw err; + } }; } }); -// ../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/agent.js -var require_agent = __commonJS({ - "../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/agent.js"(exports2, module2) { +// ../node_modules/.pnpm/next-path@1.0.0/node_modules/next-path/index.js +var require_next_path = __commonJS({ + "../node_modules/.pnpm/next-path@1.0.0/node_modules/next-path/index.js"(exports2, module2) { "use strict"; - var OriginalAgent = require("http").Agent; - var ms = require_humanize_ms(); - var debug = require_src()("agentkeepalive"); - var deprecate2 = require_depd()("agentkeepalive"); - var { - INIT_SOCKET, - CURRENT_ID, - CREATE_ID, - SOCKET_CREATED_TIME, - SOCKET_NAME, - SOCKET_REQUEST_COUNT, - SOCKET_REQUEST_FINISHED_COUNT - } = require_constants7(); - var defaultTimeoutListenerCount = 1; - var majorVersion = parseInt(process.version.split(".", 1)[0].substring(1)); - if (majorVersion >= 11 && majorVersion <= 12) { - defaultTimeoutListenerCount = 2; - } else if (majorVersion >= 13) { - defaultTimeoutListenerCount = 3; - } - var Agent = class extends OriginalAgent { - constructor(options) { - options = options || {}; - options.keepAlive = options.keepAlive !== false; - if (options.freeSocketTimeout === void 0) { - options.freeSocketTimeout = 15e3; - } - if (options.keepAliveTimeout) { - deprecate2("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"); - options.freeSocketTimeout = options.keepAliveTimeout; - delete options.keepAliveTimeout; - } - if (options.freeSocketKeepAliveTimeout) { - deprecate2("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"); - options.freeSocketTimeout = options.freeSocketKeepAliveTimeout; - delete options.freeSocketKeepAliveTimeout; + var path2 = require("path"); + var nextPath = (from, to) => { + const diff = path2.relative(from, to); + const sepIndex = diff.indexOf(path2.sep); + const next = sepIndex >= 0 ? diff.substring(0, sepIndex) : diff; + return path2.join(from, next); + }; + module2.exports = nextPath; + } +}); + +// ../node_modules/.pnpm/root-link-target@3.1.0/node_modules/root-link-target/index.js +var require_root_link_target = __commonJS({ + "../node_modules/.pnpm/root-link-target@3.1.0/node_modules/root-link-target/index.js"(exports2, module2) { + "use strict"; + var canLink = require_can_link(); + var path2 = require("path"); + var pathTemp = require_path_temp(); + var nextPath = require_next_path(); + module2.exports = async (filePath) => { + filePath = path2.resolve(filePath); + const end = path2.dirname(filePath); + let dir = path2.parse(end).root; + while (true) { + const result2 = await canLink(filePath, pathTemp(dir)); + if (result2) { + return dir; + } else if (dir === end) { + throw new Error(`${filePath} cannot be linked to anywhere`); + } else { + dir = nextPath(dir, end); } - if (options.timeout === void 0) { - options.timeout = Math.max(options.freeSocketTimeout * 2, 3e4); + } + }; + module2.exports.sync = (filePath) => { + filePath = path2.resolve(filePath); + const end = path2.dirname(filePath); + let dir = path2.parse(end).root; + while (true) { + const result2 = canLink.sync(filePath, pathTemp(dir)); + if (result2) { + return dir; + } else if (dir === end) { + throw new Error(`${filePath} cannot be linked to anywhere`); + } else { + dir = nextPath(dir, end); } - options.timeout = ms(options.timeout); - options.freeSocketTimeout = ms(options.freeSocketTimeout); - options.socketActiveTTL = options.socketActiveTTL ? ms(options.socketActiveTTL) : 0; - super(options); - this[CURRENT_ID] = 0; - this.createSocketCount = 0; - this.createSocketCountLastCheck = 0; - this.createSocketErrorCount = 0; - this.createSocketErrorCountLastCheck = 0; - this.closeSocketCount = 0; - this.closeSocketCountLastCheck = 0; - this.errorSocketCount = 0; - this.errorSocketCountLastCheck = 0; - this.requestCount = 0; - this.requestCountLastCheck = 0; - this.timeoutSocketCount = 0; - this.timeoutSocketCountLastCheck = 0; - this.on("free", (socket) => { - const timeout = this.calcSocketTimeout(socket); - if (timeout > 0 && socket.timeout !== timeout) { - socket.setTimeout(timeout); - } - }); } - get freeSocketKeepAliveTimeout() { - deprecate2("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"); - return this.options.freeSocketTimeout; + }; + } +}); + +// ../node_modules/.pnpm/touch@3.1.0/node_modules/touch/index.js +var require_touch = __commonJS({ + "../node_modules/.pnpm/touch@3.1.0/node_modules/touch/index.js"(exports2, module2) { + "use strict"; + var EE = require("events").EventEmitter; + var cons = require("constants"); + var fs2 = require("fs"); + module2.exports = (f, options, cb) => { + if (typeof options === "function") + cb = options, options = {}; + const p = new Promise((res, rej) => { + new Touch(validOpts(options, f, null)).on("done", res).on("error", rej); + }); + return cb ? p.then((res) => cb(null, res), cb) : p; + }; + module2.exports.sync = module2.exports.touchSync = (f, options) => (new TouchSync(validOpts(options, f, null)), void 0); + module2.exports.ftouch = (fd, options, cb) => { + if (typeof options === "function") + cb = options, options = {}; + const p = new Promise((res, rej) => { + new Touch(validOpts(options, null, fd)).on("done", res).on("error", rej); + }); + return cb ? p.then((res) => cb(null, res), cb) : p; + }; + module2.exports.ftouchSync = (fd, opt) => (new TouchSync(validOpts(opt, null, fd)), void 0); + var validOpts = (options, path2, fd) => { + options = Object.create(options || {}); + options.fd = fd; + options.path = path2; + const now = parseInt(new Date(options.time || Date.now()).getTime() / 1e3); + if (!options.atime && !options.mtime) + options.atime = options.mtime = now; + else { + if (true === options.atime) + options.atime = now; + if (true === options.mtime) + options.mtime = now; } - get timeout() { - deprecate2("agent.timeout is deprecated, please use agent.options.timeout instead"); - return this.options.timeout; + let oflags = 0; + if (!options.force) + oflags = oflags | cons.O_RDWR; + if (!options.nocreate) + oflags = oflags | cons.O_CREAT; + options.oflags = oflags; + return options; + }; + var Touch = class extends EE { + constructor(options) { + super(options); + this.fd = options.fd; + this.path = options.path; + this.atime = options.atime; + this.mtime = options.mtime; + this.ref = options.ref; + this.nocreate = !!options.nocreate; + this.force = !!options.force; + this.closeAfter = options.closeAfter; + this.oflags = options.oflags; + this.options = options; + if (typeof this.fd !== "number") { + this.closeAfter = true; + this.open(); + } else + this.onopen(null, this.fd); } - get socketActiveTTL() { - deprecate2("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"); - return this.options.socketActiveTTL; + emit(ev, data) { + this.close(); + return super.emit(ev, data); } - calcSocketTimeout(socket) { - let freeSocketTimeout = this.options.freeSocketTimeout; - const socketActiveTTL = this.options.socketActiveTTL; - if (socketActiveTTL) { - const aliveTime = Date.now() - socket[SOCKET_CREATED_TIME]; - const diff = socketActiveTTL - aliveTime; - if (diff <= 0) { - return diff; - } - if (freeSocketTimeout && diff < freeSocketTimeout) { - freeSocketTimeout = diff; - } - } - if (freeSocketTimeout) { - const customFreeSocketTimeout = socket.freeSocketTimeout || socket.freeSocketKeepAliveTimeout; - return customFreeSocketTimeout || freeSocketTimeout; - } + close() { + if (typeof this.fd === "number" && this.closeAfter) + fs2.close(this.fd, () => { + }); } - keepSocketAlive(socket) { - const result = super.keepSocketAlive(socket); - if (!result) - return result; - const customTimeout = this.calcSocketTimeout(socket); - if (typeof customTimeout === "undefined") { - return true; - } - if (customTimeout <= 0) { - debug("%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], customTimeout); - return false; - } - if (socket.timeout !== customTimeout) { - socket.setTimeout(customTimeout); - } - return true; + open() { + fs2.open(this.path, this.oflags, (er, fd) => this.onopen(er, fd)); } - reuseSocket(...args2) { - super.reuseSocket(...args2); - const socket = args2[0]; - const req = args2[1]; - req.reusedSocket = true; - const agentTimeout = this.options.timeout; - if (getSocketTimeout(socket) !== agentTimeout) { - socket.setTimeout(agentTimeout); - debug("%s reset timeout to %sms", socket[SOCKET_NAME], agentTimeout); + onopen(er, fd) { + if (er) { + if (er.code === "EISDIR") + this.onopen(null, null); + else if (er.code === "ENOENT" && this.nocreate) + this.emit("done"); + else + this.emit("error", er); + } else { + this.fd = fd; + if (this.ref) + this.statref(); + else if (!this.atime || !this.mtime) + this.fstat(); + else + this.futimes(); } - socket[SOCKET_REQUEST_COUNT]++; - debug("%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], getSocketTimeout(socket)); } - [CREATE_ID]() { - const id = this[CURRENT_ID]++; - if (this[CURRENT_ID] === Number.MAX_SAFE_INTEGER) - this[CURRENT_ID] = 0; - return id; + statref() { + fs2.stat(this.ref, (er, st) => { + if (er) + this.emit("error", er); + else + this.onstatref(st); + }); } - [INIT_SOCKET](socket, options) { - if (options.timeout) { - const timeout = getSocketTimeout(socket); - if (!timeout) { - socket.setTimeout(options.timeout); - } - } - if (this.options.keepAlive) { - socket.setNoDelay(true); - } - this.createSocketCount++; - if (this.options.socketActiveTTL) { - socket[SOCKET_CREATED_TIME] = Date.now(); - } - socket[SOCKET_NAME] = `sock[${this[CREATE_ID]()}#${options._agentKey}]`.split("-----BEGIN", 1)[0]; - socket[SOCKET_REQUEST_COUNT] = 1; - socket[SOCKET_REQUEST_FINISHED_COUNT] = 0; - installListeners(this, socket, options); + onstatref(st) { + this.atime = this.atime && parseInt(st.atime.getTime() / 1e3, 10); + this.mtime = this.mtime && parseInt(st.mtime.getTime() / 1e3, 10); + if (!this.atime || !this.mtime) + this.fstat(); + else + this.futimes(); } - createConnection(options, oncreate) { - let called = false; - const onNewCreate = (err, socket) => { - if (called) - return; - called = true; - if (err) { - this.createSocketErrorCount++; - return oncreate(err); - } - this[INIT_SOCKET](socket, options); - oncreate(err, socket); - }; - const newSocket = super.createConnection(options, onNewCreate); - if (newSocket) - onNewCreate(null, newSocket); + fstat() { + const stat = this.fd ? "fstat" : "stat"; + const target = this.fd || this.path; + fs2[stat](target, (er, st) => { + if (er) + this.emit("error", er); + else + this.onfstat(st); + }); } - get statusChanged() { - const changed = this.createSocketCount !== this.createSocketCountLastCheck || this.createSocketErrorCount !== this.createSocketErrorCountLastCheck || this.closeSocketCount !== this.closeSocketCountLastCheck || this.errorSocketCount !== this.errorSocketCountLastCheck || this.timeoutSocketCount !== this.timeoutSocketCountLastCheck || this.requestCount !== this.requestCountLastCheck; - if (changed) { - this.createSocketCountLastCheck = this.createSocketCount; - this.createSocketErrorCountLastCheck = this.createSocketErrorCount; - this.closeSocketCountLastCheck = this.closeSocketCount; - this.errorSocketCountLastCheck = this.errorSocketCount; - this.timeoutSocketCountLastCheck = this.timeoutSocketCount; - this.requestCountLastCheck = this.requestCount; - } - return changed; + onfstat(st) { + if (typeof this.atime !== "number") + this.atime = parseInt(st.atime.getTime() / 1e3, 10); + if (typeof this.mtime !== "number") + this.mtime = parseInt(st.mtime.getTime() / 1e3, 10); + this.futimes(); } - getCurrentStatus() { - return { - createSocketCount: this.createSocketCount, - createSocketErrorCount: this.createSocketErrorCount, - closeSocketCount: this.closeSocketCount, - errorSocketCount: this.errorSocketCount, - timeoutSocketCount: this.timeoutSocketCount, - requestCount: this.requestCount, - freeSockets: inspect(this.freeSockets), - sockets: inspect(this.sockets), - requests: inspect(this.requests) - }; + futimes() { + const utimes = this.fd ? "futimes" : "utimes"; + const target = this.fd || this.path; + fs2[utimes](target, "" + this.atime, "" + this.mtime, (er) => { + if (er) + this.emit("error", er); + else + this.emit("done"); + }); } }; - function getSocketTimeout(socket) { - return socket.timeout || socket._idleTimeout; - } - function installListeners(agent, socket, options) { - debug("%s create, timeout %sms", socket[SOCKET_NAME], getSocketTimeout(socket)); - function onFree() { - if (!socket._httpMessage && socket[SOCKET_REQUEST_COUNT] === 1) - return; - socket[SOCKET_REQUEST_FINISHED_COUNT]++; - agent.requestCount++; - debug("%s(requests: %s, finished: %s) free", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); - const name = agent.getName(options); - if (socket.writable && agent.requests[name] && agent.requests[name].length) { - socket[SOCKET_REQUEST_COUNT]++; - debug("%s(requests: %s, finished: %s) will be reuse on agent free event", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); + var TouchSync = class extends Touch { + open() { + try { + this.onopen(null, fs2.openSync(this.path, this.oflags)); + } catch (er) { + this.onopen(er); } } - socket.on("free", onFree); - function onClose(isError) { - debug("%s(requests: %s, finished: %s) close, isError: %s", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], isError); - agent.closeSocketCount++; - } - socket.on("close", onClose); - function onTimeout() { - const listenerCount = socket.listeners("timeout").length; - const timeout = getSocketTimeout(socket); - const req = socket._httpMessage; - const reqTimeoutListenerCount = req && req.listeners("timeout").length || 0; - debug("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], timeout, listenerCount, defaultTimeoutListenerCount, !!req, reqTimeoutListenerCount); - if (debug.enabled) { - debug("timeout listeners: %s", socket.listeners("timeout").map((f) => f.name).join(", ")); - } - agent.timeoutSocketCount++; - const name = agent.getName(options); - if (agent.freeSockets[name] && agent.freeSockets[name].indexOf(socket) !== -1) { - socket.destroy(); - agent.removeSocket(socket, options); - debug("%s is free, destroy quietly", socket[SOCKET_NAME]); - } else { - if (reqTimeoutListenerCount === 0) { - const error = new Error("Socket timeout"); - error.code = "ERR_SOCKET_TIMEOUT"; - error.timeout = timeout; - socket.destroy(error); - agent.removeSocket(socket, options); - debug("%s destroy with timeout error", socket[SOCKET_NAME]); - } + statref() { + let threw = true; + try { + this.onstatref(fs2.statSync(this.ref)); + threw = false; + } finally { + if (threw) + this.close(); } } - socket.on("timeout", onTimeout); - function onError(err) { - const listenerCount = socket.listeners("error").length; - debug("%s(requests: %s, finished: %s) error: %s, listenerCount: %s", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], err, listenerCount); - agent.errorSocketCount++; - if (listenerCount === 1) { - debug("%s emit uncaught error event", socket[SOCKET_NAME]); - socket.removeListener("error", onError); - socket.emit("error", err); + fstat() { + let threw = true; + const stat = this.fd ? "fstatSync" : "statSync"; + const target = this.fd || this.path; + try { + this.onfstat(fs2[stat](target)); + threw = false; + } finally { + if (threw) + this.close(); } } - socket.on("error", onError); - function onRemove() { - debug("%s(requests: %s, finished: %s) agentRemove", socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); - socket.removeListener("close", onClose); - socket.removeListener("error", onError); - socket.removeListener("free", onFree); - socket.removeListener("timeout", onTimeout); - socket.removeListener("agentRemove", onRemove); + futimes() { + let threw = true; + const utimes = this.fd ? "futimesSync" : "utimesSync"; + const target = this.fd || this.path; + try { + fs2[utimes](target, this.atime, this.mtime); + threw = false; + } finally { + if (threw) + this.close(); + } + this.emit("done"); } - socket.on("agentRemove", onRemove); - } - module2.exports = Agent; - function inspect(obj) { - const res = {}; - for (const key in obj) { - res[key] = obj[key].length; + close() { + if (typeof this.fd === "number" && this.closeAfter) + try { + fs2.closeSync(this.fd); + } catch (er) { + } } - return res; - } + }; } }); -// ../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/https_agent.js -var require_https_agent = __commonJS({ - "../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/lib/https_agent.js"(exports2, module2) { +// ../store/store-path/lib/index.js +var require_lib66 = __commonJS({ + "../store/store-path/lib/index.js"(exports2) { "use strict"; - var OriginalHttpsAgent = require("https").Agent; - var HttpAgent = require_agent(); - var { - INIT_SOCKET, - CREATE_HTTPS_CONNECTION - } = require_constants7(); - var HttpsAgent = class extends HttpAgent { - constructor(options) { - super(options); - this.defaultPort = 443; - this.protocol = "https:"; - this.maxCachedSessions = this.options.maxCachedSessions; - if (this.maxCachedSessions === void 0) { - this.maxCachedSessions = 100; - } - this._sessionCache = { - map: {}, - list: [] - }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getStorePath = void 0; + var fs_1 = require("fs"); + var rimraf_1 = __importDefault4(require_rimraf2()); + var can_link_1 = __importDefault4(require_can_link()); + var os_1 = __importDefault4(require("os")); + var path_1 = __importDefault4(require("path")); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var path_temp_1 = __importDefault4(require_path_temp()); + var root_link_target_1 = __importDefault4(require_root_link_target()); + var touch_1 = __importDefault4(require_touch()); + var STORE_VERSION = "v3"; + function getStorePath({ pkgRoot, storePath, pnpmHomeDir }) { + if (!storePath) { + return storePathRelativeToHome(pkgRoot, "store", pnpmHomeDir); } - createConnection(options) { - const socket = this[CREATE_HTTPS_CONNECTION](options); - this[INIT_SOCKET](socket, options); - return socket; + if (isHomepath(storePath)) { + const homedir = getHomedir(); + return storePathRelativeToHome(pkgRoot, storePath.substring(2), homedir); } - }; - HttpsAgent.prototype[CREATE_HTTPS_CONNECTION] = OriginalHttpsAgent.prototype.createConnection; - [ - "getName", - "_getSession", - "_cacheSession", - "_evictSession" - ].forEach(function(method) { - if (typeof OriginalHttpsAgent.prototype[method] === "function") { - HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method]; + const storeBasePath = (0, path_absolute_1.default)(storePath, pkgRoot); + if (storeBasePath.endsWith(`${path_1.default.sep}${STORE_VERSION}`)) { + return storeBasePath; } - }); - module2.exports = HttpsAgent; - } -}); - -// ../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/index.js -var require_agentkeepalive = __commonJS({ - "../../node_modules/.pnpm/agentkeepalive@4.1.4/node_modules/agentkeepalive/index.js"(exports2, module2) { - "use strict"; - module2.exports = require_agent(); - module2.exports.HttpsAgent = require_https_agent(); - module2.exports.constants = require_constants7(); - } -}); - -// ../../node_modules/.pnpm/@tootallnate+once@1.1.2/node_modules/@tootallnate/once/dist/index.js -var require_dist3 = __commonJS({ - "../../node_modules/.pnpm/@tootallnate+once@1.1.2/node_modules/@tootallnate/once/dist/index.js"(exports2, module2) { - "use strict"; - function noop() { - } - function once(emitter, name) { - const o = once.spread(emitter, name); - const r = o.then((args2) => args2[0]); - r.cancel = o.cancel; - return r; + return path_1.default.join(storeBasePath, STORE_VERSION); } - (function(once2) { - function spread(emitter, name) { - let c = null; - const p = new Promise((resolve, reject) => { - function cancel() { - emitter.removeListener(name, onEvent); - emitter.removeListener("error", onError); - p.cancel = noop; - } - function onEvent(...args2) { - cancel(); - resolve(args2); - } - function onError(err) { - cancel(); - reject(err); - } - c = cancel; - emitter.on(name, onEvent); - emitter.on("error", onError); - }); - if (!c) { - throw new TypeError("Could not get `cancel()` function"); + exports2.getStorePath = getStorePath; + async function storePathRelativeToHome(pkgRoot, relStore, homedir) { + const tempFile = (0, path_temp_1.default)(pkgRoot); + await fs_1.promises.mkdir(path_1.default.dirname(tempFile), { recursive: true }); + await (0, touch_1.default)(tempFile); + const storeInHomeDir = path_1.default.join(homedir, relStore, STORE_VERSION); + if (await canLinkToSubdir(tempFile, homedir)) { + await fs_1.promises.unlink(tempFile); + return storeInHomeDir; + } + try { + let mountpoint = await (0, root_link_target_1.default)(tempFile); + const mountpointParent = path_1.default.join(mountpoint, ".."); + if (!dirsAreEqual(mountpointParent, mountpoint) && await canLinkToSubdir(tempFile, mountpointParent)) { + mountpoint = mountpointParent; } - p.cancel = c; - return p; + if (dirsAreEqual(pkgRoot, mountpoint)) { + return storeInHomeDir; + } + return path_1.default.join(mountpoint, ".pnpm-store", STORE_VERSION); + } catch (err) { + return storeInHomeDir; + } finally { + await fs_1.promises.unlink(tempFile); } - once2.spread = spread; - })(once || (once = {})); - module2.exports = once; - } -}); - -// ../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js -var require_promisify = __commonJS({ - "../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function promisify(fn2) { - return function(req, opts) { - return new Promise((resolve, reject) => { - fn2.call(this, req, opts, (err, rtn) => { - if (err) { - reject(err); - } else { - resolve(rtn); - } - }); - }); - }; } - exports2.default = promisify; + async function canLinkToSubdir(fileToLink, dir) { + let result2 = false; + const tmpDir = (0, path_temp_1.default)(dir); + try { + await fs_1.promises.mkdir(tmpDir, { recursive: true }); + result2 = await (0, can_link_1.default)(fileToLink, (0, path_temp_1.default)(tmpDir)); + } catch (err) { + result2 = false; + } finally { + await safeRmdir(tmpDir); + } + return result2; + } + async function safeRmdir(dir) { + try { + await (0, rimraf_1.default)(dir); + } catch (err) { + } + } + function dirsAreEqual(dir1, dir2) { + return path_1.default.relative(dir1, dir2) === "."; + } + function getHomedir() { + const home = os_1.default.homedir(); + if (!home) + throw new Error("Could not find the homedir"); + return home; + } + function isHomepath(filepath) { + return filepath.indexOf("~/") === 0 || filepath.indexOf("~\\") === 0; + } } }); -// ../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js -var require_src3 = __commonJS({ - "../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js"(exports2, module2) { +// ../node_modules/.pnpm/make-dir@3.1.0/node_modules/make-dir/index.js +var require_make_dir3 = __commonJS({ + "../node_modules/.pnpm/make-dir@3.1.0/node_modules/make-dir/index.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var fs2 = require("fs"); + var path2 = require("path"); + var { promisify } = require("util"); + var semver = require_semver2(); + var useNativeRecursiveOption = semver.satisfies(process.version, ">=10.12.0"); + var checkPath = (pth) => { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path2.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; + } + } }; - var events_1 = require("events"); - var debug_1 = __importDefault(require_src()); - var promisify_1 = __importDefault(require_promisify()); - var debug = debug_1.default("agent-base"); - function isAgent(v) { - return Boolean(v) && typeof v.addRequest === "function"; - } - function isSecureEndpoint() { - const { stack: stack2 } = new Error(); - if (typeof stack2 !== "string") - return false; - return stack2.split("\n").some((l) => l.indexOf("(https.js:") !== -1 || l.indexOf("node:https:") !== -1); - } - function createAgent(callback, opts) { - return new createAgent.Agent(callback, opts); - } - (function(createAgent2) { - class Agent extends events_1.EventEmitter { - constructor(callback, _opts) { - super(); - let opts = _opts; - if (typeof callback === "function") { - this.callback = callback; - } else if (callback) { - opts = callback; - } - this.timeout = null; - if (opts && typeof opts.timeout === "number") { - this.timeout = opts.timeout; + var processOptions = (options) => { + const defaults = { + mode: 511, + fs: fs2 + }; + return { + ...defaults, + ...options + }; + }; + var permissionError = (pth) => { + const error = new Error(`operation not permitted, mkdir '${pth}'`); + error.code = "EPERM"; + error.errno = -4048; + error.path = pth; + error.syscall = "mkdir"; + return error; + }; + var makeDir = async (input, options) => { + checkPath(input); + options = processOptions(options); + const mkdir = promisify(options.fs.mkdir); + const stat = promisify(options.fs.stat); + if (useNativeRecursiveOption && options.fs.mkdir === fs2.mkdir) { + const pth = path2.resolve(input); + await mkdir(pth, { + mode: options.mode, + recursive: true + }); + return pth; + } + const make = async (pth) => { + try { + await mkdir(pth, options.mode); + return pth; + } catch (error) { + if (error.code === "EPERM") { + throw error; } - this.maxFreeSockets = 1; - this.maxSockets = 1; - this.maxTotalSockets = Infinity; - this.sockets = {}; - this.freeSockets = {}; - this.requests = {}; - this.options = {}; - } - get defaultPort() { - if (typeof this.explicitDefaultPort === "number") { - return this.explicitDefaultPort; + if (error.code === "ENOENT") { + if (path2.dirname(pth) === pth) { + throw permissionError(pth); + } + if (error.message.includes("null bytes")) { + throw error; + } + await make(path2.dirname(pth)); + return make(pth); } - return isSecureEndpoint() ? 443 : 80; - } - set defaultPort(v) { - this.explicitDefaultPort = v; - } - get protocol() { - if (typeof this.explicitProtocol === "string") { - return this.explicitProtocol; + try { + const stats = await stat(pth); + if (!stats.isDirectory()) { + throw new Error("The path is not a directory"); + } + } catch (_) { + throw error; } - return isSecureEndpoint() ? "https:" : "http:"; - } - set protocol(v) { - this.explicitProtocol = v; - } - callback(req, opts, fn2) { - throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); + return pth; } - addRequest(req, _opts) { - const opts = Object.assign({}, _opts); - if (typeof opts.secureEndpoint !== "boolean") { - opts.secureEndpoint = isSecureEndpoint(); - } - if (opts.host == null) { - opts.host = "localhost"; - } - if (opts.port == null) { - opts.port = opts.secureEndpoint ? 443 : 80; - } - if (opts.protocol == null) { - opts.protocol = opts.secureEndpoint ? "https:" : "http:"; - } - if (opts.host && opts.path) { - delete opts.path; + }; + return make(path2.resolve(input)); + }; + module2.exports = makeDir; + module2.exports.sync = (input, options) => { + checkPath(input); + options = processOptions(options); + if (useNativeRecursiveOption && options.fs.mkdirSync === fs2.mkdirSync) { + const pth = path2.resolve(input); + fs2.mkdirSync(pth, { + mode: options.mode, + recursive: true + }); + return pth; + } + const make = (pth) => { + try { + options.fs.mkdirSync(pth, options.mode); + } catch (error) { + if (error.code === "EPERM") { + throw error; } - delete opts.agent; - delete opts.hostname; - delete opts._defaultAgent; - delete opts.defaultPort; - delete opts.createConnection; - req._last = true; - req.shouldKeepAlive = false; - let timedOut = false; - let timeoutId = null; - const timeoutMs = opts.timeout || this.timeout; - const onerror = (err) => { - if (req._hadError) - return; - req.emit("error", err); - req._hadError = true; - }; - const ontimeout = () => { - timeoutId = null; - timedOut = true; - const err = new Error(`A "socket" was not created for HTTP request before ${timeoutMs}ms`); - err.code = "ETIMEOUT"; - onerror(err); - }; - const callbackError = (err) => { - if (timedOut) - return; - if (timeoutId !== null) { - clearTimeout(timeoutId); - timeoutId = null; - } - onerror(err); - }; - const onsocket = (socket) => { - if (timedOut) - return; - if (timeoutId != null) { - clearTimeout(timeoutId); - timeoutId = null; - } - if (isAgent(socket)) { - debug("Callback returned another Agent instance %o", socket.constructor.name); - socket.addRequest(req, opts); - return; + if (error.code === "ENOENT") { + if (path2.dirname(pth) === pth) { + throw permissionError(pth); } - if (socket) { - socket.once("free", () => { - this.freeSocket(socket, opts); - }); - req.onSocket(socket); - return; + if (error.message.includes("null bytes")) { + throw error; } - const err = new Error(`no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\``); - onerror(err); - }; - if (typeof this.callback !== "function") { - onerror(new Error("`callback` is not defined")); - return; + make(path2.dirname(pth)); + return make(pth); } - if (!this.promisifiedCallback) { - if (this.callback.length >= 3) { - debug("Converting legacy callback function to promise"); - this.promisifiedCallback = promisify_1.default(this.callback); - } else { - this.promisifiedCallback = this.callback; + try { + if (!options.fs.statSync(pth).isDirectory()) { + throw new Error("The path is not a directory"); } + } catch (_) { + throw error; } - if (typeof timeoutMs === "number" && timeoutMs > 0) { - timeoutId = setTimeout(ontimeout, timeoutMs); + } + return pth; + }; + return make(path2.resolve(input)); + }; + } +}); + +// ../node_modules/.pnpm/detect-indent@6.1.0/node_modules/detect-indent/index.js +var require_detect_indent2 = __commonJS({ + "../node_modules/.pnpm/detect-indent@6.1.0/node_modules/detect-indent/index.js"(exports2, module2) { + "use strict"; + var INDENT_REGEX = /^(?:( )+|\t+)/; + var INDENT_TYPE_SPACE = "space"; + var INDENT_TYPE_TAB = "tab"; + function makeIndentsMap(string, ignoreSingleSpaces) { + const indents = /* @__PURE__ */ new Map(); + let previousSize = 0; + let previousIndentType; + let key; + for (const line of string.split(/\n/g)) { + if (!line) { + continue; + } + let indent; + let indentType; + let weight; + let entry; + const matches = line.match(INDENT_REGEX); + if (matches === null) { + previousSize = 0; + previousIndentType = ""; + } else { + indent = matches[0].length; + if (matches[1]) { + indentType = INDENT_TYPE_SPACE; + } else { + indentType = INDENT_TYPE_TAB; } - if ("port" in opts && typeof opts.port !== "number") { - opts.port = Number(opts.port); + if (ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && indent === 1) { + continue; } - try { - debug("Resolving socket for %o request: %o", opts.protocol, `${req.method} ${req.path}`); - Promise.resolve(this.promisifiedCallback(req, opts)).then(onsocket, callbackError); - } catch (err) { - Promise.reject(err).catch(callbackError); + if (indentType !== previousIndentType) { + previousSize = 0; } + previousIndentType = indentType; + weight = 0; + const indentDifference = indent - previousSize; + previousSize = indent; + if (indentDifference === 0) { + weight++; + } else { + const absoluteIndentDifference = indentDifference > 0 ? indentDifference : -indentDifference; + key = encodeIndentsKey(indentType, absoluteIndentDifference); + } + entry = indents.get(key); + if (entry === void 0) { + entry = [1, 0]; + } else { + entry = [++entry[0], entry[1] + weight]; + } + indents.set(key, entry); } - freeSocket(socket, opts) { - debug("Freeing socket %o %o", socket.constructor.name, opts); - socket.destroy(); - } - destroy() { - debug("Destroying agent %o", this.constructor.name); + } + return indents; + } + function encodeIndentsKey(indentType, indentAmount) { + const typeCharacter = indentType === INDENT_TYPE_SPACE ? "s" : "t"; + return typeCharacter + String(indentAmount); + } + function decodeIndentsKey(indentsKey) { + const keyHasTypeSpace = indentsKey[0] === "s"; + const type = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; + const amount = Number(indentsKey.slice(1)); + return { type, amount }; + } + function getMostUsedKey(indents) { + let result2; + let maxUsed = 0; + let maxWeight = 0; + for (const [key, [usedCount, weight]] of indents) { + if (usedCount > maxUsed || usedCount === maxUsed && weight > maxWeight) { + maxUsed = usedCount; + maxWeight = weight; + result2 = key; } } - createAgent2.Agent = Agent; - createAgent2.prototype = createAgent2.Agent.prototype; - })(createAgent || (createAgent = {})); - module2.exports = createAgent; + return result2; + } + function makeIndentString(type, amount) { + const indentCharacter = type === INDENT_TYPE_SPACE ? " " : " "; + return indentCharacter.repeat(amount); + } + module2.exports = (string) => { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); + } + let indents = makeIndentsMap(string, true); + if (indents.size === 0) { + indents = makeIndentsMap(string, false); + } + const keyOfMostUsedIndent = getMostUsedKey(indents); + let type; + let amount = 0; + let indent = ""; + if (keyOfMostUsedIndent !== void 0) { + ({ type, amount } = decodeIndentsKey(keyOfMostUsedIndent)); + indent = makeIndentString(type, amount); + } + return { + amount, + type, + indent + }; + }; } }); -// ../../node_modules/.pnpm/http-proxy-agent@4.0.1/node_modules/http-proxy-agent/dist/agent.js -var require_agent2 = __commonJS({ - "../../node_modules/.pnpm/http-proxy-agent@4.0.1/node_modules/http-proxy-agent/dist/agent.js"(exports2) { +// ../node_modules/.pnpm/write-json-file@4.3.0/node_modules/write-json-file/index.js +var require_write_json_file = __commonJS({ + "../node_modules/.pnpm/write-json-file@4.3.0/node_modules/write-json-file/index.js"(exports2, module2) { "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); + var { promisify } = require("util"); + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var writeFileAtomic = require_write_file_atomic(); + var sortKeys = require_sort_keys(); + var makeDir = require_make_dir3(); + var detectIndent = require_detect_indent2(); + var isPlainObj = require_is_plain_obj(); + var readFile = promisify(fs2.readFile); + var init = (fn2, filePath, data, options) => { + if (!filePath) { + throw new TypeError("Expected a filepath"); + } + if (data === void 0) { + throw new TypeError("Expected data to stringify"); + } + options = { + indent: " ", + sortKeys: false, + ...options + }; + if (options.sortKeys && isPlainObj(data)) { + data = sortKeys(data, { + deep: true, + compare: typeof options.sortKeys === "function" ? options.sortKeys : void 0 }); } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } + return fn2(filePath, data, options); + }; + var main = async (filePath, data, options) => { + let { indent } = options; + let trailingNewline = "\n"; + try { + const file = await readFile(filePath, "utf8"); + if (!file.endsWith("\n")) { + trailingNewline = ""; } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } + if (options.detectIndent) { + indent = detectIndent(file).indent; } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + } catch (error) { + if (error.code !== "ENOENT") { + throw error; } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + } + const json = JSON.stringify(data, options.replacer, indent); + return writeFileAtomic(filePath, `${json}${trailingNewline}`, { mode: options.mode, chown: false }); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var net_1 = __importDefault(require("net")); - var tls_1 = __importDefault(require("tls")); - var url_1 = __importDefault(require("url")); - var debug_1 = __importDefault(require_src()); - var once_1 = __importDefault(require_dist3()); - var agent_base_1 = require_src3(); - var debug = debug_1.default("http-proxy-agent"); - function isHTTPS(protocol) { - return typeof protocol === "string" ? /^https:?$/i.test(protocol) : false; - } - var HttpProxyAgent = class extends agent_base_1.Agent { - constructor(_opts) { - let opts; - if (typeof _opts === "string") { - opts = url_1.default.parse(_opts); - } else { - opts = _opts; - } - if (!opts) { - throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); + var mainSync = (filePath, data, options) => { + let { indent } = options; + let trailingNewline = "\n"; + try { + const file = fs2.readFileSync(filePath, "utf8"); + if (!file.endsWith("\n")) { + trailingNewline = ""; } - debug("Creating new HttpProxyAgent instance: %o", opts); - super(opts); - const proxy = Object.assign({}, opts); - this.secureProxy = opts.secureProxy || isHTTPS(proxy.protocol); - proxy.host = proxy.hostname || proxy.host; - if (typeof proxy.port === "string") { - proxy.port = parseInt(proxy.port, 10); + if (options.detectIndent) { + indent = detectIndent(file).indent; } - if (!proxy.port && proxy.host) { - proxy.port = this.secureProxy ? 443 : 80; + } catch (error) { + if (error.code !== "ENOENT") { + throw error; } - if (proxy.host && proxy.path) { - delete proxy.path; - delete proxy.pathname; + } + const json = JSON.stringify(data, options.replacer, indent); + return writeFileAtomic.sync(filePath, `${json}${trailingNewline}`, { mode: options.mode, chown: false }); + }; + module2.exports = async (filePath, data, options) => { + await makeDir(path2.dirname(filePath), { fs: fs2 }); + return init(main, filePath, data, options); + }; + module2.exports.sync = (filePath, data, options) => { + makeDir.sync(path2.dirname(filePath), { fs: fs2 }); + init(mainSync, filePath, data, options); + }; + } +}); + +// ../env/plugin-commands-env/lib/node.js +var require_node3 = __commonJS({ + "../env/plugin-commands-env/lib/node.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNodeDir = exports2.getNodeVersionsBaseDir = exports2.getNodeBinDir = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var fetch_1 = require_lib37(); + var logger_1 = require_lib6(); + var node_fetcher_1 = require_lib65(); + var store_path_1 = require_lib66(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var write_json_file_1 = __importDefault4(require_write_json_file()); + var getNodeMirror_1 = require_getNodeMirror(); + var parseNodeEditionSpecifier_1 = require_parseNodeEditionSpecifier(); + async function getNodeBinDir(opts) { + const fetch = (0, fetch_1.createFetchFromRegistry)(opts); + const nodesDir = getNodeVersionsBaseDir(opts.pnpmHomeDir); + let wantedNodeVersion = opts.useNodeVersion ?? (await readNodeVersionsManifest(nodesDir))?.default; + if (wantedNodeVersion == null) { + const response = await fetch("https://registry.npmjs.org/node"); + wantedNodeVersion = (await response.json())["dist-tags"].lts; + if (wantedNodeVersion == null) { + throw new Error("Could not resolve LTS version of Node.js"); } - this.proxy = proxy; + await (0, write_json_file_1.default)(path_1.default.join(nodesDir, "versions.json"), { + default: wantedNodeVersion + }); } - callback(req, opts) { - return __awaiter(this, void 0, void 0, function* () { - const { proxy, secureProxy } = this; - const parsed = url_1.default.parse(req.path); - if (!parsed.protocol) { - parsed.protocol = "http:"; - } - if (!parsed.hostname) { - parsed.hostname = opts.hostname || opts.host || null; - } - if (parsed.port == null && typeof opts.port) { - parsed.port = String(opts.port); - } - if (parsed.port === "80") { - delete parsed.port; - } - req.path = url_1.default.format(parsed); - if (proxy.auth) { - req.setHeader("Proxy-Authorization", `Basic ${Buffer.from(proxy.auth).toString("base64")}`); - } - let socket; - if (secureProxy) { - debug("Creating `tls.Socket`: %o", proxy); - socket = tls_1.default.connect(proxy); - } else { - debug("Creating `net.Socket`: %o", proxy); - socket = net_1.default.connect(proxy); - } - if (req._header) { - let first; - let endOfHeaders; - debug("Regenerating stored HTTP header string for request"); - req._header = null; - req._implicitHeader(); - if (req.output && req.output.length > 0) { - debug("Patching connection write() output buffer with updated header"); - first = req.output[0]; - endOfHeaders = first.indexOf("\r\n\r\n") + 4; - req.output[0] = req._header + first.substring(endOfHeaders); - debug("Output buffer: %o", req.output); - } else if (req.outputData && req.outputData.length > 0) { - debug("Patching connection write() output buffer with updated header"); - first = req.outputData[0].data; - endOfHeaders = first.indexOf("\r\n\r\n") + 4; - req.outputData[0].data = req._header + first.substring(endOfHeaders); - debug("Output buffer: %o", req.outputData[0].data); - } + const { versionSpecifier, releaseChannel } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(wantedNodeVersion); + const nodeMirrorBaseUrl = (0, getNodeMirror_1.getNodeMirror)(opts.rawConfig, releaseChannel); + const nodeDir = await getNodeDir(fetch, { + ...opts, + useNodeVersion: versionSpecifier, + nodeMirrorBaseUrl + }); + return process.platform === "win32" ? nodeDir : path_1.default.join(nodeDir, "bin"); + } + exports2.getNodeBinDir = getNodeBinDir; + function getNodeVersionsBaseDir(pnpmHomeDir) { + return path_1.default.join(pnpmHomeDir, "nodejs"); + } + exports2.getNodeVersionsBaseDir = getNodeVersionsBaseDir; + async function getNodeDir(fetch, opts) { + const nodesDir = getNodeVersionsBaseDir(opts.pnpmHomeDir); + await fs_1.default.promises.mkdir(nodesDir, { recursive: true }); + const versionDir = path_1.default.join(nodesDir, opts.useNodeVersion); + if (!fs_1.default.existsSync(versionDir)) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: process.cwd(), + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + const cafsDir = path_1.default.join(storeDir, "files"); + (0, logger_1.globalInfo)(`Fetching Node.js ${opts.useNodeVersion} ...`); + await (0, node_fetcher_1.fetchNode)(fetch, opts.useNodeVersion, versionDir, { + ...opts, + cafsDir, + retry: { + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries, + factor: opts.fetchRetryFactor } - yield once_1.default(socket, "connect"); - return socket; }); } - }; - exports2.default = HttpProxyAgent; + return versionDir; + } + exports2.getNodeDir = getNodeDir; + async function readNodeVersionsManifest(nodesDir) { + try { + return await (0, load_json_file_1.default)(path_1.default.join(nodesDir, "versions.json")); + } catch (err) { + if (err.code === "ENOENT") { + return {}; + } + throw err; + } + } } }); -// ../../node_modules/.pnpm/http-proxy-agent@4.0.1/node_modules/http-proxy-agent/dist/index.js -var require_dist4 = __commonJS({ - "../../node_modules/.pnpm/http-proxy-agent@4.0.1/node_modules/http-proxy-agent/dist/index.js"(exports2, module2) { +// ../env/plugin-commands-env/lib/envRemove.js +var require_envRemove = __commonJS({ + "../env/plugin-commands-env/lib/envRemove.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; - var agent_1 = __importDefault(require_agent2()); - function createHttpProxyAgent(opts) { - return new agent_1.default(opts); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envRemove = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var fetch_1 = require_lib37(); + var logger_1 = require_lib6(); + var node_resolver_1 = require_lib38(); + var remove_bins_1 = require_lib42(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var parseNodeEditionSpecifier_1 = require_parseNodeEditionSpecifier(); + var utils_1 = require_utils9(); + var getNodeMirror_1 = require_getNodeMirror(); + var node_1 = require_node3(); + async function envRemove(opts, params) { + if (!opts.global) { + throw new error_1.PnpmError("NOT_IMPLEMENTED_YET", '"pnpm env use " can only be used with the "--global" option currently'); + } + const fetch = (0, fetch_1.createFetchFromRegistry)(opts); + const { releaseChannel, versionSpecifier } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(params[0]); + const nodeMirrorBaseUrl = (0, getNodeMirror_1.getNodeMirror)(opts.rawConfig, releaseChannel); + const nodeVersion = await (0, node_resolver_1.resolveNodeVersion)(fetch, versionSpecifier, nodeMirrorBaseUrl); + const nodeDir = (0, node_1.getNodeVersionsBaseDir)(opts.pnpmHomeDir); + if (!nodeVersion) { + throw new error_1.PnpmError("COULD_NOT_RESOLVE_NODEJS", `Couldn't find Node.js version matching ${params[0]}`); + } + const versionDir = path_1.default.resolve(nodeDir, nodeVersion); + if (!(0, fs_1.existsSync)(versionDir)) { + throw new error_1.PnpmError("ENV_NO_NODE_DIRECTORY", `Couldn't find Node.js directory in ${versionDir}`); + } + const { nodePath, nodeLink } = await (0, utils_1.getNodeExecPathAndTargetDir)(opts.pnpmHomeDir); + if (nodeLink?.includes(versionDir)) { + (0, logger_1.globalInfo)(`Node.js version ${nodeVersion} was detected as the default one, removing ...`); + const npmPath = path_1.default.resolve(opts.pnpmHomeDir, "npm"); + const npxPath = path_1.default.resolve(opts.pnpmHomeDir, "npx"); + try { + await Promise.all([ + (0, remove_bins_1.removeBin)(nodePath), + (0, remove_bins_1.removeBin)(npmPath), + (0, remove_bins_1.removeBin)(npxPath) + ]); + } catch (err) { + if (err.code !== "ENOENT") + throw err; + } + } + await (0, rimraf_1.default)(versionDir); + return `Node.js ${nodeVersion} is removed +${versionDir}`; } - (function(createHttpProxyAgent2) { - createHttpProxyAgent2.HttpProxyAgent = agent_1.default; - createHttpProxyAgent2.prototype = agent_1.default.prototype; - })(createHttpProxyAgent || (createHttpProxyAgent = {})); - module2.exports = createHttpProxyAgent; + exports2.envRemove = envRemove; } }); -// ../../node_modules/.pnpm/agent-base@4.3.0/node_modules/agent-base/patch-core.js -var require_patch_core = __commonJS({ - "../../node_modules/.pnpm/agent-base@4.3.0/node_modules/agent-base/patch-core.js"() { +// ../env/plugin-commands-env/lib/envUse.js +var require_envUse = __commonJS({ + "../env/plugin-commands-env/lib/envUse.js"(exports2) { "use strict"; - var url = require("url"); - var https = require("https"); - var patchMarker = "__agent_base_https_request_patched__"; - if (!https.request[patchMarker]) { - https.request = function(request) { - return function(_options, cb) { - let options; - if (typeof _options === "string") { - options = url.parse(_options); - } else { - options = Object.assign({}, _options); - } - if (options.port == null) { - options.port = 443; - } - options.secureEndpoint = true; - return request.call(https, options, cb); - }; - }(https.request); - https.request[patchMarker] = true; - } - https.get = function(_url, _options, cb) { - let options; - if (typeof _url === "string" && _options && typeof _options !== "function") { - options = Object.assign({}, url.parse(_url), _options); - } else if (!_options && !cb) { - options = _url; - } else if (!cb) { - options = _url; - cb = _options; - } - const req = https.request(options, cb); - req.end(); - return req; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envUse = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var fetch_1 = require_lib37(); + var node_resolver_1 = require_lib38(); + var cmd_shim_1 = __importDefault4(require_cmd_shim()); + var is_windows_1 = __importDefault4(require_is_windows()); + var symlink_dir_1 = __importDefault4(require_dist12()); + var node_1 = require_node3(); + var getNodeMirror_1 = require_getNodeMirror(); + var parseNodeEditionSpecifier_1 = require_parseNodeEditionSpecifier(); + var utils_1 = require_utils9(); + async function envUse(opts, params) { + if (!opts.global) { + throw new error_1.PnpmError("NOT_IMPLEMENTED_YET", '"pnpm env use " can only be used with the "--global" option currently'); + } + const fetch = (0, fetch_1.createFetchFromRegistry)(opts); + const { releaseChannel, versionSpecifier } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(params[0]); + const nodeMirrorBaseUrl = (0, getNodeMirror_1.getNodeMirror)(opts.rawConfig, releaseChannel); + const nodeVersion = await (0, node_resolver_1.resolveNodeVersion)(fetch, versionSpecifier, nodeMirrorBaseUrl); + if (!nodeVersion) { + throw new error_1.PnpmError("COULD_NOT_RESOLVE_NODEJS", `Couldn't find Node.js version matching ${params[0]}`); + } + const nodeDir = await (0, node_1.getNodeDir)(fetch, { + ...opts, + useNodeVersion: nodeVersion, + nodeMirrorBaseUrl + }); + const src = (0, utils_1.getNodeExecPathInNodeDir)(nodeDir); + const dest = (0, utils_1.getNodeExecPathInBinDir)(opts.bin); + await (0, symlink_dir_1.default)(nodeDir, path_1.default.join(opts.pnpmHomeDir, utils_1.CURRENT_NODE_DIRNAME)); + try { + await fs_1.promises.unlink(dest); + } catch (err) { + } + await symlinkOrHardLink(src, dest); + try { + let npmDir = nodeDir; + if (process.platform !== "win32") { + npmDir = path_1.default.join(npmDir, "lib"); + } + npmDir = path_1.default.join(npmDir, "node_modules/npm"); + if (opts.configDir) { + await fs_1.promises.writeFile(path_1.default.join(npmDir, "npmrc"), `globalconfig=${path_1.default.join(opts.configDir, "npmrc")}`, "utf-8"); + } + const npmBinDir = path_1.default.join(npmDir, "bin"); + const cmdShimOpts = { createPwshFile: false }; + await (0, cmd_shim_1.default)(path_1.default.join(npmBinDir, "npm-cli.js"), path_1.default.join(opts.bin, "npm"), cmdShimOpts); + await (0, cmd_shim_1.default)(path_1.default.join(npmBinDir, "npx-cli.js"), path_1.default.join(opts.bin, "npx"), cmdShimOpts); + } catch (err) { + } + return `Node.js ${nodeVersion} is activated +${dest} -> ${src}`; + } + exports2.envUse = envUse; + async function symlinkOrHardLink(existingPath, newPath) { + if ((0, is_windows_1.default)()) { + return fs_1.promises.link(existingPath, newPath); + } + return fs_1.promises.symlink(existingPath, newPath, "file"); + } } }); -// ../../node_modules/.pnpm/es6-promise@4.2.8/node_modules/es6-promise/dist/es6-promise.js -var require_es6_promise = __commonJS({ - "../../node_modules/.pnpm/es6-promise@4.2.8/node_modules/es6-promise/dist/es6-promise.js"(exports2, module2) { - (function(global2, factory) { - typeof exports2 === "object" && typeof module2 !== "undefined" ? module2.exports = factory() : typeof define === "function" && define.amd ? define(factory) : global2.ES6Promise = factory(); - })(exports2, function() { - "use strict"; - function objectOrFunction(x) { - var type = typeof x; - return x !== null && (type === "object" || type === "function"); - } - function isFunction(x) { - return typeof x === "function"; +// ../env/plugin-commands-env/lib/envList.js +var require_envList = __commonJS({ + "../env/plugin-commands-env/lib/envList.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envList = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var fetch_1 = require_lib37(); + var node_resolver_1 = require_lib38(); + var error_1 = require_lib8(); + var semver_12 = __importDefault4(require_semver2()); + var getNodeMirror_1 = require_getNodeMirror(); + var node_1 = require_node3(); + var parseNodeEditionSpecifier_1 = require_parseNodeEditionSpecifier(); + var utils_1 = require_utils9(); + async function envList(opts, params) { + if (opts.remote) { + const nodeVersionList = await listRemoteVersions(opts, params[0]); + return nodeVersionList.reverse().join("\n"); } - var _isArray = void 0; - if (Array.isArray) { - _isArray = Array.isArray; - } else { - _isArray = function(x) { - return Object.prototype.toString.call(x) === "[object Array]"; - }; + const { currentVersion, versions } = await listLocalVersions(opts); + return versions.map((nodeVersion) => `${nodeVersion === currentVersion ? "*" : " "} ${nodeVersion}`).join("\n"); + } + exports2.envList = envList; + async function listLocalVersions(opts) { + const nodeBaseDir = (0, node_1.getNodeVersionsBaseDir)(opts.pnpmHomeDir); + if (!(0, fs_1.existsSync)(nodeBaseDir)) { + throw new error_1.PnpmError("ENV_NO_NODE_DIRECTORY", `Couldn't find Node.js directory in ${nodeBaseDir}`); } - var isArray = _isArray; - var len = 0; - var vertxNext = void 0; - var customSchedulerFn = void 0; - var asap = function asap2(callback, arg) { - queue[len] = callback; - queue[len + 1] = arg; - len += 2; - if (len === 2) { - if (customSchedulerFn) { - customSchedulerFn(flush); - } else { - scheduleFlush(); - } + const { nodeLink } = await (0, utils_1.getNodeExecPathAndTargetDir)(opts.pnpmHomeDir); + const nodeVersionDirs = await fs_1.promises.readdir(nodeBaseDir); + return nodeVersionDirs.reduce(({ currentVersion, versions }, nodeVersion) => { + const nodeVersionDir = path_1.default.join(nodeBaseDir, nodeVersion); + const nodeExec = (0, utils_1.getNodeExecPathInNodeDir)(nodeVersionDir); + if (nodeLink?.startsWith(nodeVersionDir)) { + currentVersion = nodeVersion; + } + if (semver_12.default.valid(nodeVersion) && (0, fs_1.existsSync)(nodeExec)) { + versions.push(nodeVersion); } + return { currentVersion, versions }; + }, { currentVersion: void 0, versions: [] }); + } + async function listRemoteVersions(opts, versionSpec) { + const fetch = (0, fetch_1.createFetchFromRegistry)(opts); + const { releaseChannel, versionSpecifier } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(versionSpec ?? ""); + const nodeMirrorBaseUrl = (0, getNodeMirror_1.getNodeMirror)(opts.rawConfig, releaseChannel); + const nodeVersionList = await (0, node_resolver_1.resolveNodeVersions)(fetch, versionSpecifier, nodeMirrorBaseUrl); + return nodeVersionList; + } + } +}); + +// ../env/plugin-commands-env/lib/env.js +var require_env = __commonJS({ + "../env/plugin-commands-env/lib/env.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var render_help_1 = __importDefault4(require_lib34()); + var envRemove_1 = require_envRemove(); + var envUse_1 = require_envUse(); + var envList_1 = require_envList(); + function rcOptionsTypes() { + return {}; + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + global: Boolean, + remote: Boolean }; - function setScheduler(scheduleFn) { - customSchedulerFn = scheduleFn; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["env"]; + function help() { + return (0, render_help_1.default)({ + description: "Manage Node.js versions.", + descriptionLists: [ + { + title: "Commands", + list: [ + { + description: "Installs the specified version of Node.js. The npm CLI bundled with the given Node.js version gets installed as well.", + name: "use" + }, + { + description: "Removes the specified version of Node.js.", + name: "remove", + shortAlias: "rm" + }, + { + description: "List Node.js versions available locally or remotely", + name: "list", + shortAlias: "ls" + } + ] + }, + { + title: "Options", + list: [ + { + description: "Manages Node.js versions globally", + name: "--global", + shortAlias: "-g" + }, + { + description: "List the remote versions of Node.js", + name: "--remote" + } + ] + } + ], + url: (0, cli_utils_1.docsUrl)("env"), + usages: [ + "pnpm env [command] [options] ", + "pnpm env use --global 16", + "pnpm env use --global lts", + "pnpm env use --global argon", + "pnpm env use --global latest", + "pnpm env use --global rc/16", + "pnpm env remove --global 16", + "pnpm env remove --global lts", + "pnpm env remove --global argon", + "pnpm env remove --global latest", + "pnpm env remove --global rc/16", + "pnpm env list", + "pnpm env list --remote", + "pnpm env list --remote 16", + "pnpm env list --remote lts", + "pnpm env list --remote argon", + "pnpm env list --remote latest", + "pnpm env list --remote rc/16" + ] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (params.length === 0) { + throw new error_1.PnpmError("ENV_NO_SUBCOMMAND", "Please specify the subcommand", { + hint: help() + }); } - function setAsap(asapFn) { - asap = asapFn; + if (opts.global && !opts.bin) { + throw new error_1.PnpmError("CANNOT_MANAGE_NODE", "Unable to manage Node.js because pnpm was not installed using the standalon installation script", { + hint: "If you want to manage Node.js with pnpm, you need to remove any Node.js that was installed by other tools, then install pnpm using one of the standalone scripts that are provided on the installation page: https://pnpm.io/installation" + }); } - var browserWindow = typeof window !== "undefined" ? window : void 0; - var browserGlobal = browserWindow || {}; - var BrowserMutationObserver = browserGlobal.MutationObserver || browserGlobal.WebKitMutationObserver; - var isNode = typeof self === "undefined" && typeof process !== "undefined" && {}.toString.call(process) === "[object process]"; - var isWorker = typeof Uint8ClampedArray !== "undefined" && typeof importScripts !== "undefined" && typeof MessageChannel !== "undefined"; - function useNextTick() { - return function() { - return process.nextTick(flush); - }; + switch (params[0]) { + case "use": { + return (0, envUse_1.envUse)(opts, params.slice(1)); + } + case "remove": + case "rm": + case "uninstall": + case "un": { + return (0, envRemove_1.envRemove)(opts, params.slice(1)); + } + case "list": + case "ls": { + return (0, envList_1.envList)(opts, params.slice(1)); + } + default: { + throw new error_1.PnpmError("ENV_UNKNOWN_SUBCOMMAND", "This subcommand is not known"); + } } - function useVertxTimer() { - if (typeof vertxNext !== "undefined") { - return function() { - vertxNext(flush); - }; + } + exports2.handler = handler; + } +}); + +// ../env/plugin-commands-env/lib/index.js +var require_lib67 = __commonJS({ + "../env/plugin-commands-env/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.node = exports2.env = void 0; + var env = __importStar5(require_env()); + exports2.env = env; + var node = __importStar5(require_node3()); + exports2.node = node; + } +}); + +// ../node_modules/.pnpm/safe-execa@0.1.3/node_modules/safe-execa/lib/index.js +var require_lib68 = __commonJS({ + "../node_modules/.pnpm/safe-execa@0.1.3/node_modules/safe-execa/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sync = void 0; + var which_1 = __importDefault4(require_which()); + var execa_1 = __importDefault4(require_execa()); + var path_name_1 = __importDefault4(require_path_name()); + var pathCache = /* @__PURE__ */ new Map(); + function sync(file, args2, options) { + var _a; + try { + which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd() }); + } catch (err) { + if (err.code === "ENOENT") { + return execa_1.default.sync(file, args2, options); } - return useSetTimeout(); - } - function useMutationObserver() { - var iterations = 0; - var observer = new BrowserMutationObserver(flush); - var node = document.createTextNode(""); - observer.observe(node, { characterData: true }); - return function() { - node.data = iterations = ++iterations % 2; - }; - } - function useMessageChannel() { - var channel = new MessageChannel(); - channel.port1.onmessage = flush; - return function() { - return channel.port2.postMessage(0); - }; } - function useSetTimeout() { - var globalSetTimeout = setTimeout; - return function() { - return globalSetTimeout(flush, 1); - }; + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return execa_1.default.sync(fileAbsolutePath, args2, options); + } + exports2.sync = sync; + function getCommandAbsolutePathSync(file, options) { + var _a, _b; + if (file.includes("\\") || file.includes("/")) + return file; + const path2 = (_b = (_a = options === null || options === void 0 ? void 0 : options.env) === null || _a === void 0 ? void 0 : _a[path_name_1.default]) !== null && _b !== void 0 ? _b : process.env[path_name_1.default]; + const key = JSON.stringify([path2, file]); + let fileAbsolutePath = pathCache.get(key); + if (fileAbsolutePath == null) { + fileAbsolutePath = which_1.default.sync(file, { path: path2 }); + pathCache.set(key, fileAbsolutePath); } - var queue = new Array(1e3); - function flush() { - for (var i = 0; i < len; i += 2) { - var callback = queue[i]; - var arg = queue[i + 1]; - callback(arg); - queue[i] = void 0; - queue[i + 1] = void 0; - } - len = 0; + if (fileAbsolutePath == null) { + throw new Error(`Couldn't find ${file}`); } - function attemptVertx() { - try { - var vertx = Function("return this")().require("vertx"); - vertxNext = vertx.runOnLoop || vertx.runOnContext; - return useVertxTimer(); - } catch (e) { - return useSetTimeout(); - } - } - var scheduleFlush = void 0; - if (isNode) { - scheduleFlush = useNextTick(); - } else if (BrowserMutationObserver) { - scheduleFlush = useMutationObserver(); - } else if (isWorker) { - scheduleFlush = useMessageChannel(); - } else if (browserWindow === void 0 && typeof require === "function") { - scheduleFlush = attemptVertx(); - } else { - scheduleFlush = useSetTimeout(); - } - function then(onFulfillment, onRejection) { - var parent = this; - var child = new this.constructor(noop); - if (child[PROMISE_ID] === void 0) { - makePromise(child); - } - var _state = parent._state; - if (_state) { - var callback = arguments[_state - 1]; - asap(function() { - return invokeCallback(_state, child, callback, parent._result); - }); - } else { - subscribe(parent, child, onFulfillment, onRejection); + return fileAbsolutePath; + } + function default_1(file, args2, options) { + var _a; + try { + which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd() }); + } catch (err) { + if (err.code === "ENOENT") { + return (0, execa_1.default)(file, args2, options); } - return child; } - function resolve$1(object) { - var Constructor = this; - if (object && typeof object === "object" && object.constructor === Constructor) { - return object; - } - var promise = new Constructor(noop); - resolve(promise, object); - return promise; + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return (0, execa_1.default)(fileAbsolutePath, args2, options); + } + exports2.default = default_1; + } +}); + +// ../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry_operation.js +var require_retry_operation2 = __commonJS({ + "../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry_operation.js"(exports2, module2) { + function RetryOperation(timeouts, options) { + if (typeof options === "boolean") { + options = { forever: options }; } - var PROMISE_ID = Math.random().toString(36).substring(2); - function noop() { + this._originalTimeouts = JSON.parse(JSON.stringify(timeouts)); + this._timeouts = timeouts; + this._options = options || {}; + this._maxRetryTime = options && options.maxRetryTime || Infinity; + this._fn = null; + this._errors = []; + this._attempts = 1; + this._operationTimeout = null; + this._operationTimeoutCb = null; + this._timeout = null; + this._operationStart = null; + if (this._options.forever) { + this._cachedTimeouts = this._timeouts.slice(0); } - var PENDING = void 0; - var FULFILLED = 1; - var REJECTED = 2; - function selfFulfillment() { - return new TypeError("You cannot resolve a promise with itself"); + } + module2.exports = RetryOperation; + RetryOperation.prototype.reset = function() { + this._attempts = 1; + this._timeouts = this._originalTimeouts; + }; + RetryOperation.prototype.stop = function() { + if (this._timeout) { + clearTimeout(this._timeout); } - function cannotReturnOwn() { - return new TypeError("A promises callback cannot return that same promise."); + this._timeouts = []; + this._cachedTimeouts = null; + }; + RetryOperation.prototype.retry = function(err) { + if (this._timeout) { + clearTimeout(this._timeout); } - function tryThen(then$$1, value, fulfillmentHandler, rejectionHandler) { - try { - then$$1.call(value, fulfillmentHandler, rejectionHandler); - } catch (e) { - return e; - } + if (!err) { + return false; } - function handleForeignThenable(promise, thenable, then$$1) { - asap(function(promise2) { - var sealed = false; - var error = tryThen(then$$1, thenable, function(value) { - if (sealed) { - return; - } - sealed = true; - if (thenable !== value) { - resolve(promise2, value); - } else { - fulfill(promise2, value); - } - }, function(reason) { - if (sealed) { - return; - } - sealed = true; - reject(promise2, reason); - }, "Settle: " + (promise2._label || " unknown promise")); - if (!sealed && error) { - sealed = true; - reject(promise2, error); - } - }, promise); - } - function handleOwnThenable(promise, thenable) { - if (thenable._state === FULFILLED) { - fulfill(promise, thenable._result); - } else if (thenable._state === REJECTED) { - reject(promise, thenable._result); - } else { - subscribe(thenable, void 0, function(value) { - return resolve(promise, value); - }, function(reason) { - return reject(promise, reason); - }); - } + var currentTime = (/* @__PURE__ */ new Date()).getTime(); + if (err && currentTime - this._operationStart >= this._maxRetryTime) { + this._errors.unshift(new Error("RetryOperation timeout occurred")); + return false; } - function handleMaybeThenable(promise, maybeThenable, then$$1) { - if (maybeThenable.constructor === promise.constructor && then$$1 === then && maybeThenable.constructor.resolve === resolve$1) { - handleOwnThenable(promise, maybeThenable); + this._errors.push(err); + var timeout = this._timeouts.shift(); + if (timeout === void 0) { + if (this._cachedTimeouts) { + this._errors.splice(this._errors.length - 1, this._errors.length); + this._timeouts = this._cachedTimeouts.slice(0); + timeout = this._timeouts.shift(); } else { - if (then$$1 === void 0) { - fulfill(promise, maybeThenable); - } else if (isFunction(then$$1)) { - handleForeignThenable(promise, maybeThenable, then$$1); - } else { - fulfill(promise, maybeThenable); - } + return false; } } - function resolve(promise, value) { - if (promise === value) { - reject(promise, selfFulfillment()); - } else if (objectOrFunction(value)) { - var then$$1 = void 0; - try { - then$$1 = value.then; - } catch (error) { - reject(promise, error); - return; + var self2 = this; + var timer = setTimeout(function() { + self2._attempts++; + if (self2._operationTimeoutCb) { + self2._timeout = setTimeout(function() { + self2._operationTimeoutCb(self2._attempts); + }, self2._operationTimeout); + if (self2._options.unref) { + self2._timeout.unref(); } - handleMaybeThenable(promise, value, then$$1); - } else { - fulfill(promise, value); - } - } - function publishRejection(promise) { - if (promise._onerror) { - promise._onerror(promise._result); } - publish(promise); + self2._fn(self2._attempts); + }, timeout); + if (this._options.unref) { + timer.unref(); } - function fulfill(promise, value) { - if (promise._state !== PENDING) { - return; + return true; + }; + RetryOperation.prototype.attempt = function(fn2, timeoutOps) { + this._fn = fn2; + if (timeoutOps) { + if (timeoutOps.timeout) { + this._operationTimeout = timeoutOps.timeout; } - promise._result = value; - promise._state = FULFILLED; - if (promise._subscribers.length !== 0) { - asap(publish, promise); + if (timeoutOps.cb) { + this._operationTimeoutCb = timeoutOps.cb; } } - function reject(promise, reason) { - if (promise._state !== PENDING) { - return; - } - promise._state = REJECTED; - promise._result = reason; - asap(publishRejection, promise); - } - function subscribe(parent, child, onFulfillment, onRejection) { - var _subscribers = parent._subscribers; - var length = _subscribers.length; - parent._onerror = null; - _subscribers[length] = child; - _subscribers[length + FULFILLED] = onFulfillment; - _subscribers[length + REJECTED] = onRejection; - if (length === 0 && parent._state) { - asap(publish, parent); - } - } - function publish(promise) { - var subscribers = promise._subscribers; - var settled = promise._state; - if (subscribers.length === 0) { - return; - } - var child = void 0, callback = void 0, detail = promise._result; - for (var i = 0; i < subscribers.length; i += 3) { - child = subscribers[i]; - callback = subscribers[i + settled]; - if (child) { - invokeCallback(settled, child, callback, detail); - } else { - callback(detail); - } - } - promise._subscribers.length = 0; + var self2 = this; + if (this._operationTimeoutCb) { + this._timeout = setTimeout(function() { + self2._operationTimeoutCb(); + }, self2._operationTimeout); } - function invokeCallback(settled, promise, callback, detail) { - var hasCallback = isFunction(callback), value = void 0, error = void 0, succeeded = true; - if (hasCallback) { - try { - value = callback(detail); - } catch (e) { - succeeded = false; - error = e; - } - if (promise === value) { - reject(promise, cannotReturnOwn()); - return; - } - } else { - value = detail; - } - if (promise._state !== PENDING) { - } else if (hasCallback && succeeded) { - resolve(promise, value); - } else if (succeeded === false) { - reject(promise, error); - } else if (settled === FULFILLED) { - fulfill(promise, value); - } else if (settled === REJECTED) { - reject(promise, value); - } + this._operationStart = (/* @__PURE__ */ new Date()).getTime(); + this._fn(this._attempts); + }; + RetryOperation.prototype.try = function(fn2) { + console.log("Using RetryOperation.try() is deprecated"); + this.attempt(fn2); + }; + RetryOperation.prototype.start = function(fn2) { + console.log("Using RetryOperation.start() is deprecated"); + this.attempt(fn2); + }; + RetryOperation.prototype.start = RetryOperation.prototype.try; + RetryOperation.prototype.errors = function() { + return this._errors; + }; + RetryOperation.prototype.attempts = function() { + return this._attempts; + }; + RetryOperation.prototype.mainError = function() { + if (this._errors.length === 0) { + return null; } - function initializePromise(promise, resolver) { - try { - resolver(function resolvePromise(value) { - resolve(promise, value); - }, function rejectPromise(reason) { - reject(promise, reason); - }); - } catch (e) { - reject(promise, e); + var counts = {}; + var mainError = null; + var mainErrorCount = 0; + for (var i = 0; i < this._errors.length; i++) { + var error = this._errors[i]; + var message2 = error.message; + var count = (counts[message2] || 0) + 1; + counts[message2] = count; + if (count >= mainErrorCount) { + mainError = error; + mainErrorCount = count; } } - var id = 0; - function nextId() { - return id++; + return mainError; + }; + } +}); + +// ../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry.js +var require_retry3 = __commonJS({ + "../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry.js"(exports2) { + var RetryOperation = require_retry_operation2(); + exports2.operation = function(options) { + var timeouts = exports2.timeouts(options); + return new RetryOperation(timeouts, { + forever: options && options.forever, + unref: options && options.unref, + maxRetryTime: options && options.maxRetryTime + }); + }; + exports2.timeouts = function(options) { + if (options instanceof Array) { + return [].concat(options); } - function makePromise(promise) { - promise[PROMISE_ID] = id++; - promise._state = void 0; - promise._result = void 0; - promise._subscribers = []; + var opts = { + retries: 10, + factor: 2, + minTimeout: 1 * 1e3, + maxTimeout: Infinity, + randomize: false + }; + for (var key in options) { + opts[key] = options[key]; } - function validationError() { - return new Error("Array Methods must be provided an Array"); + if (opts.minTimeout > opts.maxTimeout) { + throw new Error("minTimeout is greater than maxTimeout"); } - var Enumerator = function() { - function Enumerator2(Constructor, input) { - this._instanceConstructor = Constructor; - this.promise = new Constructor(noop); - if (!this.promise[PROMISE_ID]) { - makePromise(this.promise); - } - if (isArray(input)) { - this.length = input.length; - this._remaining = input.length; - this._result = new Array(this.length); - if (this.length === 0) { - fulfill(this.promise, this._result); - } else { - this.length = this.length || 0; - this._enumerate(input); - if (this._remaining === 0) { - fulfill(this.promise, this._result); - } - } - } else { - reject(this.promise, validationError()); + var timeouts = []; + for (var i = 0; i < opts.retries; i++) { + timeouts.push(this.createTimeout(i, opts)); + } + if (options && options.forever && !timeouts.length) { + timeouts.push(this.createTimeout(i, opts)); + } + timeouts.sort(function(a, b) { + return a - b; + }); + return timeouts; + }; + exports2.createTimeout = function(attempt, opts) { + var random = opts.randomize ? Math.random() + 1 : 1; + var timeout = Math.round(random * opts.minTimeout * Math.pow(opts.factor, attempt)); + timeout = Math.min(timeout, opts.maxTimeout); + return timeout; + }; + exports2.wrap = function(obj, options, methods) { + if (options instanceof Array) { + methods = options; + options = null; + } + if (!methods) { + methods = []; + for (var key in obj) { + if (typeof obj[key] === "function") { + methods.push(key); } } - Enumerator2.prototype._enumerate = function _enumerate(input) { - for (var i = 0; this._state === PENDING && i < input.length; i++) { - this._eachEntry(input[i], i); - } - }; - Enumerator2.prototype._eachEntry = function _eachEntry(entry, i) { - var c = this._instanceConstructor; - var resolve$$1 = c.resolve; - if (resolve$$1 === resolve$1) { - var _then = void 0; - var error = void 0; - var didError = false; - try { - _then = entry.then; - } catch (e) { - didError = true; - error = e; - } - if (_then === then && entry._state !== PENDING) { - this._settledAt(entry._state, i, entry._result); - } else if (typeof _then !== "function") { - this._remaining--; - this._result[i] = entry; - } else if (c === Promise$1) { - var promise = new c(noop); - if (didError) { - reject(promise, error); - } else { - handleMaybeThenable(promise, entry, _then); - } - this._willSettleAt(promise, i); - } else { - this._willSettleAt(new c(function(resolve$$12) { - return resolve$$12(entry); - }), i); + } + for (var i = 0; i < methods.length; i++) { + var method = methods[i]; + var original = obj[method]; + obj[method] = function retryWrapper(original2) { + var op = exports2.operation(options); + var args2 = Array.prototype.slice.call(arguments, 1); + var callback = args2.pop(); + args2.push(function(err) { + if (op.retry(err)) { + return; } - } else { - this._willSettleAt(resolve$$1(entry), i); - } - }; - Enumerator2.prototype._settledAt = function _settledAt(state, i, value) { - var promise = this.promise; - if (promise._state === PENDING) { - this._remaining--; - if (state === REJECTED) { - reject(promise, value); - } else { - this._result[i] = value; + if (err) { + arguments[0] = op.mainError(); } - } - if (this._remaining === 0) { - fulfill(promise, this._result); - } - }; - Enumerator2.prototype._willSettleAt = function _willSettleAt(promise, i) { - var enumerator = this; - subscribe(promise, void 0, function(value) { - return enumerator._settledAt(FULFILLED, i, value); - }, function(reason) { - return enumerator._settledAt(REJECTED, i, reason); - }); - }; - return Enumerator2; - }(); - function all(entries) { - return new Enumerator(this, entries).promise; - } - function race(entries) { - var Constructor = this; - if (!isArray(entries)) { - return new Constructor(function(_, reject2) { - return reject2(new TypeError("You must pass an array to race.")); + callback.apply(this, arguments); }); - } else { - return new Constructor(function(resolve2, reject2) { - var length = entries.length; - for (var i = 0; i < length; i++) { - Constructor.resolve(entries[i]).then(resolve2, reject2); - } + op.attempt(function() { + original2.apply(obj, args2); }); - } - } - function reject$1(reason) { - var Constructor = this; - var promise = new Constructor(noop); - reject(promise, reason); - return promise; - } - function needsResolver() { - throw new TypeError("You must pass a resolver function as the first argument to the promise constructor"); - } - function needsNew() { - throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function."); - } - var Promise$1 = function() { - function Promise2(resolver) { - this[PROMISE_ID] = nextId(); - this._result = this._state = void 0; - this._subscribers = []; - if (noop !== resolver) { - typeof resolver !== "function" && needsResolver(); - this instanceof Promise2 ? initializePromise(this, resolver) : needsNew(); - } - } - Promise2.prototype.catch = function _catch(onRejection) { - return this.then(null, onRejection); - }; - Promise2.prototype.finally = function _finally(callback) { - var promise = this; - var constructor = promise.constructor; - if (isFunction(callback)) { - return promise.then(function(value) { - return constructor.resolve(callback()).then(function() { - return value; - }); - }, function(reason) { - return constructor.resolve(callback()).then(function() { - throw reason; - }); - }); - } - return promise.then(callback, callback); - }; - return Promise2; - }(); - Promise$1.prototype.then = then; - Promise$1.all = all; - Promise$1.race = race; - Promise$1.resolve = resolve$1; - Promise$1.reject = reject$1; - Promise$1._setScheduler = setScheduler; - Promise$1._setAsap = setAsap; - Promise$1._asap = asap; - function polyfill() { - var local = void 0; - if (typeof global !== "undefined") { - local = global; - } else if (typeof self !== "undefined") { - local = self; - } else { - try { - local = Function("return this")(); - } catch (e) { - throw new Error("polyfill failed because global object is unavailable in this environment"); - } - } - var P = local.Promise; - if (P) { - var promiseToString = null; - try { - promiseToString = Object.prototype.toString.call(P.resolve()); - } catch (e) { - } - if (promiseToString === "[object Promise]" && !P.cast) { - return; - } - } - local.Promise = Promise$1; + }.bind(obj, original); + obj[method].options = options; } - Promise$1.polyfill = polyfill; - Promise$1.Promise = Promise$1; - return Promise$1; - }); + }; } }); -// ../../node_modules/.pnpm/es6-promisify@5.0.0/node_modules/es6-promisify/dist/promise.js -var require_promise2 = __commonJS({ - "../../node_modules/.pnpm/es6-promisify@5.0.0/node_modules/es6-promisify/dist/promise.js"(exports2, module2) { - "use strict"; - module2.exports = function() { - "use strict"; - var globalObject = void 0; - function isFunction(x) { - return typeof x === "function"; - } - if (global !== void 0) { - globalObject = global; - } else if (window !== void 0 && window.document) { - globalObject = window; - } else { - globalObject = self; - } - var hasPromiseSupport = function() { - if (!globalObject.hasOwnProperty("Promise")) { - return false; - } - var P = globalObject.Promise; - if (!P.hasOwnProperty("resolve") || !P.hasOwnProperty("reject")) { - return false; - } - if (!P.hasOwnProperty("all") || !P.hasOwnProperty("race")) { - return false; - } - return function() { - var resolve = void 0; - var p = new globalObject.Promise(function(r) { - resolve = r; - }); - if (p) { - return isFunction(resolve); - } - return false; - }(); - }(); - if (hasPromiseSupport) { - return globalObject.Promise; - } - return require_es6_promise().Promise; - }(); +// ../node_modules/.pnpm/retry@0.12.0/node_modules/retry/index.js +var require_retry4 = __commonJS({ + "../node_modules/.pnpm/retry@0.12.0/node_modules/retry/index.js"(exports2, module2) { + module2.exports = require_retry3(); } }); -// ../../node_modules/.pnpm/es6-promisify@5.0.0/node_modules/es6-promisify/dist/promisify.js -var require_promisify2 = __commonJS({ - "../../node_modules/.pnpm/es6-promisify@5.0.0/node_modules/es6-promisify/dist/promisify.js"(exports2, module2) { +// ../node_modules/.pnpm/graceful-git@3.1.2/node_modules/graceful-git/index.js +var require_graceful_git = __commonJS({ + "../node_modules/.pnpm/graceful-git@3.1.2/node_modules/graceful-git/index.js"(exports2, module2) { "use strict"; - module2.exports = function() { - "use strict"; - var ES6Promise = require_promise2(); - function thatLooksLikeAPromiseToMe(o) { - return o && typeof o.then === "function" && typeof o.catch === "function"; - } - return function promisify(original, settings) { - return function() { - for (var _len = arguments.length, args2 = Array(_len), _key = 0; _key < _len; _key++) { - args2[_key] = arguments[_key]; - } - var returnMultipleArguments = settings && settings.multiArgs; - var target = void 0; - if (settings && settings.thisArg) { - target = settings.thisArg; - } else if (settings) { - target = settings; - } - return new ES6Promise(function(resolve, reject) { - args2.push(function callback(err) { - if (err) { - return reject(err); - } - for (var _len2 = arguments.length, values = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { - values[_key2 - 1] = arguments[_key2]; - } - if (!!returnMultipleArguments === false) { - return resolve(values[0]); - } - resolve(values); - }); - var response = original.apply(target, args2); - if (thatLooksLikeAPromiseToMe(response)) { - resolve(response); + var execa = require_lib68().default; + var retry = require_retry4(); + var RETRY_OPTIONS = { + retries: 3, + minTimeout: 1 * 1e3, + maxTimeout: 10 * 1e3, + randomize: true + }; + module2.exports = gracefulGit; + module2.exports.noRetry = noRetry; + async function gracefulGit(args2, opts) { + opts = opts || {}; + const operation = retry.operation(Object.assign({}, RETRY_OPTIONS, opts)); + return new Promise((resolve, reject) => { + operation.attempt((currentAttempt) => { + noRetry(args2, opts).then(resolve).catch((err) => { + if (operation.retry(err)) { + return; } + reject(operation.mainError()); }); - }; - }; - }(); + }); + }); + } + async function noRetry(args2, opts) { + opts = opts || {}; + return execa("git", args2, { cwd: opts.cwd || process.cwd() }); + } } }); -// ../../node_modules/.pnpm/agent-base@4.3.0/node_modules/agent-base/index.js -var require_agent_base = __commonJS({ - "../../node_modules/.pnpm/agent-base@4.3.0/node_modules/agent-base/index.js"(exports2, module2) { +// ../resolving/git-resolver/lib/parsePref.js +var require_parsePref = __commonJS({ + "../resolving/git-resolver/lib/parsePref.js"(exports2) { "use strict"; - require_patch_core(); - var inherits = require("util").inherits; - var promisify = require_promisify2(); - var EventEmitter = require("events").EventEmitter; - module2.exports = Agent; - function isAgent(v) { - return v && typeof v.addRequest === "function"; - } - function Agent(callback, _opts) { - if (!(this instanceof Agent)) { - return new Agent(callback, _opts); - } - EventEmitter.call(this); - this._promisifiedCallback = false; - let opts = _opts; - if (typeof callback === "function") { - this.callback = callback; - } else if (callback) { - opts = callback; - } - this.timeout = opts && opts.timeout || null; - this.options = opts; - } - inherits(Agent, EventEmitter); - Agent.prototype.callback = function callback(req, opts) { - throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); - }; - Agent.prototype.addRequest = function addRequest(req, _opts) { - const ownOpts = Object.assign({}, _opts); - if (ownOpts.host == null) { - ownOpts.host = "localhost"; - } - if (ownOpts.port == null) { - ownOpts.port = ownOpts.secureEndpoint ? 443 : 80; - } - const opts = Object.assign({}, this.options, ownOpts); - if (opts.host && opts.path) { - delete opts.path; - } - delete opts.agent; - delete opts.hostname; - delete opts._defaultAgent; - delete opts.defaultPort; - delete opts.createConnection; - req._last = true; - req.shouldKeepAlive = false; - let timeout; - let timedOut = false; - const timeoutMs = this.timeout; - const freeSocket = this.freeSocket; - function onerror(err) { - if (req._hadError) - return; - req.emit("error", err); - req._hadError = true; - } - function ontimeout() { - timeout = null; - timedOut = true; - const err = new Error('A "socket" was not created for HTTP request before ' + timeoutMs + "ms"); - err.code = "ETIMEOUT"; - onerror(err); - } - function callbackError(err) { - if (timedOut) - return; - if (timeout != null) { - clearTimeout(timeout); - timeout = null; - } - onerror(err); - } - function onsocket(socket) { - if (timedOut) - return; - if (timeout != null) { - clearTimeout(timeout); - timeout = null; - } - if (isAgent(socket)) { - socket.addRequest(req, opts); - } else if (socket) { - let onfree = function() { - freeSocket(socket, opts); - }; - socket.on("free", onfree); - req.onSocket(socket); - } else { - const err = new Error("no Duplex stream was returned to agent-base for `" + req.method + " " + req.path + "`"); - onerror(err); - } - } - if (!this._promisifiedCallback && this.callback.length >= 3) { - this.callback = promisify(this.callback, this); - this._promisifiedCallback = true; - } - if (timeoutMs > 0) { - timeout = setTimeout(ontimeout, timeoutMs); + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - try { - Promise.resolve(this.callback(req, opts)).then(onsocket, callbackError); - } catch (err) { - Promise.reject(err).catch(callbackError); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } + __setModuleDefault4(result2, mod); + return result2; }; - Agent.prototype.freeSocket = function freeSocket(socket, opts) { - socket.destroy(); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - } -}); - -// ../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/common.js -var require_common5 = __commonJS({ - "../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/common.js"(exports2, module2) { - "use strict"; - function setup(env) { - createDebug.debug = createDebug; - createDebug.default = createDebug; - createDebug.coerce = coerce; - createDebug.disable = disable; - createDebug.enable = enable; - createDebug.enabled = enabled; - createDebug.humanize = require_ms2(); - Object.keys(env).forEach(function(key) { - createDebug[key] = env[key]; - }); - createDebug.instances = []; - createDebug.names = []; - createDebug.skips = []; - createDebug.formatters = {}; - function selectColor(namespace) { - var hash = 0; - for (var i = 0; i < namespace.length; i++) { - hash = (hash << 5) - hash + namespace.charCodeAt(i); - hash |= 0; - } - return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parsePref = void 0; + var url_1 = __importStar5(require("url")); + var fetch_1 = require_lib37(); + var graceful_git_1 = __importDefault4(require_graceful_git()); + var hosted_git_info_1 = __importDefault4(require_hosted_git_info()); + var gitProtocols = /* @__PURE__ */ new Set([ + "git", + "git+http", + "git+https", + "git+rsync", + "git+ftp", + "git+file", + "git+ssh", + "ssh" + ]); + async function parsePref(pref) { + const hosted = hosted_git_info_1.default.fromUrl(pref); + if (hosted != null) { + return fromHostedGit(hosted); } - createDebug.selectColor = selectColor; - function createDebug(namespace) { - var prevTime; - function debug() { - if (!debug.enabled) { - return; - } - for (var _len = arguments.length, args2 = new Array(_len), _key = 0; _key < _len; _key++) { - args2[_key] = arguments[_key]; - } - var self2 = debug; - var curr = Number(new Date()); - var ms = curr - (prevTime || curr); - self2.diff = ms; - self2.prev = prevTime; - self2.curr = curr; - prevTime = curr; - args2[0] = createDebug.coerce(args2[0]); - if (typeof args2[0] !== "string") { - args2.unshift("%O"); - } - var index = 0; - args2[0] = args2[0].replace(/%([a-zA-Z%])/g, function(match, format) { - if (match === "%%") { - return match; - } - index++; - var formatter = createDebug.formatters[format]; - if (typeof formatter === "function") { - var val = args2[index]; - match = formatter.call(self2, val); - args2.splice(index, 1); - index--; - } - return match; - }); - createDebug.formatArgs.call(self2, args2); - var logFn = self2.log || createDebug.log; - logFn.apply(self2, args2); - } - debug.namespace = namespace; - debug.enabled = createDebug.enabled(namespace); - debug.useColors = createDebug.useColors(); - debug.color = selectColor(namespace); - debug.destroy = destroy; - debug.extend = extend; - if (typeof createDebug.init === "function") { - createDebug.init(debug); - } - createDebug.instances.push(debug); - return debug; + const colonsPos = pref.indexOf(":"); + if (colonsPos === -1) + return null; + const protocol = pref.slice(0, colonsPos); + if (protocol && gitProtocols.has(protocol.toLocaleLowerCase())) { + const correctPref = correctUrl(pref); + const urlparse = new url_1.URL(correctPref); + if (!urlparse?.protocol) + return null; + const committish = urlparse.hash?.length > 1 ? decodeURIComponent(urlparse.hash.slice(1)) : null; + return { + fetchSpec: urlToFetchSpec(urlparse), + normalizedPref: pref, + ...setGitCommittish(committish) + }; } - function destroy() { - var index = createDebug.instances.indexOf(this); - if (index !== -1) { - createDebug.instances.splice(index, 1); - return true; - } - return false; + return null; + } + exports2.parsePref = parsePref; + function urlToFetchSpec(urlparse) { + urlparse.hash = ""; + const fetchSpec = url_1.default.format(urlparse); + if (fetchSpec.startsWith("git+")) { + return fetchSpec.slice(4); } - function extend(namespace, delimiter) { - return createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace); + return fetchSpec; + } + async function fromHostedGit(hosted) { + let fetchSpec = null; + const gitUrl = hosted.https({ noCommittish: true }) ?? hosted.ssh({ noCommittish: true }); + if (gitUrl && await accessRepository(gitUrl)) { + fetchSpec = gitUrl; } - function enable(namespaces) { - createDebug.save(namespaces); - createDebug.names = []; - createDebug.skips = []; - var i; - var split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); - var len = split.length; - for (i = 0; i < len; i++) { - if (!split[i]) { - continue; - } - namespaces = split[i].replace(/\*/g, ".*?"); - if (namespaces[0] === "-") { - createDebug.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + if (!fetchSpec) { + const httpsUrl = hosted.https({ noGitPlus: true, noCommittish: true }); + if (httpsUrl) { + if (hosted.auth && await accessRepository(httpsUrl)) { + return { + fetchSpec: httpsUrl, + hosted: { + ...hosted, + _fill: hosted._fill, + tarball: void 0 + }, + normalizedPref: `git+${httpsUrl}`, + ...setGitCommittish(hosted.committish) + }; } else { - createDebug.names.push(new RegExp("^" + namespaces + "$")); + try { + const response = await (0, fetch_1.fetch)(httpsUrl.slice(0, -4), { method: "HEAD", follow: 0, retry: { retries: 0 } }); + if (response.ok) { + fetchSpec = httpsUrl; + } + } catch (e) { + } } } - for (i = 0; i < createDebug.instances.length; i++) { - var instance = createDebug.instances[i]; - instance.enabled = createDebug.enabled(instance.namespace); - } } - function disable() { - createDebug.enable(""); + if (!fetchSpec) { + fetchSpec = hosted.sshurl({ noCommittish: true }); } - function enabled(name) { - if (name[name.length - 1] === "*") { - return true; - } - var i; - var len; - for (i = 0, len = createDebug.skips.length; i < len; i++) { - if (createDebug.skips[i].test(name)) { - return false; - } - } - for (i = 0, len = createDebug.names.length; i < len; i++) { - if (createDebug.names[i].test(name)) { - return true; - } - } + return { + fetchSpec, + hosted: { + ...hosted, + _fill: hosted._fill, + tarball: hosted.tarball + }, + normalizedPref: hosted.shortcut(), + ...setGitCommittish(hosted.committish) + }; + } + async function accessRepository(repository) { + try { + await (0, graceful_git_1.default)(["ls-remote", "--exit-code", repository, "HEAD"], { retries: 0 }); + return true; + } catch (err) { return false; } - function coerce(val) { - if (val instanceof Error) { - return val.stack || val.message; - } - return val; + } + function setGitCommittish(committish) { + if (committish !== null && committish.length >= 7 && committish.slice(0, 7) === "semver:") { + return { + gitCommittish: null, + gitRange: committish.slice(7) + }; } - createDebug.enable(createDebug.load()); - return createDebug; + return { gitCommittish: committish }; + } + function correctUrl(giturl) { + const parsed = url_1.default.parse(giturl.replace(/^git\+/, "")); + if (parsed.protocol === "ssh:" && parsed.hostname && parsed.pathname && parsed.pathname.startsWith("/:") && parsed.port === null) { + parsed.pathname = parsed.pathname.replace(/^\/:/, ""); + return url_1.default.format(parsed); + } + return giturl; } - module2.exports = setup; } }); -// ../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/browser.js -var require_browser2 = __commonJS({ - "../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/browser.js"(exports2, module2) { +// ../resolving/git-resolver/lib/index.js +var require_lib69 = __commonJS({ + "../resolving/git-resolver/lib/index.js"(exports2) { "use strict"; - function _typeof(obj) { - if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { - _typeof = function _typeof2(obj2) { - return typeof obj2; - }; - } else { - _typeof = function _typeof2(obj2) { - return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createGitResolver = void 0; + var graceful_git_1 = __importDefault4(require_graceful_git()); + var semver_12 = __importDefault4(require_semver2()); + var parsePref_1 = require_parsePref(); + function createGitResolver(opts) { + return async function resolveGit(wantedDependency) { + const parsedSpec = await (0, parsePref_1.parsePref)(wantedDependency.pref); + if (parsedSpec == null) + return null; + const pref = parsedSpec.gitCommittish == null || parsedSpec.gitCommittish === "" ? "HEAD" : parsedSpec.gitCommittish; + const commit = await resolveRef(parsedSpec.fetchSpec, pref, parsedSpec.gitRange); + let resolution; + if (parsedSpec.hosted != null && !isSsh(parsedSpec.fetchSpec)) { + const hosted = parsedSpec.hosted; + hosted.committish = commit; + const tarball = hosted.tarball?.(); + if (tarball) { + resolution = { tarball }; + } + } + if (resolution == null) { + resolution = { + commit, + repo: parsedSpec.fetchSpec, + type: "git" + }; + } + return { + id: parsedSpec.fetchSpec.replace(/^.*:\/\/(git@)?/, "").replace(/:/g, "+").replace(/\.git$/, "") + "/" + commit, + normalizedPref: parsedSpec.normalizedPref, + resolution, + resolvedVia: "git-repository" }; - } - return _typeof(obj); + }; } - exports2.log = log2; - exports2.formatArgs = formatArgs; - exports2.save = save; - exports2.load = load; - exports2.useColors = useColors; - exports2.storage = localstorage(); - exports2.colors = ["#0000CC", "#0000FF", "#0033CC", "#0033FF", "#0066CC", "#0066FF", "#0099CC", "#0099FF", "#00CC00", "#00CC33", "#00CC66", "#00CC99", "#00CCCC", "#00CCFF", "#3300CC", "#3300FF", "#3333CC", "#3333FF", "#3366CC", "#3366FF", "#3399CC", "#3399FF", "#33CC00", "#33CC33", "#33CC66", "#33CC99", "#33CCCC", "#33CCFF", "#6600CC", "#6600FF", "#6633CC", "#6633FF", "#66CC00", "#66CC33", "#9900CC", "#9900FF", "#9933CC", "#9933FF", "#99CC00", "#99CC33", "#CC0000", "#CC0033", "#CC0066", "#CC0099", "#CC00CC", "#CC00FF", "#CC3300", "#CC3333", "#CC3366", "#CC3399", "#CC33CC", "#CC33FF", "#CC6600", "#CC6633", "#CC9900", "#CC9933", "#CCCC00", "#CCCC33", "#FF0000", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FF00FF", "#FF3300", "#FF3333", "#FF3366", "#FF3399", "#FF33CC", "#FF33FF", "#FF6600", "#FF6633", "#FF9900", "#FF9933", "#FFCC00", "#FFCC33"]; - function useColors() { - if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) { - return true; + exports2.createGitResolver = createGitResolver; + function resolveVTags(vTags, range) { + return semver_12.default.maxSatisfying(vTags, range, true); + } + async function getRepoRefs(repo, ref) { + const gitArgs = [repo]; + if (ref !== "HEAD") { + gitArgs.unshift("--refs"); } - if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { - return false; + if (ref) { + gitArgs.push(ref); } - return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + const result2 = await (0, graceful_git_1.default)(["ls-remote", ...gitArgs], { retries: 1 }); + const refs = result2.stdout.split("\n").reduce((obj, line) => { + const [commit, refName] = line.split(" "); + obj[refName] = commit; + return obj; + }, {}); + return refs; } - function formatArgs(args2) { - args2[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args2[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff); - if (!this.useColors) { - return; + async function resolveRef(repo, ref, range) { + if (ref.match(/^[0-9a-f]{7,40}$/) != null) { + return ref; } - var c = "color: " + this.color; - args2.splice(1, 0, c, "color: inherit"); - var index = 0; - var lastC = 0; - args2[0].replace(/%[a-zA-Z%]/g, function(match) { - if (match === "%%") { - return; - } - index++; - if (match === "%c") { - lastC = index; - } - }); - args2.splice(lastC, 0, c); - } - function log2() { - var _console; - return (typeof console === "undefined" ? "undefined" : _typeof(console)) === "object" && console.log && (_console = console).log.apply(_console, arguments); + const refs = await getRepoRefs(repo, range ? null : ref); + return resolveRefFromRefs(refs, repo, ref, range); } - function save(namespaces) { - try { - if (namespaces) { - exports2.storage.setItem("debug", namespaces); - } else { - exports2.storage.removeItem("debug"); + function resolveRefFromRefs(refs, repo, ref, range) { + if (!range) { + const commitId = refs[ref] || refs[`refs/${ref}`] || refs[`refs/tags/${ref}^{}`] || // prefer annotated tags + refs[`refs/tags/${ref}`] || refs[`refs/heads/${ref}`]; + if (!commitId) { + throw new Error(`Could not resolve ${ref} to a commit of ${repo}.`); } - } catch (error) { - } - } - function load() { - var r; - try { - r = exports2.storage.getItem("debug"); - } catch (error) { - } - if (!r && typeof process !== "undefined" && "env" in process) { - r = process.env.DEBUG; + return commitId; + } else { + const vTags = Object.keys(refs).filter((key) => /^refs\/tags\/v?(\d+\.\d+\.\d+(?:[-+].+)?)(\^{})?$/.test(key)).map((key) => { + return key.replace(/^refs\/tags\//, "").replace(/\^{}$/, ""); + }).filter((key) => semver_12.default.valid(key, true)); + const refVTag = resolveVTags(vTags, range); + const commitId = refVTag && (refs[`refs/tags/${refVTag}^{}`] || // prefer annotated tags + refs[`refs/tags/${refVTag}`]); + if (!commitId) { + throw new Error(`Could not resolve ${range} to a commit of ${repo}. Available versions are: ${vTags.join(", ")}`); + } + return commitId; } - return r; } - function localstorage() { - try { - return localStorage; - } catch (error) { - } + function isSsh(gitSpec) { + return gitSpec.slice(0, 10) === "git+ssh://" || gitSpec.slice(0, 4) === "git@"; } - module2.exports = require_common5()(exports2); - var formatters = module2.exports.formatters; - formatters.j = function(v) { - try { - return JSON.stringify(v); - } catch (error) { - return "[UnexpectedJSONParseError]: " + error.message; - } - }; } }); -// ../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/node.js -var require_node3 = __commonJS({ - "../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/node.js"(exports2, module2) { +// ../resolving/local-resolver/lib/parsePref.js +var require_parsePref2 = __commonJS({ + "../resolving/local-resolver/lib/parsePref.js"(exports2) { "use strict"; - var tty = require("tty"); - var util = require("util"); - exports2.init = init; - exports2.log = log2; - exports2.formatArgs = formatArgs; - exports2.save = save; - exports2.load = load; - exports2.useColors = useColors; - exports2.colors = [6, 2, 3, 4, 5, 1]; - try { - supportsColor = require("supports-color"); - if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { - exports2.colors = [20, 21, 26, 27, 32, 33, 38, 39, 40, 41, 42, 43, 44, 45, 56, 57, 62, 63, 68, 69, 74, 75, 76, 77, 78, 79, 80, 81, 92, 93, 98, 99, 112, 113, 128, 129, 134, 135, 148, 149, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 178, 179, 184, 185, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 214, 215, 220, 221]; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parsePref = void 0; + var os_1 = __importDefault4(require("os")); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var isWindows = process.platform === "win32" || global["FAKE_WINDOWS"]; + var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; + var isFilename = /[.](?:tgz|tar.gz|tar)$/i; + var isAbsolutePath = /^[/]|^[A-Za-z]:/; + function parsePref(wd, projectDir, lockfileDir) { + if (wd.pref.startsWith("link:") || wd.pref.startsWith("workspace:")) { + return fromLocal(wd, projectDir, lockfileDir, "directory"); } - } catch (error) { + if (wd.pref.endsWith(".tgz") || wd.pref.endsWith(".tar.gz") || wd.pref.endsWith(".tar") || wd.pref.includes(path_1.default.sep) || wd.pref.startsWith("file:") || isFilespec.test(wd.pref)) { + const type = isFilename.test(wd.pref) ? "file" : "directory"; + return fromLocal(wd, projectDir, lockfileDir, type); + } + if (wd.pref.startsWith("path:")) { + const err = new error_1.PnpmError("PATH_IS_UNSUPPORTED_PROTOCOL", "Local dependencies via `path:` protocol are not supported. Use the `link:` protocol for folder dependencies and `file:` for local tarballs"); + err["pref"] = wd.pref; + err["protocol"] = "path:"; + throw err; + } + return null; } - var supportsColor; - exports2.inspectOpts = Object.keys(process.env).filter(function(key) { - return /^debug_/i.test(key); - }).reduce(function(obj, key) { - var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_, k) { - return k.toUpperCase(); - }); - var val = process.env[key]; - if (/^(yes|on|true|enabled)$/i.test(val)) { - val = true; - } else if (/^(no|off|false|disabled)$/i.test(val)) { - val = false; - } else if (val === "null") { - val = null; + exports2.parsePref = parsePref; + function fromLocal({ pref, injected }, projectDir, lockfileDir, type) { + const spec = pref.replace(/\\/g, "/").replace(/^(file|link|workspace):[/]*([A-Za-z]:)/, "$2").replace(/^(file|link|workspace):(?:[/]*([~./]))?/, "$2"); + let protocol; + if (pref.startsWith("file:")) { + protocol = "file:"; + } else if (pref.startsWith("link:")) { + protocol = "link:"; } else { - val = Number(val); + protocol = type === "directory" && !injected ? "link:" : "file:"; } - obj[prop] = val; - return obj; - }, {}); - function useColors() { - return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(process.stderr.fd); - } - function formatArgs(args2) { - var name = this.namespace, useColors2 = this.useColors; - if (useColors2) { - var c = this.color; - var colorCode = "[3" + (c < 8 ? c : "8;5;" + c); - var prefix = " ".concat(colorCode, ";1m").concat(name, " "); - args2[0] = prefix + args2[0].split("\n").join("\n" + prefix); - args2.push(colorCode + "m+" + module2.exports.humanize(this.diff) + ""); + let fetchSpec; + let normalizedPref; + if (/^~[/]/.test(spec)) { + fetchSpec = resolvePath(os_1.default.homedir(), spec.slice(2)); + normalizedPref = `${protocol}${spec}`; } else { - args2[0] = getDate() + name + " " + args2[0]; + fetchSpec = resolvePath(projectDir, spec); + if (isAbsolute(spec)) { + normalizedPref = `${protocol}${spec}`; + } else { + normalizedPref = `${protocol}${path_1.default.relative(projectDir, fetchSpec)}`; + } } + injected = protocol === "file:"; + const dependencyPath = injected ? (0, normalize_path_1.default)(path_1.default.relative(lockfileDir, fetchSpec)) : (0, normalize_path_1.default)(path_1.default.resolve(fetchSpec)); + const id = !injected && (type === "directory" || projectDir === lockfileDir) ? `${protocol}${(0, normalize_path_1.default)(path_1.default.relative(projectDir, fetchSpec))}` : `${protocol}${(0, normalize_path_1.default)(path_1.default.relative(lockfileDir, fetchSpec))}`; + return { + dependencyPath, + fetchSpec, + id, + normalizedPref, + type + }; } - function getDate() { - if (exports2.inspectOpts.hideDate) { - return ""; - } - return new Date().toISOString() + " "; + function resolvePath(where, spec) { + if (isAbsolutePath.test(spec)) + return spec; + return path_1.default.resolve(where, spec); } - function log2() { - return process.stderr.write(util.format.apply(util, arguments) + "\n"); + function isAbsolute(dir) { + if (dir[0] === "/") + return true; + if (/^[A-Za-z]:/.test(dir)) + return true; + return false; } - function save(namespaces) { - if (namespaces) { - process.env.DEBUG = namespaces; - } else { - delete process.env.DEBUG; + } +}); + +// ../resolving/local-resolver/lib/index.js +var require_lib70 = __commonJS({ + "../resolving/local-resolver/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveFromLocal = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var graceful_fs_1 = __importDefault4(require_lib15()); + var read_project_manifest_1 = require_lib16(); + var ssri_1 = __importDefault4(require_lib44()); + var parsePref_1 = require_parsePref2(); + async function resolveFromLocal(wantedDependency, opts) { + const spec = (0, parsePref_1.parsePref)(wantedDependency, opts.projectDir, opts.lockfileDir ?? opts.projectDir); + if (spec == null) + return null; + if (spec.type === "file") { + return { + id: spec.id, + normalizedPref: spec.normalizedPref, + resolution: { + integrity: await getFileIntegrity(spec.fetchSpec), + tarball: spec.id + }, + resolvedVia: "local-filesystem" + }; + } + let localDependencyManifest; + try { + localDependencyManifest = await (0, read_project_manifest_1.readProjectManifestOnly)(spec.fetchSpec); + } catch (internalErr) { + if (!(0, fs_1.existsSync)(spec.fetchSpec)) { + if (spec.id.startsWith("file:")) { + throw new error_1.PnpmError("LINKED_PKG_DIR_NOT_FOUND", `Could not install from "${spec.fetchSpec}" as it does not exist.`); + } + localDependencyManifest = { + name: path_1.default.basename(spec.fetchSpec), + version: "0.0.0" + }; + } else { + switch (internalErr.code) { + case "ENOTDIR": { + throw new error_1.PnpmError("NOT_PACKAGE_DIRECTORY", `Could not install from "${spec.fetchSpec}" as it is not a directory.`); + } + case "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND": + case "ENOENT": { + localDependencyManifest = { + name: path_1.default.basename(spec.fetchSpec), + version: "0.0.0" + }; + break; + } + default: { + throw internalErr; + } + } + } } + return { + id: spec.id, + manifest: localDependencyManifest, + normalizedPref: spec.normalizedPref, + resolution: { + directory: spec.dependencyPath, + type: "directory" + }, + resolvedVia: "local-filesystem" + }; } - function load() { - return process.env.DEBUG; + exports2.resolveFromLocal = resolveFromLocal; + async function getFileIntegrity(filename) { + return (await ssri_1.default.fromStream(graceful_fs_1.default.createReadStream(filename))).toString(); } - function init(debug) { - debug.inspectOpts = {}; - var keys = Object.keys(exports2.inspectOpts); - for (var i = 0; i < keys.length; i++) { - debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; + } +}); + +// ../node_modules/.pnpm/mem@6.1.1/node_modules/mem/index.js +var require_mem = __commonJS({ + "../node_modules/.pnpm/mem@6.1.1/node_modules/mem/index.js"(exports2, module2) { + "use strict"; + var mimicFn = require_mimic_fn2(); + var mapAgeCleaner = require_dist3(); + var cacheStore = /* @__PURE__ */ new WeakMap(); + var mem = (fn2, { + cacheKey, + cache = /* @__PURE__ */ new Map(), + maxAge + } = {}) => { + if (typeof maxAge === "number") { + mapAgeCleaner(cache); } - } - module2.exports = require_common5()(exports2); - var formatters = module2.exports.formatters; - formatters.o = function(v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts).split("\n").map(function(str) { - return str.trim(); - }).join(" "); + const memoized = function(...arguments_) { + const key = cacheKey ? cacheKey(arguments_) : arguments_[0]; + const cacheItem = cache.get(key); + if (cacheItem) { + return cacheItem.data; + } + const result2 = fn2.apply(this, arguments_); + cache.set(key, { + data: result2, + maxAge: maxAge ? Date.now() + maxAge : Infinity + }); + return result2; + }; + try { + mimicFn(memoized, fn2); + } catch (_) { + } + cacheStore.set(memoized, cache); + return memoized; }; - formatters.O = function(v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts); + module2.exports = mem; + module2.exports.clear = (fn2) => { + if (!cacheStore.has(fn2)) { + throw new Error("Can't clear a function that was not memoized!"); + } + const cache = cacheStore.get(fn2); + if (typeof cache.clear === "function") { + cache.clear(); + } }; } }); -// ../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/index.js -var require_src4 = __commonJS({ - "../../node_modules/.pnpm/debug@3.2.7/node_modules/debug/src/index.js"(exports2, module2) { +// ../node_modules/.pnpm/p-memoize@4.0.1/node_modules/p-memoize/index.js +var require_p_memoize = __commonJS({ + "../node_modules/.pnpm/p-memoize@4.0.1/node_modules/p-memoize/index.js"(exports2, module2) { "use strict"; - if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { - module2.exports = require_browser2(); - } else { - module2.exports = require_node3(); + var mem = require_mem(); + var mimicFn = require_mimic_fn2(); + var memoizedFunctions = /* @__PURE__ */ new WeakMap(); + var pMemoize = (fn2, { cachePromiseRejection = false, ...options } = {}) => { + const cache = options.cache || /* @__PURE__ */ new Map(); + const cacheKey = options.cacheKey || (([firstArgument]) => firstArgument); + const memoized = mem(fn2, { + ...options, + cache, + cacheKey + }); + const memoizedAdapter = function(...arguments_) { + const cacheItem = memoized.apply(this, arguments_); + if (!cachePromiseRejection && cacheItem && cacheItem.catch) { + cacheItem.catch(() => { + cache.delete(cacheKey(arguments_)); + }); + } + return cacheItem; + }; + mimicFn(memoizedAdapter, fn2); + memoizedFunctions.set(memoizedAdapter, memoized); + return memoizedAdapter; + }; + module2.exports = pMemoize; + module2.exports.clear = (memoized) => { + if (!memoizedFunctions.has(memoized)) { + throw new Error("Can't clear a function that was not memoized!"); + } + mem.clear(memoizedFunctions.get(memoized)); + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_cloneRegExp.js +var require_cloneRegExp = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_cloneRegExp.js"(exports2, module2) { + function _cloneRegExp(pattern) { + return new RegExp(pattern.source, (pattern.global ? "g" : "") + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : "") + (pattern.sticky ? "y" : "") + (pattern.unicode ? "u" : "")); } + module2.exports = _cloneRegExp; } }); -// ../../node_modules/.pnpm/https-proxy-agent@3.0.1/node_modules/https-proxy-agent/index.js -var require_https_proxy_agent = __commonJS({ - "../../node_modules/.pnpm/https-proxy-agent@3.0.1/node_modules/https-proxy-agent/index.js"(exports2, module2) { - var net = require("net"); - var tls = require("tls"); - var url = require("url"); - var assert = require("assert"); - var Agent = require_agent_base(); - var inherits = require("util").inherits; - var debug = require_src4()("https-proxy-agent"); - module2.exports = HttpsProxyAgent; - function HttpsProxyAgent(opts) { - if (!(this instanceof HttpsProxyAgent)) - return new HttpsProxyAgent(opts); - if (typeof opts == "string") - opts = url.parse(opts); - if (!opts) - throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); - debug("creating new HttpsProxyAgent instance: %o", opts); - Agent.call(this, opts); - var proxy = Object.assign({}, opts); - this.secureProxy = proxy.protocol ? /^https:?$/i.test(proxy.protocol) : false; - proxy.host = proxy.hostname || proxy.host; - proxy.port = +proxy.port || (this.secureProxy ? 443 : 80); - if (this.secureProxy && !("ALPNProtocols" in proxy)) { - proxy.ALPNProtocols = ["http 1.1"]; - } - if (proxy.host && proxy.path) { - delete proxy.path; - delete proxy.pathname; - } - this.proxy = proxy; - this.defaultPort = 443; - } - inherits(HttpsProxyAgent, Agent); - HttpsProxyAgent.prototype.callback = function connect(req, opts, fn2) { - var proxy = this.proxy; - var socket; - if (this.secureProxy) { - socket = tls.connect(proxy); - } else { - socket = net.connect(proxy); - } - var buffers = []; - var buffersLength = 0; - function read() { - var b = socket.read(); - if (b) - ondata(b); - else - socket.once("readable", read); - } - function cleanup() { - socket.removeListener("end", onend); - socket.removeListener("error", onerror); - socket.removeListener("close", onclose); - socket.removeListener("readable", read); - } - function onclose(err) { - debug("onclose had error %o", err); - } - function onend() { - debug("onend"); - } - function onerror(err) { - cleanup(); - fn2(err); - } - function ondata(b) { - buffers.push(b); - buffersLength += b.length; - var buffered = Buffer.concat(buffers, buffersLength); - var str = buffered.toString("ascii"); - if (!~str.indexOf("\r\n\r\n")) { - debug("have not received end of HTTP headers yet..."); - read(); - return; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_clone.js +var require_clone3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_clone.js"(exports2, module2) { + var _cloneRegExp = require_cloneRegExp(); + var type = require_type2(); + function _clone(value, refFrom, refTo, deep) { + var copy = function copy2(copiedValue) { + var len = refFrom.length; + var idx = 0; + while (idx < len) { + if (value === refFrom[idx]) { + return refTo[idx]; + } + idx += 1; } - var firstLine = str.substring(0, str.indexOf("\r\n")); - var statusCode = +firstLine.split(" ")[1]; - debug("got proxy server response: %o", firstLine); - if (statusCode == 200) { - var sock = socket; - buffers = buffered = null; - if (opts.secureEndpoint) { - debug("upgrading proxy-connected socket to TLS connection: %o", opts.host); - opts.socket = socket; - opts.servername = opts.servername || opts.host; - opts.host = null; - opts.hostname = null; - opts.port = null; - sock = tls.connect(opts); + refFrom[idx] = value; + refTo[idx] = copiedValue; + for (var key in value) { + if (value.hasOwnProperty(key)) { + copiedValue[key] = deep ? _clone(value[key], refFrom, refTo, true) : value[key]; } - cleanup(); - req.once("socket", resume); - fn2(null, sock); - } else { - cleanup(); - socket.destroy(); - socket = new net.Socket(); - socket.readable = true; - buffers = buffered; - req.once("socket", onsocket); - fn2(null, socket); - } - } - function onsocket(socket2) { - debug("replaying proxy buffer for failed request"); - assert(socket2.listenerCount("data") > 0); - socket2.push(buffers); - buffers = null; - } - socket.on("error", onerror); - socket.on("close", onclose); - socket.on("end", onend); - read(); - var hostname = opts.host + ":" + opts.port; - var msg = "CONNECT " + hostname + " HTTP/1.1\r\n"; - var headers = Object.assign({}, proxy.headers); - if (proxy.auth) { - headers["Proxy-Authorization"] = "Basic " + Buffer.from(proxy.auth).toString("base64"); - } - var host = opts.host; - if (!isDefaultPort(opts.port, opts.secureEndpoint)) { - host += ":" + opts.port; - } - headers["Host"] = host; - headers["Connection"] = "close"; - Object.keys(headers).forEach(function(name) { - msg += name + ": " + headers[name] + "\r\n"; - }); - socket.write(msg + "\r\n"); - }; - function resume(socket) { - socket.resume(); + } + return copiedValue; + }; + switch (type(value)) { + case "Object": + return copy(Object.create(Object.getPrototypeOf(value))); + case "Array": + return copy([]); + case "Date": + return new Date(value.valueOf()); + case "RegExp": + return _cloneRegExp(value); + case "Int8Array": + case "Uint8Array": + case "Uint8ClampedArray": + case "Int16Array": + case "Uint16Array": + case "Int32Array": + case "Uint32Array": + case "Float32Array": + case "Float64Array": + case "BigInt64Array": + case "BigUint64Array": + return value.slice(); + default: + return value; + } } - function isDefaultPort(port, secure) { - return Boolean(!secure && port === 80 || secure && port === 443); + module2.exports = _clone; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/clone.js +var require_clone4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/clone.js"(exports2, module2) { + var _clone = require_clone3(); + var _curry1 = require_curry1(); + var clone = /* @__PURE__ */ _curry1(function clone2(value) { + return value != null && typeof value.clone === "function" ? value.clone() : _clone(value, [], [], true); + }); + module2.exports = clone; + } +}); + +// ../node_modules/.pnpm/encode-registry@3.0.0/node_modules/encode-registry/index.js +var require_encode_registry = __commonJS({ + "../node_modules/.pnpm/encode-registry@3.0.0/node_modules/encode-registry/index.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var { URL: URL3 } = require("url"); + var mem = require_dist4(); + module2.exports = mem(encodeRegistry); + function encodeRegistry(registry) { + assert(registry, "`registry` is required"); + assert(typeof registry === "string", "`registry` should be a string"); + const host = getHost(registry); + return escapeHost(host); + } + function escapeHost(host) { + return host.replace(":", "+"); + } + function getHost(rawUrl) { + const urlObj = new URL3(rawUrl); + if (!urlObj || !urlObj.host) { + throw new Error(`Couldn't get host from ${rawUrl}`); + } + return urlObj.host; + } + } +}); + +// ../resolving/npm-resolver/lib/toRaw.js +var require_toRaw = __commonJS({ + "../resolving/npm-resolver/lib/toRaw.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toRaw = void 0; + function toRaw(spec) { + return `${spec.name}@${spec.fetchSpec}`; } + exports2.toRaw = toRaw; } }); -// ../../node_modules/.pnpm/ip@1.1.5/node_modules/ip/lib/ip.js -var require_ip = __commonJS({ - "../../node_modules/.pnpm/ip@1.1.5/node_modules/ip/lib/ip.js"(exports2) { +// ../resolving/npm-resolver/lib/pickPackageFromMeta.js +var require_pickPackageFromMeta = __commonJS({ + "../resolving/npm-resolver/lib/pickPackageFromMeta.js"(exports2) { "use strict"; - var ip = exports2; - var Buffer2 = require("buffer").Buffer; - var os = require("os"); - ip.toBuffer = function(ip2, buff, offset) { - offset = ~~offset; - var result; - if (this.isV4Format(ip2)) { - result = buff || new Buffer2(offset + 4); - ip2.split(/\./g).map(function(byte) { - result[offset++] = parseInt(byte, 10) & 255; - }); - } else if (this.isV6Format(ip2)) { - var sections = ip2.split(":", 8); - var i; - for (i = 0; i < sections.length; i++) { - var isv4 = this.isV4Format(sections[i]); - var v4Buffer; - if (isv4) { - v4Buffer = this.toBuffer(sections[i]); - sections[i] = v4Buffer.slice(0, 2).toString("hex"); - } - if (v4Buffer && ++i < 8) { - sections.splice(i, 0, v4Buffer.slice(2, 4).toString("hex")); - } - } - if (sections[0] === "") { - while (sections.length < 8) - sections.unshift("0"); - } else if (sections[sections.length - 1] === "") { - while (sections.length < 8) - sections.push("0"); - } else if (sections.length < 8) { - for (i = 0; i < sections.length && sections[i] !== ""; i++) - ; - var argv2 = [i, 1]; - for (i = 9 - sections.length; i > 0; i--) { - argv2.push("0"); - } - sections.splice.apply(sections, argv2); - } - result = buff || new Buffer2(offset + 16); - for (i = 0; i < sections.length; i++) { - var word = parseInt(sections[i], 16); - result[offset++] = word >> 8 & 255; - result[offset++] = word & 255; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pickVersionByVersionRange = exports2.pickLowestVersionByVersionRange = exports2.pickPackageFromMeta = void 0; + var error_1 = require_lib8(); + var semver_12 = __importDefault4(require_semver2()); + function pickPackageFromMeta(pickVersionByVersionRangeFn, spec, preferredVersionSelectors, meta, publishedBy) { + if ((!meta.versions || Object.keys(meta.versions).length === 0) && !publishedBy) { + if (meta.time?.unpublished?.versions?.length) { + throw new error_1.PnpmError("UNPUBLISHED_PKG", `No versions available for ${spec.name} because it was unpublished`); } + throw new error_1.PnpmError("NO_VERSIONS", `No versions available for ${spec.name}. The package may be unpublished.`); } - if (!result) { - throw Error("Invalid ip address: " + ip2); - } - return result; - }; - ip.toString = function(buff, offset, length) { - offset = ~~offset; - length = length || buff.length - offset; - var result = []; - if (length === 4) { - for (var i = 0; i < length; i++) { - result.push(buff[offset + i]); + try { + let version2; + switch (spec.type) { + case "version": + version2 = spec.fetchSpec; + break; + case "tag": + version2 = meta["dist-tags"][spec.fetchSpec]; + break; + case "range": + version2 = pickVersionByVersionRangeFn(meta, spec.fetchSpec, preferredVersionSelectors, publishedBy); + break; } - result = result.join("."); - } else if (length === 16) { - for (var i = 0; i < length; i += 2) { - result.push(buff.readUInt16BE(offset + i).toString(16)); + if (!version2) + return null; + const manifest = meta.versions[version2]; + if (manifest && meta["name"]) { + manifest.name = meta["name"]; } - result = result.join(":"); - result = result.replace(/(^|:)0(:0)*:0(:|$)/, "$1::$3"); - result = result.replace(/:{3,4}/, "::"); + return manifest; + } catch (err) { + throw new error_1.PnpmError("MALFORMED_METADATA", `Received malformed metadata for "${spec.name}"`, { hint: "This might mean that the package was unpublished from the registry" }); } - return result; - }; - var ipv4Regex = /^(\d{1,3}\.){3,3}\d{1,3}$/; - var ipv6Regex = /^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i; - ip.isV4Format = function(ip2) { - return ipv4Regex.test(ip2); - }; - ip.isV6Format = function(ip2) { - return ipv6Regex.test(ip2); - }; - function _normalizeFamily(family) { - return family ? family.toLowerCase() : "ipv4"; } - ip.fromPrefixLen = function(prefixlen, family) { - if (prefixlen > 32) { - family = "ipv6"; - } else { - family = _normalizeFamily(family); - } - var len = 4; - if (family === "ipv6") { - len = 16; - } - var buff = new Buffer2(len); - for (var i = 0, n = buff.length; i < n; ++i) { - var bits = 8; - if (prefixlen < 8) { - bits = prefixlen; + exports2.pickPackageFromMeta = pickPackageFromMeta; + var semverRangeCache = /* @__PURE__ */ new Map(); + function semverSatisfiesLoose(version2, range) { + let semverRange = semverRangeCache.get(range); + if (semverRange === void 0) { + try { + semverRange = new semver_12.default.Range(range, true); + } catch { + semverRange = null; } - prefixlen -= bits; - buff[i] = ~(255 >> bits) & 255; + semverRangeCache.set(range, semverRange); } - return ip.toString(buff); - }; - ip.mask = function(addr, mask) { - addr = ip.toBuffer(addr); - mask = ip.toBuffer(mask); - var result = new Buffer2(Math.max(addr.length, mask.length)); - var i = 0; - if (addr.length === mask.length) { - for (i = 0; i < addr.length; i++) { - result[i] = addr[i] & mask[i]; - } - } else if (mask.length === 4) { - for (i = 0; i < mask.length; i++) { - result[i] = addr[addr.length - 4 + i] & mask[i]; - } - } else { - for (var i = 0; i < result.length - 6; i++) { - result[i] = 0; - } - result[10] = 255; - result[11] = 255; - for (i = 0; i < addr.length; i++) { - result[i + 12] = addr[i] & mask[i + 12]; + if (semverRange) { + try { + return semverRange.test(new semver_12.default.SemVer(version2, true)); + } catch { + return false; } - i = i + 12; } - for (; i < result.length; i++) - result[i] = 0; - return ip.toString(result); - }; - ip.cidr = function(cidrString) { - var cidrParts = cidrString.split("/"); - var addr = cidrParts[0]; - if (cidrParts.length !== 2) - throw new Error("invalid CIDR subnet: " + addr); - var mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); - return ip.mask(addr, mask); - }; - ip.subnet = function(addr, mask) { - var networkAddress = ip.toLong(ip.mask(addr, mask)); - var maskBuffer = ip.toBuffer(mask); - var maskLength = 0; - for (var i = 0; i < maskBuffer.length; i++) { - if (maskBuffer[i] === 255) { - maskLength += 8; - } else { - var octet = maskBuffer[i] & 255; - while (octet) { - octet = octet << 1 & 255; - maskLength++; + return false; + } + function pickLowestVersionByVersionRange(meta, versionRange, preferredVerSels) { + if (preferredVerSels != null && Object.keys(preferredVerSels).length > 0) { + const prioritizedPreferredVersions = prioritizePreferredVersions(meta, versionRange, preferredVerSels); + for (const preferredVersions of prioritizedPreferredVersions) { + const preferredVersion = semver_12.default.minSatisfying(preferredVersions, versionRange, true); + if (preferredVersion) { + return preferredVersion; } } } - var numberOfAddresses = Math.pow(2, 32 - maskLength); - return { - networkAddress: ip.fromLong(networkAddress), - firstAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress) : ip.fromLong(networkAddress + 1), - lastAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress + numberOfAddresses - 1) : ip.fromLong(networkAddress + numberOfAddresses - 2), - broadcastAddress: ip.fromLong(networkAddress + numberOfAddresses - 1), - subnetMask: mask, - subnetMaskLength: maskLength, - numHosts: numberOfAddresses <= 2 ? numberOfAddresses : numberOfAddresses - 2, - length: numberOfAddresses, - contains: function(other) { - return networkAddress === ip.toLong(ip.mask(other, mask)); - } - }; - }; - ip.cidrSubnet = function(cidrString) { - var cidrParts = cidrString.split("/"); - var addr = cidrParts[0]; - if (cidrParts.length !== 2) - throw new Error("invalid CIDR subnet: " + addr); - var mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); - return ip.subnet(addr, mask); - }; - ip.not = function(addr) { - var buff = ip.toBuffer(addr); - for (var i = 0; i < buff.length; i++) { - buff[i] = 255 ^ buff[i]; + if (versionRange === "*") { + return Object.keys(meta.versions).sort(semver_12.default.compare)[0]; } - return ip.toString(buff); - }; - ip.or = function(a, b) { - a = ip.toBuffer(a); - b = ip.toBuffer(b); - if (a.length === b.length) { - for (var i = 0; i < a.length; ++i) { - a[i] |= b[i]; - } - return ip.toString(a); - } else { - var buff = a; - var other = b; - if (b.length > a.length) { - buff = b; - other = a; - } - var offset = buff.length - other.length; - for (var i = offset; i < buff.length; ++i) { - buff[i] |= other[i - offset]; + return semver_12.default.minSatisfying(Object.keys(meta.versions), versionRange, true); + } + exports2.pickLowestVersionByVersionRange = pickLowestVersionByVersionRange; + function pickVersionByVersionRange(meta, versionRange, preferredVerSels, publishedBy) { + let latest = meta["dist-tags"].latest; + if (preferredVerSels != null && Object.keys(preferredVerSels).length > 0) { + const prioritizedPreferredVersions = prioritizePreferredVersions(meta, versionRange, preferredVerSels); + for (const preferredVersions of prioritizedPreferredVersions) { + if (preferredVersions.includes(latest) && semverSatisfiesLoose(latest, versionRange)) { + return latest; + } + const preferredVersion = semver_12.default.maxSatisfying(preferredVersions, versionRange, true); + if (preferredVersion) { + return preferredVersion; + } } - return ip.toString(buff); } - }; - ip.isEqual = function(a, b) { - a = ip.toBuffer(a); - b = ip.toBuffer(b); - if (a.length === b.length) { - for (var i = 0; i < a.length; i++) { - if (a[i] !== b[i]) - return false; + let versions = Object.keys(meta.versions); + if (publishedBy) { + versions = versions.filter((version2) => new Date(meta.time[version2]) <= publishedBy); + if (!versions.includes(latest)) { + latest = void 0; } - return true; } - if (b.length === 4) { - var t = b; - b = a; - a = t; + if (latest && (versionRange === "*" || semverSatisfiesLoose(latest, versionRange))) { + return latest; } - for (var i = 0; i < 10; i++) { - if (b[i] !== 0) - return false; + const maxVersion = semver_12.default.maxSatisfying(versions, versionRange, true); + if (maxVersion && meta.versions[maxVersion].deprecated && versions.length > 1) { + const nonDeprecatedVersions = versions.map((version2) => meta.versions[version2]).filter((versionMeta) => !versionMeta.deprecated).map((versionMeta) => versionMeta.version); + const maxNonDeprecatedVersion = semver_12.default.maxSatisfying(nonDeprecatedVersions, versionRange, true); + if (maxNonDeprecatedVersion) + return maxNonDeprecatedVersion; } - var word = b.readUInt16BE(10); - if (word !== 0 && word !== 65535) - return false; - for (var i = 0; i < 4; i++) { - if (a[i] !== b[i + 12]) - return false; + return maxVersion; + } + exports2.pickVersionByVersionRange = pickVersionByVersionRange; + function prioritizePreferredVersions(meta, versionRange, preferredVerSels) { + const preferredVerSelsArr = Object.entries(preferredVerSels ?? {}); + const versionsPrioritizer = new PreferredVersionsPrioritizer(); + for (const [preferredSelector, preferredSelectorType] of preferredVerSelsArr) { + const { selectorType, weight } = typeof preferredSelectorType === "string" ? { selectorType: preferredSelectorType, weight: 1 } : preferredSelectorType; + if (preferredSelector === versionRange) + continue; + switch (selectorType) { + case "tag": { + versionsPrioritizer.add(meta["dist-tags"][preferredSelector], weight); + break; + } + case "range": { + const versions = Object.keys(meta.versions); + for (const version2 of versions) { + if (semverSatisfiesLoose(version2, preferredSelector)) { + versionsPrioritizer.add(version2, weight); + } + } + break; + } + case "version": { + if (meta.versions[preferredSelector]) { + versionsPrioritizer.add(preferredSelector, weight); + } + break; + } + } } - return true; - }; - ip.isPrivate = function(addr) { - return /^(::f{4}:)?10\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?192\.168\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?172\.(1[6-9]|2\d|30|31)\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^(::f{4}:)?169\.254\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) || /^f[cd][0-9a-f]{2}:/i.test(addr) || /^fe80:/i.test(addr) || /^::1$/.test(addr) || /^::$/.test(addr); - }; - ip.isPublic = function(addr) { - return !ip.isPrivate(addr); - }; - ip.isLoopback = function(addr) { - return /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/.test(addr) || /^fe80::1$/.test(addr) || /^::1$/.test(addr) || /^::$/.test(addr); - }; - ip.loopback = function(family) { - family = _normalizeFamily(family); - if (family !== "ipv4" && family !== "ipv6") { - throw new Error("family must be ipv4 or ipv6"); + return versionsPrioritizer.versionsByPriority(); + } + var PreferredVersionsPrioritizer = class { + constructor() { + this.preferredVersions = {}; } - return family === "ipv4" ? "127.0.0.1" : "fe80::1"; - }; - ip.address = function(name, family) { - var interfaces = os.networkInterfaces(); - var all; - family = _normalizeFamily(family); - if (name && name !== "private" && name !== "public") { - var res = interfaces[name].filter(function(details) { - var itemFamily = details.family.toLowerCase(); - return itemFamily === family; - }); - if (res.length === 0) - return void 0; - return res[0].address; + add(version2, weight) { + if (!this.preferredVersions[version2]) { + this.preferredVersions[version2] = weight; + } else { + this.preferredVersions[version2] += weight; + } + } + versionsByPriority() { + const versionsByWeight = Object.entries(this.preferredVersions).reduce((acc, [version2, weight]) => { + acc[weight] = acc[weight] ?? []; + acc[weight].push(version2); + return acc; + }, {}); + return Object.keys(versionsByWeight).sort((a, b) => parseInt(b, 10) - parseInt(a, 10)).map((weigth) => versionsByWeight[parseInt(weigth, 10)]); } - var all = Object.keys(interfaces).map(function(nic) { - var addresses = interfaces[nic].filter(function(details) { - details.family = details.family.toLowerCase(); - if (details.family !== family || ip.isLoopback(details.address)) { - return false; - } else if (!name) { - return true; - } - return name === "public" ? ip.isPrivate(details.address) : ip.isPublic(details.address); - }); - return addresses.length ? addresses[0].address : void 0; - }).filter(Boolean); - return !all.length ? ip.loopback(family) : all[0]; - }; - ip.toLong = function(ip2) { - var ipl = 0; - ip2.split(".").forEach(function(octet) { - ipl <<= 8; - ipl += parseInt(octet); - }); - return ipl >>> 0; - }; - ip.fromLong = function(ipl) { - return (ipl >>> 24) + "." + (ipl >> 16 & 255) + "." + (ipl >> 8 & 255) + "." + (ipl & 255); }; } }); -// ../../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js -var require_utils7 = __commonJS({ - "../../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js"(exports2) { +// ../resolving/npm-resolver/lib/pickPackage.js +var require_pickPackage = __commonJS({ + "../resolving/npm-resolver/lib/pickPackage.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var buffer_1 = require("buffer"); - var ERRORS = { - INVALID_ENCODING: "Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.", - INVALID_SMARTBUFFER_SIZE: "Invalid size provided. Size must be a valid integer greater than zero.", - INVALID_SMARTBUFFER_BUFFER: "Invalid Buffer provided in SmartBufferOptions.", - INVALID_SMARTBUFFER_OBJECT: "Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.", - INVALID_OFFSET: "An invalid offset value was provided.", - INVALID_OFFSET_NON_NUMBER: "An invalid offset value was provided. A numeric value is required.", - INVALID_LENGTH: "An invalid length value was provided.", - INVALID_LENGTH_NON_NUMBER: "An invalid length value was provived. A numeric value is required.", - INVALID_TARGET_OFFSET: "Target offset is beyond the bounds of the internal SmartBuffer data.", - INVALID_TARGET_LENGTH: "Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.", - INVALID_READ_BEYOND_BOUNDS: "Attempted to read beyond the bounds of the managed data.", - INVALID_WRITE_BEYOND_BOUNDS: "Attempted to write beyond the bounds of the managed data." + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.ERRORS = ERRORS; - function checkEncoding(encoding) { - if (!buffer_1.Buffer.isEncoding(encoding)) { - throw new Error(ERRORS.INVALID_ENCODING); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pickPackage = void 0; + var crypto_1 = __importDefault4(require("crypto")); + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var graceful_fs_1 = __importDefault4(require_lib15()); + var encode_registry_1 = __importDefault4(require_encode_registry()); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var p_limit_12 = __importDefault4(require_p_limit()); + var path_temp_1 = __importDefault4(require_path_temp()); + var pick_1 = __importDefault4(require_pick()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + var toRaw_1 = require_toRaw(); + var pickPackageFromMeta_1 = require_pickPackageFromMeta(); + var metafileOperationLimits = {}; + async function runLimited(pkgMirror, fn2) { + let entry; + try { + entry = metafileOperationLimits[pkgMirror] ?? (metafileOperationLimits[pkgMirror] = { count: 0, limit: (0, p_limit_12.default)(1) }); + entry.count++; + return await fn2(entry.limit); + } finally { + entry.count--; + if (entry.count === 0) { + metafileOperationLimits[pkgMirror] = void 0; + } } } - exports2.checkEncoding = checkEncoding; - function isFiniteInteger(value) { - return typeof value === "number" && isFinite(value) && isInteger(value); + function pickPackageFromMetaUsingTime(spec, preferredVersionSelectors, meta, publishedBy) { + const pickedPackage = (0, pickPackageFromMeta_1.pickPackageFromMeta)(pickPackageFromMeta_1.pickVersionByVersionRange, spec, preferredVersionSelectors, meta, publishedBy); + if (pickedPackage) + return pickedPackage; + return (0, pickPackageFromMeta_1.pickPackageFromMeta)(pickPackageFromMeta_1.pickLowestVersionByVersionRange, spec, preferredVersionSelectors, meta, publishedBy); } - exports2.isFiniteInteger = isFiniteInteger; - function checkOffsetOrLengthValue(value, offset) { - if (typeof value === "number") { - if (!isFiniteInteger(value) || value < 0) { - throw new Error(offset ? ERRORS.INVALID_OFFSET : ERRORS.INVALID_LENGTH); - } - } else { - throw new Error(offset ? ERRORS.INVALID_OFFSET_NON_NUMBER : ERRORS.INVALID_LENGTH_NON_NUMBER); + async function pickPackage(ctx, spec, opts) { + opts = opts || {}; + const _pickPackageFromMeta = opts.publishedBy ? pickPackageFromMetaUsingTime : pickPackageFromMeta_1.pickPackageFromMeta.bind(null, opts.pickLowestVersion ? pickPackageFromMeta_1.pickLowestVersionByVersionRange : pickPackageFromMeta_1.pickVersionByVersionRange); + validatePackageName(spec.name); + const cachedMeta = ctx.metaCache.get(spec.name); + if (cachedMeta != null) { + return { + meta: cachedMeta, + pickedPackage: _pickPackageFromMeta(spec, opts.preferredVersionSelectors, cachedMeta, opts.publishedBy) + }; } + const registryName = (0, encode_registry_1.default)(opts.registry); + const pkgMirror = path_1.default.join(ctx.cacheDir, ctx.metaDir, registryName, `${encodePkgName(spec.name)}.json`); + return runLimited(pkgMirror, async (limit) => { + let metaCachedInStore; + if (ctx.offline === true || ctx.preferOffline === true || opts.pickLowestVersion) { + metaCachedInStore = await limit(async () => loadMeta(pkgMirror)); + if (ctx.offline) { + if (metaCachedInStore != null) + return { + meta: metaCachedInStore, + pickedPackage: _pickPackageFromMeta(spec, opts.preferredVersionSelectors, metaCachedInStore, opts.publishedBy) + }; + throw new error_1.PnpmError("NO_OFFLINE_META", `Failed to resolve ${(0, toRaw_1.toRaw)(spec)} in package mirror ${pkgMirror}`); + } + if (metaCachedInStore != null) { + const pickedPackage = _pickPackageFromMeta(spec, opts.preferredVersionSelectors, metaCachedInStore, opts.publishedBy); + if (pickedPackage) { + return { + meta: metaCachedInStore, + pickedPackage + }; + } + } + } + if (spec.type === "version") { + metaCachedInStore = metaCachedInStore ?? await limit(async () => loadMeta(pkgMirror)); + if (metaCachedInStore?.versions?.[spec.fetchSpec] != null) { + return { + meta: metaCachedInStore, + pickedPackage: metaCachedInStore.versions[spec.fetchSpec] + }; + } + } + if (opts.publishedBy) { + metaCachedInStore = metaCachedInStore ?? await limit(async () => loadMeta(pkgMirror)); + if (metaCachedInStore?.cachedAt && new Date(metaCachedInStore.cachedAt) >= opts.publishedBy) { + const pickedPackage = _pickPackageFromMeta(spec, opts.preferredVersionSelectors, metaCachedInStore, opts.publishedBy); + if (pickedPackage) { + return { + meta: metaCachedInStore, + pickedPackage + }; + } + } + } + try { + let meta = await ctx.fetch(spec.name, opts.registry, opts.authHeaderValue); + if (ctx.filterMetadata) { + meta = clearMeta(meta); + } + meta.cachedAt = Date.now(); + ctx.metaCache.set(spec.name, meta); + if (!opts.dryRun) { + runLimited(pkgMirror, (limit2) => limit2(async () => { + try { + await saveMeta(pkgMirror, meta); + } catch (err) { + } + })); + } + return { + meta, + pickedPackage: _pickPackageFromMeta(spec, opts.preferredVersionSelectors, meta, opts.publishedBy) + }; + } catch (err) { + err.spec = spec; + const meta = await loadMeta(pkgMirror); + if (meta == null) + throw err; + logger_1.logger.error(err, err); + logger_1.logger.debug({ message: `Using cached meta from ${pkgMirror}` }); + return { + meta, + pickedPackage: _pickPackageFromMeta(spec, opts.preferredVersionSelectors, meta, opts.publishedBy) + }; + } + }); } - function checkLengthValue(length) { - checkOffsetOrLengthValue(length, false); - } - exports2.checkLengthValue = checkLengthValue; - function checkOffsetValue(offset) { - checkOffsetOrLengthValue(offset, true); + exports2.pickPackage = pickPackage; + function clearMeta(pkg) { + const versions = {}; + for (const [version2, info] of Object.entries(pkg.versions)) { + versions[version2] = (0, pick_1.default)([ + "name", + "version", + "bin", + "directories", + "devDependencies", + "optionalDependencies", + "dependencies", + "peerDependencies", + "dist", + "engines", + "peerDependenciesMeta", + "cpu", + "os", + "deprecated", + "bundleDependencies", + "bundledDependencies", + "hasInstallScript" + ], info); + } + return { + name: pkg.name, + "dist-tags": pkg["dist-tags"], + versions, + time: pkg.time, + cachedAt: pkg.cachedAt + }; } - exports2.checkOffsetValue = checkOffsetValue; - function checkTargetOffset(offset, buff) { - if (offset < 0 || offset > buff.length) { - throw new Error(ERRORS.INVALID_TARGET_OFFSET); + function encodePkgName(pkgName) { + if (pkgName !== pkgName.toLowerCase()) { + return `${pkgName}_${crypto_1.default.createHash("md5").update(pkgName).digest("hex")}`; } + return pkgName; } - exports2.checkTargetOffset = checkTargetOffset; - function isInteger(value) { - return typeof value === "number" && isFinite(value) && Math.floor(value) === value; + async function loadMeta(pkgMirror) { + try { + return await (0, load_json_file_1.default)(pkgMirror); + } catch (err) { + return null; + } } - function bigIntAndBufferInt64Check(bufferMethod) { - if (typeof BigInt === "undefined") { - throw new Error("Platform does not support JS BigInt type."); + var createdDirs = /* @__PURE__ */ new Set(); + async function saveMeta(pkgMirror, meta) { + const dir = path_1.default.dirname(pkgMirror); + if (!createdDirs.has(dir)) { + await fs_1.promises.mkdir(dir, { recursive: true }); + createdDirs.add(dir); } - if (typeof buffer_1.Buffer.prototype[bufferMethod] === "undefined") { - throw new Error(`Platform does not support Buffer.prototype.${bufferMethod}.`); + const temp = (0, path_temp_1.default)(dir); + await graceful_fs_1.default.writeFile(temp, JSON.stringify(meta)); + await (0, rename_overwrite_1.default)(temp, pkgMirror); + } + function validatePackageName(pkgName) { + if (pkgName.includes("/") && pkgName[0] !== "@") { + throw new error_1.PnpmError("INVALID_PACKAGE_NAME", `Package name ${pkgName} is invalid, it should have a @scope`); } } - exports2.bigIntAndBufferInt64Check = bigIntAndBufferInt64Check; } }); -// ../../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js -var require_smartbuffer = __commonJS({ - "../../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js"(exports2) { +// ../node_modules/.pnpm/parse-npm-tarball-url@3.0.0/node_modules/parse-npm-tarball-url/lib/index.js +var require_lib71 = __commonJS({ + "../node_modules/.pnpm/parse-npm-tarball-url@3.0.0/node_modules/parse-npm-tarball-url/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - var utils_1 = require_utils7(); - var DEFAULT_SMARTBUFFER_SIZE = 4096; - var DEFAULT_SMARTBUFFER_ENCODING = "utf8"; - var SmartBuffer = class { - constructor(options) { - this.length = 0; - this._encoding = DEFAULT_SMARTBUFFER_ENCODING; - this._writeOffset = 0; - this._readOffset = 0; - if (SmartBuffer.isSmartBufferOptions(options)) { - if (options.encoding) { - utils_1.checkEncoding(options.encoding); - this._encoding = options.encoding; - } - if (options.size) { - if (utils_1.isFiniteInteger(options.size) && options.size > 0) { - this._buff = Buffer.allocUnsafe(options.size); - } else { - throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_SIZE); - } - } else if (options.buff) { - if (Buffer.isBuffer(options.buff)) { - this._buff = options.buff; - this.length = options.buff.length; - } else { - throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_BUFFER); - } - } else { - this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); - } + var url_1 = require("url"); + var assert = require("assert"); + var semver_12 = require_semver2(); + function parseNpmTarballUrl(url) { + assert(url, "url is required"); + assert(typeof url === "string", "url should be a string"); + const { path: path2, host } = url_1.parse(url); + if (!path2 || !host) + return null; + const pkg = parsePath(path2); + if (!pkg) + return null; + return { + host, + name: pkg.name, + version: pkg.version + }; + } + exports2.default = parseNpmTarballUrl; + function parsePath(path2) { + const parts = path2.split("/-/"); + if (parts.length !== 2) + return null; + const name = parts[0] && decodeURIComponent(parts[0].substr(1)); + if (!name) + return null; + const pathWithNoExtension = parts[1].replace(/\.tgz$/, ""); + const scopelessNameLength = name.length - (name.indexOf("/") + 1); + const version2 = pathWithNoExtension.substr(scopelessNameLength + 1); + if (!semver_12.valid(version2, true)) + return null; + return { name, version: version2 }; + } + } +}); + +// ../resolving/npm-resolver/lib/parsePref.js +var require_parsePref3 = __commonJS({ + "../resolving/npm-resolver/lib/parsePref.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parsePref = void 0; + var parse_npm_tarball_url_1 = __importDefault4(require_lib71()); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + function parsePref(pref, alias, defaultTag, registry) { + let name = alias; + if (pref.startsWith("npm:")) { + pref = pref.slice(4); + const index = pref.lastIndexOf("@"); + if (index < 1) { + name = pref; + pref = defaultTag; } else { - if (typeof options !== "undefined") { - throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_OBJECT); - } - this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); + name = pref.slice(0, index); + pref = pref.slice(index + 1); } } - static fromSize(size, encoding) { - return new this({ - size, - encoding - }); - } - static fromBuffer(buff, encoding) { - return new this({ - buff, - encoding - }); - } - static fromOptions(options) { - return new this(options); - } - static isSmartBufferOptions(options) { - const castOptions = options; - return castOptions && (castOptions.encoding !== void 0 || castOptions.size !== void 0 || castOptions.buff !== void 0); - } - readInt8(offset) { - return this._readNumberValue(Buffer.prototype.readInt8, 1, offset); - } - readInt16BE(offset) { - return this._readNumberValue(Buffer.prototype.readInt16BE, 2, offset); - } - readInt16LE(offset) { - return this._readNumberValue(Buffer.prototype.readInt16LE, 2, offset); - } - readInt32BE(offset) { - return this._readNumberValue(Buffer.prototype.readInt32BE, 4, offset); - } - readInt32LE(offset) { - return this._readNumberValue(Buffer.prototype.readInt32LE, 4, offset); - } - readBigInt64BE(offset) { - utils_1.bigIntAndBufferInt64Check("readBigInt64BE"); - return this._readNumberValue(Buffer.prototype.readBigInt64BE, 8, offset); - } - readBigInt64LE(offset) { - utils_1.bigIntAndBufferInt64Check("readBigInt64LE"); - return this._readNumberValue(Buffer.prototype.readBigInt64LE, 8, offset); - } - writeInt8(value, offset) { - this._writeNumberValue(Buffer.prototype.writeInt8, 1, value, offset); - return this; - } - insertInt8(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeInt8, 1, value, offset); - } - writeInt16BE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); - } - insertInt16BE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); - } - writeInt16LE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); - } - insertInt16LE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); - } - writeInt32BE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); - } - insertInt32BE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); - } - writeInt32LE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); - } - insertInt32LE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); - } - writeBigInt64BE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); - return this._writeNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); - } - insertBigInt64BE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); - return this._insertNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); - } - writeBigInt64LE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); - return this._writeNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); - } - insertBigInt64LE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); - return this._insertNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); - } - readUInt8(offset) { - return this._readNumberValue(Buffer.prototype.readUInt8, 1, offset); - } - readUInt16BE(offset) { - return this._readNumberValue(Buffer.prototype.readUInt16BE, 2, offset); - } - readUInt16LE(offset) { - return this._readNumberValue(Buffer.prototype.readUInt16LE, 2, offset); - } - readUInt32BE(offset) { - return this._readNumberValue(Buffer.prototype.readUInt32BE, 4, offset); - } - readUInt32LE(offset) { - return this._readNumberValue(Buffer.prototype.readUInt32LE, 4, offset); - } - readBigUInt64BE(offset) { - utils_1.bigIntAndBufferInt64Check("readBigUInt64BE"); - return this._readNumberValue(Buffer.prototype.readBigUInt64BE, 8, offset); - } - readBigUInt64LE(offset) { - utils_1.bigIntAndBufferInt64Check("readBigUInt64LE"); - return this._readNumberValue(Buffer.prototype.readBigUInt64LE, 8, offset); - } - writeUInt8(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); - } - insertUInt8(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); - } - writeUInt16BE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); - } - insertUInt16BE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); - } - writeUInt16LE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); - } - insertUInt16LE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); - } - writeUInt32BE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); - } - insertUInt32BE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); - } - writeUInt32LE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); - } - insertUInt32LE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); - } - writeBigUInt64BE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); - return this._writeNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); - } - insertBigUInt64BE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); - return this._insertNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); - } - writeBigUInt64LE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); - return this._writeNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); - } - insertBigUInt64LE(value, offset) { - utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); - return this._insertNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); - } - readFloatBE(offset) { - return this._readNumberValue(Buffer.prototype.readFloatBE, 4, offset); - } - readFloatLE(offset) { - return this._readNumberValue(Buffer.prototype.readFloatLE, 4, offset); - } - writeFloatBE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); - } - insertFloatBE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); - } - writeFloatLE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); - } - insertFloatLE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); - } - readDoubleBE(offset) { - return this._readNumberValue(Buffer.prototype.readDoubleBE, 8, offset); - } - readDoubleLE(offset) { - return this._readNumberValue(Buffer.prototype.readDoubleLE, 8, offset); - } - writeDoubleBE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); - } - insertDoubleBE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); - } - writeDoubleLE(value, offset) { - return this._writeNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); - } - insertDoubleLE(value, offset) { - return this._insertNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); - } - readString(arg1, encoding) { - let lengthVal; - if (typeof arg1 === "number") { - utils_1.checkLengthValue(arg1); - lengthVal = Math.min(arg1, this.length - this._readOffset); - } else { - encoding = arg1; - lengthVal = this.length - this._readOffset; + if (name) { + const selector = (0, version_selector_type_1.default)(pref); + if (selector != null) { + return { + fetchSpec: selector.normalized, + name, + type: selector.type + }; } - if (typeof encoding !== "undefined") { - utils_1.checkEncoding(encoding); + } + if (pref.startsWith(registry)) { + const pkg = (0, parse_npm_tarball_url_1.default)(pref); + if (pkg != null) { + return { + fetchSpec: pkg.version, + name: pkg.name, + normalizedPref: pref, + type: "version" + }; } - const value = this._buff.slice(this._readOffset, this._readOffset + lengthVal).toString(encoding || this._encoding); - this._readOffset += lengthVal; - return value; } - insertString(value, offset, encoding) { - utils_1.checkOffsetValue(offset); - return this._handleString(value, true, offset, encoding); + return null; + } + exports2.parsePref = parsePref; + } +}); + +// ../resolving/npm-resolver/lib/fetch.js +var require_fetch2 = __commonJS({ + "../resolving/npm-resolver/lib/fetch.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - writeString(value, arg2, encoding) { - return this._handleString(value, false, arg2, encoding); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - readStringNT(encoding) { - if (typeof encoding !== "undefined") { - utils_1.checkEncoding(encoding); - } - let nullPos = this.length; - for (let i = this._readOffset; i < this.length; i++) { - if (this._buff[i] === 0) { - nullPos = i; - break; + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromRegistry = exports2.RegistryResponseError = void 0; + var url_1 = __importDefault4(require("url")); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var retry = __importStar5(require_retry2()); + var semverRegex = /(.*)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; + var RegistryResponseError = class extends error_1.FetchError { + constructor(request, response, pkgName) { + let hint; + if (response.status === 404) { + hint = `${pkgName} is not in the npm registry, or you have no permission to fetch it.`; + const matched = pkgName.match(semverRegex); + if (matched != null) { + hint += ` Did you mean ${matched[1]}?`; } } - const value = this._buff.slice(this._readOffset, nullPos); - this._readOffset = nullPos + 1; - return value.toString(encoding || this._encoding); - } - insertStringNT(value, offset, encoding) { - utils_1.checkOffsetValue(offset); - this.insertString(value, offset, encoding); - this.insertUInt8(0, offset + value.length); - return this; + super(request, response, hint); + this.pkgName = pkgName; } - writeStringNT(value, arg2, encoding) { - this.writeString(value, arg2, encoding); - this.writeUInt8(0, typeof arg2 === "number" ? arg2 + value.length : this.writeOffset); - return this; + }; + exports2.RegistryResponseError = RegistryResponseError; + async function fromRegistry(fetch, fetchOpts, pkgName, registry, authHeaderValue) { + const uri = toUri(pkgName, registry); + const op = retry.operation(fetchOpts.retry); + return new Promise((resolve, reject) => { + op.attempt(async (attempt) => { + let response; + try { + response = await fetch(uri, { + authHeaderValue, + compress: true, + retry: fetchOpts.retry, + timeout: fetchOpts.timeout + }); + } catch (error) { + reject(new error_1.PnpmError("META_FETCH_FAIL", `GET ${uri}: ${error.message}`, { attempts: attempt })); + return; + } + if (response.status > 400) { + const request = { + authHeaderValue, + url: uri + }; + reject(new RegistryResponseError(request, response, pkgName)); + return; + } + try { + resolve(await response.json()); + } catch (error) { + const timeout = op.retry(new error_1.PnpmError("BROKEN_METADATA_JSON", error.message)); + if (timeout === false) { + reject(op.mainError()); + return; + } + core_loggers_1.requestRetryLogger.debug({ + attempt, + error, + maxRetries: fetchOpts.retry.retries, + method: "GET", + timeout, + url: uri + }); + } + }); + }); + } + exports2.fromRegistry = fromRegistry; + function toUri(pkgName, registry) { + let encodedName; + if (pkgName[0] === "@") { + encodedName = `@${encodeURIComponent(pkgName.slice(1))}`; + } else { + encodedName = encodeURIComponent(pkgName); } - readBuffer(length) { - if (typeof length !== "undefined") { - utils_1.checkLengthValue(length); - } - const lengthVal = typeof length === "number" ? length : this.length; - const endPoint = Math.min(this.length, this._readOffset + lengthVal); - const value = this._buff.slice(this._readOffset, endPoint); - this._readOffset = endPoint; - return value; + return new url_1.default.URL(encodedName, registry.endsWith("/") ? registry : `${registry}/`).toString(); + } + } +}); + +// ../resolving/npm-resolver/lib/createNpmPkgId.js +var require_createNpmPkgId = __commonJS({ + "../resolving/npm-resolver/lib/createNpmPkgId.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPkgId = void 0; + var encode_registry_1 = __importDefault4(require_encode_registry()); + function createPkgId(registry, pkgName, pkgVersion) { + const escapedRegistryHost = (0, encode_registry_1.default)(registry); + return `${escapedRegistryHost}/${pkgName}/${pkgVersion}`; + } + exports2.createPkgId = createPkgId; + } +}); + +// ../resolving/npm-resolver/lib/workspacePrefToNpm.js +var require_workspacePrefToNpm = __commonJS({ + "../resolving/npm-resolver/lib/workspacePrefToNpm.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.workspacePrefToNpm = void 0; + function workspacePrefToNpm(workspacePref) { + const prefParts = /^workspace:([^._/][^@]*@)?(.*)$/.exec(workspacePref); + if (prefParts == null) { + throw new Error(`Invalid workspace spec: ${workspacePref}`); } - insertBuffer(value, offset) { - utils_1.checkOffsetValue(offset); - return this._handleBuffer(value, true, offset); + const [workspacePkgAlias, workspaceVersion] = prefParts.slice(1); + const pkgAliasPart = workspacePkgAlias != null && workspacePkgAlias ? `npm:${workspacePkgAlias}` : ""; + const versionPart = workspaceVersion === "^" || workspaceVersion === "~" ? "*" : workspaceVersion; + return `${pkgAliasPart}${versionPart}`; + } + exports2.workspacePrefToNpm = workspacePrefToNpm; + } +}); + +// ../resolving/npm-resolver/lib/index.js +var require_lib72 = __commonJS({ + "../resolving/npm-resolver/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNpmResolver = exports2.RegistryResponseError = exports2.parsePref = exports2.NoMatchingVersionError = void 0; + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var resolve_workspace_range_1 = require_lib31(); + var lru_cache_1 = __importDefault4(require_lru_cache3()); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var p_memoize_1 = __importDefault4(require_p_memoize()); + var clone_1 = __importDefault4(require_clone4()); + var semver_12 = __importDefault4(require_semver2()); + var ssri_1 = __importDefault4(require_lib44()); + var pickPackage_1 = require_pickPackage(); + var parsePref_1 = require_parsePref3(); + Object.defineProperty(exports2, "parsePref", { enumerable: true, get: function() { + return parsePref_1.parsePref; + } }); + var fetch_1 = require_fetch2(); + Object.defineProperty(exports2, "RegistryResponseError", { enumerable: true, get: function() { + return fetch_1.RegistryResponseError; + } }); + var createNpmPkgId_1 = require_createNpmPkgId(); + var workspacePrefToNpm_1 = require_workspacePrefToNpm(); + var NoMatchingVersionError = class extends error_1.PnpmError { + constructor(opts) { + const dep = opts.wantedDependency.alias ? `${opts.wantedDependency.alias}@${opts.wantedDependency.pref ?? ""}` : opts.wantedDependency.pref; + super("NO_MATCHING_VERSION", `No matching version found for ${dep}`); + this.packageMeta = opts.packageMeta; } - writeBuffer(value, offset) { - return this._handleBuffer(value, false, offset); + }; + exports2.NoMatchingVersionError = NoMatchingVersionError; + var META_DIR = "metadata"; + var FULL_META_DIR = "metadata-full"; + var FULL_FILTERED_META_DIR = "metadata-v1.1"; + function createNpmResolver(fetchFromRegistry, getAuthHeader, opts) { + if (typeof opts.cacheDir !== "string") { + throw new TypeError("`opts.cacheDir` is required and needs to be a string"); } - readBufferNT() { - let nullPos = this.length; - for (let i = this._readOffset; i < this.length; i++) { - if (this._buff[i] === 0) { - nullPos = i; - break; - } + const fetchOpts = { + retry: opts.retry ?? {}, + timeout: opts.timeout ?? 6e4 + }; + const fetch = (0, p_memoize_1.default)(fetch_1.fromRegistry.bind(null, fetchFromRegistry, fetchOpts), { + cacheKey: (...args2) => JSON.stringify(args2), + maxAge: 1e3 * 20 + // 20 seconds + }); + const metaCache = new lru_cache_1.default({ + max: 1e4, + ttl: 120 * 1e3 + // 2 minutes + }); + return resolveNpm.bind(null, { + getAuthHeaderValueByURI: getAuthHeader, + pickPackage: pickPackage_1.pickPackage.bind(null, { + fetch, + filterMetadata: opts.filterMetadata, + metaCache, + metaDir: opts.fullMetadata ? opts.filterMetadata ? FULL_FILTERED_META_DIR : FULL_META_DIR : META_DIR, + offline: opts.offline, + preferOffline: opts.preferOffline, + cacheDir: opts.cacheDir + }) + }); + } + exports2.createNpmResolver = createNpmResolver; + async function resolveNpm(ctx, wantedDependency, opts) { + const defaultTag = opts.defaultTag ?? "latest"; + if (wantedDependency.pref?.startsWith("workspace:")) { + if (wantedDependency.pref.startsWith("workspace:.")) + return null; + const resolvedFromWorkspace = tryResolveFromWorkspace(wantedDependency, { + defaultTag, + lockfileDir: opts.lockfileDir, + projectDir: opts.projectDir, + registry: opts.registry, + workspacePackages: opts.workspacePackages + }); + if (resolvedFromWorkspace != null) { + return resolvedFromWorkspace; } - const value = this._buff.slice(this._readOffset, nullPos); - this._readOffset = nullPos + 1; - return value; - } - insertBufferNT(value, offset) { - utils_1.checkOffsetValue(offset); - this.insertBuffer(value, offset); - this.insertUInt8(0, offset + value.length); - return this; } - writeBufferNT(value, offset) { - if (typeof offset !== "undefined") { - utils_1.checkOffsetValue(offset); + const workspacePackages = opts.alwaysTryWorkspacePackages !== false ? opts.workspacePackages : void 0; + const spec = wantedDependency.pref ? (0, parsePref_1.parsePref)(wantedDependency.pref, wantedDependency.alias, defaultTag, opts.registry) : defaultTagForAlias(wantedDependency.alias, defaultTag); + if (spec == null) + return null; + const authHeaderValue = ctx.getAuthHeaderValueByURI(opts.registry); + let pickResult; + try { + pickResult = await ctx.pickPackage(spec, { + pickLowestVersion: opts.pickLowestVersion, + publishedBy: opts.publishedBy, + authHeaderValue, + dryRun: opts.dryRun === true, + preferredVersionSelectors: opts.preferredVersions?.[spec.name], + registry: opts.registry + }); + } catch (err) { + if (workspacePackages != null && opts.projectDir) { + try { + return tryResolveFromWorkspacePackages(workspacePackages, spec, { + wantedDependency, + projectDir: opts.projectDir, + lockfileDir: opts.lockfileDir, + hardLinkLocalPackages: wantedDependency.injected + }); + } catch { + } } - this.writeBuffer(value, offset); - this.writeUInt8(0, typeof offset === "number" ? offset + value.length : this._writeOffset); - return this; - } - clear() { - this._writeOffset = 0; - this._readOffset = 0; - this.length = 0; - return this; - } - remaining() { - return this.length - this._readOffset; - } - get readOffset() { - return this._readOffset; - } - set readOffset(offset) { - utils_1.checkOffsetValue(offset); - utils_1.checkTargetOffset(offset, this); - this._readOffset = offset; - } - get writeOffset() { - return this._writeOffset; - } - set writeOffset(offset) { - utils_1.checkOffsetValue(offset); - utils_1.checkTargetOffset(offset, this); - this._writeOffset = offset; - } - get encoding() { - return this._encoding; - } - set encoding(encoding) { - utils_1.checkEncoding(encoding); - this._encoding = encoding; - } - get internalBuffer() { - return this._buff; - } - toBuffer() { - return this._buff.slice(0, this.length); - } - toString(encoding) { - const encodingVal = typeof encoding === "string" ? encoding : this._encoding; - utils_1.checkEncoding(encodingVal); - return this._buff.toString(encodingVal, 0, this.length); - } - destroy() { - this.clear(); - return this; + throw err; } - _handleString(value, isInsert, arg3, encoding) { - let offsetVal = this._writeOffset; - let encodingVal = this._encoding; - if (typeof arg3 === "number") { - offsetVal = arg3; - } else if (typeof arg3 === "string") { - utils_1.checkEncoding(arg3); - encodingVal = arg3; - } - if (typeof encoding === "string") { - utils_1.checkEncoding(encoding); - encodingVal = encoding; - } - const byteLength = Buffer.byteLength(value, encodingVal); - if (isInsert) { - this.ensureInsertable(byteLength, offsetVal); - } else { - this._ensureWriteable(byteLength, offsetVal); - } - this._buff.write(value, offsetVal, byteLength, encodingVal); - if (isInsert) { - this._writeOffset += byteLength; - } else { - if (typeof arg3 === "number") { - this._writeOffset = Math.max(this._writeOffset, offsetVal + byteLength); - } else { - this._writeOffset += byteLength; + const pickedPackage = pickResult.pickedPackage; + const meta = pickResult.meta; + if (pickedPackage == null) { + if (workspacePackages != null && opts.projectDir) { + try { + return tryResolveFromWorkspacePackages(workspacePackages, spec, { + wantedDependency, + projectDir: opts.projectDir, + lockfileDir: opts.lockfileDir, + hardLinkLocalPackages: wantedDependency.injected + }); + } catch { } } - return this; + throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta }); } - _handleBuffer(value, isInsert, offset) { - const offsetVal = typeof offset === "number" ? offset : this._writeOffset; - if (isInsert) { - this.ensureInsertable(value.length, offsetVal); - } else { - this._ensureWriteable(value.length, offsetVal); + if (workspacePackages?.[pickedPackage.name] != null && opts.projectDir) { + if (workspacePackages[pickedPackage.name][pickedPackage.version]) { + return { + ...resolveFromLocalPackage(workspacePackages[pickedPackage.name][pickedPackage.version], spec.normalizedPref, { + projectDir: opts.projectDir, + lockfileDir: opts.lockfileDir, + hardLinkLocalPackages: wantedDependency.injected + }), + latest: meta["dist-tags"].latest + }; } - value.copy(this._buff, offsetVal); - if (isInsert) { - this._writeOffset += value.length; - } else { - if (typeof offset === "number") { - this._writeOffset = Math.max(this._writeOffset, offsetVal + value.length); - } else { - this._writeOffset += value.length; - } + const localVersion = pickMatchingLocalVersionOrNull(workspacePackages[pickedPackage.name], spec); + if (localVersion && (semver_12.default.gt(localVersion, pickedPackage.version) || opts.preferWorkspacePackages)) { + return { + ...resolveFromLocalPackage(workspacePackages[pickedPackage.name][localVersion], spec.normalizedPref, { + projectDir: opts.projectDir, + lockfileDir: opts.lockfileDir, + hardLinkLocalPackages: wantedDependency.injected + }), + latest: meta["dist-tags"].latest + }; } - return this; } - ensureReadable(length, offset) { - let offsetVal = this._readOffset; - if (typeof offset !== "undefined") { - utils_1.checkOffsetValue(offset); - offsetVal = offset; - } - if (offsetVal < 0 || offsetVal + length > this.length) { - throw new Error(utils_1.ERRORS.INVALID_READ_BEYOND_BOUNDS); - } + const id = (0, createNpmPkgId_1.createPkgId)(pickedPackage.dist.tarball, pickedPackage.name, pickedPackage.version); + const resolution = { + integrity: getIntegrity(pickedPackage.dist), + registry: opts.registry, + tarball: pickedPackage.dist.tarball + }; + return { + id, + latest: meta["dist-tags"].latest, + manifest: pickedPackage, + normalizedPref: spec.normalizedPref, + resolution, + resolvedVia: "npm-registry", + publishedAt: meta.time?.[pickedPackage.version] + }; + } + function tryResolveFromWorkspace(wantedDependency, opts) { + if (!wantedDependency.pref?.startsWith("workspace:")) { + return null; + } + const pref = (0, workspacePrefToNpm_1.workspacePrefToNpm)(wantedDependency.pref); + const spec = (0, parsePref_1.parsePref)(pref, wantedDependency.alias, opts.defaultTag, opts.registry); + if (spec == null) + throw new Error(`Invalid workspace: spec (${wantedDependency.pref})`); + if (opts.workspacePackages == null) { + throw new Error("Cannot resolve package from workspace because opts.workspacePackages is not defined"); + } + if (!opts.projectDir) { + throw new Error("Cannot resolve package from workspace because opts.projectDir is not defined"); + } + return tryResolveFromWorkspacePackages(opts.workspacePackages, spec, { + wantedDependency, + projectDir: opts.projectDir, + hardLinkLocalPackages: wantedDependency.injected, + lockfileDir: opts.lockfileDir + }); + } + function tryResolveFromWorkspacePackages(workspacePackages, spec, opts) { + if (!workspacePackages[spec.name]) { + throw new error_1.PnpmError("WORKSPACE_PKG_NOT_FOUND", `In ${path_1.default.relative(process.cwd(), opts.projectDir)}: "${spec.name}@${opts.wantedDependency.pref ?? ""}" is in the dependencies but no package named "${spec.name}" is present in the workspace`, { + hint: "Packages found in the workspace: " + Object.keys(workspacePackages).join(", ") + }); } - ensureInsertable(dataLength, offset) { - utils_1.checkOffsetValue(offset); - this._ensureCapacity(this.length + dataLength); - if (offset < this.length) { - this._buff.copy(this._buff, offset + dataLength, offset, this._buff.length); - } - if (offset + dataLength > this.length) { - this.length = offset + dataLength; - } else { - this.length += dataLength; - } + const localVersion = pickMatchingLocalVersionOrNull(workspacePackages[spec.name], spec); + if (!localVersion) { + throw new error_1.PnpmError("NO_MATCHING_VERSION_INSIDE_WORKSPACE", `In ${path_1.default.relative(process.cwd(), opts.projectDir)}: No matching version found for ${opts.wantedDependency.alias ?? ""}@${opts.wantedDependency.pref ?? ""} inside the workspace`); } - _ensureWriteable(dataLength, offset) { - const offsetVal = typeof offset === "number" ? offset : this._writeOffset; - this._ensureCapacity(offsetVal + dataLength); - if (offsetVal + dataLength > this.length) { - this.length = offsetVal + dataLength; - } + return resolveFromLocalPackage(workspacePackages[spec.name][localVersion], spec.normalizedPref, opts); + } + function pickMatchingLocalVersionOrNull(versions, spec) { + const localVersions = Object.keys(versions); + switch (spec.type) { + case "tag": + return semver_12.default.maxSatisfying(localVersions, "*", { + includePrerelease: true + }); + case "version": + return versions[spec.fetchSpec] ? spec.fetchSpec : null; + case "range": + return (0, resolve_workspace_range_1.resolveWorkspaceRange)(spec.fetchSpec, localVersions); + default: + return null; } - _ensureCapacity(minLength) { - const oldLength = this._buff.length; - if (minLength > oldLength) { - let data = this._buff; - let newLength = oldLength * 3 / 2 + 1; - if (newLength < minLength) { - newLength = minLength; - } - this._buff = Buffer.allocUnsafe(newLength); - data.copy(this._buff, 0, 0, oldLength); - } + } + function resolveFromLocalPackage(localPackage, normalizedPref, opts) { + let id; + let directory; + const localPackageDir = resolveLocalPackageDir(localPackage); + if (opts.hardLinkLocalPackages) { + directory = (0, normalize_path_1.default)(path_1.default.relative(opts.lockfileDir, localPackageDir)); + id = `file:${directory}`; + } else { + directory = localPackageDir; + id = `link:${(0, normalize_path_1.default)(path_1.default.relative(opts.projectDir, localPackageDir))}`; } - _readNumberValue(func, byteSize, offset) { - this.ensureReadable(byteSize, offset); - const value = func.call(this._buff, typeof offset === "number" ? offset : this._readOffset); - if (typeof offset === "undefined") { - this._readOffset += byteSize; - } - return value; + return { + id, + manifest: (0, clone_1.default)(localPackage.manifest), + normalizedPref, + resolution: { + directory, + type: "directory" + }, + resolvedVia: "local-filesystem" + }; + } + function resolveLocalPackageDir(localPackage) { + if (localPackage.manifest.publishConfig?.directory == null || localPackage.manifest.publishConfig?.linkDirectory !== true) + return localPackage.dir; + return path_1.default.join(localPackage.dir, localPackage.manifest.publishConfig.directory); + } + function defaultTagForAlias(alias, defaultTag) { + return { + fetchSpec: defaultTag, + name: alias, + type: "tag" + }; + } + function getIntegrity(dist) { + if (dist.integrity) { + return dist.integrity; } - _insertNumberValue(func, byteSize, value, offset) { - utils_1.checkOffsetValue(offset); - this.ensureInsertable(byteSize, offset); - func.call(this._buff, value, offset); - this._writeOffset += byteSize; - return this; + if (!dist.shasum) { + return void 0; } - _writeNumberValue(func, byteSize, value, offset) { - if (typeof offset === "number") { - if (offset < 0) { - throw new Error(utils_1.ERRORS.INVALID_WRITE_BEYOND_BOUNDS); - } - utils_1.checkOffsetValue(offset); - } - const offsetVal = typeof offset === "number" ? offset : this._writeOffset; - this._ensureWriteable(byteSize, offsetVal); - func.call(this._buff, value, offsetVal); - if (typeof offset === "number") { - this._writeOffset = Math.max(this._writeOffset, offsetVal + byteSize); - } else { - this._writeOffset += byteSize; - } - return this; + const integrity = ssri_1.default.fromHex(dist.shasum, "sha1"); + if (!integrity) { + throw new error_1.PnpmError("INVALID_TARBALL_INTEGRITY", `Tarball "${dist.tarball}" has invalid shasum specified in its metadata: ${dist.shasum}`); } - }; - exports2.SmartBuffer = SmartBuffer; + return integrity.toString(); + } } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/constants.js -var require_constants8 = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/constants.js"(exports2) { +// ../resolving/tarball-resolver/lib/index.js +var require_lib73 = __commonJS({ + "../resolving/tarball-resolver/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SOCKS5_NO_ACCEPTABLE_AUTH = exports2.SOCKS5_CUSTOM_AUTH_END = exports2.SOCKS5_CUSTOM_AUTH_START = exports2.SOCKS_INCOMING_PACKET_SIZES = exports2.SocksClientState = exports2.Socks5Response = exports2.Socks5HostType = exports2.Socks5Auth = exports2.Socks4Response = exports2.SocksCommand = exports2.ERRORS = exports2.DEFAULT_TIMEOUT = void 0; - var DEFAULT_TIMEOUT = 3e4; - exports2.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT; - var ERRORS = { - InvalidSocksCommand: "An invalid SOCKS command was provided. Valid options are connect, bind, and associate.", - InvalidSocksCommandForOperation: "An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.", - InvalidSocksCommandChain: "An invalid SOCKS command was provided. Chaining currently only supports the connect command.", - InvalidSocksClientOptionsDestination: "An invalid destination host was provided.", - InvalidSocksClientOptionsExistingSocket: "An invalid existing socket was provided. This should be an instance of stream.Duplex.", - InvalidSocksClientOptionsProxy: "Invalid SOCKS proxy details were provided.", - InvalidSocksClientOptionsTimeout: "An invalid timeout value was provided. Please enter a value above 0 (in ms).", - InvalidSocksClientOptionsProxiesLength: "At least two socks proxies must be provided for chaining.", - InvalidSocksClientOptionsCustomAuthRange: "Custom auth must be a value between 0x80 and 0xFE.", - InvalidSocksClientOptionsCustomAuthOptions: "When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.", - NegotiationError: "Negotiation error", - SocketClosed: "Socket closed", - ProxyConnectionTimedOut: "Proxy connection timed out", - InternalError: "SocksClient internal error (this should not happen)", - InvalidSocks4HandshakeResponse: "Received invalid Socks4 handshake response", - Socks4ProxyRejectedConnection: "Socks4 Proxy rejected connection", - InvalidSocks4IncomingConnectionResponse: "Socks4 invalid incoming connection response", - Socks4ProxyRejectedIncomingBoundConnection: "Socks4 Proxy rejected incoming bound connection", - InvalidSocks5InitialHandshakeResponse: "Received invalid Socks5 initial handshake response", - InvalidSocks5IntiailHandshakeSocksVersion: "Received invalid Socks5 initial handshake (invalid socks version)", - InvalidSocks5InitialHandshakeNoAcceptedAuthType: "Received invalid Socks5 initial handshake (no accepted authentication type)", - InvalidSocks5InitialHandshakeUnknownAuthType: "Received invalid Socks5 initial handshake (unknown authentication type)", - Socks5AuthenticationFailed: "Socks5 Authentication failed", - InvalidSocks5FinalHandshake: "Received invalid Socks5 final handshake response", - InvalidSocks5FinalHandshakeRejected: "Socks5 proxy rejected connection", - InvalidSocks5IncomingConnectionResponse: "Received invalid Socks5 incoming connection response", - Socks5ProxyRejectedIncomingBoundConnection: "Socks5 Proxy rejected incoming bound connection" - }; - exports2.ERRORS = ERRORS; - var SOCKS_INCOMING_PACKET_SIZES = { - Socks5InitialHandshakeResponse: 2, - Socks5UserPassAuthenticationResponse: 2, - Socks5ResponseHeader: 5, - Socks5ResponseIPv4: 10, - Socks5ResponseIPv6: 22, - Socks5ResponseHostname: (hostNameLength) => hostNameLength + 7, - Socks4Response: 8 - }; - exports2.SOCKS_INCOMING_PACKET_SIZES = SOCKS_INCOMING_PACKET_SIZES; - var SocksCommand; - (function(SocksCommand2) { - SocksCommand2[SocksCommand2["connect"] = 1] = "connect"; - SocksCommand2[SocksCommand2["bind"] = 2] = "bind"; - SocksCommand2[SocksCommand2["associate"] = 3] = "associate"; - })(SocksCommand || (SocksCommand = {})); - exports2.SocksCommand = SocksCommand; - var Socks4Response; - (function(Socks4Response2) { - Socks4Response2[Socks4Response2["Granted"] = 90] = "Granted"; - Socks4Response2[Socks4Response2["Failed"] = 91] = "Failed"; - Socks4Response2[Socks4Response2["Rejected"] = 92] = "Rejected"; - Socks4Response2[Socks4Response2["RejectedIdent"] = 93] = "RejectedIdent"; - })(Socks4Response || (Socks4Response = {})); - exports2.Socks4Response = Socks4Response; - var Socks5Auth; - (function(Socks5Auth2) { - Socks5Auth2[Socks5Auth2["NoAuth"] = 0] = "NoAuth"; - Socks5Auth2[Socks5Auth2["GSSApi"] = 1] = "GSSApi"; - Socks5Auth2[Socks5Auth2["UserPass"] = 2] = "UserPass"; - })(Socks5Auth || (Socks5Auth = {})); - exports2.Socks5Auth = Socks5Auth; - var SOCKS5_CUSTOM_AUTH_START = 128; - exports2.SOCKS5_CUSTOM_AUTH_START = SOCKS5_CUSTOM_AUTH_START; - var SOCKS5_CUSTOM_AUTH_END = 254; - exports2.SOCKS5_CUSTOM_AUTH_END = SOCKS5_CUSTOM_AUTH_END; - var SOCKS5_NO_ACCEPTABLE_AUTH = 255; - exports2.SOCKS5_NO_ACCEPTABLE_AUTH = SOCKS5_NO_ACCEPTABLE_AUTH; - var Socks5Response; - (function(Socks5Response2) { - Socks5Response2[Socks5Response2["Granted"] = 0] = "Granted"; - Socks5Response2[Socks5Response2["Failure"] = 1] = "Failure"; - Socks5Response2[Socks5Response2["NotAllowed"] = 2] = "NotAllowed"; - Socks5Response2[Socks5Response2["NetworkUnreachable"] = 3] = "NetworkUnreachable"; - Socks5Response2[Socks5Response2["HostUnreachable"] = 4] = "HostUnreachable"; - Socks5Response2[Socks5Response2["ConnectionRefused"] = 5] = "ConnectionRefused"; - Socks5Response2[Socks5Response2["TTLExpired"] = 6] = "TTLExpired"; - Socks5Response2[Socks5Response2["CommandNotSupported"] = 7] = "CommandNotSupported"; - Socks5Response2[Socks5Response2["AddressNotSupported"] = 8] = "AddressNotSupported"; - })(Socks5Response || (Socks5Response = {})); - exports2.Socks5Response = Socks5Response; - var Socks5HostType; - (function(Socks5HostType2) { - Socks5HostType2[Socks5HostType2["IPv4"] = 1] = "IPv4"; - Socks5HostType2[Socks5HostType2["Hostname"] = 3] = "Hostname"; - Socks5HostType2[Socks5HostType2["IPv6"] = 4] = "IPv6"; - })(Socks5HostType || (Socks5HostType = {})); - exports2.Socks5HostType = Socks5HostType; - var SocksClientState; - (function(SocksClientState2) { - SocksClientState2[SocksClientState2["Created"] = 0] = "Created"; - SocksClientState2[SocksClientState2["Connecting"] = 1] = "Connecting"; - SocksClientState2[SocksClientState2["Connected"] = 2] = "Connected"; - SocksClientState2[SocksClientState2["SentInitialHandshake"] = 3] = "SentInitialHandshake"; - SocksClientState2[SocksClientState2["ReceivedInitialHandshakeResponse"] = 4] = "ReceivedInitialHandshakeResponse"; - SocksClientState2[SocksClientState2["SentAuthentication"] = 5] = "SentAuthentication"; - SocksClientState2[SocksClientState2["ReceivedAuthenticationResponse"] = 6] = "ReceivedAuthenticationResponse"; - SocksClientState2[SocksClientState2["SentFinalHandshake"] = 7] = "SentFinalHandshake"; - SocksClientState2[SocksClientState2["ReceivedFinalResponse"] = 8] = "ReceivedFinalResponse"; - SocksClientState2[SocksClientState2["BoundWaitingForConnection"] = 9] = "BoundWaitingForConnection"; - SocksClientState2[SocksClientState2["Established"] = 10] = "Established"; - SocksClientState2[SocksClientState2["Disconnected"] = 11] = "Disconnected"; - SocksClientState2[SocksClientState2["Error"] = 99] = "Error"; - })(SocksClientState || (SocksClientState = {})); - exports2.SocksClientState = SocksClientState; + exports2.resolveFromTarball = void 0; + async function resolveFromTarball(wantedDependency) { + if (!wantedDependency.pref.startsWith("http:") && !wantedDependency.pref.startsWith("https:")) { + return null; + } + if (isRepository(wantedDependency.pref)) + return null; + return { + id: `@${wantedDependency.pref.replace(/^.*:\/\/(git@)?/, "").replace(":", "+")}`, + normalizedPref: wantedDependency.pref, + resolution: { + tarball: wantedDependency.pref + }, + resolvedVia: "url" + }; + } + exports2.resolveFromTarball = resolveFromTarball; + var GIT_HOSTERS = /* @__PURE__ */ new Set([ + "github.com", + "gitlab.com", + "bitbucket.org" + ]); + function isRepository(pref) { + if (pref.endsWith("/")) { + pref = pref.slice(0, -1); + } + const parts = pref.split("/"); + return parts.length === 5 && GIT_HOSTERS.has(parts[2]); + } } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/util.js -var require_util5 = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/util.js"(exports2) { +// ../resolving/default-resolver/lib/index.js +var require_lib74 = __commonJS({ + "../resolving/default-resolver/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.shuffleArray = exports2.SocksClientError = void 0; - var SocksClientError = class extends Error { - constructor(message2, options) { - super(message2); - this.options = options; - } + exports2.createResolver = void 0; + var error_1 = require_lib8(); + var git_resolver_1 = require_lib69(); + var local_resolver_1 = require_lib70(); + var npm_resolver_1 = require_lib72(); + var tarball_resolver_1 = require_lib73(); + function createResolver(fetchFromRegistry, getAuthHeader, pnpmOpts) { + const resolveFromNpm = (0, npm_resolver_1.createNpmResolver)(fetchFromRegistry, getAuthHeader, pnpmOpts); + const resolveFromGit = (0, git_resolver_1.createGitResolver)(pnpmOpts); + return async (wantedDependency, opts) => { + const resolution = await resolveFromNpm(wantedDependency, opts) ?? (wantedDependency.pref && (await (0, tarball_resolver_1.resolveFromTarball)(wantedDependency) ?? await resolveFromGit(wantedDependency) ?? await (0, local_resolver_1.resolveFromLocal)(wantedDependency, opts))); + if (!resolution) { + throw new error_1.PnpmError("SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER", `${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${wantedDependency.pref ?? ""} isn't supported by any available resolver.`); + } + return resolution; + }; + } + exports2.createResolver = createResolver; + } +}); + +// ../fetching/git-fetcher/lib/index.js +var require_lib75 = __commonJS({ + "../fetching/git-fetcher/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.SocksClientError = SocksClientError; - function shuffleArray(array) { - for (let i = array.length - 1; i > 0; i--) { - const j = Math.floor(Math.random() * (i + 1)); - [array[i], array[j]] = [array[j], array[i]]; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createGitFetcher = void 0; + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var prepare_package_1 = require_lib62(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var execa_1 = __importDefault4(require_lib17()); + var url_1 = require("url"); + function createGitFetcher(createOpts) { + const allowedHosts = new Set(createOpts?.gitShallowHosts ?? []); + const ignoreScripts = createOpts.ignoreScripts ?? false; + const preparePkg = prepare_package_1.preparePackage.bind(null, { + ignoreScripts: createOpts.ignoreScripts, + rawConfig: createOpts.rawConfig, + unsafePerm: createOpts.unsafePerm + }); + const gitFetcher = async (cafs, resolution, opts) => { + const tempLocation = await cafs.tempDir(); + if (allowedHosts.size > 0 && shouldUseShallow(resolution.repo, allowedHosts)) { + await execGit(["init"], { cwd: tempLocation }); + await execGit(["remote", "add", "origin", resolution.repo], { cwd: tempLocation }); + await execGit(["fetch", "--depth", "1", "origin", resolution.commit], { cwd: tempLocation }); + } else { + await execGit(["clone", resolution.repo, tempLocation]); + } + await execGit(["checkout", resolution.commit], { cwd: tempLocation }); + try { + const shouldBeBuilt = await preparePkg(tempLocation); + if (ignoreScripts && shouldBeBuilt) { + (0, logger_1.globalWarn)(`The git-hosted package fetched from "${resolution.repo}" has to be built but the build scripts were ignored.`); + } + } catch (err) { + err.message = `Failed to prepare git-hosted package fetched from "${resolution.repo}": ${err.message}`; + throw err; + } + await (0, rimraf_1.default)(path_1.default.join(tempLocation, ".git")); + const filesIndex = await cafs.addFilesFromDir(tempLocation, opts.manifest); + return { filesIndex }; + }; + return { + git: gitFetcher + }; + } + exports2.createGitFetcher = createGitFetcher; + function shouldUseShallow(repoUrl, allowedHosts) { + try { + const { host } = new url_1.URL(repoUrl); + if (allowedHosts.has(host)) { + return true; + } + } catch (e) { } + return false; + } + function prefixGitArgs() { + return process.platform === "win32" ? ["-c", "core.longpaths=true"] : []; + } + function execGit(args2, opts) { + const fullArgs = prefixGitArgs().concat(args2 || []); + return (0, execa_1.default)("git", fullArgs, opts); } - exports2.shuffleArray = shuffleArray; } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/helpers.js -var require_helpers = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/helpers.js"(exports2) { +// ../node_modules/.pnpm/nerf-dart@1.0.0/node_modules/nerf-dart/index.js +var require_nerf_dart = __commonJS({ + "../node_modules/.pnpm/nerf-dart@1.0.0/node_modules/nerf-dart/index.js"(exports2, module2) { + var url = require("url"); + module2.exports = toNerfDart; + function toNerfDart(uri) { + var parsed = url.parse(uri); + delete parsed.protocol; + delete parsed.auth; + delete parsed.query; + delete parsed.search; + delete parsed.hash; + return url.resolve(url.format(parsed), "."); + } + } +}); + +// ../network/auth-header/lib/getAuthHeadersFromConfig.js +var require_getAuthHeadersFromConfig = __commonJS({ + "../network/auth-header/lib/getAuthHeadersFromConfig.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateSocksClientChainOptions = exports2.validateSocksClientOptions = void 0; - var util_1 = require_util5(); - var constants_1 = require_constants8(); - var stream = require("stream"); - function validateSocksClientOptions(options, acceptedCommands = ["connect", "bind", "associate"]) { - if (!constants_1.SocksCommand[options.command]) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommand, options); - } - if (acceptedCommands.indexOf(options.command) === -1) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandForOperation, options); - } - if (!isValidSocksRemoteHost(options.destination)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options); + exports2.getAuthHeadersFromConfig = void 0; + var error_1 = require_lib8(); + var child_process_1 = require("child_process"); + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var nerf_dart_1 = __importDefault4(require_nerf_dart()); + function getAuthHeadersFromConfig({ allSettings, userSettings }) { + const authHeaderValueByURI = {}; + for (const [key, value] of Object.entries(allSettings)) { + const [uri, authType] = splitKey(key); + switch (authType) { + case "_authToken": { + authHeaderValueByURI[uri] = `Bearer ${value}`; + continue; + } + case "_auth": { + authHeaderValueByURI[uri] = `Basic ${value}`; + continue; + } + case "username": { + if (`${uri}:_password` in allSettings) { + const password = Buffer.from(allSettings[`${uri}:_password`], "base64").toString("utf8"); + authHeaderValueByURI[uri] = `Basic ${Buffer.from(`${value}:${password}`).toString("base64")}`; + } + } + } } - if (!isValidSocksProxy(options.proxy)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options); + for (const [key, value] of Object.entries(userSettings)) { + const [uri, authType] = splitKey(key); + if (authType === "tokenHelper") { + authHeaderValueByURI[uri] = loadToken(value, key); + } } - validateCustomProxyAuth(options.proxy, options); - if (options.timeout && !isValidTimeoutValue(options.timeout)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options); + const registry = allSettings["registry"] ? (0, nerf_dart_1.default)(allSettings["registry"]) : "//registry.npmjs.org/"; + if (userSettings["tokenHelper"]) { + authHeaderValueByURI[registry] = loadToken(userSettings["tokenHelper"], "tokenHelper"); + } else if (allSettings["_authToken"]) { + authHeaderValueByURI[registry] = `Bearer ${allSettings["_authToken"]}`; + } else if (allSettings["_auth"]) { + authHeaderValueByURI[registry] = `Basic ${allSettings["_auth"]}`; + } else if (allSettings["_password"] && allSettings["username"]) { + authHeaderValueByURI[registry] = `Basic ${Buffer.from(`${allSettings["username"]}:${allSettings["_password"]}`).toString("base64")}`; } - if (options.existing_socket && !(options.existing_socket instanceof stream.Duplex)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsExistingSocket, options); + return authHeaderValueByURI; + } + exports2.getAuthHeadersFromConfig = getAuthHeadersFromConfig; + function splitKey(key) { + const index = key.lastIndexOf(":"); + if (index === -1) { + return [key, ""]; } + return [key.slice(0, index), key.slice(index + 1)]; } - exports2.validateSocksClientOptions = validateSocksClientOptions; - function validateSocksClientChainOptions(options) { - if (options.command !== "connect") { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandChain, options); + function loadToken(helperPath, settingName) { + if (!path_1.default.isAbsolute(helperPath) || !fs_1.default.existsSync(helperPath)) { + throw new error_1.PnpmError("BAD_TOKEN_HELPER_PATH", `${settingName} must be an absolute path, without arguments`); } - if (!isValidSocksRemoteHost(options.destination)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options); + const spawnResult = (0, child_process_1.spawnSync)(helperPath, { shell: true }); + if (spawnResult.status !== 0) { + throw new error_1.PnpmError("TOKEN_HELPER_ERROR_STATUS", `Error running "${helperPath}" as a token helper, configured as ${settingName}. Exit code ${spawnResult.status?.toString() ?? ""}`); } - if (!(options.proxies && Array.isArray(options.proxies) && options.proxies.length >= 2)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxiesLength, options); + return spawnResult.stdout.toString("utf8").trimEnd(); + } + } +}); + +// ../network/auth-header/lib/index.js +var require_lib76 = __commonJS({ + "../network/auth-header/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createGetAuthHeaderByURI = void 0; + var nerf_dart_1 = __importDefault4(require_nerf_dart()); + var url_1 = require("url"); + var getAuthHeadersFromConfig_1 = require_getAuthHeadersFromConfig(); + function createGetAuthHeaderByURI(opts) { + const authHeaders = (0, getAuthHeadersFromConfig_1.getAuthHeadersFromConfig)({ + allSettings: opts.allSettings, + userSettings: opts.userSettings ?? {} + }); + if (Object.keys(authHeaders).length === 0) + return () => void 0; + return getAuthHeaderByURI.bind(null, authHeaders, getMaxParts(Object.keys(authHeaders))); + } + exports2.createGetAuthHeaderByURI = createGetAuthHeaderByURI; + function getMaxParts(uris) { + return uris.reduce((max, uri) => { + const parts = uri.split("/").length; + return parts > max ? parts : max; + }, 0); + } + function getAuthHeaderByURI(authHeaders, maxParts, uri) { + const nerfed = (0, nerf_dart_1.default)(uri); + const parts = nerfed.split("/"); + for (let i = Math.min(parts.length, maxParts) - 1; i >= 3; i--) { + const key = `${parts.slice(0, i).join("/")}/`; + if (authHeaders[key]) + return authHeaders[key]; } - options.proxies.forEach((proxy) => { - if (!isValidSocksProxy(proxy)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options); - } - validateCustomProxyAuth(proxy, options); - }); - if (options.timeout && !isValidTimeoutValue(options.timeout)) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options); + const urlWithoutPort = removePort(uri); + if (urlWithoutPort !== uri) { + return getAuthHeaderByURI(authHeaders, maxParts, urlWithoutPort); } + return void 0; } - exports2.validateSocksClientChainOptions = validateSocksClientChainOptions; - function validateCustomProxyAuth(proxy, options) { - if (proxy.custom_auth_method !== void 0) { - if (proxy.custom_auth_method < constants_1.SOCKS5_CUSTOM_AUTH_START || proxy.custom_auth_method > constants_1.SOCKS5_CUSTOM_AUTH_END) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthRange, options); - } - if (proxy.custom_auth_request_handler === void 0 || typeof proxy.custom_auth_request_handler !== "function") { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); - } - if (proxy.custom_auth_response_size === void 0) { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); - } - if (proxy.custom_auth_response_handler === void 0 || typeof proxy.custom_auth_response_handler !== "function") { - throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options); - } - } + function removePort(originalUrl) { + const urlObj = new url_1.URL(originalUrl); + if (urlObj.port === "") + return originalUrl; + urlObj.port = ""; + return urlObj.toString(); } - function isValidSocksRemoteHost(remoteHost) { - return remoteHost && typeof remoteHost.host === "string" && typeof remoteHost.port === "number" && remoteHost.port >= 0 && remoteHost.port <= 65535; + } +}); + +// ../pkg-manager/client/lib/index.js +var require_lib77 = __commonJS({ + "../pkg-manager/client/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createResolver = exports2.createClient = void 0; + var default_resolver_1 = require_lib74(); + var fetch_1 = require_lib37(); + var directory_fetcher_1 = require_lib59(); + var git_fetcher_1 = require_lib75(); + var tarball_fetcher_1 = require_lib64(); + var network_auth_header_1 = require_lib76(); + var map_1 = __importDefault4(require_map4()); + function createClient(opts) { + const fetchFromRegistry = (0, fetch_1.createFetchFromRegistry)(opts); + const getAuthHeader = (0, network_auth_header_1.createGetAuthHeaderByURI)({ allSettings: opts.authConfig, userSettings: opts.userConfig }); + return { + fetchers: createFetchers(fetchFromRegistry, getAuthHeader, opts, opts.customFetchers), + resolve: (0, default_resolver_1.createResolver)(fetchFromRegistry, getAuthHeader, opts) + }; } - function isValidSocksProxy(proxy) { - return proxy && (typeof proxy.host === "string" || typeof proxy.ipaddress === "string") && typeof proxy.port === "number" && proxy.port >= 0 && proxy.port <= 65535 && (proxy.type === 4 || proxy.type === 5); + exports2.createClient = createClient; + function createResolver(opts) { + const fetchFromRegistry = (0, fetch_1.createFetchFromRegistry)(opts); + const getAuthHeader = (0, network_auth_header_1.createGetAuthHeaderByURI)({ allSettings: opts.authConfig, userSettings: opts.userConfig }); + return (0, default_resolver_1.createResolver)(fetchFromRegistry, getAuthHeader, opts); } - function isValidTimeoutValue(value) { - return typeof value === "number" && value > 0; + exports2.createResolver = createResolver; + function createFetchers(fetchFromRegistry, getAuthHeader, opts, customFetchers) { + const defaultFetchers = { + ...(0, tarball_fetcher_1.createTarballFetcher)(fetchFromRegistry, getAuthHeader, opts), + ...(0, git_fetcher_1.createGitFetcher)(opts), + ...(0, directory_fetcher_1.createDirectoryFetcher)({ resolveSymlinks: opts.resolveSymlinksInInjectedDirs }) + }; + const overwrites = (0, map_1.default)( + (factory) => factory({ defaultFetchers }), + // eslint-disable-line @typescript-eslint/no-explicit-any + customFetchers ?? {} + // eslint-disable-line @typescript-eslint/no-explicit-any + ); + return { + ...defaultFetchers, + ...overwrites + }; } } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/receivebuffer.js -var require_receivebuffer = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/common/receivebuffer.js"(exports2) { +// ../config/pick-registry-for-package/lib/index.js +var require_lib78 = __commonJS({ + "../config/pick-registry-for-package/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ReceiveBuffer = void 0; - var ReceiveBuffer = class { - constructor(size = 4096) { - this.buffer = Buffer.allocUnsafe(size); - this.offset = 0; - this.originalSize = size; - } - get length() { - return this.offset; - } - append(data) { - if (!Buffer.isBuffer(data)) { - throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer."); - } - if (this.offset + data.length >= this.buffer.length) { - const tmp = this.buffer; - this.buffer = Buffer.allocUnsafe(Math.max(this.buffer.length + this.originalSize, this.buffer.length + data.length)); - tmp.copy(this.buffer); - } - data.copy(this.buffer, this.offset); - return this.offset += data.length; - } - peek(length) { - if (length > this.offset) { - throw new Error("Attempted to read beyond the bounds of the managed internal data."); + exports2.pickRegistryForPackage = void 0; + function pickRegistryForPackage(registries, packageName, pref) { + const scope = getScope(packageName, pref); + return (scope && registries[scope]) ?? registries.default; + } + exports2.pickRegistryForPackage = pickRegistryForPackage; + function getScope(pkgName, pref) { + if (pref?.startsWith("npm:")) { + pref = pref.slice(4); + if (pref[0] === "@") { + return pref.substring(0, pref.indexOf("/")); } - return this.buffer.slice(0, length); } - get(length) { - if (length > this.offset) { - throw new Error("Attempted to read beyond the bounds of the managed internal data."); - } - const value = Buffer.allocUnsafe(length); - this.buffer.slice(0, length).copy(value); - this.buffer.copyWithin(0, length, length + this.offset - length); - this.offset -= length; - return value; + if (pkgName[0] === "@") { + return pkgName.substring(0, pkgName.indexOf("/")); } - }; - exports2.ReceiveBuffer = ReceiveBuffer; + return null; + } } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/client/socksclient.js -var require_socksclient = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/client/socksclient.js"(exports2) { +// lib/checkForUpdates.js +var require_checkForUpdates = __commonJS({ + "lib/checkForUpdates.js"(exports2) { "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SocksClientError = exports2.SocksClient = void 0; - var events_1 = require("events"); - var net = require("net"); - var ip = require_ip(); - var smart_buffer_1 = require_smartbuffer(); - var constants_1 = require_constants8(); - var helpers_1 = require_helpers(); - var receivebuffer_1 = require_receivebuffer(); - var util_1 = require_util5(); - Object.defineProperty(exports2, "SocksClientError", { enumerable: true, get: function() { - return util_1.SocksClientError; - } }); - var SocksClient = class extends events_1.EventEmitter { - constructor(options) { - super(); - this.options = Object.assign({}, options); - helpers_1.validateSocksClientOptions(options); - this.setState(constants_1.SocksClientState.Created); + exports2.checkForUpdates = void 0; + var path_1 = __importDefault4(require("path")); + var cli_meta_1 = require_lib4(); + var client_1 = require_lib77(); + var pick_registry_for_package_1 = require_lib78(); + var core_loggers_1 = require_lib9(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var write_json_file_1 = __importDefault4(require_write_json_file()); + var UPDATE_CHECK_FREQUENCY = 24 * 60 * 60 * 1e3; + async function checkForUpdates(config) { + const stateFile = path_1.default.join(config.stateDir, "pnpm-state.json"); + let state; + try { + state = await (0, load_json_file_1.default)(stateFile); + } catch (err) { } - static createConnection(options, callback) { - return new Promise((resolve, reject) => { - try { - helpers_1.validateSocksClientOptions(options, ["connect"]); - } catch (err) { - if (typeof callback === "function") { - callback(err); - return resolve(err); - } else { - return reject(err); - } - } - const client = new SocksClient(options); - client.connect(options.existing_socket); - client.once("established", (info) => { - client.removeAllListeners(); - if (typeof callback === "function") { - callback(null, info); - resolve(info); - } else { - resolve(info); - } - }); - client.once("error", (err) => { - client.removeAllListeners(); - if (typeof callback === "function") { - callback(err); - resolve(err); - } else { - reject(err); - } - }); + if (state?.lastUpdateCheck && Date.now() - new Date(state.lastUpdateCheck).valueOf() < UPDATE_CHECK_FREQUENCY) + return; + const resolve = (0, client_1.createResolver)({ + ...config, + authConfig: config.rawConfig, + retry: { + retries: 0 + } + }); + const resolution = await resolve({ alias: cli_meta_1.packageManager.name, pref: "latest" }, { + lockfileDir: config.lockfileDir ?? config.dir, + preferredVersions: {}, + projectDir: config.dir, + registry: (0, pick_registry_for_package_1.pickRegistryForPackage)(config.registries, cli_meta_1.packageManager.name, "latest") + }); + if (resolution?.manifest?.version) { + core_loggers_1.updateCheckLogger.debug({ + currentVersion: cli_meta_1.packageManager.version, + latestVersion: resolution?.manifest.version }); } - static createConnectionChain(options, callback) { - return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { - try { - helpers_1.validateSocksClientChainOptions(options); - } catch (err) { - if (typeof callback === "function") { - callback(err); - return resolve(err); - } else { - return reject(err); - } - } - let sock; - if (options.randomizeChain) { - util_1.shuffleArray(options.proxies); - } - try { - for (let i = 0; i < options.proxies.length; i++) { - const nextProxy = options.proxies[i]; - const nextDestination = i === options.proxies.length - 1 ? options.destination : { - host: options.proxies[i + 1].ipaddress, - port: options.proxies[i + 1].port - }; - const result = yield SocksClient.createConnection({ - command: "connect", - proxy: nextProxy, - destination: nextDestination - }); - if (!sock) { - sock = result.socket; - } - } - if (typeof callback === "function") { - callback(null, { socket: sock }); - resolve({ socket: sock }); - } else { - resolve({ socket: sock }); - } - } catch (err) { - if (typeof callback === "function") { - callback(err); - resolve(err); - } else { - reject(err); - } - } - })); + await (0, write_json_file_1.default)(stateFile, { + ...state, + lastUpdateCheck: (/* @__PURE__ */ new Date()).toUTCString() + }); + } + exports2.checkForUpdates = checkForUpdates; + } +}); + +// ../node_modules/.pnpm/rfc4648@1.5.2/node_modules/rfc4648/lib/index.js +var require_lib79 = __commonJS({ + "../node_modules/.pnpm/rfc4648@1.5.2/node_modules/rfc4648/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function parse2(string, encoding, opts) { + var _opts$out; + if (opts === void 0) { + opts = {}; } - static createUDPFrame(options) { - const buff = new smart_buffer_1.SmartBuffer(); - buff.writeUInt16BE(0); - buff.writeUInt8(options.frameNumber || 0); - if (net.isIPv4(options.remoteHost.host)) { - buff.writeUInt8(constants_1.Socks5HostType.IPv4); - buff.writeUInt32BE(ip.toLong(options.remoteHost.host)); - } else if (net.isIPv6(options.remoteHost.host)) { - buff.writeUInt8(constants_1.Socks5HostType.IPv6); - buff.writeBuffer(ip.toBuffer(options.remoteHost.host)); - } else { - buff.writeUInt8(constants_1.Socks5HostType.Hostname); - buff.writeUInt8(Buffer.byteLength(options.remoteHost.host)); - buff.writeString(options.remoteHost.host); + if (!encoding.codes) { + encoding.codes = {}; + for (var i = 0; i < encoding.chars.length; ++i) { + encoding.codes[encoding.chars[i]] = i; } - buff.writeUInt16BE(options.remoteHost.port); - buff.writeBuffer(options.data); - return buff.toBuffer(); } - static parseUDPFrame(data) { - const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); - buff.readOffset = 2; - const frameNumber = buff.readUInt8(); - const hostType = buff.readUInt8(); - let remoteHost; - if (hostType === constants_1.Socks5HostType.IPv4) { - remoteHost = ip.fromLong(buff.readUInt32BE()); - } else if (hostType === constants_1.Socks5HostType.IPv6) { - remoteHost = ip.toString(buff.readBuffer(16)); - } else { - remoteHost = buff.readString(buff.readUInt8()); - } - const remotePort = buff.readUInt16BE(); - return { - frameNumber, - remoteHost: { - host: remoteHost, - port: remotePort - }, - data: buff.readBuffer() - }; + if (!opts.loose && string.length * encoding.bits & 7) { + throw new SyntaxError("Invalid padding"); } - setState(newState) { - if (this.state !== constants_1.SocksClientState.Error) { - this.state = newState; + var end = string.length; + while (string[end - 1] === "=") { + --end; + if (!opts.loose && !((string.length - end) * encoding.bits & 7)) { + throw new SyntaxError("Invalid padding"); } } - connect(existingSocket) { - this.onDataReceived = (data) => this.onDataReceivedHandler(data); - this.onClose = () => this.onCloseHandler(); - this.onError = (err) => this.onErrorHandler(err); - this.onConnect = () => this.onConnectHandler(); - const timer = setTimeout(() => this.onEstablishedTimeout(), this.options.timeout || constants_1.DEFAULT_TIMEOUT); - if (timer.unref && typeof timer.unref === "function") { - timer.unref(); - } - if (existingSocket) { - this.socket = existingSocket; - } else { - this.socket = new net.Socket(); + var out = new ((_opts$out = opts.out) != null ? _opts$out : Uint8Array)(end * encoding.bits / 8 | 0); + var bits = 0; + var buffer = 0; + var written = 0; + for (var _i = 0; _i < end; ++_i) { + var value = encoding.codes[string[_i]]; + if (value === void 0) { + throw new SyntaxError("Invalid character " + string[_i]); } - this.socket.once("close", this.onClose); - this.socket.once("error", this.onError); - this.socket.once("connect", this.onConnect); - this.socket.on("data", this.onDataReceived); - this.setState(constants_1.SocksClientState.Connecting); - this.receiveBuffer = new receivebuffer_1.ReceiveBuffer(); - if (existingSocket) { - this.socket.emit("connect"); - } else { - this.socket.connect(this.getSocketOptions()); - if (this.options.set_tcp_nodelay !== void 0 && this.options.set_tcp_nodelay !== null) { - this.socket.setNoDelay(!!this.options.set_tcp_nodelay); - } + buffer = buffer << encoding.bits | value; + bits += encoding.bits; + if (bits >= 8) { + bits -= 8; + out[written++] = 255 & buffer >> bits; } - this.prependOnceListener("established", (info) => { - setImmediate(() => { - if (this.receiveBuffer.length > 0) { - const excessData = this.receiveBuffer.get(this.receiveBuffer.length); - info.socket.emit("data", excessData); - } - info.socket.resume(); - }); - }); } - getSocketOptions() { - return Object.assign(Object.assign({}, this.options.socket_options), { host: this.options.proxy.host || this.options.proxy.ipaddress, port: this.options.proxy.port }); + if (bits >= encoding.bits || 255 & buffer << 8 - bits) { + throw new SyntaxError("Unexpected end of data"); } - onEstablishedTimeout() { - if (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.BoundWaitingForConnection) { - this.closeSocket(constants_1.ERRORS.ProxyConnectionTimedOut); - } + return out; + } + function stringify2(data, encoding, opts) { + if (opts === void 0) { + opts = {}; } - onConnectHandler() { - this.setState(constants_1.SocksClientState.Connected); - if (this.options.proxy.type === 4) { - this.sendSocks4InitialHandshake(); - } else { - this.sendSocks5InitialHandshake(); + var _opts = opts, _opts$pad = _opts.pad, pad = _opts$pad === void 0 ? true : _opts$pad; + var mask = (1 << encoding.bits) - 1; + var out = ""; + var bits = 0; + var buffer = 0; + for (var i = 0; i < data.length; ++i) { + buffer = buffer << 8 | 255 & data[i]; + bits += 8; + while (bits > encoding.bits) { + bits -= encoding.bits; + out += encoding.chars[mask & buffer >> bits]; } - this.setState(constants_1.SocksClientState.SentInitialHandshake); } - onDataReceivedHandler(data) { - this.receiveBuffer.append(data); - this.processData(); + if (bits) { + out += encoding.chars[mask & buffer << encoding.bits - bits]; } - processData() { - while (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.Error && this.receiveBuffer.length >= this.nextRequiredPacketBufferSize) { - if (this.state === constants_1.SocksClientState.SentInitialHandshake) { - if (this.options.proxy.type === 4) { - this.handleSocks4FinalHandshakeResponse(); - } else { - this.handleInitialSocks5HandshakeResponse(); - } - } else if (this.state === constants_1.SocksClientState.SentAuthentication) { - this.handleInitialSocks5AuthenticationHandshakeResponse(); - } else if (this.state === constants_1.SocksClientState.SentFinalHandshake) { - this.handleSocks5FinalHandshakeResponse(); - } else if (this.state === constants_1.SocksClientState.BoundWaitingForConnection) { - if (this.options.proxy.type === 4) { - this.handleSocks4IncomingConnectionResponse(); - } else { - this.handleSocks5IncomingConnectionResponse(); - } - } else { - this.closeSocket(constants_1.ERRORS.InternalError); - break; - } + if (pad) { + while (out.length * encoding.bits & 7) { + out += "="; } } - onCloseHandler() { - this.closeSocket(constants_1.ERRORS.SocketClosed); + return out; + } + var base16Encoding = { + chars: "0123456789ABCDEF", + bits: 4 + }; + var base32Encoding = { + chars: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567", + bits: 5 + }; + var base32HexEncoding = { + chars: "0123456789ABCDEFGHIJKLMNOPQRSTUV", + bits: 5 + }; + var base64Encoding = { + chars: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", + bits: 6 + }; + var base64UrlEncoding = { + chars: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_", + bits: 6 + }; + var base16 = { + parse: function parse$1(string, opts) { + return parse2(string.toUpperCase(), base16Encoding, opts); + }, + stringify: function stringify$1(data, opts) { + return stringify2(data, base16Encoding, opts); } - onErrorHandler(err) { - this.closeSocket(err.message); + }; + var base32 = { + parse: function parse$1(string, opts) { + if (opts === void 0) { + opts = {}; + } + return parse2(opts.loose ? string.toUpperCase().replace(/0/g, "O").replace(/1/g, "L").replace(/8/g, "B") : string, base32Encoding, opts); + }, + stringify: function stringify$1(data, opts) { + return stringify2(data, base32Encoding, opts); } - removeInternalSocketHandlers() { - this.socket.pause(); - this.socket.removeListener("data", this.onDataReceived); - this.socket.removeListener("close", this.onClose); - this.socket.removeListener("error", this.onError); - this.socket.removeListener("connect", this.onConnect); + }; + var base32hex = { + parse: function parse$1(string, opts) { + return parse2(string, base32HexEncoding, opts); + }, + stringify: function stringify$1(data, opts) { + return stringify2(data, base32HexEncoding, opts); } - closeSocket(err) { - if (this.state !== constants_1.SocksClientState.Error) { - this.setState(constants_1.SocksClientState.Error); - this.socket.destroy(); - this.removeInternalSocketHandlers(); - this.emit("error", new util_1.SocksClientError(err, this.options)); - } + }; + var base64 = { + parse: function parse$1(string, opts) { + return parse2(string, base64Encoding, opts); + }, + stringify: function stringify$1(data, opts) { + return stringify2(data, base64Encoding, opts); } - sendSocks4InitialHandshake() { - const userId = this.options.proxy.userId || ""; - const buff = new smart_buffer_1.SmartBuffer(); - buff.writeUInt8(4); - buff.writeUInt8(constants_1.SocksCommand[this.options.command]); - buff.writeUInt16BE(this.options.destination.port); - if (net.isIPv4(this.options.destination.host)) { - buff.writeBuffer(ip.toBuffer(this.options.destination.host)); - buff.writeStringNT(userId); - } else { - buff.writeUInt8(0); - buff.writeUInt8(0); - buff.writeUInt8(0); - buff.writeUInt8(1); - buff.writeStringNT(userId); - buff.writeStringNT(this.options.destination.host); - } - this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks4Response; - this.socket.write(buff.toBuffer()); + }; + var base64url = { + parse: function parse$1(string, opts) { + return parse2(string, base64UrlEncoding, opts); + }, + stringify: function stringify$1(data, opts) { + return stringify2(data, base64UrlEncoding, opts); } - handleSocks4FinalHandshakeResponse() { - const data = this.receiveBuffer.get(8); - if (data[1] !== constants_1.Socks4Response.Granted) { - this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedConnection} - (${constants_1.Socks4Response[data[1]]})`); + }; + var codec = { + parse: parse2, + stringify: stringify2 + }; + exports2.base16 = base16; + exports2.base32 = base32; + exports2.base32hex = base32hex; + exports2.base64 = base64; + exports2.base64url = base64url; + exports2.codec = codec; + } +}); + +// ../packages/crypto.base32-hash/lib/index.js +var require_lib80 = __commonJS({ + "../packages/crypto.base32-hash/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createBase32HashFromFile = exports2.createBase32Hash = void 0; + var crypto_1 = __importDefault4(require("crypto")); + var fs_1 = __importDefault4(require("fs")); + var rfc4648_1 = require_lib79(); + function createBase32Hash(str) { + return rfc4648_1.base32.stringify(crypto_1.default.createHash("md5").update(str).digest()).replace(/(=+)$/, "").toLowerCase(); + } + exports2.createBase32Hash = createBase32Hash; + async function createBase32HashFromFile(file) { + const content = await fs_1.default.promises.readFile(file, "utf8"); + return createBase32Hash(content.split("\r\n").join("\n")); + } + exports2.createBase32HashFromFile = createBase32HashFromFile; + } +}); + +// ../packages/dependency-path/lib/index.js +var require_lib81 = __commonJS({ + "../packages/dependency-path/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPeersFolderSuffix = exports2.createPeersFolderSuffixNewFormat = exports2.depPathToFilename = exports2.parse = exports2.refToRelative = exports2.relative = exports2.getRegistryByPackageName = exports2.refToAbsolute = exports2.tryGetPackageId = exports2.indexOfPeersSuffix = exports2.resolve = exports2.isAbsolute = void 0; + var crypto_base32_hash_1 = require_lib80(); + var encode_registry_1 = __importDefault4(require_encode_registry()); + var semver_12 = __importDefault4(require_semver2()); + function isAbsolute(dependencyPath) { + return dependencyPath[0] !== "/"; + } + exports2.isAbsolute = isAbsolute; + function resolve(registries, resolutionLocation) { + if (!isAbsolute(resolutionLocation)) { + let registryUrl; + if (resolutionLocation[1] === "@") { + const slashIndex = resolutionLocation.indexOf("/", 1); + const scope = resolutionLocation.slice(1, slashIndex !== -1 ? slashIndex : 0); + registryUrl = registries[scope] || registries.default; } else { - if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { - const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); - buff.readOffset = 2; - const remoteHost = { - port: buff.readUInt16BE(), - host: ip.fromLong(buff.readUInt32BE()) - }; - if (remoteHost.host === "0.0.0.0") { - remoteHost.host = this.options.proxy.ipaddress; - } - this.setState(constants_1.SocksClientState.BoundWaitingForConnection); - this.emit("bound", { remoteHost, socket: this.socket }); - } else { - this.setState(constants_1.SocksClientState.Established); - this.removeInternalSocketHandlers(); - this.emit("established", { socket: this.socket }); - } + registryUrl = registries.default; } + const registryDirectory = (0, encode_registry_1.default)(registryUrl); + return `${registryDirectory}${resolutionLocation}`; } - handleSocks4IncomingConnectionResponse() { - const data = this.receiveBuffer.get(8); - if (data[1] !== constants_1.Socks4Response.Granted) { - this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${constants_1.Socks4Response[data[1]]})`); - } else { - const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); - buff.readOffset = 2; - const remoteHost = { - port: buff.readUInt16BE(), - host: ip.fromLong(buff.readUInt32BE()) - }; - this.setState(constants_1.SocksClientState.Established); - this.removeInternalSocketHandlers(); - this.emit("established", { remoteHost, socket: this.socket }); + return resolutionLocation; + } + exports2.resolve = resolve; + function indexOfPeersSuffix(depPath) { + if (!depPath.endsWith(")")) + return -1; + let open = true; + for (let i = depPath.length - 2; i >= 0; i--) { + if (depPath[i] === "(") { + open = false; + } else if (depPath[i] === ")") { + if (open) + return -1; + open = true; + } else if (!open) { + return i + 1; } } - sendSocks5InitialHandshake() { - const buff = new smart_buffer_1.SmartBuffer(); - const supportedAuthMethods = [constants_1.Socks5Auth.NoAuth]; - if (this.options.proxy.userId || this.options.proxy.password) { - supportedAuthMethods.push(constants_1.Socks5Auth.UserPass); - } - if (this.options.proxy.custom_auth_method !== void 0) { - supportedAuthMethods.push(this.options.proxy.custom_auth_method); - } - buff.writeUInt8(5); - buff.writeUInt8(supportedAuthMethods.length); - for (const authMethod of supportedAuthMethods) { - buff.writeUInt8(authMethod); - } - this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse; - this.socket.write(buff.toBuffer()); - this.setState(constants_1.SocksClientState.SentInitialHandshake); + return -1; + } + exports2.indexOfPeersSuffix = indexOfPeersSuffix; + function tryGetPackageId(registries, relDepPath) { + if (relDepPath[0] !== "/") { + return null; } - handleInitialSocks5HandshakeResponse() { - const data = this.receiveBuffer.get(2); - if (data[0] !== 5) { - this.closeSocket(constants_1.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion); - } else if (data[1] === constants_1.SOCKS5_NO_ACCEPTABLE_AUTH) { - this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType); - } else { - if (data[1] === constants_1.Socks5Auth.NoAuth) { - this.socks5ChosenAuthType = constants_1.Socks5Auth.NoAuth; - this.sendSocks5CommandRequest(); - } else if (data[1] === constants_1.Socks5Auth.UserPass) { - this.socks5ChosenAuthType = constants_1.Socks5Auth.UserPass; - this.sendSocks5UserPassAuthentication(); - } else if (data[1] === this.options.proxy.custom_auth_method) { - this.socks5ChosenAuthType = this.options.proxy.custom_auth_method; - this.sendSocks5CustomAuthentication(); - } else { - this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType); - } - } + const sepIndex = indexOfPeersSuffix(relDepPath); + if (sepIndex !== -1) { + return resolve(registries, relDepPath.substring(0, sepIndex)); } - sendSocks5UserPassAuthentication() { - const userId = this.options.proxy.userId || ""; - const password = this.options.proxy.password || ""; - const buff = new smart_buffer_1.SmartBuffer(); - buff.writeUInt8(1); - buff.writeUInt8(Buffer.byteLength(userId)); - buff.writeString(userId); - buff.writeUInt8(Buffer.byteLength(password)); - buff.writeString(password); - this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse; - this.socket.write(buff.toBuffer()); - this.setState(constants_1.SocksClientState.SentAuthentication); + const underscoreIndex = relDepPath.indexOf("_", relDepPath.lastIndexOf("/")); + if (underscoreIndex !== -1) { + return resolve(registries, relDepPath.slice(0, underscoreIndex)); } - sendSocks5CustomAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - this.nextRequiredPacketBufferSize = this.options.proxy.custom_auth_response_size; - this.socket.write(yield this.options.proxy.custom_auth_request_handler()); - this.setState(constants_1.SocksClientState.SentAuthentication); - }); + return resolve(registries, relDepPath); + } + exports2.tryGetPackageId = tryGetPackageId; + function refToAbsolute(reference, pkgName, registries) { + if (reference.startsWith("link:")) { + return null; } - handleSocks5CustomAuthHandshakeResponse(data) { - return __awaiter(this, void 0, void 0, function* () { - return yield this.options.proxy.custom_auth_response_handler(data); - }); + if (!reference.includes("/") || reference.includes("(") && reference.lastIndexOf("/", reference.indexOf("(")) === -1) { + const registryName2 = (0, encode_registry_1.default)(getRegistryByPackageName(registries, pkgName)); + return `${registryName2}/${pkgName}/${reference}`; } - handleSocks5AuthenticationNoAuthHandshakeResponse(data) { - return __awaiter(this, void 0, void 0, function* () { - return data[1] === 0; - }); + if (reference[0] !== "/") + return reference; + const registryName = (0, encode_registry_1.default)(getRegistryByPackageName(registries, pkgName)); + return `${registryName}${reference}`; + } + exports2.refToAbsolute = refToAbsolute; + function getRegistryByPackageName(registries, packageName) { + if (packageName[0] !== "@") + return registries.default; + const scope = packageName.substring(0, packageName.indexOf("/")); + return registries[scope] || registries.default; + } + exports2.getRegistryByPackageName = getRegistryByPackageName; + function relative2(registries, packageName, absoluteResolutionLoc) { + const registryName = (0, encode_registry_1.default)(getRegistryByPackageName(registries, packageName)); + if (absoluteResolutionLoc.startsWith(`${registryName}/`)) { + return absoluteResolutionLoc.slice(absoluteResolutionLoc.indexOf("/")); } - handleSocks5AuthenticationUserPassHandshakeResponse(data) { - return __awaiter(this, void 0, void 0, function* () { - return data[1] === 0; - }); + return absoluteResolutionLoc; + } + exports2.relative = relative2; + function refToRelative(reference, pkgName) { + if (reference.startsWith("link:")) { + return null; } - handleInitialSocks5AuthenticationHandshakeResponse() { - return __awaiter(this, void 0, void 0, function* () { - this.setState(constants_1.SocksClientState.ReceivedAuthenticationResponse); - let authResult = false; - if (this.socks5ChosenAuthType === constants_1.Socks5Auth.NoAuth) { - authResult = yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)); - } else if (this.socks5ChosenAuthType === constants_1.Socks5Auth.UserPass) { - authResult = yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)); - } else if (this.socks5ChosenAuthType === this.options.proxy.custom_auth_method) { - authResult = yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size)); - } - if (!authResult) { - this.closeSocket(constants_1.ERRORS.Socks5AuthenticationFailed); - } else { - this.sendSocks5CommandRequest(); - } - }); + if (reference.startsWith("file:")) { + return reference; } - sendSocks5CommandRequest() { - const buff = new smart_buffer_1.SmartBuffer(); - buff.writeUInt8(5); - buff.writeUInt8(constants_1.SocksCommand[this.options.command]); - buff.writeUInt8(0); - if (net.isIPv4(this.options.destination.host)) { - buff.writeUInt8(constants_1.Socks5HostType.IPv4); - buff.writeBuffer(ip.toBuffer(this.options.destination.host)); - } else if (net.isIPv6(this.options.destination.host)) { - buff.writeUInt8(constants_1.Socks5HostType.IPv6); - buff.writeBuffer(ip.toBuffer(this.options.destination.host)); - } else { - buff.writeUInt8(constants_1.Socks5HostType.Hostname); - buff.writeUInt8(this.options.destination.host.length); - buff.writeString(this.options.destination.host); - } - buff.writeUInt16BE(this.options.destination.port); - this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; - this.socket.write(buff.toBuffer()); - this.setState(constants_1.SocksClientState.SentFinalHandshake); + if (!reference.includes("/") || reference.includes("(") && reference.lastIndexOf("/", reference.indexOf("(")) === -1) { + return `/${pkgName}/${reference}`; } - handleSocks5FinalHandshakeResponse() { - const header = this.receiveBuffer.peek(5); - if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { - this.closeSocket(`${constants_1.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${constants_1.Socks5Response[header[1]]}`); - } else { - const addressType = header[3]; - let remoteHost; - let buff; - if (addressType === constants_1.Socks5HostType.IPv4) { - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); - remoteHost = { - host: ip.fromLong(buff.readUInt32BE()), - port: buff.readUInt16BE() - }; - if (remoteHost.host === "0.0.0.0") { - remoteHost.host = this.options.proxy.ipaddress; - } - } else if (addressType === constants_1.Socks5HostType.Hostname) { - const hostLength = header[4]; - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); - remoteHost = { - host: buff.readString(hostLength), - port: buff.readUInt16BE() - }; - } else if (addressType === constants_1.Socks5HostType.IPv6) { - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); - remoteHost = { - host: ip.toString(buff.readBuffer(16)), - port: buff.readUInt16BE() - }; + return reference; + } + exports2.refToRelative = refToRelative; + function parse2(dependencyPath) { + if (typeof dependencyPath !== "string") { + throw new TypeError(`Expected \`dependencyPath\` to be of type \`string\`, got \`${// eslint-disable-next-line: strict-type-predicates + dependencyPath === null ? "null" : typeof dependencyPath}\``); + } + const _isAbsolute = isAbsolute(dependencyPath); + const parts = dependencyPath.split("/"); + if (!_isAbsolute) + parts.shift(); + const host = _isAbsolute ? parts.shift() : void 0; + if (parts.length === 0) + return { + host, + isAbsolute: _isAbsolute + }; + const name = parts[0].startsWith("@") ? `${parts.shift()}/${parts.shift()}` : parts.shift(); + let version2 = parts.join("/"); + if (version2) { + let peerSepIndex; + let peersSuffix; + if (version2.includes("(") && version2.endsWith(")")) { + peerSepIndex = version2.indexOf("("); + if (peerSepIndex !== -1) { + peersSuffix = version2.substring(peerSepIndex); + version2 = version2.substring(0, peerSepIndex); } - this.setState(constants_1.SocksClientState.ReceivedFinalResponse); - if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.connect) { - this.setState(constants_1.SocksClientState.Established); - this.removeInternalSocketHandlers(); - this.emit("established", { remoteHost, socket: this.socket }); - } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { - this.setState(constants_1.SocksClientState.BoundWaitingForConnection); - this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; - this.emit("bound", { remoteHost, socket: this.socket }); - } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.associate) { - this.setState(constants_1.SocksClientState.Established); - this.removeInternalSocketHandlers(); - this.emit("established", { - remoteHost, - socket: this.socket - }); + } else { + peerSepIndex = version2.indexOf("_"); + if (peerSepIndex !== -1) { + peersSuffix = version2.substring(peerSepIndex + 1); + version2 = version2.substring(0, peerSepIndex); } } + if (semver_12.default.valid(version2)) { + return { + host, + isAbsolute: _isAbsolute, + name, + peersSuffix, + version: version2 + }; + } } - handleSocks5IncomingConnectionResponse() { - const header = this.receiveBuffer.peek(5); - if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { - this.closeSocket(`${constants_1.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${constants_1.Socks5Response[header[1]]}`); - } else { - const addressType = header[3]; - let remoteHost; - let buff; - if (addressType === constants_1.Socks5HostType.IPv4) { - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); - remoteHost = { - host: ip.fromLong(buff.readUInt32BE()), - port: buff.readUInt16BE() - }; - if (remoteHost.host === "0.0.0.0") { - remoteHost.host = this.options.proxy.ipaddress; - } - } else if (addressType === constants_1.Socks5HostType.Hostname) { - const hostLength = header[4]; - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); - remoteHost = { - host: buff.readString(hostLength), - port: buff.readUInt16BE() - }; - } else if (addressType === constants_1.Socks5HostType.IPv6) { - const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; - if (this.receiveBuffer.length < dataNeeded) { - this.nextRequiredPacketBufferSize = dataNeeded; - return; - } - buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); - remoteHost = { - host: ip.toString(buff.readBuffer(16)), - port: buff.readUInt16BE() - }; - } - this.setState(constants_1.SocksClientState.Established); - this.removeInternalSocketHandlers(); - this.emit("established", { remoteHost, socket: this.socket }); + if (!_isAbsolute) + throw new Error(`${dependencyPath} is an invalid relative dependency path`); + return { + host, + isAbsolute: _isAbsolute + }; + } + exports2.parse = parse2; + function depPathToFilename(depPath) { + let filename = depPathToFilenameUnescaped(depPath).replace(/[\\/:*?"<>|]/g, "+"); + if (filename.includes("(")) { + filename = filename.replace(/(\)\()|\(/g, "_").replace(/\)$/, ""); + } + if (filename.length > 120 || filename !== filename.toLowerCase() && !filename.startsWith("file+")) { + return `${filename.substring(0, 50)}_${(0, crypto_base32_hash_1.createBase32Hash)(filename)}`; + } + return filename; + } + exports2.depPathToFilename = depPathToFilename; + function depPathToFilenameUnescaped(depPath) { + if (depPath.indexOf("file:") !== 0) { + if (depPath.startsWith("/")) { + depPath = depPath.substring(1); } + const index = depPath.lastIndexOf("/", depPath.includes("(") ? depPath.indexOf("(") - 1 : depPath.length); + return `${depPath.substring(0, index)}@${depPath.slice(index + 1)}`; } - get socksClientOptions() { - return Object.assign({}, this.options); + return depPath.replace(":", "+"); + } + function createPeersFolderSuffixNewFormat(peers) { + const folderName = peers.map(({ name, version: version2 }) => `${name}@${version2}`).sort().join(")("); + return `(${folderName})`; + } + exports2.createPeersFolderSuffixNewFormat = createPeersFolderSuffixNewFormat; + function createPeersFolderSuffix(peers) { + const folderName = peers.map(({ name, version: version2 }) => `${name.replace("/", "+")}@${version2}`).sort().join("+"); + if (folderName.length > 26) { + return `_${(0, crypto_base32_hash_1.createBase32Hash)(folderName)}`; } + return `_${folderName}`; + } + exports2.createPeersFolderSuffix = createPeersFolderSuffix; + } +}); + +// ../lockfile/lockfile-utils/lib/extendProjectsWithTargetDirs.js +var require_extendProjectsWithTargetDirs = __commonJS({ + "../lockfile/lockfile-utils/lib/extendProjectsWithTargetDirs.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.SocksClient = SocksClient; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extendProjectsWithTargetDirs = void 0; + var path_1 = __importDefault4(require("path")); + var dependency_path_1 = require_lib81(); + function extendProjectsWithTargetDirs(projects, lockfile, ctx) { + const getLocalLocations = ctx.pkgLocationsByDepPath != null ? (depPath) => ctx.pkgLocationsByDepPath[depPath] : (depPath, pkgName) => [path_1.default.join(ctx.virtualStoreDir, (0, dependency_path_1.depPathToFilename)(depPath), "node_modules", pkgName)]; + const projectsById = Object.fromEntries(projects.map((project) => [project.id, { ...project, targetDirs: [] }])); + Object.entries(lockfile.packages ?? {}).forEach(([depPath, pkg]) => { + if (pkg.resolution?.type !== "directory") + return; + const pkgId = pkg.id ?? depPath; + const importerId = pkgId.replace(/^file:/, ""); + if (projectsById[importerId] == null) + return; + const localLocations = getLocalLocations(depPath, pkg.name); + projectsById[importerId].targetDirs.push(...localLocations); + projectsById[importerId].stages = ["preinstall", "install", "postinstall", "prepare", "prepublishOnly"]; + }); + return Object.values(projectsById); + } + exports2.extendProjectsWithTargetDirs = extendProjectsWithTargetDirs; } }); -// ../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/index.js -var require_build = __commonJS({ - "../../node_modules/.pnpm/socks@2.6.1/node_modules/socks/build/index.js"(exports2) { +// ../lockfile/lockfile-utils/lib/nameVerFromPkgSnapshot.js +var require_nameVerFromPkgSnapshot = __commonJS({ + "../lockfile/lockfile-utils/lib/nameVerFromPkgSnapshot.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_socksclient(), exports2); + exports2.nameVerFromPkgSnapshot = void 0; + var dp = __importStar5(require_lib81()); + function nameVerFromPkgSnapshot(depPath, pkgSnapshot) { + if (!pkgSnapshot.name) { + const pkgInfo = dp.parse(depPath); + return { + name: pkgInfo.name, + peersSuffix: pkgInfo.peersSuffix, + version: pkgInfo.version + }; + } + return { + name: pkgSnapshot.name, + peersSuffix: void 0, + version: pkgSnapshot.version + }; + } + exports2.nameVerFromPkgSnapshot = nameVerFromPkgSnapshot; } }); -// ../../node_modules/.pnpm/socks-proxy-agent@5.0.1/node_modules/socks-proxy-agent/dist/agent.js -var require_agent3 = __commonJS({ - "../../node_modules/.pnpm/socks-proxy-agent@5.0.1/node_modules/socks-proxy-agent/dist/agent.js"(exports2) { +// ../lockfile/lockfile-utils/lib/packageIdFromSnapshot.js +var require_packageIdFromSnapshot = __commonJS({ + "../lockfile/lockfile-utils/lib/packageIdFromSnapshot.js"(exports2) { "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var dns_1 = __importDefault(require("dns")); - var tls_1 = __importDefault(require("tls")); - var url_1 = __importDefault(require("url")); - var debug_1 = __importDefault(require_src()); - var agent_base_1 = require_src3(); - var socks_1 = require_build(); - var debug = debug_1.default("socks-proxy-agent"); - function dnsLookup(host) { - return new Promise((resolve, reject) => { - dns_1.default.lookup(host, (err, res) => { - if (err) { - reject(err); - } else { - resolve(res); - } - }); - }); + exports2.packageIdFromSnapshot = void 0; + var dp = __importStar5(require_lib81()); + function packageIdFromSnapshot(depPath, pkgSnapshot, registries) { + if (pkgSnapshot.id) + return pkgSnapshot.id; + return dp.tryGetPackageId(registries, depPath) ?? depPath; } - function parseSocksProxy(opts) { - let port = 0; - let lookup = false; - let type = 5; - const host = opts.hostname || opts.host; - if (!host) { - throw new TypeError('No "host"'); - } - if (typeof opts.port === "number") { - port = opts.port; - } else if (typeof opts.port === "string") { - port = parseInt(opts.port, 10); - } - if (!port) { - port = 1080; - } - if (opts.protocol) { - switch (opts.protocol.replace(":", "")) { - case "socks4": - lookup = true; - case "socks4a": - type = 4; - break; - case "socks5": - lookup = true; - case "socks": - case "socks5h": - type = 5; - break; - default: - throw new TypeError(`A "socks" protocol must be specified! Got: ${opts.protocol}`); - } - } - if (typeof opts.type !== "undefined") { - if (opts.type === 4 || opts.type === 5) { - type = opts.type; - } else { - throw new TypeError(`"type" must be 4 or 5, got: ${opts.type}`); - } - } - const proxy = { - host, - port, - type - }; - let userId = opts.userId || opts.username; - let password = opts.password; - if (opts.auth) { - const auth = opts.auth.split(":"); - userId = auth[0]; - password = auth[1]; - } - if (userId) { - Object.defineProperty(proxy, "userId", { - value: userId, - enumerable: false - }); - } - if (password) { - Object.defineProperty(proxy, "password", { - value: password, - enumerable: false - }); - } - return { lookup, proxy }; + exports2.packageIdFromSnapshot = packageIdFromSnapshot; + } +}); + +// ../lockfile/lockfile-utils/lib/packageIsIndependent.js +var require_packageIsIndependent = __commonJS({ + "../lockfile/lockfile-utils/lib/packageIsIndependent.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.packageIsIndependent = void 0; + function packageIsIndependent({ dependencies, optionalDependencies }) { + return dependencies === void 0 && optionalDependencies === void 0; } - var SocksProxyAgent = class extends agent_base_1.Agent { - constructor(_opts) { - let opts; - if (typeof _opts === "string") { - opts = url_1.default.parse(_opts); - } else { - opts = _opts; - } - if (!opts) { - throw new TypeError("a SOCKS proxy server `host` and `port` must be specified!"); - } - super(opts); - const parsedProxy = parseSocksProxy(opts); - this.lookup = parsedProxy.lookup; - this.proxy = parsedProxy.proxy; - } - callback(req, opts) { - return __awaiter(this, void 0, void 0, function* () { - const { lookup, proxy } = this; - let { host, port, timeout } = opts; - if (!host) { - throw new Error("No `host` defined!"); - } - if (lookup) { - host = yield dnsLookup(host); - } - const socksOpts = { - proxy, - destination: { host, port }, - command: "connect", - timeout - }; - debug("Creating socks proxy connection: %o", socksOpts); - const { socket } = yield socks_1.SocksClient.createConnection(socksOpts); - debug("Successfully created socks proxy connection"); - if (opts.secureEndpoint) { - debug("Upgrading socket connection to TLS"); - const servername = opts.servername || host; - return tls_1.default.connect(Object.assign(Object.assign({}, omit(opts, "host", "hostname", "path", "port")), { - socket, - servername - })); - } - return socket; - }); + exports2.packageIsIndependent = packageIsIndependent; + } +}); + +// ../node_modules/.pnpm/get-npm-tarball-url@2.0.3/node_modules/get-npm-tarball-url/lib/index.js +var require_lib82 = __commonJS({ + "../node_modules/.pnpm/get-npm-tarball-url@2.0.3/node_modules/get-npm-tarball-url/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function default_1(pkgName, pkgVersion, opts) { + let registry; + if (opts === null || opts === void 0 ? void 0 : opts.registry) { + registry = opts.registry.endsWith("/") ? opts.registry : `${opts.registry}/`; + } else { + registry = "https://registry.npmjs.org/"; } - }; - exports2.default = SocksProxyAgent; - function omit(obj, ...keys) { - const ret = {}; - let key; - for (key in obj) { - if (!keys.includes(key)) { - ret[key] = obj[key]; - } + const scopelessName = getScopelessName(pkgName); + return `${registry}${pkgName}/-/${scopelessName}-${removeBuildMetadataFromVersion(pkgVersion)}.tgz`; + } + exports2.default = default_1; + function removeBuildMetadataFromVersion(version2) { + const plusPos = version2.indexOf("+"); + if (plusPos === -1) + return version2; + return version2.substring(0, plusPos); + } + function getScopelessName(name) { + if (name[0] !== "@") { + return name; } - return ret; + return name.split("/")[1]; } } }); -// ../../node_modules/.pnpm/socks-proxy-agent@5.0.1/node_modules/socks-proxy-agent/dist/index.js -var require_dist5 = __commonJS({ - "../../node_modules/.pnpm/socks-proxy-agent@5.0.1/node_modules/socks-proxy-agent/dist/index.js"(exports2, module2) { +// ../lockfile/lockfile-utils/lib/pkgSnapshotToResolution.js +var require_pkgSnapshotToResolution = __commonJS({ + "../lockfile/lockfile-utils/lib/pkgSnapshotToResolution.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; - var agent_1 = __importDefault(require_agent3()); - function createSocksProxyAgent(opts) { - return new agent_1.default(opts); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pkgSnapshotToResolution = void 0; + var url_1 = __importDefault4(require("url")); + var dp = __importStar5(require_lib81()); + var get_npm_tarball_url_1 = __importDefault4(require_lib82()); + var nameVerFromPkgSnapshot_1 = require_nameVerFromPkgSnapshot(); + function pkgSnapshotToResolution(depPath, pkgSnapshot, registries) { + if (Boolean(pkgSnapshot.resolution.type) || pkgSnapshot.resolution.tarball?.startsWith("file:")) { + return pkgSnapshot.resolution; + } + const { name } = (0, nameVerFromPkgSnapshot_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const registry = pkgSnapshot.resolution.registry || // eslint-disable-line @typescript-eslint/prefer-nullish-coalescing + name[0] === "@" && registries[name.split("/")[0]] || registries.default; + let tarball; + if (!pkgSnapshot.resolution.tarball) { + tarball = getTarball(registry); + } else { + tarball = new url_1.default.URL(pkgSnapshot.resolution.tarball, registry.endsWith("/") ? registry : `${registry}/`).toString(); + } + return { + ...pkgSnapshot.resolution, + registry, + tarball + }; + function getTarball(registry2) { + const { name: name2, version: version2 } = dp.parse(depPath); + if (!name2 || !version2) { + throw new Error(`Couldn't get tarball URL from dependency path ${depPath}`); + } + return (0, get_npm_tarball_url_1.default)(name2, version2, { registry: registry2 }); + } } - (function(createSocksProxyAgent2) { - createSocksProxyAgent2.SocksProxyAgent = agent_1.default; - createSocksProxyAgent2.prototype = agent_1.default.prototype; - })(createSocksProxyAgent || (createSocksProxyAgent = {})); - module2.exports = createSocksProxyAgent; + exports2.pkgSnapshotToResolution = pkgSnapshotToResolution; } }); -// ../npm-registry-agent/lib/index.js -var require_lib28 = __commonJS({ - "../npm-registry-agent/lib/index.js"(exports2) { +// ../lockfile/lockfile-utils/lib/satisfiesPackageManifest.js +var require_satisfiesPackageManifest = __commonJS({ + "../lockfile/lockfile-utils/lib/satisfiesPackageManifest.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var url_1 = require("url"); - var agentkeepalive_1 = __importDefault(require_agentkeepalive()); - var http_proxy_agent_1 = __importDefault(require_dist4()); - var https_proxy_agent_1 = __importDefault(require_https_proxy_agent()); - var lru_cache_1 = __importDefault(require_lru_cache()); - var socks_proxy_agent_1 = __importDefault(require_dist5()); - var HttpsAgent = agentkeepalive_1.default.HttpsAgent; - var DEFAULT_MAX_SOCKETS = 50; - var AGENT_CACHE = new lru_cache_1.default({ max: 50 }); - function getAgent(uri, opts) { - var _a, _b, _c; - const parsedUri = new url_1.URL(uri); - const isHttps = parsedUri.protocol === "https:"; - const pxuri = getProxyUri(uri, opts); - const key = [ - `https:${isHttps.toString()}`, - pxuri ? `proxy:${pxuri.protocol}//${pxuri.host}:${pxuri.port}` : ">no-proxy<", - `local-address:${(_a = opts.localAddress) !== null && _a !== void 0 ? _a : ">no-local-address<"}`, - `strict-ssl:${isHttps ? Boolean(opts.strictSsl).toString() : ">no-strict-ssl<"}`, - `ca:${isHttps && opts.ca || ">no-ca<"}`, - `cert:${isHttps && opts.cert || ">no-cert<"}`, - `key:${isHttps && opts.key || ">no-key<"}` - ].join(":"); - if (AGENT_CACHE.peek(key)) { - return AGENT_CACHE.get(key); - } - if (pxuri) { - const proxy = getProxy(pxuri, opts, isHttps); - AGENT_CACHE.set(key, proxy); - return proxy; - } - const agentTimeout = typeof opts.timeout !== "number" || opts.timeout === 0 ? 0 : opts.timeout + 1; - const agent = isHttps ? new HttpsAgent({ - ca: opts.ca, - cert: opts.cert, - key: opts.key, - localAddress: opts.localAddress, - maxSockets: (_b = opts.maxSockets) !== null && _b !== void 0 ? _b : DEFAULT_MAX_SOCKETS, - rejectUnauthorized: opts.strictSsl, - timeout: agentTimeout - }) : new agentkeepalive_1.default({ - localAddress: opts.localAddress, - maxSockets: (_c = opts.maxSockets) !== null && _c !== void 0 ? _c : DEFAULT_MAX_SOCKETS, - timeout: agentTimeout - }); - AGENT_CACHE.set(key, agent); - return agent; - } - exports2.default = getAgent; - function checkNoProxy(uri, opts) { - const host = new url_1.URL(uri).hostname.split(".").filter((x) => x).reverse(); - if (typeof opts.noProxy === "string") { - const noproxyArr = opts.noProxy.split(/\s*,\s*/g); - return noproxyArr.some((no) => { - const noParts = no.split(".").filter((x) => x).reverse(); - if (noParts.length === 0) { - return false; - } - for (let i = 0; i < noParts.length; i++) { - if (host[i] !== noParts[i]) { - return false; - } + exports2.satisfiesPackageManifest = void 0; + var types_1 = require_lib25(); + var equals_1 = __importDefault4(require_equals2()); + var omit_1 = __importDefault4(require_omit()); + function satisfiesPackageManifest(lockfile, pkg, importerId, opts) { + const importer = lockfile.importers[importerId]; + if (!importer) + return false; + let existingDeps = { ...pkg.devDependencies, ...pkg.dependencies, ...pkg.optionalDependencies }; + if (opts?.autoInstallPeers) { + pkg = { + ...pkg, + dependencies: { + ...(0, omit_1.default)(Object.keys(existingDeps), pkg.peerDependencies), + ...pkg.dependencies } - return true; - }); + }; + existingDeps = { + ...pkg.peerDependencies, + ...existingDeps + }; } - return opts.noProxy; - } - function getProxyUri(uri, opts) { - const { protocol } = new url_1.URL(uri); - let proxy; - switch (protocol) { - case "http:": { - proxy = opts.httpProxy; - break; + if (!(0, equals_1.default)(existingDeps, importer.specifiers) || importer.publishDirectory !== pkg.publishConfig?.directory) { + return false; + } + if (!(0, equals_1.default)(pkg.dependenciesMeta ?? {}, importer.dependenciesMeta ?? {})) + return false; + for (const depField of types_1.DEPENDENCIES_FIELDS) { + const importerDeps = importer[depField] ?? {}; + const pkgDeps = pkg[depField] ?? {}; + let pkgDepNames; + switch (depField) { + case "optionalDependencies": + pkgDepNames = Object.keys(pkgDeps); + break; + case "devDependencies": + pkgDepNames = Object.keys(pkgDeps).filter((depName) => (pkg.optionalDependencies == null || !pkg.optionalDependencies[depName]) && (pkg.dependencies == null || !pkg.dependencies[depName])); + break; + case "dependencies": + pkgDepNames = Object.keys(pkgDeps).filter((depName) => pkg.optionalDependencies == null || !pkg.optionalDependencies[depName]); + break; + default: + throw new Error(`Unknown dependency type "${depField}"`); } - case "https:": { - proxy = opts.httpsProxy; - break; + if (pkgDepNames.length !== Object.keys(importerDeps).length && pkgDepNames.length !== countOfNonLinkedDeps(importerDeps)) { + return false; } - } - if (!proxy) { - return null; - } - if (!proxy.includes("://")) { - proxy = `${protocol}//${proxy}`; - } - const parsedProxy = typeof proxy === "string" ? new url_1.URL(proxy) : proxy; - return !checkNoProxy(uri, opts) && parsedProxy; - } - function getProxy(proxyUrl, opts, isHttps) { - var _a, _b; - const popts = { - auth: proxyUrl.username ? proxyUrl.password ? `${proxyUrl.username}:${proxyUrl.password}` : proxyUrl.username : void 0, - ca: opts.ca, - cert: opts.cert, - host: proxyUrl.hostname, - key: opts.key, - localAddress: opts.localAddress, - maxSockets: (_a = opts.maxSockets) !== null && _a !== void 0 ? _a : DEFAULT_MAX_SOCKETS, - path: proxyUrl.pathname, - port: proxyUrl.port, - protocol: proxyUrl.protocol, - rejectUnauthorized: opts.strictSsl, - timeout: typeof opts.timeout !== "number" || opts.timeout === 0 ? 0 : opts.timeout + 1 - }; - if (proxyUrl.protocol === "http:" || proxyUrl.protocol === "https:") { - if (!isHttps) { - return http_proxy_agent_1.default(popts); - } else { - return new https_proxy_agent_1.default(popts); + for (const depName of pkgDepNames) { + if (!importerDeps[depName] || importer.specifiers?.[depName] !== pkgDeps[depName]) + return false; } } - if ((_b = proxyUrl.protocol) === null || _b === void 0 ? void 0 : _b.startsWith("socks")) { - return new socks_proxy_agent_1.default(popts); - } + return true; + } + exports2.satisfiesPackageManifest = satisfiesPackageManifest; + function countOfNonLinkedDeps(lockfileDeps) { + return Object.values(lockfileDeps).filter((ref) => !ref.includes("link:") && !ref.includes("file:")).length; } } }); -// ../fetch/lib/fetchFromRegistry.js -var require_fetchFromRegistry = __commonJS({ - "../fetch/lib/fetchFromRegistry.js"(exports2) { +// ../lockfile/lockfile-types/lib/index.js +var require_lib83 = __commonJS({ + "../lockfile/lockfile-types/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../lockfile/lockfile-utils/lib/index.js +var require_lib84 = __commonJS({ + "../lockfile/lockfile-utils/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPkgShortId = exports2.satisfiesPackageManifest = exports2.pkgSnapshotToResolution = exports2.packageIsIndependent = exports2.packageIdFromSnapshot = exports2.nameVerFromPkgSnapshot = exports2.extendProjectsWithTargetDirs = void 0; + var dependency_path_1 = require_lib81(); + var extendProjectsWithTargetDirs_1 = require_extendProjectsWithTargetDirs(); + Object.defineProperty(exports2, "extendProjectsWithTargetDirs", { enumerable: true, get: function() { + return extendProjectsWithTargetDirs_1.extendProjectsWithTargetDirs; + } }); + var nameVerFromPkgSnapshot_1 = require_nameVerFromPkgSnapshot(); + Object.defineProperty(exports2, "nameVerFromPkgSnapshot", { enumerable: true, get: function() { + return nameVerFromPkgSnapshot_1.nameVerFromPkgSnapshot; + } }); + var packageIdFromSnapshot_1 = require_packageIdFromSnapshot(); + Object.defineProperty(exports2, "packageIdFromSnapshot", { enumerable: true, get: function() { + return packageIdFromSnapshot_1.packageIdFromSnapshot; + } }); + var packageIsIndependent_1 = require_packageIsIndependent(); + Object.defineProperty(exports2, "packageIsIndependent", { enumerable: true, get: function() { + return packageIsIndependent_1.packageIsIndependent; + } }); + var pkgSnapshotToResolution_1 = require_pkgSnapshotToResolution(); + Object.defineProperty(exports2, "pkgSnapshotToResolution", { enumerable: true, get: function() { + return pkgSnapshotToResolution_1.pkgSnapshotToResolution; + } }); + var satisfiesPackageManifest_1 = require_satisfiesPackageManifest(); + Object.defineProperty(exports2, "satisfiesPackageManifest", { enumerable: true, get: function() { + return satisfiesPackageManifest_1.satisfiesPackageManifest; + } }); + __exportStar4(require_lib83(), exports2); + exports2.getPkgShortId = dependency_path_1.refToRelative; + } +}); + +// ../lockfile/lockfile-walker/lib/index.js +var require_lib85 = __commonJS({ + "../lockfile/lockfile-walker/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var url_1 = require("url"); - var npm_registry_agent_1 = __importDefault(require_lib28()); - var fetch_1 = __importStar2(require_fetch()); - var USER_AGENT = "pnpm"; - var CORGI_DOC = "application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"; - var JSON_DOC = "application/json"; - var MAX_FOLLOWED_REDIRECTS = 20; - function default_1(defaultOpts) { - return async (url, opts) => { - var _a, _b, _c; - const headers = { - "user-agent": USER_AGENT, - ...getHeaders({ - auth: opts === null || opts === void 0 ? void 0 : opts.authHeaderValue, - fullMetadata: defaultOpts.fullMetadata, - userAgent: defaultOpts.userAgent - }) + exports2.lockfileWalker = exports2.lockfileWalkerGroupImporterSteps = void 0; + var dp = __importStar5(require_lib81()); + function lockfileWalkerGroupImporterSteps(lockfile, importerIds, opts) { + const walked = new Set(opts?.skipped != null ? Array.from(opts?.skipped) : []); + return importerIds.map((importerId) => { + const projectSnapshot = lockfile.importers[importerId]; + const entryNodes = Object.entries({ + ...opts?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies, + ...opts?.include?.dependencies === false ? {} : projectSnapshot.dependencies, + ...opts?.include?.optionalDependencies === false ? {} : projectSnapshot.optionalDependencies + }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null); + return { + importerId, + step: step({ + includeOptionalDependencies: opts?.include?.optionalDependencies !== false, + lockfile, + walked + }, entryNodes) }; - let redirects = 0; - let urlObject = new url_1.URL(url); - const originalHost = urlObject.host; - while (true) { - const agent = npm_registry_agent_1.default(urlObject.href, { - ...defaultOpts, - ...opts, - strictSsl: (_a = defaultOpts.strictSsl) !== null && _a !== void 0 ? _a : true - }); - headers["connection"] = agent ? "keep-alive" : "close"; - const response = await fetch_1.default(urlObject, { - agent, - compress: (_b = opts === null || opts === void 0 ? void 0 : opts.compress) !== null && _b !== void 0 ? _b : false, - headers, - redirect: "manual", - retry: opts === null || opts === void 0 ? void 0 : opts.retry, - timeout: (_c = opts === null || opts === void 0 ? void 0 : opts.timeout) !== null && _c !== void 0 ? _c : 6e4 - }); - if (!fetch_1.isRedirect(response.status) || redirects >= MAX_FOLLOWED_REDIRECTS) { - return response; - } - redirects++; - urlObject = new url_1.URL(response.headers.get("location")); - if (!headers["authorization"] || originalHost === urlObject.host) - continue; - delete headers.authorization; - } + }); + } + exports2.lockfileWalkerGroupImporterSteps = lockfileWalkerGroupImporterSteps; + function lockfileWalker(lockfile, importerIds, opts) { + const walked = new Set(opts?.skipped != null ? Array.from(opts?.skipped) : []); + const entryNodes = []; + const directDeps = []; + importerIds.forEach((importerId) => { + const projectSnapshot = lockfile.importers[importerId]; + Object.entries({ + ...opts?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies, + ...opts?.include?.dependencies === false ? {} : projectSnapshot.dependencies, + ...opts?.include?.optionalDependencies === false ? {} : projectSnapshot.optionalDependencies + }).forEach(([pkgName, reference]) => { + const depPath = dp.refToRelative(reference, pkgName); + if (depPath === null) + return; + entryNodes.push(depPath); + directDeps.push({ alias: pkgName, depPath }); + }); + }); + return { + directDeps, + step: step({ + includeOptionalDependencies: opts?.include?.optionalDependencies !== false, + lockfile, + walked + }, entryNodes) }; } - exports2.default = default_1; - function getHeaders(opts) { - const headers = { - accept: opts.fullMetadata === true ? JSON_DOC : CORGI_DOC + exports2.lockfileWalker = lockfileWalker; + function step(ctx, nextDepPaths) { + const result2 = { + dependencies: [], + links: [], + missing: [] }; - if (opts.auth) { - headers["authorization"] = opts.auth; + for (const depPath of nextDepPaths) { + if (ctx.walked.has(depPath)) + continue; + ctx.walked.add(depPath); + const pkgSnapshot = ctx.lockfile.packages?.[depPath]; + if (pkgSnapshot == null) { + if (depPath.startsWith("link:")) { + result2.links.push(depPath); + continue; + } + result2.missing.push(depPath); + continue; + } + result2.dependencies.push({ + depPath, + next: () => step(ctx, next({ includeOptionalDependencies: ctx.includeOptionalDependencies }, pkgSnapshot)), + pkgSnapshot + }); } - if (opts.userAgent) { - headers["user-agent"] = opts.userAgent; + return result2; + } + function next(opts, nextPkg) { + return Object.entries({ + ...nextPkg.dependencies, + ...opts.includeOptionalDependencies ? nextPkg.optionalDependencies : {} + }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null); + } + } +}); + +// ../lockfile/audit/lib/lockfileToAuditTree.js +var require_lockfileToAuditTree = __commonJS({ + "../lockfile/audit/lib/lockfileToAuditTree.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lockfileToAuditTree = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_utils_1 = require_lib84(); + var lockfile_walker_1 = require_lib85(); + var read_project_manifest_1 = require_lib16(); + var map_1 = __importDefault4(require_map4()); + async function lockfileToAuditTree(lockfile, opts) { + const importerWalkers = (0, lockfile_walker_1.lockfileWalkerGroupImporterSteps)(lockfile, Object.keys(lockfile.importers), { include: opts?.include }); + const dependencies = {}; + await Promise.all(importerWalkers.map(async (importerWalker) => { + const importerDeps = lockfileToAuditNode(importerWalker.step); + const depName = importerWalker.importerId.replace(/\//g, "__"); + const manifest = await (0, read_project_manifest_1.safeReadProjectManifestOnly)(path_1.default.join(opts.lockfileDir, importerWalker.importerId)); + dependencies[depName] = { + dependencies: importerDeps, + dev: false, + requires: toRequires(importerDeps), + version: manifest?.version ?? "0.0.0" + }; + })); + const auditTree = { + name: void 0, + version: void 0, + dependencies, + dev: false, + install: [], + integrity: void 0, + metadata: {}, + remove: [], + requires: toRequires(dependencies) + }; + return auditTree; + } + exports2.lockfileToAuditTree = lockfileToAuditTree; + function lockfileToAuditNode(step) { + const dependencies = {}; + for (const { depPath, pkgSnapshot, next } of step.dependencies) { + const { name, version: version2 } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const subdeps = lockfileToAuditNode(next()); + const dep = { + dev: pkgSnapshot.dev === true, + integrity: pkgSnapshot.resolution.integrity, + version: version2 + }; + if (Object.keys(subdeps).length > 0) { + dep.dependencies = subdeps; + dep.requires = toRequires(subdeps); + } + dependencies[name] = dep; } - return headers; + return dependencies; + } + function toRequires(auditNodesByDepName) { + return (0, map_1.default)((auditNode) => auditNode.version, auditNodesByDepName); } } }); -// ../fetch/lib/index.js -var require_lib29 = __commonJS({ - "../fetch/lib/index.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pickBy.js +var require_pickBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pickBy.js"(exports2, module2) { + var _curry2 = require_curry2(); + var pickBy = /* @__PURE__ */ _curry2(function pickBy2(test, obj) { + var result2 = {}; + for (var prop in obj) { + if (test(obj[prop], prop, obj)) { + result2[prop] = obj[prop]; + } + } + return result2; + }); + module2.exports = pickBy; + } +}); + +// ../lockfile/lockfile-file/lib/logger.js +var require_logger2 = __commonJS({ + "../lockfile/lockfile-file/lib/logger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lockfileLogger = void 0; + var logger_1 = require_lib6(); + exports2.lockfileLogger = (0, logger_1.logger)("lockfile"); + } +}); + +// ../lockfile/lockfile-file/lib/sortLockfileKeys.js +var require_sortLockfileKeys = __commonJS({ + "../lockfile/lockfile-file/lib/sortLockfileKeys.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createFetchFromRegistry = void 0; - var fetch_1 = __importDefault(require_fetch()); - var fetchFromRegistry_1 = __importDefault(require_fetchFromRegistry()); - exports2.createFetchFromRegistry = fetchFromRegistry_1.default; - exports2.default = fetch_1.default; + exports2.sortLockfileKeys = void 0; + var util_lex_comparator_1 = require_dist5(); + var sort_keys_1 = __importDefault4(require_sort_keys()); + var ORDERED_KEYS = { + resolution: 1, + id: 2, + name: 3, + version: 4, + engines: 5, + cpu: 6, + os: 7, + libc: 8, + deprecated: 9, + hasBin: 10, + prepare: 11, + requiresBuild: 12, + bundleDependencies: 13, + peerDependencies: 14, + peerDependenciesMeta: 15, + dependencies: 16, + optionalDependencies: 17, + transitivePeerDependencies: 18, + dev: 19, + optional: 20 + }; + var ROOT_KEYS_ORDER = { + lockfileVersion: 1, + settings: 2, + // only and never are conflict options. + neverBuiltDependencies: 3, + onlyBuiltDependencies: 3, + overrides: 4, + packageExtensionsChecksum: 5, + patchedDependencies: 6, + specifiers: 10, + dependencies: 11, + optionalDependencies: 12, + devDependencies: 13, + dependenciesMeta: 14, + importers: 15, + packages: 16 + }; + function compareWithPriority(priority, left, right) { + const leftPriority = priority[left]; + const rightPriority = priority[right]; + if (leftPriority && rightPriority) + return leftPriority - rightPriority; + if (leftPriority) + return -1; + if (rightPriority) + return 1; + return (0, util_lex_comparator_1.lexCompare)(left, right); + } + function sortLockfileKeys(lockfile) { + const compareRootKeys = compareWithPriority.bind(null, ROOT_KEYS_ORDER); + if (lockfile.importers != null) { + lockfile.importers = (0, sort_keys_1.default)(lockfile.importers); + for (const [importerId, importer] of Object.entries(lockfile.importers)) { + lockfile.importers[importerId] = (0, sort_keys_1.default)(importer, { + compare: compareRootKeys, + deep: true + }); + } + } + if (lockfile.packages != null) { + lockfile.packages = (0, sort_keys_1.default)(lockfile.packages); + for (const [pkgId, pkg] of Object.entries(lockfile.packages)) { + lockfile.packages[pkgId] = (0, sort_keys_1.default)(pkg, { + compare: compareWithPriority.bind(null, ORDERED_KEYS), + deep: true + }); + } + } + for (const key of ["specifiers", "dependencies", "devDependencies", "optionalDependencies", "time", "patchedDependencies"]) { + if (!lockfile[key]) + continue; + lockfile[key] = (0, sort_keys_1.default)(lockfile[key]); + } + return (0, sort_keys_1.default)(lockfile, { compare: compareRootKeys }); + } + exports2.sortLockfileKeys = sortLockfileKeys; } }); -// ../../node_modules/.pnpm/cmd-extension@1.0.2/node_modules/cmd-extension/index.js -var require_cmd_extension = __commonJS({ - "../../node_modules/.pnpm/cmd-extension@1.0.2/node_modules/cmd-extension/index.js"(exports2, module2) { +// ../lockfile/lockfile-file/lib/lockfileName.js +var require_lockfileName = __commonJS({ + "../lockfile/lockfile-file/lib/lockfileName.js"(exports2) { "use strict"; - var path = require("path"); - var cmdExtension; - if (process.env.PATHEXT) { - cmdExtension = process.env.PATHEXT.split(path.delimiter).find((ext) => ext.toUpperCase() === ".CMD"); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getWantedLockfileName = void 0; + var constants_1 = require_lib7(); + var git_utils_1 = require_lib18(); + async function getWantedLockfileName(opts = { useGitBranchLockfile: false, mergeGitBranchLockfiles: false }) { + if (opts.useGitBranchLockfile && !opts.mergeGitBranchLockfiles) { + const currentBranchName = await (0, git_utils_1.getCurrentBranch)(); + if (currentBranchName) { + return constants_1.WANTED_LOCKFILE.replace(".yaml", `.${stringifyBranchName(currentBranchName)}.yaml`); + } + } + return constants_1.WANTED_LOCKFILE; + } + exports2.getWantedLockfileName = getWantedLockfileName; + function stringifyBranchName(branchName = "") { + return branchName.replace(/[^a-zA-Z0-9-_.]/g, "!").toLowerCase(); } - module2.exports = cmdExtension || ".cmd"; } }); -// ../../node_modules/.pnpm/@zkochan+cmd-shim@5.2.1/node_modules/@zkochan/cmd-shim/index.js -var require_cmd_shim = __commonJS({ - "../../node_modules/.pnpm/@zkochan+cmd-shim@5.2.1/node_modules/@zkochan/cmd-shim/index.js"(exports2, module2) { +// ../lockfile/lockfile-file/lib/experiments/InlineSpecifiersLockfile.js +var require_InlineSpecifiersLockfile = __commonJS({ + "../lockfile/lockfile-file/lib/experiments/InlineSpecifiersLockfile.js"(exports2) { "use strict"; - cmdShim.ifExists = cmdShimIfExists; - var util_1 = require("util"); - var path = require("path"); - var isWindows = require_is_windows(); - var CMD_EXTENSION = require_cmd_extension(); - var shebangExpr = /^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/; - var DEFAULT_OPTIONS = { - createPwshFile: true, - createCmdFile: isWindows(), - fs: require("fs") + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX = void 0; + exports2.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX = "-inlineSpecifiers"; + } +}); + +// ../lockfile/lockfile-file/lib/experiments/inlineSpecifiersLockfileConverters.js +var require_inlineSpecifiersLockfileConverters = __commonJS({ + "../lockfile/lockfile-file/lib/experiments/inlineSpecifiersLockfileConverters.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; }; - var extensionToProgramMap = new Map([ - [".js", "node"], - [".cjs", "node"], - [".mjs", "node"], - [".cmd", "cmd"], - [".bat", "cmd"], - [".ps1", "pwsh"], - [".sh", "sh"] - ]); - function ingestOptions(opts) { - const opts_ = { ...DEFAULT_OPTIONS, ...opts }; - const fs = opts_.fs; - opts_.fs_ = { - chmod: fs.chmod ? util_1.promisify(fs.chmod) : async () => { - }, - mkdir: util_1.promisify(fs.mkdir), - readFile: util_1.promisify(fs.readFile), - stat: util_1.promisify(fs.stat), - unlink: util_1.promisify(fs.unlink), - writeFile: util_1.promisify(fs.writeFile) + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.convertLockfileV6DepPathToV5DepPath = exports2.revertFromInlineSpecifiersFormat = exports2.revertFromInlineSpecifiersFormatIfNecessary = exports2.convertToInlineSpecifiersFormat = exports2.isExperimentalInlineSpecifiersFormat = void 0; + var dp = __importStar5(require_lib81()); + var InlineSpecifiersLockfile_1 = require_InlineSpecifiersLockfile(); + function isExperimentalInlineSpecifiersFormat(lockfile) { + const { lockfileVersion } = lockfile; + return lockfileVersion.toString().startsWith("6.") || typeof lockfileVersion === "string" && lockfileVersion.endsWith(InlineSpecifiersLockfile_1.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX); + } + exports2.isExperimentalInlineSpecifiersFormat = isExperimentalInlineSpecifiersFormat; + function convertToInlineSpecifiersFormat(lockfile) { + let importers = lockfile.importers; + let packages = lockfile.packages; + if (lockfile.lockfileVersion.toString().startsWith("6.")) { + importers = Object.fromEntries(Object.entries(lockfile.importers ?? {}).map(([importerId, pkgSnapshot]) => { + const newSnapshot = { ...pkgSnapshot }; + if (newSnapshot.dependencies != null) { + newSnapshot.dependencies = mapValues(newSnapshot.dependencies, convertOldRefToNewRef); + } + if (newSnapshot.optionalDependencies != null) { + newSnapshot.optionalDependencies = mapValues(newSnapshot.optionalDependencies, convertOldRefToNewRef); + } + if (newSnapshot.devDependencies != null) { + newSnapshot.devDependencies = mapValues(newSnapshot.devDependencies, convertOldRefToNewRef); + } + return [importerId, newSnapshot]; + })); + packages = Object.fromEntries(Object.entries(lockfile.packages ?? {}).map(([depPath, pkgSnapshot]) => { + const newSnapshot = { ...pkgSnapshot }; + if (newSnapshot.dependencies != null) { + newSnapshot.dependencies = mapValues(newSnapshot.dependencies, convertOldRefToNewRef); + } + if (newSnapshot.optionalDependencies != null) { + newSnapshot.optionalDependencies = mapValues(newSnapshot.optionalDependencies, convertOldRefToNewRef); + } + return [convertOldDepPathToNewDepPath(depPath), newSnapshot]; + })); + } + const newLockfile = { + ...lockfile, + packages, + lockfileVersion: lockfile.lockfileVersion.toString().startsWith("6.") ? lockfile.lockfileVersion.toString() : lockfile.lockfileVersion.toString().endsWith(InlineSpecifiersLockfile_1.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX) ? lockfile.lockfileVersion.toString() : `${lockfile.lockfileVersion}${InlineSpecifiersLockfile_1.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX}`, + importers: mapValues(importers, convertProjectSnapshotToInlineSpecifiersFormat) }; - return opts_; + if (lockfile.lockfileVersion.toString().startsWith("6.") && newLockfile.time) { + newLockfile.time = Object.fromEntries(Object.entries(newLockfile.time).map(([depPath, time]) => [convertOldDepPathToNewDepPath(depPath), time])); + } + return newLockfile; } - async function cmdShim(src, to, opts) { - const opts_ = ingestOptions(opts); - await opts_.fs_.stat(src); - await cmdShim_(src, to, opts_); + exports2.convertToInlineSpecifiersFormat = convertToInlineSpecifiersFormat; + function convertOldDepPathToNewDepPath(oldDepPath) { + const parsedDepPath = dp.parse(oldDepPath); + if (!parsedDepPath.name || !parsedDepPath.version) + return oldDepPath; + let newDepPath = `/${parsedDepPath.name}@${parsedDepPath.version}`; + if (parsedDepPath.peersSuffix) { + if (parsedDepPath.peersSuffix.startsWith("(")) { + newDepPath += parsedDepPath.peersSuffix; + } else { + newDepPath += `_${parsedDepPath.peersSuffix}`; + } + } + if (parsedDepPath.host) { + newDepPath = `${parsedDepPath.host}${newDepPath}`; + } + return newDepPath; } - function cmdShimIfExists(src, to, opts) { - return cmdShim(src, to, opts).catch(() => { - }); + function convertOldRefToNewRef(oldRef) { + if (oldRef.startsWith("link:") || oldRef.startsWith("file:")) { + return oldRef; + } + if (oldRef.includes("/")) { + return convertOldDepPathToNewDepPath(oldRef); + } + return oldRef; } - function rm(path2, opts) { - return opts.fs_.unlink(path2).catch(() => { - }); + function revertFromInlineSpecifiersFormatIfNecessary(lockfile) { + return isExperimentalInlineSpecifiersFormat(lockfile) ? revertFromInlineSpecifiersFormat(lockfile) : lockfile; } - async function cmdShim_(src, to, opts) { - const srcRuntimeInfo = await searchScriptRuntime(src, opts); - await writeShimsPreCommon(to, opts); - return writeAllShims(src, to, srcRuntimeInfo, opts); + exports2.revertFromInlineSpecifiersFormatIfNecessary = revertFromInlineSpecifiersFormatIfNecessary; + function revertFromInlineSpecifiersFormat(lockfile) { + const { lockfileVersion, importers, ...rest } = lockfile; + const originalVersionStr = lockfileVersion.replace(InlineSpecifiersLockfile_1.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX, ""); + const originalVersion = Number(originalVersionStr); + if (isNaN(originalVersion)) { + throw new Error(`Unable to revert lockfile from inline specifiers format. Invalid version parsed: ${originalVersionStr}`); + } + let revertedImporters = mapValues(importers, revertProjectSnapshot); + let packages = lockfile.packages; + if (originalVersionStr.startsWith("6.")) { + revertedImporters = Object.fromEntries(Object.entries(revertedImporters ?? {}).map(([importerId, pkgSnapshot]) => { + const newSnapshot = { ...pkgSnapshot }; + if (newSnapshot.dependencies != null) { + newSnapshot.dependencies = mapValues(newSnapshot.dependencies, convertNewRefToOldRef); + } + if (newSnapshot.optionalDependencies != null) { + newSnapshot.optionalDependencies = mapValues(newSnapshot.optionalDependencies, convertNewRefToOldRef); + } + if (newSnapshot.devDependencies != null) { + newSnapshot.devDependencies = mapValues(newSnapshot.devDependencies, convertNewRefToOldRef); + } + return [importerId, newSnapshot]; + })); + packages = Object.fromEntries(Object.entries(lockfile.packages ?? {}).map(([depPath, pkgSnapshot]) => { + const newSnapshot = { ...pkgSnapshot }; + if (newSnapshot.dependencies != null) { + newSnapshot.dependencies = mapValues(newSnapshot.dependencies, convertNewRefToOldRef); + } + if (newSnapshot.optionalDependencies != null) { + newSnapshot.optionalDependencies = mapValues(newSnapshot.optionalDependencies, convertNewRefToOldRef); + } + return [convertLockfileV6DepPathToV5DepPath(depPath), newSnapshot]; + })); + } + const newLockfile = { + ...rest, + lockfileVersion: lockfileVersion.endsWith(InlineSpecifiersLockfile_1.INLINE_SPECIFIERS_FORMAT_LOCKFILE_VERSION_SUFFIX) ? originalVersion : lockfileVersion, + packages, + importers: revertedImporters + }; + if (originalVersionStr.startsWith("6.") && newLockfile.time) { + newLockfile.time = Object.fromEntries(Object.entries(newLockfile.time).map(([depPath, time]) => [convertLockfileV6DepPathToV5DepPath(depPath), time])); + } + return newLockfile; } - function writeShimsPreCommon(target, opts) { - return opts.fs_.mkdir(path.dirname(target), { recursive: true }); + exports2.revertFromInlineSpecifiersFormat = revertFromInlineSpecifiersFormat; + function convertLockfileV6DepPathToV5DepPath(newDepPath) { + if (!newDepPath.includes("@", 2) || newDepPath.startsWith("file:")) + return newDepPath; + const index = newDepPath.indexOf("@", newDepPath.indexOf("/@") + 2); + if (newDepPath.includes("(") && index > dp.indexOfPeersSuffix(newDepPath)) + return newDepPath; + return `${newDepPath.substring(0, index)}/${newDepPath.substring(index + 1)}`; } - function writeAllShims(src, to, srcRuntimeInfo, opts) { - const opts_ = ingestOptions(opts); - const generatorAndExts = [{ generator: generateShShim, extension: "" }]; - if (opts_.createCmdFile) { - generatorAndExts.push({ generator: generateCmdShim, extension: CMD_EXTENSION }); + exports2.convertLockfileV6DepPathToV5DepPath = convertLockfileV6DepPathToV5DepPath; + function convertNewRefToOldRef(oldRef) { + if (oldRef.startsWith("link:") || oldRef.startsWith("file:")) { + return oldRef; } - if (opts_.createPwshFile) { - generatorAndExts.push({ generator: generatePwshShim, extension: ".ps1" }); + if (oldRef.includes("@")) { + return convertLockfileV6DepPathToV5DepPath(oldRef); } - return Promise.all(generatorAndExts.map((generatorAndExt) => writeShim(src, to + generatorAndExt.extension, srcRuntimeInfo, generatorAndExt.generator, opts_))); + return oldRef; } - function writeShimPre(target, opts) { - return rm(target, opts); + function convertProjectSnapshotToInlineSpecifiersFormat(projectSnapshot) { + const { specifiers, ...rest } = projectSnapshot; + const convertBlock = (block) => block != null ? convertResolvedDependenciesToInlineSpecifiersFormat(block, { specifiers }) : block; + return { + ...rest, + dependencies: convertBlock(projectSnapshot.dependencies), + optionalDependencies: convertBlock(projectSnapshot.optionalDependencies), + devDependencies: convertBlock(projectSnapshot.devDependencies) + }; } - function writeShimPost(target, opts) { - return chmodShim(target, opts); + function convertResolvedDependenciesToInlineSpecifiersFormat(resolvedDependencies, { specifiers }) { + return mapValues(resolvedDependencies, (version2, depName) => ({ + specifier: specifiers[depName], + version: version2 + })); } - async function searchScriptRuntime(target, opts) { - const data = await opts.fs_.readFile(target, "utf8"); - const firstLine = data.trim().split(/\r*\n/)[0]; - const shebang = firstLine.match(shebangExpr); - if (!shebang) { - const targetExtension = path.extname(target).toLowerCase(); - return { - program: extensionToProgramMap.get(targetExtension) || null, - additionalArgs: "" - }; + function revertProjectSnapshot(from) { + const specifiers = {}; + function moveSpecifiers(from2) { + const resolvedDependencies = {}; + for (const [depName, { specifier, version: version2 }] of Object.entries(from2)) { + const existingValue = specifiers[depName]; + if (existingValue != null && existingValue !== specifier) { + throw new Error(`Project snapshot lists the same dependency more than once with conflicting versions: ${depName}`); + } + specifiers[depName] = specifier; + resolvedDependencies[depName] = version2; + } + return resolvedDependencies; } + const dependencies = from.dependencies == null ? from.dependencies : moveSpecifiers(from.dependencies); + const devDependencies = from.devDependencies == null ? from.devDependencies : moveSpecifiers(from.devDependencies); + const optionalDependencies = from.optionalDependencies == null ? from.optionalDependencies : moveSpecifiers(from.optionalDependencies); return { - program: shebang[1], - additionalArgs: shebang[2] + ...from, + specifiers, + dependencies, + devDependencies, + optionalDependencies }; } - async function writeShim(src, to, srcRuntimeInfo, generateShimScript, opts) { - const defaultArgs = opts.preserveSymlinks ? "--preserve-symlinks" : ""; - const args2 = [srcRuntimeInfo.additionalArgs, defaultArgs].filter((arg) => arg).join(" "); - opts = Object.assign({}, opts, { - prog: srcRuntimeInfo.program, - args: args2 - }); - await writeShimPre(to, opts); - await opts.fs_.writeFile(to, generateShimScript(src, to, opts), "utf8"); - return writeShimPost(to, opts); + function mapValues(obj, mapper) { + const result2 = {}; + for (const [key, value] of Object.entries(obj)) { + result2[key] = mapper(value, key); + } + return result2; } - function generateCmdShim(src, to, opts) { - const shTarget = path.relative(path.dirname(to), src); - let target = shTarget.split("/").join("\\"); - const quotedPathToTarget = path.isAbsolute(target) ? `"${target}"` : `"%~dp0\\${target}"`; - let longProg; - let prog = opts.prog; - let args2 = opts.args || ""; - const nodePath = normalizePathEnvVar(opts.nodePath).win32; - if (!prog) { - prog = quotedPathToTarget; - args2 = ""; - target = ""; - } else if (prog === "node" && opts.nodeExecPath) { - prog = `"${opts.nodeExecPath}"`; - target = quotedPathToTarget; - } else { - longProg = `"%~dp0\\${prog}.exe"`; - target = quotedPathToTarget; + } +}); + +// ../lockfile/lockfile-file/lib/write.js +var require_write = __commonJS({ + "../lockfile/lockfile-file/lib/write.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; - let cmd = "@SETLOCAL\r\n"; - if (nodePath) { - cmd += `@IF NOT DEFINED NODE_PATH (\r - @SET "NODE_PATH=${nodePath}"\r -) ELSE (\r - @SET "NODE_PATH=%NODE_PATH%;${nodePath}"\r -)\r -`; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - if (longProg) { - cmd += `@IF EXIST ${longProg} (\r - ${longProg} ${args2} ${target} ${progArgs}%*\r -) ELSE (\r - @SET PATHEXT=%PATHEXT:;.JS;=;%\r - ${prog} ${args2} ${target} ${progArgs}%*\r -)\r -`; - } else { - cmd += `@${prog} ${args2} ${target} ${progArgs}%*\r -`; + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.writeLockfiles = exports2.normalizeLockfile = exports2.writeCurrentLockfile = exports2.writeWantedLockfile = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var types_1 = require_lib25(); + var constants_1 = require_lib7(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var dp = __importStar5(require_lib81()); + var js_yaml_1 = __importDefault4(require_js_yaml()); + var equals_1 = __importDefault4(require_equals2()); + var pickBy_1 = __importDefault4(require_pickBy()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var map_1 = __importDefault4(require_map4()); + var write_file_atomic_1 = __importDefault4(require_lib13()); + var logger_1 = require_logger2(); + var sortLockfileKeys_1 = require_sortLockfileKeys(); + var lockfileName_1 = require_lockfileName(); + var inlineSpecifiersLockfileConverters_1 = require_inlineSpecifiersLockfileConverters(); + async function writeFileAtomic(filename, data) { + return new Promise((resolve, reject) => { + (0, write_file_atomic_1.default)(filename, data, {}, (err) => { + err != null ? reject(err) : resolve(); + }); + }); + } + var LOCKFILE_YAML_FORMAT = { + blankLines: true, + lineWidth: 1e3, + noCompatMode: true, + noRefs: true, + sortKeys: false + }; + async function writeWantedLockfile(pkgPath, wantedLockfile, opts) { + const wantedLockfileName = await (0, lockfileName_1.getWantedLockfileName)(opts); + return writeLockfile(wantedLockfileName, pkgPath, wantedLockfile, opts); + } + exports2.writeWantedLockfile = writeWantedLockfile; + async function writeCurrentLockfile(virtualStoreDir, currentLockfile, opts) { + await fs_1.promises.mkdir(virtualStoreDir, { recursive: true }); + return writeLockfile("lock.yaml", virtualStoreDir, currentLockfile, opts); + } + exports2.writeCurrentLockfile = writeCurrentLockfile; + async function writeLockfile(lockfileFilename, pkgPath, wantedLockfile, opts) { + const lockfilePath = path_1.default.join(pkgPath, lockfileFilename); + if (isEmptyLockfile(wantedLockfile)) { + return (0, rimraf_1.default)(lockfilePath); } - return cmd; + const isLockfileV6 = wantedLockfile["lockfileVersion"].toString().startsWith("6."); + const lockfileToStringify = Boolean(opts?.useInlineSpecifiersFormat) || isLockfileV6 ? (0, inlineSpecifiersLockfileConverters_1.convertToInlineSpecifiersFormat)(wantedLockfile) : wantedLockfile; + const yamlDoc = yamlStringify(lockfileToStringify, { + forceSharedFormat: opts?.forceSharedFormat === true, + includeEmptySpecifiersField: !opts?.useInlineSpecifiersFormat && !isLockfileV6 + }); + return writeFileAtomic(lockfilePath, yamlDoc); } - function generateShShim(src, to, opts) { - let shTarget = path.relative(path.dirname(to), src); - let shProg = opts.prog && opts.prog.split("\\").join("/"); - let shLongProg; - shTarget = shTarget.split("\\").join("/"); - const quotedPathToTarget = path.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`; - let args2 = opts.args || ""; - const shNodePath = normalizePathEnvVar(opts.nodePath).posix; - if (!shProg) { - shProg = quotedPathToTarget; - args2 = ""; - shTarget = ""; - } else if (opts.prog === "node" && opts.nodeExecPath) { - shProg = `"${opts.nodeExecPath}"`; - shTarget = quotedPathToTarget; + function yamlStringify(lockfile, opts) { + let normalizedLockfile = normalizeLockfile(lockfile, opts); + normalizedLockfile = (0, sortLockfileKeys_1.sortLockfileKeys)(normalizedLockfile); + return js_yaml_1.default.dump(normalizedLockfile, LOCKFILE_YAML_FORMAT); + } + function isEmptyLockfile(lockfile) { + return Object.values(lockfile.importers).every((importer) => (0, isEmpty_1.default)(importer.specifiers ?? {}) && (0, isEmpty_1.default)(importer.dependencies ?? {})); + } + function normalizeLockfile(lockfile, opts) { + let lockfileToSave; + if (!opts.forceSharedFormat && (0, equals_1.default)(Object.keys(lockfile.importers), ["."])) { + lockfileToSave = { + ...lockfile, + ...lockfile.importers["."] + }; + delete lockfileToSave.importers; + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if ((0, isEmpty_1.default)(lockfileToSave[depType])) { + delete lockfileToSave[depType]; + } + } + if ((0, isEmpty_1.default)(lockfileToSave.packages) || lockfileToSave.packages == null) { + delete lockfileToSave.packages; + } } else { - shLongProg = `"$basedir/${opts.prog}"`; - shTarget = quotedPathToTarget; + lockfileToSave = { + ...lockfile, + importers: (0, map_1.default)((importer) => { + const normalizedImporter = {}; + if (!(0, isEmpty_1.default)(importer.specifiers ?? {}) || opts.includeEmptySpecifiersField) { + normalizedImporter["specifiers"] = importer.specifiers ?? {}; + } + if (importer.dependenciesMeta != null && !(0, isEmpty_1.default)(importer.dependenciesMeta)) { + normalizedImporter["dependenciesMeta"] = importer.dependenciesMeta; + } + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if (!(0, isEmpty_1.default)(importer[depType] ?? {})) { + normalizedImporter[depType] = importer[depType]; + } + } + if (importer.publishDirectory) { + normalizedImporter.publishDirectory = importer.publishDirectory; + } + return normalizedImporter; + }, lockfile.importers) + }; + if ((0, isEmpty_1.default)(lockfileToSave.packages) || lockfileToSave.packages == null) { + delete lockfileToSave.packages; + } } - let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; - let sh = `#!/bin/sh -basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") - -case \`uname\` in - *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; -esac - -`; - if (opts.nodePath) { - sh += `if [ -z "$NODE_PATH" ]; then - export NODE_PATH="${shNodePath}" -else - export NODE_PATH="$NODE_PATH:${shNodePath}" -fi -`; + const isLockfileV6 = lockfileToSave.lockfileVersion.toString().startsWith("6."); + if (!isLockfileV6) { + delete lockfileToSave["settings"]; } - if (shLongProg) { - sh += `if [ -x ${shLongProg} ]; then - exec ${shLongProg} ${args2} ${shTarget} ${progArgs}"$@" -else - exec ${shProg} ${args2} ${shTarget} ${progArgs}"$@" -fi -`; - } else { - sh += `${shProg} ${args2} ${shTarget} ${progArgs}"$@" -exit $? -`; + if (lockfileToSave.time) { + lockfileToSave.time = (isLockfileV6 ? pruneTimeInLockfileV6 : pruneTime)(lockfileToSave.time, lockfile.importers); } - return sh; + if (lockfileToSave.overrides != null && (0, isEmpty_1.default)(lockfileToSave.overrides)) { + delete lockfileToSave.overrides; + } + if (lockfileToSave.patchedDependencies != null && (0, isEmpty_1.default)(lockfileToSave.patchedDependencies)) { + delete lockfileToSave.patchedDependencies; + } + if (lockfileToSave.neverBuiltDependencies != null) { + if ((0, isEmpty_1.default)(lockfileToSave.neverBuiltDependencies)) { + delete lockfileToSave.neverBuiltDependencies; + } else { + lockfileToSave.neverBuiltDependencies = lockfileToSave.neverBuiltDependencies.sort(); + } + } + if (lockfileToSave.onlyBuiltDependencies != null) { + lockfileToSave.onlyBuiltDependencies = lockfileToSave.onlyBuiltDependencies.sort(); + } + if (!lockfileToSave.packageExtensionsChecksum) { + delete lockfileToSave.packageExtensionsChecksum; + } + return lockfileToSave; } - function generatePwshShim(src, to, opts) { - let shTarget = path.relative(path.dirname(to), src); - const shProg = opts.prog && opts.prog.split("\\").join("/"); - let pwshProg = shProg && `"${shProg}$exe"`; - let pwshLongProg; - shTarget = shTarget.split("\\").join("/"); - const quotedPathToTarget = path.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`; - let args2 = opts.args || ""; - let normalizedPathEnvVar = normalizePathEnvVar(opts.nodePath); - const nodePath = normalizedPathEnvVar.win32; - const shNodePath = normalizedPathEnvVar.posix; - if (!pwshProg) { - pwshProg = quotedPathToTarget; - args2 = ""; - shTarget = ""; - } else if (opts.prog === "node" && opts.nodeExecPath) { - pwshProg = `"${opts.nodeExecPath}"`; - shTarget = quotedPathToTarget; - } else { - pwshLongProg = `"$basedir/${opts.prog}$exe"`; - shTarget = quotedPathToTarget; + exports2.normalizeLockfile = normalizeLockfile; + function pruneTimeInLockfileV6(time, importers) { + const rootDepPaths = /* @__PURE__ */ new Set(); + for (const importer of Object.values(importers)) { + for (const depType of types_1.DEPENDENCIES_FIELDS) { + for (let [depName, ref] of Object.entries(importer[depType] ?? {})) { + if (ref["version"]) + ref = ref["version"]; + const suffixStart = ref.indexOf("("); + const refWithoutPeerSuffix = suffixStart === -1 ? ref : ref.slice(0, suffixStart); + const depPath = refToRelative(refWithoutPeerSuffix, depName); + if (!depPath) + continue; + rootDepPaths.add(depPath); + } + } } - let progArgs = opts.progArgs ? `${opts.progArgs.join(` `)} ` : ""; - let pwsh = `#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -${opts.nodePath ? `$pathsep=":" -$env_node_path=$env:NODE_PATH -$new_node_path="${nodePath}" -` : ""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -${opts.nodePath ? ' $pathsep=";"\n' : ""}}`; - if (opts.nodePath) { - pwsh += ` else { - $new_node_path="${shNodePath}" -} -if ([string]::IsNullOrEmpty($env_node_path)) { - $env:NODE_PATH=$new_node_path -} else { - $env:NODE_PATH="$env_node_path$pathsep$new_node_path" -} -`; + return (0, pickBy_1.default)((_, depPath) => rootDepPaths.has(depPath), time); + } + function refToRelative(reference, pkgName) { + if (reference.startsWith("link:")) { + return null; } - if (pwshLongProg) { - pwsh += ` -$ret=0 -if (Test-Path ${pwshLongProg}) { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${pwshLongProg} ${args2} ${shTarget} ${progArgs}$args - } else { - & ${pwshLongProg} ${args2} ${shTarget} ${progArgs}$args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args - } else { - & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args - } - $ret=$LASTEXITCODE -} -${opts.nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}exit $ret -`; - } else { - pwsh += ` -# Support pipeline input -if ($MyInvocation.ExpectingInput) { - $input | & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args -} else { - & ${pwshProg} ${args2} ${shTarget} ${progArgs}$args -} -${opts.nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}exit $LASTEXITCODE -`; + if (reference.startsWith("file:")) { + return reference; } - return pwsh; + if (!reference.includes("/") || !reference.replace(/(\([^)]+\))+$/, "").includes("/")) { + return `/${pkgName}@${reference}`; + } + return reference; } - function chmodShim(to, opts) { - return opts.fs_.chmod(to, 493); + function pruneTime(time, importers) { + const rootDepPaths = /* @__PURE__ */ new Set(); + for (const importer of Object.values(importers)) { + for (const depType of types_1.DEPENDENCIES_FIELDS) { + for (let [depName, ref] of Object.entries(importer[depType] ?? {})) { + if (ref["version"]) + ref = ref["version"]; + const suffixStart = ref.indexOf("_"); + const refWithoutPeerSuffix = suffixStart === -1 ? ref : ref.slice(0, suffixStart); + const depPath = dp.refToRelative(refWithoutPeerSuffix, depName); + if (!depPath) + continue; + rootDepPaths.add(depPath); + } + } + } + return (0, pickBy_1.default)((t, depPath) => rootDepPaths.has(depPath), time); } - function normalizePathEnvVar(nodePath) { - if (!nodePath) { - return { - win32: "", - posix: "" - }; + async function writeLockfiles(opts) { + const wantedLockfileName = await (0, lockfileName_1.getWantedLockfileName)(opts); + const wantedLockfilePath = path_1.default.join(opts.wantedLockfileDir, wantedLockfileName); + const currentLockfilePath = path_1.default.join(opts.currentLockfileDir, "lock.yaml"); + if (isEmptyLockfile(opts.wantedLockfile)) { + await Promise.all([ + (0, rimraf_1.default)(wantedLockfilePath), + (0, rimraf_1.default)(currentLockfilePath) + ]); + return; } - let split = typeof nodePath === "string" ? nodePath.split(path.delimiter) : Array.from(nodePath); - let result = {}; - for (let i = 0; i < split.length; i++) { - const win32 = split[i].split("/").join("\\"); - const posix = isWindows() ? split[i].split("\\").join("/").replace(/^([^:\\/]*):/, (_, $1) => `/mnt/${$1.toLowerCase()}`) : split[i]; - result.win32 = result.win32 ? `${result.win32};${win32}` : win32; - result.posix = result.posix ? `${result.posix}:${posix}` : posix; - result[i] = { win32, posix }; + const forceSharedFormat = opts?.forceSharedFormat === true; + const isLockfileV6 = opts.wantedLockfile.lockfileVersion.toString().startsWith("6."); + const wantedLockfileToStringify = Boolean(opts.useInlineSpecifiersFormat) || isLockfileV6 ? (0, inlineSpecifiersLockfileConverters_1.convertToInlineSpecifiersFormat)(opts.wantedLockfile) : opts.wantedLockfile; + const normalizeOpts = { + forceSharedFormat, + includeEmptySpecifiersField: !opts.useInlineSpecifiersFormat && !isLockfileV6 + }; + const yamlDoc = yamlStringify(wantedLockfileToStringify, normalizeOpts); + if (opts.wantedLockfile === opts.currentLockfile) { + await Promise.all([ + writeFileAtomic(wantedLockfilePath, yamlDoc), + (async () => { + await fs_1.promises.mkdir(path_1.default.dirname(currentLockfilePath), { recursive: true }); + await writeFileAtomic(currentLockfilePath, yamlDoc); + })() + ]); + return; } - return result; + logger_1.lockfileLogger.debug({ + message: `\`${constants_1.WANTED_LOCKFILE}\` differs from \`${path_1.default.relative(opts.wantedLockfileDir, currentLockfilePath)}\``, + prefix: opts.wantedLockfileDir + }); + const currentLockfileToStringify = Boolean(opts.useInlineSpecifiersFormat) || opts.wantedLockfile.lockfileVersion.toString().startsWith("6.") ? (0, inlineSpecifiersLockfileConverters_1.convertToInlineSpecifiersFormat)(opts.currentLockfile) : opts.currentLockfile; + const currentYamlDoc = yamlStringify(currentLockfileToStringify, normalizeOpts); + await Promise.all([ + writeFileAtomic(wantedLockfilePath, yamlDoc), + (async () => { + await fs_1.promises.mkdir(path_1.default.dirname(currentLockfilePath), { recursive: true }); + await writeFileAtomic(currentLockfilePath, currentYamlDoc); + })() + ]); } - module2.exports = cmdShim; + exports2.writeLockfiles = writeLockfiles; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js -var require_freeGlobal = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js"(exports2, module2) { - var freeGlobal = typeof global == "object" && global && global.Object === Object && global; - module2.exports = freeGlobal; +// ../lockfile/lockfile-file/lib/existsWantedLockfile.js +var require_existsWantedLockfile = __commonJS({ + "../lockfile/lockfile-file/lib/existsWantedLockfile.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.existsWantedLockfile = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var lockfileName_1 = require_lockfileName(); + async function existsWantedLockfile(pkgPath, opts = { + useGitBranchLockfile: false, + mergeGitBranchLockfiles: false + }) { + const wantedLockfile = await (0, lockfileName_1.getWantedLockfileName)(opts); + return new Promise((resolve, reject) => { + fs_1.default.access(path_1.default.join(pkgPath, wantedLockfile), (err) => { + if (err == null) { + resolve(true); + return; + } + if (err.code === "ENOENT") { + resolve(false); + return; + } + reject(err); + }); + }); + } + exports2.existsWantedLockfile = existsWantedLockfile; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js -var require_root = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js"(exports2, module2) { - var freeGlobal = require_freeGlobal(); - var freeSelf = typeof self == "object" && self && self.Object === Object && self; - var root = freeGlobal || freeSelf || Function("return this")(); - module2.exports = root; +// ../lockfile/lockfile-file/lib/getLockfileImporterId.js +var require_getLockfileImporterId = __commonJS({ + "../lockfile/lockfile-file/lib/getLockfileImporterId.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getLockfileImporterId = void 0; + var path_1 = __importDefault4(require("path")); + var normalize_path_1 = __importDefault4(require_normalize_path()); + function getLockfileImporterId(lockfileDir, prefix) { + return (0, normalize_path_1.default)(path_1.default.relative(lockfileDir, prefix)) || "."; + } + exports2.getLockfileImporterId = getLockfileImporterId; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js -var require_Symbol = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js"(exports2, module2) { - var root = require_root(); - var Symbol2 = root.Symbol; - module2.exports = Symbol2; +// ../node_modules/.pnpm/comver-to-semver@1.0.0/node_modules/comver-to-semver/index.js +var require_comver_to_semver = __commonJS({ + "../node_modules/.pnpm/comver-to-semver@1.0.0/node_modules/comver-to-semver/index.js"(exports2, module2) { + "use strict"; + module2.exports = function comverToSemver(comver) { + if (!comver.includes(".")) + return `${comver}.0.0`; + return `${comver}.0`; + }; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js -var require_getRawTag = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - var nativeObjectToString = objectProto.toString; - var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; - function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; - try { - value[symToStringTag] = void 0; - var unmasked = true; - } catch (e) { +// ../lockfile/merge-lockfile-changes/lib/index.js +var require_lib86 = __commonJS({ + "../lockfile/merge-lockfile-changes/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeLockfileChanges = void 0; + var comver_to_semver_1 = __importDefault4(require_comver_to_semver()); + var semver_12 = __importDefault4(require_semver2()); + function mergeLockfileChanges(ours, theirs) { + const newLockfile = { + importers: {}, + lockfileVersion: semver_12.default.gt((0, comver_to_semver_1.default)(theirs.lockfileVersion.toString()), (0, comver_to_semver_1.default)(ours.lockfileVersion.toString())) ? theirs.lockfileVersion : ours.lockfileVersion + }; + for (const importerId of Array.from(/* @__PURE__ */ new Set([...Object.keys(ours.importers), ...Object.keys(theirs.importers)]))) { + newLockfile.importers[importerId] = { + specifiers: {} + }; + for (const key of ["dependencies", "devDependencies", "optionalDependencies"]) { + newLockfile.importers[importerId][key] = mergeDict(ours.importers[importerId]?.[key] ?? {}, theirs.importers[importerId]?.[key] ?? {}, mergeVersions); + if (Object.keys(newLockfile.importers[importerId][key] ?? {}).length === 0) { + delete newLockfile.importers[importerId][key]; + } + } + newLockfile.importers[importerId].specifiers = mergeDict(ours.importers[importerId]?.specifiers ?? {}, theirs.importers[importerId]?.specifiers ?? {}, takeChangedValue); } - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; + const packages = {}; + for (const depPath of Array.from(/* @__PURE__ */ new Set([...Object.keys(ours.packages ?? {}), ...Object.keys(theirs.packages ?? {})]))) { + const ourPkg = ours.packages?.[depPath]; + const theirPkg = theirs.packages?.[depPath]; + const pkg = { + ...ourPkg, + ...theirPkg + }; + for (const key of ["dependencies", "optionalDependencies"]) { + pkg[key] = mergeDict(ourPkg?.[key] ?? {}, theirPkg?.[key] ?? {}, mergeVersions); + if (Object.keys(pkg[key] ?? {}).length === 0) { + delete pkg[key]; + } } + packages[depPath] = pkg; } - return result; - } - module2.exports = getRawTag; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js -var require_objectToString = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js"(exports2, module2) { - var objectProto = Object.prototype; - var nativeObjectToString = objectProto.toString; - function objectToString(value) { - return nativeObjectToString.call(value); + newLockfile.packages = packages; + return newLockfile; } - module2.exports = objectToString; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js -var require_baseGetTag = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var getRawTag = require_getRawTag(); - var objectToString = require_objectToString(); - var nullTag = "[object Null]"; - var undefinedTag = "[object Undefined]"; - var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; - function baseGetTag(value) { - if (value == null) { - return value === void 0 ? undefinedTag : nullTag; + exports2.mergeLockfileChanges = mergeLockfileChanges; + function mergeDict(ourDict, theirDict, valueMerger) { + const newDict = {}; + for (const key of Object.keys(ourDict).concat(Object.keys(theirDict))) { + const changedValue = valueMerger(ourDict[key], theirDict[key]); + if (changedValue) { + newDict[key] = changedValue; + } } - return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); + return newDict; } - module2.exports = baseGetTag; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js -var require_isObject2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js"(exports2, module2) { - function isObject(value) { - var type = typeof value; - return value != null && (type == "object" || type == "function"); + function takeChangedValue(ourValue, theirValue) { + if (ourValue === theirValue || theirValue == null) + return ourValue; + return theirValue; } - module2.exports = isObject; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js -var require_isFunction2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObject = require_isObject2(); - var asyncTag = "[object AsyncFunction]"; - var funcTag = "[object Function]"; - var genTag = "[object GeneratorFunction]"; - var proxyTag = "[object Proxy]"; - function isFunction(value) { - if (!isObject(value)) { - return false; + function mergeVersions(ourValue, theirValue) { + if (ourValue === theirValue || !theirValue) + return ourValue; + if (!ourValue) + return theirValue; + const [ourVersion] = ourValue.split("_"); + const [theirVersion] = theirValue.split("_"); + if (semver_12.default.gt(ourVersion, theirVersion)) { + return ourValue; } - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + return theirValue; } - module2.exports = isFunction; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js -var require_coreJsData = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js"(exports2, module2) { - var root = require_root(); - var coreJsData = root["__core-js_shared__"]; - module2.exports = coreJsData; +// ../lockfile/lockfile-file/lib/errors/LockfileBreakingChangeError.js +var require_LockfileBreakingChangeError = __commonJS({ + "../lockfile/lockfile-file/lib/errors/LockfileBreakingChangeError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LockfileBreakingChangeError = void 0; + var error_1 = require_lib8(); + var LockfileBreakingChangeError = class extends error_1.PnpmError { + constructor(filename) { + super("LOCKFILE_BREAKING_CHANGE", `Lockfile ${filename} not compatible with current pnpm`); + this.filename = filename; + } + }; + exports2.LockfileBreakingChangeError = LockfileBreakingChangeError; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js -var require_isMasked = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js"(exports2, module2) { - var coreJsData = require_coreJsData(); - var maskSrcKey = function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); - return uid ? "Symbol(src)_1." + uid : ""; - }(); - function isMasked(func) { - return !!maskSrcKey && maskSrcKey in func; - } - module2.exports = isMasked; +// ../lockfile/lockfile-file/lib/errors/index.js +var require_errors5 = __commonJS({ + "../lockfile/lockfile-file/lib/errors/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LockfileBreakingChangeError = void 0; + var LockfileBreakingChangeError_1 = require_LockfileBreakingChangeError(); + Object.defineProperty(exports2, "LockfileBreakingChangeError", { enumerable: true, get: function() { + return LockfileBreakingChangeError_1.LockfileBreakingChangeError; + } }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js -var require_toSource = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js"(exports2, module2) { - var funcProto = Function.prototype; - var funcToString = funcProto.toString; - function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) { +// ../lockfile/lockfile-file/lib/gitMergeFile.js +var require_gitMergeFile = __commonJS({ + "../lockfile/lockfile-file/lib/gitMergeFile.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isDiff = exports2.autofixMergeConflicts = void 0; + var merge_lockfile_changes_1 = require_lib86(); + var js_yaml_1 = __importDefault4(require_js_yaml()); + var inlineSpecifiersLockfileConverters_1 = require_inlineSpecifiersLockfileConverters(); + var MERGE_CONFLICT_PARENT = "|||||||"; + var MERGE_CONFLICT_END = ">>>>>>>"; + var MERGE_CONFLICT_THEIRS = "======="; + var MERGE_CONFLICT_OURS = "<<<<<<<"; + function autofixMergeConflicts(fileContent) { + const { ours, theirs } = parseMergeFile(fileContent); + return (0, merge_lockfile_changes_1.mergeLockfileChanges)((0, inlineSpecifiersLockfileConverters_1.revertFromInlineSpecifiersFormatIfNecessary)(js_yaml_1.default.load(ours)), (0, inlineSpecifiersLockfileConverters_1.revertFromInlineSpecifiersFormatIfNecessary)(js_yaml_1.default.load(theirs))); + } + exports2.autofixMergeConflicts = autofixMergeConflicts; + function parseMergeFile(fileContent) { + const lines = fileContent.split(/[\n\r]+/g); + let state = "top"; + const ours = []; + const theirs = []; + while (lines.length > 0) { + const line = lines.shift(); + if (line.startsWith(MERGE_CONFLICT_PARENT)) { + state = "parent"; + continue; } - try { - return func + ""; - } catch (e) { + if (line.startsWith(MERGE_CONFLICT_OURS)) { + state = "ours"; + continue; + } + if (line === MERGE_CONFLICT_THEIRS) { + state = "theirs"; + continue; + } + if (line.startsWith(MERGE_CONFLICT_END)) { + state = "top"; + continue; } + if (state === "top" || state === "ours") + ours.push(line); + if (state === "top" || state === "theirs") + theirs.push(line); } - return ""; + return { ours: ours.join("\n"), theirs: theirs.join("\n") }; } - module2.exports = toSource; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js -var require_baseIsNative = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js"(exports2, module2) { - var isFunction = require_isFunction2(); - var isMasked = require_isMasked(); - var isObject = require_isObject2(); - var toSource = require_toSource(); - var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; - var reIsHostCtor = /^\[object .+?Constructor\]$/; - var funcProto = Function.prototype; - var objectProto = Object.prototype; - var funcToString = funcProto.toString; - var hasOwnProperty = objectProto.hasOwnProperty; - var reIsNative = RegExp("^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"); - function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); + function isDiff(fileContent) { + return fileContent.includes(MERGE_CONFLICT_OURS) && fileContent.includes(MERGE_CONFLICT_THEIRS) && fileContent.includes(MERGE_CONFLICT_END); } - module2.exports = baseIsNative; + exports2.isDiff = isDiff; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js -var require_getValue = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js"(exports2, module2) { - function getValue(object, key) { - return object == null ? void 0 : object[key]; +// ../lockfile/lockfile-file/lib/gitBranchLockfile.js +var require_gitBranchLockfile = __commonJS({ + "../lockfile/lockfile-file/lib/gitBranchLockfile.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.cleanGitBranchLockfiles = exports2.getGitBranchLockfileNames = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + async function getGitBranchLockfileNames(lockfileDir) { + const files = await fs_1.promises.readdir(lockfileDir); + const gitBranchLockfileNames = files.filter((file) => file.match(/^pnpm-lock.(?:.*).yaml$/)); + return gitBranchLockfileNames; + } + exports2.getGitBranchLockfileNames = getGitBranchLockfileNames; + async function cleanGitBranchLockfiles(lockfileDir) { + const gitBranchLockfiles = await getGitBranchLockfileNames(lockfileDir); + await Promise.all(gitBranchLockfiles.map(async (file) => { + const filepath = path_1.default.join(lockfileDir, file); + await fs_1.promises.unlink(filepath); + })); } - module2.exports = getValue; + exports2.cleanGitBranchLockfiles = cleanGitBranchLockfiles; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js -var require_getNative = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js"(exports2, module2) { - var baseIsNative = require_baseIsNative(); - var getValue = require_getValue(); - function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : void 0; +// ../lockfile/lockfile-file/lib/read.js +var require_read = __commonJS({ + "../lockfile/lockfile-file/lib/read.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createLockfileObject = exports2.readWantedLockfile = exports2.readWantedLockfileAndAutofixConflicts = exports2.readCurrentLockfile = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var merge_lockfile_changes_1 = require_lib86(); + var types_1 = require_lib25(); + var comver_to_semver_1 = __importDefault4(require_comver_to_semver()); + var js_yaml_1 = __importDefault4(require_js_yaml()); + var semver_12 = __importDefault4(require_semver2()); + var strip_bom_1 = __importDefault4(require_strip_bom()); + var errors_1 = require_errors5(); + var gitMergeFile_1 = require_gitMergeFile(); + var logger_1 = require_logger2(); + var lockfileName_1 = require_lockfileName(); + var gitBranchLockfile_1 = require_gitBranchLockfile(); + var inlineSpecifiersLockfileConverters_1 = require_inlineSpecifiersLockfileConverters(); + async function readCurrentLockfile(virtualStoreDir, opts) { + const lockfilePath = path_1.default.join(virtualStoreDir, "lock.yaml"); + return (await _read(lockfilePath, virtualStoreDir, opts)).lockfile; } - module2.exports = getNative; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js -var require_defineProperty = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js"(exports2, module2) { - var getNative = require_getNative(); - var defineProperty = function() { + exports2.readCurrentLockfile = readCurrentLockfile; + async function readWantedLockfileAndAutofixConflicts(pkgPath, opts) { + return _readWantedLockfile(pkgPath, { + ...opts, + autofixMergeConflicts: true + }); + } + exports2.readWantedLockfileAndAutofixConflicts = readWantedLockfileAndAutofixConflicts; + async function readWantedLockfile(pkgPath, opts) { + return (await _readWantedLockfile(pkgPath, opts)).lockfile; + } + exports2.readWantedLockfile = readWantedLockfile; + async function _read(lockfilePath, prefix, opts) { + let lockfileRawContent; try { - var func = getNative(Object, "defineProperty"); - func({}, "", {}); - return func; - } catch (e) { + lockfileRawContent = (0, strip_bom_1.default)(await fs_1.promises.readFile(lockfilePath, "utf8")); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + return { + lockfile: null, + hadConflicts: false + }; } - }(); - module2.exports = defineProperty; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js -var require_baseAssignValue = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js"(exports2, module2) { - var defineProperty = require_defineProperty(); - function baseAssignValue(object, key, value) { - if (key == "__proto__" && defineProperty) { - defineProperty(object, key, { - "configurable": true, - "enumerable": true, - "value": value, - "writable": true + let lockfile; + let hadConflicts; + try { + lockfile = (0, inlineSpecifiersLockfileConverters_1.revertFromInlineSpecifiersFormatIfNecessary)(convertFromLockfileFileMutable(js_yaml_1.default.load(lockfileRawContent))); + hadConflicts = false; + } catch (err) { + if (!opts.autofixMergeConflicts || !(0, gitMergeFile_1.isDiff)(lockfileRawContent)) { + throw new error_1.PnpmError("BROKEN_LOCKFILE", `The lockfile at "${lockfilePath}" is broken: ${err.message}`); + } + hadConflicts = true; + lockfile = convertFromLockfileFileMutable((0, gitMergeFile_1.autofixMergeConflicts)(lockfileRawContent)); + logger_1.lockfileLogger.info({ + message: `Merge conflict detected in ${constants_1.WANTED_LOCKFILE} and successfully merged`, + prefix }); - } else { - object[key] = value; } - } - module2.exports = baseAssignValue; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createBaseFor.js -var require_createBaseFor = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createBaseFor.js"(exports2, module2) { - function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; + if (lockfile) { + const lockfileSemver = (0, comver_to_semver_1.default)((lockfile.lockfileVersion ?? 0).toString()); + if (!opts.wantedVersions || opts.wantedVersions.length === 0 || opts.wantedVersions.some((wantedVersion) => { + if (semver_12.default.major(lockfileSemver) !== semver_12.default.major((0, comver_to_semver_1.default)(wantedVersion))) + return false; + if (lockfile.lockfileVersion !== "6.1" && semver_12.default.gt(lockfileSemver, (0, comver_to_semver_1.default)(wantedVersion))) { + logger_1.lockfileLogger.warn({ + message: `Your ${constants_1.WANTED_LOCKFILE} was generated by a newer version of pnpm. It is a compatible version but it might get downgraded to version ${wantedVersion}`, + prefix + }); } + return true; + })) { + return { lockfile, hadConflicts }; + } + } + if (opts.ignoreIncompatible) { + logger_1.lockfileLogger.warn({ + message: `Ignoring not compatible lockfile at ${lockfilePath}`, + prefix + }); + return { lockfile: null, hadConflicts: false }; + } + throw new errors_1.LockfileBreakingChangeError(lockfilePath); + } + function createLockfileObject(importerIds, opts) { + const importers = importerIds.reduce((acc, importerId) => { + acc[importerId] = { + dependencies: {}, + specifiers: {} + }; + return acc; + }, {}); + return { + importers, + lockfileVersion: opts.lockfileVersion || constants_1.LOCKFILE_VERSION, + settings: { + autoInstallPeers: opts.autoInstallPeers, + excludeLinksFromLockfile: false } - return object; }; } - module2.exports = createBaseFor; + exports2.createLockfileObject = createLockfileObject; + async function _readWantedLockfile(pkgPath, opts) { + const lockfileNames = [constants_1.WANTED_LOCKFILE]; + if (opts.useGitBranchLockfile) { + const gitBranchLockfileName = await (0, lockfileName_1.getWantedLockfileName)(opts); + if (gitBranchLockfileName !== constants_1.WANTED_LOCKFILE) { + lockfileNames.unshift(gitBranchLockfileName); + } + } + let result2 = { lockfile: null, hadConflicts: false }; + for (const lockfileName of lockfileNames) { + result2 = await _read(path_1.default.join(pkgPath, lockfileName), pkgPath, { ...opts, autofixMergeConflicts: true }); + if (result2.lockfile) { + if (opts.mergeGitBranchLockfiles) { + result2.lockfile = await _mergeGitBranchLockfiles(result2.lockfile, pkgPath, pkgPath, opts); + } + break; + } + } + return result2; + } + async function _mergeGitBranchLockfiles(lockfile, lockfileDir, prefix, opts) { + if (!lockfile) { + return lockfile; + } + const gitBranchLockfiles = (await _readGitBranchLockfiles(lockfileDir, prefix, opts)).map(({ lockfile: lockfile2 }) => lockfile2); + let mergedLockfile = lockfile; + for (const gitBranchLockfile of gitBranchLockfiles) { + if (!gitBranchLockfile) { + continue; + } + mergedLockfile = (0, merge_lockfile_changes_1.mergeLockfileChanges)(mergedLockfile, gitBranchLockfile); + } + return mergedLockfile; + } + async function _readGitBranchLockfiles(lockfileDir, prefix, opts) { + const files = await (0, gitBranchLockfile_1.getGitBranchLockfileNames)(lockfileDir); + return Promise.all(files.map((file) => _read(path_1.default.join(lockfileDir, file), prefix, opts))); + } + function convertFromLockfileFileMutable(lockfileFile) { + if (typeof lockfileFile?.["importers"] === "undefined") { + lockfileFile.importers = { + ".": { + specifiers: lockfileFile["specifiers"] ?? {}, + dependenciesMeta: lockfileFile["dependenciesMeta"], + publishDirectory: lockfileFile["publishDirectory"] + } + }; + delete lockfileFile.specifiers; + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if (lockfileFile[depType] != null) { + lockfileFile.importers["."][depType] = lockfileFile[depType]; + delete lockfileFile[depType]; + } + } + } + return lockfileFile; + } } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFor.js -var require_baseFor = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFor.js"(exports2, module2) { - var createBaseFor = require_createBaseFor(); - var baseFor = createBaseFor(); - module2.exports = baseFor; +// ../lockfile/lockfile-file/lib/index.js +var require_lib87 = __commonJS({ + "../lockfile/lockfile-file/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.cleanGitBranchLockfiles = exports2.getLockfileImporterId = exports2.existsWantedLockfile = exports2.writeWantedLockfile = exports2.writeCurrentLockfile = exports2.writeLockfiles = void 0; + var write_1 = require_write(); + Object.defineProperty(exports2, "writeLockfiles", { enumerable: true, get: function() { + return write_1.writeLockfiles; + } }); + Object.defineProperty(exports2, "writeCurrentLockfile", { enumerable: true, get: function() { + return write_1.writeCurrentLockfile; + } }); + Object.defineProperty(exports2, "writeWantedLockfile", { enumerable: true, get: function() { + return write_1.writeWantedLockfile; + } }); + var existsWantedLockfile_1 = require_existsWantedLockfile(); + Object.defineProperty(exports2, "existsWantedLockfile", { enumerable: true, get: function() { + return existsWantedLockfile_1.existsWantedLockfile; + } }); + var getLockfileImporterId_1 = require_getLockfileImporterId(); + Object.defineProperty(exports2, "getLockfileImporterId", { enumerable: true, get: function() { + return getLockfileImporterId_1.getLockfileImporterId; + } }); + __exportStar4(require_lib83(), exports2); + __exportStar4(require_read(), exports2); + var gitBranchLockfile_1 = require_gitBranchLockfile(); + Object.defineProperty(exports2, "cleanGitBranchLockfiles", { enumerable: true, get: function() { + return gitBranchLockfile_1.cleanGitBranchLockfiles; + } }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTimes.js -var require_baseTimes = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTimes.js"(exports2, module2) { - function baseTimes(n, iteratee) { - var index = -1, result = Array(n); - while (++index < n) { - result[index] = iteratee(index); +// ../pkg-manager/modules-yaml/lib/index.js +var require_lib88 = __commonJS({ + "../pkg-manager/modules-yaml/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.writeModulesManifest = exports2.readModulesManifest = void 0; + var path_1 = __importDefault4(require("path")); + var read_yaml_file_1 = __importDefault4(require_read_yaml_file()); + var map_1 = __importDefault4(require_map4()); + var is_windows_1 = __importDefault4(require_is_windows()); + var write_yaml_file_1 = __importDefault4(require_write_yaml_file()); + var MODULES_FILENAME = ".modules.yaml"; + async function readModulesManifest(modulesDir) { + const modulesYamlPath = path_1.default.join(modulesDir, MODULES_FILENAME); + let modules; + try { + modules = await (0, read_yaml_file_1.default)(modulesYamlPath); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + return null; } - return result; + if (!modules.virtualStoreDir) { + modules.virtualStoreDir = path_1.default.join(modulesDir, ".pnpm"); + } else if (!path_1.default.isAbsolute(modules.virtualStoreDir)) { + modules.virtualStoreDir = path_1.default.join(modulesDir, modules.virtualStoreDir); + } + switch (modules.shamefullyHoist) { + case true: + if (modules.publicHoistPattern == null) { + modules.publicHoistPattern = ["*"]; + } + if (modules.hoistedAliases != null && !modules.hoistedDependencies) { + modules.hoistedDependencies = (0, map_1.default)((aliases) => Object.fromEntries(aliases.map((alias) => [alias, "public"])), modules.hoistedAliases); + } + break; + case false: + if (modules.publicHoistPattern == null) { + modules.publicHoistPattern = []; + } + if (modules.hoistedAliases != null && !modules.hoistedDependencies) { + modules.hoistedDependencies = {}; + for (const depPath of Object.keys(modules.hoistedAliases)) { + modules.hoistedDependencies[depPath] = {}; + for (const alias of modules.hoistedAliases[depPath]) { + modules.hoistedDependencies[depPath][alias] = "private"; + } + } + } + break; + } + if (!modules.prunedAt) { + modules.prunedAt = (/* @__PURE__ */ new Date()).toUTCString(); + } + return modules; } - module2.exports = baseTimes; + exports2.readModulesManifest = readModulesManifest; + var YAML_OPTS = { + lineWidth: 1e3, + noCompatMode: true, + noRefs: true, + sortKeys: true + }; + async function writeModulesManifest(modulesDir, modules) { + const modulesYamlPath = path_1.default.join(modulesDir, MODULES_FILENAME); + const saveModules = { ...modules }; + if (saveModules.skipped) + saveModules.skipped.sort(); + if (saveModules.hoistPattern == null || saveModules.hoistPattern === "") { + delete saveModules.hoistPattern; + } + if (saveModules.publicHoistPattern == null) { + delete saveModules.publicHoistPattern; + } + if (saveModules.hoistedAliases == null || saveModules.hoistPattern == null && saveModules.publicHoistPattern == null) { + delete saveModules.hoistedAliases; + } + if (!(0, is_windows_1.default)()) { + saveModules.virtualStoreDir = path_1.default.relative(modulesDir, saveModules.virtualStoreDir); + } + return (0, write_yaml_file_1.default)(modulesYamlPath, saveModules, YAML_OPTS); + } + exports2.writeModulesManifest = writeModulesManifest; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js -var require_isObjectLike = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js"(exports2, module2) { - function isObjectLike(value) { - return value != null && typeof value == "object"; +// ../config/normalize-registries/lib/index.js +var require_lib89 = __commonJS({ + "../config/normalize-registries/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.normalizeRegistries = exports2.DEFAULT_REGISTRIES = void 0; + var normalize_registry_url_1 = __importDefault4(require_normalize_registry_url()); + var map_1 = __importDefault4(require_map4()); + exports2.DEFAULT_REGISTRIES = { + default: "https://registry.npmjs.org/" + }; + function normalizeRegistries(registries) { + if (registries == null) + return exports2.DEFAULT_REGISTRIES; + const normalizeRegistries2 = (0, map_1.default)(normalize_registry_url_1.default, registries); + return { + ...exports2.DEFAULT_REGISTRIES, + ...normalizeRegistries2 + }; } - module2.exports = isObjectLike; + exports2.normalizeRegistries = normalizeRegistries; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js -var require_baseIsArguments = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObjectLike = require_isObjectLike(); - var argsTag = "[object Arguments]"; - function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; +// ../node_modules/.pnpm/resolve-link-target@2.0.0/node_modules/resolve-link-target/index.js +var require_resolve_link_target = __commonJS({ + "../node_modules/.pnpm/resolve-link-target@2.0.0/node_modules/resolve-link-target/index.js"(exports2, module2) { + "use strict"; + var fs2 = require("fs"); + var path2 = require("path"); + module2.exports = getLinkTarget; + module2.exports.sync = getLinkTargetSync; + async function getLinkTarget(linkPath) { + linkPath = path2.resolve(linkPath); + const target = await fs2.promises.readlink(linkPath); + return _resolveLink(linkPath, target); + } + function getLinkTargetSync(linkPath) { + linkPath = path2.resolve(linkPath); + const target = fs2.readlinkSync(linkPath); + return _resolveLink(linkPath, target); + } + function _resolveLink(dest, target) { + if (path2.isAbsolute(target)) { + return path2.resolve(target); + } + return path2.join(path2.dirname(dest), target); } - module2.exports = baseIsArguments; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js -var require_isArguments2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js"(exports2, module2) { - var baseIsArguments = require_baseIsArguments(); - var isObjectLike = require_isObjectLike(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - var propertyIsEnumerable = objectProto.propertyIsEnumerable; - var isArguments = baseIsArguments(function() { - return arguments; - }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); +// ../reviewing/dependencies-hierarchy/lib/getPkgInfo.js +var require_getPkgInfo = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/getPkgInfo.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - module2.exports = isArguments; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPkgInfo = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_utils_1 = require_lib84(); + var dependency_path_1 = require_lib81(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + function getPkgInfo(opts) { + let name; + let version2; + let resolved; + let dev; + let optional; + let isSkipped = false; + let isMissing = false; + const depPath = (0, dependency_path_1.refToRelative)(opts.ref, opts.alias); + if (depPath) { + let pkgSnapshot; + if (opts.currentPackages[depPath]) { + pkgSnapshot = opts.currentPackages[depPath]; + const parsed = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + name = parsed.name; + version2 = parsed.version; + } else { + pkgSnapshot = opts.wantedPackages[depPath]; + if (pkgSnapshot) { + const parsed = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + name = parsed.name; + version2 = parsed.version; + } else { + name = opts.alias; + version2 = opts.ref; + } + isMissing = true; + isSkipped = opts.skipped.has(depPath); + } + resolved = (0, lockfile_utils_1.pkgSnapshotToResolution)(depPath, pkgSnapshot, opts.registries).tarball; + dev = pkgSnapshot.dev; + optional = pkgSnapshot.optional; + } else { + name = opts.alias; + version2 = opts.ref; + } + const fullPackagePath = depPath ? path_1.default.join(opts.virtualStoreDir ?? ".pnpm", (0, dependency_path_1.depPathToFilename)(depPath), "node_modules", name) : path_1.default.join(opts.linkedPathBaseDir, opts.ref.slice(5)); + if (version2.startsWith("link:") && opts.rewriteLinkVersionDir) { + version2 = `link:${(0, normalize_path_1.default)(path_1.default.relative(opts.rewriteLinkVersionDir, fullPackagePath))}`; + } + const packageInfo = { + alias: opts.alias, + isMissing, + isPeer: Boolean(opts.peers?.has(opts.alias)), + isSkipped, + name, + path: fullPackagePath, + version: version2 + }; + if (resolved) { + packageInfo.resolved = resolved; + } + if (optional === true) { + packageInfo.optional = true; + } + if (typeof dev === "boolean") { + packageInfo.dev = dev; + } + return packageInfo; + } + exports2.getPkgInfo = getPkgInfo; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js -var require_isArray2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js"(exports2, module2) { - var isArray = Array.isArray; - module2.exports = isArray; +// ../reviewing/dependencies-hierarchy/lib/getTreeNodeChildId.js +var require_getTreeNodeChildId = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/getTreeNodeChildId.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getTreeNodeChildId = void 0; + var dependency_path_1 = require_lib81(); + var path_1 = __importDefault4(require("path")); + var lockfile_file_1 = require_lib87(); + function getTreeNodeChildId(opts) { + const depPath = (0, dependency_path_1.refToRelative)(opts.dep.ref, opts.dep.alias); + if (depPath !== null) { + return { type: "package", depPath }; + } + switch (opts.parentId.type) { + case "importer": { + const linkValue = opts.dep.ref.slice("link:".length); + const absoluteLinkedPath = path_1.default.join(opts.lockfileDir, opts.parentId.importerId, linkValue); + const childImporterId = (0, lockfile_file_1.getLockfileImporterId)(opts.lockfileDir, absoluteLinkedPath); + const isLinkOutsideWorkspace = opts.importers[childImporterId] == null; + return isLinkOutsideWorkspace ? void 0 : { type: "importer", importerId: childImporterId }; + } + case "package": + return void 0; + } + } + exports2.getTreeNodeChildId = getTreeNodeChildId; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubFalse.js -var require_stubFalse = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubFalse.js"(exports2, module2) { - function stubFalse() { - return false; +// ../reviewing/dependencies-hierarchy/lib/TreeNodeId.js +var require_TreeNodeId = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/TreeNodeId.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.serializeTreeNodeId = void 0; + function serializeTreeNodeId(treeNodeId) { + switch (treeNodeId.type) { + case "importer": { + const { type, importerId } = treeNodeId; + return JSON.stringify({ type, importerId }); + } + case "package": { + const { type, depPath } = treeNodeId; + return JSON.stringify({ type, depPath }); + } + } } - module2.exports = stubFalse; + exports2.serializeTreeNodeId = serializeTreeNodeId; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBuffer.js -var require_isBuffer = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBuffer.js"(exports2, module2) { - var root = require_root(); - var stubFalse = require_stubFalse(); - var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; - var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; - var moduleExports = freeModule && freeModule.exports === freeExports; - var Buffer2 = moduleExports ? root.Buffer : void 0; - var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0; - var isBuffer = nativeIsBuffer || stubFalse; - module2.exports = isBuffer; +// ../reviewing/dependencies-hierarchy/lib/DependenciesCache.js +var require_DependenciesCache = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/DependenciesCache.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DependenciesCache = void 0; + var TreeNodeId_1 = require_TreeNodeId(); + var DependenciesCache = class { + constructor() { + this.fullyVisitedCache = /* @__PURE__ */ new Map(); + this.partiallyVisitedCache = /* @__PURE__ */ new Map(); + } + get(args2) { + const cacheKey = (0, TreeNodeId_1.serializeTreeNodeId)(args2.parentId); + const fullyVisitedEntry = this.fullyVisitedCache.get(cacheKey); + if (fullyVisitedEntry !== void 0 && fullyVisitedEntry.height <= args2.requestedDepth) { + return { + dependencies: fullyVisitedEntry.dependencies, + height: fullyVisitedEntry.height, + circular: false + }; + } + const partiallyVisitedEntry = this.partiallyVisitedCache.get(cacheKey)?.get(args2.requestedDepth); + if (partiallyVisitedEntry != null) { + return { + dependencies: partiallyVisitedEntry, + height: "unknown", + circular: false + }; + } + return void 0; + } + addFullyVisitedResult(treeNodeId, result2) { + const cacheKey = (0, TreeNodeId_1.serializeTreeNodeId)(treeNodeId); + this.fullyVisitedCache.set(cacheKey, result2); + } + addPartiallyVisitedResult(treeNodeId, result2) { + const cacheKey = (0, TreeNodeId_1.serializeTreeNodeId)(treeNodeId); + const dependenciesByDepth = this.partiallyVisitedCache.get(cacheKey) ?? /* @__PURE__ */ new Map(); + if (!this.partiallyVisitedCache.has(cacheKey)) { + this.partiallyVisitedCache.set(cacheKey, dependenciesByDepth); + } + dependenciesByDepth.set(result2.depth, result2.dependencies); + } + }; + exports2.DependenciesCache = DependenciesCache; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js -var require_isIndex = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js"(exports2, module2) { - var MAX_SAFE_INTEGER = 9007199254740991; - var reIsUint = /^(?:0|[1-9]\d*)$/; - function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); +// ../reviewing/dependencies-hierarchy/lib/getTree.js +var require_getTree = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/getTree.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getTree = void 0; + var path_1 = __importDefault4(require("path")); + var getPkgInfo_1 = require_getPkgInfo(); + var getTreeNodeChildId_1 = require_getTreeNodeChildId(); + var DependenciesCache_1 = require_DependenciesCache(); + var TreeNodeId_1 = require_TreeNodeId(); + function getTree(opts, parentId) { + const dependenciesCache = new DependenciesCache_1.DependenciesCache(); + return getTreeHelper(dependenciesCache, opts, Keypath.initialize(parentId), parentId).dependencies; } - module2.exports = isIndex; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js -var require_isLength = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js"(exports2, module2) { - var MAX_SAFE_INTEGER = 9007199254740991; - function isLength(value) { - return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + exports2.getTree = getTree; + function getTreeHelper(dependenciesCache, opts, keypath, parentId) { + if (opts.maxDepth <= 0) { + return { dependencies: [], height: "unknown" }; + } + function getSnapshot(treeNodeId) { + switch (treeNodeId.type) { + case "importer": + return opts.importers[treeNodeId.importerId]; + case "package": + return opts.currentPackages[treeNodeId.depPath]; + } + } + const snapshot = getSnapshot(parentId); + if (!snapshot) { + return { dependencies: [], height: 0 }; + } + const deps = !opts.includeOptionalDependencies ? snapshot.dependencies : { + ...snapshot.dependencies, + ...snapshot.optionalDependencies + }; + if (deps == null) { + return { dependencies: [], height: 0 }; + } + const childTreeMaxDepth = opts.maxDepth - 1; + const getChildrenTree = getTreeHelper.bind(null, dependenciesCache, { + ...opts, + maxDepth: childTreeMaxDepth + }); + function getPeerDependencies() { + switch (parentId.type) { + case "importer": + return void 0; + case "package": + return opts.currentPackages[parentId.depPath]?.peerDependencies; + } + } + const peers = new Set(Object.keys(getPeerDependencies() ?? {})); + function getLinkedPathBaseDir() { + switch (parentId.type) { + case "importer": + return path_1.default.join(opts.lockfileDir, parentId.importerId); + case "package": + return opts.lockfileDir; + } + } + const linkedPathBaseDir = getLinkedPathBaseDir(); + const resultDependencies = []; + let resultHeight = 0; + let resultCircular = false; + Object.entries(deps).forEach(([alias, ref]) => { + const packageInfo = (0, getPkgInfo_1.getPkgInfo)({ + alias, + currentPackages: opts.currentPackages, + rewriteLinkVersionDir: opts.rewriteLinkVersionDir, + linkedPathBaseDir, + peers, + ref, + registries: opts.registries, + skipped: opts.skipped, + wantedPackages: opts.wantedPackages, + virtualStoreDir: opts.virtualStoreDir + }); + let circular; + const matchedSearched = opts.search?.(packageInfo); + let newEntry = null; + const nodeId = (0, getTreeNodeChildId_1.getTreeNodeChildId)({ + parentId, + dep: { alias, ref }, + lockfileDir: opts.lockfileDir, + importers: opts.importers + }); + if (opts.onlyProjects && nodeId?.type !== "importer") { + return; + } else if (nodeId == null) { + circular = false; + if (opts.search == null || matchedSearched) { + newEntry = packageInfo; + } + } else { + let dependencies; + circular = keypath.includes(nodeId); + if (circular) { + dependencies = []; + } else { + const cacheEntry = dependenciesCache.get({ parentId: nodeId, requestedDepth: childTreeMaxDepth }); + const children = cacheEntry ?? getChildrenTree(keypath.concat(nodeId), nodeId); + if (cacheEntry == null && !children.circular) { + if (children.height === "unknown") { + dependenciesCache.addPartiallyVisitedResult(nodeId, { + dependencies: children.dependencies, + depth: childTreeMaxDepth + }); + } else { + dependenciesCache.addFullyVisitedResult(nodeId, { + dependencies: children.dependencies, + height: children.height + }); + } + } + const heightOfCurrentDepNode = children.height === "unknown" ? "unknown" : children.height + 1; + dependencies = children.dependencies; + resultHeight = resultHeight === "unknown" || heightOfCurrentDepNode === "unknown" ? "unknown" : Math.max(resultHeight, heightOfCurrentDepNode); + resultCircular = resultCircular || (children.circular ?? false); + } + if (dependencies.length > 0) { + newEntry = { + ...packageInfo, + dependencies + }; + } else if (opts.search == null || matchedSearched) { + newEntry = packageInfo; + } + } + if (newEntry != null) { + if (circular) { + newEntry.circular = true; + resultCircular = true; + } + if (matchedSearched) { + newEntry.searched = true; + } + resultDependencies.push(newEntry); + } + }); + const result2 = { + dependencies: resultDependencies, + height: resultHeight + }; + if (resultCircular) { + result2.circular = resultCircular; + } + return result2; } - module2.exports = isLength; + var Keypath = class { + constructor(keypath) { + this.keypath = keypath; + } + static initialize(treeNodeId) { + return new Keypath([(0, TreeNodeId_1.serializeTreeNodeId)(treeNodeId)]); + } + includes(treeNodeId) { + return this.keypath.includes((0, TreeNodeId_1.serializeTreeNodeId)(treeNodeId)); + } + concat(treeNodeId) { + return new Keypath([...this.keypath, (0, TreeNodeId_1.serializeTreeNodeId)(treeNodeId)]); + } + }; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsTypedArray.js -var require_baseIsTypedArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsTypedArray.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isLength = require_isLength(); - var isObjectLike = require_isObjectLike(); - var argsTag = "[object Arguments]"; - var arrayTag = "[object Array]"; - var boolTag = "[object Boolean]"; - var dateTag = "[object Date]"; - var errorTag = "[object Error]"; - var funcTag = "[object Function]"; - var mapTag = "[object Map]"; - var numberTag = "[object Number]"; - var objectTag = "[object Object]"; - var regexpTag = "[object RegExp]"; - var setTag = "[object Set]"; - var stringTag = "[object String]"; - var weakMapTag = "[object WeakMap]"; - var arrayBufferTag = "[object ArrayBuffer]"; - var dataViewTag = "[object DataView]"; - var float32Tag = "[object Float32Array]"; - var float64Tag = "[object Float64Array]"; - var int8Tag = "[object Int8Array]"; - var int16Tag = "[object Int16Array]"; - var int32Tag = "[object Int32Array]"; - var uint8Tag = "[object Uint8Array]"; - var uint8ClampedTag = "[object Uint8ClampedArray]"; - var uint16Tag = "[object Uint16Array]"; - var uint32Tag = "[object Uint32Array]"; - var typedArrayTags = {}; - typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; - typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; - function baseIsTypedArray(value) { - return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; +// ../reviewing/dependencies-hierarchy/lib/buildDependenciesHierarchy.js +var require_buildDependenciesHierarchy = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/buildDependenciesHierarchy.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildDependenciesHierarchy = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_file_1 = require_lib87(); + var modules_yaml_1 = require_lib88(); + var normalize_registries_1 = require_lib89(); + var read_modules_dir_1 = require_lib53(); + var read_package_json_1 = require_lib41(); + var types_1 = require_lib25(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var resolve_link_target_1 = __importDefault4(require_resolve_link_target()); + var getTree_1 = require_getTree(); + var getTreeNodeChildId_1 = require_getTreeNodeChildId(); + var getPkgInfo_1 = require_getPkgInfo(); + async function buildDependenciesHierarchy(projectPaths, maybeOpts) { + if (!maybeOpts?.lockfileDir) { + throw new TypeError("opts.lockfileDir is required"); + } + const modulesDir = await (0, realpath_missing_1.default)(path_1.default.join(maybeOpts.lockfileDir, maybeOpts.modulesDir ?? "node_modules")); + const modules = await (0, modules_yaml_1.readModulesManifest)(modulesDir); + const registries = (0, normalize_registries_1.normalizeRegistries)({ + ...maybeOpts?.registries, + ...modules?.registries + }); + const currentLockfile = (modules?.virtualStoreDir && await (0, lockfile_file_1.readCurrentLockfile)(modules.virtualStoreDir, { ignoreIncompatible: false })) ?? null; + const result2 = {}; + if (!currentLockfile) { + for (const projectPath of projectPaths) { + result2[projectPath] = {}; + } + return result2; + } + const opts = { + depth: maybeOpts.depth || 0, + include: maybeOpts.include ?? { + dependencies: true, + devDependencies: true, + optionalDependencies: true + }, + lockfileDir: maybeOpts.lockfileDir, + onlyProjects: maybeOpts.onlyProjects, + registries, + search: maybeOpts.search, + skipped: new Set(modules?.skipped ?? []), + modulesDir: maybeOpts.modulesDir, + virtualStoreDir: modules?.virtualStoreDir + }; + (await Promise.all(projectPaths.map(async (projectPath) => { + return [ + projectPath, + await dependenciesHierarchyForPackage(projectPath, currentLockfile, opts) + ]; + }))).forEach(([projectPath, dependenciesHierarchy]) => { + result2[projectPath] = dependenciesHierarchy; + }); + return result2; } - module2.exports = baseIsTypedArray; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUnary.js -var require_baseUnary = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUnary.js"(exports2, module2) { - function baseUnary(func) { - return function(value) { - return func(value); + exports2.buildDependenciesHierarchy = buildDependenciesHierarchy; + async function dependenciesHierarchyForPackage(projectPath, currentLockfile, opts) { + const importerId = (0, lockfile_file_1.getLockfileImporterId)(opts.lockfileDir, projectPath); + if (!currentLockfile.importers[importerId]) + return {}; + const modulesDir = path_1.default.join(projectPath, opts.modulesDir ?? "node_modules"); + const savedDeps = getAllDirectDependencies(currentLockfile.importers[importerId]); + const allDirectDeps = await (0, read_modules_dir_1.readModulesDir)(modulesDir) ?? []; + const unsavedDeps = allDirectDeps.filter((directDep) => !savedDeps[directDep]); + const wantedLockfile = await (0, lockfile_file_1.readWantedLockfile)(opts.lockfileDir, { ignoreIncompatible: false }) ?? { packages: {} }; + const getChildrenTree = getTree_1.getTree.bind(null, { + currentPackages: currentLockfile.packages ?? {}, + importers: currentLockfile.importers, + includeOptionalDependencies: opts.include.optionalDependencies, + lockfileDir: opts.lockfileDir, + onlyProjects: opts.onlyProjects, + rewriteLinkVersionDir: projectPath, + maxDepth: opts.depth, + modulesDir, + registries: opts.registries, + search: opts.search, + skipped: opts.skipped, + wantedPackages: wantedLockfile.packages ?? {}, + virtualStoreDir: opts.virtualStoreDir + }); + const parentId = { type: "importer", importerId }; + const result2 = {}; + for (const dependenciesField of types_1.DEPENDENCIES_FIELDS.sort().filter((dependenciedField) => opts.include[dependenciedField])) { + const topDeps = currentLockfile.importers[importerId][dependenciesField] ?? {}; + result2[dependenciesField] = []; + Object.entries(topDeps).forEach(([alias, ref]) => { + const packageInfo = (0, getPkgInfo_1.getPkgInfo)({ + alias, + currentPackages: currentLockfile.packages ?? {}, + rewriteLinkVersionDir: projectPath, + linkedPathBaseDir: projectPath, + ref, + registries: opts.registries, + skipped: opts.skipped, + wantedPackages: wantedLockfile.packages ?? {}, + virtualStoreDir: opts.virtualStoreDir + }); + let newEntry = null; + const matchedSearched = opts.search?.(packageInfo); + const nodeId = (0, getTreeNodeChildId_1.getTreeNodeChildId)({ + parentId, + dep: { alias, ref }, + lockfileDir: opts.lockfileDir, + importers: currentLockfile.importers + }); + if (opts.onlyProjects && nodeId?.type !== "importer") { + return; + } else if (nodeId == null) { + if (opts.search != null && !matchedSearched) + return; + newEntry = packageInfo; + } else { + const dependencies = getChildrenTree(nodeId); + if (dependencies.length > 0) { + newEntry = { + ...packageInfo, + dependencies + }; + } else if (opts.search == null || matchedSearched) { + newEntry = packageInfo; + } + } + if (newEntry != null) { + if (matchedSearched) { + newEntry.searched = true; + } + result2[dependenciesField].push(newEntry); + } + }); + } + await Promise.all(unsavedDeps.map(async (unsavedDep) => { + let pkgPath = path_1.default.join(modulesDir, unsavedDep); + let version2; + try { + pkgPath = await (0, resolve_link_target_1.default)(pkgPath); + version2 = `link:${(0, normalize_path_1.default)(path_1.default.relative(projectPath, pkgPath))}`; + } catch (err) { + const pkg2 = await (0, read_package_json_1.safeReadPackageJsonFromDir)(pkgPath); + version2 = pkg2?.version ?? "undefined"; + } + const pkg = { + alias: unsavedDep, + isMissing: false, + isPeer: false, + isSkipped: false, + name: unsavedDep, + path: pkgPath, + version: version2 + }; + const matchedSearched = opts.search?.(pkg); + if (opts.search != null && !matchedSearched) + return; + const newEntry = pkg; + if (matchedSearched) { + newEntry.searched = true; + } + result2.unsavedDependencies = result2.unsavedDependencies ?? []; + result2.unsavedDependencies.push(newEntry); + })); + return result2; + } + function getAllDirectDependencies(projectSnapshot) { + return { + ...projectSnapshot.dependencies, + ...projectSnapshot.devDependencies, + ...projectSnapshot.optionalDependencies }; } - module2.exports = baseUnary; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nodeUtil.js -var require_nodeUtil = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nodeUtil.js"(exports2, module2) { - var freeGlobal = require_freeGlobal(); - var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; - var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; - var moduleExports = freeModule && freeModule.exports === freeExports; - var freeProcess = moduleExports && freeGlobal.process; - var nodeUtil = function() { - try { - var types = freeModule && freeModule.require && freeModule.require("util").types; - if (types) { - return types; - } - return freeProcess && freeProcess.binding && freeProcess.binding("util"); - } catch (e) { - } - }(); - module2.exports = nodeUtil; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isTypedArray.js -var require_isTypedArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isTypedArray.js"(exports2, module2) { - var baseIsTypedArray = require_baseIsTypedArray(); - var baseUnary = require_baseUnary(); - var nodeUtil = require_nodeUtil(); - var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - module2.exports = isTypedArray; +// ../reviewing/dependencies-hierarchy/lib/index.js +var require_lib90 = __commonJS({ + "../reviewing/dependencies-hierarchy/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildDependenciesHierarchy = void 0; + var buildDependenciesHierarchy_1 = require_buildDependenciesHierarchy(); + Object.defineProperty(exports2, "buildDependenciesHierarchy", { enumerable: true, get: function() { + return buildDependenciesHierarchy_1.buildDependenciesHierarchy; + } }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayLikeKeys.js -var require_arrayLikeKeys = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayLikeKeys.js"(exports2, module2) { - var baseTimes = require_baseTimes(); - var isArguments = require_isArguments2(); - var isArray = require_isArray2(); - var isBuffer = require_isBuffer(); - var isIndex = require_isIndex(); - var isTypedArray = require_isTypedArray(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length; - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) { - result.push(key); - } - } - return result; +// ../reviewing/list/lib/createPackagesSearcher.js +var require_createPackagesSearcher = __commonJS({ + "../reviewing/list/lib/createPackagesSearcher.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackagesSearcher = void 0; + var matcher_1 = require_lib19(); + var npm_package_arg_1 = __importDefault4(require_npa()); + var semver_12 = __importDefault4(require_semver2()); + function createPackagesSearcher(queries) { + const searchers = queries.map(parseSearchQuery).map((packageSelector) => search.bind(null, packageSelector)); + return (pkg) => searchers.some((search2) => search2(pkg)); } - module2.exports = arrayLikeKeys; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isPrototype.js -var require_isPrototype = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isPrototype.js"(exports2, module2) { - var objectProto = Object.prototype; - function isPrototype(value) { - var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; - return value === proto; + exports2.createPackagesSearcher = createPackagesSearcher; + function search(packageSelector, pkg) { + if (!packageSelector.matchName(pkg.name)) { + return false; + } + if (packageSelector.matchVersion == null) { + return true; + } + return !pkg.version.startsWith("link:") && packageSelector.matchVersion(pkg.version); } - module2.exports = isPrototype; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overArg.js -var require_overArg = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overArg.js"(exports2, module2) { - function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); + function parseSearchQuery(query) { + const parsed = (0, npm_package_arg_1.default)(query); + if (parsed.raw === parsed.name) { + return { matchName: (0, matcher_1.createMatcher)(parsed.name) }; + } + if (parsed.type !== "version" && parsed.type !== "range") { + throw new Error(`Invalid queryment - ${query}. List can search only by version or range`); + } + return { + matchName: (0, matcher_1.createMatcher)(parsed.name), + matchVersion: (version2) => semver_12.default.satisfies(version2, parsed.fetchSpec) }; } - module2.exports = overArg; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeys.js -var require_nativeKeys = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeys.js"(exports2, module2) { - var overArg = require_overArg(); - var nativeKeys = overArg(Object.keys, Object); - module2.exports = nativeKeys; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sortBy.js +var require_sortBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sortBy.js"(exports2, module2) { + var _curry2 = require_curry2(); + var sortBy = /* @__PURE__ */ _curry2(function sortBy2(fn2, list) { + return Array.prototype.slice.call(list, 0).sort(function(a, b) { + var aa = fn2(a); + var bb = fn2(b); + return aa < bb ? -1 : aa > bb ? 1 : 0; + }); + }); + module2.exports = sortBy; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeys.js -var require_baseKeys = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeys.js"(exports2, module2) { - var isPrototype = require_isPrototype(); - var nativeKeys = require_nativeKeys(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != "constructor") { - result.push(key); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/paths.js +var require_paths = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/paths.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isInteger = require_isInteger(); + var nth = require_nth(); + var paths = /* @__PURE__ */ _curry2(function paths2(pathsArray, obj) { + return pathsArray.map(function(paths3) { + var val = obj; + var idx = 0; + var p; + while (idx < paths3.length) { + if (val == null) { + return; + } + p = paths3[idx]; + val = _isInteger(p) ? nth(p, val) : val[p]; + idx += 1; } - } - return result; - } - module2.exports = baseKeys; + return val; + }); + }); + module2.exports = paths; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLike.js -var require_isArrayLike3 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLike.js"(exports2, module2) { - var isFunction = require_isFunction2(); - var isLength = require_isLength(); - function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); - } - module2.exports = isArrayLike; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/path.js +var require_path5 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/path.js"(exports2, module2) { + var _curry2 = require_curry2(); + var paths = require_paths(); + var path2 = /* @__PURE__ */ _curry2(function path3(pathAr, obj) { + return paths([pathAr], obj)[0]; + }); + module2.exports = path2; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keys.js -var require_keys2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keys.js"(exports2, module2) { - var arrayLikeKeys = require_arrayLikeKeys(); - var baseKeys = require_baseKeys(); - var isArrayLike = require_isArrayLike3(); - function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); +// ../reviewing/list/lib/readPkg.js +var require_readPkg = __commonJS({ + "../reviewing/list/lib/readPkg.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readPkg = void 0; + var read_package_json_1 = require_lib41(); + var p_limit_12 = __importDefault4(require_p_limit()); + var limitPkgReads = (0, p_limit_12.default)(4); + async function readPkg(pkgPath) { + return limitPkgReads(async () => (0, read_package_json_1.readPackageJson)(pkgPath)); } - module2.exports = keys; + exports2.readPkg = readPkg; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseForOwn.js -var require_baseForOwn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseForOwn.js"(exports2, module2) { - var baseFor = require_baseFor(); - var keys = require_keys2(); - function baseForOwn(object, iteratee) { - return object && baseFor(object, iteratee, keys); +// ../reviewing/list/lib/getPkgInfo.js +var require_getPkgInfo2 = __commonJS({ + "../reviewing/list/lib/getPkgInfo.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPkgInfo = void 0; + var path_1 = __importDefault4(require("path")); + var readPkg_1 = require_readPkg(); + async function getPkgInfo(pkg) { + let manifest; + try { + manifest = await (0, readPkg_1.readPkg)(path_1.default.join(pkg.path, "package.json")); + } catch (err) { + manifest = { + description: "[Could not find additional info about this dependency]" + }; + } + return { + alias: pkg.alias, + from: pkg.name, + version: pkg.version, + resolved: pkg.resolved, + description: manifest.description, + license: manifest.license, + author: manifest.author, + homepage: manifest.homepage, + repository: (manifest.repository && (typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url)) ?? void 0, + path: pkg.path + }; } - module2.exports = baseForOwn; + exports2.getPkgInfo = getPkgInfo; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js -var require_listCacheClear = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js"(exports2, module2) { - function listCacheClear() { - this.__data__ = []; - this.size = 0; +// ../reviewing/list/lib/renderJson.js +var require_renderJson = __commonJS({ + "../reviewing/list/lib/renderJson.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toJsonResult = exports2.renderJson = void 0; + var types_1 = require_lib25(); + var sortBy_1 = __importDefault4(require_sortBy()); + var path_1 = __importDefault4(require_path5()); + var getPkgInfo_1 = require_getPkgInfo2(); + var sortPackages = (0, sortBy_1.default)((0, path_1.default)(["pkg", "alias"])); + async function renderJson(pkgs, opts) { + const jsonArr = await Promise.all(pkgs.map(async (pkg) => { + const jsonObj = { + name: pkg.name, + version: pkg.version, + path: pkg.path, + private: !!pkg.private + }; + for (const dependenciesField of [...types_1.DEPENDENCIES_FIELDS.sort(), "unsavedDependencies"]) { + if (pkg[dependenciesField]?.length) { + jsonObj[dependenciesField] = await toJsonResult(pkg[dependenciesField], { long: opts.long }); + } + } + return jsonObj; + })); + return JSON.stringify(jsonArr, null, 2); } - module2.exports = listCacheClear; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js -var require_eq2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js"(exports2, module2) { - function eq(value, other) { - return value === other || value !== value && other !== other; + exports2.renderJson = renderJson; + async function toJsonResult(entryNodes, opts) { + const dependencies = {}; + await Promise.all(sortPackages(entryNodes).map(async (node) => { + const subDependencies = await toJsonResult(node.dependencies ?? [], opts); + const dep = opts.long ? await (0, getPkgInfo_1.getPkgInfo)(node) : { + alias: node.alias, + from: node.name, + version: node.version, + resolved: node.resolved, + path: node.path + }; + if (Object.keys(subDependencies).length > 0) { + dep.dependencies = subDependencies; + } + if (!dep.resolved) { + delete dep.resolved; + } + delete dep.alias; + dependencies[node.alias] = dep; + })); + return dependencies; } - module2.exports = eq; + exports2.toJsonResult = toJsonResult; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js -var require_assocIndexOf = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js"(exports2, module2) { - var eq = require_eq2(); - function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; +// ../reviewing/list/lib/renderParseable.js +var require_renderParseable = __commonJS({ + "../reviewing/list/lib/renderParseable.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.renderParseable = void 0; + var sortBy_1 = __importDefault4(require_sortBy()); + var prop_1 = __importDefault4(require_prop()); + var sortPackages = (0, sortBy_1.default)((0, prop_1.default)("name")); + async function renderParseable(pkgs, opts) { + return pkgs.map((pkg) => renderParseableForPackage(pkg, opts)).filter((p) => p.length !== 0).join("\n"); + } + exports2.renderParseable = renderParseable; + function renderParseableForPackage(pkg, opts) { + const pkgs = sortPackages(flatten([ + ...pkg.optionalDependencies ?? [], + ...pkg.dependencies ?? [], + ...pkg.devDependencies ?? [], + ...pkg.unsavedDependencies ?? [] + ])); + if (!opts.alwaysPrintRootPackage && pkgs.length === 0) + return ""; + if (opts.long) { + let firstLine = pkg.path; + if (pkg.name) { + firstLine += `:${pkg.name}`; + if (pkg.version) { + firstLine += `@${pkg.version}`; + } + if (pkg.private) { + firstLine += ":PRIVATE"; + } } + return [ + firstLine, + ...pkgs.map((pkg2) => `${pkg2.path}:${pkg2.name}@${pkg2.version}`) + ].join("\n"); } - return -1; + return [ + pkg.path, + ...pkgs.map((pkg2) => pkg2.path) + ].join("\n"); } - module2.exports = assocIndexOf; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js -var require_listCacheDelete = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js"(exports2, module2) { - var assocIndexOf = require_assocIndexOf(); - var arrayProto = Array.prototype; - var splice = arrayProto.splice; - function listCacheDelete(key) { - var data = this.__data__, index = assocIndexOf(data, key); - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); + function flatten(nodes) { + let packages = []; + for (const node of nodes) { + packages.push(node); + if (node.dependencies?.length) { + packages = packages.concat(flatten(node.dependencies)); + } } - --this.size; - return true; + return packages; } - module2.exports = listCacheDelete; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js -var require_listCacheGet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js"(exports2, module2) { - var assocIndexOf = require_assocIndexOf(); - function listCacheGet(key) { - var data = this.__data__, index = assocIndexOf(data, key); - return index < 0 ? void 0 : data[index][1]; - } - module2.exports = listCacheGet; - } -}); +// ../reviewing/list/lib/renderTree.js +var require_renderTree = __commonJS({ + "../reviewing/list/lib/renderTree.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toArchyTree = exports2.renderTree = void 0; + var path_1 = __importDefault4(require("path")); + var types_1 = require_lib25(); + var archy_1 = __importDefault4(require_archy()); + var chalk_1 = __importDefault4(require_source()); + var cli_columns_1 = __importDefault4(require_cli_columns()); + var sortBy_1 = __importDefault4(require_sortBy()); + var path_2 = __importDefault4(require_path5()); + var getPkgInfo_1 = require_getPkgInfo2(); + var sortPackages = (0, sortBy_1.default)((0, path_2.default)(["name"])); + var DEV_DEP_ONLY_CLR = chalk_1.default.yellow; + var PROD_DEP_CLR = (s) => s; + var OPTIONAL_DEP_CLR = chalk_1.default.blue; + var NOT_SAVED_DEP_CLR = chalk_1.default.red; + var LEGEND = `Legend: ${PROD_DEP_CLR("production dependency")}, ${OPTIONAL_DEP_CLR("optional only")}, ${DEV_DEP_ONLY_CLR("dev only")} -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js -var require_listCacheHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js"(exports2, module2) { - var assocIndexOf = require_assocIndexOf(); - function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; +`; + async function renderTree(packages, opts) { + const output = (await Promise.all(packages.map(async (pkg) => renderTreeForPackage(pkg, opts)))).filter(Boolean).join("\n\n"); + return `${opts.depth > -1 && output ? LEGEND : ""}${output}`; } - module2.exports = listCacheHas; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js -var require_listCacheSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js"(exports2, module2) { - var assocIndexOf = require_assocIndexOf(); - function listCacheSet(key, value) { - var data = this.__data__, index = assocIndexOf(data, key); - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; + exports2.renderTree = renderTree; + async function renderTreeForPackage(pkg, opts) { + if (!opts.alwaysPrintRootPackage && !pkg.dependencies?.length && !pkg.devDependencies?.length && !pkg.optionalDependencies?.length && (!opts.showExtraneous || !pkg.unsavedDependencies?.length)) + return ""; + let label = ""; + if (pkg.name) { + label += pkg.name; + if (pkg.version) { + label += `@${pkg.version}`; + } + label += " "; } - return this; - } - module2.exports = listCacheSet; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js -var require_ListCache = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js"(exports2, module2) { - var listCacheClear = require_listCacheClear(); - var listCacheDelete = require_listCacheDelete(); - var listCacheGet = require_listCacheGet(); - var listCacheHas = require_listCacheHas(); - var listCacheSet = require_listCacheSet(); - function ListCache(entries) { - var index = -1, length = entries == null ? 0 : entries.length; - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); + label += pkg.path; + if (pkg.private) { + label += " (PRIVATE)"; + } + let output = `${chalk_1.default.bold.underline(label)} +`; + const useColumns = opts.depth === 0 && !opts.long && !opts.search; + const dependenciesFields = [ + ...types_1.DEPENDENCIES_FIELDS.sort() + ]; + if (opts.showExtraneous) { + dependenciesFields.push("unsavedDependencies"); + } + for (const dependenciesField of dependenciesFields) { + if (pkg[dependenciesField]?.length) { + const depsLabel = chalk_1.default.cyanBright(dependenciesField !== "unsavedDependencies" ? `${dependenciesField}:` : "not saved (you should add these dependencies to package.json if you need them):"); + output += ` +${depsLabel} +`; + const gPkgColor = dependenciesField === "unsavedDependencies" ? () => NOT_SAVED_DEP_CLR : getPkgColor; + if (useColumns && pkg[dependenciesField].length > 10) { + output += (0, cli_columns_1.default)(pkg[dependenciesField].map(printLabel.bind(printLabel, gPkgColor))) + "\n"; + continue; + } + const data = await toArchyTree(gPkgColor, pkg[dependenciesField], { + long: opts.long, + modules: path_1.default.join(pkg.path, "node_modules") + }); + for (const d of data) { + output += (0, archy_1.default)(d); + } + } } + return output.replace(/\n$/, ""); } - ListCache.prototype.clear = listCacheClear; - ListCache.prototype["delete"] = listCacheDelete; - ListCache.prototype.get = listCacheGet; - ListCache.prototype.has = listCacheHas; - ListCache.prototype.set = listCacheSet; - module2.exports = ListCache; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackClear.js -var require_stackClear = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackClear.js"(exports2, module2) { - var ListCache = require_ListCache(); - function stackClear() { - this.__data__ = new ListCache(); - this.size = 0; + async function toArchyTree(getPkgColor2, entryNodes, opts) { + return Promise.all(sortPackages(entryNodes).map(async (node) => { + const nodes = await toArchyTree(getPkgColor2, node.dependencies ?? [], opts); + if (opts.long) { + const pkg = await (0, getPkgInfo_1.getPkgInfo)(node); + const labelLines = [ + printLabel(getPkgColor2, node), + pkg.description + ]; + if (pkg.repository) { + labelLines.push(pkg.repository); + } + if (pkg.homepage) { + labelLines.push(pkg.homepage); + } + if (pkg.path) { + labelLines.push(pkg.path); + } + return { + label: labelLines.join("\n"), + nodes + }; + } + return { + label: printLabel(getPkgColor2, node), + nodes + }; + })); } - module2.exports = stackClear; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackDelete.js -var require_stackDelete = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackDelete.js"(exports2, module2) { - function stackDelete(key) { - var data = this.__data__, result = data["delete"](key); - this.size = data.size; - return result; + exports2.toArchyTree = toArchyTree; + function printLabel(getPkgColor2, node) { + const color = getPkgColor2(node); + let txt = `${color(node.name)} ${chalk_1.default.gray(node.version)}`; + if (node.isPeer) { + txt += " peer"; + } + if (node.isSkipped) { + txt += " skipped"; + } + return node.searched ? chalk_1.default.bold(txt) : txt; } - module2.exports = stackDelete; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackGet.js -var require_stackGet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackGet.js"(exports2, module2) { - function stackGet(key) { - return this.__data__.get(key); + function getPkgColor(node) { + if (node.dev === true) + return DEV_DEP_ONLY_CLR; + if (node.optional) + return OPTIONAL_DEP_CLR; + return PROD_DEP_CLR; } - module2.exports = stackGet; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackHas.js -var require_stackHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackHas.js"(exports2, module2) { - function stackHas(key) { - return this.__data__.has(key); +// ../reviewing/list/lib/index.js +var require_lib91 = __commonJS({ + "../reviewing/list/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.list = exports2.listForPackages = exports2.searchForPackages = exports2.flattenSearchedPackages = void 0; + var path_1 = __importDefault4(require("path")); + var read_project_manifest_1 = require_lib16(); + var reviewing_dependencies_hierarchy_1 = require_lib90(); + var createPackagesSearcher_1 = require_createPackagesSearcher(); + var renderJson_1 = require_renderJson(); + var renderParseable_1 = require_renderParseable(); + var renderTree_1 = require_renderTree(); + var DEFAULTS = { + alwaysPrintRootPackage: true, + depth: 0, + long: false, + registries: void 0, + reportAs: "tree", + showExtraneous: true + }; + function flattenSearchedPackages(pkgs, opts) { + const flattedPkgs = []; + for (const pkg of pkgs) { + _walker([ + ...pkg.optionalDependencies ?? [], + ...pkg.dependencies ?? [], + ...pkg.devDependencies ?? [], + ...pkg.unsavedDependencies ?? [] + ], path_1.default.relative(opts.lockfileDir, pkg.path) || "."); + } + return flattedPkgs; + function _walker(packages, depPath) { + for (const pkg of packages) { + const nextDepPath = `${depPath} > ${pkg.name}@${pkg.version}`; + if (pkg.dependencies?.length) { + _walker(pkg.dependencies, nextDepPath); + } else { + flattedPkgs.push({ + depPath: nextDepPath, + ...pkg + }); + } + } + } } - module2.exports = stackHas; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js -var require_Map = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js"(exports2, module2) { - var getNative = require_getNative(); - var root = require_root(); - var Map2 = getNative(root, "Map"); - module2.exports = Map2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js -var require_nativeCreate = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js"(exports2, module2) { - var getNative = require_getNative(); - var nativeCreate = getNative(Object, "create"); - module2.exports = nativeCreate; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js -var require_hashClear = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js"(exports2, module2) { - var nativeCreate = require_nativeCreate(); - function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; + exports2.flattenSearchedPackages = flattenSearchedPackages; + async function searchForPackages(packages, projectPaths, opts) { + const search = (0, createPackagesSearcher_1.createPackagesSearcher)(packages); + return Promise.all(Object.entries(await (0, reviewing_dependencies_hierarchy_1.buildDependenciesHierarchy)(projectPaths, { + depth: opts.depth, + include: opts.include, + lockfileDir: opts.lockfileDir, + onlyProjects: opts.onlyProjects, + registries: opts.registries, + search, + modulesDir: opts.modulesDir + })).map(async ([projectPath, buildDependenciesHierarchy]) => { + const entryPkg = await (0, read_project_manifest_1.readProjectManifestOnly)(projectPath); + return { + name: entryPkg.name, + version: entryPkg.version, + path: projectPath, + ...buildDependenciesHierarchy + }; + })); } - module2.exports = hashClear; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js -var require_hashDelete = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js"(exports2, module2) { - function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; + exports2.searchForPackages = searchForPackages; + async function listForPackages(packages, projectPaths, maybeOpts) { + const opts = { ...DEFAULTS, ...maybeOpts }; + const pkgs = await searchForPackages(packages, projectPaths, opts); + const print = getPrinter(opts.reportAs); + return print(pkgs, { + alwaysPrintRootPackage: opts.alwaysPrintRootPackage, + depth: opts.depth, + long: opts.long, + search: Boolean(packages.length), + showExtraneous: opts.showExtraneous + }); } - module2.exports = hashDelete; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js -var require_hashGet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js"(exports2, module2) { - var nativeCreate = require_nativeCreate(); - var HASH_UNDEFINED = "__lodash_hash_undefined__"; - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? void 0 : result; + exports2.listForPackages = listForPackages; + async function list(projectPaths, maybeOpts) { + const opts = { ...DEFAULTS, ...maybeOpts }; + const pkgs = await Promise.all(Object.entries(opts.depth === -1 ? projectPaths.reduce((acc, projectPath) => { + acc[projectPath] = {}; + return acc; + }, {}) : await (0, reviewing_dependencies_hierarchy_1.buildDependenciesHierarchy)(projectPaths, { + depth: opts.depth, + include: maybeOpts?.include, + lockfileDir: maybeOpts?.lockfileDir, + onlyProjects: maybeOpts?.onlyProjects, + registries: opts.registries, + modulesDir: opts.modulesDir + })).map(async ([projectPath, dependenciesHierarchy]) => { + const entryPkg = await (0, read_project_manifest_1.readProjectManifestOnly)(projectPath); + return { + name: entryPkg.name, + version: entryPkg.version, + private: entryPkg.private, + path: projectPath, + ...dependenciesHierarchy + }; + })); + const print = getPrinter(opts.reportAs); + return print(pkgs, { + alwaysPrintRootPackage: opts.alwaysPrintRootPackage, + depth: opts.depth, + long: opts.long, + search: false, + showExtraneous: opts.showExtraneous + }); + } + exports2.list = list; + function getPrinter(reportAs) { + switch (reportAs) { + case "parseable": + return renderParseable_1.renderParseable; + case "json": + return renderJson_1.renderJson; + case "tree": + return renderTree_1.renderTree; } - return hasOwnProperty.call(data, key) ? data[key] : void 0; } - module2.exports = hashGet; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js -var require_hashHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js"(exports2, module2) { - var nativeCreate = require_nativeCreate(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function hashHas(key) { - var data = this.__data__; - return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); - } - module2.exports = hashHas; +// ../lockfile/audit/lib/types.js +var require_types4 = __commonJS({ + "../lockfile/audit/lib/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js -var require_hashSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js"(exports2, module2) { - var nativeCreate = require_nativeCreate(); - var HASH_UNDEFINED = "__lodash_hash_undefined__"; - function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; - return this; +// ../lockfile/audit/lib/index.js +var require_lib92 = __commonJS({ + "../lockfile/audit/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AuditEndpointNotExistsError = exports2.audit = void 0; + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var fetch_1 = require_lib37(); + var logger_1 = require_lib6(); + var lockfileToAuditTree_1 = require_lockfileToAuditTree(); + var list_1 = require_lib91(); + __exportStar4(require_types4(), exports2); + async function audit(lockfile, getAuthHeader, opts) { + const auditTree = await (0, lockfileToAuditTree_1.lockfileToAuditTree)(lockfile, { include: opts.include, lockfileDir: opts.lockfileDir }); + const registry = opts.registry.endsWith("/") ? opts.registry : `${opts.registry}/`; + const auditUrl = `${registry}-/npm/v1/security/audits`; + const authHeaderValue = getAuthHeader(registry); + const res = await (0, fetch_1.fetchWithAgent)(auditUrl, { + agentOptions: opts.agentOptions ?? {}, + body: JSON.stringify(auditTree), + headers: { + "Content-Type": "application/json", + ...getAuthHeaders(authHeaderValue) + }, + method: "post", + retry: opts.retry, + timeout: opts.timeout + }); + if (res.status === 404) { + throw new AuditEndpointNotExistsError(auditUrl); + } + if (res.status !== 200) { + throw new error_1.PnpmError("AUDIT_BAD_RESPONSE", `The audit endpoint (at ${auditUrl}) responded with ${res.status}: ${await res.text()}`); + } + const auditReport = await res.json(); + try { + return await extendWithDependencyPaths(auditReport, { + lockfile, + lockfileDir: opts.lockfileDir, + include: opts.include + }); + } catch (err) { + (0, logger_1.globalWarn)(`Failed to extend audit report with dependency paths: ${err.message}`); + return auditReport; + } } - module2.exports = hashSet; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js -var require_Hash = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js"(exports2, module2) { - var hashClear = require_hashClear(); - var hashDelete = require_hashDelete(); - var hashGet = require_hashGet(); - var hashHas = require_hashHas(); - var hashSet = require_hashSet(); - function Hash(entries) { - var index = -1, length = entries == null ? 0 : entries.length; - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); + exports2.audit = audit; + function getAuthHeaders(authHeaderValue) { + const headers = {}; + if (authHeaderValue) { + headers["authorization"] = authHeaderValue; } + return headers; } - Hash.prototype.clear = hashClear; - Hash.prototype["delete"] = hashDelete; - Hash.prototype.get = hashGet; - Hash.prototype.has = hashHas; - Hash.prototype.set = hashSet; - module2.exports = Hash; + async function extendWithDependencyPaths(auditReport, opts) { + const { advisories } = auditReport; + if (!Object.keys(advisories).length) + return auditReport; + const projectDirs = Object.keys(opts.lockfile.importers).map((importerId) => path_1.default.join(opts.lockfileDir, importerId)); + const searchOpts = { + lockfileDir: opts.lockfileDir, + depth: Infinity, + include: opts.include + }; + const _searchPackagePaths = searchPackagePaths.bind(null, searchOpts, projectDirs); + for (const { findings, module_name: moduleName } of Object.values(advisories)) { + for (const finding of findings) { + finding.paths = await _searchPackagePaths(`${moduleName}@${finding.version}`); + } + } + return auditReport; + } + async function searchPackagePaths(searchOpts, projectDirs, pkg) { + const pkgs = await (0, list_1.searchForPackages)([pkg], projectDirs, searchOpts); + return (0, list_1.flattenSearchedPackages)(pkgs, { lockfileDir: searchOpts.lockfileDir }).map(({ depPath }) => depPath); + } + var AuditEndpointNotExistsError = class extends error_1.PnpmError { + constructor(endpoint) { + const message2 = `The audit endpoint (at ${endpoint}) is doesn't exist.`; + super("AUDIT_ENDPOINT_NOT_EXISTS", message2, { + hint: "This issue is probably because you are using a private npm registry and that endpoint doesn't have an implementation of audit." + }); + } + }; + exports2.AuditEndpointNotExistsError = AuditEndpointNotExistsError; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js -var require_mapCacheClear = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js"(exports2, module2) { - var Hash = require_Hash(); - var ListCache = require_ListCache(); - var Map2 = require_Map(); - function mapCacheClear() { - this.size = 0; - this.__data__ = { - "hash": new Hash(), - "map": new (Map2 || ListCache)(), - "string": new Hash() +// ../node_modules/.pnpm/grapheme-splitter@1.0.4/node_modules/grapheme-splitter/index.js +var require_grapheme_splitter = __commonJS({ + "../node_modules/.pnpm/grapheme-splitter@1.0.4/node_modules/grapheme-splitter/index.js"(exports2, module2) { + function GraphemeSplitter() { + var CR = 0, LF = 1, Control = 2, Extend = 3, Regional_Indicator = 4, SpacingMark = 5, L = 6, V = 7, T = 8, LV = 9, LVT = 10, Other = 11, Prepend = 12, E_Base = 13, E_Modifier = 14, ZWJ = 15, Glue_After_Zwj = 16, E_Base_GAZ = 17; + var NotBreak = 0, BreakStart = 1, Break = 2, BreakLastRegional = 3, BreakPenultimateRegional = 4; + function isSurrogate(str, pos) { + return 55296 <= str.charCodeAt(pos) && str.charCodeAt(pos) <= 56319 && 56320 <= str.charCodeAt(pos + 1) && str.charCodeAt(pos + 1) <= 57343; + } + function codePointAt(str, idx) { + if (idx === void 0) { + idx = 0; + } + var code = str.charCodeAt(idx); + if (55296 <= code && code <= 56319 && idx < str.length - 1) { + var hi = code; + var low = str.charCodeAt(idx + 1); + if (56320 <= low && low <= 57343) { + return (hi - 55296) * 1024 + (low - 56320) + 65536; + } + return hi; + } + if (56320 <= code && code <= 57343 && idx >= 1) { + var hi = str.charCodeAt(idx - 1); + var low = code; + if (55296 <= hi && hi <= 56319) { + return (hi - 55296) * 1024 + (low - 56320) + 65536; + } + return low; + } + return code; + } + function shouldBreak(start, mid, end) { + var all = [start].concat(mid).concat([end]); + var previous = all[all.length - 2]; + var next = end; + var eModifierIndex = all.lastIndexOf(E_Modifier); + if (eModifierIndex > 1 && all.slice(1, eModifierIndex).every(function(c) { + return c == Extend; + }) && [Extend, E_Base, E_Base_GAZ].indexOf(start) == -1) { + return Break; + } + var rIIndex = all.lastIndexOf(Regional_Indicator); + if (rIIndex > 0 && all.slice(1, rIIndex).every(function(c) { + return c == Regional_Indicator; + }) && [Prepend, Regional_Indicator].indexOf(previous) == -1) { + if (all.filter(function(c) { + return c == Regional_Indicator; + }).length % 2 == 1) { + return BreakLastRegional; + } else { + return BreakPenultimateRegional; + } + } + if (previous == CR && next == LF) { + return NotBreak; + } else if (previous == Control || previous == CR || previous == LF) { + if (next == E_Modifier && mid.every(function(c) { + return c == Extend; + })) { + return Break; + } else { + return BreakStart; + } + } else if (next == Control || next == CR || next == LF) { + return BreakStart; + } else if (previous == L && (next == L || next == V || next == LV || next == LVT)) { + return NotBreak; + } else if ((previous == LV || previous == V) && (next == V || next == T)) { + return NotBreak; + } else if ((previous == LVT || previous == T) && next == T) { + return NotBreak; + } else if (next == Extend || next == ZWJ) { + return NotBreak; + } else if (next == SpacingMark) { + return NotBreak; + } else if (previous == Prepend) { + return NotBreak; + } + var previousNonExtendIndex = all.indexOf(Extend) != -1 ? all.lastIndexOf(Extend) - 1 : all.length - 2; + if ([E_Base, E_Base_GAZ].indexOf(all[previousNonExtendIndex]) != -1 && all.slice(previousNonExtendIndex + 1, -1).every(function(c) { + return c == Extend; + }) && next == E_Modifier) { + return NotBreak; + } + if (previous == ZWJ && [Glue_After_Zwj, E_Base_GAZ].indexOf(next) != -1) { + return NotBreak; + } + if (mid.indexOf(Regional_Indicator) != -1) { + return Break; + } + if (previous == Regional_Indicator && next == Regional_Indicator) { + return NotBreak; + } + return BreakStart; + } + this.nextBreak = function(string, index) { + if (index === void 0) { + index = 0; + } + if (index < 0) { + return 0; + } + if (index >= string.length - 1) { + return string.length; + } + var prev = getGraphemeBreakProperty(codePointAt(string, index)); + var mid = []; + for (var i = index + 1; i < string.length; i++) { + if (isSurrogate(string, i - 1)) { + continue; + } + var next = getGraphemeBreakProperty(codePointAt(string, i)); + if (shouldBreak(prev, mid, next)) { + return i; + } + mid.push(next); + } + return string.length; + }; + this.splitGraphemes = function(str) { + var res = []; + var index = 0; + var brk; + while ((brk = this.nextBreak(str, index)) < str.length) { + res.push(str.slice(index, brk)); + index = brk; + } + if (index < str.length) { + res.push(str.slice(index)); + } + return res; + }; + this.iterateGraphemes = function(str) { + var index = 0; + var res = { + next: function() { + var value; + var brk; + if ((brk = this.nextBreak(str, index)) < str.length) { + value = str.slice(index, brk); + index = brk; + return { value, done: false }; + } + if (index < str.length) { + value = str.slice(index); + index = str.length; + return { value, done: false }; + } + return { value: void 0, done: true }; + }.bind(this) + }; + if (typeof Symbol !== "undefined" && Symbol.iterator) { + res[Symbol.iterator] = function() { + return res; + }; + } + return res; }; + this.countGraphemes = function(str) { + var count = 0; + var index = 0; + var brk; + while ((brk = this.nextBreak(str, index)) < str.length) { + index = brk; + count++; + } + if (index < str.length) { + count++; + } + return count; + }; + function getGraphemeBreakProperty(code) { + if (1536 <= code && code <= 1541 || // Cf [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE + 1757 == code || // Cf ARABIC END OF AYAH + 1807 == code || // Cf SYRIAC ABBREVIATION MARK + 2274 == code || // Cf ARABIC DISPUTED END OF AYAH + 3406 == code || // Lo MALAYALAM LETTER DOT REPH + 69821 == code || // Cf KAITHI NUMBER SIGN + 70082 <= code && code <= 70083 || // Lo [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA + 72250 == code || // Lo ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA + 72326 <= code && code <= 72329 || // Lo [4] SOYOMBO CLUSTER-INITIAL LETTER RA..SOYOMBO CLUSTER-INITIAL LETTER SA + 73030 == code) { + return Prepend; + } + if (13 == code) { + return CR; + } + if (10 == code) { + return LF; + } + if (0 <= code && code <= 9 || // Cc [10] .. + 11 <= code && code <= 12 || // Cc [2] .. + 14 <= code && code <= 31 || // Cc [18] .. + 127 <= code && code <= 159 || // Cc [33] .. + 173 == code || // Cf SOFT HYPHEN + 1564 == code || // Cf ARABIC LETTER MARK + 6158 == code || // Cf MONGOLIAN VOWEL SEPARATOR + 8203 == code || // Cf ZERO WIDTH SPACE + 8206 <= code && code <= 8207 || // Cf [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK + 8232 == code || // Zl LINE SEPARATOR + 8233 == code || // Zp PARAGRAPH SEPARATOR + 8234 <= code && code <= 8238 || // Cf [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE + 8288 <= code && code <= 8292 || // Cf [5] WORD JOINER..INVISIBLE PLUS + 8293 == code || // Cn + 8294 <= code && code <= 8303 || // Cf [10] LEFT-TO-RIGHT ISOLATE..NOMINAL DIGIT SHAPES + 55296 <= code && code <= 57343 || // Cs [2048] .. + 65279 == code || // Cf ZERO WIDTH NO-BREAK SPACE + 65520 <= code && code <= 65528 || // Cn [9] .. + 65529 <= code && code <= 65531 || // Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR + 113824 <= code && code <= 113827 || // Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP + 119155 <= code && code <= 119162 || // Cf [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE + 917504 == code || // Cn + 917505 == code || // Cf LANGUAGE TAG + 917506 <= code && code <= 917535 || // Cn [30] .. + 917632 <= code && code <= 917759 || // Cn [128] .. + 918e3 <= code && code <= 921599) { + return Control; + } + if (768 <= code && code <= 879 || // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X + 1155 <= code && code <= 1159 || // Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE + 1160 <= code && code <= 1161 || // Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN + 1425 <= code && code <= 1469 || // Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG + 1471 == code || // Mn HEBREW POINT RAFE + 1473 <= code && code <= 1474 || // Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT + 1476 <= code && code <= 1477 || // Mn [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT + 1479 == code || // Mn HEBREW POINT QAMATS QATAN + 1552 <= code && code <= 1562 || // Mn [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA + 1611 <= code && code <= 1631 || // Mn [21] ARABIC FATHATAN..ARABIC WAVY HAMZA BELOW + 1648 == code || // Mn ARABIC LETTER SUPERSCRIPT ALEF + 1750 <= code && code <= 1756 || // Mn [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN + 1759 <= code && code <= 1764 || // Mn [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA + 1767 <= code && code <= 1768 || // Mn [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON + 1770 <= code && code <= 1773 || // Mn [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM + 1809 == code || // Mn SYRIAC LETTER SUPERSCRIPT ALAPH + 1840 <= code && code <= 1866 || // Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH + 1958 <= code && code <= 1968 || // Mn [11] THAANA ABAFILI..THAANA SUKUN + 2027 <= code && code <= 2035 || // Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE + 2070 <= code && code <= 2073 || // Mn [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH + 2075 <= code && code <= 2083 || // Mn [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A + 2085 <= code && code <= 2087 || // Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U + 2089 <= code && code <= 2093 || // Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA + 2137 <= code && code <= 2139 || // Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK + 2260 <= code && code <= 2273 || // Mn [14] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH SIGN SAFHA + 2275 <= code && code <= 2306 || // Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA + 2362 == code || // Mn DEVANAGARI VOWEL SIGN OE + 2364 == code || // Mn DEVANAGARI SIGN NUKTA + 2369 <= code && code <= 2376 || // Mn [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI + 2381 == code || // Mn DEVANAGARI SIGN VIRAMA + 2385 <= code && code <= 2391 || // Mn [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE + 2402 <= code && code <= 2403 || // Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL + 2433 == code || // Mn BENGALI SIGN CANDRABINDU + 2492 == code || // Mn BENGALI SIGN NUKTA + 2494 == code || // Mc BENGALI VOWEL SIGN AA + 2497 <= code && code <= 2500 || // Mn [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR + 2509 == code || // Mn BENGALI SIGN VIRAMA + 2519 == code || // Mc BENGALI AU LENGTH MARK + 2530 <= code && code <= 2531 || // Mn [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL + 2561 <= code && code <= 2562 || // Mn [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI + 2620 == code || // Mn GURMUKHI SIGN NUKTA + 2625 <= code && code <= 2626 || // Mn [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU + 2631 <= code && code <= 2632 || // Mn [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI + 2635 <= code && code <= 2637 || // Mn [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA + 2641 == code || // Mn GURMUKHI SIGN UDAAT + 2672 <= code && code <= 2673 || // Mn [2] GURMUKHI TIPPI..GURMUKHI ADDAK + 2677 == code || // Mn GURMUKHI SIGN YAKASH + 2689 <= code && code <= 2690 || // Mn [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA + 2748 == code || // Mn GUJARATI SIGN NUKTA + 2753 <= code && code <= 2757 || // Mn [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E + 2759 <= code && code <= 2760 || // Mn [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI + 2765 == code || // Mn GUJARATI SIGN VIRAMA + 2786 <= code && code <= 2787 || // Mn [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL + 2810 <= code && code <= 2815 || // Mn [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE + 2817 == code || // Mn ORIYA SIGN CANDRABINDU + 2876 == code || // Mn ORIYA SIGN NUKTA + 2878 == code || // Mc ORIYA VOWEL SIGN AA + 2879 == code || // Mn ORIYA VOWEL SIGN I + 2881 <= code && code <= 2884 || // Mn [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR + 2893 == code || // Mn ORIYA SIGN VIRAMA + 2902 == code || // Mn ORIYA AI LENGTH MARK + 2903 == code || // Mc ORIYA AU LENGTH MARK + 2914 <= code && code <= 2915 || // Mn [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL + 2946 == code || // Mn TAMIL SIGN ANUSVARA + 3006 == code || // Mc TAMIL VOWEL SIGN AA + 3008 == code || // Mn TAMIL VOWEL SIGN II + 3021 == code || // Mn TAMIL SIGN VIRAMA + 3031 == code || // Mc TAMIL AU LENGTH MARK + 3072 == code || // Mn TELUGU SIGN COMBINING CANDRABINDU ABOVE + 3134 <= code && code <= 3136 || // Mn [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II + 3142 <= code && code <= 3144 || // Mn [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI + 3146 <= code && code <= 3149 || // Mn [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA + 3157 <= code && code <= 3158 || // Mn [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK + 3170 <= code && code <= 3171 || // Mn [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL + 3201 == code || // Mn KANNADA SIGN CANDRABINDU + 3260 == code || // Mn KANNADA SIGN NUKTA + 3263 == code || // Mn KANNADA VOWEL SIGN I + 3266 == code || // Mc KANNADA VOWEL SIGN UU + 3270 == code || // Mn KANNADA VOWEL SIGN E + 3276 <= code && code <= 3277 || // Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA + 3285 <= code && code <= 3286 || // Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK + 3298 <= code && code <= 3299 || // Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL + 3328 <= code && code <= 3329 || // Mn [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU + 3387 <= code && code <= 3388 || // Mn [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA + 3390 == code || // Mc MALAYALAM VOWEL SIGN AA + 3393 <= code && code <= 3396 || // Mn [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR + 3405 == code || // Mn MALAYALAM SIGN VIRAMA + 3415 == code || // Mc MALAYALAM AU LENGTH MARK + 3426 <= code && code <= 3427 || // Mn [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL + 3530 == code || // Mn SINHALA SIGN AL-LAKUNA + 3535 == code || // Mc SINHALA VOWEL SIGN AELA-PILLA + 3538 <= code && code <= 3540 || // Mn [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA + 3542 == code || // Mn SINHALA VOWEL SIGN DIGA PAA-PILLA + 3551 == code || // Mc SINHALA VOWEL SIGN GAYANUKITTA + 3633 == code || // Mn THAI CHARACTER MAI HAN-AKAT + 3636 <= code && code <= 3642 || // Mn [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU + 3655 <= code && code <= 3662 || // Mn [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN + 3761 == code || // Mn LAO VOWEL SIGN MAI KAN + 3764 <= code && code <= 3769 || // Mn [6] LAO VOWEL SIGN I..LAO VOWEL SIGN UU + 3771 <= code && code <= 3772 || // Mn [2] LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN LO + 3784 <= code && code <= 3789 || // Mn [6] LAO TONE MAI EK..LAO NIGGAHITA + 3864 <= code && code <= 3865 || // Mn [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS + 3893 == code || // Mn TIBETAN MARK NGAS BZUNG NYI ZLA + 3895 == code || // Mn TIBETAN MARK NGAS BZUNG SGOR RTAGS + 3897 == code || // Mn TIBETAN MARK TSA -PHRU + 3953 <= code && code <= 3966 || // Mn [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO + 3968 <= code && code <= 3972 || // Mn [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA + 3974 <= code && code <= 3975 || // Mn [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS + 3981 <= code && code <= 3991 || // Mn [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA + 3993 <= code && code <= 4028 || // Mn [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA + 4038 == code || // Mn TIBETAN SYMBOL PADMA GDAN + 4141 <= code && code <= 4144 || // Mn [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU + 4146 <= code && code <= 4151 || // Mn [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW + 4153 <= code && code <= 4154 || // Mn [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT + 4157 <= code && code <= 4158 || // Mn [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA + 4184 <= code && code <= 4185 || // Mn [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL + 4190 <= code && code <= 4192 || // Mn [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA + 4209 <= code && code <= 4212 || // Mn [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE + 4226 == code || // Mn MYANMAR CONSONANT SIGN SHAN MEDIAL WA + 4229 <= code && code <= 4230 || // Mn [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y + 4237 == code || // Mn MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE + 4253 == code || // Mn MYANMAR VOWEL SIGN AITON AI + 4957 <= code && code <= 4959 || // Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK + 5906 <= code && code <= 5908 || // Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA + 5938 <= code && code <= 5940 || // Mn [3] HANUNOO VOWEL SIGN I..HANUNOO SIGN PAMUDPOD + 5970 <= code && code <= 5971 || // Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U + 6002 <= code && code <= 6003 || // Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U + 6068 <= code && code <= 6069 || // Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA + 6071 <= code && code <= 6077 || // Mn [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA + 6086 == code || // Mn KHMER SIGN NIKAHIT + 6089 <= code && code <= 6099 || // Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT + 6109 == code || // Mn KHMER SIGN ATTHACAN + 6155 <= code && code <= 6157 || // Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE + 6277 <= code && code <= 6278 || // Mn [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA + 6313 == code || // Mn MONGOLIAN LETTER ALI GALI DAGALGA + 6432 <= code && code <= 6434 || // Mn [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U + 6439 <= code && code <= 6440 || // Mn [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O + 6450 == code || // Mn LIMBU SMALL LETTER ANUSVARA + 6457 <= code && code <= 6459 || // Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I + 6679 <= code && code <= 6680 || // Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U + 6683 == code || // Mn BUGINESE VOWEL SIGN AE + 6742 == code || // Mn TAI THAM CONSONANT SIGN MEDIAL LA + 6744 <= code && code <= 6750 || // Mn [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA + 6752 == code || // Mn TAI THAM SIGN SAKOT + 6754 == code || // Mn TAI THAM VOWEL SIGN MAI SAT + 6757 <= code && code <= 6764 || // Mn [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW + 6771 <= code && code <= 6780 || // Mn [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN + 6783 == code || // Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT + 6832 <= code && code <= 6845 || // Mn [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW + 6846 == code || // Me COMBINING PARENTHESES OVERLAY + 6912 <= code && code <= 6915 || // Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG + 6964 == code || // Mn BALINESE SIGN REREKAN + 6966 <= code && code <= 6970 || // Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA + 6972 == code || // Mn BALINESE VOWEL SIGN LA LENGA + 6978 == code || // Mn BALINESE VOWEL SIGN PEPET + 7019 <= code && code <= 7027 || // Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG + 7040 <= code && code <= 7041 || // Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR + 7074 <= code && code <= 7077 || // Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU + 7080 <= code && code <= 7081 || // Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG + 7083 <= code && code <= 7085 || // Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA + 7142 == code || // Mn BATAK SIGN TOMPI + 7144 <= code && code <= 7145 || // Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE + 7149 == code || // Mn BATAK VOWEL SIGN KARO O + 7151 <= code && code <= 7153 || // Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H + 7212 <= code && code <= 7219 || // Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T + 7222 <= code && code <= 7223 || // Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA + 7376 <= code && code <= 7378 || // Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA + 7380 <= code && code <= 7392 || // Mn [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA + 7394 <= code && code <= 7400 || // Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL + 7405 == code || // Mn VEDIC SIGN TIRYAK + 7412 == code || // Mn VEDIC TONE CANDRA ABOVE + 7416 <= code && code <= 7417 || // Mn [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE + 7616 <= code && code <= 7673 || // Mn [58] COMBINING DOTTED GRAVE ACCENT..COMBINING WIDE INVERTED BRIDGE BELOW + 7675 <= code && code <= 7679 || // Mn [5] COMBINING DELETION MARK..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW + 8204 == code || // Cf ZERO WIDTH NON-JOINER + 8400 <= code && code <= 8412 || // Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE + 8413 <= code && code <= 8416 || // Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH + 8417 == code || // Mn COMBINING LEFT RIGHT ARROW ABOVE + 8418 <= code && code <= 8420 || // Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE + 8421 <= code && code <= 8432 || // Mn [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE + 11503 <= code && code <= 11505 || // Mn [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS + 11647 == code || // Mn TIFINAGH CONSONANT JOINER + 11744 <= code && code <= 11775 || // Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS + 12330 <= code && code <= 12333 || // Mn [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK + 12334 <= code && code <= 12335 || // Mc [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK + 12441 <= code && code <= 12442 || // Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK + 42607 == code || // Mn COMBINING CYRILLIC VZMET + 42608 <= code && code <= 42610 || // Me [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN + 42612 <= code && code <= 42621 || // Mn [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK + 42654 <= code && code <= 42655 || // Mn [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E + 42736 <= code && code <= 42737 || // Mn [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS + 43010 == code || // Mn SYLOTI NAGRI SIGN DVISVARA + 43014 == code || // Mn SYLOTI NAGRI SIGN HASANTA + 43019 == code || // Mn SYLOTI NAGRI SIGN ANUSVARA + 43045 <= code && code <= 43046 || // Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E + 43204 <= code && code <= 43205 || // Mn [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU + 43232 <= code && code <= 43249 || // Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA + 43302 <= code && code <= 43309 || // Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU + 43335 <= code && code <= 43345 || // Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R + 43392 <= code && code <= 43394 || // Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR + 43443 == code || // Mn JAVANESE SIGN CECAK TELU + 43446 <= code && code <= 43449 || // Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT + 43452 == code || // Mn JAVANESE VOWEL SIGN PEPET + 43493 == code || // Mn MYANMAR SIGN SHAN SAW + 43561 <= code && code <= 43566 || // Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE + 43569 <= code && code <= 43570 || // Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE + 43573 <= code && code <= 43574 || // Mn [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA + 43587 == code || // Mn CHAM CONSONANT SIGN FINAL NG + 43596 == code || // Mn CHAM CONSONANT SIGN FINAL M + 43644 == code || // Mn MYANMAR SIGN TAI LAING TONE-2 + 43696 == code || // Mn TAI VIET MAI KANG + 43698 <= code && code <= 43700 || // Mn [3] TAI VIET VOWEL I..TAI VIET VOWEL U + 43703 <= code && code <= 43704 || // Mn [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA + 43710 <= code && code <= 43711 || // Mn [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK + 43713 == code || // Mn TAI VIET TONE MAI THO + 43756 <= code && code <= 43757 || // Mn [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI + 43766 == code || // Mn MEETEI MAYEK VIRAMA + 44005 == code || // Mn MEETEI MAYEK VOWEL SIGN ANAP + 44008 == code || // Mn MEETEI MAYEK VOWEL SIGN UNAP + 44013 == code || // Mn MEETEI MAYEK APUN IYEK + 64286 == code || // Mn HEBREW POINT JUDEO-SPANISH VARIKA + 65024 <= code && code <= 65039 || // Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16 + 65056 <= code && code <= 65071 || // Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF + 65438 <= code && code <= 65439 || // Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK + 66045 == code || // Mn PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE + 66272 == code || // Mn COPTIC EPACT THOUSANDS MARK + 66422 <= code && code <= 66426 || // Mn [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII + 68097 <= code && code <= 68099 || // Mn [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R + 68101 <= code && code <= 68102 || // Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O + 68108 <= code && code <= 68111 || // Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA + 68152 <= code && code <= 68154 || // Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW + 68159 == code || // Mn KHAROSHTHI VIRAMA + 68325 <= code && code <= 68326 || // Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW + 69633 == code || // Mn BRAHMI SIGN ANUSVARA + 69688 <= code && code <= 69702 || // Mn [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA + 69759 <= code && code <= 69761 || // Mn [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA + 69811 <= code && code <= 69814 || // Mn [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI + 69817 <= code && code <= 69818 || // Mn [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA + 69888 <= code && code <= 69890 || // Mn [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA + 69927 <= code && code <= 69931 || // Mn [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU + 69933 <= code && code <= 69940 || // Mn [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA + 70003 == code || // Mn MAHAJANI SIGN NUKTA + 70016 <= code && code <= 70017 || // Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA + 70070 <= code && code <= 70078 || // Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O + 70090 <= code && code <= 70092 || // Mn [3] SHARADA SIGN NUKTA..SHARADA EXTRA SHORT VOWEL MARK + 70191 <= code && code <= 70193 || // Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI + 70196 == code || // Mn KHOJKI SIGN ANUSVARA + 70198 <= code && code <= 70199 || // Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA + 70206 == code || // Mn KHOJKI SIGN SUKUN + 70367 == code || // Mn KHUDAWADI SIGN ANUSVARA + 70371 <= code && code <= 70378 || // Mn [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA + 70400 <= code && code <= 70401 || // Mn [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU + 70460 == code || // Mn GRANTHA SIGN NUKTA + 70462 == code || // Mc GRANTHA VOWEL SIGN AA + 70464 == code || // Mn GRANTHA VOWEL SIGN II + 70487 == code || // Mc GRANTHA AU LENGTH MARK + 70502 <= code && code <= 70508 || // Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX + 70512 <= code && code <= 70516 || // Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA + 70712 <= code && code <= 70719 || // Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI + 70722 <= code && code <= 70724 || // Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA + 70726 == code || // Mn NEWA SIGN NUKTA + 70832 == code || // Mc TIRHUTA VOWEL SIGN AA + 70835 <= code && code <= 70840 || // Mn [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL + 70842 == code || // Mn TIRHUTA VOWEL SIGN SHORT E + 70845 == code || // Mc TIRHUTA VOWEL SIGN SHORT O + 70847 <= code && code <= 70848 || // Mn [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA + 70850 <= code && code <= 70851 || // Mn [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA + 71087 == code || // Mc SIDDHAM VOWEL SIGN AA + 71090 <= code && code <= 71093 || // Mn [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR + 71100 <= code && code <= 71101 || // Mn [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA + 71103 <= code && code <= 71104 || // Mn [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA + 71132 <= code && code <= 71133 || // Mn [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU + 71219 <= code && code <= 71226 || // Mn [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI + 71229 == code || // Mn MODI SIGN ANUSVARA + 71231 <= code && code <= 71232 || // Mn [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA + 71339 == code || // Mn TAKRI SIGN ANUSVARA + 71341 == code || // Mn TAKRI VOWEL SIGN AA + 71344 <= code && code <= 71349 || // Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU + 71351 == code || // Mn TAKRI SIGN NUKTA + 71453 <= code && code <= 71455 || // Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA + 71458 <= code && code <= 71461 || // Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU + 71463 <= code && code <= 71467 || // Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER + 72193 <= code && code <= 72198 || // Mn [6] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL SIGN O + 72201 <= code && code <= 72202 || // Mn [2] ZANABAZAR SQUARE VOWEL SIGN REVERSED I..ZANABAZAR SQUARE VOWEL LENGTH MARK + 72243 <= code && code <= 72248 || // Mn [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA + 72251 <= code && code <= 72254 || // Mn [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA + 72263 == code || // Mn ZANABAZAR SQUARE SUBJOINER + 72273 <= code && code <= 72278 || // Mn [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE + 72281 <= code && code <= 72283 || // Mn [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK + 72330 <= code && code <= 72342 || // Mn [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA + 72344 <= code && code <= 72345 || // Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER + 72752 <= code && code <= 72758 || // Mn [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L + 72760 <= code && code <= 72765 || // Mn [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA + 72767 == code || // Mn BHAIKSUKI SIGN VIRAMA + 72850 <= code && code <= 72871 || // Mn [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA + 72874 <= code && code <= 72880 || // Mn [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA + 72882 <= code && code <= 72883 || // Mn [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E + 72885 <= code && code <= 72886 || // Mn [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU + 73009 <= code && code <= 73014 || // Mn [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R + 73018 == code || // Mn MASARAM GONDI VOWEL SIGN E + 73020 <= code && code <= 73021 || // Mn [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O + 73023 <= code && code <= 73029 || // Mn [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA + 73031 == code || // Mn MASARAM GONDI RA-KARA + 92912 <= code && code <= 92916 || // Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE + 92976 <= code && code <= 92982 || // Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM + 94095 <= code && code <= 94098 || // Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW + 113821 <= code && code <= 113822 || // Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK + 119141 == code || // Mc MUSICAL SYMBOL COMBINING STEM + 119143 <= code && code <= 119145 || // Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3 + 119150 <= code && code <= 119154 || // Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5 + 119163 <= code && code <= 119170 || // Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE + 119173 <= code && code <= 119179 || // Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE + 119210 <= code && code <= 119213 || // Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO + 119362 <= code && code <= 119364 || // Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME + 121344 <= code && code <= 121398 || // Mn [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN + 121403 <= code && code <= 121452 || // Mn [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT + 121461 == code || // Mn SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS + 121476 == code || // Mn SIGNWRITING LOCATION HEAD NECK + 121499 <= code && code <= 121503 || // Mn [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6 + 121505 <= code && code <= 121519 || // Mn [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16 + 122880 <= code && code <= 122886 || // Mn [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE + 122888 <= code && code <= 122904 || // Mn [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU + 122907 <= code && code <= 122913 || // Mn [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI + 122915 <= code && code <= 122916 || // Mn [2] COMBINING GLAGOLITIC LETTER YU..COMBINING GLAGOLITIC LETTER SMALL YUS + 122918 <= code && code <= 122922 || // Mn [5] COMBINING GLAGOLITIC LETTER YO..COMBINING GLAGOLITIC LETTER FITA + 125136 <= code && code <= 125142 || // Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS + 125252 <= code && code <= 125258 || // Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA + 917536 <= code && code <= 917631 || // Cf [96] TAG SPACE..CANCEL TAG + 917760 <= code && code <= 917999) { + return Extend; + } + if (127462 <= code && code <= 127487) { + return Regional_Indicator; + } + if (2307 == code || // Mc DEVANAGARI SIGN VISARGA + 2363 == code || // Mc DEVANAGARI VOWEL SIGN OOE + 2366 <= code && code <= 2368 || // Mc [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II + 2377 <= code && code <= 2380 || // Mc [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU + 2382 <= code && code <= 2383 || // Mc [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW + 2434 <= code && code <= 2435 || // Mc [2] BENGALI SIGN ANUSVARA..BENGALI SIGN VISARGA + 2495 <= code && code <= 2496 || // Mc [2] BENGALI VOWEL SIGN I..BENGALI VOWEL SIGN II + 2503 <= code && code <= 2504 || // Mc [2] BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI + 2507 <= code && code <= 2508 || // Mc [2] BENGALI VOWEL SIGN O..BENGALI VOWEL SIGN AU + 2563 == code || // Mc GURMUKHI SIGN VISARGA + 2622 <= code && code <= 2624 || // Mc [3] GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN II + 2691 == code || // Mc GUJARATI SIGN VISARGA + 2750 <= code && code <= 2752 || // Mc [3] GUJARATI VOWEL SIGN AA..GUJARATI VOWEL SIGN II + 2761 == code || // Mc GUJARATI VOWEL SIGN CANDRA O + 2763 <= code && code <= 2764 || // Mc [2] GUJARATI VOWEL SIGN O..GUJARATI VOWEL SIGN AU + 2818 <= code && code <= 2819 || // Mc [2] ORIYA SIGN ANUSVARA..ORIYA SIGN VISARGA + 2880 == code || // Mc ORIYA VOWEL SIGN II + 2887 <= code && code <= 2888 || // Mc [2] ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI + 2891 <= code && code <= 2892 || // Mc [2] ORIYA VOWEL SIGN O..ORIYA VOWEL SIGN AU + 3007 == code || // Mc TAMIL VOWEL SIGN I + 3009 <= code && code <= 3010 || // Mc [2] TAMIL VOWEL SIGN U..TAMIL VOWEL SIGN UU + 3014 <= code && code <= 3016 || // Mc [3] TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI + 3018 <= code && code <= 3020 || // Mc [3] TAMIL VOWEL SIGN O..TAMIL VOWEL SIGN AU + 3073 <= code && code <= 3075 || // Mc [3] TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA + 3137 <= code && code <= 3140 || // Mc [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR + 3202 <= code && code <= 3203 || // Mc [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA + 3262 == code || // Mc KANNADA VOWEL SIGN AA + 3264 <= code && code <= 3265 || // Mc [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U + 3267 <= code && code <= 3268 || // Mc [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR + 3271 <= code && code <= 3272 || // Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI + 3274 <= code && code <= 3275 || // Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO + 3330 <= code && code <= 3331 || // Mc [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA + 3391 <= code && code <= 3392 || // Mc [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II + 3398 <= code && code <= 3400 || // Mc [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI + 3402 <= code && code <= 3404 || // Mc [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU + 3458 <= code && code <= 3459 || // Mc [2] SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA + 3536 <= code && code <= 3537 || // Mc [2] SINHALA VOWEL SIGN KETTI AEDA-PILLA..SINHALA VOWEL SIGN DIGA AEDA-PILLA + 3544 <= code && code <= 3550 || // Mc [7] SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA + 3570 <= code && code <= 3571 || // Mc [2] SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA + 3635 == code || // Lo THAI CHARACTER SARA AM + 3763 == code || // Lo LAO VOWEL SIGN AM + 3902 <= code && code <= 3903 || // Mc [2] TIBETAN SIGN YAR TSHES..TIBETAN SIGN MAR TSHES + 3967 == code || // Mc TIBETAN SIGN RNAM BCAD + 4145 == code || // Mc MYANMAR VOWEL SIGN E + 4155 <= code && code <= 4156 || // Mc [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA + 4182 <= code && code <= 4183 || // Mc [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR + 4228 == code || // Mc MYANMAR VOWEL SIGN SHAN E + 6070 == code || // Mc KHMER VOWEL SIGN AA + 6078 <= code && code <= 6085 || // Mc [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU + 6087 <= code && code <= 6088 || // Mc [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU + 6435 <= code && code <= 6438 || // Mc [4] LIMBU VOWEL SIGN EE..LIMBU VOWEL SIGN AU + 6441 <= code && code <= 6443 || // Mc [3] LIMBU SUBJOINED LETTER YA..LIMBU SUBJOINED LETTER WA + 6448 <= code && code <= 6449 || // Mc [2] LIMBU SMALL LETTER KA..LIMBU SMALL LETTER NGA + 6451 <= code && code <= 6456 || // Mc [6] LIMBU SMALL LETTER TA..LIMBU SMALL LETTER LA + 6681 <= code && code <= 6682 || // Mc [2] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN O + 6741 == code || // Mc TAI THAM CONSONANT SIGN MEDIAL RA + 6743 == code || // Mc TAI THAM CONSONANT SIGN LA TANG LAI + 6765 <= code && code <= 6770 || // Mc [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI + 6916 == code || // Mc BALINESE SIGN BISAH + 6965 == code || // Mc BALINESE VOWEL SIGN TEDUNG + 6971 == code || // Mc BALINESE VOWEL SIGN RA REPA TEDUNG + 6973 <= code && code <= 6977 || // Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG + 6979 <= code && code <= 6980 || // Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG + 7042 == code || // Mc SUNDANESE SIGN PANGWISAD + 7073 == code || // Mc SUNDANESE CONSONANT SIGN PAMINGKAL + 7078 <= code && code <= 7079 || // Mc [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG + 7082 == code || // Mc SUNDANESE SIGN PAMAAEH + 7143 == code || // Mc BATAK VOWEL SIGN E + 7146 <= code && code <= 7148 || // Mc [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O + 7150 == code || // Mc BATAK VOWEL SIGN U + 7154 <= code && code <= 7155 || // Mc [2] BATAK PANGOLAT..BATAK PANONGONAN + 7204 <= code && code <= 7211 || // Mc [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU + 7220 <= code && code <= 7221 || // Mc [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG + 7393 == code || // Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA + 7410 <= code && code <= 7411 || // Mc [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA + 7415 == code || // Mc VEDIC SIGN ATIKRAMA + 43043 <= code && code <= 43044 || // Mc [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I + 43047 == code || // Mc SYLOTI NAGRI VOWEL SIGN OO + 43136 <= code && code <= 43137 || // Mc [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA + 43188 <= code && code <= 43203 || // Mc [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU + 43346 <= code && code <= 43347 || // Mc [2] REJANG CONSONANT SIGN H..REJANG VIRAMA + 43395 == code || // Mc JAVANESE SIGN WIGNYAN + 43444 <= code && code <= 43445 || // Mc [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG + 43450 <= code && code <= 43451 || // Mc [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE + 43453 <= code && code <= 43456 || // Mc [4] JAVANESE CONSONANT SIGN KERET..JAVANESE PANGKON + 43567 <= code && code <= 43568 || // Mc [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI + 43571 <= code && code <= 43572 || // Mc [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA + 43597 == code || // Mc CHAM CONSONANT SIGN FINAL H + 43755 == code || // Mc MEETEI MAYEK VOWEL SIGN II + 43758 <= code && code <= 43759 || // Mc [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU + 43765 == code || // Mc MEETEI MAYEK VOWEL SIGN VISARGA + 44003 <= code && code <= 44004 || // Mc [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP + 44006 <= code && code <= 44007 || // Mc [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP + 44009 <= code && code <= 44010 || // Mc [2] MEETEI MAYEK VOWEL SIGN CHEINAP..MEETEI MAYEK VOWEL SIGN NUNG + 44012 == code || // Mc MEETEI MAYEK LUM IYEK + 69632 == code || // Mc BRAHMI SIGN CANDRABINDU + 69634 == code || // Mc BRAHMI SIGN VISARGA + 69762 == code || // Mc KAITHI SIGN VISARGA + 69808 <= code && code <= 69810 || // Mc [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II + 69815 <= code && code <= 69816 || // Mc [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU + 69932 == code || // Mc CHAKMA VOWEL SIGN E + 70018 == code || // Mc SHARADA SIGN VISARGA + 70067 <= code && code <= 70069 || // Mc [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II + 70079 <= code && code <= 70080 || // Mc [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA + 70188 <= code && code <= 70190 || // Mc [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II + 70194 <= code && code <= 70195 || // Mc [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU + 70197 == code || // Mc KHOJKI SIGN VIRAMA + 70368 <= code && code <= 70370 || // Mc [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II + 70402 <= code && code <= 70403 || // Mc [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA + 70463 == code || // Mc GRANTHA VOWEL SIGN I + 70465 <= code && code <= 70468 || // Mc [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR + 70471 <= code && code <= 70472 || // Mc [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI + 70475 <= code && code <= 70477 || // Mc [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA + 70498 <= code && code <= 70499 || // Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL + 70709 <= code && code <= 70711 || // Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II + 70720 <= code && code <= 70721 || // Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU + 70725 == code || // Mc NEWA SIGN VISARGA + 70833 <= code && code <= 70834 || // Mc [2] TIRHUTA VOWEL SIGN I..TIRHUTA VOWEL SIGN II + 70841 == code || // Mc TIRHUTA VOWEL SIGN E + 70843 <= code && code <= 70844 || // Mc [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O + 70846 == code || // Mc TIRHUTA VOWEL SIGN AU + 70849 == code || // Mc TIRHUTA SIGN VISARGA + 71088 <= code && code <= 71089 || // Mc [2] SIDDHAM VOWEL SIGN I..SIDDHAM VOWEL SIGN II + 71096 <= code && code <= 71099 || // Mc [4] SIDDHAM VOWEL SIGN E..SIDDHAM VOWEL SIGN AU + 71102 == code || // Mc SIDDHAM SIGN VISARGA + 71216 <= code && code <= 71218 || // Mc [3] MODI VOWEL SIGN AA..MODI VOWEL SIGN II + 71227 <= code && code <= 71228 || // Mc [2] MODI VOWEL SIGN O..MODI VOWEL SIGN AU + 71230 == code || // Mc MODI SIGN VISARGA + 71340 == code || // Mc TAKRI SIGN VISARGA + 71342 <= code && code <= 71343 || // Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II + 71350 == code || // Mc TAKRI SIGN VIRAMA + 71456 <= code && code <= 71457 || // Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA + 71462 == code || // Mc AHOM VOWEL SIGN E + 72199 <= code && code <= 72200 || // Mc [2] ZANABAZAR SQUARE VOWEL SIGN AI..ZANABAZAR SQUARE VOWEL SIGN AU + 72249 == code || // Mc ZANABAZAR SQUARE SIGN VISARGA + 72279 <= code && code <= 72280 || // Mc [2] SOYOMBO VOWEL SIGN AI..SOYOMBO VOWEL SIGN AU + 72343 == code || // Mc SOYOMBO SIGN VISARGA + 72751 == code || // Mc BHAIKSUKI VOWEL SIGN AA + 72766 == code || // Mc BHAIKSUKI SIGN VISARGA + 72873 == code || // Mc MARCHEN SUBJOINED LETTER YA + 72881 == code || // Mc MARCHEN VOWEL SIGN I + 72884 == code || // Mc MARCHEN VOWEL SIGN O + 94033 <= code && code <= 94078 || // Mc [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG + 119142 == code || // Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM + 119149 == code) { + return SpacingMark; + } + if (4352 <= code && code <= 4447 || // Lo [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER + 43360 <= code && code <= 43388) { + return L; + } + if (4448 <= code && code <= 4519 || // Lo [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE + 55216 <= code && code <= 55238) { + return V; + } + if (4520 <= code && code <= 4607 || // Lo [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN + 55243 <= code && code <= 55291) { + return T; + } + if (44032 == code || // Lo HANGUL SYLLABLE GA + 44060 == code || // Lo HANGUL SYLLABLE GAE + 44088 == code || // Lo HANGUL SYLLABLE GYA + 44116 == code || // Lo HANGUL SYLLABLE GYAE + 44144 == code || // Lo HANGUL SYLLABLE GEO + 44172 == code || // Lo HANGUL SYLLABLE GE + 44200 == code || // Lo HANGUL SYLLABLE GYEO + 44228 == code || // Lo HANGUL SYLLABLE GYE + 44256 == code || // Lo HANGUL SYLLABLE GO + 44284 == code || // Lo HANGUL SYLLABLE GWA + 44312 == code || // Lo HANGUL SYLLABLE GWAE + 44340 == code || // Lo HANGUL SYLLABLE GOE + 44368 == code || // Lo HANGUL SYLLABLE GYO + 44396 == code || // Lo HANGUL SYLLABLE GU + 44424 == code || // Lo HANGUL SYLLABLE GWEO + 44452 == code || // Lo HANGUL SYLLABLE GWE + 44480 == code || // Lo HANGUL SYLLABLE GWI + 44508 == code || // Lo HANGUL SYLLABLE GYU + 44536 == code || // Lo HANGUL SYLLABLE GEU + 44564 == code || // Lo HANGUL SYLLABLE GYI + 44592 == code || // Lo HANGUL SYLLABLE GI + 44620 == code || // Lo HANGUL SYLLABLE GGA + 44648 == code || // Lo HANGUL SYLLABLE GGAE + 44676 == code || // Lo HANGUL SYLLABLE GGYA + 44704 == code || // Lo HANGUL SYLLABLE GGYAE + 44732 == code || // Lo HANGUL SYLLABLE GGEO + 44760 == code || // Lo HANGUL SYLLABLE GGE + 44788 == code || // Lo HANGUL SYLLABLE GGYEO + 44816 == code || // Lo HANGUL SYLLABLE GGYE + 44844 == code || // Lo HANGUL SYLLABLE GGO + 44872 == code || // Lo HANGUL SYLLABLE GGWA + 44900 == code || // Lo HANGUL SYLLABLE GGWAE + 44928 == code || // Lo HANGUL SYLLABLE GGOE + 44956 == code || // Lo HANGUL SYLLABLE GGYO + 44984 == code || // Lo HANGUL SYLLABLE GGU + 45012 == code || // Lo HANGUL SYLLABLE GGWEO + 45040 == code || // Lo HANGUL SYLLABLE GGWE + 45068 == code || // Lo HANGUL SYLLABLE GGWI + 45096 == code || // Lo HANGUL SYLLABLE GGYU + 45124 == code || // Lo HANGUL SYLLABLE GGEU + 45152 == code || // Lo HANGUL SYLLABLE GGYI + 45180 == code || // Lo HANGUL SYLLABLE GGI + 45208 == code || // Lo HANGUL SYLLABLE NA + 45236 == code || // Lo HANGUL SYLLABLE NAE + 45264 == code || // Lo HANGUL SYLLABLE NYA + 45292 == code || // Lo HANGUL SYLLABLE NYAE + 45320 == code || // Lo HANGUL SYLLABLE NEO + 45348 == code || // Lo HANGUL SYLLABLE NE + 45376 == code || // Lo HANGUL SYLLABLE NYEO + 45404 == code || // Lo HANGUL SYLLABLE NYE + 45432 == code || // Lo HANGUL SYLLABLE NO + 45460 == code || // Lo HANGUL SYLLABLE NWA + 45488 == code || // Lo HANGUL SYLLABLE NWAE + 45516 == code || // Lo HANGUL SYLLABLE NOE + 45544 == code || // Lo HANGUL SYLLABLE NYO + 45572 == code || // Lo HANGUL SYLLABLE NU + 45600 == code || // Lo HANGUL SYLLABLE NWEO + 45628 == code || // Lo HANGUL SYLLABLE NWE + 45656 == code || // Lo HANGUL SYLLABLE NWI + 45684 == code || // Lo HANGUL SYLLABLE NYU + 45712 == code || // Lo HANGUL SYLLABLE NEU + 45740 == code || // Lo HANGUL SYLLABLE NYI + 45768 == code || // Lo HANGUL SYLLABLE NI + 45796 == code || // Lo HANGUL SYLLABLE DA + 45824 == code || // Lo HANGUL SYLLABLE DAE + 45852 == code || // Lo HANGUL SYLLABLE DYA + 45880 == code || // Lo HANGUL SYLLABLE DYAE + 45908 == code || // Lo HANGUL SYLLABLE DEO + 45936 == code || // Lo HANGUL SYLLABLE DE + 45964 == code || // Lo HANGUL SYLLABLE DYEO + 45992 == code || // Lo HANGUL SYLLABLE DYE + 46020 == code || // Lo HANGUL SYLLABLE DO + 46048 == code || // Lo HANGUL SYLLABLE DWA + 46076 == code || // Lo HANGUL SYLLABLE DWAE + 46104 == code || // Lo HANGUL SYLLABLE DOE + 46132 == code || // Lo HANGUL SYLLABLE DYO + 46160 == code || // Lo HANGUL SYLLABLE DU + 46188 == code || // Lo HANGUL SYLLABLE DWEO + 46216 == code || // Lo HANGUL SYLLABLE DWE + 46244 == code || // Lo HANGUL SYLLABLE DWI + 46272 == code || // Lo HANGUL SYLLABLE DYU + 46300 == code || // Lo HANGUL SYLLABLE DEU + 46328 == code || // Lo HANGUL SYLLABLE DYI + 46356 == code || // Lo HANGUL SYLLABLE DI + 46384 == code || // Lo HANGUL SYLLABLE DDA + 46412 == code || // Lo HANGUL SYLLABLE DDAE + 46440 == code || // Lo HANGUL SYLLABLE DDYA + 46468 == code || // Lo HANGUL SYLLABLE DDYAE + 46496 == code || // Lo HANGUL SYLLABLE DDEO + 46524 == code || // Lo HANGUL SYLLABLE DDE + 46552 == code || // Lo HANGUL SYLLABLE DDYEO + 46580 == code || // Lo HANGUL SYLLABLE DDYE + 46608 == code || // Lo HANGUL SYLLABLE DDO + 46636 == code || // Lo HANGUL SYLLABLE DDWA + 46664 == code || // Lo HANGUL SYLLABLE DDWAE + 46692 == code || // Lo HANGUL SYLLABLE DDOE + 46720 == code || // Lo HANGUL SYLLABLE DDYO + 46748 == code || // Lo HANGUL SYLLABLE DDU + 46776 == code || // Lo HANGUL SYLLABLE DDWEO + 46804 == code || // Lo HANGUL SYLLABLE DDWE + 46832 == code || // Lo HANGUL SYLLABLE DDWI + 46860 == code || // Lo HANGUL SYLLABLE DDYU + 46888 == code || // Lo HANGUL SYLLABLE DDEU + 46916 == code || // Lo HANGUL SYLLABLE DDYI + 46944 == code || // Lo HANGUL SYLLABLE DDI + 46972 == code || // Lo HANGUL SYLLABLE RA + 47e3 == code || // Lo HANGUL SYLLABLE RAE + 47028 == code || // Lo HANGUL SYLLABLE RYA + 47056 == code || // Lo HANGUL SYLLABLE RYAE + 47084 == code || // Lo HANGUL SYLLABLE REO + 47112 == code || // Lo HANGUL SYLLABLE RE + 47140 == code || // Lo HANGUL SYLLABLE RYEO + 47168 == code || // Lo HANGUL SYLLABLE RYE + 47196 == code || // Lo HANGUL SYLLABLE RO + 47224 == code || // Lo HANGUL SYLLABLE RWA + 47252 == code || // Lo HANGUL SYLLABLE RWAE + 47280 == code || // Lo HANGUL SYLLABLE ROE + 47308 == code || // Lo HANGUL SYLLABLE RYO + 47336 == code || // Lo HANGUL SYLLABLE RU + 47364 == code || // Lo HANGUL SYLLABLE RWEO + 47392 == code || // Lo HANGUL SYLLABLE RWE + 47420 == code || // Lo HANGUL SYLLABLE RWI + 47448 == code || // Lo HANGUL SYLLABLE RYU + 47476 == code || // Lo HANGUL SYLLABLE REU + 47504 == code || // Lo HANGUL SYLLABLE RYI + 47532 == code || // Lo HANGUL SYLLABLE RI + 47560 == code || // Lo HANGUL SYLLABLE MA + 47588 == code || // Lo HANGUL SYLLABLE MAE + 47616 == code || // Lo HANGUL SYLLABLE MYA + 47644 == code || // Lo HANGUL SYLLABLE MYAE + 47672 == code || // Lo HANGUL SYLLABLE MEO + 47700 == code || // Lo HANGUL SYLLABLE ME + 47728 == code || // Lo HANGUL SYLLABLE MYEO + 47756 == code || // Lo HANGUL SYLLABLE MYE + 47784 == code || // Lo HANGUL SYLLABLE MO + 47812 == code || // Lo HANGUL SYLLABLE MWA + 47840 == code || // Lo HANGUL SYLLABLE MWAE + 47868 == code || // Lo HANGUL SYLLABLE MOE + 47896 == code || // Lo HANGUL SYLLABLE MYO + 47924 == code || // Lo HANGUL SYLLABLE MU + 47952 == code || // Lo HANGUL SYLLABLE MWEO + 47980 == code || // Lo HANGUL SYLLABLE MWE + 48008 == code || // Lo HANGUL SYLLABLE MWI + 48036 == code || // Lo HANGUL SYLLABLE MYU + 48064 == code || // Lo HANGUL SYLLABLE MEU + 48092 == code || // Lo HANGUL SYLLABLE MYI + 48120 == code || // Lo HANGUL SYLLABLE MI + 48148 == code || // Lo HANGUL SYLLABLE BA + 48176 == code || // Lo HANGUL SYLLABLE BAE + 48204 == code || // Lo HANGUL SYLLABLE BYA + 48232 == code || // Lo HANGUL SYLLABLE BYAE + 48260 == code || // Lo HANGUL SYLLABLE BEO + 48288 == code || // Lo HANGUL SYLLABLE BE + 48316 == code || // Lo HANGUL SYLLABLE BYEO + 48344 == code || // Lo HANGUL SYLLABLE BYE + 48372 == code || // Lo HANGUL SYLLABLE BO + 48400 == code || // Lo HANGUL SYLLABLE BWA + 48428 == code || // Lo HANGUL SYLLABLE BWAE + 48456 == code || // Lo HANGUL SYLLABLE BOE + 48484 == code || // Lo HANGUL SYLLABLE BYO + 48512 == code || // Lo HANGUL SYLLABLE BU + 48540 == code || // Lo HANGUL SYLLABLE BWEO + 48568 == code || // Lo HANGUL SYLLABLE BWE + 48596 == code || // Lo HANGUL SYLLABLE BWI + 48624 == code || // Lo HANGUL SYLLABLE BYU + 48652 == code || // Lo HANGUL SYLLABLE BEU + 48680 == code || // Lo HANGUL SYLLABLE BYI + 48708 == code || // Lo HANGUL SYLLABLE BI + 48736 == code || // Lo HANGUL SYLLABLE BBA + 48764 == code || // Lo HANGUL SYLLABLE BBAE + 48792 == code || // Lo HANGUL SYLLABLE BBYA + 48820 == code || // Lo HANGUL SYLLABLE BBYAE + 48848 == code || // Lo HANGUL SYLLABLE BBEO + 48876 == code || // Lo HANGUL SYLLABLE BBE + 48904 == code || // Lo HANGUL SYLLABLE BBYEO + 48932 == code || // Lo HANGUL SYLLABLE BBYE + 48960 == code || // Lo HANGUL SYLLABLE BBO + 48988 == code || // Lo HANGUL SYLLABLE BBWA + 49016 == code || // Lo HANGUL SYLLABLE BBWAE + 49044 == code || // Lo HANGUL SYLLABLE BBOE + 49072 == code || // Lo HANGUL SYLLABLE BBYO + 49100 == code || // Lo HANGUL SYLLABLE BBU + 49128 == code || // Lo HANGUL SYLLABLE BBWEO + 49156 == code || // Lo HANGUL SYLLABLE BBWE + 49184 == code || // Lo HANGUL SYLLABLE BBWI + 49212 == code || // Lo HANGUL SYLLABLE BBYU + 49240 == code || // Lo HANGUL SYLLABLE BBEU + 49268 == code || // Lo HANGUL SYLLABLE BBYI + 49296 == code || // Lo HANGUL SYLLABLE BBI + 49324 == code || // Lo HANGUL SYLLABLE SA + 49352 == code || // Lo HANGUL SYLLABLE SAE + 49380 == code || // Lo HANGUL SYLLABLE SYA + 49408 == code || // Lo HANGUL SYLLABLE SYAE + 49436 == code || // Lo HANGUL SYLLABLE SEO + 49464 == code || // Lo HANGUL SYLLABLE SE + 49492 == code || // Lo HANGUL SYLLABLE SYEO + 49520 == code || // Lo HANGUL SYLLABLE SYE + 49548 == code || // Lo HANGUL SYLLABLE SO + 49576 == code || // Lo HANGUL SYLLABLE SWA + 49604 == code || // Lo HANGUL SYLLABLE SWAE + 49632 == code || // Lo HANGUL SYLLABLE SOE + 49660 == code || // Lo HANGUL SYLLABLE SYO + 49688 == code || // Lo HANGUL SYLLABLE SU + 49716 == code || // Lo HANGUL SYLLABLE SWEO + 49744 == code || // Lo HANGUL SYLLABLE SWE + 49772 == code || // Lo HANGUL SYLLABLE SWI + 49800 == code || // Lo HANGUL SYLLABLE SYU + 49828 == code || // Lo HANGUL SYLLABLE SEU + 49856 == code || // Lo HANGUL SYLLABLE SYI + 49884 == code || // Lo HANGUL SYLLABLE SI + 49912 == code || // Lo HANGUL SYLLABLE SSA + 49940 == code || // Lo HANGUL SYLLABLE SSAE + 49968 == code || // Lo HANGUL SYLLABLE SSYA + 49996 == code || // Lo HANGUL SYLLABLE SSYAE + 50024 == code || // Lo HANGUL SYLLABLE SSEO + 50052 == code || // Lo HANGUL SYLLABLE SSE + 50080 == code || // Lo HANGUL SYLLABLE SSYEO + 50108 == code || // Lo HANGUL SYLLABLE SSYE + 50136 == code || // Lo HANGUL SYLLABLE SSO + 50164 == code || // Lo HANGUL SYLLABLE SSWA + 50192 == code || // Lo HANGUL SYLLABLE SSWAE + 50220 == code || // Lo HANGUL SYLLABLE SSOE + 50248 == code || // Lo HANGUL SYLLABLE SSYO + 50276 == code || // Lo HANGUL SYLLABLE SSU + 50304 == code || // Lo HANGUL SYLLABLE SSWEO + 50332 == code || // Lo HANGUL SYLLABLE SSWE + 50360 == code || // Lo HANGUL SYLLABLE SSWI + 50388 == code || // Lo HANGUL SYLLABLE SSYU + 50416 == code || // Lo HANGUL SYLLABLE SSEU + 50444 == code || // Lo HANGUL SYLLABLE SSYI + 50472 == code || // Lo HANGUL SYLLABLE SSI + 50500 == code || // Lo HANGUL SYLLABLE A + 50528 == code || // Lo HANGUL SYLLABLE AE + 50556 == code || // Lo HANGUL SYLLABLE YA + 50584 == code || // Lo HANGUL SYLLABLE YAE + 50612 == code || // Lo HANGUL SYLLABLE EO + 50640 == code || // Lo HANGUL SYLLABLE E + 50668 == code || // Lo HANGUL SYLLABLE YEO + 50696 == code || // Lo HANGUL SYLLABLE YE + 50724 == code || // Lo HANGUL SYLLABLE O + 50752 == code || // Lo HANGUL SYLLABLE WA + 50780 == code || // Lo HANGUL SYLLABLE WAE + 50808 == code || // Lo HANGUL SYLLABLE OE + 50836 == code || // Lo HANGUL SYLLABLE YO + 50864 == code || // Lo HANGUL SYLLABLE U + 50892 == code || // Lo HANGUL SYLLABLE WEO + 50920 == code || // Lo HANGUL SYLLABLE WE + 50948 == code || // Lo HANGUL SYLLABLE WI + 50976 == code || // Lo HANGUL SYLLABLE YU + 51004 == code || // Lo HANGUL SYLLABLE EU + 51032 == code || // Lo HANGUL SYLLABLE YI + 51060 == code || // Lo HANGUL SYLLABLE I + 51088 == code || // Lo HANGUL SYLLABLE JA + 51116 == code || // Lo HANGUL SYLLABLE JAE + 51144 == code || // Lo HANGUL SYLLABLE JYA + 51172 == code || // Lo HANGUL SYLLABLE JYAE + 51200 == code || // Lo HANGUL SYLLABLE JEO + 51228 == code || // Lo HANGUL SYLLABLE JE + 51256 == code || // Lo HANGUL SYLLABLE JYEO + 51284 == code || // Lo HANGUL SYLLABLE JYE + 51312 == code || // Lo HANGUL SYLLABLE JO + 51340 == code || // Lo HANGUL SYLLABLE JWA + 51368 == code || // Lo HANGUL SYLLABLE JWAE + 51396 == code || // Lo HANGUL SYLLABLE JOE + 51424 == code || // Lo HANGUL SYLLABLE JYO + 51452 == code || // Lo HANGUL SYLLABLE JU + 51480 == code || // Lo HANGUL SYLLABLE JWEO + 51508 == code || // Lo HANGUL SYLLABLE JWE + 51536 == code || // Lo HANGUL SYLLABLE JWI + 51564 == code || // Lo HANGUL SYLLABLE JYU + 51592 == code || // Lo HANGUL SYLLABLE JEU + 51620 == code || // Lo HANGUL SYLLABLE JYI + 51648 == code || // Lo HANGUL SYLLABLE JI + 51676 == code || // Lo HANGUL SYLLABLE JJA + 51704 == code || // Lo HANGUL SYLLABLE JJAE + 51732 == code || // Lo HANGUL SYLLABLE JJYA + 51760 == code || // Lo HANGUL SYLLABLE JJYAE + 51788 == code || // Lo HANGUL SYLLABLE JJEO + 51816 == code || // Lo HANGUL SYLLABLE JJE + 51844 == code || // Lo HANGUL SYLLABLE JJYEO + 51872 == code || // Lo HANGUL SYLLABLE JJYE + 51900 == code || // Lo HANGUL SYLLABLE JJO + 51928 == code || // Lo HANGUL SYLLABLE JJWA + 51956 == code || // Lo HANGUL SYLLABLE JJWAE + 51984 == code || // Lo HANGUL SYLLABLE JJOE + 52012 == code || // Lo HANGUL SYLLABLE JJYO + 52040 == code || // Lo HANGUL SYLLABLE JJU + 52068 == code || // Lo HANGUL SYLLABLE JJWEO + 52096 == code || // Lo HANGUL SYLLABLE JJWE + 52124 == code || // Lo HANGUL SYLLABLE JJWI + 52152 == code || // Lo HANGUL SYLLABLE JJYU + 52180 == code || // Lo HANGUL SYLLABLE JJEU + 52208 == code || // Lo HANGUL SYLLABLE JJYI + 52236 == code || // Lo HANGUL SYLLABLE JJI + 52264 == code || // Lo HANGUL SYLLABLE CA + 52292 == code || // Lo HANGUL SYLLABLE CAE + 52320 == code || // Lo HANGUL SYLLABLE CYA + 52348 == code || // Lo HANGUL SYLLABLE CYAE + 52376 == code || // Lo HANGUL SYLLABLE CEO + 52404 == code || // Lo HANGUL SYLLABLE CE + 52432 == code || // Lo HANGUL SYLLABLE CYEO + 52460 == code || // Lo HANGUL SYLLABLE CYE + 52488 == code || // Lo HANGUL SYLLABLE CO + 52516 == code || // Lo HANGUL SYLLABLE CWA + 52544 == code || // Lo HANGUL SYLLABLE CWAE + 52572 == code || // Lo HANGUL SYLLABLE COE + 52600 == code || // Lo HANGUL SYLLABLE CYO + 52628 == code || // Lo HANGUL SYLLABLE CU + 52656 == code || // Lo HANGUL SYLLABLE CWEO + 52684 == code || // Lo HANGUL SYLLABLE CWE + 52712 == code || // Lo HANGUL SYLLABLE CWI + 52740 == code || // Lo HANGUL SYLLABLE CYU + 52768 == code || // Lo HANGUL SYLLABLE CEU + 52796 == code || // Lo HANGUL SYLLABLE CYI + 52824 == code || // Lo HANGUL SYLLABLE CI + 52852 == code || // Lo HANGUL SYLLABLE KA + 52880 == code || // Lo HANGUL SYLLABLE KAE + 52908 == code || // Lo HANGUL SYLLABLE KYA + 52936 == code || // Lo HANGUL SYLLABLE KYAE + 52964 == code || // Lo HANGUL SYLLABLE KEO + 52992 == code || // Lo HANGUL SYLLABLE KE + 53020 == code || // Lo HANGUL SYLLABLE KYEO + 53048 == code || // Lo HANGUL SYLLABLE KYE + 53076 == code || // Lo HANGUL SYLLABLE KO + 53104 == code || // Lo HANGUL SYLLABLE KWA + 53132 == code || // Lo HANGUL SYLLABLE KWAE + 53160 == code || // Lo HANGUL SYLLABLE KOE + 53188 == code || // Lo HANGUL SYLLABLE KYO + 53216 == code || // Lo HANGUL SYLLABLE KU + 53244 == code || // Lo HANGUL SYLLABLE KWEO + 53272 == code || // Lo HANGUL SYLLABLE KWE + 53300 == code || // Lo HANGUL SYLLABLE KWI + 53328 == code || // Lo HANGUL SYLLABLE KYU + 53356 == code || // Lo HANGUL SYLLABLE KEU + 53384 == code || // Lo HANGUL SYLLABLE KYI + 53412 == code || // Lo HANGUL SYLLABLE KI + 53440 == code || // Lo HANGUL SYLLABLE TA + 53468 == code || // Lo HANGUL SYLLABLE TAE + 53496 == code || // Lo HANGUL SYLLABLE TYA + 53524 == code || // Lo HANGUL SYLLABLE TYAE + 53552 == code || // Lo HANGUL SYLLABLE TEO + 53580 == code || // Lo HANGUL SYLLABLE TE + 53608 == code || // Lo HANGUL SYLLABLE TYEO + 53636 == code || // Lo HANGUL SYLLABLE TYE + 53664 == code || // Lo HANGUL SYLLABLE TO + 53692 == code || // Lo HANGUL SYLLABLE TWA + 53720 == code || // Lo HANGUL SYLLABLE TWAE + 53748 == code || // Lo HANGUL SYLLABLE TOE + 53776 == code || // Lo HANGUL SYLLABLE TYO + 53804 == code || // Lo HANGUL SYLLABLE TU + 53832 == code || // Lo HANGUL SYLLABLE TWEO + 53860 == code || // Lo HANGUL SYLLABLE TWE + 53888 == code || // Lo HANGUL SYLLABLE TWI + 53916 == code || // Lo HANGUL SYLLABLE TYU + 53944 == code || // Lo HANGUL SYLLABLE TEU + 53972 == code || // Lo HANGUL SYLLABLE TYI + 54e3 == code || // Lo HANGUL SYLLABLE TI + 54028 == code || // Lo HANGUL SYLLABLE PA + 54056 == code || // Lo HANGUL SYLLABLE PAE + 54084 == code || // Lo HANGUL SYLLABLE PYA + 54112 == code || // Lo HANGUL SYLLABLE PYAE + 54140 == code || // Lo HANGUL SYLLABLE PEO + 54168 == code || // Lo HANGUL SYLLABLE PE + 54196 == code || // Lo HANGUL SYLLABLE PYEO + 54224 == code || // Lo HANGUL SYLLABLE PYE + 54252 == code || // Lo HANGUL SYLLABLE PO + 54280 == code || // Lo HANGUL SYLLABLE PWA + 54308 == code || // Lo HANGUL SYLLABLE PWAE + 54336 == code || // Lo HANGUL SYLLABLE POE + 54364 == code || // Lo HANGUL SYLLABLE PYO + 54392 == code || // Lo HANGUL SYLLABLE PU + 54420 == code || // Lo HANGUL SYLLABLE PWEO + 54448 == code || // Lo HANGUL SYLLABLE PWE + 54476 == code || // Lo HANGUL SYLLABLE PWI + 54504 == code || // Lo HANGUL SYLLABLE PYU + 54532 == code || // Lo HANGUL SYLLABLE PEU + 54560 == code || // Lo HANGUL SYLLABLE PYI + 54588 == code || // Lo HANGUL SYLLABLE PI + 54616 == code || // Lo HANGUL SYLLABLE HA + 54644 == code || // Lo HANGUL SYLLABLE HAE + 54672 == code || // Lo HANGUL SYLLABLE HYA + 54700 == code || // Lo HANGUL SYLLABLE HYAE + 54728 == code || // Lo HANGUL SYLLABLE HEO + 54756 == code || // Lo HANGUL SYLLABLE HE + 54784 == code || // Lo HANGUL SYLLABLE HYEO + 54812 == code || // Lo HANGUL SYLLABLE HYE + 54840 == code || // Lo HANGUL SYLLABLE HO + 54868 == code || // Lo HANGUL SYLLABLE HWA + 54896 == code || // Lo HANGUL SYLLABLE HWAE + 54924 == code || // Lo HANGUL SYLLABLE HOE + 54952 == code || // Lo HANGUL SYLLABLE HYO + 54980 == code || // Lo HANGUL SYLLABLE HU + 55008 == code || // Lo HANGUL SYLLABLE HWEO + 55036 == code || // Lo HANGUL SYLLABLE HWE + 55064 == code || // Lo HANGUL SYLLABLE HWI + 55092 == code || // Lo HANGUL SYLLABLE HYU + 55120 == code || // Lo HANGUL SYLLABLE HEU + 55148 == code || // Lo HANGUL SYLLABLE HYI + 55176 == code) { + return LV; + } + if (44033 <= code && code <= 44059 || // Lo [27] HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH + 44061 <= code && code <= 44087 || // Lo [27] HANGUL SYLLABLE GAEG..HANGUL SYLLABLE GAEH + 44089 <= code && code <= 44115 || // Lo [27] HANGUL SYLLABLE GYAG..HANGUL SYLLABLE GYAH + 44117 <= code && code <= 44143 || // Lo [27] HANGUL SYLLABLE GYAEG..HANGUL SYLLABLE GYAEH + 44145 <= code && code <= 44171 || // Lo [27] HANGUL SYLLABLE GEOG..HANGUL SYLLABLE GEOH + 44173 <= code && code <= 44199 || // Lo [27] HANGUL SYLLABLE GEG..HANGUL SYLLABLE GEH + 44201 <= code && code <= 44227 || // Lo [27] HANGUL SYLLABLE GYEOG..HANGUL SYLLABLE GYEOH + 44229 <= code && code <= 44255 || // Lo [27] HANGUL SYLLABLE GYEG..HANGUL SYLLABLE GYEH + 44257 <= code && code <= 44283 || // Lo [27] HANGUL SYLLABLE GOG..HANGUL SYLLABLE GOH + 44285 <= code && code <= 44311 || // Lo [27] HANGUL SYLLABLE GWAG..HANGUL SYLLABLE GWAH + 44313 <= code && code <= 44339 || // Lo [27] HANGUL SYLLABLE GWAEG..HANGUL SYLLABLE GWAEH + 44341 <= code && code <= 44367 || // Lo [27] HANGUL SYLLABLE GOEG..HANGUL SYLLABLE GOEH + 44369 <= code && code <= 44395 || // Lo [27] HANGUL SYLLABLE GYOG..HANGUL SYLLABLE GYOH + 44397 <= code && code <= 44423 || // Lo [27] HANGUL SYLLABLE GUG..HANGUL SYLLABLE GUH + 44425 <= code && code <= 44451 || // Lo [27] HANGUL SYLLABLE GWEOG..HANGUL SYLLABLE GWEOH + 44453 <= code && code <= 44479 || // Lo [27] HANGUL SYLLABLE GWEG..HANGUL SYLLABLE GWEH + 44481 <= code && code <= 44507 || // Lo [27] HANGUL SYLLABLE GWIG..HANGUL SYLLABLE GWIH + 44509 <= code && code <= 44535 || // Lo [27] HANGUL SYLLABLE GYUG..HANGUL SYLLABLE GYUH + 44537 <= code && code <= 44563 || // Lo [27] HANGUL SYLLABLE GEUG..HANGUL SYLLABLE GEUH + 44565 <= code && code <= 44591 || // Lo [27] HANGUL SYLLABLE GYIG..HANGUL SYLLABLE GYIH + 44593 <= code && code <= 44619 || // Lo [27] HANGUL SYLLABLE GIG..HANGUL SYLLABLE GIH + 44621 <= code && code <= 44647 || // Lo [27] HANGUL SYLLABLE GGAG..HANGUL SYLLABLE GGAH + 44649 <= code && code <= 44675 || // Lo [27] HANGUL SYLLABLE GGAEG..HANGUL SYLLABLE GGAEH + 44677 <= code && code <= 44703 || // Lo [27] HANGUL SYLLABLE GGYAG..HANGUL SYLLABLE GGYAH + 44705 <= code && code <= 44731 || // Lo [27] HANGUL SYLLABLE GGYAEG..HANGUL SYLLABLE GGYAEH + 44733 <= code && code <= 44759 || // Lo [27] HANGUL SYLLABLE GGEOG..HANGUL SYLLABLE GGEOH + 44761 <= code && code <= 44787 || // Lo [27] HANGUL SYLLABLE GGEG..HANGUL SYLLABLE GGEH + 44789 <= code && code <= 44815 || // Lo [27] HANGUL SYLLABLE GGYEOG..HANGUL SYLLABLE GGYEOH + 44817 <= code && code <= 44843 || // Lo [27] HANGUL SYLLABLE GGYEG..HANGUL SYLLABLE GGYEH + 44845 <= code && code <= 44871 || // Lo [27] HANGUL SYLLABLE GGOG..HANGUL SYLLABLE GGOH + 44873 <= code && code <= 44899 || // Lo [27] HANGUL SYLLABLE GGWAG..HANGUL SYLLABLE GGWAH + 44901 <= code && code <= 44927 || // Lo [27] HANGUL SYLLABLE GGWAEG..HANGUL SYLLABLE GGWAEH + 44929 <= code && code <= 44955 || // Lo [27] HANGUL SYLLABLE GGOEG..HANGUL SYLLABLE GGOEH + 44957 <= code && code <= 44983 || // Lo [27] HANGUL SYLLABLE GGYOG..HANGUL SYLLABLE GGYOH + 44985 <= code && code <= 45011 || // Lo [27] HANGUL SYLLABLE GGUG..HANGUL SYLLABLE GGUH + 45013 <= code && code <= 45039 || // Lo [27] HANGUL SYLLABLE GGWEOG..HANGUL SYLLABLE GGWEOH + 45041 <= code && code <= 45067 || // Lo [27] HANGUL SYLLABLE GGWEG..HANGUL SYLLABLE GGWEH + 45069 <= code && code <= 45095 || // Lo [27] HANGUL SYLLABLE GGWIG..HANGUL SYLLABLE GGWIH + 45097 <= code && code <= 45123 || // Lo [27] HANGUL SYLLABLE GGYUG..HANGUL SYLLABLE GGYUH + 45125 <= code && code <= 45151 || // Lo [27] HANGUL SYLLABLE GGEUG..HANGUL SYLLABLE GGEUH + 45153 <= code && code <= 45179 || // Lo [27] HANGUL SYLLABLE GGYIG..HANGUL SYLLABLE GGYIH + 45181 <= code && code <= 45207 || // Lo [27] HANGUL SYLLABLE GGIG..HANGUL SYLLABLE GGIH + 45209 <= code && code <= 45235 || // Lo [27] HANGUL SYLLABLE NAG..HANGUL SYLLABLE NAH + 45237 <= code && code <= 45263 || // Lo [27] HANGUL SYLLABLE NAEG..HANGUL SYLLABLE NAEH + 45265 <= code && code <= 45291 || // Lo [27] HANGUL SYLLABLE NYAG..HANGUL SYLLABLE NYAH + 45293 <= code && code <= 45319 || // Lo [27] HANGUL SYLLABLE NYAEG..HANGUL SYLLABLE NYAEH + 45321 <= code && code <= 45347 || // Lo [27] HANGUL SYLLABLE NEOG..HANGUL SYLLABLE NEOH + 45349 <= code && code <= 45375 || // Lo [27] HANGUL SYLLABLE NEG..HANGUL SYLLABLE NEH + 45377 <= code && code <= 45403 || // Lo [27] HANGUL SYLLABLE NYEOG..HANGUL SYLLABLE NYEOH + 45405 <= code && code <= 45431 || // Lo [27] HANGUL SYLLABLE NYEG..HANGUL SYLLABLE NYEH + 45433 <= code && code <= 45459 || // Lo [27] HANGUL SYLLABLE NOG..HANGUL SYLLABLE NOH + 45461 <= code && code <= 45487 || // Lo [27] HANGUL SYLLABLE NWAG..HANGUL SYLLABLE NWAH + 45489 <= code && code <= 45515 || // Lo [27] HANGUL SYLLABLE NWAEG..HANGUL SYLLABLE NWAEH + 45517 <= code && code <= 45543 || // Lo [27] HANGUL SYLLABLE NOEG..HANGUL SYLLABLE NOEH + 45545 <= code && code <= 45571 || // Lo [27] HANGUL SYLLABLE NYOG..HANGUL SYLLABLE NYOH + 45573 <= code && code <= 45599 || // Lo [27] HANGUL SYLLABLE NUG..HANGUL SYLLABLE NUH + 45601 <= code && code <= 45627 || // Lo [27] HANGUL SYLLABLE NWEOG..HANGUL SYLLABLE NWEOH + 45629 <= code && code <= 45655 || // Lo [27] HANGUL SYLLABLE NWEG..HANGUL SYLLABLE NWEH + 45657 <= code && code <= 45683 || // Lo [27] HANGUL SYLLABLE NWIG..HANGUL SYLLABLE NWIH + 45685 <= code && code <= 45711 || // Lo [27] HANGUL SYLLABLE NYUG..HANGUL SYLLABLE NYUH + 45713 <= code && code <= 45739 || // Lo [27] HANGUL SYLLABLE NEUG..HANGUL SYLLABLE NEUH + 45741 <= code && code <= 45767 || // Lo [27] HANGUL SYLLABLE NYIG..HANGUL SYLLABLE NYIH + 45769 <= code && code <= 45795 || // Lo [27] HANGUL SYLLABLE NIG..HANGUL SYLLABLE NIH + 45797 <= code && code <= 45823 || // Lo [27] HANGUL SYLLABLE DAG..HANGUL SYLLABLE DAH + 45825 <= code && code <= 45851 || // Lo [27] HANGUL SYLLABLE DAEG..HANGUL SYLLABLE DAEH + 45853 <= code && code <= 45879 || // Lo [27] HANGUL SYLLABLE DYAG..HANGUL SYLLABLE DYAH + 45881 <= code && code <= 45907 || // Lo [27] HANGUL SYLLABLE DYAEG..HANGUL SYLLABLE DYAEH + 45909 <= code && code <= 45935 || // Lo [27] HANGUL SYLLABLE DEOG..HANGUL SYLLABLE DEOH + 45937 <= code && code <= 45963 || // Lo [27] HANGUL SYLLABLE DEG..HANGUL SYLLABLE DEH + 45965 <= code && code <= 45991 || // Lo [27] HANGUL SYLLABLE DYEOG..HANGUL SYLLABLE DYEOH + 45993 <= code && code <= 46019 || // Lo [27] HANGUL SYLLABLE DYEG..HANGUL SYLLABLE DYEH + 46021 <= code && code <= 46047 || // Lo [27] HANGUL SYLLABLE DOG..HANGUL SYLLABLE DOH + 46049 <= code && code <= 46075 || // Lo [27] HANGUL SYLLABLE DWAG..HANGUL SYLLABLE DWAH + 46077 <= code && code <= 46103 || // Lo [27] HANGUL SYLLABLE DWAEG..HANGUL SYLLABLE DWAEH + 46105 <= code && code <= 46131 || // Lo [27] HANGUL SYLLABLE DOEG..HANGUL SYLLABLE DOEH + 46133 <= code && code <= 46159 || // Lo [27] HANGUL SYLLABLE DYOG..HANGUL SYLLABLE DYOH + 46161 <= code && code <= 46187 || // Lo [27] HANGUL SYLLABLE DUG..HANGUL SYLLABLE DUH + 46189 <= code && code <= 46215 || // Lo [27] HANGUL SYLLABLE DWEOG..HANGUL SYLLABLE DWEOH + 46217 <= code && code <= 46243 || // Lo [27] HANGUL SYLLABLE DWEG..HANGUL SYLLABLE DWEH + 46245 <= code && code <= 46271 || // Lo [27] HANGUL SYLLABLE DWIG..HANGUL SYLLABLE DWIH + 46273 <= code && code <= 46299 || // Lo [27] HANGUL SYLLABLE DYUG..HANGUL SYLLABLE DYUH + 46301 <= code && code <= 46327 || // Lo [27] HANGUL SYLLABLE DEUG..HANGUL SYLLABLE DEUH + 46329 <= code && code <= 46355 || // Lo [27] HANGUL SYLLABLE DYIG..HANGUL SYLLABLE DYIH + 46357 <= code && code <= 46383 || // Lo [27] HANGUL SYLLABLE DIG..HANGUL SYLLABLE DIH + 46385 <= code && code <= 46411 || // Lo [27] HANGUL SYLLABLE DDAG..HANGUL SYLLABLE DDAH + 46413 <= code && code <= 46439 || // Lo [27] HANGUL SYLLABLE DDAEG..HANGUL SYLLABLE DDAEH + 46441 <= code && code <= 46467 || // Lo [27] HANGUL SYLLABLE DDYAG..HANGUL SYLLABLE DDYAH + 46469 <= code && code <= 46495 || // Lo [27] HANGUL SYLLABLE DDYAEG..HANGUL SYLLABLE DDYAEH + 46497 <= code && code <= 46523 || // Lo [27] HANGUL SYLLABLE DDEOG..HANGUL SYLLABLE DDEOH + 46525 <= code && code <= 46551 || // Lo [27] HANGUL SYLLABLE DDEG..HANGUL SYLLABLE DDEH + 46553 <= code && code <= 46579 || // Lo [27] HANGUL SYLLABLE DDYEOG..HANGUL SYLLABLE DDYEOH + 46581 <= code && code <= 46607 || // Lo [27] HANGUL SYLLABLE DDYEG..HANGUL SYLLABLE DDYEH + 46609 <= code && code <= 46635 || // Lo [27] HANGUL SYLLABLE DDOG..HANGUL SYLLABLE DDOH + 46637 <= code && code <= 46663 || // Lo [27] HANGUL SYLLABLE DDWAG..HANGUL SYLLABLE DDWAH + 46665 <= code && code <= 46691 || // Lo [27] HANGUL SYLLABLE DDWAEG..HANGUL SYLLABLE DDWAEH + 46693 <= code && code <= 46719 || // Lo [27] HANGUL SYLLABLE DDOEG..HANGUL SYLLABLE DDOEH + 46721 <= code && code <= 46747 || // Lo [27] HANGUL SYLLABLE DDYOG..HANGUL SYLLABLE DDYOH + 46749 <= code && code <= 46775 || // Lo [27] HANGUL SYLLABLE DDUG..HANGUL SYLLABLE DDUH + 46777 <= code && code <= 46803 || // Lo [27] HANGUL SYLLABLE DDWEOG..HANGUL SYLLABLE DDWEOH + 46805 <= code && code <= 46831 || // Lo [27] HANGUL SYLLABLE DDWEG..HANGUL SYLLABLE DDWEH + 46833 <= code && code <= 46859 || // Lo [27] HANGUL SYLLABLE DDWIG..HANGUL SYLLABLE DDWIH + 46861 <= code && code <= 46887 || // Lo [27] HANGUL SYLLABLE DDYUG..HANGUL SYLLABLE DDYUH + 46889 <= code && code <= 46915 || // Lo [27] HANGUL SYLLABLE DDEUG..HANGUL SYLLABLE DDEUH + 46917 <= code && code <= 46943 || // Lo [27] HANGUL SYLLABLE DDYIG..HANGUL SYLLABLE DDYIH + 46945 <= code && code <= 46971 || // Lo [27] HANGUL SYLLABLE DDIG..HANGUL SYLLABLE DDIH + 46973 <= code && code <= 46999 || // Lo [27] HANGUL SYLLABLE RAG..HANGUL SYLLABLE RAH + 47001 <= code && code <= 47027 || // Lo [27] HANGUL SYLLABLE RAEG..HANGUL SYLLABLE RAEH + 47029 <= code && code <= 47055 || // Lo [27] HANGUL SYLLABLE RYAG..HANGUL SYLLABLE RYAH + 47057 <= code && code <= 47083 || // Lo [27] HANGUL SYLLABLE RYAEG..HANGUL SYLLABLE RYAEH + 47085 <= code && code <= 47111 || // Lo [27] HANGUL SYLLABLE REOG..HANGUL SYLLABLE REOH + 47113 <= code && code <= 47139 || // Lo [27] HANGUL SYLLABLE REG..HANGUL SYLLABLE REH + 47141 <= code && code <= 47167 || // Lo [27] HANGUL SYLLABLE RYEOG..HANGUL SYLLABLE RYEOH + 47169 <= code && code <= 47195 || // Lo [27] HANGUL SYLLABLE RYEG..HANGUL SYLLABLE RYEH + 47197 <= code && code <= 47223 || // Lo [27] HANGUL SYLLABLE ROG..HANGUL SYLLABLE ROH + 47225 <= code && code <= 47251 || // Lo [27] HANGUL SYLLABLE RWAG..HANGUL SYLLABLE RWAH + 47253 <= code && code <= 47279 || // Lo [27] HANGUL SYLLABLE RWAEG..HANGUL SYLLABLE RWAEH + 47281 <= code && code <= 47307 || // Lo [27] HANGUL SYLLABLE ROEG..HANGUL SYLLABLE ROEH + 47309 <= code && code <= 47335 || // Lo [27] HANGUL SYLLABLE RYOG..HANGUL SYLLABLE RYOH + 47337 <= code && code <= 47363 || // Lo [27] HANGUL SYLLABLE RUG..HANGUL SYLLABLE RUH + 47365 <= code && code <= 47391 || // Lo [27] HANGUL SYLLABLE RWEOG..HANGUL SYLLABLE RWEOH + 47393 <= code && code <= 47419 || // Lo [27] HANGUL SYLLABLE RWEG..HANGUL SYLLABLE RWEH + 47421 <= code && code <= 47447 || // Lo [27] HANGUL SYLLABLE RWIG..HANGUL SYLLABLE RWIH + 47449 <= code && code <= 47475 || // Lo [27] HANGUL SYLLABLE RYUG..HANGUL SYLLABLE RYUH + 47477 <= code && code <= 47503 || // Lo [27] HANGUL SYLLABLE REUG..HANGUL SYLLABLE REUH + 47505 <= code && code <= 47531 || // Lo [27] HANGUL SYLLABLE RYIG..HANGUL SYLLABLE RYIH + 47533 <= code && code <= 47559 || // Lo [27] HANGUL SYLLABLE RIG..HANGUL SYLLABLE RIH + 47561 <= code && code <= 47587 || // Lo [27] HANGUL SYLLABLE MAG..HANGUL SYLLABLE MAH + 47589 <= code && code <= 47615 || // Lo [27] HANGUL SYLLABLE MAEG..HANGUL SYLLABLE MAEH + 47617 <= code && code <= 47643 || // Lo [27] HANGUL SYLLABLE MYAG..HANGUL SYLLABLE MYAH + 47645 <= code && code <= 47671 || // Lo [27] HANGUL SYLLABLE MYAEG..HANGUL SYLLABLE MYAEH + 47673 <= code && code <= 47699 || // Lo [27] HANGUL SYLLABLE MEOG..HANGUL SYLLABLE MEOH + 47701 <= code && code <= 47727 || // Lo [27] HANGUL SYLLABLE MEG..HANGUL SYLLABLE MEH + 47729 <= code && code <= 47755 || // Lo [27] HANGUL SYLLABLE MYEOG..HANGUL SYLLABLE MYEOH + 47757 <= code && code <= 47783 || // Lo [27] HANGUL SYLLABLE MYEG..HANGUL SYLLABLE MYEH + 47785 <= code && code <= 47811 || // Lo [27] HANGUL SYLLABLE MOG..HANGUL SYLLABLE MOH + 47813 <= code && code <= 47839 || // Lo [27] HANGUL SYLLABLE MWAG..HANGUL SYLLABLE MWAH + 47841 <= code && code <= 47867 || // Lo [27] HANGUL SYLLABLE MWAEG..HANGUL SYLLABLE MWAEH + 47869 <= code && code <= 47895 || // Lo [27] HANGUL SYLLABLE MOEG..HANGUL SYLLABLE MOEH + 47897 <= code && code <= 47923 || // Lo [27] HANGUL SYLLABLE MYOG..HANGUL SYLLABLE MYOH + 47925 <= code && code <= 47951 || // Lo [27] HANGUL SYLLABLE MUG..HANGUL SYLLABLE MUH + 47953 <= code && code <= 47979 || // Lo [27] HANGUL SYLLABLE MWEOG..HANGUL SYLLABLE MWEOH + 47981 <= code && code <= 48007 || // Lo [27] HANGUL SYLLABLE MWEG..HANGUL SYLLABLE MWEH + 48009 <= code && code <= 48035 || // Lo [27] HANGUL SYLLABLE MWIG..HANGUL SYLLABLE MWIH + 48037 <= code && code <= 48063 || // Lo [27] HANGUL SYLLABLE MYUG..HANGUL SYLLABLE MYUH + 48065 <= code && code <= 48091 || // Lo [27] HANGUL SYLLABLE MEUG..HANGUL SYLLABLE MEUH + 48093 <= code && code <= 48119 || // Lo [27] HANGUL SYLLABLE MYIG..HANGUL SYLLABLE MYIH + 48121 <= code && code <= 48147 || // Lo [27] HANGUL SYLLABLE MIG..HANGUL SYLLABLE MIH + 48149 <= code && code <= 48175 || // Lo [27] HANGUL SYLLABLE BAG..HANGUL SYLLABLE BAH + 48177 <= code && code <= 48203 || // Lo [27] HANGUL SYLLABLE BAEG..HANGUL SYLLABLE BAEH + 48205 <= code && code <= 48231 || // Lo [27] HANGUL SYLLABLE BYAG..HANGUL SYLLABLE BYAH + 48233 <= code && code <= 48259 || // Lo [27] HANGUL SYLLABLE BYAEG..HANGUL SYLLABLE BYAEH + 48261 <= code && code <= 48287 || // Lo [27] HANGUL SYLLABLE BEOG..HANGUL SYLLABLE BEOH + 48289 <= code && code <= 48315 || // Lo [27] HANGUL SYLLABLE BEG..HANGUL SYLLABLE BEH + 48317 <= code && code <= 48343 || // Lo [27] HANGUL SYLLABLE BYEOG..HANGUL SYLLABLE BYEOH + 48345 <= code && code <= 48371 || // Lo [27] HANGUL SYLLABLE BYEG..HANGUL SYLLABLE BYEH + 48373 <= code && code <= 48399 || // Lo [27] HANGUL SYLLABLE BOG..HANGUL SYLLABLE BOH + 48401 <= code && code <= 48427 || // Lo [27] HANGUL SYLLABLE BWAG..HANGUL SYLLABLE BWAH + 48429 <= code && code <= 48455 || // Lo [27] HANGUL SYLLABLE BWAEG..HANGUL SYLLABLE BWAEH + 48457 <= code && code <= 48483 || // Lo [27] HANGUL SYLLABLE BOEG..HANGUL SYLLABLE BOEH + 48485 <= code && code <= 48511 || // Lo [27] HANGUL SYLLABLE BYOG..HANGUL SYLLABLE BYOH + 48513 <= code && code <= 48539 || // Lo [27] HANGUL SYLLABLE BUG..HANGUL SYLLABLE BUH + 48541 <= code && code <= 48567 || // Lo [27] HANGUL SYLLABLE BWEOG..HANGUL SYLLABLE BWEOH + 48569 <= code && code <= 48595 || // Lo [27] HANGUL SYLLABLE BWEG..HANGUL SYLLABLE BWEH + 48597 <= code && code <= 48623 || // Lo [27] HANGUL SYLLABLE BWIG..HANGUL SYLLABLE BWIH + 48625 <= code && code <= 48651 || // Lo [27] HANGUL SYLLABLE BYUG..HANGUL SYLLABLE BYUH + 48653 <= code && code <= 48679 || // Lo [27] HANGUL SYLLABLE BEUG..HANGUL SYLLABLE BEUH + 48681 <= code && code <= 48707 || // Lo [27] HANGUL SYLLABLE BYIG..HANGUL SYLLABLE BYIH + 48709 <= code && code <= 48735 || // Lo [27] HANGUL SYLLABLE BIG..HANGUL SYLLABLE BIH + 48737 <= code && code <= 48763 || // Lo [27] HANGUL SYLLABLE BBAG..HANGUL SYLLABLE BBAH + 48765 <= code && code <= 48791 || // Lo [27] HANGUL SYLLABLE BBAEG..HANGUL SYLLABLE BBAEH + 48793 <= code && code <= 48819 || // Lo [27] HANGUL SYLLABLE BBYAG..HANGUL SYLLABLE BBYAH + 48821 <= code && code <= 48847 || // Lo [27] HANGUL SYLLABLE BBYAEG..HANGUL SYLLABLE BBYAEH + 48849 <= code && code <= 48875 || // Lo [27] HANGUL SYLLABLE BBEOG..HANGUL SYLLABLE BBEOH + 48877 <= code && code <= 48903 || // Lo [27] HANGUL SYLLABLE BBEG..HANGUL SYLLABLE BBEH + 48905 <= code && code <= 48931 || // Lo [27] HANGUL SYLLABLE BBYEOG..HANGUL SYLLABLE BBYEOH + 48933 <= code && code <= 48959 || // Lo [27] HANGUL SYLLABLE BBYEG..HANGUL SYLLABLE BBYEH + 48961 <= code && code <= 48987 || // Lo [27] HANGUL SYLLABLE BBOG..HANGUL SYLLABLE BBOH + 48989 <= code && code <= 49015 || // Lo [27] HANGUL SYLLABLE BBWAG..HANGUL SYLLABLE BBWAH + 49017 <= code && code <= 49043 || // Lo [27] HANGUL SYLLABLE BBWAEG..HANGUL SYLLABLE BBWAEH + 49045 <= code && code <= 49071 || // Lo [27] HANGUL SYLLABLE BBOEG..HANGUL SYLLABLE BBOEH + 49073 <= code && code <= 49099 || // Lo [27] HANGUL SYLLABLE BBYOG..HANGUL SYLLABLE BBYOH + 49101 <= code && code <= 49127 || // Lo [27] HANGUL SYLLABLE BBUG..HANGUL SYLLABLE BBUH + 49129 <= code && code <= 49155 || // Lo [27] HANGUL SYLLABLE BBWEOG..HANGUL SYLLABLE BBWEOH + 49157 <= code && code <= 49183 || // Lo [27] HANGUL SYLLABLE BBWEG..HANGUL SYLLABLE BBWEH + 49185 <= code && code <= 49211 || // Lo [27] HANGUL SYLLABLE BBWIG..HANGUL SYLLABLE BBWIH + 49213 <= code && code <= 49239 || // Lo [27] HANGUL SYLLABLE BBYUG..HANGUL SYLLABLE BBYUH + 49241 <= code && code <= 49267 || // Lo [27] HANGUL SYLLABLE BBEUG..HANGUL SYLLABLE BBEUH + 49269 <= code && code <= 49295 || // Lo [27] HANGUL SYLLABLE BBYIG..HANGUL SYLLABLE BBYIH + 49297 <= code && code <= 49323 || // Lo [27] HANGUL SYLLABLE BBIG..HANGUL SYLLABLE BBIH + 49325 <= code && code <= 49351 || // Lo [27] HANGUL SYLLABLE SAG..HANGUL SYLLABLE SAH + 49353 <= code && code <= 49379 || // Lo [27] HANGUL SYLLABLE SAEG..HANGUL SYLLABLE SAEH + 49381 <= code && code <= 49407 || // Lo [27] HANGUL SYLLABLE SYAG..HANGUL SYLLABLE SYAH + 49409 <= code && code <= 49435 || // Lo [27] HANGUL SYLLABLE SYAEG..HANGUL SYLLABLE SYAEH + 49437 <= code && code <= 49463 || // Lo [27] HANGUL SYLLABLE SEOG..HANGUL SYLLABLE SEOH + 49465 <= code && code <= 49491 || // Lo [27] HANGUL SYLLABLE SEG..HANGUL SYLLABLE SEH + 49493 <= code && code <= 49519 || // Lo [27] HANGUL SYLLABLE SYEOG..HANGUL SYLLABLE SYEOH + 49521 <= code && code <= 49547 || // Lo [27] HANGUL SYLLABLE SYEG..HANGUL SYLLABLE SYEH + 49549 <= code && code <= 49575 || // Lo [27] HANGUL SYLLABLE SOG..HANGUL SYLLABLE SOH + 49577 <= code && code <= 49603 || // Lo [27] HANGUL SYLLABLE SWAG..HANGUL SYLLABLE SWAH + 49605 <= code && code <= 49631 || // Lo [27] HANGUL SYLLABLE SWAEG..HANGUL SYLLABLE SWAEH + 49633 <= code && code <= 49659 || // Lo [27] HANGUL SYLLABLE SOEG..HANGUL SYLLABLE SOEH + 49661 <= code && code <= 49687 || // Lo [27] HANGUL SYLLABLE SYOG..HANGUL SYLLABLE SYOH + 49689 <= code && code <= 49715 || // Lo [27] HANGUL SYLLABLE SUG..HANGUL SYLLABLE SUH + 49717 <= code && code <= 49743 || // Lo [27] HANGUL SYLLABLE SWEOG..HANGUL SYLLABLE SWEOH + 49745 <= code && code <= 49771 || // Lo [27] HANGUL SYLLABLE SWEG..HANGUL SYLLABLE SWEH + 49773 <= code && code <= 49799 || // Lo [27] HANGUL SYLLABLE SWIG..HANGUL SYLLABLE SWIH + 49801 <= code && code <= 49827 || // Lo [27] HANGUL SYLLABLE SYUG..HANGUL SYLLABLE SYUH + 49829 <= code && code <= 49855 || // Lo [27] HANGUL SYLLABLE SEUG..HANGUL SYLLABLE SEUH + 49857 <= code && code <= 49883 || // Lo [27] HANGUL SYLLABLE SYIG..HANGUL SYLLABLE SYIH + 49885 <= code && code <= 49911 || // Lo [27] HANGUL SYLLABLE SIG..HANGUL SYLLABLE SIH + 49913 <= code && code <= 49939 || // Lo [27] HANGUL SYLLABLE SSAG..HANGUL SYLLABLE SSAH + 49941 <= code && code <= 49967 || // Lo [27] HANGUL SYLLABLE SSAEG..HANGUL SYLLABLE SSAEH + 49969 <= code && code <= 49995 || // Lo [27] HANGUL SYLLABLE SSYAG..HANGUL SYLLABLE SSYAH + 49997 <= code && code <= 50023 || // Lo [27] HANGUL SYLLABLE SSYAEG..HANGUL SYLLABLE SSYAEH + 50025 <= code && code <= 50051 || // Lo [27] HANGUL SYLLABLE SSEOG..HANGUL SYLLABLE SSEOH + 50053 <= code && code <= 50079 || // Lo [27] HANGUL SYLLABLE SSEG..HANGUL SYLLABLE SSEH + 50081 <= code && code <= 50107 || // Lo [27] HANGUL SYLLABLE SSYEOG..HANGUL SYLLABLE SSYEOH + 50109 <= code && code <= 50135 || // Lo [27] HANGUL SYLLABLE SSYEG..HANGUL SYLLABLE SSYEH + 50137 <= code && code <= 50163 || // Lo [27] HANGUL SYLLABLE SSOG..HANGUL SYLLABLE SSOH + 50165 <= code && code <= 50191 || // Lo [27] HANGUL SYLLABLE SSWAG..HANGUL SYLLABLE SSWAH + 50193 <= code && code <= 50219 || // Lo [27] HANGUL SYLLABLE SSWAEG..HANGUL SYLLABLE SSWAEH + 50221 <= code && code <= 50247 || // Lo [27] HANGUL SYLLABLE SSOEG..HANGUL SYLLABLE SSOEH + 50249 <= code && code <= 50275 || // Lo [27] HANGUL SYLLABLE SSYOG..HANGUL SYLLABLE SSYOH + 50277 <= code && code <= 50303 || // Lo [27] HANGUL SYLLABLE SSUG..HANGUL SYLLABLE SSUH + 50305 <= code && code <= 50331 || // Lo [27] HANGUL SYLLABLE SSWEOG..HANGUL SYLLABLE SSWEOH + 50333 <= code && code <= 50359 || // Lo [27] HANGUL SYLLABLE SSWEG..HANGUL SYLLABLE SSWEH + 50361 <= code && code <= 50387 || // Lo [27] HANGUL SYLLABLE SSWIG..HANGUL SYLLABLE SSWIH + 50389 <= code && code <= 50415 || // Lo [27] HANGUL SYLLABLE SSYUG..HANGUL SYLLABLE SSYUH + 50417 <= code && code <= 50443 || // Lo [27] HANGUL SYLLABLE SSEUG..HANGUL SYLLABLE SSEUH + 50445 <= code && code <= 50471 || // Lo [27] HANGUL SYLLABLE SSYIG..HANGUL SYLLABLE SSYIH + 50473 <= code && code <= 50499 || // Lo [27] HANGUL SYLLABLE SSIG..HANGUL SYLLABLE SSIH + 50501 <= code && code <= 50527 || // Lo [27] HANGUL SYLLABLE AG..HANGUL SYLLABLE AH + 50529 <= code && code <= 50555 || // Lo [27] HANGUL SYLLABLE AEG..HANGUL SYLLABLE AEH + 50557 <= code && code <= 50583 || // Lo [27] HANGUL SYLLABLE YAG..HANGUL SYLLABLE YAH + 50585 <= code && code <= 50611 || // Lo [27] HANGUL SYLLABLE YAEG..HANGUL SYLLABLE YAEH + 50613 <= code && code <= 50639 || // Lo [27] HANGUL SYLLABLE EOG..HANGUL SYLLABLE EOH + 50641 <= code && code <= 50667 || // Lo [27] HANGUL SYLLABLE EG..HANGUL SYLLABLE EH + 50669 <= code && code <= 50695 || // Lo [27] HANGUL SYLLABLE YEOG..HANGUL SYLLABLE YEOH + 50697 <= code && code <= 50723 || // Lo [27] HANGUL SYLLABLE YEG..HANGUL SYLLABLE YEH + 50725 <= code && code <= 50751 || // Lo [27] HANGUL SYLLABLE OG..HANGUL SYLLABLE OH + 50753 <= code && code <= 50779 || // Lo [27] HANGUL SYLLABLE WAG..HANGUL SYLLABLE WAH + 50781 <= code && code <= 50807 || // Lo [27] HANGUL SYLLABLE WAEG..HANGUL SYLLABLE WAEH + 50809 <= code && code <= 50835 || // Lo [27] HANGUL SYLLABLE OEG..HANGUL SYLLABLE OEH + 50837 <= code && code <= 50863 || // Lo [27] HANGUL SYLLABLE YOG..HANGUL SYLLABLE YOH + 50865 <= code && code <= 50891 || // Lo [27] HANGUL SYLLABLE UG..HANGUL SYLLABLE UH + 50893 <= code && code <= 50919 || // Lo [27] HANGUL SYLLABLE WEOG..HANGUL SYLLABLE WEOH + 50921 <= code && code <= 50947 || // Lo [27] HANGUL SYLLABLE WEG..HANGUL SYLLABLE WEH + 50949 <= code && code <= 50975 || // Lo [27] HANGUL SYLLABLE WIG..HANGUL SYLLABLE WIH + 50977 <= code && code <= 51003 || // Lo [27] HANGUL SYLLABLE YUG..HANGUL SYLLABLE YUH + 51005 <= code && code <= 51031 || // Lo [27] HANGUL SYLLABLE EUG..HANGUL SYLLABLE EUH + 51033 <= code && code <= 51059 || // Lo [27] HANGUL SYLLABLE YIG..HANGUL SYLLABLE YIH + 51061 <= code && code <= 51087 || // Lo [27] HANGUL SYLLABLE IG..HANGUL SYLLABLE IH + 51089 <= code && code <= 51115 || // Lo [27] HANGUL SYLLABLE JAG..HANGUL SYLLABLE JAH + 51117 <= code && code <= 51143 || // Lo [27] HANGUL SYLLABLE JAEG..HANGUL SYLLABLE JAEH + 51145 <= code && code <= 51171 || // Lo [27] HANGUL SYLLABLE JYAG..HANGUL SYLLABLE JYAH + 51173 <= code && code <= 51199 || // Lo [27] HANGUL SYLLABLE JYAEG..HANGUL SYLLABLE JYAEH + 51201 <= code && code <= 51227 || // Lo [27] HANGUL SYLLABLE JEOG..HANGUL SYLLABLE JEOH + 51229 <= code && code <= 51255 || // Lo [27] HANGUL SYLLABLE JEG..HANGUL SYLLABLE JEH + 51257 <= code && code <= 51283 || // Lo [27] HANGUL SYLLABLE JYEOG..HANGUL SYLLABLE JYEOH + 51285 <= code && code <= 51311 || // Lo [27] HANGUL SYLLABLE JYEG..HANGUL SYLLABLE JYEH + 51313 <= code && code <= 51339 || // Lo [27] HANGUL SYLLABLE JOG..HANGUL SYLLABLE JOH + 51341 <= code && code <= 51367 || // Lo [27] HANGUL SYLLABLE JWAG..HANGUL SYLLABLE JWAH + 51369 <= code && code <= 51395 || // Lo [27] HANGUL SYLLABLE JWAEG..HANGUL SYLLABLE JWAEH + 51397 <= code && code <= 51423 || // Lo [27] HANGUL SYLLABLE JOEG..HANGUL SYLLABLE JOEH + 51425 <= code && code <= 51451 || // Lo [27] HANGUL SYLLABLE JYOG..HANGUL SYLLABLE JYOH + 51453 <= code && code <= 51479 || // Lo [27] HANGUL SYLLABLE JUG..HANGUL SYLLABLE JUH + 51481 <= code && code <= 51507 || // Lo [27] HANGUL SYLLABLE JWEOG..HANGUL SYLLABLE JWEOH + 51509 <= code && code <= 51535 || // Lo [27] HANGUL SYLLABLE JWEG..HANGUL SYLLABLE JWEH + 51537 <= code && code <= 51563 || // Lo [27] HANGUL SYLLABLE JWIG..HANGUL SYLLABLE JWIH + 51565 <= code && code <= 51591 || // Lo [27] HANGUL SYLLABLE JYUG..HANGUL SYLLABLE JYUH + 51593 <= code && code <= 51619 || // Lo [27] HANGUL SYLLABLE JEUG..HANGUL SYLLABLE JEUH + 51621 <= code && code <= 51647 || // Lo [27] HANGUL SYLLABLE JYIG..HANGUL SYLLABLE JYIH + 51649 <= code && code <= 51675 || // Lo [27] HANGUL SYLLABLE JIG..HANGUL SYLLABLE JIH + 51677 <= code && code <= 51703 || // Lo [27] HANGUL SYLLABLE JJAG..HANGUL SYLLABLE JJAH + 51705 <= code && code <= 51731 || // Lo [27] HANGUL SYLLABLE JJAEG..HANGUL SYLLABLE JJAEH + 51733 <= code && code <= 51759 || // Lo [27] HANGUL SYLLABLE JJYAG..HANGUL SYLLABLE JJYAH + 51761 <= code && code <= 51787 || // Lo [27] HANGUL SYLLABLE JJYAEG..HANGUL SYLLABLE JJYAEH + 51789 <= code && code <= 51815 || // Lo [27] HANGUL SYLLABLE JJEOG..HANGUL SYLLABLE JJEOH + 51817 <= code && code <= 51843 || // Lo [27] HANGUL SYLLABLE JJEG..HANGUL SYLLABLE JJEH + 51845 <= code && code <= 51871 || // Lo [27] HANGUL SYLLABLE JJYEOG..HANGUL SYLLABLE JJYEOH + 51873 <= code && code <= 51899 || // Lo [27] HANGUL SYLLABLE JJYEG..HANGUL SYLLABLE JJYEH + 51901 <= code && code <= 51927 || // Lo [27] HANGUL SYLLABLE JJOG..HANGUL SYLLABLE JJOH + 51929 <= code && code <= 51955 || // Lo [27] HANGUL SYLLABLE JJWAG..HANGUL SYLLABLE JJWAH + 51957 <= code && code <= 51983 || // Lo [27] HANGUL SYLLABLE JJWAEG..HANGUL SYLLABLE JJWAEH + 51985 <= code && code <= 52011 || // Lo [27] HANGUL SYLLABLE JJOEG..HANGUL SYLLABLE JJOEH + 52013 <= code && code <= 52039 || // Lo [27] HANGUL SYLLABLE JJYOG..HANGUL SYLLABLE JJYOH + 52041 <= code && code <= 52067 || // Lo [27] HANGUL SYLLABLE JJUG..HANGUL SYLLABLE JJUH + 52069 <= code && code <= 52095 || // Lo [27] HANGUL SYLLABLE JJWEOG..HANGUL SYLLABLE JJWEOH + 52097 <= code && code <= 52123 || // Lo [27] HANGUL SYLLABLE JJWEG..HANGUL SYLLABLE JJWEH + 52125 <= code && code <= 52151 || // Lo [27] HANGUL SYLLABLE JJWIG..HANGUL SYLLABLE JJWIH + 52153 <= code && code <= 52179 || // Lo [27] HANGUL SYLLABLE JJYUG..HANGUL SYLLABLE JJYUH + 52181 <= code && code <= 52207 || // Lo [27] HANGUL SYLLABLE JJEUG..HANGUL SYLLABLE JJEUH + 52209 <= code && code <= 52235 || // Lo [27] HANGUL SYLLABLE JJYIG..HANGUL SYLLABLE JJYIH + 52237 <= code && code <= 52263 || // Lo [27] HANGUL SYLLABLE JJIG..HANGUL SYLLABLE JJIH + 52265 <= code && code <= 52291 || // Lo [27] HANGUL SYLLABLE CAG..HANGUL SYLLABLE CAH + 52293 <= code && code <= 52319 || // Lo [27] HANGUL SYLLABLE CAEG..HANGUL SYLLABLE CAEH + 52321 <= code && code <= 52347 || // Lo [27] HANGUL SYLLABLE CYAG..HANGUL SYLLABLE CYAH + 52349 <= code && code <= 52375 || // Lo [27] HANGUL SYLLABLE CYAEG..HANGUL SYLLABLE CYAEH + 52377 <= code && code <= 52403 || // Lo [27] HANGUL SYLLABLE CEOG..HANGUL SYLLABLE CEOH + 52405 <= code && code <= 52431 || // Lo [27] HANGUL SYLLABLE CEG..HANGUL SYLLABLE CEH + 52433 <= code && code <= 52459 || // Lo [27] HANGUL SYLLABLE CYEOG..HANGUL SYLLABLE CYEOH + 52461 <= code && code <= 52487 || // Lo [27] HANGUL SYLLABLE CYEG..HANGUL SYLLABLE CYEH + 52489 <= code && code <= 52515 || // Lo [27] HANGUL SYLLABLE COG..HANGUL SYLLABLE COH + 52517 <= code && code <= 52543 || // Lo [27] HANGUL SYLLABLE CWAG..HANGUL SYLLABLE CWAH + 52545 <= code && code <= 52571 || // Lo [27] HANGUL SYLLABLE CWAEG..HANGUL SYLLABLE CWAEH + 52573 <= code && code <= 52599 || // Lo [27] HANGUL SYLLABLE COEG..HANGUL SYLLABLE COEH + 52601 <= code && code <= 52627 || // Lo [27] HANGUL SYLLABLE CYOG..HANGUL SYLLABLE CYOH + 52629 <= code && code <= 52655 || // Lo [27] HANGUL SYLLABLE CUG..HANGUL SYLLABLE CUH + 52657 <= code && code <= 52683 || // Lo [27] HANGUL SYLLABLE CWEOG..HANGUL SYLLABLE CWEOH + 52685 <= code && code <= 52711 || // Lo [27] HANGUL SYLLABLE CWEG..HANGUL SYLLABLE CWEH + 52713 <= code && code <= 52739 || // Lo [27] HANGUL SYLLABLE CWIG..HANGUL SYLLABLE CWIH + 52741 <= code && code <= 52767 || // Lo [27] HANGUL SYLLABLE CYUG..HANGUL SYLLABLE CYUH + 52769 <= code && code <= 52795 || // Lo [27] HANGUL SYLLABLE CEUG..HANGUL SYLLABLE CEUH + 52797 <= code && code <= 52823 || // Lo [27] HANGUL SYLLABLE CYIG..HANGUL SYLLABLE CYIH + 52825 <= code && code <= 52851 || // Lo [27] HANGUL SYLLABLE CIG..HANGUL SYLLABLE CIH + 52853 <= code && code <= 52879 || // Lo [27] HANGUL SYLLABLE KAG..HANGUL SYLLABLE KAH + 52881 <= code && code <= 52907 || // Lo [27] HANGUL SYLLABLE KAEG..HANGUL SYLLABLE KAEH + 52909 <= code && code <= 52935 || // Lo [27] HANGUL SYLLABLE KYAG..HANGUL SYLLABLE KYAH + 52937 <= code && code <= 52963 || // Lo [27] HANGUL SYLLABLE KYAEG..HANGUL SYLLABLE KYAEH + 52965 <= code && code <= 52991 || // Lo [27] HANGUL SYLLABLE KEOG..HANGUL SYLLABLE KEOH + 52993 <= code && code <= 53019 || // Lo [27] HANGUL SYLLABLE KEG..HANGUL SYLLABLE KEH + 53021 <= code && code <= 53047 || // Lo [27] HANGUL SYLLABLE KYEOG..HANGUL SYLLABLE KYEOH + 53049 <= code && code <= 53075 || // Lo [27] HANGUL SYLLABLE KYEG..HANGUL SYLLABLE KYEH + 53077 <= code && code <= 53103 || // Lo [27] HANGUL SYLLABLE KOG..HANGUL SYLLABLE KOH + 53105 <= code && code <= 53131 || // Lo [27] HANGUL SYLLABLE KWAG..HANGUL SYLLABLE KWAH + 53133 <= code && code <= 53159 || // Lo [27] HANGUL SYLLABLE KWAEG..HANGUL SYLLABLE KWAEH + 53161 <= code && code <= 53187 || // Lo [27] HANGUL SYLLABLE KOEG..HANGUL SYLLABLE KOEH + 53189 <= code && code <= 53215 || // Lo [27] HANGUL SYLLABLE KYOG..HANGUL SYLLABLE KYOH + 53217 <= code && code <= 53243 || // Lo [27] HANGUL SYLLABLE KUG..HANGUL SYLLABLE KUH + 53245 <= code && code <= 53271 || // Lo [27] HANGUL SYLLABLE KWEOG..HANGUL SYLLABLE KWEOH + 53273 <= code && code <= 53299 || // Lo [27] HANGUL SYLLABLE KWEG..HANGUL SYLLABLE KWEH + 53301 <= code && code <= 53327 || // Lo [27] HANGUL SYLLABLE KWIG..HANGUL SYLLABLE KWIH + 53329 <= code && code <= 53355 || // Lo [27] HANGUL SYLLABLE KYUG..HANGUL SYLLABLE KYUH + 53357 <= code && code <= 53383 || // Lo [27] HANGUL SYLLABLE KEUG..HANGUL SYLLABLE KEUH + 53385 <= code && code <= 53411 || // Lo [27] HANGUL SYLLABLE KYIG..HANGUL SYLLABLE KYIH + 53413 <= code && code <= 53439 || // Lo [27] HANGUL SYLLABLE KIG..HANGUL SYLLABLE KIH + 53441 <= code && code <= 53467 || // Lo [27] HANGUL SYLLABLE TAG..HANGUL SYLLABLE TAH + 53469 <= code && code <= 53495 || // Lo [27] HANGUL SYLLABLE TAEG..HANGUL SYLLABLE TAEH + 53497 <= code && code <= 53523 || // Lo [27] HANGUL SYLLABLE TYAG..HANGUL SYLLABLE TYAH + 53525 <= code && code <= 53551 || // Lo [27] HANGUL SYLLABLE TYAEG..HANGUL SYLLABLE TYAEH + 53553 <= code && code <= 53579 || // Lo [27] HANGUL SYLLABLE TEOG..HANGUL SYLLABLE TEOH + 53581 <= code && code <= 53607 || // Lo [27] HANGUL SYLLABLE TEG..HANGUL SYLLABLE TEH + 53609 <= code && code <= 53635 || // Lo [27] HANGUL SYLLABLE TYEOG..HANGUL SYLLABLE TYEOH + 53637 <= code && code <= 53663 || // Lo [27] HANGUL SYLLABLE TYEG..HANGUL SYLLABLE TYEH + 53665 <= code && code <= 53691 || // Lo [27] HANGUL SYLLABLE TOG..HANGUL SYLLABLE TOH + 53693 <= code && code <= 53719 || // Lo [27] HANGUL SYLLABLE TWAG..HANGUL SYLLABLE TWAH + 53721 <= code && code <= 53747 || // Lo [27] HANGUL SYLLABLE TWAEG..HANGUL SYLLABLE TWAEH + 53749 <= code && code <= 53775 || // Lo [27] HANGUL SYLLABLE TOEG..HANGUL SYLLABLE TOEH + 53777 <= code && code <= 53803 || // Lo [27] HANGUL SYLLABLE TYOG..HANGUL SYLLABLE TYOH + 53805 <= code && code <= 53831 || // Lo [27] HANGUL SYLLABLE TUG..HANGUL SYLLABLE TUH + 53833 <= code && code <= 53859 || // Lo [27] HANGUL SYLLABLE TWEOG..HANGUL SYLLABLE TWEOH + 53861 <= code && code <= 53887 || // Lo [27] HANGUL SYLLABLE TWEG..HANGUL SYLLABLE TWEH + 53889 <= code && code <= 53915 || // Lo [27] HANGUL SYLLABLE TWIG..HANGUL SYLLABLE TWIH + 53917 <= code && code <= 53943 || // Lo [27] HANGUL SYLLABLE TYUG..HANGUL SYLLABLE TYUH + 53945 <= code && code <= 53971 || // Lo [27] HANGUL SYLLABLE TEUG..HANGUL SYLLABLE TEUH + 53973 <= code && code <= 53999 || // Lo [27] HANGUL SYLLABLE TYIG..HANGUL SYLLABLE TYIH + 54001 <= code && code <= 54027 || // Lo [27] HANGUL SYLLABLE TIG..HANGUL SYLLABLE TIH + 54029 <= code && code <= 54055 || // Lo [27] HANGUL SYLLABLE PAG..HANGUL SYLLABLE PAH + 54057 <= code && code <= 54083 || // Lo [27] HANGUL SYLLABLE PAEG..HANGUL SYLLABLE PAEH + 54085 <= code && code <= 54111 || // Lo [27] HANGUL SYLLABLE PYAG..HANGUL SYLLABLE PYAH + 54113 <= code && code <= 54139 || // Lo [27] HANGUL SYLLABLE PYAEG..HANGUL SYLLABLE PYAEH + 54141 <= code && code <= 54167 || // Lo [27] HANGUL SYLLABLE PEOG..HANGUL SYLLABLE PEOH + 54169 <= code && code <= 54195 || // Lo [27] HANGUL SYLLABLE PEG..HANGUL SYLLABLE PEH + 54197 <= code && code <= 54223 || // Lo [27] HANGUL SYLLABLE PYEOG..HANGUL SYLLABLE PYEOH + 54225 <= code && code <= 54251 || // Lo [27] HANGUL SYLLABLE PYEG..HANGUL SYLLABLE PYEH + 54253 <= code && code <= 54279 || // Lo [27] HANGUL SYLLABLE POG..HANGUL SYLLABLE POH + 54281 <= code && code <= 54307 || // Lo [27] HANGUL SYLLABLE PWAG..HANGUL SYLLABLE PWAH + 54309 <= code && code <= 54335 || // Lo [27] HANGUL SYLLABLE PWAEG..HANGUL SYLLABLE PWAEH + 54337 <= code && code <= 54363 || // Lo [27] HANGUL SYLLABLE POEG..HANGUL SYLLABLE POEH + 54365 <= code && code <= 54391 || // Lo [27] HANGUL SYLLABLE PYOG..HANGUL SYLLABLE PYOH + 54393 <= code && code <= 54419 || // Lo [27] HANGUL SYLLABLE PUG..HANGUL SYLLABLE PUH + 54421 <= code && code <= 54447 || // Lo [27] HANGUL SYLLABLE PWEOG..HANGUL SYLLABLE PWEOH + 54449 <= code && code <= 54475 || // Lo [27] HANGUL SYLLABLE PWEG..HANGUL SYLLABLE PWEH + 54477 <= code && code <= 54503 || // Lo [27] HANGUL SYLLABLE PWIG..HANGUL SYLLABLE PWIH + 54505 <= code && code <= 54531 || // Lo [27] HANGUL SYLLABLE PYUG..HANGUL SYLLABLE PYUH + 54533 <= code && code <= 54559 || // Lo [27] HANGUL SYLLABLE PEUG..HANGUL SYLLABLE PEUH + 54561 <= code && code <= 54587 || // Lo [27] HANGUL SYLLABLE PYIG..HANGUL SYLLABLE PYIH + 54589 <= code && code <= 54615 || // Lo [27] HANGUL SYLLABLE PIG..HANGUL SYLLABLE PIH + 54617 <= code && code <= 54643 || // Lo [27] HANGUL SYLLABLE HAG..HANGUL SYLLABLE HAH + 54645 <= code && code <= 54671 || // Lo [27] HANGUL SYLLABLE HAEG..HANGUL SYLLABLE HAEH + 54673 <= code && code <= 54699 || // Lo [27] HANGUL SYLLABLE HYAG..HANGUL SYLLABLE HYAH + 54701 <= code && code <= 54727 || // Lo [27] HANGUL SYLLABLE HYAEG..HANGUL SYLLABLE HYAEH + 54729 <= code && code <= 54755 || // Lo [27] HANGUL SYLLABLE HEOG..HANGUL SYLLABLE HEOH + 54757 <= code && code <= 54783 || // Lo [27] HANGUL SYLLABLE HEG..HANGUL SYLLABLE HEH + 54785 <= code && code <= 54811 || // Lo [27] HANGUL SYLLABLE HYEOG..HANGUL SYLLABLE HYEOH + 54813 <= code && code <= 54839 || // Lo [27] HANGUL SYLLABLE HYEG..HANGUL SYLLABLE HYEH + 54841 <= code && code <= 54867 || // Lo [27] HANGUL SYLLABLE HOG..HANGUL SYLLABLE HOH + 54869 <= code && code <= 54895 || // Lo [27] HANGUL SYLLABLE HWAG..HANGUL SYLLABLE HWAH + 54897 <= code && code <= 54923 || // Lo [27] HANGUL SYLLABLE HWAEG..HANGUL SYLLABLE HWAEH + 54925 <= code && code <= 54951 || // Lo [27] HANGUL SYLLABLE HOEG..HANGUL SYLLABLE HOEH + 54953 <= code && code <= 54979 || // Lo [27] HANGUL SYLLABLE HYOG..HANGUL SYLLABLE HYOH + 54981 <= code && code <= 55007 || // Lo [27] HANGUL SYLLABLE HUG..HANGUL SYLLABLE HUH + 55009 <= code && code <= 55035 || // Lo [27] HANGUL SYLLABLE HWEOG..HANGUL SYLLABLE HWEOH + 55037 <= code && code <= 55063 || // Lo [27] HANGUL SYLLABLE HWEG..HANGUL SYLLABLE HWEH + 55065 <= code && code <= 55091 || // Lo [27] HANGUL SYLLABLE HWIG..HANGUL SYLLABLE HWIH + 55093 <= code && code <= 55119 || // Lo [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH + 55121 <= code && code <= 55147 || // Lo [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH + 55149 <= code && code <= 55175 || // Lo [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH + 55177 <= code && code <= 55203) { + return LVT; + } + if (9757 == code || // So WHITE UP POINTING INDEX + 9977 == code || // So PERSON WITH BALL + 9994 <= code && code <= 9997 || // So [4] RAISED FIST..WRITING HAND + 127877 == code || // So FATHER CHRISTMAS + 127938 <= code && code <= 127940 || // So [3] SNOWBOARDER..SURFER + 127943 == code || // So HORSE RACING + 127946 <= code && code <= 127948 || // So [3] SWIMMER..GOLFER + 128066 <= code && code <= 128067 || // So [2] EAR..NOSE + 128070 <= code && code <= 128080 || // So [11] WHITE UP POINTING BACKHAND INDEX..OPEN HANDS SIGN + 128110 == code || // So POLICE OFFICER + 128112 <= code && code <= 128120 || // So [9] BRIDE WITH VEIL..PRINCESS + 128124 == code || // So BABY ANGEL + 128129 <= code && code <= 128131 || // So [3] INFORMATION DESK PERSON..DANCER + 128133 <= code && code <= 128135 || // So [3] NAIL POLISH..HAIRCUT + 128170 == code || // So FLEXED BICEPS + 128372 <= code && code <= 128373 || // So [2] MAN IN BUSINESS SUIT LEVITATING..SLEUTH OR SPY + 128378 == code || // So MAN DANCING + 128400 == code || // So RAISED HAND WITH FINGERS SPLAYED + 128405 <= code && code <= 128406 || // So [2] REVERSED HAND WITH MIDDLE FINGER EXTENDED..RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS + 128581 <= code && code <= 128583 || // So [3] FACE WITH NO GOOD GESTURE..PERSON BOWING DEEPLY + 128587 <= code && code <= 128591 || // So [5] HAPPY PERSON RAISING ONE HAND..PERSON WITH FOLDED HANDS + 128675 == code || // So ROWBOAT + 128692 <= code && code <= 128694 || // So [3] BICYCLIST..PEDESTRIAN + 128704 == code || // So BATH + 128716 == code || // So SLEEPING ACCOMMODATION + 129304 <= code && code <= 129308 || // So [5] SIGN OF THE HORNS..RIGHT-FACING FIST + 129310 <= code && code <= 129311 || // So [2] HAND WITH INDEX AND MIDDLE FINGERS CROSSED..I LOVE YOU HAND SIGN + 129318 == code || // So FACE PALM + 129328 <= code && code <= 129337 || // So [10] PREGNANT WOMAN..JUGGLING + 129341 <= code && code <= 129342 || // So [2] WATER POLO..HANDBALL + 129489 <= code && code <= 129501) { + return E_Base; + } + if (127995 <= code && code <= 127999) { + return E_Modifier; + } + if (8205 == code) { + return ZWJ; + } + if (9792 == code || // So FEMALE SIGN + 9794 == code || // So MALE SIGN + 9877 <= code && code <= 9878 || // So [2] STAFF OF AESCULAPIUS..SCALES + 9992 == code || // So AIRPLANE + 10084 == code || // So HEAVY BLACK HEART + 127752 == code || // So RAINBOW + 127806 == code || // So EAR OF RICE + 127859 == code || // So COOKING + 127891 == code || // So GRADUATION CAP + 127908 == code || // So MICROPHONE + 127912 == code || // So ARTIST PALETTE + 127979 == code || // So SCHOOL + 127981 == code || // So FACTORY + 128139 == code || // So KISS MARK + 128187 <= code && code <= 128188 || // So [2] PERSONAL COMPUTER..BRIEFCASE + 128295 == code || // So WRENCH + 128300 == code || // So MICROSCOPE + 128488 == code || // So LEFT SPEECH BUBBLE + 128640 == code || // So ROCKET + 128658 == code) { + return Glue_After_Zwj; + } + if (128102 <= code && code <= 128105) { + return E_Base_GAZ; + } + return Other; + } + return this; + } + if (typeof module2 != "undefined" && module2.exports) { + module2.exports = GraphemeSplitter; } - module2.exports = mapCacheClear; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js -var require_isKeyable = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js"(exports2, module2) { - function isKeyable(value) { - var type = typeof value; - return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; +// ../node_modules/.pnpm/@arcanis+slice-ansi@1.1.1/node_modules/@arcanis/slice-ansi/index.js +var require_slice_ansi2 = __commonJS({ + "../node_modules/.pnpm/@arcanis+slice-ansi@1.1.1/node_modules/@arcanis/slice-ansi/index.js"(exports2, module2) { + var ANSI_SEQUENCE = /^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/; + var splitGraphemes; + function getSplitter() { + if (splitGraphemes) + return splitGraphemes; + if (typeof Intl.Segmenter !== `undefined`) { + const segmenter = new Intl.Segmenter(`en`, { granularity: `grapheme` }); + return splitGraphemes = (text) => Array.from(segmenter.segment(text), ({ segment }) => segment); + } else { + const GraphemeSplitter = require_grapheme_splitter(); + const splitter = new GraphemeSplitter(); + return splitGraphemes = (text) => splitter.splitGraphemes(text); + } } - module2.exports = isKeyable; + module2.exports = (orig, at = 0, until = orig.length) => { + if (at < 0 || until < 0) + throw new RangeError(`Negative indices aren't supported by this implementation`); + const length = until - at; + let output = ``; + let skipped = 0; + let visible = 0; + while (orig.length > 0) { + const lookup = orig.match(ANSI_SEQUENCE) || [orig, orig, void 0]; + let graphemes = getSplitter()(lookup[1]); + const skipping = Math.min(at - skipped, graphemes.length); + graphemes = graphemes.slice(skipping); + const displaying = Math.min(length - visible, graphemes.length); + output += graphemes.slice(0, displaying).join(``); + skipped += skipping; + visible += displaying; + if (typeof lookup[2] !== `undefined`) + output += lookup[2]; + orig = orig.slice(lookup[0].length); + } + return output; + }; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js -var require_getMapData = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js"(exports2, module2) { - var isKeyable = require_isKeyable(); - function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; - } - module2.exports = getMapData; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/getBorderCharacters.js +var require_getBorderCharacters2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/getBorderCharacters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getBorderCharacters = void 0; + var getBorderCharacters = (name) => { + if (name === "honeywell") { + return { + topBody: "\u2550", + topJoin: "\u2564", + topLeft: "\u2554", + topRight: "\u2557", + bottomBody: "\u2550", + bottomJoin: "\u2567", + bottomLeft: "\u255A", + bottomRight: "\u255D", + bodyLeft: "\u2551", + bodyRight: "\u2551", + bodyJoin: "\u2502", + headerJoin: "\u252C", + joinBody: "\u2500", + joinLeft: "\u255F", + joinRight: "\u2562", + joinJoin: "\u253C", + joinMiddleDown: "\u252C", + joinMiddleUp: "\u2534", + joinMiddleLeft: "\u2524", + joinMiddleRight: "\u251C" + }; + } + if (name === "norc") { + return { + topBody: "\u2500", + topJoin: "\u252C", + topLeft: "\u250C", + topRight: "\u2510", + bottomBody: "\u2500", + bottomJoin: "\u2534", + bottomLeft: "\u2514", + bottomRight: "\u2518", + bodyLeft: "\u2502", + bodyRight: "\u2502", + bodyJoin: "\u2502", + headerJoin: "\u252C", + joinBody: "\u2500", + joinLeft: "\u251C", + joinRight: "\u2524", + joinJoin: "\u253C", + joinMiddleDown: "\u252C", + joinMiddleUp: "\u2534", + joinMiddleLeft: "\u2524", + joinMiddleRight: "\u251C" + }; + } + if (name === "ramac") { + return { + topBody: "-", + topJoin: "+", + topLeft: "+", + topRight: "+", + bottomBody: "-", + bottomJoin: "+", + bottomLeft: "+", + bottomRight: "+", + bodyLeft: "|", + bodyRight: "|", + bodyJoin: "|", + headerJoin: "+", + joinBody: "-", + joinLeft: "|", + joinRight: "|", + joinJoin: "|", + joinMiddleDown: "+", + joinMiddleUp: "+", + joinMiddleLeft: "+", + joinMiddleRight: "+" + }; + } + if (name === "void") { + return { + topBody: "", + topJoin: "", + topLeft: "", + topRight: "", + bottomBody: "", + bottomJoin: "", + bottomLeft: "", + bottomRight: "", + bodyLeft: "", + bodyRight: "", + bodyJoin: "", + headerJoin: "", + joinBody: "", + joinLeft: "", + joinRight: "", + joinJoin: "", + joinMiddleDown: "", + joinMiddleUp: "", + joinMiddleLeft: "", + joinMiddleRight: "" + }; + } + throw new Error('Unknown border template "' + name + '".'); + }; + exports2.getBorderCharacters = getBorderCharacters; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js -var require_mapCacheDelete = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js"(exports2, module2) { - var getMapData = require_getMapData(); - function mapCacheDelete(key) { - var result = getMapData(this, key)["delete"](key); - this.size -= result ? 1 : 0; - return result; - } - module2.exports = mapCacheDelete; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/utils.js +var require_utils14 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/utils.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isCellInRange = exports2.areCellEqual = exports2.calculateRangeCoordinate = exports2.findOriginalRowIndex = exports2.flatten = exports2.extractTruncates = exports2.sumArray = exports2.sequence = exports2.distributeUnevenly = exports2.countSpaceSequence = exports2.groupBySizes = exports2.makeBorderConfig = exports2.splitAnsi = exports2.normalizeString = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi2()); + var string_width_1 = __importDefault4(require_string_width()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var getBorderCharacters_1 = require_getBorderCharacters2(); + var normalizeString = (input) => { + return input.replace(/\r\n/g, "\n"); + }; + exports2.normalizeString = normalizeString; + var splitAnsi = (input) => { + const lengths = (0, strip_ansi_1.default)(input).split("\n").map(string_width_1.default); + const result2 = []; + let startIndex = 0; + lengths.forEach((length) => { + result2.push(length === 0 ? "" : (0, slice_ansi_1.default)(input, startIndex, startIndex + length)); + startIndex += length + 1; + }); + return result2; + }; + exports2.splitAnsi = splitAnsi; + var makeBorderConfig = (border) => { + return { + ...(0, getBorderCharacters_1.getBorderCharacters)("honeywell"), + ...border + }; + }; + exports2.makeBorderConfig = makeBorderConfig; + var groupBySizes = (array, sizes) => { + let startIndex = 0; + return sizes.map((size) => { + const group = array.slice(startIndex, startIndex + size); + startIndex += size; + return group; + }); + }; + exports2.groupBySizes = groupBySizes; + var countSpaceSequence = (input) => { + var _a, _b; + return (_b = (_a = input.match(/\s+/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0; + }; + exports2.countSpaceSequence = countSpaceSequence; + var distributeUnevenly = (sum, length) => { + const result2 = Array.from({ length }).fill(Math.floor(sum / length)); + return result2.map((element, index) => { + return element + (index < sum % length ? 1 : 0); + }); + }; + exports2.distributeUnevenly = distributeUnevenly; + var sequence = (start, end) => { + return Array.from({ length: end - start + 1 }, (_, index) => { + return index + start; + }); + }; + exports2.sequence = sequence; + var sumArray = (array) => { + return array.reduce((accumulator, element) => { + return accumulator + element; + }, 0); + }; + exports2.sumArray = sumArray; + var extractTruncates = (config) => { + return config.columns.map(({ truncate }) => { + return truncate; + }); + }; + exports2.extractTruncates = extractTruncates; + var flatten = (array) => { + return [].concat(...array); + }; + exports2.flatten = flatten; + var findOriginalRowIndex = (mappedRowHeights, mappedRowIndex) => { + const rowIndexMapping = (0, exports2.flatten)(mappedRowHeights.map((height, index) => { + return Array.from({ length: height }, () => { + return index; + }); + })); + return rowIndexMapping[mappedRowIndex]; + }; + exports2.findOriginalRowIndex = findOriginalRowIndex; + var calculateRangeCoordinate = (spanningCellConfig) => { + const { row, col, colSpan = 1, rowSpan = 1 } = spanningCellConfig; + return { + bottomRight: { + col: col + colSpan - 1, + row: row + rowSpan - 1 + }, + topLeft: { + col, + row + } + }; + }; + exports2.calculateRangeCoordinate = calculateRangeCoordinate; + var areCellEqual = (cell1, cell2) => { + return cell1.row === cell2.row && cell1.col === cell2.col; + }; + exports2.areCellEqual = areCellEqual; + var isCellInRange = (cell, { topLeft, bottomRight }) => { + return topLeft.row <= cell.row && cell.row <= bottomRight.row && topLeft.col <= cell.col && cell.col <= bottomRight.col; + }; + exports2.isCellInRange = isCellInRange; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js -var require_mapCacheGet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js"(exports2, module2) { - var getMapData = require_getMapData(); - function mapCacheGet(key) { - return getMapData(this, key).get(key); - } - module2.exports = mapCacheGet; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignString.js +var require_alignString2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignString.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignString = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var utils_1 = require_utils14(); + var alignLeft = (subject, width) => { + return subject + " ".repeat(width); + }; + var alignRight = (subject, width) => { + return " ".repeat(width) + subject; + }; + var alignCenter = (subject, width) => { + return " ".repeat(Math.floor(width / 2)) + subject + " ".repeat(Math.ceil(width / 2)); + }; + var alignJustify = (subject, width) => { + const spaceSequenceCount = (0, utils_1.countSpaceSequence)(subject); + if (spaceSequenceCount === 0) { + return alignLeft(subject, width); + } + const addingSpaces = (0, utils_1.distributeUnevenly)(width, spaceSequenceCount); + if (Math.max(...addingSpaces) > 3) { + return alignLeft(subject, width); + } + let spaceSequenceIndex = 0; + return subject.replace(/\s+/g, (groupSpace) => { + return groupSpace + " ".repeat(addingSpaces[spaceSequenceIndex++]); + }); + }; + var alignString = (subject, containerWidth, alignment) => { + const subjectWidth = (0, string_width_1.default)(subject); + if (subjectWidth === containerWidth) { + return subject; + } + if (subjectWidth > containerWidth) { + throw new Error("Subject parameter value width cannot be greater than the container width."); + } + if (subjectWidth === 0) { + return " ".repeat(containerWidth); + } + const availableWidth = containerWidth - subjectWidth; + if (alignment === "left") { + return alignLeft(subject, availableWidth); + } + if (alignment === "right") { + return alignRight(subject, availableWidth); + } + if (alignment === "justify") { + return alignJustify(subject, availableWidth); + } + return alignCenter(subject, availableWidth); + }; + exports2.alignString = alignString; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js -var require_mapCacheHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js"(exports2, module2) { - var getMapData = require_getMapData(); - function mapCacheHas(key) { - return getMapData(this, key).has(key); - } - module2.exports = mapCacheHas; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignTableData.js +var require_alignTableData2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignTableData = void 0; + var alignString_1 = require_alignString2(); + var alignTableData = (rows, config) => { + return rows.map((row, rowIndex) => { + return row.map((cell, cellIndex) => { + var _a; + const { width, alignment } = config.columns[cellIndex]; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }, { mapped: true }); + if (containingRange) { + return cell; + } + return (0, alignString_1.alignString)(cell, width, alignment); + }); + }); + }; + exports2.alignTableData = alignTableData; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js -var require_mapCacheSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js"(exports2, module2) { - var getMapData = require_getMapData(); - function mapCacheSet(key, value) { - var data = getMapData(this, key), size = data.size; - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; - } - module2.exports = mapCacheSet; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapString.js +var require_wrapString2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapString.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapString = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi2()); + var string_width_1 = __importDefault4(require_string_width()); + var wrapString = (subject, size) => { + let subjectSlice = subject; + const chunks = []; + do { + chunks.push((0, slice_ansi_1.default)(subjectSlice, 0, size)); + subjectSlice = (0, slice_ansi_1.default)(subjectSlice, size).trim(); + } while ((0, string_width_1.default)(subjectSlice)); + return chunks; + }; + exports2.wrapString = wrapString; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js -var require_MapCache = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js"(exports2, module2) { - var mapCacheClear = require_mapCacheClear(); - var mapCacheDelete = require_mapCacheDelete(); - var mapCacheGet = require_mapCacheGet(); - var mapCacheHas = require_mapCacheHas(); - var mapCacheSet = require_mapCacheSet(); - function MapCache(entries) { - var index = -1, length = entries == null ? 0 : entries.length; - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - MapCache.prototype.clear = mapCacheClear; - MapCache.prototype["delete"] = mapCacheDelete; - MapCache.prototype.get = mapCacheGet; - MapCache.prototype.has = mapCacheHas; - MapCache.prototype.set = mapCacheSet; - module2.exports = MapCache; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapWord.js +var require_wrapWord2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapWord.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapWord = void 0; + var slice_ansi_1 = __importDefault4(require_slice_ansi2()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var calculateStringLengths = (input, size) => { + let subject = (0, strip_ansi_1.default)(input); + const chunks = []; + const re = new RegExp("(^.{1," + String(Math.max(size, 1)) + "}(\\s+|$))|(^.{1," + String(Math.max(size - 1, 1)) + "}(\\\\|/|_|\\.|,|;|-))"); + do { + let chunk; + const match = re.exec(subject); + if (match) { + chunk = match[0]; + subject = subject.slice(chunk.length); + const trimmedLength = chunk.trim().length; + const offset = chunk.length - trimmedLength; + chunks.push([trimmedLength, offset]); + } else { + chunk = subject.slice(0, size); + subject = subject.slice(size); + chunks.push([chunk.length, 0]); + } + } while (subject.length); + return chunks; + }; + var wrapWord = (input, size) => { + const result2 = []; + let startIndex = 0; + calculateStringLengths(input, size).forEach(([length, offset]) => { + result2.push((0, slice_ansi_1.default)(input, startIndex, startIndex + length)); + startIndex += length + offset; + }); + return result2; + }; + exports2.wrapWord = wrapWord; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackSet.js -var require_stackSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackSet.js"(exports2, module2) { - var ListCache = require_ListCache(); - var Map2 = require_Map(); - var MapCache = require_MapCache(); - var LARGE_ARRAY_SIZE = 200; - function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { - pairs.push([key, value]); - this.size = ++data.size; - return this; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapCell.js +var require_wrapCell2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/wrapCell.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapCell = void 0; + var utils_1 = require_utils14(); + var wrapString_1 = require_wrapString2(); + var wrapWord_1 = require_wrapWord2(); + var wrapCell = (cellValue, cellWidth, useWrapWord) => { + const cellLines = (0, utils_1.splitAnsi)(cellValue); + for (let lineNr = 0; lineNr < cellLines.length; ) { + let lineChunks; + if (useWrapWord) { + lineChunks = (0, wrapWord_1.wrapWord)(cellLines[lineNr], cellWidth); + } else { + lineChunks = (0, wrapString_1.wrapString)(cellLines[lineNr], cellWidth); } - data = this.__data__ = new MapCache(pairs); + cellLines.splice(lineNr, 1, ...lineChunks); + lineNr += lineChunks.length; } - data.set(key, value); - this.size = data.size; - return this; - } - module2.exports = stackSet; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Stack.js -var require_Stack = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Stack.js"(exports2, module2) { - var ListCache = require_ListCache(); - var stackClear = require_stackClear(); - var stackDelete = require_stackDelete(); - var stackGet = require_stackGet(); - var stackHas = require_stackHas(); - var stackSet = require_stackSet(); - function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; - } - Stack.prototype.clear = stackClear; - Stack.prototype["delete"] = stackDelete; - Stack.prototype.get = stackGet; - Stack.prototype.has = stackHas; - Stack.prototype.set = stackSet; - module2.exports = Stack; + return cellLines; + }; + exports2.wrapCell = wrapCell; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js -var require_setCacheAdd = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js"(exports2, module2) { - var HASH_UNDEFINED = "__lodash_hash_undefined__"; - function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; - } - module2.exports = setCacheAdd; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateCellHeight.js +var require_calculateCellHeight2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateCellHeight.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateCellHeight = void 0; + var wrapCell_1 = require_wrapCell2(); + var calculateCellHeight = (value, columnWidth, useWrapWord = false) => { + return (0, wrapCell_1.wrapCell)(value, columnWidth, useWrapWord).length; + }; + exports2.calculateCellHeight = calculateCellHeight; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js -var require_setCacheHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js"(exports2, module2) { - function setCacheHas(value) { - return this.__data__.has(value); - } - module2.exports = setCacheHas; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateRowHeights.js +var require_calculateRowHeights2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateRowHeights.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateRowHeights = void 0; + var calculateCellHeight_1 = require_calculateCellHeight2(); + var utils_1 = require_utils14(); + var calculateRowHeights = (rows, config) => { + const rowHeights = []; + for (const [rowIndex, row] of rows.entries()) { + let rowHeight = 1; + row.forEach((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }); + if (!containingRange) { + const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord); + rowHeight = Math.max(rowHeight, cellHeight); + return; + } + const { topLeft, bottomRight, height } = containingRange; + if (rowIndex === bottomRight.row) { + const totalOccupiedSpanningCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row)); + const totalHorizontalBorderHeight = bottomRight.row - topLeft.row; + const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => { + var _a2; + return !((_a2 = config.drawHorizontalLine) === null || _a2 === void 0 ? void 0 : _a2.call(config, horizontalBorderIndex, rows.length)); + }).length; + const cellHeight = height - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight; + rowHeight = Math.max(rowHeight, cellHeight); + } + }); + rowHeights.push(rowHeight); + } + return rowHeights; + }; + exports2.calculateRowHeights = calculateRowHeights; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js -var require_SetCache = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js"(exports2, module2) { - var MapCache = require_MapCache(); - var setCacheAdd = require_setCacheAdd(); - var setCacheHas = require_setCacheHas(); - function SetCache(values) { - var index = -1, length = values == null ? 0 : values.length; - this.__data__ = new MapCache(); - while (++index < length) { - this.add(values[index]); +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawContent.js +var require_drawContent2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawContent.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawContent = void 0; + var drawContent = (parameters) => { + const { contents, separatorGetter, drawSeparator, spanningCellManager, rowIndex, elementType } = parameters; + const contentSize = contents.length; + const result2 = []; + if (drawSeparator(0, contentSize)) { + result2.push(separatorGetter(0, contentSize)); } - } - SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; - SetCache.prototype.has = setCacheHas; - module2.exports = SetCache; + contents.forEach((content, contentIndex) => { + if (!elementType || elementType === "border" || elementType === "row") { + result2.push(content); + } + if (elementType === "cell" && rowIndex === void 0) { + result2.push(content); + } + if (elementType === "cell" && rowIndex !== void 0) { + const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({ + col: contentIndex, + row: rowIndex + }); + if (!containingRange || contentIndex === containingRange.topLeft.col) { + result2.push(content); + } + } + if (contentIndex + 1 < contentSize && drawSeparator(contentIndex + 1, contentSize)) { + const separator = separatorGetter(contentIndex + 1, contentSize); + if (elementType === "cell" && rowIndex !== void 0) { + const currentCell = { + col: contentIndex + 1, + row: rowIndex + }; + const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange(currentCell); + if (!containingRange || containingRange.topLeft.col === currentCell.col) { + result2.push(separator); + } + } else { + result2.push(separator); + } + } + }); + if (drawSeparator(contentSize, contentSize)) { + result2.push(separatorGetter(contentSize, contentSize)); + } + return result2.join(""); + }; + exports2.drawContent = drawContent; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arraySome.js -var require_arraySome = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arraySome.js"(exports2, module2) { - function arraySome(array, predicate) { - var index = -1, length = array == null ? 0 : array.length; - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawBorder.js +var require_drawBorder2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawBorder.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createTableBorderGetter = exports2.drawBorderBottom = exports2.drawBorderJoin = exports2.drawBorderTop = exports2.drawBorder = exports2.createSeparatorGetter = exports2.drawBorderSegments = void 0; + var drawContent_1 = require_drawContent2(); + var drawBorderSegments = (columnWidths, parameters) => { + const { separator, horizontalBorderIndex, spanningCellManager } = parameters; + return columnWidths.map((columnWidth, columnIndex) => { + const normalSegment = separator.body.repeat(columnWidth); + if (horizontalBorderIndex === void 0) { + return normalSegment; + } + const range = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({ + col: columnIndex, + row: horizontalBorderIndex + }); + if (!range) { + return normalSegment; + } + const { topLeft } = range; + if (horizontalBorderIndex === topLeft.row) { + return normalSegment; + } + if (columnIndex !== topLeft.col) { + return ""; + } + return range.extractBorderContent(horizontalBorderIndex); + }); + }; + exports2.drawBorderSegments = drawBorderSegments; + var createSeparatorGetter = (dependencies) => { + const { separator, spanningCellManager, horizontalBorderIndex, rowCount } = dependencies; + return (verticalBorderIndex, columnCount) => { + const inSameRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.inSameRange; + if (horizontalBorderIndex !== void 0 && inSameRange) { + const topCell = { + col: verticalBorderIndex, + row: horizontalBorderIndex - 1 + }; + const leftCell = { + col: verticalBorderIndex - 1, + row: horizontalBorderIndex + }; + const oppositeCell = { + col: verticalBorderIndex - 1, + row: horizontalBorderIndex - 1 + }; + const currentCell = { + col: verticalBorderIndex, + row: horizontalBorderIndex + }; + const pairs = [ + [oppositeCell, topCell], + [topCell, currentCell], + [currentCell, leftCell], + [leftCell, oppositeCell] + ]; + if (verticalBorderIndex === 0) { + if (inSameRange(currentCell, topCell) && separator.bodyJoinOuter) { + return separator.bodyJoinOuter; + } + return separator.left; + } + if (verticalBorderIndex === columnCount) { + if (inSameRange(oppositeCell, leftCell) && separator.bodyJoinOuter) { + return separator.bodyJoinOuter; + } + return separator.right; + } + if (horizontalBorderIndex === 0) { + if (inSameRange(currentCell, leftCell)) { + return separator.body; + } + return separator.join; + } + if (horizontalBorderIndex === rowCount) { + if (inSameRange(topCell, oppositeCell)) { + return separator.body; + } + return separator.join; + } + const sameRangeCount = pairs.map((pair) => { + return inSameRange(...pair); + }).filter(Boolean).length; + if (sameRangeCount === 0) { + return separator.join; + } + if (sameRangeCount === 4) { + return ""; + } + if (sameRangeCount === 2) { + if (inSameRange(...pairs[1]) && inSameRange(...pairs[3]) && separator.bodyJoinInner) { + return separator.bodyJoinInner; + } + return separator.body; + } + if (sameRangeCount === 1) { + if (!separator.joinRight || !separator.joinLeft || !separator.joinUp || !separator.joinDown) { + throw new Error(`Can not get border separator for position [${horizontalBorderIndex}, ${verticalBorderIndex}]`); + } + if (inSameRange(...pairs[0])) { + return separator.joinDown; + } + if (inSameRange(...pairs[1])) { + return separator.joinLeft; + } + if (inSameRange(...pairs[2])) { + return separator.joinUp; + } + return separator.joinRight; + } + throw new Error("Invalid case"); + } + if (verticalBorderIndex === 0) { + return separator.left; + } + if (verticalBorderIndex === columnCount) { + return separator.right; } + return separator.join; + }; + }; + exports2.createSeparatorGetter = createSeparatorGetter; + var drawBorder = (columnWidths, parameters) => { + const borderSegments = (0, exports2.drawBorderSegments)(columnWidths, parameters); + const { drawVerticalLine, horizontalBorderIndex, spanningCellManager } = parameters; + return (0, drawContent_1.drawContent)({ + contents: borderSegments, + drawSeparator: drawVerticalLine, + elementType: "border", + rowIndex: horizontalBorderIndex, + separatorGetter: (0, exports2.createSeparatorGetter)(parameters), + spanningCellManager + }) + "\n"; + }; + exports2.drawBorder = drawBorder; + var drawBorderTop = (columnWidths, parameters) => { + const { border } = parameters; + const result2 = (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.topBody, + join: border.topJoin, + left: border.topLeft, + right: border.topRight + } + }); + if (result2 === "\n") { + return ""; } - return false; - } - module2.exports = arraySome; + return result2; + }; + exports2.drawBorderTop = drawBorderTop; + var drawBorderJoin = (columnWidths, parameters) => { + const { border } = parameters; + return (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.joinBody, + bodyJoinInner: border.bodyJoin, + bodyJoinOuter: border.bodyLeft, + join: border.joinJoin, + joinDown: border.joinMiddleDown, + joinLeft: border.joinMiddleLeft, + joinRight: border.joinMiddleRight, + joinUp: border.joinMiddleUp, + left: border.joinLeft, + right: border.joinRight + } + }); + }; + exports2.drawBorderJoin = drawBorderJoin; + var drawBorderBottom = (columnWidths, parameters) => { + const { border } = parameters; + return (0, exports2.drawBorder)(columnWidths, { + ...parameters, + separator: { + body: border.bottomBody, + join: border.bottomJoin, + left: border.bottomLeft, + right: border.bottomRight + } + }); + }; + exports2.drawBorderBottom = drawBorderBottom; + var createTableBorderGetter = (columnWidths, parameters) => { + return (index, size) => { + const drawBorderParameters = { + ...parameters, + horizontalBorderIndex: index + }; + if (index === 0) { + return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters); + } else if (index === size) { + return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters); + } + return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters); + }; + }; + exports2.createTableBorderGetter = createTableBorderGetter; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js -var require_cacheHas = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js"(exports2, module2) { - function cacheHas(cache, key) { - return cache.has(key); - } - module2.exports = cacheHas; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawRow.js +var require_drawRow2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawRow.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawRow = void 0; + var drawContent_1 = require_drawContent2(); + var drawRow = (row, config) => { + const { border, drawVerticalLine, rowIndex, spanningCellManager } = config; + return (0, drawContent_1.drawContent)({ + contents: row, + drawSeparator: drawVerticalLine, + elementType: "cell", + rowIndex, + separatorGetter: (index, columnCount) => { + if (index === 0) { + return border.bodyLeft; + } + if (index === columnCount) { + return border.bodyRight; + } + return border.bodyJoin; + }, + spanningCellManager + }) + "\n"; + }; + exports2.drawRow = drawRow; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalArrays.js -var require_equalArrays = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalArrays.js"(exports2, module2) { - var SetCache = require_SetCache(); - var arraySome = require_arraySome(); - var cacheHas = require_cacheHas(); - var COMPARE_PARTIAL_FLAG = 1; - var COMPARE_UNORDERED_FLAG = 2; - function equalArrays(array, other, bitmask, customizer, equalFunc, stack2) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/generated/validators.js +var require_validators2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/generated/validators.js"(exports2) { + "use strict"; + exports2["config.json"] = validate43; + var schema13 = { + "$id": "config.json", + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "border": { + "$ref": "shared.json#/definitions/borders" + }, + "header": { + "type": "object", + "properties": { + "content": { + "type": "string" + }, + "alignment": { + "$ref": "shared.json#/definitions/alignment" + }, + "wrapWord": { + "type": "boolean" + }, + "truncate": { + "type": "integer" + }, + "paddingLeft": { + "type": "integer" + }, + "paddingRight": { + "type": "integer" + } + }, + "required": ["content"], + "additionalProperties": false + }, + "columns": { + "$ref": "shared.json#/definitions/columns" + }, + "columnDefault": { + "$ref": "shared.json#/definitions/column" + }, + "drawVerticalLine": { + "typeof": "function" + }, + "drawHorizontalLine": { + "typeof": "function" + }, + "singleLine": { + "typeof": "boolean" + }, + "spanningCells": { + "type": "array", + "items": { + "type": "object", + "properties": { + "col": { + "type": "integer", + "minimum": 0 + }, + "row": { + "type": "integer", + "minimum": 0 + }, + "colSpan": { + "type": "integer", + "minimum": 1 + }, + "rowSpan": { + "type": "integer", + "minimum": 1 + }, + "alignment": { + "$ref": "shared.json#/definitions/alignment" + }, + "verticalAlignment": { + "$ref": "shared.json#/definitions/verticalAlignment" + }, + "wrapWord": { + "type": "boolean" + }, + "truncate": { + "type": "integer" + }, + "paddingLeft": { + "type": "integer" + }, + "paddingRight": { + "type": "integer" + } + }, + "required": ["row", "col"], + "additionalProperties": false + } + } + }, + "additionalProperties": false + }; + var schema15 = { + "type": "object", + "properties": { + "topBody": { + "$ref": "#/definitions/border" + }, + "topJoin": { + "$ref": "#/definitions/border" + }, + "topLeft": { + "$ref": "#/definitions/border" + }, + "topRight": { + "$ref": "#/definitions/border" + }, + "bottomBody": { + "$ref": "#/definitions/border" + }, + "bottomJoin": { + "$ref": "#/definitions/border" + }, + "bottomLeft": { + "$ref": "#/definitions/border" + }, + "bottomRight": { + "$ref": "#/definitions/border" + }, + "bodyLeft": { + "$ref": "#/definitions/border" + }, + "bodyRight": { + "$ref": "#/definitions/border" + }, + "bodyJoin": { + "$ref": "#/definitions/border" + }, + "headerJoin": { + "$ref": "#/definitions/border" + }, + "joinBody": { + "$ref": "#/definitions/border" + }, + "joinLeft": { + "$ref": "#/definitions/border" + }, + "joinRight": { + "$ref": "#/definitions/border" + }, + "joinJoin": { + "$ref": "#/definitions/border" + }, + "joinMiddleUp": { + "$ref": "#/definitions/border" + }, + "joinMiddleDown": { + "$ref": "#/definitions/border" + }, + "joinMiddleLeft": { + "$ref": "#/definitions/border" + }, + "joinMiddleRight": { + "$ref": "#/definitions/border" + } + }, + "additionalProperties": false + }; + var func4 = Object.prototype.hasOwnProperty; + function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + validate46.errors = vErrors; + return errors === 0; + } + function validate45(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!func4.call(schema15.properties, key0)) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.topBody !== void 0) { + if (!validate46(data.topBody, { + instancePath: instancePath + "/topBody", + parentData: data, + parentDataProperty: "topBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topJoin !== void 0) { + if (!validate46(data.topJoin, { + instancePath: instancePath + "/topJoin", + parentData: data, + parentDataProperty: "topJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topLeft !== void 0) { + if (!validate46(data.topLeft, { + instancePath: instancePath + "/topLeft", + parentData: data, + parentDataProperty: "topLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topRight !== void 0) { + if (!validate46(data.topRight, { + instancePath: instancePath + "/topRight", + parentData: data, + parentDataProperty: "topRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomBody !== void 0) { + if (!validate46(data.bottomBody, { + instancePath: instancePath + "/bottomBody", + parentData: data, + parentDataProperty: "bottomBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomJoin !== void 0) { + if (!validate46(data.bottomJoin, { + instancePath: instancePath + "/bottomJoin", + parentData: data, + parentDataProperty: "bottomJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomLeft !== void 0) { + if (!validate46(data.bottomLeft, { + instancePath: instancePath + "/bottomLeft", + parentData: data, + parentDataProperty: "bottomLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomRight !== void 0) { + if (!validate46(data.bottomRight, { + instancePath: instancePath + "/bottomRight", + parentData: data, + parentDataProperty: "bottomRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyLeft !== void 0) { + if (!validate46(data.bodyLeft, { + instancePath: instancePath + "/bodyLeft", + parentData: data, + parentDataProperty: "bodyLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyRight !== void 0) { + if (!validate46(data.bodyRight, { + instancePath: instancePath + "/bodyRight", + parentData: data, + parentDataProperty: "bodyRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyJoin !== void 0) { + if (!validate46(data.bodyJoin, { + instancePath: instancePath + "/bodyJoin", + parentData: data, + parentDataProperty: "bodyJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.headerJoin !== void 0) { + if (!validate46(data.headerJoin, { + instancePath: instancePath + "/headerJoin", + parentData: data, + parentDataProperty: "headerJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinBody !== void 0) { + if (!validate46(data.joinBody, { + instancePath: instancePath + "/joinBody", + parentData: data, + parentDataProperty: "joinBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinLeft !== void 0) { + if (!validate46(data.joinLeft, { + instancePath: instancePath + "/joinLeft", + parentData: data, + parentDataProperty: "joinLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinRight !== void 0) { + if (!validate46(data.joinRight, { + instancePath: instancePath + "/joinRight", + parentData: data, + parentDataProperty: "joinRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinJoin !== void 0) { + if (!validate46(data.joinJoin, { + instancePath: instancePath + "/joinJoin", + parentData: data, + parentDataProperty: "joinJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleUp !== void 0) { + if (!validate46(data.joinMiddleUp, { + instancePath: instancePath + "/joinMiddleUp", + parentData: data, + parentDataProperty: "joinMiddleUp", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleDown !== void 0) { + if (!validate46(data.joinMiddleDown, { + instancePath: instancePath + "/joinMiddleDown", + parentData: data, + parentDataProperty: "joinMiddleDown", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleLeft !== void 0) { + if (!validate46(data.joinMiddleLeft, { + instancePath: instancePath + "/joinMiddleLeft", + parentData: data, + parentDataProperty: "joinMiddleLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleRight !== void 0) { + if (!validate46(data.joinMiddleRight, { + instancePath: instancePath + "/joinMiddleRight", + parentData: data, + parentDataProperty: "joinMiddleRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate45.errors = vErrors; + return errors === 0; + } + var schema17 = { + "type": "string", + "enum": ["left", "right", "center", "justify"] + }; + function validate68(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } - var arrStacked = stack2.get(array); - var othStacked = stack2.get(other); - if (arrStacked && othStacked) { - return arrStacked == other && othStacked == array; + if (!(data === "left" || data === "right" || data === "center" || data === "justify")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema17.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate68.errors = vErrors; + return errors === 0; + } + var pattern0 = new RegExp("^[0-9]+$", "u"); + function validate72(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } - var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : void 0; - stack2.set(array, other); - stack2.set(other, array); - while (++index < arrLength) { - var arrValue = array[index], othValue = other[index]; - if (customizer) { - var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack2) : customizer(arrValue, othValue, index, array, other, stack2); + if (!(data === "left" || data === "right" || data === "center" || data === "justify")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema17.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate72.errors = vErrors; + return errors === 0; + } + var schema21 = { + "type": "string", + "enum": ["top", "middle", "bottom"] + }; + function validate74(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); } - if (compared !== void 0) { - if (compared) { - continue; + errors++; + } + if (!(data === "top" || data === "middle" || data === "bottom")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema21.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate74.errors = vErrors; + return errors === 0; + } + function validate71(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } - result = false; - break; } - if (seen) { - if (!arraySome(other, function(othValue2, othIndex) { - if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack2))) { - return seen.push(othIndex); + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } + } + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } + } + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + } + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + validate71.errors = vErrors; + return errors === 0; + } + function validate70(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + const _errs0 = errors; + let valid0 = false; + let passing0 = null; + const _errs1 = errors; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!pattern0.test(key0)) { + const err0 = { + instancePath, + schemaPath: "#/oneOf/0/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + for (const key1 in data) { + if (pattern0.test(key1)) { + if (!validate71(data[key1], { + instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), + parentData: data, + parentDataProperty: key1, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; } + } + } + } else { + const err1 = { + instancePath, + schemaPath: "#/oneOf/0/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + var _valid0 = _errs1 === errors; + if (_valid0) { + valid0 = true; + passing0 = 0; + } + const _errs5 = errors; + if (Array.isArray(data)) { + const len0 = data.length; + for (let i0 = 0; i0 < len0; i0++) { + if (!validate71(data[i0], { + instancePath: instancePath + "/" + i0, + parentData: data, + parentDataProperty: i0, + rootData })) { - result = false; - break; + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; } - } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack2))) { - result = false; - break; } + } else { + const err2 = { + instancePath, + schemaPath: "#/oneOf/1/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; } - stack2["delete"](array); - stack2["delete"](other); - return result; - } - module2.exports = equalArrays; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Uint8Array.js -var require_Uint8Array = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Uint8Array.js"(exports2, module2) { - var root = require_root(); - var Uint8Array2 = root.Uint8Array; - module2.exports = Uint8Array2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapToArray.js -var require_mapToArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapToArray.js"(exports2, module2) { - function mapToArray(map) { - var index = -1, result = Array(map.size); - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; + var _valid0 = _errs5 === errors; + if (_valid0 && valid0) { + valid0 = false; + passing0 = [passing0, 1]; + } else { + if (_valid0) { + valid0 = true; + passing0 = 1; + } + } + if (!valid0) { + const err3 = { + instancePath, + schemaPath: "#/oneOf", + keyword: "oneOf", + params: { + passingSchemas: passing0 + }, + message: "must match exactly one schema in oneOf" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } else { + errors = _errs0; + if (vErrors !== null) { + if (_errs0) { + vErrors.length = _errs0; + } else { + vErrors = null; + } + } + } + validate70.errors = vErrors; + return errors === 0; } - module2.exports = mapToArray; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js -var require_setToArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js"(exports2, module2) { - function setToArray(set) { - var index = -1, result = Array(set.size); - set.forEach(function(value) { - result[++index] = value; - }); - return result; + function validate79(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } + } + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } + } + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + } + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + validate79.errors = vErrors; + return errors === 0; + } + function validate84(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (typeof data !== "string") { + const err0 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + if (!(data === "top" || data === "middle" || data === "bottom")) { + const err1 = { + instancePath, + schemaPath: "#/enum", + keyword: "enum", + params: { + allowedValues: schema21.enum + }, + message: "must be equal to one of the allowed values" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate84.errors = vErrors; + return errors === 0; } - module2.exports = setToArray; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalByTag.js -var require_equalByTag = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalByTag.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var Uint8Array2 = require_Uint8Array(); - var eq = require_eq2(); - var equalArrays = require_equalArrays(); - var mapToArray = require_mapToArray(); - var setToArray = require_setToArray(); - var COMPARE_PARTIAL_FLAG = 1; - var COMPARE_UNORDERED_FLAG = 2; - var boolTag = "[object Boolean]"; - var dateTag = "[object Date]"; - var errorTag = "[object Error]"; - var mapTag = "[object Map]"; - var numberTag = "[object Number]"; - var regexpTag = "[object RegExp]"; - var setTag = "[object Set]"; - var stringTag = "[object String]"; - var symbolTag = "[object Symbol]"; - var arrayBufferTag = "[object ArrayBuffer]"; - var dataViewTag = "[object DataView]"; - var symbolProto = Symbol2 ? Symbol2.prototype : void 0; - var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; - function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack2) { - switch (tag) { - case dataViewTag: - if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { - return false; + function validate43(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + ; + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "border" || key0 === "header" || key0 === "columns" || key0 === "columnDefault" || key0 === "drawVerticalLine" || key0 === "drawHorizontalLine" || key0 === "singleLine" || key0 === "spanningCells")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } - object = object.buffer; - other = other.buffer; - case arrayBufferTag: - if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { - return false; + } + if (data.border !== void 0) { + if (!validate45(data.border, { + instancePath: instancePath + "/border", + parentData: data, + parentDataProperty: "border", + rootData + })) { + vErrors = vErrors === null ? validate45.errors : vErrors.concat(validate45.errors); + errors = vErrors.length; + } + } + if (data.header !== void 0) { + let data1 = data.header; + if (data1 && typeof data1 == "object" && !Array.isArray(data1)) { + if (data1.content === void 0) { + const err1 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/required", + keyword: "required", + params: { + missingProperty: "content" + }, + message: "must have required property 'content'" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + for (const key1 in data1) { + if (!(key1 === "content" || key1 === "alignment" || key1 === "wrapWord" || key1 === "truncate" || key1 === "paddingLeft" || key1 === "paddingRight")) { + const err2 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key1 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } + if (data1.content !== void 0) { + if (typeof data1.content !== "string") { + const err3 = { + instancePath: instancePath + "/header/content", + schemaPath: "#/properties/header/properties/content/type", + keyword: "type", + params: { + type: "string" + }, + message: "must be string" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + } + if (data1.alignment !== void 0) { + if (!validate68(data1.alignment, { + instancePath: instancePath + "/header/alignment", + parentData: data1, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors); + errors = vErrors.length; + } + } + if (data1.wrapWord !== void 0) { + if (typeof data1.wrapWord !== "boolean") { + const err4 = { + instancePath: instancePath + "/header/wrapWord", + schemaPath: "#/properties/header/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + if (data1.truncate !== void 0) { + let data5 = data1.truncate; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/header/truncate", + schemaPath: "#/properties/header/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + if (data1.paddingLeft !== void 0) { + let data6 = data1.paddingLeft; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/header/paddingLeft", + schemaPath: "#/properties/header/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } + } + if (data1.paddingRight !== void 0) { + let data7 = data1.paddingRight; + if (!(typeof data7 == "number" && (!(data7 % 1) && !isNaN(data7)) && isFinite(data7))) { + const err7 = { + instancePath: instancePath + "/header/paddingRight", + schemaPath: "#/properties/header/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; + } + } + } else { + const err8 = { + instancePath: instancePath + "/header", + schemaPath: "#/properties/header/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err8]; + } else { + vErrors.push(err8); + } + errors++; } - return true; - case boolTag: - case dateTag: - case numberTag: - return eq(+object, +other); - case errorTag: - return object.name == other.name && object.message == other.message; - case regexpTag: - case stringTag: - return object == other + ""; - case mapTag: - var convert = mapToArray; - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - if (object.size != other.size && !isPartial) { - return false; + } + if (data.columns !== void 0) { + if (!validate70(data.columns, { + instancePath: instancePath + "/columns", + parentData: data, + parentDataProperty: "columns", + rootData + })) { + vErrors = vErrors === null ? validate70.errors : vErrors.concat(validate70.errors); + errors = vErrors.length; + } + } + if (data.columnDefault !== void 0) { + if (!validate79(data.columnDefault, { + instancePath: instancePath + "/columnDefault", + parentData: data, + parentDataProperty: "columnDefault", + rootData + })) { + vErrors = vErrors === null ? validate79.errors : vErrors.concat(validate79.errors); + errors = vErrors.length; + } + } + if (data.drawVerticalLine !== void 0) { + if (typeof data.drawVerticalLine != "function") { + const err9 = { + instancePath: instancePath + "/drawVerticalLine", + schemaPath: "#/properties/drawVerticalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err9]; + } else { + vErrors.push(err9); + } + errors++; + } + } + if (data.drawHorizontalLine !== void 0) { + if (typeof data.drawHorizontalLine != "function") { + const err10 = { + instancePath: instancePath + "/drawHorizontalLine", + schemaPath: "#/properties/drawHorizontalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err10]; + } else { + vErrors.push(err10); + } + errors++; + } + } + if (data.singleLine !== void 0) { + if (typeof data.singleLine != "boolean") { + const err11 = { + instancePath: instancePath + "/singleLine", + schemaPath: "#/properties/singleLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err11]; + } else { + vErrors.push(err11); + } + errors++; + } + } + if (data.spanningCells !== void 0) { + let data13 = data.spanningCells; + if (Array.isArray(data13)) { + const len0 = data13.length; + for (let i0 = 0; i0 < len0; i0++) { + let data14 = data13[i0]; + if (data14 && typeof data14 == "object" && !Array.isArray(data14)) { + if (data14.row === void 0) { + const err12 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/required", + keyword: "required", + params: { + missingProperty: "row" + }, + message: "must have required property 'row'" + }; + if (vErrors === null) { + vErrors = [err12]; + } else { + vErrors.push(err12); + } + errors++; + } + if (data14.col === void 0) { + const err13 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/required", + keyword: "required", + params: { + missingProperty: "col" + }, + message: "must have required property 'col'" + }; + if (vErrors === null) { + vErrors = [err13]; + } else { + vErrors.push(err13); + } + errors++; + } + for (const key2 in data14) { + if (!func4.call(schema13.properties.spanningCells.items.properties, key2)) { + const err14 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key2 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err14]; + } else { + vErrors.push(err14); + } + errors++; + } + } + if (data14.col !== void 0) { + let data15 = data14.col; + if (!(typeof data15 == "number" && (!(data15 % 1) && !isNaN(data15)) && isFinite(data15))) { + const err15 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/col", + schemaPath: "#/properties/spanningCells/items/properties/col/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err15]; + } else { + vErrors.push(err15); + } + errors++; + } + if (typeof data15 == "number" && isFinite(data15)) { + if (data15 < 0 || isNaN(data15)) { + const err16 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/col", + schemaPath: "#/properties/spanningCells/items/properties/col/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 0 + }, + message: "must be >= 0" + }; + if (vErrors === null) { + vErrors = [err16]; + } else { + vErrors.push(err16); + } + errors++; + } + } + } + if (data14.row !== void 0) { + let data16 = data14.row; + if (!(typeof data16 == "number" && (!(data16 % 1) && !isNaN(data16)) && isFinite(data16))) { + const err17 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/row", + schemaPath: "#/properties/spanningCells/items/properties/row/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err17]; + } else { + vErrors.push(err17); + } + errors++; + } + if (typeof data16 == "number" && isFinite(data16)) { + if (data16 < 0 || isNaN(data16)) { + const err18 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/row", + schemaPath: "#/properties/spanningCells/items/properties/row/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 0 + }, + message: "must be >= 0" + }; + if (vErrors === null) { + vErrors = [err18]; + } else { + vErrors.push(err18); + } + errors++; + } + } + } + if (data14.colSpan !== void 0) { + let data17 = data14.colSpan; + if (!(typeof data17 == "number" && (!(data17 % 1) && !isNaN(data17)) && isFinite(data17))) { + const err19 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan", + schemaPath: "#/properties/spanningCells/items/properties/colSpan/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err19]; + } else { + vErrors.push(err19); + } + errors++; + } + if (typeof data17 == "number" && isFinite(data17)) { + if (data17 < 1 || isNaN(data17)) { + const err20 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan", + schemaPath: "#/properties/spanningCells/items/properties/colSpan/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err20]; + } else { + vErrors.push(err20); + } + errors++; + } + } + } + if (data14.rowSpan !== void 0) { + let data18 = data14.rowSpan; + if (!(typeof data18 == "number" && (!(data18 % 1) && !isNaN(data18)) && isFinite(data18))) { + const err21 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan", + schemaPath: "#/properties/spanningCells/items/properties/rowSpan/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err21]; + } else { + vErrors.push(err21); + } + errors++; + } + if (typeof data18 == "number" && isFinite(data18)) { + if (data18 < 1 || isNaN(data18)) { + const err22 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan", + schemaPath: "#/properties/spanningCells/items/properties/rowSpan/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err22]; + } else { + vErrors.push(err22); + } + errors++; + } + } + } + if (data14.alignment !== void 0) { + if (!validate68(data14.alignment, { + instancePath: instancePath + "/spanningCells/" + i0 + "/alignment", + parentData: data14, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors); + errors = vErrors.length; + } + } + if (data14.verticalAlignment !== void 0) { + if (!validate84(data14.verticalAlignment, { + instancePath: instancePath + "/spanningCells/" + i0 + "/verticalAlignment", + parentData: data14, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate84.errors : vErrors.concat(validate84.errors); + errors = vErrors.length; + } + } + if (data14.wrapWord !== void 0) { + if (typeof data14.wrapWord !== "boolean") { + const err23 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/wrapWord", + schemaPath: "#/properties/spanningCells/items/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err23]; + } else { + vErrors.push(err23); + } + errors++; + } + } + if (data14.truncate !== void 0) { + let data22 = data14.truncate; + if (!(typeof data22 == "number" && (!(data22 % 1) && !isNaN(data22)) && isFinite(data22))) { + const err24 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/truncate", + schemaPath: "#/properties/spanningCells/items/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err24]; + } else { + vErrors.push(err24); + } + errors++; + } + } + if (data14.paddingLeft !== void 0) { + let data23 = data14.paddingLeft; + if (!(typeof data23 == "number" && (!(data23 % 1) && !isNaN(data23)) && isFinite(data23))) { + const err25 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/paddingLeft", + schemaPath: "#/properties/spanningCells/items/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err25]; + } else { + vErrors.push(err25); + } + errors++; + } + } + if (data14.paddingRight !== void 0) { + let data24 = data14.paddingRight; + if (!(typeof data24 == "number" && (!(data24 % 1) && !isNaN(data24)) && isFinite(data24))) { + const err26 = { + instancePath: instancePath + "/spanningCells/" + i0 + "/paddingRight", + schemaPath: "#/properties/spanningCells/items/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err26]; + } else { + vErrors.push(err26); + } + errors++; + } + } + } else { + const err27 = { + instancePath: instancePath + "/spanningCells/" + i0, + schemaPath: "#/properties/spanningCells/items/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err27]; + } else { + vErrors.push(err27); + } + errors++; + } + } + } else { + const err28 = { + instancePath: instancePath + "/spanningCells", + schemaPath: "#/properties/spanningCells/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err28]; + } else { + vErrors.push(err28); + } + errors++; + } + } + } else { + const err29 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err29]; + } else { + vErrors.push(err29); + } + errors++; + } + validate43.errors = vErrors; + return errors === 0; + } + exports2["streamConfig.json"] = validate86; + function validate87(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!func4.call(schema15.properties, key0)) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } + } + if (data.topBody !== void 0) { + if (!validate46(data.topBody, { + instancePath: instancePath + "/topBody", + parentData: data, + parentDataProperty: "topBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topJoin !== void 0) { + if (!validate46(data.topJoin, { + instancePath: instancePath + "/topJoin", + parentData: data, + parentDataProperty: "topJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topLeft !== void 0) { + if (!validate46(data.topLeft, { + instancePath: instancePath + "/topLeft", + parentData: data, + parentDataProperty: "topLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.topRight !== void 0) { + if (!validate46(data.topRight, { + instancePath: instancePath + "/topRight", + parentData: data, + parentDataProperty: "topRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomBody !== void 0) { + if (!validate46(data.bottomBody, { + instancePath: instancePath + "/bottomBody", + parentData: data, + parentDataProperty: "bottomBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomJoin !== void 0) { + if (!validate46(data.bottomJoin, { + instancePath: instancePath + "/bottomJoin", + parentData: data, + parentDataProperty: "bottomJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomLeft !== void 0) { + if (!validate46(data.bottomLeft, { + instancePath: instancePath + "/bottomLeft", + parentData: data, + parentDataProperty: "bottomLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bottomRight !== void 0) { + if (!validate46(data.bottomRight, { + instancePath: instancePath + "/bottomRight", + parentData: data, + parentDataProperty: "bottomRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyLeft !== void 0) { + if (!validate46(data.bodyLeft, { + instancePath: instancePath + "/bodyLeft", + parentData: data, + parentDataProperty: "bodyLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyRight !== void 0) { + if (!validate46(data.bodyRight, { + instancePath: instancePath + "/bodyRight", + parentData: data, + parentDataProperty: "bodyRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.bodyJoin !== void 0) { + if (!validate46(data.bodyJoin, { + instancePath: instancePath + "/bodyJoin", + parentData: data, + parentDataProperty: "bodyJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.headerJoin !== void 0) { + if (!validate46(data.headerJoin, { + instancePath: instancePath + "/headerJoin", + parentData: data, + parentDataProperty: "headerJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinBody !== void 0) { + if (!validate46(data.joinBody, { + instancePath: instancePath + "/joinBody", + parentData: data, + parentDataProperty: "joinBody", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinLeft !== void 0) { + if (!validate46(data.joinLeft, { + instancePath: instancePath + "/joinLeft", + parentData: data, + parentDataProperty: "joinLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinRight !== void 0) { + if (!validate46(data.joinRight, { + instancePath: instancePath + "/joinRight", + parentData: data, + parentDataProperty: "joinRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinJoin !== void 0) { + if (!validate46(data.joinJoin, { + instancePath: instancePath + "/joinJoin", + parentData: data, + parentDataProperty: "joinJoin", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } + } + if (data.joinMiddleUp !== void 0) { + if (!validate46(data.joinMiddleUp, { + instancePath: instancePath + "/joinMiddleUp", + parentData: data, + parentDataProperty: "joinMiddleUp", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; } - var stacked = stack2.get(object); - if (stacked) { - return stacked == other; + } + if (data.joinMiddleDown !== void 0) { + if (!validate46(data.joinMiddleDown, { + instancePath: instancePath + "/joinMiddleDown", + parentData: data, + parentDataProperty: "joinMiddleDown", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; } - bitmask |= COMPARE_UNORDERED_FLAG; - stack2.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack2); - stack2["delete"](object); - return result; - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); + } + if (data.joinMiddleLeft !== void 0) { + if (!validate46(data.joinMiddleLeft, { + instancePath: instancePath + "/joinMiddleLeft", + parentData: data, + parentDataProperty: "joinMiddleLeft", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; } - } - return false; - } - module2.exports = equalByTag; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayPush.js -var require_arrayPush = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayPush.js"(exports2, module2) { - function arrayPush(array, values) { - var index = -1, length = values.length, offset = array.length; - while (++index < length) { - array[offset + index] = values[index]; - } - return array; - } - module2.exports = arrayPush; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetAllKeys.js -var require_baseGetAllKeys = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetAllKeys.js"(exports2, module2) { - var arrayPush = require_arrayPush(); - var isArray = require_isArray2(); - function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); - } - module2.exports = baseGetAllKeys; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayFilter.js -var require_arrayFilter = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayFilter.js"(exports2, module2) { - function arrayFilter(array, predicate) { - var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; } - } - return result; - } - module2.exports = arrayFilter; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubArray.js -var require_stubArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubArray.js"(exports2, module2) { - function stubArray() { - return []; - } - module2.exports = stubArray; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbols.js -var require_getSymbols = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbols.js"(exports2, module2) { - var arrayFilter = require_arrayFilter(); - var stubArray = require_stubArray(); - var objectProto = Object.prototype; - var propertyIsEnumerable = objectProto.propertyIsEnumerable; - var nativeGetSymbols = Object.getOwnPropertySymbols; - var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); - }; - module2.exports = getSymbols; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeys.js -var require_getAllKeys = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeys.js"(exports2, module2) { - var baseGetAllKeys = require_baseGetAllKeys(); - var getSymbols = require_getSymbols(); - var keys = require_keys2(); - function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); - } - module2.exports = getAllKeys; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalObjects.js -var require_equalObjects = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalObjects.js"(exports2, module2) { - var getAllKeys = require_getAllKeys(); - var COMPARE_PARTIAL_FLAG = 1; - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function equalObjects(object, other, bitmask, customizer, equalFunc, stack2) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; + if (data.joinMiddleRight !== void 0) { + if (!validate46(data.joinMiddleRight, { + instancePath: instancePath + "/joinMiddleRight", + parentData: data, + parentDataProperty: "joinMiddleRight", + rootData + })) { + vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); + errors = vErrors.length; + } } - } - var objStacked = stack2.get(object); - var othStacked = stack2.get(other); - if (objStacked && othStacked) { - return objStacked == other && othStacked == object; - } - var result = true; - stack2.set(object, other); - stack2.set(other, object); - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], othValue = other[key]; - if (customizer) { - var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack2) : customizer(objValue, othValue, key, object, other, stack2); + } else { + const err1 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + validate87.errors = vErrors; + return errors === 0; + } + function validate109(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + const _errs0 = errors; + let valid0 = false; + let passing0 = null; + const _errs1 = errors; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!pattern0.test(key0)) { + const err0 = { + instancePath, + schemaPath: "#/oneOf/0/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; + } } - if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack2) : compared)) { - result = false; - break; + for (const key1 in data) { + if (pattern0.test(key1)) { + if (!validate71(data[key1], { + instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), + parentData: data, + parentDataProperty: key1, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } } - skipCtor || (skipCtor = key == "constructor"); + } else { + const err1 = { + instancePath, + schemaPath: "#/oneOf/0/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + var _valid0 = _errs1 === errors; + if (_valid0) { + valid0 = true; + passing0 = 0; + } + const _errs5 = errors; + if (Array.isArray(data)) { + const len0 = data.length; + for (let i0 = 0; i0 < len0; i0++) { + if (!validate71(data[i0], { + instancePath: instancePath + "/" + i0, + parentData: data, + parentDataProperty: i0, + rootData + })) { + vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors); + errors = vErrors.length; + } + } + } else { + const err2 = { + instancePath, + schemaPath: "#/oneOf/1/type", + keyword: "type", + params: { + type: "array" + }, + message: "must be array" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; } - if (result && !skipCtor) { - var objCtor = object.constructor, othCtor = other.constructor; - if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { - result = false; + var _valid0 = _errs5 === errors; + if (_valid0 && valid0) { + valid0 = false; + passing0 = [passing0, 1]; + } else { + if (_valid0) { + valid0 = true; + passing0 = 1; + } + } + if (!valid0) { + const err3 = { + instancePath, + schemaPath: "#/oneOf", + keyword: "oneOf", + params: { + passingSchemas: passing0 + }, + message: "must match exactly one schema in oneOf" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } else { + errors = _errs0; + if (vErrors !== null) { + if (_errs0) { + vErrors.length = _errs0; + } else { + vErrors = null; + } } } - stack2["delete"](object); - stack2["delete"](other); - return result; + validate109.errors = vErrors; + return errors === 0; } - module2.exports = equalObjects; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_DataView.js -var require_DataView = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_DataView.js"(exports2, module2) { - var getNative = require_getNative(); - var root = require_root(); - var DataView2 = getNative(root, "DataView"); - module2.exports = DataView2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Promise.js -var require_Promise = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Promise.js"(exports2, module2) { - var getNative = require_getNative(); - var root = require_root(); - var Promise2 = getNative(root, "Promise"); - module2.exports = Promise2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js -var require_Set2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js"(exports2, module2) { - var getNative = require_getNative(); - var root = require_root(); - var Set2 = getNative(root, "Set"); - module2.exports = Set2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_WeakMap.js -var require_WeakMap = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_WeakMap.js"(exports2, module2) { - var getNative = require_getNative(); - var root = require_root(); - var WeakMap2 = getNative(root, "WeakMap"); - module2.exports = WeakMap2; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getTag.js -var require_getTag = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getTag.js"(exports2, module2) { - var DataView2 = require_DataView(); - var Map2 = require_Map(); - var Promise2 = require_Promise(); - var Set2 = require_Set2(); - var WeakMap2 = require_WeakMap(); - var baseGetTag = require_baseGetTag(); - var toSource = require_toSource(); - var mapTag = "[object Map]"; - var objectTag = "[object Object]"; - var promiseTag = "[object Promise]"; - var setTag = "[object Set]"; - var weakMapTag = "[object WeakMap]"; - var dataViewTag = "[object DataView]"; - var dataViewCtorString = toSource(DataView2); - var mapCtorString = toSource(Map2); - var promiseCtorString = toSource(Promise2); - var setCtorString = toSource(Set2); - var weakMapCtorString = toSource(WeakMap2); - var getTag = baseGetTag; - if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { - getTag = function(value) { - var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : ""; - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: - return dataViewTag; - case mapCtorString: - return mapTag; - case promiseCtorString: - return promiseTag; - case setCtorString: - return setTag; - case weakMapCtorString: - return weakMapTag; + function validate113(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + for (const key0 in data) { + if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) { + const err0 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } } - return result; - }; - } - module2.exports = getTag; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqualDeep.js -var require_baseIsEqualDeep = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqualDeep.js"(exports2, module2) { - var Stack = require_Stack(); - var equalArrays = require_equalArrays(); - var equalByTag = require_equalByTag(); - var equalObjects = require_equalObjects(); - var getTag = require_getTag(); - var isArray = require_isArray2(); - var isBuffer = require_isBuffer(); - var isTypedArray = require_isTypedArray(); - var COMPARE_PARTIAL_FLAG = 1; - var argsTag = "[object Arguments]"; - var arrayTag = "[object Array]"; - var objectTag = "[object Object]"; - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack2) { - var objIsArr = isArray(object), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; + if (data.alignment !== void 0) { + if (!validate72(data.alignment, { + instancePath: instancePath + "/alignment", + parentData: data, + parentDataProperty: "alignment", + rootData + })) { + vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors); + errors = vErrors.length; + } } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack2 || (stack2 = new Stack()); - return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack2) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack2); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; - stack2 || (stack2 = new Stack()); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack2); + if (data.verticalAlignment !== void 0) { + if (!validate74(data.verticalAlignment, { + instancePath: instancePath + "/verticalAlignment", + parentData: data, + parentDataProperty: "verticalAlignment", + rootData + })) { + vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors); + errors = vErrors.length; + } } - } - if (!isSameTag) { - return false; - } - stack2 || (stack2 = new Stack()); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack2); - } - module2.exports = baseIsEqualDeep; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqual.js -var require_baseIsEqual = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqual.js"(exports2, module2) { - var baseIsEqualDeep = require_baseIsEqualDeep(); - var isObjectLike = require_isObjectLike(); - function baseIsEqual(value, other, bitmask, customizer, stack2) { - if (value === other) { - return true; - } - if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack2); - } - module2.exports = baseIsEqual; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsMatch.js -var require_baseIsMatch = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsMatch.js"(exports2, module2) { - var Stack = require_Stack(); - var baseIsEqual = require_baseIsEqual(); - var COMPARE_PARTIAL_FLAG = 1; - var COMPARE_UNORDERED_FLAG = 2; - function baseIsMatch(object, source, matchData, customizer) { - var index = matchData.length, length = index, noCustomizer = !customizer; - if (object == null) { - return !length; - } - object = Object(object); - while (index--) { - var data = matchData[index]; - if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) { - return false; + if (data.width !== void 0) { + let data2 = data.width; + if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) { + const err1 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; + } + if (typeof data2 == "number" && isFinite(data2)) { + if (data2 < 1 || isNaN(data2)) { + const err2 = { + instancePath: instancePath + "/width", + schemaPath: "#/properties/width/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } + } } - } - while (++index < length) { - data = matchData[index]; - var key = data[0], objValue = object[key], srcValue = data[1]; - if (noCustomizer && data[2]) { - if (objValue === void 0 && !(key in object)) { - return false; + if (data.wrapWord !== void 0) { + if (typeof data.wrapWord !== "boolean") { + const err3 = { + instancePath: instancePath + "/wrapWord", + schemaPath: "#/properties/wrapWord/type", + keyword: "type", + params: { + type: "boolean" + }, + message: "must be boolean" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; } - } else { - var stack2 = new Stack(); - if (customizer) { - var result = customizer(objValue, srcValue, key, object, source, stack2); + } + if (data.truncate !== void 0) { + let data4 = data.truncate; + if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) { + const err4 = { + instancePath: instancePath + "/truncate", + schemaPath: "#/properties/truncate/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; } - if (!(result === void 0 ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack2) : result)) { - return false; + } + if (data.paddingLeft !== void 0) { + let data5 = data.paddingLeft; + if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) { + const err5 = { + instancePath: instancePath + "/paddingLeft", + schemaPath: "#/properties/paddingLeft/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; } } - } - return true; - } - module2.exports = baseIsMatch; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isStrictComparable.js -var require_isStrictComparable = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isStrictComparable.js"(exports2, module2) { - var isObject = require_isObject2(); - function isStrictComparable(value) { - return value === value && !isObject(value); - } - module2.exports = isStrictComparable; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMatchData.js -var require_getMatchData = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMatchData.js"(exports2, module2) { - var isStrictComparable = require_isStrictComparable(); - var keys = require_keys2(); - function getMatchData(object) { - var result = keys(object), length = result.length; - while (length--) { - var key = result[length], value = object[key]; - result[length] = [key, value, isStrictComparable(value)]; - } - return result; - } - module2.exports = getMatchData; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_matchesStrictComparable.js -var require_matchesStrictComparable = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_matchesStrictComparable.js"(exports2, module2) { - function matchesStrictComparable(key, srcValue) { - return function(object) { - if (object == null) { - return false; + if (data.paddingRight !== void 0) { + let data6 = data.paddingRight; + if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) { + const err6 = { + instancePath: instancePath + "/paddingRight", + schemaPath: "#/properties/paddingRight/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; + } } - return object[key] === srcValue && (srcValue !== void 0 || key in Object(object)); - }; - } - module2.exports = matchesStrictComparable; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMatches.js -var require_baseMatches = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMatches.js"(exports2, module2) { - var baseIsMatch = require_baseIsMatch(); - var getMatchData = require_getMatchData(); - var matchesStrictComparable = require_matchesStrictComparable(); - function baseMatches(source) { - var matchData = getMatchData(source); - if (matchData.length == 1 && matchData[0][2]) { - return matchesStrictComparable(matchData[0][0], matchData[0][1]); - } - return function(object) { - return object === source || baseIsMatch(object, source, matchData); - }; - } - module2.exports = baseMatches; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js -var require_isSymbol = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObjectLike = require_isObjectLike(); - var symbolTag = "[object Symbol]"; - function isSymbol(value) { - return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; - } - module2.exports = isSymbol; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js -var require_isKey = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js"(exports2, module2) { - var isArray = require_isArray2(); - var isSymbol = require_isSymbol(); - var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; - var reIsPlainProp = /^\w*$/; - function isKey(value, object) { - if (isArray(value)) { - return false; - } - var type = typeof value; - if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { - return true; + } else { + const err7 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err7]; + } else { + vErrors.push(err7); + } + errors++; } - return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); + validate113.errors = vErrors; + return errors === 0; } - module2.exports = isKey; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js -var require_memoize = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js"(exports2, module2) { - var MapCache = require_MapCache(); - var FUNC_ERROR_TEXT = "Expected a function"; - function memoize(func, resolver) { - if (typeof func != "function" || resolver != null && typeof resolver != "function") { - throw new TypeError(FUNC_ERROR_TEXT); - } - var memoized = function() { - var args2 = arguments, key = resolver ? resolver.apply(this, args2) : args2[0], cache = memoized.cache; - if (cache.has(key)) { - return cache.get(key); + function validate86(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { + ; + let vErrors = null; + let errors = 0; + if (data && typeof data == "object" && !Array.isArray(data)) { + if (data.columnDefault === void 0) { + const err0 = { + instancePath, + schemaPath: "#/required", + keyword: "required", + params: { + missingProperty: "columnDefault" + }, + message: "must have required property 'columnDefault'" + }; + if (vErrors === null) { + vErrors = [err0]; + } else { + vErrors.push(err0); + } + errors++; } - var result = func.apply(this, args2); - memoized.cache = cache.set(key, result) || cache; - return result; - }; - memoized.cache = new (memoize.Cache || MapCache)(); - return memoized; - } - memoize.Cache = MapCache; - module2.exports = memoize; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js -var require_memoizeCapped = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js"(exports2, module2) { - var memoize = require_memoize(); - var MAX_MEMOIZE_SIZE = 500; - function memoizeCapped(func) { - var result = memoize(func, function(key) { - if (cache.size === MAX_MEMOIZE_SIZE) { - cache.clear(); + if (data.columnCount === void 0) { + const err1 = { + instancePath, + schemaPath: "#/required", + keyword: "required", + params: { + missingProperty: "columnCount" + }, + message: "must have required property 'columnCount'" + }; + if (vErrors === null) { + vErrors = [err1]; + } else { + vErrors.push(err1); + } + errors++; } - return key; - }); - var cache = result.cache; - return result; - } - module2.exports = memoizeCapped; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js -var require_stringToPath = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js"(exports2, module2) { - var memoizeCapped = require_memoizeCapped(); - var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; - var reEscapeChar = /\\(\\)?/g; - var stringToPath = memoizeCapped(function(string) { - var result = []; - if (string.charCodeAt(0) === 46) { - result.push(""); - } - string.replace(rePropName, function(match, number, quote, subString) { - result.push(quote ? subString.replace(reEscapeChar, "$1") : number || match); - }); - return result; - }); - module2.exports = stringToPath; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js -var require_arrayMap = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js"(exports2, module2) { - function arrayMap(array, iteratee) { - var index = -1, length = array == null ? 0 : array.length, result = Array(length); - while (++index < length) { - result[index] = iteratee(array[index], index, array); - } - return result; - } - module2.exports = arrayMap; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js -var require_baseToString = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var arrayMap = require_arrayMap(); - var isArray = require_isArray2(); - var isSymbol = require_isSymbol(); - var INFINITY = 1 / 0; - var symbolProto = Symbol2 ? Symbol2.prototype : void 0; - var symbolToString = symbolProto ? symbolProto.toString : void 0; - function baseToString(value) { - if (typeof value == "string") { - return value; - } - if (isArray(value)) { - return arrayMap(value, baseToString) + ""; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ""; - } - var result = value + ""; - return result == "0" && 1 / value == -INFINITY ? "-0" : result; - } - module2.exports = baseToString; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js -var require_toString = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js"(exports2, module2) { - var baseToString = require_baseToString(); - function toString(value) { - return value == null ? "" : baseToString(value); - } - module2.exports = toString; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js -var require_castPath = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js"(exports2, module2) { - var isArray = require_isArray2(); - var isKey = require_isKey(); - var stringToPath = require_stringToPath(); - var toString = require_toString(); - function castPath(value, object) { - if (isArray(value)) { - return value; - } - return isKey(value, object) ? [value] : stringToPath(toString(value)); - } - module2.exports = castPath; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js -var require_toKey = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js"(exports2, module2) { - var isSymbol = require_isSymbol(); - var INFINITY = 1 / 0; - function toKey(value) { - if (typeof value == "string" || isSymbol(value)) { - return value; - } - var result = value + ""; - return result == "0" && 1 / value == -INFINITY ? "-0" : result; - } - module2.exports = toKey; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js -var require_baseGet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js"(exports2, module2) { - var castPath = require_castPath(); - var toKey = require_toKey(); - function baseGet(object, path) { - path = castPath(path, object); - var index = 0, length = path.length; - while (object != null && index < length) { - object = object[toKey(path[index++])]; - } - return index && index == length ? object : void 0; - } - module2.exports = baseGet; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/get.js -var require_get = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/get.js"(exports2, module2) { - var baseGet = require_baseGet(); - function get(object, path, defaultValue) { - var result = object == null ? void 0 : baseGet(object, path); - return result === void 0 ? defaultValue : result; - } - module2.exports = get; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHasIn.js -var require_baseHasIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHasIn.js"(exports2, module2) { - function baseHasIn(object, key) { - return object != null && key in Object(object); - } - module2.exports = baseHasIn; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js -var require_hasPath = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js"(exports2, module2) { - var castPath = require_castPath(); - var isArguments = require_isArguments2(); - var isArray = require_isArray2(); - var isIndex = require_isIndex(); - var isLength = require_isLength(); - var toKey = require_toKey(); - function hasPath(object, path, hasFunc) { - path = castPath(path, object); - var index = -1, length = path.length, result = false; - while (++index < length) { - var key = toKey(path[index]); - if (!(result = object != null && hasFunc(object, key))) { - break; + for (const key0 in data) { + if (!(key0 === "border" || key0 === "columns" || key0 === "columnDefault" || key0 === "columnCount" || key0 === "drawVerticalLine")) { + const err2 = { + instancePath, + schemaPath: "#/additionalProperties", + keyword: "additionalProperties", + params: { + additionalProperty: key0 + }, + message: "must NOT have additional properties" + }; + if (vErrors === null) { + vErrors = [err2]; + } else { + vErrors.push(err2); + } + errors++; + } } - object = object[key]; - } - if (result || ++index != length) { - return result; + if (data.border !== void 0) { + if (!validate87(data.border, { + instancePath: instancePath + "/border", + parentData: data, + parentDataProperty: "border", + rootData + })) { + vErrors = vErrors === null ? validate87.errors : vErrors.concat(validate87.errors); + errors = vErrors.length; + } + } + if (data.columns !== void 0) { + if (!validate109(data.columns, { + instancePath: instancePath + "/columns", + parentData: data, + parentDataProperty: "columns", + rootData + })) { + vErrors = vErrors === null ? validate109.errors : vErrors.concat(validate109.errors); + errors = vErrors.length; + } + } + if (data.columnDefault !== void 0) { + if (!validate113(data.columnDefault, { + instancePath: instancePath + "/columnDefault", + parentData: data, + parentDataProperty: "columnDefault", + rootData + })) { + vErrors = vErrors === null ? validate113.errors : vErrors.concat(validate113.errors); + errors = vErrors.length; + } + } + if (data.columnCount !== void 0) { + let data3 = data.columnCount; + if (!(typeof data3 == "number" && (!(data3 % 1) && !isNaN(data3)) && isFinite(data3))) { + const err3 = { + instancePath: instancePath + "/columnCount", + schemaPath: "#/properties/columnCount/type", + keyword: "type", + params: { + type: "integer" + }, + message: "must be integer" + }; + if (vErrors === null) { + vErrors = [err3]; + } else { + vErrors.push(err3); + } + errors++; + } + if (typeof data3 == "number" && isFinite(data3)) { + if (data3 < 1 || isNaN(data3)) { + const err4 = { + instancePath: instancePath + "/columnCount", + schemaPath: "#/properties/columnCount/minimum", + keyword: "minimum", + params: { + comparison: ">=", + limit: 1 + }, + message: "must be >= 1" + }; + if (vErrors === null) { + vErrors = [err4]; + } else { + vErrors.push(err4); + } + errors++; + } + } + } + if (data.drawVerticalLine !== void 0) { + if (typeof data.drawVerticalLine != "function") { + const err5 = { + instancePath: instancePath + "/drawVerticalLine", + schemaPath: "#/properties/drawVerticalLine/typeof", + keyword: "typeof", + params: {}, + message: 'must pass "typeof" keyword validation' + }; + if (vErrors === null) { + vErrors = [err5]; + } else { + vErrors.push(err5); + } + errors++; + } + } + } else { + const err6 = { + instancePath, + schemaPath: "#/type", + keyword: "type", + params: { + type: "object" + }, + message: "must be object" + }; + if (vErrors === null) { + vErrors = [err6]; + } else { + vErrors.push(err6); + } + errors++; } - length = object == null ? 0 : object.length; - return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); - } - module2.exports = hasPath; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/hasIn.js -var require_hasIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/hasIn.js"(exports2, module2) { - var baseHasIn = require_baseHasIn(); - var hasPath = require_hasPath(); - function hasIn(object, path) { - return object != null && hasPath(object, path, baseHasIn); + validate86.errors = vErrors; + return errors === 0; } - module2.exports = hasIn; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMatchesProperty.js -var require_baseMatchesProperty = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMatchesProperty.js"(exports2, module2) { - var baseIsEqual = require_baseIsEqual(); - var get = require_get(); - var hasIn = require_hasIn(); - var isKey = require_isKey(); - var isStrictComparable = require_isStrictComparable(); - var matchesStrictComparable = require_matchesStrictComparable(); - var toKey = require_toKey(); - var COMPARE_PARTIAL_FLAG = 1; - var COMPARE_UNORDERED_FLAG = 2; - function baseMatchesProperty(path, srcValue) { - if (isKey(path) && isStrictComparable(srcValue)) { - return matchesStrictComparable(toKey(path), srcValue); +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateConfig.js +var require_validateConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateConfig.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateConfig = void 0; + var validators_1 = __importDefault4(require_validators2()); + var validateConfig = (schemaId, config) => { + const validate2 = validators_1.default[schemaId]; + if (!validate2(config) && validate2.errors) { + const errors = validate2.errors.map((error) => { + return { + message: error.message, + params: error.params, + schemaPath: error.schemaPath + }; + }); + console.log("config", config); + console.log("errors", errors); + throw new Error("Invalid config."); } - return function(object) { - var objValue = get(object, path); - return objValue === void 0 && objValue === srcValue ? hasIn(object, path) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); - }; - } - module2.exports = baseMatchesProperty; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/identity.js -var require_identity2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/identity.js"(exports2, module2) { - function identity(value) { - return value; - } - module2.exports = identity; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseProperty.js -var require_baseProperty = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseProperty.js"(exports2, module2) { - function baseProperty(key) { - return function(object) { - return object == null ? void 0 : object[key]; - }; - } - module2.exports = baseProperty; + }; + exports2.validateConfig = validateConfig; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePropertyDeep.js -var require_basePropertyDeep = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePropertyDeep.js"(exports2, module2) { - var baseGet = require_baseGet(); - function basePropertyDeep(path) { - return function(object) { - return baseGet(object, path); +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeStreamConfig.js +var require_makeStreamConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeStreamConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeStreamConfig = void 0; + var utils_1 = require_utils14(); + var validateConfig_1 = require_validateConfig2(); + var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => { + return Array.from({ length: columnCount }).map((_, index) => { + return { + alignment: "left", + paddingLeft: 1, + paddingRight: 1, + truncate: Number.POSITIVE_INFINITY, + verticalAlignment: "top", + wrapWord: false, + ...columnDefault, + ...columns[index] + }; + }); + }; + var makeStreamConfig = (config) => { + (0, validateConfig_1.validateConfig)("streamConfig.json", config); + if (config.columnDefault.width === void 0) { + throw new Error("Must provide config.columnDefault.width when creating a stream."); + } + return { + drawVerticalLine: () => { + return true; + }, + ...config, + border: (0, utils_1.makeBorderConfig)(config.border), + columns: makeColumnsConfig(config.columnCount, config.columns, config.columnDefault) }; - } - module2.exports = basePropertyDeep; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/property.js -var require_property = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/property.js"(exports2, module2) { - var baseProperty = require_baseProperty(); - var basePropertyDeep = require_basePropertyDeep(); - var isKey = require_isKey(); - var toKey = require_toKey(); - function property(path) { - return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path); - } - module2.exports = property; + }; + exports2.makeStreamConfig = makeStreamConfig; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIteratee.js -var require_baseIteratee = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIteratee.js"(exports2, module2) { - var baseMatches = require_baseMatches(); - var baseMatchesProperty = require_baseMatchesProperty(); - var identity = require_identity2(); - var isArray = require_isArray2(); - var property = require_property(); - function baseIteratee(value) { - if (typeof value == "function") { - return value; - } - if (value == null) { - return identity; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/mapDataUsingRowHeights.js +var require_mapDataUsingRowHeights2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/mapDataUsingRowHeights.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapDataUsingRowHeights = exports2.padCellVertically = void 0; + var utils_1 = require_utils14(); + var wrapCell_1 = require_wrapCell2(); + var createEmptyStrings = (length) => { + return new Array(length).fill(""); + }; + var padCellVertically = (lines, rowHeight, verticalAlignment) => { + const availableLines = rowHeight - lines.length; + if (verticalAlignment === "top") { + return [...lines, ...createEmptyStrings(availableLines)]; } - if (typeof value == "object") { - return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); + if (verticalAlignment === "bottom") { + return [...createEmptyStrings(availableLines), ...lines]; } - return property(value); - } - module2.exports = baseIteratee; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/mapValues.js -var require_mapValues = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/mapValues.js"(exports2, module2) { - var baseAssignValue = require_baseAssignValue(); - var baseForOwn = require_baseForOwn(); - var baseIteratee = require_baseIteratee(); - function mapValues(object, iteratee) { - var result = {}; - iteratee = baseIteratee(iteratee, 3); - baseForOwn(object, function(value, key, object2) { - baseAssignValue(result, key, iteratee(value, key, object2)); + return [ + ...createEmptyStrings(Math.floor(availableLines / 2)), + ...lines, + ...createEmptyStrings(Math.ceil(availableLines / 2)) + ]; + }; + exports2.padCellVertically = padCellVertically; + var mapDataUsingRowHeights = (unmappedRows, rowHeights, config) => { + const nColumns = unmappedRows[0].length; + const mappedRows = unmappedRows.map((unmappedRow, unmappedRowIndex) => { + const outputRowHeight = rowHeights[unmappedRowIndex]; + const outputRow = Array.from({ length: outputRowHeight }, () => { + return new Array(nColumns).fill(""); + }); + unmappedRow.forEach((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: unmappedRowIndex + }); + if (containingRange) { + containingRange.extractCellContent(unmappedRowIndex).forEach((cellLine, cellLineIndex) => { + outputRow[cellLineIndex][cellIndex] = cellLine; + }); + return; + } + const cellLines = (0, wrapCell_1.wrapCell)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord); + const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config.columns[cellIndex].verticalAlignment); + paddedCellLines.forEach((cellLine, cellLineIndex) => { + outputRow[cellLineIndex][cellIndex] = cellLine; + }); + }); + return outputRow; }); - return result; - } - module2.exports = mapValues; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isNumber.js -var require_isNumber = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isNumber.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObjectLike = require_isObjectLike(); - var numberTag = "[object Number]"; - function isNumber(value) { - return typeof value == "number" || isObjectLike(value) && baseGetTag(value) == numberTag; - } - module2.exports = isNumber; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isString.js -var require_isString2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isString.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isArray = require_isArray2(); - var isObjectLike = require_isObjectLike(); - var stringTag = "[object String]"; - function isString(value) { - return typeof value == "string" || !isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag; - } - module2.exports = isString; + return (0, utils_1.flatten)(mappedRows); + }; + exports2.mapDataUsingRowHeights = mapDataUsingRowHeights; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/alignString.js -var require_alignString = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/alignString.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/padTableData.js +var require_padTableData2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/padTableData.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _isNumber2 = _interopRequireDefault(require_isNumber()); - var _isString2 = _interopRequireDefault(require_isString2()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var alignments = ["left", "right", "center"]; - var alignLeft = (subject, width) => { - return subject + " ".repeat(width); - }; - var alignRight = (subject, width) => { - return " ".repeat(width) + subject; - }; - var alignCenter = (subject, width) => { - let halfWidth; - halfWidth = width / 2; - if (width % 2 === 0) { - return " ".repeat(halfWidth) + subject + " ".repeat(halfWidth); - } else { - halfWidth = Math.floor(halfWidth); - return " ".repeat(halfWidth) + subject + " ".repeat(halfWidth + 1); - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.padTableData = exports2.padString = void 0; + var padString = (input, paddingLeft, paddingRight) => { + return " ".repeat(paddingLeft) + input + " ".repeat(paddingRight); }; - var alignString = (subject, containerWidth, alignment) => { - if (!(0, _isString2.default)(subject)) { - throw new TypeError("Subject parameter value must be a string."); - } - if (!(0, _isNumber2.default)(containerWidth)) { - throw new TypeError("Container width parameter value must be a number."); - } - const subjectWidth = (0, _stringWidth.default)(subject); - if (subjectWidth > containerWidth) { - throw new Error("Subject parameter value width cannot be greater than the container width."); - } - if (!(0, _isString2.default)(alignment)) { - throw new TypeError("Alignment parameter value must be a string."); - } - if (!alignments.includes(alignment)) { - throw new Error("Alignment parameter value must be a known alignment parameter value (left, right, center)."); - } - if (subjectWidth === 0) { - return " ".repeat(containerWidth); - } - const availableWidth = containerWidth - subjectWidth; - if (alignment === "left") { - return alignLeft(subject, availableWidth); - } - if (alignment === "right") { - return alignRight(subject, availableWidth); - } - return alignCenter(subject, availableWidth); + exports2.padString = padString; + var padTableData = (rows, config) => { + return rows.map((cells, rowIndex) => { + return cells.map((cell, cellIndex) => { + var _a; + const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({ + col: cellIndex, + row: rowIndex + }, { mapped: true }); + if (containingRange) { + return cell; + } + const { paddingLeft, paddingRight } = config.columns[cellIndex]; + return (0, exports2.padString)(cell, paddingLeft, paddingRight); + }); + }); }; - var _default = alignString; - exports2.default = _default; + exports2.padTableData = padTableData; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/alignTableData.js -var require_alignTableData = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/alignTableData.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/stringifyTableData.js +var require_stringifyTableData2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/stringifyTableData.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _stringWidth = _interopRequireDefault(require_string_width()); - var _alignString = _interopRequireDefault(require_alignString()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var alignTableData = (rows, config) => { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyTableData = void 0; + var utils_1 = require_utils14(); + var stringifyTableData = (rows) => { return rows.map((cells) => { - return cells.map((value, index1) => { - const column = config.columns[index1]; - if ((0, _stringWidth.default)(value) === column.width) { - return value; - } else { - return (0, _alignString.default)(value, column.width, column.alignment); - } + return cells.map((cell) => { + return (0, utils_1.normalizeString)(String(cell)); }); }); }; - var _default = alignTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseExtremum.js -var require_baseExtremum = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseExtremum.js"(exports2, module2) { - var isSymbol = require_isSymbol(); - function baseExtremum(array, iteratee, comparator) { - var index = -1, length = array.length; - while (++index < length) { - var value = array[index], current = iteratee(value); - if (current != null && (computed === void 0 ? current === current && !isSymbol(current) : comparator(current, computed))) { - var computed = current, result = value; - } - } - return result; - } - module2.exports = baseExtremum; + exports2.stringifyTableData = stringifyTableData; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGt.js -var require_baseGt = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGt.js"(exports2, module2) { - function baseGt(value, other) { - return value > other; - } - module2.exports = baseGt; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/max.js -var require_max3 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/max.js"(exports2, module2) { - var baseExtremum = require_baseExtremum(); - var baseGt = require_baseGt(); - var identity = require_identity2(); - function max(array) { - return array && array.length ? baseExtremum(array, identity, baseGt) : void 0; - } - module2.exports = max; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBoolean.js -var require_isBoolean = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBoolean.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObjectLike = require_isObjectLike(); - var boolTag = "[object Boolean]"; - function isBoolean(value) { - return value === true || value === false || isObjectLike(value) && baseGetTag(value) == boolTag; - } - module2.exports = isBoolean; - } -}); - -// ../../node_modules/.pnpm/astral-regex@2.0.0/node_modules/astral-regex/index.js -var require_astral_regex = __commonJS({ - "../../node_modules/.pnpm/astral-regex@2.0.0/node_modules/astral-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/truncateTableData.js +var require_truncateTableData2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/truncateTableData.js"(exports2) { "use strict"; - var regex = "[\uD800-\uDBFF][\uDC00-\uDFFF]"; - var astralRegex = (options) => options && options.exact ? new RegExp(`^${regex}$`) : new RegExp(regex, "g"); - module2.exports = astralRegex; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.truncateTableData = exports2.truncateString = void 0; + var lodash_truncate_1 = __importDefault4(require_lodash()); + var truncateString = (input, length) => { + return (0, lodash_truncate_1.default)(input, { + length, + omission: "\u2026" + }); + }; + exports2.truncateString = truncateString; + var truncateTableData = (rows, truncates) => { + return rows.map((cells) => { + return cells.map((cell, cellIndex) => { + return (0, exports2.truncateString)(cell, truncates[cellIndex]); + }); + }); + }; + exports2.truncateTableData = truncateTableData; } }); -// ../../node_modules/.pnpm/slice-ansi@4.0.0/node_modules/slice-ansi/index.js -var require_slice_ansi = __commonJS({ - "../../node_modules/.pnpm/slice-ansi@4.0.0/node_modules/slice-ansi/index.js"(exports2, module2) { - "use strict"; - var isFullwidthCodePoint = require_is_fullwidth_code_point(); - var astralRegex = require_astral_regex(); - var ansiStyles = require_ansi_styles2(); - var ESCAPES = [ - "", - "\x9B" - ]; - var wrapAnsi = (code) => `${ESCAPES[0]}[${code}m`; - var checkAnsi = (ansiCodes, isEscapes, endAnsiCode) => { - let output = []; - ansiCodes = [...ansiCodes]; - for (let ansiCode of ansiCodes) { - const ansiCodeOrigin = ansiCode; - if (ansiCode.includes(";")) { - ansiCode = ansiCode.split(";")[0][0] + "0"; - } - const item = ansiStyles.codes.get(Number.parseInt(ansiCode, 10)); - if (item) { - const indexEscape = ansiCodes.indexOf(item.toString()); - if (indexEscape === -1) { - output.push(wrapAnsi(isEscapes ? item : ansiCodeOrigin)); - } else { - ansiCodes.splice(indexEscape, 1); - } - } else if (isEscapes) { - output.push(wrapAnsi(0)); - break; - } else { - output.push(wrapAnsi(ansiCodeOrigin)); - } - } - if (isEscapes) { - output = output.filter((element, index) => output.indexOf(element) === index); - if (endAnsiCode !== void 0) { - const fistEscapeCode = wrapAnsi(ansiStyles.codes.get(Number.parseInt(endAnsiCode, 10))); - output = output.reduce((current, next) => next === fistEscapeCode ? [next, ...current] : [...current, next], []); - } - } - return output.join(""); +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/createStream.js +var require_createStream2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/createStream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createStream = void 0; + var alignTableData_1 = require_alignTableData2(); + var calculateRowHeights_1 = require_calculateRowHeights2(); + var drawBorder_1 = require_drawBorder2(); + var drawRow_1 = require_drawRow2(); + var makeStreamConfig_1 = require_makeStreamConfig2(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2(); + var padTableData_1 = require_padTableData2(); + var stringifyTableData_1 = require_stringifyTableData2(); + var truncateTableData_1 = require_truncateTableData2(); + var utils_1 = require_utils14(); + var prepareData = (data, config) => { + let rows = (0, stringifyTableData_1.stringifyTableData)(data); + rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config)); + const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config); + rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config); + rows = (0, alignTableData_1.alignTableData)(rows, config); + rows = (0, padTableData_1.padTableData)(rows, config); + return rows; }; - module2.exports = (string, begin, end) => { - const characters = [...string]; - const ansiCodes = []; - let stringEnd = typeof end === "number" ? end : characters.length; - let isInsideEscape = false; - let ansiCode; - let visible = 0; + var create = (row, columnWidths, config) => { + const rows = prepareData([row], config); + const body = rows.map((literalRow) => { + return (0, drawRow_1.drawRow)(literalRow, config); + }).join(""); + let output; + output = ""; + output += (0, drawBorder_1.drawBorderTop)(columnWidths, config); + output += body; + output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config); + output = output.trimEnd(); + process.stdout.write(output); + }; + var append = (row, columnWidths, config) => { + const rows = prepareData([row], config); + const body = rows.map((literalRow) => { + return (0, drawRow_1.drawRow)(literalRow, config); + }).join(""); let output = ""; - for (const [index, character] of characters.entries()) { - let leftEscape = false; - if (ESCAPES.includes(character)) { - const code = /\d[^m]*/.exec(string.slice(index, index + 18)); - ansiCode = code && code.length > 0 ? code[0] : void 0; - if (visible < stringEnd) { - isInsideEscape = true; - if (ansiCode !== void 0) { - ansiCodes.push(ansiCode); - } + const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config); + if (bottom !== "\n") { + output = "\r\x1B[K"; + } + output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config); + output += body; + output += bottom; + output = output.trimEnd(); + process.stdout.write(output); + }; + var createStream = (userConfig) => { + const config = (0, makeStreamConfig_1.makeStreamConfig)(userConfig); + const columnWidths = Object.values(config.columns).map((column) => { + return column.width + column.paddingLeft + column.paddingRight; + }); + let empty = true; + return { + write: (row) => { + if (row.length !== config.columnCount) { + throw new Error("Row cell count does not match the config.columnCount."); } - } else if (isInsideEscape && character === "m") { - isInsideEscape = false; - leftEscape = true; - } - if (!isInsideEscape && !leftEscape) { - visible++; - } - if (!astralRegex({ exact: true }).test(character) && isFullwidthCodePoint(character.codePointAt())) { - visible++; - if (typeof end !== "number") { - stringEnd++; + if (empty) { + empty = false; + create(row, columnWidths, config); + } else { + append(row, columnWidths, config); } } - if (visible > begin && visible <= stringEnd) { - output += character; - } else if (visible === begin && !isInsideEscape && ansiCode !== void 0) { - output = checkAnsi(ansiCodes); - } else if (visible >= stringEnd) { - output += checkAnsi(ansiCodes, true, ansiCode); - break; - } - } - return output; - }; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapString.js -var require_wrapString = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapString.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _sliceAnsi = _interopRequireDefault(require_slice_ansi()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapString = (subject, size) => { - let subjectSlice; - subjectSlice = subject; - const chunks = []; - do { - chunks.push((0, _sliceAnsi.default)(subjectSlice, 0, size)); - subjectSlice = (0, _sliceAnsi.default)(subjectSlice, size).trim(); - } while ((0, _stringWidth.default)(subjectSlice)); - return chunks; + }; }; - var _default = wrapString; - exports2.default = _default; + exports2.createStream = createStream; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapWord.js -var require_wrapWord = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapWord.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js +var require_calculateOutputColumnWidths2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _sliceAnsi = _interopRequireDefault(require_slice_ansi()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapWord = (input, size) => { - let subject; - subject = input; - const chunks = []; - const re = new RegExp("(^.{1," + size + "}(\\s+|$))|(^.{1," + (size - 1) + "}(\\\\|/|_|\\.|,|;|-))"); - do { - let chunk; - chunk = subject.match(re); - if (chunk) { - chunk = chunk[0]; - subject = (0, _sliceAnsi.default)(subject, (0, _stringWidth.default)(chunk)); - chunk = chunk.trim(); - } else { - chunk = (0, _sliceAnsi.default)(subject, 0, size); - subject = (0, _sliceAnsi.default)(subject, size); - } - chunks.push(chunk); - } while ((0, _stringWidth.default)(subject)); - return chunks; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateOutputColumnWidths = void 0; + var calculateOutputColumnWidths = (config) => { + return config.columns.map((col) => { + return col.paddingLeft + col.width + col.paddingRight; + }); }; - var _default = wrapWord; - exports2.default = _default; + exports2.calculateOutputColumnWidths = calculateOutputColumnWidths; } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapCell.js -var require_wrapCell = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/wrapCell.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _wrapString = _interopRequireDefault(require_wrapString()); - var _wrapWord = _interopRequireDefault(require_wrapWord()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapCell = (cellValue, columnWidth, useWrapWord) => { - const cellLines = cellValue.split("\n"); - for (let lineNr = 0; lineNr < cellLines.length; ) { - let lineChunks; - if (useWrapWord) { - lineChunks = (0, _wrapWord.default)(cellLines[lineNr], columnWidth); - } else { - lineChunks = (0, _wrapString.default)(cellLines[lineNr], columnWidth); - } - cellLines.splice(lineNr, 1, ...lineChunks); - lineNr += lineChunks.length; - } - return cellLines; +}); + +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawTable.js +var require_drawTable2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/drawTable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.drawTable = void 0; + var drawBorder_1 = require_drawBorder2(); + var drawContent_1 = require_drawContent2(); + var drawRow_1 = require_drawRow2(); + var utils_1 = require_utils14(); + var drawTable = (rows, outputColumnWidths, rowHeights, config) => { + const { drawHorizontalLine, singleLine } = config; + const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => { + return group.map((row) => { + return (0, drawRow_1.drawRow)(row, { + ...config, + rowIndex: groupIndex + }); + }).join(""); + }); + return (0, drawContent_1.drawContent)({ + contents, + drawSeparator: (index, size) => { + if (index === 0 || index === size) { + return drawHorizontalLine(index, size); + } + return !singleLine && drawHorizontalLine(index, size); + }, + elementType: "row", + rowIndex: -1, + separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, { + ...config, + rowCount: contents.length + }), + spanningCellManager: config.spanningCellManager + }); }; - var _default = wrapCell; - exports2.default = _default; + exports2.drawTable = drawTable; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateCellHeight.js -var require_calculateCellHeight = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateCellHeight.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js +var require_injectHeaderConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _isString2 = _interopRequireDefault(require_isString2()); - var _wrapCell = _interopRequireDefault(require_wrapCell()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateCellHeight = (value, columnWidth, useWrapWord = false) => { - if (!(0, _isString2.default)(value)) { - throw new TypeError("Value must be a string."); - } - if (!Number.isInteger(columnWidth)) { - throw new TypeError("Column width must be an integer."); - } - if (columnWidth < 1) { - throw new Error("Column width must be greater than 0."); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.injectHeaderConfig = void 0; + var injectHeaderConfig = (rows, config) => { + var _a; + let spanningCellConfig = (_a = config.spanningCells) !== null && _a !== void 0 ? _a : []; + const headerConfig = config.header; + const adjustedRows = [...rows]; + if (headerConfig) { + spanningCellConfig = spanningCellConfig.map(({ row, ...rest }) => { + return { + ...rest, + row: row + 1 + }; + }); + const { content, ...headerStyles } = headerConfig; + spanningCellConfig.unshift({ + alignment: "center", + col: 0, + colSpan: rows[0].length, + paddingLeft: 1, + paddingRight: 1, + row: 0, + wrapWord: false, + ...headerStyles + }); + adjustedRows.unshift([content, ...Array.from({ length: rows[0].length - 1 }).fill("")]); } - return (0, _wrapCell.default)(value, columnWidth, useWrapWord).length; + return [ + adjustedRows, + spanningCellConfig + ]; }; - var _default = calculateCellHeight; - exports2.default = _default; + exports2.injectHeaderConfig = injectHeaderConfig; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateRowHeightIndex.js -var require_calculateRowHeightIndex = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateRowHeightIndex.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js +var require_calculateMaximumColumnWidths2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _max2 = _interopRequireDefault(require_max3()); - var _isBoolean2 = _interopRequireDefault(require_isBoolean()); - var _isNumber2 = _interopRequireDefault(require_isNumber()); - var _calculateCellHeight = _interopRequireDefault(require_calculateCellHeight()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateRowHeightIndex = (rows, config) => { - const tableWidth = rows[0].length; - const rowSpanIndex = []; - rows.forEach((cells) => { - const cellHeightIndex = new Array(tableWidth).fill(1); - cells.forEach((value, index1) => { - if (!(0, _isNumber2.default)(config.columns[index1].width)) { - throw new TypeError("column[index].width must be a number."); - } - if (!(0, _isBoolean2.default)(config.columns[index1].wrapWord)) { - throw new TypeError("column[index].wrapWord must be a boolean."); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var utils_1 = require_utils14(); + var calculateMaximumCellWidth = (cell) => { + return Math.max(...cell.split("\n").map(string_width_1.default)); + }; + exports2.calculateMaximumCellWidth = calculateMaximumCellWidth; + var calculateMaximumColumnWidths = (rows, spanningCellConfigs = []) => { + const columnWidths = new Array(rows[0].length).fill(0); + const rangeCoordinates = spanningCellConfigs.map(utils_1.calculateRangeCoordinate); + const isSpanningCell = (rowIndex, columnIndex) => { + return rangeCoordinates.some((rangeCoordinate) => { + return (0, utils_1.isCellInRange)({ + col: columnIndex, + row: rowIndex + }, rangeCoordinate); + }); + }; + rows.forEach((row, rowIndex) => { + row.forEach((cell, cellIndex) => { + if (isSpanningCell(rowIndex, cellIndex)) { + return; } - cellHeightIndex[index1] = (0, _calculateCellHeight.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); + columnWidths[cellIndex] = Math.max(columnWidths[cellIndex], (0, exports2.calculateMaximumCellWidth)(cell)); }); - rowSpanIndex.push((0, _max2.default)(cellHeightIndex)); }); - return rowSpanIndex; + return columnWidths; }; - var _default = calculateRowHeightIndex; - exports2.default = _default; + exports2.calculateMaximumColumnWidths = calculateMaximumColumnWidths; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawBorder.js -var require_drawBorder = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawBorder.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignSpanningCell.js +var require_alignSpanningCell2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/alignSpanningCell.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.drawBorderTop = exports2.drawBorderJoin = exports2.drawBorderBottom = exports2.drawBorder = void 0; - var drawBorder = (columnSizeIndex, parts) => { - const columns = columnSizeIndex.map((size) => { - return parts.body.repeat(size); - }).join(parts.join); - return parts.left + columns + parts.right + "\n"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.drawBorder = drawBorder; - var drawBorderTop = (columnSizeIndex, parts) => { - const border = drawBorder(columnSizeIndex, { - body: parts.topBody, - join: parts.topJoin, - left: parts.topLeft, - right: parts.topRight - }); - if (border === "\n") { - return ""; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.alignVerticalRangeContent = exports2.wrapRangeContent = void 0; + var string_width_1 = __importDefault4(require_string_width()); + var alignString_1 = require_alignString2(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2(); + var padTableData_1 = require_padTableData2(); + var truncateTableData_1 = require_truncateTableData2(); + var utils_1 = require_utils14(); + var wrapCell_1 = require_wrapCell2(); + var wrapRangeContent = (rangeConfig, rangeWidth, context) => { + const { topLeft, paddingRight, paddingLeft, truncate, wrapWord, alignment } = rangeConfig; + const originalContent = context.rows[topLeft.row][topLeft.col]; + const contentWidth = rangeWidth - paddingLeft - paddingRight; + return (0, wrapCell_1.wrapCell)((0, truncateTableData_1.truncateString)(originalContent, truncate), contentWidth, wrapWord).map((line) => { + const alignedLine = (0, alignString_1.alignString)(line, contentWidth, alignment); + return (0, padTableData_1.padString)(alignedLine, paddingLeft, paddingRight); + }); + }; + exports2.wrapRangeContent = wrapRangeContent; + var alignVerticalRangeContent = (range, content, context) => { + const { rows, drawHorizontalLine, rowHeights } = context; + const { topLeft, bottomRight, verticalAlignment } = range; + if (rowHeights.length === 0) { + return []; } - return border; - }; - exports2.drawBorderTop = drawBorderTop; - var drawBorderJoin = (columnSizeIndex, parts) => { - return drawBorder(columnSizeIndex, { - body: parts.joinBody, - join: parts.joinJoin, - left: parts.joinLeft, - right: parts.joinRight - }); - }; - exports2.drawBorderJoin = drawBorderJoin; - var drawBorderBottom = (columnSizeIndex, parts) => { - return drawBorder(columnSizeIndex, { - body: parts.bottomBody, - join: parts.bottomJoin, - left: parts.bottomLeft, - right: parts.bottomRight + const totalCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, bottomRight.row + 1)); + const totalBorderHeight = bottomRight.row - topLeft.row; + const hiddenHorizontalBorderCount = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => { + return !drawHorizontalLine(horizontalBorderIndex, rows.length); + }).length; + const availableRangeHeight = totalCellHeight + totalBorderHeight - hiddenHorizontalBorderCount; + return (0, mapDataUsingRowHeights_1.padCellVertically)(content, availableRangeHeight, verticalAlignment).map((line) => { + if (line.length === 0) { + return " ".repeat((0, string_width_1.default)(content[0])); + } + return line; }); }; - exports2.drawBorderBottom = drawBorderBottom; + exports2.alignVerticalRangeContent = alignVerticalRangeContent; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawRow.js -var require_drawRow = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawRow.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateSpanningCellWidth.js +var require_calculateSpanningCellWidth2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/calculateSpanningCellWidth.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var drawRow = (columns, border) => { - return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + "\n"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calculateSpanningCellWidth = void 0; + var utils_1 = require_utils14(); + var calculateSpanningCellWidth = (rangeConfig, dependencies) => { + const { columnsConfig, drawVerticalLine } = dependencies; + const { topLeft, bottomRight } = rangeConfig; + const totalWidth = (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ width }) => { + return width; + })); + const totalPadding = topLeft.col === bottomRight.col ? columnsConfig[topLeft.col].paddingRight + columnsConfig[bottomRight.col].paddingLeft : (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ paddingLeft, paddingRight }) => { + return paddingLeft + paddingRight; + })); + const totalBorderWidths = bottomRight.col - topLeft.col; + const totalHiddenVerticalBorders = (0, utils_1.sequence)(topLeft.col + 1, bottomRight.col).filter((verticalBorderIndex) => { + return !drawVerticalLine(verticalBorderIndex, columnsConfig.length); + }).length; + return totalWidth + totalPadding + totalBorderWidths - totalHiddenVerticalBorders; }; - var _default = drawRow; - exports2.default = _default; + exports2.calculateSpanningCellWidth = calculateSpanningCellWidth; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayEach.js -var require_arrayEach = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayEach.js"(exports2, module2) { - function arrayEach(array, iteratee) { - var index = -1, length = array == null ? 0 : array.length; - while (++index < length) { - if (iteratee(array[index], index, array) === false) { - break; - } - } - return array; - } - module2.exports = arrayEach; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeRangeConfig.js +var require_makeRangeConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeRangeConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeRangeConfig = void 0; + var utils_1 = require_utils14(); + var makeRangeConfig = (spanningCellConfig, columnsConfig) => { + var _a; + const { topLeft, bottomRight } = (0, utils_1.calculateRangeCoordinate)(spanningCellConfig); + const cellConfig = { + ...columnsConfig[topLeft.col], + ...spanningCellConfig, + paddingRight: (_a = spanningCellConfig.paddingRight) !== null && _a !== void 0 ? _a : columnsConfig[bottomRight.col].paddingRight + }; + return { + ...cellConfig, + bottomRight, + topLeft + }; + }; + exports2.makeRangeConfig = makeRangeConfig; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js -var require_assignValue = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js"(exports2, module2) { - var baseAssignValue = require_baseAssignValue(); - var eq = require_eq2(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { - baseAssignValue(object, key, value); +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/spanningCellManager.js +var require_spanningCellManager2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/spanningCellManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createSpanningCellManager = void 0; + var alignSpanningCell_1 = require_alignSpanningCell2(); + var calculateSpanningCellWidth_1 = require_calculateSpanningCellWidth2(); + var makeRangeConfig_1 = require_makeRangeConfig2(); + var utils_1 = require_utils14(); + var findRangeConfig = (cell, rangeConfigs) => { + return rangeConfigs.find((rangeCoordinate) => { + return (0, utils_1.isCellInRange)(cell, rangeCoordinate); + }); + }; + var getContainingRange = (rangeConfig, context) => { + const width = (0, calculateSpanningCellWidth_1.calculateSpanningCellWidth)(rangeConfig, context); + const wrappedContent = (0, alignSpanningCell_1.wrapRangeContent)(rangeConfig, width, context); + const alignedContent = (0, alignSpanningCell_1.alignVerticalRangeContent)(rangeConfig, wrappedContent, context); + const getCellContent = (rowIndex) => { + const { topLeft } = rangeConfig; + const { drawHorizontalLine, rowHeights } = context; + const totalWithinHorizontalBorderHeight = rowIndex - topLeft.row; + const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, rowIndex).filter((index) => { + return !(drawHorizontalLine === null || drawHorizontalLine === void 0 ? void 0 : drawHorizontalLine(index, rowHeights.length)); + }).length; + const offset = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, rowIndex)) + totalWithinHorizontalBorderHeight - totalHiddenHorizontalBorderHeight; + return alignedContent.slice(offset, offset + rowHeights[rowIndex]); + }; + const getBorderContent = (borderIndex) => { + const { topLeft } = rangeConfig; + const offset = (0, utils_1.sumArray)(context.rowHeights.slice(topLeft.row, borderIndex)) + (borderIndex - topLeft.row - 1); + return alignedContent[offset]; + }; + return { + ...rangeConfig, + extractBorderContent: getBorderContent, + extractCellContent: getCellContent, + height: wrappedContent.length, + width + }; + }; + var inSameRange = (cell1, cell2, ranges) => { + const range1 = findRangeConfig(cell1, ranges); + const range2 = findRangeConfig(cell2, ranges); + if (range1 && range2) { + return (0, utils_1.areCellEqual)(range1.topLeft, range2.topLeft); } - } - module2.exports = assignValue; + return false; + }; + var hashRange = (range) => { + const { row, col } = range.topLeft; + return `${row}/${col}`; + }; + var createSpanningCellManager = (parameters) => { + const { spanningCellConfigs, columnsConfig } = parameters; + const ranges = spanningCellConfigs.map((config) => { + return (0, makeRangeConfig_1.makeRangeConfig)(config, columnsConfig); + }); + const rangeCache = {}; + let rowHeights = []; + return { + getContainingRange: (cell, options) => { + var _a; + const originalRow = (options === null || options === void 0 ? void 0 : options.mapped) ? (0, utils_1.findOriginalRowIndex)(rowHeights, cell.row) : cell.row; + const range = findRangeConfig({ + ...cell, + row: originalRow + }, ranges); + if (!range) { + return void 0; + } + if (rowHeights.length === 0) { + return getContainingRange(range, { + ...parameters, + rowHeights + }); + } + const hash = hashRange(range); + (_a = rangeCache[hash]) !== null && _a !== void 0 ? _a : rangeCache[hash] = getContainingRange(range, { + ...parameters, + rowHeights + }); + return rangeCache[hash]; + }, + inSameRange: (cell1, cell2) => { + return inSameRange(cell1, cell2, ranges); + }, + rowHeights, + setRowHeights: (_rowHeights) => { + rowHeights = _rowHeights; + } + }; + }; + exports2.createSpanningCellManager = createSpanningCellManager; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyObject.js -var require_copyObject = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyObject.js"(exports2, module2) { - var assignValue = require_assignValue(); - var baseAssignValue = require_baseAssignValue(); - function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - var index = -1, length = props.length; - while (++index < length) { - var key = props[index]; - var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0; - if (newValue === void 0) { - newValue = source[key]; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateSpanningCellConfig.js +var require_validateSpanningCellConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateSpanningCellConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateSpanningCellConfig = void 0; + var utils_1 = require_utils14(); + var inRange = (start, end, value) => { + return start <= value && value <= end; + }; + var validateSpanningCellConfig = (rows, configs) => { + const [nRow, nCol] = [rows.length, rows[0].length]; + configs.forEach((config, configIndex) => { + const { colSpan, rowSpan } = config; + if (colSpan === void 0 && rowSpan === void 0) { + throw new Error(`Expect at least colSpan or rowSpan is provided in config.spanningCells[${configIndex}]`); } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); + if (colSpan !== void 0 && colSpan < 1) { + throw new Error(`Expect colSpan is not equal zero, instead got: ${colSpan} in config.spanningCells[${configIndex}]`); } - } - return object; - } - module2.exports = copyObject; + if (rowSpan !== void 0 && rowSpan < 1) { + throw new Error(`Expect rowSpan is not equal zero, instead got: ${rowSpan} in config.spanningCells[${configIndex}]`); + } + }); + const rangeCoordinates = configs.map(utils_1.calculateRangeCoordinate); + rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => { + if (!inRange(0, nCol - 1, topLeft.col) || !inRange(0, nRow - 1, topLeft.row) || !inRange(0, nCol - 1, bottomRight.col) || !inRange(0, nRow - 1, bottomRight.row)) { + throw new Error(`Some cells in config.spanningCells[${rangeIndex}] are out of the table`); + } + }); + const configOccupy = Array.from({ length: nRow }, () => { + return Array.from({ length: nCol }); + }); + rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => { + (0, utils_1.sequence)(topLeft.row, bottomRight.row).forEach((row) => { + (0, utils_1.sequence)(topLeft.col, bottomRight.col).forEach((col) => { + if (configOccupy[row][col] !== void 0) { + throw new Error(`Spanning cells in config.spanningCells[${configOccupy[row][col]}] and config.spanningCells[${rangeIndex}] are overlap each other`); + } + configOccupy[row][col] = rangeIndex; + }); + }); + }); + }; + exports2.validateSpanningCellConfig = validateSpanningCellConfig; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssign.js -var require_baseAssign = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssign.js"(exports2, module2) { - var copyObject = require_copyObject(); - var keys = require_keys2(); - function baseAssign(object, source) { - return object && copyObject(source, keys(source), object); - } - module2.exports = baseAssign; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeTableConfig.js +var require_makeTableConfig2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/makeTableConfig.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeTableConfig = void 0; + var calculateMaximumColumnWidths_1 = require_calculateMaximumColumnWidths2(); + var spanningCellManager_1 = require_spanningCellManager2(); + var utils_1 = require_utils14(); + var validateConfig_1 = require_validateConfig2(); + var validateSpanningCellConfig_1 = require_validateSpanningCellConfig2(); + var makeColumnsConfig = (rows, columns, columnDefault, spanningCellConfigs) => { + const columnWidths = (0, calculateMaximumColumnWidths_1.calculateMaximumColumnWidths)(rows, spanningCellConfigs); + return rows[0].map((_, columnIndex) => { + return { + alignment: "left", + paddingLeft: 1, + paddingRight: 1, + truncate: Number.POSITIVE_INFINITY, + verticalAlignment: "top", + width: columnWidths[columnIndex], + wrapWord: false, + ...columnDefault, + ...columns === null || columns === void 0 ? void 0 : columns[columnIndex] + }; + }); + }; + var makeTableConfig = (rows, config = {}, injectedSpanningCellConfig) => { + var _a, _b, _c, _d, _e; + (0, validateConfig_1.validateConfig)("config.json", config); + (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, (_a = config.spanningCells) !== null && _a !== void 0 ? _a : []); + const spanningCellConfigs = (_b = injectedSpanningCellConfig !== null && injectedSpanningCellConfig !== void 0 ? injectedSpanningCellConfig : config.spanningCells) !== null && _b !== void 0 ? _b : []; + const columnsConfig = makeColumnsConfig(rows, config.columns, config.columnDefault, spanningCellConfigs); + const drawVerticalLine = (_c = config.drawVerticalLine) !== null && _c !== void 0 ? _c : () => { + return true; + }; + const drawHorizontalLine = (_d = config.drawHorizontalLine) !== null && _d !== void 0 ? _d : () => { + return true; + }; + return { + ...config, + border: (0, utils_1.makeBorderConfig)(config.border), + columns: columnsConfig, + drawHorizontalLine, + drawVerticalLine, + singleLine: (_e = config.singleLine) !== null && _e !== void 0 ? _e : false, + spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({ + columnsConfig, + drawHorizontalLine, + drawVerticalLine, + rows, + spanningCellConfigs + }) + }; + }; + exports2.makeTableConfig = makeTableConfig; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeysIn.js -var require_nativeKeysIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeysIn.js"(exports2, module2) { - function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateTableData.js +var require_validateTableData2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/validateTableData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateTableData = void 0; + var utils_1 = require_utils14(); + var validateTableData = (rows) => { + if (!Array.isArray(rows)) { + throw new TypeError("Table data must be an array."); } - return result; - } - module2.exports = nativeKeysIn; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeysIn.js -var require_baseKeysIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeysIn.js"(exports2, module2) { - var isObject = require_isObject2(); - var isPrototype = require_isPrototype(); - var nativeKeysIn = require_nativeKeysIn(); - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function baseKeysIn(object) { - if (!isObject(object)) { - return nativeKeysIn(object); + if (rows.length === 0) { + throw new Error("Table must define at least one row."); } - var isProto = isPrototype(object), result = []; - for (var key in object) { - if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) { - result.push(key); + if (rows[0].length === 0) { + throw new Error("Table must define at least one column."); + } + const columnNumber = rows[0].length; + for (const row of rows) { + if (!Array.isArray(row)) { + throw new TypeError("Table row data must be an array."); + } + if (row.length !== columnNumber) { + throw new Error("Table must have a consistent number of cells."); + } + for (const cell of row) { + if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test((0, utils_1.normalizeString)(String(cell)))) { + throw new Error("Table data must not contain control characters."); + } } } - return result; - } - module2.exports = baseKeysIn; + }; + exports2.validateTableData = validateTableData; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keysIn.js -var require_keysIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keysIn.js"(exports2, module2) { - var arrayLikeKeys = require_arrayLikeKeys(); - var baseKeysIn = require_baseKeysIn(); - var isArrayLike = require_isArrayLike3(); - function keysIn(object) { - return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); - } - module2.exports = keysIn; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/table.js +var require_table2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/table.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.table = void 0; + var alignTableData_1 = require_alignTableData2(); + var calculateOutputColumnWidths_1 = require_calculateOutputColumnWidths2(); + var calculateRowHeights_1 = require_calculateRowHeights2(); + var drawTable_1 = require_drawTable2(); + var injectHeaderConfig_1 = require_injectHeaderConfig2(); + var makeTableConfig_1 = require_makeTableConfig2(); + var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2(); + var padTableData_1 = require_padTableData2(); + var stringifyTableData_1 = require_stringifyTableData2(); + var truncateTableData_1 = require_truncateTableData2(); + var utils_1 = require_utils14(); + var validateTableData_1 = require_validateTableData2(); + var table = (data, userConfig = {}) => { + (0, validateTableData_1.validateTableData)(data); + let rows = (0, stringifyTableData_1.stringifyTableData)(data); + const [injectedRows, injectedSpanningCellConfig] = (0, injectHeaderConfig_1.injectHeaderConfig)(rows, userConfig); + const config = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig); + rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config)); + const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config); + config.spanningCellManager.setRowHeights(rowHeights); + rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config); + rows = (0, alignTableData_1.alignTableData)(rows, config); + rows = (0, padTableData_1.padTableData)(rows, config); + const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config); + return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config); + }; + exports2.table = table; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignIn.js -var require_baseAssignIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignIn.js"(exports2, module2) { - var copyObject = require_copyObject(); - var keysIn = require_keysIn(); - function baseAssignIn(object, source) { - return object && copyObject(source, keysIn(source), object); - } - module2.exports = baseAssignIn; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/types/api.js +var require_api2 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/types/api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneBuffer.js -var require_cloneBuffer = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneBuffer.js"(exports2, module2) { - var root = require_root(); - var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; - var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; - var moduleExports = freeModule && freeModule.exports === freeExports; - var Buffer2 = moduleExports ? root.Buffer : void 0; - var allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : void 0; - function cloneBuffer(buffer, isDeep) { - if (isDeep) { - return buffer.slice(); - } - var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); - buffer.copy(result); - return result; - } - module2.exports = cloneBuffer; +// ../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/index.js +var require_src6 = __commonJS({ + "../node_modules/.pnpm/@zkochan+table@1.0.1/node_modules/@zkochan/table/dist/src/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getBorderCharacters = exports2.createStream = exports2.table = void 0; + var createStream_1 = require_createStream2(); + Object.defineProperty(exports2, "createStream", { enumerable: true, get: function() { + return createStream_1.createStream; + } }); + var getBorderCharacters_1 = require_getBorderCharacters2(); + Object.defineProperty(exports2, "getBorderCharacters", { enumerable: true, get: function() { + return getBorderCharacters_1.getBorderCharacters; + } }); + var table_1 = require_table2(); + Object.defineProperty(exports2, "table", { enumerable: true, get: function() { + return table_1.table; + } }); + __exportStar4(require_api2(), exports2); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyArray.js -var require_copyArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyArray.js"(exports2, module2) { - function copyArray(source, array) { - var index = -1, length = source.length; - array || (array = Array(length)); - while (++index < length) { - array[index] = source[index]; +// ../lockfile/plugin-commands-audit/lib/fix.js +var require_fix = __commonJS({ + "../lockfile/plugin-commands-audit/lib/fix.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fix = void 0; + var read_project_manifest_1 = require_lib16(); + var difference_1 = __importDefault4(require_difference()); + async function fix(dir, auditReport) { + const { manifest, writeProjectManifest } = await (0, read_project_manifest_1.readProjectManifest)(dir); + const vulnOverrides = createOverrides(Object.values(auditReport.advisories), manifest.pnpm?.auditConfig?.ignoreCves); + if (Object.values(vulnOverrides).length === 0) + return vulnOverrides; + await writeProjectManifest({ + ...manifest, + pnpm: { + ...manifest.pnpm, + overrides: { + ...manifest.pnpm?.overrides, + ...vulnOverrides + } + } + }); + return vulnOverrides; + } + exports2.fix = fix; + function createOverrides(advisories, ignoreCves) { + if (ignoreCves) { + advisories = advisories.filter(({ cves }) => (0, difference_1.default)(cves, ignoreCves).length > 0); } - return array; + return Object.fromEntries(advisories.filter(({ vulnerable_versions, patched_versions }) => vulnerable_versions !== ">=0.0.0" && patched_versions !== "<0.0.0").map((advisory) => [ + `${advisory.module_name}@${advisory.vulnerable_versions}`, + advisory.patched_versions + ])); } - module2.exports = copyArray; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copySymbols.js -var require_copySymbols = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copySymbols.js"(exports2, module2) { - var copyObject = require_copyObject(); - var getSymbols = require_getSymbols(); - function copySymbols(source, object) { - return copyObject(source, getSymbols(source), object); +// ../lockfile/plugin-commands-audit/lib/audit.js +var require_audit2 = __commonJS({ + "../lockfile/plugin-commands-audit/lib/audit.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var audit_1 = require_lib92(); + var network_auth_header_1 = require_lib76(); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var lockfile_file_1 = require_lib87(); + var table_1 = require_src6(); + var chalk_1 = __importDefault4(require_source()); + var difference_1 = __importDefault4(require_difference()); + var pick_1 = __importDefault4(require_pick()); + var pickBy_1 = __importDefault4(require_pickBy()); + var render_help_1 = __importDefault4(require_lib34()); + var fix_1 = require_fix(); + var AUDIT_LEVEL_NUMBER = { + low: 0, + moderate: 1, + high: 2, + critical: 3 + }; + var AUDIT_COLOR = { + low: chalk_1.default.bold, + moderate: chalk_1.default.bold.yellow, + high: chalk_1.default.bold.red, + critical: chalk_1.default.bold.red + }; + var AUDIT_TABLE_OPTIONS = { + ...cli_utils_1.TABLE_OPTIONS, + columns: { + 1: { + width: 54, + wrapWord: true + } + } + }; + var MAX_PATHS_COUNT = 3; + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return { + ...(0, pick_1.default)([ + "dev", + "json", + "only", + "optional", + "production", + "registry" + ], config_1.types), + "audit-level": ["low", "moderate", "high", "critical"], + fix: Boolean, + "ignore-registry-errors": Boolean + }; } - module2.exports = copySymbols; - } -}); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production" + }; + exports2.commandNames = ["audit"]; + function help() { + return (0, render_help_1.default)({ + description: "Checks for known security issues with the installed packages.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Add overrides to the package.json file in order to force non-vulnerable versions of the dependencies", + name: "--fix" + }, + { + description: "Output audit report in JSON format", + name: "--json" + }, + { + description: "Only print advisories with severity greater than or equal to one of the following: low|moderate|high|critical. Default: low", + name: "--audit-level " + }, + { + description: 'Only audit "devDependencies"', + name: "--dev", + shortAlias: "-D" + }, + { + description: 'Only audit "dependencies" and "optionalDependencies"', + name: "--prod", + shortAlias: "-P" + }, + { + description: `Don't audit "optionalDependencies"`, + name: "--no-optional" + }, + { + description: "Use exit code 0 if the registry responds with an error. Useful when audit checks are used in CI. A build should fail because the registry has issues.", + name: "--ignore-registry-errors" + } + ] + } + ], + url: (0, cli_utils_1.docsUrl)("audit"), + usages: ["pnpm audit [options]"] + }); + } + exports2.help = help; + async function handler(opts) { + const lockfileDir = opts.lockfileDir ?? opts.dir; + const lockfile = await (0, lockfile_file_1.readWantedLockfile)(lockfileDir, { ignoreIncompatible: true }); + if (lockfile == null) { + throw new error_1.PnpmError("AUDIT_NO_LOCKFILE", `No ${constants_1.WANTED_LOCKFILE} found: Cannot audit a project without a lockfile`); + } + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + optionalDependencies: opts.optional !== false + }; + let auditReport; + const getAuthHeader = (0, network_auth_header_1.createGetAuthHeaderByURI)({ allSettings: opts.rawConfig, userSettings: opts.userConfig }); + try { + auditReport = await (0, audit_1.audit)(lockfile, getAuthHeader, { + agentOptions: { + ca: opts.ca, + cert: opts.cert, + httpProxy: opts.httpProxy, + httpsProxy: opts.httpsProxy, + key: opts.key, + localAddress: opts.localAddress, + maxSockets: opts.maxSockets, + noProxy: opts.noProxy, + strictSsl: opts.strictSsl, + timeout: opts.fetchTimeout + }, + include, + lockfileDir, + registry: opts.registries.default, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + timeout: opts.fetchTimeout + }); + } catch (err) { + if (opts.ignoreRegistryErrors) { + return { + exitCode: 0, + output: err.message + }; + } + throw err; + } + if (opts.fix) { + const newOverrides = await (0, fix_1.fix)(opts.dir, auditReport); + if (Object.values(newOverrides).length === 0) { + return { + exitCode: 0, + output: "No fixes were made" + }; + } + return { + exitCode: 0, + output: `${Object.values(newOverrides).length} overrides were added to package.json to fix vulnerabilities. +Run "pnpm install" to apply the fixes. -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getPrototype.js -var require_getPrototype = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getPrototype.js"(exports2, module2) { - var overArg = require_overArg(); - var getPrototype = overArg(Object.getPrototypeOf, Object); - module2.exports = getPrototype; +The added overrides: +${JSON.stringify(newOverrides, null, 2)}` + }; + } + const vulnerabilities = auditReport.metadata.vulnerabilities; + const totalVulnerabilityCount = Object.values(vulnerabilities).reduce((sum, vulnerabilitiesCount) => sum + vulnerabilitiesCount, 0); + const ignoreCves = opts.rootProjectManifest?.pnpm?.auditConfig?.ignoreCves; + if (ignoreCves) { + auditReport.advisories = (0, pickBy_1.default)(({ cves }) => cves.length === 0 || (0, difference_1.default)(cves, ignoreCves).length > 0, auditReport.advisories); + } + if (opts.json) { + return { + exitCode: totalVulnerabilityCount > 0 ? 1 : 0, + output: JSON.stringify(auditReport, null, 2) + }; + } + let output = ""; + const auditLevel = AUDIT_LEVEL_NUMBER[opts.auditLevel ?? "low"]; + let advisories = Object.values(auditReport.advisories); + advisories = advisories.filter(({ severity }) => AUDIT_LEVEL_NUMBER[severity] >= auditLevel).sort((a1, a2) => AUDIT_LEVEL_NUMBER[a2.severity] - AUDIT_LEVEL_NUMBER[a1.severity]); + for (const advisory of advisories) { + const paths = advisory.findings.map(({ paths: paths2 }) => paths2).flat(); + output += (0, table_1.table)([ + [AUDIT_COLOR[advisory.severity](advisory.severity), chalk_1.default.bold(advisory.title)], + ["Package", advisory.module_name], + ["Vulnerable versions", advisory.vulnerable_versions], + ["Patched versions", advisory.patched_versions], + [ + "Paths", + (paths.length > MAX_PATHS_COUNT ? paths.slice(0, MAX_PATHS_COUNT).concat([ + `... Found ${paths.length} paths, run \`pnpm why ${advisory.module_name}\` for more information` + ]) : paths).join("\n\n") + ], + ["More info", advisory.url] + ], AUDIT_TABLE_OPTIONS); + } + return { + exitCode: output ? 1 : 0, + output: `${output}${reportSummary(auditReport.metadata.vulnerabilities, totalVulnerabilityCount)}` + }; + } + exports2.handler = handler; + function reportSummary(vulnerabilities, totalVulnerabilityCount) { + if (totalVulnerabilityCount === 0) + return "No known vulnerabilities found\n"; + return `${chalk_1.default.red(totalVulnerabilityCount)} vulnerabilities found +Severity: ${Object.entries(vulnerabilities).filter(([auditLevel, vulnerabilitiesCount]) => vulnerabilitiesCount > 0).map(([auditLevel, vulnerabilitiesCount]) => AUDIT_COLOR[auditLevel](`${vulnerabilitiesCount} ${auditLevel}`)).join(" | ")}`; + } } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbolsIn.js -var require_getSymbolsIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbolsIn.js"(exports2, module2) { - var arrayPush = require_arrayPush(); - var getPrototype = require_getPrototype(); - var getSymbols = require_getSymbols(); - var stubArray = require_stubArray(); - var nativeGetSymbols = Object.getOwnPropertySymbols; - var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { - var result = []; - while (object) { - arrayPush(result, getSymbols(object)); - object = getPrototype(object); +// ../lockfile/plugin-commands-audit/lib/index.js +var require_lib93 = __commonJS({ + "../lockfile/plugin-commands-audit/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return result; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; }; - module2.exports = getSymbolsIn; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.audit = void 0; + var audit = __importStar5(require_audit2()); + exports2.audit = audit; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copySymbolsIn.js -var require_copySymbolsIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copySymbolsIn.js"(exports2, module2) { - var copyObject = require_copyObject(); - var getSymbolsIn = require_getSymbolsIn(); - function copySymbolsIn(source, object) { - return copyObject(source, getSymbolsIn(source), object); +// ../config/plugin-commands-config/lib/configGet.js +var require_configGet = __commonJS({ + "../config/plugin-commands-config/lib/configGet.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.configGet = void 0; + function configGet(opts, key) { + const config = opts.rawConfig[key]; + return typeof config === "boolean" ? config.toString() : config; } - module2.exports = copySymbolsIn; + exports2.configGet = configGet; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeysIn.js -var require_getAllKeysIn = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeysIn.js"(exports2, module2) { - var baseGetAllKeys = require_baseGetAllKeys(); - var getSymbolsIn = require_getSymbolsIn(); - var keysIn = require_keysIn(); - function getAllKeysIn(object) { - return baseGetAllKeys(object, keysIn, getSymbolsIn); +// ../exec/run-npm/lib/index.js +var require_lib94 = __commonJS({ + "../exec/run-npm/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.runScriptSync = exports2.runNpm = void 0; + var path_1 = __importDefault4(require("path")); + var cross_spawn_1 = __importDefault4(require_cross_spawn()); + var path_name_1 = __importDefault4(require_path_name()); + function runNpm(npmPath, args2, options) { + const npm = npmPath ?? "npm"; + return runScriptSync(npm, args2, { + cwd: options?.cwd ?? process.cwd(), + stdio: "inherit", + userAgent: void 0 + }); } - module2.exports = getAllKeysIn; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneArray.js -var require_initCloneArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneArray.js"(exports2, module2) { - var objectProto = Object.prototype; - var hasOwnProperty = objectProto.hasOwnProperty; - function initCloneArray(array) { - var length = array.length, result = new array.constructor(length); - if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) { - result.index = array.index; - result.input = array.input; - } - return result; + exports2.runNpm = runNpm; + function runScriptSync(command, args2, opts) { + opts = Object.assign({}, opts); + const result2 = cross_spawn_1.default.sync(command, args2, Object.assign({}, opts, { + env: createEnv(opts) + })); + if (result2.error) + throw result2.error; + return result2; } - module2.exports = initCloneArray; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneArrayBuffer.js -var require_cloneArrayBuffer = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneArrayBuffer.js"(exports2, module2) { - var Uint8Array2 = require_Uint8Array(); - function cloneArrayBuffer(arrayBuffer) { - var result = new arrayBuffer.constructor(arrayBuffer.byteLength); - new Uint8Array2(result).set(new Uint8Array2(arrayBuffer)); - return result; + exports2.runScriptSync = runScriptSync; + function createEnv(opts) { + const env = Object.create(process.env); + env[path_name_1.default] = [ + path_1.default.join(opts.cwd, "node_modules", ".bin"), + path_1.default.dirname(process.execPath), + process.env[path_name_1.default] + ].join(path_1.default.delimiter); + if (opts.userAgent) { + env.npm_config_user_agent = opts.userAgent; + } + return env; } - module2.exports = cloneArrayBuffer; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneDataView.js -var require_cloneDataView = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneDataView.js"(exports2, module2) { - var cloneArrayBuffer = require_cloneArrayBuffer(); - function cloneDataView(dataView, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; - return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); - } - module2.exports = cloneDataView; +// ../node_modules/.pnpm/write-ini-file@4.0.1/node_modules/write-ini-file/index.js +var require_write_ini_file = __commonJS({ + "../node_modules/.pnpm/write-ini-file@4.0.1/node_modules/write-ini-file/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var writeFileAtomic = require_lib13(); + var fs2 = require("fs"); + var ini = require_ini2(); + var main = (fn2, fp, data, opts) => { + if (!fp) { + throw new TypeError("Expected a filepath"); + } + if (data === void 0) { + throw new TypeError("Expected data to stringify"); + } + opts = opts || {}; + const encodedData = ini.encode(data, opts); + return fn2(fp, encodedData, { mode: opts.mode }); + }; + module2.exports.writeIniFile = async (fp, data, opts) => { + await fs2.promises.mkdir(path2.dirname(fp), { recursive: true }); + return main(writeFileAtomic, fp, data, opts); + }; + module2.exports.writeIniFileSync = (fp, data, opts) => { + fs2.mkdirSync(path2.dirname(fp), { recursive: true }); + main(writeFileAtomic.sync, fp, data, opts); + }; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneRegExp.js -var require_cloneRegExp = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneRegExp.js"(exports2, module2) { - var reFlags = /\w*$/; - function cloneRegExp(regexp) { - var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); - result.lastIndex = regexp.lastIndex; - return result; +// ../config/plugin-commands-config/lib/configSet.js +var require_configSet = __commonJS({ + "../config/plugin-commands-config/lib/configSet.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.configSet = void 0; + var path_1 = __importDefault4(require("path")); + var run_npm_1 = require_lib94(); + var read_ini_file_1 = require_read_ini_file(); + var write_ini_file_1 = require_write_ini_file(); + async function configSet(opts, key, value) { + const configPath = opts.global ? path_1.default.join(opts.configDir, "rc") : path_1.default.join(opts.dir, ".npmrc"); + if (opts.global && settingShouldFallBackToNpm(key)) { + const _runNpm = run_npm_1.runNpm.bind(null, opts.npmPath); + if (value == null) { + _runNpm(["config", "delete", key]); + } else { + _runNpm(["config", "set", `${key}=${value}`]); + } + return; + } + const settings = await safeReadIniFile(configPath); + if (value == null) { + if (settings[key] == null) + return; + delete settings[key]; + } else { + settings[key] = value; + } + await (0, write_ini_file_1.writeIniFile)(configPath, settings); } - module2.exports = cloneRegExp; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneSymbol.js -var require_cloneSymbol = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneSymbol.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var symbolProto = Symbol2 ? Symbol2.prototype : void 0; - var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; - function cloneSymbol(symbol) { - return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; + exports2.configSet = configSet; + function settingShouldFallBackToNpm(key) { + return ["registry", "_auth", "_authToken", "username", "_password"].includes(key) || key[0] === "@" || key.startsWith("//"); } - module2.exports = cloneSymbol; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneTypedArray.js -var require_cloneTypedArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneTypedArray.js"(exports2, module2) { - var cloneArrayBuffer = require_cloneArrayBuffer(); - function cloneTypedArray(typedArray, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; - return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + async function safeReadIniFile(configPath) { + try { + return await (0, read_ini_file_1.readIniFile)(configPath); + } catch (err) { + if (err.code === "ENOENT") + return {}; + throw err; + } } - module2.exports = cloneTypedArray; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneByTag.js -var require_initCloneByTag = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneByTag.js"(exports2, module2) { - var cloneArrayBuffer = require_cloneArrayBuffer(); - var cloneDataView = require_cloneDataView(); - var cloneRegExp = require_cloneRegExp(); - var cloneSymbol = require_cloneSymbol(); - var cloneTypedArray = require_cloneTypedArray(); - var boolTag = "[object Boolean]"; - var dateTag = "[object Date]"; - var mapTag = "[object Map]"; - var numberTag = "[object Number]"; - var regexpTag = "[object RegExp]"; - var setTag = "[object Set]"; - var stringTag = "[object String]"; - var symbolTag = "[object Symbol]"; - var arrayBufferTag = "[object ArrayBuffer]"; - var dataViewTag = "[object DataView]"; - var float32Tag = "[object Float32Array]"; - var float64Tag = "[object Float64Array]"; - var int8Tag = "[object Int8Array]"; - var int16Tag = "[object Int16Array]"; - var int32Tag = "[object Int32Array]"; - var uint8Tag = "[object Uint8Array]"; - var uint8ClampedTag = "[object Uint8ClampedArray]"; - var uint16Tag = "[object Uint16Array]"; - var uint32Tag = "[object Uint32Array]"; - function initCloneByTag(object, tag, isDeep) { - var Ctor = object.constructor; - switch (tag) { - case arrayBufferTag: - return cloneArrayBuffer(object); - case boolTag: - case dateTag: - return new Ctor(+object); - case dataViewTag: - return cloneDataView(object, isDeep); - case float32Tag: - case float64Tag: - case int8Tag: - case int16Tag: - case int32Tag: - case uint8Tag: - case uint8ClampedTag: - case uint16Tag: - case uint32Tag: - return cloneTypedArray(object, isDeep); - case mapTag: - return new Ctor(); - case numberTag: - case stringTag: - return new Ctor(object); - case regexpTag: - return cloneRegExp(object); - case setTag: - return new Ctor(); - case symbolTag: - return cloneSymbol(object); +// ../config/plugin-commands-config/lib/configList.js +var require_configList = __commonJS({ + "../config/plugin-commands-config/lib/configList.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.configList = void 0; + var ini_1 = require_ini2(); + var sort_keys_1 = __importDefault4(require_sort_keys()); + async function configList(opts) { + const sortedConfig = (0, sort_keys_1.default)(opts.rawConfig); + if (opts.json) { + return JSON.stringify(sortedConfig, null, 2); } + return (0, ini_1.encode)(sortedConfig); } - module2.exports = initCloneByTag; + exports2.configList = configList; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseCreate.js -var require_baseCreate = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseCreate.js"(exports2, module2) { - var isObject = require_isObject2(); - var objectCreate = Object.create; - var baseCreate = function() { - function object() { +// ../config/plugin-commands-config/lib/config.js +var require_config2 = __commonJS({ + "../config/plugin-commands-config/lib/config.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var render_help_1 = __importDefault4(require_lib34()); + var configGet_1 = require_configGet(); + var configSet_1 = require_configSet(); + var configList_1 = require_configList(); + function rcOptionsTypes() { + return {}; + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + global: Boolean, + location: ["global", "project"], + json: Boolean + }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["config", "c"]; + function help() { + return (0, render_help_1.default)({ + description: "Manage the pnpm configuration files.", + descriptionLists: [ + { + title: "Commands", + list: [ + { + description: "Set the config key to the value provided", + name: "set" + }, + { + description: "Print the config value for the provided key", + name: "get" + }, + { + description: "Remove the config key from the config file", + name: "delete" + }, + { + description: "Show all the config settings", + name: "list" + } + ] + }, + { + title: "Options", + list: [ + { + description: "Sets the configuration in the global config file", + name: "--global", + shortAlias: "-g" + }, + { + description: 'When set to "project", the .npmrc file at the nearest package.json will be used', + name: "--location " + } + ] + } + ], + url: (0, cli_utils_1.docsUrl)("config"), + usages: [ + "pnpm config set ", + "pnpm config get ", + "pnpm config delete ", + "pnpm config list" + ] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (params.length === 0) { + throw new error_1.PnpmError("CONFIG_NO_SUBCOMMAND", "Please specify the subcommand", { + hint: help() + }); } - return function(proto) { - if (!isObject(proto)) { - return {}; + if (opts.location) { + opts.global = opts.location === "global"; + } else if (opts.cliOptions["global"] == null) { + opts.global = true; + } + switch (params[0]) { + case "set": { + let [key, value] = params.slice(1); + if (value == null) { + const parts = key.split("="); + key = parts.shift(); + value = parts.join("="); + } + return (0, configSet_1.configSet)(opts, key, value ?? ""); } - if (objectCreate) { - return objectCreate(proto); + case "get": { + return (0, configGet_1.configGet)(opts, params[1]); } - object.prototype = proto; - var result = new object(); - object.prototype = void 0; - return result; - }; - }(); - module2.exports = baseCreate; + case "delete": { + return (0, configSet_1.configSet)(opts, params[1], null); + } + case "list": { + return (0, configList_1.configList)(opts); + } + default: { + throw new error_1.PnpmError("CONFIG_UNKNOWN_SUBCOMMAND", "This subcommand is not known"); + } + } + } + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneObject.js -var require_initCloneObject = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneObject.js"(exports2, module2) { - var baseCreate = require_baseCreate(); - var getPrototype = require_getPrototype(); - var isPrototype = require_isPrototype(); - function initCloneObject(object) { - return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; +// ../config/plugin-commands-config/lib/get.js +var require_get2 = __commonJS({ + "../config/plugin-commands-config/lib/get.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.commandNames = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var configCmd = __importStar5(require_config2()); + exports2.rcOptionsTypes = configCmd.rcOptionsTypes; + exports2.cliOptionsTypes = configCmd.cliOptionsTypes; + exports2.help = configCmd.help; + exports2.commandNames = ["get"]; + async function handler(opts, params) { + return configCmd.handler(opts, ["get", ...params]); } - module2.exports = initCloneObject; + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsMap.js -var require_baseIsMap = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsMap.js"(exports2, module2) { - var getTag = require_getTag(); - var isObjectLike = require_isObjectLike(); - var mapTag = "[object Map]"; - function baseIsMap(value) { - return isObjectLike(value) && getTag(value) == mapTag; +// ../config/plugin-commands-config/lib/set.js +var require_set3 = __commonJS({ + "../config/plugin-commands-config/lib/set.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.commandNames = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var configCmd = __importStar5(require_config2()); + exports2.rcOptionsTypes = configCmd.rcOptionsTypes; + exports2.cliOptionsTypes = configCmd.cliOptionsTypes; + exports2.help = configCmd.help; + exports2.commandNames = ["set"]; + async function handler(opts, params) { + return configCmd.handler(opts, ["set", ...params]); } - module2.exports = baseIsMap; + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isMap.js -var require_isMap = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isMap.js"(exports2, module2) { - var baseIsMap = require_baseIsMap(); - var baseUnary = require_baseUnary(); - var nodeUtil = require_nodeUtil(); - var nodeIsMap = nodeUtil && nodeUtil.isMap; - var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; - module2.exports = isMap; +// ../config/plugin-commands-config/lib/index.js +var require_lib95 = __commonJS({ + "../config/plugin-commands-config/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setCommand = exports2.getCommand = exports2.config = void 0; + var config = __importStar5(require_config2()); + exports2.config = config; + var getCommand = __importStar5(require_get2()); + exports2.getCommand = getCommand; + var setCommand = __importStar5(require_set3()); + exports2.setCommand = setCommand; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsSet.js -var require_baseIsSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsSet.js"(exports2, module2) { - var getTag = require_getTag(); - var isObjectLike = require_isObjectLike(); - var setTag = "[object Set]"; - function baseIsSet(value) { - return isObjectLike(value) && getTag(value) == setTag; +// ../packages/plugin-commands-doctor/lib/doctor.js +var require_doctor = __commonJS({ + "../packages/plugin-commands-doctor/lib/doctor.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var render_help_1 = __importDefault4(require_lib34()); + var cli_utils_1 = require_lib27(); + var logger_1 = require_lib6(); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return {}; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = {}; + exports2.commandNames = ["doctor"]; + function help() { + return (0, render_help_1.default)({ + description: "Checks for known common issues.", + url: (0, cli_utils_1.docsUrl)("doctor"), + usages: ["pnpm doctor [options]"] + }); + } + exports2.help = help; + async function handler(opts) { + const { failedToLoadBuiltInConfig } = opts; + if (failedToLoadBuiltInConfig) { + logger_1.logger.warn({ + message: 'Load npm builtin configs failed. If the prefix builtin config does not work, you can use "pnpm config ls" to show builtin configs. And then use "pnpm config --global set " to migrate configs from builtin to global.', + prefix: process.cwd() + }); + } } - module2.exports = baseIsSet; + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSet.js -var require_isSet = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSet.js"(exports2, module2) { - var baseIsSet = require_baseIsSet(); - var baseUnary = require_baseUnary(); - var nodeUtil = require_nodeUtil(); - var nodeIsSet = nodeUtil && nodeUtil.isSet; - var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; - module2.exports = isSet; +// ../packages/plugin-commands-doctor/lib/index.js +var require_lib96 = __commonJS({ + "../packages/plugin-commands-doctor/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.doctor = void 0; + var doctor = __importStar5(require_doctor()); + exports2.doctor = doctor; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseClone.js -var require_baseClone = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseClone.js"(exports2, module2) { - var Stack = require_Stack(); - var arrayEach = require_arrayEach(); - var assignValue = require_assignValue(); - var baseAssign = require_baseAssign(); - var baseAssignIn = require_baseAssignIn(); - var cloneBuffer = require_cloneBuffer(); - var copyArray = require_copyArray(); - var copySymbols = require_copySymbols(); - var copySymbolsIn = require_copySymbolsIn(); - var getAllKeys = require_getAllKeys(); - var getAllKeysIn = require_getAllKeysIn(); - var getTag = require_getTag(); - var initCloneArray = require_initCloneArray(); - var initCloneByTag = require_initCloneByTag(); - var initCloneObject = require_initCloneObject(); - var isArray = require_isArray2(); - var isBuffer = require_isBuffer(); - var isMap = require_isMap(); - var isObject = require_isObject2(); - var isSet = require_isSet(); - var keys = require_keys2(); - var keysIn = require_keysIn(); - var CLONE_DEEP_FLAG = 1; - var CLONE_FLAT_FLAG = 2; - var CLONE_SYMBOLS_FLAG = 4; - var argsTag = "[object Arguments]"; - var arrayTag = "[object Array]"; - var boolTag = "[object Boolean]"; - var dateTag = "[object Date]"; - var errorTag = "[object Error]"; - var funcTag = "[object Function]"; - var genTag = "[object GeneratorFunction]"; - var mapTag = "[object Map]"; - var numberTag = "[object Number]"; - var objectTag = "[object Object]"; - var regexpTag = "[object RegExp]"; - var setTag = "[object Set]"; - var stringTag = "[object String]"; - var symbolTag = "[object Symbol]"; - var weakMapTag = "[object WeakMap]"; - var arrayBufferTag = "[object ArrayBuffer]"; - var dataViewTag = "[object DataView]"; - var float32Tag = "[object Float32Array]"; - var float64Tag = "[object Float64Array]"; - var int8Tag = "[object Int8Array]"; - var int16Tag = "[object Int16Array]"; - var int32Tag = "[object Int32Array]"; - var uint8Tag = "[object Uint8Array]"; - var uint8ClampedTag = "[object Uint8ClampedArray]"; - var uint16Tag = "[object Uint16Array]"; - var uint32Tag = "[object Uint32Array]"; - var cloneableTags = {}; - cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; - cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false; - function baseClone(value, bitmask, customizer, key, object, stack2) { - var result, isDeep = bitmask & CLONE_DEEP_FLAG, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG; - if (customizer) { - result = object ? customizer(value, key, object, stack2) : customizer(value); - } - if (result !== void 0) { - return result; +// ../cli/common-cli-options-help/lib/index.js +var require_lib97 = __commonJS({ + "../cli/common-cli-options-help/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OUTPUT_OPTIONS = exports2.FILTERING = exports2.UNIVERSAL_OPTIONS = exports2.OPTIONS = void 0; + exports2.OPTIONS = { + globalDir: { + description: "Specify a custom directory to store global packages", + name: "--global-dir" + }, + ignoreScripts: { + description: "Don't run lifecycle scripts", + name: "--ignore-scripts" + }, + offline: { + description: "Trigger an error if any required dependencies are not available in local store", + name: "--offline" + }, + preferOffline: { + description: "Skip staleness checks for cached data, but request missing data from the server", + name: "--prefer-offline" + }, + storeDir: { + description: "The directory in which all the packages are saved on the disk", + name: "--store-dir " + }, + virtualStoreDir: { + description: "The directory with links to the store (default is node_modules/.pnpm). All direct and indirect dependencies of the project are linked into this directory", + name: "--virtual-store-dir " } - if (!isObject(value)) { - return value; + }; + exports2.UNIVERSAL_OPTIONS = [ + { + description: "Controls colors in the output. By default, output is always colored when it goes directly to a terminal", + name: "--[no-]color" + }, + { + description: "Output usage information", + name: "--help", + shortAlias: "-h" + }, + { + description: `Change to directory (default: ${process.cwd()})`, + name: "--dir ", + shortAlias: "-C" + }, + { + description: "Run the command on the root workspace project", + name: "--workspace-root", + shortAlias: "-w" + }, + { + description: 'What level of logs to report. Any logs at or higher than the given level will be shown. Levels (lowest to highest): debug, info, warn, error. Or use "--silent" to turn off all logging.', + name: "--loglevel " + }, + { + description: "Stream output from child processes immediately, prefixed with the originating package directory. This allows output from different packages to be interleaved.", + name: "--stream" + }, + { + description: "Aggregate output from child processes that are run in parallel, and only print output when child process is finished. It makes reading large logs after running `pnpm recursive` with `--parallel` or with `--workspace-concurrency` much easier (especially on CI). Only `--reporter=append-only` is supported.", + name: "--aggregate-output" + }, + { + description: "Divert all output to stderr", + name: "--use-stderr" } - var isArr = isArray(value); - if (isArr) { - result = initCloneArray(value); - if (!isDeep) { - return copyArray(value, result); - } - } else { - var tag = getTag(value), isFunc = tag == funcTag || tag == genTag; - if (isBuffer(value)) { - return cloneBuffer(value, isDeep); - } - if (tag == objectTag || tag == argsTag || isFunc && !object) { - result = isFlat || isFunc ? {} : initCloneObject(value); - if (!isDeep) { - return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value)); - } - } else { - if (!cloneableTags[tag]) { - return object ? value : {}; - } - result = initCloneByTag(value, tag, isDeep); + ]; + exports2.FILTERING = { + list: [ + { + description: 'Restricts the scope to package names matching the given pattern. E.g.: foo, "@bar/*"', + name: "--filter " + }, + { + description: "Includes all direct and indirect dependencies of the matched packages. E.g.: foo...", + name: "--filter ..." + }, + { + description: "Includes only the direct and indirect dependencies of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: foo^... (foo^^... in Command Prompt)", + name: "--filter ^..." + }, + { + description: 'Includes all direct and indirect dependents of the matched packages. E.g.: ...foo, "...@bar/*"', + name: "--filter ..." + }, + { + description: "Includes only the direct and indirect dependents of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: ...^foo (...^^foo in Command Prompt)", + name: "--filter ...^" + }, + { + description: "Includes all packages that are inside a given subdirectory. E.g.: ./components", + name: "--filter ./" + }, + { + description: "Includes all packages that are under the current working directory", + name: "--filter ." + }, + { + description: 'Includes all projects that are under the specified directory. It may be used with "..." to select dependents/dependencies as well. It also may be combined with "[]". For instance, all changed projects inside a directory: "{packages}[origin/master]"', + name: "--filter {}" + }, + { + description: 'Includes all packages changed since the specified commit/branch. E.g.: "[master]", "[HEAD~2]". It may be used together with "...". So, for instance, "...[HEAD~1]" selects all packages changed in the last commit and their dependents', + name: '--filter "[]"' + }, + { + description: 'If a selector starts with ! (or \\! in zsh), it means the packages matching the selector must be excluded. E.g., "pnpm --filter !foo" selects all packages except "foo"', + name: "--filter !" + }, + { + description: 'Defines files related to tests. Useful with the changed since filter. When selecting only changed packages and their dependent packages, the dependent packages will be ignored in case a package has changes only in tests. Usage example: pnpm --filter="...[origin/master]" --test-pattern="test/*" test', + name: "--test-pattern " + }, + { + description: 'Defines files to ignore when filtering for changed projects since the specified commit/branch. Usage example: pnpm --filter="...[origin/master]" --changed-files-ignore-pattern="**/README.md" build', + name: "--changed-files-ignore-pattern " + }, + { + description: "Restricts the scope to package names matching the given pattern similar to --filter, but it ignores devDependencies when searching for dependencies and dependents.", + name: "--filter-prod " } - } - stack2 || (stack2 = new Stack()); - var stacked = stack2.get(value); - if (stacked) { - return stacked; - } - stack2.set(value, result); - if (isSet(value)) { - value.forEach(function(subValue) { - result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack2)); - }); - } else if (isMap(value)) { - value.forEach(function(subValue, key2) { - result.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack2)); - }); - } - var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys; - var props = isArr ? void 0 : keysFunc(value); - arrayEach(props || value, function(subValue, key2) { - if (props) { - key2 = subValue; - subValue = value[key2]; + ], + title: "Filtering options (run the command only on packages that satisfy at least one of the selectors)" + }; + exports2.OUTPUT_OPTIONS = { + title: "Output", + list: [ + { + description: "No output is logged to the console, except fatal errors", + name: "--silent, --reporter silent", + shortAlias: "-s" + }, + { + description: "The default reporter when the stdout is TTY", + name: "--reporter default" + }, + { + description: "The output is always appended to the end. No cursor manipulations are performed", + name: "--reporter append-only" + }, + { + description: "The most verbose reporter. Prints all logs in ndjson format", + name: "--reporter ndjson" } - assignValue(result, key2, baseClone(subValue, bitmask, customizer, key2, value, stack2)); - }); - return result; - } - module2.exports = baseClone; + ] + }; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/rng.js +function rng() { + if (poolPtr > rnds8Pool.length - 16) { + import_crypto.default.randomFillSync(rnds8Pool); + poolPtr = 0; + } + return rnds8Pool.slice(poolPtr, poolPtr += 16); +} +var import_crypto, rnds8Pool, poolPtr; +var init_rng = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/rng.js"() { + import_crypto = __toESM(require("crypto")); + rnds8Pool = new Uint8Array(256); + poolPtr = rnds8Pool.length; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/cloneDeep.js -var require_cloneDeep = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/cloneDeep.js"(exports2, module2) { - var baseClone = require_baseClone(); - var CLONE_DEEP_FLAG = 1; - var CLONE_SYMBOLS_FLAG = 4; - function cloneDeep(value) { - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); - } - module2.exports = cloneDeep; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/regex.js +var regex_default; +var init_regex = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/regex.js"() { + regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isUndefined.js -var require_isUndefined = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isUndefined.js"(exports2, module2) { - function isUndefined(value) { - return value === void 0; - } - module2.exports = isUndefined; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/validate.js +function validate(uuid) { + return typeof uuid === "string" && regex_default.test(uuid); +} +var validate_default; +var init_validate = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/validate.js"() { + init_regex(); + validate_default = validate; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castFunction.js -var require_castFunction = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castFunction.js"(exports2, module2) { - var identity = require_identity2(); - function castFunction(value) { - return typeof value == "function" ? value : identity; - } - module2.exports = castFunction; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/stringify.js +function unsafeStringify(arr, offset = 0) { + return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); +} +function stringify(arr, offset = 0) { + const uuid = unsafeStringify(arr, offset); + if (!validate_default(uuid)) { + throw TypeError("Stringified UUID is invalid"); + } + return uuid; +} +var byteToHex, stringify_default; +var init_stringify = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/stringify.js"() { + init_validate(); + byteToHex = []; + for (let i = 0; i < 256; ++i) { + byteToHex.push((i + 256).toString(16).slice(1)); + } + stringify_default = stringify; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v1.js +function v1(options, buf, offset) { + let i = buf && offset || 0; + const b = buf || new Array(16); + options = options || {}; + let node = options.node || _nodeId; + let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; + if (node == null || clockseq == null) { + const seedBytes = options.random || (options.rng || rng)(); + if (node == null) { + node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; + } + if (clockseq == null) { + clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383; + } + } + let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); + let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; + const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; + if (dt < 0 && options.clockseq === void 0) { + clockseq = clockseq + 1 & 16383; + } + if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) { + nsecs = 0; + } + if (nsecs >= 1e4) { + throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); + } + _lastMSecs = msecs; + _lastNSecs = nsecs; + _clockseq = clockseq; + msecs += 122192928e5; + const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; + b[i++] = tl >>> 24 & 255; + b[i++] = tl >>> 16 & 255; + b[i++] = tl >>> 8 & 255; + b[i++] = tl & 255; + const tmh = msecs / 4294967296 * 1e4 & 268435455; + b[i++] = tmh >>> 8 & 255; + b[i++] = tmh & 255; + b[i++] = tmh >>> 24 & 15 | 16; + b[i++] = tmh >>> 16 & 255; + b[i++] = clockseq >>> 8 | 128; + b[i++] = clockseq & 255; + for (let n = 0; n < 6; ++n) { + b[i + n] = node[n]; + } + return buf || unsafeStringify(b); +} +var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default; +var init_v1 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v1.js"() { + init_rng(); + init_stringify(); + _lastMSecs = 0; + _lastNSecs = 0; + v1_default = v1; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/parse.js +function parse(uuid) { + if (!validate_default(uuid)) { + throw TypeError("Invalid UUID"); + } + let v; + const arr = new Uint8Array(16); + arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; + arr[1] = v >>> 16 & 255; + arr[2] = v >>> 8 & 255; + arr[3] = v & 255; + arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; + arr[5] = v & 255; + arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; + arr[7] = v & 255; + arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; + arr[9] = v & 255; + arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255; + arr[11] = v / 4294967296 & 255; + arr[12] = v >>> 24 & 255; + arr[13] = v >>> 16 & 255; + arr[14] = v >>> 8 & 255; + arr[15] = v & 255; + return arr; +} +var parse_default; +var init_parse = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/parse.js"() { + init_validate(); + parse_default = parse; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js -var require_trimmedEndIndex = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js"(exports2, module2) { - var reWhitespace = /\s/; - function trimmedEndIndex(string) { - var index = string.length; - while (index-- && reWhitespace.test(string.charAt(index))) { +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v35.js +function stringToBytes(str) { + str = unescape(encodeURIComponent(str)); + const bytes = []; + for (let i = 0; i < str.length; ++i) { + bytes.push(str.charCodeAt(i)); + } + return bytes; +} +function v35(name, version2, hashfunc) { + function generateUUID(value, namespace, buf, offset) { + var _namespace; + if (typeof value === "string") { + value = stringToBytes(value); + } + if (typeof namespace === "string") { + namespace = parse_default(namespace); + } + if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) { + throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); + } + let bytes = new Uint8Array(16 + value.length); + bytes.set(namespace); + bytes.set(value, namespace.length); + bytes = hashfunc(bytes); + bytes[6] = bytes[6] & 15 | version2; + bytes[8] = bytes[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = bytes[i]; } - return index; + return buf; } - module2.exports = trimmedEndIndex; + return unsafeStringify(bytes); + } + try { + generateUUID.name = name; + } catch (err) { + } + generateUUID.DNS = DNS; + generateUUID.URL = URL2; + return generateUUID; +} +var DNS, URL2; +var init_v35 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v35.js"() { + init_stringify(); + init_parse(); + DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; + URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js -var require_baseTrim = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js"(exports2, module2) { - var trimmedEndIndex = require_trimmedEndIndex(); - var reTrimStart = /^\s+/; - function baseTrim(string) { - return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; - } - module2.exports = baseTrim; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/md5.js +function md5(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto2.default.createHash("md5").update(bytes).digest(); +} +var import_crypto2, md5_default; +var init_md5 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/md5.js"() { + import_crypto2 = __toESM(require("crypto")); + md5_default = md5; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js -var require_toNumber = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js"(exports2, module2) { - var baseTrim = require_baseTrim(); - var isObject = require_isObject2(); - var isSymbol = require_isSymbol(); - var NAN = 0 / 0; - var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; - var reIsBinary = /^0b[01]+$/i; - var reIsOctal = /^0o[0-7]+$/i; - var freeParseInt = parseInt; - function toNumber(value) { - if (typeof value == "number") { - return value; - } - if (isSymbol(value)) { - return NAN; - } - if (isObject(value)) { - var other = typeof value.valueOf == "function" ? value.valueOf() : value; - value = isObject(other) ? other + "" : other; - } - if (typeof value != "string") { - return value === 0 ? value : +value; - } - value = baseTrim(value); - var isBinary = reIsBinary.test(value); - return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; - } - module2.exports = toNumber; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v3.js +var v3, v3_default; +var init_v3 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v3.js"() { + init_v35(); + init_md5(); + v3 = v35("v3", 48, md5_default); + v3_default = v3; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toFinite.js -var require_toFinite = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toFinite.js"(exports2, module2) { - var toNumber = require_toNumber(); - var INFINITY = 1 / 0; - var MAX_INTEGER = 17976931348623157e292; - function toFinite(value) { - if (!value) { - return value === 0 ? value : 0; - } - value = toNumber(value); - if (value === INFINITY || value === -INFINITY) { - var sign = value < 0 ? -1 : 1; - return sign * MAX_INTEGER; - } - return value === value ? value : 0; - } - module2.exports = toFinite; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/native.js +var import_crypto3, native_default; +var init_native = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/native.js"() { + import_crypto3 = __toESM(require("crypto")); + native_default = { + randomUUID: import_crypto3.default.randomUUID + }; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toInteger.js -var require_toInteger = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toInteger.js"(exports2, module2) { - var toFinite = require_toFinite(); - function toInteger(value) { - var result = toFinite(value), remainder = result % 1; - return result === result ? remainder ? result - remainder : result : 0; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v4.js +function v4(options, buf, offset) { + if (native_default.randomUUID && !buf && !options) { + return native_default.randomUUID(); + } + options = options || {}; + const rnds = options.random || (options.rng || rng)(); + rnds[6] = rnds[6] & 15 | 64; + rnds[8] = rnds[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = rnds[i]; } - module2.exports = toInteger; + return buf; + } + return unsafeStringify(rnds); +} +var v4_default; +var init_v4 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v4.js"() { + init_native(); + init_rng(); + init_stringify(); + v4_default = v4; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/times.js -var require_times2 = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/times.js"(exports2, module2) { - var baseTimes = require_baseTimes(); - var castFunction = require_castFunction(); - var toInteger = require_toInteger(); - var MAX_SAFE_INTEGER = 9007199254740991; - var MAX_ARRAY_LENGTH = 4294967295; - var nativeMin = Math.min; - function times(n, iteratee) { - n = toInteger(n); - if (n < 1 || n > MAX_SAFE_INTEGER) { - return []; - } - var index = MAX_ARRAY_LENGTH, length = nativeMin(n, MAX_ARRAY_LENGTH); - iteratee = castFunction(iteratee); - n -= MAX_ARRAY_LENGTH; - var result = baseTimes(length, iteratee); - while (++index < n) { - iteratee(index); - } - return result; - } - module2.exports = times; +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/sha1.js +function sha1(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === "string") { + bytes = Buffer.from(bytes, "utf8"); + } + return import_crypto4.default.createHash("sha1").update(bytes).digest(); +} +var import_crypto4, sha1_default; +var init_sha1 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/sha1.js"() { + import_crypto4 = __toESM(require("crypto")); + sha1_default = sha1; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/getBorderCharacters.js -var require_getBorderCharacters = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/getBorderCharacters.js"(exports2) { +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v5.js +var v5, v5_default; +var init_v5 = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v5.js"() { + init_v35(); + init_sha1(); + v5 = v35("v5", 80, sha1_default); + v5_default = v5; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/nil.js +var nil_default; +var init_nil = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/nil.js"() { + nil_default = "00000000-0000-0000-0000-000000000000"; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/version.js +function version(uuid) { + if (!validate_default(uuid)) { + throw TypeError("Invalid UUID"); + } + return parseInt(uuid.slice(14, 15), 16); +} +var version_default; +var init_version = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/version.js"() { + init_validate(); + version_default = version; + } +}); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/index.js +var esm_node_exports = {}; +__export(esm_node_exports, { + NIL: () => nil_default, + parse: () => parse_default, + stringify: () => stringify_default, + v1: () => v1_default, + v3: () => v3_default, + v4: () => v4_default, + v5: () => v5_default, + validate: () => validate_default, + version: () => version_default +}); +var init_esm_node = __esm({ + "../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/index.js"() { + init_v1(); + init_v3(); + init_v4(); + init_v5(); + init_nil(); + init_version(); + init_validate(); + init_stringify(); + init_parse(); + } +}); + +// ../store/server/lib/connectStoreController.js +var require_connectStoreController = __commonJS({ + "../store/server/lib/connectStoreController.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var getBorderCharacters = (name) => { - if (name === "honeywell") { - return { - topBody: "\u2550", - topJoin: "\u2564", - topLeft: "\u2554", - topRight: "\u2557", - bottomBody: "\u2550", - bottomJoin: "\u2567", - bottomLeft: "\u255A", - bottomRight: "\u255D", - bodyLeft: "\u2551", - bodyRight: "\u2551", - bodyJoin: "\u2502", - joinBody: "\u2500", - joinLeft: "\u255F", - joinRight: "\u2562", - joinJoin: "\u253C" - }; - } - if (name === "norc") { - return { - topBody: "\u2500", - topJoin: "\u252C", - topLeft: "\u250C", - topRight: "\u2510", - bottomBody: "\u2500", - bottomJoin: "\u2534", - bottomLeft: "\u2514", - bottomRight: "\u2518", - bodyLeft: "\u2502", - bodyRight: "\u2502", - bodyJoin: "\u2502", - joinBody: "\u2500", - joinLeft: "\u251C", - joinRight: "\u2524", - joinJoin: "\u253C" - }; - } - if (name === "ramac") { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.connectStoreController = void 0; + var fetch_1 = require_lib37(); + var p_limit_12 = __importDefault4(require_p_limit()); + var promise_share_1 = __importDefault4(require_promise_share()); + var uuid_1 = (init_esm_node(), __toCommonJS(esm_node_exports)); + async function connectStoreController(initOpts) { + const remotePrefix = initOpts.remotePrefix; + const limitedFetch = limitFetch.bind(null, (0, p_limit_12.default)(initOpts.concurrency ?? 100)); + return new Promise((resolve, reject) => { + resolve({ + close: async () => { + }, + fetchPackage: fetchPackage.bind(null, remotePrefix, limitedFetch), + getFilesIndexFilePath: () => ({ filesIndexFile: "", target: "" }), + importPackage: async (to, opts) => { + return limitedFetch(`${remotePrefix}/importPackage`, { + opts, + to + }); + }, + prune: async () => { + await limitedFetch(`${remotePrefix}/prune`, {}); + }, + requestPackage: requestPackage.bind(null, remotePrefix, limitedFetch), + stop: async () => { + await limitedFetch(`${remotePrefix}/stop`, {}); + }, + upload: async (builtPkgLocation, opts) => { + await limitedFetch(`${remotePrefix}/upload`, { + builtPkgLocation, + opts + }); + } + }); + }); + } + exports2.connectStoreController = connectStoreController; + function limitFetch(limit, url, body) { + return limit(async () => { + if (url.startsWith("http://unix:")) { + url = url.replace("http://unix:", "unix:"); + } + const response = await (0, fetch_1.fetch)(url, { + body: JSON.stringify(body), + headers: { "Content-Type": "application/json" }, + method: "POST", + retry: { + retries: 100 + } + }); + if (!response.ok) { + throw await response.json(); + } + const json = await response.json(); + if (json.error) { + throw json.error; + } + return json; + }); + } + async function requestPackage(remotePrefix, limitedFetch, wantedDependency, options) { + const msgId = (0, uuid_1.v4)(); + return limitedFetch(`${remotePrefix}/requestPackage`, { + msgId, + options, + wantedDependency + }).then((packageResponseBody) => { + const fetchingBundledManifest = !packageResponseBody["fetchingBundledManifestInProgress"] ? void 0 : limitedFetch(`${remotePrefix}/rawManifestResponse`, { + msgId + }); + delete packageResponseBody["fetchingBundledManifestInProgress"]; + if (options.skipFetch) { + return { + body: packageResponseBody, + bundledManifest: fetchingBundledManifest && (0, promise_share_1.default)(fetchingBundledManifest) + }; + } + const fetchingFiles = limitedFetch(`${remotePrefix}/packageFilesResponse`, { + msgId + }); return { - topBody: "-", - topJoin: "+", - topLeft: "+", - topRight: "+", - bottomBody: "-", - bottomJoin: "+", - bottomLeft: "+", - bottomRight: "+", - bodyLeft: "|", - bodyRight: "|", - bodyJoin: "|", - joinBody: "-", - joinLeft: "|", - joinRight: "|", - joinJoin: "|" + body: packageResponseBody, + bundledManifest: fetchingBundledManifest && (0, promise_share_1.default)(fetchingBundledManifest), + files: (0, promise_share_1.default)(fetchingFiles), + finishing: (0, promise_share_1.default)(Promise.all([fetchingBundledManifest, fetchingFiles]).then(() => void 0)) }; - } - if (name === "void") { + }); + } + function fetchPackage(remotePrefix, limitedFetch, options) { + const msgId = (0, uuid_1.v4)(); + return limitedFetch(`${remotePrefix}/fetchPackage`, { + msgId, + options + }).then((fetchResponseBody) => { + const fetchingBundledManifest = options.fetchRawManifest ? limitedFetch(`${remotePrefix}/rawManifestResponse`, { msgId }) : void 0; + const fetchingFiles = limitedFetch(`${remotePrefix}/packageFilesResponse`, { + msgId + }); return { - topBody: "", - topJoin: "", - topLeft: "", - topRight: "", - bottomBody: "", - bottomJoin: "", - bottomLeft: "", - bottomRight: "", - bodyLeft: "", - bodyRight: "", - bodyJoin: "", - joinBody: "", - joinLeft: "", - joinRight: "", - joinJoin: "" + bundledManifest: fetchingBundledManifest && (0, promise_share_1.default)(fetchingBundledManifest), + files: (0, promise_share_1.default)(fetchingFiles), + filesIndexFile: fetchResponseBody.filesIndexFile, + finishing: (0, promise_share_1.default)(Promise.all([fetchingBundledManifest, fetchingFiles]).then(() => void 0)), + inStoreLocation: fetchResponseBody.inStoreLocation }; - } - throw new Error('Unknown border template "' + name + '".'); - }; - var _default = getBorderCharacters; - exports2.default = _default; + }); + } } }); -// ../../node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/equal.js -var require_equal = __commonJS({ - "../../node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/equal.js"(exports2, module2) { +// ../store/server/lib/lock.js +var require_lock = __commonJS({ + "../store/server/lib/lock.js"(exports2) { "use strict"; - module2.exports = require_fast_deep_equal(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.locking = void 0; + function locking() { + const locks = {}; + return async (key, fn2) => { + if (locks[key] != null) + return locks[key]; + locks[key] = fn2(); + fn2().then(() => delete locks[key], () => delete locks[key]); + return locks[key]; + }; + } + exports2.locking = locking; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/validateConfig.js -var require_validateConfig = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/validateConfig.js"(exports2, module2) { - "use strict"; - var equal = require_equal(); - var validate = function() { - var pattern0 = new RegExp("^[0-9]+$"); - var refVal = []; - var refVal1 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !validate2.schema.properties.hasOwnProperty(key0); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - if (data.topBody !== void 0) { - var errs_1 = errors; - if (!refVal2(data.topBody, (dataPath || "") + ".topBody", data, "topBody", rootData)) { - if (vErrors === null) - vErrors = refVal2.errors; - else - vErrors = vErrors.concat(refVal2.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topJoin, (dataPath || "") + ".topJoin", data, "topJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topLeft, (dataPath || "") + ".topLeft", data, "topLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topRight, (dataPath || "") + ".topRight", data, "topRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomBody !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomBody, (dataPath || "") + ".bottomBody", data, "bottomBody", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomJoin, (dataPath || "") + ".bottomJoin", data, "bottomJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomLeft, (dataPath || "") + ".bottomLeft", data, "bottomLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomRight, (dataPath || "") + ".bottomRight", data, "bottomRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; +// ../store/server/lib/createServer.js +var require_createServer = __commonJS({ + "../store/server/lib/createServer.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createServer = void 0; + var http_1 = __importDefault4(require("http")); + var logger_1 = require_lib6(); + var lock_1 = require_lock(); + function createServer(store, opts) { + const rawManifestPromises = {}; + const filesPromises = {}; + const lock = (0, lock_1.locking)(); + const server = http_1.default.createServer(async (req, res) => { + if (req.method !== "POST") { + res.statusCode = 405; + const responseError = { error: `Only POST is allowed, received ${req.method ?? "unknown"}` }; + res.setHeader("Allow", "POST"); + res.end(JSON.stringify(responseError)); + return; + } + const bodyPromise = new Promise((resolve, reject) => { + let body = ""; + req.on("data", (data) => { + body += data; + }); + req.on("end", async () => { + try { + if (body.length > 0) { + body = JSON.parse(body); + } else { + body = {}; } - var valid1 = errors === errs_1; + resolve(body); + } catch (e) { + reject(e); } - if (data.bodyLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyLeft, (dataPath || "") + ".bodyLeft", data, "bodyLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; + }); + }); + try { + let body; + switch (req.url) { + case "/requestPackage": { + try { + body = await bodyPromise; + const pkgResponse = await store.requestPackage(body.wantedDependency, body.options); + if (pkgResponse["bundledManifest"]) { + rawManifestPromises[body.msgId] = pkgResponse["bundledManifest"]; + pkgResponse.body["fetchingBundledManifestInProgress"] = true; + } + if (pkgResponse["files"]) { + filesPromises[body.msgId] = pkgResponse["files"]; + } + res.end(JSON.stringify(pkgResponse.body)); + } catch (err) { + res.end(JSON.stringify({ + error: { + message: err.message, + ...JSON.parse(JSON.stringify(err)) + } + })); } - var valid1 = errors === errs_1; + break; } - if (data.bodyRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyRight, (dataPath || "") + ".bodyRight", data, "bodyRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; + case "/fetchPackage": { + try { + body = await bodyPromise; + const pkgResponse = store.fetchPackage(body.options); + if (pkgResponse["bundledManifest"]) { + rawManifestPromises[body.msgId] = pkgResponse["bundledManifest"]; + } + if (pkgResponse["files"]) { + filesPromises[body.msgId] = pkgResponse["files"]; + } + res.end(JSON.stringify({ filesIndexFile: pkgResponse.filesIndexFile })); + } catch (err) { + res.end(JSON.stringify({ + error: { + message: err.message, + ...JSON.parse(JSON.stringify(err)) + } + })); } - var valid1 = errors === errs_1; + break; } - if (data.bodyJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyJoin, (dataPath || "") + ".bodyJoin", data, "bodyJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; + case "/packageFilesResponse": { + body = await bodyPromise; + const filesResponse = await filesPromises[body.msgId](); + delete filesPromises[body.msgId]; + res.end(JSON.stringify(filesResponse)); + break; } - if (data.joinBody !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinBody, (dataPath || "") + ".joinBody", data, "joinBody", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; + case "/rawManifestResponse": { + body = await bodyPromise; + const manifestResponse = await rawManifestPromises[body.msgId](); + delete rawManifestPromises[body.msgId]; + res.end(JSON.stringify(manifestResponse)); + break; } - if (data.joinLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinLeft, (dataPath || "") + ".joinLeft", data, "joinLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; + case "/prune": + res.statusCode = 403; + res.end(); + break; + case "/importPackage": { + const importPackageBody = await bodyPromise; + await store.importPackage(importPackageBody.to, importPackageBody.opts); + res.end(JSON.stringify("OK")); + break; } - if (data.joinRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinRight, (dataPath || "") + ".joinRight", data, "joinRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; + case "/upload": { + if (opts.ignoreUploadRequests) { + res.statusCode = 403; + res.end(); + break; } - var valid1 = errors === errs_1; + const uploadBody = await bodyPromise; + await lock(uploadBody.builtPkgLocation, async () => store.upload(uploadBody.builtPkgLocation, uploadBody.opts)); + res.end(JSON.stringify("OK")); + break; } - if (data.joinJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinJoin, (dataPath || "") + ".joinJoin", data, "joinJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; + case "/stop": + if (opts.ignoreStopRequests) { + res.statusCode = 403; + res.end(); + break; } - var valid1 = errors === errs_1; + (0, logger_1.globalInfo)("Got request to stop the server"); + await close(); + res.end(JSON.stringify("OK")); + (0, logger_1.globalInfo)("Server stopped"); + break; + default: { + res.statusCode = 404; + const error = { error: `${req.url} does not match any route` }; + res.end(JSON.stringify(error)); } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; - }; - }(); - refVal1.schema = { - "type": "object", - "properties": { - "topBody": { - "$ref": "#/definitions/border" - }, - "topJoin": { - "$ref": "#/definitions/border" - }, - "topLeft": { - "$ref": "#/definitions/border" - }, - "topRight": { - "$ref": "#/definitions/border" - }, - "bottomBody": { - "$ref": "#/definitions/border" - }, - "bottomJoin": { - "$ref": "#/definitions/border" - }, - "bottomLeft": { - "$ref": "#/definitions/border" - }, - "bottomRight": { - "$ref": "#/definitions/border" - }, - "bodyLeft": { - "$ref": "#/definitions/border" - }, - "bodyRight": { - "$ref": "#/definitions/border" - }, - "bodyJoin": { - "$ref": "#/definitions/border" - }, - "joinBody": { - "$ref": "#/definitions/border" - }, - "joinLeft": { - "$ref": "#/definitions/border" - }, - "joinRight": { - "$ref": "#/definitions/border" - }, - "joinJoin": { - "$ref": "#/definitions/border" } - }, - "additionalProperties": false - }; - refVal1.errors = null; - refVal[1] = refVal1; - var refVal2 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (typeof data !== "string") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "string" - }, - message: "should be string" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; + } catch (e) { + res.statusCode = 503; + const jsonErr = JSON.parse(JSON.stringify(e)); + jsonErr.message = e.message; + res.end(JSON.stringify(jsonErr)); + } + }); + let listener; + if (opts.path) { + listener = server.listen(opts.path); + } else { + listener = server.listen(opts.port, opts.hostname); + } + return { close }; + async function close() { + listener.close(); + return store.close(); + } + } + exports2.createServer = createServer; + } +}); + +// ../store/server/lib/index.js +var require_lib98 = __commonJS({ + "../store/server/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createServer = exports2.connectStoreController = void 0; + var connectStoreController_1 = require_connectStoreController(); + Object.defineProperty(exports2, "connectStoreController", { enumerable: true, get: function() { + return connectStoreController_1.connectStoreController; + } }); + var createServer_1 = require_createServer(); + Object.defineProperty(exports2, "createServer", { enumerable: true, get: function() { + return createServer_1.createServer; + } }); + } +}); + +// ../node_modules/.pnpm/delay@5.0.0/node_modules/delay/index.js +var require_delay2 = __commonJS({ + "../node_modules/.pnpm/delay@5.0.0/node_modules/delay/index.js"(exports2, module2) { + "use strict"; + var randomInteger = (minimum, maximum) => Math.floor(Math.random() * (maximum - minimum + 1) + minimum); + var createAbortError = () => { + const error = new Error("Delay aborted"); + error.name = "AbortError"; + return error; + }; + var createDelay = ({ clearTimeout: defaultClear, setTimeout: set, willResolve }) => (ms, { value, signal } = {}) => { + if (signal && signal.aborted) { + return Promise.reject(createAbortError()); + } + let timeoutId; + let settle; + let rejectFn; + const clear = defaultClear || clearTimeout; + const signalListener = () => { + clear(timeoutId); + rejectFn(createAbortError()); + }; + const cleanup = () => { + if (signal) { + signal.removeEventListener("abort", signalListener); + } + }; + const delayPromise = new Promise((resolve, reject) => { + settle = () => { + cleanup(); + if (willResolve) { + resolve(value); + } else { + reject(value); } - validate2.errors = vErrors; - return errors === 0; }; - }(); - refVal2.schema = { - "type": "string" - }; - refVal2.errors = null; - refVal[2] = refVal2; - var refVal3 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !pattern02.test(key0); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - for (var key0 in data) { - if (pattern02.test(key0)) { - var errs_1 = errors; - if (!refVal4(data[key0], (dataPath || "") + "['" + key0 + "']", data, key0, rootData)) { - if (vErrors === null) - vErrors = refVal4.errors; - else - vErrors = vErrors.concat(refVal4.errors); - errors = vErrors.length; + rejectFn = reject; + timeoutId = (set || setTimeout)(settle, ms); + }); + if (signal) { + signal.addEventListener("abort", signalListener, { once: true }); + } + delayPromise.clear = () => { + clear(timeoutId); + timeoutId = null; + settle(); + }; + return delayPromise; + }; + var createWithTimers = (clearAndSet) => { + const delay2 = createDelay({ ...clearAndSet, willResolve: true }); + delay2.reject = createDelay({ ...clearAndSet, willResolve: false }); + delay2.range = (minimum, maximum, options) => delay2(randomInteger(minimum, maximum), options); + return delay2; + }; + var delay = createWithTimers(); + delay.createWithTimers = createWithTimers; + module2.exports = delay; + module2.exports.default = delay; + } +}); + +// ../node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js +var require_eventemitter3 = __commonJS({ + "../node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js"(exports2, module2) { + "use strict"; + var has = Object.prototype.hasOwnProperty; + var prefix = "~"; + function Events() { + } + if (Object.create) { + Events.prototype = /* @__PURE__ */ Object.create(null); + if (!new Events().__proto__) + prefix = false; + } + function EE(fn2, context, once) { + this.fn = fn2; + this.context = context; + this.once = once || false; + } + function addListener(emitter, event, fn2, context, once) { + if (typeof fn2 !== "function") { + throw new TypeError("The listener must be a function"); + } + var listener = new EE(fn2, context || emitter, once), evt = prefix ? prefix + event : event; + if (!emitter._events[evt]) + emitter._events[evt] = listener, emitter._eventsCount++; + else if (!emitter._events[evt].fn) + emitter._events[evt].push(listener); + else + emitter._events[evt] = [emitter._events[evt], listener]; + return emitter; + } + function clearEvent(emitter, evt) { + if (--emitter._eventsCount === 0) + emitter._events = new Events(); + else + delete emitter._events[evt]; + } + function EventEmitter() { + this._events = new Events(); + this._eventsCount = 0; + } + EventEmitter.prototype.eventNames = function eventNames() { + var names = [], events, name; + if (this._eventsCount === 0) + return names; + for (name in events = this._events) { + if (has.call(events, name)) + names.push(prefix ? name.slice(1) : name); + } + if (Object.getOwnPropertySymbols) { + return names.concat(Object.getOwnPropertySymbols(events)); + } + return names; + }; + EventEmitter.prototype.listeners = function listeners(event) { + var evt = prefix ? prefix + event : event, handlers = this._events[evt]; + if (!handlers) + return []; + if (handlers.fn) + return [handlers.fn]; + for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) { + ee[i] = handlers[i].fn; + } + return ee; + }; + EventEmitter.prototype.listenerCount = function listenerCount(event) { + var evt = prefix ? prefix + event : event, listeners = this._events[evt]; + if (!listeners) + return 0; + if (listeners.fn) + return 1; + return listeners.length; + }; + EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) { + var evt = prefix ? prefix + event : event; + if (!this._events[evt]) + return false; + var listeners = this._events[evt], len = arguments.length, args2, i; + if (listeners.fn) { + if (listeners.once) + this.removeListener(event, listeners.fn, void 0, true); + switch (len) { + case 1: + return listeners.fn.call(listeners.context), true; + case 2: + return listeners.fn.call(listeners.context, a1), true; + case 3: + return listeners.fn.call(listeners.context, a1, a2), true; + case 4: + return listeners.fn.call(listeners.context, a1, a2, a3), true; + case 5: + return listeners.fn.call(listeners.context, a1, a2, a3, a4), true; + case 6: + return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true; + } + for (i = 1, args2 = new Array(len - 1); i < len; i++) { + args2[i - 1] = arguments[i]; + } + listeners.fn.apply(listeners.context, args2); + } else { + var length = listeners.length, j; + for (i = 0; i < length; i++) { + if (listeners[i].once) + this.removeListener(event, listeners[i].fn, void 0, true); + switch (len) { + case 1: + listeners[i].fn.call(listeners[i].context); + break; + case 2: + listeners[i].fn.call(listeners[i].context, a1); + break; + case 3: + listeners[i].fn.call(listeners[i].context, a1, a2); + break; + case 4: + listeners[i].fn.call(listeners[i].context, a1, a2, a3); + break; + default: + if (!args2) + for (j = 1, args2 = new Array(len - 1); j < len; j++) { + args2[j - 1] = arguments[j]; } - var valid1 = errors === errs_1; - } - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; + listeners[i].fn.apply(listeners[i].context, args2); } - validate2.errors = vErrors; - return errors === 0; - }; - }(); - refVal3.schema = { - "type": "object", - "patternProperties": { - "^[0-9]+$": { - "$ref": "#/definitions/column" + } + } + return true; + }; + EventEmitter.prototype.on = function on(event, fn2, context) { + return addListener(this, event, fn2, context, false); + }; + EventEmitter.prototype.once = function once(event, fn2, context) { + return addListener(this, event, fn2, context, true); + }; + EventEmitter.prototype.removeListener = function removeListener(event, fn2, context, once) { + var evt = prefix ? prefix + event : event; + if (!this._events[evt]) + return this; + if (!fn2) { + clearEvent(this, evt); + return this; + } + var listeners = this._events[evt]; + if (listeners.fn) { + if (listeners.fn === fn2 && (!once || listeners.once) && (!context || listeners.context === context)) { + clearEvent(this, evt); + } + } else { + for (var i = 0, events = [], length = listeners.length; i < length; i++) { + if (listeners[i].fn !== fn2 || once && !listeners[i].once || context && listeners[i].context !== context) { + events.push(listeners[i]); } - }, - "additionalProperties": false - }; - refVal3.errors = null; - refVal[3] = refVal3; - var refVal4 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !(key0 == "alignment" || key0 == "width" || key0 == "wrapWord" || key0 == "truncate" || key0 == "paddingLeft" || key0 == "paddingRight"); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - var data1 = data.alignment; - if (data1 !== void 0) { - var errs_1 = errors; - if (typeof data1 !== "string") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".alignment", - schemaPath: "#/properties/alignment/type", - params: { - type: "string" - }, - message: "should be string" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var schema1 = validate2.schema.properties.alignment.enum; - var valid1; - valid1 = false; - for (var i1 = 0; i1 < schema1.length; i1++) - if (equal(data1, schema1[i1])) { - valid1 = true; - break; - } - if (!valid1) { - var err = { - keyword: "enum", - dataPath: (dataPath || "") + ".alignment", - schemaPath: "#/properties/alignment/enum", - params: { - allowedValues: schema1 - }, - message: "should be equal to one of the allowed values" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.width !== void 0) { - var errs_1 = errors; - if (typeof data.width !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".width", - schemaPath: "#/properties/width/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.wrapWord !== void 0) { - var errs_1 = errors; - if (typeof data.wrapWord !== "boolean") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".wrapWord", - schemaPath: "#/properties/wrapWord/type", - params: { - type: "boolean" - }, - message: "should be boolean" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.truncate !== void 0) { - var errs_1 = errors; - if (typeof data.truncate !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".truncate", - schemaPath: "#/properties/truncate/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.paddingLeft !== void 0) { - var errs_1 = errors; - if (typeof data.paddingLeft !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".paddingLeft", - schemaPath: "#/properties/paddingLeft/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.paddingRight !== void 0) { - var errs_1 = errors; - if (typeof data.paddingRight !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".paddingRight", - schemaPath: "#/properties/paddingRight/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; + } + if (events.length) + this._events[evt] = events.length === 1 ? events[0] : events; + else + clearEvent(this, evt); + } + return this; + }; + EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) { + var evt; + if (event) { + evt = prefix ? prefix + event : event; + if (this._events[evt]) + clearEvent(this, evt); + } else { + this._events = new Events(); + this._eventsCount = 0; + } + return this; + }; + EventEmitter.prototype.off = EventEmitter.prototype.removeListener; + EventEmitter.prototype.addListener = EventEmitter.prototype.on; + EventEmitter.prefixed = prefix; + EventEmitter.EventEmitter = EventEmitter; + if ("undefined" !== typeof module2) { + module2.exports = EventEmitter; + } + } +}); + +// ../node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js +var require_p_finally = __commonJS({ + "../node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js"(exports2, module2) { + "use strict"; + module2.exports = (promise, onFinally) => { + onFinally = onFinally || (() => { + }); + return promise.then( + (val) => new Promise((resolve) => { + resolve(onFinally()); + }).then(() => val), + (err) => new Promise((resolve) => { + resolve(onFinally()); + }).then(() => { + throw err; + }) + ); + }; + } +}); + +// ../node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js +var require_p_timeout = __commonJS({ + "../node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js"(exports2, module2) { + "use strict"; + var pFinally = require_p_finally(); + var TimeoutError = class extends Error { + constructor(message2) { + super(message2); + this.name = "TimeoutError"; + } + }; + var pTimeout = (promise, milliseconds, fallback) => new Promise((resolve, reject) => { + if (typeof milliseconds !== "number" || milliseconds < 0) { + throw new TypeError("Expected `milliseconds` to be a positive number"); + } + if (milliseconds === Infinity) { + resolve(promise); + return; + } + const timer = setTimeout(() => { + if (typeof fallback === "function") { + try { + resolve(fallback()); + } catch (error) { + reject(error); } - validate2.errors = vErrors; - return errors === 0; + return; + } + const message2 = typeof fallback === "string" ? fallback : `Promise timed out after ${milliseconds} milliseconds`; + const timeoutError = fallback instanceof Error ? fallback : new TimeoutError(message2); + if (typeof promise.cancel === "function") { + promise.cancel(); + } + reject(timeoutError); + }, milliseconds); + pFinally( + // eslint-disable-next-line promise/prefer-await-to-then + promise.then(resolve, reject), + () => { + clearTimeout(timer); + } + ); + }); + module2.exports = pTimeout; + module2.exports.default = pTimeout; + module2.exports.TimeoutError = TimeoutError; + } +}); + +// ../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js +var require_lower_bound = __commonJS({ + "../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function lowerBound(array, value, comparator) { + let first = 0; + let count = array.length; + while (count > 0) { + const step = count / 2 | 0; + let it = first + step; + if (comparator(array[it], value) <= 0) { + first = ++it; + count -= step + 1; + } else { + count = step; + } + } + return first; + } + exports2.default = lowerBound; + } +}); + +// ../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js +var require_priority_queue = __commonJS({ + "../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var lower_bound_1 = require_lower_bound(); + var PriorityQueue = class { + constructor() { + this._queue = []; + } + enqueue(run, options) { + options = Object.assign({ priority: 0 }, options); + const element = { + priority: options.priority, + run }; - }(); - refVal4.schema = { - "type": "object", - "properties": { - "alignment": { - "type": "string", - "enum": ["left", "right", "center"] - }, - "width": { - "type": "number" - }, - "wrapWord": { - "type": "boolean" - }, - "truncate": { - "type": "number" - }, - "paddingLeft": { - "type": "number" - }, - "paddingRight": { - "type": "number" - } - }, - "additionalProperties": false - }; - refVal4.errors = null; - refVal[4] = refVal4; - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !(key0 == "border" || key0 == "columns" || key0 == "columnDefault" || key0 == "drawHorizontalLine"); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; + if (this.size && this._queue[this.size - 1].priority >= options.priority) { + this._queue.push(element); + return; + } + const index = lower_bound_1.default(this._queue, element, (a, b) => b.priority - a.priority); + this._queue.splice(index, 0, element); + } + dequeue() { + const item = this._queue.shift(); + return item === null || item === void 0 ? void 0 : item.run; + } + filter(options) { + return this._queue.filter((element) => element.priority === options.priority).map((element) => element.run); + } + get size() { + return this._queue.length; + } + }; + exports2.default = PriorityQueue; + } +}); + +// ../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js +var require_dist13 = __commonJS({ + "../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var EventEmitter = require_eventemitter3(); + var p_timeout_1 = require_p_timeout(); + var priority_queue_1 = require_priority_queue(); + var empty = () => { + }; + var timeoutError = new p_timeout_1.TimeoutError(); + var PQueue = class extends EventEmitter { + constructor(options) { + var _a, _b, _c, _d; + super(); + this._intervalCount = 0; + this._intervalEnd = 0; + this._pendingCount = 0; + this._resolveEmpty = empty; + this._resolveIdle = empty; + options = Object.assign({ carryoverConcurrencyCount: false, intervalCap: Infinity, interval: 0, concurrency: Infinity, autoStart: true, queueClass: priority_queue_1.default }, options); + if (!(typeof options.intervalCap === "number" && options.intervalCap >= 1)) { + throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(_b = (_a = options.intervalCap) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : ""}\` (${typeof options.intervalCap})`); + } + if (options.interval === void 0 || !(Number.isFinite(options.interval) && options.interval >= 0)) { + throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(_d = (_c = options.interval) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : ""}\` (${typeof options.interval})`); + } + this._carryoverConcurrencyCount = options.carryoverConcurrencyCount; + this._isIntervalIgnored = options.intervalCap === Infinity || options.interval === 0; + this._intervalCap = options.intervalCap; + this._interval = options.interval; + this._queue = new options.queueClass(); + this._queueClass = options.queueClass; + this.concurrency = options.concurrency; + this._timeout = options.timeout; + this._throwOnTimeout = options.throwOnTimeout === true; + this._isPaused = options.autoStart === false; + } + get _doesIntervalAllowAnother() { + return this._isIntervalIgnored || this._intervalCount < this._intervalCap; + } + get _doesConcurrentAllowAnother() { + return this._pendingCount < this._concurrency; + } + _next() { + this._pendingCount--; + this._tryToStartAnother(); + this.emit("next"); + } + _resolvePromises() { + this._resolveEmpty(); + this._resolveEmpty = empty; + if (this._pendingCount === 0) { + this._resolveIdle(); + this._resolveIdle = empty; + this.emit("idle"); + } + } + _onResumeInterval() { + this._onInterval(); + this._initializeIntervalIfNeeded(); + this._timeoutId = void 0; + } + _isIntervalPaused() { + const now = Date.now(); + if (this._intervalId === void 0) { + const delay = this._intervalEnd - now; + if (delay < 0) { + this._intervalCount = this._carryoverConcurrencyCount ? this._pendingCount : 0; + } else { + if (this._timeoutId === void 0) { + this._timeoutId = setTimeout(() => { + this._onResumeInterval(); + }, delay); } + return true; } - if (data.border !== void 0) { - var errs_1 = errors; - if (!refVal1(data.border, (dataPath || "") + ".border", data, "border", rootData)) { - if (vErrors === null) - vErrors = refVal1.errors; - else - vErrors = vErrors.concat(refVal1.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; + } + return false; + } + _tryToStartAnother() { + if (this._queue.size === 0) { + if (this._intervalId) { + clearInterval(this._intervalId); } - if (data.columns !== void 0) { - var errs_1 = errors; - if (!refVal3(data.columns, (dataPath || "") + ".columns", data, "columns", rootData)) { - if (vErrors === null) - vErrors = refVal3.errors; - else - vErrors = vErrors.concat(refVal3.errors); - errors = vErrors.length; + this._intervalId = void 0; + this._resolvePromises(); + return false; + } + if (!this._isPaused) { + const canInitializeInterval = !this._isIntervalPaused(); + if (this._doesIntervalAllowAnother && this._doesConcurrentAllowAnother) { + const job = this._queue.dequeue(); + if (!job) { + return false; } - var valid1 = errors === errs_1; - } - if (data.columnDefault !== void 0) { - var errs_1 = errors; - if (!refVal[4](data.columnDefault, (dataPath || "") + ".columnDefault", data, "columnDefault", rootData)) { - if (vErrors === null) - vErrors = refVal[4].errors; - else - vErrors = vErrors.concat(refVal[4].errors); - errors = vErrors.length; + this.emit("active"); + job(); + if (canInitializeInterval) { + this._initializeIntervalIfNeeded(); } - var valid1 = errors === errs_1; - } - if (data.drawHorizontalLine !== void 0) { - var errs_1 = errors; - var errs__1 = errors; - var valid1; - valid1 = typeof data.drawHorizontalLine == "function"; - if (!valid1) { - if (errs__1 == errors) { - var err = { - keyword: "typeof", - dataPath: (dataPath || "") + ".drawHorizontalLine", - schemaPath: "#/properties/drawHorizontalLine/typeof", - params: { - keyword: "typeof" - }, - message: 'should pass "typeof" keyword validation' - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } else { - for (var i1 = errs__1; i1 < errors; i1++) { - var ruleErr1 = vErrors[i1]; - if (ruleErr1.dataPath === void 0) - ruleErr1.dataPath = (dataPath || "") + ".drawHorizontalLine"; - if (ruleErr1.schemaPath === void 0) { - ruleErr1.schemaPath = "#/properties/drawHorizontalLine/typeof"; - } + return true; + } + } + return false; + } + _initializeIntervalIfNeeded() { + if (this._isIntervalIgnored || this._intervalId !== void 0) { + return; + } + this._intervalId = setInterval(() => { + this._onInterval(); + }, this._interval); + this._intervalEnd = Date.now() + this._interval; + } + _onInterval() { + if (this._intervalCount === 0 && this._pendingCount === 0 && this._intervalId) { + clearInterval(this._intervalId); + this._intervalId = void 0; + } + this._intervalCount = this._carryoverConcurrencyCount ? this._pendingCount : 0; + this._processQueue(); + } + /** + Executes all queued functions until it reaches the limit. + */ + _processQueue() { + while (this._tryToStartAnother()) { + } + } + get concurrency() { + return this._concurrency; + } + set concurrency(newConcurrency) { + if (!(typeof newConcurrency === "number" && newConcurrency >= 1)) { + throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${newConcurrency}\` (${typeof newConcurrency})`); + } + this._concurrency = newConcurrency; + this._processQueue(); + } + /** + Adds a sync or async task to the queue. Always returns a promise. + */ + async add(fn2, options = {}) { + return new Promise((resolve, reject) => { + const run = async () => { + this._pendingCount++; + this._intervalCount++; + try { + const operation = this._timeout === void 0 && options.timeout === void 0 ? fn2() : p_timeout_1.default(Promise.resolve(fn2()), options.timeout === void 0 ? this._timeout : options.timeout, () => { + if (options.throwOnTimeout === void 0 ? this._throwOnTimeout : options.throwOnTimeout) { + reject(timeoutError); } - } + return void 0; + }); + resolve(await operation); + } catch (error) { + reject(error); } - var valid1 = errors === errs_1; - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" + this._next(); }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; + this._queue.enqueue(run, options); + this._tryToStartAnother(); + this.emit("add"); + }); + } + /** + Same as `.add()`, but accepts an array of sync or async functions. + + @returns A promise that resolves when all functions are resolved. + */ + async addAll(functions, options) { + return Promise.all(functions.map(async (function_) => this.add(function_, options))); + } + /** + Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.) + */ + start() { + if (!this._isPaused) { + return this; } - validate2.errors = vErrors; - return errors === 0; - }; - }(); - validate.schema = { - "$id": "config.json", - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "border": { - "$ref": "#/definitions/borders" - }, - "columns": { - "$ref": "#/definitions/columns" - }, - "columnDefault": { - "$ref": "#/definitions/column" - }, - "drawHorizontalLine": { - "typeof": "function" + this._isPaused = false; + this._processQueue(); + return this; + } + /** + Put queue execution on hold. + */ + pause() { + this._isPaused = true; + } + /** + Clear the queue. + */ + clear() { + this._queue = new this._queueClass(); + } + /** + Can be called multiple times. Useful if you for example add additional items at a later time. + + @returns A promise that settles when the queue becomes empty. + */ + async onEmpty() { + if (this._queue.size === 0) { + return; } - }, - "additionalProperties": false, - "definitions": { - "columns": { - "type": "object", - "patternProperties": { - "^[0-9]+$": { - "$ref": "#/definitions/column" - } - }, - "additionalProperties": false - }, - "column": { - "type": "object", - "properties": { - "alignment": { - "type": "string", - "enum": ["left", "right", "center"] - }, - "width": { - "type": "number" - }, - "wrapWord": { - "type": "boolean" - }, - "truncate": { - "type": "number" - }, - "paddingLeft": { - "type": "number" - }, - "paddingRight": { - "type": "number" - } - }, - "additionalProperties": false - }, - "borders": { - "type": "object", - "properties": { - "topBody": { - "$ref": "#/definitions/border" - }, - "topJoin": { - "$ref": "#/definitions/border" - }, - "topLeft": { - "$ref": "#/definitions/border" - }, - "topRight": { - "$ref": "#/definitions/border" - }, - "bottomBody": { - "$ref": "#/definitions/border" - }, - "bottomJoin": { - "$ref": "#/definitions/border" - }, - "bottomLeft": { - "$ref": "#/definitions/border" - }, - "bottomRight": { - "$ref": "#/definitions/border" - }, - "bodyLeft": { - "$ref": "#/definitions/border" - }, - "bodyRight": { - "$ref": "#/definitions/border" - }, - "bodyJoin": { - "$ref": "#/definitions/border" - }, - "joinBody": { - "$ref": "#/definitions/border" - }, - "joinLeft": { - "$ref": "#/definitions/border" - }, - "joinRight": { - "$ref": "#/definitions/border" - }, - "joinJoin": { - "$ref": "#/definitions/border" - } - }, - "additionalProperties": false - }, - "border": { - "type": "string" + return new Promise((resolve) => { + const existingResolve = this._resolveEmpty; + this._resolveEmpty = () => { + existingResolve(); + resolve(); + }; + }); + } + /** + The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet. + + @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`. + */ + async onIdle() { + if (this._pendingCount === 0 && this._queue.size === 0) { + return; } + return new Promise((resolve) => { + const existingResolve = this._resolveIdle; + this._resolveIdle = () => { + existingResolve(); + resolve(); + }; + }); + } + /** + Size of the queue. + */ + get size() { + return this._queue.size; + } + /** + Size of the queue, filtered by the given options. + + For example, this can be used to find the number of items remaining in the queue with a specific priority level. + */ + sizeBy(options) { + return this._queue.filter(options).length; + } + /** + Number of pending promises. + */ + get pending() { + return this._pendingCount; + } + /** + Whether the queue is currently paused. + */ + get isPaused() { + return this._isPaused; + } + get timeout() { + return this._timeout; + } + /** + Set the timeout for future operations. + */ + set timeout(milliseconds) { + this._timeout = milliseconds; } }; - validate.errors = null; - module2.exports = validate; + exports2.default = PQueue; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/makeStreamConfig.js -var require_makeStreamConfig = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/makeStreamConfig.js"(exports2) { +// ../node_modules/.pnpm/p-defer@3.0.0/node_modules/p-defer/index.js +var require_p_defer2 = __commonJS({ + "../node_modules/.pnpm/p-defer@3.0.0/node_modules/p-defer/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _cloneDeep2 = _interopRequireDefault(require_cloneDeep()); - var _isUndefined2 = _interopRequireDefault(require_isUndefined()); - var _times2 = _interopRequireDefault(require_times2()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters()); - var _validateConfig = _interopRequireDefault(require_validateConfig()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var makeBorder = (border = {}) => { - return Object.assign({}, (0, _getBorderCharacters.default)("honeywell"), border); - }; - var makeColumns = (columnCount, columns = {}, columnDefault = {}) => { - (0, _times2.default)(columnCount, (index) => { - if ((0, _isUndefined2.default)(columns[index])) { - columns[index] = {}; - } - columns[index] = Object.assign({ - alignment: "left", - paddingLeft: 1, - paddingRight: 1, - truncate: Infinity, - wrapWord: false - }, columnDefault, columns[index]); + var pDefer = () => { + const deferred = {}; + deferred.promise = new Promise((resolve, reject) => { + deferred.resolve = resolve; + deferred.reject = reject; }); - return columns; - }; - var makeStreamConfig = (userConfig = {}) => { - (0, _validateConfig.default)("streamConfig.json", userConfig); - const config = (0, _cloneDeep2.default)(userConfig); - if (!config.columnDefault || !config.columnDefault.width) { - throw new Error("Must provide config.columnDefault.width when creating a stream."); - } - if (!config.columnCount) { - throw new Error("Must provide config.columnCount."); - } - config.border = makeBorder(config.border); - config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault); - return config; + return deferred; }; - var _default = makeStreamConfig; - exports2.default = _default; + module2.exports = pDefer; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isFlattenable.js -var require_isFlattenable = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isFlattenable.js"(exports2, module2) { - var Symbol2 = require_Symbol(); - var isArguments = require_isArguments2(); - var isArray = require_isArray2(); - var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; - function isFlattenable(value) { - return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); +// ../pkg-manager/package-requester/lib/equalOrSemverEqual.js +var require_equalOrSemverEqual = __commonJS({ + "../pkg-manager/package-requester/lib/equalOrSemverEqual.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.equalOrSemverEqual = void 0; + var semver_12 = __importDefault4(require_semver2()); + function equalOrSemverEqual(version1, version2) { + if (version1 === version2) + return true; + try { + return semver_12.default.eq(version1, version2, { loose: true }); + } catch (err) { + return false; + } } - module2.exports = isFlattenable; + exports2.equalOrSemverEqual = equalOrSemverEqual; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFlatten.js -var require_baseFlatten = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFlatten.js"(exports2, module2) { - var arrayPush = require_arrayPush(); - var isFlattenable = require_isFlattenable(); - function baseFlatten(array, depth, predicate, isStrict, result) { - var index = -1, length = array.length; - predicate || (predicate = isFlattenable); - result || (result = []); - while (++index < length) { - var value = array[index]; - if (depth > 0 && predicate(value)) { - if (depth > 1) { - baseFlatten(value, depth - 1, predicate, isStrict, result); - } else { - arrayPush(result, value); - } - } else if (!isStrict) { - result[result.length] = value; +// ../pkg-manager/package-requester/lib/packageRequester.js +var require_packageRequester = __commonJS({ + "../pkg-manager/package-requester/lib/packageRequester.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackageRequester = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var cafs_1 = require_lib46(); + var core_loggers_1 = require_lib9(); + var pick_fetcher_1 = require_lib43(); + var error_1 = require_lib8(); + var graceful_fs_1 = __importDefault4(require_lib15()); + var logger_1 = require_lib6(); + var package_is_installable_1 = require_lib24(); + var read_package_json_1 = require_lib41(); + var dependency_path_1 = require_lib81(); + var p_map_values_1 = __importDefault4(require_lib63()); + var p_queue_1 = __importDefault4(require_dist13()); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var p_defer_1 = __importDefault4(require_p_defer2()); + var path_temp_1 = __importDefault4(require_path_temp()); + var promise_share_1 = __importDefault4(require_promise_share()); + var pick_1 = __importDefault4(require_pick()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + var semver_12 = __importDefault4(require_semver2()); + var ssri_1 = __importDefault4(require_lib44()); + var equalOrSemverEqual_1 = require_equalOrSemverEqual(); + var safe_promise_defer_1 = __importDefault4(require_lib45()); + var TARBALL_INTEGRITY_FILENAME = "tarball-integrity"; + var packageRequestLogger = (0, logger_1.logger)("package-requester"); + var pickBundledManifest = (0, pick_1.default)([ + "bin", + "bundledDependencies", + "bundleDependencies", + "dependencies", + "directories", + "engines", + "name", + "optionalDependencies", + "os", + "peerDependencies", + "peerDependenciesMeta", + "scripts", + "version" + ]); + function normalizeBundledManifest(manifest) { + return { + ...pickBundledManifest(manifest), + version: semver_12.default.clean(manifest.version ?? "0.0.0", { loose: true }) ?? manifest.version + }; + } + function createPackageRequester(opts) { + opts = opts || {}; + const networkConcurrency = opts.networkConcurrency ?? 16; + const requestsQueue = new p_queue_1.default({ + concurrency: networkConcurrency + }); + const cafsDir = path_1.default.join(opts.storeDir, "files"); + const getFilePathInCafs = cafs_1.getFilePathInCafs.bind(null, cafsDir); + const fetch = fetcher.bind(null, opts.fetchers, opts.cafs); + const fetchPackageToStore = fetchToStore.bind(null, { + // If verifyStoreIntegrity is false we skip the integrity checks of all files + // and only read the package manifest. + // eslint-disable-next-line @typescript-eslint/no-unnecessary-boolean-literal-compare + checkFilesIntegrity: opts.verifyStoreIntegrity === false ? cafs_1.readManifestFromStore.bind(null, cafsDir) : cafs_1.checkPkgFilesIntegrity.bind(null, cafsDir), + fetch, + fetchingLocker: /* @__PURE__ */ new Map(), + getFilePathByModeInCafs: cafs_1.getFilePathByModeInCafs.bind(null, cafsDir), + getFilePathInCafs, + requestsQueue: Object.assign(requestsQueue, { + counter: 0, + concurrency: networkConcurrency + }), + storeDir: opts.storeDir + }); + const requestPackage = resolveAndFetch.bind(null, { + engineStrict: opts.engineStrict, + nodeVersion: opts.nodeVersion, + pnpmVersion: opts.pnpmVersion, + force: opts.force, + fetchPackageToStore, + requestsQueue, + resolve: opts.resolve, + storeDir: opts.storeDir + }); + return Object.assign(requestPackage, { + fetchPackageToStore, + getFilesIndexFilePath: getFilesIndexFilePath.bind(null, { + getFilePathInCafs, + storeDir: opts.storeDir + }), + requestPackage + }); + } + exports2.createPackageRequester = createPackageRequester; + async function resolveAndFetch(ctx, wantedDependency, options) { + let latest; + let manifest; + let normalizedPref; + let resolution = options.currentPkg?.resolution; + let pkgId = options.currentPkg?.id; + const skipResolution = resolution && !options.update; + let forceFetch = false; + let updated = false; + let resolvedVia; + let publishedAt; + if (!skipResolution || options.skipFetch === true || Boolean(pkgId?.startsWith("file:")) || wantedDependency.optional === true) { + const resolveResult = await ctx.requestsQueue.add(async () => ctx.resolve(wantedDependency, { + alwaysTryWorkspacePackages: options.alwaysTryWorkspacePackages, + defaultTag: options.defaultTag, + publishedBy: options.publishedBy, + pickLowestVersion: options.pickLowestVersion, + lockfileDir: options.lockfileDir, + preferredVersions: options.preferredVersions, + preferWorkspacePackages: options.preferWorkspacePackages, + projectDir: options.projectDir, + registry: options.registry, + workspacePackages: options.workspacePackages + }), { priority: options.downloadPriority }); + manifest = resolveResult.manifest; + latest = resolveResult.latest; + resolvedVia = resolveResult.resolvedVia; + publishedAt = resolveResult.publishedAt; + forceFetch = Boolean(options.currentPkg?.resolution != null && pkgId?.startsWith("file:") && (options.currentPkg?.resolution).integrity !== resolveResult.resolution.integrity); + updated = pkgId !== resolveResult.id || !resolution || forceFetch; + resolution = resolveResult.resolution; + pkgId = resolveResult.id; + normalizedPref = resolveResult.normalizedPref; + } + const id = pkgId; + if (resolution.type === "directory" && !id.startsWith("file:")) { + if (manifest == null) { + throw new Error(`Couldn't read package.json of local dependency ${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${wantedDependency.pref ?? ""}`); } + return { + body: { + id, + isLocal: true, + manifest, + normalizedPref, + resolution, + resolvedVia, + updated + } + }; } - return result; + const isInstallable = ctx.force === true || (manifest == null ? void 0 : (0, package_is_installable_1.packageIsInstallable)(id, manifest, { + engineStrict: ctx.engineStrict, + lockfileDir: options.lockfileDir, + nodeVersion: ctx.nodeVersion, + optional: wantedDependency.optional === true, + pnpmVersion: ctx.pnpmVersion + })); + if ((options.skipFetch === true || isInstallable === false) && manifest != null) { + return { + body: { + id, + isLocal: false, + isInstallable: isInstallable ?? void 0, + latest, + manifest, + normalizedPref, + resolution, + resolvedVia, + updated, + publishedAt + } + }; + } + const pkg = (0, pick_1.default)(["name", "version"], manifest ?? {}); + const fetchResult = ctx.fetchPackageToStore({ + fetchRawManifest: true, + force: forceFetch, + ignoreScripts: options.ignoreScripts, + lockfileDir: options.lockfileDir, + pkg: { + ...pkg, + id, + resolution + }, + expectedPkg: options.expectedPkg?.name != null ? updated ? { name: options.expectedPkg.name, version: pkg.version } : options.expectedPkg : pkg + }); + return { + body: { + id, + isLocal: false, + isInstallable: isInstallable ?? void 0, + latest, + manifest, + normalizedPref, + resolution, + resolvedVia, + updated, + publishedAt + }, + bundledManifest: fetchResult.bundledManifest, + files: fetchResult.files, + filesIndexFile: fetchResult.filesIndexFile, + finishing: fetchResult.finishing + }; } - module2.exports = baseFlatten; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/flatten.js -var require_flatten = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/flatten.js"(exports2, module2) { - var baseFlatten = require_baseFlatten(); - function flatten(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, 1) : []; + function getFilesIndexFilePath(ctx, opts) { + const targetRelative = (0, dependency_path_1.depPathToFilename)(opts.pkg.id); + const target = path_1.default.join(ctx.storeDir, targetRelative); + const filesIndexFile = opts.pkg.resolution.integrity ? ctx.getFilePathInCafs(opts.pkg.resolution.integrity, "index") : path_1.default.join(target, opts.ignoreScripts ? "integrity-not-built.json" : "integrity.json"); + return { filesIndexFile, target }; } - module2.exports = flatten; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/mapDataUsingRowHeightIndex.js -var require_mapDataUsingRowHeightIndex = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/mapDataUsingRowHeightIndex.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _flatten2 = _interopRequireDefault(require_flatten()); - var _times2 = _interopRequireDefault(require_times2()); - var _wrapCell = _interopRequireDefault(require_wrapCell()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var mapDataUsingRowHeightIndex = (unmappedRows, rowHeightIndex, config) => { - const tableWidth = unmappedRows[0].length; - const mappedRows = unmappedRows.map((cells, index0) => { - const rowHeight = (0, _times2.default)(rowHeightIndex[index0], () => { - return new Array(tableWidth).fill(""); - }); - cells.forEach((value, index1) => { - const cellLines = (0, _wrapCell.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); - cellLines.forEach((cellLine, index2) => { - rowHeight[index2][index1] = cellLine; + function fetchToStore(ctx, opts) { + if (!opts.pkg.name) { + opts.fetchRawManifest = true; + } + if (!ctx.fetchingLocker.has(opts.pkg.id)) { + const bundledManifest = (0, p_defer_1.default)(); + const files = (0, p_defer_1.default)(); + const finishing = (0, p_defer_1.default)(); + const { filesIndexFile, target } = getFilesIndexFilePath(ctx, opts); + doFetchToStore(filesIndexFile, bundledManifest, files, finishing, target); + if (opts.fetchRawManifest) { + ctx.fetchingLocker.set(opts.pkg.id, { + bundledManifest: removeKeyOnFail(bundledManifest.promise), + files: removeKeyOnFail(files.promise), + filesIndexFile, + finishing: removeKeyOnFail(finishing.promise) }); + } else { + ctx.fetchingLocker.set(opts.pkg.id, { + files: removeKeyOnFail(files.promise), + filesIndexFile, + finishing: removeKeyOnFail(finishing.promise) + }); + } + files.promise.then((cache) => { + core_loggers_1.progressLogger.debug({ + packageId: opts.pkg.id, + requester: opts.lockfileDir, + status: cache.fromStore ? "found_in_store" : "fetched" + }); + if (cache.fromStore) { + return; + } + const tmp = ctx.fetchingLocker.get(opts.pkg.id); + if (tmp == null) + return; + ctx.fetchingLocker.set(opts.pkg.id, { + ...tmp, + files: Promise.resolve({ + ...cache, + fromStore: true + }) + }); + }).catch(() => { + ctx.fetchingLocker.delete(opts.pkg.id); }); - return rowHeight; - }); - return (0, _flatten2.default)(mappedRows); - }; - var _default = mapDataUsingRowHeightIndex; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/padTableData.js -var require_padTableData = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/padTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var padTableData = (rows, config) => { - return rows.map((cells) => { - return cells.map((value, index1) => { - const column = config.columns[index1]; - return " ".repeat(column.paddingLeft) + value + " ".repeat(column.paddingRight); - }); - }); - }; - var _default = padTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/stringifyTableData.js -var require_stringifyTableData = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/stringifyTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var stringifyTableData = (rows) => { - return rows.map((cells) => { - return cells.map(String); - }); - }; - var _default = stringifyTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSlice.js -var require_baseSlice = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSlice.js"(exports2, module2) { - function baseSlice(array, start, end) { - var index = -1, length = array.length; - if (start < 0) { - start = -start > length ? 0 : length + start; } - end = end > length ? length : end; - if (end < 0) { - end += length; + const result2 = ctx.fetchingLocker.get(opts.pkg.id); + if (opts.fetchRawManifest && result2.bundledManifest == null) { + result2.bundledManifest = removeKeyOnFail(result2.files.then(async (filesResult) => { + if (!filesResult.filesIndex["package.json"]) + return void 0; + if (!filesResult.local) { + const { integrity, mode } = filesResult.filesIndex["package.json"]; + const manifestPath = ctx.getFilePathByModeInCafs(integrity, mode); + return readBundledManifest(manifestPath); + } + return readBundledManifest(filesResult.filesIndex["package.json"]); + })); } - length = start > end ? 0 : end - start >>> 0; - start >>>= 0; - var result = Array(length); - while (++index < length) { - result[index] = array[index + start]; + return { + bundledManifest: result2.bundledManifest != null ? (0, promise_share_1.default)(result2.bundledManifest) : void 0, + files: (0, promise_share_1.default)(result2.files), + filesIndexFile: result2.filesIndexFile, + finishing: (0, promise_share_1.default)(result2.finishing) + }; + async function removeKeyOnFail(p) { + try { + return await p; + } catch (err) { + ctx.fetchingLocker.delete(opts.pkg.id); + throw err; + } + } + async function doFetchToStore(filesIndexFile, bundledManifest, files, finishing, target) { + try { + const isLocalTarballDep = opts.pkg.id.startsWith("file:"); + const isLocalPkg = opts.pkg.resolution.type === "directory"; + if (!opts.force && (!isLocalTarballDep || await tarballIsUpToDate(opts.pkg.resolution, target, opts.lockfileDir)) && !isLocalPkg) { + let pkgFilesIndex; + try { + pkgFilesIndex = await (0, load_json_file_1.default)(filesIndexFile); + } catch (err) { + } + if (pkgFilesIndex?.files != null) { + const manifest = opts.fetchRawManifest ? (0, safe_promise_defer_1.default)() : void 0; + if (pkgFilesIndex.name != null && opts.expectedPkg?.name != null && pkgFilesIndex.name.toLowerCase() !== opts.expectedPkg.name.toLowerCase() || pkgFilesIndex.version != null && opts.expectedPkg?.version != null && // We used to not normalize the package versions before writing them to the lockfile and store. + // So it may happen that the version will be in different formats. + // For instance, v1.0.0 and 1.0.0 + // Hence, we need to use semver.eq() to compare them. + !(0, equalOrSemverEqual_1.equalOrSemverEqual)(pkgFilesIndex.version, opts.expectedPkg.version)) { + throw new error_1.PnpmError("UNEXPECTED_PKG_CONTENT_IN_STORE", `Package name mismatch found while reading ${JSON.stringify(opts.pkg.resolution)} from the store. This means that the lockfile is broken. Expected package: ${opts.expectedPkg.name}@${opts.expectedPkg.version}. Actual package in the store by the given integrity: ${pkgFilesIndex.name}@${pkgFilesIndex.version}.`); + } + const verified = await ctx.checkFilesIntegrity(pkgFilesIndex, manifest); + if (verified) { + files.resolve({ + filesIndex: pkgFilesIndex.files, + fromStore: true, + sideEffects: pkgFilesIndex.sideEffects + }); + if (manifest != null) { + manifest().then((manifest2) => { + bundledManifest.resolve(manifest2 == null ? manifest2 : normalizeBundledManifest(manifest2)); + }).catch(bundledManifest.reject); + } + finishing.resolve(void 0); + return; + } + packageRequestLogger.warn({ + message: `Refetching ${target} to store. It was either modified or had no integrity checksums`, + prefix: opts.lockfileDir + }); + } + } + const priority = (++ctx.requestsQueue.counter % ctx.requestsQueue.concurrency === 0 ? -1 : 1) * 1e3; + const fetchManifest = opts.fetchRawManifest ? (0, safe_promise_defer_1.default)() : void 0; + if (fetchManifest != null) { + fetchManifest().then((manifest) => { + bundledManifest.resolve(manifest == null ? manifest : normalizeBundledManifest(manifest)); + }).catch(bundledManifest.reject); + } + const fetchedPackage = await ctx.requestsQueue.add(async () => ctx.fetch(opts.pkg.id, opts.pkg.resolution, { + lockfileDir: opts.lockfileDir, + manifest: fetchManifest, + onProgress: (downloaded) => { + core_loggers_1.fetchingProgressLogger.debug({ + downloaded, + packageId: opts.pkg.id, + status: "in_progress" + }); + }, + onStart: (size, attempt) => { + core_loggers_1.fetchingProgressLogger.debug({ + attempt, + packageId: opts.pkg.id, + size, + status: "started" + }); + } + }), { priority }); + let filesResult; + if (!fetchedPackage.local) { + const integrity = await (0, p_map_values_1.default)(async ({ writeResult, mode, size }) => { + const { checkedAt, integrity: integrity2 } = await writeResult; + return { + checkedAt, + integrity: integrity2.toString(), + mode, + size + }; + }, fetchedPackage.filesIndex); + if (opts.pkg.name && opts.pkg.version) { + await writeFilesIndexFile(filesIndexFile, { + pkg: opts.pkg, + files: integrity + }); + } else { + bundledManifest.promise.then((manifest) => writeFilesIndexFile(filesIndexFile, { + pkg: manifest ?? {}, + files: integrity + })).catch(); + } + filesResult = { + fromStore: false, + filesIndex: integrity + }; + } else { + filesResult = { + local: true, + fromStore: false, + filesIndex: fetchedPackage.filesIndex, + packageImportMethod: fetchedPackage.packageImportMethod + }; + } + if (isLocalTarballDep && opts.pkg.resolution.integrity) { + await fs_1.promises.mkdir(target, { recursive: true }); + await graceful_fs_1.default.writeFile(path_1.default.join(target, TARBALL_INTEGRITY_FILENAME), opts.pkg.resolution.integrity, "utf8"); + } + files.resolve(filesResult); + finishing.resolve(void 0); + } catch (err) { + files.reject(err); + if (opts.fetchRawManifest) { + bundledManifest.reject(err); + } + } } - return result; } - module2.exports = baseSlice; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castSlice.js -var require_castSlice = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castSlice.js"(exports2, module2) { - var baseSlice = require_baseSlice(); - function castSlice(array, start, end) { - var length = array.length; - end = end === void 0 ? length : end; - return !start && end >= length ? array : baseSlice(array, start, end); + async function writeFilesIndexFile(filesIndexFile, { pkg, files }) { + await writeJsonFile(filesIndexFile, { + name: pkg.name, + version: pkg.version, + files + }); } - module2.exports = castSlice; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasUnicode.js -var require_hasUnicode = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasUnicode.js"(exports2, module2) { - var rsAstralRange = "\\ud800-\\udfff"; - var rsComboMarksRange = "\\u0300-\\u036f"; - var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; - var rsComboSymbolsRange = "\\u20d0-\\u20ff"; - var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; - var rsVarRange = "\\ufe0e\\ufe0f"; - var rsZWJ = "\\u200d"; - var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + "]"); - function hasUnicode(string) { - return reHasUnicode.test(string); + async function writeJsonFile(filePath, data) { + const targetDir = path_1.default.dirname(filePath); + await fs_1.promises.mkdir(targetDir, { recursive: true }); + const temp = (0, path_temp_1.default)(targetDir); + await graceful_fs_1.default.writeFile(temp, JSON.stringify(data)); + await (0, rename_overwrite_1.default)(temp, filePath); } - module2.exports = hasUnicode; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsRegExp.js -var require_baseIsRegExp = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsRegExp.js"(exports2, module2) { - var baseGetTag = require_baseGetTag(); - var isObjectLike = require_isObjectLike(); - var regexpTag = "[object RegExp]"; - function baseIsRegExp(value) { - return isObjectLike(value) && baseGetTag(value) == regexpTag; + async function readBundledManifest(pkgJsonPath) { + return pickBundledManifest(await (0, read_package_json_1.readPackageJson)(pkgJsonPath)); + } + async function tarballIsUpToDate(resolution, pkgInStoreLocation, lockfileDir) { + let currentIntegrity; + try { + currentIntegrity = await graceful_fs_1.default.readFile(path_1.default.join(pkgInStoreLocation, TARBALL_INTEGRITY_FILENAME), "utf8"); + } catch (err) { + return false; + } + if (resolution.integrity && currentIntegrity !== resolution.integrity) + return false; + const tarball = path_1.default.join(lockfileDir, resolution.tarball.slice(5)); + const tarballStream = (0, fs_1.createReadStream)(tarball); + try { + return Boolean(await ssri_1.default.checkStream(tarballStream, currentIntegrity)); + } catch (err) { + return false; + } + } + async function fetcher(fetcherByHostingType, cafs, packageId, resolution, opts) { + const fetch = (0, pick_fetcher_1.pickFetcher)(fetcherByHostingType, resolution); + try { + return await fetch(cafs, resolution, opts); + } catch (err) { + packageRequestLogger.warn({ + message: `Fetching ${packageId} failed!`, + prefix: opts.lockfileDir + }); + throw err; + } } - module2.exports = baseIsRegExp; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isRegExp.js -var require_isRegExp = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isRegExp.js"(exports2, module2) { - var baseIsRegExp = require_baseIsRegExp(); - var baseUnary = require_baseUnary(); - var nodeUtil = require_nodeUtil(); - var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp; - var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; - module2.exports = isRegExp; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiSize.js -var require_asciiSize = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiSize.js"(exports2, module2) { - var baseProperty = require_baseProperty(); - var asciiSize = baseProperty("length"); - module2.exports = asciiSize; +// ../pkg-manager/package-requester/lib/index.js +var require_lib99 = __commonJS({ + "../pkg-manager/package-requester/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackageRequester = void 0; + var packageRequester_1 = require_packageRequester(); + Object.defineProperty(exports2, "createPackageRequester", { enumerable: true, get: function() { + return packageRequester_1.createPackageRequester; + } }); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeSize.js -var require_unicodeSize = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeSize.js"(exports2, module2) { - var rsAstralRange = "\\ud800-\\udfff"; - var rsComboMarksRange = "\\u0300-\\u036f"; - var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; - var rsComboSymbolsRange = "\\u20d0-\\u20ff"; - var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; - var rsVarRange = "\\ufe0e\\ufe0f"; - var rsAstral = "[" + rsAstralRange + "]"; - var rsCombo = "[" + rsComboRange + "]"; - var rsFitz = "\\ud83c[\\udffb-\\udfff]"; - var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; - var rsNonAstral = "[^" + rsAstralRange + "]"; - var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; - var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; - var rsZWJ = "\\u200d"; - var reOptMod = rsModifier + "?"; - var rsOptVar = "[" + rsVarRange + "]?"; - var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; - var rsSeq = rsOptVar + reOptMod + rsOptJoin; - var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; - var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); - function unicodeSize(string) { - var result = reUnicode.lastIndex = 0; - while (reUnicode.test(string)) { - ++result; +// ../store/package-store/lib/storeController/prune.js +var require_prune = __commonJS({ + "../store/package-store/lib/storeController/prune.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.prune = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var ssri_1 = __importDefault4(require_lib44()); + var BIG_ONE = BigInt(1); + async function prune({ cacheDir, storeDir }) { + const cafsDir = path_1.default.join(storeDir, "files"); + await Promise.all([ + (0, rimraf_1.default)(path_1.default.join(cacheDir, "metadata")), + (0, rimraf_1.default)(path_1.default.join(cacheDir, "metadata-full")), + (0, rimraf_1.default)(path_1.default.join(cacheDir, "metadata-v1.1")) + ]); + await (0, rimraf_1.default)(path_1.default.join(storeDir, "tmp")); + (0, logger_1.globalInfo)("Removed all cached metadata files"); + const pkgIndexFiles = []; + const removedHashes = /* @__PURE__ */ new Set(); + const dirs = (await fs_1.promises.readdir(cafsDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((dir) => dir.name); + let fileCounter = 0; + for (const dir of dirs) { + const subdir = path_1.default.join(cafsDir, dir); + for (const fileName of await fs_1.promises.readdir(subdir)) { + const filePath = path_1.default.join(subdir, fileName); + if (fileName.endsWith("-index.json")) { + pkgIndexFiles.push(filePath); + continue; + } + const stat = await fs_1.promises.stat(filePath); + if (stat.isDirectory()) { + (0, logger_1.globalWarn)(`An alien directory is present in the store: ${filePath}`); + continue; + } + if (stat.nlink === 1 || stat.nlink === BIG_ONE) { + await fs_1.promises.unlink(filePath); + fileCounter++; + removedHashes.add(ssri_1.default.fromHex(`${dir}${fileName}`, "sha512").toString()); + } + } } - return result; + (0, logger_1.globalInfo)(`Removed ${fileCounter} file${fileCounter === 1 ? "" : "s"}`); + let pkgCounter = 0; + for (const pkgIndexFilePath of pkgIndexFiles) { + const { files: pkgFilesIndex } = await (0, load_json_file_1.default)(pkgIndexFilePath); + if (removedHashes.has(pkgFilesIndex["package.json"].integrity)) { + await fs_1.promises.unlink(pkgIndexFilePath); + pkgCounter++; + } + } + (0, logger_1.globalInfo)(`Removed ${pkgCounter} package${pkgCounter === 1 ? "" : "s"}`); } - module2.exports = unicodeSize; + exports2.prune = prune; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringSize.js -var require_stringSize = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringSize.js"(exports2, module2) { - var asciiSize = require_asciiSize(); - var hasUnicode = require_hasUnicode(); - var unicodeSize = require_unicodeSize(); - function stringSize(string) { - return hasUnicode(string) ? unicodeSize(string) : asciiSize(string); +// ../store/package-store/lib/storeController/index.js +var require_storeController = __commonJS({ + "../store/package-store/lib/storeController/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackageStore = void 0; + var create_cafs_store_1 = require_lib49(); + var package_requester_1 = require_lib99(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var write_json_file_1 = __importDefault4(require_write_json_file()); + var prune_1 = require_prune(); + async function createPackageStore(resolve, fetchers, initOpts) { + const storeDir = initOpts.storeDir; + const cafs = (0, create_cafs_store_1.createCafsStore)(storeDir, initOpts); + const packageRequester = (0, package_requester_1.createPackageRequester)({ + force: initOpts.force, + engineStrict: initOpts.engineStrict, + nodeVersion: initOpts.nodeVersion, + pnpmVersion: initOpts.pnpmVersion, + resolve, + fetchers, + cafs, + ignoreFile: initOpts.ignoreFile, + networkConcurrency: initOpts.networkConcurrency, + storeDir: initOpts.storeDir, + verifyStoreIntegrity: initOpts.verifyStoreIntegrity + }); + return { + close: async () => { + }, + fetchPackage: packageRequester.fetchPackageToStore, + getFilesIndexFilePath: packageRequester.getFilesIndexFilePath, + importPackage: cafs.importPackage, + prune: prune_1.prune.bind(null, { storeDir, cacheDir: initOpts.cacheDir }), + requestPackage: packageRequester.requestPackage, + upload + }; + async function upload(builtPkgLocation, opts) { + const sideEffectsIndex = await cafs.addFilesFromDir(builtPkgLocation); + const integrity = {}; + await Promise.all(Object.entries(sideEffectsIndex).map(async ([filename, { writeResult, mode, size }]) => { + const { checkedAt, integrity: fileIntegrity } = await writeResult; + integrity[filename] = { + checkedAt, + integrity: fileIntegrity.toString(), + mode, + size + }; + })); + let filesIndex; + try { + filesIndex = await (0, load_json_file_1.default)(opts.filesIndexFile); + } catch (err) { + filesIndex = { files: integrity }; + } + filesIndex.sideEffects = filesIndex.sideEffects ?? {}; + filesIndex.sideEffects[opts.sideEffectsCacheKey] = integrity; + await (0, write_json_file_1.default)(opts.filesIndexFile, filesIndex, { indent: void 0 }); + } } - module2.exports = stringSize; + exports2.createPackageStore = createPackageStore; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiToArray.js -var require_asciiToArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiToArray.js"(exports2, module2) { - function asciiToArray(string) { - return string.split(""); - } - module2.exports = asciiToArray; +// ../resolving/resolver-base/lib/index.js +var require_lib100 = __commonJS({ + "../resolving/resolver-base/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DIRECT_DEP_SELECTOR_WEIGHT = void 0; + exports2.DIRECT_DEP_SELECTOR_WEIGHT = 1e3; } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeToArray.js -var require_unicodeToArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeToArray.js"(exports2, module2) { - var rsAstralRange = "\\ud800-\\udfff"; - var rsComboMarksRange = "\\u0300-\\u036f"; - var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; - var rsComboSymbolsRange = "\\u20d0-\\u20ff"; - var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; - var rsVarRange = "\\ufe0e\\ufe0f"; - var rsAstral = "[" + rsAstralRange + "]"; - var rsCombo = "[" + rsComboRange + "]"; - var rsFitz = "\\ud83c[\\udffb-\\udfff]"; - var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; - var rsNonAstral = "[^" + rsAstralRange + "]"; - var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; - var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; - var rsZWJ = "\\u200d"; - var reOptMod = rsModifier + "?"; - var rsOptVar = "[" + rsVarRange + "]?"; - var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; - var rsSeq = rsOptVar + reOptMod + rsOptJoin; - var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; - var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); - function unicodeToArray(string) { - return string.match(reUnicode) || []; - } - module2.exports = unicodeToArray; +// ../store/store-controller-types/lib/index.js +var require_lib101 = __commonJS({ + "../store/store-controller-types/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_lib100(), exports2); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToArray.js -var require_stringToArray = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToArray.js"(exports2, module2) { - var asciiToArray = require_asciiToArray(); - var hasUnicode = require_hasUnicode(); - var unicodeToArray = require_unicodeToArray(); - function stringToArray(string) { - return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); - } - module2.exports = stringToArray; +// ../store/package-store/lib/index.js +var require_lib102 = __commonJS({ + "../store/package-store/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackageStore = void 0; + var storeController_1 = require_storeController(); + Object.defineProperty(exports2, "createPackageStore", { enumerable: true, get: function() { + return storeController_1.createPackageStore; + } }); + __exportStar4(require_lib101(), exports2); } }); -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/truncate.js -var require_truncate = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/truncate.js"(exports2, module2) { - var baseToString = require_baseToString(); - var castSlice = require_castSlice(); - var hasUnicode = require_hasUnicode(); - var isObject = require_isObject2(); - var isRegExp = require_isRegExp(); - var stringSize = require_stringSize(); - var stringToArray = require_stringToArray(); - var toInteger = require_toInteger(); - var toString = require_toString(); - var DEFAULT_TRUNC_LENGTH = 30; - var DEFAULT_TRUNC_OMISSION = "..."; - var reFlags = /\w*$/; - function truncate(string, options) { - var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION; - if (isObject(options)) { - var separator = "separator" in options ? options.separator : separator; - length = "length" in options ? toInteger(options.length) : length; - omission = "omission" in options ? baseToString(options.omission) : omission; - } - string = toString(string); - var strLength = string.length; - if (hasUnicode(string)) { - var strSymbols = stringToArray(string); - strLength = strSymbols.length; - } - if (length >= strLength) { - return string; - } - var end = length - stringSize(omission); - if (end < 1) { - return omission; - } - var result = strSymbols ? castSlice(strSymbols, 0, end).join("") : string.slice(0, end); - if (separator === void 0) { - return result + omission; - } - if (strSymbols) { - end += result.length - end; - } - if (isRegExp(separator)) { - if (string.slice(end).search(separator)) { - var match, substring = result; - if (!separator.global) { - separator = RegExp(separator.source, toString(reFlags.exec(separator)) + "g"); - } - separator.lastIndex = 0; - while (match = separator.exec(substring)) { - var newEnd = match.index; - } - result = result.slice(0, newEnd === void 0 ? end : newEnd); - } - } else if (string.indexOf(baseToString(separator), end) != end) { - var index = result.lastIndexOf(separator); - if (index > -1) { - result = result.slice(0, index); - } - } - return result + omission; +// ../store/store-connection-manager/lib/createNewStoreController.js +var require_createNewStoreController = __commonJS({ + "../store/store-connection-manager/lib/createNewStoreController.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNewStoreController = void 0; + var fs_1 = require("fs"); + var client_1 = require_lib77(); + var package_store_1 = require_lib102(); + var cli_meta_1 = require_lib4(); + async function createNewStoreController(opts) { + const fullMetadata = opts.resolutionMode === "time-based" && !opts.registrySupportsTimeField; + const { resolve, fetchers } = (0, client_1.createClient)({ + customFetchers: opts.hooks?.fetchers, + userConfig: opts.userConfig, + unsafePerm: opts.unsafePerm, + authConfig: opts.rawConfig, + ca: opts.ca, + cacheDir: opts.cacheDir, + cert: opts.cert, + fullMetadata, + filterMetadata: fullMetadata, + httpProxy: opts.httpProxy, + httpsProxy: opts.httpsProxy, + ignoreScripts: opts.ignoreScripts, + key: opts.key, + localAddress: opts.localAddress, + noProxy: opts.noProxy, + offline: opts.offline, + preferOffline: opts.preferOffline, + rawConfig: opts.rawConfig, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + strictSsl: opts.strictSsl ?? true, + timeout: opts.fetchTimeout, + userAgent: opts.userAgent, + maxSockets: opts.maxSockets ?? (opts.networkConcurrency != null ? opts.networkConcurrency * 3 : void 0), + gitShallowHosts: opts.gitShallowHosts, + resolveSymlinksInInjectedDirs: opts.resolveSymlinksInInjectedDirs + }); + await fs_1.promises.mkdir(opts.storeDir, { recursive: true }); + return { + ctrl: await (0, package_store_1.createPackageStore)(resolve, fetchers, { + engineStrict: opts.engineStrict, + force: opts.force, + nodeVersion: opts.nodeVersion, + pnpmVersion: cli_meta_1.packageManager.version, + ignoreFile: opts.ignoreFile, + importPackage: opts.hooks?.importPackage, + networkConcurrency: opts.networkConcurrency, + packageImportMethod: opts.packageImportMethod, + cacheDir: opts.cacheDir, + storeDir: opts.storeDir, + verifyStoreIntegrity: typeof opts.verifyStoreIntegrity === "boolean" ? opts.verifyStoreIntegrity : true + }), + dir: opts.storeDir + }; } - module2.exports = truncate; + exports2.createNewStoreController = createNewStoreController; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/truncateTableData.js -var require_truncateTableData = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/truncateTableData.js"(exports2) { +// ../node_modules/.pnpm/proc-output@1.0.8/node_modules/proc-output/lib/index.js +var require_lib103 = __commonJS({ + "../node_modules/.pnpm/proc-output@1.0.8/node_modules/proc-output/lib/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _truncate2 = _interopRequireDefault(require_truncate()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var truncateTableData = (rows, config) => { - return rows.map((cells) => { - return cells.map((content, index) => { - return (0, _truncate2.default)(content, { - length: config.columns[index].truncate - }); - }); + module2.exports = function procOutput(proc, cb) { + var stdout = "", stderr = ""; + proc.on("error", function(err) { + cb(err); + }); + proc.stdout.on("data", function(chunk) { + return stdout += chunk; + }); + proc.stderr.on("data", function(chunk) { + return stderr += chunk; + }); + proc.on("close", function(code) { + return cb(null, stdout, stderr, code); }); + return proc; }; - var _default = truncateTableData; - exports2.default = _default; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/createStream.js -var require_createStream = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/createStream.js"(exports2) { +// ../node_modules/.pnpm/spawno@2.1.1/node_modules/spawno/lib/index.js +var require_lib104 = __commonJS({ + "../node_modules/.pnpm/spawno@2.1.1/node_modules/spawno/lib/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _mapValues2 = _interopRequireDefault(require_mapValues()); - var _alignTableData = _interopRequireDefault(require_alignTableData()); - var _calculateRowHeightIndex = _interopRequireDefault(require_calculateRowHeightIndex()); - var _drawBorder = require_drawBorder(); - var _drawRow = _interopRequireDefault(require_drawRow()); - var _makeStreamConfig = _interopRequireDefault(require_makeStreamConfig()); - var _mapDataUsingRowHeightIndex = _interopRequireDefault(require_mapDataUsingRowHeightIndex()); - var _padTableData = _interopRequireDefault(require_padTableData()); - var _stringifyTableData = _interopRequireDefault(require_stringifyTableData()); - var _truncateTableData = _interopRequireDefault(require_truncateTableData()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var prepareData = (data, config) => { - let rows; - rows = (0, _stringifyTableData.default)(data); - rows = (0, _truncateTableData.default)(data, config); - const rowHeightIndex = (0, _calculateRowHeightIndex.default)(rows, config); - rows = (0, _mapDataUsingRowHeightIndex.default)(rows, rowHeightIndex, config); - rows = (0, _alignTableData.default)(rows, config); - rows = (0, _padTableData.default)(rows, config); - return rows; - }; - var create = (row, columnWidthIndex, config) => { - const rows = prepareData([row], config); - const body = rows.map((literalRow) => { - return (0, _drawRow.default)(literalRow, config.border); - }).join(""); - let output; - output = ""; - output += (0, _drawBorder.drawBorderTop)(columnWidthIndex, config.border); - output += body; - output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); - output = output.trimEnd(); - process.stdout.write(output); - }; - var append = (row, columnWidthIndex, config) => { - const rows = prepareData([row], config); - const body = rows.map((literalRow) => { - return (0, _drawRow.default)(literalRow, config.border); - }).join(""); - let output = ""; - const bottom = (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); - if (bottom !== "\n") { - output = "\r"; + var spawn = require("child_process").spawn; + var procOutput = require_lib103(); + module2.exports = function spawno(command, args2, options, cb) { + if (typeof args2 === "function") { + cb = args2; + args2 = []; + options = {}; } - output += (0, _drawBorder.drawBorderJoin)(columnWidthIndex, config.border); - output += body; - output += bottom; - output = output.trimEnd(); - process.stdout.write(output); + if (typeof options === "function") { + cb = options; + if (!Array.isArray(args2)) { + options = args2; + args2 = []; + } else { + options = {}; + } + } + options = options || {}; + if (options.input !== false) { + options.input = options.input || ""; + } + var showOutput = options.output, inputData = options.input; + delete options.output; + delete options.input; + var proc = spawn(command, args2, options); + if (showOutput) { + proc.stdout.pipe(process.stdout); + proc.stderr.pipe(process.stderr); + } + if (inputData !== false) { + proc.stdin && proc.stdin.end(inputData); + } + if (cb) { + procOutput(proc, cb); + } + return proc; }; - var createStream = (userConfig = {}) => { - const config = (0, _makeStreamConfig.default)(userConfig); - const columnWidthIndex = Object.values((0, _mapValues2.default)(config.columns, (column) => { - return column.width + column.paddingLeft + column.paddingRight; - })); - let empty; - empty = true; - return { - write: (row) => { - if (row.length !== config.columnCount) { - throw new Error("Row cell count does not match the config.columnCount."); - } - if (empty) { - empty = false; - return create(row, columnWidthIndex, config); - } else { - return append(row, columnWidthIndex, config); + module2.exports.promise = function(command, args2, options) { + return new Promise(function(resolve, reject) { + module2.exports(command, args2, options, function(err, stdout, stderr, code) { + if (err) { + return reject(err); } - } - }; + resolve({ + code, + stdout, + stderr + }); + }); + }); }; - var _default = createStream; - exports2.default = _default; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateCellWidthIndex.js -var require_calculateCellWidthIndex = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateCellWidthIndex.js"(exports2) { +// ../node_modules/.pnpm/@zkochan+diable@1.0.2/node_modules/@zkochan/diable/lib/index.js +var require_lib105 = __commonJS({ + "../node_modules/.pnpm/@zkochan+diable@1.0.2/node_modules/@zkochan/diable/lib/index.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; + var spawn = require_lib104(); + function Diable(opts) { + if (Diable.isDaemon()) { + return false; + } + opts = opts || {}; + const args2 = [].concat(process.argv); + args2.shift(); + const script = args2.shift(), env = opts.env || process.env; + Diable.daemonize(script, args2, opts); + return process.exit(); } - var calculateCellWidthIndex = (cells) => { - return cells.map((value) => { - return Math.max(...value.split("\n").map((line) => { - return (0, _stringWidth.default)(line); - })); - }); + Diable.isDaemon = function() { + return !!process.env.__is_daemon; }; - var _default = calculateCellWidthIndex; - exports2.default = _default; + Diable.daemonize = function(script, args2, opts) { + opts = opts || {}; + const stdout = opts.stdout || "ignore", stderr = opts.stderr || "ignore", env = opts.env || process.env, cwd = opts.cwd || process.cwd(); + env.__is_daemon = true; + const spawnOptions = { + stdio: ["inherit", stdout, stderr], + env, + cwd, + detached: true, + input: false + }; + const cmd = opts.command || process.execPath; + delete opts.command; + const child = spawn(cmd, [script].concat(args2).filter(Boolean), spawnOptions); + child.unref(); + return child; + }; + module2.exports = Diable; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawTable.js -var require_drawTable = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/drawTable.js"(exports2) { +// ../store/store-connection-manager/lib/runServerInBackground.js +var require_runServerInBackground = __commonJS({ + "../store/store-connection-manager/lib/runServerInBackground.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _drawBorder = require_drawBorder(); - var _drawRow = _interopRequireDefault(require_drawRow()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var drawTable = (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine, singleLine) => { - let output; - let realRowIndex; - let rowHeight; - const rowCount = rows.length; - realRowIndex = 0; - output = ""; - if (drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border); - } - rows.forEach((row, index0) => { - output += (0, _drawRow.default)(row, border); - if (!rowHeight) { - rowHeight = rowSpanIndex[realRowIndex]; - realRowIndex++; - } - rowHeight--; - if (!singleLine && rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border); - } - }); - if (drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border); - } - return output; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var _default = drawTable; - exports2.default = _default; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.runServerInBackground = void 0; + var error_1 = require_lib8(); + var diable_1 = __importDefault4(require_lib105()); + function runServerInBackground(storePath) { + if (require.main == null) { + throw new error_1.PnpmError("CANNOT_START_SERVER", "pnpm server cannot be started when pnpm is streamed to Node.js"); + } + return diable_1.default.daemonize(require.main.filename, ["server", "start", "--store-dir", storePath], { stdio: "inherit" }); + } + exports2.runServerInBackground = runServerInBackground; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateMaximumColumnWidthIndex.js -var require_calculateMaximumColumnWidthIndex = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/calculateMaximumColumnWidthIndex.js"(exports2) { +// ../store/store-connection-manager/lib/serverConnectionInfoDir.js +var require_serverConnectionInfoDir = __commonJS({ + "../store/store-connection-manager/lib/serverConnectionInfoDir.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _calculateCellWidthIndex = _interopRequireDefault(require_calculateCellWidthIndex()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateMaximumColumnWidthIndex = (rows) => { - if (!rows[0]) { - throw new Error("Dataset must have at least one row."); - } - const columns = new Array(rows[0].length).fill(0); - rows.forEach((row) => { - const columnWidthIndex = (0, _calculateCellWidthIndex.default)(row); - columnWidthIndex.forEach((valueWidth, index0) => { - if (columns[index0] < valueWidth) { - columns[index0] = valueWidth; - } - }); - }); - return columns; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var _default = calculateMaximumColumnWidthIndex; - exports2.default = _default; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.serverConnectionInfoDir = void 0; + var path_1 = __importDefault4(require("path")); + function serverConnectionInfoDir(storePath) { + return path_1.default.join(storePath, "server"); + } + exports2.serverConnectionInfoDir = serverConnectionInfoDir; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/makeConfig.js -var require_makeConfig = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/makeConfig.js"(exports2) { +// ../store/store-connection-manager/lib/index.js +var require_lib106 = __commonJS({ + "../store/store-connection-manager/lib/index.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _cloneDeep2 = _interopRequireDefault(require_cloneDeep()); - var _isUndefined2 = _interopRequireDefault(require_isUndefined()); - var _times2 = _interopRequireDefault(require_times2()); - var _calculateMaximumColumnWidthIndex = _interopRequireDefault(require_calculateMaximumColumnWidthIndex()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters()); - var _validateConfig = _interopRequireDefault(require_validateConfig()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var makeBorder = (border = {}) => { - return Object.assign({}, (0, _getBorderCharacters.default)("honeywell"), border); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var makeColumns = (rows, columns = {}, columnDefault = {}) => { - const maximumColumnWidthIndex = (0, _calculateMaximumColumnWidthIndex.default)(rows); - (0, _times2.default)(rows[0].length, (index) => { - if ((0, _isUndefined2.default)(columns[index])) { - columns[index] = {}; - } - columns[index] = Object.assign({ - alignment: "left", - paddingLeft: 1, - paddingRight: 1, - truncate: Infinity, - width: maximumColumnWidthIndex[index], - wrapWord: false - }, columnDefault, columns[index]); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tryLoadServerJson = exports2.createOrConnectStoreController = exports2.createOrConnectStoreControllerCached = exports2.serverConnectionInfoDir = exports2.createNewStoreController = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var cli_meta_1 = require_lib4(); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var server_1 = require_lib98(); + var store_path_1 = require_lib66(); + var delay_1 = __importDefault4(require_delay2()); + var createNewStoreController_1 = require_createNewStoreController(); + Object.defineProperty(exports2, "createNewStoreController", { enumerable: true, get: function() { + return createNewStoreController_1.createNewStoreController; + } }); + var runServerInBackground_1 = require_runServerInBackground(); + var serverConnectionInfoDir_1 = require_serverConnectionInfoDir(); + Object.defineProperty(exports2, "serverConnectionInfoDir", { enumerable: true, get: function() { + return serverConnectionInfoDir_1.serverConnectionInfoDir; + } }); + async function createOrConnectStoreControllerCached(storeControllerCache, opts) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir }); - return columns; - }; - var makeConfig = (rows, userConfig = {}) => { - (0, _validateConfig.default)("config.json", userConfig); - const config = (0, _cloneDeep2.default)(userConfig); - config.border = makeBorder(config.border); - config.columns = makeColumns(rows, config.columns, config.columnDefault); - if (!config.drawHorizontalLine) { - config.drawHorizontalLine = () => { - return true; - }; - } - if (config.singleLine === void 0) { - config.singleLine = false; + if (!storeControllerCache.has(storeDir)) { + storeControllerCache.set(storeDir, createOrConnectStoreController(opts)); } - return config; - }; - var _default = makeConfig; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/validateTableData.js -var require_validateTableData = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/validateTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var validateTableData = (rows) => { - if (!Array.isArray(rows)) { - throw new TypeError("Table data must be an array."); + return await storeControllerCache.get(storeDir); + } + exports2.createOrConnectStoreControllerCached = createOrConnectStoreControllerCached; + async function createOrConnectStoreController(opts) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.workspaceDir ?? opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + const connectionInfoDir = (0, serverConnectionInfoDir_1.serverConnectionInfoDir)(storeDir); + const serverJsonPath = path_1.default.join(connectionInfoDir, "server.json"); + let serverJson = await tryLoadServerJson({ serverJsonPath, shouldRetryOnNoent: false }); + if (serverJson !== null) { + if (serverJson.pnpmVersion !== cli_meta_1.packageManager.version) { + logger_1.logger.warn({ + message: `The store server runs on pnpm v${serverJson.pnpmVersion}. It is recommended to connect with the same version (current is v${cli_meta_1.packageManager.version})`, + prefix: opts.dir + }); + } + logger_1.logger.info({ + message: "A store server is running. All store manipulations are delegated to it.", + prefix: opts.dir + }); + return { + ctrl: await (0, server_1.connectStoreController)(serverJson.connectionOptions), + dir: storeDir + }; } - if (rows.length === 0) { - throw new Error("Table must define at least one row."); + if (opts.useRunningStoreServer) { + throw new error_1.PnpmError("NO_STORE_SERVER", "No store server is running."); } - if (rows[0].length === 0) { - throw new Error("Table must define at least one column."); + if (opts.useStoreServer) { + (0, runServerInBackground_1.runServerInBackground)(storeDir); + serverJson = await tryLoadServerJson({ serverJsonPath, shouldRetryOnNoent: true }); + logger_1.logger.info({ + message: "A store server has been started. To stop it, use `pnpm server stop`", + prefix: opts.dir + }); + return { + ctrl: await (0, server_1.connectStoreController)(serverJson.connectionOptions), + dir: storeDir + }; } - const columnNumber = rows[0].length; - for (const cells of rows) { - if (!Array.isArray(cells)) { - throw new TypeError("Table row data must be an array."); - } - if (cells.length !== columnNumber) { - throw new Error("Table must have a consistent number of cells."); + return (0, createNewStoreController_1.createNewStoreController)(Object.assign(opts, { + storeDir + })); + } + exports2.createOrConnectStoreController = createOrConnectStoreController; + async function tryLoadServerJson(options) { + let beforeFirstAttempt = true; + const startHRTime = process.hrtime(); + while (true) { + if (!beforeFirstAttempt) { + const elapsedHRTime = process.hrtime(startHRTime); + if (elapsedHRTime[0] >= 10) { + try { + await fs_1.promises.unlink(options.serverJsonPath); + } catch (error) { + if (error.code !== "ENOENT") { + throw error; + } + } + return null; + } + await (0, delay_1.default)(200); } - for (const cell of cells) { - if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test(cell)) { - throw new Error("Table data must not contain control characters."); + beforeFirstAttempt = false; + let serverJsonStr; + try { + serverJsonStr = await fs_1.promises.readFile(options.serverJsonPath, "utf8"); + } catch (error) { + if (error.code !== "ENOENT") { + throw error; + } + if (!options.shouldRetryOnNoent) { + return null; } + continue; + } + let serverJson; + try { + serverJson = JSON.parse(serverJsonStr); + } catch (error) { + continue; + } + if (serverJson === null) { + throw new Error("server.json was modified by a third party"); } + return serverJson; } - }; - var _default = validateTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/table.js -var require_table = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/table.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _alignTableData = _interopRequireDefault(require_alignTableData()); - var _calculateCellWidthIndex = _interopRequireDefault(require_calculateCellWidthIndex()); - var _calculateRowHeightIndex = _interopRequireDefault(require_calculateRowHeightIndex()); - var _drawTable = _interopRequireDefault(require_drawTable()); - var _makeConfig = _interopRequireDefault(require_makeConfig()); - var _mapDataUsingRowHeightIndex = _interopRequireDefault(require_mapDataUsingRowHeightIndex()); - var _padTableData = _interopRequireDefault(require_padTableData()); - var _stringifyTableData = _interopRequireDefault(require_stringifyTableData()); - var _truncateTableData = _interopRequireDefault(require_truncateTableData()); - var _validateTableData = _interopRequireDefault(require_validateTableData()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; } - var table = (data, userConfig = {}) => { - let rows; - (0, _validateTableData.default)(data); - rows = (0, _stringifyTableData.default)(data); - const config = (0, _makeConfig.default)(rows, userConfig); - rows = (0, _truncateTableData.default)(data, config); - const rowHeightIndex = (0, _calculateRowHeightIndex.default)(rows, config); - rows = (0, _mapDataUsingRowHeightIndex.default)(rows, rowHeightIndex, config); - rows = (0, _alignTableData.default)(rows, config); - rows = (0, _padTableData.default)(rows, config); - const cellWidthIndex = (0, _calculateCellWidthIndex.default)(rows[0]); - return (0, _drawTable.default)(rows, config.border, cellWidthIndex, rowHeightIndex, config.drawHorizontalLine, config.singleLine); - }; - var _default = table; - exports2.default = _default; + exports2.tryLoadServerJson = tryLoadServerJson; } }); -// ../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/index.js -var require_dist6 = __commonJS({ - "../../node_modules/.pnpm/table@6.0.4/node_modules/table/dist/index.js"(exports2) { +// ../pkg-manager/read-projects-context/lib/index.js +var require_lib107 = __commonJS({ + "../pkg-manager/read-projects-context/lib/index.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - Object.defineProperty(exports2, "createStream", { - enumerable: true, - get: function() { - return _createStream.default; - } - }); - Object.defineProperty(exports2, "getBorderCharacters", { - enumerable: true, - get: function() { - return _getBorderCharacters.default; - } - }); - Object.defineProperty(exports2, "table", { - enumerable: true, - get: function() { - return _table.default; - } - }); - var _createStream = _interopRequireDefault(require_createStream()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters()); - var _table = _interopRequireDefault(require_table()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readProjectsContext = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_file_1 = require_lib87(); + var modules_yaml_1 = require_lib88(); + var normalize_registries_1 = require_lib89(); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + async function readProjectsContext(projects, opts) { + const relativeModulesDir = opts.modulesDir ?? "node_modules"; + const rootModulesDir = await (0, realpath_missing_1.default)(path_1.default.join(opts.lockfileDir, relativeModulesDir)); + const modules = await (0, modules_yaml_1.readModulesManifest)(rootModulesDir); + return { + currentHoistPattern: modules?.hoistPattern, + currentPublicHoistPattern: modules?.publicHoistPattern, + hoist: modules == null ? void 0 : Boolean(modules.hoistPattern), + hoistedDependencies: modules?.hoistedDependencies ?? {}, + include: modules?.included ?? { dependencies: true, devDependencies: true, optionalDependencies: true }, + modules, + pendingBuilds: modules?.pendingBuilds ?? [], + projects: await Promise.all(projects.map(async (project) => { + const modulesDir = await (0, realpath_missing_1.default)(path_1.default.join(project.rootDir, project.modulesDir ?? relativeModulesDir)); + const importerId = (0, lockfile_file_1.getLockfileImporterId)(opts.lockfileDir, project.rootDir); + return { + ...project, + binsDir: project.binsDir ?? path_1.default.join(project.rootDir, relativeModulesDir, ".bin"), + id: importerId, + modulesDir + }; + })), + registries: modules?.registries != null ? (0, normalize_registries_1.normalizeRegistries)(modules.registries) : void 0, + rootModulesDir, + skipped: new Set(modules?.skipped ?? []) + }; } + exports2.readProjectsContext = readProjectsContext; } }); -// ../../node_modules/.pnpm/render-help@1.0.2/node_modules/render-help/lib/index.js -var require_lib30 = __commonJS({ - "../../node_modules/.pnpm/render-help@1.0.2/node_modules/render-help/lib/index.js"(exports2, module2) { +// ../pkg-manager/get-context/lib/checkCompatibility/BreakingChangeError.js +var require_BreakingChangeError = __commonJS({ + "../pkg-manager/get-context/lib/checkCompatibility/BreakingChangeError.js"(exports2) { "use strict"; - var table_1 = require_dist6(); - var NO_BORDERS = { - topBody: "", - topJoin: "", - topLeft: "", - topRight: "", - bottomBody: "", - bottomJoin: "", - bottomLeft: "", - bottomRight: "", - bodyJoin: "", - bodyLeft: "", - bodyRight: "", - joinBody: "", - joinLeft: "", - joinRight: "" - }; - var TABLE_OPTIONS = { - border: NO_BORDERS, - singleLine: true - }; - var FIRST_COLUMN = { paddingLeft: 2, width: 3 }; - var SHORT_OPTION_COLUMN = { alignment: "right" }; - var LONG_OPTION_COLUMN = { paddingLeft: 0 }; - var DESCRIPTION_COLUMN = { - paddingRight: 0, - wrapWord: true - }; - function renderDescriptionList(descriptionItems, width) { - const data = descriptionItems.sort((item1, item2) => item1.name.localeCompare(item2.name)).map(({ shortAlias, name, description }) => [shortAlias && `${shortAlias},` || " ", name, description || ""]); - const firstColumnMaxWidth = getColumnMaxWidth(data, 0); - const nameColumnWidth = Math.max(getColumnMaxWidth(data, 1), 19); - const descriptionColumnWidth = Math.max(2, width - firstColumnMaxWidth - nameColumnWidth - 2 - 2 - 1); - return multiTrim(table_1.table(data, Object.assign(Object.assign({}, TABLE_OPTIONS), { columns: { - 0: Object.assign(Object.assign({}, SHORT_OPTION_COLUMN), FIRST_COLUMN), - 1: Object.assign({ width: nameColumnWidth }, LONG_OPTION_COLUMN), - 2: Object.assign({ width: descriptionColumnWidth }, DESCRIPTION_COLUMN) - } }))); - } - function multiTrim(str) { - return str.split("\n").map((line) => line.trimRight()).filter(Boolean).join("\n"); - } - function getColumnMaxWidth(data, columnNumber) { - return data.reduce((maxWidth, row) => Math.max(maxWidth, row[columnNumber].length), 0); - } - module2.exports = function renderHelp(config) { - var _a, _b; - const width = (_b = (_a = config.width) !== null && _a !== void 0 ? _a : process.stdout.columns) !== null && _b !== void 0 ? _b : 80; - let outputSections = []; - if (config.usages.length > 0) { - const [firstUsage, ...restUsages] = config.usages; - let usageOutput = `Usage: ${firstUsage}`; - for (let usage of restUsages) { - usageOutput += ` - ${usage}`; - } - outputSections.push(usageOutput); - } - if (config.aliases && config.aliases.length) { - outputSections.push(`${config.aliases.length === 1 ? "Alias" : "Aliases"}: ${config.aliases.join(", ")}`); - } - if (config.description) - outputSections.push(`${config.description}`); - if (config.descriptionLists) { - for (let { title, list } of config.descriptionLists) { - outputSections.push(`${title}: -` + renderDescriptionList(list, width)); - } - } - if (config.url) { - outputSections.push(`Visit ${config.url} for documentation about this command.`); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BreakingChangeError = void 0; + var error_1 = require_lib8(); + var BreakingChangeError = class extends error_1.PnpmError { + constructor(opts) { + super(opts.code, opts.message); + this.relatedIssue = opts.relatedIssue; + this.relatedPR = opts.relatedPR; + this.additionalInformation = opts.additionalInformation; } - return outputSections.join("\n\n"); }; + exports2.BreakingChangeError = BreakingChangeError; } }); -// ../../node_modules/.pnpm/version-selector-type@3.0.0/node_modules/version-selector-type/index.js -var require_version_selector_type = __commonJS({ - "../../node_modules/.pnpm/version-selector-type@3.0.0/node_modules/version-selector-type/index.js"(exports2, module2) { +// ../pkg-manager/get-context/lib/checkCompatibility/ModulesBreakingChangeError.js +var require_ModulesBreakingChangeError = __commonJS({ + "../pkg-manager/get-context/lib/checkCompatibility/ModulesBreakingChangeError.js"(exports2) { "use strict"; - var semver = require_semver2(); - module2.exports = (selector) => versionSelectorType(true, selector); - module2.exports.strict = (selector) => versionSelectorType(false, selector); - function versionSelectorType(loose, selector) { - if (typeof selector !== "string") { - throw new TypeError("`selector` should be a string"); - } - let normalizedSelector; - if (normalizedSelector = semver.valid(selector, loose)) { - return { - normalized: normalizedSelector, - type: "version" - }; - } - if (normalizedSelector = semver.validRange(selector, loose)) { - return { - normalized: normalizedSelector, - type: "range" - }; - } - if (encodeURIComponent(selector) === selector) { - return { - normalized: selector, - type: "tag" - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ModulesBreakingChangeError = void 0; + var BreakingChangeError_1 = require_BreakingChangeError(); + var ModulesBreakingChangeError = class extends BreakingChangeError_1.BreakingChangeError { + constructor(opts) { + super({ + additionalInformation: opts.additionalInformation, + code: "MODULES_BREAKING_CHANGE", + message: `The node_modules structure at "${opts.modulesPath}" is not compatible with the current pnpm version. Run "pnpm install --force" to recreate node_modules.`, + relatedIssue: opts.relatedIssue, + relatedPR: opts.relatedPR + }); + this.modulesPath = opts.modulesPath; } - return null; - } + }; + exports2.ModulesBreakingChangeError = ModulesBreakingChangeError; } }); -// ../../node_modules/.pnpm/@zkochan+rimraf@2.1.1/node_modules/@zkochan/rimraf/index.js -var require_rimraf = __commonJS({ - "../../node_modules/.pnpm/@zkochan+rimraf@2.1.1/node_modules/@zkochan/rimraf/index.js"(exports2, module2) { - var fs = require("fs"); - var rm = fs.promises.rm ? fs.promises.rm : fs.promises.rmdir; - var rmdirSync = fs.rmSync ? fs.rmSync : fs.rmdirSync; - module2.exports = async (p) => { - try { - await rm(p, { recursive: true, maxRetries: 3 }); - } catch (err) { - if (err.code === "ENOTDIR" || err.code === "ENOENT") - return; - throw err; - } - }; - module2.exports.sync = (p) => { - try { - rmdirSync(p, { recursive: true, maxRetries: 3 }); - } catch (err) { - if (err.code === "ENOTDIR" || err.code === "ENOENT") - return; - throw err; +// ../pkg-manager/get-context/lib/checkCompatibility/UnexpectedStoreError.js +var require_UnexpectedStoreError = __commonJS({ + "../pkg-manager/get-context/lib/checkCompatibility/UnexpectedStoreError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UnexpectedStoreError = void 0; + var error_1 = require_lib8(); + var UnexpectedStoreError = class extends error_1.PnpmError { + constructor(opts) { + super("UNEXPECTED_STORE", "Unexpected store location"); + this.expectedStorePath = opts.expectedStorePath; + this.actualStorePath = opts.actualStorePath; + this.modulesDir = opts.modulesDir; } }; + exports2.UnexpectedStoreError = UnexpectedStoreError; } }); -// ../../node_modules/.pnpm/rename-overwrite@4.0.0/node_modules/rename-overwrite/index.js -var require_rename_overwrite = __commonJS({ - "../../node_modules/.pnpm/rename-overwrite@4.0.0/node_modules/rename-overwrite/index.js"(exports2, module2) { +// ../pkg-manager/get-context/lib/checkCompatibility/UnexpectedVirtualStoreDirError.js +var require_UnexpectedVirtualStoreDirError = __commonJS({ + "../pkg-manager/get-context/lib/checkCompatibility/UnexpectedVirtualStoreDirError.js"(exports2) { "use strict"; - var fs = require("fs"); - var path = require("path"); - var rimraf = require_rimraf(); - module2.exports = async function renameOverwrite(oldPath, newPath) { - try { - await fs.promises.rename(oldPath, newPath); - } catch (err) { - switch (err.code) { - case "ENOTEMPTY": - case "EEXIST": - await rimraf(newPath); - await renameOverwrite(oldPath, newPath); - break; - case "EPERM": - case "EACCESS": { - await rimraf(newPath); - const start = Date.now(); - let backoff = 0; - let lastError = err; - while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS")) { - await new Promise((resolve) => setTimeout(resolve, backoff)); - try { - await fs.promises.rename(oldPath, newPath); - return; - } catch (err2) { - lastError = err2; - } - if (backoff < 100) { - backoff += 10; - } - } - throw lastError; - } - case "ENOENT": - try { - await fs.promises.stat(oldPath); - } catch (statErr) { - if (statErr.code === "ENOENT") { - throw statErr; - } - } - await fs.promises.mkdir(path.dirname(newPath), { recursive: true }); - await renameOverwrite(oldPath, newPath); - break; - default: - throw err; - } - } - }; - module2.exports.sync = function renameOverwriteSync(oldPath, newPath) { - try { - fs.renameSync(oldPath, newPath); - } catch (err) { - switch (err.code) { - case "ENOTEMPTY": - case "EEXIST": - case "EPERM": - rimraf.sync(newPath); - fs.renameSync(oldPath, newPath); - return; - case "ENOENT": - fs.mkdirSync(path.dirname(newPath), { recursive: true }); - renameOverwriteSync(oldPath, newPath); - return; - default: - throw err; - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UnexpectedVirtualStoreDirError = void 0; + var error_1 = require_lib8(); + var UnexpectedVirtualStoreDirError = class extends error_1.PnpmError { + constructor(opts) { + super("UNEXPECTED_VIRTUAL_STORE", "Unexpected virtual store location"); + this.expected = opts.expected; + this.actual = opts.actual; + this.modulesDir = opts.modulesDir; } }; + exports2.UnexpectedVirtualStoreDirError = UnexpectedVirtualStoreDirError; } }); -// ../../node_modules/.pnpm/minipass@3.1.5/node_modules/minipass/index.js -var require_minipass = __commonJS({ - "../../node_modules/.pnpm/minipass@3.1.5/node_modules/minipass/index.js"(exports2, module2) { +// ../pkg-manager/get-context/lib/checkCompatibility/index.js +var require_checkCompatibility = __commonJS({ + "../pkg-manager/get-context/lib/checkCompatibility/index.js"(exports2) { "use strict"; - var proc = typeof process === "object" && process ? process : { - stdout: null, - stderr: null + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var EE = require("events"); - var Stream = require("stream"); - var Yallist = require_yallist(); - var SD = require("string_decoder").StringDecoder; - var EOF = Symbol("EOF"); - var MAYBE_EMIT_END = Symbol("maybeEmitEnd"); - var EMITTED_END = Symbol("emittedEnd"); - var EMITTING_END = Symbol("emittingEnd"); - var EMITTED_ERROR = Symbol("emittedError"); - var CLOSED = Symbol("closed"); - var READ = Symbol("read"); - var FLUSH = Symbol("flush"); - var FLUSHCHUNK = Symbol("flushChunk"); - var ENCODING = Symbol("encoding"); - var DECODER = Symbol("decoder"); - var FLOWING = Symbol("flowing"); - var PAUSED = Symbol("paused"); - var RESUME = Symbol("resume"); - var BUFFERLENGTH = Symbol("bufferLength"); - var BUFFERPUSH = Symbol("bufferPush"); - var BUFFERSHIFT = Symbol("bufferShift"); - var OBJECTMODE = Symbol("objectMode"); - var DESTROYED = Symbol("destroyed"); - var doIter = global._MP_NO_ITERATOR_SYMBOLS_ !== "1"; - var ASYNCITERATOR = doIter && Symbol.asyncIterator || Symbol("asyncIterator not implemented"); - var ITERATOR = doIter && Symbol.iterator || Symbol("iterator not implemented"); - var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish"; - var isArrayBuffer = (b) => b instanceof ArrayBuffer || typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0; - var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b); - module2.exports = class Minipass extends Stream { - constructor(options) { - super(); - this[FLOWING] = false; - this[PAUSED] = false; - this.pipes = new Yallist(); - this.buffer = new Yallist(); - this[OBJECTMODE] = options && options.objectMode || false; - if (this[OBJECTMODE]) - this[ENCODING] = null; - else - this[ENCODING] = options && options.encoding || null; - if (this[ENCODING] === "buffer") - this[ENCODING] = null; - this[DECODER] = this[ENCODING] ? new SD(this[ENCODING]) : null; - this[EOF] = false; - this[EMITTED_END] = false; - this[EMITTING_END] = false; - this[CLOSED] = false; - this[EMITTED_ERROR] = null; - this.writable = true; - this.readable = true; - this[BUFFERLENGTH] = 0; - this[DESTROYED] = false; - } - get bufferLength() { - return this[BUFFERLENGTH]; - } - get encoding() { - return this[ENCODING]; - } - set encoding(enc) { - if (this[OBJECTMODE]) - throw new Error("cannot set encoding in objectMode"); - if (this[ENCODING] && enc !== this[ENCODING] && (this[DECODER] && this[DECODER].lastNeed || this[BUFFERLENGTH])) - throw new Error("cannot change encoding"); - if (this[ENCODING] !== enc) { - this[DECODER] = enc ? new SD(enc) : null; - if (this.buffer.length) - this.buffer = this.buffer.map((chunk) => this[DECODER].write(chunk)); - } - this[ENCODING] = enc; - } - setEncoding(enc) { - this.encoding = enc; - } - get objectMode() { - return this[OBJECTMODE]; - } - set objectMode(om) { - this[OBJECTMODE] = this[OBJECTMODE] || !!om; - } - write(chunk, encoding, cb) { - if (this[EOF]) - throw new Error("write after end"); - if (this[DESTROYED]) { - this.emit("error", Object.assign(new Error("Cannot call write after a stream was destroyed"), { code: "ERR_STREAM_DESTROYED" })); - return true; - } - if (typeof encoding === "function") - cb = encoding, encoding = "utf8"; - if (!encoding) - encoding = "utf8"; - if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) { - if (isArrayBufferView(chunk)) - chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); - else if (isArrayBuffer(chunk)) - chunk = Buffer.from(chunk); - else if (typeof chunk !== "string") - this.objectMode = true; - } - if (!this.objectMode && !chunk.length) { - if (this[BUFFERLENGTH] !== 0) - this.emit("readable"); - if (cb) - cb(); - return this.flowing; - } - if (typeof chunk === "string" && !this[OBJECTMODE] && !(encoding === this[ENCODING] && !this[DECODER].lastNeed)) { - chunk = Buffer.from(chunk, encoding); - } - if (Buffer.isBuffer(chunk) && this[ENCODING]) - chunk = this[DECODER].write(chunk); - if (this.flowing) { - if (this[BUFFERLENGTH] !== 0) - this[FLUSH](true); - this.emit("data", chunk); - } else - this[BUFFERPUSH](chunk); - if (this[BUFFERLENGTH] !== 0) - this.emit("readable"); - if (cb) - cb(); - return this.flowing; - } - read(n) { - if (this[DESTROYED]) - return null; - try { - if (this[BUFFERLENGTH] === 0 || n === 0 || n > this[BUFFERLENGTH]) - return null; - if (this[OBJECTMODE]) - n = null; - if (this.buffer.length > 1 && !this[OBJECTMODE]) { - if (this.encoding) - this.buffer = new Yallist([ - Array.from(this.buffer).join("") - ]); - else - this.buffer = new Yallist([ - Buffer.concat(Array.from(this.buffer), this[BUFFERLENGTH]) - ]); - } - return this[READ](n || null, this.buffer.head.value); - } finally { - this[MAYBE_EMIT_END](); - } - } - [READ](n, chunk) { - if (n === chunk.length || n === null) - this[BUFFERSHIFT](); - else { - this.buffer.head.value = chunk.slice(n); - chunk = chunk.slice(0, n); - this[BUFFERLENGTH] -= n; - } - this.emit("data", chunk); - if (!this.buffer.length && !this[EOF]) - this.emit("drain"); - return chunk; - } - end(chunk, encoding, cb) { - if (typeof chunk === "function") - cb = chunk, chunk = null; - if (typeof encoding === "function") - cb = encoding, encoding = "utf8"; - if (chunk) - this.write(chunk, encoding); - if (cb) - this.once("end", cb); - this[EOF] = true; - this.writable = false; - if (this.flowing || !this[PAUSED]) - this[MAYBE_EMIT_END](); - return this; - } - [RESUME]() { - if (this[DESTROYED]) - return; - this[PAUSED] = false; - this[FLOWING] = true; - this.emit("resume"); - if (this.buffer.length) - this[FLUSH](); - else if (this[EOF]) - this[MAYBE_EMIT_END](); - else - this.emit("drain"); - } - resume() { - return this[RESUME](); - } - pause() { - this[FLOWING] = false; - this[PAUSED] = true; - } - get destroyed() { - return this[DESTROYED]; - } - get flowing() { - return this[FLOWING]; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.checkCompatibility = void 0; + var path_1 = __importDefault4(require("path")); + var constants_1 = require_lib7(); + var ModulesBreakingChangeError_1 = require_ModulesBreakingChangeError(); + var UnexpectedStoreError_1 = require_UnexpectedStoreError(); + var UnexpectedVirtualStoreDirError_1 = require_UnexpectedVirtualStoreDirError(); + function checkCompatibility(modules, opts) { + if (!modules.layoutVersion || modules.layoutVersion !== constants_1.LAYOUT_VERSION) { + throw new ModulesBreakingChangeError_1.ModulesBreakingChangeError({ + modulesPath: opts.modulesDir + }); } - get paused() { - return this[PAUSED]; + if (!modules.storeDir || path_1.default.relative(modules.storeDir, opts.storeDir) !== "") { + throw new UnexpectedStoreError_1.UnexpectedStoreError({ + actualStorePath: opts.storeDir, + expectedStorePath: modules.storeDir, + modulesDir: opts.modulesDir + }); } - [BUFFERPUSH](chunk) { - if (this[OBJECTMODE]) - this[BUFFERLENGTH] += 1; - else - this[BUFFERLENGTH] += chunk.length; - return this.buffer.push(chunk); + if (modules.virtualStoreDir && path_1.default.relative(modules.virtualStoreDir, opts.virtualStoreDir) !== "") { + throw new UnexpectedVirtualStoreDirError_1.UnexpectedVirtualStoreDirError({ + actual: opts.virtualStoreDir, + expected: modules.virtualStoreDir, + modulesDir: opts.modulesDir + }); } - [BUFFERSHIFT]() { - if (this.buffer.length) { - if (this[OBJECTMODE]) - this[BUFFERLENGTH] -= 1; - else - this[BUFFERLENGTH] -= this.buffer.head.value.length; + } + exports2.checkCompatibility = checkCompatibility; + } +}); + +// ../node_modules/.pnpm/ci-info@3.8.0/node_modules/ci-info/vendors.json +var require_vendors = __commonJS({ + "../node_modules/.pnpm/ci-info@3.8.0/node_modules/ci-info/vendors.json"(exports2, module2) { + module2.exports = [ + { + 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: "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI", + pr: "SYSTEM_PULLREQUEST_PULLREQUESTID" + }, + { + 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" } - return this.buffer.shift(); - } - [FLUSH](noDrain) { - do { - } while (this[FLUSHCHUNK](this[BUFFERSHIFT]())); - if (!noDrain && !this.buffer.length && !this[EOF]) - this.emit("drain"); - } - [FLUSHCHUNK](chunk) { - return chunk ? (this.emit("data", chunk), this.flowing) : false; - } - pipe(dest, opts) { - if (this[DESTROYED]) - return; - const ended = this[EMITTED_END]; - opts = opts || {}; - if (dest === proc.stdout || dest === proc.stderr) - opts.end = false; - else - opts.end = opts.end !== false; - const p = { dest, opts, ondrain: (_) => this[RESUME]() }; - this.pipes.push(p); - dest.on("drain", p.ondrain); - this[RESUME](); - if (ended && p.opts.end) - p.dest.end(); - return dest; - } - addListener(ev, fn2) { - return this.on(ev, fn2); - } - on(ev, fn2) { - try { - return super.on(ev, fn2); - } finally { - if (ev === "data" && !this.pipes.length && !this.flowing) - this[RESUME](); - else if (isEndish(ev) && this[EMITTED_END]) { - super.emit(ev); - this.removeAllListeners(ev); - } else if (ev === "error" && this[EMITTED_ERROR]) { - fn2.call(this, this[EMITTED_ERROR]); - } + }, + { + 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" + ] } - } - get emittedEnd() { - return this[EMITTED_END]; - } - [MAYBE_EMIT_END]() { - if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this.buffer.length === 0 && this[EOF]) { - this[EMITTING_END] = true; - this.emit("end"); - this.emit("prefinish"); - this.emit("finish"); - if (this[CLOSED]) - this.emit("close"); - this[EMITTING_END] = false; + }, + { + name: "Codemagic", + constant: "CODEMAGIC", + env: "CM_BUILD_ID", + pr: "CM_PULL_REQUEST" + }, + { + name: "Codeship", + constant: "CODESHIP", + env: { + CI_NAME: "codeship" } - } - emit(ev, data) { - if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) - return; - else if (ev === "data") { - if (!data) - return; - if (this.pipes.length) - this.pipes.forEach((p) => p.dest.write(data) === false && this.pause()); - } else if (ev === "end") { - if (this[EMITTED_END] === true) - return; - this[EMITTED_END] = true; - this.readable = false; - if (this[DECODER]) { - data = this[DECODER].end(); - if (data) { - this.pipes.forEach((p) => p.dest.write(data)); - super.emit("data", data); - } - } - this.pipes.forEach((p) => { - p.dest.removeListener("drain", p.ondrain); - if (p.opts.end) - p.dest.end(); - }); - } else if (ev === "close") { - this[CLOSED] = true; - if (!this[EMITTED_END] && !this[DESTROYED]) - return; - } else if (ev === "error") { - this[EMITTED_ERROR] = data; + }, + { + name: "Drone", + constant: "DRONE", + env: "DRONE", + pr: { + DRONE_BUILD_EVENT: "pull_request" } - const args2 = new Array(arguments.length); - args2[0] = ev; - args2[1] = data; - if (arguments.length > 2) { - for (let i = 2; i < arguments.length; i++) { - args2[i] = arguments[i]; - } + }, + { + name: "dsari", + constant: "DSARI", + env: "DSARI" + }, + { + name: "Expo Application Services", + constant: "EAS", + env: "EAS_BUILD" + }, + { + name: "Gerrit", + constant: "GERRIT", + env: "GERRIT_PROJECT" + }, + { + name: "GitHub Actions", + constant: "GITHUB_ACTIONS", + env: "GITHUB_ACTIONS", + pr: { + GITHUB_EVENT_NAME: "pull_request" } - try { - return super.emit.apply(this, args2); - } finally { - if (!isEndish(ev)) - this[MAYBE_EMIT_END](); - else - this.removeAllListeners(ev); + }, + { + 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" } - } - collect() { - const buf = []; - if (!this[OBJECTMODE]) - buf.dataLength = 0; - const p = this.promise(); - this.on("data", (c) => { - buf.push(c); - if (!this[OBJECTMODE]) - buf.dataLength += c.length; - }); - return p.then(() => buf); - } - concat() { - return this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this.collect().then((buf) => this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength)); - } - promise() { - return new Promise((resolve, reject) => { - this.on(DESTROYED, () => reject(new Error("stream destroyed"))); - this.on("error", (er) => reject(er)); - this.on("end", () => resolve()); - }); - } - [ASYNCITERATOR]() { - const next = () => { - const res = this.read(); - if (res !== null) - return Promise.resolve({ done: false, value: res }); - if (this[EOF]) - return Promise.resolve({ done: true }); - let resolve = null; - let reject = null; - const onerr = (er) => { - this.removeListener("data", ondata); - this.removeListener("end", onend); - reject(er); - }; - const ondata = (value) => { - this.removeListener("error", onerr); - this.removeListener("end", onend); - this.pause(); - resolve({ value, done: !!this[EOF] }); - }; - const onend = () => { - this.removeListener("error", onerr); - this.removeListener("data", ondata); - resolve({ done: true }); - }; - const ondestroy = () => onerr(new Error("stream destroyed")); - return new Promise((res2, rej) => { - reject = rej; - resolve = res2; - this.once(DESTROYED, ondestroy); - this.once("error", onerr); - this.once("end", onend); - this.once("data", ondata); - }); - }; - return { next }; - } - [ITERATOR]() { - const next = () => { - const value = this.read(); - const done = value === null; - return { value, done }; - }; - return { next }; - } - destroy(er) { - if (this[DESTROYED]) { - if (er) - this.emit("error", er); - else - this.emit(DESTROYED); - return this; + }, + { + name: "Hudson", + constant: "HUDSON", + env: "HUDSON_URL" + }, + { + name: "Jenkins", + constant: "JENKINS", + env: [ + "JENKINS_URL", + "BUILD_ID" + ], + pr: { + any: [ + "ghprbPullId", + "CHANGE_ID" + ] } - this[DESTROYED] = true; - this.buffer = new Yallist(); - this[BUFFERLENGTH] = 0; - if (typeof this.close === "function" && !this[CLOSED]) - this.close(); - if (er) - this.emit("error", er); - else - this.emit(DESTROYED); - return this; - } - static isStream(s) { - return !!s && (s instanceof Minipass || s instanceof Stream || s instanceof EE && (typeof s.pipe === "function" || typeof s.write === "function" && typeof s.end === "function")); - } - }; - } -}); - -// ../../node_modules/.pnpm/ssri@8.0.1/node_modules/ssri/index.js -var require_ssri = __commonJS({ - "../../node_modules/.pnpm/ssri@8.0.1/node_modules/ssri/index.js"(exports2, module2) { - "use strict"; - var crypto = require("crypto"); - var MiniPass = require_minipass(); - var SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"]; - var BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i; - var SRI_REGEX = /^([a-z0-9]+)-([^?]+)([?\S*]*)$/; - var STRICT_SRI_REGEX = /^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/; - var VCHAR_REGEX = /^[\x21-\x7E]+$/; - var defaultOpts = { - algorithms: ["sha512"], - error: false, - options: [], - pickAlgorithm: getPrioritizedHash, - sep: " ", - single: false, - strict: false - }; - var ssriOpts = (opts = {}) => ({ ...defaultOpts, ...opts }); - var getOptString = (options) => !options || !options.length ? "" : `?${options.join("?")}`; - var _onEnd = Symbol("_onEnd"); - var _getOptions = Symbol("_getOptions"); - var IntegrityStream = class extends MiniPass { - constructor(opts) { - super(); - this.size = 0; - this.opts = opts; - this[_getOptions](); - const { algorithms = defaultOpts.algorithms } = opts; - this.algorithms = Array.from(new Set(algorithms.concat(this.algorithm ? [this.algorithm] : []))); - this.hashes = this.algorithms.map(crypto.createHash); - } - [_getOptions]() { - const { - integrity, - size, - options - } = { ...defaultOpts, ...this.opts }; - this.sri = integrity ? parse(integrity, this.opts) : null; - this.expectedSize = size; - this.goodSri = this.sri ? !!Object.keys(this.sri).length : false; - this.algorithm = this.goodSri ? this.sri.pickAlgorithm(this.opts) : null; - this.digests = this.goodSri ? this.sri[this.algorithm] : null; - this.optString = getOptString(options); - } - emit(ev, data) { - if (ev === "end") - this[_onEnd](); - return super.emit(ev, data); - } - write(data) { - this.size += data.length; - this.hashes.forEach((h) => h.update(data)); - return super.write(data); - } - [_onEnd]() { - if (!this.goodSri) { - this[_getOptions](); + }, + { + 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" } - const newSri = parse(this.hashes.map((h, i) => { - return `${this.algorithms[i]}-${h.digest("base64")}${this.optString}`; - }).join(" "), this.opts); - const match = this.goodSri && newSri.match(this.sri, this.opts); - if (typeof this.expectedSize === "number" && this.size !== this.expectedSize) { - const err = new Error(`stream size mismatch when checking ${this.sri}. - Wanted: ${this.expectedSize} - Found: ${this.size}`); - err.code = "EBADSIZE"; - err.found = this.size; - err.expected = this.expectedSize; - err.sri = this.sri; - this.emit("error", err); - } else if (this.sri && !match) { - const err = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`); - err.code = "EINTEGRITY"; - err.found = newSri; - err.expected = this.digests; - err.algorithm = this.algorithm; - err.sri = this.sri; - this.emit("error", err); - } else { - this.emit("size", this.size); - this.emit("integrity", newSri); - match && this.emit("verified", match); + }, + { + name: "Nevercode", + constant: "NEVERCODE", + env: "NEVERCODE", + pr: { + env: "NEVERCODE_PULL_REQUEST", + ne: "false" } - } - }; - var Hash = class { - get isHash() { - return true; - } - constructor(hash, opts) { - opts = ssriOpts(opts); - const strict = !!opts.strict; - this.source = hash.trim(); - this.digest = ""; - this.algorithm = ""; - this.options = []; - const match = this.source.match(strict ? STRICT_SRI_REGEX : SRI_REGEX); - if (!match) { - return; + }, + { + name: "ReleaseHub", + constant: "RELEASEHUB", + env: "RELEASE_BUILD_ID" + }, + { + name: "Render", + constant: "RENDER", + env: "RENDER", + pr: { + IS_PULL_REQUEST: "true" } - if (strict && !SPEC_ALGORITHMS.some((a) => a === match[1])) { - return; + }, + { + 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" } - this.algorithm = match[1]; - this.digest = match[2]; - const rawOpts = match[3]; - if (rawOpts) { - this.options = rawOpts.slice(1).split("?"); + }, + { + name: "Semaphore", + constant: "SEMAPHORE", + env: "SEMAPHORE", + pr: "PULL_REQUEST_NUMBER" + }, + { + name: "Shippable", + constant: "SHIPPABLE", + env: "SHIPPABLE", + pr: { + IS_PULL_REQUEST: "true" } - } - hexDigest() { - return this.digest && Buffer.from(this.digest, "base64").toString("hex"); - } - toJSON() { - return this.toString(); - } - toString(opts) { - opts = ssriOpts(opts); - if (opts.strict) { - if (!(SPEC_ALGORITHMS.some((x) => x === this.algorithm) && this.digest.match(BASE64_REGEX) && this.options.every((opt) => opt.match(VCHAR_REGEX)))) { - return ""; - } + }, + { + name: "Solano CI", + constant: "SOLANO", + env: "TDDIUM", + pr: "TDDIUM_PR_ID" + }, + { + name: "Sourcehut", + constant: "SOURCEHUT", + env: { + CI_NAME: "sourcehut" } - const options = this.options && this.options.length ? `?${this.options.join("?")}` : ""; - return `${this.algorithm}-${this.digest}${options}`; - } - }; - var Integrity = class { - get isIntegrity() { - return true; - } - toJSON() { - return this.toString(); - } - isEmpty() { - return Object.keys(this).length === 0; - } - toString(opts) { - opts = ssriOpts(opts); - let sep = opts.sep || " "; - if (opts.strict) { - sep = sep.replace(/\S+/g, " "); + }, + { + 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" } - return Object.keys(this).map((k) => { - return this[k].map((hash) => { - return Hash.prototype.toString.call(hash, opts); - }).filter((x) => x.length).join(sep); - }).filter((x) => x.length).join(sep); - } - concat(integrity, opts) { - opts = ssriOpts(opts); - const other = typeof integrity === "string" ? integrity : stringify(integrity, opts); - return parse(`${this.toString(opts)} ${other}`, opts); + }, + { + name: "Vercel", + constant: "VERCEL", + env: { + any: [ + "NOW_BUILDER", + "VERCEL" + ] + } + }, + { + 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" } - hexDigest() { - return parse(this, { single: true }).hexDigest(); + ]; + } +}); + +// ../node_modules/.pnpm/ci-info@3.8.0/node_modules/ci-info/index.js +var require_ci_info = __commonJS({ + "../node_modules/.pnpm/ci-info@3.8.0/node_modules/ci-info/index.js"(exports2) { + "use strict"; + var vendors = require_vendors(); + var env = process.env; + Object.defineProperty(exports2, "_vendors", { + value: vendors.map(function(v) { + return v.constant; + }) + }); + exports2.name = null; + exports2.isPR = null; + vendors.forEach(function(vendor) { + const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env]; + const isCI = envs.every(function(obj) { + return checkEnv(obj); + }); + exports2[vendor.constant] = isCI; + if (!isCI) { + return; } - merge(integrity, opts) { - opts = ssriOpts(opts); - const other = parse(integrity, opts); - for (const algo in other) { - if (this[algo]) { - if (!this[algo].find((hash) => other[algo].find((otherhash) => hash.digest === otherhash.digest))) { - throw new Error("hashes do not match, cannot update integrity"); - } + exports2.name = vendor.name; + switch (typeof vendor.pr) { + case "string": + exports2.isPR = !!env[vendor.pr]; + break; + case "object": + if ("env" in vendor.pr) { + exports2.isPR = vendor.pr.env in env && env[vendor.pr.env] !== vendor.pr.ne; + } else if ("any" in vendor.pr) { + exports2.isPR = vendor.pr.any.some(function(key) { + return !!env[key]; + }); } else { - this[algo] = other[algo]; + exports2.isPR = checkEnv(vendor.pr); } - } + break; + default: + exports2.isPR = null; } - match(integrity, opts) { - opts = ssriOpts(opts); - const other = parse(integrity, opts); - const algo = other.pickAlgorithm(opts); - return this[algo] && other[algo] && this[algo].find((hash) => other[algo].find((otherhash) => hash.digest === otherhash.digest)) || false; + }); + exports2.isCI = !!(env.CI !== "false" && // Bypass all checks if CI env is explicitly set to 'false' + (env.BUILD_ID || // Jenkins, Cloudbees + env.BUILD_NUMBER || // Jenkins, TeamCity + env.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari + env.CI_APP_ID || // Appflow + env.CI_BUILD_ID || // Appflow + env.CI_BUILD_NUMBER || // Appflow + env.CI_NAME || // Codeship and others + env.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI + env.RUN_ID || // TaskCluster, dsari + exports2.name || false)); + function checkEnv(obj) { + if (typeof obj === "string") + return !!env[obj]; + if ("env" in obj) { + return env[obj.env] && env[obj.env].includes(obj.includes); } - pickAlgorithm(opts) { - opts = ssriOpts(opts); - const pickAlgorithm = opts.pickAlgorithm; - const keys = Object.keys(this); - return keys.reduce((acc, algo) => { - return pickAlgorithm(acc, algo) || acc; + if ("any" in obj) { + return obj.any.some(function(k) { + return !!env[k]; }); } - }; - module2.exports.parse = parse; - function parse(sri, opts) { - if (!sri) - return null; - opts = ssriOpts(opts); - if (typeof sri === "string") { - return _parse(sri, opts); - } else if (sri.algorithm && sri.digest) { - const fullSri = new Integrity(); - fullSri[sri.algorithm] = [sri]; - return _parse(stringify(fullSri, opts), opts); - } else { - return _parse(stringify(sri, opts), opts); - } + return Object.keys(obj).every(function(k) { + return env[k] === obj[k]; + }); } - function _parse(integrity, opts) { - if (opts.single) { - return new Hash(integrity, opts); - } - const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => { - const hash = new Hash(string, opts); - if (hash.algorithm && hash.digest) { - const algo = hash.algorithm; - if (!acc[algo]) { - acc[algo] = []; - } - acc[algo].push(hash); + } +}); + +// ../pkg-manager/get-context/lib/readLockfiles.js +var require_readLockfiles = __commonJS({ + "../pkg-manager/get-context/lib/readLockfiles.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readLockfiles = void 0; + var constants_1 = require_lib7(); + var lockfile_file_1 = require_lib87(); + var logger_1 = require_lib6(); + var ci_info_1 = require_ci_info(); + var clone_1 = __importDefault4(require_clone4()); + var equals_1 = __importDefault4(require_equals2()); + async function readLockfiles(opts) { + const wantedLockfileVersion = opts.useLockfileV6 ? constants_1.LOCKFILE_VERSION_V6 : constants_1.LOCKFILE_VERSION; + const lockfileOpts = { + ignoreIncompatible: opts.force || ci_info_1.isCI, + wantedVersions: [constants_1.LOCKFILE_VERSION.toString(), constants_1.LOCKFILE_VERSION_V6], + useGitBranchLockfile: opts.useGitBranchLockfile, + mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles + }; + const fileReads = []; + let lockfileHadConflicts = false; + if (opts.useLockfile) { + if (!opts.frozenLockfile) { + fileReads.push((async () => { + try { + const { lockfile, hadConflicts } = await (0, lockfile_file_1.readWantedLockfileAndAutofixConflicts)(opts.lockfileDir, lockfileOpts); + lockfileHadConflicts = hadConflicts; + return lockfile; + } catch (err) { + logger_1.logger.warn({ + message: `Ignoring broken lockfile at ${opts.lockfileDir}: ${err.message}`, + prefix: opts.lockfileDir + }); + return void 0; + } + })()); + } else { + fileReads.push((0, lockfile_file_1.readWantedLockfile)(opts.lockfileDir, lockfileOpts)); } - return acc; - }, new Integrity()); - return hashes.isEmpty() ? null : hashes; - } - module2.exports.stringify = stringify; - function stringify(obj, opts) { - opts = ssriOpts(opts); - if (obj.algorithm && obj.digest) { - return Hash.prototype.toString.call(obj, opts); - } else if (typeof obj === "string") { - return stringify(parse(obj, opts), opts); } else { - return Integrity.prototype.toString.call(obj, opts); - } - } - module2.exports.fromHex = fromHex; - function fromHex(hexDigest, algorithm, opts) { - opts = ssriOpts(opts); - const optString = getOptString(opts.options); - return parse(`${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`, opts); - } - module2.exports.fromData = fromData; - function fromData(data, opts) { - opts = ssriOpts(opts); - const algorithms = opts.algorithms; - const optString = getOptString(opts.options); - return algorithms.reduce((acc, algo) => { - const digest = crypto.createHash(algo).update(data).digest("base64"); - const hash = new Hash(`${algo}-${digest}${optString}`, opts); - if (hash.algorithm && hash.digest) { - const algo2 = hash.algorithm; - if (!acc[algo2]) { - acc[algo2] = []; - } - acc[algo2].push(hash); - } - return acc; - }, new Integrity()); - } - module2.exports.fromStream = fromStream; - function fromStream(stream, opts) { - opts = ssriOpts(opts); - const istream = integrityStream(opts); - return new Promise((resolve, reject) => { - stream.pipe(istream); - stream.on("error", reject); - istream.on("error", reject); - let sri; - istream.on("integrity", (s) => { - sri = s; - }); - istream.on("end", () => resolve(sri)); - istream.on("data", () => { - }); - }); - } - module2.exports.checkData = checkData; - function checkData(data, sri, opts) { - opts = ssriOpts(opts); - sri = parse(sri, opts); - if (!sri || !Object.keys(sri).length) { - if (opts.error) { - throw Object.assign(new Error("No valid integrity hashes to check against"), { - code: "EINTEGRITY" + if (await (0, lockfile_file_1.existsWantedLockfile)(opts.lockfileDir, lockfileOpts)) { + logger_1.logger.warn({ + message: `A ${constants_1.WANTED_LOCKFILE} file exists. The current configuration prohibits to read or write a lockfile`, + prefix: opts.lockfileDir }); - } else { - return false; } + fileReads.push(Promise.resolve(void 0)); } - const algorithm = sri.pickAlgorithm(opts); - const digest = crypto.createHash(algorithm).update(data).digest("base64"); - const newSri = parse({ algorithm, digest }); - const match = newSri.match(sri, opts); - if (match || !opts.error) { - return match; - } else if (typeof opts.size === "number" && data.length !== opts.size) { - const err = new Error(`data size mismatch when checking ${sri}. - Wanted: ${opts.size} - Found: ${data.length}`); - err.code = "EBADSIZE"; - err.found = data.length; - err.expected = opts.size; - err.sri = sri; - throw err; - } else { - const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`); - err.code = "EINTEGRITY"; - err.found = newSri; - err.expected = sri; - err.algorithm = algorithm; - err.sri = sri; - throw err; + fileReads.push((async () => { + try { + return await (0, lockfile_file_1.readCurrentLockfile)(opts.virtualStoreDir, lockfileOpts); + } catch (err) { + logger_1.logger.warn({ + message: `Ignoring broken lockfile at ${opts.virtualStoreDir}: ${err.message}`, + prefix: opts.lockfileDir + }); + return void 0; + } + })()); + const files = await Promise.all(fileReads); + const sopts = { + autoInstallPeers: opts.autoInstallPeers, + lockfileVersion: wantedLockfileVersion + }; + const importerIds = opts.projects.map((importer) => importer.id); + const currentLockfile = files[1] ?? (0, lockfile_file_1.createLockfileObject)(importerIds, sopts); + for (const importerId of importerIds) { + if (!currentLockfile.importers[importerId]) { + currentLockfile.importers[importerId] = { + specifiers: {} + }; + } } - } - module2.exports.checkStream = checkStream; - function checkStream(stream, sri, opts) { - opts = ssriOpts(opts); - opts.integrity = sri; - sri = parse(sri, opts); - if (!sri || !Object.keys(sri).length) { - return Promise.reject(Object.assign(new Error("No valid integrity hashes to check against"), { - code: "EINTEGRITY" - })); + const wantedLockfile = files[0] ?? (currentLockfile && (0, clone_1.default)(currentLockfile)) ?? (0, lockfile_file_1.createLockfileObject)(importerIds, sopts); + let wantedLockfileIsModified = false; + for (const importerId of importerIds) { + if (!wantedLockfile.importers[importerId]) { + wantedLockfileIsModified = true; + wantedLockfile.importers[importerId] = { + specifiers: {} + }; + } } - const checker = integrityStream(opts); - return new Promise((resolve, reject) => { - stream.pipe(checker); - stream.on("error", reject); - checker.on("error", reject); - let sri2; - checker.on("verified", (s) => { - sri2 = s; - }); - checker.on("end", () => resolve(sri2)); - checker.on("data", () => { - }); - }); - } - module2.exports.integrityStream = integrityStream; - function integrityStream(opts = {}) { - return new IntegrityStream(opts); - } - module2.exports.create = createIntegrity; - function createIntegrity(opts) { - opts = ssriOpts(opts); - const algorithms = opts.algorithms; - const optString = getOptString(opts.options); - const hashes = algorithms.map(crypto.createHash); return { - update: function(chunk, enc) { - hashes.forEach((h) => h.update(chunk, enc)); - return this; - }, - digest: function(enc) { - const integrity = algorithms.reduce((acc, algo) => { - const digest = hashes.shift().digest("base64"); - const hash = new Hash(`${algo}-${digest}${optString}`, opts); - if (hash.algorithm && hash.digest) { - const algo2 = hash.algorithm; - if (!acc[algo2]) { - acc[algo2] = []; - } - acc[algo2].push(hash); - } - return acc; - }, new Integrity()); - return integrity; - } + currentLockfile, + currentLockfileIsUpToDate: (0, equals_1.default)(currentLockfile, wantedLockfile), + existsCurrentLockfile: files[1] != null, + existsWantedLockfile: files[0] != null, + wantedLockfile, + wantedLockfileIsModified, + lockfileHadConflicts }; } - var NODE_HASHES = new Set(crypto.getHashes()); - var DEFAULT_PRIORITY = [ - "md5", - "whirlpool", - "sha1", - "sha224", - "sha256", - "sha384", - "sha512", - "sha3", - "sha3-256", - "sha3-384", - "sha3-512", - "sha3_256", - "sha3_384", - "sha3_512" - ].filter((algo) => NODE_HASHES.has(algo)); - function getPrioritizedHash(algo1, algo2) { - return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2; - } + exports2.readLockfiles = readLockfiles; } }); -// ../../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js -var require_buffer_from = __commonJS({ - "../../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js"(exports2, module2) { - var toString = Object.prototype.toString; - var isModern = typeof Buffer !== "undefined" && typeof Buffer.alloc === "function" && typeof Buffer.allocUnsafe === "function" && typeof Buffer.from === "function"; - function isArrayBuffer(input) { - return toString.call(input).slice(8, -1) === "ArrayBuffer"; - } - function fromArrayBuffer(obj, byteOffset, length) { - byteOffset >>>= 0; - var maxLength = obj.byteLength - byteOffset; - if (maxLength < 0) { - throw new RangeError("'offset' is out of bounds"); - } - if (length === void 0) { - length = maxLength; - } else { - length >>>= 0; - if (length > maxLength) { - throw new RangeError("'length' is out of bounds"); +// ../pkg-manager/get-context/lib/index.js +var require_lib108 = __commonJS({ + "../pkg-manager/get-context/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getContextForSingleImporter = exports2.getContext = exports2.UnexpectedVirtualStoreDirError = exports2.UnexpectedStoreError = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var read_projects_context_1 = require_lib107(); + var types_1 = require_lib25(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var clone_1 = __importDefault4(require_clone4()); + var equals_1 = __importDefault4(require_equals2()); + var checkCompatibility_1 = require_checkCompatibility(); + var UnexpectedStoreError_1 = require_UnexpectedStoreError(); + Object.defineProperty(exports2, "UnexpectedStoreError", { enumerable: true, get: function() { + return UnexpectedStoreError_1.UnexpectedStoreError; + } }); + var UnexpectedVirtualStoreDirError_1 = require_UnexpectedVirtualStoreDirError(); + Object.defineProperty(exports2, "UnexpectedVirtualStoreDirError", { enumerable: true, get: function() { + return UnexpectedVirtualStoreDirError_1.UnexpectedVirtualStoreDirError; + } }); + var readLockfiles_1 = require_readLockfiles(); + async function getContext(opts) { + const modulesDir = opts.modulesDir ?? "node_modules"; + let importersContext = await (0, read_projects_context_1.readProjectsContext)(opts.allProjects, { lockfileDir: opts.lockfileDir, modulesDir }); + const virtualStoreDir = (0, path_absolute_1.default)(opts.virtualStoreDir ?? path_1.default.join(modulesDir, ".pnpm"), opts.lockfileDir); + if (importersContext.modules != null) { + const { purged } = await validateModules(importersContext.modules, importersContext.projects, { + currentHoistPattern: importersContext.currentHoistPattern, + currentPublicHoistPattern: importersContext.currentPublicHoistPattern, + forceNewModules: opts.forceNewModules === true, + include: opts.include, + lockfileDir: opts.lockfileDir, + modulesDir, + registries: opts.registries, + storeDir: opts.storeDir, + virtualStoreDir, + forceHoistPattern: opts.forceHoistPattern, + hoistPattern: opts.hoistPattern, + forcePublicHoistPattern: opts.forcePublicHoistPattern, + publicHoistPattern: opts.publicHoistPattern, + global: opts.global + }); + if (purged) { + importersContext = await (0, read_projects_context_1.readProjectsContext)(opts.allProjects, { + lockfileDir: opts.lockfileDir, + modulesDir + }); } } - return isModern ? Buffer.from(obj.slice(byteOffset, byteOffset + length)) : new Buffer(new Uint8Array(obj.slice(byteOffset, byteOffset + length))); - } - function fromString(string, encoding) { - if (typeof encoding !== "string" || encoding === "") { - encoding = "utf8"; - } - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('"encoding" must be a valid string encoding'); - } - return isModern ? Buffer.from(string, encoding) : new Buffer(string, encoding); - } - function bufferFrom(value, encodingOrOffset, length) { - if (typeof value === "number") { - throw new TypeError('"value" argument must not be a number'); - } - if (isArrayBuffer(value)) { - return fromArrayBuffer(value, encodingOrOffset, length); + await fs_1.promises.mkdir(opts.storeDir, { recursive: true }); + opts.allProjects.forEach((project) => { + core_loggers_1.packageManifestLogger.debug({ + initial: project.manifest, + prefix: project.rootDir + }); + }); + if (opts.readPackageHook != null) { + for (const project of importersContext.projects) { + project.originalManifest = project.manifest; + project.manifest = await opts.readPackageHook((0, clone_1.default)(project.manifest), project.rootDir); + } } - if (typeof value === "string") { - return fromString(value, encodingOrOffset); + const extraBinPaths = [ + ...opts.extraBinPaths || [] + ]; + const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); + if (opts.hoistPattern?.length) { + extraBinPaths.unshift(path_1.default.join(hoistedModulesDir, ".bin")); } - return isModern ? Buffer.from(value) : new Buffer(value); - } - module2.exports = bufferFrom; - } -}); - -// ../../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js -var require_typedarray = __commonJS({ - "../../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js"(exports2) { - var undefined2 = void 0; - var MAX_ARRAY_LENGTH = 1e5; - var ECMAScript = function() { - var opts = Object.prototype.toString, ophop = Object.prototype.hasOwnProperty; - return { - Class: function(v) { - return opts.call(v).replace(/^\[object *|\]$/g, ""); - }, - HasProperty: function(o, p) { - return p in o; - }, - HasOwnProperty: function(o, p) { - return ophop.call(o, p); - }, - IsCallable: function(o) { - return typeof o === "function"; - }, - ToInt32: function(v) { - return v >> 0; + const hoistPattern = importersContext.currentHoistPattern ?? opts.hoistPattern; + const ctx = { + extraBinPaths, + extraNodePaths: getExtraNodePaths({ extendNodePath: opts.extendNodePath, nodeLinker: opts.nodeLinker, hoistPattern, virtualStoreDir }), + hoistedDependencies: importersContext.hoistedDependencies, + hoistedModulesDir, + hoistPattern, + include: opts.include ?? importersContext.include, + lockfileDir: opts.lockfileDir, + modulesFile: importersContext.modules, + pendingBuilds: importersContext.pendingBuilds, + projects: Object.fromEntries(importersContext.projects.map((project) => [project.rootDir, project])), + publicHoistPattern: importersContext.currentPublicHoistPattern ?? opts.publicHoistPattern, + registries: { + ...opts.registries, + ...importersContext.registries }, - ToUint32: function(v) { - return v >>> 0; - } + rootModulesDir: importersContext.rootModulesDir, + skipped: importersContext.skipped, + storeDir: opts.storeDir, + virtualStoreDir, + ...await (0, readLockfiles_1.readLockfiles)({ + autoInstallPeers: opts.autoInstallPeers, + force: opts.force, + forceSharedLockfile: opts.forceSharedLockfile, + frozenLockfile: opts.frozenLockfile === true, + lockfileDir: opts.lockfileDir, + projects: importersContext.projects, + registry: opts.registries.default, + useLockfile: opts.useLockfile, + useGitBranchLockfile: opts.useGitBranchLockfile, + mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles, + virtualStoreDir, + useLockfileV6: opts.useLockfileV6 + }) }; - }(); - var LN2 = Math.LN2; - var abs = Math.abs; - var floor = Math.floor; - var log2 = Math.log; - var min = Math.min; - var pow = Math.pow; - var round = Math.round; - function configureProperties(obj) { - if (getOwnPropNames && defineProp) { - var props = getOwnPropNames(obj), i; - for (i = 0; i < props.length; i += 1) { - defineProp(obj, props[i], { - value: obj[props[i]], - writable: false, - enumerable: false, - configurable: false - }); - } - } + core_loggers_1.contextLogger.debug({ + currentLockfileExists: ctx.existsCurrentLockfile, + storeDir: opts.storeDir, + virtualStoreDir + }); + return ctx; } - var defineProp; - if (Object.defineProperty && function() { - try { - Object.defineProperty({}, "x", {}); - return true; - } catch (e) { - return false; - } - }()) { - defineProp = Object.defineProperty; - } else { - defineProp = function(o, p, desc) { - if (!o === Object(o)) - throw new TypeError("Object.defineProperty called on non-object"); - if (ECMAScript.HasProperty(desc, "get") && Object.prototype.__defineGetter__) { - Object.prototype.__defineGetter__.call(o, p, desc.get); + exports2.getContext = getContext; + async function validateModules(modules, projects, opts) { + const rootProject = projects.find(({ id }) => id === "."); + if (opts.forcePublicHoistPattern && // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + !(0, equals_1.default)(modules.publicHoistPattern, opts.publicHoistPattern || void 0)) { + if (opts.forceNewModules && rootProject != null) { + await purgeModulesDirsOfImporter(opts.virtualStoreDir, rootProject); + return { purged: true }; } - if (ECMAScript.HasProperty(desc, "set") && Object.prototype.__defineSetter__) { - Object.prototype.__defineSetter__.call(o, p, desc.set); + throw new error_1.PnpmError("PUBLIC_HOIST_PATTERN_DIFF", 'This modules directory was created using a different public-hoist-pattern value. Run "pnpm install" to recreate the modules directory.'); + } + let purged = false; + if (opts.forceHoistPattern && rootProject != null) { + try { + if (!(0, equals_1.default)(opts.currentHoistPattern, opts.hoistPattern || void 0)) { + throw new error_1.PnpmError("HOIST_PATTERN_DIFF", 'This modules directory was created using a different hoist-pattern value. Run "pnpm install" to recreate the modules directory.'); + } + } catch (err) { + if (!opts.forceNewModules) + throw err; + await purgeModulesDirsOfImporter(opts.virtualStoreDir, rootProject); + purged = true; } - if (ECMAScript.HasProperty(desc, "value")) { - o[p] = desc.value; + } + await Promise.all(projects.map(async (project) => { + try { + (0, checkCompatibility_1.checkCompatibility)(modules, { + modulesDir: project.modulesDir, + storeDir: opts.storeDir, + virtualStoreDir: opts.virtualStoreDir + }); + if (opts.lockfileDir !== project.rootDir && opts.include != null && modules.included) { + for (const depsField of types_1.DEPENDENCIES_FIELDS) { + if (opts.include[depsField] !== modules.included[depsField]) { + throw new error_1.PnpmError("INCLUDED_DEPS_CONFLICT", `modules directory (at "${opts.lockfileDir}") was installed with ${stringifyIncludedDeps(modules.included)}. Current install wants ${stringifyIncludedDeps(opts.include)}.`); + } + } + } + } catch (err) { + if (!opts.forceNewModules) + throw err; + await purgeModulesDirsOfImporter(opts.virtualStoreDir, project); + purged = true; } - return o; - }; - } - var getOwnPropNames = Object.getOwnPropertyNames || function(o) { - if (o !== Object(o)) - throw new TypeError("Object.getOwnPropertyNames called on non-object"); - var props = [], p; - for (p in o) { - if (ECMAScript.HasOwnProperty(o, p)) { - props.push(p); + })); + if (modules.registries != null && !(0, equals_1.default)(opts.registries, modules.registries)) { + if (opts.forceNewModules) { + await Promise.all(projects.map(purgeModulesDirsOfImporter.bind(null, opts.virtualStoreDir))); + return { purged: true }; } + throw new error_1.PnpmError("REGISTRIES_MISMATCH", `This modules directory was created using the following registries configuration: ${JSON.stringify(modules.registries)}. The current configuration is ${JSON.stringify(opts.registries)}. To recreate the modules directory using the new settings, run "pnpm install${opts.global ? " -g" : ""}".`); } - return props; - }; - function makeArrayAccessors(obj) { - if (!defineProp) { - return; - } - if (obj.length > MAX_ARRAY_LENGTH) - throw new RangeError("Array too large for polyfill"); - function makeArrayAccessor(index) { - defineProp(obj, index, { - "get": function() { - return obj._getter(index); - }, - "set": function(v) { - obj._setter(index, v); - }, - enumerable: true, - configurable: false + if (purged && rootProject == null) { + await purgeModulesDirsOfImporter(opts.virtualStoreDir, { + modulesDir: path_1.default.join(opts.lockfileDir, opts.modulesDir), + rootDir: opts.lockfileDir }); } - var i; - for (i = 0; i < obj.length; i += 1) { - makeArrayAccessor(i); - } - } - function as_signed(value, bits) { - var s = 32 - bits; - return value << s >> s; - } - function as_unsigned(value, bits) { - var s = 32 - bits; - return value << s >>> s; - } - function packI8(n) { - return [n & 255]; - } - function unpackI8(bytes) { - return as_signed(bytes[0], 8); - } - function packU8(n) { - return [n & 255]; - } - function unpackU8(bytes) { - return as_unsigned(bytes[0], 8); - } - function packU8Clamped(n) { - n = round(Number(n)); - return [n < 0 ? 0 : n > 255 ? 255 : n & 255]; - } - function packI16(n) { - return [n >> 8 & 255, n & 255]; - } - function unpackI16(bytes) { - return as_signed(bytes[0] << 8 | bytes[1], 16); - } - function packU16(n) { - return [n >> 8 & 255, n & 255]; - } - function unpackU16(bytes) { - return as_unsigned(bytes[0] << 8 | bytes[1], 16); + return { purged }; } - function packI32(n) { - return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; + async function purgeModulesDirsOfImporter(virtualStoreDir, importer) { + logger_1.logger.info({ + message: `Recreating ${importer.modulesDir}`, + prefix: importer.rootDir + }); + try { + await removeContentsOfDir(importer.modulesDir, virtualStoreDir); + } catch (err) { + if (err.code !== "ENOENT") + throw err; + } } - function unpackI32(bytes) { - return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); + async function removeContentsOfDir(dir, virtualStoreDir) { + const items = await fs_1.promises.readdir(dir); + for (const item of items) { + if (item.startsWith(".") && item !== ".bin" && item !== ".modules.yaml" && !dirsAreEqual(path_1.default.join(dir, item), virtualStoreDir)) { + continue; + } + await (0, rimraf_1.default)(path_1.default.join(dir, item)); + } } - function packU32(n) { - return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; + function dirsAreEqual(dir1, dir2) { + return path_1.default.relative(dir1, dir2) === ""; } - function unpackU32(bytes) { - return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); + function stringifyIncludedDeps(included) { + return types_1.DEPENDENCIES_FIELDS.filter((depsField) => included[depsField]).join(", "); } - function packIEEE754(v, ebits, fbits) { - var bias = (1 << ebits - 1) - 1, s, e, f, ln, i, bits, str, bytes; - function roundToEven(n) { - var w = floor(n), f2 = n - w; - if (f2 < 0.5) - return w; - if (f2 > 0.5) - return w + 1; - return w % 2 ? w + 1 : w; - } - if (v !== v) { - e = (1 << ebits) - 1; - f = pow(2, fbits - 1); - s = 0; - } else if (v === Infinity || v === -Infinity) { - e = (1 << ebits) - 1; - f = 0; - s = v < 0 ? 1 : 0; - } else if (v === 0) { - e = 0; - f = 0; - s = 1 / v === -Infinity ? 1 : 0; - } else { - s = v < 0; - v = abs(v); - if (v >= pow(2, 1 - bias)) { - e = min(floor(log2(v) / LN2), 1023); - f = roundToEven(v / pow(2, e) * pow(2, fbits)); - if (f / pow(2, fbits) >= 2) { - e = e + 1; - f = 1; - } - if (e > bias) { - e = (1 << ebits) - 1; - f = 0; - } else { - e = e + bias; - f = f - pow(2, fbits); - } - } else { - e = 0; - f = roundToEven(v / pow(2, 1 - bias - fbits)); + async function getContextForSingleImporter(manifest, opts, alreadyPurged = false) { + const { currentHoistPattern, currentPublicHoistPattern, hoistedDependencies, projects, include, modules, pendingBuilds, registries, skipped, rootModulesDir } = await (0, read_projects_context_1.readProjectsContext)([ + { + rootDir: opts.dir } - } - bits = []; - for (i = fbits; i; i -= 1) { - bits.push(f % 2 ? 1 : 0); - f = floor(f / 2); - } - for (i = ebits; i; i -= 1) { - bits.push(e % 2 ? 1 : 0); - e = floor(e / 2); - } - bits.push(s ? 1 : 0); - bits.reverse(); - str = bits.join(""); - bytes = []; - while (str.length) { - bytes.push(parseInt(str.substring(0, 8), 2)); - str = str.substring(8); - } - return bytes; - } - function unpackIEEE754(bytes, ebits, fbits) { - var bits = [], i, j, b, str, bias, s, e, f; - for (i = bytes.length; i; i -= 1) { - b = bytes[i - 1]; - for (j = 8; j; j -= 1) { - bits.push(b % 2 ? 1 : 0); - b = b >> 1; + ], { + lockfileDir: opts.lockfileDir, + modulesDir: opts.modulesDir + }); + const storeDir = opts.storeDir; + const importer = projects[0]; + const modulesDir = importer.modulesDir; + const importerId = importer.id; + const virtualStoreDir = (0, path_absolute_1.default)(opts.virtualStoreDir ?? "node_modules/.pnpm", opts.lockfileDir); + if (modules != null && !alreadyPurged) { + const { purged } = await validateModules(modules, projects, { + currentHoistPattern, + currentPublicHoistPattern, + forceNewModules: opts.forceNewModules === true, + include: opts.include, + lockfileDir: opts.lockfileDir, + modulesDir: opts.modulesDir ?? "node_modules", + registries: opts.registries, + storeDir: opts.storeDir, + virtualStoreDir, + forceHoistPattern: opts.forceHoistPattern, + hoistPattern: opts.hoistPattern, + forcePublicHoistPattern: opts.forcePublicHoistPattern, + publicHoistPattern: opts.publicHoistPattern + }); + if (purged) { + return getContextForSingleImporter(manifest, opts, true); } } - bits.reverse(); - str = bits.join(""); - bias = (1 << ebits - 1) - 1; - s = parseInt(str.substring(0, 1), 2) ? -1 : 1; - e = parseInt(str.substring(1, 1 + ebits), 2); - f = parseInt(str.substring(1 + ebits), 2); - if (e === (1 << ebits) - 1) { - return f !== 0 ? NaN : s * Infinity; - } else if (e > 0) { - return s * pow(2, e - bias) * (1 + f / pow(2, fbits)); - } else if (f !== 0) { - return s * pow(2, -(bias - 1)) * (f / pow(2, fbits)); - } else { - return s < 0 ? -0 : 0; + await fs_1.promises.mkdir(storeDir, { recursive: true }); + const extraBinPaths = [ + ...opts.extraBinPaths || [] + ]; + const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); + if (opts.hoistPattern?.length) { + extraBinPaths.unshift(path_1.default.join(hoistedModulesDir, ".bin")); } + const hoistPattern = currentHoistPattern ?? opts.hoistPattern; + const ctx = { + extraBinPaths, + extraNodePaths: getExtraNodePaths({ extendNodePath: opts.extendNodePath, nodeLinker: opts.nodeLinker, hoistPattern, virtualStoreDir }), + hoistedDependencies, + hoistedModulesDir, + hoistPattern, + importerId, + include: opts.include ?? include, + lockfileDir: opts.lockfileDir, + manifest: await opts.readPackageHook?.(manifest) ?? manifest, + modulesDir, + modulesFile: modules, + pendingBuilds, + prefix: opts.dir, + publicHoistPattern: currentPublicHoistPattern ?? opts.publicHoistPattern, + registries: { + ...opts.registries, + ...registries + }, + rootModulesDir, + skipped, + storeDir, + virtualStoreDir, + ...await (0, readLockfiles_1.readLockfiles)({ + autoInstallPeers: opts.autoInstallPeers, + force: opts.force, + forceSharedLockfile: opts.forceSharedLockfile, + frozenLockfile: false, + lockfileDir: opts.lockfileDir, + projects: [{ id: importerId, rootDir: opts.dir }], + registry: opts.registries.default, + useLockfile: opts.useLockfile, + useGitBranchLockfile: opts.useGitBranchLockfile, + mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles, + virtualStoreDir, + useLockfileV6: opts.useLockfileV6 + }) + }; + core_loggers_1.packageManifestLogger.debug({ + initial: manifest, + prefix: opts.dir + }); + core_loggers_1.contextLogger.debug({ + currentLockfileExists: ctx.existsCurrentLockfile, + storeDir: opts.storeDir, + virtualStoreDir + }); + return ctx; } - function unpackF64(b) { - return unpackIEEE754(b, 11, 52); - } - function packF64(v) { - return packIEEE754(v, 11, 52); - } - function unpackF32(b) { - return unpackIEEE754(b, 8, 23); - } - function packF32(v) { - return packIEEE754(v, 8, 23); + exports2.getContextForSingleImporter = getContextForSingleImporter; + function getExtraNodePaths({ extendNodePath = true, hoistPattern, nodeLinker, virtualStoreDir }) { + if (extendNodePath && nodeLinker === "isolated" && hoistPattern?.length) { + return [path_1.default.join(virtualStoreDir, "node_modules")]; + } + return []; } - (function() { - var ArrayBuffer2 = function ArrayBuffer3(length) { - length = ECMAScript.ToInt32(length); - if (length < 0) - throw new RangeError("ArrayBuffer size is not a small enough positive integer"); - this.byteLength = length; - this._bytes = []; - this._bytes.length = length; - var i; - for (i = 0; i < this.byteLength; i += 1) { - this._bytes[i] = 0; - } - configureProperties(this); - }; - exports2.ArrayBuffer = exports2.ArrayBuffer || ArrayBuffer2; - var ArrayBufferView = function ArrayBufferView2() { - }; - function makeConstructor(bytesPerElement, pack, unpack) { - var ctor; - ctor = function(buffer, byteOffset, length) { - var array, sequence, i, s; - if (!arguments.length || typeof arguments[0] === "number") { - this.length = ECMAScript.ToInt32(arguments[0]); - if (length < 0) - throw new RangeError("ArrayBufferView size is not a small enough positive integer"); - this.byteLength = this.length * this.BYTES_PER_ELEMENT; - this.buffer = new ArrayBuffer2(this.byteLength); - this.byteOffset = 0; - } else if (typeof arguments[0] === "object" && arguments[0].constructor === ctor) { - array = arguments[0]; - this.length = array.length; - this.byteLength = this.length * this.BYTES_PER_ELEMENT; - this.buffer = new ArrayBuffer2(this.byteLength); - this.byteOffset = 0; - for (i = 0; i < this.length; i += 1) { - this._setter(i, array._getter(i)); - } - } else if (typeof arguments[0] === "object" && !(arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { - sequence = arguments[0]; - this.length = ECMAScript.ToUint32(sequence.length); - this.byteLength = this.length * this.BYTES_PER_ELEMENT; - this.buffer = new ArrayBuffer2(this.byteLength); - this.byteOffset = 0; - for (i = 0; i < this.length; i += 1) { - s = sequence[i]; - this._setter(i, Number(s)); - } - } else if (typeof arguments[0] === "object" && (arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { - this.buffer = buffer; - this.byteOffset = ECMAScript.ToUint32(byteOffset); - if (this.byteOffset > this.buffer.byteLength) { - throw new RangeError("byteOffset out of range"); - } - if (this.byteOffset % this.BYTES_PER_ELEMENT) { - throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size."); - } - if (arguments.length < 3) { - this.byteLength = this.buffer.byteLength - this.byteOffset; - if (this.byteLength % this.BYTES_PER_ELEMENT) { - throw new RangeError("length of buffer minus byteOffset not a multiple of the element size"); - } - this.length = this.byteLength / this.BYTES_PER_ELEMENT; - } else { - this.length = ECMAScript.ToUint32(length); - this.byteLength = this.length * this.BYTES_PER_ELEMENT; + } +}); + +// ../fs/hard-link-dir/lib/index.js +var require_lib109 = __commonJS({ + "../fs/hard-link-dir/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hardLinkDir = void 0; + var path_1 = __importDefault4(require("path")); + var fs_1 = require("fs"); + var logger_1 = require_lib6(); + async function hardLinkDir(src, destDirs) { + if (destDirs.length === 0) + return; + destDirs = destDirs.filter((destDir) => path_1.default.relative(destDir, src) !== ""); + await _hardLinkDir(src, destDirs, true); + } + exports2.hardLinkDir = hardLinkDir; + async function _hardLinkDir(src, destDirs, isRoot) { + let files = []; + try { + files = await fs_1.promises.readdir(src); + } catch (err) { + if (!isRoot || err.code !== "ENOENT") + throw err; + (0, logger_1.globalWarn)(`Source directory not found when creating hardLinks for: ${src}. Creating destinations as empty: ${destDirs.join(", ")}`); + await Promise.all(destDirs.map((dir) => fs_1.promises.mkdir(dir, { recursive: true }))); + return; + } + await Promise.all(files.map(async (file) => { + if (file === "node_modules") + return; + const srcFile = path_1.default.join(src, file); + if ((await fs_1.promises.lstat(srcFile)).isDirectory()) { + const destSubdirs = await Promise.all(destDirs.map(async (destDir) => { + const destSubdir = path_1.default.join(destDir, file); + try { + await fs_1.promises.mkdir(destSubdir, { recursive: true }); + } catch (err) { + if (err.code !== "EEXIST") + throw err; } - if (this.byteOffset + this.byteLength > this.buffer.byteLength) { - throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); + return destSubdir; + })); + await _hardLinkDir(srcFile, destSubdirs); + return; + } + await Promise.all(destDirs.map(async (destDir) => { + const destFile = path_1.default.join(destDir, file); + try { + await linkOrCopyFile(srcFile, destFile); + } catch (err) { + if (err.code === "ENOENT") { + return; } - } else { - throw new TypeError("Unexpected argument type(s)"); - } - this.constructor = ctor; - configureProperties(this); - makeArrayAccessors(this); - }; - ctor.prototype = new ArrayBufferView(); - ctor.prototype.BYTES_PER_ELEMENT = bytesPerElement; - ctor.prototype._pack = pack; - ctor.prototype._unpack = unpack; - ctor.BYTES_PER_ELEMENT = bytesPerElement; - ctor.prototype._getter = function(index) { - if (arguments.length < 1) - throw new SyntaxError("Not enough arguments"); - index = ECMAScript.ToUint32(index); - if (index >= this.length) { - return undefined2; - } - var bytes = [], i, o; - for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { - bytes.push(this.buffer._bytes[o]); + throw err; } - return this._unpack(bytes); - }; - ctor.prototype.get = ctor.prototype._getter; - ctor.prototype._setter = function(index, value) { - if (arguments.length < 2) - throw new SyntaxError("Not enough arguments"); - index = ECMAScript.ToUint32(index); - if (index >= this.length) { - return undefined2; + })); + })); + } + async function linkOrCopyFile(srcFile, destFile) { + try { + await linkOrCopy(srcFile, destFile); + } catch (err) { + if (err.code === "ENOENT") { + await fs_1.promises.mkdir(path_1.default.dirname(destFile), { recursive: true }); + await linkOrCopy(srcFile, destFile); + return; + } + if (err.code !== "EEXIST") { + throw err; + } + } + } + async function linkOrCopy(srcFile, destFile) { + try { + await fs_1.promises.link(srcFile, destFile); + } catch (err) { + if (err.code !== "EXDEV") + throw err; + await fs_1.promises.copyFile(srcFile, destFile); + } + } + } +}); + +// ../node_modules/.pnpm/@pnpm+graph-sequencer@1.1.1/node_modules/@pnpm/graph-sequencer/index.js +var require_graph_sequencer = __commonJS({ + "../node_modules/.pnpm/@pnpm+graph-sequencer@1.1.1/node_modules/@pnpm/graph-sequencer/index.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + function getCycles(currDepsMap, visited) { + let items = Array.from(currDepsMap.keys()); + let cycles = []; + function visit(item, cycle) { + let visitedDeps = visited.get(item); + if (!visitedDeps) { + visitedDeps = []; + visited.set(item, visitedDeps); + } + let deps = currDepsMap.get(item); + if (typeof deps === "undefined") + return; + for (let dep of deps) { + if (visitedDeps.includes(dep)) { + continue; } - var bytes = this._pack(value), i, o; - for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { - this.buffer._bytes[o] = bytes[i]; + visitedDeps.push(dep); + const idx = cycle.indexOf(dep); + if (idx > -1) { + cycles.push(cycle.slice(idx)); + continue; } - }; - ctor.prototype.set = function(index, value) { - if (arguments.length < 1) - throw new SyntaxError("Not enough arguments"); - var array, sequence, offset, len, i, s, d, byteOffset, byteLength, tmp; - if (typeof arguments[0] === "object" && arguments[0].constructor === this.constructor) { - array = arguments[0]; - offset = ECMAScript.ToUint32(arguments[1]); - if (offset + array.length > this.length) { - throw new RangeError("Offset plus length of array is out of range"); - } - byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT; - byteLength = array.length * this.BYTES_PER_ELEMENT; - if (array.buffer === this.buffer) { - tmp = []; - for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) { - tmp[i] = array.buffer._bytes[s]; - } - for (i = 0, d = byteOffset; i < byteLength; i += 1, d += 1) { - this.buffer._bytes[d] = tmp[i]; - } + visit(dep, cycle.concat(dep)); + } + } + for (let item of items) { + visit(item, [item]); + } + return cycles; + } + function graphSequencer(opts) { + let graph = opts.graph; + let groups = opts.groups; + let groupsAsSets = groups.map((group) => new Set(group)); + let graphItems = Array.from(graph.keys()); + assert.deepStrictEqual( + graphItems.sort(), + groups.flat(Infinity).sort(), + "items in graph must be the same as items in groups" + ); + let chunks = []; + let cycles = []; + let safe = true; + let queue = graphItems; + let chunked = /* @__PURE__ */ new Set(); + let visited = /* @__PURE__ */ new Map(); + while (queue.length) { + let nextQueue = []; + let chunk = []; + let currDepsMap = /* @__PURE__ */ new Map(); + for (let i = 0; i < queue.length; i++) { + let item = queue[i]; + let deps = graph.get(item); + if (typeof deps === "undefined") + continue; + let itemGroup = groupsAsSets.findIndex((group) => group.has(item)); + let currDeps = deps.filter((dep) => { + let depGroup = groupsAsSets.findIndex((group) => group.has(dep)); + if (depGroup > itemGroup) { + return false; } else { - for (i = 0, s = array.byteOffset, d = byteOffset; i < byteLength; i += 1, s += 1, d += 1) { - this.buffer._bytes[d] = array.buffer._bytes[s]; - } - } - } else if (typeof arguments[0] === "object" && typeof arguments[0].length !== "undefined") { - sequence = arguments[0]; - len = ECMAScript.ToUint32(sequence.length); - offset = ECMAScript.ToUint32(arguments[1]); - if (offset + len > this.length) { - throw new RangeError("Offset plus length of array is out of range"); - } - for (i = 0; i < len; i += 1) { - s = sequence[i]; - this._setter(offset + i, Number(s)); + return !chunked.has(dep); } + }); + currDepsMap.set(item, currDeps); + if (currDeps.length) { + nextQueue.push(item); } else { - throw new TypeError("Unexpected argument type(s)"); - } - }; - ctor.prototype.subarray = function(start, end) { - function clamp(v, min2, max) { - return v < min2 ? min2 : v > max ? max : v; - } - start = ECMAScript.ToInt32(start); - end = ECMAScript.ToInt32(end); - if (arguments.length < 1) { - start = 0; - } - if (arguments.length < 2) { - end = this.length; - } - if (start < 0) { - start = this.length + start; - } - if (end < 0) { - end = this.length + end; - } - start = clamp(start, 0, this.length); - end = clamp(end, 0, this.length); - var len = end - start; - if (len < 0) { - len = 0; + chunk.push(item); } - return new this.constructor(this.buffer, this.byteOffset + start * this.BYTES_PER_ELEMENT, len); - }; - return ctor; - } - var Int8Array2 = makeConstructor(1, packI8, unpackI8); - var Uint8Array2 = makeConstructor(1, packU8, unpackU8); - var Uint8ClampedArray2 = makeConstructor(1, packU8Clamped, unpackU8); - var Int16Array2 = makeConstructor(2, packI16, unpackI16); - var Uint16Array2 = makeConstructor(2, packU16, unpackU16); - var Int32Array2 = makeConstructor(4, packI32, unpackI32); - var Uint32Array2 = makeConstructor(4, packU32, unpackU32); - var Float32Array2 = makeConstructor(4, packF32, unpackF32); - var Float64Array2 = makeConstructor(8, packF64, unpackF64); - exports2.Int8Array = exports2.Int8Array || Int8Array2; - exports2.Uint8Array = exports2.Uint8Array || Uint8Array2; - exports2.Uint8ClampedArray = exports2.Uint8ClampedArray || Uint8ClampedArray2; - exports2.Int16Array = exports2.Int16Array || Int16Array2; - exports2.Uint16Array = exports2.Uint16Array || Uint16Array2; - exports2.Int32Array = exports2.Int32Array || Int32Array2; - exports2.Uint32Array = exports2.Uint32Array || Uint32Array2; - exports2.Float32Array = exports2.Float32Array || Float32Array2; - exports2.Float64Array = exports2.Float64Array || Float64Array2; - })(); - (function() { - function r(array, index) { - return ECMAScript.IsCallable(array.get) ? array.get(index) : array[index]; - } - var IS_BIG_ENDIAN = function() { - var u16array = new exports2.Uint16Array([4660]), u8array = new exports2.Uint8Array(u16array.buffer); - return r(u8array, 0) === 18; - }(); - var DataView2 = function DataView3(buffer, byteOffset, byteLength) { - if (arguments.length === 0) { - buffer = new exports2.ArrayBuffer(0); - } else if (!(buffer instanceof exports2.ArrayBuffer || ECMAScript.Class(buffer) === "ArrayBuffer")) { - throw new TypeError("TypeError"); - } - this.buffer = buffer || new exports2.ArrayBuffer(0); - this.byteOffset = ECMAScript.ToUint32(byteOffset); - if (this.byteOffset > this.buffer.byteLength) { - throw new RangeError("byteOffset out of range"); } - if (arguments.length < 3) { - this.byteLength = this.buffer.byteLength - this.byteOffset; - } else { - this.byteLength = ECMAScript.ToUint32(byteLength); + if (!chunk.length) { + cycles = cycles.concat(getCycles(currDepsMap, visited)); + let sorted = queue.sort((a, b) => { + let aDeps = currDepsMap.get(a) || []; + let bDeps = currDepsMap.get(b) || []; + return aDeps.length - bDeps.length; + }); + chunk.push(sorted[0]); + nextQueue = sorted.slice(1); + safe = false; } - if (this.byteOffset + this.byteLength > this.buffer.byteLength) { - throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); + for (let item of chunk) { + chunked.add(item); } - configureProperties(this); - }; - function makeGetter(arrayType) { - return function(byteOffset, littleEndian) { - byteOffset = ECMAScript.ToUint32(byteOffset); - if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { - throw new RangeError("Array index out of range"); - } - byteOffset += this.byteOffset; - var uint8Array = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT), bytes = [], i; - for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { - bytes.push(r(uint8Array, i)); - } - if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { - bytes.reverse(); - } - return r(new arrayType(new exports2.Uint8Array(bytes).buffer), 0); - }; + chunks.push(chunk.sort()); + queue = nextQueue; } - DataView2.prototype.getUint8 = makeGetter(exports2.Uint8Array); - DataView2.prototype.getInt8 = makeGetter(exports2.Int8Array); - DataView2.prototype.getUint16 = makeGetter(exports2.Uint16Array); - DataView2.prototype.getInt16 = makeGetter(exports2.Int16Array); - DataView2.prototype.getUint32 = makeGetter(exports2.Uint32Array); - DataView2.prototype.getInt32 = makeGetter(exports2.Int32Array); - DataView2.prototype.getFloat32 = makeGetter(exports2.Float32Array); - DataView2.prototype.getFloat64 = makeGetter(exports2.Float64Array); - function makeSetter(arrayType) { - return function(byteOffset, value, littleEndian) { - byteOffset = ECMAScript.ToUint32(byteOffset); - if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { - throw new RangeError("Array index out of range"); - } - var typeArray = new arrayType([value]), byteArray = new exports2.Uint8Array(typeArray.buffer), bytes = [], i, byteView; - for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { - bytes.push(r(byteArray, i)); - } - if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { - bytes.reverse(); + return { safe, chunks, cycles }; + } + module2.exports = graphSequencer; + } +}); + +// ../exec/plugin-commands-rebuild/lib/implementation/extendRebuildOptions.js +var require_extendRebuildOptions = __commonJS({ + "../exec/plugin-commands-rebuild/lib/implementation/extendRebuildOptions.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extendRebuildOptions = void 0; + var path_1 = __importDefault4(require("path")); + var normalize_registries_1 = require_lib89(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var defaults = async (opts) => { + const packageManager = opts.packageManager ?? await (0, load_json_file_1.default)(path_1.default.join(__dirname, "../../package.json")); + const dir = opts.dir ?? process.cwd(); + const lockfileDir = opts.lockfileDir ?? dir; + return { + childConcurrency: 5, + development: true, + dir, + force: false, + forceSharedLockfile: false, + lockfileDir, + nodeLinker: "isolated", + optional: true, + packageManager, + pending: false, + production: true, + rawConfig: {}, + registries: normalize_registries_1.DEFAULT_REGISTRIES, + scriptsPrependNodePath: false, + shamefullyHoist: false, + shellEmulator: false, + sideEffectsCacheRead: false, + storeDir: opts.storeDir, + unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid() !== 0, + useLockfile: true, + userAgent: `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}` + }; + }; + async function extendRebuildOptions(opts) { + if (opts) { + for (const key in opts) { + if (opts[key] === void 0) { + delete opts[key]; } - byteView = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT); - byteView.set(bytes); - }; + } } - DataView2.prototype.setUint8 = makeSetter(exports2.Uint8Array); - DataView2.prototype.setInt8 = makeSetter(exports2.Int8Array); - DataView2.prototype.setUint16 = makeSetter(exports2.Uint16Array); - DataView2.prototype.setInt16 = makeSetter(exports2.Int16Array); - DataView2.prototype.setUint32 = makeSetter(exports2.Uint32Array); - DataView2.prototype.setInt32 = makeSetter(exports2.Int32Array); - DataView2.prototype.setFloat32 = makeSetter(exports2.Float32Array); - DataView2.prototype.setFloat64 = makeSetter(exports2.Float64Array); - exports2.DataView = exports2.DataView || DataView2; - })(); + const defaultOpts = await defaults(opts); + const extendedOpts = { ...defaultOpts, ...opts, storeDir: defaultOpts.storeDir }; + extendedOpts.registries = (0, normalize_registries_1.normalizeRegistries)(extendedOpts.registries); + return extendedOpts; + } + exports2.extendRebuildOptions = extendRebuildOptions; } }); -// ../../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js -var require_concat_stream = __commonJS({ - "../../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js"(exports2, module2) { - var Writable = require_readable().Writable; - var inherits = require_inherits(); - var bufferFrom = require_buffer_from(); - if (typeof Uint8Array === "undefined") { - U8 = require_typedarray().Uint8Array; - } else { - U8 = Uint8Array; - } - var U8; - function ConcatStream(opts, cb) { - if (!(this instanceof ConcatStream)) - return new ConcatStream(opts, cb); - if (typeof opts === "function") { - cb = opts; - opts = {}; +// ../exec/plugin-commands-rebuild/lib/implementation/index.js +var require_implementation2 = __commonJS({ + "../exec/plugin-commands-rebuild/lib/implementation/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (!opts) - opts = {}; - var encoding = opts.encoding; - var shouldInferEncoding = false; - if (!encoding) { - shouldInferEncoding = true; - } else { - encoding = String(encoding).toLowerCase(); - if (encoding === "u8" || encoding === "uint8") { - encoding = "uint8array"; - } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - Writable.call(this, { objectMode: true }); - this.encoding = encoding; - this.shouldInferEncoding = shouldInferEncoding; - if (cb) - this.on("finish", function() { - cb(this.getBody()); - }); - this.body = []; - } - module2.exports = ConcatStream; - inherits(ConcatStream, Writable); - ConcatStream.prototype._write = function(chunk, enc, next) { - this.body.push(chunk); - next(); - }; - ConcatStream.prototype.inferEncoding = function(buff) { - var firstBuffer = buff === void 0 ? this.body[0] : buff; - if (Buffer.isBuffer(firstBuffer)) - return "buffer"; - if (typeof Uint8Array !== "undefined" && firstBuffer instanceof Uint8Array) - return "uint8array"; - if (Array.isArray(firstBuffer)) - return "array"; - if (typeof firstBuffer === "string") - return "string"; - if (Object.prototype.toString.call(firstBuffer) === "[object Object]") - return "object"; - return "buffer"; - }; - ConcatStream.prototype.getBody = function() { - if (!this.encoding && this.body.length === 0) - return []; - if (this.shouldInferEncoding) - this.encoding = this.inferEncoding(); - if (this.encoding === "array") - return arrayConcat(this.body); - if (this.encoding === "string") - return stringConcat(this.body); - if (this.encoding === "buffer") - return bufferConcat(this.body); - if (this.encoding === "uint8array") - return u8Concat(this.body); - return this.body; + __setModuleDefault4(result2, mod); + return result2; }; - var isArray = Array.isArray || function(arr) { - return Object.prototype.toString.call(arr) == "[object Array]"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - function isArrayish(arr) { - return /Array\]$/.test(Object.prototype.toString.call(arr)); - } - function isBufferish(p) { - return typeof p === "string" || isArrayish(p) || p && typeof p.subarray === "function"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.rebuildProjects = exports2.rebuildSelectedPkgs = void 0; + var path_1 = __importDefault4(require("path")); + var constants_1 = require_lib7(); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var get_context_1 = require_lib108(); + var lifecycle_1 = require_lib61(); + var link_bins_1 = require_lib54(); + var lockfile_utils_1 = require_lib84(); + var lockfile_walker_1 = require_lib85(); + var logger_1 = require_lib6(); + var modules_yaml_1 = require_lib88(); + var store_connection_manager_1 = require_lib106(); + var dp = __importStar5(require_lib81()); + var fs_hard_link_dir_1 = require_lib109(); + var run_groups_1 = __importDefault4(require_lib60()); + var graph_sequencer_1 = __importDefault4(require_graph_sequencer()); + var npm_package_arg_1 = __importDefault4(require_npa()); + var p_limit_12 = __importDefault4(require_p_limit()); + var semver_12 = __importDefault4(require_semver2()); + var extendRebuildOptions_1 = require_extendRebuildOptions(); + function findPackages(packages, searched, opts) { + return Object.keys(packages).filter((relativeDepPath) => { + const pkgLockfile = packages[relativeDepPath]; + const pkgInfo = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(relativeDepPath, pkgLockfile); + if (!pkgInfo.name) { + logger_1.logger.warn({ + message: `Skipping ${relativeDepPath} because cannot get the package name from ${constants_1.WANTED_LOCKFILE}. + Try to run run \`pnpm update --depth 100\` to create a new ${constants_1.WANTED_LOCKFILE} with all the necessary info.`, + prefix: opts.prefix + }); + return false; + } + return matches(searched, pkgInfo); + }); } - function stringConcat(parts) { - var strings = []; - var needsToString = false; - for (var i = 0; i < parts.length; i++) { - var p = parts[i]; - if (typeof p === "string") { - strings.push(p); - } else if (Buffer.isBuffer(p)) { - strings.push(p); - } else if (isBufferish(p)) { - strings.push(bufferFrom(p)); - } else { - strings.push(bufferFrom(String(p))); + function matches(searched, manifest) { + return searched.some((searchedPkg) => { + if (typeof searchedPkg === "string") { + return manifest.name === searchedPkg; } + return searchedPkg.name === manifest.name && !!manifest.version && semver_12.default.satisfies(manifest.version, searchedPkg.range); + }); + } + async function rebuildSelectedPkgs(projects, pkgSpecs, maybeOpts) { + const reporter = maybeOpts?.reporter; + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.on("data", reporter); } - if (Buffer.isBuffer(parts[0])) { - strings = Buffer.concat(strings); - strings = strings.toString("utf8"); - } else { - strings = strings.join(""); + const opts = await (0, extendRebuildOptions_1.extendRebuildOptions)(maybeOpts); + const ctx = await (0, get_context_1.getContext)({ ...opts, allProjects: projects }); + if (!ctx.currentLockfile || ctx.currentLockfile.packages == null) + return; + const packages = ctx.currentLockfile.packages; + const searched = pkgSpecs.map((arg) => { + const { fetchSpec, name, raw, type } = (0, npm_package_arg_1.default)(arg); + if (raw === name) { + return name; + } + if (type !== "version" && type !== "range") { + throw new Error(`Invalid argument - ${arg}. Rebuild can only select by version or range`); + } + return { + name, + range: fetchSpec + }; + }); + let pkgs = []; + for (const { rootDir } of projects) { + pkgs = [ + ...pkgs, + ...findPackages(packages, searched, { prefix: rootDir }) + ]; } - return strings; + await _rebuild({ + pkgsToRebuild: new Set(pkgs), + ...ctx + }, opts); } - function bufferConcat(parts) { - var bufs = []; - for (var i = 0; i < parts.length; i++) { - var p = parts[i]; - if (Buffer.isBuffer(p)) { - bufs.push(p); - } else if (isBufferish(p)) { - bufs.push(bufferFrom(p)); - } else { - bufs.push(bufferFrom(String(p))); + exports2.rebuildSelectedPkgs = rebuildSelectedPkgs; + async function rebuildProjects(projects, maybeOpts) { + const reporter = maybeOpts?.reporter; + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.on("data", reporter); + } + const opts = await (0, extendRebuildOptions_1.extendRebuildOptions)(maybeOpts); + const ctx = await (0, get_context_1.getContext)({ ...opts, allProjects: projects }); + let idsToRebuild = []; + if (opts.pending) { + idsToRebuild = ctx.pendingBuilds; + } else if (ctx.currentLockfile?.packages != null) { + idsToRebuild = Object.keys(ctx.currentLockfile.packages); + } + const pkgsThatWereRebuilt = await _rebuild({ + pkgsToRebuild: new Set(idsToRebuild), + ...ctx + }, opts); + ctx.pendingBuilds = ctx.pendingBuilds.filter((depPath) => !pkgsThatWereRebuilt.has(depPath)); + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const scriptsOpts = { + extraBinPaths: ctx.extraBinPaths, + extraNodePaths: ctx.extraNodePaths, + extraEnv: opts.extraEnv, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + rawConfig: opts.rawConfig, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + storeController: store.ctrl, + unsafePerm: opts.unsafePerm || false + }; + await (0, lifecycle_1.runLifecycleHooksConcurrently)(["preinstall", "install", "postinstall", "prepublish", "prepare"], Object.values(ctx.projects), opts.childConcurrency || 5, scriptsOpts); + for (const { id, manifest } of Object.values(ctx.projects)) { + if (manifest?.scripts != null && (!opts.pending || ctx.pendingBuilds.includes(id))) { + ctx.pendingBuilds.splice(ctx.pendingBuilds.indexOf(id), 1); } } - return Buffer.concat(bufs); + await (0, modules_yaml_1.writeModulesManifest)(ctx.rootModulesDir, { + prunedAt: (/* @__PURE__ */ new Date()).toUTCString(), + ...ctx.modulesFile, + hoistedDependencies: ctx.hoistedDependencies, + hoistPattern: ctx.hoistPattern, + included: ctx.include, + layoutVersion: constants_1.LAYOUT_VERSION, + packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, + pendingBuilds: ctx.pendingBuilds, + publicHoistPattern: ctx.publicHoistPattern, + registries: ctx.registries, + skipped: Array.from(ctx.skipped), + storeDir: ctx.storeDir, + virtualStoreDir: ctx.virtualStoreDir + }); } - function arrayConcat(parts) { - var res = []; - for (var i = 0; i < parts.length; i++) { - res.push.apply(res, parts[i]); + exports2.rebuildProjects = rebuildProjects; + function getSubgraphToBuild(step, nodesToBuildAndTransitive, opts) { + let currentShouldBeBuilt = false; + for (const { depPath, next } of step.dependencies) { + if (nodesToBuildAndTransitive.has(depPath)) { + currentShouldBeBuilt = true; + } + const childShouldBeBuilt = getSubgraphToBuild(next(), nodesToBuildAndTransitive, opts) || opts.pkgsToRebuild.has(depPath); + if (childShouldBeBuilt) { + nodesToBuildAndTransitive.add(depPath); + currentShouldBeBuilt = true; + } } - return res; + for (const depPath of step.missing) { + logger_1.logger.debug({ message: `No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}` }); + } + return currentShouldBeBuilt; } - function u8Concat(parts) { - var len = 0; - for (var i = 0; i < parts.length; i++) { - if (typeof parts[i] === "string") { - parts[i] = bufferFrom(parts[i]); + var limitLinking = (0, p_limit_12.default)(16); + async function _rebuild(ctx, opts) { + const pkgsThatWereRebuilt = /* @__PURE__ */ new Set(); + const graph = /* @__PURE__ */ new Map(); + const pkgSnapshots = ctx.currentLockfile.packages ?? {}; + const nodesToBuildAndTransitive = /* @__PURE__ */ new Set(); + getSubgraphToBuild((0, lockfile_walker_1.lockfileWalker)(ctx.currentLockfile, Object.values(ctx.projects).map(({ id }) => id), { + include: { + dependencies: opts.production, + devDependencies: opts.development, + optionalDependencies: opts.optional } - len += parts[i].length; + }).step, nodesToBuildAndTransitive, { pkgsToRebuild: ctx.pkgsToRebuild }); + const nodesToBuildAndTransitiveArray = Array.from(nodesToBuildAndTransitive); + for (const depPath of nodesToBuildAndTransitiveArray) { + const pkgSnapshot = pkgSnapshots[depPath]; + graph.set(depPath, Object.entries({ ...pkgSnapshot.dependencies, ...pkgSnapshot.optionalDependencies }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((childRelDepPath) => childRelDepPath && nodesToBuildAndTransitive.has(childRelDepPath))); } - var u8 = new U8(len); - for (var i = 0, offset = 0; i < parts.length; i++) { - var part = parts[i]; - for (var j = 0; j < part.length; j++) { - u8[offset++] = part[j]; + const graphSequencerResult = (0, graph_sequencer_1.default)({ + graph, + groups: [nodesToBuildAndTransitiveArray] + }); + const chunks = graphSequencerResult.chunks; + const warn = (message2) => { + logger_1.logger.info({ message: message2, prefix: opts.dir }); + }; + const groups = chunks.map((chunk) => chunk.filter((depPath) => ctx.pkgsToRebuild.has(depPath) && !ctx.skipped.has(depPath)).map((depPath) => async () => { + const pkgSnapshot = pkgSnapshots[depPath]; + const pkgInfo = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const pkgRoots = opts.nodeLinker === "hoisted" ? (ctx.modulesFile?.hoistedLocations?.[depPath] ?? []).map((hoistedLocation) => path_1.default.join(opts.lockfileDir, hoistedLocation)) : [path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath), "node_modules", pkgInfo.name)]; + if (pkgRoots.length === 0) { + if (pkgSnapshot.optional) + return; + throw new error_1.PnpmError("MISSING_HOISTED_LOCATIONS", `${depPath} is not found in hoistedLocations inside node_modules/.modules.yaml`, { + hint: 'If you installed your node_modules with pnpm older than v7.19.0, you may need to remove it and run "pnpm install"' + }); } - } - return u8; + const pkgRoot = pkgRoots[0]; + try { + const extraBinPaths = ctx.extraBinPaths; + if (opts.nodeLinker !== "hoisted") { + const modules = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath), "node_modules"); + const binPath = path_1.default.join(pkgRoot, "node_modules", ".bin"); + await (0, link_bins_1.linkBins)(modules, binPath, { extraNodePaths: ctx.extraNodePaths, warn }); + } else { + extraBinPaths.push(...binDirsInAllParentDirs(pkgRoot, opts.lockfileDir)); + } + await (0, lifecycle_1.runPostinstallHooks)({ + depPath, + extraBinPaths, + extraEnv: opts.extraEnv, + optional: pkgSnapshot.optional === true, + pkgRoot, + rawConfig: opts.rawConfig, + rootModulesDir: ctx.rootModulesDir, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + shellEmulator: opts.shellEmulator, + unsafePerm: opts.unsafePerm || false + }); + pkgsThatWereRebuilt.add(depPath); + } catch (err) { + if (pkgSnapshot.optional) { + core_loggers_1.skippedOptionalDependencyLogger.debug({ + details: err.toString(), + package: { + id: pkgSnapshot.id ?? depPath, + name: pkgInfo.name, + version: pkgInfo.version + }, + prefix: opts.dir, + reason: "build_failure" + }); + return; + } + throw err; + } + if (pkgRoots.length > 1) { + await (0, fs_hard_link_dir_1.hardLinkDir)(pkgRoot, pkgRoots.slice(1)); + } + })); + await (0, run_groups_1.default)(opts.childConcurrency || 5, groups); + await Promise.all(Object.keys(pkgSnapshots).filter((depPath) => !(0, lockfile_utils_1.packageIsIndependent)(pkgSnapshots[depPath])).map(async (depPath) => limitLinking(async () => { + const pkgSnapshot = pkgSnapshots[depPath]; + const pkgInfo = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const modules = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath), "node_modules"); + const binPath = path_1.default.join(modules, pkgInfo.name, "node_modules", ".bin"); + return (0, link_bins_1.linkBins)(modules, binPath, { warn }); + }))); + await Promise.all(Object.values(ctx.projects).map(async ({ rootDir }) => limitLinking(async () => { + const modules = path_1.default.join(rootDir, "node_modules"); + const binPath = path_1.default.join(modules, ".bin"); + return (0, link_bins_1.linkBins)(modules, binPath, { + allowExoticManifests: true, + warn + }); + }))); + return pkgsThatWereRebuilt; + } + function binDirsInAllParentDirs(pkgRoot, lockfileDir) { + const binDirs = []; + let dir = pkgRoot; + do { + if (!path_1.default.dirname(dir).startsWith("@")) { + binDirs.push(path_1.default.join(dir, "node_modules/.bin")); + } + dir = path_1.default.dirname(dir); + } while (path_1.default.relative(dir, lockfileDir) !== ""); + binDirs.push(path_1.default.join(lockfileDir, "node_modules/.bin")); + return binDirs; } } }); -// ../cafs/lib/parseJson.js -var require_parseJson = __commonJS({ - "../cafs/lib/parseJson.js"(exports2) { +// ../workspace/sort-packages/lib/index.js +var require_lib110 = __commonJS({ + "../workspace/sort-packages/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseJsonStream = exports2.parseJsonBuffer = void 0; - var concat_stream_1 = __importDefault(require_concat_stream()); - var strip_bom_1 = __importDefault(require_strip_bom()); - function parseJsonBuffer(buffer, deferred) { - try { - deferred.resolve(JSON.parse(strip_bom_1.default(buffer.toString()))); - } catch (err) { - deferred.reject(err); - } + exports2.sortPackages = exports2.sequenceGraph = void 0; + var graph_sequencer_1 = __importDefault4(require_graph_sequencer()); + function sequenceGraph(pkgGraph) { + const keys = Object.keys(pkgGraph); + const setOfKeys = new Set(keys); + const graph = new Map(keys.map((pkgPath) => [ + pkgPath, + pkgGraph[pkgPath].dependencies.filter( + /* remove cycles of length 1 (ie., package 'a' depends on 'a'). They + confuse the graph-sequencer, but can be ignored when ordering packages + topologically. + + See the following example where 'b' and 'c' depend on themselves: + + graphSequencer({graph: new Map([ + ['a', ['b', 'c']], + ['b', ['b']], + ['c', ['b', 'c']]] + ), + groups: [['a', 'b', 'c']]}) + + returns chunks: + + [['b'],['a'],['c']] + + But both 'b' and 'c' should be executed _before_ 'a', because 'a' depends on + them. It works (and is considered 'safe' if we run:) + + graphSequencer({graph: new Map([ + ['a', ['b', 'c']], + ['b', []], + ['c', ['b']]] + ), groups: [['a', 'b', 'c']]}) + + returning: + + [['b'], ['c'], ['a']] + + */ + (d) => d !== pkgPath && /* remove unused dependencies that we can ignore due to a filter expression. + + Again, the graph sequencer used to behave weirdly in the following edge case: + + graphSequencer({graph: new Map([ + ['a', ['b', 'c']], + ['d', ['a']], + ['e', ['a', 'b', 'c']]] + ), + groups: [['a', 'e', 'e']]}) + + returns chunks: + + [['d'],['a'],['e']] + + But we really want 'a' to be executed first. + */ + setOfKeys.has(d) + ) + ])); + return (0, graph_sequencer_1.default)({ + graph, + groups: [keys] + }); } - exports2.parseJsonBuffer = parseJsonBuffer; - function parseJsonStream(stream, deferred) { - stream.pipe(concat_stream_1.default((buffer) => parseJsonBuffer(buffer, deferred))); + exports2.sequenceGraph = sequenceGraph; + function sortPackages(pkgGraph) { + const graphSequencerResult = sequenceGraph(pkgGraph); + return graphSequencerResult.chunks; } - exports2.parseJsonStream = parseJsonStream; + exports2.sortPackages = sortPackages; } }); -// ../cafs/lib/addFilesFromDir.js -var require_addFilesFromDir = __commonJS({ - "../cafs/lib/addFilesFromDir.js"(exports2) { +// ../exec/plugin-commands-rebuild/lib/recursive.js +var require_recursive = __commonJS({ + "../exec/plugin-commands-rebuild/lib/recursive.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var graceful_fs_1 = __importDefault(require_lib18()); - var p_limit_1 = __importDefault(require_p_limit()); - var parseJson_1 = require_parseJson(); - var limit = p_limit_1.default(20); - var MAX_BULK_SIZE = 1 * 1024 * 1024; - async function default_1(cafs, dirname, manifest) { - const index = {}; - await _retrieveFileIntegrities(cafs, dirname, dirname, index, manifest); - return index; - } - exports2.default = default_1; - async function _retrieveFileIntegrities(cafs, rootDir, currDir, index, deferredManifest) { - try { - const files = await fs_1.promises.readdir(currDir); - await Promise.all(files.map(async (file) => { - const fullPath = path_1.default.join(currDir, file); - const stat = await fs_1.promises.stat(fullPath); - if (stat.isDirectory()) { - await _retrieveFileIntegrities(cafs, rootDir, fullPath, index); - return; + exports2.recursiveRebuild = void 0; + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var find_workspace_packages_1 = require_lib29(); + var logger_1 = require_lib6(); + var sort_packages_1 = require_lib110(); + var store_connection_manager_1 = require_lib106(); + var mem_1 = __importDefault4(require_dist4()); + var p_limit_12 = __importDefault4(require_p_limit()); + var implementation_1 = require_implementation2(); + async function recursiveRebuild(allProjects, params, opts) { + if (allProjects.length === 0) { + return; + } + const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); + if (pkgs.length === 0) { + return; + } + const manifestsByPath = {}; + for (const { dir, manifest, writeProjectManifest } of pkgs) { + manifestsByPath[dir] = { manifest, writeProjectManifest }; + } + const throwOnFail = cli_utils_1.throwOnCommandFail.bind(null, "pnpm recursive rebuild"); + const chunks = opts.sort !== false ? (0, sort_packages_1.sortPackages)(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const workspacePackages = (0, find_workspace_packages_1.arrayOfWorkspacePackagesToMap)(allProjects); + const rebuildOpts = Object.assign(opts, { + ownLifecycleHooksStdio: "pipe", + pruneLockfileImporters: (opts.ignoredPackages == null || opts.ignoredPackages.size === 0) && pkgs.length === allProjects.length, + storeController: store.ctrl, + storeDir: store.dir, + workspacePackages + }); + const result2 = {}; + const memReadLocalConfig = (0, mem_1.default)(config_1.readLocalConfig); + async function getImporters() { + const importers = []; + await Promise.all(chunks.map(async (prefixes, buildIndex) => { + if (opts.ignoredPackages != null) { + prefixes = prefixes.filter((prefix) => !opts.ignoredPackages.has(prefix)); } - if (stat.isFile()) { - const relativePath = path_1.default.relative(rootDir, fullPath); - const writeResult = limit(async () => { - if (deferredManifest != null && rootDir === currDir && file === "package.json") { - const buffer = await graceful_fs_1.default.readFile(fullPath); - parseJson_1.parseJsonBuffer(buffer, deferredManifest); - return cafs.addBuffer(buffer, stat.mode); + return Promise.all(prefixes.map(async (prefix) => { + importers.push({ + buildIndex, + manifest: manifestsByPath[prefix].manifest, + rootDir: prefix + }); + })); + })); + return importers; + } + const rebuild = params.length === 0 ? implementation_1.rebuildProjects : (importers, opts2) => (0, implementation_1.rebuildSelectedPkgs)(importers, params, opts2); + if (opts.lockfileDir) { + const importers = await getImporters(); + await rebuild(importers, { + ...rebuildOpts, + pending: opts.pending === true + }); + return; + } + const limitRebuild = (0, p_limit_12.default)(opts.workspaceConcurrency ?? 4); + for (const chunk of chunks) { + await Promise.all(chunk.map(async (rootDir) => limitRebuild(async () => { + try { + if (opts.ignoredPackages?.has(rootDir)) { + return; + } + result2[rootDir] = { status: "running" }; + const localConfig = await memReadLocalConfig(rootDir); + await rebuild([ + { + buildIndex: 0, + manifest: manifestsByPath[rootDir].manifest, + rootDir } - if (stat.size < MAX_BULK_SIZE) { - const buffer = await graceful_fs_1.default.readFile(fullPath); - return cafs.addBuffer(buffer, stat.mode); + ], { + ...rebuildOpts, + ...localConfig, + dir: rootDir, + pending: opts.pending === true, + rawConfig: { + ...rebuildOpts.rawConfig, + ...localConfig } - return cafs.addStream(graceful_fs_1.default.createReadStream(fullPath), stat.mode); }); - index[relativePath] = { - mode: stat.mode, - size: stat.size, - writeResult - }; + result2[rootDir].status = "passed"; + } catch (err) { + logger_1.logger.info(err); + if (!opts.bail) { + result2[rootDir] = { + status: "failure", + error: err, + message: err.message, + prefix: rootDir + }; + return; + } + err["prefix"] = rootDir; + throw err; } - })); - } catch (err) { - if (err.code !== "ENOENT") { - throw err; - } + }))); } + throwOnFail(result2); } + exports2.recursiveRebuild = recursiveRebuild; } }); -// ../../node_modules/.pnpm/through@2.3.8/node_modules/through/index.js -var require_through = __commonJS({ - "../../node_modules/.pnpm/through@2.3.8/node_modules/through/index.js"(exports2, module2) { - var Stream = require("stream"); - exports2 = module2.exports = through; - through.through = through; - function through(write, end, opts) { - write = write || function(data) { - this.queue(data); - }; - end = end || function() { - this.queue(null); +// ../exec/plugin-commands-rebuild/lib/rebuild.js +var require_rebuild = __commonJS({ + "../exec/plugin-commands-rebuild/lib/rebuild.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var store_connection_manager_1 = require_lib106(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var implementation_1 = require_implementation2(); + var recursive_1 = require_recursive(); + function rcOptionsTypes() { + return { + ...(0, pick_1.default)([ + "npm-path", + "reporter", + "scripts-prepend-node-path", + "unsafe-perm", + "store-dir" + ], config_1.types) }; - var ended = false, destroyed = false, buffer = [], _ended = false; - var stream = new Stream(); - stream.readable = stream.writable = true; - stream.paused = false; - stream.autoDestroy = !(opts && opts.autoDestroy === false); - stream.write = function(data) { - write.call(this, data); - return !stream.paused; + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + ...rcOptionsTypes(), + pending: Boolean, + recursive: Boolean }; - function drain() { - while (buffer.length && !stream.paused) { - var data = buffer.shift(); - if (data === null) - return stream.emit("end"); - else - stream.emit("data", data); + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["rebuild", "rb"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["rb"], + description: "Rebuild a package.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Rebuild every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: "Rebuild packages that were not build during installation. Packages are not build when installing with the --ignore-scripts flag", + name: "--pending" + }, + { + description: "The directory in which all the packages are saved on the disk", + name: "--store-dir " + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("rebuild"), + usages: ["pnpm rebuild [ ...]"] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { + await (0, recursive_1.recursiveRebuild)(opts.allProjects, params, { ...opts, selectedProjectsGraph: opts.selectedProjectsGraph, workspaceDir: opts.workspaceDir }); + return; + } + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const rebuildOpts = Object.assign(opts, { + sideEffectsCacheRead: opts.sideEffectsCache ?? opts.sideEffectsCacheReadonly, + sideEffectsCacheWrite: opts.sideEffectsCache, + storeController: store.ctrl, + storeDir: store.dir + }); + if (params.length === 0) { + await (0, implementation_1.rebuildProjects)([ + { + buildIndex: 0, + manifest: await (0, cli_utils_1.readProjectManifestOnly)(rebuildOpts.dir, opts), + rootDir: rebuildOpts.dir + } + ], rebuildOpts); + return; + } + await (0, implementation_1.rebuildSelectedPkgs)([ + { + buildIndex: 0, + manifest: await (0, cli_utils_1.readProjectManifestOnly)(rebuildOpts.dir, opts), + rootDir: rebuildOpts.dir } + ], params, rebuildOpts); + } + exports2.handler = handler; + } +}); + +// ../exec/plugin-commands-rebuild/lib/index.js +var require_lib111 = __commonJS({ + "../exec/plugin-commands-rebuild/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - stream.queue = stream.push = function(data) { - if (_ended) - return stream; - if (data === null) - _ended = true; - buffer.push(data); - drain(); - return stream; - }; - stream.on("end", function() { - stream.readable = false; - if (!stream.writable && stream.autoDestroy) - process.nextTick(function() { - stream.destroy(); - }); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.rebuildSelectedPkgs = exports2.rebuildProjects = exports2.rebuild = void 0; + var rebuild = __importStar5(require_rebuild()); + exports2.rebuild = rebuild; + var implementation_1 = require_implementation2(); + Object.defineProperty(exports2, "rebuildProjects", { enumerable: true, get: function() { + return implementation_1.rebuildProjects; + } }); + Object.defineProperty(exports2, "rebuildSelectedPkgs", { enumerable: true, get: function() { + return implementation_1.rebuildSelectedPkgs; + } }); + } +}); + +// ../packages/calc-dep-state/lib/index.js +var require_lib112 = __commonJS({ + "../packages/calc-dep-state/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.calcDepState = void 0; + var constants_1 = require_lib7(); + var sort_keys_1 = __importDefault4(require_sort_keys()); + function calcDepState(depsGraph, cache, depPath, opts) { + let result2 = constants_1.ENGINE_NAME; + if (opts.isBuilt) { + const depStateObj = calcDepStateObj(depPath, depsGraph, cache, /* @__PURE__ */ new Set()); + result2 += `-${JSON.stringify(depStateObj)}`; + } + if (opts.patchFileHash) { + result2 += `-${opts.patchFileHash}`; + } + return result2; + } + exports2.calcDepState = calcDepState; + function calcDepStateObj(depPath, depsGraph, cache, parents) { + if (cache[depPath]) + return cache[depPath]; + const node = depsGraph[depPath]; + if (!node) + return {}; + const nextParents = /* @__PURE__ */ new Set([...Array.from(parents), node.depPath]); + const state = {}; + for (const childId of Object.values(node.children)) { + const child = depsGraph[childId]; + if (!child) + continue; + if (parents.has(child.depPath)) { + state[child.depPath] = {}; + continue; + } + state[child.depPath] = calcDepStateObj(childId, depsGraph, cache, nextParents); + } + cache[depPath] = (0, sort_keys_1.default)(state); + return cache[depPath]; + } + } +}); + +// ../node_modules/.pnpm/slash@2.0.0/node_modules/slash/index.js +var require_slash2 = __commonJS({ + "../node_modules/.pnpm/slash@2.0.0/node_modules/slash/index.js"(exports2, module2) { + "use strict"; + module2.exports = (input) => { + const isExtendedLengthPath = /^\\\\\?\\/.test(input); + const hasNonAscii = /[^\u0000-\u0080]+/.test(input); + if (isExtendedLengthPath || hasNonAscii) { + return input; + } + return input.replace(/\\/g, "/"); + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/path.js +var require_path6 = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/path.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.relative = exports2.resolve = exports2.dirname = exports2.join = void 0; + var slash_1 = __importDefault4(require_slash2()); + var path_1 = __importDefault4(require("path")); + var join = (...args2) => slash_1.default(path_1.default.join(...args2)); + exports2.join = join; + var path_2 = require("path"); + Object.defineProperty(exports2, "dirname", { enumerable: true, get: function() { + return path_2.dirname; + } }); + var resolve = (...args2) => slash_1.default(path_1.default.resolve(...args2)); + exports2.resolve = resolve; + var relative2 = (...args2) => slash_1.default(path_1.default.relative(...args2)); + exports2.relative = relative2; + } +}); + +// ../node_modules/.pnpm/klaw-sync@6.0.0/node_modules/klaw-sync/klaw-sync.js +var require_klaw_sync = __commonJS({ + "../node_modules/.pnpm/klaw-sync@6.0.0/node_modules/klaw-sync/klaw-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + function klawSync(dir, opts, ls) { + if (!ls) { + ls = []; + dir = path2.resolve(dir); + opts = opts || {}; + opts.fs = opts.fs || fs2; + if (opts.depthLimit > -1) + opts.rootDepth = dir.split(path2.sep).length + 1; + } + const paths = opts.fs.readdirSync(dir).map((p) => dir + path2.sep + p); + for (var i = 0; i < paths.length; i += 1) { + const pi = paths[i]; + const st = opts.fs.statSync(pi); + const item = { path: pi, stats: st }; + const isUnderDepthLimit = !opts.rootDepth || pi.split(path2.sep).length - opts.rootDepth < opts.depthLimit; + const filterResult = opts.filter ? opts.filter(item) : true; + const isDir = st.isDirectory(); + const shouldAdd = filterResult && (isDir ? !opts.nodir : !opts.nofile); + const shouldTraverse = isDir && isUnderDepthLimit && (opts.traverseAll || filterResult); + if (shouldAdd) + ls.push(item); + if (shouldTraverse) + ls = klawSync(pi, opts, ls); + } + return ls; + } + module2.exports = klawSync; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patchFs.js +var require_patchFs2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patchFs.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPatchFiles = void 0; + var path_1 = require_path6(); + var klaw_sync_1 = __importDefault4(require_klaw_sync()); + var getPatchFiles = (patchesDir) => { + try { + return klaw_sync_1.default(patchesDir, { nodir: true }).map(({ path: path2 }) => path_1.relative(patchesDir, path2)).filter((path2) => path2.endsWith(".patch")); + } catch (e) { + return []; + } + }; + exports2.getPatchFiles = getPatchFiles; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/fs/index.js +var require_fs8 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/fs/index.js"(exports2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var api = [ + "access", + "appendFile", + "chmod", + "chown", + "close", + "copyFile", + "fchmod", + "fchown", + "fdatasync", + "fstat", + "fsync", + "ftruncate", + "futimes", + "lchmod", + "lchown", + "link", + "lstat", + "mkdir", + "mkdtemp", + "open", + "opendir", + "readdir", + "readFile", + "readlink", + "realpath", + "rename", + "rm", + "rmdir", + "stat", + "symlink", + "truncate", + "unlink", + "utimes", + "writeFile" + ].filter((key) => { + return typeof fs2[key] === "function"; + }); + Object.keys(fs2).forEach((key) => { + if (key === "promises") { + return; + } + exports2[key] = fs2[key]; + }); + api.forEach((method) => { + exports2[method] = u(fs2[method]); + }); + exports2.exists = function(filename, callback) { + if (typeof callback === "function") { + return fs2.exists(filename, callback); + } + return new Promise((resolve) => { + return fs2.exists(filename, resolve); }); - function _end() { - stream.writable = false; - end.call(stream); - if (!stream.readable && stream.autoDestroy) - stream.destroy(); + }; + exports2.read = function(fd, buffer, offset, length, position, callback) { + if (typeof callback === "function") { + return fs2.read(fd, buffer, offset, length, position, callback); } - stream.end = function(data) { - if (ended) - return; - ended = true; - if (arguments.length) - stream.write(data); - _end(); - return stream; - }; - stream.destroy = function() { - if (destroyed) - return; - destroyed = true; - ended = true; - buffer.length = 0; - stream.writable = stream.readable = false; - stream.emit("close"); - return stream; - }; - stream.pause = function() { - if (stream.paused) - return; - stream.paused = true; - return stream; - }; - stream.resume = function() { - if (stream.paused) { - stream.paused = false; - stream.emit("resume"); + return new Promise((resolve, reject) => { + fs2.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => { + if (err) + return reject(err); + resolve({ bytesRead, buffer: buffer2 }); + }); + }); + }; + exports2.write = function(fd, buffer, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.write(fd, buffer, ...args2); + } + return new Promise((resolve, reject) => { + fs2.write(fd, buffer, ...args2, (err, bytesWritten, buffer2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffer: buffer2 }); + }); + }); + }; + if (typeof fs2.writev === "function") { + exports2.writev = function(fd, buffers, ...args2) { + if (typeof args2[args2.length - 1] === "function") { + return fs2.writev(fd, buffers, ...args2); } - drain(); - if (!stream.paused) - stream.emit("drain"); - return stream; + return new Promise((resolve, reject) => { + fs2.writev(fd, buffers, ...args2, (err, bytesWritten, buffers2) => { + if (err) + return reject(err); + resolve({ bytesWritten, buffers: buffers2 }); + }); + }); }; - return stream; + } + if (typeof fs2.realpath.native === "function") { + exports2.realpath.native = u(fs2.realpath.native); } } }); -// ../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bzip2.js -var require_bzip2 = __commonJS({ - "../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bzip2.js"(exports2, module2) { - function Bzip2Error(message3) { - this.name = "Bzip2Error"; - this.message = message3; - this.stack = new Error().stack; - } - Bzip2Error.prototype = new Error(); - var message2 = { - Error: function(message3) { - throw new Bzip2Error(message3); - } +// ../node_modules/.pnpm/at-least-node@1.0.0/node_modules/at-least-node/index.js +var require_at_least_node = __commonJS({ + "../node_modules/.pnpm/at-least-node@1.0.0/node_modules/at-least-node/index.js"(exports2, module2) { + module2.exports = (r) => { + const n = process.versions.node.split(".").map((x) => parseInt(x, 10)); + r = r.split(".").map((x) => parseInt(x, 10)); + return n[0] > r[0] || n[0] === r[0] && (n[1] > r[1] || n[1] === r[1] && n[2] >= r[2]); }; - var bzip2 = {}; - bzip2.Bzip2Error = Bzip2Error; - bzip2.crcTable = [ - 0, - 79764919, - 159529838, - 222504665, - 319059676, - 398814059, - 445009330, - 507990021, - 638119352, - 583659535, - 797628118, - 726387553, - 890018660, - 835552979, - 1015980042, - 944750013, - 1276238704, - 1221641927, - 1167319070, - 1095957929, - 1595256236, - 1540665371, - 1452775106, - 1381403509, - 1780037320, - 1859660671, - 1671105958, - 1733955601, - 2031960084, - 2111593891, - 1889500026, - 1952343757, - 2552477408, - 2632100695, - 2443283854, - 2506133561, - 2334638140, - 2414271883, - 2191915858, - 2254759653, - 3190512472, - 3135915759, - 3081330742, - 3009969537, - 2905550212, - 2850959411, - 2762807018, - 2691435357, - 3560074640, - 3505614887, - 3719321342, - 3648080713, - 3342211916, - 3287746299, - 3467911202, - 3396681109, - 4063920168, - 4143685023, - 4223187782, - 4286162673, - 3779000052, - 3858754371, - 3904687514, - 3967668269, - 881225847, - 809987520, - 1023691545, - 969234094, - 662832811, - 591600412, - 771767749, - 717299826, - 311336399, - 374308984, - 453813921, - 533576470, - 25881363, - 88864420, - 134795389, - 214552010, - 2023205639, - 2086057648, - 1897238633, - 1976864222, - 1804852699, - 1867694188, - 1645340341, - 1724971778, - 1587496639, - 1516133128, - 1461550545, - 1406951526, - 1302016099, - 1230646740, - 1142491917, - 1087903418, - 2896545431, - 2825181984, - 2770861561, - 2716262478, - 3215044683, - 3143675388, - 3055782693, - 3001194130, - 2326604591, - 2389456536, - 2200899649, - 2280525302, - 2578013683, - 2640855108, - 2418763421, - 2498394922, - 3769900519, - 3832873040, - 3912640137, - 3992402750, - 4088425275, - 4151408268, - 4197601365, - 4277358050, - 3334271071, - 3263032808, - 3476998961, - 3422541446, - 3585640067, - 3514407732, - 3694837229, - 3640369242, - 1762451694, - 1842216281, - 1619975040, - 1682949687, - 2047383090, - 2127137669, - 1938468188, - 2001449195, - 1325665622, - 1271206113, - 1183200824, - 1111960463, - 1543535498, - 1489069629, - 1434599652, - 1363369299, - 622672798, - 568075817, - 748617968, - 677256519, - 907627842, - 853037301, - 1067152940, - 995781531, - 51762726, - 131386257, - 177728840, - 240578815, - 269590778, - 349224269, - 429104020, - 491947555, - 4046411278, - 4126034873, - 4172115296, - 4234965207, - 3794477266, - 3874110821, - 3953728444, - 4016571915, - 3609705398, - 3555108353, - 3735388376, - 3664026991, - 3290680682, - 3236090077, - 3449943556, - 3378572211, - 3174993278, - 3120533705, - 3032266256, - 2961025959, - 2923101090, - 2868635157, - 2813903052, - 2742672763, - 2604032198, - 2683796849, - 2461293480, - 2524268063, - 2284983834, - 2364738477, - 2175806836, - 2238787779, - 1569362073, - 1498123566, - 1409854455, - 1355396672, - 1317987909, - 1246755826, - 1192025387, - 1137557660, - 2072149281, - 2135122070, - 1912620623, - 1992383480, - 1753615357, - 1816598090, - 1627664531, - 1707420964, - 295390185, - 358241886, - 404320391, - 483945776, - 43990325, - 106832002, - 186451547, - 266083308, - 932423249, - 861060070, - 1041341759, - 986742920, - 613929101, - 542559546, - 756411363, - 701822548, - 3316196985, - 3244833742, - 3425377559, - 3370778784, - 3601682597, - 3530312978, - 3744426955, - 3689838204, - 3819031489, - 3881883254, - 3928223919, - 4007849240, - 4037393693, - 4100235434, - 4180117107, - 4259748804, - 2310601993, - 2373574846, - 2151335527, - 2231098320, - 2596047829, - 2659030626, - 2470359227, - 2550115596, - 2947551409, - 2876312838, - 2788305887, - 2733848168, - 3165939309, - 3094707162, - 3040238851, - 2985771188 - ]; - bzip2.array = function(bytes) { - var bit = 0, byte = 0; - var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255]; - return function(n) { - var result = 0; - while (n > 0) { - var left = 8 - bit; - if (n >= left) { - result <<= left; - result |= BITMASK[left] & bytes[byte++]; - bit = 0; - n -= left; - } else { - result <<= n; - result |= (bytes[byte] & BITMASK[n] << 8 - n - bit) >> 8 - n - bit; - bit += n; - n = 0; - } + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js +var require_make_dir4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs8(); + var path2 = require("path"); + var atLeastNode = require_at_least_node(); + var useNativeRecursiveOption = atLeastNode("10.12.0"); + var checkPath = (pth) => { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path2.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; } - return result; - }; + } }; - bzip2.simple = function(srcbuffer, stream) { - var bits = bzip2.array(srcbuffer); - var size = bzip2.header(bits); - var ret = false; - var bufsize = 1e5 * size; - var buf = new Int32Array(bufsize); - do { - ret = bzip2.decompress(bits, stream, buf, bufsize); - } while (!ret); + var processOptions = (options) => { + const defaults = { mode: 511 }; + if (typeof options === "number") + options = { mode: options }; + return { ...defaults, ...options }; }; - bzip2.header = function(bits) { - this.byteCount = new Int32Array(256); - this.symToByte = new Uint8Array(256); - this.mtfSymbol = new Int32Array(256); - this.selectors = new Uint8Array(32768); - if (bits(8 * 3) != 4348520) - message2.Error("No magic number found"); - var i = bits(8) - 48; - if (i < 1 || i > 9) - message2.Error("Not a BZIP archive"); - return i; + var permissionError = (pth) => { + const error = new Error(`operation not permitted, mkdir '${pth}'`); + error.code = "EPERM"; + error.errno = -4048; + error.path = pth; + error.syscall = "mkdir"; + return error; }; - bzip2.decompress = function(bits, stream, buf, bufsize, streamCRC) { - var MAX_HUFCODE_BITS = 20; - var MAX_SYMBOLS = 258; - var SYMBOL_RUNA = 0; - var SYMBOL_RUNB = 1; - var GROUP_SIZE = 50; - var crc = 0 ^ -1; - for (var h = "", i = 0; i < 6; i++) - h += bits(8).toString(16); - if (h == "177245385090") { - var finalCRC = bits(32) | 0; - if (finalCRC !== streamCRC) - message2.Error("Error in bzip2: crc32 do not match"); - bits(null); - return null; + module2.exports.makeDir = async (input, options) => { + checkPath(input); + options = processOptions(options); + if (useNativeRecursiveOption) { + const pth = path2.resolve(input); + return fs2.mkdir(pth, { + mode: options.mode, + recursive: true + }); } - if (h != "314159265359") - message2.Error("eek not valid bzip data"); - var crcblock = bits(32) | 0; - if (bits(1)) - message2.Error("unsupported obsolete version"); - var origPtr = bits(24); - if (origPtr > bufsize) - message2.Error("Initial position larger than buffer size"); - var t = bits(16); - var symTotal = 0; - for (i = 0; i < 16; i++) { - if (t & 1 << 15 - i) { - var k = bits(16); - for (j = 0; j < 16; j++) { - if (k & 1 << 15 - j) { - this.symToByte[symTotal++] = 16 * i + j; + const make = async (pth) => { + try { + await fs2.mkdir(pth, options.mode); + } catch (error) { + if (error.code === "EPERM") { + throw error; + } + if (error.code === "ENOENT") { + if (path2.dirname(pth) === pth) { + throw permissionError(pth); + } + if (error.message.includes("null bytes")) { + throw error; } + await make(path2.dirname(pth)); + return make(pth); + } + try { + const stats = await fs2.stat(pth); + if (!stats.isDirectory()) { + throw new Error("The path is not a directory"); + } + } catch { + throw error; } } + }; + return make(path2.resolve(input)); + }; + module2.exports.makeDirSync = (input, options) => { + checkPath(input); + options = processOptions(options); + if (useNativeRecursiveOption) { + const pth = path2.resolve(input); + return fs2.mkdirSync(pth, { + mode: options.mode, + recursive: true + }); } - var groupCount = bits(3); - if (groupCount < 2 || groupCount > 6) - message2.Error("another error"); - var nSelectors = bits(15); - if (nSelectors == 0) - message2.Error("meh"); - for (var i = 0; i < groupCount; i++) - this.mtfSymbol[i] = i; - for (var i = 0; i < nSelectors; i++) { - for (var j = 0; bits(1); j++) - if (j >= groupCount) - message2.Error("whoops another error"); - var uc = this.mtfSymbol[j]; - for (var k = j - 1; k >= 0; k--) { - this.mtfSymbol[k + 1] = this.mtfSymbol[k]; - } - this.mtfSymbol[0] = uc; - this.selectors[i] = uc; - } - var symCount = symTotal + 2; - var groups = []; - var length = new Uint8Array(MAX_SYMBOLS), temp = new Uint16Array(MAX_HUFCODE_BITS + 1); - var hufGroup; - for (var j = 0; j < groupCount; j++) { - t = bits(5); - for (var i = 0; i < symCount; i++) { - while (true) { - if (t < 1 || t > MAX_HUFCODE_BITS) - message2.Error("I gave up a while ago on writing error messages"); - if (!bits(1)) - break; - if (!bits(1)) - t++; - else - t--; + const make = (pth) => { + try { + fs2.mkdirSync(pth, options.mode); + } catch (error) { + if (error.code === "EPERM") { + throw error; + } + if (error.code === "ENOENT") { + if (path2.dirname(pth) === pth) { + throw permissionError(pth); + } + if (error.message.includes("null bytes")) { + throw error; + } + make(path2.dirname(pth)); + return make(pth); + } + try { + if (!fs2.statSync(pth).isDirectory()) { + throw new Error("The path is not a directory"); + } + } catch { + throw error; } - length[i] = t; } - var minLen, maxLen; - minLen = maxLen = length[0]; - for (var i = 1; i < symCount; i++) { - if (length[i] > maxLen) - maxLen = length[i]; - else if (length[i] < minLen) - minLen = length[i]; + }; + return make(path2.resolve(input)); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/mkdirs/index.js +var require_mkdirs3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var { makeDir: _makeDir, makeDirSync } = require_make_dir4(); + var makeDir = u(_makeDir); + module2.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/util/utimes.js +var require_utimes3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + function utimesMillis(path2, atime, mtime, callback) { + fs2.open(path2, "r+", (err, fd) => { + if (err) + return callback(err); + fs2.futimes(fd, atime, mtime, (futimesErr) => { + fs2.close(fd, (closeErr) => { + if (callback) + callback(futimesErr || closeErr); + }); + }); + }); + } + function utimesMillisSync(path2, atime, mtime) { + const fd = fs2.openSync(path2, "r+"); + fs2.futimesSync(fd, atime, mtime); + return fs2.closeSync(fd); + } + module2.exports = { + utimesMillis, + utimesMillisSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/util/stat.js +var require_stat3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) { + "use strict"; + var fs2 = require_fs8(); + var path2 = require("path"); + var util = require("util"); + var atLeastNode = require_at_least_node(); + var nodeSupportsBigInt = atLeastNode("10.5.0"); + var stat = (file) => nodeSupportsBigInt ? fs2.stat(file, { bigint: true }) : fs2.stat(file); + var statSync = (file) => nodeSupportsBigInt ? fs2.statSync(file, { bigint: true }) : fs2.statSync(file); + function getStats(src, dest) { + return Promise.all([ + stat(src), + stat(dest).catch((err) => { + if (err.code === "ENOENT") + return null; + throw err; + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })); + } + function getStatsSync(src, dest) { + let destStat; + const srcStat = statSync(src); + try { + destStat = statSync(dest); + } catch (err) { + if (err.code === "ENOENT") + return { srcStat, destStat: null }; + throw err; + } + return { srcStat, destStat }; + } + function checkPaths(src, dest, funcName, cb) { + util.callbackify(getStats)(src, dest, (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + if (destStat && areIdentical(srcStat, destStat)) { + return cb(new Error("Source and destination must not be the same.")); } - hufGroup = groups[j] = {}; - hufGroup.permute = new Int32Array(MAX_SYMBOLS); - hufGroup.limit = new Int32Array(MAX_HUFCODE_BITS + 1); - hufGroup.base = new Int32Array(MAX_HUFCODE_BITS + 1); - hufGroup.minLen = minLen; - hufGroup.maxLen = maxLen; - var base = hufGroup.base; - var limit = hufGroup.limit; - var pp = 0; - for (var i = minLen; i <= maxLen; i++) - for (var t = 0; t < symCount; t++) - if (length[t] == i) - hufGroup.permute[pp++] = t; - for (i = minLen; i <= maxLen; i++) - temp[i] = limit[i] = 0; - for (i = 0; i < symCount; i++) - temp[length[i]]++; - pp = t = 0; - for (i = minLen; i < maxLen; i++) { - pp += temp[i]; - limit[i] = pp - 1; - pp <<= 1; - base[i + 1] = pp - (t += temp[i]); + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(errMsg(src, dest, funcName))); } - limit[maxLen] = pp + temp[maxLen] - 1; - base[minLen] = 0; + return cb(null, { srcStat, destStat }); + }); + } + function checkPathsSync(src, dest, funcName) { + const { srcStat, destStat } = getStatsSync(src, dest); + if (destStat && areIdentical(srcStat, destStat)) { + throw new Error("Source and destination must not be the same."); } - for (var i = 0; i < 256; i++) { - this.mtfSymbol[i] = i; - this.byteCount[i] = 0; + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); } - var runPos, count, symCount, selector; - runPos = count = symCount = selector = 0; - while (true) { - if (!symCount--) { - symCount = GROUP_SIZE - 1; - if (selector >= nSelectors) - message2.Error("meow i'm a kitty, that's an error"); - hufGroup = groups[this.selectors[selector++]]; - base = hufGroup.base; - limit = hufGroup.limit; - } - i = hufGroup.minLen; - j = bits(i); - while (true) { - if (i > hufGroup.maxLen) - message2.Error("rawr i'm a dinosaur"); - if (j <= limit[i]) - break; - i++; - j = j << 1 | bits(1); + return { srcStat, destStat }; + } + function checkParentPaths(src, srcStat, dest, funcName, cb) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return cb(); + const callback = (err, destStat) => { + if (err) { + if (err.code === "ENOENT") + return cb(); + return cb(err); } - j -= base[i]; - if (j < 0 || j >= MAX_SYMBOLS) - message2.Error("moo i'm a cow"); - var nextSym = hufGroup.permute[j]; - if (nextSym == SYMBOL_RUNA || nextSym == SYMBOL_RUNB) { - if (!runPos) { - runPos = 1; - t = 0; - } - if (nextSym == SYMBOL_RUNA) - t += runPos; - else - t += 2 * runPos; - runPos <<= 1; - continue; + if (areIdentical(srcStat, destStat)) { + return cb(new Error(errMsg(src, dest, funcName))); } - if (runPos) { - runPos = 0; - if (count + t > bufsize) - message2.Error("Boom."); - uc = this.symToByte[this.mtfSymbol[0]]; - this.byteCount[uc] += t; - while (t--) - buf[count++] = uc; + return checkParentPaths(src, srcStat, destParent, funcName, cb); + }; + if (nodeSupportsBigInt) + fs2.stat(destParent, { bigint: true }, callback); + else + fs2.stat(destParent, callback); + } + function checkParentPathsSync(src, srcStat, dest, funcName) { + const srcParent = path2.resolve(path2.dirname(src)); + const destParent = path2.resolve(path2.dirname(dest)); + if (destParent === srcParent || destParent === path2.parse(destParent).root) + return; + let destStat; + try { + destStat = statSync(destParent); + } catch (err) { + if (err.code === "ENOENT") + return; + throw err; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPathsSync(src, srcStat, destParent, funcName); + } + function areIdentical(srcStat, destStat) { + if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + if (nodeSupportsBigInt || destStat.ino < Number.MAX_SAFE_INTEGER) { + return true; } - if (nextSym > symTotal) - break; - if (count >= bufsize) - message2.Error("I can't think of anything. Error"); - i = nextSym - 1; - uc = this.mtfSymbol[i]; - for (var k = i - 1; k >= 0; k--) { - this.mtfSymbol[k + 1] = this.mtfSymbol[k]; + if (destStat.size === srcStat.size && destStat.mode === srcStat.mode && destStat.nlink === srcStat.nlink && destStat.atimeMs === srcStat.atimeMs && destStat.mtimeMs === srcStat.mtimeMs && destStat.ctimeMs === srcStat.ctimeMs && destStat.birthtimeMs === srcStat.birthtimeMs) { + return true; } - this.mtfSymbol[0] = uc; - uc = this.symToByte[uc]; - this.byteCount[uc]++; - buf[count++] = uc; - } - if (origPtr < 0 || origPtr >= count) - message2.Error("I'm a monkey and I'm throwing something at someone, namely you"); - var j = 0; - for (var i = 0; i < 256; i++) { - k = j + this.byteCount[i]; - this.byteCount[i] = j; - j = k; } - for (var i = 0; i < count; i++) { - uc = buf[i] & 255; - buf[this.byteCount[uc]] |= i << 8; - this.byteCount[uc]++; + return false; + } + function isSrcSubdir(src, dest) { + const srcArr = path2.resolve(src).split(path2.sep).filter((i) => i); + const destArr = path2.resolve(dest).split(path2.sep).filter((i) => i); + return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true); + } + function errMsg(src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`; + } + module2.exports = { + checkPaths, + checkPathsSync, + checkParentPaths, + checkParentPathsSync, + isSrcSubdir + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy-sync/copy-sync.js +var require_copy_sync3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy-sync/copy-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirsSync = require_mkdirs3().mkdirsSync; + var utimesMillisSync = require_utimes3().utimesMillisSync; + var stat = require_stat3(); + function copySync(src, dest, opts) { + if (typeof opts === "function") { + opts = { filter: opts }; } - var pos = 0, current = 0, run = 0; - if (count) { - pos = buf[origPtr]; - current = pos & 255; - pos >>= 8; - run = -1; + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended; + + see https://github.com/jprichardson/node-fs-extra/issues/269`); } - count = count; - var copies, previous, outbyte; - while (count) { - count--; - previous = current; - pos = buf[pos]; - current = pos & 255; - pos >>= 8; - if (run++ == 3) { - copies = current; - outbyte = previous; - current = -1; - } else { - copies = 1; - outbyte = current; + const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy"); + stat.checkParentPathsSync(src, srcStat, dest, "copy"); + return handleFilterAndCopy(destStat, src, dest, opts); + } + function handleFilterAndCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + const destParent = path2.dirname(dest); + if (!fs2.existsSync(destParent)) + mkdirsSync(destParent); + return startCopy(destStat, src, dest, opts); + } + function startCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + return getStats(destStat, src, dest, opts); + } + function getStats(destStat, src, dest, opts) { + const statSync = opts.dereference ? fs2.statSync : fs2.lstatSync; + const srcStat = statSync(src); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts); + } + function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) + return copyFile(srcStat, src, dest, opts); + return mayCopyFile(srcStat, src, dest, opts); + } + function mayCopyFile(srcStat, src, dest, opts) { + if (opts.overwrite) { + fs2.unlinkSync(dest); + return copyFile(srcStat, src, dest, opts); + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + function copyFile(srcStat, src, dest, opts) { + fs2.copyFileSync(src, dest); + if (opts.preserveTimestamps) + handleTimestamps(srcStat.mode, src, dest); + return setDestMode(dest, srcStat.mode); + } + function handleTimestamps(srcMode, src, dest) { + if (fileIsNotWritable(srcMode)) + makeFileWritable(dest, srcMode); + return setDestTimestamps(src, dest); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return setDestMode(dest, srcMode | 128); + } + function setDestMode(dest, srcMode) { + return fs2.chmodSync(dest, srcMode); + } + function setDestTimestamps(src, dest) { + const updatedSrcStat = fs2.statSync(src); + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts); + if (destStat && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + return copyDir(src, dest, opts); + } + function mkDirAndCopy(srcMode, src, dest, opts) { + fs2.mkdirSync(dest); + copyDir(src, dest, opts); + return setDestMode(dest, srcMode); + } + function copyDir(src, dest, opts) { + fs2.readdirSync(src).forEach((item) => copyDirItem(item, src, dest, opts)); + } + function copyDirItem(item, src, dest, opts) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy"); + return startCopy(destStat, srcItem, destItem, opts); + } + function onLink(destStat, src, dest, opts) { + let resolvedSrc = fs2.readlinkSync(src); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs2.symlinkSync(resolvedSrc, dest); + } else { + let resolvedDest; + try { + resolvedDest = fs2.readlinkSync(dest); + } catch (err) { + if (err.code === "EINVAL" || err.code === "UNKNOWN") + return fs2.symlinkSync(resolvedSrc, dest); + throw err; } - while (copies--) { - crc = (crc << 8 ^ this.crcTable[(crc >> 24 ^ outbyte) & 255]) & 4294967295; - stream(outbyte); + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); } - if (current != previous) - run = 0; + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (fs2.statSync(dest).isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + return copyLink(resolvedSrc, dest); } - crc = (crc ^ -1) >>> 0; - if ((crc | 0) != (crcblock | 0)) - message2.Error("Error in bzip2: crc32 do not match"); - streamCRC = (crc ^ (streamCRC << 1 | streamCRC >>> 31)) & 4294967295; - return streamCRC; + } + function copyLink(resolvedSrc, dest) { + fs2.unlinkSync(dest); + return fs2.symlinkSync(resolvedSrc, dest); + } + module2.exports = copySync; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy-sync/index.js +var require_copy_sync4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy-sync/index.js"(exports2, module2) { + "use strict"; + module2.exports = { + copySync: require_copy_sync3() }; - module2.exports = bzip2; } }); -// ../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bit_iterator.js -var require_bit_iterator = __commonJS({ - "../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/lib/bit_iterator.js"(exports2, module2) { - var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255]; - module2.exports = function bitIterator(nextBuffer) { - var bit = 0, byte = 0; - var bytes = nextBuffer(); - var f = function(n) { - if (n === null && bit != 0) { - bit = 0; - byte++; - return; - } - var result = 0; - while (n > 0) { - if (byte >= bytes.length) { - byte = 0; - bytes = nextBuffer(); - } - var left = 8 - bit; - if (bit === 0 && n > 0) - f.bytesRead++; - if (n >= left) { - result <<= left; - result |= BITMASK[left] & bytes[byte++]; - bit = 0; - n -= left; - } else { - result <<= n; - result |= (bytes[byte] & BITMASK[n] << 8 - n - bit) >> 8 - n - bit; - bit += n; - n = 0; - } - } - return result; - }; - f.bytesRead = 0; - return f; +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/path-exists/index.js +var require_path_exists4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs2 = require_fs8(); + function pathExists(path2) { + return fs2.access(path2).then(() => true).catch(() => false); + } + module2.exports = { + pathExists: u(pathExists), + pathExistsSync: fs2.existsSync }; } }); -// ../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/index.js -var require_unbzip2_stream = __commonJS({ - "../../node_modules/.pnpm/unbzip2-stream@1.4.3/node_modules/unbzip2-stream/index.js"(exports2, module2) { - var through = require_through(); - var bz2 = require_bzip2(); - var bitIterator = require_bit_iterator(); - module2.exports = unbzip2Stream; - function unbzip2Stream() { - var bufferQueue = []; - var hasBytes = 0; - var blockSize = 0; - var broken = false; - var done = false; - var bitReader = null; - var streamCRC = null; - function decompressBlock(push) { - if (!blockSize) { - blockSize = bz2.header(bitReader); - streamCRC = 0; - return true; - } else { - var bufsize = 1e5 * blockSize; - var buf = new Int32Array(bufsize); - var chunk = []; - var f = function(b) { - chunk.push(b); - }; - streamCRC = bz2.decompress(bitReader, f, buf, bufsize, streamCRC); - if (streamCRC === null) { - blockSize = 0; - return false; - } else { - push(Buffer.from(chunk)); - return true; - } - } +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy/copy.js +var require_copy4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdirs = require_mkdirs3().mkdirs; + var pathExists = require_path_exists4().pathExists; + var utimesMillis = require_utimes3().utimesMillis; + var stat = require_stat3(); + function copy(src, dest, opts, cb) { + if (typeof opts === "function" && !cb) { + cb = opts; + opts = {}; + } else if (typeof opts === "function") { + opts = { filter: opts }; } - var outlength = 0; - function decompressAndQueue(stream) { - if (broken) - return; - try { - return decompressBlock(function(d) { - stream.queue(d); - if (d !== null) { - outlength += d.length; - } else { - } - }); - } catch (e) { - stream.emit("error", e); - broken = true; - return false; - } + cb = cb || function() { + }; + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended; + + see https://github.com/jprichardson/node-fs-extra/issues/269`); } - return through(function write(data) { - bufferQueue.push(data); - hasBytes += data.length; - if (bitReader === null) { - bitReader = bitIterator(function() { - return bufferQueue.shift(); - }); - } - while (!broken && hasBytes - bitReader.bytesRead + 1 >= (25e3 + 1e5 * blockSize || 4)) { - decompressAndQueue(this); - } - }, function end(x) { - while (!broken && bitReader && hasBytes > bitReader.bytesRead) { - decompressAndQueue(this); + stat.checkPaths(src, dest, "copy", (err, stats) => { + if (err) + return cb(err); + const { srcStat, destStat } = stats; + stat.checkParentPaths(src, srcStat, dest, "copy", (err2) => { + if (err2) + return cb(err2); + if (opts.filter) + return handleFilter(checkParentDir, destStat, src, dest, opts, cb); + return checkParentDir(destStat, src, dest, opts, cb); + }); + }); + } + function checkParentDir(destStat, src, dest, opts, cb) { + const destParent = path2.dirname(dest); + pathExists(destParent, (err, dirExists) => { + if (err) + return cb(err); + if (dirExists) + return startCopy(destStat, src, dest, opts, cb); + mkdirs(destParent, (err2) => { + if (err2) + return cb(err2); + return startCopy(destStat, src, dest, opts, cb); + }); + }); + } + function handleFilter(onInclude, destStat, src, dest, opts, cb) { + Promise.resolve(opts.filter(src, dest)).then((include) => { + if (include) + return onInclude(destStat, src, dest, opts, cb); + return cb(); + }, (error) => cb(error)); + } + function startCopy(destStat, src, dest, opts, cb) { + if (opts.filter) + return handleFilter(getStats, destStat, src, dest, opts, cb); + return getStats(destStat, src, dest, opts, cb); + } + function getStats(destStat, src, dest, opts, cb) { + const stat2 = opts.dereference ? fs2.stat : fs2.lstat; + stat2(src, (err, srcStat) => { + if (err) + return cb(err); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts, cb); + }); + } + function onFile(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return copyFile(srcStat, src, dest, opts, cb); + return mayCopyFile(srcStat, src, dest, opts, cb); + } + function mayCopyFile(srcStat, src, dest, opts, cb) { + if (opts.overwrite) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return copyFile(srcStat, src, dest, opts, cb); + }); + } else if (opts.errorOnExist) { + return cb(new Error(`'${dest}' already exists`)); + } else + return cb(); + } + function copyFile(srcStat, src, dest, opts, cb) { + fs2.copyFile(src, dest, (err) => { + if (err) + return cb(err); + if (opts.preserveTimestamps) + return handleTimestampsAndMode(srcStat.mode, src, dest, cb); + return setDestMode(dest, srcStat.mode, cb); + }); + } + function handleTimestampsAndMode(srcMode, src, dest, cb) { + if (fileIsNotWritable(srcMode)) { + return makeFileWritable(dest, srcMode, (err) => { + if (err) + return cb(err); + return setDestTimestampsAndMode(srcMode, src, dest, cb); + }); + } + return setDestTimestampsAndMode(srcMode, src, dest, cb); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode, cb) { + return setDestMode(dest, srcMode | 128, cb); + } + function setDestTimestampsAndMode(srcMode, src, dest, cb) { + setDestTimestamps(src, dest, (err) => { + if (err) + return cb(err); + return setDestMode(dest, srcMode, cb); + }); + } + function setDestMode(dest, srcMode, cb) { + return fs2.chmod(dest, srcMode, cb); + } + function setDestTimestamps(src, dest, cb) { + fs2.stat(src, (err, updatedSrcStat) => { + if (err) + return cb(err); + return utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime, cb); + }); + } + function onDir(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts, cb); + if (destStat && !destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)); + } + return copyDir(src, dest, opts, cb); + } + function mkDirAndCopy(srcMode, src, dest, opts, cb) { + fs2.mkdir(dest, (err) => { + if (err) + return cb(err); + copyDir(src, dest, opts, (err2) => { + if (err2) + return cb(err2); + return setDestMode(dest, srcMode, cb); + }); + }); + } + function copyDir(src, dest, opts, cb) { + fs2.readdir(src, (err, items) => { + if (err) + return cb(err); + return copyDirItems(items, src, dest, opts, cb); + }); + } + function copyDirItems(items, src, dest, opts, cb) { + const item = items.pop(); + if (!item) + return cb(); + return copyDirItem(items, item, src, dest, opts, cb); + } + function copyDirItem(items, item, src, dest, opts, cb) { + const srcItem = path2.join(src, item); + const destItem = path2.join(dest, item); + stat.checkPaths(srcItem, destItem, "copy", (err, stats) => { + if (err) + return cb(err); + const { destStat } = stats; + startCopy(destStat, srcItem, destItem, opts, (err2) => { + if (err2) + return cb(err2); + return copyDirItems(items, src, dest, opts, cb); + }); + }); + } + function onLink(destStat, src, dest, opts, cb) { + fs2.readlink(src, (err, resolvedSrc) => { + if (err) + return cb(err); + if (opts.dereference) { + resolvedSrc = path2.resolve(process.cwd(), resolvedSrc); } - if (!broken) { - if (streamCRC !== null) - this.emit("error", new Error("input stream ended prematurely")); - this.queue(null); + if (!destStat) { + return fs2.symlink(resolvedSrc, dest, cb); + } else { + fs2.readlink(dest, (err2, resolvedDest) => { + if (err2) { + if (err2.code === "EINVAL" || err2.code === "UNKNOWN") + return fs2.symlink(resolvedSrc, dest, cb); + return cb(err2); + } + if (opts.dereference) { + resolvedDest = path2.resolve(process.cwd(), resolvedDest); + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)); + } + if (destStat.isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)); + } + return copyLink(resolvedSrc, dest, cb); + }); } }); } + function copyLink(resolvedSrc, dest, cb) { + fs2.unlink(dest, (err) => { + if (err) + return cb(err); + return fs2.symlink(resolvedSrc, dest, cb); + }); + } + module2.exports = copy; } }); -// ../../node_modules/.pnpm/is-bzip2@1.0.0/node_modules/is-bzip2/index.js -var require_is_bzip2 = __commonJS({ - "../../node_modules/.pnpm/is-bzip2@1.0.0/node_modules/is-bzip2/index.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy/index.js +var require_copy5 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) { "use strict"; - module2.exports = function(buf) { - if (!buf || buf.length < 3) { - return false; - } - return buf[0] === 66 && buf[1] === 90 && buf[2] === 104; + var u = require_universalify().fromCallback; + module2.exports = { + copy: u(require_copy4()) }; } }); -// ../../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js -var require_process_nextick_args = __commonJS({ - "../../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/remove/rimraf.js +var require_rimraf3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/remove/rimraf.js"(exports2, module2) { "use strict"; - if (typeof process === "undefined" || !process.version || process.version.indexOf("v0.") === 0 || process.version.indexOf("v1.") === 0 && process.version.indexOf("v1.8.") !== 0) { - module2.exports = { nextTick }; - } else { - module2.exports = process; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var assert = require("assert"); + var isWindows = process.platform === "win32"; + function defaults(options) { + const methods = [ + "unlink", + "chmod", + "stat", + "lstat", + "rmdir", + "readdir" + ]; + methods.forEach((m) => { + options[m] = options[m] || fs2[m]; + m = m + "Sync"; + options[m] = options[m] || fs2[m]; + }); + options.maxBusyTries = options.maxBusyTries || 3; } - function nextTick(fn2, arg1, arg2, arg3) { - if (typeof fn2 !== "function") { - throw new TypeError('"callback" argument must be a function'); + function rimraf(p, options, cb) { + let busyTries = 0; + if (typeof options === "function") { + cb = options; + options = {}; } - var len = arguments.length; - var args2, i; - switch (len) { - case 0: - case 1: - return process.nextTick(fn2); - case 2: - return process.nextTick(function afterTickOne() { - fn2.call(null, arg1); - }); - case 3: - return process.nextTick(function afterTickTwo() { - fn2.call(null, arg1, arg2); + assert(p, "rimraf: missing path"); + assert.strictEqual(typeof p, "string", "rimraf: path should be a string"); + assert.strictEqual(typeof cb, "function", "rimraf: callback function required"); + assert(options, "rimraf: invalid options argument provided"); + assert.strictEqual(typeof options, "object", "rimraf: options should be object"); + defaults(options); + rimraf_(p, options, function CB(er) { + if (er) { + if ((er.code === "EBUSY" || er.code === "ENOTEMPTY" || er.code === "EPERM") && busyTries < options.maxBusyTries) { + busyTries++; + const time = busyTries * 100; + return setTimeout(() => rimraf_(p, options, CB), time); + } + if (er.code === "ENOENT") + er = null; + } + cb(er); + }); + } + function rimraf_(p, options, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.lstat(p, (er, st) => { + if (er && er.code === "ENOENT") { + return cb(null); + } + if (er && er.code === "EPERM" && isWindows) { + return fixWinEPERM(p, options, er, cb); + } + if (st && st.isDirectory()) { + return rmdir(p, options, er, cb); + } + options.unlink(p, (er2) => { + if (er2) { + if (er2.code === "ENOENT") { + return cb(null); + } + if (er2.code === "EPERM") { + return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); + } + if (er2.code === "EISDIR") { + return rmdir(p, options, er2, cb); + } + } + return cb(er2); + }); + }); + } + function fixWinEPERM(p, options, er, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.chmod(p, 438, (er2) => { + if (er2) { + cb(er2.code === "ENOENT" ? null : er); + } else { + options.stat(p, (er3, stats) => { + if (er3) { + cb(er3.code === "ENOENT" ? null : er); + } else if (stats.isDirectory()) { + rmdir(p, options, er, cb); + } else { + options.unlink(p, cb); + } }); - case 4: - return process.nextTick(function afterTickThree() { - fn2.call(null, arg1, arg2, arg3); + } + }); + } + function fixWinEPERMSync(p, options, er) { + let stats; + assert(p); + assert(options); + try { + options.chmodSync(p, 438); + } catch (er2) { + if (er2.code === "ENOENT") { + return; + } else { + throw er; + } + } + try { + stats = options.statSync(p); + } catch (er3) { + if (er3.code === "ENOENT") { + return; + } else { + throw er; + } + } + if (stats.isDirectory()) { + rmdirSync(p, options, er); + } else { + options.unlinkSync(p); + } + } + function rmdir(p, options, originalEr, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.rmdir(p, (er) => { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) { + rmkids(p, options, cb); + } else if (er && er.code === "ENOTDIR") { + cb(originalEr); + } else { + cb(er); + } + }); + } + function rmkids(p, options, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.readdir(p, (er, files) => { + if (er) + return cb(er); + let n = files.length; + let errState; + if (n === 0) + return options.rmdir(p, cb); + files.forEach((f) => { + rimraf(path2.join(p, f), options, (er2) => { + if (errState) { + return; + } + if (er2) + return cb(errState = er2); + if (--n === 0) { + options.rmdir(p, cb); + } }); - default: - args2 = new Array(len - 1); - i = 0; - while (i < args2.length) { - args2[i++] = arguments[i]; + }); + }); + } + function rimrafSync(p, options) { + let st; + options = options || {}; + defaults(options); + assert(p, "rimraf: missing path"); + assert.strictEqual(typeof p, "string", "rimraf: path should be a string"); + assert(options, "rimraf: missing options"); + assert.strictEqual(typeof options, "object", "rimraf: options should be object"); + try { + st = options.lstatSync(p); + } catch (er) { + if (er.code === "ENOENT") { + return; + } + if (er.code === "EPERM" && isWindows) { + fixWinEPERMSync(p, options, er); + } + } + try { + if (st && st.isDirectory()) { + rmdirSync(p, options, null); + } else { + options.unlinkSync(p); + } + } catch (er) { + if (er.code === "ENOENT") { + return; + } else if (er.code === "EPERM") { + return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er); + } else if (er.code !== "EISDIR") { + throw er; + } + rmdirSync(p, options, er); + } + } + function rmdirSync(p, options, originalEr) { + assert(p); + assert(options); + try { + options.rmdirSync(p); + } catch (er) { + if (er.code === "ENOTDIR") { + throw originalEr; + } else if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") { + rmkidsSync(p, options); + } else if (er.code !== "ENOENT") { + throw er; + } + } + } + function rmkidsSync(p, options) { + assert(p); + assert(options); + options.readdirSync(p).forEach((f) => rimrafSync(path2.join(p, f), options)); + if (isWindows) { + const startTime = Date.now(); + do { + try { + const ret = options.rmdirSync(p, options); + return ret; + } catch { } - return process.nextTick(function afterTick() { - fn2.apply(null, args2); - }); + } while (Date.now() - startTime < 500); + } else { + const ret = options.rmdirSync(p, options); + return ret; } } + module2.exports = rimraf; + rimraf.sync = rimrafSync; } }); -// ../../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js -var require_isarray = __commonJS({ - "../../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js"(exports2, module2) { - var toString = {}.toString; - module2.exports = Array.isArray || function(arr) { - return toString.call(arr) == "[object Array]"; +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/remove/index.js +var require_remove2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var rimraf = require_rimraf3(); + module2.exports = { + remove: u(rimraf), + removeSync: rimraf.sync }; } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/stream.js -var require_stream7 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { - module2.exports = require("stream"); +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/empty/index.js +var require_empty4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdir = require_mkdirs3(); + var remove = require_remove2(); + var emptyDir = u(function emptyDir2(dir, callback) { + callback = callback || function() { + }; + fs2.readdir(dir, (err, items) => { + if (err) + return mkdir.mkdirs(dir, callback); + items = items.map((item) => path2.join(dir, item)); + deleteItem(); + function deleteItem() { + const item = items.pop(); + if (!item) + return callback(); + remove.remove(item, (err2) => { + if (err2) + return callback(err2); + deleteItem(); + }); + } + }); + }); + function emptyDirSync(dir) { + let items; + try { + items = fs2.readdirSync(dir); + } catch { + return mkdir.mkdirsSync(dir); + } + items.forEach((item) => { + item = path2.join(dir, item); + remove.removeSync(item); + }); + } + module2.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir + }; } }); -// ../../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js -var require_safe_buffer = __commonJS({ - "../../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js"(exports2, module2) { - var buffer = require("buffer"); - var Buffer2 = buffer.Buffer; - function copyProps(src, dst) { - for (var key in src) { - dst[key] = src[key]; +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/file.js +var require_file2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var mkdir = require_mkdirs3(); + function createFile(file, callback) { + function makeFile() { + fs2.writeFile(file, "", (err) => { + if (err) + return callback(err); + callback(); + }); } + fs2.stat(file, (err, stats) => { + if (!err && stats.isFile()) + return callback(); + const dir = path2.dirname(file); + fs2.stat(dir, (err2, stats2) => { + if (err2) { + if (err2.code === "ENOENT") { + return mkdir.mkdirs(dir, (err3) => { + if (err3) + return callback(err3); + makeFile(); + }); + } + return callback(err2); + } + if (stats2.isDirectory()) + makeFile(); + else { + fs2.readdir(dir, (err3) => { + if (err3) + return callback(err3); + }); + } + }); + }); } - if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { - module2.exports = buffer; - } else { - copyProps(buffer, exports2); - exports2.Buffer = SafeBuffer; - } - function SafeBuffer(arg, encodingOrOffset, length) { - return Buffer2(arg, encodingOrOffset, length); - } - copyProps(Buffer2, SafeBuffer); - SafeBuffer.from = function(arg, encodingOrOffset, length) { - if (typeof arg === "number") { - throw new TypeError("Argument must not be a number"); - } - return Buffer2(arg, encodingOrOffset, length); - }; - SafeBuffer.alloc = function(size, fill, encoding) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); + function createFileSync(file) { + let stats; + try { + stats = fs2.statSync(file); + } catch { } - var buf = Buffer2(size); - if (fill !== void 0) { - if (typeof encoding === "string") { - buf.fill(fill, encoding); - } else { - buf.fill(fill); + if (stats && stats.isFile()) + return; + const dir = path2.dirname(file); + try { + if (!fs2.statSync(dir).isDirectory()) { + fs2.readdirSync(dir); } - } else { - buf.fill(0); + } catch (err) { + if (err && err.code === "ENOENT") + mkdir.mkdirsSync(dir); + else + throw err; } - return buf; + fs2.writeFileSync(file, ""); + } + module2.exports = { + createFile: u(createFile), + createFileSync }; - SafeBuffer.allocUnsafe = function(size) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/link.js +var require_link2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var mkdir = require_mkdirs3(); + var pathExists = require_path_exists4().pathExists; + function createLink(srcpath, dstpath, callback) { + function makeLink(srcpath2, dstpath2) { + fs2.link(srcpath2, dstpath2, (err) => { + if (err) + return callback(err); + callback(null); + }); } - return Buffer2(size); - }; - SafeBuffer.allocUnsafeSlow = function(size) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); + pathExists(dstpath, (err, destinationExists) => { + if (err) + return callback(err); + if (destinationExists) + return callback(null); + fs2.lstat(srcpath, (err2) => { + if (err2) { + err2.message = err2.message.replace("lstat", "ensureLink"); + return callback(err2); + } + const dir = path2.dirname(dstpath); + pathExists(dir, (err3, dirExists) => { + if (err3) + return callback(err3); + if (dirExists) + return makeLink(srcpath, dstpath); + mkdir.mkdirs(dir, (err4) => { + if (err4) + return callback(err4); + makeLink(srcpath, dstpath); + }); + }); + }); + }); + } + function createLinkSync(srcpath, dstpath) { + const destinationExists = fs2.existsSync(dstpath); + if (destinationExists) + return void 0; + try { + fs2.lstatSync(srcpath); + } catch (err) { + err.message = err.message.replace("lstat", "ensureLink"); + throw err; } - return buffer.SlowBuffer(size); + const dir = path2.dirname(dstpath); + const dirExists = fs2.existsSync(dir); + if (dirExists) + return fs2.linkSync(srcpath, dstpath); + mkdir.mkdirsSync(dir); + return fs2.linkSync(srcpath, dstpath); + } + module2.exports = { + createLink: u(createLink), + createLinkSync }; } }); -// ../../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js -var require_util6 = __commonJS({ - "../../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js"(exports2) { - function isArray(arg) { - if (Array.isArray) { - return Array.isArray(arg); +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink-paths.js +var require_symlink_paths2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var pathExists = require_path_exists4().pathExists; + function symlinkPaths(srcpath, dstpath, callback) { + if (path2.isAbsolute(srcpath)) { + return fs2.lstat(srcpath, (err) => { + if (err) { + err.message = err.message.replace("lstat", "ensureSymlink"); + return callback(err); + } + return callback(null, { + toCwd: srcpath, + toDst: srcpath + }); + }); + } else { + const dstdir = path2.dirname(dstpath); + const relativeToDst = path2.join(dstdir, srcpath); + return pathExists(relativeToDst, (err, exists) => { + if (err) + return callback(err); + if (exists) { + return callback(null, { + toCwd: relativeToDst, + toDst: srcpath + }); + } else { + return fs2.lstat(srcpath, (err2) => { + if (err2) { + err2.message = err2.message.replace("lstat", "ensureSymlink"); + return callback(err2); + } + return callback(null, { + toCwd: srcpath, + toDst: path2.relative(dstdir, srcpath) + }); + }); + } + }); } - return objectToString(arg) === "[object Array]"; } - exports2.isArray = isArray; - function isBoolean(arg) { - return typeof arg === "boolean"; - } - exports2.isBoolean = isBoolean; - function isNull(arg) { - return arg === null; - } - exports2.isNull = isNull; - function isNullOrUndefined(arg) { - return arg == null; - } - exports2.isNullOrUndefined = isNullOrUndefined; - function isNumber(arg) { - return typeof arg === "number"; - } - exports2.isNumber = isNumber; - function isString(arg) { - return typeof arg === "string"; - } - exports2.isString = isString; - function isSymbol(arg) { - return typeof arg === "symbol"; + function symlinkPathsSync(srcpath, dstpath) { + let exists; + if (path2.isAbsolute(srcpath)) { + exists = fs2.existsSync(srcpath); + if (!exists) + throw new Error("absolute srcpath does not exist"); + return { + toCwd: srcpath, + toDst: srcpath + }; + } else { + const dstdir = path2.dirname(dstpath); + const relativeToDst = path2.join(dstdir, srcpath); + exists = fs2.existsSync(relativeToDst); + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + }; + } else { + exists = fs2.existsSync(srcpath); + if (!exists) + throw new Error("relative srcpath does not exist"); + return { + toCwd: srcpath, + toDst: path2.relative(dstdir, srcpath) + }; + } + } } - exports2.isSymbol = isSymbol; - function isUndefined(arg) { - return arg === void 0; + module2.exports = { + symlinkPaths, + symlinkPathsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink-type.js +var require_symlink_type2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + function symlinkType(srcpath, type, callback) { + callback = typeof type === "function" ? type : callback; + type = typeof type === "function" ? false : type; + if (type) + return callback(null, type); + fs2.lstat(srcpath, (err, stats) => { + if (err) + return callback(null, "file"); + type = stats && stats.isDirectory() ? "dir" : "file"; + callback(null, type); + }); } - exports2.isUndefined = isUndefined; - function isRegExp(re) { - return objectToString(re) === "[object RegExp]"; + function symlinkTypeSync(srcpath, type) { + let stats; + if (type) + return type; + try { + stats = fs2.lstatSync(srcpath); + } catch { + return "file"; + } + return stats && stats.isDirectory() ? "dir" : "file"; } - exports2.isRegExp = isRegExp; - function isObject(arg) { - return typeof arg === "object" && arg !== null; + module2.exports = { + symlinkType, + symlinkTypeSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink.js +var require_symlink2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path2 = require("path"); + var fs2 = require_graceful_fs(); + var _mkdirs = require_mkdirs3(); + var mkdirs = _mkdirs.mkdirs; + var mkdirsSync = _mkdirs.mkdirsSync; + var _symlinkPaths = require_symlink_paths2(); + var symlinkPaths = _symlinkPaths.symlinkPaths; + var symlinkPathsSync = _symlinkPaths.symlinkPathsSync; + var _symlinkType = require_symlink_type2(); + var symlinkType = _symlinkType.symlinkType; + var symlinkTypeSync = _symlinkType.symlinkTypeSync; + var pathExists = require_path_exists4().pathExists; + function createSymlink(srcpath, dstpath, type, callback) { + callback = typeof type === "function" ? type : callback; + type = typeof type === "function" ? false : type; + pathExists(dstpath, (err, destinationExists) => { + if (err) + return callback(err); + if (destinationExists) + return callback(null); + symlinkPaths(srcpath, dstpath, (err2, relative2) => { + if (err2) + return callback(err2); + srcpath = relative2.toDst; + symlinkType(relative2.toCwd, type, (err3, type2) => { + if (err3) + return callback(err3); + const dir = path2.dirname(dstpath); + pathExists(dir, (err4, dirExists) => { + if (err4) + return callback(err4); + if (dirExists) + return fs2.symlink(srcpath, dstpath, type2, callback); + mkdirs(dir, (err5) => { + if (err5) + return callback(err5); + fs2.symlink(srcpath, dstpath, type2, callback); + }); + }); + }); + }); + }); } - exports2.isObject = isObject; - function isDate(d) { - return objectToString(d) === "[object Date]"; + function createSymlinkSync(srcpath, dstpath, type) { + const destinationExists = fs2.existsSync(dstpath); + if (destinationExists) + return void 0; + const relative2 = symlinkPathsSync(srcpath, dstpath); + srcpath = relative2.toDst; + type = symlinkTypeSync(relative2.toCwd, type); + const dir = path2.dirname(dstpath); + const exists = fs2.existsSync(dir); + if (exists) + return fs2.symlinkSync(srcpath, dstpath, type); + mkdirsSync(dir); + return fs2.symlinkSync(srcpath, dstpath, type); } - exports2.isDate = isDate; - function isError(e) { - return objectToString(e) === "[object Error]" || e instanceof Error; + module2.exports = { + createSymlink: u(createSymlink), + createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/index.js +var require_ensure2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) { + "use strict"; + var file = require_file2(); + var link = require_link2(); + var symlink = require_symlink2(); + module2.exports = { + // file + createFile: file.createFile, + createFileSync: file.createFileSync, + ensureFile: file.createFile, + ensureFileSync: file.createFileSync, + // link + createLink: link.createLink, + createLinkSync: link.createLinkSync, + ensureLink: link.createLink, + ensureLinkSync: link.createLinkSync, + // symlink + createSymlink: symlink.createSymlink, + createSymlinkSync: symlink.createSymlinkSync, + ensureSymlink: symlink.createSymlink, + ensureSymlinkSync: symlink.createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/jsonfile.js +var require_jsonfile3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) { + "use strict"; + var jsonFile = require_jsonfile(); + module2.exports = { + // jsonfile exports + readJson: jsonFile.readFile, + readJsonSync: jsonFile.readFileSync, + writeJson: jsonFile.writeFile, + writeJsonSync: jsonFile.writeFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/output/index.js +var require_output = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/output/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var mkdir = require_mkdirs3(); + var pathExists = require_path_exists4().pathExists; + function outputFile(file, data, encoding, callback) { + if (typeof encoding === "function") { + callback = encoding; + encoding = "utf8"; + } + const dir = path2.dirname(file); + pathExists(dir, (err, itDoes) => { + if (err) + return callback(err); + if (itDoes) + return fs2.writeFile(file, data, encoding, callback); + mkdir.mkdirs(dir, (err2) => { + if (err2) + return callback(err2); + fs2.writeFile(file, data, encoding, callback); + }); + }); } - exports2.isError = isError; - function isFunction(arg) { - return typeof arg === "function"; + function outputFileSync(file, ...args2) { + const dir = path2.dirname(file); + if (fs2.existsSync(dir)) { + return fs2.writeFileSync(file, ...args2); + } + mkdir.mkdirsSync(dir); + fs2.writeFileSync(file, ...args2); } - exports2.isFunction = isFunction; - function isPrimitive(arg) { - return arg === null || typeof arg === "boolean" || typeof arg === "number" || typeof arg === "string" || typeof arg === "symbol" || typeof arg === "undefined"; + module2.exports = { + outputFile: u(outputFile), + outputFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/output-json.js +var require_output_json2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) { + "use strict"; + var { stringify: stringify2 } = require_utils12(); + var { outputFile } = require_output(); + async function outputJson(file, data, options = {}) { + const str = stringify2(data, options); + await outputFile(file, str, options); } - exports2.isPrimitive = isPrimitive; - exports2.isBuffer = require("buffer").Buffer.isBuffer; - function objectToString(o) { - return Object.prototype.toString.call(o); + module2.exports = outputJson; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/output-json-sync.js +var require_output_json_sync2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) { + "use strict"; + var { stringify: stringify2 } = require_utils12(); + var { outputFileSync } = require_output(); + function outputJsonSync(file, data, options) { + const str = stringify2(data, options); + outputFileSync(file, str, options); } + module2.exports = outputJsonSync; } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/BufferList.js -var require_BufferList = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/BufferList.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/index.js +var require_json4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/json/index.js"(exports2, module2) { "use strict"; - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); + var u = require_universalify().fromPromise; + var jsonFile = require_jsonfile3(); + jsonFile.outputJson = u(require_output_json2()); + jsonFile.outputJsonSync = require_output_json_sync2(); + jsonFile.outputJSON = jsonFile.outputJson; + jsonFile.outputJSONSync = jsonFile.outputJsonSync; + jsonFile.writeJSON = jsonFile.writeJson; + jsonFile.writeJSONSync = jsonFile.writeJsonSync; + jsonFile.readJSON = jsonFile.readJson; + jsonFile.readJSONSync = jsonFile.readJsonSync; + module2.exports = jsonFile; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move-sync/move-sync.js +var require_move_sync2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move-sync/move-sync.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var copySync = require_copy_sync4().copySync; + var removeSync = require_remove2().removeSync; + var mkdirpSync = require_mkdirs3().mkdirpSync; + var stat = require_stat3(); + function moveSync(src, dest, opts) { + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + const { srcStat } = stat.checkPathsSync(src, dest, "move"); + stat.checkParentPathsSync(src, srcStat, dest, "move"); + mkdirpSync(path2.dirname(dest)); + return doRename(src, dest, overwrite); + } + function doRename(src, dest, overwrite) { + if (overwrite) { + removeSync(dest); + return rename(src, dest, overwrite); + } + if (fs2.existsSync(dest)) + throw new Error("dest already exists."); + return rename(src, dest, overwrite); + } + function rename(src, dest, overwrite) { + try { + fs2.renameSync(src, dest); + } catch (err) { + if (err.code !== "EXDEV") + throw err; + return moveAcrossDevice(src, dest, overwrite); } } - var Buffer2 = require_safe_buffer().Buffer; - var util = require("util"); - function copyBuffer(src, target, offset) { - src.copy(target, offset); - } - module2.exports = function() { - function BufferList() { - _classCallCheck(this, BufferList); - this.head = null; - this.tail = null; - this.length = 0; - } - BufferList.prototype.push = function push(v) { - var entry = { data: v, next: null }; - if (this.length > 0) - this.tail.next = entry; - else - this.head = entry; - this.tail = entry; - ++this.length; - }; - BufferList.prototype.unshift = function unshift(v) { - var entry = { data: v, next: this.head }; - if (this.length === 0) - this.tail = entry; - this.head = entry; - ++this.length; - }; - BufferList.prototype.shift = function shift() { - if (this.length === 0) - return; - var ret = this.head.data; - if (this.length === 1) - this.head = this.tail = null; - else - this.head = this.head.next; - --this.length; - return ret; - }; - BufferList.prototype.clear = function clear() { - this.head = this.tail = null; - this.length = 0; - }; - BufferList.prototype.join = function join(s) { - if (this.length === 0) - return ""; - var p = this.head; - var ret = "" + p.data; - while (p = p.next) { - ret += s + p.data; - } - return ret; - }; - BufferList.prototype.concat = function concat(n) { - if (this.length === 0) - return Buffer2.alloc(0); - if (this.length === 1) - return this.head.data; - var ret = Buffer2.allocUnsafe(n >>> 0); - var p = this.head; - var i = 0; - while (p) { - copyBuffer(p.data, ret, i); - i += p.data.length; - p = p.next; - } - return ret; - }; - return BufferList; - }(); - if (util && util.inspect && util.inspect.custom) { - module2.exports.prototype[util.inspect.custom] = function() { - var obj = util.inspect({ length: this.length }); - return this.constructor.name + " " + obj; + function moveAcrossDevice(src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true }; + copySync(src, dest, opts); + return removeSync(src); } + module2.exports = moveSync; } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/destroy.js -var require_destroy2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move-sync/index.js +var require_move_sync3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move-sync/index.js"(exports2, module2) { "use strict"; - var pna = require_process_nextick_args(); - function destroy(err, cb) { - var _this = this; - var readableDestroyed = this._readableState && this._readableState.destroyed; - var writableDestroyed = this._writableState && this._writableState.destroyed; - if (readableDestroyed || writableDestroyed) { - if (cb) { - cb(err); - } else if (err && (!this._writableState || !this._writableState.errorEmitted)) { - pna.nextTick(emitErrorNT, this, err); - } - return this; - } - if (this._readableState) { - this._readableState.destroyed = true; - } - if (this._writableState) { - this._writableState.destroyed = true; + module2.exports = { + moveSync: require_move_sync2() + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move/move.js +var require_move3 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move/move.js"(exports2, module2) { + "use strict"; + var fs2 = require_graceful_fs(); + var path2 = require("path"); + var copy = require_copy5().copy; + var remove = require_remove2().remove; + var mkdirp = require_mkdirs3().mkdirp; + var pathExists = require_path_exists4().pathExists; + var stat = require_stat3(); + function move(src, dest, opts, cb) { + if (typeof opts === "function") { + cb = opts; + opts = {}; } - this._destroy(err || null, function(err2) { - if (!cb && err2) { - pna.nextTick(emitErrorNT, _this, err2); - if (_this._writableState) { - _this._writableState.errorEmitted = true; - } - } else if (cb) { - cb(err2); - } + const overwrite = opts.overwrite || opts.clobber || false; + stat.checkPaths(src, dest, "move", (err, stats) => { + if (err) + return cb(err); + const { srcStat } = stats; + stat.checkParentPaths(src, srcStat, dest, "move", (err2) => { + if (err2) + return cb(err2); + mkdirp(path2.dirname(dest), (err3) => { + if (err3) + return cb(err3); + return doRename(src, dest, overwrite, cb); + }); + }); }); - return this; } - function undestroy() { - if (this._readableState) { - this._readableState.destroyed = false; - this._readableState.reading = false; - this._readableState.ended = false; - this._readableState.endEmitted = false; - } - if (this._writableState) { - this._writableState.destroyed = false; - this._writableState.ended = false; - this._writableState.ending = false; - this._writableState.finished = false; - this._writableState.errorEmitted = false; + function doRename(src, dest, overwrite, cb) { + if (overwrite) { + return remove(dest, (err) => { + if (err) + return cb(err); + return rename(src, dest, overwrite, cb); + }); } + pathExists(dest, (err, destExists) => { + if (err) + return cb(err); + if (destExists) + return cb(new Error("dest already exists.")); + return rename(src, dest, overwrite, cb); + }); } - function emitErrorNT(self2, err) { - self2.emit("error", err); + function rename(src, dest, overwrite, cb) { + fs2.rename(src, dest, (err) => { + if (!err) + return cb(); + if (err.code !== "EXDEV") + return cb(err); + return moveAcrossDevice(src, dest, overwrite, cb); + }); } + function moveAcrossDevice(src, dest, overwrite, cb) { + const opts = { + overwrite, + errorOnExist: true + }; + copy(src, dest, opts, (err) => { + if (err) + return cb(err); + return remove(src, cb); + }); + } + module2.exports = move; + } +}); + +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move/index.js +var require_move4 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/move/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; module2.exports = { - destroy, - undestroy + move: u(require_move3()) }; } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_writable.js -var require_stream_writable2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/index.js +var require_lib113 = __commonJS({ + "../node_modules/.pnpm/fs-extra@9.1.0/node_modules/fs-extra/lib/index.js"(exports2, module2) { "use strict"; - var pna = require_process_nextick_args(); - module2.exports = Writable; - function CorkedRequest(state) { - var _this = this; - this.next = null; - this.entry = null; - this.finish = function() { - onCorkedFinish(_this, state); - }; + module2.exports = { + // Export promiseified graceful-fs: + ...require_fs8(), + // Export extra methods: + ...require_copy_sync4(), + ...require_copy5(), + ...require_empty4(), + ...require_ensure2(), + ...require_json4(), + ...require_mkdirs3(), + ...require_move_sync3(), + ...require_move4(), + ...require_output(), + ...require_path_exists4(), + ...require_remove2() + }; + var fs2 = require("fs"); + if (Object.getOwnPropertyDescriptor(fs2, "promises")) { + Object.defineProperty(module2.exports, "promises", { + get() { + return fs2.promises; + } + }); } - var asyncWrite = !process.browser && ["v0.10", "v0.9."].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; - var Duplex; - Writable.WritableState = WritableState; - var util = Object.create(require_util6()); - util.inherits = require_inherits(); - var internalUtil = { - deprecate: require_node2() + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/assertNever.js +var require_assertNever = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/assertNever.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.assertNever = void 0; + function assertNever2(x) { + throw new Error("Unexpected object: " + x); + } + exports2.assertNever = assertNever2; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/apply.js +var require_apply = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/apply.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var Stream = require_stream7(); - var Buffer2 = require_safe_buffer().Buffer; - var OurUint8Array = global.Uint8Array || function() { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.executeEffects = void 0; + var fs_extra_1 = __importDefault4(require_lib113()); + var path_1 = require("path"); + var assertNever_1 = require_assertNever(); + var executeEffects = (effects, { dryRun }) => { + effects.forEach((eff) => { + switch (eff.type) { + case "file deletion": + if (dryRun) { + if (!fs_extra_1.default.existsSync(eff.path)) { + throw new Error("Trying to delete file that doesn't exist: " + eff.path); + } + } else { + fs_extra_1.default.unlinkSync(eff.path); + } + break; + case "rename": + if (dryRun) { + if (!fs_extra_1.default.existsSync(eff.fromPath)) { + throw new Error("Trying to move file that doesn't exist: " + eff.fromPath); + } + } else { + fs_extra_1.default.moveSync(eff.fromPath, eff.toPath); + } + break; + case "file creation": + if (dryRun) { + if (fs_extra_1.default.existsSync(eff.path)) { + throw new Error("Trying to create file that already exists: " + eff.path); + } + } else { + const fileContents = eff.hunk ? eff.hunk.parts[0].lines.join("\n") + (eff.hunk.parts[0].noNewlineAtEndOfFile ? "" : "\n") : ""; + fs_extra_1.default.ensureDirSync(path_1.dirname(eff.path)); + fs_extra_1.default.writeFileSync(eff.path, fileContents, { mode: eff.mode }); + } + break; + case "patch": + applyPatch(eff, { dryRun }); + break; + case "mode change": + const currentMode = fs_extra_1.default.statSync(eff.path).mode; + if ((isExecutable(eff.newMode) && isExecutable(currentMode) || !isExecutable(eff.newMode) && !isExecutable(currentMode)) && dryRun) { + console.warn(`Mode change is not required for file ${eff.path}`); + } + fs_extra_1.default.chmodSync(eff.path, eff.newMode); + break; + default: + assertNever_1.assertNever(eff); + } + }); }; - function _uint8ArrayToBuffer(chunk) { - return Buffer2.from(chunk); - } - function _isUint8Array(obj) { - return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array; + exports2.executeEffects = executeEffects; + function isExecutable(fileMode) { + return (fileMode & 64) > 0; } - var destroyImpl = require_destroy2(); - util.inherits(Writable, Stream); - function nop() { - } - function WritableState(options, stream) { - Duplex = Duplex || require_stream_duplex2(); - options = options || {}; - var isDuplex = stream instanceof Duplex; - this.objectMode = !!options.objectMode; - if (isDuplex) - this.objectMode = this.objectMode || !!options.writableObjectMode; - var hwm = options.highWaterMark; - var writableHwm = options.writableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - if (hwm || hwm === 0) - this.highWaterMark = hwm; - else if (isDuplex && (writableHwm || writableHwm === 0)) - this.highWaterMark = writableHwm; - else - this.highWaterMark = defaultHwm; - this.highWaterMark = Math.floor(this.highWaterMark); - this.finalCalled = false; - this.needDrain = false; - this.ending = false; - this.ended = false; - this.finished = false; - this.destroyed = false; - var noDecode = options.decodeStrings === false; - this.decodeStrings = !noDecode; - this.defaultEncoding = options.defaultEncoding || "utf8"; - this.length = 0; - this.writing = false; - this.corked = 0; - this.sync = true; - this.bufferProcessing = false; - this.onwrite = function(er) { - onwrite(stream, er); - }; - this.writecb = null; - this.writelen = 0; - this.bufferedRequest = null; - this.lastBufferedRequest = null; - this.pendingcb = 0; - this.prefinished = false; - this.errorEmitted = false; - this.bufferedRequestCount = 0; - this.corkedRequestsFree = new CorkedRequest(this); + var trimRight = (s) => s.replace(/\s+$/, ""); + function linesAreEqual(a, b) { + return trimRight(a) === trimRight(b); } - WritableState.prototype.getBuffer = function getBuffer() { - var current = this.bufferedRequest; - var out = []; - while (current) { - out.push(current); - current = current.next; + function applyPatch({ hunks, path: path2 }, { dryRun }) { + const fileContents = fs_extra_1.default.readFileSync(path2).toString(); + const mode = fs_extra_1.default.statSync(path2).mode; + const fileLines = fileContents.split(/\n/); + const result2 = []; + for (const hunk of hunks) { + let fuzzingOffset = 0; + while (true) { + const modifications = evaluateHunk(hunk, fileLines, fuzzingOffset); + if (modifications) { + result2.push(modifications); + break; + } + fuzzingOffset = fuzzingOffset < 0 ? fuzzingOffset * -1 : fuzzingOffset * -1 - 1; + if (Math.abs(fuzzingOffset) > 20) { + throw new Error(`Cant apply hunk ${hunks.indexOf(hunk)} for file ${path2}`); + } + } } - return out; - }; - (function() { - try { - Object.defineProperty(WritableState.prototype, "buffer", { - get: internalUtil.deprecate(function() { - return this.getBuffer(); - }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") - }); - } catch (_) { + if (dryRun) { + return; } - })(); - var realHasInstance; - if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { - realHasInstance = Function.prototype[Symbol.hasInstance]; - Object.defineProperty(Writable, Symbol.hasInstance, { - value: function(object) { - if (realHasInstance.call(this, object)) - return true; - if (this !== Writable) - return false; - return object && object._writableState instanceof WritableState; + let diffOffset = 0; + for (const modifications of result2) { + for (const modification of modifications) { + switch (modification.type) { + case "splice": + fileLines.splice(modification.index + diffOffset, modification.numToDelete, ...modification.linesToInsert); + diffOffset += modification.linesToInsert.length - modification.numToDelete; + break; + case "pop": + fileLines.pop(); + break; + case "push": + fileLines.push(modification.line); + break; + default: + assertNever_1.assertNever(modification); + } } - }); - } else { - realHasInstance = function(object) { - return object instanceof this; - }; - } - function Writable(options) { - Duplex = Duplex || require_stream_duplex2(); - if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) { - return new Writable(options); - } - this._writableState = new WritableState(options, this); - this.writable = true; - if (options) { - if (typeof options.write === "function") - this._write = options.write; - if (typeof options.writev === "function") - this._writev = options.writev; - if (typeof options.destroy === "function") - this._destroy = options.destroy; - if (typeof options.final === "function") - this._final = options.final; } - Stream.call(this); - } - Writable.prototype.pipe = function() { - this.emit("error", new Error("Cannot pipe, not readable")); - }; - function writeAfterEnd(stream, cb) { - var er = new Error("write after end"); - stream.emit("error", er); - pna.nextTick(cb, er); + fs_extra_1.default.writeFileSync(path2, fileLines.join("\n"), { mode }); } - function validChunk(stream, state, chunk, cb) { - var valid = true; - var er = false; - if (chunk === null) { - er = new TypeError("May not write null values to stream"); - } else if (typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { - er = new TypeError("Invalid non-string/buffer chunk"); + function evaluateHunk(hunk, fileLines, fuzzingOffset) { + const result2 = []; + let contextIndex = hunk.header.original.start - 1 + fuzzingOffset; + if (contextIndex < 0) { + return null; } - if (er) { - stream.emit("error", er); - pna.nextTick(cb, er); - valid = false; + if (fileLines.length - contextIndex < hunk.header.original.length) { + return null; } - return valid; + for (const part of hunk.parts) { + switch (part.type) { + case "deletion": + case "context": + for (const line of part.lines) { + const originalLine = fileLines[contextIndex]; + if (!linesAreEqual(originalLine, line)) { + return null; + } + contextIndex++; + } + if (part.type === "deletion") { + result2.push({ + type: "splice", + index: contextIndex - part.lines.length, + numToDelete: part.lines.length, + linesToInsert: [] + }); + if (part.noNewlineAtEndOfFile) { + result2.push({ + type: "push", + line: "" + }); + } + } + break; + case "insertion": + result2.push({ + type: "splice", + index: contextIndex, + numToDelete: 0, + linesToInsert: part.lines + }); + if (part.noNewlineAtEndOfFile) { + result2.push({ type: "pop" }); + } + break; + default: + assertNever_1.assertNever(part.type); + } + } + return result2; } - Writable.prototype.write = function(chunk, encoding, cb) { - var state = this._writableState; - var ret = false; - var isBuf = !state.objectMode && _isUint8Array(chunk); - if (isBuf && !Buffer2.isBuffer(chunk)) { - chunk = _uint8ArrayToBuffer(chunk); + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/PackageDetails.js +var require_PackageDetails = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/PackageDetails.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPatchDetailsFromCliString = exports2.getPackageDetailsFromPatchFilename = void 0; + var path_1 = require_path6(); + function parseNameAndVersion(s) { + const parts = s.split("+"); + switch (parts.length) { + case 1: { + return { name: parts[0] }; + } + case 2: { + const [nameOrScope, versionOrName] = parts; + if (versionOrName.match(/^\d+/)) { + return { + name: nameOrScope, + version: versionOrName + }; + } + return { name: `${nameOrScope}/${versionOrName}` }; + } + case 3: { + const [scope, name, version2] = parts; + return { name: `${scope}/${name}`, version: version2 }; + } } - if (typeof encoding === "function") { - cb = encoding; - encoding = null; + return null; + } + function getPackageDetailsFromPatchFilename(patchFilename) { + const legacyMatch = patchFilename.match(/^([^+=]+?)(:|\+)(\d+\.\d+\.\d+.*?)(\.dev)?\.patch$/); + if (legacyMatch) { + const name = legacyMatch[1]; + const version2 = legacyMatch[3]; + return { + packageNames: [name], + pathSpecifier: name, + humanReadablePathSpecifier: name, + path: path_1.join("node_modules", name), + name, + version: version2, + isNested: false, + patchFilename, + isDevOnly: patchFilename.endsWith(".dev.patch") + }; } - if (isBuf) - encoding = "buffer"; - else if (!encoding) - encoding = state.defaultEncoding; - if (typeof cb !== "function") - cb = nop; - if (state.ended) - writeAfterEnd(this, cb); - else if (isBuf || validChunk(this, state, chunk, cb)) { - state.pendingcb++; - ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); + const parts = patchFilename.replace(/(\.dev)?\.patch$/, "").split("++").map(parseNameAndVersion).filter((x) => x !== null); + if (parts.length === 0) { + return null; } - return ret; - }; - Writable.prototype.cork = function() { - var state = this._writableState; - state.corked++; - }; - Writable.prototype.uncork = function() { - var state = this._writableState; - if (state.corked) { - state.corked--; - if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) - clearBuffer(this, state); + const lastPart = parts[parts.length - 1]; + if (!lastPart.version) { + return null; } - }; - Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { - if (typeof encoding === "string") - encoding = encoding.toLowerCase(); - if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) - throw new TypeError("Unknown encoding: " + encoding); - this._writableState.defaultEncoding = encoding; - return this; - }; - function decodeChunk(state, chunk, encoding) { - if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { - chunk = Buffer2.from(chunk, encoding); + return { + name: lastPart.name, + version: lastPart.version, + path: path_1.join("node_modules", parts.map(({ name }) => name).join("/node_modules/")), + patchFilename, + pathSpecifier: parts.map(({ name }) => name).join("/"), + humanReadablePathSpecifier: parts.map(({ name }) => name).join(" => "), + isNested: parts.length > 1, + packageNames: parts.map(({ name }) => name), + isDevOnly: patchFilename.endsWith(".dev.patch") + }; + } + exports2.getPackageDetailsFromPatchFilename = getPackageDetailsFromPatchFilename; + function getPatchDetailsFromCliString(specifier) { + const parts = specifier.split("/"); + const packageNames = []; + let scope = null; + for (let i = 0; i < parts.length; i++) { + if (parts[i].startsWith("@")) { + if (scope) { + return null; + } + scope = parts[i]; + } else { + if (scope) { + packageNames.push(`${scope}/${parts[i]}`); + scope = null; + } else { + packageNames.push(parts[i]); + } + } } - return chunk; + const path2 = path_1.join("node_modules", packageNames.join("/node_modules/")); + return { + packageNames, + path: path2, + name: packageNames[packageNames.length - 1], + humanReadablePathSpecifier: packageNames.join(" => "), + isNested: packageNames.length > 1, + pathSpecifier: specifier + }; } - Object.defineProperty(Writable.prototype, "writableHighWaterMark", { - enumerable: false, - get: function() { - return this._writableState.highWaterMark; + exports2.getPatchDetailsFromCliString = getPatchDetailsFromCliString; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/parse.js +var require_parse7 = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/parse.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.verifyHunkIntegrity = exports2.parsePatchFile = exports2.interpretParsedPatchFile = exports2.EXECUTABLE_FILE_MODE = exports2.NON_EXECUTABLE_FILE_MODE = exports2.parseHunkHeaderLine = void 0; + var assertNever_1 = require_assertNever(); + var parseHunkHeaderLine = (headerLine) => { + const match = headerLine.trim().match(/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/); + if (!match) { + throw new Error(`Bad header line: '${headerLine}'`); } + return { + original: { + start: Math.max(Number(match[1]), 1), + length: Number(match[3] || 1) + }, + patched: { + start: Math.max(Number(match[4]), 1), + length: Number(match[6] || 1) + } + }; + }; + exports2.parseHunkHeaderLine = parseHunkHeaderLine; + exports2.NON_EXECUTABLE_FILE_MODE = 420; + exports2.EXECUTABLE_FILE_MODE = 493; + var emptyFilePatch = () => ({ + diffLineFromPath: null, + diffLineToPath: null, + oldMode: null, + newMode: null, + deletedFileMode: null, + newFileMode: null, + renameFrom: null, + renameTo: null, + beforeHash: null, + afterHash: null, + fromPath: null, + toPath: null, + hunks: null }); - function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { - if (!isBuf) { - var newChunk = decodeChunk(state, chunk, encoding); - if (chunk !== newChunk) { - isBuf = true; - encoding = "buffer"; - chunk = newChunk; - } - } - var len = state.objectMode ? 1 : chunk.length; - state.length += len; - var ret = state.length < state.highWaterMark; - if (!ret) - state.needDrain = true; - if (state.writing || state.corked) { - var last = state.lastBufferedRequest; - state.lastBufferedRequest = { - chunk, - encoding, - isBuf, - callback: cb, - next: null - }; - if (last) { - last.next = state.lastBufferedRequest; + var emptyHunk = (headerLine) => ({ + header: exports2.parseHunkHeaderLine(headerLine), + parts: [] + }); + var hunkLinetypes = { + "@": "header", + "-": "deletion", + "+": "insertion", + " ": "context", + "\\": "pragma", + // Treat blank lines as context + undefined: "context", + "\r": "context" + }; + function parsePatchLines(lines, { supportLegacyDiffs }) { + const result2 = []; + let currentFilePatch = emptyFilePatch(); + let state = "parsing header"; + let currentHunk = null; + let currentHunkMutationPart = null; + function commitHunk() { + if (currentHunk) { + if (currentHunkMutationPart) { + currentHunk.parts.push(currentHunkMutationPart); + currentHunkMutationPart = null; + } + currentFilePatch.hunks.push(currentHunk); + currentHunk = null; + } + } + function commitFilePatch() { + commitHunk(); + result2.push(currentFilePatch); + currentFilePatch = emptyFilePatch(); + } + for (let i = 0; i < lines.length; i++) { + const line = lines[i]; + if (state === "parsing header") { + if (line.startsWith("@@")) { + state = "parsing hunks"; + currentFilePatch.hunks = []; + i--; + } else if (line.startsWith("diff --git ")) { + if (currentFilePatch && currentFilePatch.diffLineFromPath) { + commitFilePatch(); + } + const match = line.match(/^diff --git a\/(.*?) b\/(.*?)\s*$/); + if (!match) { + throw new Error("Bad diff line: " + line); + } + currentFilePatch.diffLineFromPath = match[1]; + currentFilePatch.diffLineToPath = match[2]; + } else if (line.startsWith("old mode ")) { + currentFilePatch.oldMode = line.slice("old mode ".length).trim(); + } else if (line.startsWith("new mode ")) { + currentFilePatch.newMode = line.slice("new mode ".length).trim(); + } else if (line.startsWith("deleted file mode ")) { + currentFilePatch.deletedFileMode = line.slice("deleted file mode ".length).trim(); + } else if (line.startsWith("new file mode ")) { + currentFilePatch.newFileMode = line.slice("new file mode ".length).trim(); + } else if (line.startsWith("rename from ")) { + currentFilePatch.renameFrom = line.slice("rename from ".length).trim(); + } else if (line.startsWith("rename to ")) { + currentFilePatch.renameTo = line.slice("rename to ".length).trim(); + } else if (line.startsWith("index ")) { + const match = line.match(/(\w+)\.\.(\w+)/); + if (!match) { + continue; + } + currentFilePatch.beforeHash = match[1]; + currentFilePatch.afterHash = match[2]; + } else if (line.startsWith("--- ")) { + currentFilePatch.fromPath = line.slice("--- a/".length).trim(); + } else if (line.startsWith("+++ ")) { + currentFilePatch.toPath = line.slice("+++ b/".length).trim(); + } } else { - state.bufferedRequest = state.lastBufferedRequest; + if (supportLegacyDiffs && line.startsWith("--- a/")) { + state = "parsing header"; + commitFilePatch(); + i--; + continue; + } + const lineType = hunkLinetypes[line[0]] || null; + switch (lineType) { + case "header": + commitHunk(); + currentHunk = emptyHunk(line); + break; + case null: + state = "parsing header"; + commitFilePatch(); + i--; + break; + case "pragma": + if (!line.startsWith("\\ No newline at end of file")) { + throw new Error("Unrecognized pragma in patch file: " + line); + } + if (!currentHunkMutationPart) { + throw new Error("Bad parser state: No newline at EOF pragma encountered without context"); + } + currentHunkMutationPart.noNewlineAtEndOfFile = true; + break; + case "insertion": + case "deletion": + case "context": + if (!currentHunk) { + throw new Error("Bad parser state: Hunk lines encountered before hunk header"); + } + if (currentHunkMutationPart && currentHunkMutationPart.type !== lineType) { + currentHunk.parts.push(currentHunkMutationPart); + currentHunkMutationPart = null; + } + if (!currentHunkMutationPart) { + currentHunkMutationPart = { + type: lineType, + lines: [], + noNewlineAtEndOfFile: false + }; + } + currentHunkMutationPart.lines.push(line.slice(1)); + break; + default: + assertNever_1.assertNever(lineType); + } } - state.bufferedRequestCount += 1; - } else { - doWrite(stream, state, false, len, chunk, encoding, cb); } - return ret; - } - function doWrite(stream, state, writev, len, chunk, encoding, cb) { - state.writelen = len; - state.writecb = cb; - state.writing = true; - state.sync = true; - if (writev) - stream._writev(chunk, state.onwrite); - else - stream._write(chunk, encoding, state.onwrite); - state.sync = false; - } - function onwriteError(stream, state, sync, er, cb) { - --state.pendingcb; - if (sync) { - pna.nextTick(cb, er); - pna.nextTick(finishMaybe, stream, state); - stream._writableState.errorEmitted = true; - stream.emit("error", er); - } else { - cb(er); - stream._writableState.errorEmitted = true; - stream.emit("error", er); - finishMaybe(stream, state); + commitFilePatch(); + for (const { hunks } of result2) { + if (hunks) { + for (const hunk of hunks) { + verifyHunkIntegrity(hunk); + } + } } + return result2; } - function onwriteStateUpdate(state) { - state.writing = false; - state.writecb = null; - state.length -= state.writelen; - state.writelen = 0; - } - function onwrite(stream, er) { - var state = stream._writableState; - var sync = state.sync; - var cb = state.writecb; - onwriteStateUpdate(state); - if (er) - onwriteError(stream, state, sync, er, cb); - else { - var finished = needFinish(state); - if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { - clearBuffer(stream, state); + function interpretParsedPatchFile(files) { + const result2 = []; + for (const file of files) { + const { diffLineFromPath, diffLineToPath, oldMode, newMode, deletedFileMode, newFileMode, renameFrom, renameTo, beforeHash, afterHash, fromPath, toPath, hunks } = file; + const type = renameFrom ? "rename" : deletedFileMode ? "file deletion" : newFileMode ? "file creation" : hunks && hunks.length > 0 ? "patch" : "mode change"; + let destinationFilePath = null; + switch (type) { + case "rename": + if (!renameFrom || !renameTo) { + throw new Error("Bad parser state: rename from & to not given"); + } + result2.push({ + type: "rename", + fromPath: renameFrom, + toPath: renameTo + }); + destinationFilePath = renameTo; + break; + case "file deletion": { + const path2 = diffLineFromPath || fromPath; + if (!path2) { + throw new Error("Bad parse state: no path given for file deletion"); + } + result2.push({ + type: "file deletion", + hunk: hunks && hunks[0] || null, + path: path2, + mode: parseFileMode(deletedFileMode), + hash: beforeHash + }); + break; + } + case "file creation": { + const path2 = diffLineToPath || toPath; + if (!path2) { + throw new Error("Bad parse state: no path given for file creation"); + } + result2.push({ + type: "file creation", + hunk: hunks && hunks[0] || null, + path: path2, + mode: parseFileMode(newFileMode), + hash: afterHash + }); + break; + } + case "patch": + case "mode change": + destinationFilePath = toPath || diffLineToPath; + break; + default: + assertNever_1.assertNever(type); + } + if (destinationFilePath && oldMode && newMode && oldMode !== newMode) { + result2.push({ + type: "mode change", + path: destinationFilePath, + oldMode: parseFileMode(oldMode), + newMode: parseFileMode(newMode) + }); } - if (sync) { - asyncWrite(afterWrite, stream, state, finished, cb); - } else { - afterWrite(stream, state, finished, cb); + if (destinationFilePath && hunks && hunks.length) { + result2.push({ + type: "patch", + path: destinationFilePath, + hunks, + beforeHash, + afterHash + }); } } + return result2; } - function afterWrite(stream, state, finished, cb) { - if (!finished) - onwriteDrain(stream, state); - state.pendingcb--; - cb(); - finishMaybe(stream, state); - } - function onwriteDrain(stream, state) { - if (state.length === 0 && state.needDrain) { - state.needDrain = false; - stream.emit("drain"); + exports2.interpretParsedPatchFile = interpretParsedPatchFile; + function parseFileMode(mode) { + const parsedMode = parseInt(mode, 8) & 511; + if (parsedMode !== exports2.NON_EXECUTABLE_FILE_MODE && parsedMode !== exports2.EXECUTABLE_FILE_MODE) { + throw new Error("Unexpected file mode string: " + mode); } + return parsedMode; } - function clearBuffer(stream, state) { - state.bufferProcessing = true; - var entry = state.bufferedRequest; - if (stream._writev && entry && entry.next) { - var l = state.bufferedRequestCount; - var buffer = new Array(l); - var holder = state.corkedRequestsFree; - holder.entry = entry; - var count = 0; - var allBuffers = true; - while (entry) { - buffer[count] = entry; - if (!entry.isBuf) - allBuffers = false; - entry = entry.next; - count += 1; + function parsePatchFile(file) { + const lines = file.split(/\n/g); + if (lines[lines.length - 1] === "") { + lines.pop(); + } + try { + return interpretParsedPatchFile(parsePatchLines(lines, { supportLegacyDiffs: false })); + } catch (e) { + if (e instanceof Error && e.message === "hunk header integrity check failed") { + return interpretParsedPatchFile(parsePatchLines(lines, { supportLegacyDiffs: true })); } - buffer.allBuffers = allBuffers; - doWrite(stream, state, true, state.length, buffer, "", holder.finish); - state.pendingcb++; - state.lastBufferedRequest = null; - if (holder.next) { - state.corkedRequestsFree = holder.next; - holder.next = null; - } else { - state.corkedRequestsFree = new CorkedRequest(state); + throw e; + } + } + exports2.parsePatchFile = parsePatchFile; + function verifyHunkIntegrity(hunk) { + let originalLength = 0; + let patchedLength = 0; + for (const { type, lines } of hunk.parts) { + switch (type) { + case "context": + patchedLength += lines.length; + originalLength += lines.length; + break; + case "deletion": + originalLength += lines.length; + break; + case "insertion": + patchedLength += lines.length; + break; + default: + assertNever_1.assertNever(type); } - state.bufferedRequestCount = 0; - } else { - while (entry) { - var chunk = entry.chunk; - var encoding = entry.encoding; - var cb = entry.callback; - var len = state.objectMode ? 1 : chunk.length; - doWrite(stream, state, false, len, chunk, encoding, cb); - entry = entry.next; - state.bufferedRequestCount--; - if (state.writing) { + } + if (originalLength !== hunk.header.original.length || patchedLength !== hunk.header.patched.length) { + throw new Error("hunk header integrity check failed"); + } + } + exports2.verifyHunkIntegrity = verifyHunkIntegrity; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/reverse.js +var require_reverse = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/reverse.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reversePatch = void 0; + var parse_1 = require_parse7(); + var assertNever_1 = require_assertNever(); + function reverseHunk(hunk) { + const header = { + original: hunk.header.patched, + patched: hunk.header.original + }; + const parts = []; + for (const part of hunk.parts) { + switch (part.type) { + case "context": + parts.push(part); break; - } + case "deletion": + parts.push({ + type: "insertion", + lines: part.lines, + noNewlineAtEndOfFile: part.noNewlineAtEndOfFile + }); + break; + case "insertion": + parts.push({ + type: "deletion", + lines: part.lines, + noNewlineAtEndOfFile: part.noNewlineAtEndOfFile + }); + break; + default: + assertNever_1.assertNever(part.type); } - if (entry === null) - state.lastBufferedRequest = null; } - state.bufferedRequest = entry; - state.bufferProcessing = false; + for (let i = 0; i < parts.length - 1; i++) { + if (parts[i].type === "insertion" && parts[i + 1].type === "deletion") { + const tmp = parts[i]; + parts[i] = parts[i + 1]; + parts[i + 1] = tmp; + i += 1; + } + } + const result2 = { + header, + parts + }; + parse_1.verifyHunkIntegrity(result2); + return result2; } - Writable.prototype._write = function(chunk, encoding, cb) { - cb(new Error("_write() is not implemented")); + function reversePatchPart(part) { + switch (part.type) { + case "file creation": + return { + type: "file deletion", + path: part.path, + hash: part.hash, + hunk: part.hunk && reverseHunk(part.hunk), + mode: part.mode + }; + case "file deletion": + return { + type: "file creation", + path: part.path, + hunk: part.hunk && reverseHunk(part.hunk), + mode: part.mode, + hash: part.hash + }; + case "rename": + return { + type: "rename", + fromPath: part.toPath, + toPath: part.fromPath + }; + case "patch": + return { + type: "patch", + path: part.path, + hunks: part.hunks.map(reverseHunk), + beforeHash: part.afterHash, + afterHash: part.beforeHash + }; + case "mode change": + return { + type: "mode change", + path: part.path, + newMode: part.oldMode, + oldMode: part.newMode + }; + } + } + var reversePatch = (patch) => { + return patch.map(reversePatchPart).reverse(); }; - Writable.prototype._writev = null; - Writable.prototype.end = function(chunk, encoding, cb) { - var state = this._writableState; - if (typeof chunk === "function") { - cb = chunk; - chunk = null; - encoding = null; - } else if (typeof encoding === "function") { - cb = encoding; - encoding = null; + exports2.reversePatch = reversePatch; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/read.js +var require_read2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/patch/read.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.readPatch = void 0; + var chalk_1 = __importDefault4(require_source()); + var fs_extra_1 = require_lib113(); + var path_1 = require_path6(); + var path_2 = require("path"); + var parse_1 = require_parse7(); + function readPatch({ patchFilePath, packageDetails, patchDir }) { + try { + return parse_1.parsePatchFile(fs_extra_1.readFileSync(patchFilePath).toString()); + } catch (e) { + if (packageDetails == null || patchDir == null) { + throw e; + } + const fixupSteps = []; + const relativePatchFilePath = path_2.normalize(path_1.relative(process.cwd(), patchFilePath)); + const patchBaseDir = relativePatchFilePath.slice(0, relativePatchFilePath.indexOf(patchDir)); + if (patchBaseDir) { + fixupSteps.push(`cd ${patchBaseDir}`); + } + fixupSteps.push(`patch -p1 -i ${relativePatchFilePath.slice(relativePatchFilePath.indexOf(patchDir))}`); + fixupSteps.push(`npx patch-package ${packageDetails.pathSpecifier}`); + if (patchBaseDir) { + fixupSteps.push(`cd ${path_1.relative(path_1.resolve(process.cwd(), patchBaseDir), process.cwd())}`); + } + console.error(` +${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageDetails.humanReadablePathSpecifier)}`)} + + This happened because the patch file ${relativePatchFilePath} could not be parsed. + + If you just upgraded patch-package, you can try running: + + ${fixupSteps.join("\n ")} + + Otherwise, try manually creating the patch file again. + + If the problem persists, please submit a bug report: + + https://github.com/ds300/patch-package/issues/new?title=Patch+file+parse+error&body=%3CPlease+attach+the+patch+file+in+question%3E + +`); + process.exit(1); } - if (chunk !== null && chunk !== void 0) - this.write(chunk, encoding); - if (state.corked) { - state.corked = 1; - this.uncork(); + return []; + } + exports2.readPatch = readPatch; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/packageIsDevDependency.js +var require_packageIsDevDependency = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/packageIsDevDependency.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.packageIsDevDependency = void 0; + var path_1 = require_path6(); + var fs_1 = require("fs"); + function packageIsDevDependency({ appPath, packageDetails }) { + const packageJsonPath = path_1.join(appPath, "package.json"); + if (!fs_1.existsSync(packageJsonPath)) { + return false; } - if (!state.ending && !state.finished) - endWritable(this, state, cb); + const { devDependencies } = require(packageJsonPath); + return Boolean(devDependencies && devDependencies[packageDetails.packageNames[0]]); + } + exports2.packageIsDevDependency = packageIsDevDependency; + } +}); + +// ../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/applyPatches.js +var require_applyPatches = __commonJS({ + "../node_modules/.pnpm/@pnpm+patch-package@0.0.0/node_modules/@pnpm/patch-package/dist/applyPatches.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - function needFinish(state) { - return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.applyPatch = exports2.applyPatchesForApp = void 0; + var chalk_1 = __importDefault4(require_source()); + var patchFs_1 = require_patchFs2(); + var apply_1 = require_apply(); + var fs_extra_1 = require_lib113(); + var path_1 = require_path6(); + var path_2 = require("path"); + var PackageDetails_1 = require_PackageDetails(); + var reverse_1 = require_reverse(); + var semver_12 = __importDefault4(require_semver2()); + var read_1 = require_read2(); + var packageIsDevDependency_1 = require_packageIsDevDependency(); + var PatchApplicationError = class extends Error { + constructor(msg) { + super(msg); + } + }; + function findPatchFiles(patchesDirectory) { + if (!fs_extra_1.existsSync(patchesDirectory)) { + return []; + } + return patchFs_1.getPatchFiles(patchesDirectory); } - function callFinal(stream, state) { - stream._final(function(err) { - state.pendingcb--; - if (err) { - stream.emit("error", err); + function getInstalledPackageVersion({ appPath, path: path2, pathSpecifier, isDevOnly, patchFilename }) { + const packageDir = path_1.join(appPath, path2); + if (!fs_extra_1.existsSync(packageDir)) { + if (process.env.NODE_ENV === "production" && isDevOnly) { + return null; } - state.prefinished = true; - stream.emit("prefinish"); - finishMaybe(stream, state); - }); + let err = `${chalk_1.default.red("Error:")} Patch file found for package ${path_2.posix.basename(pathSpecifier)} which is not present at ${path_1.relative(".", packageDir)}`; + if (!isDevOnly && process.env.NODE_ENV === "production") { + err += ` + + If this package is a dev dependency, rename the patch file to + + ${chalk_1.default.bold(patchFilename.replace(".patch", ".dev.patch"))} +`; + } + throw new PatchApplicationError(err); + } + const { version: version2 } = require(path_1.join(packageDir, "package.json")); + const result2 = semver_12.default.valid(version2); + if (result2 === null) { + throw new PatchApplicationError(`${chalk_1.default.red("Error:")} Version string '${version2}' cannot be parsed from ${path_1.join(packageDir, "package.json")}`); + } + return result2; } - function prefinish(stream, state) { - if (!state.prefinished && !state.finalCalled) { - if (typeof stream._final === "function") { - state.pendingcb++; - state.finalCalled = true; - pna.nextTick(callFinal, stream, state); - } else { - state.prefinished = true; - stream.emit("prefinish"); + function applyPatchesForApp({ appPath, reverse, patchDir, shouldExitWithError, shouldExitWithWarning }) { + const patchesDirectory = path_1.join(appPath, patchDir); + const files = findPatchFiles(patchesDirectory); + if (files.length === 0) { + console.error(chalk_1.default.blueBright("No patch files found")); + return; + } + const errors = []; + const warnings = []; + for (const filename of files) { + try { + const packageDetails = PackageDetails_1.getPackageDetailsFromPatchFilename(filename); + if (!packageDetails) { + warnings.push(`Unrecognized patch file in patches directory ${filename}`); + continue; + } + const { name, version: version2, path: path2, pathSpecifier, isDevOnly, patchFilename } = packageDetails; + const installedPackageVersion = getInstalledPackageVersion({ + appPath, + path: path2, + pathSpecifier, + isDevOnly: isDevOnly || // check for direct-dependents in prod + process.env.NODE_ENV === "production" && packageIsDevDependency_1.packageIsDevDependency({ appPath, packageDetails }), + patchFilename + }); + if (!installedPackageVersion) { + console.log(`Skipping dev-only ${chalk_1.default.bold(pathSpecifier)}@${version2} ${chalk_1.default.blue("\u2714")}`); + continue; + } + if (applyPatch({ + patchFilePath: path_1.resolve(patchesDirectory, filename), + reverse, + packageDetails, + patchDir + })) { + if (installedPackageVersion !== version2) { + warnings.push(createVersionMismatchWarning({ + packageName: name, + actualVersion: installedPackageVersion, + originalVersion: version2, + pathSpecifier, + path: path2 + })); + } + console.log(`${chalk_1.default.bold(pathSpecifier)}@${version2} ${chalk_1.default.green("\u2714")}`); + } else if (installedPackageVersion === version2) { + errors.push(createBrokenPatchFileError({ + packageName: name, + patchFileName: filename, + pathSpecifier, + path: path2 + })); + } else { + errors.push(createPatchApplictionFailureError({ + packageName: name, + actualVersion: installedPackageVersion, + originalVersion: version2, + patchFileName: filename, + path: path2, + pathSpecifier + })); + } + } catch (error) { + if (error instanceof PatchApplicationError) { + errors.push(error.message); + } else { + errors.push(createUnexpectedError({ filename, error })); + } } } - } - function finishMaybe(stream, state) { - var need = needFinish(state); - if (need) { - prefinish(stream, state); - if (state.pendingcb === 0) { - state.finished = true; - stream.emit("finish"); - } + for (const warning of warnings) { + console.warn(warning); } - return need; - } - function endWritable(stream, state, cb) { - state.ending = true; - finishMaybe(stream, state); - if (cb) { - if (state.finished) - pna.nextTick(cb); - else - stream.once("finish", cb); + for (const error of errors) { + console.error(error); } - state.ended = true; - stream.writable = false; - } - function onCorkedFinish(corkReq, state, err) { - var entry = corkReq.entry; - corkReq.entry = null; - while (entry) { - var cb = entry.callback; - state.pendingcb--; - cb(err); - entry = entry.next; + const problemsSummary = []; + if (warnings.length) { + problemsSummary.push(chalk_1.default.yellow(`${warnings.length} warning(s)`)); } - if (state.corkedRequestsFree) { - state.corkedRequestsFree.next = corkReq; - } else { - state.corkedRequestsFree = corkReq; + if (errors.length) { + problemsSummary.push(chalk_1.default.red(`${errors.length} error(s)`)); + } + if (problemsSummary.length) { + console.error("---"); + console.error("patch-package finished with", problemsSummary.join(", ") + "."); + } + if (errors.length && shouldExitWithError) { + process.exit(1); } + if (warnings.length && shouldExitWithWarning) { + process.exit(1); + } + process.exit(0); } - Object.defineProperty(Writable.prototype, "destroyed", { - get: function() { - if (this._writableState === void 0) { + exports2.applyPatchesForApp = applyPatchesForApp; + function applyPatch({ patchFilePath, reverse, packageDetails, patchDir }) { + const patch = read_1.readPatch({ patchFilePath, packageDetails, patchDir }); + try { + apply_1.executeEffects(reverse ? reverse_1.reversePatch(patch) : patch, { dryRun: false }); + } catch (e) { + try { + apply_1.executeEffects(reverse ? patch : reverse_1.reversePatch(patch), { dryRun: true }); + } catch (e2) { return false; } - return this._writableState.destroyed; - }, - set: function(value) { - if (!this._writableState) { - return; - } - this._writableState.destroyed = value; } - }); - Writable.prototype.destroy = destroyImpl.destroy; - Writable.prototype._undestroy = destroyImpl.undestroy; - Writable.prototype._destroy = function(err, cb) { - this.end(); - cb(err); - }; + return true; + } + exports2.applyPatch = applyPatch; + function createVersionMismatchWarning({ packageName, actualVersion, originalVersion, pathSpecifier, path: path2 }) { + return ` +${chalk_1.default.yellow("Warning:")} patch-package detected a patch file version mismatch + + Don't worry! This is probably fine. The patch was still applied + successfully. Here's the deets: + + Patch file created for + + ${packageName}@${chalk_1.default.bold(originalVersion)} + + applied to + + ${packageName}@${chalk_1.default.bold(actualVersion)} + + At path + + ${path2} + + This warning is just to give you a heads-up. There is a small chance of + breakage even though the patch was applied successfully. Make sure the package + still behaves like you expect (you wrote tests, right?) and then run + + ${chalk_1.default.bold(`patch-package ${pathSpecifier}`)} + + to update the version in the patch file name and make this warning go away. +`; + } + function createBrokenPatchFileError({ packageName, patchFileName, path: path2, pathSpecifier }) { + return ` +${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageName)} at path`)} + + ${path2} + + This error was caused because patch-package cannot apply the following patch file: + + patches/${patchFileName} + + Try removing node_modules and trying again. If that doesn't work, maybe there was + an accidental change made to the patch file? Try recreating it by manually + editing the appropriate files and running: + + patch-package ${pathSpecifier} + + If that doesn't work, then it's a bug in patch-package, so please submit a bug + report. Thanks! + + https://github.com/ds300/patch-package/issues + +`; + } + function createPatchApplictionFailureError({ packageName, actualVersion, originalVersion, patchFileName, path: path2, pathSpecifier }) { + return ` +${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageName)} at path`)} + + ${path2} + + This error was caused because ${chalk_1.default.bold(packageName)} has changed since you + made the patch file for it. This introduced conflicts with your patch, + just like a merge conflict in Git when separate incompatible changes are + made to the same piece of code. + + Maybe this means your patch file is no longer necessary, in which case + hooray! Just delete it! + + Otherwise, you need to generate a new patch file. + + To generate a new one, just repeat the steps you made to generate the first + one. + + i.e. manually make the appropriate file changes, then run + + patch-package ${pathSpecifier} + + Info: + Patch file: patches/${patchFileName} + Patch was made for version: ${chalk_1.default.green.bold(originalVersion)} + Installed version: ${chalk_1.default.red.bold(actualVersion)} +`; + } + function createUnexpectedError({ filename, error }) { + return ` +${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch file ${chalk_1.default.bold(filename)}`)} + +${error.stack} + + `; + } } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_duplex.js -var require_stream_duplex2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { +// ../patching/apply-patch/lib/index.js +var require_lib114 = __commonJS({ + "../patching/apply-patch/lib/index.js"(exports2) { "use strict"; - var pna = require_process_nextick_args(); - var objectKeys = Object.keys || function(obj) { - var keys2 = []; - for (var key in obj) { - keys2.push(key); - } - return keys2; - }; - module2.exports = Duplex; - var util = Object.create(require_util6()); - util.inherits = require_inherits(); - var Readable = require_stream_readable2(); - var Writable = require_stream_writable2(); - util.inherits(Duplex, Readable); - { - keys = objectKeys(Writable.prototype); - for (v = 0; v < keys.length; v++) { - method = keys[v]; - if (!Duplex.prototype[method]) - Duplex.prototype[method] = Writable.prototype[method]; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.applyPatchToDir = void 0; + var error_1 = require_lib8(); + var applyPatches_1 = require_applyPatches(); + function applyPatchToDir(opts) { + const cwd = process.cwd(); + process.chdir(opts.patchedDir); + let success = false; + try { + success = (0, applyPatches_1.applyPatch)({ + patchFilePath: opts.patchFilePath + }); + } catch (err) { + if (err.code === "ENOENT") { + throw new error_1.PnpmError("PATCH_NOT_FOUND", `Patch file not found: ${opts.patchFilePath}`); + } + throw new error_1.PnpmError("INVALID_PATCH", `Applying patch "${opts.patchFilePath}" failed: ${err.message}`); + } finally { + process.chdir(cwd); } - } - var keys; - var method; - var v; - function Duplex(options) { - if (!(this instanceof Duplex)) - return new Duplex(options); - Readable.call(this, options); - Writable.call(this, options); - if (options && options.readable === false) - this.readable = false; - if (options && options.writable === false) - this.writable = false; - this.allowHalfOpen = true; - if (options && options.allowHalfOpen === false) - this.allowHalfOpen = false; - this.once("end", onend); - } - Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { - enumerable: false, - get: function() { - return this._writableState.highWaterMark; + if (!success) { + throw new error_1.PnpmError("PATCH_FAILED", `Could not apply patch ${opts.patchFilePath} to ${opts.patchedDir}`); } - }); - function onend() { - if (this.allowHalfOpen || this._writableState.ended) - return; - pna.nextTick(onEndNT, this); } - function onEndNT(self2) { - self2.end(); + exports2.applyPatchToDir = applyPatchToDir; + } +}); + +// ../exec/build-modules/lib/buildSequence.js +var require_buildSequence = __commonJS({ + "../exec/build-modules/lib/buildSequence.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildSequence = void 0; + var graph_sequencer_1 = __importDefault4(require_graph_sequencer()); + var filter_1 = __importDefault4(require_filter3()); + function buildSequence(depGraph, rootDepPaths) { + const nodesToBuild = /* @__PURE__ */ new Set(); + getSubgraphToBuild(depGraph, rootDepPaths, nodesToBuild, /* @__PURE__ */ new Set()); + const onlyFromBuildGraph = (0, filter_1.default)((depPath) => nodesToBuild.has(depPath)); + const nodesToBuildArray = Array.from(nodesToBuild); + const graph = new Map(nodesToBuildArray.map((depPath) => [depPath, onlyFromBuildGraph(Object.values(depGraph[depPath].children))])); + const graphSequencerResult = (0, graph_sequencer_1.default)({ + graph, + groups: [nodesToBuildArray] + }); + const chunks = graphSequencerResult.chunks; + return chunks; } - Object.defineProperty(Duplex.prototype, "destroyed", { - get: function() { - if (this._readableState === void 0 || this._writableState === void 0) { - return false; - } - return this._readableState.destroyed && this._writableState.destroyed; - }, - set: function(value) { - if (this._readableState === void 0 || this._writableState === void 0) { - return; + exports2.buildSequence = buildSequence; + function getSubgraphToBuild(graph, entryNodes, nodesToBuild, walked) { + let currentShouldBeBuilt = false; + for (const depPath of entryNodes) { + const node = graph[depPath]; + if (!node) + continue; + if (walked.has(depPath)) + continue; + walked.add(depPath); + const childShouldBeBuilt = getSubgraphToBuild(graph, Object.values(node.children), nodesToBuild, walked) || node.requiresBuild || node.patchFile != null; + if (childShouldBeBuilt) { + nodesToBuild.add(depPath); + currentShouldBeBuilt = true; } - this._readableState.destroyed = value; - this._writableState.destroyed = value; } - }); - Duplex.prototype._destroy = function(err, cb) { - this.push(null); - this.end(); - pna.nextTick(cb, err); - }; + return currentShouldBeBuilt; + } } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_readable.js -var require_stream_readable2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { +// ../exec/build-modules/lib/index.js +var require_lib115 = __commonJS({ + "../exec/build-modules/lib/index.js"(exports2) { "use strict"; - var pna = require_process_nextick_args(); - module2.exports = Readable; - var isArray = require_isarray(); - var Duplex; - Readable.ReadableState = ReadableState; - var EE = require("events").EventEmitter; - var EElistenerCount = function(emitter, type) { - return emitter.listeners(type).length; - }; - var Stream = require_stream7(); - var Buffer2 = require_safe_buffer().Buffer; - var OurUint8Array = global.Uint8Array || function() { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - function _uint8ArrayToBuffer(chunk) { - return Buffer2.from(chunk); - } - function _isUint8Array(obj) { - return Buffer2.isBuffer(obj) || obj instanceof OurUint8Array; - } - var util = Object.create(require_util6()); - util.inherits = require_inherits(); - var debugUtil = require("util"); - var debug = void 0; - if (debugUtil && debugUtil.debuglog) { - debug = debugUtil.debuglog("stream"); - } else { - debug = function() { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.linkBinsOfDependencies = exports2.buildModules = void 0; + var path_1 = __importDefault4(require("path")); + var calc_dep_state_1 = require_lib112(); + var core_loggers_1 = require_lib9(); + var lifecycle_1 = require_lib61(); + var link_bins_1 = require_lib54(); + var logger_1 = require_lib6(); + var fs_hard_link_dir_1 = require_lib109(); + var read_package_json_1 = require_lib41(); + var patching_apply_patch_1 = require_lib114(); + var p_defer_1 = __importDefault4(require_p_defer2()); + var pickBy_1 = __importDefault4(require_pickBy()); + var run_groups_1 = __importDefault4(require_lib60()); + var buildSequence_1 = require_buildSequence(); + async function buildModules(depGraph, rootDepPaths, opts) { + const warn = (message2) => { + logger_1.logger.warn({ message: message2, prefix: opts.lockfileDir }); + }; + const buildDepOpts = { + ...opts, + builtHoistedDeps: opts.hoistedLocations ? {} : void 0, + warn }; - } - var BufferList = require_BufferList(); - var destroyImpl = require_destroy2(); - var StringDecoder; - util.inherits(Readable, Stream); - var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; - function prependListener(emitter, event, fn2) { - if (typeof emitter.prependListener === "function") - return emitter.prependListener(event, fn2); - if (!emitter._events || !emitter._events[event]) - emitter.on(event, fn2); - else if (isArray(emitter._events[event])) - emitter._events[event].unshift(fn2); - else - emitter._events[event] = [fn2, emitter._events[event]]; - } - function ReadableState(options, stream) { - Duplex = Duplex || require_stream_duplex2(); - options = options || {}; - var isDuplex = stream instanceof Duplex; - this.objectMode = !!options.objectMode; - if (isDuplex) - this.objectMode = this.objectMode || !!options.readableObjectMode; - var hwm = options.highWaterMark; - var readableHwm = options.readableHighWaterMark; - var defaultHwm = this.objectMode ? 16 : 16 * 1024; - if (hwm || hwm === 0) - this.highWaterMark = hwm; - else if (isDuplex && (readableHwm || readableHwm === 0)) - this.highWaterMark = readableHwm; - else - this.highWaterMark = defaultHwm; - this.highWaterMark = Math.floor(this.highWaterMark); - this.buffer = new BufferList(); - this.length = 0; - this.pipes = null; - this.pipesCount = 0; - this.flowing = null; - this.ended = false; - this.endEmitted = false; - this.reading = false; - this.sync = true; - this.needReadable = false; - this.emittedReadable = false; - this.readableListening = false; - this.resumeScheduled = false; - this.destroyed = false; - this.defaultEncoding = options.defaultEncoding || "utf8"; - this.awaitDrain = 0; - this.readingMore = false; - this.decoder = null; - this.encoding = null; - if (options.encoding) { - if (!StringDecoder) - StringDecoder = require("string_decoder/").StringDecoder; - this.decoder = new StringDecoder(options.encoding); - this.encoding = options.encoding; - } - } - function Readable(options) { - Duplex = Duplex || require_stream_duplex2(); - if (!(this instanceof Readable)) - return new Readable(options); - this._readableState = new ReadableState(options, this); - this.readable = true; - if (options) { - if (typeof options.read === "function") - this._read = options.read; - if (typeof options.destroy === "function") - this._destroy = options.destroy; - } - Stream.call(this); - } - Object.defineProperty(Readable.prototype, "destroyed", { - get: function() { - if (this._readableState === void 0) { - return false; + const chunks = (0, buildSequence_1.buildSequence)(depGraph, rootDepPaths); + const groups = chunks.map((chunk) => { + chunk = chunk.filter((depPath) => { + const node = depGraph[depPath]; + return (node.requiresBuild || node.patchFile != null) && !node.isBuilt; + }); + if (opts.depsToBuild != null) { + chunk = chunk.filter((depPath) => opts.depsToBuild.has(depPath)); } - return this._readableState.destroyed; - }, - set: function(value) { - if (!this._readableState) { + return chunk.map((depPath) => async () => buildDependency(depPath, depGraph, buildDepOpts)); + }); + await (0, run_groups_1.default)(opts.childConcurrency ?? 4, groups); + } + exports2.buildModules = buildModules; + async function buildDependency(depPath, depGraph, opts) { + const depNode = depGraph[depPath]; + if (opts.builtHoistedDeps) { + if (opts.builtHoistedDeps[depNode.depPath]) { + await opts.builtHoistedDeps[depNode.depPath].promise; return; } - this._readableState.destroyed = value; + opts.builtHoistedDeps[depNode.depPath] = (0, p_defer_1.default)(); } - }); - Readable.prototype.destroy = destroyImpl.destroy; - Readable.prototype._undestroy = destroyImpl.undestroy; - Readable.prototype._destroy = function(err, cb) { - this.push(null); - cb(err); - }; - Readable.prototype.push = function(chunk, encoding) { - var state = this._readableState; - var skipChunkCheck; - if (!state.objectMode) { - if (typeof chunk === "string") { - encoding = encoding || state.defaultEncoding; - if (encoding !== state.encoding) { - chunk = Buffer2.from(chunk, encoding); - encoding = ""; - } - skipChunkCheck = true; + try { + await linkBinsOfDependencies(depNode, depGraph, opts); + const isPatched = depNode.patchFile?.path != null; + if (isPatched) { + (0, patching_apply_patch_1.applyPatchToDir)({ patchedDir: depNode.dir, patchFilePath: depNode.patchFile.path }); } - } else { - skipChunkCheck = true; - } - return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); - }; - Readable.prototype.unshift = function(chunk) { - return readableAddChunk(this, chunk, null, true, false); - }; - function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { - var state = stream._readableState; - if (chunk === null) { - state.reading = false; - onEofChunk(stream, state); - } else { - var er; - if (!skipChunkCheck) - er = chunkInvalid(state, chunk); - if (er) { - stream.emit("error", er); - } else if (state.objectMode || chunk && chunk.length > 0) { - if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer2.prototype) { - chunk = _uint8ArrayToBuffer(chunk); - } - if (addToFront) { - if (state.endEmitted) - stream.emit("error", new Error("stream.unshift() after end event")); - else - addChunk(stream, state, chunk, true); - } else if (state.ended) { - stream.emit("error", new Error("stream.push() after EOF")); - } else { - state.reading = false; - if (state.decoder && !encoding) { - chunk = state.decoder.write(chunk); - if (state.objectMode || chunk.length !== 0) - addChunk(stream, state, chunk, false); - else - maybeReadMore(stream, state); + const hasSideEffects = !opts.ignoreScripts && await (0, lifecycle_1.runPostinstallHooks)({ + depPath, + extraBinPaths: opts.extraBinPaths, + extraEnv: opts.extraEnv, + initCwd: opts.lockfileDir, + optional: depNode.optional, + pkgRoot: depNode.dir, + rawConfig: opts.rawConfig, + rootModulesDir: opts.rootModulesDir, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + unsafePerm: opts.unsafePerm || false + }); + if ((isPatched || hasSideEffects) && opts.sideEffectsCacheWrite) { + try { + const sideEffectsCacheKey = (0, calc_dep_state_1.calcDepState)(depGraph, opts.depsStateCache, depPath, { + patchFileHash: depNode.patchFile?.hash, + isBuilt: hasSideEffects + }); + await opts.storeController.upload(depNode.dir, { + sideEffectsCacheKey, + filesIndexFile: depNode.filesIndexFile + }); + } catch (err) { + if (err.statusCode === 403) { + logger_1.logger.warn({ + message: `The store server disabled upload requests, could not upload ${depNode.dir}`, + prefix: opts.lockfileDir + }); } else { - addChunk(stream, state, chunk, false); + logger_1.logger.warn({ + error: err, + message: `An error occurred while uploading ${depNode.dir}`, + prefix: opts.lockfileDir + }); } } - } else if (!addToFront) { - state.reading = false; + } + } catch (err) { + if (depNode.optional) { + const pkg = await (0, read_package_json_1.readPackageJsonFromDir)(path_1.default.join(depNode.dir)); + core_loggers_1.skippedOptionalDependencyLogger.debug({ + details: err.toString(), + package: { + id: depNode.dir, + name: pkg.name, + version: pkg.version + }, + prefix: opts.lockfileDir, + reason: "build_failure" + }); + return; + } + throw err; + } finally { + const hoistedLocationsOfDep = opts.hoistedLocations?.[depNode.depPath]; + if (hoistedLocationsOfDep) { + const currentHoistedLocation = path_1.default.relative(opts.lockfileDir, depNode.dir); + const nonBuiltHoistedDeps = hoistedLocationsOfDep?.filter((hoistedLocation) => hoistedLocation !== currentHoistedLocation); + await (0, fs_hard_link_dir_1.hardLinkDir)(depNode.dir, nonBuiltHoistedDeps); + } + if (opts.builtHoistedDeps) { + opts.builtHoistedDeps[depNode.depPath].resolve(); } } - return needMoreData(state); - } - function addChunk(stream, state, chunk, addToFront) { - if (state.flowing && state.length === 0 && !state.sync) { - stream.emit("data", chunk); - stream.read(0); - } else { - state.length += state.objectMode ? 1 : chunk.length; - if (addToFront) - state.buffer.unshift(chunk); - else - state.buffer.push(chunk); - if (state.needReadable) - emitReadable(stream); - } - maybeReadMore(stream, state); } - function chunkInvalid(state, chunk) { - var er; - if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { - er = new TypeError("Invalid non-string/buffer chunk"); + async function linkBinsOfDependencies(depNode, depGraph, opts) { + const childrenToLink = opts.optional ? depNode.children : (0, pickBy_1.default)((child, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children); + const binPath = path_1.default.join(depNode.dir, "node_modules/.bin"); + const pkgNodes = [ + ...Object.entries(childrenToLink).map(([alias, childDepPath]) => ({ alias, dep: depGraph[childDepPath] })).filter(({ alias, dep }) => { + if (!dep) { + logger_1.logger.debug({ message: `Failed to link bins of "${alias}" to "${binPath}". This is probably not an issue.` }); + return false; + } + return dep.hasBin && dep.installable !== false; + }).map(({ dep }) => dep), + depNode + ]; + const pkgs = await Promise.all(pkgNodes.map(async (dep) => ({ + location: dep.dir, + manifest: await dep.fetchingBundledManifest?.() ?? await (0, read_package_json_1.safeReadPackageJsonFromDir)(dep.dir) ?? {} + }))); + await (0, link_bins_1.linkBinsOfPackages)(pkgs, binPath, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); + if (depNode.hasBundledDependencies) { + const bundledModules = path_1.default.join(depNode.dir, "node_modules"); + await (0, link_bins_1.linkBins)(bundledModules, binPath, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn: opts.warn + }); } - return er; } - function needMoreData(state) { - return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); + exports2.linkBinsOfDependencies = linkBinsOfDependencies; + } +}); + +// ../lockfile/filter-lockfile/lib/filterImporter.js +var require_filterImporter = __commonJS({ + "../lockfile/filter-lockfile/lib/filterImporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterImporter = void 0; + function filterImporter(importer, include) { + return { + dependencies: !include.dependencies ? {} : importer.dependencies ?? {}, + devDependencies: !include.devDependencies ? {} : importer.devDependencies ?? {}, + optionalDependencies: !include.optionalDependencies ? {} : importer.optionalDependencies ?? {}, + specifiers: importer.specifiers + }; } - Readable.prototype.isPaused = function() { - return this._readableState.flowing === false; - }; - Readable.prototype.setEncoding = function(enc) { - if (!StringDecoder) - StringDecoder = require("string_decoder/").StringDecoder; - this._readableState.decoder = new StringDecoder(enc); - this._readableState.encoding = enc; - return this; + exports2.filterImporter = filterImporter; + } +}); + +// ../lockfile/filter-lockfile/lib/filterLockfile.js +var require_filterLockfile = __commonJS({ + "../lockfile/filter-lockfile/lib/filterLockfile.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var MAX_HWM = 8388608; - function computeNewHighWaterMark(n) { - if (n >= MAX_HWM) { - n = MAX_HWM; - } else { - n--; - n |= n >>> 1; - n |= n >>> 2; - n |= n >>> 4; - n |= n >>> 8; - n |= n >>> 16; - n++; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterLockfile = void 0; + var map_1 = __importDefault4(require_map4()); + var filterImporter_1 = require_filterImporter(); + function filterLockfile(lockfile, opts) { + let pairs = Object.entries(lockfile.packages ?? {}).filter(([depPath]) => !opts.skipped.has(depPath)); + if (!opts.include.dependencies) { + pairs = pairs.filter(([_, pkg]) => pkg.dev !== false || pkg.optional); } - return n; - } - function howMuchToRead(n, state) { - if (n <= 0 || state.length === 0 && state.ended) - return 0; - if (state.objectMode) - return 1; - if (n !== n) { - if (state.flowing && state.length) - return state.buffer.head.data.length; - else - return state.length; + if (!opts.include.devDependencies) { + pairs = pairs.filter(([_, pkg]) => pkg.dev !== true); } - if (n > state.highWaterMark) - state.highWaterMark = computeNewHighWaterMark(n); - if (n <= state.length) - return n; - if (!state.ended) { - state.needReadable = true; - return 0; + if (!opts.include.optionalDependencies) { + pairs = pairs.filter(([_, pkg]) => !pkg.optional); } - return state.length; + return { + ...lockfile, + importers: (0, map_1.default)((importer) => (0, filterImporter_1.filterImporter)(importer, opts.include), lockfile.importers), + packages: Object.fromEntries(pairs) + }; } - Readable.prototype.read = function(n) { - debug("read", n); - n = parseInt(n, 10); - var state = this._readableState; - var nOrig = n; - if (n !== 0) - state.emittedReadable = false; - if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { - debug("read: emitReadable", state.length, state.ended); - if (state.length === 0 && state.ended) - endReadable(this); - else - emitReadable(this); - return null; - } - n = howMuchToRead(n, state); - if (n === 0 && state.ended) { - if (state.length === 0) - endReadable(this); - return null; - } - var doRead = state.needReadable; - debug("need readable", doRead); - if (state.length === 0 || state.length - n < state.highWaterMark) { - doRead = true; - debug("length less than watermark", doRead); - } - if (state.ended || state.reading) { - doRead = false; - debug("reading or ended", doRead); - } else if (doRead) { - debug("do read"); - state.reading = true; - state.sync = true; - if (state.length === 0) - state.needReadable = true; - this._read(state.highWaterMark); - state.sync = false; - if (!state.reading) - n = howMuchToRead(nOrig, state); - } - var ret; - if (n > 0) - ret = fromList(n, state); - else - ret = null; - if (ret === null) { - state.needReadable = true; - n = 0; - } else { - state.length -= n; + exports2.filterLockfile = filterLockfile; + } +}); + +// ../lockfile/filter-lockfile/lib/filterLockfileByImporters.js +var require_filterLockfileByImporters = __commonJS({ + "../lockfile/filter-lockfile/lib/filterLockfileByImporters.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterLockfileByImporters = void 0; + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var lockfile_walker_1 = require_lib85(); + var logger_1 = require_lib6(); + var filterImporter_1 = require_filterImporter(); + var lockfileLogger = (0, logger_1.logger)("lockfile"); + function filterLockfileByImporters(lockfile, importerIds, opts) { + const packages = {}; + if (lockfile.packages != null) { + pkgAllDeps((0, lockfile_walker_1.lockfileWalker)(lockfile, importerIds, { include: opts.include, skipped: opts.skipped }).step, packages, { + failOnMissingDependencies: opts.failOnMissingDependencies + }); } - if (state.length === 0) { - if (!state.ended) - state.needReadable = true; - if (nOrig !== n && state.ended) - endReadable(this); + const importers = importerIds.reduce((acc, importerId) => { + acc[importerId] = (0, filterImporter_1.filterImporter)(lockfile.importers[importerId], opts.include); + return acc; + }, { ...lockfile.importers }); + return { + ...lockfile, + importers, + packages + }; + } + exports2.filterLockfileByImporters = filterLockfileByImporters; + function pkgAllDeps(step, pickedPackages, opts) { + for (const { pkgSnapshot, depPath, next } of step.dependencies) { + pickedPackages[depPath] = pkgSnapshot; + pkgAllDeps(next(), pickedPackages, opts); } - if (ret !== null) - this.emit("data", ret); - return ret; - }; - function onEofChunk(stream, state) { - if (state.ended) - return; - if (state.decoder) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) { - state.buffer.push(chunk); - state.length += state.objectMode ? 1 : chunk.length; + for (const depPath of step.missing) { + if (opts.failOnMissingDependencies) { + throw new error_1.LockfileMissingDependencyError(depPath); } + lockfileLogger.debug(`No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}`); } - state.ended = true; - emitReadable(stream); } - function emitReadable(stream) { - var state = stream._readableState; - state.needReadable = false; - if (!state.emittedReadable) { - debug("emitReadable", state.flowing); - state.emittedReadable = true; - if (state.sync) - pna.nextTick(emitReadable_, stream); - else - emitReadable_(stream); + } +}); + +// ../lockfile/filter-lockfile/lib/filterLockfileByImportersAndEngine.js +var require_filterLockfileByImportersAndEngine = __commonJS({ + "../lockfile/filter-lockfile/lib/filterLockfileByImportersAndEngine.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - } - function emitReadable_(stream) { - debug("emit readable"); - stream.emit("readable"); - flow(stream); - } - function maybeReadMore(stream, state) { - if (!state.readingMore) { - state.readingMore = true; - pna.nextTick(maybeReadMore_, stream, state); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterLockfileByImportersAndEngine = void 0; + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var package_is_installable_1 = require_lib24(); + var dp = __importStar5(require_lib81()); + var map_1 = __importDefault4(require_map4()); + var pickBy_1 = __importDefault4(require_pickBy()); + var unnest_1 = __importDefault4(require_unnest()); + var filterImporter_1 = require_filterImporter(); + var lockfileLogger = (0, logger_1.logger)("lockfile"); + function filterLockfileByImportersAndEngine(lockfile, importerIds, opts) { + const importerIdSet = new Set(importerIds); + const directDepPaths = toImporterDepPaths(lockfile, importerIds, { + include: opts.include, + importerIdSet + }); + const packages = lockfile.packages != null ? pickPkgsWithAllDeps(lockfile, directDepPaths, importerIdSet, { + currentEngine: opts.currentEngine, + engineStrict: opts.engineStrict, + failOnMissingDependencies: opts.failOnMissingDependencies, + include: opts.include, + includeIncompatiblePackages: opts.includeIncompatiblePackages === true, + lockfileDir: opts.lockfileDir, + skipped: opts.skipped + }) : {}; + const importers = (0, map_1.default)((importer) => { + const newImporter = (0, filterImporter_1.filterImporter)(importer, opts.include); + if (newImporter.optionalDependencies != null) { + newImporter.optionalDependencies = (0, pickBy_1.default)((ref, depName) => { + const depPath = dp.refToRelative(ref, depName); + return !depPath || packages[depPath] != null; + }, newImporter.optionalDependencies); + } + return newImporter; + }, lockfile.importers); + return { + lockfile: { + ...lockfile, + importers, + packages + }, + selectedImporterIds: Array.from(importerIdSet) + }; } - function maybeReadMore_(stream, state) { - var len = state.length; - while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { - debug("maybeReadMore read 0"); - stream.read(0); - if (len === state.length) - break; - else - len = state.length; - } - state.readingMore = false; + exports2.filterLockfileByImportersAndEngine = filterLockfileByImportersAndEngine; + function pickPkgsWithAllDeps(lockfile, depPaths, importerIdSet, opts) { + const pickedPackages = {}; + pkgAllDeps({ lockfile, pickedPackages, importerIdSet }, depPaths, true, opts); + return pickedPackages; } - Readable.prototype._read = function(n) { - this.emit("error", new Error("_read() is not implemented")); - }; - Readable.prototype.pipe = function(dest, pipeOpts) { - var src = this; - var state = this._readableState; - switch (state.pipesCount) { - case 0: - state.pipes = dest; - break; - case 1: - state.pipes = [state.pipes, dest]; - break; - default: - state.pipes.push(dest); - break; - } - state.pipesCount += 1; - debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); - var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; - var endFn = doEnd ? onend : unpipe; - if (state.endEmitted) - pna.nextTick(endFn); - else - src.once("end", endFn); - dest.on("unpipe", onunpipe); - function onunpipe(readable, unpipeInfo) { - debug("onunpipe"); - if (readable === src) { - if (unpipeInfo && unpipeInfo.hasUnpiped === false) { - unpipeInfo.hasUnpiped = true; - cleanup(); + function pkgAllDeps(ctx, depPaths, parentIsInstallable, opts) { + for (const depPath of depPaths) { + if (ctx.pickedPackages[depPath]) + continue; + const pkgSnapshot = ctx.lockfile.packages[depPath]; + if (!pkgSnapshot && !depPath.startsWith("link:")) { + if (opts.failOnMissingDependencies) { + throw new error_1.LockfileMissingDependencyError(depPath); } + lockfileLogger.debug(`No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}`); + continue; } - } - function onend() { - debug("onend"); - dest.end(); - } - var ondrain = pipeOnDrain(src); - dest.on("drain", ondrain); - var cleanedUp = false; - function cleanup() { - debug("cleanup"); - dest.removeListener("close", onclose); - dest.removeListener("finish", onfinish); - dest.removeListener("drain", ondrain); - dest.removeListener("error", onerror); - dest.removeListener("unpipe", onunpipe); - src.removeListener("end", onend); - src.removeListener("end", unpipe); - src.removeListener("data", ondata); - cleanedUp = true; - if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) - ondrain(); - } - var increasedAwaitDrain = false; - src.on("data", ondata); - function ondata(chunk) { - debug("ondata"); - increasedAwaitDrain = false; - var ret = dest.write(chunk); - if (ret === false && !increasedAwaitDrain) { - if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { - debug("false write response, pause", src._readableState.awaitDrain); - src._readableState.awaitDrain++; - increasedAwaitDrain = true; + let installable; + if (!parentIsInstallable) { + installable = false; + if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) { + opts.skipped.add(depPath); + } + } else { + const pkg = { + ...(0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot), + cpu: pkgSnapshot.cpu, + engines: pkgSnapshot.engines, + os: pkgSnapshot.os, + libc: pkgSnapshot.libc + }; + installable = opts.includeIncompatiblePackages || (0, package_is_installable_1.packageIsInstallable)(pkgSnapshot.id ?? depPath, pkg, { + engineStrict: opts.engineStrict, + lockfileDir: opts.lockfileDir, + nodeVersion: opts.currentEngine.nodeVersion, + optional: pkgSnapshot.optional === true, + pnpmVersion: opts.currentEngine.pnpmVersion + }) !== false; + if (!installable) { + if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) { + opts.skipped.add(depPath); + } + } else { + opts.skipped.delete(depPath); } - src.pause(); } + ctx.pickedPackages[depPath] = pkgSnapshot; + const { depPaths: nextRelDepPaths, importerIds: additionalImporterIds } = parseDepRefs(Object.entries({ + ...pkgSnapshot.dependencies, + ...opts.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {} + }), ctx.lockfile); + additionalImporterIds.forEach((importerId) => ctx.importerIdSet.add(importerId)); + nextRelDepPaths.push(...toImporterDepPaths(ctx.lockfile, additionalImporterIds, { + include: opts.include, + importerIdSet: ctx.importerIdSet + })); + pkgAllDeps(ctx, nextRelDepPaths, installable, opts); } - function onerror(er) { - debug("onerror", er); - unpipe(); - dest.removeListener("error", onerror); - if (EElistenerCount(dest, "error") === 0) - dest.emit("error", er); - } - prependListener(dest, "error", onerror); - function onclose() { - dest.removeListener("finish", onfinish); - unpipe(); - } - dest.once("close", onclose); - function onfinish() { - debug("onfinish"); - dest.removeListener("close", onclose); - unpipe(); - } - dest.once("finish", onfinish); - function unpipe() { - debug("unpipe"); - src.unpipe(dest); - } - dest.emit("pipe", src); - if (!state.flowing) { - debug("pipe resume"); - src.resume(); + } + function toImporterDepPaths(lockfile, importerIds, opts) { + const importerDeps = importerIds.map((importerId) => lockfile.importers[importerId]).map((importer) => ({ + ...opts.include.dependencies ? importer.dependencies : {}, + ...opts.include.devDependencies ? importer.devDependencies : {}, + ...opts.include.optionalDependencies ? importer.optionalDependencies : {} + })).map(Object.entries); + const { depPaths, importerIds: nextImporterIds } = parseDepRefs((0, unnest_1.default)(importerDeps), lockfile); + if (!nextImporterIds.length) { + return depPaths; } - return dest; - }; - function pipeOnDrain(src) { - return function() { - var state = src._readableState; - debug("pipeOnDrain", state.awaitDrain); - if (state.awaitDrain) - state.awaitDrain--; - if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { - state.flowing = true; - flow(src); + nextImporterIds.forEach((importerId) => { + opts.importerIdSet.add(importerId); + }); + return [ + ...depPaths, + ...toImporterDepPaths(lockfile, nextImporterIds, opts) + ]; + } + function parseDepRefs(refsByPkgNames, lockfile) { + return refsByPkgNames.reduce((acc, [pkgName, ref]) => { + if (ref.startsWith("link:")) { + const importerId = ref.substring(5); + if (lockfile.importers[importerId]) { + acc.importerIds.push(importerId); + } + return acc; } - }; + const depPath = dp.refToRelative(ref, pkgName); + if (depPath == null) + return acc; + acc.depPaths.push(depPath); + return acc; + }, { depPaths: [], importerIds: [] }); } - Readable.prototype.unpipe = function(dest) { - var state = this._readableState; - var unpipeInfo = { hasUnpiped: false }; - if (state.pipesCount === 0) - return this; - if (state.pipesCount === 1) { - if (dest && dest !== state.pipes) - return this; - if (!dest) - dest = state.pipes; - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - if (dest) - dest.emit("unpipe", this, unpipeInfo); - return this; + } +}); + +// ../lockfile/filter-lockfile/lib/index.js +var require_lib116 = __commonJS({ + "../lockfile/filter-lockfile/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filterLockfileByImportersAndEngine = exports2.filterLockfileByImporters = exports2.filterLockfile = void 0; + var filterLockfile_1 = require_filterLockfile(); + Object.defineProperty(exports2, "filterLockfile", { enumerable: true, get: function() { + return filterLockfile_1.filterLockfile; + } }); + var filterLockfileByImporters_1 = require_filterLockfileByImporters(); + Object.defineProperty(exports2, "filterLockfileByImporters", { enumerable: true, get: function() { + return filterLockfileByImporters_1.filterLockfileByImporters; + } }); + var filterLockfileByImportersAndEngine_1 = require_filterLockfileByImportersAndEngine(); + Object.defineProperty(exports2, "filterLockfileByImportersAndEngine", { enumerable: true, get: function() { + return filterLockfileByImportersAndEngine_1.filterLockfileByImportersAndEngine; + } }); + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapObjIndexed.js +var require_mapObjIndexed = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapObjIndexed.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduce = require_reduce2(); + var keys = require_keys(); + var mapObjIndexed = /* @__PURE__ */ _curry2(function mapObjIndexed2(fn2, obj) { + return _reduce(function(acc, key) { + acc[key] = fn2(obj[key], key, obj); + return acc; + }, {}, keys(obj)); + }); + module2.exports = mapObjIndexed; + } +}); + +// ../pkg-manager/hoist/lib/index.js +var require_lib117 = __commonJS({ + "../pkg-manager/hoist/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (!dest) { - var dests = state.pipes; - var len = state.pipesCount; - state.pipes = null; - state.pipesCount = 0; - state.flowing = false; - for (var i = 0; i < len; i++) { - dests[i].emit("unpipe", this, unpipeInfo); - } - return this; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - var index = indexOf(state.pipes, dest); - if (index === -1) - return this; - state.pipes.splice(index, 1); - state.pipesCount -= 1; - if (state.pipesCount === 1) - state.pipes = state.pipes[0]; - dest.emit("unpipe", this, unpipeInfo); - return this; + __setModuleDefault4(result2, mod); + return result2; }; - Readable.prototype.on = function(ev, fn2) { - var res = Stream.prototype.on.call(this, ev, fn2); - if (ev === "data") { - if (this._readableState.flowing !== false) - this.resume(); - } else if (ev === "readable") { - var state = this._readableState; - if (!state.endEmitted && !state.readableListening) { - state.readableListening = state.needReadable = true; - state.emittedReadable = false; - if (!state.reading) { - pna.nextTick(nReadingNextTick, this); - } else if (state.length) { - emitReadable(this); - } - } - } - return res; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - Readable.prototype.addListener = Readable.prototype.on; - function nReadingNextTick(self2) { - debug("readable nexttick read 0"); - self2.read(0); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hoist = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var constants_1 = require_lib7(); + var link_bins_1 = require_lib54(); + var lockfile_utils_1 = require_lib84(); + var lockfile_walker_1 = require_lib85(); + var logger_1 = require_lib6(); + var matcher_1 = require_lib19(); + var util_lex_comparator_1 = require_dist5(); + var dp = __importStar5(require_lib81()); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var mapObjIndexed_1 = __importDefault4(require_mapObjIndexed()); + var resolve_link_target_1 = __importDefault4(require_resolve_link_target()); + var symlink_dir_1 = __importDefault4(require_dist12()); + var hoistLogger = (0, logger_1.logger)("hoist"); + async function hoist(opts) { + if (opts.lockfile.packages == null) + return {}; + const { directDeps, step } = (0, lockfile_walker_1.lockfileWalker)(opts.lockfile, opts.importerIds ?? Object.keys(opts.lockfile.importers)); + const deps = [ + { + children: directDeps.reduce((acc, { alias, depPath }) => { + if (!acc[alias]) { + acc[alias] = depPath; + } + return acc; + }, {}), + depPath: "", + depth: -1 + }, + ...await getDependencies(step, 0) + ]; + const getAliasHoistType = createGetAliasHoistType(opts.publicHoistPattern, opts.privateHoistPattern); + const hoistedDependencies = await hoistGraph(deps, opts.lockfile.importers["."]?.specifiers ?? {}, { + getAliasHoistType + }); + await symlinkHoistedDependencies(hoistedDependencies, { + lockfile: opts.lockfile, + privateHoistedModulesDir: opts.privateHoistedModulesDir, + publicHoistedModulesDir: opts.publicHoistedModulesDir, + virtualStoreDir: opts.virtualStoreDir + }); + await linkAllBins(opts.privateHoistedModulesDir, { + extraNodePaths: opts.extraNodePath, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); + return hoistedDependencies; } - Readable.prototype.resume = function() { - var state = this._readableState; - if (!state.flowing) { - debug("resume"); - state.flowing = true; - resume(this, state); - } - return this; - }; - function resume(stream, state) { - if (!state.resumeScheduled) { - state.resumeScheduled = true; - pna.nextTick(resume_, stream, state); - } + exports2.hoist = hoist; + function createGetAliasHoistType(publicHoistPattern, privateHoistPattern) { + const publicMatcher = (0, matcher_1.createMatcher)(publicHoistPattern); + const privateMatcher = (0, matcher_1.createMatcher)(privateHoistPattern); + return (alias) => { + if (publicMatcher(alias)) + return "public"; + if (privateMatcher(alias)) + return "private"; + return false; + }; } - function resume_(stream, state) { - if (!state.reading) { - debug("resume read 0"); - stream.read(0); + async function linkAllBins(modulesDir, opts) { + const bin = path_1.default.join(modulesDir, ".bin"); + const warn = (message2, code) => { + if (code === "BINARIES_CONFLICT") + return; + logger_1.logger.info({ message: message2, prefix: path_1.default.join(modulesDir, "../..") }); + }; + try { + await (0, link_bins_1.linkBins)(modulesDir, bin, { + allowExoticManifests: true, + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn + }); + } catch (err) { } - state.resumeScheduled = false; - state.awaitDrain = 0; - stream.emit("resume"); - flow(stream); - if (state.flowing && !state.reading) - stream.read(0); } - Readable.prototype.pause = function() { - debug("call pause flowing=%j", this._readableState.flowing); - if (this._readableState.flowing !== false) { - debug("pause"); - this._readableState.flowing = false; - this.emit("pause"); + async function getDependencies(step, depth) { + const deps = []; + const nextSteps = []; + for (const { pkgSnapshot, depPath, next } of step.dependencies) { + const allDeps = { + ...pkgSnapshot.dependencies, + ...pkgSnapshot.optionalDependencies + }; + deps.push({ + children: (0, mapObjIndexed_1.default)(dp.refToRelative, allDeps), + depPath, + depth + }); + nextSteps.push(next()); } - return this; - }; - function flow(stream) { - var state = stream._readableState; - debug("flow", state.flowing); - while (state.flowing && stream.read() !== null) { + for (const depPath of step.missing) { + logger_1.logger.debug({ message: `No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}` }); } + return (await Promise.all(nextSteps.map(async (nextStep) => getDependencies(nextStep, depth + 1)))).reduce((acc, deps2) => [...acc, ...deps2], deps); } - Readable.prototype.wrap = function(stream) { - var _this = this; - var state = this._readableState; - var paused = false; - stream.on("end", function() { - debug("wrapped end"); - if (state.decoder && !state.ended) { - var chunk = state.decoder.end(); - if (chunk && chunk.length) - _this.push(chunk); + async function hoistGraph(depNodes, currentSpecifiers, opts) { + const hoistedAliases = new Set(Object.keys(currentSpecifiers)); + const hoistedDependencies = {}; + depNodes.sort((a, b) => { + const depthDiff = a.depth - b.depth; + return depthDiff === 0 ? (0, util_lex_comparator_1.lexCompare)(a.depPath, b.depPath) : depthDiff; + }).forEach((depNode) => { + for (const [childAlias, childPath] of Object.entries(depNode.children)) { + const hoist2 = opts.getAliasHoistType(childAlias); + if (!hoist2) + continue; + const childAliasNormalized = childAlias.toLowerCase(); + if (hoistedAliases.has(childAliasNormalized)) { + continue; + } + hoistedAliases.add(childAliasNormalized); + if (!hoistedDependencies[childPath]) { + hoistedDependencies[childPath] = {}; + } + hoistedDependencies[childPath][childAlias] = hoist2; } - _this.push(null); }); - stream.on("data", function(chunk) { - debug("wrapped data"); - if (state.decoder) - chunk = state.decoder.write(chunk); - if (state.objectMode && (chunk === null || chunk === void 0)) - return; - else if (!state.objectMode && (!chunk || !chunk.length)) + return hoistedDependencies; + } + async function symlinkHoistedDependencies(hoistedDependencies, opts) { + const symlink = symlinkHoistedDependency.bind(null, opts); + await Promise.all(Object.entries(hoistedDependencies).map(async ([depPath, pkgAliases]) => { + const pkgSnapshot = opts.lockfile.packages[depPath]; + if (!pkgSnapshot) { + hoistLogger.debug({ hoistFailedFor: depPath }); return; - var ret = _this.push(chunk); - if (!ret) { - paused = true; - stream.pause(); - } - }); - for (var i in stream) { - if (this[i] === void 0 && typeof stream[i] === "function") { - this[i] = function(method) { - return function() { - return stream[method].apply(stream, arguments); - }; - }(i); - } - } - for (var n = 0; n < kProxyEvents.length; n++) { - stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); - } - this._read = function(n2) { - debug("wrapped _read", n2); - if (paused) { - paused = false; - stream.resume(); } - }; - return this; - }; - Object.defineProperty(Readable.prototype, "readableHighWaterMark", { - enumerable: false, - get: function() { - return this._readableState.highWaterMark; + const pkgName = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot).name; + const modules = path_1.default.join(opts.virtualStoreDir, dp.depPathToFilename(depPath), "node_modules"); + const depLocation = path_1.default.join(modules, pkgName); + await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => { + const targetDir = hoistType === "public" ? opts.publicHoistedModulesDir : opts.privateHoistedModulesDir; + const dest = path_1.default.join(targetDir, pkgAlias); + return symlink(depLocation, dest); + })); + })); + } + async function symlinkHoistedDependency(opts, depLocation, dest) { + try { + await (0, symlink_dir_1.default)(depLocation, dest, { overwrite: false }); + core_loggers_1.linkLogger.debug({ target: dest, link: depLocation }); + return; + } catch (err) { + if (err.code !== "EEXIST" && err.code !== "EISDIR") + throw err; } - }); - Readable._fromList = fromList; - function fromList(n, state) { - if (state.length === 0) - return null; - var ret; - if (state.objectMode) - ret = state.buffer.shift(); - else if (!n || n >= state.length) { - if (state.decoder) - ret = state.buffer.join(""); - else if (state.buffer.length === 1) - ret = state.buffer.head.data; - else - ret = state.buffer.concat(state.length); - state.buffer.clear(); - } else { - ret = fromListPartial(n, state.buffer, state.decoder); + let existingSymlink; + try { + existingSymlink = await (0, resolve_link_target_1.default)(dest); + } catch (err) { + hoistLogger.debug({ + skipped: dest, + reason: "a directory is present at the target location" + }); + return; } - return ret; - } - function fromListPartial(n, list, hasStrings) { - var ret; - if (n < list.head.data.length) { - ret = list.head.data.slice(0, n); - list.head.data = list.head.data.slice(n); - } else if (n === list.head.data.length) { - ret = list.shift(); - } else { - ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); + if (!(0, is_subdir_1.default)(opts.virtualStoreDir, existingSymlink)) { + hoistLogger.debug({ + skipped: dest, + existingSymlink, + reason: "an external symlink is present at the target location" + }); + return; } - return ret; + await fs_1.default.promises.unlink(dest); + await (0, symlink_dir_1.default)(depLocation, dest); + core_loggers_1.linkLogger.debug({ target: dest, link: depLocation }); } - function copyFromBufferString(n, list) { - var p = list.head; - var c = 1; - var ret = p.data; - n -= ret.length; - while (p = p.next) { - var str = p.data; - var nb = n > str.length ? str.length : n; - if (nb === str.length) - ret += str; - else - ret += str.slice(0, n); - n -= nb; - if (n === 0) { - if (nb === str.length) { - ++c; - if (p.next) - list.head = p.next; - else - list.head = list.tail = null; - } else { - list.head = p; - p.data = str.slice(nb); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+pnp@2.3.2/node_modules/@yarnpkg/pnp/lib/index.js +var require_lib118 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+pnp@2.3.2/node_modules/@yarnpkg/pnp/lib/index.js"(exports2, module2) { + module2.exports = /******/ + (() => { + var __webpack_modules__ = { + /***/ + 862: ( + /***/ + (__unused_webpack_module, __webpack_exports__, __webpack_require__2) => { + "use strict"; + __webpack_require__2.r(__webpack_exports__); + __webpack_require__2.d(__webpack_exports__, { + "LinkType": () => ( + /* reexport */ + LinkType + ), + "generateInlinedScript": () => ( + /* reexport */ + generateInlinedScript + ), + "generateSplitScript": () => ( + /* reexport */ + generateSplitScript + ), + "hydratePnpFile": () => ( + /* reexport */ + hydratePnpFile + ), + "hydratePnpSource": () => ( + /* reexport */ + hydratePnpSource + ), + "makeRuntimeApi": () => ( + /* reexport */ + makeRuntimeApi + ) + }); + var LinkType; + (function(LinkType2) { + LinkType2["HARD"] = "HARD"; + LinkType2["SOFT"] = "SOFT"; + })(LinkType || (LinkType = {})); + var PrettyJsonState; + (function(PrettyJsonState2) { + PrettyJsonState2["DEFAULT"] = "DEFAULT"; + PrettyJsonState2["TOP_LEVEL"] = "TOP_LEVEL"; + PrettyJsonState2["FALLBACK_EXCLUSION_LIST"] = "FALLBACK_EXCLUSION_LIST"; + PrettyJsonState2["FALLBACK_EXCLUSION_ENTRIES"] = "FALLBACK_EXCLUSION_ENTRIES"; + PrettyJsonState2["FALLBACK_EXCLUSION_DATA"] = "FALLBACK_EXCLUSION_DATA"; + PrettyJsonState2["PACKAGE_REGISTRY_DATA"] = "PACKAGE_REGISTRY_DATA"; + PrettyJsonState2["PACKAGE_REGISTRY_ENTRIES"] = "PACKAGE_REGISTRY_ENTRIES"; + PrettyJsonState2["PACKAGE_STORE_DATA"] = "PACKAGE_STORE_DATA"; + PrettyJsonState2["PACKAGE_STORE_ENTRIES"] = "PACKAGE_STORE_ENTRIES"; + PrettyJsonState2["PACKAGE_INFORMATION_DATA"] = "PACKAGE_INFORMATION_DATA"; + PrettyJsonState2["PACKAGE_DEPENDENCIES"] = "PACKAGE_DEPENDENCIES"; + PrettyJsonState2["PACKAGE_DEPENDENCY"] = "PACKAGE_DEPENDENCY"; + })(PrettyJsonState || (PrettyJsonState = {})); + const prettyJsonMachine = { + [PrettyJsonState.DEFAULT]: { + collapsed: false, + next: { + [`*`]: PrettyJsonState.DEFAULT + } + }, + // { + // "fallbackExclusionList": ... + // } + [PrettyJsonState.TOP_LEVEL]: { + collapsed: false, + next: { + [`fallbackExclusionList`]: PrettyJsonState.FALLBACK_EXCLUSION_LIST, + [`packageRegistryData`]: PrettyJsonState.PACKAGE_REGISTRY_DATA, + [`*`]: PrettyJsonState.DEFAULT + } + }, + // "fallbackExclusionList": [ + // ... + // ] + [PrettyJsonState.FALLBACK_EXCLUSION_LIST]: { + collapsed: false, + next: { + [`*`]: PrettyJsonState.FALLBACK_EXCLUSION_ENTRIES + } + }, + // "fallbackExclusionList": [ + // [...] + // ] + [PrettyJsonState.FALLBACK_EXCLUSION_ENTRIES]: { + collapsed: true, + next: { + [`*`]: PrettyJsonState.FALLBACK_EXCLUSION_DATA + } + }, + // "fallbackExclusionList": [ + // [..., [...]] + // ] + [PrettyJsonState.FALLBACK_EXCLUSION_DATA]: { + collapsed: true, + next: { + [`*`]: PrettyJsonState.DEFAULT + } + }, + // "packageRegistryData": [ + // ... + // ] + [PrettyJsonState.PACKAGE_REGISTRY_DATA]: { + collapsed: false, + next: { + [`*`]: PrettyJsonState.PACKAGE_REGISTRY_ENTRIES + } + }, + // "packageRegistryData": [ + // [...] + // ] + [PrettyJsonState.PACKAGE_REGISTRY_ENTRIES]: { + collapsed: true, + next: { + [`*`]: PrettyJsonState.PACKAGE_STORE_DATA + } + }, + // "packageRegistryData": [ + // [..., [ + // ... + // ]] + // ] + [PrettyJsonState.PACKAGE_STORE_DATA]: { + collapsed: false, + next: { + [`*`]: PrettyJsonState.PACKAGE_STORE_ENTRIES + } + }, + // "packageRegistryData": [ + // [..., [ + // [...] + // ]] + // ] + [PrettyJsonState.PACKAGE_STORE_ENTRIES]: { + collapsed: true, + next: { + [`*`]: PrettyJsonState.PACKAGE_INFORMATION_DATA + } + }, + // "packageRegistryData": [ + // [..., [ + // [..., { + // ... + // }] + // ]] + // ] + [PrettyJsonState.PACKAGE_INFORMATION_DATA]: { + collapsed: false, + next: { + [`packageDependencies`]: PrettyJsonState.PACKAGE_DEPENDENCIES, + [`*`]: PrettyJsonState.DEFAULT + } + }, + // "packageRegistryData": [ + // [..., [ + // [..., { + // "packagePeers": [ + // ... + // ] + // }] + // ]] + // ] + [PrettyJsonState.PACKAGE_DEPENDENCIES]: { + collapsed: false, + next: { + [`*`]: PrettyJsonState.PACKAGE_DEPENDENCY + } + }, + // "packageRegistryData": [ + // [..., [ + // [..., { + // "packageDependencies": [ + // [...] + // ] + // }] + // ]] + // ] + [PrettyJsonState.PACKAGE_DEPENDENCY]: { + collapsed: true, + next: { + [`*`]: PrettyJsonState.DEFAULT + } + } + }; + function generateCollapsedArray(data, state, indent) { + let result2 = ``; + result2 += `[`; + for (let t = 0, T = data.length; t < T; ++t) { + result2 += generateNext(String(t), data[t], state, indent).replace(/^ +/g, ``); + if (t + 1 < T) { + result2 += `, `; + } + } + result2 += `]`; + return result2; + } + function generateExpandedArray(data, state, indent) { + const nextIndent = `${indent} `; + let result2 = ``; + result2 += indent; + result2 += `[ +`; + for (let t = 0, T = data.length; t < T; ++t) { + result2 += nextIndent + generateNext(String(t), data[t], state, nextIndent).replace(/^ +/, ``); + if (t + 1 < T) + result2 += `,`; + result2 += ` +`; + } + result2 += indent; + result2 += `]`; + return result2; + } + function generateCollapsedObject(data, state, indent) { + const keys = Object.keys(data); + let result2 = ``; + result2 += `{`; + for (let t = 0, T = keys.length; t < T; ++t) { + const key = keys[t]; + const value = data[key]; + if (typeof value === `undefined`) + continue; + result2 += JSON.stringify(key); + result2 += `: `; + result2 += generateNext(key, value, state, indent).replace(/^ +/g, ``); + if (t + 1 < T) { + result2 += `, `; + } + } + result2 += `}`; + return result2; + } + function generateExpandedObject(data, state, indent) { + const keys = Object.keys(data); + const nextIndent = `${indent} `; + let result2 = ``; + result2 += indent; + result2 += `{ +`; + for (let t = 0, T = keys.length; t < T; ++t) { + const key = keys[t]; + const value = data[key]; + if (typeof value === `undefined`) + continue; + result2 += nextIndent; + result2 += JSON.stringify(key); + result2 += `: `; + result2 += generateNext(key, value, state, nextIndent).replace(/^ +/g, ``); + if (t + 1 < T) + result2 += `,`; + result2 += ` +`; + } + result2 += indent; + result2 += `}`; + return result2; + } + function generateNext(key, data, state, indent) { + const { + next + } = prettyJsonMachine[state]; + const nextState = next[key] || next[`*`]; + return generate(data, nextState, indent); + } + function generate(data, state, indent) { + const { + collapsed + } = prettyJsonMachine[state]; + if (Array.isArray(data)) { + if (collapsed) { + return generateCollapsedArray(data, state, indent); + } else { + return generateExpandedArray(data, state, indent); + } + } + if (typeof data === `object` && data !== null) { + if (collapsed) { + return generateCollapsedObject(data, state, indent); + } else { + return generateExpandedObject(data, state, indent); + } + } + return JSON.stringify(data); + } + function generatePrettyJson(data) { + return generate(data, PrettyJsonState.TOP_LEVEL, ``); + } + function sortMap2(values, mappers) { + const asArray = Array.from(values); + if (!Array.isArray(mappers)) + mappers = [mappers]; + const stringified = []; + for (const mapper of mappers) + stringified.push(asArray.map((value) => mapper(value))); + const indices = asArray.map((_, index) => index); + indices.sort((a, b) => { + for (const layer of stringified) { + const comparison = layer[a] < layer[b] ? -1 : layer[a] > layer[b] ? 1 : 0; + if (comparison !== 0) { + return comparison; + } + } + return 0; + }); + return indices.map((index) => { + return asArray[index]; + }); + } + function generateFallbackExclusionList(settings) { + const fallbackExclusionList = /* @__PURE__ */ new Map(); + const sortedData = sortMap2(settings.fallbackExclusionList || [], [({ + name, + reference + }) => name, ({ + name, + reference + }) => reference]); + for (const { + name, + reference + } of sortedData) { + let references = fallbackExclusionList.get(name); + if (typeof references === `undefined`) + fallbackExclusionList.set(name, references = /* @__PURE__ */ new Set()); + references.add(reference); + } + return Array.from(fallbackExclusionList).map(([name, references]) => { + return [name, Array.from(references)]; + }); + } + function generateFallbackPoolData(settings) { + return sortMap2(settings.fallbackPool || [], ([name]) => name); + } + function generatePackageRegistryData(settings) { + const packageRegistryData = []; + for (const [packageName, packageStore] of sortMap2(settings.packageRegistry, ([packageName2]) => packageName2 === null ? `0` : `1${packageName2}`)) { + const packageStoreData = []; + packageRegistryData.push([packageName, packageStoreData]); + for (const [packageReference, { + packageLocation, + packageDependencies, + packagePeers, + linkType, + discardFromLookup + }] of sortMap2(packageStore, ([packageReference2]) => packageReference2 === null ? `0` : `1${packageReference2}`)) { + const normalizedDependencies = []; + if (packageName !== null && packageReference !== null && !packageDependencies.has(packageName)) + normalizedDependencies.push([packageName, packageReference]); + for (const [dependencyName, dependencyReference] of sortMap2(packageDependencies.entries(), ([dependencyName2]) => dependencyName2)) + normalizedDependencies.push([dependencyName, dependencyReference]); + const normalizedPeers = packagePeers && packagePeers.size > 0 ? Array.from(packagePeers) : void 0; + const normalizedDiscardFromLookup = discardFromLookup ? discardFromLookup : void 0; + packageStoreData.push([packageReference, { + packageLocation, + packageDependencies: normalizedDependencies, + packagePeers: normalizedPeers, + linkType, + discardFromLookup: normalizedDiscardFromLookup + }]); + } + } + return packageRegistryData; + } + function generateLocationBlacklistData(settings) { + return sortMap2(settings.blacklistedLocations || [], (location) => location); + } + function generateSerializedState(settings) { + return { + // @eslint-ignore-next-line @typescript-eslint/naming-convention + __info: [`This file is automatically generated. Do not touch it, or risk`, `your modifications being lost. We also recommend you not to read`, `it either without using the @yarnpkg/pnp package, as the data layout`, `is entirely unspecified and WILL change from a version to another.`], + dependencyTreeRoots: settings.dependencyTreeRoots, + enableTopLevelFallback: settings.enableTopLevelFallback || false, + ignorePatternData: settings.ignorePattern || null, + fallbackExclusionList: generateFallbackExclusionList(settings), + fallbackPool: generateFallbackPoolData(settings), + locationBlacklistData: generateLocationBlacklistData(settings), + packageRegistryData: generatePackageRegistryData(settings) + }; + } + var hook = __webpack_require__2(650); + var hook_default = /* @__PURE__ */ __webpack_require__2.n(hook); + function generateLoader(shebang, loader) { + return [shebang ? `${shebang} +` : ``, `/* eslint-disable */ + +`, `try { +`, ` Object.freeze({}).detectStrictMode = true; +`, `} catch (error) { +`, ` throw new Error(\`The whole PnP file got strict-mode-ified, which is known to break (Emscripten libraries aren't strict mode). This usually happens when the file goes through Babel.\`); +`, `} +`, ` +`, `var __non_webpack_module__ = module; +`, ` +`, `function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`, loader.replace(/^/gm, ` `), `} +`, ` +`, hook_default()()].join(``); + } + function generateJsonString(data) { + return JSON.stringify(data, null, 2); + } + function generateInlinedSetup(data) { + return [`return hydrateRuntimeState(${generatePrettyJson(data)}, {basePath: basePath || __dirname}); +`].join(``); + } + function generateSplitSetup(dataLocation) { + return [`var path = require('path'); +`, `var dataLocation = path.resolve(__dirname, ${JSON.stringify(dataLocation)}); +`, `return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)}); +`].join(``); + } + function generateInlinedScript(settings) { + const data = generateSerializedState(settings); + const setup = generateInlinedSetup(data); + const loaderFile = generateLoader(settings.shebang, setup); + return loaderFile; + } + function generateSplitScript(settings) { + const data = generateSerializedState(settings); + const setup = generateSplitSetup(settings.dataLocation); + const loaderFile = generateLoader(settings.shebang, setup); + return { + dataFile: generateJsonString(data), + loaderFile + }; + } + const external_fs_namespaceObject = require("fs"); + ; + var external_fs_default = /* @__PURE__ */ __webpack_require__2.n(external_fs_namespaceObject); + const external_path_namespaceObject = require("path"); + ; + var external_path_default = /* @__PURE__ */ __webpack_require__2.n(external_path_namespaceObject); + const external_util_namespaceObject = require("util"); + ; + var PathType; + (function(PathType2) { + PathType2[PathType2["File"] = 0] = "File"; + PathType2[PathType2["Portable"] = 1] = "Portable"; + PathType2[PathType2["Native"] = 2] = "Native"; + })(PathType || (PathType = {})); + const PortablePath = { + root: `/`, + dot: `.` + }; + const Filename = { + nodeModules: `node_modules`, + manifest: `package.json`, + lockfile: `yarn.lock`, + pnpJs: `.pnp.js`, + rc: `.yarnrc.yml` + }; + const npath = Object.create(external_path_default()); + const ppath = Object.create(external_path_default().posix); + npath.cwd = () => process.cwd(); + ppath.cwd = () => toPortablePath(process.cwd()); + ppath.resolve = (...segments) => { + if (segments.length > 0 && ppath.isAbsolute(segments[0])) { + return external_path_default().posix.resolve(...segments); + } else { + return external_path_default().posix.resolve(ppath.cwd(), ...segments); + } + }; + const contains = function(pathUtils, from, to) { + from = pathUtils.normalize(from); + to = pathUtils.normalize(to); + if (from === to) + return `.`; + if (!from.endsWith(pathUtils.sep)) + from = from + pathUtils.sep; + if (to.startsWith(from)) { + return to.slice(from.length); + } else { + return null; + } + }; + npath.fromPortablePath = fromPortablePath; + npath.toPortablePath = toPortablePath; + npath.contains = (from, to) => contains(npath, from, to); + ppath.contains = (from, to) => contains(ppath, from, to); + const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; + const UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/; + const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; + const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; + function fromPortablePath(p) { + if (process.platform !== `win32`) + return p; + if (p.match(PORTABLE_PATH_REGEXP)) + p = p.replace(PORTABLE_PATH_REGEXP, `$1`); + else if (p.match(UNC_PORTABLE_PATH_REGEXP)) + p = p.replace(UNC_PORTABLE_PATH_REGEXP, (match, p1, p2) => `\\\\${p1 ? `.\\` : ``}${p2}`); + else + return p; + return p.replace(/\//g, `\\`); + } + function toPortablePath(p) { + if (process.platform !== `win32`) + return p; + if (p.match(WINDOWS_PATH_REGEXP)) + p = p.replace(WINDOWS_PATH_REGEXP, `/$1`); + else if (p.match(UNC_WINDOWS_PATH_REGEXP)) + p = p.replace(UNC_WINDOWS_PATH_REGEXP, (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`); + return p.replace(/\\/g, `/`); + } + function convertPath(targetPathUtils, sourcePath) { + return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); + } + function toFilename(filename) { + if (npath.parse(filename).dir !== `` || ppath.parse(filename).dir !== ``) + throw new Error(`Invalid filename: "${filename}"`); + return filename; + } + function hydrateRuntimeState(data, { + basePath: basePath2 + }) { + const portablePath = npath.toPortablePath(basePath2); + const absolutePortablePath = ppath.resolve(portablePath); + const ignorePattern = data.ignorePatternData !== null ? new RegExp(data.ignorePatternData) : null; + const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { + return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { + return [packageReference, { + // We use ppath.join instead of ppath.resolve because: + // 1) packageInformationData.packageLocation is a relative path when part of the SerializedState + // 2) ppath.join preserves trailing slashes + packageLocation: ppath.join(absolutePortablePath, packageInformationData.packageLocation), + packageDependencies: new Map(packageInformationData.packageDependencies), + packagePeers: new Set(packageInformationData.packagePeers), + linkType: packageInformationData.linkType, + discardFromLookup: packageInformationData.discardFromLookup || false + }]; + }))]; + })); + const packageLocatorsByLocations = /* @__PURE__ */ new Map(); + const packageLocationLengths = /* @__PURE__ */ new Set(); + for (const [packageName, storeData] of data.packageRegistryData) { + for (const [packageReference, packageInformationData] of storeData) { + if (packageName === null !== (packageReference === null)) + throw new Error(`Assertion failed: The name and reference should be null, or neither should`); + if (packageInformationData.discardFromLookup) + continue; + const packageLocator = { + name: packageName, + reference: packageReference + }; + packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator); + packageLocationLengths.add(packageInformationData.packageLocation.length); + } + } + for (const location of data.locationBlacklistData) + packageLocatorsByLocations.set(location, null); + const fallbackExclusionList = new Map(data.fallbackExclusionList.map(([packageName, packageReferences]) => { + return [packageName, new Set(packageReferences)]; + })); + const fallbackPool = new Map(data.fallbackPool); + const dependencyTreeRoots = data.dependencyTreeRoots; + const enableTopLevelFallback = data.enableTopLevelFallback; + return { + basePath: portablePath, + dependencyTreeRoots, + enableTopLevelFallback, + fallbackExclusionList, + fallbackPool, + ignorePattern, + packageLocationLengths: [...packageLocationLengths].sort((a, b) => b - a), + packageLocatorsByLocations, + packageRegistry + }; + } + const external_os_namespaceObject = require("os"); + ; + const defaultTime = new Date(315532800 * 1e3); + async function copyPromise(destinationFs, destination, sourceFs, source, opts) { + const normalizedDestination = destinationFs.pathUtils.normalize(destination); + const normalizedSource = sourceFs.pathUtils.normalize(source); + const prelayout = []; + const postlayout = []; + await destinationFs.mkdirPromise(destinationFs.pathUtils.dirname(destination), { + recursive: true + }); + const updateTime = typeof destinationFs.lutimesPromise === `function` ? destinationFs.lutimesPromise.bind(destinationFs) : destinationFs.utimesPromise.bind(destinationFs); + await copyImpl(prelayout, postlayout, updateTime, destinationFs, normalizedDestination, sourceFs, normalizedSource, opts); + for (const operation of prelayout) + await operation(); + await Promise.all(postlayout.map((operation) => { + return operation(); + })); + } + async function copyImpl(prelayout, postlayout, updateTime, destinationFs, destination, sourceFs, source, opts) { + var _a, _b; + const destinationStat = await maybeLStat(destinationFs, destination); + const sourceStat = await sourceFs.lstatPromise(source); + const referenceTime = opts.stableTime ? { + mtime: defaultTime, + atime: defaultTime + } : sourceStat; + let updated; + switch (true) { + case sourceStat.isDirectory(): + { + updated = await copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isFile(): + { + updated = await copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + case sourceStat.isSymbolicLink(): + { + updated = await copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + default: + { + throw new Error(`Unsupported file type (${sourceStat.mode})`); + } + break; + } + if (updated || ((_a = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _a === void 0 ? void 0 : _a.getTime()) !== referenceTime.mtime.getTime() || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _b === void 0 ? void 0 : _b.getTime()) !== referenceTime.atime.getTime()) { + postlayout.push(() => updateTime(destination, referenceTime.atime, referenceTime.mtime)); + updated = true; + } + if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) { + postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511)); + updated = true; + } + return updated; + } + async function maybeLStat(baseFs, p) { + try { + return await baseFs.lstatPromise(p); + } catch (e) { + return null; + } + } + async function copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null && !destinationStat.isDirectory()) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + let updated = false; + if (destinationStat === null) { + prelayout.push(async () => destinationFs.mkdirPromise(destination, { + mode: sourceStat.mode + })); + updated = true; + } + const entries = await sourceFs.readdirPromise(source); + if (opts.stableSort) { + for (const entry of entries.sort()) { + if (await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts)) { + updated = true; + } + } + } else { + const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { + await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts); + })); + if (entriesUpdateStatus.some((status) => status)) { + updated = true; + } + } + return updated; + } + async function copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + const op = destinationFs === sourceFs ? async () => destinationFs.copyFilePromise(source, destination, external_fs_default().constants.COPYFILE_FICLONE) : async () => destinationFs.writeFilePromise(destination, await sourceFs.readFilePromise(source)); + prelayout.push(async () => op()); + return true; + } + async function copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + prelayout.push(async () => { + await destinationFs.symlinkPromise(convertPath(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); + }); + return true; + } + class FakeFS { + constructor(pathUtils) { + this.pathUtils = pathUtils; + } + async *genTraversePromise(init, { + stableSort = false + } = {}) { + const stack2 = [init]; + while (stack2.length > 0) { + const p = stack2.shift(); + const entry = await this.lstatPromise(p); + if (entry.isDirectory()) { + const entries = await this.readdirPromise(p); + if (stableSort) { + for (const entry2 of entries.sort()) { + stack2.push(this.pathUtils.join(p, entry2)); + } + } else { + throw new Error(`Not supported`); + } + } else { + yield p; + } + } + } + async removePromise(p, { + recursive = true, + maxRetries = 5 + } = {}) { + let stat; + try { + stat = await this.lstatPromise(p); + } catch (error) { + if (error.code === `ENOENT`) { + return; + } else { + throw error; + } + } + if (stat.isDirectory()) { + if (recursive) + for (const entry of await this.readdirPromise(p)) + await this.removePromise(this.pathUtils.resolve(p, entry)); + let t = 0; + do { + try { + await this.rmdirPromise(p); + break; + } catch (error) { + if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { + if (maxRetries === 0) { + break; + } else { + await new Promise((resolve) => setTimeout(resolve, t * 100)); + continue; + } + } else { + throw error; + } + } + } while (t++ < maxRetries); + } else { + await this.unlinkPromise(p); + } + } + removeSync(p, { + recursive = true + } = {}) { + let stat; + try { + stat = this.lstatSync(p); + } catch (error) { + if (error.code === `ENOENT`) { + return; + } else { + throw error; + } + } + if (stat.isDirectory()) { + if (recursive) + for (const entry of this.readdirSync(p)) + this.removeSync(this.pathUtils.resolve(p, entry)); + this.rmdirSync(p); + } else { + this.unlinkSync(p); + } + } + async mkdirpPromise(p, { + chmod, + utimes + } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return; + const parts = p.split(this.pathUtils.sep); + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + await this.mkdirPromise(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + if (chmod != null) + await this.chmodPromise(subPath, chmod); + if (utimes != null) { + await this.utimesPromise(subPath, utimes[0], utimes[1]); + } else { + const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); + await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); + } + } + } + } + mkdirpSync(p, { + chmod, + utimes + } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) + return; + const parts = p.split(this.pathUtils.sep); + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + if (!this.existsSync(subPath)) { + try { + this.mkdirSync(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + if (chmod != null) + this.chmodSync(subPath, chmod); + if (utimes != null) { + this.utimesSync(subPath, utimes[0], utimes[1]); + } else { + const parentStat = this.statSync(this.pathUtils.dirname(subPath)); + this.utimesSync(subPath, parentStat.atime, parentStat.mtime); + } + } + } + } + async copyPromise(destination, source, { + baseFs = this, + overwrite = true, + stableSort = false, + stableTime = false + } = {}) { + return await copyPromise(this, destination, baseFs, source, { + overwrite, + stableSort, + stableTime + }); + } + copySync(destination, source, { + baseFs = this, + overwrite = true + } = {}) { + const stat = baseFs.lstatSync(source); + const exists = this.existsSync(destination); + if (stat.isDirectory()) { + this.mkdirpSync(destination); + const directoryListing = baseFs.readdirSync(source); + for (const entry of directoryListing) { + this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { + baseFs, + overwrite + }); + } + } else if (stat.isFile()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const content = baseFs.readFileSync(source); + this.writeFileSync(destination, content); + } + } else if (stat.isSymbolicLink()) { + if (!exists || overwrite) { + if (exists) + this.removeSync(destination); + const target = baseFs.readlinkSync(source); + this.symlinkSync(convertPath(this.pathUtils, target), destination); + } + } else { + throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); + } + const mode = stat.mode & 511; + this.chmodSync(destination, mode); + } + async changeFilePromise(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferPromise(p, content); + } else { + return this.changeFileTextPromise(p, content, opts); + } + } + async changeFileBufferPromise(p, content) { + let current = Buffer.alloc(0); + try { + current = await this.readFilePromise(p); + } catch (error) { + } + if (Buffer.compare(current, content) === 0) + return; + await this.writeFilePromise(p, content); + } + async changeFileTextPromise(p, content, { + automaticNewlines + } = {}) { + let current = ``; + try { + current = await this.readFilePromise(p, `utf8`); + } catch (error) { + } + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) + return; + await this.writeFilePromise(p, normalizedContent); + } + changeFileSync(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferSync(p, content); + } else { + return this.changeFileTextSync(p, content, opts); + } + } + changeFileBufferSync(p, content) { + let current = Buffer.alloc(0); + try { + current = this.readFileSync(p); + } catch (error) { + } + if (Buffer.compare(current, content) === 0) + return; + this.writeFileSync(p, content); + } + changeFileTextSync(p, content, { + automaticNewlines = false + } = {}) { + let current = ``; + try { + current = this.readFileSync(p, `utf8`); + } catch (error) { + } + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) + return; + this.writeFileSync(p, normalizedContent); + } + async movePromise(fromP, toP) { + try { + await this.renamePromise(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + await this.copyPromise(toP, fromP); + await this.removePromise(fromP); + } else { + throw error; + } + } + } + moveSync(fromP, toP) { + try { + this.renameSync(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + this.copySync(toP, fromP); + this.removeSync(fromP); + } else { + throw error; + } + } + } + async lockPromise(affectedPath, callback) { + const lockPath = `${affectedPath}.flock`; + const interval = 1e3 / 60; + const startTime = Date.now(); + let fd = null; + const isAlive = async () => { + let pid; + try { + [pid] = await this.readJsonPromise(lockPath); + } catch (error) { + return Date.now() - startTime < 500; + } + try { + process.kill(pid, 0); + return true; + } catch (error) { + return false; + } + }; + while (fd === null) { + try { + fd = await this.openPromise(lockPath, `wx`); + } catch (error) { + if (error.code === `EEXIST`) { + if (!await isAlive()) { + try { + await this.unlinkPromise(lockPath); + continue; + } catch (error2) { + } + } + if (Date.now() - startTime < 60 * 1e3) { + await new Promise((resolve) => setTimeout(resolve, interval)); + } else { + throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); + } + } else { + throw error; + } + } + } + await this.writePromise(fd, JSON.stringify([process.pid])); + try { + return await callback(); + } finally { + try { + await this.closePromise(fd); + await this.unlinkPromise(lockPath); + } catch (error) { + } + } + } + async readJsonPromise(p) { + const content = await this.readFilePromise(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + readJsonSync(p) { + const content = this.readFileSync(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + async writeJsonPromise(p, data) { + return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)} +`); + } + writeJsonSync(p, data) { + return this.writeFileSync(p, `${JSON.stringify(data, null, 2)} +`); + } + async preserveTimePromise(p, cb) { + const stat = await this.lstatPromise(p); + const result2 = await cb(); + if (typeof result2 !== `undefined`) + p = result2; + if (this.lutimesPromise) { + await this.lutimesPromise(p, stat.atime, stat.mtime); + } else if (!stat.isSymbolicLink()) { + await this.utimesPromise(p, stat.atime, stat.mtime); + } + } + async preserveTimeSync(p, cb) { + const stat = this.lstatSync(p); + const result2 = cb(); + if (typeof result2 !== `undefined`) + p = result2; + if (this.lutimesSync) { + this.lutimesSync(p, stat.atime, stat.mtime); + } else if (!stat.isSymbolicLink()) { + this.utimesSync(p, stat.atime, stat.mtime); + } + } + } + FakeFS.DEFAULT_TIME = 315532800; + class BasePortableFakeFS extends FakeFS { + constructor() { + super(ppath); + } + } + function getEndOfLine(content) { + const matches = content.match(/\r?\n/g); + if (matches === null) + return external_os_namespaceObject.EOL; + const crlf = matches.filter((nl) => nl === `\r +`).length; + const lf = matches.length - crlf; + return crlf > lf ? `\r +` : ` +`; + } + function normalizeLineEndings(originalContent, newContent) { + return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); + } + function makeError(code, message2) { + return Object.assign(new Error(`${code}: ${message2}`), { + code + }); + } + function EBUSY(message2) { + return makeError(`EBUSY`, message2); + } + function ENOSYS(message2, reason) { + return makeError(`ENOSYS`, `${message2}, ${reason}`); + } + function EINVAL(reason) { + return makeError(`EINVAL`, `invalid argument, ${reason}`); + } + function EBADF(reason) { + return makeError(`EBADF`, `bad file descriptor, ${reason}`); + } + function ENOENT(reason) { + return makeError(`ENOENT`, `no such file or directory, ${reason}`); + } + function ENOTDIR(reason) { + return makeError(`ENOTDIR`, `not a directory, ${reason}`); + } + function EISDIR(reason) { + return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); + } + function EEXIST(reason) { + return makeError(`EEXIST`, `file already exists, ${reason}`); + } + function EROFS(reason) { + return makeError(`EROFS`, `read-only filesystem, ${reason}`); + } + function ENOTEMPTY(reason) { + return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); + } + function EOPNOTSUPP(reason) { + return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); + } + function ERR_DIR_CLOSED() { + return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); + } + class LibzipError extends Error { + constructor(message2, code) { + super(message2); + this.name = `Libzip Error`; + this.code = code; + } + } + class NodeFS extends BasePortableFakeFS { + constructor(realFs = external_fs_default()) { + super(); + this.realFs = realFs; + if (typeof this.realFs.lutimes !== `undefined`) { + this.lutimesPromise = this.lutimesPromiseImpl; + this.lutimesSync = this.lutimesSyncImpl; + } + } + getExtractHint() { + return false; + } + getRealPath() { + return PortablePath.root; + } + resolve(p) { + return ppath.resolve(p); + } + async openPromise(p, flags, mode) { + return await new Promise((resolve, reject) => { + this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); + } + openSync(p, flags, mode) { + return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); + } + async opendirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then((dir) => { + return Object.defineProperty(dir, `path`, { + value: p, + configurable: true, + writable: true + }); + }); + } + opendirSync(p, opts) { + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); + return Object.defineProperty(dir, `path`, { + value: p, + configurable: true, + writable: true + }); + } + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); + } + readSync(fd, buffer, offset, length, position) { + return this.realFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.realFs.writeSync(fd, buffer, offset); + } else { + return this.realFs.writeSync(fd, buffer, offset, length, position); + } + } + async closePromise(fd) { + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); + } + closeSync(fd) { + this.realFs.closeSync(fd); + } + createReadStream(p, opts) { + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); + } + createWriteStream(p, opts) { + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); + } + async realpathPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then((path2) => { + return npath.toPortablePath(path2); + }); + } + realpathSync(p) { + return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); + } + async existsPromise(p) { + return await new Promise((resolve) => { + this.realFs.exists(npath.fromPortablePath(p), resolve); + }); + } + accessSync(p, mode) { + return this.realFs.accessSync(npath.fromPortablePath(p), mode); + } + async accessPromise(p, mode) { + return await new Promise((resolve, reject) => { + this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(npath.fromPortablePath(p)); + } + async statPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + statSync(p) { + return this.realFs.statSync(npath.fromPortablePath(p)); + } + async lstatPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + lstatSync(p) { + return this.realFs.lstatSync(npath.fromPortablePath(p)); + } + async chmodPromise(p, mask) { + return await new Promise((resolve, reject) => { + this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); + } + chmodSync(p, mask) { + return this.realFs.chmodSync(npath.fromPortablePath(p), mask); + } + async chownPromise(p, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); + } + chownSync(p, uid, gid) { + return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); + } + async renamePromise(oldP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + renameSync(oldP, newP) { + return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return await new Promise((resolve, reject) => { + this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); + } + async appendFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + appendFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); + } + } + async writeFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + writeFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); + } + } + async unlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + unlinkSync(p) { + return this.realFs.unlinkSync(npath.fromPortablePath(p)); + } + async utimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + utimesSync(p, atime, mtime) { + this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); + } + async lutimesPromiseImpl(p, atime, mtime) { + const lutimes = this.realFs.lutimes; + if (typeof lutimes === `undefined`) + throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); + return await new Promise((resolve, reject) => { + lutimes.call(this.realFs, npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + lutimesSyncImpl(p, atime, mtime) { + const lutimesSync = this.realFs.lutimesSync; + if (typeof lutimesSync === `undefined`) + throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); + lutimesSync.call(this.realFs, npath.fromPortablePath(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); + } + mkdirSync(p, opts) { + return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); + } + async rmdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + rmdirSync(p, opts) { + return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); + } + async linkPromise(existingP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + linkSync(existingP, newP) { + return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); + } + async symlinkPromise(target, p, type) { + const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); + return await new Promise((resolve, reject) => { + this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType, this.makeCallback(resolve, reject)); + }); + } + symlinkSync(target, p, type) { + const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); + return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType); + } + async readFilePromise(p, encoding) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); + } + readFileSync(p, encoding) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); + } + async readdirPromise(p, { + withFileTypes + } = {}) { + return await new Promise((resolve, reject) => { + if (withFileTypes) { + this.realFs.readdir(npath.fromPortablePath(p), { + withFileTypes: true + }, this.makeCallback(resolve, reject)); + } else { + this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject)); + } + }); + } + readdirSync(p, { + withFileTypes + } = {}) { + if (withFileTypes) { + return this.realFs.readdirSync(npath.fromPortablePath(p), { + withFileTypes: true + }); + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p)); + } + } + async readlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then((path2) => { + return npath.toPortablePath(path2); + }); + } + readlinkSync(p) { + return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); + } + async truncatePromise(p, len) { + return await new Promise((resolve, reject) => { + this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); + } + truncateSync(p, len) { + return this.realFs.truncateSync(npath.fromPortablePath(p), len); + } + watch(p, a, b) { + return this.realFs.watch( + npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); + } + watchFile(p, a, b) { + return this.realFs.watchFile( + npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); + } + unwatchFile(p, cb) { + return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); + } + makeCallback(resolve, reject) { + return (err, result2) => { + if (err) { + reject(err); + } else { + resolve(result2); + } + }; + } + } + class ProxiedFS extends FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + resolve(path2) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path2))); + } + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); + } + async openPromise(p, flags, mode) { + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + } + openSync(p, flags, mode) { + return this.baseFs.openSync(this.mapToBase(p), flags, mode); + } + async opendirPromise(p, opts) { + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { + path: p + }); + } + opendirSync(p, opts) { + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { + path: p + }); + } + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + } + readSync(fd, buffer, offset, length, position) { + return this.baseFs.readSync(fd, buffer, offset, length, position); + } + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } + } + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + async closePromise(fd) { + return this.baseFs.closePromise(fd); + } + closeSync(fd) { + this.baseFs.closeSync(fd); + } + createReadStream(p, opts) { + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + } + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + } + async realpathPromise(p) { + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + } + realpathSync(p) { + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + } + async existsPromise(p) { + return this.baseFs.existsPromise(this.mapToBase(p)); + } + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); + } + accessSync(p, mode) { + return this.baseFs.accessSync(this.mapToBase(p), mode); + } + async accessPromise(p, mode) { + return this.baseFs.accessPromise(this.mapToBase(p), mode); + } + async statPromise(p) { + return this.baseFs.statPromise(this.mapToBase(p)); + } + statSync(p) { + return this.baseFs.statSync(this.mapToBase(p)); + } + async lstatPromise(p) { + return this.baseFs.lstatPromise(this.mapToBase(p)); + } + lstatSync(p) { + return this.baseFs.lstatSync(this.mapToBase(p)); + } + async chmodPromise(p, mask) { + return this.baseFs.chmodPromise(this.mapToBase(p), mask); + } + chmodSync(p, mask) { + return this.baseFs.chmodSync(this.mapToBase(p), mask); + } + async chownPromise(p, uid, gid) { + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + } + chownSync(p, uid, gid) { + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + } + async renamePromise(oldP, newP) { + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + } + renameSync(oldP, newP) { + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + } + async copyFilePromise(sourceP, destP, flags = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + copyFileSync(sourceP, destP, flags = 0) { + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + async appendFilePromise(p, content, opts) { + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + } + appendFileSync(p, content, opts) { + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + } + async writeFilePromise(p, content, opts) { + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + } + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + } + async unlinkPromise(p) { + return this.baseFs.unlinkPromise(this.mapToBase(p)); + } + unlinkSync(p) { + return this.baseFs.unlinkSync(this.mapToBase(p)); + } + async utimesPromise(p, atime, mtime) { + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + } + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + } + async mkdirPromise(p, opts) { + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + } + mkdirSync(p, opts) { + return this.baseFs.mkdirSync(this.mapToBase(p), opts); + } + async rmdirPromise(p, opts) { + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + } + rmdirSync(p, opts) { + return this.baseFs.rmdirSync(this.mapToBase(p), opts); + } + async linkPromise(existingP, newP) { + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + } + linkSync(existingP, newP) { + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + } + async symlinkPromise(target, p, type) { + return this.baseFs.symlinkPromise(this.mapToBase(target), this.mapToBase(p), type); + } + symlinkSync(target, p, type) { + return this.baseFs.symlinkSync(this.mapToBase(target), this.mapToBase(p), type); + } + async readFilePromise(p, encoding) { + if (encoding === `utf8`) { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } else { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } + } + readFileSync(p, encoding) { + if (encoding === `utf8`) { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } else { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } + } + async readdirPromise(p, { + withFileTypes + } = {}) { + return this.baseFs.readdirPromise(this.mapToBase(p), { + withFileTypes + }); + } + readdirSync(p, { + withFileTypes + } = {}) { + return this.baseFs.readdirSync(this.mapToBase(p), { + withFileTypes + }); + } + async readlinkPromise(p) { + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + } + readlinkSync(p) { + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + } + async truncatePromise(p, len) { + return this.baseFs.truncatePromise(this.mapToBase(p), len); + } + truncateSync(p, len) { + return this.baseFs.truncateSync(this.mapToBase(p), len); + } + watch(p, a, b) { + return this.baseFs.watch( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); + } + watchFile(p, a, b) { + return this.baseFs.watchFile( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); + } + unwatchFile(p, cb) { + return this.baseFs.unwatchFile(this.mapToBase(p), cb); + } + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); + } + } + } + const NUMBER_REGEXP = /^[0-9]+$/; + const VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?\$\$virtual)((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; + const VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; + class VirtualFS extends ProxiedFS { + constructor({ + baseFs = new NodeFS() + } = {}) { + super(ppath); + this.baseFs = baseFs; + } + static makeVirtualPath(base, component, to) { + if (ppath.basename(base) !== `$$virtual`) + throw new Error(`Assertion failed: Virtual folders must be named "$$virtual"`); + if (!ppath.basename(component).match(VALID_COMPONENT)) + throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); + const target = ppath.relative(ppath.dirname(base), to); + const segments = target.split(`/`); + let depth = 0; + while (depth < segments.length && segments[depth] === `..`) + depth += 1; + const finalSegments = segments.slice(depth); + const fullVirtualPath = ppath.join(base, component, String(depth), ...finalSegments); + return fullVirtualPath; + } + static resolveVirtual(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match || !match[3] && match[5]) + return p; + const target = ppath.dirname(match[1]); + if (!match[3] || !match[4]) + return target; + const isnum = NUMBER_REGEXP.test(match[4]); + if (!isnum) + return p; + const depth = Number(match[4]); + const backstep = `../`.repeat(depth); + const subpath = match[5] || `.`; + return VirtualFS.resolveVirtual(ppath.join(target, backstep, subpath)); + } + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + realpathSync(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return this.baseFs.realpathSync(p); + if (!match[5]) + return p; + const realpath = this.baseFs.realpathSync(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + async realpathPromise(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return await this.baseFs.realpathPromise(p); + if (!match[5]) + return p; + const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + mapToBase(p) { + return VirtualFS.resolveVirtual(p); + } + mapFromBase(p) { + return p; + } + } + const external_module_namespaceObject = require("module"); + ; + var ErrorCode; + (function(ErrorCode2) { + ErrorCode2["API_ERROR"] = "API_ERROR"; + ErrorCode2["BLACKLISTED"] = "BLACKLISTED"; + ErrorCode2["BUILTIN_NODE_RESOLUTION_FAILED"] = "BUILTIN_NODE_RESOLUTION_FAILED"; + ErrorCode2["MISSING_DEPENDENCY"] = "MISSING_DEPENDENCY"; + ErrorCode2["MISSING_PEER_DEPENDENCY"] = "MISSING_PEER_DEPENDENCY"; + ErrorCode2["QUALIFIED_PATH_RESOLUTION_FAILED"] = "QUALIFIED_PATH_RESOLUTION_FAILED"; + ErrorCode2["INTERNAL"] = "INTERNAL"; + ErrorCode2["UNDECLARED_DEPENDENCY"] = "UNDECLARED_DEPENDENCY"; + ErrorCode2["UNSUPPORTED"] = "UNSUPPORTED"; + })(ErrorCode || (ErrorCode = {})); + const MODULE_NOT_FOUND_ERRORS = /* @__PURE__ */ new Set([ErrorCode.BLACKLISTED, ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, ErrorCode.MISSING_DEPENDENCY, ErrorCode.MISSING_PEER_DEPENDENCY, ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, ErrorCode.UNDECLARED_DEPENDENCY]); + function internalTools_makeError(pnpCode, message2, data = {}) { + const code = MODULE_NOT_FOUND_ERRORS.has(pnpCode) ? `MODULE_NOT_FOUND` : pnpCode; + const propertySpec = { + configurable: true, + writable: true, + enumerable: false + }; + return Object.defineProperties(new Error(message2), { + code: { + ...propertySpec, + value: code + }, + pnpCode: { + ...propertySpec, + value: pnpCode + }, + data: { + ...propertySpec, + value: data + } + }); + } + function getIssuerModule(parent) { + let issuer = parent; + while (issuer && (issuer.id === `[eval]` || issuer.id === `` || !issuer.filename)) + issuer = issuer.parent; + return issuer || null; + } + function getPathForDisplay(p) { + return npath.normalize(npath.fromPortablePath(p)); + } + function makeApi(runtimeState, opts) { + const alwaysWarnOnFallback = Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK) > 0; + const debugLevel = Number(process.env.PNP_DEBUG_LEVEL); + const builtinModules = new Set(external_module_namespaceObject.Module.builtinModules || Object.keys(process.binding(`natives`))); + const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/; + const isStrictRegExp = /^(\/|\.{1,2}(\/|$))/; + const isDirRegExp = /\/$/; + const topLevelLocator = { + name: null, + reference: null + }; + const fallbackLocators = []; + const emittedWarnings = /* @__PURE__ */ new Set(); + if (runtimeState.enableTopLevelFallback === true) + fallbackLocators.push(topLevelLocator); + if (opts.compatibilityMode !== false) { + for (const name of [`react-scripts`, `gatsby`]) { + const packageStore = runtimeState.packageRegistry.get(name); + if (packageStore) { + for (const reference of packageStore.keys()) { + if (reference === null) { + throw new Error(`Assertion failed: This reference shouldn't be null`); + } else { + fallbackLocators.push({ + name, + reference + }); + } + } + } + } + } + const { + ignorePattern, + packageRegistry, + packageLocatorsByLocations, + packageLocationLengths + } = runtimeState; + function makeLogEntry(name, args2) { + return { + fn: name, + args: args2, + error: null, + result: null + }; + } + function maybeLog(name, fn2) { + if (opts.allowDebug === false) + return fn2; + if (Number.isFinite(debugLevel)) { + if (debugLevel >= 2) { + return (...args2) => { + const logEntry = makeLogEntry(name, args2); + try { + return logEntry.result = fn2(...args2); + } catch (error) { + throw logEntry.error = error; + } finally { + console.trace(logEntry); + } + }; + } else if (debugLevel >= 1) { + return (...args2) => { + try { + return fn2(...args2); + } catch (error) { + const logEntry = makeLogEntry(name, args2); + logEntry.error = error; + console.trace(logEntry); + throw error; + } + }; + } + } + return fn2; + } + function getPackageInformationSafe(packageLocator) { + const packageInformation = getPackageInformation(packageLocator); + if (!packageInformation) { + throw internalTools_makeError(ErrorCode.INTERNAL, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`); + } + return packageInformation; + } + function isDependencyTreeRoot(packageLocator) { + if (packageLocator.name === null) + return true; + for (const dependencyTreeRoot of runtimeState.dependencyTreeRoots) + if (dependencyTreeRoot.name === packageLocator.name && dependencyTreeRoot.reference === packageLocator.reference) + return true; + return false; + } + function applyNodeExtensionResolution(unqualifiedPath, candidates, { + extensions + }) { + let stat; + try { + candidates.push(unqualifiedPath); + stat = opts.fakeFs.statSync(unqualifiedPath); + } catch (error) { + } + if (stat && !stat.isDirectory()) + return opts.fakeFs.realpathSync(unqualifiedPath); + if (stat && stat.isDirectory()) { + let pkgJson; + try { + pkgJson = JSON.parse(opts.fakeFs.readFileSync(ppath.join(unqualifiedPath, `package.json`), `utf8`)); + } catch (error) { + } + let nextUnqualifiedPath; + if (pkgJson && pkgJson.main) + nextUnqualifiedPath = ppath.resolve(unqualifiedPath, pkgJson.main); + if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) { + const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { + extensions + }); + if (resolution !== null) { + return resolution; + } + } + } + for (let i = 0, length = extensions.length; i < length; i++) { + const candidateFile = `${unqualifiedPath}${extensions[i]}`; + candidates.push(candidateFile); + if (opts.fakeFs.existsSync(candidateFile)) { + return candidateFile; + } + } + if (stat && stat.isDirectory()) { + for (let i = 0, length = extensions.length; i < length; i++) { + const candidateFile = ppath.format({ + dir: unqualifiedPath, + name: `index`, + ext: extensions[i] + }); + candidates.push(candidateFile); + if (opts.fakeFs.existsSync(candidateFile)) { + return candidateFile; + } + } + } + return null; + } + function makeFakeModule(path2) { + const fakeModule = new external_module_namespaceObject.Module(path2, null); + fakeModule.filename = path2; + fakeModule.paths = external_module_namespaceObject.Module._nodeModulePaths(path2); + return fakeModule; + } + function normalizePath(p) { + return npath.toPortablePath(p); + } + function callNativeResolution(request, issuer) { + if (issuer.endsWith(`/`)) + issuer = ppath.join(issuer, `internal.js`); + return external_module_namespaceObject.Module._resolveFilename(npath.fromPortablePath(request), makeFakeModule(npath.fromPortablePath(issuer)), false, { + plugnplay: false + }); + } + function isPathIgnored(path2) { + if (ignorePattern === null) + return false; + const subPath = ppath.contains(runtimeState.basePath, path2); + if (subPath === null) + return false; + if (ignorePattern.test(subPath.replace(/\/$/, ``))) { + return true; + } else { + return false; + } + } + const VERSIONS = { + std: 3, + resolveVirtual: 1, + getAllLocators: 1 + }; + const topLevel = topLevelLocator; + function getPackageInformation({ + name, + reference + }) { + const packageInformationStore = packageRegistry.get(name); + if (!packageInformationStore) + return null; + const packageInformation = packageInformationStore.get(reference); + if (!packageInformation) + return null; + return packageInformation; + } + function findPackageDependents({ + name, + reference + }) { + const dependents = []; + for (const [dependentName, packageInformationStore] of packageRegistry) { + if (dependentName === null) + continue; + for (const [dependentReference, packageInformation] of packageInformationStore) { + if (dependentReference === null) + continue; + const dependencyReference = packageInformation.packageDependencies.get(name); + if (dependencyReference !== reference) + continue; + if (dependentName === name && dependentReference === reference) + continue; + dependents.push({ + name: dependentName, + reference: dependentReference + }); + } + } + return dependents; + } + function findBrokenPeerDependencies(dependency, initialPackage) { + const brokenPackages = /* @__PURE__ */ new Map(); + const alreadyVisited = /* @__PURE__ */ new Set(); + const traversal = (currentPackage) => { + const identifier = JSON.stringify(currentPackage.name); + if (alreadyVisited.has(identifier)) + return; + alreadyVisited.add(identifier); + const dependents = findPackageDependents(currentPackage); + for (const dependent of dependents) { + const dependentInformation = getPackageInformationSafe(dependent); + if (dependentInformation.packagePeers.has(dependency)) { + traversal(dependent); + } else { + let brokenSet = brokenPackages.get(dependent.name); + if (typeof brokenSet === `undefined`) + brokenPackages.set(dependent.name, brokenSet = /* @__PURE__ */ new Set()); + brokenSet.add(dependent.reference); + } + } + }; + traversal(initialPackage); + const brokenList = []; + for (const name of [...brokenPackages.keys()].sort()) + for (const reference of [...brokenPackages.get(name)].sort()) + brokenList.push({ + name, + reference + }); + return brokenList; + } + function findPackageLocator(location) { + if (isPathIgnored(location)) + return null; + let relativeLocation = normalizePath(ppath.relative(runtimeState.basePath, location)); + if (!relativeLocation.match(isStrictRegExp)) + relativeLocation = `./${relativeLocation}`; + if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`)) + relativeLocation = `${relativeLocation}/`; + let from = 0; + while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length) + from += 1; + for (let t = from; t < packageLocationLengths.length; ++t) { + const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t])); + if (typeof locator === `undefined`) + continue; + if (locator === null) { + const locationForDisplay = getPathForDisplay(location); + throw internalTools_makeError(ErrorCode.BLACKLISTED, `A forbidden path has been used in the package resolution process - this is usually caused by one of your tools calling 'fs.realpath' on the return value of 'require.resolve'. Since we need to use symlinks to simultaneously provide valid filesystem paths and disambiguate peer dependencies, they must be passed untransformed to 'require'. + +Forbidden path: ${locationForDisplay}`, { + location: locationForDisplay + }); + } + return locator; + } + return null; + } + function resolveToUnqualified(request, issuer, { + considerBuiltins = true + } = {}) { + if (request === `pnpapi`) + return npath.toPortablePath(opts.pnpapiResolution); + if (considerBuiltins && builtinModules.has(request)) + return null; + const requestForDisplay = getPathForDisplay(request); + const issuerForDisplay = issuer && getPathForDisplay(issuer); + if (issuer && isPathIgnored(issuer)) { + if (!ppath.isAbsolute(request) || findPackageLocator(request) === null) { + const result2 = callNativeResolution(request, issuer); + if (result2 === false) { + throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) + +Require request: "${requestForDisplay}" +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + return npath.toPortablePath(result2); + } + } + let unqualifiedPath; + const dependencyNameMatch = request.match(pathRegExp); + if (!dependencyNameMatch) { + if (ppath.isAbsolute(request)) { + unqualifiedPath = ppath.normalize(request); + } else { + if (!issuer) { + throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + const absoluteIssuer = ppath.resolve(issuer); + if (issuer.match(isDirRegExp)) { + unqualifiedPath = ppath.normalize(ppath.join(absoluteIssuer, request)); + } else { + unqualifiedPath = ppath.normalize(ppath.join(ppath.dirname(absoluteIssuer), request)); + } + } + findPackageLocator(unqualifiedPath); + } else { + if (!issuer) { + throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + const [, dependencyName, subPath] = dependencyNameMatch; + const issuerLocator = findPackageLocator(issuer); + if (!issuerLocator) { + const result2 = callNativeResolution(request, issuer); + if (result2 === false) { + throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). + +Require path: "${requestForDisplay}" +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + return npath.toPortablePath(result2); + } + const issuerInformation = getPackageInformationSafe(issuerLocator); + let dependencyReference = issuerInformation.packageDependencies.get(dependencyName); + let fallbackReference = null; + if (dependencyReference == null) { + if (issuerLocator.name !== null) { + const exclusionEntry = runtimeState.fallbackExclusionList.get(issuerLocator.name); + const canUseFallbacks = !exclusionEntry || !exclusionEntry.has(issuerLocator.reference); + if (canUseFallbacks) { + for (let t = 0, T = fallbackLocators.length; t < T; ++t) { + const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]); + const reference = fallbackInformation.packageDependencies.get(dependencyName); + if (reference == null) + continue; + if (alwaysWarnOnFallback) + fallbackReference = reference; + else + dependencyReference = reference; + break; + } + if (runtimeState.enableTopLevelFallback) { + if (dependencyReference == null && fallbackReference === null) { + const reference = runtimeState.fallbackPool.get(dependencyName); + if (reference != null) { + fallbackReference = reference; + } + } + } + } + } + } + let error = null; + if (dependencyReference === null) { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `Your application tried to access ${dependencyName} (a peer dependency); this isn't allowed as there is no ancestor to satisfy the requirement. Use a devDependency if needed. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + const brokenAncestors = findBrokenPeerDependencies(dependencyName, issuerLocator); + if (brokenAncestors.every((ancestor) => isDependencyTreeRoot(ancestor))) { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) +${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference} +`).join(``)} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName, + brokenAncestors + }); + } else { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) +${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference} +`).join(``)} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName, + brokenAncestors + }); + } + } + } else if (dependencyReference === void 0) { + if (!considerBuiltins && builtinModules.has(request)) { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in ${issuerLocator.name}'s dependencies, this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName + }); + } + } else { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerForDisplay} +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. + +Required package: ${dependencyName} (via "${requestForDisplay}") +Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName + }); + } + } + } + if (dependencyReference == null) { + if (fallbackReference === null || error === null) + throw error || new Error(`Assertion failed: Expected an error to have been set`); + dependencyReference = fallbackReference; + const message2 = error.message.replace(/\n.*/g, ``); + error.message = message2; + if (!emittedWarnings.has(message2)) { + emittedWarnings.add(message2); + process.emitWarning(error); + } + } + const dependencyLocator = Array.isArray(dependencyReference) ? { + name: dependencyReference[0], + reference: dependencyReference[1] + } : { + name: dependencyName, + reference: dependencyReference + }; + const dependencyInformation = getPackageInformationSafe(dependencyLocator); + if (!dependencyInformation.packageLocation) { + throw internalTools_makeError(ErrorCode.MISSING_DEPENDENCY, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. + +Required package: ${dependencyLocator.name}@${dependencyLocator.reference} (via "${requestForDisplay}") +Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) +`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyLocator: Object.assign({}, dependencyLocator) + }); + } + const dependencyLocation = dependencyInformation.packageLocation; + if (subPath) { + unqualifiedPath = ppath.join(dependencyLocation, subPath); + } else { + unqualifiedPath = dependencyLocation; + } + } + return ppath.normalize(unqualifiedPath); + } + function resolveUnqualified(unqualifiedPath, { + extensions = Object.keys(external_module_namespaceObject.Module._extensions) + } = {}) { + const candidates = []; + const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { + extensions + }); + if (qualifiedPath) { + return ppath.normalize(qualifiedPath); + } else { + const unqualifiedPathForDisplay = getPathForDisplay(unqualifiedPath); + throw internalTools_makeError(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `Qualified path resolution failed - none of the candidates can be found on the disk. + +Source path: ${unqualifiedPathForDisplay} +${candidates.map((candidate) => `Rejected candidate: ${getPathForDisplay(candidate)} +`).join(``)}`, { + unqualifiedPath: unqualifiedPathForDisplay + }); + } + } + function resolveRequest(request, issuer, { + considerBuiltins, + extensions + } = {}) { + const unqualifiedPath = resolveToUnqualified(request, issuer, { + considerBuiltins + }); + if (unqualifiedPath === null) + return null; + try { + return resolveUnqualified(unqualifiedPath, { + extensions + }); + } catch (resolutionError) { + if (resolutionError.pnpCode === `QUALIFIED_PATH_RESOLUTION_FAILED`) + Object.assign(resolutionError.data, { + request: getPathForDisplay(request), + issuer: issuer && getPathForDisplay(issuer) + }); + throw resolutionError; + } + } + function resolveVirtual(request) { + const normalized = ppath.normalize(request); + const resolved = VirtualFS.resolveVirtual(normalized); + return resolved !== normalized ? resolved : null; + } + return { + VERSIONS, + topLevel, + getLocator: (name, referencish) => { + if (Array.isArray(referencish)) { + return { + name: referencish[0], + reference: referencish[1] + }; + } else { + return { + name, + reference: referencish + }; + } + }, + getDependencyTreeRoots: () => { + return [...runtimeState.dependencyTreeRoots]; + }, + getAllLocators() { + const locators = []; + for (const [name, entry] of packageRegistry) + for (const reference of entry.keys()) + if (name !== null && reference !== null) + locators.push({ + name, + reference + }); + return locators; + }, + getPackageInformation: (locator) => { + const info = getPackageInformation(locator); + if (info === null) + return null; + const packageLocation = npath.fromPortablePath(info.packageLocation); + const nativeInfo = { + ...info, + packageLocation + }; + return nativeInfo; + }, + findPackageLocator: (path2) => { + return findPackageLocator(npath.toPortablePath(path2)); + }, + resolveToUnqualified: maybeLog(`resolveToUnqualified`, (request, issuer, opts2) => { + const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; + const resolution = resolveToUnqualified(npath.toPortablePath(request), portableIssuer, opts2); + if (resolution === null) + return null; + return npath.fromPortablePath(resolution); + }), + resolveUnqualified: maybeLog(`resolveUnqualified`, (unqualifiedPath, opts2) => { + return npath.fromPortablePath(resolveUnqualified(npath.toPortablePath(unqualifiedPath), opts2)); + }), + resolveRequest: maybeLog(`resolveRequest`, (request, issuer, opts2) => { + const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; + const resolution = resolveRequest(npath.toPortablePath(request), portableIssuer, opts2); + if (resolution === null) + return null; + return npath.fromPortablePath(resolution); + }), + resolveVirtual: maybeLog(`resolveVirtual`, (path2) => { + const result2 = resolveVirtual(npath.toPortablePath(path2)); + if (result2 !== null) { + return npath.fromPortablePath(result2); + } else { + return null; + } + }) + }; + } + const readFileP = (0, external_util_namespaceObject.promisify)(external_fs_namespaceObject.readFile); + async function hydratePnpFile(location, { + fakeFs, + pnpapiResolution + }) { + const source = await readFileP(location, `utf8`); + return hydratePnpSource(source, { + basePath: (0, external_path_namespaceObject.dirname)(location), + fakeFs, + pnpapiResolution + }); + } + function hydratePnpSource(source, { + basePath: basePath2, + fakeFs, + pnpapiResolution + }) { + const data = JSON.parse(source); + const runtimeState = hydrateRuntimeState(data, { + basePath: basePath2 + }); + return makeApi(runtimeState, { + compatibilityMode: true, + fakeFs, + pnpapiResolution + }); + } + const makeRuntimeApi = (settings, basePath2, fakeFs) => { + const data = generateSerializedState(settings); + const state = hydrateRuntimeState(data, { + basePath: basePath2 + }); + const pnpapiResolution = npath.join(basePath2, `.pnp.js`); + return makeApi(state, { + fakeFs, + pnpapiResolution + }); + }; } - break; - } - ++c; - } - list.length -= c; - return ret; - } - function copyFromBuffer(n, list) { - var ret = Buffer2.allocUnsafe(n); - var p = list.head; - var c = 1; - p.data.copy(ret); - n -= p.data.length; - while (p = p.next) { - var buf = p.data; - var nb = n > buf.length ? buf.length : n; - buf.copy(ret, ret.length - n, 0, nb); - n -= nb; - if (n === 0) { - if (nb === buf.length) { - ++c; - if (p.next) - list.head = p.next; - else - list.head = list.tail = null; - } else { - list.head = p; - p.data = buf.slice(nb); + ), + /***/ + 650: ( + /***/ + (module3, __unused_webpack_exports, __webpack_require__2) => { + let hook; + module3.exports = () => { + if (typeof hook === `undefined`) + hook = __webpack_require__2(761).brotliDecompressSync(Buffer.from("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", "base64")).toString(); + return hook; + }; } - break; + ), + /***/ + 761: ( + /***/ + (module3) => { + "use strict"; + module3.exports = require("zlib"); + ; + } + ) + /******/ + }; + var __webpack_module_cache__ = {}; + function __webpack_require__(moduleId) { + if (__webpack_module_cache__[moduleId]) { + return __webpack_module_cache__[moduleId].exports; } - ++c; - } - list.length -= c; - return ret; - } - function endReadable(stream) { - var state = stream._readableState; - if (state.length > 0) - throw new Error('"endReadable()" called on non-empty stream'); - if (!state.endEmitted) { - state.ended = true; - pna.nextTick(endReadableNT, state, stream); - } - } - function endReadableNT(state, stream) { - if (!state.endEmitted && state.length === 0) { - state.endEmitted = true; - stream.readable = false; - stream.emit("end"); - } - } - function indexOf(xs, x) { - for (var i = 0, l = xs.length; i < l; i++) { - if (xs[i] === x) - return i; + var module3 = __webpack_module_cache__[moduleId] = { + /******/ + // no module.id needed + /******/ + // no module.loaded needed + /******/ + exports: {} + /******/ + }; + __webpack_modules__[moduleId](module3, module3.exports, __webpack_require__); + return module3.exports; } - return -1; - } + (() => { + __webpack_require__.n = (module3) => { + var getter = module3 && module3.__esModule ? ( + /******/ + () => module3["default"] + ) : ( + /******/ + () => module3 + ); + __webpack_require__.d(getter, { a: getter }); + return getter; + }; + })(); + (() => { + __webpack_require__.d = (exports3, definition) => { + for (var key in definition) { + if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports3, key)) { + Object.defineProperty(exports3, key, { enumerable: true, get: definition[key] }); + } + } + }; + })(); + (() => { + __webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop); + })(); + (() => { + __webpack_require__.r = (exports3) => { + if (typeof Symbol !== "undefined" && Symbol.toStringTag) { + Object.defineProperty(exports3, Symbol.toStringTag, { value: "Module" }); + } + Object.defineProperty(exports3, "__esModule", { value: true }); + }; + })(); + return __webpack_require__(862); + })(); } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_transform.js -var require_stream_transform2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { +// ../lockfile/lockfile-to-pnp/lib/index.js +var require_lib119 = __commonJS({ + "../lockfile/lockfile-to-pnp/lib/index.js"(exports2) { "use strict"; - module2.exports = Transform; - var Duplex = require_stream_duplex2(); - var util = Object.create(require_util6()); - util.inherits = require_inherits(); - util.inherits(Transform, Duplex); - function afterTransform(er, data) { - var ts = this._transformState; - ts.transforming = false; - var cb = ts.writecb; - if (!cb) { - return this.emit("error", new Error("write callback called multiple times")); - } - ts.writechunk = null; - ts.writecb = null; - if (data != null) - this.push(data); - cb(er); - var rs = this._readableState; - rs.reading = false; - if (rs.needReadable || rs.length < rs.highWaterMark) { - this._read(rs.highWaterMark); - } + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lockfileToPackageRegistry = exports2.writePnpFile = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var lockfile_utils_1 = require_lib84(); + var dependency_path_1 = require_lib81(); + var pnp_1 = require_lib118(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + async function writePnpFile(lockfile, opts) { + const packageRegistry = lockfileToPackageRegistry(lockfile, opts); + const loaderFile = (0, pnp_1.generateInlinedScript)({ + blacklistedLocations: void 0, + dependencyTreeRoots: [], + ignorePattern: void 0, + packageRegistry, + shebang: void 0 + }); + await fs_1.promises.writeFile(path_1.default.join(opts.lockfileDir, ".pnp.cjs"), loaderFile, "utf8"); } - function Transform(options) { - if (!(this instanceof Transform)) - return new Transform(options); - Duplex.call(this, options); - this._transformState = { - afterTransform: afterTransform.bind(this), - needTransform: false, - transforming: false, - writecb: null, - writechunk: null, - writeencoding: null - }; - this._readableState.needReadable = true; - this._readableState.sync = false; - if (options) { - if (typeof options.transform === "function") - this._transform = options.transform; - if (typeof options.flush === "function") - this._flush = options.flush; + exports2.writePnpFile = writePnpFile; + function lockfileToPackageRegistry(lockfile, opts) { + const packageRegistry = /* @__PURE__ */ new Map(); + for (const [importerId, importer] of Object.entries(lockfile.importers)) { + if (importerId === ".") { + const packageStore = /* @__PURE__ */ new Map([ + [ + null, + { + packageDependencies: new Map([ + ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies) : [], + ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies) : [], + ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies) : [] + ]), + packageLocation: "./" + } + ] + ]); + packageRegistry.set(null, packageStore); + } else { + const name = opts.importerNames[importerId]; + const packageStore = /* @__PURE__ */ new Map([ + [ + importerId, + { + packageDependencies: new Map([ + [name, importerId], + ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies, importerId) : [], + ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies, importerId) : [], + ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies, importerId) : [] + ]), + packageLocation: `./${importerId}` + } + ] + ]); + packageRegistry.set(name, packageStore); + } } - this.on("prefinish", prefinish); - } - function prefinish() { - var _this = this; - if (typeof this._flush === "function") { - this._flush(function(er, data) { - done(_this, er, data); + for (const [relDepPath, pkgSnapshot] of Object.entries(lockfile.packages ?? {})) { + const { name, version: version2, peersSuffix } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(relDepPath, pkgSnapshot); + const pnpVersion = toPnPVersion(version2, peersSuffix); + let packageStore = packageRegistry.get(name); + if (!packageStore) { + packageStore = /* @__PURE__ */ new Map(); + packageRegistry.set(name, packageStore); + } + let packageLocation = (0, normalize_path_1.default)(path_1.default.relative(opts.lockfileDir, path_1.default.join(opts.virtualStoreDir, (0, dependency_path_1.depPathToFilename)(relDepPath), "node_modules", name))); + if (!packageLocation.startsWith("../")) { + packageLocation = `./${packageLocation}`; + } + packageStore.set(pnpVersion, { + packageDependencies: new Map([ + [name, pnpVersion], + ...pkgSnapshot.dependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.dependencies) : [], + ...pkgSnapshot.optionalDependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.optionalDependencies) : [] + ]), + packageLocation }); - } else { - done(this, null, null); } + return packageRegistry; } - Transform.prototype.push = function(chunk, encoding) { - this._transformState.needTransform = false; - return Duplex.prototype.push.call(this, chunk, encoding); - }; - Transform.prototype._transform = function(chunk, encoding, cb) { - throw new Error("_transform() is not implemented"); - }; - Transform.prototype._write = function(chunk, encoding, cb) { - var ts = this._transformState; - ts.writecb = cb; - ts.writechunk = chunk; - ts.writeencoding = encoding; - if (!ts.transforming) { - var rs = this._readableState; - if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) - this._read(rs.highWaterMark); - } - }; - Transform.prototype._read = function(n) { - var ts = this._transformState; - if (ts.writechunk !== null && ts.writecb && !ts.transforming) { - ts.transforming = true; - this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); - } else { - ts.needTransform = true; - } - }; - Transform.prototype._destroy = function(err, cb) { - var _this2 = this; - Duplex.prototype._destroy.call(this, err, function(err2) { - cb(err2); - _this2.emit("close"); + exports2.lockfileToPackageRegistry = lockfileToPackageRegistry; + function toPackageDependenciesMap(lockfile, deps, importerId) { + return Object.entries(deps).map(([depAlias, ref]) => { + if (importerId && ref.startsWith("link:")) { + return [depAlias, path_1.default.join(importerId, ref.slice(5))]; + } + const relDepPath = (0, dependency_path_1.refToRelative)(ref, depAlias); + if (!relDepPath) + return [depAlias, ref]; + const { name, version: version2, peersSuffix } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(relDepPath, lockfile.packages[relDepPath]); + const pnpVersion = toPnPVersion(version2, peersSuffix); + if (depAlias === name) { + return [depAlias, pnpVersion]; + } + return [depAlias, [name, pnpVersion]]; }); - }; - function done(stream, er, data) { - if (er) - return stream.emit("error", er); - if (data != null) - stream.push(data); - if (stream._writableState.length) - throw new Error("Calling transform done when ws.length != 0"); - if (stream._transformState.transforming) - throw new Error("Calling transform done when still transforming"); - return stream.push(null); } - } -}); - -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_passthrough.js -var require_stream_passthrough2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { - "use strict"; - module2.exports = PassThrough; - var Transform = require_stream_transform2(); - var util = Object.create(require_util6()); - util.inherits = require_inherits(); - util.inherits(PassThrough, Transform); - function PassThrough(options) { - if (!(this instanceof PassThrough)) - return new PassThrough(options); - Transform.call(this, options); + function toPnPVersion(version2, peersSuffix) { + return peersSuffix ? `virtual:${version2}_${peersSuffix}#${version2}` : version2; } - PassThrough.prototype._transform = function(chunk, encoding, cb) { - cb(null, chunk); - }; } }); -// ../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/readable.js -var require_readable2 = __commonJS({ - "../../node_modules/.pnpm/readable-stream@2.3.7/node_modules/readable-stream/readable.js"(exports2, module2) { - var Stream = require("stream"); - if (process.env.READABLE_STREAM === "disable" && Stream) { - module2.exports = Stream; - exports2 = module2.exports = Stream.Readable; - exports2.Readable = Stream.Readable; - exports2.Writable = Stream.Writable; - exports2.Duplex = Stream.Duplex; - exports2.Transform = Stream.Transform; - exports2.PassThrough = Stream.PassThrough; - exports2.Stream = Stream; - } else { - exports2 = module2.exports = require_stream_readable2(); - exports2.Stream = Stream || exports2; - exports2.Readable = exports2; - exports2.Writable = require_stream_writable2(); - exports2.Duplex = require_stream_duplex2(); - exports2.Transform = require_stream_transform2(); - exports2.PassThrough = require_stream_passthrough2(); - } +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeAll.js +var require_mergeAll2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeAll.js"(exports2, module2) { + var _objectAssign = require_objectAssign(); + var _curry1 = require_curry1(); + var mergeAll = /* @__PURE__ */ _curry1(function mergeAll2(list) { + return _objectAssign.apply(null, [{}].concat(list)); + }); + module2.exports = mergeAll; } }); -// ../../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js -var require_wrappy = __commonJS({ - "../../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js"(exports2, module2) { - module2.exports = wrappy; - function wrappy(fn2, cb) { - if (fn2 && cb) - return wrappy(fn2)(cb); - if (typeof fn2 !== "function") - throw new TypeError("need wrapper function"); - Object.keys(fn2).forEach(function(k) { - wrapper[k] = fn2[k]; - }); - return wrapper; - function wrapper() { - var args2 = new Array(arguments.length); - for (var i = 0; i < args2.length; i++) { - args2[i] = arguments[i]; - } - var ret = fn2.apply(this, args2); - var cb2 = args2[args2.length - 1]; - if (typeof ret === "function" && ret !== cb2) { - Object.keys(cb2).forEach(function(k) { - ret[k] = cb2[k]; - }); - } - return ret; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pickAll.js +var require_pickAll = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pickAll.js"(exports2, module2) { + var _curry2 = require_curry2(); + var pickAll = /* @__PURE__ */ _curry2(function pickAll2(names, obj) { + var result2 = {}; + var idx = 0; + var len = names.length; + while (idx < len) { + var name = names[idx]; + result2[name] = obj[name]; + idx += 1; } - } + return result2; + }); + module2.exports = pickAll; } }); -// ../../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js -var require_once = __commonJS({ - "../../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js"(exports2, module2) { - var wrappy = require_wrappy(); - module2.exports = wrappy(once); - module2.exports.strict = wrappy(onceStrict); - once.proto = once(function() { - Object.defineProperty(Function.prototype, "once", { - value: function() { - return once(this); - }, - configurable: true - }); - Object.defineProperty(Function.prototype, "onceStrict", { - value: function() { - return onceStrict(this); - }, - configurable: true +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/props.js +var require_props = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/props.js"(exports2, module2) { + var _curry2 = require_curry2(); + var path2 = require_path5(); + var props = /* @__PURE__ */ _curry2(function props2(ps, obj) { + return ps.map(function(p) { + return path2([p], obj); }); }); - function once(fn2) { - var f = function() { - if (f.called) - return f.value; - f.called = true; - return f.value = fn2.apply(this, arguments); - }; - f.called = false; - return f; - } - function onceStrict(fn2) { - var f = function() { - if (f.called) - throw new Error(f.onceError); - f.called = true; - return f.value = fn2.apply(this, arguments); - }; - var name = fn2.name || "Function wrapped with `once`"; - f.onceError = name + " shouldn't be called more than once"; - f.called = false; - return f; - } + module2.exports = props; } }); -// ../../node_modules/.pnpm/end-of-stream@1.4.4/node_modules/end-of-stream/index.js -var require_end_of_stream2 = __commonJS({ - "../../node_modules/.pnpm/end-of-stream@1.4.4/node_modules/end-of-stream/index.js"(exports2, module2) { - var once = require_once(); - var noop = function() { - }; - var isRequest = function(stream) { - return stream.setHeader && typeof stream.abort === "function"; - }; - var isChildProcess = function(stream) { - return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3; - }; - var eos = function(stream, opts, callback) { - if (typeof opts === "function") - return eos(stream, null, opts); - if (!opts) - opts = {}; - callback = once(callback || noop); - var ws = stream._writableState; - var rs = stream._readableState; - var readable = opts.readable || opts.readable !== false && stream.readable; - var writable = opts.writable || opts.writable !== false && stream.writable; - var cancelled = false; - var onlegacyfinish = function() { - if (!stream.writable) - onfinish(); - }; - var onfinish = function() { - writable = false; - if (!readable) - callback.call(stream); - }; - var onend = function() { - readable = false; - if (!writable) - callback.call(stream); - }; - var onexit = function(exitCode) { - callback.call(stream, exitCode ? new Error("exited with error code: " + exitCode) : null); - }; - var onerror = function(err) { - callback.call(stream, err); - }; - var onclose = function() { - process.nextTick(onclosenexttick); - }; - var onclosenexttick = function() { - if (cancelled) - return; - if (readable && !(rs && (rs.ended && !rs.destroyed))) - return callback.call(stream, new Error("premature close")); - if (writable && !(ws && (ws.ended && !ws.destroyed))) - return callback.call(stream, new Error("premature close")); - }; - var onrequest = function() { - stream.req.on("finish", onfinish); - }; - if (isRequest(stream)) { - stream.on("complete", onfinish); - stream.on("abort", onclose); - if (stream.req) - onrequest(); - else - stream.on("request", onrequest); - } else if (writable && !ws) { - stream.on("end", onlegacyfinish); - stream.on("close", onlegacyfinish); - } - if (isChildProcess(stream)) - stream.on("exit", onexit); - stream.on("end", onend); - stream.on("finish", onfinish); - if (opts.error !== false) - stream.on("error", onerror); - stream.on("close", onclose); - return function() { - cancelled = true; - stream.removeListener("complete", onfinish); - stream.removeListener("abort", onclose); - stream.removeListener("request", onrequest); - if (stream.req) - stream.req.removeListener("finish", onfinish); - stream.removeListener("end", onlegacyfinish); - stream.removeListener("close", onlegacyfinish); - stream.removeListener("finish", onfinish); - stream.removeListener("exit", onexit); - stream.removeListener("end", onend); - stream.removeListener("error", onerror); - stream.removeListener("close", onclose); - }; +// ../pkg-manager/modules-cleaner/lib/removeDirectDependency.js +var require_removeDirectDependency = __commonJS({ + "../pkg-manager/modules-cleaner/lib/removeDirectDependency.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - module2.exports = eos; - } -}); - -// ../../node_modules/.pnpm/stream-shift@1.0.1/node_modules/stream-shift/index.js -var require_stream_shift = __commonJS({ - "../../node_modules/.pnpm/stream-shift@1.0.1/node_modules/stream-shift/index.js"(exports2, module2) { - module2.exports = shift; - function shift(stream) { - var rs = stream._readableState; - if (!rs) - return null; - return rs.objectMode || typeof stream._duplexState === "number" ? stream.read() : stream.read(getStateLength(rs)); - } - function getStateLength(state) { - if (state.buffer.length) { - if (state.buffer.head) { - return state.buffer.head.data.length; - } - return state.buffer[0].length; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeDirectDependency = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var remove_bins_1 = require_lib42(); + async function removeDirectDependency(dependency, opts) { + const dependencyDir = path_1.default.join(opts.modulesDir, dependency.name); + const results = await Promise.all([ + (0, remove_bins_1.removeBinsOfDependency)(dependencyDir, opts), + !opts.dryRun && (0, remove_bins_1.removeBin)(dependencyDir) + // eslint-disable-line @typescript-eslint/no-explicit-any + ]); + const uninstalledPkg = results[0]; + if (!opts.muteLogs) { + core_loggers_1.rootLogger.debug({ + prefix: opts.rootDir, + removed: { + dependencyType: dependency.dependenciesField === "devDependencies" && "dev" || dependency.dependenciesField === "optionalDependencies" && "optional" || dependency.dependenciesField === "dependencies" && "prod" || void 0, + name: dependency.name, + version: uninstalledPkg?.version + } + }); } - return state.length; } + exports2.removeDirectDependency = removeDirectDependency; } }); -// ../../node_modules/.pnpm/duplexify@3.7.1/node_modules/duplexify/index.js -var require_duplexify = __commonJS({ - "../../node_modules/.pnpm/duplexify@3.7.1/node_modules/duplexify/index.js"(exports2, module2) { - var stream = require_readable2(); - var eos = require_end_of_stream2(); - var inherits = require_inherits(); - var shift = require_stream_shift(); - var SIGNAL_FLUSH = Buffer.from && Buffer.from !== Uint8Array.from ? Buffer.from([0]) : new Buffer([0]); - var onuncork = function(self2, fn2) { - if (self2._corked) - self2.once("uncork", fn2); - else - fn2(); - }; - var autoDestroy = function(self2, err) { - if (self2._autoDestroy) - self2.destroy(err); - }; - var destroyer = function(self2, end2) { - return function(err) { - if (err) - autoDestroy(self2, err.message === "premature close" ? null : err); - else if (end2 && !self2._ended) - self2.end(); - }; - }; - var end = function(ws, fn2) { - if (!ws) - return fn2(); - if (ws._writableState && ws._writableState.finished) - return fn2(); - if (ws._writableState) - return ws.end(fn2); - ws.end(); - fn2(); - }; - var toStreams2 = function(rs) { - return new stream.Readable({ objectMode: true, highWaterMark: 16 }).wrap(rs); - }; - var Duplexify = function(writable, readable, opts) { - if (!(this instanceof Duplexify)) - return new Duplexify(writable, readable, opts); - stream.Duplex.call(this, opts); - this._writable = null; - this._readable = null; - this._readable2 = null; - this._autoDestroy = !opts || opts.autoDestroy !== false; - this._forwardDestroy = !opts || opts.destroy !== false; - this._forwardEnd = !opts || opts.end !== false; - this._corked = 1; - this._ondrain = null; - this._drained = false; - this._forwarding = false; - this._unwrite = null; - this._unread = null; - this._ended = false; - this.destroyed = false; - if (writable) - this.setWritable(writable); - if (readable) - this.setReadable(readable); - }; - inherits(Duplexify, stream.Duplex); - Duplexify.obj = function(writable, readable, opts) { - if (!opts) - opts = {}; - opts.objectMode = true; - opts.highWaterMark = 16; - return new Duplexify(writable, readable, opts); - }; - Duplexify.prototype.cork = function() { - if (++this._corked === 1) - this.emit("cork"); - }; - Duplexify.prototype.uncork = function() { - if (this._corked && --this._corked === 0) - this.emit("uncork"); - }; - Duplexify.prototype.setWritable = function(writable) { - if (this._unwrite) - this._unwrite(); - if (this.destroyed) { - if (writable && writable.destroy) - writable.destroy(); - return; - } - if (writable === null || writable === false) { - this.end(); - return; - } - var self2 = this; - var unend = eos(writable, { writable: true, readable: false }, destroyer(this, this._forwardEnd)); - var ondrain = function() { - var ondrain2 = self2._ondrain; - self2._ondrain = null; - if (ondrain2) - ondrain2(); - }; - var clear = function() { - self2._writable.removeListener("drain", ondrain); - unend(); - }; - if (this._unwrite) - process.nextTick(ondrain); - this._writable = writable; - this._writable.on("drain", ondrain); - this._unwrite = clear; - this.uncork(); - }; - Duplexify.prototype.setReadable = function(readable) { - if (this._unread) - this._unread(); - if (this.destroyed) { - if (readable && readable.destroy) - readable.destroy(); - return; - } - if (readable === null || readable === false) { - this.push(null); - this.resume(); - return; - } - var self2 = this; - var unend = eos(readable, { writable: false, readable: true }, destroyer(this)); - var onreadable = function() { - self2._forward(); - }; - var onend = function() { - self2.push(null); - }; - var clear = function() { - self2._readable2.removeListener("readable", onreadable); - self2._readable2.removeListener("end", onend); - unend(); - }; - this._drained = true; - this._readable = readable; - this._readable2 = readable._readableState ? readable : toStreams2(readable); - this._readable2.on("readable", onreadable); - this._readable2.on("end", onend); - this._unread = clear; - this._forward(); - }; - Duplexify.prototype._read = function() { - this._drained = true; - this._forward(); - }; - Duplexify.prototype._forward = function() { - if (this._forwarding || !this._readable2 || !this._drained) - return; - this._forwarding = true; - var data; - while (this._drained && (data = shift(this._readable2)) !== null) { - if (this.destroyed) - continue; - this._drained = this.push(data); - } - this._forwarding = false; +// ../pkg-manager/modules-cleaner/lib/prune.js +var require_prune2 = __commonJS({ + "../pkg-manager/modules-cleaner/lib/prune.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - Duplexify.prototype.destroy = function(err) { - if (this.destroyed) - return; - this.destroyed = true; - var self2 = this; - process.nextTick(function() { - self2._destroy(err); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.prune = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var filter_lockfile_1 = require_lib116(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var read_modules_dir_1 = require_lib53(); + var types_1 = require_lib25(); + var dependency_path_1 = require_lib81(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var difference_1 = __importDefault4(require_difference()); + var equals_1 = __importDefault4(require_equals2()); + var mergeAll_1 = __importDefault4(require_mergeAll2()); + var pickAll_1 = __importDefault4(require_pickAll()); + var props_1 = __importDefault4(require_props()); + var removeDirectDependency_1 = require_removeDirectDependency(); + async function prune(importers, opts) { + const wantedLockfile = (0, filter_lockfile_1.filterLockfile)(opts.wantedLockfile, { + include: opts.include, + skipped: opts.skipped }); - }; - Duplexify.prototype._destroy = function(err) { - if (err) { - var ondrain = this._ondrain; - this._ondrain = null; - if (ondrain) - ondrain(err); - else - this.emit("error", err); - } - if (this._forwardDestroy) { - if (this._readable && this._readable.destroy) - this._readable.destroy(); - if (this._writable && this._writable.destroy) - this._writable.destroy(); - } - this.emit("close"); - }; - Duplexify.prototype._write = function(data, enc, cb) { - if (this.destroyed) - return cb(); - if (this._corked) - return onuncork(this, this._write.bind(this, data, enc, cb)); - if (data === SIGNAL_FLUSH) - return this._finish(cb); - if (!this._writable) - return cb(); - if (this._writable.write(data) === false) - this._ondrain = cb; - else - cb(); - }; - Duplexify.prototype._finish = function(cb) { - var self2 = this; - this.emit("preend"); - onuncork(this, function() { - end(self2._forwardEnd && self2._writable, function() { - if (self2._writableState.prefinished === false) - self2._writableState.prefinished = true; - self2.emit("prefinish"); - onuncork(self2, cb); - }); + await Promise.all(importers.map(async ({ binsDir, id, modulesDir, pruneDirectDependencies, removePackages, rootDir }) => { + const currentImporter = opts.currentLockfile.importers[id] || {}; + const currentPkgs = Object.entries(mergeDependencies(currentImporter)); + const wantedPkgs = Object.entries(mergeDependencies(wantedLockfile.importers[id])); + const allCurrentPackages = new Set(pruneDirectDependencies === true || removePackages?.length ? await (0, read_modules_dir_1.readModulesDir)(modulesDir) ?? [] : []); + const depsToRemove = /* @__PURE__ */ new Set([ + ...(removePackages ?? []).filter((removePackage) => allCurrentPackages.has(removePackage)), + ...(0, difference_1.default)(currentPkgs, wantedPkgs).map(([depName]) => depName) + ]); + if (pruneDirectDependencies) { + const publiclyHoistedDeps = getPubliclyHoistedDependencies(opts.hoistedDependencies); + if (allCurrentPackages.size > 0) { + const newPkgsSet = new Set(wantedPkgs.map(([depName]) => depName)); + for (const currentPackage of Array.from(allCurrentPackages)) { + if (!newPkgsSet.has(currentPackage) && !publiclyHoistedDeps.has(currentPackage)) { + depsToRemove.add(currentPackage); + } + } + } + } + return Promise.all(Array.from(depsToRemove).map(async (depName) => { + return (0, removeDirectDependency_1.removeDirectDependency)({ + dependenciesField: currentImporter.devDependencies?.[depName] != null && "devDependencies" || currentImporter.optionalDependencies?.[depName] != null && "optionalDependencies" || currentImporter.dependencies?.[depName] != null && "dependencies" || void 0, + name: depName + }, { + binsDir, + dryRun: opts.dryRun, + modulesDir, + rootDir + }); + })); + })); + const selectedImporterIds = importers.map((importer) => importer.id).sort(); + const currentPkgIdsByDepPaths = (0, equals_1.default)(selectedImporterIds, Object.keys(opts.wantedLockfile.importers)) ? getPkgsDepPaths(opts.registries, opts.currentLockfile.packages ?? {}, opts.skipped) : getPkgsDepPathsOwnedOnlyByImporters(selectedImporterIds, opts.registries, opts.currentLockfile, opts.include, opts.skipped); + const wantedPkgIdsByDepPaths = getPkgsDepPaths(opts.registries, wantedLockfile.packages ?? {}, opts.skipped); + const oldDepPaths = Object.keys(currentPkgIdsByDepPaths); + const newDepPaths = Object.keys(wantedPkgIdsByDepPaths); + const orphanDepPaths = (0, difference_1.default)(oldDepPaths, newDepPaths); + const orphanPkgIds = new Set((0, props_1.default)(orphanDepPaths, currentPkgIdsByDepPaths)); + core_loggers_1.statsLogger.debug({ + prefix: opts.lockfileDir, + removed: orphanPkgIds.size }); - }; - Duplexify.prototype.end = function(data, enc, cb) { - if (typeof data === "function") - return this.end(null, null, data); - if (typeof enc === "function") - return this.end(data, null, enc); - this._ended = true; - if (data) - this.write(data); - if (!this._writableState.ending) - this.write(SIGNAL_FLUSH); - return stream.Writable.prototype.end.call(this, cb); - }; - module2.exports = Duplexify; - } -}); - -// ../../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js -var require_immutable = __commonJS({ - "../../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js"(exports2, module2) { - module2.exports = extend; - var hasOwnProperty = Object.prototype.hasOwnProperty; - function extend() { - var target = {}; - for (var i = 0; i < arguments.length; i++) { - var source = arguments[i]; - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - target[key] = source[key]; + if (!opts.dryRun) { + if (orphanDepPaths.length > 0 && opts.currentLockfile.packages != null && (opts.hoistedModulesDir != null || opts.publicHoistedModulesDir != null)) { + const prefix = path_1.default.join(opts.virtualStoreDir, "../.."); + await Promise.all(orphanDepPaths.map(async (orphanDepPath) => { + if (opts.hoistedDependencies[orphanDepPath]) { + await Promise.all(Object.entries(opts.hoistedDependencies[orphanDepPath]).map(([alias, hoistType]) => { + const modulesDir = hoistType === "public" ? opts.publicHoistedModulesDir : opts.hoistedModulesDir; + if (!modulesDir) + return void 0; + return (0, removeDirectDependency_1.removeDirectDependency)({ + name: alias + }, { + binsDir: path_1.default.join(modulesDir, ".bin"), + modulesDir, + muteLogs: true, + rootDir: prefix + }); + })); + } + delete opts.hoistedDependencies[orphanDepPath]; + })); + } + if (opts.pruneVirtualStore !== false) { + const _tryRemovePkg = tryRemovePkg.bind(null, opts.lockfileDir, opts.virtualStoreDir); + await Promise.all(orphanDepPaths.map((orphanDepPath) => (0, dependency_path_1.depPathToFilename)(orphanDepPath)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath))); + const neededPkgs = /* @__PURE__ */ new Set(["node_modules"]); + for (const depPath of Object.keys(opts.wantedLockfile.packages ?? {})) { + if (opts.skipped.has(depPath)) + continue; + neededPkgs.add((0, dependency_path_1.depPathToFilename)(depPath)); } + const availablePkgs = await readVirtualStoreDir(opts.virtualStoreDir, opts.lockfileDir); + await Promise.all(availablePkgs.filter((availablePkg) => !neededPkgs.has(availablePkg)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath))); } } - return target; - } - } -}); - -// ../../node_modules/.pnpm/through2@2.0.5/node_modules/through2/through2.js -var require_through22 = __commonJS({ - "../../node_modules/.pnpm/through2@2.0.5/node_modules/through2/through2.js"(exports2, module2) { - var Transform = require_readable2().Transform; - var inherits = require("util").inherits; - var xtend = require_immutable(); - function DestroyableTransform(opts) { - Transform.call(this, opts); - this._destroyed = false; - } - inherits(DestroyableTransform, Transform); - DestroyableTransform.prototype.destroy = function(err) { - if (this._destroyed) - return; - this._destroyed = true; - var self2 = this; - process.nextTick(function() { - if (err) - self2.emit("error", err); - self2.emit("close"); - }); - }; - function noop(chunk, enc, callback) { - callback(null, chunk); + return new Set(orphanDepPaths); } - function through2(construct) { - return function(options, transform, flush) { - if (typeof options == "function") { - flush = transform; - transform = options; - options = {}; + exports2.prune = prune; + async function readVirtualStoreDir(virtualStoreDir, lockfileDir) { + try { + return await fs_1.promises.readdir(virtualStoreDir); + } catch (err) { + if (err.code !== "ENOENT") { + logger_1.logger.warn({ + error: err, + message: `Failed to read virtualStoreDir at "${virtualStoreDir}"`, + prefix: lockfileDir + }); } - if (typeof transform != "function") - transform = noop; - if (typeof flush != "function") - flush = null; - return construct(options, transform, flush); - }; - } - module2.exports = through2(function(options, transform, flush) { - var t2 = new DestroyableTransform(options); - t2._transform = transform; - if (flush) - t2._flush = flush; - return t2; - }); - module2.exports.ctor = through2(function(options, transform, flush) { - function Through2(override) { - if (!(this instanceof Through2)) - return new Through2(override); - this.options = xtend(options, override); - DestroyableTransform.call(this, this.options); + return []; } - inherits(Through2, DestroyableTransform); - Through2.prototype._transform = transform; - if (flush) - Through2.prototype._flush = flush; - return Through2; - }); - module2.exports.obj = through2(function(options, transform, flush) { - var t2 = new DestroyableTransform(xtend({ objectMode: true, highWaterMark: 16 }, options)); - t2._transform = transform; - if (flush) - t2._flush = flush; - return t2; - }); - } -}); - -// ../../node_modules/.pnpm/peek-stream@1.1.3/node_modules/peek-stream/index.js -var require_peek_stream = __commonJS({ - "../../node_modules/.pnpm/peek-stream@1.1.3/node_modules/peek-stream/index.js"(exports2, module2) { - var duplexify = require_duplexify(); - var through = require_through22(); - var bufferFrom = require_buffer_from(); - var isObject = function(data) { - return !Buffer.isBuffer(data) && typeof data !== "string"; - }; - var peek = function(opts, onpeek) { - if (typeof opts === "number") - opts = { maxBuffer: opts }; - if (typeof opts === "function") - return peek(null, opts); - if (!opts) - opts = {}; - var maxBuffer = typeof opts.maxBuffer === "number" ? opts.maxBuffer : 65535; - var strict = opts.strict; - var newline = opts.newline !== false; - var buffer = []; - var bufferSize = 0; - var dup = duplexify.obj(); - var peeker = through.obj({ highWaterMark: 1 }, function(data, enc, cb) { - if (isObject(data)) - return ready(data, null, cb); - if (!Buffer.isBuffer(data)) - data = bufferFrom(data); - if (newline) { - var nl = Array.prototype.indexOf.call(data, 10); - if (nl > 0 && data[nl - 1] === 13) - nl--; - if (nl > -1) { - buffer.push(data.slice(0, nl)); - return ready(Buffer.concat(buffer), data.slice(nl), cb); - } - } - buffer.push(data); - bufferSize += data.length; - if (bufferSize < maxBuffer) - return cb(); - if (strict) - return cb(new Error("No newline found")); - ready(Buffer.concat(buffer), null, cb); - }); - var onpreend = function() { - if (strict) - return dup.destroy(new Error("No newline found")); - dup.cork(); - ready(Buffer.concat(buffer), null, function(err) { - if (err) - return dup.destroy(err); - dup.uncork(); - }); - }; - var ready = function(data, overflow, cb) { - dup.removeListener("preend", onpreend); - onpeek(data, function(err, parser) { - if (err) - return cb(err); - dup.setWritable(parser); - dup.setReadable(parser); - if (data) - parser.write(data); - if (overflow) - parser.write(overflow); - overflow = buffer = peeker = null; - cb(); - }); - }; - dup.on("preend", onpreend); - dup.setWritable(peeker); - return dup; - }; - module2.exports = peek; - } -}); - -// ../../node_modules/.pnpm/pump@2.0.1/node_modules/pump/index.js -var require_pump = __commonJS({ - "../../node_modules/.pnpm/pump@2.0.1/node_modules/pump/index.js"(exports2, module2) { - var once = require_once(); - var eos = require_end_of_stream2(); - var fs = require("fs"); - var noop = function() { - }; - var ancient = /^v?\.0/.test(process.version); - var isFn = function(fn2) { - return typeof fn2 === "function"; - }; - var isFS = function(stream) { - if (!ancient) - return false; - if (!fs) - return false; - return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close); - }; - var isRequest = function(stream) { - return stream.setHeader && isFn(stream.abort); - }; - var destroyer = function(stream, reading, writing, callback) { - callback = once(callback); - var closed = false; - stream.on("close", function() { - closed = true; - }); - eos(stream, { readable: reading, writable: writing }, function(err) { - if (err) - return callback(err); - closed = true; - callback(); - }); - var destroyed = false; - return function(err) { - if (closed) - return; - if (destroyed) - return; - destroyed = true; - if (isFS(stream)) - return stream.close(noop); - if (isRequest(stream)) - return stream.abort(); - if (isFn(stream.destroy)) - return stream.destroy(); - callback(err || new Error("stream was destroyed")); - }; - }; - var call = function(fn2) { - fn2(); - }; - var pipe = function(from, to) { - return from.pipe(to); - }; - var pump = function() { - var streams = Array.prototype.slice.call(arguments); - var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop; - if (Array.isArray(streams[0])) - streams = streams[0]; - if (streams.length < 2) - throw new Error("pump requires two streams per minimum"); - var error; - var destroys = streams.map(function(stream, i) { - var reading = i < streams.length - 1; - var writing = i > 0; - return destroyer(stream, reading, writing, function(err) { - if (!error) - error = err; - if (err) - destroys.forEach(call); - if (reading) - return; - destroys.forEach(call); - callback(error); + } + async function tryRemovePkg(lockfileDir, virtualStoreDir, pkgDir) { + const pathToRemove = path_1.default.join(virtualStoreDir, pkgDir); + core_loggers_1.removalLogger.debug(pathToRemove); + try { + await (0, rimraf_1.default)(pathToRemove); + } catch (err) { + logger_1.logger.warn({ + error: err, + message: `Failed to remove "${pathToRemove}"`, + prefix: lockfileDir }); + } + } + function mergeDependencies(projectSnapshot) { + return (0, mergeAll_1.default)(types_1.DEPENDENCIES_FIELDS.map((depType) => projectSnapshot[depType] ?? {})); + } + function getPkgsDepPaths(registries, packages, skipped) { + return Object.entries(packages).reduce((acc, [depPath, pkg]) => { + if (skipped.has(depPath)) + return acc; + acc[depPath] = (0, lockfile_utils_1.packageIdFromSnapshot)(depPath, pkg, registries); + return acc; + }, {}); + } + function getPkgsDepPathsOwnedOnlyByImporters(importerIds, registries, lockfile, include, skipped) { + const selected = (0, filter_lockfile_1.filterLockfileByImporters)(lockfile, importerIds, { + failOnMissingDependencies: false, + include, + skipped }); - streams.reduce(pipe); - }; - module2.exports = pump; + const other = (0, filter_lockfile_1.filterLockfileByImporters)(lockfile, (0, difference_1.default)(Object.keys(lockfile.importers), importerIds), { + failOnMissingDependencies: false, + include, + skipped + }); + const packagesOfSelectedOnly = (0, pickAll_1.default)((0, difference_1.default)(Object.keys(selected.packages), Object.keys(other.packages)), selected.packages); + return getPkgsDepPaths(registries, packagesOfSelectedOnly, skipped); + } + function getPubliclyHoistedDependencies(hoistedDependencies) { + const publiclyHoistedDeps = /* @__PURE__ */ new Set(); + for (const hoistedAliases of Object.values(hoistedDependencies)) { + for (const [alias, hoistType] of Object.entries(hoistedAliases)) { + if (hoistType === "public") { + publiclyHoistedDeps.add(alias); + } + } + } + return publiclyHoistedDeps; + } } }); -// ../../node_modules/.pnpm/pumpify@1.5.1/node_modules/pumpify/index.js -var require_pumpify = __commonJS({ - "../../node_modules/.pnpm/pumpify@1.5.1/node_modules/pumpify/index.js"(exports2, module2) { - var pump = require_pump(); - var inherits = require_inherits(); - var Duplexify = require_duplexify(); - var toArray = function(args2) { - if (!args2.length) - return []; - return Array.isArray(args2[0]) ? args2[0] : Array.prototype.slice.call(args2); - }; - var define2 = function(opts) { - var Pumpify = function() { - var streams = toArray(arguments); - if (!(this instanceof Pumpify)) - return new Pumpify(streams); - Duplexify.call(this, null, null, opts); - if (streams.length) - this.setPipeline(streams); - }; - inherits(Pumpify, Duplexify); - Pumpify.prototype.setPipeline = function() { - var streams = toArray(arguments); - var self2 = this; - var ended = false; - var w = streams[0]; - var r = streams[streams.length - 1]; - r = r.readable ? r : null; - w = w.writable ? w : null; - var onclose = function() { - streams[0].emit("error", new Error("stream was destroyed")); - }; - this.on("close", onclose); - this.on("prefinish", function() { - if (!ended) - self2.cork(); - }); - pump(streams, function(err) { - self2.removeListener("close", onclose); - if (err) - return self2.destroy(err.message === "premature close" ? null : err); - ended = true; - if (self2._autoDestroy === false) - self2._autoDestroy = true; - self2.uncork(); - }); - if (this.destroyed) - return onclose(); - this.setWritable(w); - this.setReadable(r); - }; - return Pumpify; - }; - module2.exports = define2({ autoDestroy: false, destroy: false }); - module2.exports.obj = define2({ autoDestroy: false, destroy: false, objectMode: true, highWaterMark: 16 }); - module2.exports.ctor = define2; +// ../pkg-manager/modules-cleaner/lib/index.js +var require_lib120 = __commonJS({ + "../pkg-manager/modules-cleaner/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.prune = void 0; + var prune_1 = require_prune2(); + Object.defineProperty(exports2, "prune", { enumerable: true, get: function() { + return prune_1.prune; + } }); } }); -// ../../node_modules/.pnpm/bzip2-maybe@1.0.0/node_modules/bzip2-maybe/index.js -var require_bzip2_maybe = __commonJS({ - "../../node_modules/.pnpm/bzip2-maybe@1.0.0/node_modules/bzip2-maybe/index.js"(exports2, module2) { - var bz2 = require_unbzip2_stream(); - var isBzip2 = require_is_bzip2(); - var peek = require_peek_stream(); - var pumpify = require_pumpify(); - var through = require_through22(); - var bzip2 = function() { - return peek({ newline: false, maxBuffer: 10 }, function(data, swap) { - if (isBzip2(data)) { - return swap(null, pumpify(bz2(), bzip2())); +// ../fs/symlink-dependency/lib/symlinkDirectRootDependency.js +var require_symlinkDirectRootDependency = __commonJS({ + "../fs/symlink-dependency/lib/symlinkDirectRootDependency.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.symlinkDirectRootDependency = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var logger_1 = require_lib6(); + var symlink_dir_1 = __importDefault4(require_dist12()); + var DEP_TYPE_BY_DEPS_FIELD_NAME = { + dependencies: "prod", + devDependencies: "dev", + optionalDependencies: "optional" + }; + async function symlinkDirectRootDependency(dependencyLocation, destModulesDir, importAs, opts) { + let destModulesDirReal; + try { + destModulesDirReal = await fs_1.promises.realpath(destModulesDir); + } catch (err) { + if (err.code === "ENOENT") { + await fs_1.promises.mkdir(destModulesDir, { recursive: true }); + destModulesDirReal = await fs_1.promises.realpath(destModulesDir); + } else { + throw err; } - swap(null, through()); + } + let dependencyRealLocation; + try { + dependencyRealLocation = await fs_1.promises.realpath(dependencyLocation); + } catch (err) { + if (err.code !== "ENOENT") + throw err; + (0, logger_1.globalWarn)(`Local dependency not found at ${dependencyLocation}`); + dependencyRealLocation = dependencyLocation; + } + const dest = path_1.default.join(destModulesDirReal, importAs); + const { reused } = await (0, symlink_dir_1.default)(dependencyRealLocation, dest); + if (reused) + return; + core_loggers_1.rootLogger.debug({ + added: { + dependencyType: opts.fromDependenciesField && DEP_TYPE_BY_DEPS_FIELD_NAME[opts.fromDependenciesField], + linkedFrom: dependencyRealLocation, + name: importAs, + realName: opts.linkedPackage.name, + version: opts.linkedPackage.version + }, + prefix: opts.prefix }); - }; - module2.exports = bzip2; + } + exports2.symlinkDirectRootDependency = symlinkDirectRootDependency; } }); -// ../../node_modules/.pnpm/is-gzip@1.0.0/node_modules/is-gzip/index.js -var require_is_gzip = __commonJS({ - "../../node_modules/.pnpm/is-gzip@1.0.0/node_modules/is-gzip/index.js"(exports2, module2) { +// ../fs/symlink-dependency/lib/index.js +var require_lib121 = __commonJS({ + "../fs/symlink-dependency/lib/index.js"(exports2) { "use strict"; - module2.exports = function(buf) { - if (!buf || buf.length < 3) { - return false; - } - return buf[0] === 31 && buf[1] === 139 && buf[2] === 8; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.symlinkDependency = exports2.symlinkDirectRootDependency = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var symlink_dir_1 = __importDefault4(require_dist12()); + var symlinkDirectRootDependency_1 = require_symlinkDirectRootDependency(); + Object.defineProperty(exports2, "symlinkDirectRootDependency", { enumerable: true, get: function() { + return symlinkDirectRootDependency_1.symlinkDirectRootDependency; + } }); + async function symlinkDependency(dependencyRealLocation, destModulesDir, importAs) { + const link = path_1.default.join(destModulesDir, importAs); + core_loggers_1.linkLogger.debug({ target: dependencyRealLocation, link }); + return (0, symlink_dir_1.default)(dependencyRealLocation, link); + } + exports2.symlinkDependency = symlinkDependency; } }); -// ../../node_modules/.pnpm/is-deflate@1.0.0/node_modules/is-deflate/index.js -var require_is_deflate = __commonJS({ - "../../node_modules/.pnpm/is-deflate@1.0.0/node_modules/is-deflate/index.js"(exports2, module2) { - "use strict"; - module2.exports = function(buf) { - if (!buf || buf.length < 2) - return false; - return buf[0] === 120 && (buf[1] === 1 || buf[1] === 156 || buf[1] === 218); - }; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_concat.js +var require_concat3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_concat.js"(exports2, module2) { + function _concat(set1, set2) { + set1 = set1 || []; + set2 = set2 || []; + var idx; + var len1 = set1.length; + var len2 = set2.length; + var result2 = []; + idx = 0; + while (idx < len1) { + result2[result2.length] = set1[idx]; + idx += 1; + } + idx = 0; + while (idx < len2) { + result2[result2.length] = set2[idx]; + idx += 1; + } + return result2; + } + module2.exports = _concat; } }); -// ../../node_modules/.pnpm/gunzip-maybe@1.4.2/node_modules/gunzip-maybe/index.js -var require_gunzip_maybe = __commonJS({ - "../../node_modules/.pnpm/gunzip-maybe@1.4.2/node_modules/gunzip-maybe/index.js"(exports2, module2) { - var zlib = require("zlib"); - var peek = require_peek_stream(); - var through = require_through22(); - var pumpify = require_pumpify(); - var isGzip = require_is_gzip(); - var isDeflate = require_is_deflate(); - var isCompressed = function(data) { - if (isGzip(data)) - return 1; - if (isDeflate(data)) - return 2; - return 0; - }; - var gunzip = function(maxRecursion) { - if (maxRecursion === void 0) - maxRecursion = 3; - return peek({ newline: false, maxBuffer: 10 }, function(data, swap) { - if (maxRecursion < 0) - return swap(new Error("Maximum recursion reached")); - switch (isCompressed(data)) { - case 1: - swap(null, pumpify(zlib.createGunzip(), gunzip(maxRecursion - 1))); - break; - case 2: - swap(null, pumpify(zlib.createInflate(), gunzip(maxRecursion - 1))); - break; - default: - swap(null, through()); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_pipe.js +var require_pipe3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_pipe.js"(exports2, module2) { + function _pipe(f, g) { + return function() { + return g.call(this, f.apply(this, arguments)); + }; + } + module2.exports = _pipe; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_checkForMethod.js +var require_checkForMethod = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_checkForMethod.js"(exports2, module2) { + var _isArray = require_isArray(); + function _checkForMethod(methodname, fn2) { + return function() { + var length = arguments.length; + if (length === 0) { + return fn2(); } - }); - }; - module2.exports = gunzip; + var obj = arguments[length - 1]; + return _isArray(obj) || typeof obj[methodname] !== "function" ? fn2.apply(this, arguments) : obj[methodname].apply(obj, Array.prototype.slice.call(arguments, 0, length - 1)); + }; + } + module2.exports = _checkForMethod; } }); -// ../../node_modules/.pnpm/decompress-maybe@1.0.0/node_modules/decompress-maybe/index.js -var require_decompress_maybe = __commonJS({ - "../../node_modules/.pnpm/decompress-maybe@1.0.0/node_modules/decompress-maybe/index.js"(exports2, module2) { - var bzipMaybe = require_bzip2_maybe(); - var gunzipMaybe = require_gunzip_maybe(); - var pumpify = require_pumpify(); - module2.exports = function() { - return pumpify(bzipMaybe(), gunzipMaybe()); - }; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/slice.js +var require_slice = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/slice.js"(exports2, module2) { + var _checkForMethod = require_checkForMethod(); + var _curry3 = require_curry3(); + var slice = /* @__PURE__ */ _curry3( + /* @__PURE__ */ _checkForMethod("slice", function slice2(fromIndex, toIndex, list) { + return Array.prototype.slice.call(list, fromIndex, toIndex); + }) + ); + module2.exports = slice; } }); -// ../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js -var require_BufferList2 = __commonJS({ - "../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js"(exports2, module2) { - "use strict"; - var { Buffer: Buffer2 } = require("buffer"); - var symbol = Symbol.for("BufferList"); - function BufferList(buf) { - if (!(this instanceof BufferList)) { - return new BufferList(buf); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tail.js +var require_tail = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tail.js"(exports2, module2) { + var _checkForMethod = require_checkForMethod(); + var _curry1 = require_curry1(); + var slice = require_slice(); + var tail = /* @__PURE__ */ _curry1( + /* @__PURE__ */ _checkForMethod( + "tail", + /* @__PURE__ */ slice(1, Infinity) + ) + ); + module2.exports = tail; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pipe.js +var require_pipe4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pipe.js"(exports2, module2) { + var _arity = require_arity(); + var _pipe = require_pipe3(); + var reduce = require_reduce3(); + var tail = require_tail(); + function pipe() { + if (arguments.length === 0) { + throw new Error("pipe requires at least one argument"); } - BufferList._init.call(this, buf); + return _arity(arguments[0].length, reduce(_pipe, arguments[0], tail(arguments))); } - BufferList._init = function _init(buf) { - Object.defineProperty(this, symbol, { value: true }); - this._bufs = []; - this.length = 0; - if (buf) { - this.append(buf); + module2.exports = pipe; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reverse.js +var require_reverse2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reverse.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isString = require_isString(); + var reverse = /* @__PURE__ */ _curry1(function reverse2(list) { + return _isString(list) ? list.split("").reverse().join("") : Array.prototype.slice.call(list, 0).reverse(); + }); + module2.exports = reverse; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/compose.js +var require_compose = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/compose.js"(exports2, module2) { + var pipe = require_pipe4(); + var reverse = require_reverse2(); + function compose() { + if (arguments.length === 0) { + throw new Error("compose requires at least one argument"); } - }; - BufferList.prototype._new = function _new(buf) { - return new BufferList(buf); - }; - BufferList.prototype._offset = function _offset(offset) { - if (offset === 0) { - return [0, 0]; + return pipe.apply(this, reverse(arguments)); + } + module2.exports = compose; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/identity.js +var require_identity3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/identity.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _identity = require_identity2(); + var identity = /* @__PURE__ */ _curry1(_identity); + module2.exports = identity; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xuniqBy.js +var require_xuniqBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xuniqBy.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _Set = require_Set(); + var _xfBase = require_xfBase(); + var XUniqBy = /* @__PURE__ */ function() { + function XUniqBy2(f, xf) { + this.xf = xf; + this.f = f; + this.set = new _Set(); } - let tot = 0; - for (let i = 0; i < this._bufs.length; i++) { - const _t = tot + this._bufs[i].length; - if (offset < _t || i === this._bufs.length - 1) { - return [i, offset - tot]; + XUniqBy2.prototype["@@transducer/init"] = _xfBase.init; + XUniqBy2.prototype["@@transducer/result"] = _xfBase.result; + XUniqBy2.prototype["@@transducer/step"] = function(result2, input) { + return this.set.add(this.f(input)) ? this.xf["@@transducer/step"](result2, input) : result2; + }; + return XUniqBy2; + }(); + var _xuniqBy = /* @__PURE__ */ _curry2(function _xuniqBy2(f, xf) { + return new XUniqBy(f, xf); + }); + module2.exports = _xuniqBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniqBy.js +var require_uniqBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniqBy.js"(exports2, module2) { + var _Set = require_Set(); + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xuniqBy = require_xuniqBy(); + var uniqBy = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xuniqBy, function(fn2, list) { + var set = new _Set(); + var result2 = []; + var idx = 0; + var appliedItem, item; + while (idx < list.length) { + item = list[idx]; + appliedItem = fn2(item); + if (set.add(appliedItem)) { + result2.push(item); + } + idx += 1; } - tot = _t; - } - }; - BufferList.prototype._reverseOffset = function(blOffset) { - const bufferId = blOffset[0]; - let offset = blOffset[1]; - for (let i = 0; i < bufferId; i++) { - offset += this._bufs[i].length; - } - return offset; + return result2; + }) + ); + module2.exports = uniqBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniq.js +var require_uniq = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniq.js"(exports2, module2) { + var identity = require_identity3(); + var uniqBy = require_uniqBy(); + var uniq = /* @__PURE__ */ uniqBy(identity); + module2.exports = uniq; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/union.js +var require_union = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/union.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var compose = require_compose(); + var uniq = require_uniq(); + var union = /* @__PURE__ */ _curry2( + /* @__PURE__ */ compose(uniq, _concat) + ); + module2.exports = union; + } +}); + +// ../pkg-manager/headless/lib/linkHoistedModules.js +var require_linkHoistedModules = __commonJS({ + "../pkg-manager/headless/lib/linkHoistedModules.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - BufferList.prototype.get = function get(index) { - if (index > this.length || index < 0) { - return void 0; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.linkHoistedModules = void 0; + var path_1 = __importDefault4(require("path")); + var calc_dep_state_1 = require_lib112(); + var core_loggers_1 = require_lib9(); + var link_bins_1 = require_lib54(); + var logger_1 = require_lib6(); + var p_limit_12 = __importDefault4(require_p_limit()); + var difference_1 = __importDefault4(require_difference()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var rimraf_1 = __importDefault4(require_rimraf2()); + var limitLinking = (0, p_limit_12.default)(16); + async function linkHoistedModules(storeController, graph, prevGraph, hierarchy, opts) { + const dirsToRemove = (0, difference_1.default)(Object.keys(prevGraph), Object.keys(graph)); + core_loggers_1.statsLogger.debug({ + prefix: opts.lockfileDir, + removed: dirsToRemove.length + }); + await Promise.all([ + ...dirsToRemove.map((dir) => tryRemoveDir(dir)), + ...Object.entries(hierarchy).map(([parentDir, depsHierarchy]) => { + function warn(message2) { + logger_1.logger.info({ + message: message2, + prefix: parentDir + }); + } + return linkAllPkgsInOrder(storeController, graph, prevGraph, depsHierarchy, parentDir, { + ...opts, + warn + }); + }) + ]); + } + exports2.linkHoistedModules = linkHoistedModules; + async function tryRemoveDir(dir) { + core_loggers_1.removalLogger.debug(dir); + try { + await (0, rimraf_1.default)(dir); + } catch (err) { } - const offset = this._offset(index); - return this._bufs[offset[0]][offset[1]]; - }; - BufferList.prototype.slice = function slice(start, end) { - if (typeof start === "number" && start < 0) { - start += this.length; + } + async function linkAllPkgsInOrder(storeController, graph, prevGraph, hierarchy, parentDir, opts) { + const _calcDepState = calc_dep_state_1.calcDepState.bind(null, graph, opts.depsStateCache); + await Promise.all(Object.entries(hierarchy).map(async ([dir, deps]) => { + const depNode = graph[dir]; + if (depNode.fetchingFiles) { + let filesResponse; + try { + filesResponse = await depNode.fetchingFiles(); + } catch (err) { + if (depNode.optional) + return; + throw err; + } + let sideEffectsCacheKey; + if (opts.sideEffectsCacheRead && filesResponse.sideEffects && !(0, isEmpty_1.default)(filesResponse.sideEffects)) { + sideEffectsCacheKey = _calcDepState(dir, { + isBuilt: !opts.ignoreScripts && depNode.requiresBuild, + patchFileHash: depNode.patchFile?.hash + }); + } + await limitLinking(async () => { + const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, { + filesResponse, + force: opts.force || depNode.depPath !== prevGraph[dir]?.depPath, + keepModulesDir: true, + requiresBuild: depNode.requiresBuild || depNode.patchFile != null, + sideEffectsCacheKey + }); + if (importMethod) { + core_loggers_1.progressLogger.debug({ + method: importMethod, + requester: opts.lockfileDir, + status: "imported", + to: depNode.dir + }); + } + depNode.isBuilt = isBuilt; + }); + } + return linkAllPkgsInOrder(storeController, graph, prevGraph, deps, dir, opts); + })); + const modulesDir = path_1.default.join(parentDir, "node_modules"); + const binsDir = path_1.default.join(modulesDir, ".bin"); + await (0, link_bins_1.linkBins)(modulesDir, binsDir, { + allowExoticManifests: true, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn: opts.warn + }); + } + } +}); + +// ../pkg-manager/headless/lib/lockfileToDepGraph.js +var require_lockfileToDepGraph = __commonJS({ + "../pkg-manager/headless/lib/lockfileToDepGraph.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (typeof end === "number" && end < 0) { - end += this.length; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - return this.copy(null, 0, start, end); + __setModuleDefault4(result2, mod); + return result2; }; - BufferList.prototype.copy = function copy(dst, dstStart, srcStart, srcEnd) { - if (typeof srcStart !== "number" || srcStart < 0) { - srcStart = 0; - } - if (typeof srcEnd !== "number" || srcEnd > this.length) { - srcEnd = this.length; - } - if (srcStart >= this.length) { - return dst || Buffer2.alloc(0); - } - if (srcEnd <= 0) { - return dst || Buffer2.alloc(0); - } - const copy2 = !!dst; - const off = this._offset(srcStart); - const len = srcEnd - srcStart; - let bytes = len; - let bufoff = copy2 && dstStart || 0; - let start = off[1]; - if (srcStart === 0 && srcEnd === this.length) { - if (!copy2) { - return this._bufs.length === 1 ? this._bufs[0] : Buffer2.concat(this._bufs, this.length); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lockfileToDepGraph = void 0; + var path_1 = __importDefault4(require("path")); + var constants_1 = require_lib7(); + var core_loggers_1 = require_lib9(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var package_is_installable_1 = require_lib24(); + var dp = __importStar5(require_lib81()); + var path_exists_1 = __importDefault4(require_path_exists()); + var equals_1 = __importDefault4(require_equals2()); + var brokenModulesLogger = (0, logger_1.logger)("_broken_node_modules"); + async function lockfileToDepGraph(lockfile, currentLockfile, opts) { + const currentPackages = currentLockfile?.packages ?? {}; + const graph = {}; + const directDependenciesByImporterId = {}; + if (lockfile.packages != null) { + const pkgSnapshotByLocation = {}; + await Promise.all(Object.entries(lockfile.packages).map(async ([depPath, pkgSnapshot]) => { + if (opts.skipped.has(depPath)) + return; + const { name: pkgName, version: pkgVersion } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const modules = path_1.default.join(opts.virtualStoreDir, dp.depPathToFilename(depPath), "node_modules"); + const packageId = (0, lockfile_utils_1.packageIdFromSnapshot)(depPath, pkgSnapshot, opts.registries); + const pkg = { + name: pkgName, + version: pkgVersion, + engines: pkgSnapshot.engines, + cpu: pkgSnapshot.cpu, + os: pkgSnapshot.os, + libc: pkgSnapshot.libc + }; + if (!opts.force && (0, package_is_installable_1.packageIsInstallable)(packageId, pkg, { + engineStrict: opts.engineStrict, + lockfileDir: opts.lockfileDir, + nodeVersion: opts.nodeVersion, + optional: pkgSnapshot.optional === true, + pnpmVersion: opts.pnpmVersion + }) === false) { + opts.skipped.add(depPath); + return; + } + const dir = path_1.default.join(modules, pkgName); + if (currentPackages[depPath] && (0, equals_1.default)(currentPackages[depPath].dependencies, lockfile.packages[depPath].dependencies) && (0, equals_1.default)(currentPackages[depPath].optionalDependencies, lockfile.packages[depPath].optionalDependencies)) { + if (await (0, path_exists_1.default)(dir)) { + return; + } + brokenModulesLogger.debug({ + missing: dir + }); + } + const resolution = (0, lockfile_utils_1.pkgSnapshotToResolution)(depPath, pkgSnapshot, opts.registries); + core_loggers_1.progressLogger.debug({ + packageId, + requester: opts.lockfileDir, + status: "resolved" + }); + let fetchResponse; + try { + fetchResponse = opts.storeController.fetchPackage({ + force: false, + lockfileDir: opts.lockfileDir, + ignoreScripts: opts.ignoreScripts, + pkg: { + id: packageId, + resolution + }, + expectedPkg: { + name: pkgName, + version: pkgVersion + } + }); + if (fetchResponse instanceof Promise) + fetchResponse = await fetchResponse; + } catch (err) { + if (pkgSnapshot.optional) + return; + throw err; + } + graph[dir] = { + children: {}, + depPath, + dir, + fetchingFiles: fetchResponse.files, + filesIndexFile: fetchResponse.filesIndexFile, + finishing: fetchResponse.finishing, + hasBin: pkgSnapshot.hasBin === true, + hasBundledDependencies: pkgSnapshot.bundledDependencies != null, + modules, + name: pkgName, + optional: !!pkgSnapshot.optional, + optionalDependencies: new Set(Object.keys(pkgSnapshot.optionalDependencies ?? {})), + prepare: pkgSnapshot.prepare === true, + requiresBuild: pkgSnapshot.requiresBuild === true, + patchFile: opts.patchedDependencies?.[`${pkgName}@${pkgVersion}`] + }; + pkgSnapshotByLocation[dir] = pkgSnapshot; + })); + const ctx = { + force: opts.force, + graph, + lockfileDir: opts.lockfileDir, + pkgSnapshotsByDepPaths: lockfile.packages, + registries: opts.registries, + sideEffectsCacheRead: opts.sideEffectsCacheRead, + skipped: opts.skipped, + storeController: opts.storeController, + storeDir: opts.storeDir, + virtualStoreDir: opts.virtualStoreDir + }; + for (const [dir, node] of Object.entries(graph)) { + const pkgSnapshot = pkgSnapshotByLocation[dir]; + const allDeps = { + ...pkgSnapshot.dependencies, + ...opts.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {} + }; + const peerDeps = pkgSnapshot.peerDependencies ? new Set(Object.keys(pkgSnapshot.peerDependencies)) : null; + node.children = getChildrenPaths(ctx, allDeps, peerDeps, "."); } - for (let i = 0; i < this._bufs.length; i++) { - this._bufs[i].copy(dst, bufoff); - bufoff += this._bufs[i].length; + for (const importerId of opts.importerIds) { + const projectSnapshot = lockfile.importers[importerId]; + const rootDeps = { + ...opts.include.devDependencies ? projectSnapshot.devDependencies : {}, + ...opts.include.dependencies ? projectSnapshot.dependencies : {}, + ...opts.include.optionalDependencies ? projectSnapshot.optionalDependencies : {} + }; + directDependenciesByImporterId[importerId] = getChildrenPaths(ctx, rootDeps, null, importerId); } - return dst; - } - if (bytes <= this._bufs[off[0]].length - start) { - return copy2 ? this._bufs[off[0]].copy(dst, dstStart, start, start + bytes) : this._bufs[off[0]].slice(start, start + bytes); - } - if (!copy2) { - dst = Buffer2.allocUnsafe(len); } - for (let i = off[0]; i < this._bufs.length; i++) { - const l = this._bufs[i].length - start; - if (bytes > l) { - this._bufs[i].copy(dst, bufoff, start); - bufoff += l; - } else { - this._bufs[i].copy(dst, bufoff, start, start + bytes); - bufoff += l; - break; + return { graph, directDependenciesByImporterId }; + } + exports2.lockfileToDepGraph = lockfileToDepGraph; + function getChildrenPaths(ctx, allDeps, peerDeps, importerId) { + const children = {}; + for (const [alias, ref] of Object.entries(allDeps)) { + const childDepPath = dp.refToAbsolute(ref, alias, ctx.registries); + if (childDepPath === null) { + children[alias] = path_1.default.resolve(ctx.lockfileDir, importerId, ref.slice(5)); + continue; } - bytes -= l; - if (start) { - start = 0; + const childRelDepPath = dp.refToRelative(ref, alias); + const childPkgSnapshot = ctx.pkgSnapshotsByDepPaths[childRelDepPath]; + if (ctx.graph[childRelDepPath]) { + children[alias] = ctx.graph[childRelDepPath].dir; + } else if (childPkgSnapshot) { + if (ctx.skipped.has(childRelDepPath)) + continue; + const pkgName = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(childRelDepPath, childPkgSnapshot).name; + children[alias] = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(childRelDepPath), "node_modules", pkgName); + } else if (ref.indexOf("file:") === 0) { + children[alias] = path_1.default.resolve(ctx.lockfileDir, ref.slice(5)); + } else if (!ctx.skipped.has(childRelDepPath) && (peerDeps == null || !peerDeps.has(alias))) { + throw new Error(`${childRelDepPath} not found in ${constants_1.WANTED_LOCKFILE}`); } } - if (dst.length > bufoff) - return dst.slice(0, bufoff); - return dst; - }; - BufferList.prototype.shallowSlice = function shallowSlice(start, end) { - start = start || 0; - end = typeof end !== "number" ? this.length : end; - if (start < 0) { - start += this.length; - } - if (end < 0) { - end += this.length; + return children; + } + } +}); + +// ../node_modules/.pnpm/tslib@2.5.0/node_modules/tslib/tslib.es6.js +var tslib_es6_exports3 = {}; +__export(tslib_es6_exports3, { + __assign: () => __assign3, + __asyncDelegator: () => __asyncDelegator3, + __asyncGenerator: () => __asyncGenerator3, + __asyncValues: () => __asyncValues3, + __await: () => __await3, + __awaiter: () => __awaiter3, + __classPrivateFieldGet: () => __classPrivateFieldGet3, + __classPrivateFieldIn: () => __classPrivateFieldIn2, + __classPrivateFieldSet: () => __classPrivateFieldSet3, + __createBinding: () => __createBinding3, + __decorate: () => __decorate3, + __esDecorate: () => __esDecorate2, + __exportStar: () => __exportStar3, + __extends: () => __extends3, + __generator: () => __generator3, + __importDefault: () => __importDefault3, + __importStar: () => __importStar3, + __makeTemplateObject: () => __makeTemplateObject3, + __metadata: () => __metadata3, + __param: () => __param3, + __propKey: () => __propKey2, + __read: () => __read3, + __rest: () => __rest3, + __runInitializers: () => __runInitializers2, + __setFunctionName: () => __setFunctionName2, + __spread: () => __spread3, + __spreadArray: () => __spreadArray2, + __spreadArrays: () => __spreadArrays3, + __values: () => __values3 +}); +function __extends3(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics3(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} +function __rest3(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} +function __decorate3(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") + r = Reflect.decorate(decorators, target, key, desc); + else + for (var i = decorators.length - 1; i >= 0; i--) + if (d = decorators[i]) + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} +function __param3(paramIndex, decorator) { + return function(target, key) { + decorator(target, key, paramIndex); + }; +} +function __esDecorate2(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { + function accept(f) { + if (f !== void 0 && typeof f !== "function") + throw new TypeError("Function expected"); + return f; + } + var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; + var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; + var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); + var _, done = false; + for (var i = decorators.length - 1; i >= 0; i--) { + var context = {}; + for (var p in contextIn) + context[p] = p === "access" ? {} : contextIn[p]; + for (var p in contextIn.access) + context.access[p] = contextIn.access[p]; + context.addInitializer = function(f) { + if (done) + throw new TypeError("Cannot add initializers after decoration has completed"); + extraInitializers.push(accept(f || null)); + }; + var result2 = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); + if (kind === "accessor") { + if (result2 === void 0) + continue; + if (result2 === null || typeof result2 !== "object") + throw new TypeError("Object expected"); + if (_ = accept(result2.get)) + descriptor.get = _; + if (_ = accept(result2.set)) + descriptor.set = _; + if (_ = accept(result2.init)) + initializers.push(_); + } else if (_ = accept(result2)) { + if (kind === "field") + initializers.push(_); + else + descriptor[key] = _; + } + } + if (target) + Object.defineProperty(target, contextIn.name, descriptor); + done = true; +} +function __runInitializers2(thisArg, initializers, value) { + var useValue = arguments.length > 2; + for (var i = 0; i < initializers.length; i++) { + value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); + } + return useValue ? value : void 0; +} +function __propKey2(x) { + return typeof x === "symbol" ? x : "".concat(x); +} +function __setFunctionName2(f, name, prefix) { + if (typeof name === "symbol") + name = name.description ? "[".concat(name.description, "]") : ""; + return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); +} +function __metadata3(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") + return Reflect.metadata(metadataKey, metadataValue); +} +function __awaiter3(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); } - if (start === end) { - return this._new(); + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); } - const startOffset = this._offset(start); - const endOffset = this._offset(end); - const buffers = this._bufs.slice(startOffset[0], endOffset[0] + 1); - if (endOffset[1] === 0) { - buffers.pop(); - } else { - buffers[buffers.length - 1] = buffers[buffers.length - 1].slice(0, endOffset[1]); + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} +function __generator3(thisArg, body) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; } - if (startOffset[1] !== 0) { - buffers[0] = buffers[0].slice(startOffset[1]); + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } +} +function __exportStar3(m, o) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) + __createBinding3(o, m, p); +} +function __values3(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function __read3(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; +} +function __spread3() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read3(arguments[i])); + return ar; +} +function __spreadArrays3() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +} +function __spreadArray2(to, from, pack) { + if (pack || arguments.length === 2) + for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) + ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; } - return this._new(buffers); - }; - BufferList.prototype.toString = function toString(encoding, start, end) { - return this.slice(start, end).toString(encoding); + } + return to.concat(ar || Array.prototype.slice.call(from)); +} +function __await3(v) { + return this instanceof __await3 ? (this.v = v, this) : new __await3(v); +} +function __asyncGenerator3(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await3 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } +} +function __asyncDelegator3(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function(e) { + throw e; + }), verb("return"), i[Symbol.iterator] = function() { + return this; + }, i; + function verb(n, f) { + i[n] = o[n] ? function(v) { + return (p = !p) ? { value: __await3(o[n](v)), done: false } : f ? f(v) : v; + } : f; + } +} +function __asyncValues3(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values3 === "function" ? __values3(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); }; - BufferList.prototype.consume = function consume(bytes) { - bytes = Math.trunc(bytes); - if (Number.isNaN(bytes) || bytes <= 0) - return this; - while (this._bufs.length) { - if (bytes >= this._bufs[0].length) { - bytes -= this._bufs[0].length; - this.length -= this._bufs[0].length; - this._bufs.shift(); - } else { - this._bufs[0] = this._bufs[0].slice(bytes); - this.length -= bytes; - break; + } + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ value: v2, done: d }); + }, reject); + } +} +function __makeTemplateObject3(cooked, raw) { + if (Object.defineProperty) { + Object.defineProperty(cooked, "raw", { value: raw }); + } else { + cooked.raw = raw; + } + return cooked; +} +function __importStar3(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding3(result2, mod, k); + } + __setModuleDefault2(result2, mod); + return result2; +} +function __importDefault3(mod) { + return mod && mod.__esModule ? mod : { default: mod }; +} +function __classPrivateFieldGet3(receiver, state, kind, f) { + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a getter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot read private member from an object whose class did not declare it"); + return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); +} +function __classPrivateFieldSet3(receiver, state, value, kind, f) { + if (kind === "m") + throw new TypeError("Private method is not writable"); + if (kind === "a" && !f) + throw new TypeError("Private accessor was defined without a setter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) + throw new TypeError("Cannot write private member to an object whose class did not declare it"); + return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; +} +function __classPrivateFieldIn2(state, receiver) { + if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") + throw new TypeError("Cannot use 'in' operator on non-object"); + return typeof state === "function" ? receiver === state : state.has(receiver); +} +var extendStatics3, __assign3, __createBinding3, __setModuleDefault2; +var init_tslib_es63 = __esm({ + "../node_modules/.pnpm/tslib@2.5.0/node_modules/tslib/tslib.es6.js"() { + extendStatics3 = function(d, b) { + extendStatics3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics3(d, b); + }; + __assign3 = function() { + __assign3 = Object.assign || function __assign4(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; } - } - return this; + return t; + }; + return __assign3.apply(this, arguments); }; - BufferList.prototype.duplicate = function duplicate() { - const copy = this._new(); - for (let i = 0; i < this._bufs.length; i++) { - copy.append(this._bufs[i]); + __createBinding3 = Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return copy; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; }; - BufferList.prototype.append = function append(buf) { - if (buf == null) { - return this; - } - if (buf.buffer) { - this._appendBuffer(Buffer2.from(buf.buffer, buf.byteOffset, buf.byteLength)); - } else if (Array.isArray(buf)) { - for (let i = 0; i < buf.length; i++) { - this.append(buf[i]); + __setModuleDefault2 = Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/instance.js +var require_instance = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/instance.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tryInstance = exports2.getInstance = exports2.setFactory = exports2.cachedInstance = void 0; + var registeredFactory = () => { + throw new Error(`Assertion failed: No libzip instance is available, and no factory was configured`); + }; + function setFactory(factory) { + registeredFactory = factory; + } + exports2.setFactory = setFactory; + function getInstance() { + if (typeof exports2.cachedInstance === `undefined`) + exports2.cachedInstance = registeredFactory(); + return exports2.cachedInstance; + } + exports2.getInstance = getInstance; + function tryInstance() { + return exports2.cachedInstance; + } + exports2.tryInstance = tryInstance; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/libzipSync.js +var require_libzipSync = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/libzipSync.js"(exports2, module2) { + var frozenFs = Object.assign({}, require("fs")); + var createModule = function() { + var _scriptDir = typeof document !== "undefined" && document.currentScript ? document.currentScript.src : void 0; + if (typeof __filename !== "undefined") + _scriptDir = _scriptDir || __filename; + return function(createModule2) { + createModule2 = createModule2 || {}; + var Module = typeof createModule2 !== "undefined" ? createModule2 : {}; + var readyPromiseResolve, readyPromiseReject; + Module["ready"] = new Promise(function(resolve, reject) { + readyPromiseResolve = resolve; + readyPromiseReject = reject; + }); + var moduleOverrides = {}; + var key; + for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key]; + } } - } else if (this._isBufferList(buf)) { - for (let i = 0; i < buf._bufs.length; i++) { - this.append(buf._bufs[i]); + var arguments_ = []; + var thisProgram = "./this.program"; + var quit_ = function(status, toThrow) { + throw toThrow; + }; + var ENVIRONMENT_IS_WORKER = false; + var ENVIRONMENT_IS_NODE = true; + var scriptDirectory = ""; + function locateFile(path2) { + if (Module["locateFile"]) { + return Module["locateFile"](path2, scriptDirectory); + } + return scriptDirectory + path2; + } + var read_, readBinary; + var nodeFS; + var nodePath; + if (ENVIRONMENT_IS_NODE) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = require("path").dirname(scriptDirectory) + "/"; + } else { + scriptDirectory = __dirname + "/"; + } + read_ = function shell_read(filename, binary) { + var ret = tryParseAsDataURI(filename); + if (ret) { + return binary ? ret : ret.toString(); + } + if (!nodeFS) + nodeFS = frozenFs; + if (!nodePath) + nodePath = require("path"); + filename = nodePath["normalize"](filename); + return nodeFS["readFileSync"](filename, binary ? null : "utf8"); + }; + readBinary = function readBinary2(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret); + } + assert(ret.buffer); + return ret; + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/"); + } + arguments_ = process["argv"].slice(2); + quit_ = function(status) { + process["exit"](status); + }; + Module["inspect"] = function() { + return "[Emscripten Module object]"; + }; + } else { } - } else { - if (typeof buf === "number") { - buf = buf.toString(); + var out = Module["print"] || console.log.bind(console); + var err = Module["printErr"] || console.warn.bind(console); + for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key]; + } + } + moduleOverrides = null; + if (Module["arguments"]) + arguments_ = Module["arguments"]; + if (Module["thisProgram"]) + thisProgram = Module["thisProgram"]; + if (Module["quit"]) + quit_ = Module["quit"]; + var STACK_ALIGN = 16; + function alignMemory(size, factor) { + if (!factor) + factor = STACK_ALIGN; + return Math.ceil(size / factor) * factor; + } + var tempRet0 = 0; + var setTempRet0 = function(value) { + tempRet0 = value; + }; + var wasmBinary; + if (Module["wasmBinary"]) + wasmBinary = Module["wasmBinary"]; + var noExitRuntime = Module["noExitRuntime"] || true; + if (typeof WebAssembly !== "object") { + abort("no native wasm support detected"); + } + function getValue(ptr, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") + type = "i32"; + switch (type) { + case "i1": + return HEAP8[ptr >> 0]; + case "i8": + return HEAP8[ptr >> 0]; + case "i16": + return LE_HEAP_LOAD_I16((ptr >> 1) * 2); + case "i32": + return LE_HEAP_LOAD_I32((ptr >> 2) * 4); + case "i64": + return LE_HEAP_LOAD_I32((ptr >> 2) * 4); + case "float": + return LE_HEAP_LOAD_F32((ptr >> 2) * 4); + case "double": + return LE_HEAP_LOAD_F64((ptr >> 3) * 8); + default: + abort("invalid type for getValue: " + type); + } + return null; } - this._appendBuffer(Buffer2.from(buf)); - } - return this; - }; - BufferList.prototype._appendBuffer = function appendBuffer(buf) { - this._bufs.push(buf); - this.length += buf.length; - }; - BufferList.prototype.indexOf = function(search, offset, encoding) { - if (encoding === void 0 && typeof offset === "string") { - encoding = offset; - offset = void 0; - } - if (typeof search === "function" || Array.isArray(search)) { - throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.'); - } else if (typeof search === "number") { - search = Buffer2.from([search]); - } else if (typeof search === "string") { - search = Buffer2.from(search, encoding); - } else if (this._isBufferList(search)) { - search = search.slice(); - } else if (Array.isArray(search.buffer)) { - search = Buffer2.from(search.buffer, search.byteOffset, search.byteLength); - } else if (!Buffer2.isBuffer(search)) { - search = Buffer2.from(search); - } - offset = Number(offset || 0); - if (isNaN(offset)) { - offset = 0; - } - if (offset < 0) { - offset = this.length + offset; - } - if (offset < 0) { - offset = 0; - } - if (search.length === 0) { - return offset > this.length ? this.length : offset; - } - const blOffset = this._offset(offset); - let blIndex = blOffset[0]; - let buffOffset = blOffset[1]; - for (; blIndex < this._bufs.length; blIndex++) { - const buff = this._bufs[blIndex]; - while (buffOffset < buff.length) { - const availableWindow = buff.length - buffOffset; - if (availableWindow >= search.length) { - const nativeSearchResult = buff.indexOf(search, buffOffset); - if (nativeSearchResult !== -1) { - return this._reverseOffset([blIndex, nativeSearchResult]); + var wasmMemory; + var ABORT = false; + var EXITSTATUS; + function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text); + } + } + function getCFunc(ident) { + var func = Module["_" + ident]; + assert( + func, + "Cannot call unknown function " + ident + ", make sure it is exported" + ); + return func; + } + function ccall(ident, returnType, argTypes, args2, opts) { + var toC = { + string: function(str) { + var ret2 = 0; + if (str !== null && str !== void 0 && str !== 0) { + var len = (str.length << 2) + 1; + ret2 = stackAlloc(len); + stringToUTF8(str, ret2, len); + } + return ret2; + }, + array: function(arr) { + var ret2 = stackAlloc(arr.length); + writeArrayToMemory(arr, ret2); + return ret2; + } + }; + function convertReturnValue(ret2) { + if (returnType === "string") + return UTF8ToString(ret2); + if (returnType === "boolean") + return Boolean(ret2); + return ret2; + } + var func = getCFunc(ident); + var cArgs = []; + var stack2 = 0; + if (args2) { + for (var i = 0; i < args2.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack2 === 0) + stack2 = stackSave(); + cArgs[i] = converter(args2[i]); + } else { + cArgs[i] = args2[i]; + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack2 !== 0) + stackRestore(stack2); + return ret; + } + function cwrap(ident, returnType, argTypes, opts) { + argTypes = argTypes || []; + var numericArgs = argTypes.every(function(type) { + return type === "number"; + }); + var numericRet = returnType !== "string"; + if (numericRet && numericArgs && !opts) { + return getCFunc(ident); + } + return function() { + return ccall(ident, returnType, argTypes, arguments, opts); + }; + } + var UTF8Decoder = new TextDecoder("utf8"); + function UTF8ArrayToString(heap, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (heap[endPtr] && !(endPtr >= endIdx)) + ++endPtr; + return UTF8Decoder.decode( + heap.subarray ? heap.subarray(idx, endPtr) : new Uint8Array(heap.slice(idx, endPtr)) + ); + } + function UTF8ToString(ptr, maxBytesToRead) { + if (!ptr) + return ""; + var maxPtr = ptr + maxBytesToRead; + for (var end = ptr; !(end >= maxPtr) && HEAPU8[end]; ) + ++end; + return UTF8Decoder.decode(HEAPU8.subarray(ptr, end)); + } + function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) + return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023; + } + if (u <= 127) { + if (outIdx >= endIdx) + break; + heap[outIdx++] = u; + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) + break; + heap[outIdx++] = 192 | u >> 6; + heap[outIdx++] = 128 | u & 63; + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) + break; + heap[outIdx++] = 224 | u >> 12; + heap[outIdx++] = 128 | u >> 6 & 63; + heap[outIdx++] = 128 | u & 63; + } else { + if (outIdx + 3 >= endIdx) + break; + heap[outIdx++] = 240 | u >> 18; + heap[outIdx++] = 128 | u >> 12 & 63; + heap[outIdx++] = 128 | u >> 6 & 63; + heap[outIdx++] = 128 | u & 63; + } + } + heap[outIdx] = 0; + return outIdx - startIdx; + } + function stringToUTF8(str, outPtr, maxBytesToWrite) { + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite); + } + function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) + u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; + if (u <= 127) + ++len; + else if (u <= 2047) + len += 2; + else if (u <= 65535) + len += 3; + else + len += 4; + } + return len; + } + function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) + stringToUTF8Array(str, HEAP8, ret, size); + return ret; + } + function writeArrayToMemory(array, buffer2) { + HEAP8.set(array, buffer2); + } + function alignUp(x, multiple) { + if (x % multiple > 0) { + x += multiple - x % multiple; + } + return x; + } + var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + var HEAP_DATA_VIEW; + function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP_DATA_VIEW"] = HEAP_DATA_VIEW = new DataView(buf); + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); + } + var INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216; + var wasmTable; + var __ATPRERUN__ = []; + var __ATINIT__ = []; + var __ATPOSTRUN__ = []; + var runtimeInitialized = false; + function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") + Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()); + } + } + callRuntimeCallbacks(__ATPRERUN__); + } + function initRuntime() { + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) + FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__); + } + function postRun() { + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") + Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()); + } + } + callRuntimeCallbacks(__ATPOSTRUN__); + } + function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb); + } + function addOnInit(cb) { + __ATINIT__.unshift(cb); + } + function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); + } + var runDependencies = 0; + var runDependencyWatcher = null; + var dependenciesFulfilled = null; + function getUniqueRunDependency(id) { + return id; + } + function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } + } + function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); + } + } + } + Module["preloadedImages"] = {}; + Module["preloadedAudios"] = {}; + function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what); + } + what += ""; + err(what); + ABORT = true; + EXITSTATUS = 1; + what = "abort(" + what + "). Build with -s ASSERTIONS=1 for more info."; + var e = new WebAssembly.RuntimeError(what); + readyPromiseReject(e); + throw e; + } + var dataURIPrefix = "data:application/octet-stream;base64,"; + function isDataURI(filename) { + return filename.startsWith(dataURIPrefix); + } + var wasmBinaryFile = "data:application/octet-stream;base64,AGFzbQEAAAABlAInYAN/f38Bf2ABfwF/YAJ/fwF/YAF/AGADf39+AX9gBH9/f38Bf2ACf38AYAN/f38AYAV/f39/fwF/YAABf2AEf35/fwF/YAV/f39+fwF+YAN/fn8Bf2ABfwF+YAJ/fgF/YAR/f35/AX5gA39+fwF+YAR/f35/AX9gBn9/f39/fwF/YAR/f39/AGADf39+AX5gAn5/AX9gA398fwBgBH9/f38BfmADf39/AX5gBn98f39/fwF/YAV/f35/fwF/YAV/fn9/fwF/YAV/f39/fwBgAn9+AGACf38BfmACf3wAYAh/fn5/f39+fwF/YAV/f39+fwBgAABgBX5+f35/AX5gBX9/f39/AX5gAnx/AXxgAn9+AX4CeRQBYQFhAAMBYQFiAAEBYQFjAAIBYQFkAAUBYQFlAAABYQFmAAEBYQFnAAUBYQFoAAEBYQFpAAIBYQFqAAIBYQFrAAIBYQFsAAABYQFtAAEBYQFuAAgBYQFvAAABYQFwAAIBYQFxAAABYQFyAAEBYQFzAAIBYQF0AAEDmgKYAgcDAwAGAQMBDgYDDwYHAwMDHBMDDA4BFA4dAQcBDQ0DHg0EAwMCAgMDAQoBBwoUFQYDBQEBDQoKAgUBAwMABQEfFwAAAgYAEwYGBgcDIBAFAwgRAggCGAAKAwABAQcIABgBGhICIREKAgMGACIEBQEAAAICASMIGwAkBwAMFQACAQgCBgEOGxcOAAYBDAwCAg0NAQIBByUCAAoaAAADCAIBAAMmEQwKCgwDBwcDAwcCAgIFAAUAAAIGAQMCCwkDAQEBAQEBCQgBCAgIAAUCBQUFCBIFBQAAEgABAwkFAQAPAQAAEAEABhkJCQkBAQEJAgsLAAADBAEBAQMACwYIDwkGAAICAQQFAAAFAAkAAwIBBwkBAgICCQEEBQFwATs7BQcBAYACgIACBgkBfwFBkKPBAgsHvgI8AXUCAAF2AIABAXcAqwIBeADrAQF5AIICAXoA2QEBQQDYAQFCANcBAUMA1gEBRADUAQFFANMBAUYA0QEBRwCqAgFIAKYCAUkAowIBSgCYAgFLAPEBAUwA6gEBTQDpAQFOADwBTwCQAgFQAIACAVEA/wEBUgD4AQFTAIECAVQA6AEBVQAVAVYAGQFXAJMCAVgA1QEBWQDnAQFaAOYBAV8A5QEBJADsAQJhYQDkAQJiYQDjAQJjYQDiAQJkYQDhAQJlYQDgAQJmYQDfAQJnYQDyAQJoYQCdAQJpYQDeAQJqYQDdAQJrYQDcAQJsYQAwAm1hABoCbmEA0gECb2EASAJwYQEAAnFhAGkCcmEA2wECc2EA8AECdGEA2gECdWEA/gECdmEA/QECd2EA/AECeGEA7wECeWEA7gECemEA7QEJeAEAQQELOtABlQKUAssBzwGpAqgCpwLCAcMBzgHKAaUCyQHIAccBf8YBgQHFAcQBpAKiAqACmQKhApcClgKfAp4CnQKcApsCmgKSAo8CkQKOAo0CjAKLAooCiQKIAocChgKFAoQCgwJY+wH6AfkB9wH2AfUB9AHzAQqanwmYAkABAX8jAEEQayIDIAA2AgwgAyABNgIIIAMgAjYCBCADKAIMBEAgAygCDCADKAIINgIAIAMoAgwgAygCBDYCBAsLzAwBB38CQCAARQ0AIABBCGsiAyAAQQRrKAIAIgFBeHEiAGohBQJAIAFBAXENACABQQNxRQ0BIAMgAygCACIBayIDQbieASgCAEkNASAAIAFqIQAgA0G8ngEoAgBHBEAgAUH/AU0EQCADKAIIIgIgAUEDdiIEQQN0QdCeAWpGGiACIAMoAgwiAUYEQEGongFBqJ4BKAIAQX4gBHdxNgIADAMLIAIgATYCDCABIAI2AggMAgsgAygCGCEGAkAgAyADKAIMIgFHBEAgAygCCCICIAE2AgwgASACNgIIDAELAkAgA0EUaiICKAIAIgQNACADQRBqIgIoAgAiBA0AQQAhAQwBCwNAIAIhByAEIgFBFGoiAigCACIEDQAgAUEQaiECIAEoAhAiBA0ACyAHQQA2AgALIAZFDQECQCADIAMoAhwiAkECdEHYoAFqIgQoAgBGBEAgBCABNgIAIAENAUGsngFBrJ4BKAIAQX4gAndxNgIADAMLIAZBEEEUIAYoAhAgA0YbaiABNgIAIAFFDQILIAEgBjYCGCADKAIQIgIEQCABIAI2AhAgAiABNgIYCyADKAIUIgJFDQEgASACNgIUIAIgATYCGAwBCyAFKAIEIgFBA3FBA0cNAEGwngEgADYCACAFIAFBfnE2AgQgAyAAQQFyNgIEIAAgA2ogADYCAA8LIAMgBU8NACAFKAIEIgFBAXFFDQACQCABQQJxRQRAIAVBwJ4BKAIARgRAQcCeASADNgIAQbSeAUG0ngEoAgAgAGoiADYCACADIABBAXI2AgQgA0G8ngEoAgBHDQNBsJ4BQQA2AgBBvJ4BQQA2AgAPCyAFQbyeASgCAEYEQEG8ngEgAzYCAEGwngFBsJ4BKAIAIABqIgA2AgAgAyAAQQFyNgIEIAAgA2ogADYCAA8LIAFBeHEgAGohAAJAIAFB/wFNBEAgBSgCCCICIAFBA3YiBEEDdEHQngFqRhogAiAFKAIMIgFGBEBBqJ4BQaieASgCAEF+IAR3cTYCAAwCCyACIAE2AgwgASACNgIIDAELIAUoAhghBgJAIAUgBSgCDCIBRwRAIAUoAggiAkG4ngEoAgBJGiACIAE2AgwgASACNgIIDAELAkAgBUEUaiICKAIAIgQNACAFQRBqIgIoAgAiBA0AQQAhAQwBCwNAIAIhByAEIgFBFGoiAigCACIEDQAgAUEQaiECIAEoAhAiBA0ACyAHQQA2AgALIAZFDQACQCAFIAUoAhwiAkECdEHYoAFqIgQoAgBGBEAgBCABNgIAIAENAUGsngFBrJ4BKAIAQX4gAndxNgIADAILIAZBEEEUIAYoAhAgBUYbaiABNgIAIAFFDQELIAEgBjYCGCAFKAIQIgIEQCABIAI2AhAgAiABNgIYCyAFKAIUIgJFDQAgASACNgIUIAIgATYCGAsgAyAAQQFyNgIEIAAgA2ogADYCACADQbyeASgCAEcNAUGwngEgADYCAA8LIAUgAUF+cTYCBCADIABBAXI2AgQgACADaiAANgIACyAAQf8BTQRAIABBA3YiAUEDdEHQngFqIQACf0GongEoAgAiAkEBIAF0IgFxRQRAQaieASABIAJyNgIAIAAMAQsgACgCCAshAiAAIAM2AgggAiADNgIMIAMgADYCDCADIAI2AggPC0EfIQIgA0IANwIQIABB////B00EQCAAQQh2IgEgAUGA/j9qQRB2QQhxIgF0IgIgAkGA4B9qQRB2QQRxIgJ0IgQgBEGAgA9qQRB2QQJxIgR0QQ92IAEgAnIgBHJrIgFBAXQgACABQRVqdkEBcXJBHGohAgsgAyACNgIcIAJBAnRB2KABaiEBAkACQAJAQayeASgCACIEQQEgAnQiB3FFBEBBrJ4BIAQgB3I2AgAgASADNgIAIAMgATYCGAwBCyAAQQBBGSACQQF2ayACQR9GG3QhAiABKAIAIQEDQCABIgQoAgRBeHEgAEYNAiACQR12IQEgAkEBdCECIAQgAUEEcWoiB0EQaigCACIBDQALIAcgAzYCECADIAQ2AhgLIAMgAzYCDCADIAM2AggMAQsgBCgCCCIAIAM2AgwgBCADNgIIIANBADYCGCADIAQ2AgwgAyAANgIIC0HIngFByJ4BKAIAQQFrIgBBfyAAGzYCAAsLQgEBfyMAQRBrIgEkACABIAA2AgwgASgCDARAIAEoAgwtAAFBAXEEQCABKAIMKAIEEBULIAEoAgwQFQsgAUEQaiQAC4MEAQN/IAJBgARPBEAgACABIAIQCxogAA8LIAAgAmohAwJAIAAgAXNBA3FFBEACQCAAQQNxRQRAIAAhAgwBCyACQQFIBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAtDAQF/IwBBEGsiAiQAIAIgADYCDCACIAE2AgggAigCDAJ/IwBBEGsiACACKAIINgIMIAAoAgxBDGoLEEQgAkEQaiQAC6IuAQx/IwBBEGsiDCQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB9AFNBEBBqJ4BKAIAIgVBECAAQQtqQXhxIABBC0kbIghBA3YiAnYiAUEDcQRAIAFBf3NBAXEgAmoiA0EDdCIBQdieAWooAgAiBEEIaiEAAkAgBCgCCCICIAFB0J4BaiIBRgRAQaieASAFQX4gA3dxNgIADAELIAIgATYCDCABIAI2AggLIAQgA0EDdCIBQQNyNgIEIAEgBGoiASABKAIEQQFyNgIEDA0LIAhBsJ4BKAIAIgpNDQEgAQRAAkBBAiACdCIAQQAgAGtyIAEgAnRxIgBBACAAa3FBAWsiACAAQQx2QRBxIgJ2IgFBBXZBCHEiACACciABIAB2IgFBAnZBBHEiAHIgASAAdiIBQQF2QQJxIgByIAEgAHYiAUEBdkEBcSIAciABIAB2aiIDQQN0IgBB2J4BaigCACIEKAIIIgEgAEHQngFqIgBGBEBBqJ4BIAVBfiADd3EiBTYCAAwBCyABIAA2AgwgACABNgIICyAEQQhqIQAgBCAIQQNyNgIEIAQgCGoiAiADQQN0IgEgCGsiA0EBcjYCBCABIARqIAM2AgAgCgRAIApBA3YiAUEDdEHQngFqIQdBvJ4BKAIAIQQCfyAFQQEgAXQiAXFFBEBBqJ4BIAEgBXI2AgAgBwwBCyAHKAIICyEBIAcgBDYCCCABIAQ2AgwgBCAHNgIMIAQgATYCCAtBvJ4BIAI2AgBBsJ4BIAM2AgAMDQtBrJ4BKAIAIgZFDQEgBkEAIAZrcUEBayIAIABBDHZBEHEiAnYiAUEFdkEIcSIAIAJyIAEgAHYiAUECdkEEcSIAciABIAB2IgFBAXZBAnEiAHIgASAAdiIBQQF2QQFxIgByIAEgAHZqQQJ0QdigAWooAgAiASgCBEF4cSAIayEDIAEhAgNAAkAgAigCECIARQRAIAIoAhQiAEUNAQsgACgCBEF4cSAIayICIAMgAiADSSICGyEDIAAgASACGyEBIAAhAgwBCwsgASAIaiIJIAFNDQIgASgCGCELIAEgASgCDCIERwRAIAEoAggiAEG4ngEoAgBJGiAAIAQ2AgwgBCAANgIIDAwLIAFBFGoiAigCACIARQRAIAEoAhAiAEUNBCABQRBqIQILA0AgAiEHIAAiBEEUaiICKAIAIgANACAEQRBqIQIgBCgCECIADQALIAdBADYCAAwLC0F/IQggAEG/f0sNACAAQQtqIgBBeHEhCEGsngEoAgAiCUUNAEEAIAhrIQMCQAJAAkACf0EAIAhBgAJJDQAaQR8gCEH///8HSw0AGiAAQQh2IgAgAEGA/j9qQRB2QQhxIgJ0IgAgAEGA4B9qQRB2QQRxIgF0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAEgAnIgAHJrIgBBAXQgCCAAQRVqdkEBcXJBHGoLIgVBAnRB2KABaigCACICRQRAQQAhAAwBC0EAIQAgCEEAQRkgBUEBdmsgBUEfRht0IQEDQAJAIAIoAgRBeHEgCGsiByADTw0AIAIhBCAHIgMNAEEAIQMgAiEADAMLIAAgAigCFCIHIAcgAiABQR12QQRxaigCECICRhsgACAHGyEAIAFBAXQhASACDQALCyAAIARyRQRAQQIgBXQiAEEAIABrciAJcSIARQ0DIABBACAAa3FBAWsiACAAQQx2QRBxIgJ2IgFBBXZBCHEiACACciABIAB2IgFBAnZBBHEiAHIgASAAdiIBQQF2QQJxIgByIAEgAHYiAUEBdkEBcSIAciABIAB2akECdEHYoAFqKAIAIQALIABFDQELA0AgACgCBEF4cSAIayIBIANJIQIgASADIAIbIQMgACAEIAIbIQQgACgCECIBBH8gAQUgACgCFAsiAA0ACwsgBEUNACADQbCeASgCACAIa08NACAEIAhqIgYgBE0NASAEKAIYIQUgBCAEKAIMIgFHBEAgBCgCCCIAQbieASgCAEkaIAAgATYCDCABIAA2AggMCgsgBEEUaiICKAIAIgBFBEAgBCgCECIARQ0EIARBEGohAgsDQCACIQcgACIBQRRqIgIoAgAiAA0AIAFBEGohAiABKAIQIgANAAsgB0EANgIADAkLIAhBsJ4BKAIAIgJNBEBBvJ4BKAIAIQMCQCACIAhrIgFBEE8EQEGwngEgATYCAEG8ngEgAyAIaiIANgIAIAAgAUEBcjYCBCACIANqIAE2AgAgAyAIQQNyNgIEDAELQbyeAUEANgIAQbCeAUEANgIAIAMgAkEDcjYCBCACIANqIgAgACgCBEEBcjYCBAsgA0EIaiEADAsLIAhBtJ4BKAIAIgZJBEBBtJ4BIAYgCGsiATYCAEHAngFBwJ4BKAIAIgIgCGoiADYCACAAIAFBAXI2AgQgAiAIQQNyNgIEIAJBCGohAAwLC0EAIQAgCEEvaiIJAn9BgKIBKAIABEBBiKIBKAIADAELQYyiAUJ/NwIAQYSiAUKAoICAgIAENwIAQYCiASAMQQxqQXBxQdiq1aoFczYCAEGUogFBADYCAEHkoQFBADYCAEGAIAsiAWoiBUEAIAFrIgdxIgIgCE0NCkHgoQEoAgAiBARAQdihASgCACIDIAJqIgEgA00NCyABIARLDQsLQeShAS0AAEEEcQ0FAkACQEHAngEoAgAiAwRAQeihASEAA0AgAyAAKAIAIgFPBEAgASAAKAIEaiADSw0DCyAAKAIIIgANAAsLQQAQPSIBQX9GDQYgAiEFQYSiASgCACIDQQFrIgAgAXEEQCACIAFrIAAgAWpBACADa3FqIQULIAUgCE0NBiAFQf7///8HSw0GQeChASgCACIEBEBB2KEBKAIAIgMgBWoiACADTQ0HIAAgBEsNBwsgBRA9IgAgAUcNAQwICyAFIAZrIAdxIgVB/v///wdLDQUgBRA9IgEgACgCACAAKAIEakYNBCABIQALAkAgAEF/Rg0AIAhBMGogBU0NAEGIogEoAgAiASAJIAVrakEAIAFrcSIBQf7///8HSwRAIAAhAQwICyABED1Bf0cEQCABIAVqIQUgACEBDAgLQQAgBWsQPRoMBQsgACIBQX9HDQYMBAsAC0EAIQQMBwtBACEBDAULIAFBf0cNAgtB5KEBQeShASgCAEEEcjYCAAsgAkH+////B0sNASACED0hAUEAED0hACABQX9GDQEgAEF/Rg0BIAAgAU0NASAAIAFrIgUgCEEoak0NAQtB2KEBQdihASgCACAFaiIANgIAQdyhASgCACAASQRAQdyhASAANgIACwJAAkACQEHAngEoAgAiBwRAQeihASEAA0AgASAAKAIAIgMgACgCBCICakYNAiAAKAIIIgANAAsMAgtBuJ4BKAIAIgBBACAAIAFNG0UEQEG4ngEgATYCAAtBACEAQeyhASAFNgIAQeihASABNgIAQcieAUF/NgIAQcyeAUGAogEoAgA2AgBB9KEBQQA2AgADQCAAQQN0IgNB2J4BaiADQdCeAWoiAjYCACADQdyeAWogAjYCACAAQQFqIgBBIEcNAAtBtJ4BIAVBKGsiA0F4IAFrQQdxQQAgAUEIakEHcRsiAGsiAjYCAEHAngEgACABaiIANgIAIAAgAkEBcjYCBCABIANqQSg2AgRBxJ4BQZCiASgCADYCAAwCCyAALQAMQQhxDQAgAyAHSw0AIAEgB00NACAAIAIgBWo2AgRBwJ4BIAdBeCAHa0EHcUEAIAdBCGpBB3EbIgBqIgI2AgBBtJ4BQbSeASgCACAFaiIBIABrIgA2AgAgAiAAQQFyNgIEIAEgB2pBKDYCBEHEngFBkKIBKAIANgIADAELQbieASgCACABSwRAQbieASABNgIACyABIAVqIQJB6KEBIQACQAJAAkACQAJAAkADQCACIAAoAgBHBEAgACgCCCIADQEMAgsLIAAtAAxBCHFFDQELQeihASEAA0AgByAAKAIAIgJPBEAgAiAAKAIEaiIEIAdLDQMLIAAoAgghAAwACwALIAAgATYCACAAIAAoAgQgBWo2AgQgAUF4IAFrQQdxQQAgAUEIakEHcRtqIgkgCEEDcjYCBCACQXggAmtBB3FBACACQQhqQQdxG2oiBSAIIAlqIgZrIQIgBSAHRgRAQcCeASAGNgIAQbSeAUG0ngEoAgAgAmoiADYCACAGIABBAXI2AgQMAwsgBUG8ngEoAgBGBEBBvJ4BIAY2AgBBsJ4BQbCeASgCACACaiIANgIAIAYgAEEBcjYCBCAAIAZqIAA2AgAMAwsgBSgCBCIAQQNxQQFGBEAgAEF4cSEHAkAgAEH/AU0EQCAFKAIIIgMgAEEDdiIAQQN0QdCeAWpGGiADIAUoAgwiAUYEQEGongFBqJ4BKAIAQX4gAHdxNgIADAILIAMgATYCDCABIAM2AggMAQsgBSgCGCEIAkAgBSAFKAIMIgFHBEAgBSgCCCIAIAE2AgwgASAANgIIDAELAkAgBUEUaiIAKAIAIgMNACAFQRBqIgAoAgAiAw0AQQAhAQwBCwNAIAAhBCADIgFBFGoiACgCACIDDQAgAUEQaiEAIAEoAhAiAw0ACyAEQQA2AgALIAhFDQACQCAFIAUoAhwiA0ECdEHYoAFqIgAoAgBGBEAgACABNgIAIAENAUGsngFBrJ4BKAIAQX4gA3dxNgIADAILIAhBEEEUIAgoAhAgBUYbaiABNgIAIAFFDQELIAEgCDYCGCAFKAIQIgAEQCABIAA2AhAgACABNgIYCyAFKAIUIgBFDQAgASAANgIUIAAgATYCGAsgBSAHaiEFIAIgB2ohAgsgBSAFKAIEQX5xNgIEIAYgAkEBcjYCBCACIAZqIAI2AgAgAkH/AU0EQCACQQN2IgBBA3RB0J4BaiECAn9BqJ4BKAIAIgFBASAAdCIAcUUEQEGongEgACABcjYCACACDAELIAIoAggLIQAgAiAGNgIIIAAgBjYCDCAGIAI2AgwgBiAANgIIDAMLQR8hACACQf///wdNBEAgAkEIdiIAIABBgP4/akEQdkEIcSIDdCIAIABBgOAfakEQdkEEcSIBdCIAIABBgIAPakEQdkECcSIAdEEPdiABIANyIAByayIAQQF0IAIgAEEVanZBAXFyQRxqIQALIAYgADYCHCAGQgA3AhAgAEECdEHYoAFqIQQCQEGsngEoAgAiA0EBIAB0IgFxRQRAQayeASABIANyNgIAIAQgBjYCACAGIAQ2AhgMAQsgAkEAQRkgAEEBdmsgAEEfRht0IQAgBCgCACEBA0AgASIDKAIEQXhxIAJGDQMgAEEddiEBIABBAXQhACADIAFBBHFqIgQoAhAiAQ0ACyAEIAY2AhAgBiADNgIYCyAGIAY2AgwgBiAGNgIIDAILQbSeASAFQShrIgNBeCABa0EHcUEAIAFBCGpBB3EbIgBrIgI2AgBBwJ4BIAAgAWoiADYCACAAIAJBAXI2AgQgASADakEoNgIEQcSeAUGQogEoAgA2AgAgByAEQScgBGtBB3FBACAEQSdrQQdxG2pBL2siACAAIAdBEGpJGyICQRs2AgQgAkHwoQEpAgA3AhAgAkHooQEpAgA3AghB8KEBIAJBCGo2AgBB7KEBIAU2AgBB6KEBIAE2AgBB9KEBQQA2AgAgAkEYaiEAA0AgAEEHNgIEIABBCGohASAAQQRqIQAgASAESQ0ACyACIAdGDQMgAiACKAIEQX5xNgIEIAcgAiAHayIEQQFyNgIEIAIgBDYCACAEQf8BTQRAIARBA3YiAEEDdEHQngFqIQICf0GongEoAgAiAUEBIAB0IgBxRQRAQaieASAAIAFyNgIAIAIMAQsgAigCCAshACACIAc2AgggACAHNgIMIAcgAjYCDCAHIAA2AggMBAtBHyEAIAdCADcCECAEQf///wdNBEAgBEEIdiIAIABBgP4/akEQdkEIcSICdCIAIABBgOAfakEQdkEEcSIBdCIAIABBgIAPakEQdkECcSIAdEEPdiABIAJyIAByayIAQQF0IAQgAEEVanZBAXFyQRxqIQALIAcgADYCHCAAQQJ0QdigAWohAwJAQayeASgCACICQQEgAHQiAXFFBEBBrJ4BIAEgAnI2AgAgAyAHNgIAIAcgAzYCGAwBCyAEQQBBGSAAQQF2ayAAQR9GG3QhACADKAIAIQEDQCABIgIoAgRBeHEgBEYNBCAAQR12IQEgAEEBdCEAIAIgAUEEcWoiAygCECIBDQALIAMgBzYCECAHIAI2AhgLIAcgBzYCDCAHIAc2AggMAwsgAygCCCIAIAY2AgwgAyAGNgIIIAZBADYCGCAGIAM2AgwgBiAANgIICyAJQQhqIQAMBQsgAigCCCIAIAc2AgwgAiAHNgIIIAdBADYCGCAHIAI2AgwgByAANgIIC0G0ngEoAgAiACAITQ0AQbSeASAAIAhrIgE2AgBBwJ4BQcCeASgCACICIAhqIgA2AgAgACABQQFyNgIEIAIgCEEDcjYCBCACQQhqIQAMAwtB+J0BQTA2AgBBACEADAILAkAgBUUNAAJAIAQoAhwiAkECdEHYoAFqIgAoAgAgBEYEQCAAIAE2AgAgAQ0BQayeASAJQX4gAndxIgk2AgAMAgsgBUEQQRQgBSgCECAERhtqIAE2AgAgAUUNAQsgASAFNgIYIAQoAhAiAARAIAEgADYCECAAIAE2AhgLIAQoAhQiAEUNACABIAA2AhQgACABNgIYCwJAIANBD00EQCAEIAMgCGoiAEEDcjYCBCAAIARqIgAgACgCBEEBcjYCBAwBCyAEIAhBA3I2AgQgBiADQQFyNgIEIAMgBmogAzYCACADQf8BTQRAIANBA3YiAEEDdEHQngFqIQICf0GongEoAgAiAUEBIAB0IgBxRQRAQaieASAAIAFyNgIAIAIMAQsgAigCCAshACACIAY2AgggACAGNgIMIAYgAjYCDCAGIAA2AggMAQtBHyEAIANB////B00EQCADQQh2IgAgAEGA/j9qQRB2QQhxIgJ0IgAgAEGA4B9qQRB2QQRxIgF0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAEgAnIgAHJrIgBBAXQgAyAAQRVqdkEBcXJBHGohAAsgBiAANgIcIAZCADcCECAAQQJ0QdigAWohAgJAAkAgCUEBIAB0IgFxRQRAQayeASABIAlyNgIAIAIgBjYCACAGIAI2AhgMAQsgA0EAQRkgAEEBdmsgAEEfRht0IQAgAigCACEIA0AgCCIBKAIEQXhxIANGDQIgAEEddiECIABBAXQhACABIAJBBHFqIgIoAhAiCA0ACyACIAY2AhAgBiABNgIYCyAGIAY2AgwgBiAGNgIIDAELIAEoAggiACAGNgIMIAEgBjYCCCAGQQA2AhggBiABNgIMIAYgADYCCAsgBEEIaiEADAELAkAgC0UNAAJAIAEoAhwiAkECdEHYoAFqIgAoAgAgAUYEQCAAIAQ2AgAgBA0BQayeASAGQX4gAndxNgIADAILIAtBEEEUIAsoAhAgAUYbaiAENgIAIARFDQELIAQgCzYCGCABKAIQIgAEQCAEIAA2AhAgACAENgIYCyABKAIUIgBFDQAgBCAANgIUIAAgBDYCGAsCQCADQQ9NBEAgASADIAhqIgBBA3I2AgQgACABaiIAIAAoAgRBAXI2AgQMAQsgASAIQQNyNgIEIAkgA0EBcjYCBCADIAlqIAM2AgAgCgRAIApBA3YiAEEDdEHQngFqIQRBvJ4BKAIAIQICf0EBIAB0IgAgBXFFBEBBqJ4BIAAgBXI2AgAgBAwBCyAEKAIICyEAIAQgAjYCCCAAIAI2AgwgAiAENgIMIAIgADYCCAtBvJ4BIAk2AgBBsJ4BIAM2AgALIAFBCGohAAsgDEEQaiQAIAAL7AIBAn8jAEEQayIBJAAgASAANgIMAkAgASgCDEUNACABKAIMKAIwBEAgASgCDCIAIAAoAjBBAWs2AjALIAEoAgwoAjANACABKAIMKAIgBEAgASgCDEEBNgIgIAEoAgwQMBoLIAEoAgwoAiRBAUYEQCABKAIMEGQLAkAgASgCDCgCLEUNACABKAIMLQAoQQFxDQAgASgCDCECIwBBEGsiACABKAIMKAIsNgIMIAAgAjYCCCAAQQA2AgQDQCAAKAIEIAAoAgwoAkRJBEAgACgCDCgCTCAAKAIEQQJ0aigCACAAKAIIRgRAIAAoAgwoAkwgACgCBEECdGogACgCDCgCTCAAKAIMKAJEQQFrQQJ0aigCADYCACAAKAIMIgAgACgCREEBazYCRAUgACAAKAIEQQFqNgIEDAILCwsLIAEoAgxBAEIAQQUQHxogASgCDCgCAARAIAEoAgwoAgAQGgsgASgCDBAVCyABQRBqJAALYAEBfyMAQRBrIgEkACABIAA2AgggASABKAIIQgIQHDYCBAJAIAEoAgRFBEAgAUEAOwEODAELIAEgASgCBC0AACABKAIELQABQQh0ajsBDgsgAS8BDiEAIAFBEGokACAAC+kBAQF/IwBBIGsiAiQAIAIgADYCHCACIAE3AxAgAikDECEBIwBBIGsiACACKAIcNgIYIAAgATcDEAJAAkACQCAAKAIYLQAAQQFxRQ0AIAApAxAgACgCGCkDECAAKQMQfFYNACAAKAIYKQMIIAAoAhgpAxAgACkDEHxaDQELIAAoAhhBADoAACAAQQA2AhwMAQsgACAAKAIYKAIEIAAoAhgpAxCnajYCDCAAIAAoAgw2AhwLIAIgACgCHDYCDCACKAIMBEAgAigCHCIAIAIpAxAgACkDEHw3AxALIAIoAgwhACACQSBqJAAgAAtvAQF/IwBBEGsiAiQAIAIgADYCCCACIAE7AQYgAiACKAIIQgIQHDYCAAJAIAIoAgBFBEAgAkF/NgIMDAELIAIoAgAgAi8BBjoAACACKAIAIAIvAQZBCHY6AAEgAkEANgIMCyACKAIMGiACQRBqJAALiQEBA38gACgCHCIBECcCQCAAKAIQIgIgASgCECIDIAIgA0kbIgJFDQAgACgCDCABKAIIIAIQFxogACAAKAIMIAJqNgIMIAEgASgCCCACajYCCCAAIAAoAhQgAmo2AhQgACAAKAIQIAJrNgIQIAEgASgCECACayIANgIQIAANACABIAEoAgQ2AggLC7YCAQF/IwBBMGsiBCQAIAQgADYCJCAEIAE2AiAgBCACNwMYIAQgAzYCFAJAIAQoAiQpAxhCASAEKAIUrYaDUARAIAQoAiRBDGpBHEEAEBQgBEJ/NwMoDAELAkAgBCgCJCgCAEUEQCAEIAQoAiQoAgggBCgCICAEKQMYIAQoAhQgBCgCJCgCBBEPADcDCAwBCyAEIAQoAiQoAgAgBCgCJCgCCCAEKAIgIAQpAxggBCgCFCAEKAIkKAIEEQsANwMICyAEKQMIQgBTBEACQCAEKAIUQQRGDQAgBCgCFEEORg0AAkAgBCgCJCAEQghBBBAfQgBTBEAgBCgCJEEMakEUQQAQFAwBCyAEKAIkQQxqIAQoAgAgBCgCBBAUCwsLIAQgBCkDCDcDKAsgBCkDKCECIARBMGokACACC48BAQF/IwBBEGsiAiQAIAIgADYCCCACIAE2AgQgAiACKAIIQgQQHDYCAAJAIAIoAgBFBEAgAkF/NgIMDAELIAIoAgAgAigCBDoAACACKAIAIAIoAgRBCHY6AAEgAigCACACKAIEQRB2OgACIAIoAgAgAigCBEEYdjoAAyACQQA2AgwLIAIoAgwaIAJBEGokAAsXACAALQAAQSBxRQRAIAEgAiAAEHMaCwtQAQF/IwBBEGsiASQAIAEgADYCDANAIAEoAgwEQCABIAEoAgwoAgA2AgggASgCDCgCDBAVIAEoAgwQFSABIAEoAgg2AgwMAQsLIAFBEGokAAs+AQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgASgCDCgCABAVIAEoAgwoAgwQFSABKAIMEBULIAFBEGokAAt9AQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgAUIANwMAA0AgASkDACABKAIMKQMIWkUEQCABKAIMKAIAIAEpAwCnQQR0ahB9IAEgASkDAEIBfDcDAAwBCwsgASgCDCgCABAVIAEoAgwoAigQIyABKAIMEBULIAFBEGokAAtuAQF/IwBBgAJrIgUkAAJAIARBgMAEcQ0AIAIgA0wNACAFIAFB/wFxIAIgA2siAkGAAiACQYACSSIBGxAvIAFFBEADQCAAIAVBgAIQISACQYACayICQf8BSw0ACwsgACAFIAIQIQsgBUGAAmokAAuMJwIDfgt/AkAgACgClC1FBEAgAEEHNgKgLQwBCwJAAkACQCAAKAJ4QQFOBEAgACgCACIKKAIsQQJHDQNB/4D/n38hCANAAkAgCEEBcUUNACAAIAlBAnRqLwGIAUUNAEEAIQgMBAsCQCAIQQJxRQ0AIAAgCUECdEEEcmovAYgBRQ0AQQAhCAwECyAIQQJ2IQggCUECaiIJQSBHDQALDAELIAJBBWoiCCEJDAMLAkAgAC8BrAENACAALwGwAQ0AIAAvAbwBDQBBICEJA0AgACAJQQJ0IgdqLwGIAQ0BIAAgB0EEcmovAYgBDQEgACAHQQhyai8BiAENASAAIAdBDHJqLwGIAQ0BQQAhCCAJQQRqIglBgAJHDQALDAELQQEhCAsgCiAINgIsCyAAIABBjBZqEH4gACAAQZgWahB+IAAvAYoBIQggACAAQZAWaigCACINQQJ0akH//wM7AY4BQQAhByANQQBOBEBBB0GKASAIGyEOQQRBAyAIGyEMQX8hC0EAIQoDQCAIIQkgACAKIhBBAWoiCkECdGovAYoBIQgCQAJAIAdBAWoiD0H//wNxIhEgDkH//wNxTw0AIAggCUcNACAPIQcMAQsCQCAMQf//A3EgEUsEQCAAIAlBAnRqQfAUaiIHIAcvAQAgD2o7AQAMAQsgCQRAIAkgC0cEQCAAIAlBAnRqQfAUaiIHIAcvAQBBAWo7AQALIAAgAC8BsBVBAWo7AbAVDAELIAdB//8DcUEJTQRAIAAgAC8BtBVBAWo7AbQVDAELIAAgAC8BuBVBAWo7AbgVC0EAIQcCfyAIRQRAQQMhDEGKAQwBC0EDQQQgCCAJRiILGyEMQQZBByALGwshDiAJIQsLIA0gEEcNAAsLIABB/hJqLwEAIQggACAAQZwWaigCACINQQJ0akGCE2pB//8DOwEAQQAhByANQQBOBEBBB0GKASAIGyEOQQRBAyAIGyEMQX8hC0EAIQoDQCAIIQkgACAKIhBBAWoiCkECdGpB/hJqLwEAIQgCQAJAIAdBAWoiD0H//wNxIhEgDkH//wNxTw0AIAggCUcNACAPIQcMAQsCQCAMQf//A3EgEUsEQCAAIAlBAnRqQfAUaiIHIAcvAQAgD2o7AQAMAQsgCQRAIAkgC0cEQCAAIAlBAnRqQfAUaiIHIAcvAQBBAWo7AQALIAAgAC8BsBVBAWo7AbAVDAELIAdB//8DcUEJTQRAIAAgAC8BtBVBAWo7AbQVDAELIAAgAC8BuBVBAWo7AbgVC0EAIQcCfyAIRQRAQQMhDEGKAQwBC0EDQQQgCCAJRiILGyEMQQZBByALGwshDiAJIQsLIA0gEEcNAAsLIAAgAEGkFmoQfiAAIAAoApwtAn9BEiAAQa4Vai8BAA0AGkERIABB9hRqLwEADQAaQRAgAEGqFWovAQANABpBDyAAQfoUai8BAA0AGkEOIABBphVqLwEADQAaQQ0gAEH+FGovAQANABpBDCAAQaIVai8BAA0AGkELIABBghVqLwEADQAaQQogAEGeFWovAQANABpBCSAAQYYVai8BAA0AGkEIIABBmhVqLwEADQAaQQcgAEGKFWovAQANABpBBiAAQZYVai8BAA0AGkEFIABBjhVqLwEADQAaQQQgAEGSFWovAQANABpBA0ECIABB8hRqLwEAGwsiCkEDbGoiB0ERajYCnC0gB0EbakEDdiIHIAAoAqAtQQpqQQN2IgkgByAJSRshCAsCQAJAIAJBBGogCEsNACABRQ0AIAAgASACIAMQWwwBCyAAKQO4LSEEIAAoAsAtIQEgACgCfEEER0EAIAggCUcbRQRAIANBAmqtIQUCQCABQQNqIghBP00EQCAFIAGthiAEhCEFDAELIAFBwABGBEAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIIiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCEIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQhiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIgiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCKIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQjCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEI4iDwAAEEDIQgMAQsgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAFIAGthiAEhCIEPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBEIIiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIARCEIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEQhiIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBEIgiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIARCKIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEQjCIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBEI4iDwAACABQT1rIQggBUHAACABa62IIQULIAAgBTcDuC0gACAINgLALSAAQbDcAEGw5QAQvwEMAQsgA0EEaq0hBQJAIAFBA2oiCEE/TQRAIAUgAa2GIASEIQUMAQsgAUHAAEYEQCAAIAAoAhAiAUEBajYCECABIAAoAgRqIAQ8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQgiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIQiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCGIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQiCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIoiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCMIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQjiIPAAAQQMhCAwBCyAAIAAoAhAiAkEBajYCECACIAAoAgRqIAUgAa2GIASEIgQ8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEQgiIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBEIQiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIARCGIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEQiCIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBEIoiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIARCMIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEQjiIPAAAIAFBPWshCCAFQcAAIAFrrYghBQsgACAFNwO4LSAAIAg2AsAtIABBkBZqKAIAIgusQoACfSEEIABBnBZqKAIAIQICQAJAAn8CfgJAAn8CfyAIQTpNBEAgBCAIrYYgBYQhBCAIQQVqDAELIAhBwABGBEAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIIiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCEIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQhiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIgiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCKIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQjCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUI4iDwAACACrCEFQgUhBkEKDAILIAAgACgCECIBQQFqNgIQIAEgACgCBGogBCAIrYYgBYQiBTwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCCIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQhCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIYiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCIIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQiiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIwiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCOIg8AAAgBEHAACAIa62IIQQgCEE7awshByACrCEFIAdBOksNASAHrSEGIAdBBWoLIQkgBSAGhiAEhAwBCyAHQcAARgRAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCCIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQhCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIYiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCIIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQiiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIwiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCOIg8AAAgCq1CA30hBEIFIQZBCQwCCyAAIAAoAhAiAUEBajYCECABIAAoAgRqIAUgB62GIASEIgQ8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQgiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIQiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCGIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQiCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBEIoiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIARCMIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAEQjiIPAAAIAdBO2shCSAFQcAAIAdrrYgLIQUgCq1CA30hBCAJQTtLDQEgCa0hBiAJQQRqCyEIIAQgBoYgBYQhBAwBCyAJQcAARgRAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBTwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCCIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQhCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIYiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCIIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQiiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIwiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCOIg8AABBBCEIDAELIAAgACgCECIBQQFqNgIQIAEgACgCBGogBCAJrYYgBYQiBTwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCCIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQhCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIYiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCIIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAFQiiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogBUIwiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAVCOIg8AAAgCUE8ayEIIARBwAAgCWutiCEEC0EAIQcDQCAAIAciAUHA8QBqLQAAQQJ0akHyFGozAQAhBQJ/IAhBPE0EQCAFIAithiAEhCEEIAhBA2oMAQsgCEHAAEYEQCAAIAAoAhAiB0EBajYCECAHIAAoAgRqIAQ8AAAgACAAKAIQIgdBAWo2AhAgByAAKAIEaiAEQgiIPAAAIAAgACgCECIHQQFqNgIQIAcgACgCBGogBEIQiDwAACAAIAAoAhAiB0EBajYCECAHIAAoAgRqIARCGIg8AAAgACAAKAIQIgdBAWo2AhAgByAAKAIEaiAEQiCIPAAAIAAgACgCECIHQQFqNgIQIAcgACgCBGogBEIoiDwAACAAIAAoAhAiB0EBajYCECAHIAAoAgRqIARCMIg8AAAgACAAKAIQIgdBAWo2AhAgByAAKAIEaiAEQjiIPAAAIAUhBEEDDAELIAAgACgCECIHQQFqNgIQIAcgACgCBGogBSAIrYYgBIQiBDwAACAAIAAoAhAiB0EBajYCECAHIAAoAgRqIARCCIg8AAAgACAAKAIQIgdBAWo2AhAgByAAKAIEaiAEQhCIPAAAIAAgACgCECIHQQFqNgIQIAcgACgCBGogBEIYiDwAACAAIAAoAhAiB0EBajYCECAHIAAoAgRqIARCIIg8AAAgACAAKAIQIgdBAWo2AhAgByAAKAIEaiAEQiiIPAAAIAAgACgCECIHQQFqNgIQIAcgACgCBGogBEIwiDwAACAAIAAoAhAiB0EBajYCECAHIAAoAgRqIARCOIg8AAAgBUHAACAIa62IIQQgCEE9awshCCABQQFqIQcgASAKRw0ACyAAIAg2AsAtIAAgBDcDuC0gACAAQYgBaiIBIAsQvgEgACAAQfwSaiIHIAIQvgEgACABIAcQvwELIAAQwQEgAwRAIAAQwAELC/cEAgF/AX4CQCAAAn8gACgCwC0iAUHAAEYEQCAAIAAoAhAiAUEBajYCECABIAAoAgRqIAApA7gtIgI8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiACQgiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogAkIQiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAJCGIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiACQiCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogAkIoiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAJCMIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiACQjiIPAAAIABCADcDuC1BAAwBCyABQSBOBEAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiAAKQO4LSICPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogAkIIiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIAJCEIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiACQhiIPAAAIAAgAEG8LWo1AgA3A7gtIAAgACgCwC1BIGsiATYCwC0LIAFBEE4EQCAAIAAoAhAiAUEBajYCECABIAAoAgRqIAApA7gtIgI8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiACQgiIPAAAIAAgACkDuC1CEIg3A7gtIAAgACgCwC1BEGsiATYCwC0LIAFBCEgNASAAIAAoAhAiAUEBajYCECABIAAoAgRqIAApA7gtPAAAIAAgACkDuC1CCIg3A7gtIAAoAsAtQQhrCzYCwC0LC9EBAQF/IwBBMGsiAyQAIAMgADYCKCADIAE3AyAgAyACNgIcAkAgAygCKC0AKEEBcQRAIANBfzYCLAwBCwJAIAMoAigoAiAEQCADKAIcRQ0BIAMoAhxBAUYNASADKAIcQQJGDQELIAMoAihBDGpBEkEAEBQgA0F/NgIsDAELIAMgAykDIDcDCCADIAMoAhw2AhAgAygCKCADQQhqQhBBBhAfQgBTBEAgA0F/NgIsDAELIAMoAihBADoANCADQQA2AiwLIAMoAiwhACADQTBqJAAgAAvUAQEBfyMAQSBrIgIkACACIAA2AhggAiABNwMQIAIgAigCGEU6AA8CQCACKAIYRQRAIAIgAikDEKcQGSIANgIYIABFBEAgAkEANgIcDAILCyACQRgQGSIANgIIIABFBEAgAi0AD0EBcQRAIAIoAhgQFQsgAkEANgIcDAELIAIoAghBAToAACACKAIIIAIoAhg2AgQgAigCCCACKQMQNwMIIAIoAghCADcDECACKAIIIAItAA9BAXE6AAEgAiACKAIINgIcCyACKAIcIQAgAkEgaiQAIAALeAEBfyMAQRBrIgEkACABIAA2AgggASABKAIIQgQQHDYCBAJAIAEoAgRFBEAgAUEANgIMDAELIAEgASgCBC0AACABKAIELQABIAEoAgQtAAIgASgCBC0AA0EIdGpBCHRqQQh0ajYCDAsgASgCDCEAIAFBEGokACAAC4cDAQF/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNwMYAkAgAygCJC0AKEEBcQRAIANCfzcDKAwBCwJAAkAgAygCJCgCIEUNACADKQMYQv///////////wBWDQAgAykDGFANASADKAIgDQELIAMoAiRBDGpBEkEAEBQgA0J/NwMoDAELIAMoAiQtADVBAXEEQCADQn83AygMAQsCfyMAQRBrIgAgAygCJDYCDCAAKAIMLQA0QQFxCwRAIANCADcDKAwBCyADKQMYUARAIANCADcDKAwBCyADQgA3AxADQCADKQMQIAMpAxhUBEAgAyADKAIkIAMoAiAgAykDEKdqIAMpAxggAykDEH1BARAfIgI3AwggAkIAUwRAIAMoAiRBAToANSADKQMQUARAIANCfzcDKAwECyADIAMpAxA3AygMAwsgAykDCFAEQCADKAIkQQE6ADQFIAMgAykDCCADKQMQfDcDEAwCCwsLIAMgAykDEDcDKAsgAykDKCECIANBMGokACACC2EBAX8jAEEQayICIAA2AgggAiABNwMAAkAgAikDACACKAIIKQMIVgRAIAIoAghBADoAACACQX82AgwMAQsgAigCCEEBOgAAIAIoAgggAikDADcDECACQQA2AgwLIAIoAgwL7wEBAX8jAEEgayICJAAgAiAANgIYIAIgATcDECACIAIoAhhCCBAcNgIMAkAgAigCDEUEQCACQX82AhwMAQsgAigCDCACKQMQQv8BgzwAACACKAIMIAIp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AgwEQCABKAIMEE8gASgCDBAVCyABQRBqJAALLwEBfyMAQRBrIgEkACABIAA2AgwgASgCDCgCCBAVIAEoAgxBADYCCCABQRBqJAALzQEBAX8jAEEQayICJAAgAiAANgIIIAIgATYCBAJAIAIoAggtAChBAXEEQCACQX82AgwMAQsgAigCBEUEQCACKAIIQQxqQRJBABAUIAJBfzYCDAwBCyACKAIEEDsgAigCCCgCAARAIAIoAggoAgAgAigCBBA5QQBIBEAgAigCCEEMaiACKAIIKAIAEBggAkF/NgIMDAILCyACKAIIIAIoAgRCOEEDEB9CAFMEQCACQX82AgwMAQsgAkEANgIMCyACKAIMIQAgAkEQaiQAIAAL3wQBAX8jAEEgayICIAA2AhggAiABNgIUAkAgAigCGEUEQCACQQE2AhwMAQsgAiACKAIYKAIANgIMAkAgAigCGCgCCARAIAIgAigCGCgCCDYCEAwBCyACQQE2AhAgAkEANgIIA0ACQCACKAIIIAIoAhgvAQRPDQACQCACKAIMIAIoAghqLQAAQR9LBEAgAigCDCACKAIIai0AAEGAAUkNAQsgAigCDCACKAIIai0AAEENRg0AIAIoAgwgAigCCGotAABBCkYNACACKAIMIAIoAghqLQAAQQlGBEAMAQsgAkEDNgIQAkAgAigCDCACKAIIai0AAEHgAXFBwAFGBEAgAkEBNgIADAELAkAgAigCDCACKAIIai0AAEHwAXFB4AFGBEAgAkECNgIADAELAkAgAigCDCACKAIIai0AAEH4AXFB8AFGBEAgAkEDNgIADAELIAJBBDYCEAwECwsLIAIoAhgvAQQgAigCCCACKAIAak0EQCACQQQ2AhAMAgsgAkEBNgIEA0AgAigCBCACKAIATQRAIAIoAgwgAigCCCACKAIEamotAABBwAFxQYABRwRAIAJBBDYCEAwGBSACIAIoAgRBAWo2AgQMAgsACwsgAiACKAIAIAIoAghqNgIICyACIAIoAghBAWo2AggMAQsLCyACKAIYIAIoAhA2AgggAigCFARAAkAgAigCFEECRw0AIAIoAhBBA0cNACACQQI2AhAgAigCGEECNgIICwJAIAIoAhQgAigCEEYNACACKAIQQQFGDQAgAkEFNgIcDAILCyACIAIoAhA2AhwLIAIoAhwLagEBfyMAQRBr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QQJGDQELIAMoApQBQQJHDQEgAygCmAFBAkcNAQsgAygCpAEiACAALwEMQYAQcjsBDAwBCyADKAKkASIAIAAvAQxB/+8DcTsBDCADKAKUAUECRgRAIANB9eABIAMoAqQBKAIwIAMoAqgBQQhqEI8BNgKQASADKAKQAUUEQCADQX82AqwBDAMLCwJAIAMoAqABQYACcQ0AIAMoApgBQQJHDQAgA0H1xgEgAygCpAEoAjggAygCqAFBCGoQjwE2AkggAygCSEUEQCADKAKQARAiIANBfzYCrAEMAwsgAygCSCADKAKQATYCACADIAMoAkg2ApABCwsCQCADKAKkAS8BUkUEQCADKAKkASIAIAAvAQxB/v8DcTsBDAwBCyADKAKkASIAIAAvAQxBAXI7AQwLIAMgAygCpAEgAygCoAEQZ0EBcToAhgEgAyADKAKgAUGACnFBgApHBH8gAy0AhgEFQQELQQFxOgCHASADAn9BASADKAKkAS8BUkGBAkYNABpBASADKAKkAS8BUkGCAkYNABogAygCpAEvAVJBgwJGC0EBcToAhQEgAy0AhwFBAXEEQCADIANBIGpCHBApNgIcIAMoAhxFBEAgAygCqAFBCGpBDkEAEBQgAygCkAEQIiADQX82AqwBDAILAkAgAygCoAFBgAJxBEACQCADKAKgAUGACHENACADKAKkASkDIEL/////D1YNACADKAKkASkDKEL/////D1gNAgsgAygCHCADKAKkASkDKBAtIAMoAhwgAygCpAEpAyAQLQwBCwJAAkAgAygCoAFBgAhxDQAgAygCpAEpAyBC/////w9WDQAgAygCpAEpAyhC/////w9WDQAgAygCpAEpA0hC/////w9YDQELIAMoAqQBKQMoQv////8PWgRAIAMoAhwgAygCpAEpAygQLQsgAygCpAEpAyBC/////w9aBEAgAygCHCADKAKkASkDIBAtCyADKAKkASkDSEL/////D1oEQCADKAIcIAMoAqQBKQNIEC0LCwsCfyMAQRBrIgAgAygCHDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIcEBYgAygCkAEQIiADQX82AqwBDAILIANBAQJ/IwBBEGsiACADKAIcNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAunQf//A3ELIANBIGpBgAYQUjYCjAEgAygCHBAWIAMoAowBIAMoApABNgIAIAMgAygCjAE2ApABCyADLQCFAUEBcQRAIAMgA0EVakIHECk2AhAgAygCEEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAiIANBfzYCrAEMAgsgAygCEEECEB0gAygCEEHMEkECEEAgAygCECADKAKkAS8BUkH/AXEQlwEgAygCECADKAKkASgCEEH//wNxEB0CfyMAQRBrIgAgAygCEDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAIQEBYgAygCkAEQIiADQX82AqwBDAILIANBgbICQQcgA0EVakGABhBSNgIMIAMoAhAQFiADKAIMIAMoApABNgIAIAMgAygCDDYCkAELIAMgA0HQAGpCLhApIgA2AkwgAEUEQCADKAKoAUEIakEOQQAQFCADKAKQARAiIANBfzYCrAEMAQsgAygCTEH5EkH+EiADKAKgAUGAAnEbQQQQQCADKAKgAUGAAnFFBEAgAygCTCADLQCGAUEBcQR/QS0FIAMoAqQBLwEIC0H//wNxEB0LIAMoAkwgAy0AhgFBAXEEf0EtBSADKAKkAS8BCgtB//8DcRAdIAMoAkwgAygCpAEvAQwQHQJAIAMtAIUBQQFxBEAgAygCTEHjABAdDAELIAMoAkwgAygCpAEoAhBB//8DcRAdCyADKAKkASgCFCADQZ4BaiADQZwBahCOASADKAJMIAMvAZ4BEB0gAygCTCADLwGcARAdAkACQCADLQCFAUEBcUUNACADKAKkASkDKEIUWg0AIAMoAkxBABAgDAELIAMoAkwgAygCpAEoAhgQIAsCQAJAIAMoAqABQYACcUGAAkcNACADKAKkASkDIEL/////D1QEQCADKAKkASkDKEL/////D1QNAQsgAygCTEF/ECAgAygCTEF/ECAMAQsCQCADKAKkASkDIEL/////D1QEQCADKAJMIAMoAqQBKQMgpxAgDAELIAMoAkxBfxAgCwJAIAMoAqQBKQMoQv////8PVARAIAMoAkwgAygCpAEpAyinECAMAQsgAygCTEF/ECALCyADKAJMIAMoAqQBKAIwEE5B//8DcRAdIAMgAygCpAEoAjQgAygCoAEQkwFB//8DcSADKAKQAUGABhCTAUH//wNxajYCiAEgAygCTCAD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IgJBAWo2AhAgAiAAKAIEaiABQQh2OgAAIAAgACgCECICQQFqNgIQIAIgACgCBGogAUEQdjoAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIAFBGHY6AAAL3gQCAX8CfiABQQJqrSEEIAApA7gtIQMCQCAAKALALSIBQQNqIgJBP00EQCAEIAGthiADhCEEDAELIAFBwABGBEAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiADPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogA0IIiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIANCEIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiADQhiIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogA0IgiDwAACAAIAAoAhAiAUEBajYCECABIAAoAgRqIANCKIg8AAAgACAAKAIQIgFBAWo2AhAgASAAKAIEaiADQjCIPAAAIAAgACgCECIBQQFqNgIQIAEgACgCBGogA0I4iDwAAEEDIQIMAQsgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAEIAGthiADhCIDPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogA0IIiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIANCEIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiADQhiIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogA0IgiDwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIANCKIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiADQjCIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogA0I4iDwAACABQT1rIQIgBEHAACABa62IIQQLIAAgBDcDuC0gACACNgLALQuoCQIDfwJ+QbDkADMBACEFIAApA7gtIQYCQCAAKALALSIEQbLkAC8BACIDaiICQT9NBEAgBSAErYYgBoQhBQwBCyAEQcAARgRAIAAgACgCECICQQFqNgIQIAIgACgCBGogBjwAACAAIAAoAhAiAkEBajYCECACIAAoAgRqIAZCCIg8AAAgACAAKAIQIgJBAWo2AhAgAiAAKAIEaiAGQhCIPAAAIAAgACgCECICQQFqNgIQIAIgACgCBGogBkIYiDwAACAAIAAoAhAiAkEB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KAI0EJYBIQAgAygCgAEoAgAgAykDcKdBBHRqKAIAIAA2AjQgAygCgAEoAgAgAykDcKdBBHRqKAIAQQE6AAQgA0EANgI0IAMQTyADIAMpA3BCAXw3A3AMAgsACwsgAwJ+IAMpA2AgAykDaH1C////////////AFQEQCADKQNgIAMpA2h9DAELQv///////////wALNwOIAQsgAykDiAEhBCADQZABaiQAIAQL1AQBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAygCECEBIwBBEGsiACQAIAAgATYCCCAAQdgAEBk2AgQCQCAAKAIERQRAIAAoAghBDkEAEBQgAEEANgIMDAELIAAoAgghAiMAQRBrIgEkACABIAI2AgggAUEYEBkiAjYCBAJAIAJFBEAgASgCCEEOQQAQFCABQQA2AgwMAQsgASgCBEEANgIAIAEoAgRCADcDCCABKAIEQQA2AhAgASABKAIENgIMCyABKAIMIQIgAUEQaiQAIAAoAgQgAjYCUCACRQRAIAAoAgQQFSAAQQA2AgwMAQsgACgCBEEANgIAIAAoAgRBADYCBCMAQRBrIgEgACgCBEEIajYCDCABKAIMQQA2AgAgASgCDEEANgIEIAEoAgxBADYCCCAAKAIEQQA2AhggACgCBEEANgIUIAAoAgRBADYCHCAAKAIEQQA2AiQgACgCBEEANgIgIAAoAgRBADoAKCAAKAIEQgA3AzggACgCBEIANwMwIAAoAgRBADYCQCAAKAIEQQA2AkggACgCBEEANgJEIAAoAgRBADYCTCAAKAIEQQA2AlQgACAAKAIENgIMCyAAKAIMIQEgAEEQaiQAIAMgASIANgIMAkAgAEUEQCADQQA2AhwMAQsgAygCDCADKAIYNgIAIAMoAgwgAygCFDYCBCADKAIUQRBxBEAgAygCDCIAIAAoAhRBAnI2AhQgAygCDCIAIAAoAhhBAnI2AhgLIAMgAygCDDYCHAsgAygCHCEAIANBIGokACAAC9UBAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE3AxAgBCACNgIMIAQgAzYCCAJAAkAgBCkDEEL///////////8AVwRAIAQpAxBCgICAgICAgICAf1kNAQsgBCgCCEEEQT0QFCAEQX82AhwMAQsCfyAEKQMQIQEgBCgCDCEAIAQoAhgiAigC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KQMQp0EEdGoQvQEgAyADKQMQQgF8NwMQDAELCyADKAIoIAMpAwgiATcDECADKAIoIAE3AwggA0EBOgAvCyADLQAvQQFxIQAgA0EwaiQAIAALzAEBAX8jAEEgayICJAAgAiAANwMQIAIgATYCDCACQTAQGSIBNgIIAkAgAUUEQCACKAIMQQ5BABAUIAJBADYCHAwBCyACKAIIQQA2AgAgAigCCEIANwMQIAIoAghCADcDCCACKAIIQgA3AyAgAigCCEIANwMYIAIoAghBADYCKCACKAIIQQA6ACwgAigCCCACKQMQIAIoAgwQkAFBAXFFBEAgAigCCBAkIAJBADYCHAwBCyACIAIoAgg2AhwLIAIoAhwhASACQSBqJAAgAQvWAgEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIANBDGpCBBApNgIIAkAgAygCCEUEQCADQX82AhwMAQsDQCADKAIUBEAgAygCFCgCBCADKAIQcUGABnEEQCADKAIIQgAQLBogAygCCCADKAIULwEIEB0gAygCCCADKAIULwEKEB0CfyMAQRBrIgAgAygCCDYCDCAAKAIMLQAAQQFxRQsEQCADKAIYQQhqQRRBABAUIAMoAggQFiADQX82AhwMBAsgAygCGCADQQxqQgQQNkEASARAIAMoAggQFiADQX82AhwMBAsgAygCFC8BCgRAIAMoAhggAygCFCgCDCADKAIULwEKrRA2QQBIBEAgAygCCBAWIANBfzYCHAwFCwsLIAMgAygCFCgCADYCFAwBCwsgAygCCBAWIANBADYCHAsgAygCHCEAIANBIGokACAAC2gBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADsBBgNAIAIoAgwEQCACKAIMKAIEIAIoAghxQYAGcQRAIAIgAigCDC8BCiACLwEGQQRqajsBBgsgAiACKAIMKAIANgIMDAELCyACLwEGC/ABAQF/IwBBEGsiASQAIAEgADYCDCABIAEoAgw2AgggAUEANgIEA0AgASgCDARAAkACQCABKAIMLwEIQfXGAUYNACABKAIMLwEIQfXgAUYNACABKAIMLwEIQYGyAkYNACABKAIMLwEIQQFHDQELIAEgASgCDCgCADYCACABKAIIIAEoAgxGBEAgASABKAIANgIICyABKAIMQQA2AgAgASgCDBAi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IAFBADYCrAEMAQsgASABKAKkARAyNwMwAkAgASgClAFBBHFFDQAgASkDMCABKQM4fEIMfCABKQOYASABKQMYfFENACABKAKQAUEVQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABKAKkAUIEEBwaIAEgASgCpAEQKjYCDCABIAEoAqQBECo2AgQgASgCEEH//wNGBEAgASABKAIMNgIQCyABKAIIQf//A0YEQCABIAEoAgQ2AggLAkAgASgClAFBBHFFDQAgASgCCCABKAIERgRAIAEoAhAgASgCDEYNAQsgASgCkAFBFUEAEBQgAS0AF0EBcQRAIAEoAqQBEBYLIAFBADYCrAEMAQsCQCABKAIQRQRAIAEoAghFDQELIAEoApABQQFBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELIAEgASgCpAEQMjcDKCABIAEoAqQBEDI3AyAgASkDKCABKQMgUgRAIAEoApABQQFBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELIAEgASgCpAEQMjcDMCABIAEoAqQBEDI3A4ABAn8jAEEQayIFIAEoAqQBNgIMIAUoAgwtAABBAXFFCwRAIAEoApABQRRBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELIAEtABdBAXEEQCABKAKkARAWCwJAIAEpA4ABQv///////////wBYBEAgASkDgAEgASkDgAEgASkDMHxYDQELIAEoApABQQRBFhAUIAFBADYCrAEMAQsgASkDgAEgASkDMHwgASkDmAEgASkDOHxWBEAgASgCkAFBFUEAEBQgAUEANgKsAQwBCwJAIAEoApQBQQRxRQ0AIAEpA4ABIAEpAzB8IAEpA5gBIAEpAzh8UQ0AIAEoApABQRVBABAUIAFBADYCrAEMAQsgASkDKCABKQMwQi6AVgRAIAEoApABQRVBABAUIAFBADYCrAEMAQsgASABKQMoIAEoApABEJEBIgU2AowBIAVFBEAgAUEANgKsAQwBCyABKAKMAUEBOgAsIAEoAowBIAEpAzA3AxggASgCjAEgASkDgAE3AyAgASABKAKMATYCrAELIAEoAqwBIQUgAUGwAWokACAAIAU2AlAMAQsgACgCZCAAKQMwECwaIAAoAmQhBSAAKQNY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A0AgACgCACICLAAAIQMgACACQQFqNgIAIAEgA2pBMGshASACLAABQTBrQQpPDQEgAUEKbCEBDAALAAsgAQu7AgACQCABQRRLDQACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDgoAAQIDBAUGBwgJCgsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACQTQRBgALC38CAX8BfiAAvSIDQjSIp0H/D3EiAkH/D0cEfCACRQRAIAEgAEQAAAAAAAAAAGEEf0EABSAARAAAAAAAAPBDoiABEKoBIQAgASgCAEFAags2AgAgAA8LIAEgAkH+B2s2AgAgA0L/////////h4B/g0KAgICAgICA8D+EvwUgAAsLmwIAIABFBEBBAA8LAn8CQCAABH8gAUH/AE0NAQJAQdSbASgCACgCAEUEQCABQYB/cUGAvwNGDQMMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAgwECyABQYCwA09BACABQYBAcUGAwANHG0UEQCAAIAFBP3FBgAFyOgACIAAgAUEMdkHgAXI6AAAgACABQQZ2QT9xQYABcjoAAUEDDAQLIAFBgIAEa0H//z9NBEAgACABQT9xQYABcjoAAyAAIAFBEnZB8AFyOgAAIAAgAUEGdkE/cUGAAXI6AAIgACABQQx2QT9xQYABcjoAAUEEDAQLC0H4nQFBGTYCAEF/BUEBCwwBCyAAIAE6AABBAQsL4wEBAn8gAkEARyEDAkACQAJAIABBA3FFDQAgAkUNACABQf8BcSEEA0AgAC0AACAERg0CIAJBAWsiAkEARyEDIABBAWoiAEEDcUUNASACDQALCyADRQ0BCwJAIAAtAAAgAUH/AXFGDQAgAkEE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AwwBCyAAIAItAAA6AAEgA0ECayEGIARBAmshBSACQQFqIQICQCAAQQJqIgdBB3FFDQAgBUUNACAAIAItAAA6AAIgA0EDayEGIARBA2shBSACQQFqIQICQCAAQQNqIgdBB3FFDQAgBUUNACAAIAItAAA6AAMgA0EEayEGIARBBGshBSACQQFqIQICQCAAQQRqIgdBB3FFDQAgBUUNACAAIAItAAA6AAQgA0EFayEGIARBBWshBSACQQFqIQICQCAAQQVqIgdBB3FFDQAgBUUNACAAIAItAAA6AAUgA0EGayEGIARBBmshBSACQQFqIQICQCAAQQZqIgdBB3FFDQAgBUUNACAAIAItAAA6AAYgA0EHayEGIARBB2shBSACQQFqIQICQCAAQQdqIgdBB3FFDQAgBUUNACAAIAItAAA6AAcgA0EIayEDIARBCGshBCAAQQhqIQAgAkEBaiECDAYLIAchACAFIQQgBiEDDAULIAchACAFIQQgBiEDDAQLIAchACAFIQQgBiEDDAMLIAchACAFIQQgBiEDDAILIAchACAFIQQgBiEDDAELIAchACAFIQQgBiEDCwJAIANBF00EQCAERQ0BIARBAWshASAEQQdxIgMEQANAIAAgAi0AADoAACAEQQFrIQQgAEEBaiEAIAJBAWohAiADQQFrIgMNAAsLIAFBB0kNAQNAIAAgAi0AADoAACAAIAItAAE6AAEgACACLQACOgACIAAgAi0AAzoAAyAAIAItAAQ6AAQgACACLQAFOgAFIAAgAi0ABjoABiAAIAItAAc6AAcgAEEIaiEAIAJBCGohAiAEQQhrIgQNAAsMAQsgACABIAQQfyEACyAAC2wBA38CQCABKAIAIgNBB0sNACADIAIoAgBPDQAgACADayEEA0AgACAEKQAANwAAIAIgAigCACABKAIAIgVrNgIAIAEgASgCAEEBdCIDNgIAIAAgBWohACADQQdLDQEgAyACKAIASQ0ACwsgAAu8AgEBfwJAIAMgAGtBAWoiAyACIAIgA0sbIgJBCEkNACACQQhrIgRBA3ZBAWpBB3EiAwRAA0AgACABKQAANwAAIAJBCGshAiABQQhqIQEgAEEIaiEAIANBAWsiAw0ACwsgBEE4SQ0AA0AgACABKQAANwAAIAAgASkACDcACCAAIAEpABA3ABAgACABKQAYNwAYIAAg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KAKgAUUEQCABIAEoAqQBNgKsAQwBCyABIAEoAqABEC4CfyABKAKkAQRAIAEoAqQBEC5BAmoMAQtBAAtqQQFqEBkiADYCHCAARQRAIAFByBMoAgA2AqwBDAELIAEoAhwhAAJ/IAEoAqQBBEAgASgCpAEMAQtBghMLIQNB5xJBghMgASgCpAEbIQIgASABKAKgATYCCCABIAI2AgQgASADNgIAIABBvgogARBxIAEoAqgBIAEoAhw2AgggASABKAIcNgKsAQsgASgCrAEhACABQbABaiQAIAALMwEBfyAAKAIUIgMgASACIAAoAhAgA2siASABIAJLGyIBEBcaIAAgACgCFCABajYCFCACC48FAgZ+AX8gASABKAIAQQ9qQXBxIgFBEGo2AgAgAAJ8IAEpAwAhAyABKQMIIQYjAEEgayIIJAACQCAGQv///////////wCDIgRCgICAgICAwIA8fSAEQoCAgICAgMD/wwB9VARAIAZCBIYgA0I8iIQhBCADQv//////////D4MiA0KBgICAgICAgAhaBEAgBEKBgICAgICAgMAAfCECDAILIARCgICAgICAgIBAfSECIANCgICAgICAgIAIhUIAUg0BIAIgBEIBg3whAgwBCyADUCAEQoCAgICAgMD//wBUIARCgICAgICAwP//AFEbRQRAIAZCBIYgA0I8iIRC/////////wODQoCAgICAgID8/wCEIQIMAQtCgICAgICAgPj/ACECIARC////////v//DAFYNAEIAIQIgBEIwiKciAEGR9wBJDQAgAyECIAZC////////P4NCgICAgICAwACEIgUhBwJAIABBgfcAayIBQcAAcQRAIAIgAUFAaq2GIQdCACECDAELIAFFDQAgByABrSIEhiACQcAAIAFrrYiEIQcgAiAEhiECCyAIIAI3AxAgCCAHNwMYAkBBgfgAIABrIgBBwABxBEAgBSAAQUBqrYghA0IAIQUMAQsgAEUNACAFQcAAIABrrYYgAyAArSICiIQhAyAFIAKIIQULIAggAzcDACAIIAU3AwggCCkDCEIEhiAIKQMAIgNCPIiEIQIgCCkDECAIKQMYhEIAUq0gA0L//////////w+DhCIDQoGAgICAgICACFoEQCACQgF8IQIMAQsgA0KAgICAgICAgAiFQgBSDQAgAkIBgyACfCECCyAIQSBq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NgIUIA8gAjYCECAPIA8oAhg2AgwgDygCDCAPKAIQKQMAQv////8PVgR+Qv////8PBSAPKAIQKQMACz4CICAPKAIMIA8oAhQ2AhwCQCAPKAIMLQAEQQFxBEAgDwJ/QQRBACAPKAIMLQAMQQFxGyEKQQAhAkF+IQECQAJAAkAgDygCDEEQaiILRQ0AIAsoAiBFDQAgCygCJEUNACALKAIcIgNFDQAgAygCACALRw0AAkACQCADKAIgIgRBOWsOOQECAgICAgICAgICAgECAgIBAgICAgICAgICAgICAgICAgIBAgICAgICAgICAgIBAgICAgICAgICAQALIARBmgVGDQAgBEEqRw0BCyAKQQVLDQACQAJAIAsoAgxFDQAgCygCBCIABEAgCygCAEUNAQsgBEGaBUcNASAKQQRGDQELIAtB8PEAKAIANgIYQX4MBAsgCygCEEUNASADKAIkIQEgAyAKNgIkAkAgAygCEARAIAMQJwJAIAsoAhAiBCADKAIQIgIgAiAESxsiAEUNACALKAIMIAMoAgggABAXGiALIAsoAgwgAGo2AgwgAyADKAIIIABqNgIIIAsgCygCFCAAajYCFCALIAsoAhAgAGsiBDYCECADIAMoAhAgAGsiAjYCECACDQAgAyADKAIENgIIQQAhAgsgBARAIAMoAiAhBAwCCwwECyAADQAgCkEBdEF3QQAgCkEEShtqIAFBAXRBd0EAIAFBBEobakoNACAKQQRGDQAMAgsCQAJAAkACQAJAIARBKkcEQCAEQZoFRw0BIAsoAgRFDQMMBwsgAygCFEUEQCADQfEANgIgDAILIAMoAjRBDHRBgPABayEBAkAgAygCfEECTg0AIAMoAngiAEEBTA0AIABBBUwEQCABQcAAciEBDAELQYABQcABIABBBkYbIAFyIQELIAMgAkEBajYCECADKAIEIAJqIAFBIHIgASADKAJkGyIBQQh2OgAAIAMgAygCECIAQQFqNgIQIAAgAygCBGogAUEfcCABckEfczoAACADKAJkBEAgAyALKAIwEMwBCyALQQE2AjAgA0HxADYCICALEB4gAygCEA0HIAMoAiAhBAsCQAJAAkACQCAEQTlGBH8gAygCAEEANgIwIAMgAygCECIAQQFqNgIQIAAgAygCBGpBHzoAACADIAMoAhAiAEEBajYCECAAIAMoAgRqQYsBOgAAIAMgAygCECIAQQFqNgIQIAAgAygCBGpBCDoAAAJAIAMoAhwiAEUEQCADQQAQXCADIAMoAhAiAEEBajYCECAAIAMoAgRqQQA6AABBAiEBIAMoAngiAEEJRwRAQQQgAEECSEECdCADKAJ8QQFKGyEBCyADIAMoAhAiAEEBajYCECAAIAMoAgRqIAE6AAAgAyADKAIQIgBBAWo2AhAgACADKAIEakEDOgAAIANB8QA2AiAgCxAeIAMoAhBFDQEMDQsgACgCJCEIIAAoAhwhBiAAKAIQIQwgACgCLCEEIAAoAgAhAiADIAMoAhAiAEEBajYCEEECIQEgACADKAIEaiAEQQBHQQF0IAJBAEdyIAxBAEdBAnRyIAZBAEdBA3RyIAhBAEdBBHRyOgAAIAMgAygCHCgCBBBcIAMoAngiAEEJRwRAQQQgAEECSEECdCADKAJ8QQFKGyEBCyADIAMoAhAiAEEBajYCECAAIAMoAgRqIAE6AAAgAygCHCgCDCEBIAMgAygCECIAQQFqNgIQIAAgAygCBGogAToAACADKAIcIgAoAhAEfyAAKAIUIQEgAyADKAIQIgBBAWo2AhAgACADKAIEaiABOgAAIAMgAygCECIAQQFqNgIQIAAgAygCBGogAUEIdjoAACADKAIcBSAACygCLARAIAsCfyALKAIwIQIgAygCECEBQQAgAygCBCIARQ0AGiACIAAgAa1BrJkBKAIAEQQACzYCMAsgA0HFADYCICADQQA2AhgMAgsgAygCIAUgBAtBxQBrDiMABAQEAQQEBAQEBAQEBAQEBAQEBAQEAgQEBAQEBAQEBAQEAwQLIAMoAhwiACgCECIEBEAgAygCDCICIAMoAhAiASAALwEUIAMoAhgiB2siBmpJBEADQCADKAIEIAFqIAQgB2ogAiABayIMEBcaIAMgAygCDCIENgIQAkAgAygCHCgCLEUNACABIARPDQAgCwJ/IAsoAjAhAkEAIAMoAgQgAWoiAEUNABogAiAAIAQgAWutQayZASgCABEEAAs2AjALIAMgAygCGCAMajYCGCALKAIcIgIQJwJAIAsoAhAiASACKAIQIgAgACABSxsiAEUNACALKAIMIAIoAgggABAXGiALIAsoAgwgAGo2AgwgAiACKAIIIABqNgIIIAsgCygCFCAAajYCFCALIAsoAhAgAGs2AhAgAiACKAIQIABrIgA2AhAgAA0AIAIgAigCBDYCCAsgAygCEA0MIAMoAhghByADKAIcKAIQIQRBACEBIAYgDGsiBiADKAIMIgJLDQALCyADKAIEIAFqIAQgB2ogBhAXGiADIAMoAhAgBmoiBDYCEAJAIAMoAhwoAixFDQAgASAETw0AIAsCfyALKAIwIQJBACADKAIEIAFqIgBFDQAaIAIgACAEIAFrrUGsmQEoAgARBAALNgIwCyADQQA2AhgLIANByQA2AiALIAMoAhwoAhwEQCADKAIQIgEhBgNAAkAgASADKAIMRw0AAkAgAygCHCgCLEUNACABIAZNDQAgCwJ/IAsoAjAhAkEAIAMoAgQgBmoiAEUNABogAiAAIAEgBmutQayZASgCABEEAAs2AjALIAsoAhwiAhAnAkAgCygCECIBIAIoAhAiACAAIAFLGyIARQ0AIAsoAgwgAigCCCAAEBcaIAsgCygCDCAAajYCDCACIAIoAgggAGo2AgggCyALKAIUIABqNgIUIAsgCygCECAAazYCECACIAIoAhAgAGsiADYCECAADQAgAiACKAIENgIIC0EAIQFBACEGIAMoAhBFDQAMCwsgAygCHCgCHCECIAMgAygCGCIAQQFqNgIYIAAgAmotAAAhACADIAFBAWo2AhAgAygCBCABaiAAOgAAIAAEQCADKAIQIQEMAQsLAkAgAygCHCgCLEUNACADKAIQIgIgBk0NACALAn8gCygCMCEBQQAgAygCBCAGaiIARQ0AGiABIAAgAiAGa61BrJkBKAIAEQQACzYCMAsgA0EANgIYCyADQdsANgIgCwJAIAMoAhwoAiRFDQAgAygCECIBIQYDQAJAIAEgAygCDEcNAAJAIAMoAhwoAixFDQAgASAGTQ0AIAsCfyALKAIwIQJBACADKAIEIAZqIgBFDQAaIAIgACABIAZrrUGsmQEoAgARBAALNgIwCyALKAIcIgIQJwJAIAsoAhAiASACKAIQIgAgACABSxsiAEUNACALKAIMIAIoAgggABAXGiALIAsoAgwgAGo2AgwgAiACKAIIIABqNgIIIAsgCygCFCAAajYCFCALIAsoAhAgAGs2AhAgAiACKAIQIABrIgA2AhAgAA0AIAIgAigCBDYCCAtBACEBQQAhBiADKAIQRQ0ADAoLIAMoAhwoAiQhAiADIAMoAhgiAEEBajYCGCAAIAJqLQAAIQAgAyABQQFqNgIQIAMoAgQgAWogADoAACAABEAgAygCECEBDAELCyADKAIcKAIsRQ0AIAMoAhAiAiAGTQ0AIAsCfyALKAIwIQFBACADKAIEIAZqIgBFDQAaIAEgACACIAZrrUGsmQEoAgARBAALNgIwCyADQecANgIgCwJAIAMoAhwoAiwEQCADKAIMIAMoAhAiAUECakkEQCALEB4gAygCEA0CQQAhAQsgCygCMCECIAMgAUEBajYCECADKAIEIAFqIAI6AAAgAyADKAIQIgBBAWo2AhAgACADKAIEaiACQQh2OgAAIAMoAgBBADYCMAsgA0HxADYCICALEB4gAygCEEUNAQwHCwwGCyALKAIEDQELIAMoAjwNACAKRQ0BIAMoAiBBmgVGDQELAn8gAygCeCIARQRAIAMgChDLAQwBCwJAAkACQCADKAJ8QQJrDgIAAQILAn8CQANAAkAgAygCPA0AIAMQRSADKAI8DQAgCg0CQQAMAwsgAygCSCADKAJkai0AACEBIAMgAygClC0iAEEBajYClC0gACADKAKQLWpBADoAACADIAMoApQtIgBBAWo2ApQtIAAgAygCkC1qQQA6AAAgAyADKAKULSIAQQFqNgKULSAAIAMoApAtaiABOgAAIAMgAUECdGoiACAALwGIAUEBajsBiAEgAyADKAI8QQFrNgI8IAMgAygCZEEBaiIANgJkIAMoApQtIAMoApgtRw0AIAMgAygCVCIBQQBOBH8gAygCSCABagVBAAsgACABa0EAECYgAyADKAJkNgJUIAMoAgAiBCgCHCICECcCQCAEKAIQIgEgAigCECIAIAAgAUsbIgBFDQAgBCgCDCACKAIIIAAQFxogBCAEKAIMIABqNgIMIAIgAigCCCAAajYCCCAEIAQoAhQgAGo2AhQgBCAEKAIQIABrNgIQIAIgAigCECAAayIANgIQIAANACACIAIoAgQ2AggLIAMoAgAoAhANAAtBAAwBCyADQQA2AqgtIApBBEYEQCADIAMoAlQiAEEATgR/IAMoAkggAGoFQQALIAMoAmQgAGtBARAmIAMgAygCZDYCVCADKAIAIgQoAhwiAhAnAkAgBCgCECIBIAIoAhAiACAAIAFLGyIARQ0AIAQoAgwgAigCCCAAEBcaIAQgBCgCDCAAajYCDCACIAIoAgggAGo2AgggBCAEKAIUIABqNgIUIAQgBCgCECAAazYCECACIAIoAhAgAGsiADYCECAADQAgAiACKAIENgIIC0EDQQIgAygCACgCEBsMAQsCQCADKAKULUUNACADIAMoAlQiAEEATgR/IAMoAkggAGoFQQALIAMoAmQgAGtBABAmIAMgAygCZDYCVCADKAIAIgQoAhwiAhAnAkAgBCgCECIBIAIoAhAiACAAIAFLGyIARQ0AIAQoAgwgAigCCCAAEBcaIAQgBCgCDCAAajYCDCACIAIoAgggAGo2AgggBCAEKAIUIABqNgIUIAQgBCgCECAAazYCECACIAIoAhAgAGsiADYCECAADQAgAiACKAIENgIICyADKAIAKAIQDQBBAAwBC0EBCwwCCwJ/AkADQAJAAkACQAJAIAMoAjwiBkGCAksNACADEEUCQCADKAI8IgZBggJLDQAgCg0AQQAMBwsgBkUNBSAGQQJLDQAgAygCZCEIDAELIAMoAmQiCEUEQEEAIQgMAQsgAygCSCAIaiIMQQFrIgAtAAAiCSAMLQAARw0AIAkgAC0AAkcNACAJIAAtAANHDQAgDEGCAmohBEF/IQECQAJAAkACQAJAAkADQCABIAxqIgItAAQgCUYEQCAJIAItAAVHDQIgCSACLQAGRw0DIAkgAi0AB0cNBCAJIAwgAUEIaiIAaiIHLQAARw0HIAkgAi0ACUcNBSAJIAItAApHDQYgCSACQQtqIgctAABHDQcgAUH3AUghAiAAIQEgAg0BDAcLCyACQQRqIQcMBQsgAkEFaiEHDAQLIAJBBmohBwwDCyACQQdqIQcMAgsgAkEJaiEHDAELIAJBCmohBwsgBiAHIARrQYICaiIAIAAgBksbIgFBAksNAQsgAygCSCAIai0AACEBIAMgAygClC0iAEEBajYClC0gACADKAKQLWpBADoAACADIAMoApQtIgBBAWo2ApQtIAAgAygCkC1qQQA6AAAgAyADKAKULSIAQQFqNgKULSAAIAMoApAtaiABOgAAIAMgAUECdGoiACAALwGIAUEBajsBiAEgAyADKAI8QQFrNgI8IAMgAygCZEEBaiIINgJkDAELIAMgAygClC0iAEEBajYClC0gACADKAKQLWpBAToAACADIAMoApQtIgBBAWo2ApQtIAAgAygCkC1qQQA6AAAgAyADKAKULSIAQQFqNgKULSAAIAMoApAtaiABQQNrOgAAIAMgAygCpC1BAWo2AqQtIAFBreoAai0AAEECdCADakGMCWoiACAALwEAQQFqOwEAIANBsOYALQAAQQJ0akH8EmoiACAALwEAQQFqOwEAIAMgAygCPCABazYCPCADIAMoAmQgAWoiCDYCZAsgAygClC0gAygCmC1HDQAgAyADKAJUIgBBAE4EfyADKAJIIABqBUEACyAIIABrQQAQJiADIAMoAmQ2AlQgAygCACIEKAIcIgIQJwJAIAQoAhAiASACKAIQIgAgACABSxsiAEUNACAEKAIMIAIoAgggABAXGiAEIAQoAgwgAGo2AgwgAiACKAIIIABqNgIIIAQgBCgCFCAAajYCFCAEIAQoAhAgAGs2AhAgAiACKAIQIABrIgA2AhAgAA0AIAIgAigCBDYCCAsgAygCACgCEA0AC0EADAELIANBADYCqC0gCkEERgRAIAMgAygCVCIAQQBOBH8gAygCSCAAagVBAAsgAygCZCAAa0EBECYgAyADKAJkNgJUIAMoAgAiBCgCHCICECcCQCAEKAIQIgEgAigCECIAIAAgAUsbIgBFDQAgBCgCDCACKAIIIAAQFxogBCAEKAIMIABqNgIMIAIgAigCCCAAajYCCCAEIAQoAhQgAGo2AhQgBCAEKAIQIABrNgIQIAIgAigCECAAayIANgIQIAANACACIAIoAgQ2AggLQQNBAiADKAIAKAIQGwwBCwJAIAMoApQtRQ0AIAMgAygCVCIAQQBOBH8gAygCSCAAagVBAAsgAygCZCAAa0EAECYgAyADKAJkNgJUIAMoAgAiBCgCHCICECcCQCAEKAIQIgEgAigCECIAIAAgAUsbIgBFDQAgBCgCDCACKAIIIAAQFxogBCAEKAIMIABqNgIMIAIgAigCCCAAajYCCCAEIAQoAhQgAGo2AhQgBCAEKAIQIABrNgIQIAIgAigCECAAayIANgIQIAANACACIAIoAgQ2AggLIAMoAgAoAhANAEEADAELQQELDAELIAMgCiAAQQxsQbjbAGooAgARAgALIgBBfnFBAkYEQCADQZoFNgIgCyAAQX1xRQRAQQAhASALKAIQDQIMBAsgAEEBRw0AAkACQAJAIApBAWsOBQABAQECAQsgAykDuC0hJQJ/An4gAygCwC0iAUED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AgQgAygCBEEANgIUIAMoAgRBADYCECADKAIEQQA2AiAgAygCBEEANgIcAkAgAygCBC0ABEEBcQRAIAMCfyADKAIEQRBqIQAgAygCBCgCCCEBQXohAgJAQY8NLQAAQTFHDQBBfiECIABFDQAgAEEANgIYIAAoAiAiBEUEQCAAQQA2AiggAEECNgIgQQIhBAsgACgCJEUEQCAAQQM2AiQLQQYgASABQX9GGyIFQQBIDQAgBUEJSg0AQXwhAiAAKAIoQQFB8C0gBBEAACIBRQ0AIAAgATYCHCABIAA2AgAgAUENQQ8gBUEBRhsiAjYCNCABQoCAgICgBTcCHCABQQA2AhQgAUEBIAJ0IgI2AjAgASACQQFrNgI4IAEgACgCKCACQQIgACgCIBEAADYCSCABIAAoAiggASgCMEECIAAoAiARAAAiAjYCTCACQQAgASgCMEEBdBAvIAAoAihBgIAEQQIgACgCIBEAACECIAFBgIACNgKMLSABQQA2AkAgASACNgJQIAEgACgCKEGAgAJBBCAAKAIgEQAAIgI2AgQgASABKAKMLSIEQQJ0NgIMAkACQCABKAJIRQ0AIAEoAkxFDQAgASgCUEUNACACDQELIAFBmgU2AiAgAEH48QAoAgA2AhggABDNARpBfAwCCyABQQA2AnwgASAFNgJ4IAFCADcDKCABIAIgBGo2ApAtIAEgBEEDbEEDazYCmC0Cf0F+IQICQCAARQ0AIAAoAiBFDQAgACgCJEUNACAAKAIcIgFFDQAgASgCACAARw0AAkACQCABKAIgIgVBOWsOOQECAgICAgICAgICAgECAgIBAgICAgICAgICAgICAgICAgIBAgICAgICAgICAgIBAgICAgICAgICAQALIAVBmgVGDQAgBUEqRw0BCyAAQQI2AiwgAEEANgIIIABCADcCFCABQQA2AhAgASABKAIENgIIIAEoAhQiAkF/TARAIAFBACACayICNgIUCyABQTlBKiACQQJGGzYCIAJAIAJBAkYEQCABKAIAQQA2AjAMAQsgAEEBNgIwCyABQX42AiQgAUEANgLALSABQgA3A7gtIAFBrBZqQdDuADYCACABIAFB8BRqNgKkFiABQaAWakG87gA2AgAgASABQfwSajYCmBYgAUGUFmpBqO4ANgIAIAEgAUGIAWo2AowWIAEQwQFBACECCyACRQsE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cgBJbnRlcm5hbCBlcnJvcgBTZWVrIGVycm9yAFdyaXRlIGVycm9yAGZpbGUgZXJyb3IAUmVhZCBlcnJvcgBabGliIGVycm9yAGRhdGEgZXJyb3IAQ1JDIGVycm9yAGluY29tcGF0aWJsZSB2ZXJzaW9uAG5hbgAvZGV2L3VyYW5kb20AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMS56bGliLW5nAGluZgBpbnZhbGlkIHdpbmRvdyBzaXplAFJlYWQtb25seSBhcmNoaXZlAE5vdCBhIHppcCBhcmNoaXZlAFJlc291cmNlIHN0aWxsIGluIHVzZQBNYWxsb2MgZmFpbHVyZQBpbnZhbGlkIGJsb2NrIHR5cGUARmFpbHVyZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUAQ2FuJ3Qgb3BlbiBmaWxlAE5vIHN1Y2ggZmlsZQBQcmVtYXR1cmUgZW5kIG9mIGZpbGUAQ2FuJ3QgcmVtb3ZlIGZpbGUAaW52YWxpZCBsaXRlcmFsL2xlbmd0aCBjb2RlAGludmFsaWQgZGlzdGFuY2UgY29kZQB1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZABzdHJlYW0gZW5kAENvbXByZXNzZWQgZGF0YSBpbnZhbGlkAE11bHRpLWRpc2sgemlwIGFyY2hpdmVzIG5vdCBzdXBwb3J0ZWQAT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQARW5jcnlwdGlvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABDb21wcmVzc2lvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABFbnRyeSBoYXMgYmVlbiBkZWxldGVkAENvbnRhaW5pbmcgemlwIGFyY2hpdmUgd2FzIGNsb3NlZABDbG9zaW5nIHppcCBhcmNoaXZlIGZhaWxlZABSZW5hbWluZyB0ZW1wb3JhcnkgZmlsZSBmYWlsZWQARW50cnkgaGFzIGJlZW4gY2hhbmdlZABObyBw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SXsbsS4eQ9I+SPtuWS3p2/bDUWeRpsywqR90DM56ZrlhlN4FBvEAQdDZAAtNAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQcDaAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQbjbAAttBAAAAAQABAAIAAQABQAAAAQABAAIAAQABgAAAAQABgAgACAABgAAAAQABAAQABAABwAAAAgAEAAgACAABwAAAAgAEACAAIAABwAAAAgAIACAAAABCAAAACAAgAACAQAECAAAACAAAgECAQAQCABBsNwAC/cJDAAIAIwACABMAAgAzAAIACwACACsAAgAbAAIAOwACAAcAAgAnAAIAFwACADcAAgAPAAIALwACAB8AAgA/AAIAAIACACCAAgAQgAIAMIACAAiAAgAogAIAGIACADiAAgAEgAIAJIACABSAAgA0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0A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AAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQYDwAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQbDxAAsjAgAAAAMAAAAHAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AQeDxAAsmFAQAAMUHAACCCQAAmQUAAFsFAAC6BQAAAAQAAEUFAADPBQAAggkAQZDyAAulEwMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAAAAQABAAEAAQABAAEAAQABAAEQARABEAEQASABIAEgASABMAEwATABMAFAAUABQAFAAVABUAFQAVABAATQDKAAAAAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAABAAEAAQABAAEQARABIAEgATABMAFAAUABUAFQAWABYAFwAXABgAGAAZABkAGgAaABsAGwAcABwAHQAdAEAAQABgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnAABAHCgAACGAAAAggAAAJoAAACAAAAAiAAAAIQAAACeAAEAcGAAAIWAAACBgAAAmQABMHOwAACHgAAAg4AAAJ0AARBxEAAAhoAAAIKAAACbAAAAgIAAAIiAAACEgAAAnwABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACcgAEQcNAAAIZAAACCQAAAmoAAAIBAAACIQAAAhEAAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAEAARABIAAAAIAAcACQAGAAoABQALAAQADAADAA0AAgAOAAEADwBBwIUBC0ERAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAAQAJCwsAAAkGCwAACwAGEQAAABEREQBBkYYBCyELAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAQcuGAQsBDABB14YBCxUMAAAAAAwAAAAACQwAAAAAAAwAAAwAQYWHAQsBDgBBkYcBCxUNAAAABA0AAAAACQ4AAAAAAA4AAA4AQb+HAQsBEABBy4cBCx4PAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAQYKIAQsOEgAAABISEgAAAAAAAAkAQbOIAQsBCwBBv4gBCxUKAAAAAAoAAAAACQsAAAAAAAsAAAsAQe2IAQsBDABB+YgBCycMAAAAAAwAAAAACQwAAAAAAAwAAAwAADAxMjM0NTY3ODlBQkNERUYAQcSJAQsBNQBB64kBCwX//////wBBsIoBC1cZEkQ7Aj8sRxQ9MzAKGwZGS0U3D0kOjhcDQB08aSs2H0otHAEgJSkhCAwVFiIuEDg+CzQxGGR0dXYvQQl/OREjQzJCiYqLBQQmKCcNKh41jAcaSJMTlJUAQZCLAQuKDklsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAEGgmQELhgEWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAkFFQACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAABAAAACAAAANhMAAD4TABB1JsBCwJQUQBBjJwBCwkfAAAAJE4AAAMAQaScAQuMAS30UVjPjLHARva1yykxA8cEW3AwtF39IHh/i5rYWSlQaEiJq6dWA2z/t82IP9R3tCulo3DxuuSo/EGD/dlv4Yp6Ly10lgcfDQleA3YscPdApSynb1dBqKp036BYZANKx8Q8U66vXxgEFbHjbSiGqwykv0Pw6VCBOVcWUjf/////////////////////"; + if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile); + } + function getBinary(file) { + try { + if (file == wasmBinaryFile && wasmBinary) { + return new Uint8Array(wasmBinary); + } + var binary = tryParseAsDataURI(file); + if (binary) { + return binary; + } + if (readBinary) { + return readBinary(file); + } else { + throw "sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"; + } + } catch (err2) { + abort(err2); + } + } + function instantiateSync(file, info) { + var instance; + var module3; + var binary; + try { + binary = getBinary(file); + module3 = new WebAssembly.Module(binary); + instance = new WebAssembly.Instance(module3, info); + } catch (e) { + var str = e.toString(); + err("failed to compile wasm module: " + str); + if (str.includes("imported Memory") || str.includes("memory import")) { + err( + "Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)." + ); + } + throw e; + } + return [instance, module3]; + } + function createWasm() { + var info = { a: asmLibraryArg }; + function receiveInstance(instance, module3) { + var exports4 = instance.exports; + Module["asm"] = exports4; + wasmMemory = Module["asm"]["u"]; + updateGlobalBufferAndViews(wasmMemory.buffer); + wasmTable = Module["asm"]["pa"]; + addOnInit(Module["asm"]["v"]); + removeRunDependency("wasm-instantiate"); + } + addRunDependency("wasm-instantiate"); + if (Module["instantiateWasm"]) { + try { + var exports3 = Module["instantiateWasm"](info, receiveInstance); + return exports3; + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false; + } + } + var result2 = instantiateSync(wasmBinaryFile, info); + receiveInstance(result2[0]); + return Module["asm"]; + } + var tempDouble; + var tempI64; + function LE_HEAP_LOAD_F32(byteOffset) { + return HEAP_DATA_VIEW.getFloat32(byteOffset, true); + } + function LE_HEAP_LOAD_F64(byteOffset) { + return HEAP_DATA_VIEW.getFloat64(byteOffset, true); + } + function LE_HEAP_LOAD_I16(byteOffset) { + return HEAP_DATA_VIEW.getInt16(byteOffset, true); + } + function LE_HEAP_LOAD_I32(byteOffset) { + return HEAP_DATA_VIEW.getInt32(byteOffset, true); + } + function LE_HEAP_STORE_I16(byteOffset, value) { + HEAP_DATA_VIEW.setInt16(byteOffset, value, true); + } + function LE_HEAP_STORE_I32(byteOffset, value) { + HEAP_DATA_VIEW.setInt32(byteOffset, value, true); + } + function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(Module); + continue; + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === void 0) { + wasmTable.get(func)(); + } else { + wasmTable.get(func)(callback.arg); + } + } else { + func(callback.arg === void 0 ? null : callback.arg); + } + } + } + function _gmtime_r(time, tmPtr) { + var date = new Date(LE_HEAP_LOAD_I32((time >> 2) * 4) * 1e3); + LE_HEAP_STORE_I32((tmPtr >> 2) * 4, date.getUTCSeconds()); + LE_HEAP_STORE_I32((tmPtr + 4 >> 2) * 4, date.getUTCMinutes()); + LE_HEAP_STORE_I32((tmPtr + 8 >> 2) * 4, date.getUTCHours()); + LE_HEAP_STORE_I32((tmPtr + 12 >> 2) * 4, date.getUTCDate()); + LE_HEAP_STORE_I32((tmPtr + 16 >> 2) * 4, date.getUTCMonth()); + LE_HEAP_STORE_I32((tmPtr + 20 >> 2) * 4, date.getUTCFullYear() - 1900); + LE_HEAP_STORE_I32((tmPtr + 24 >> 2) * 4, date.getUTCDay()); + LE_HEAP_STORE_I32((tmPtr + 36 >> 2) * 4, 0); + LE_HEAP_STORE_I32((tmPtr + 32 >> 2) * 4, 0); + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + LE_HEAP_STORE_I32((tmPtr + 28 >> 2) * 4, yday); + if (!_gmtime_r.GMTString) + _gmtime_r.GMTString = allocateUTF8("GMT"); + LE_HEAP_STORE_I32((tmPtr + 40 >> 2) * 4, _gmtime_r.GMTString); + return tmPtr; + } + function ___gmtime_r(a0, a1) { + return _gmtime_r(a0, a1); + } + var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1); + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1); + } else if (last === "..") { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift(".."); + } + } + return parts; + }, + normalize: function(path2) { + var isAbsolute = path2.charAt(0) === "/", trailingSlash = path2.substr(-1) === "/"; + path2 = PATH.normalizeArray( + path2.split("/").filter(function(p) { + return !!p; + }), + !isAbsolute + ).join("/"); + if (!path2 && !isAbsolute) { + path2 = "."; + } + if (path2 && trailingSlash) { + path2 += "/"; + } + return (isAbsolute ? "/" : "") + path2; + }, + dirname: function(path2) { + var result2 = PATH.splitPath(path2), root = result2[0], dir = result2[1]; + if (!root && !dir) { + return "."; + } + if (dir) { + dir = dir.substr(0, dir.length - 1); + } + return root + dir; + }, + basename: function(path2) { + if (path2 === "/") + return "/"; + path2 = PATH.normalize(path2); + path2 = path2.replace(/\/$/, ""); + var lastSlash = path2.lastIndexOf("/"); + if (lastSlash === -1) + return path2; + return path2.substr(lastSlash + 1); + }, + extname: function(path2) { + return PATH.splitPath(path2)[3]; + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")); + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r); + } + }; + function getRandomDevice() { + if (typeof crypto === "object" && typeof crypto["getRandomValues"] === "function") { + var randomBuffer = new Uint8Array(1); + return function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0]; + }; + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + return function() { + return crypto_module["randomBytes"](1)[0]; + }; + } catch (e) { + } + } + return function() { + abort("randomDevice"); + }; + } + var PATH_FS = { + resolve: function() { + var resolvedPath = "", resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path2 = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path2 !== "string") { + throw new TypeError("Arguments to path.resolve must be strings"); + } else if (!path2) { + return ""; + } + resolvedPath = path2 + "/" + resolvedPath; + resolvedAbsolute = path2.charAt(0) === "/"; + } + resolvedPath = PATH.normalizeArray( + resolvedPath.split("/").filter(function(p) { + return !!p; + }), + !resolvedAbsolute + ).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "."; + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") + break; + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") + break; + } + if (start > end) + return []; + return arr.slice(start, end - start + 1); + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push(".."); + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/"); + } + }; + var TTY = { + ttys: [], + init: function() { + }, + shutdown: function() { + }, + register: function(dev, ops) { + TTY.ttys[dev] = { input: [], output: [], ops }; + FS.registerDevice(dev, TTY.stream_ops); + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43); + } + stream.tty = tty; + stream.seekable = false; + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty); + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty); + }, + read: function(stream, buffer2, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60); + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result2; + try { + result2 = stream.tty.ops.get_char(stream.tty); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (result2 === void 0 && bytesRead === 0) { + throw new FS.ErrnoError(6); + } + if (result2 === null || result2 === void 0) + break; + bytesRead++; + buffer2[offset + i] = result2; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }, + write: function(stream, buffer2, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60); + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer2[offset + i]); + } + } catch (e) { + throw new FS.ErrnoError(29); + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result2 = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = nodeFS.readSync( + process.stdin.fd, + buf, + 0, + BUFSIZE, + null + ); + } catch (e) { + if (e.toString().includes("EOF")) + bytesRead = 0; + else + throw e; + } + if (bytesRead > 0) { + result2 = buf.slice(0, bytesRead).toString("utf-8"); + } else { + result2 = null; + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result2 = window.prompt("Input: "); + if (result2 !== null) { + result2 += "\n"; + } + } else if (typeof readline == "function") { + result2 = readline(); + if (result2 !== null) { + result2 += "\n"; + } + } + if (!result2) { + return null; + } + tty.input = intArrayFromString(result2, true); + } + return tty.input.shift(); + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) + tty.output.push(val); + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) + tty.output.push(val); + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + } + } + }; + function mmapAlloc(size) { + var alignedSize = alignMemory(size, 65536); + var ptr = _malloc(alignedSize); + while (size < alignedSize) + HEAP8[ptr + size++] = 0; + return ptr; + } + var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0); + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63); + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { llseek: MEMFS.stream_ops.llseek } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + }; + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {}; + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null; + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream; + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream; + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node; + parent.timestamp = node.timestamp; + } + return node; + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) + return new Uint8Array(0); + if (node.contents.subarray) + return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents); + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) + return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max( + newCapacity, + prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0 + ); + if (prevCapacity != 0) + newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) + node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) + return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + } else { + var oldContents = node.contents; + node.contents = new Uint8Array(newSize); + if (oldContents) { + node.contents.set( + oldContents.subarray(0, Math.min(newSize, node.usedBytes)) + ); + } + node.usedBytes = newSize; + } + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096; + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes; + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length; + } else { + attr.size = 0; + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr; + }, + setattr: function(node, attr) { + if (attr.mode !== void 0) { + node.mode = attr.mode; + } + if (attr.timestamp !== void 0) { + node.timestamp = attr.timestamp; + } + if (attr.size !== void 0) { + MEMFS.resizeFileStorage(node, attr.size); + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44]; + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev); + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) { + } + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55); + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.parent.timestamp = Date.now(); + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + new_dir.timestamp = old_node.parent.timestamp; + old_node.parent = new_dir; + }, + unlink: function(parent, name) { + delete parent.contents[name]; + parent.timestamp = Date.now(); + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55); + } + delete parent.contents[name]; + parent.timestamp = Date.now(); + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key2 in node.contents) { + if (!node.contents.hasOwnProperty(key2)) { + continue; + } + entries.push(key2); + } + return entries; + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node; + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28); + } + return node.link; } - buffOffset = buff.length - search.length + 1; - } else { - const revOffset = this._reverseOffset([blIndex, buffOffset]); - if (this._match(revOffset, search)) { - return revOffset; + }, + stream_ops: { + read: function(stream, buffer2, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) + return 0; + var size = Math.min(stream.node.usedBytes - position, length); + if (size > 8 && contents.subarray) { + buffer2.set(contents.subarray(position, position + size), offset); + } else { + for (var i = 0; i < size; i++) + buffer2[offset + i] = contents[position + i]; + } + return size; + }, + write: function(stream, buffer2, offset, length, position, canOwn) { + if (buffer2.buffer === HEAP8.buffer) { + canOwn = false; + } + if (!length) + return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer2.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + node.contents = buffer2.subarray(offset, offset + length); + node.usedBytes = length; + return length; + } else if (node.usedBytes === 0 && position === 0) { + node.contents = buffer2.slice(offset, offset + length); + node.usedBytes = length; + return length; + } else if (position + length <= node.usedBytes) { + node.contents.set( + buffer2.subarray(offset, offset + length), + position + ); + return length; + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer2.subarray) { + node.contents.set( + buffer2.subarray(offset, offset + length), + position + ); + } else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer2[offset + i]; + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length; + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes; + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max( + stream.node.usedBytes, + offset + length + ); + }, + mmap: function(stream, address, length, position, prot, flags) { + if (address !== 0) { + throw new FS.ErrnoError(28); + } + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && contents.buffer === buffer) { + allocated = false; + ptr = contents.byteOffset; + } else { + if (position > 0 || position + length < contents.length) { + if (contents.subarray) { + contents = contents.subarray(position, position + length); + } else { + contents = Array.prototype.slice.call( + contents, + position, + position + length + ); + } + } + allocated = true; + ptr = mmapAlloc(length); + if (!ptr) { + throw new FS.ErrnoError(48); + } + HEAP8.set(contents, ptr); + } + return { ptr, allocated }; + }, + msync: function(stream, buffer2, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (mmapFlags & 2) { + return 0; + } + var bytesWritten = MEMFS.stream_ops.write( + stream, + buffer2, + 0, + length, + offset, + false + ); + return 0; } - buffOffset++; } - } - buffOffset = 0; - } - return -1; - }; - BufferList.prototype._match = function(offset, search) { - if (this.length - offset < search.length) { - return false; - } - for (let searchOffset = 0; searchOffset < search.length; searchOffset++) { - if (this.get(offset + searchOffset) !== search[searchOffset]) { - return false; - } - } - return true; - }; - (function() { - const methods = { - readDoubleBE: 8, - readDoubleLE: 8, - readFloatBE: 4, - readFloatLE: 4, - readInt32BE: 4, - readInt32LE: 4, - readUInt32BE: 4, - readUInt32LE: 4, - readInt16BE: 2, - readInt16LE: 2, - readUInt16BE: 2, - readUInt16LE: 2, - readInt8: 1, - readUInt8: 1, - readIntBE: null, - readIntLE: null, - readUIntBE: null, - readUIntLE: null - }; - for (const m in methods) { - (function(m2) { - if (methods[m2] === null) { - BufferList.prototype[m2] = function(offset, byteLength) { - return this.slice(offset, offset + byteLength)[m2](0, byteLength); + }; + var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 + }; + var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = { fs: fs2.constants }; + if (flags["fs"]) { + flags = flags["fs"]; + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 256: flags["O_NOCTTY"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] }; - } else { - BufferList.prototype[m2] = function(offset = 0) { - return this.slice(offset, offset + methods[m2])[m2](0); + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer); + }, + convertNodeCode: function(e) { + var code = e.code; + return ERRNO_CODES[code]; + }, + mount: function(mount) { + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0); + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28); + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node; + }, + getMode: function(path2) { + var stat; + try { + stat = fs2.lstatSync(path2); + if (NODEFS.isWindows) { + stat.mode = stat.mode | (stat.mode & 292) >> 2; + } + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return stat.mode; + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent; + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts); + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k; + } + } + if (!flags) { + return newFlags; + } else { + throw new FS.ErrnoError(28); + } + }, + node_ops: { + getattr: function(node) { + var path2 = NODEFS.realPath(node); + var stat; + try { + stat = fs2.lstatSync(path2); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096; + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0; + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + }; + }, + setattr: function(node, attr) { + var path2 = NODEFS.realPath(node); + try { + if (attr.mode !== void 0) { + fs2.chmodSync(path2, attr.mode); + node.mode = attr.mode; + } + if (attr.timestamp !== void 0) { + var date = new Date(attr.timestamp); + fs2.utimesSync(path2, date, date); + } + if (attr.size !== void 0) { + fs2.truncateSync(path2, attr.size); + } + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + lookup: function(parent, name) { + var path2 = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path2); + return NODEFS.createNode(parent, name, mode); + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path2 = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs2.mkdirSync(path2, node.mode); + } else { + fs2.writeFileSync(path2, "", { mode: node.mode }); + } + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return node; + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs2.renameSync(oldPath, newPath); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + oldNode.name = newName; + }, + unlink: function(parent, name) { + var path2 = PATH.join2(NODEFS.realPath(parent), name); + try { + fs2.unlinkSync(path2); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + rmdir: function(parent, name) { + var path2 = PATH.join2(NODEFS.realPath(parent), name); + try { + fs2.rmdirSync(path2); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + readdir: function(node) { + var path2 = NODEFS.realPath(node); + try { + return fs2.readdirSync(path2); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs2.symlinkSync(oldPath, newPath); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + readlink: function(node) { + var path2 = NODEFS.realPath(node); + try { + path2 = fs2.readlinkSync(path2); + path2 = NODEJS_PATH.relative( + NODEJS_PATH.resolve(node.mount.opts.root), + path2 + ); + return path2; + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + } + }, + stream_ops: { + open: function(stream) { + var path2 = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs2.openSync(path2, NODEFS.flagsForNode(stream.flags)); + } + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs2.closeSync(stream.nfd); + } + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + read: function(stream, buffer2, offset, length, position) { + if (length === 0) + return 0; + try { + return fs2.readSync( + stream.nfd, + NODEFS.bufferFrom(buffer2.buffer), + offset, + length, + position + ); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + write: function(stream, buffer2, offset, length, position) { + try { + return fs2.writeSync( + stream.nfd, + NODEFS.bufferFrom(buffer2.buffer), + offset, + length, + position + ); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs2.fstatSync(stream.nfd); + position += stat.size; + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }, + mmap: function(stream, address, length, position, prot, flags) { + if (address !== 0) { + throw new FS.ErrnoError(28); + } + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + var ptr = mmapAlloc(length); + NODEFS.stream_ops.read(stream, HEAP8, ptr, length, position); + return { ptr, allocated: true }; + }, + msync: function(stream, buffer2, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (mmapFlags & 2) { + return 0; + } + var bytesWritten = NODEFS.stream_ops.write( + stream, + buffer2, + 0, + length, + offset, + false + ); + return 0; + } + } + }; + var NODERAWFS = { + lookupPath: function(path2) { + return { path: path2, node: { mode: NODEFS.getMode(path2) } }; + }, + createStandardStreams: function() { + FS.streams[0] = { + fd: 0, + nfd: 0, + position: 0, + path: "", + flags: 0, + tty: true, + seekable: false + }; + for (var i = 1; i < 3; i++) { + FS.streams[i] = { + fd: i, + nfd: i, + position: 0, + path: "", + flags: 577, + tty: true, + seekable: false + }; + } + }, + cwd: function() { + return process.cwd(); + }, + chdir: function() { + process.chdir.apply(void 0, arguments); + }, + mknod: function(path2, mode) { + if (FS.isDir(path2)) { + fs2.mkdirSync(path2, mode); + } else { + fs2.writeFileSync(path2, "", { mode }); + } + }, + mkdir: function() { + fs2.mkdirSync.apply(void 0, arguments); + }, + symlink: function() { + fs2.symlinkSync.apply(void 0, arguments); + }, + rename: function() { + fs2.renameSync.apply(void 0, arguments); + }, + rmdir: function() { + fs2.rmdirSync.apply(void 0, arguments); + }, + readdir: function() { + fs2.readdirSync.apply(void 0, arguments); + }, + unlink: function() { + fs2.unlinkSync.apply(void 0, arguments); + }, + readlink: function() { + return fs2.readlinkSync.apply(void 0, arguments); + }, + stat: function() { + return fs2.statSync.apply(void 0, arguments); + }, + lstat: function() { + return fs2.lstatSync.apply(void 0, arguments); + }, + chmod: function() { + fs2.chmodSync.apply(void 0, arguments); + }, + fchmod: function() { + fs2.fchmodSync.apply(void 0, arguments); + }, + chown: function() { + fs2.chownSync.apply(void 0, arguments); + }, + fchown: function() { + fs2.fchownSync.apply(void 0, arguments); + }, + truncate: function() { + fs2.truncateSync.apply(void 0, arguments); + }, + ftruncate: function(fd, len) { + if (len < 0) { + throw new FS.ErrnoError(28); + } + fs2.ftruncateSync.apply(void 0, arguments); + }, + utime: function() { + fs2.utimesSync.apply(void 0, arguments); + }, + open: function(path2, flags, mode, suggestFD) { + if (typeof flags === "string") { + flags = VFS.modeStringToFlags(flags); + } + var nfd = fs2.openSync(path2, NODEFS.flagsForNode(flags), mode); + var fd = suggestFD != null ? suggestFD : FS.nextfd(nfd); + var stream = { + fd, + nfd, + position: 0, + path: path2, + flags, + seekable: true }; + FS.streams[fd] = stream; + return stream; + }, + close: function(stream) { + if (!stream.stream_ops) { + fs2.closeSync(stream.nfd); + } + FS.closeStream(stream.fd); + }, + llseek: function(stream, offset, whence) { + if (stream.stream_ops) { + return VFS.llseek(stream, offset, whence); + } + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + position += fs2.fstatSync(stream.nfd).size; + } else if (whence !== 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + stream.position = position; + return position; + }, + read: function(stream, buffer2, offset, length, position) { + if (stream.stream_ops) { + return VFS.read(stream, buffer2, offset, length, position); + } + var seeking = typeof position !== "undefined"; + if (!seeking && stream.seekable) + position = stream.position; + var bytesRead = fs2.readSync( + stream.nfd, + NODEFS.bufferFrom(buffer2.buffer), + offset, + length, + position + ); + if (!seeking) + stream.position += bytesRead; + return bytesRead; + }, + write: function(stream, buffer2, offset, length, position) { + if (stream.stream_ops) { + return VFS.write(stream, buffer2, offset, length, position); + } + if (stream.flags & +"1024") { + FS.llseek(stream, 0, +"2"); + } + var seeking = typeof position !== "undefined"; + if (!seeking && stream.seekable) + position = stream.position; + var bytesWritten = fs2.writeSync( + stream.nfd, + NODEFS.bufferFrom(buffer2.buffer), + offset, + length, + position + ); + if (!seeking) + stream.position += bytesWritten; + return bytesWritten; + }, + allocate: function() { + throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); + }, + mmap: function(stream, address, length, position, prot, flags) { + if (stream.stream_ops) { + return VFS.mmap(stream, address, length, position, prot, flags); + } + if (address !== 0) { + throw new FS.ErrnoError(28); + } + var ptr = mmapAlloc(length); + FS.read(stream, HEAP8, ptr, length, position); + return { ptr, allocated: true }; + }, + msync: function(stream, buffer2, offset, length, mmapFlags) { + if (stream.stream_ops) { + return VFS.msync(stream, buffer2, offset, length, mmapFlags); + } + if (mmapFlags & 2) { + return 0; + } + FS.write(stream, buffer2, 0, length, offset); + return 0; + }, + munmap: function() { + return 0; + }, + ioctl: function() { + throw new FS.ErrnoError(ERRNO_CODES.ENOTTY); } - })(m); - } - })(); - BufferList.prototype._isBufferList = function _isBufferList(b) { - return b instanceof BufferList || BufferList.isBufferList(b); - }; - BufferList.isBufferList = function isBufferList(b) { - return b != null && b[symbol]; - }; - module2.exports = BufferList; - } -}); - -// ../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js -var require_bl = __commonJS({ - "../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js"(exports2, module2) { - "use strict"; - var DuplexStream = require_readable().Duplex; - var inherits = require_inherits(); - var BufferList = require_BufferList2(); - function BufferListStream(callback) { - if (!(this instanceof BufferListStream)) { - return new BufferListStream(callback); - } - if (typeof callback === "function") { - this._callback = callback; - const piper = function piper2(err) { - if (this._callback) { - this._callback(err); - this._callback = null; + }; + var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { openFlags: { READ: 1, WRITE: 2 } }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + lookupPath: function(path2, opts) { + path2 = PATH_FS.resolve(FS.cwd(), path2); + opts = opts || {}; + if (!path2) + return { path: "", node: null }; + var defaults = { follow_mount: true, recurse_count: 0 }; + for (var key2 in defaults) { + if (opts[key2] === void 0) { + opts[key2] = defaults[key2]; + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32); + } + var parts = PATH.normalizeArray( + path2.split("/").filter(function(p) { + return !!p; + }), + false + ); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break; + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root; + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32); + } + } + } + } + return { path: current_path, node: current }; + }, + getPath: function(node) { + var path2; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path2) + return mount; + return mount[mount.length - 1] !== "/" ? mount + "/" + path2 : mount + path2; + } + path2 = path2 ? node.name + "/" + path2 : node.name; + node = node.parent; + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0; + } + return (parentid + hash >>> 0) % FS.nameTable.length; + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node; + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next; + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break; + } + current = current.name_next; + } + } + }, + lookupNode: function(parent, name) { + var errCode = FS.mayLookup(parent); + if (errCode) { + throw new FS.ErrnoError(errCode, parent); + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node; + } + } + return FS.lookup(parent, name); + }, + createNode: function(parent, name, mode, rdev) { + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node; + }, + destroyNode: function(node) { + FS.hashRemoveNode(node); + }, + isRoot: function(node) { + return node === node.parent; + }, + isMountpoint: function(node) { + return !!node.mounted; + }, + isFile: function(mode) { + return (mode & 61440) === 32768; + }, + isDir: function(mode) { + return (mode & 61440) === 16384; + }, + isLink: function(mode) { + return (mode & 61440) === 40960; + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192; + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576; + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096; + }, + isSocket: function(mode) { + return (mode & 49152) === 49152; + }, + flagModes: { r: 0, "r+": 2, w: 577, "w+": 578, a: 1089, "a+": 1090 }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str); + } + return flags; + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w"; + } + return perms; + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0; + } + if (perms.includes("r") && !(node.mode & 292)) { + return 2; + } else if (perms.includes("w") && !(node.mode & 146)) { + return 2; + } else if (perms.includes("x") && !(node.mode & 73)) { + return 2; + } + return 0; + }, + mayLookup: function(dir) { + var errCode = FS.nodePermissions(dir, "x"); + if (errCode) + return errCode; + if (!dir.node_ops.lookup) + return 2; + return 0; + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20; + } catch (e) { + } + return FS.nodePermissions(dir, "wx"); + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name); + } catch (e) { + return e.errno; + } + var errCode = FS.nodePermissions(dir, "wx"); + if (errCode) { + return errCode; + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54; + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10; + } + } else { + if (FS.isDir(node.mode)) { + return 31; + } + } + return 0; + }, + mayOpen: function(node, flags) { + if (!node) { + return 44; + } + if (FS.isLink(node.mode)) { + return 32; + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31; + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd; + } + } + throw new FS.ErrnoError(33); + }, + getStream: function(fd) { + return FS.streams[fd]; + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() { + }; + FS.FSStream.prototype = { + object: { + get: function() { + return this.node; + }, + set: function(val) { + this.node = val; + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1; + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0; + } + }, + isAppend: { + get: function() { + return this.flags & 1024; + } + } + }; + } + var newStream = new FS.FSStream(); + for (var p in stream) { + newStream[p] = stream[p]; + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream; + }, + closeStream: function(fd) { + FS.streams[fd] = null; + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + }, + llseek: function() { + throw new FS.ErrnoError(70); + } + }, + major: function(dev) { + return dev >> 8; + }, + minor: function(dev) { + return dev & 255; + }, + makedev: function(ma, mi) { + return ma << 8 | mi; + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { stream_ops: ops }; + }, + getDevice: function(dev) { + return FS.devices[dev]; + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts); + } + return mounts; + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false; + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + err( + "warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work" + ); + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + function doCallback(errCode) { + FS.syncFSRequests--; + return callback(errCode); + } + function done(errCode) { + if (errCode) { + if (!done.errored) { + done.errored = true; + return doCallback(errCode); + } + return; + } + if (++completed >= mounts.length) { + doCallback(null); + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null); + } + mount.type.syncfs(mount, populate, done); + }); + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10); + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + } + var mount = { + type, + opts, + mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot; + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount); + } + } + return mountRoot; + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28); + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.includes(current.mount)) { + FS.destroyNode(current); + } + current = next; + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + node.mount.mounts.splice(idx, 1); + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name); + }, + mknod: function(path2, mode, dev) { + var lookup = FS.lookupPath(path2, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path2); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28); + } + var errCode = FS.mayCreate(parent, name); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.mknod(parent, name, mode, dev); + }, + create: function(path2, mode) { + mode = mode !== void 0 ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path2, mode, 0); + }, + mkdir: function(path2, mode) { + mode = mode !== void 0 ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path2, mode, 0); + }, + mkdirTree: function(path2, mode) { + var dirs = path2.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) + continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode); + } catch (e) { + if (e.errno != 20) + throw e; + } + } + }, + mkdev: function(path2, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438; + } + mode |= 8192; + return FS.mknod(path2, mode, dev); + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44); + } + var lookup = FS.lookupPath(newpath, { parent: true }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44); + } + var newname = PATH.basename(newpath); + var errCode = FS.mayCreate(parent, newname); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.symlink(parent, newname, oldpath); + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + lookup = FS.lookupPath(old_path, { parent: true }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { parent: true }); + new_dir = lookup.node; + if (!old_dir || !new_dir) + throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75); + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative2 = PATH_FS.relative(old_path, new_dirname); + if (relative2.charAt(0) !== ".") { + throw new FS.ErrnoError(28); + } + relative2 = PATH_FS.relative(new_path, old_dirname); + if (relative2.charAt(0) !== ".") { + throw new FS.ErrnoError(55); + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) { + } + if (old_node === new_node) { + return; + } + var isdir = FS.isDir(old_node.mode); + var errCode = FS.mayDelete(old_dir, old_name, isdir); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10); + } + if (new_dir !== old_dir) { + errCode = FS.nodePermissions(old_dir, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path); + } + } catch (e) { + err( + "FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message + ); + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name); + } catch (e) { + throw e; + } finally { + FS.hashAddNode(old_node); + } + try { + if (FS.trackingDelegate["onMovePath"]) + FS.trackingDelegate["onMovePath"](old_path, new_path); + } catch (e) { + err( + "FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message + ); + } + }, + rmdir: function(path2) { + var lookup = FS.lookupPath(path2, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path2); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, true); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path2); + } + } catch (e) { + err( + "FS.trackingDelegate['willDeletePath']('" + path2 + "') threw an exception: " + e.message + ); + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) + FS.trackingDelegate["onDeletePath"](path2); + } catch (e) { + err( + "FS.trackingDelegate['onDeletePath']('" + path2 + "') threw an exception: " + e.message + ); + } + }, + readdir: function(path2) { + var lookup = FS.lookupPath(path2, { follow: true }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54); + } + return node.node_ops.readdir(node); + }, + unlink: function(path2) { + var lookup = FS.lookupPath(path2, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path2); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, false); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path2); + } + } catch (e) { + err( + "FS.trackingDelegate['willDeletePath']('" + path2 + "') threw an exception: " + e.message + ); + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) + FS.trackingDelegate["onDeletePath"](path2); + } catch (e) { + err( + "FS.trackingDelegate['onDeletePath']('" + path2 + "') threw an exception: " + e.message + ); + } + }, + readlink: function(path2) { + var lookup = FS.lookupPath(path2); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44); + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28); + } + return PATH_FS.resolve( + FS.getPath(link.parent), + link.node_ops.readlink(link) + ); + }, + stat: function(path2, dontFollow) { + var lookup = FS.lookupPath(path2, { follow: !dontFollow }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44); + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63); + } + return node.node_ops.getattr(node); + }, + lstat: function(path2) { + return FS.stat(path2, true); + }, + chmod: function(path2, mode, dontFollow) { + var node; + if (typeof path2 === "string") { + var lookup = FS.lookupPath(path2, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path2; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }); + }, + lchmod: function(path2, mode) { + FS.chmod(path2, mode, true); + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chmod(stream.node, mode); + }, + chown: function(path2, uid, gid, dontFollow) { + var node; + if (typeof path2 === "string") { + var lookup = FS.lookupPath(path2, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path2; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + node.node_ops.setattr(node, { timestamp: Date.now() }); + }, + lchown: function(path2, uid, gid) { + FS.chown(path2, uid, gid, true); + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chown(stream.node, uid, gid); + }, + truncate: function(path2, len) { + if (len < 0) { + throw new FS.ErrnoError(28); + } + var node; + if (typeof path2 === "string") { + var lookup = FS.lookupPath(path2, { follow: true }); + node = lookup.node; + } else { + node = path2; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31); + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28); + } + var errCode = FS.nodePermissions(node, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + node.node_ops.setattr(node, { size: len, timestamp: Date.now() }); + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28); + } + FS.truncate(stream.node, len); + }, + utime: function(path2, atime, mtime) { + var lookup = FS.lookupPath(path2, { follow: true }); + var node = lookup.node; + node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) }); + }, + open: function(path2, flags, mode, fd_start, fd_end) { + if (path2 === "") { + throw new FS.ErrnoError(44); + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768; + } else { + mode = 0; + } + var node; + if (typeof path2 === "object") { + node = path2; + } else { + path2 = PATH.normalize(path2); + try { + var lookup = FS.lookupPath(path2, { follow: !(flags & 131072) }); + node = lookup.node; + } catch (e) { + } + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20); + } + } else { + node = FS.mknod(path2, mode, 0); + created = true; + } + } + if (!node) { + throw new FS.ErrnoError(44); + } + if (FS.isChrdev(node.mode)) { + flags &= ~512; + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + if (!created) { + var errCode = FS.mayOpen(node, flags); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + } + if (flags & 512) { + FS.truncate(node, 0); + } + flags &= ~(128 | 512 | 131072); + var stream = FS.createStream( + { + node, + path: FS.getPath(node), + flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, + fd_start, + fd_end + ); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) + FS.readFiles = {}; + if (!(path2 in FS.readFiles)) { + FS.readFiles[path2] = 1; + err("FS.trackingDelegate error on read file: " + path2); + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ; + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE; + } + FS.trackingDelegate["onOpenFile"](path2, trackingFlags); + } + } catch (e) { + err( + "FS.trackingDelegate['onOpenFile']('" + path2 + "', flags) threw an exception: " + e.message + ); + } + return stream; + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (stream.getdents) + stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream); + } + } catch (e) { + throw e; + } finally { + FS.closeStream(stream.fd); + } + stream.fd = null; + }, + isClosed: function(stream) { + return stream.fd === null; + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70); + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28); + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position; + }, + read: function(stream, buffer2, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesRead = stream.stream_ops.read( + stream, + buffer2, + offset, + length, + position + ); + if (!seeking) + stream.position += bytesRead; + return bytesRead; + }, + write: function(stream, buffer2, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28); + } + if (stream.seekable && stream.flags & 1024) { + FS.llseek(stream, 0, 2); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesWritten = stream.stream_ops.write( + stream, + buffer2, + offset, + length, + position, + canOwn + ); + if (!seeking) + stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) + FS.trackingDelegate["onWriteToFile"](stream.path); + } catch (e) { + err( + "FS.trackingDelegate['onWriteToFile']('" + stream.path + "') threw an exception: " + e.message + ); + } + return bytesWritten; + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138); + } + stream.stream_ops.allocate(stream, offset, length); + }, + mmap: function(stream, address, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2); + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43); + } + return stream.stream_ops.mmap( + stream, + address, + length, + position, + prot, + flags + ); + }, + msync: function(stream, buffer2, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0; + } + return stream.stream_ops.msync( + stream, + buffer2, + offset, + length, + mmapFlags + ); + }, + munmap: function(stream) { + return 0; + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59); + } + return stream.stream_ops.ioctl(stream, cmd, arg); + }, + readFile: function(path2, opts) { + opts = opts || {}; + opts.flags = opts.flags || 0; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); + } + var ret; + var stream = FS.open(path2, opts.flags); + var stat = FS.stat(path2); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0); + } else if (opts.encoding === "binary") { + ret = buf; + } + FS.close(stream); + return ret; + }, + writeFile: function(path2, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || 577; + var stream = FS.open(path2, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, void 0, opts.canOwn); + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, void 0, opts.canOwn); + } else { + throw new Error("Unsupported data type"); + } + FS.close(stream); + }, + cwd: function() { + return FS.currentPath; + }, + chdir: function(path2) { + var lookup = FS.lookupPath(path2, { follow: true }); + if (lookup.node === null) { + throw new FS.ErrnoError(44); + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54); + } + var errCode = FS.nodePermissions(lookup.node, "x"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + FS.currentPath = lookup.path; + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user"); + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0; + }, + write: function(stream, buffer2, offset, length, pos) { + return length; + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device = getRandomDevice(); + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp"); + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + var proc_self = FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount( + { + mount: function() { + var node = FS.createNode(proc_self, "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) + throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { mountpoint: "fake" }, + node_ops: { + readlink: function() { + return stream.path; + } + } + }; + ret.parent = ret; + return ret; + } + }; + return node; + } + }, + {}, + "/proc/self/fd" + ); + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]); + } else { + FS.symlink("/dev/tty", "/dev/stdin"); + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]); + } else { + FS.symlink("/dev/tty", "/dev/stdout"); + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]); + } else { + FS.symlink("/dev/tty1", "/dev/stderr"); + } + var stdin = FS.open("/dev/stdin", 0); + var stdout = FS.open("/dev/stdout", 1); + var stderr = FS.open("/dev/stderr", 1); + }, + ensureErrnoError: function() { + if (FS.ErrnoError) + return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno2) { + this.errno = errno2; + }; + this.setErrno(errno); + this.message = "FS error"; + }; + FS.ErrnoError.prototype = new Error(); + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = ""; + }); + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { MEMFS, NODEFS }; + }, + init: function(input, output, error) { + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams(); + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) + fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue; + } + FS.close(stream); + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) + mode |= 292 | 73; + if (canWrite) + mode |= 146; + return mode; + }, + findObject: function(path2, dontResolveLastLink) { + var ret = FS.analyzePath(path2, dontResolveLastLink); + if (ret.exists) { + return ret.object; + } else { + return null; + } + }, + analyzePath: function(path2, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path2, { follow: !dontResolveLastLink }); + path2 = lookup.path; + } catch (e) { + } + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path2, { parent: true }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path2); + lookup = FS.lookupPath(path2, { follow: !dontResolveLastLink }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/"; + } catch (e) { + ret.error = e.errno; + } + return ret; + }, + createPath: function(parent, path2, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path2.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) + continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current); + } catch (e) { + } + parent = current; + } + return current; + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path2 = PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path2, mode); + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path2 = name ? PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ) : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path2, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) + arr[i] = data.charCodeAt(i); + data = arr; + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, 577); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode); + } + return node; + }, + createDevice: function(parent, name, input, output) { + var path2 = PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) + FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false; + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10); + } + }, + read: function(stream, buffer2, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result2; + try { + result2 = input(); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (result2 === void 0 && bytesRead === 0) { + throw new FS.ErrnoError(6); + } + if (result2 === null || result2 === void 0) + break; + bytesRead++; + buffer2[offset + i] = result2; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }, + write: function(stream, buffer2, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer2[offset + i]); + } catch (e) { + throw new FS.ErrnoError(29); + } + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }); + return FS.mkdev(path2, mode, dev); + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) + return true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error( + "Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread." + ); + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length; + } catch (e) { + throw new FS.ErrnoError(29); + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest."); + } + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = []; + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return void 0; + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset]; + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter; + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest(); + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) + throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) + chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) + throw new Error( + "invalid range (" + from + ", " + to + ") or no bytes requested!" + ); + if (to > datalength - 1) + throw new Error( + "only " + datalength + " bytes available! programmer error!" + ); + var xhr2 = new XMLHttpRequest(); + xhr2.open("GET", url, false); + if (datalength !== chunkSize) + xhr2.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") + xhr2.responseType = "arraybuffer"; + if (xhr2.overrideMimeType) { + xhr2.overrideMimeType("text/plain; charset=x-user-defined"); + } + xhr2.send(null); + if (!(xhr2.status >= 200 && xhr2.status < 300 || xhr2.status === 304)) + throw new Error( + "Couldn't load " + url + ". Status: " + xhr2.status + ); + if (xhr2.response !== void 0) { + return new Uint8Array(xhr2.response || []); + } else { + return intArrayFromString(xhr2.responseText || "", true); + } + }; + var lazyArray2 = this; + lazyArray2.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray2.chunks[chunkNum] === "undefined") { + lazyArray2.chunks[chunkNum] = doXHR(start, end); + } + if (typeof lazyArray2.chunks[chunkNum] === "undefined") + throw new Error("doXHR failed!"); + return lazyArray2.chunks[chunkNum]; + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + out( + "LazyFiles on gzip forces download of the whole file when length is accessed" + ); + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true; + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) + throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array(); + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength(); + } + return this._length; + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength(); + } + return this._chunkSize; + } + } + }); + var properties = { isDevice: false, contents: lazyArray }; + } else { + var properties = { isDevice: false, url }; + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents; + } else if (properties.url) { + node.contents = null; + node.url = properties.url; + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length; + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key2) { + var fn2 = node.stream_ops[key2]; + stream_ops[key2] = function forceLoadLazyFile() { + FS.forceLoadFile(node); + return fn2.apply(null, arguments); + }; + }); + stream_ops.read = function stream_ops_read(stream, buffer2, offset, length, position) { + FS.forceLoadFile(node); + var contents = stream.node.contents; + if (position >= contents.length) + return 0; + var size = Math.min(contents.length - position, length); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer2[offset + i] = contents[position + i]; + } + } else { + for (var i = 0; i < size; i++) { + buffer2[offset + i] = contents.get(position + i); + } + } + return size; + }; + node.stream_ops = stream_ops; + return node; + }, + createPreloadedFile: function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + function processData(byteArray) { + function finish(byteArray2) { + if (preFinish) + preFinish(); + if (!dontCreateFile) { + FS.createDataFile( + parent, + name, + byteArray2, + canRead, + canWrite, + canOwn + ); + } + if (onload) + onload(); + removeRunDependency(dep); + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) + return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) + onerror(); + removeRunDependency(dep); + }); + handled = true; + } + }); + if (!handled) + finish(byteArray); + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad( + url, + function(byteArray) { + processData(byteArray); + }, + onerror + ); + } else { + processData(url); + } + }, + indexedDB: function() { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname; + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() { + }; + onerror = onerror || function() { + }; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + out("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME); + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) + onload(); + else + onerror(); + } + paths.forEach(function(path2) { + var putRequest = files.put( + FS.analyzePath(path2).object.contents, + path2 + ); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) + finish(); + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) + finish(); + }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() { + }; + onerror = onerror || function() { + }; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly"); + } catch (e) { + onerror(e); + return; + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, fail = 0, total = paths.length; + function finish() { + if (fail == 0) + onload(); + else + onerror(); + } + paths.forEach(function(path2) { + var getRequest = files.get(path2); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path2).exists) { + FS.unlink(path2); + } + FS.createDataFile( + PATH.dirname(path2), + PATH.basename(path2), + getRequest.result, + true, + true, + true + ); + ok++; + if (ok + fail == total) + finish(); + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) + finish(); + }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + } + }; + var SYSCALLS = { + mappings: {}, + DEFAULT_POLLMASK: 5, + umask: 511, + calculateAt: function(dirfd, path2, allowEmpty) { + if (path2[0] === "/") { + return path2; + } + var dir; + if (dirfd === -100) { + dir = FS.cwd(); + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) + throw new FS.ErrnoError(8); + dir = dirstream.path; + } + if (path2.length == 0) { + if (!allowEmpty) { + throw new FS.ErrnoError(44); + } + return dir; + } + return PATH.join2(dir, path2); + }, + doStat: function(func, path2, buf) { + try { + var stat = func(path2); + } catch (e) { + if (e && e.node && PATH.normalize(path2) !== PATH.normalize(FS.getPath(e.node))) { + return -54; + } + throw e; + } + LE_HEAP_STORE_I32((buf >> 2) * 4, stat.dev); + LE_HEAP_STORE_I32((buf + 4 >> 2) * 4, 0); + LE_HEAP_STORE_I32((buf + 8 >> 2) * 4, stat.ino); + LE_HEAP_STORE_I32((buf + 12 >> 2) * 4, stat.mode); + LE_HEAP_STORE_I32((buf + 16 >> 2) * 4, stat.nlink); + LE_HEAP_STORE_I32((buf + 20 >> 2) * 4, stat.uid); + LE_HEAP_STORE_I32((buf + 24 >> 2) * 4, stat.gid); + LE_HEAP_STORE_I32((buf + 28 >> 2) * 4, stat.rdev); + LE_HEAP_STORE_I32((buf + 32 >> 2) * 4, 0); + tempI64 = [ + stat.size >>> 0, + (tempDouble = stat.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil( + (tempDouble - +(~~tempDouble >>> 0)) / 4294967296 + ) >>> 0 : 0) + ], LE_HEAP_STORE_I32((buf + 40 >> 2) * 4, tempI64[0]), LE_HEAP_STORE_I32((buf + 44 >> 2) * 4, tempI64[1]); + LE_HEAP_STORE_I32((buf + 48 >> 2) * 4, 4096); + LE_HEAP_STORE_I32((buf + 52 >> 2) * 4, stat.blocks); + LE_HEAP_STORE_I32( + (buf + 56 >> 2) * 4, + stat.atime.getTime() / 1e3 | 0 + ); + LE_HEAP_STORE_I32((buf + 60 >> 2) * 4, 0); + LE_HEAP_STORE_I32( + (buf + 64 >> 2) * 4, + stat.mtime.getTime() / 1e3 | 0 + ); + LE_HEAP_STORE_I32((buf + 68 >> 2) * 4, 0); + LE_HEAP_STORE_I32( + (buf + 72 >> 2) * 4, + stat.ctime.getTime() / 1e3 | 0 + ); + LE_HEAP_STORE_I32((buf + 76 >> 2) * 4, 0); + tempI64 = [ + stat.ino >>> 0, + (tempDouble = stat.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil( + (tempDouble - +(~~tempDouble >>> 0)) / 4294967296 + ) >>> 0 : 0) + ], LE_HEAP_STORE_I32((buf + 80 >> 2) * 4, tempI64[0]), LE_HEAP_STORE_I32((buf + 84 >> 2) * 4, tempI64[1]); + return 0; + }, + doMsync: function(addr, stream, len, flags, offset) { + var buffer2 = HEAPU8.slice(addr, addr + len); + FS.msync(stream, buffer2, offset, len, flags); + }, + doMkdir: function(path2, mode) { + path2 = PATH.normalize(path2); + if (path2[path2.length - 1] === "/") + path2 = path2.substr(0, path2.length - 1); + FS.mkdir(path2, mode, 0); + return 0; + }, + doMknod: function(path2, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28; + } + FS.mknod(path2, mode, dev); + return 0; + }, + doReadlink: function(path2, buf, bufsize) { + if (bufsize <= 0) + return -28; + var ret = FS.readlink(path2); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len; + }, + doAccess: function(path2, amode) { + if (amode & ~7) { + return -28; + } + var node; + var lookup = FS.lookupPath(path2, { follow: true }); + node = lookup.node; + if (!node) { + return -44; + } + var perms = ""; + if (amode & 4) + perms += "r"; + if (amode & 2) + perms += "w"; + if (amode & 1) + perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2; + } + return 0; + }, + doDup: function(path2, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) + FS.close(suggest); + return FS.open(path2, flags, 0, suggestFD, suggestFD).fd; + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = LE_HEAP_LOAD_I32((iov + i * 8 >> 2) * 4); + var len = LE_HEAP_LOAD_I32((iov + (i * 8 + 4) >> 2) * 4); + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) + return -1; + ret += curr; + if (curr < len) + break; + } + return ret; + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = LE_HEAP_LOAD_I32((iov + i * 8 >> 2) * 4); + var len = LE_HEAP_LOAD_I32((iov + (i * 8 + 4) >> 2) * 4); + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) + return -1; + ret += curr; + } + return ret; + }, + varargs: void 0, + get: function() { + SYSCALLS.varargs += 4; + var ret = LE_HEAP_LOAD_I32((SYSCALLS.varargs - 4 >> 2) * 4); + return ret; + }, + getStr: function(ptr) { + var ret = UTF8ToString(ptr); + return ret; + }, + getStreamFromFD: function(fd) { + var stream = FS.getStream(fd); + if (!stream) + throw new FS.ErrnoError(8); + return stream; + }, + get64: function(low, high) { + return low; + } + }; + function ___sys_chmod(path2, mode) { + try { + path2 = SYSCALLS.getStr(path2); + FS.chmod(path2, mode); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; } - }.bind(this); - this.on("pipe", function onPipe(src) { - src.on("error", piper); - }); - this.on("unpipe", function onUnpipe(src) { - src.removeListener("error", piper); - }); - callback = null; - } - BufferList._init.call(this, callback); - DuplexStream.call(this); - } - inherits(BufferListStream, DuplexStream); - Object.assign(BufferListStream.prototype, BufferList.prototype); - BufferListStream.prototype._new = function _new(callback) { - return new BufferListStream(callback); - }; - BufferListStream.prototype._write = function _write(buf, encoding, callback) { - this._appendBuffer(buf); - if (typeof callback === "function") { - callback(); - } - }; - BufferListStream.prototype._read = function _read(size) { - if (!this.length) { - return this.push(null); - } - size = Math.min(size, this.length); - this.push(this.slice(0, size)); - this.consume(size); - }; - BufferListStream.prototype.end = function end(chunk) { - DuplexStream.prototype.end.call(this, chunk); - if (this._callback) { - this._callback(null, this.slice()); - this._callback = null; - } - }; - BufferListStream.prototype._destroy = function _destroy(err, cb) { - this._bufs.length = 0; - this.length = 0; - cb(err); - }; - BufferListStream.prototype._isBufferList = function _isBufferList(b) { - return b instanceof BufferListStream || b instanceof BufferList || BufferListStream.isBufferList(b); - }; - BufferListStream.isBufferList = BufferList.isBufferList; - module2.exports = BufferListStream; - module2.exports.BufferListStream = BufferListStream; - module2.exports.BufferList = BufferList; - } -}); - -// ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js -var require_headers = __commonJS({ - "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js"(exports2) { - var alloc = Buffer.alloc; - var ZEROS = "0000000000000000000"; - var SEVENS = "7777777777777777777"; - var ZERO_OFFSET = "0".charCodeAt(0); - var USTAR_MAGIC = Buffer.from("ustar\0", "binary"); - var USTAR_VER = Buffer.from("00", "binary"); - var GNU_MAGIC = Buffer.from("ustar ", "binary"); - var GNU_VER = Buffer.from(" \0", "binary"); - var MASK = parseInt("7777", 8); - var MAGIC_OFFSET = 257; - var VERSION_OFFSET = 263; - var clamp = function(index, len, defaultValue) { - if (typeof index !== "number") - return defaultValue; - index = ~~index; - if (index >= len) - return len; - if (index >= 0) - return index; - index += len; - if (index >= 0) - return index; - return 0; - }; - var toType = function(flag) { - switch (flag) { - case 0: - return "file"; - case 1: - return "link"; - case 2: - return "symlink"; - case 3: - return "character-device"; - case 4: - return "block-device"; - case 5: - return "directory"; - case 6: - return "fifo"; - case 7: - return "contiguous-file"; - case 72: - return "pax-header"; - case 55: - return "pax-global-header"; - case 27: - return "gnu-long-link-path"; - case 28: - case 30: - return "gnu-long-path"; - } - return null; - }; - var toTypeflag = function(flag) { - switch (flag) { - case "file": - return 0; - case "link": - return 1; - case "symlink": - return 2; - case "character-device": - return 3; - case "block-device": - return 4; - case "directory": - return 5; - case "fifo": - return 6; - case "contiguous-file": - return 7; - case "pax-header": - return 72; - } - return 0; - }; - var indexOf = function(block, num, offset, end) { - for (; offset < end; offset++) { - if (block[offset] === num) - return offset; - } - return end; - }; - var cksum = function(block) { - var sum = 8 * 32; - for (var i = 0; i < 148; i++) - sum += block[i]; - for (var j = 156; j < 512; j++) - sum += block[j]; - return sum; - }; - var encodeOct = function(val, n) { - val = val.toString(8); - if (val.length > n) - return SEVENS.slice(0, n) + " "; - else - return ZEROS.slice(0, n - val.length) + val + " "; - }; - function parse256(buf) { - var positive; - if (buf[0] === 128) - positive = true; - else if (buf[0] === 255) - positive = false; - else - return null; - var tuple = []; - for (var i = buf.length - 1; i > 0; i--) { - var byte = buf[i]; - if (positive) - tuple.push(byte); - else - tuple.push(255 - byte); - } - var sum = 0; - var l = tuple.length; - for (i = 0; i < l; i++) { - sum += tuple[i] * Math.pow(256, i); - } - return positive ? sum : -1 * sum; - } - var decodeOct = function(val, offset, length) { - val = val.slice(offset, offset + length); - offset = 0; - if (val[offset] & 128) { - return parse256(val); - } else { - while (offset < val.length && val[offset] === 32) - offset++; - var end = clamp(indexOf(val, 32, offset, val.length), val.length, val.length); - while (offset < end && val[offset] === 0) - offset++; - if (end === offset) - return 0; - return parseInt(val.slice(offset, end).toString(), 8); - } - }; - var decodeStr = function(val, offset, length, encoding) { - return val.slice(offset, indexOf(val, 0, offset, offset + length)).toString(encoding); - }; - var addLength = function(str) { - var len = Buffer.byteLength(str); - var digits = Math.floor(Math.log(len) / Math.log(10)) + 1; - if (len + digits >= Math.pow(10, digits)) - digits++; - return len + digits + str; - }; - exports2.decodeLongPath = function(buf, encoding) { - return decodeStr(buf, 0, buf.length, encoding); - }; - exports2.encodePax = function(opts) { - var result = ""; - if (opts.name) - result += addLength(" path=" + opts.name + "\n"); - if (opts.linkname) - result += addLength(" linkpath=" + opts.linkname + "\n"); - var pax = opts.pax; - if (pax) { - for (var key in pax) { - result += addLength(" " + key + "=" + pax[key] + "\n"); - } - } - return Buffer.from(result); - }; - exports2.decodePax = function(buf) { - var result = {}; - while (buf.length) { - var i = 0; - while (i < buf.length && buf[i] !== 32) - i++; - var len = parseInt(buf.slice(0, i).toString(), 10); - if (!len) - return result; - var b = buf.slice(i + 1, len - 1).toString(); - var keyIndex = b.indexOf("="); - if (keyIndex === -1) - return result; - result[b.slice(0, keyIndex)] = b.slice(keyIndex + 1); - buf = buf.slice(len); - } - return result; - }; - exports2.encode = function(opts) { - var buf = alloc(512); - var name = opts.name; - var prefix = ""; - if (opts.typeflag === 5 && name[name.length - 1] !== "/") - name += "/"; - if (Buffer.byteLength(name) !== name.length) - return null; - while (Buffer.byteLength(name) > 100) { - var i = name.indexOf("/"); - if (i === -1) - return null; - prefix += prefix ? "/" + name.slice(0, i) : name.slice(0, i); - name = name.slice(i + 1); - } - if (Buffer.byteLength(name) > 100 || Buffer.byteLength(prefix) > 155) - return null; - if (opts.linkname && Buffer.byteLength(opts.linkname) > 100) - return null; - buf.write(name); - buf.write(encodeOct(opts.mode & MASK, 6), 100); - buf.write(encodeOct(opts.uid, 6), 108); - buf.write(encodeOct(opts.gid, 6), 116); - buf.write(encodeOct(opts.size, 11), 124); - buf.write(encodeOct(opts.mtime.getTime() / 1e3 | 0, 11), 136); - buf[156] = ZERO_OFFSET + toTypeflag(opts.type); - if (opts.linkname) - buf.write(opts.linkname, 157); - USTAR_MAGIC.copy(buf, MAGIC_OFFSET); - USTAR_VER.copy(buf, VERSION_OFFSET); - if (opts.uname) - buf.write(opts.uname, 265); - if (opts.gname) - buf.write(opts.gname, 297); - buf.write(encodeOct(opts.devmajor || 0, 6), 329); - buf.write(encodeOct(opts.devminor || 0, 6), 337); - if (prefix) - buf.write(prefix, 345); - buf.write(encodeOct(cksum(buf), 6), 148); - return buf; - }; - exports2.decode = function(buf, filenameEncoding, allowUnknownFormat) { - var typeflag = buf[156] === 0 ? 0 : buf[156] - ZERO_OFFSET; - var name = decodeStr(buf, 0, 100, filenameEncoding); - var mode = decodeOct(buf, 100, 8); - var uid = decodeOct(buf, 108, 8); - var gid = decodeOct(buf, 116, 8); - var size = decodeOct(buf, 124, 12); - var mtime = decodeOct(buf, 136, 12); - var type = toType(typeflag); - var linkname = buf[157] === 0 ? null : decodeStr(buf, 157, 100, filenameEncoding); - var uname = decodeStr(buf, 265, 32); - var gname = decodeStr(buf, 297, 32); - var devmajor = decodeOct(buf, 329, 8); - var devminor = decodeOct(buf, 337, 8); - var c = cksum(buf); - if (c === 8 * 32) - return null; - if (c !== decodeOct(buf, 148, 8)) - throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?"); - if (USTAR_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0) { - if (buf[345]) - name = decodeStr(buf, 345, 155, filenameEncoding) + "/" + name; - } else if (GNU_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0 && GNU_VER.compare(buf, VERSION_OFFSET, VERSION_OFFSET + 2) === 0) { - } else { - if (!allowUnknownFormat) { - throw new Error("Invalid tar header: unknown format."); } - } - if (typeflag === 0 && name && name[name.length - 1] === "/") - typeflag = 5; - return { - name, - mode, - uid, - gid, - size, - mtime: new Date(1e3 * mtime), - type, - linkname, - uname, - gname, - devmajor, - devminor - }; - }; - } -}); - -// ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js -var require_extract = __commonJS({ - "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js"(exports2, module2) { - var util = require("util"); - var bl = require_bl(); - var headers = require_headers(); - var Writable = require_readable().Writable; - var PassThrough = require_readable().PassThrough; - var noop = function() { - }; - var overflow = function(size) { - size &= 511; - return size && 512 - size; - }; - var emptyStream = function(self2, offset) { - var s = new Source(self2, offset); - s.end(); - return s; - }; - var mixinPax = function(header, pax) { - if (pax.path) - header.name = pax.path; - if (pax.linkpath) - header.linkname = pax.linkpath; - if (pax.size) - header.size = parseInt(pax.size, 10); - header.pax = pax; - return header; - }; - var Source = function(self2, offset) { - this._parent = self2; - this.offset = offset; - PassThrough.call(this, { autoDestroy: false }); - }; - util.inherits(Source, PassThrough); - Source.prototype.destroy = function(err) { - this._parent.destroy(err); - }; - var Extract = function(opts) { - if (!(this instanceof Extract)) - return new Extract(opts); - Writable.call(this, opts); - opts = opts || {}; - this._offset = 0; - this._buffer = bl(); - this._missing = 0; - this._partial = false; - this._onparse = noop; - this._header = null; - this._stream = null; - this._overflow = null; - this._cb = null; - this._locked = false; - this._destroyed = false; - this._pax = null; - this._paxGlobal = null; - this._gnuLongPath = null; - this._gnuLongLinkPath = null; - var self2 = this; - var b = self2._buffer; - var oncontinue = function() { - self2._continue(); - }; - var onunlock = function(err) { - self2._locked = false; - if (err) - return self2.destroy(err); - if (!self2._stream) - oncontinue(); - }; - var onstreamend = function() { - self2._stream = null; - var drain = overflow(self2._header.size); - if (drain) - self2._parse(drain, ondrain); - else - self2._parse(512, onheader); - if (!self2._locked) - oncontinue(); - }; - var ondrain = function() { - self2._buffer.consume(overflow(self2._header.size)); - self2._parse(512, onheader); - oncontinue(); - }; - var onpaxglobalheader = function() { - var size = self2._header.size; - self2._paxGlobal = headers.decodePax(b.slice(0, size)); - b.consume(size); - onstreamend(); - }; - var onpaxheader = function() { - var size = self2._header.size; - self2._pax = headers.decodePax(b.slice(0, size)); - if (self2._paxGlobal) - self2._pax = Object.assign({}, self2._paxGlobal, self2._pax); - b.consume(size); - onstreamend(); - }; - var ongnulongpath = function() { - var size = self2._header.size; - this._gnuLongPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); - b.consume(size); - onstreamend(); - }; - var ongnulonglinkpath = function() { - var size = self2._header.size; - this._gnuLongLinkPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); - b.consume(size); - onstreamend(); - }; - var onheader = function() { - var offset = self2._offset; - var header; - try { - header = self2._header = headers.decode(b.slice(0, 512), opts.filenameEncoding, opts.allowUnknownFormat); - } catch (err) { - self2.emit("error", err); + function setErrNo(value) { + LE_HEAP_STORE_I32((___errno_location() >> 2) * 4, value); + return value; } - b.consume(512); - if (!header) { - self2._parse(512, onheader); - oncontinue(); - return; + function ___sys_fcntl64(fd, cmd, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28; + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd; + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0; + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + LE_HEAP_STORE_I16((arg + offset >> 1) * 2, 2); + return 0; + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + setErrNo(28); + return -1; + default: { + return -28; + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (header.type === "gnu-long-path") { - self2._parse(header.size, ongnulongpath); - oncontinue(); - return; + function ___sys_fstat64(fd, buf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + return SYSCALLS.doStat(FS.stat, stream.path, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (header.type === "gnu-long-link-path") { - self2._parse(header.size, ongnulonglinkpath); - oncontinue(); - return; + function ___sys_ioctl(fd, op, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (op) { + case 21509: + case 21505: { + if (!stream.tty) + return -59; + return 0; + } + case 21510: + case 21511: + case 21512: + case 21506: + case 21507: + case 21508: { + if (!stream.tty) + return -59; + return 0; + } + case 21519: { + if (!stream.tty) + return -59; + var argp = SYSCALLS.get(); + LE_HEAP_STORE_I32((argp >> 2) * 4, 0); + return 0; + } + case 21520: { + if (!stream.tty) + return -59; + return -28; + } + case 21531: { + var argp = SYSCALLS.get(); + return FS.ioctl(stream, op, argp); + } + case 21523: { + if (!stream.tty) + return -59; + return 0; + } + case 21524: { + if (!stream.tty) + return -59; + return 0; + } + default: + abort("bad ioctl syscall " + op); + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (header.type === "pax-global-header") { - self2._parse(header.size, onpaxglobalheader); - oncontinue(); - return; + function ___sys_open(path2, flags, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(path2); + var mode = varargs ? SYSCALLS.get() : 0; + var stream = FS.open(pathname, flags, mode); + return stream.fd; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (header.type === "pax-header") { - self2._parse(header.size, onpaxheader); - oncontinue(); - return; + function ___sys_rename(old_path, new_path) { + try { + old_path = SYSCALLS.getStr(old_path); + new_path = SYSCALLS.getStr(new_path); + FS.rename(old_path, new_path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (self2._gnuLongPath) { - header.name = self2._gnuLongPath; - self2._gnuLongPath = null; + function ___sys_rmdir(path2) { + try { + path2 = SYSCALLS.getStr(path2); + FS.rmdir(path2); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (self2._gnuLongLinkPath) { - header.linkname = self2._gnuLongLinkPath; - self2._gnuLongLinkPath = null; + function ___sys_stat64(path2, buf) { + try { + path2 = SYSCALLS.getStr(path2); + return SYSCALLS.doStat(FS.stat, path2, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - if (self2._pax) { - self2._header = header = mixinPax(header, self2._pax); - self2._pax = null; + function ___sys_unlink(path2) { + try { + path2 = SYSCALLS.getStr(path2); + FS.unlink(path2); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return -e.errno; + } } - self2._locked = true; - if (!header.size || header.type === "directory") { - self2._parse(512, onheader); - self2.emit("entry", header, emptyStream(self2, offset), onunlock); - return; + function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.copyWithin(dest, src, src + num); } - self2._stream = new Source(self2, offset); - self2.emit("entry", header, self2._stream, onunlock); - self2._parse(header.size, onstreamend); - oncontinue(); - }; - this._onheader = onheader; - this._parse(512, onheader); - }; - util.inherits(Extract, Writable); - Extract.prototype.destroy = function(err) { - if (this._destroyed) - return; - this._destroyed = true; - if (err) - this.emit("error", err); - this.emit("close"); - if (this._stream) - this._stream.emit("close"); - }; - Extract.prototype._parse = function(size, onparse) { - if (this._destroyed) - return; - this._offset += size; - this._missing = size; - if (onparse === this._onheader) - this._partial = false; - this._onparse = onparse; - }; - Extract.prototype._continue = function() { - if (this._destroyed) - return; - var cb = this._cb; - this._cb = noop; - if (this._overflow) - this._write(this._overflow, void 0, cb); - else - cb(); - }; - Extract.prototype._write = function(data, enc, cb) { - if (this._destroyed) - return; - var s = this._stream; - var b = this._buffer; - var missing = this._missing; - if (data.length) - this._partial = true; - if (data.length < missing) { - this._missing -= data.length; - this._overflow = null; - if (s) - return s.write(data, cb); - b.append(data); - return cb(); - } - this._cb = cb; - this._missing = 0; - var overflow2 = null; - if (data.length > missing) { - overflow2 = data.slice(missing); - data = data.slice(0, missing); - } - if (s) - s.end(data); - else - b.append(data); - this._overflow = overflow2; - this._onparse(); - }; - Extract.prototype._final = function(cb) { - if (this._partial) - return this.destroy(new Error("Unexpected end of data")); - cb(); - }; - module2.exports = Extract; - } -}); - -// ../../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js -var require_fs_constants = __commonJS({ - "../../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js"(exports2, module2) { - module2.exports = require("fs").constants || require("constants"); - } -}); - -// ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js -var require_pack = __commonJS({ - "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js"(exports2, module2) { - var constants = require_fs_constants(); - var eos = require_end_of_stream2(); - var inherits = require_inherits(); - var alloc = Buffer.alloc; - var Readable = require_readable().Readable; - var Writable = require_readable().Writable; - var StringDecoder = require("string_decoder").StringDecoder; - var headers = require_headers(); - var DMODE = parseInt("755", 8); - var FMODE = parseInt("644", 8); - var END_OF_TAR = alloc(1024); - var noop = function() { - }; - var overflow = function(self2, size) { - size &= 511; - if (size) - self2.push(END_OF_TAR.slice(0, 512 - size)); - }; - function modeToType(mode) { - switch (mode & constants.S_IFMT) { - case constants.S_IFBLK: - return "block-device"; - case constants.S_IFCHR: - return "character-device"; - case constants.S_IFDIR: - return "directory"; - case constants.S_IFIFO: - return "fifo"; - case constants.S_IFLNK: - return "symlink"; - } - return "file"; - } - var Sink = function(to) { - Writable.call(this); - this.written = 0; - this._to = to; - this._destroyed = false; - }; - inherits(Sink, Writable); - Sink.prototype._write = function(data, enc, cb) { - this.written += data.length; - if (this._to.push(data)) - return cb(); - this._to._drain = cb; - }; - Sink.prototype.destroy = function() { - if (this._destroyed) - return; - this._destroyed = true; - this.emit("close"); - }; - var LinkSink = function() { - Writable.call(this); - this.linkname = ""; - this._decoder = new StringDecoder("utf-8"); - this._destroyed = false; - }; - inherits(LinkSink, Writable); - LinkSink.prototype._write = function(data, enc, cb) { - this.linkname += this._decoder.write(data); - cb(); - }; - LinkSink.prototype.destroy = function() { - if (this._destroyed) - return; - this._destroyed = true; - this.emit("close"); - }; - var Void = function() { - Writable.call(this); - this._destroyed = false; - }; - inherits(Void, Writable); - Void.prototype._write = function(data, enc, cb) { - cb(new Error("No body allowed for this entry")); - }; - Void.prototype.destroy = function() { - if (this._destroyed) - return; - this._destroyed = true; - this.emit("close"); - }; - var Pack = function(opts) { - if (!(this instanceof Pack)) - return new Pack(opts); - Readable.call(this, opts); - this._drain = noop; - this._finalized = false; - this._finalizing = false; - this._destroyed = false; - this._stream = null; - }; - inherits(Pack, Readable); - Pack.prototype.entry = function(header, buffer, callback) { - if (this._stream) - throw new Error("already piping an entry"); - if (this._finalized || this._destroyed) - return; - if (typeof buffer === "function") { - callback = buffer; - buffer = null; - } - if (!callback) - callback = noop; - var self2 = this; - if (!header.size || header.type === "symlink") - header.size = 0; - if (!header.type) - header.type = modeToType(header.mode); - if (!header.mode) - header.mode = header.type === "directory" ? DMODE : FMODE; - if (!header.uid) - header.uid = 0; - if (!header.gid) - header.gid = 0; - if (!header.mtime) - header.mtime = new Date(); - if (typeof buffer === "string") - buffer = Buffer.from(buffer); - if (Buffer.isBuffer(buffer)) { - header.size = buffer.length; - this._encode(header); - var ok = this.push(buffer); - overflow(self2, header.size); - if (ok) - process.nextTick(callback); - else - this._drain = callback; - return new Void(); - } - if (header.type === "symlink" && !header.linkname) { - var linkSink = new LinkSink(); - eos(linkSink, function(err) { - if (err) { - self2.destroy(); - return callback(err); + function emscripten_realloc_buffer(size) { + try { + wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16); + updateGlobalBufferAndViews(wasmMemory.buffer); + return 1; + } catch (e) { + } + } + function _emscripten_resize_heap(requestedSize) { + var oldSize = HEAPU8.length; + requestedSize = requestedSize >>> 0; + var maxHeapSize = 2147483648; + if (requestedSize > maxHeapSize) { + return false; + } + for (var cutDown = 1; cutDown <= 4; cutDown *= 2) { + var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); + overGrownHeapSize = Math.min( + overGrownHeapSize, + requestedSize + 100663296 + ); + var newSize = Math.min( + maxHeapSize, + alignUp(Math.max(requestedSize, overGrownHeapSize), 65536) + ); + var replacement = emscripten_realloc_buffer(newSize); + if (replacement) { + return true; + } + } + return false; + } + function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return e.errno; + } + } + function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty ? 2 : FS.isDir(stream.mode) ? 3 : FS.isLink(stream.mode) ? 7 : 4; + HEAP8[pbuf >> 0] = type; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return e.errno; + } + } + function _fd_read(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doReadv(stream, iov, iovcnt); + LE_HEAP_STORE_I32((pnum >> 2) * 4, num); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return e.errno; + } + } + function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61; + } + FS.llseek(stream, offset, whence); + tempI64 = [ + stream.position >>> 0, + (tempDouble = stream.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math.ceil( + (tempDouble - +(~~tempDouble >>> 0)) / 4294967296 + ) >>> 0 : 0) + ], LE_HEAP_STORE_I32((newOffset >> 2) * 4, tempI64[0]), LE_HEAP_STORE_I32((newOffset + 4 >> 2) * 4, tempI64[1]); + if (stream.getdents && offset === 0 && whence === 0) + stream.getdents = null; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return e.errno; + } + } + function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + LE_HEAP_STORE_I32((pnum >> 2) * 4, num); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) + abort(e); + return e.errno; + } + } + function _setTempRet0(val) { + setTempRet0(val); + } + function _time(ptr) { + var ret = Date.now() / 1e3 | 0; + if (ptr) { + LE_HEAP_STORE_I32((ptr >> 2) * 4, ret); + } + return ret; + } + function _tzset() { + if (_tzset.called) + return; + _tzset.called = true; + var currentYear = (/* @__PURE__ */ new Date()).getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + var winterOffset = winter.getTimezoneOffset(); + var summerOffset = summer.getTimezoneOffset(); + var stdTimezoneOffset = Math.max(winterOffset, summerOffset); + LE_HEAP_STORE_I32((__get_timezone() >> 2) * 4, stdTimezoneOffset * 60); + LE_HEAP_STORE_I32( + (__get_daylight() >> 2) * 4, + Number(winterOffset != summerOffset) + ); + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT"; + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocateUTF8(winterName); + var summerNamePtr = allocateUTF8(summerName); + if (summerOffset < winterOffset) { + LE_HEAP_STORE_I32((__get_tzname() >> 2) * 4, winterNamePtr); + LE_HEAP_STORE_I32((__get_tzname() + 4 >> 2) * 4, summerNamePtr); + } else { + LE_HEAP_STORE_I32((__get_tzname() >> 2) * 4, summerNamePtr); + LE_HEAP_STORE_I32((__get_tzname() + 4 >> 2) * 4, winterNamePtr); + } + } + function _timegm(tmPtr) { + _tzset(); + var time = Date.UTC( + LE_HEAP_LOAD_I32((tmPtr + 20 >> 2) * 4) + 1900, + LE_HEAP_LOAD_I32((tmPtr + 16 >> 2) * 4), + LE_HEAP_LOAD_I32((tmPtr + 12 >> 2) * 4), + LE_HEAP_LOAD_I32((tmPtr + 8 >> 2) * 4), + LE_HEAP_LOAD_I32((tmPtr + 4 >> 2) * 4), + LE_HEAP_LOAD_I32((tmPtr >> 2) * 4), + 0 + ); + var date = new Date(time); + LE_HEAP_STORE_I32((tmPtr + 24 >> 2) * 4, date.getUTCDay()); + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + LE_HEAP_STORE_I32((tmPtr + 28 >> 2) * 4, yday); + return date.getTime() / 1e3 | 0; + } + var FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this; + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev; + }; + var readMode = 292 | 73; + var writeMode = 146; + Object.defineProperties(FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode; + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode; + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode; + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode; + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode); + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode); + } } - header.linkname = linkSink.linkname; - self2._encode(header); - callback(); }); - return linkSink; - } - this._encode(header); - if (header.type !== "file" && header.type !== "contiguous-file") { - process.nextTick(callback); - return new Void(); - } - var sink = new Sink(this); - this._stream = sink; - eos(sink, function(err) { - self2._stream = null; - if (err) { - self2.destroy(); - return callback(err); + FS.FSNode = FSNode; + FS.staticInit(); + if (ENVIRONMENT_IS_NODE) { + var fs2 = frozenFs; + var NODEJS_PATH = require("path"); + NODEFS.staticInit(); + } + if (ENVIRONMENT_IS_NODE) { + var _wrapNodeError = function(func) { + return function() { + try { + return func.apply(this, arguments); + } catch (e) { + if (!e.code) + throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + }; + }; + var VFS = Object.assign({}, FS); + for (var _key in NODERAWFS) + FS[_key] = _wrapNodeError(NODERAWFS[_key]); + } else { + throw new Error( + "NODERAWFS is currently only supported on Node.js environment." + ); + } + function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array( + stringy, + u8array, + 0, + u8array.length + ); + if (dontAddNull) + u8array.length = numBytesWritten; + return u8array; + } + var decodeBase64 = typeof atob === "function" ? atob : function(input) { + var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + var output = ""; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + do { + enc1 = keyStr.indexOf(input.charAt(i++)); + enc2 = keyStr.indexOf(input.charAt(i++)); + enc3 = keyStr.indexOf(input.charAt(i++)); + enc4 = keyStr.indexOf(input.charAt(i++)); + chr1 = enc1 << 2 | enc2 >> 4; + chr2 = (enc2 & 15) << 4 | enc3 >> 2; + chr3 = (enc3 & 3) << 6 | enc4; + output = output + String.fromCharCode(chr1); + if (enc3 !== 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 !== 64) { + output = output + String.fromCharCode(chr3); + } + } while (i < input.length); + return output; + }; + function intArrayFromBase64(s) { + if (typeof ENVIRONMENT_IS_NODE === "boolean" && ENVIRONMENT_IS_NODE) { + var buf; + try { + buf = Buffer.from(s, "base64"); + } catch (_) { + buf = new Buffer(s, "base64"); + } + return new Uint8Array( + buf["buffer"], + buf["byteOffset"], + buf["byteLength"] + ); + } + try { + var decoded = decodeBase64(s); + var bytes = new Uint8Array(decoded.length); + for (var i = 0; i < decoded.length; ++i) { + bytes[i] = decoded.charCodeAt(i); + } + return bytes; + } catch (_) { + throw new Error("Converting base64 string to bytes failed."); + } } - if (sink.written !== header.size) { - self2.destroy(); - return callback(new Error("size mismatch")); + function tryParseAsDataURI(filename) { + if (!isDataURI(filename)) { + return; + } + return intArrayFromBase64(filename.slice(dataURIPrefix.length)); + } + var asmLibraryArg = { + s: ___gmtime_r, + p: ___sys_chmod, + e: ___sys_fcntl64, + k: ___sys_fstat64, + o: ___sys_ioctl, + q: ___sys_open, + i: ___sys_rename, + r: ___sys_rmdir, + c: ___sys_stat64, + h: ___sys_unlink, + l: _emscripten_memcpy_big, + m: _emscripten_resize_heap, + f: _fd_close, + j: _fd_fdstat_get, + g: _fd_read, + n: _fd_seek, + d: _fd_write, + a: _setTempRet0, + b: _time, + t: _timegm + }; + var asm = createWasm(); + var ___wasm_call_ctors = Module["___wasm_call_ctors"] = asm["v"]; + var _zip_ext_count_symlinks = Module["_zip_ext_count_symlinks"] = asm["w"]; + var _zip_file_get_external_attributes = Module["_zip_file_get_external_attributes"] = asm["x"]; + var _zipstruct_stat = Module["_zipstruct_stat"] = asm["y"]; + var _zipstruct_statS = Module["_zipstruct_statS"] = asm["z"]; + var _zipstruct_stat_name = Module["_zipstruct_stat_name"] = asm["A"]; + var _zipstruct_stat_index = Module["_zipstruct_stat_index"] = asm["B"]; + var _zipstruct_stat_size = Module["_zipstruct_stat_size"] = asm["C"]; + var _zipstruct_stat_mtime = Module["_zipstruct_stat_mtime"] = asm["D"]; + var _zipstruct_stat_crc = Module["_zipstruct_stat_crc"] = asm["E"]; + var _zipstruct_error = Module["_zipstruct_error"] = asm["F"]; + var _zipstruct_errorS = Module["_zipstruct_errorS"] = asm["G"]; + var _zipstruct_error_code_zip = Module["_zipstruct_error_code_zip"] = asm["H"]; + var _zipstruct_stat_comp_size = Module["_zipstruct_stat_comp_size"] = asm["I"]; + var _zipstruct_stat_comp_method = Module["_zipstruct_stat_comp_method"] = asm["J"]; + var _zip_close = Module["_zip_close"] = asm["K"]; + var _zip_delete = Module["_zip_delete"] = asm["L"]; + var _zip_dir_add = Module["_zip_dir_add"] = asm["M"]; + var _zip_discard = Module["_zip_discard"] = asm["N"]; + var _zip_error_init_with_code = Module["_zip_error_init_with_code"] = asm["O"]; + var _zip_get_error = Module["_zip_get_error"] = asm["P"]; + var _zip_file_get_error = Module["_zip_file_get_error"] = asm["Q"]; + var _zip_error_strerror = Module["_zip_error_strerror"] = asm["R"]; + var _zip_fclose = Module["_zip_fclose"] = asm["S"]; + var _zip_file_add = Module["_zip_file_add"] = asm["T"]; + var _free = Module["_free"] = asm["U"]; + var _malloc = Module["_malloc"] = asm["V"]; + var ___errno_location = Module["___errno_location"] = asm["W"]; + var _zip_source_error = Module["_zip_source_error"] = asm["X"]; + var _zip_source_seek = Module["_zip_source_seek"] = asm["Y"]; + var _zip_file_set_external_attributes = Module["_zip_file_set_external_attributes"] = asm["Z"]; + var _zip_file_set_mtime = Module["_zip_file_set_mtime"] = asm["_"]; + var _zip_fopen = Module["_zip_fopen"] = asm["$"]; + var _zip_fopen_index = Module["_zip_fopen_index"] = asm["aa"]; + var _zip_fread = Module["_zip_fread"] = asm["ba"]; + var _zip_get_name = Module["_zip_get_name"] = asm["ca"]; + var _zip_get_num_entries = Module["_zip_get_num_entries"] = asm["da"]; + var _zip_source_read = Module["_zip_source_read"] = asm["ea"]; + var _zip_name_locate = Module["_zip_name_locate"] = asm["fa"]; + var _zip_open = Module["_zip_open"] = asm["ga"]; + var _zip_open_from_source = Module["_zip_open_from_source"] = asm["ha"]; + var _zip_set_file_compression = Module["_zip_set_file_compression"] = asm["ia"]; + var _zip_source_buffer = Module["_zip_source_buffer"] = asm["ja"]; + var _zip_source_buffer_create = Module["_zip_source_buffer_create"] = asm["ka"]; + var _zip_source_close = Module["_zip_source_close"] = asm["la"]; + var _zip_source_free = Module["_zip_source_free"] = asm["ma"]; + var _zip_source_keep = Module["_zip_source_keep"] = asm["na"]; + var _zip_source_open = Module["_zip_source_open"] = asm["oa"]; + var _zip_source_set_mtime = Module["_zip_source_set_mtime"] = asm["qa"]; + var _zip_source_tell = Module["_zip_source_tell"] = asm["ra"]; + var _zip_stat = Module["_zip_stat"] = asm["sa"]; + var _zip_stat_index = Module["_zip_stat_index"] = asm["ta"]; + var __get_tzname = Module["__get_tzname"] = asm["ua"]; + var __get_daylight = Module["__get_daylight"] = asm["va"]; + var __get_timezone = Module["__get_timezone"] = asm["wa"]; + var stackSave = Module["stackSave"] = asm["xa"]; + var stackRestore = Module["stackRestore"] = asm["ya"]; + var stackAlloc = Module["stackAlloc"] = asm["za"]; + Module["cwrap"] = cwrap; + Module["getValue"] = getValue; + var calledRun; + dependenciesFulfilled = function runCaller() { + if (!calledRun) + run(); + if (!calledRun) + dependenciesFulfilled = runCaller; + }; + function run(args2) { + args2 = args2 || arguments_; + if (runDependencies > 0) { + return; + } + preRun(); + if (runDependencies > 0) { + return; + } + function doRun() { + if (calledRun) + return; + calledRun = true; + Module["calledRun"] = true; + if (ABORT) + return; + initRuntime(); + readyPromiseResolve(Module); + if (Module["onRuntimeInitialized"]) + Module["onRuntimeInitialized"](); + postRun(); + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"](""); + }, 1); + doRun(); + }, 1); + } else { + doRun(); + } } - overflow(self2, header.size); - if (self2._finalizing) - self2.finalize(); - callback(); - }); - return sink; - }; - Pack.prototype.finalize = function() { - if (this._stream) { - this._finalizing = true; - return; - } - if (this._finalized) - return; - this._finalized = true; - this.push(END_OF_TAR); - this.push(null); - }; - Pack.prototype.destroy = function(err) { - if (this._destroyed) - return; - this._destroyed = true; - if (err) - this.emit("error", err); - this.emit("close"); - if (this._stream && this._stream.destroy) - this._stream.destroy(); - }; - Pack.prototype._encode = function(header) { - if (!header.pax) { - var buf = headers.encode(header); - if (buf) { - this.push(buf); - return; + Module["run"] = run; + if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") + Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()(); + } } - } - this._encodePax(header); - }; - Pack.prototype._encodePax = function(header) { - var paxHeader = headers.encodePax({ - name: header.name, - linkname: header.linkname, - pax: header.pax - }); - var newHeader = { - name: "PaxHeader", - mode: header.mode, - uid: header.uid, - gid: header.gid, - size: paxHeader.length, - mtime: header.mtime, - type: "pax-header", - linkname: header.linkname && "PaxHeader", - uname: header.uname, - gname: header.gname, - devmajor: header.devmajor, - devminor: header.devminor + run(); + return createModule2; }; - this.push(headers.encode(newHeader)); - this.push(paxHeader); - overflow(this, paxHeader.length); - newHeader.size = header.size; - newHeader.type = header.type; - this.push(headers.encode(newHeader)); - }; - Pack.prototype._read = function(n) { - var drain = this._drain; - this._drain = noop; - drain(); - }; - module2.exports = Pack; + }(); + if (typeof exports2 === "object" && typeof module2 === "object") + module2.exports = createModule; + else if (typeof define === "function" && define["amd"]) + define([], function() { + return createModule; + }); + else if (typeof exports2 === "object") + exports2["createModule"] = createModule; } }); -// ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js -var require_tar_stream = __commonJS({ - "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js"(exports2) { - exports2.extract = require_extract(); - exports2.pack = require_pack(); +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/makeInterface.js +var require_makeInterface = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/makeInterface.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeInterface = exports2.Errors = void 0; + var number64 = [ + `number`, + `number` + // high + ]; + var Errors; + (function(Errors2) { + Errors2[Errors2["ZIP_ER_OK"] = 0] = "ZIP_ER_OK"; + Errors2[Errors2["ZIP_ER_MULTIDISK"] = 1] = "ZIP_ER_MULTIDISK"; + Errors2[Errors2["ZIP_ER_RENAME"] = 2] = "ZIP_ER_RENAME"; + Errors2[Errors2["ZIP_ER_CLOSE"] = 3] = "ZIP_ER_CLOSE"; + Errors2[Errors2["ZIP_ER_SEEK"] = 4] = "ZIP_ER_SEEK"; + Errors2[Errors2["ZIP_ER_READ"] = 5] = "ZIP_ER_READ"; + Errors2[Errors2["ZIP_ER_WRITE"] = 6] = "ZIP_ER_WRITE"; + Errors2[Errors2["ZIP_ER_CRC"] = 7] = "ZIP_ER_CRC"; + Errors2[Errors2["ZIP_ER_ZIPCLOSED"] = 8] = "ZIP_ER_ZIPCLOSED"; + Errors2[Errors2["ZIP_ER_NOENT"] = 9] = "ZIP_ER_NOENT"; + Errors2[Errors2["ZIP_ER_EXISTS"] = 10] = "ZIP_ER_EXISTS"; + Errors2[Errors2["ZIP_ER_OPEN"] = 11] = "ZIP_ER_OPEN"; + Errors2[Errors2["ZIP_ER_TMPOPEN"] = 12] = "ZIP_ER_TMPOPEN"; + Errors2[Errors2["ZIP_ER_ZLIB"] = 13] = "ZIP_ER_ZLIB"; + Errors2[Errors2["ZIP_ER_MEMORY"] = 14] = "ZIP_ER_MEMORY"; + Errors2[Errors2["ZIP_ER_CHANGED"] = 15] = "ZIP_ER_CHANGED"; + Errors2[Errors2["ZIP_ER_COMPNOTSUPP"] = 16] = "ZIP_ER_COMPNOTSUPP"; + Errors2[Errors2["ZIP_ER_EOF"] = 17] = "ZIP_ER_EOF"; + Errors2[Errors2["ZIP_ER_INVAL"] = 18] = "ZIP_ER_INVAL"; + Errors2[Errors2["ZIP_ER_NOZIP"] = 19] = "ZIP_ER_NOZIP"; + Errors2[Errors2["ZIP_ER_INTERNAL"] = 20] = "ZIP_ER_INTERNAL"; + Errors2[Errors2["ZIP_ER_INCONS"] = 21] = "ZIP_ER_INCONS"; + Errors2[Errors2["ZIP_ER_REMOVE"] = 22] = "ZIP_ER_REMOVE"; + Errors2[Errors2["ZIP_ER_DELETED"] = 23] = "ZIP_ER_DELETED"; + Errors2[Errors2["ZIP_ER_ENCRNOTSUPP"] = 24] = "ZIP_ER_ENCRNOTSUPP"; + Errors2[Errors2["ZIP_ER_RDONLY"] = 25] = "ZIP_ER_RDONLY"; + Errors2[Errors2["ZIP_ER_NOPASSWD"] = 26] = "ZIP_ER_NOPASSWD"; + Errors2[Errors2["ZIP_ER_WRONGPASSWD"] = 27] = "ZIP_ER_WRONGPASSWD"; + Errors2[Errors2["ZIP_ER_OPNOTSUPP"] = 28] = "ZIP_ER_OPNOTSUPP"; + Errors2[Errors2["ZIP_ER_INUSE"] = 29] = "ZIP_ER_INUSE"; + Errors2[Errors2["ZIP_ER_TELL"] = 30] = "ZIP_ER_TELL"; + Errors2[Errors2["ZIP_ER_COMPRESSED_DATA"] = 31] = "ZIP_ER_COMPRESSED_DATA"; + })(Errors = exports2.Errors || (exports2.Errors = {})); + var makeInterface = (emZip) => ({ + // Those are getters because they can change after memory growth + get HEAP8() { + return emZip.HEAP8; + }, + get HEAPU8() { + return emZip.HEAPU8; + }, + errors: Errors, + SEEK_SET: 0, + SEEK_CUR: 1, + SEEK_END: 2, + ZIP_CHECKCONS: 4, + ZIP_CREATE: 1, + ZIP_EXCL: 2, + ZIP_TRUNCATE: 8, + ZIP_RDONLY: 16, + ZIP_FL_OVERWRITE: 8192, + ZIP_FL_COMPRESSED: 4, + ZIP_OPSYS_DOS: 0, + ZIP_OPSYS_AMIGA: 1, + ZIP_OPSYS_OPENVMS: 2, + ZIP_OPSYS_UNIX: 3, + ZIP_OPSYS_VM_CMS: 4, + ZIP_OPSYS_ATARI_ST: 5, + ZIP_OPSYS_OS_2: 6, + ZIP_OPSYS_MACINTOSH: 7, + ZIP_OPSYS_Z_SYSTEM: 8, + ZIP_OPSYS_CPM: 9, + ZIP_OPSYS_WINDOWS_NTFS: 10, + ZIP_OPSYS_MVS: 11, + ZIP_OPSYS_VSE: 12, + ZIP_OPSYS_ACORN_RISC: 13, + ZIP_OPSYS_VFAT: 14, + ZIP_OPSYS_ALTERNATE_MVS: 15, + ZIP_OPSYS_BEOS: 16, + ZIP_OPSYS_TANDEM: 17, + ZIP_OPSYS_OS_400: 18, + ZIP_OPSYS_OS_X: 19, + ZIP_CM_DEFAULT: -1, + ZIP_CM_STORE: 0, + ZIP_CM_DEFLATE: 8, + uint08S: emZip._malloc(1), + uint16S: emZip._malloc(2), + uint32S: emZip._malloc(4), + uint64S: emZip._malloc(8), + malloc: emZip._malloc, + free: emZip._free, + getValue: emZip.getValue, + open: emZip.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]), + openFromSource: emZip.cwrap(`zip_open_from_source`, `number`, [`number`, `number`, `number`]), + close: emZip.cwrap(`zip_close`, `number`, [`number`]), + discard: emZip.cwrap(`zip_discard`, null, [`number`]), + getError: emZip.cwrap(`zip_get_error`, `number`, [`number`]), + getName: emZip.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]), + getNumEntries: emZip.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]), + delete: emZip.cwrap(`zip_delete`, `number`, [`number`, `number`]), + stat: emZip.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]), + statIndex: emZip.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]), + fopen: emZip.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]), + fopenIndex: emZip.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]), + fread: emZip.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]), + fclose: emZip.cwrap(`zip_fclose`, `number`, [`number`]), + dir: { + add: emZip.cwrap(`zip_dir_add`, `number`, [`number`, `string`]) + }, + file: { + add: emZip.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]), + getError: emZip.cwrap(`zip_file_get_error`, `number`, [`number`]), + getExternalAttributes: emZip.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]), + setExternalAttributes: emZip.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]), + setMtime: emZip.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]), + setCompression: emZip.cwrap(`zip_set_file_compression`, `number`, [`number`, ...number64, `number`, `number`]) + }, + ext: { + countSymlinks: emZip.cwrap(`zip_ext_count_symlinks`, `number`, [`number`]) + }, + error: { + initWithCode: emZip.cwrap(`zip_error_init_with_code`, null, [`number`, `number`]), + strerror: emZip.cwrap(`zip_error_strerror`, `string`, [`number`]) + }, + name: { + locate: emZip.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]) + }, + source: { + fromUnattachedBuffer: emZip.cwrap(`zip_source_buffer_create`, `number`, [`number`, ...number64, `number`, `number`]), + fromBuffer: emZip.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]), + free: emZip.cwrap(`zip_source_free`, null, [`number`]), + keep: emZip.cwrap(`zip_source_keep`, null, [`number`]), + open: emZip.cwrap(`zip_source_open`, `number`, [`number`]), + close: emZip.cwrap(`zip_source_close`, `number`, [`number`]), + seek: emZip.cwrap(`zip_source_seek`, `number`, [`number`, ...number64, `number`]), + tell: emZip.cwrap(`zip_source_tell`, `number`, [`number`]), + read: emZip.cwrap(`zip_source_read`, `number`, [`number`, `number`, `number`]), + error: emZip.cwrap(`zip_source_error`, `number`, [`number`]), + setMtime: emZip.cwrap(`zip_source_set_mtime`, `number`, [`number`, `number`]) + }, + struct: { + stat: emZip.cwrap(`zipstruct_stat`, `number`, []), + statS: emZip.cwrap(`zipstruct_statS`, `number`, []), + statName: emZip.cwrap(`zipstruct_stat_name`, `string`, [`number`]), + statIndex: emZip.cwrap(`zipstruct_stat_index`, `number`, [`number`]), + statSize: emZip.cwrap(`zipstruct_stat_size`, `number`, [`number`]), + statCompSize: emZip.cwrap(`zipstruct_stat_comp_size`, `number`, [`number`]), + statCompMethod: emZip.cwrap(`zipstruct_stat_comp_method`, `number`, [`number`]), + statMtime: emZip.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]), + statCrc: emZip.cwrap(`zipstruct_stat_crc`, `number`, [`number`]), + error: emZip.cwrap(`zipstruct_error`, `number`, []), + errorS: emZip.cwrap(`zipstruct_errorS`, `number`, []), + errorCodeZip: emZip.cwrap(`zipstruct_error_code_zip`, `number`, [`number`]) + } + }); + exports2.makeInterface = makeInterface; } }); -// ../cafs/lib/addFilesFromTarball.js -var require_addFilesFromTarball = __commonJS({ - "../cafs/lib/addFilesFromTarball.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/ZipOpenFS.js +var require_ZipOpenFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/ZipOpenFS.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var decompress_maybe_1 = __importDefault(require_decompress_maybe()); - var tar_stream_1 = __importDefault(require_tar_stream()); - var parseJson_1 = require_parseJson(); - async function default_1(addStreamToCafs, _ignore, stream, manifest) { - const ignore = _ignore !== null && _ignore !== void 0 ? _ignore : () => false; - const extract = tar_stream_1.default.extract(); - const filesIndex = {}; - await new Promise((resolve, reject) => { - extract.on("entry", (header, fileStream, next) => { - const filename = header.name.substr(header.name.indexOf("/") + 1).replace(/\/\//g, "/"); - if (header.type !== "file" || ignore(filename) || filesIndex[filename]) { - fileStream.resume(); - next(); - return; - } - if (filename === "package.json" && manifest != null) { - parseJson_1.parseJsonStream(fileStream, manifest); + exports2.ZipOpenFS = exports2.getArchivePart = void 0; + var fslib_12 = require_lib50(); + var fslib_2 = require_lib50(); + var libzip_1 = require_sync9(); + function getArchivePart(path2, extension) { + let idx = path2.indexOf(extension); + if (idx <= 0) + return null; + let nextCharIdx = idx; + while (idx >= 0) { + nextCharIdx = idx + extension.length; + if (path2[nextCharIdx] === fslib_2.ppath.sep) + break; + if (path2[idx - 1] === fslib_2.ppath.sep) + return null; + idx = path2.indexOf(extension, nextCharIdx); + } + if (path2.length > nextCharIdx && path2[nextCharIdx] !== fslib_2.ppath.sep) + return null; + return path2.slice(0, nextCharIdx); + } + exports2.getArchivePart = getArchivePart; + var ZipOpenFS = class extends fslib_12.MountFS { + static async openPromise(fn2, opts) { + const zipOpenFs = new ZipOpenFS(opts); + try { + return await fn2(zipOpenFs); + } finally { + zipOpenFs.saveAndClose(); + } + } + constructor(opts = {}) { + const fileExtensions = opts.fileExtensions; + const readOnlyArchives = opts.readOnlyArchives; + const getMountPoint = typeof fileExtensions === `undefined` ? (path2) => getArchivePart(path2, `.zip`) : (path2) => { + for (const extension of fileExtensions) { + const result2 = getArchivePart(path2, extension); + if (result2) { + return result2; + } } - const writeResult = addStreamToCafs(fileStream, header.mode); - filesIndex[filename] = { - mode: header.mode, - size: header.size, - writeResult + return null; + }; + const factorySync = (baseFs, p) => { + return new libzip_1.ZipFS(p, { + baseFs, + readOnly: readOnlyArchives, + stats: baseFs.statSync(p) + }); + }; + const factoryPromise = async (baseFs, p) => { + const zipOptions = { + baseFs, + readOnly: readOnlyArchives, + stats: await baseFs.statPromise(p) }; - next(); + return () => { + return new libzip_1.ZipFS(p, zipOptions); + }; + }; + super({ + ...opts, + factorySync, + factoryPromise, + getMountPoint }); - extract.on("finish", () => resolve()); - extract.on("error", reject); - stream.on("error", reject).pipe(decompress_maybe_1.default()).on("error", reject).pipe(extract); - }); - return filesIndex; - } - exports2.default = default_1; + } + }; + exports2.ZipOpenFS = ZipOpenFS; } }); -// ../cafs/lib/getFilePathInCafs.js -var require_getFilePathInCafs = __commonJS({ - "../cafs/lib/getFilePathInCafs.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/ZipFS.js +var require_ZipFS = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/ZipFS.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.contentPathFromHex = exports2.getFilePathByModeInCafs = exports2.modeIsExecutable = void 0; - var path_1 = __importDefault(require("path")); - var ssri_1 = __importDefault(require_ssri()); - var modeIsExecutable = (mode) => (mode & 73) === 73; - exports2.modeIsExecutable = modeIsExecutable; - function getFilePathByModeInCafs(cafsDir, integrity, mode) { - const fileType = exports2.modeIsExecutable(mode) ? "exec" : "nonexec"; - return path_1.default.join(cafsDir, contentPathFromIntegrity(integrity, fileType)); - } - exports2.getFilePathByModeInCafs = getFilePathByModeInCafs; - function getFilePathInCafs(cafsDir, integrity, fileType) { - return path_1.default.join(cafsDir, contentPathFromIntegrity(integrity, fileType)); + exports2.ZipFS = exports2.LibzipError = exports2.makeEmptyArchive = exports2.DEFAULT_COMPRESSION_LEVEL = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var fslib_12 = require_lib50(); + var fslib_2 = require_lib50(); + var fslib_3 = require_lib50(); + var fslib_4 = require_lib50(); + var fslib_5 = require_lib50(); + var fslib_6 = require_lib50(); + var fs_1 = require("fs"); + var stream_12 = require("stream"); + var util_1 = require("util"); + var zlib_1 = tslib_12.__importDefault(require("zlib")); + var instance_1 = require_instance(); + exports2.DEFAULT_COMPRESSION_LEVEL = `mixed`; + function toUnixTimestamp(time) { + if (typeof time === `string` && String(+time) === time) + return +time; + if (typeof time === `number` && Number.isFinite(time)) { + if (time < 0) { + return Date.now() / 1e3; + } else { + return time; + } + } + if (util_1.types.isDate(time)) + return time.getTime() / 1e3; + throw new Error(`Invalid time`); } - exports2.default = getFilePathInCafs; - function contentPathFromIntegrity(integrity, fileType) { - const sri = ssri_1.default.parse(integrity, { single: true }); - return contentPathFromHex(fileType, sri.hexDigest()); + function makeEmptyArchive() { + return Buffer.from([ + 80, + 75, + 5, + 6, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ]); } - function contentPathFromHex(fileType, hex) { - const p = path_1.default.join(hex.slice(0, 2), hex.slice(2)); - switch (fileType) { - case "exec": - return `${p}-exec`; - case "nonexec": - return p; - case "index": - return `${p}-index.json`; + exports2.makeEmptyArchive = makeEmptyArchive; + var LibzipError = class extends Error { + constructor(message2, code) { + super(message2); + this.name = `Libzip Error`; + this.code = code; + } + }; + exports2.LibzipError = LibzipError; + var ZipFS = class extends fslib_12.BasePortableFakeFS { + constructor(source, opts = {}) { + super(); + this.lzSource = null; + this.listings = /* @__PURE__ */ new Map(); + this.entries = /* @__PURE__ */ new Map(); + this.fileSources = /* @__PURE__ */ new Map(); + this.fds = /* @__PURE__ */ new Map(); + this.nextFd = 0; + this.ready = false; + this.readOnly = false; + const pathOptions = opts; + this.level = typeof pathOptions.level !== `undefined` ? pathOptions.level : exports2.DEFAULT_COMPRESSION_LEVEL; + source !== null && source !== void 0 ? source : source = makeEmptyArchive(); + if (typeof source === `string`) { + const { baseFs = new fslib_2.NodeFS() } = pathOptions; + this.baseFs = baseFs; + this.path = source; + } else { + this.path = null; + this.baseFs = null; + } + if (opts.stats) { + this.stats = opts.stats; + } else { + if (typeof source === `string`) { + try { + this.stats = this.baseFs.statSync(source); + } catch (error) { + if (error.code === `ENOENT` && pathOptions.create) { + this.stats = fslib_5.statUtils.makeDefaultStats(); + } else { + throw error; + } + } + } else { + this.stats = fslib_5.statUtils.makeDefaultStats(); + } + } + this.libzip = (0, instance_1.getInstance)(); + const errPtr = this.libzip.malloc(4); + try { + let flags = 0; + if (typeof source === `string` && pathOptions.create) + flags |= this.libzip.ZIP_CREATE | this.libzip.ZIP_TRUNCATE; + if (opts.readOnly) { + flags |= this.libzip.ZIP_RDONLY; + this.readOnly = true; + } + if (typeof source === `string`) { + this.zip = this.libzip.open(fslib_6.npath.fromPortablePath(source), flags, errPtr); + } else { + const lzSource = this.allocateUnattachedSource(source); + try { + this.zip = this.libzip.openFromSource(lzSource, flags, errPtr); + this.lzSource = lzSource; + } catch (error) { + this.libzip.source.free(lzSource); + throw error; + } + } + if (this.zip === 0) { + const error = this.libzip.struct.errorS(); + this.libzip.error.initWithCode(error, this.libzip.getValue(errPtr, `i32`)); + throw this.makeLibzipError(error); + } + } finally { + this.libzip.free(errPtr); + } + this.listings.set(fslib_6.PortablePath.root, /* @__PURE__ */ new Set()); + const entryCount = this.libzip.getNumEntries(this.zip, 0); + for (let t = 0; t < entryCount; ++t) { + const raw = this.libzip.getName(this.zip, t, 0); + if (fslib_6.ppath.isAbsolute(raw)) + continue; + const p = fslib_6.ppath.resolve(fslib_6.PortablePath.root, raw); + this.registerEntry(p, t); + if (raw.endsWith(`/`)) { + this.registerListing(p); + } + } + this.symlinkCount = this.libzip.ext.countSymlinks(this.zip); + if (this.symlinkCount === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.ready = true; + } + makeLibzipError(error) { + const errorCode = this.libzip.struct.errorCodeZip(error); + const strerror = this.libzip.error.strerror(error); + const libzipError = new LibzipError(strerror, this.libzip.errors[errorCode]); + if (errorCode === this.libzip.errors.ZIP_ER_CHANGED) + throw new Error(`Assertion failed: Unexpected libzip error: ${libzipError.message}`); + return libzipError; + } + getExtractHint(hints) { + for (const fileName of this.entries.keys()) { + const ext = this.pathUtils.extname(fileName); + if (hints.relevantExtensions.has(ext)) { + return true; + } + } + return false; + } + getAllFiles() { + return Array.from(this.entries.keys()); + } + getRealPath() { + if (!this.path) + throw new Error(`ZipFS don't have real paths when loaded from a buffer`); + return this.path; + } + getBufferAndClose() { + this.prepareClose(); + if (!this.lzSource) + throw new Error(`ZipFS was not created from a Buffer`); + try { + this.libzip.source.keep(this.lzSource); + if (this.libzip.close(this.zip) === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + if (this.libzip.source.open(this.lzSource) === -1) + throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_END) === -1) + throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + const size = this.libzip.source.tell(this.lzSource); + if (size === -1) + throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_SET) === -1) + throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + const buffer = this.libzip.malloc(size); + if (!buffer) + throw new Error(`Couldn't allocate enough memory`); + try { + const rc = this.libzip.source.read(this.lzSource, buffer, size); + if (rc === -1) + throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + else if (rc < size) + throw new Error(`Incomplete read`); + else if (rc > size) + throw new Error(`Overread`); + const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); + return Buffer.from(memory); + } finally { + this.libzip.free(buffer); + } + } finally { + this.libzip.source.close(this.lzSource); + this.libzip.source.free(this.lzSource); + this.ready = false; + } + } + prepareClose() { + if (!this.ready) + throw fslib_5.errors.EBUSY(`archive closed, close`); + (0, fslib_4.unwatchAllFiles)(this); + } + saveAndClose() { + if (!this.path || !this.baseFs) + throw new Error(`ZipFS cannot be saved and must be discarded when loaded from a buffer`); + this.prepareClose(); + if (this.readOnly) { + this.discardAndClose(); + return; + } + const newMode = this.baseFs.existsSync(this.path) || this.stats.mode === fslib_5.statUtils.DEFAULT_MODE ? void 0 : this.stats.mode; + if (this.entries.size === 0) { + this.discardAndClose(); + this.baseFs.writeFileSync(this.path, makeEmptyArchive(), { mode: newMode }); + } else { + const rc = this.libzip.close(this.zip); + if (rc === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + if (typeof newMode !== `undefined`) { + this.baseFs.chmodSync(this.path, newMode); + } + } + this.ready = false; + } + discardAndClose() { + this.prepareClose(); + this.libzip.discard(this.zip); + this.ready = false; + } + resolve(p) { + return fslib_6.ppath.resolve(fslib_6.PortablePath.root, p); + } + async openPromise(p, flags, mode) { + return this.openSync(p, flags, mode); + } + openSync(p, flags, mode) { + const fd = this.nextFd++; + this.fds.set(fd, { cursor: 0, p }); + return fd; + } + hasOpenFileHandles() { + return !!this.fds.size; + } + async opendirPromise(p, opts) { + return this.opendirSync(p, opts); + } + opendirSync(p, opts = {}) { + const resolvedP = this.resolveFilename(`opendir '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`opendir '${p}'`); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) + throw fslib_5.errors.ENOTDIR(`opendir '${p}'`); + const entries = [...directoryListing]; + const fd = this.openSync(resolvedP, `r`); + const onClose = () => { + this.closeSync(fd); + }; + return (0, fslib_3.opendir)(this, resolvedP, entries, { onClose }); + } + async readPromise(fd, buffer, offset, length, position) { + return this.readSync(fd, buffer, offset, length, position); + } + readSync(fd, buffer, offset = 0, length = buffer.byteLength, position = -1) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) + throw fslib_5.errors.EBADF(`read`); + const realPosition = position === -1 || position === null ? entry.cursor : position; + const source = this.readFileSync(entry.p); + source.copy(buffer, offset, realPosition, realPosition + length); + const bytesRead = Math.max(0, Math.min(source.length - realPosition, length)); + if (position === -1 || position === null) + entry.cursor += bytesRead; + return bytesRead; + } + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.writeSync(fd, buffer, position); + } else { + return this.writeSync(fd, buffer, offset, length, position); + } + } + writeSync(fd, buffer, offset, length, position) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) + throw fslib_5.errors.EBADF(`read`); + throw new Error(`Unimplemented`); + } + async closePromise(fd) { + return this.closeSync(fd); + } + closeSync(fd) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) + throw fslib_5.errors.EBADF(`read`); + this.fds.delete(fd); + } + createReadStream(p, { encoding } = {}) { + if (p === null) + throw new Error(`Unimplemented`); + const fd = this.openSync(p, `r`); + const stream = Object.assign(new stream_12.PassThrough({ + emitClose: true, + autoDestroy: true, + destroy: (error, callback) => { + clearImmediate(immediate); + this.closeSync(fd); + callback(error); + } + }), { + close() { + stream.destroy(); + }, + bytesRead: 0, + path: p, + // "This property is `true` if the underlying file has not been opened yet" + pending: false + }); + const immediate = setImmediate(async () => { + try { + const data = await this.readFilePromise(p, encoding); + stream.bytesRead = data.length; + stream.end(data); + } catch (error) { + stream.destroy(error); + } + }); + return stream; + } + createWriteStream(p, { encoding } = {}) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`open '${p}'`); + if (p === null) + throw new Error(`Unimplemented`); + const chunks = []; + const fd = this.openSync(p, `w`); + const stream = Object.assign(new stream_12.PassThrough({ + autoDestroy: true, + emitClose: true, + destroy: (error, callback) => { + try { + if (error) { + callback(error); + } else { + this.writeFileSync(p, Buffer.concat(chunks), encoding); + callback(null); + } + } catch (err) { + callback(err); + } finally { + this.closeSync(fd); + } + } + }), { + close() { + stream.destroy(); + }, + bytesWritten: 0, + path: p, + // "This property is `true` if the underlying file has not been opened yet" + pending: false + }); + stream.on(`data`, (chunk) => { + const chunkBuffer = Buffer.from(chunk); + stream.bytesWritten += chunkBuffer.length; + chunks.push(chunkBuffer); + }); + return stream; } - } - exports2.contentPathFromHex = contentPathFromHex; - } -}); - -// ../cafs/lib/checkFilesIntegrity.js -var require_checkFilesIntegrity = __commonJS({ - "../cafs/lib/checkFilesIntegrity.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.verifyFileIntegrity = void 0; - var fs_1 = require("fs"); - var graceful_fs_1 = __importDefault(require_lib18()); - var rimraf_1 = __importDefault(require_rimraf()); - var p_limit_1 = __importDefault(require_p_limit()); - var ssri_1 = __importDefault(require_ssri()); - var getFilePathInCafs_1 = require_getFilePathInCafs(); - var parseJson_1 = require_parseJson(); - var limit = p_limit_1.default(20); - var MAX_BULK_SIZE = 1 * 1024 * 1024; - async function default_1(cafsDir, pkgIndex, manifest) { - let verified = true; - await Promise.all(Object.keys(pkgIndex).map(async (f) => limit(async () => { - const fstat = pkgIndex[f]; - if (!fstat.integrity) { - throw new Error(`Integrity checksum is missing for ${f}`); + async realpathPromise(p) { + return this.realpathSync(p); + } + realpathSync(p) { + const resolvedP = this.resolveFilename(`lstat '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`lstat '${p}'`); + return resolvedP; + } + async existsPromise(p) { + return this.existsSync(p); + } + existsSync(p) { + if (!this.ready) + throw fslib_5.errors.EBUSY(`archive closed, existsSync '${p}'`); + if (this.symlinkCount === 0) { + const resolvedP2 = fslib_6.ppath.resolve(fslib_6.PortablePath.root, p); + return this.entries.has(resolvedP2) || this.listings.has(resolvedP2); } - if (!await verifyFile(getFilePathInCafs_1.getFilePathByModeInCafs(cafsDir, fstat.integrity, fstat.mode), fstat, f === "package.json" ? manifest : void 0)) { - verified = false; + let resolvedP; + try { + resolvedP = this.resolveFilename(`stat '${p}'`, p, void 0, false); + } catch (error) { + return false; } - }))); - return verified; - } - exports2.default = default_1; - async function verifyFile(filename, fstat, deferredManifest) { - const currentFile = await checkFile(filename, fstat.checkedAt); - if (currentFile == null) - return false; - if (currentFile.isModified) { - if (currentFile.size !== fstat.size) { - await rimraf_1.default(filename); + if (resolvedP === void 0) return false; + return this.entries.has(resolvedP) || this.listings.has(resolvedP); + } + async accessPromise(p, mode) { + return this.accessSync(p, mode); + } + accessSync(p, mode = fs_1.constants.F_OK) { + const resolvedP = this.resolveFilename(`access '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`access '${p}'`); + if (this.readOnly && mode & fs_1.constants.W_OK) { + throw fslib_5.errors.EROFS(`access '${p}'`); } - return verifyFileIntegrity(filename, fstat, deferredManifest); } - if (deferredManifest != null) { - parseJson_1.parseJsonBuffer(await graceful_fs_1.default.readFile(filename), deferredManifest); + async statPromise(p, opts = { bigint: false }) { + if (opts.bigint) + return this.statSync(p, { bigint: true }); + return this.statSync(p); } - return true; - } - async function verifyFileIntegrity(filename, expectedFile, deferredManifest) { - try { - if (expectedFile.size > MAX_BULK_SIZE && deferredManifest == null) { - const ok2 = Boolean(await ssri_1.default.checkStream(graceful_fs_1.default.createReadStream(filename), expectedFile.integrity)); - if (!ok2) { - await rimraf_1.default(filename); - } - return ok2; + statSync(p, opts = { bigint: false, throwIfNoEntry: true }) { + const resolvedP = this.resolveFilename(`stat '${p}'`, p, void 0, opts.throwIfNoEntry); + if (resolvedP === void 0) + return void 0; + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) { + if (opts.throwIfNoEntry === false) + return void 0; + throw fslib_5.errors.ENOENT(`stat '${p}'`); } - const data = await graceful_fs_1.default.readFile(filename); - const ok = Boolean(ssri_1.default.checkData(data, expectedFile.integrity)); - if (!ok) { - await rimraf_1.default(filename); - } else if (deferredManifest != null) { - parseJson_1.parseJsonBuffer(data, deferredManifest); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOTDIR(`stat '${p}'`); + return this.statImpl(`stat '${p}'`, resolvedP, opts); + } + async fstatPromise(fd, opts) { + return this.fstatSync(fd, opts); + } + fstatSync(fd, opts) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) + throw fslib_5.errors.EBADF(`fstatSync`); + const { p } = entry; + const resolvedP = this.resolveFilename(`stat '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`stat '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOTDIR(`stat '${p}'`); + return this.statImpl(`fstat '${p}'`, resolvedP, opts); + } + async lstatPromise(p, opts = { bigint: false }) { + if (opts.bigint) + return this.lstatSync(p, { bigint: true }); + return this.lstatSync(p); + } + lstatSync(p, opts = { bigint: false, throwIfNoEntry: true }) { + const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false, opts.throwIfNoEntry); + if (resolvedP === void 0) + return void 0; + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) { + if (opts.throwIfNoEntry === false) + return void 0; + throw fslib_5.errors.ENOENT(`lstat '${p}'`); } - return ok; - } catch (err) { - switch (err.code) { - case "ENOENT": - return false; - case "EINTEGRITY": { - await rimraf_1.default(filename); - return false; - } + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOTDIR(`lstat '${p}'`); + return this.statImpl(`lstat '${p}'`, resolvedP, opts); + } + statImpl(reason, p, opts = {}) { + const entry = this.entries.get(p); + if (typeof entry !== `undefined`) { + const stat = this.libzip.struct.statS(); + const rc = this.libzip.statIndex(this.zip, entry, 0, 0, stat); + if (rc === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + const uid = this.stats.uid; + const gid = this.stats.gid; + const size = this.libzip.struct.statSize(stat) >>> 0; + const blksize = 512; + const blocks = Math.ceil(size / blksize); + const mtimeMs = (this.libzip.struct.statMtime(stat) >>> 0) * 1e3; + const atimeMs = mtimeMs; + const birthtimeMs = mtimeMs; + const ctimeMs = mtimeMs; + const atime = new Date(atimeMs); + const birthtime = new Date(birthtimeMs); + const ctime = new Date(ctimeMs); + const mtime = new Date(mtimeMs); + const type = this.listings.has(p) ? fs_1.constants.S_IFDIR : this.isSymbolicLink(entry) ? fs_1.constants.S_IFLNK : fs_1.constants.S_IFREG; + const defaultMode = type === fs_1.constants.S_IFDIR ? 493 : 420; + const mode = type | this.getUnixMode(entry, defaultMode) & 511; + const crc = this.libzip.struct.statCrc(stat); + const statInstance = Object.assign(new fslib_5.statUtils.StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode, crc }); + return opts.bigint === true ? fslib_5.statUtils.convertToBigIntStats(statInstance) : statInstance; } - throw err; + if (this.listings.has(p)) { + const uid = this.stats.uid; + const gid = this.stats.gid; + const size = 0; + const blksize = 512; + const blocks = 0; + const atimeMs = this.stats.mtimeMs; + const birthtimeMs = this.stats.mtimeMs; + const ctimeMs = this.stats.mtimeMs; + const mtimeMs = this.stats.mtimeMs; + const atime = new Date(atimeMs); + const birthtime = new Date(birthtimeMs); + const ctime = new Date(ctimeMs); + const mtime = new Date(mtimeMs); + const mode = fs_1.constants.S_IFDIR | 493; + const crc = 0; + const statInstance = Object.assign(new fslib_5.statUtils.StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode, crc }); + return opts.bigint === true ? fslib_5.statUtils.convertToBigIntStats(statInstance) : statInstance; + } + throw new Error(`Unreachable`); } - } - exports2.verifyFileIntegrity = verifyFileIntegrity; - async function checkFile(filename, checkedAt) { - try { - const { mtimeMs, size } = await fs_1.promises.stat(filename); - return { - isModified: mtimeMs - (checkedAt !== null && checkedAt !== void 0 ? checkedAt : 0) > 100, - size - }; - } catch (err) { - if (err.code === "ENOENT") - return null; - throw err; + getUnixMode(index, defaultMode) { + const rc = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); + if (rc === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; + if (opsys !== this.libzip.ZIP_OPSYS_UNIX) + return defaultMode; + return this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; } - } - } -}); - -// ../cafs/lib/writeFile.js -var require_writeFile = __commonJS({ - "../cafs/lib/writeFile.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var graceful_fs_1 = __importDefault(require_lib18()); - var dirs = new Set(); - async function default_1(fileDest, buffer, mode) { - await makeDirForFile(fileDest); - await graceful_fs_1.default.writeFile(fileDest, buffer, { mode }); - } - exports2.default = default_1; - async function makeDirForFile(fileDest) { - const dir = path_1.default.dirname(fileDest); - if (!dirs.has(dir)) { - await fs_1.promises.mkdir(dir, { recursive: true }); - dirs.add(dir); + registerListing(p) { + const existingListing = this.listings.get(p); + if (existingListing) + return existingListing; + const parentListing = this.registerListing(fslib_6.ppath.dirname(p)); + parentListing.add(fslib_6.ppath.basename(p)); + const newListing = /* @__PURE__ */ new Set(); + this.listings.set(p, newListing); + return newListing; } - } - } -}); - -// ../cafs/lib/index.js -var require_lib31 = __commonJS({ - "../cafs/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + registerEntry(p, index) { + const parentListing = this.registerListing(fslib_6.ppath.dirname(p)); + parentListing.add(fslib_6.ppath.basename(p)); + this.entries.set(p, index); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getFilePathInCafs = exports2.getFilePathByModeInCafs = exports2.checkFilesIntegrity = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var get_stream_1 = __importDefault(require_get_stream()); - var path_temp_1 = __importDefault(require_path_temp()); - var rename_overwrite_1 = __importDefault(require_rename_overwrite()); - var ssri_1 = __importDefault(require_ssri()); - var addFilesFromDir_1 = __importDefault(require_addFilesFromDir()); - var addFilesFromTarball_1 = __importDefault(require_addFilesFromTarball()); - var checkFilesIntegrity_1 = __importStar2(require_checkFilesIntegrity()); - exports2.checkFilesIntegrity = checkFilesIntegrity_1.default; - var getFilePathInCafs_1 = __importStar2(require_getFilePathInCafs()); - exports2.getFilePathInCafs = getFilePathInCafs_1.default; - Object.defineProperty(exports2, "getFilePathByModeInCafs", { enumerable: true, get: function() { - return getFilePathInCafs_1.getFilePathByModeInCafs; - } }); - var writeFile_1 = __importDefault(require_writeFile()); - function createCafs(cafsDir, ignore) { - const locker = new Map(); - const _writeBufferToCafs = writeBufferToCafs.bind(null, locker, cafsDir); - const addStream = addStreamToCafs.bind(null, _writeBufferToCafs); - const addBuffer = addBufferToCafs.bind(null, _writeBufferToCafs); - return { - addFilesFromDir: addFilesFromDir_1.default.bind(null, { addBuffer, addStream }), - addFilesFromTarball: addFilesFromTarball_1.default.bind(null, addStream, ignore !== null && ignore !== void 0 ? ignore : null) - }; - } - exports2.default = createCafs; - async function addStreamToCafs(writeBufferToCafs2, fileStream, mode) { - const buffer = await get_stream_1.default.buffer(fileStream); - return addBufferToCafs(writeBufferToCafs2, buffer, mode); - } - async function addBufferToCafs(writeBufferToCafs2, buffer, mode) { - const integrity = ssri_1.default.fromData(buffer); - const isExecutable = getFilePathInCafs_1.modeIsExecutable(mode); - const fileDest = getFilePathInCafs_1.contentPathFromHex(isExecutable ? "exec" : "nonexec", integrity.hexDigest()); - const checkedAt = await writeBufferToCafs2(buffer, fileDest, isExecutable ? 493 : void 0, integrity); - return { checkedAt, integrity }; - } - async function writeBufferToCafs(locker, cafsDir, buffer, fileDest, mode, integrity) { - fileDest = path_1.default.join(cafsDir, fileDest); - if (locker.has(fileDest)) { - return locker.get(fileDest); + unregisterListing(p) { + this.listings.delete(p); + const parentListing = this.listings.get(fslib_6.ppath.dirname(p)); + parentListing === null || parentListing === void 0 ? void 0 : parentListing.delete(fslib_6.ppath.basename(p)); } - const p = (async () => { - if (await existsSame(fileDest, integrity)) { - return Date.now(); + unregisterEntry(p) { + this.unregisterListing(p); + const entry = this.entries.get(p); + this.entries.delete(p); + if (typeof entry === `undefined`) + return; + this.fileSources.delete(entry); + if (this.isSymbolicLink(entry)) { + this.symlinkCount--; } - const temp = path_temp_1.default(path_1.default.dirname(fileDest)); - await writeFile_1.default(temp, buffer, mode); - const birthtimeMs = Date.now(); - await rename_overwrite_1.default(temp, fileDest); - return birthtimeMs; - })(); - locker.set(fileDest, p); - return p; - } - async function existsSame(filename, integrity) { - let existingFile; - try { - existingFile = await fs_1.promises.stat(filename); - } catch (err) { - return false; } - return checkFilesIntegrity_1.verifyFileIntegrity(filename, { - size: existingFile.size, - integrity - }); - } - } -}); - -// ../../node_modules/.pnpm/spdx-license-ids@3.0.10/node_modules/spdx-license-ids/index.json -var require_spdx_license_ids = __commonJS({ - "../../node_modules/.pnpm/spdx-license-ids@3.0.10/node_modules/spdx-license-ids/index.json"(exports2, module2) { - module2.exports = [ - "0BSD", - "AAL", - "ADSL", - "AFL-1.1", - "AFL-1.2", - "AFL-2.0", - "AFL-2.1", - "AFL-3.0", - "AGPL-1.0-only", - "AGPL-1.0-or-later", - "AGPL-3.0-only", - "AGPL-3.0-or-later", - "AMDPLPA", - "AML", - "AMPAS", - "ANTLR-PD", - "ANTLR-PD-fallback", - "APAFML", - "APL-1.0", - "APSL-1.0", - "APSL-1.1", - "APSL-1.2", - "APSL-2.0", - "Abstyles", - "Adobe-2006", - "Adobe-Glyph", - "Afmparse", - "Aladdin", - "Apache-1.0", - "Apache-1.1", - "Apache-2.0", - "Artistic-1.0", - "Artistic-1.0-Perl", - "Artistic-1.0-cl8", - "Artistic-2.0", - "BSD-1-Clause", - "BSD-2-Clause", - "BSD-2-Clause-Patent", - "BSD-2-Clause-Views", - "BSD-3-Clause", - "BSD-3-Clause-Attribution", - "BSD-3-Clause-Clear", - "BSD-3-Clause-LBNL", - "BSD-3-Clause-Modification", - "BSD-3-Clause-No-Military-License", - "BSD-3-Clause-No-Nuclear-License", - "BSD-3-Clause-No-Nuclear-License-2014", - "BSD-3-Clause-No-Nuclear-Warranty", - "BSD-3-Clause-Open-MPI", - "BSD-4-Clause", - "BSD-4-Clause-Shortened", - "BSD-4-Clause-UC", - "BSD-Protection", - "BSD-Source-Code", - "BSL-1.0", - "BUSL-1.1", - "Bahyph", - "Barr", - "Beerware", - "BitTorrent-1.0", - "BitTorrent-1.1", - "BlueOak-1.0.0", - "Borceux", - "C-UDA-1.0", - "CAL-1.0", - "CAL-1.0-Combined-Work-Exception", - "CATOSL-1.1", - "CC-BY-1.0", - "CC-BY-2.0", - "CC-BY-2.5", - "CC-BY-2.5-AU", - "CC-BY-3.0", - "CC-BY-3.0-AT", - "CC-BY-3.0-DE", - "CC-BY-3.0-NL", - "CC-BY-3.0-US", - "CC-BY-4.0", - "CC-BY-NC-1.0", - "CC-BY-NC-2.0", - "CC-BY-NC-2.5", - "CC-BY-NC-3.0", - "CC-BY-NC-3.0-DE", - "CC-BY-NC-4.0", - "CC-BY-NC-ND-1.0", - "CC-BY-NC-ND-2.0", - "CC-BY-NC-ND-2.5", - "CC-BY-NC-ND-3.0", - "CC-BY-NC-ND-3.0-DE", - "CC-BY-NC-ND-3.0-IGO", - "CC-BY-NC-ND-4.0", - "CC-BY-NC-SA-1.0", - "CC-BY-NC-SA-2.0", - "CC-BY-NC-SA-2.0-FR", - "CC-BY-NC-SA-2.0-UK", - "CC-BY-NC-SA-2.5", - "CC-BY-NC-SA-3.0", - "CC-BY-NC-SA-3.0-DE", - "CC-BY-NC-SA-3.0-IGO", - "CC-BY-NC-SA-4.0", - "CC-BY-ND-1.0", - "CC-BY-ND-2.0", - "CC-BY-ND-2.5", - "CC-BY-ND-3.0", - "CC-BY-ND-3.0-DE", - "CC-BY-ND-4.0", - "CC-BY-SA-1.0", - "CC-BY-SA-2.0", - "CC-BY-SA-2.0-UK", - "CC-BY-SA-2.1-JP", - "CC-BY-SA-2.5", - "CC-BY-SA-3.0", - "CC-BY-SA-3.0-AT", - "CC-BY-SA-3.0-DE", - "CC-BY-SA-4.0", - "CC-PDDC", - "CC0-1.0", - "CDDL-1.0", - "CDDL-1.1", - "CDL-1.0", - "CDLA-Permissive-1.0", - "CDLA-Permissive-2.0", - "CDLA-Sharing-1.0", - "CECILL-1.0", - "CECILL-1.1", - "CECILL-2.0", - "CECILL-2.1", - "CECILL-B", - "CECILL-C", - "CERN-OHL-1.1", - "CERN-OHL-1.2", - "CERN-OHL-P-2.0", - "CERN-OHL-S-2.0", - "CERN-OHL-W-2.0", - "CNRI-Jython", - "CNRI-Python", - "CNRI-Python-GPL-Compatible", - "CPAL-1.0", - "CPL-1.0", - "CPOL-1.02", - "CUA-OPL-1.0", - "Caldera", - "ClArtistic", - "Condor-1.1", - "Crossword", - "CrystalStacker", - "Cube", - "D-FSL-1.0", - "DOC", - "DRL-1.0", - "DSDP", - "Dotseqn", - "ECL-1.0", - "ECL-2.0", - "EFL-1.0", - "EFL-2.0", - "EPICS", - "EPL-1.0", - "EPL-2.0", - "EUDatagrid", - "EUPL-1.0", - "EUPL-1.1", - "EUPL-1.2", - "Entessa", - "ErlPL-1.1", - "Eurosym", - "FSFAP", - "FSFUL", - "FSFULLR", - "FTL", - "Fair", - "Frameworx-1.0", - "FreeBSD-DOC", - "FreeImage", - "GD", - "GFDL-1.1-invariants-only", - "GFDL-1.1-invariants-or-later", - "GFDL-1.1-no-invariants-only", - "GFDL-1.1-no-invariants-or-later", - "GFDL-1.1-only", - "GFDL-1.1-or-later", - "GFDL-1.2-invariants-only", - "GFDL-1.2-invariants-or-later", - "GFDL-1.2-no-invariants-only", - "GFDL-1.2-no-invariants-or-later", - "GFDL-1.2-only", - "GFDL-1.2-or-later", - "GFDL-1.3-invariants-only", - "GFDL-1.3-invariants-or-later", - "GFDL-1.3-no-invariants-only", - "GFDL-1.3-no-invariants-or-later", - "GFDL-1.3-only", - "GFDL-1.3-or-later", - "GL2PS", - "GLWTPL", - "GPL-1.0-only", - "GPL-1.0-or-later", - "GPL-2.0-only", - "GPL-2.0-or-later", - "GPL-3.0-only", - "GPL-3.0-or-later", - "Giftware", - "Glide", - "Glulxe", - "HPND", - "HPND-sell-variant", - "HTMLTIDY", - "HaskellReport", - "Hippocratic-2.1", - "IBM-pibs", - "ICU", - "IJG", - "IPA", - "IPL-1.0", - "ISC", - "ImageMagick", - "Imlib2", - "Info-ZIP", - "Intel", - "Intel-ACPI", - "Interbase-1.0", - "JPNIC", - "JSON", - "JasPer-2.0", - "LAL-1.2", - "LAL-1.3", - "LGPL-2.0-only", - "LGPL-2.0-or-later", - "LGPL-2.1-only", - "LGPL-2.1-or-later", - "LGPL-3.0-only", - "LGPL-3.0-or-later", - "LGPLLR", - "LPL-1.0", - "LPL-1.02", - "LPPL-1.0", - "LPPL-1.1", - "LPPL-1.2", - "LPPL-1.3a", - "LPPL-1.3c", - "Latex2e", - "Leptonica", - "LiLiQ-P-1.1", - "LiLiQ-R-1.1", - "LiLiQ-Rplus-1.1", - "Libpng", - "Linux-OpenIB", - "MIT", - "MIT-0", - "MIT-CMU", - "MIT-Modern-Variant", - "MIT-advertising", - "MIT-enna", - "MIT-feh", - "MIT-open-group", - "MITNFA", - "MPL-1.0", - "MPL-1.1", - "MPL-2.0", - "MPL-2.0-no-copyleft-exception", - "MS-PL", - "MS-RL", - "MTLL", - "MakeIndex", - "MirOS", - "Motosoto", - "MulanPSL-1.0", - "MulanPSL-2.0", - "Multics", - "Mup", - "NAIST-2003", - "NASA-1.3", - "NBPL-1.0", - "NCGL-UK-2.0", - "NCSA", - "NGPL", - "NIST-PD", - "NIST-PD-fallback", - "NLOD-1.0", - "NLOD-2.0", - "NLPL", - "NOSL", - "NPL-1.0", - "NPL-1.1", - "NPOSL-3.0", - "NRL", - "NTP", - "NTP-0", - "Naumen", - "Net-SNMP", - "NetCDF", - "Newsletr", - "Nokia", - "Noweb", - "O-UDA-1.0", - "OCCT-PL", - "OCLC-2.0", - "ODC-By-1.0", - "ODbL-1.0", - "OFL-1.0", - "OFL-1.0-RFN", - "OFL-1.0-no-RFN", - "OFL-1.1", - "OFL-1.1-RFN", - "OFL-1.1-no-RFN", - "OGC-1.0", - "OGDL-Taiwan-1.0", - "OGL-Canada-2.0", - "OGL-UK-1.0", - "OGL-UK-2.0", - "OGL-UK-3.0", - "OGTSL", - "OLDAP-1.1", - "OLDAP-1.2", - "OLDAP-1.3", - "OLDAP-1.4", - "OLDAP-2.0", - "OLDAP-2.0.1", - "OLDAP-2.1", - "OLDAP-2.2", - "OLDAP-2.2.1", - "OLDAP-2.2.2", - "OLDAP-2.3", - "OLDAP-2.4", - "OLDAP-2.5", - "OLDAP-2.6", - "OLDAP-2.7", - "OLDAP-2.8", - "OML", - "OPL-1.0", - "OPUBL-1.0", - "OSET-PL-2.1", - "OSL-1.0", - "OSL-1.1", - "OSL-2.0", - "OSL-2.1", - "OSL-3.0", - "OpenSSL", - "PDDL-1.0", - "PHP-3.0", - "PHP-3.01", - "PSF-2.0", - "Parity-6.0.0", - "Parity-7.0.0", - "Plexus", - "PolyForm-Noncommercial-1.0.0", - "PolyForm-Small-Business-1.0.0", - "PostgreSQL", - "Python-2.0", - "QPL-1.0", - "Qhull", - "RHeCos-1.1", - "RPL-1.1", - "RPL-1.5", - "RPSL-1.0", - "RSA-MD", - "RSCPL", - "Rdisc", - "Ruby", - "SAX-PD", - "SCEA", - "SGI-B-1.0", - "SGI-B-1.1", - "SGI-B-2.0", - "SHL-0.5", - "SHL-0.51", - "SISSL", - "SISSL-1.2", - "SMLNJ", - "SMPPL", - "SNIA", - "SPL-1.0", - "SSH-OpenSSH", - "SSH-short", - "SSPL-1.0", - "SWL", - "Saxpath", - "Sendmail", - "Sendmail-8.23", - "SimPL-2.0", - "Sleepycat", - "Spencer-86", - "Spencer-94", - "Spencer-99", - "SugarCRM-1.1.3", - "TAPR-OHL-1.0", - "TCL", - "TCP-wrappers", - "TMate", - "TORQUE-1.1", - "TOSL", - "TU-Berlin-1.0", - "TU-Berlin-2.0", - "UCL-1.0", - "UPL-1.0", - "Unicode-DFS-2015", - "Unicode-DFS-2016", - "Unicode-TOU", - "Unlicense", - "VOSTROM", - "VSL-1.0", - "Vim", - "W3C", - "W3C-19980720", - "W3C-20150513", - "WTFPL", - "Watcom-1.0", - "Wsuipa", - "X11", - "XFree86-1.1", - "XSkat", - "Xerox", - "Xnet", - "YPL-1.0", - "YPL-1.1", - "ZPL-1.1", - "ZPL-2.0", - "ZPL-2.1", - "Zed", - "Zend-2.0", - "Zimbra-1.3", - "Zimbra-1.4", - "Zlib", - "blessing", - "bzip2-1.0.5", - "bzip2-1.0.6", - "copyleft-next-0.3.0", - "copyleft-next-0.3.1", - "curl", - "diffmark", - "dvipdfm", - "eGenix", - "etalab-2.0", - "gSOAP-1.3b", - "gnuplot", - "iMatix", - "libpng-2.0", - "libselinux-1.0", - "libtiff", - "mpich2", - "psfrag", - "psutils", - "xinetd", - "xpp", - "zlib-acknowledgement" - ]; - } -}); - -// ../../node_modules/.pnpm/spdx-license-ids@3.0.10/node_modules/spdx-license-ids/deprecated.json -var require_deprecated = __commonJS({ - "../../node_modules/.pnpm/spdx-license-ids@3.0.10/node_modules/spdx-license-ids/deprecated.json"(exports2, module2) { - module2.exports = [ - "AGPL-1.0", - "AGPL-3.0", - "BSD-2-Clause-FreeBSD", - "BSD-2-Clause-NetBSD", - "GFDL-1.1", - "GFDL-1.2", - "GFDL-1.3", - "GPL-1.0", - "GPL-2.0", - "GPL-2.0-with-GCC-exception", - "GPL-2.0-with-autoconf-exception", - "GPL-2.0-with-bison-exception", - "GPL-2.0-with-classpath-exception", - "GPL-2.0-with-font-exception", - "GPL-3.0", - "GPL-3.0-with-GCC-exception", - "GPL-3.0-with-autoconf-exception", - "LGPL-2.0", - "LGPL-2.1", - "LGPL-3.0", - "Nunit", - "StandardML-NJ", - "eCos-2.0", - "wxWindows" - ]; - } -}); - -// ../../node_modules/.pnpm/spdx-exceptions@2.3.0/node_modules/spdx-exceptions/index.json -var require_spdx_exceptions = __commonJS({ - "../../node_modules/.pnpm/spdx-exceptions@2.3.0/node_modules/spdx-exceptions/index.json"(exports2, module2) { - module2.exports = [ - "389-exception", - "Autoconf-exception-2.0", - "Autoconf-exception-3.0", - "Bison-exception-2.2", - "Bootloader-exception", - "Classpath-exception-2.0", - "CLISP-exception-2.0", - "DigiRule-FOSS-exception", - "eCos-exception-2.0", - "Fawkes-Runtime-exception", - "FLTK-exception", - "Font-exception-2.0", - "freertos-exception-2.0", - "GCC-exception-2.0", - "GCC-exception-3.1", - "gnu-javamail-exception", - "GPL-3.0-linking-exception", - "GPL-3.0-linking-source-exception", - "GPL-CC-1.0", - "i2p-gpl-java-exception", - "Libtool-exception", - "Linux-syscall-note", - "LLVM-exception", - "LZMA-exception", - "mif-exception", - "Nokia-Qt-exception-1.1", - "OCaml-LGPL-linking-exception", - "OCCT-exception-1.0", - "OpenJDK-assembly-exception-1.0", - "openvpn-openssl-exception", - "PS-or-PDF-font-exception-20170817", - "Qt-GPL-exception-1.0", - "Qt-LGPL-exception-1.1", - "Qwt-exception-1.0", - "Swift-exception", - "u-boot-exception-2.0", - "Universal-FOSS-exception-1.0", - "WxWindows-exception-3.1" - ]; - } -}); - -// ../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/scan.js -var require_scan3 = __commonJS({ - "../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/scan.js"(exports2, module2) { - "use strict"; - var licenses = [].concat(require_spdx_license_ids()).concat(require_deprecated()); - var exceptions = require_spdx_exceptions(); - module2.exports = function(source) { - var index = 0; - function hasMore() { - return index < source.length; + deleteEntry(p, index) { + this.unregisterEntry(p); + const rc = this.libzip.delete(this.zip, index); + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } } - function read(value) { - if (value instanceof RegExp) { - var chars = source.slice(index); - var match = chars.match(value); - if (match) { - index += match[0].length; - return match[0]; + resolveFilename(reason, p, resolveLastComponent = true, throwIfNoEntry = true) { + if (!this.ready) + throw fslib_5.errors.EBUSY(`archive closed, ${reason}`); + let resolvedP = fslib_6.ppath.resolve(fslib_6.PortablePath.root, p); + if (resolvedP === `/`) + return fslib_6.PortablePath.root; + const fileIndex = this.entries.get(resolvedP); + if (resolveLastComponent && fileIndex !== void 0) { + if (this.symlinkCount !== 0 && this.isSymbolicLink(fileIndex)) { + const target = this.getFileSource(fileIndex).toString(); + return this.resolveFilename(reason, fslib_6.ppath.resolve(fslib_6.ppath.dirname(resolvedP), target), true, throwIfNoEntry); + } else { + return resolvedP; } - } else { - if (source.indexOf(value, index) === index) { - index += value.length; - return value; + } + while (true) { + const parentP = this.resolveFilename(reason, fslib_6.ppath.dirname(resolvedP), true, throwIfNoEntry); + if (parentP === void 0) + return parentP; + const isDir = this.listings.has(parentP); + const doesExist = this.entries.has(parentP); + if (!isDir && !doesExist) { + if (throwIfNoEntry === false) + return void 0; + throw fslib_5.errors.ENOENT(reason); + } + if (!isDir) + throw fslib_5.errors.ENOTDIR(reason); + resolvedP = fslib_6.ppath.resolve(parentP, fslib_6.ppath.basename(resolvedP)); + if (!resolveLastComponent || this.symlinkCount === 0) + break; + const index = this.libzip.name.locate(this.zip, resolvedP.slice(1), 0); + if (index === -1) + break; + if (this.isSymbolicLink(index)) { + const target = this.getFileSource(index).toString(); + resolvedP = fslib_6.ppath.resolve(fslib_6.ppath.dirname(resolvedP), target); + } else { + break; } } + return resolvedP; } - function skipWhitespace() { - read(/[ ]*/); + allocateBuffer(content) { + if (!Buffer.isBuffer(content)) + content = Buffer.from(content); + const buffer = this.libzip.malloc(content.byteLength); + if (!buffer) + throw new Error(`Couldn't allocate enough memory`); + const heap = new Uint8Array(this.libzip.HEAPU8.buffer, buffer, content.byteLength); + heap.set(content); + return { buffer, byteLength: content.byteLength }; } - function operator() { - var string; - var possibilities = ["WITH", "AND", "OR", "(", ")", ":", "+"]; - for (var i = 0; i < possibilities.length; i++) { - string = read(possibilities[i]); - if (string) { - break; + allocateUnattachedSource(content) { + const error = this.libzip.struct.errorS(); + const { buffer, byteLength } = this.allocateBuffer(content); + const source = this.libzip.source.fromUnattachedBuffer(buffer, byteLength, 0, 1, error); + if (source === 0) { + this.libzip.free(error); + throw this.makeLibzipError(error); + } + return source; + } + allocateSource(content) { + const { buffer, byteLength } = this.allocateBuffer(content); + const source = this.libzip.source.fromBuffer(this.zip, buffer, byteLength, 0, 1); + if (source === 0) { + this.libzip.free(buffer); + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + return source; + } + setFileSource(p, content) { + const buffer = Buffer.isBuffer(content) ? content : Buffer.from(content); + const target = fslib_6.ppath.relative(fslib_6.PortablePath.root, p); + const lzSource = this.allocateSource(content); + try { + const newIndex = this.libzip.file.add(this.zip, target, lzSource, this.libzip.ZIP_FL_OVERWRITE); + if (newIndex === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + if (this.level !== `mixed`) { + const method = this.level === 0 ? this.libzip.ZIP_CM_STORE : this.libzip.ZIP_CM_DEFLATE; + const rc = this.libzip.file.setCompression(this.zip, newIndex, 0, method, this.level); + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } } + this.fileSources.set(newIndex, buffer); + return newIndex; + } catch (error) { + this.libzip.source.free(lzSource); + throw error; } - if (string === "+" && index > 1 && source[index - 2] === " ") { - throw new Error("Space before `+`"); + } + isSymbolicLink(index) { + if (this.symlinkCount === 0) + return false; + const attrs = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); + if (attrs === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; + if (opsys !== this.libzip.ZIP_OPSYS_UNIX) + return false; + const attributes = this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; + return (attributes & fs_1.constants.S_IFMT) === fs_1.constants.S_IFLNK; + } + getFileSource(index, opts = { asyncDecompress: false }) { + const cachedFileSource = this.fileSources.get(index); + if (typeof cachedFileSource !== `undefined`) + return cachedFileSource; + const stat = this.libzip.struct.statS(); + const rc = this.libzip.statIndex(this.zip, index, 0, 0, stat); + if (rc === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + const size = this.libzip.struct.statCompSize(stat); + const compressionMethod = this.libzip.struct.statCompMethod(stat); + const buffer = this.libzip.malloc(size); + try { + const file = this.libzip.fopenIndex(this.zip, index, 0, this.libzip.ZIP_FL_COMPRESSED); + if (file === 0) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + try { + const rc2 = this.libzip.fread(file, buffer, size, 0); + if (rc2 === -1) + throw this.makeLibzipError(this.libzip.file.getError(file)); + else if (rc2 < size) + throw new Error(`Incomplete read`); + else if (rc2 > size) + throw new Error(`Overread`); + const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); + const data = Buffer.from(memory); + if (compressionMethod === 0) { + this.fileSources.set(index, data); + return data; + } else if (opts.asyncDecompress) { + return new Promise((resolve, reject) => { + zlib_1.default.inflateRaw(data, (error, result2) => { + if (error) { + reject(error); + } else { + this.fileSources.set(index, result2); + resolve(result2); + } + }); + }); + } else { + const decompressedData = zlib_1.default.inflateRawSync(data); + this.fileSources.set(index, decompressedData); + return decompressedData; + } + } finally { + this.libzip.fclose(file); + } + } finally { + this.libzip.free(buffer); } - return string && { - type: "OPERATOR", - string + } + async fchmodPromise(fd, mask) { + return this.chmodPromise(this.fdToPath(fd, `fchmod`), mask); + } + fchmodSync(fd, mask) { + return this.chmodSync(this.fdToPath(fd, `fchmodSync`), mask); + } + async chmodPromise(p, mask) { + return this.chmodSync(p, mask); + } + chmodSync(p, mask) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`chmod '${p}'`); + mask &= 493; + const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false); + const entry = this.entries.get(resolvedP); + if (typeof entry === `undefined`) + throw new Error(`Assertion failed: The entry should have been registered (${resolvedP})`); + const oldMod = this.getUnixMode(entry, fs_1.constants.S_IFREG | 0); + const newMod = oldMod & ~511 | mask; + const rc = this.libzip.file.setExternalAttributes(this.zip, entry, 0, 0, this.libzip.ZIP_OPSYS_UNIX, newMod << 16); + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + } + async fchownPromise(fd, uid, gid) { + return this.chownPromise(this.fdToPath(fd, `fchown`), uid, gid); + } + fchownSync(fd, uid, gid) { + return this.chownSync(this.fdToPath(fd, `fchownSync`), uid, gid); + } + async chownPromise(p, uid, gid) { + return this.chownSync(p, uid, gid); + } + chownSync(p, uid, gid) { + throw new Error(`Unimplemented`); + } + async renamePromise(oldP, newP) { + return this.renameSync(oldP, newP); + } + renameSync(oldP, newP) { + throw new Error(`Unimplemented`); + } + async copyFilePromise(sourceP, destP, flags) { + const { indexSource, indexDest, resolvedDestP } = this.prepareCopyFile(sourceP, destP, flags); + const source = await this.getFileSource(indexSource, { asyncDecompress: true }); + const newIndex = this.setFileSource(resolvedDestP, source); + if (newIndex !== indexDest) { + this.registerEntry(resolvedDestP, newIndex); + } + } + copyFileSync(sourceP, destP, flags = 0) { + const { indexSource, indexDest, resolvedDestP } = this.prepareCopyFile(sourceP, destP, flags); + const source = this.getFileSource(indexSource); + const newIndex = this.setFileSource(resolvedDestP, source); + if (newIndex !== indexDest) { + this.registerEntry(resolvedDestP, newIndex); + } + } + prepareCopyFile(sourceP, destP, flags = 0) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`copyfile '${sourceP} -> '${destP}'`); + if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) + throw fslib_5.errors.ENOSYS(`unsupported clone operation`, `copyfile '${sourceP}' -> ${destP}'`); + const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP); + const indexSource = this.entries.get(resolvedSourceP); + if (typeof indexSource === `undefined`) + throw fslib_5.errors.EINVAL(`copyfile '${sourceP}' -> '${destP}'`); + const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP); + const indexDest = this.entries.get(resolvedDestP); + if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`) + throw fslib_5.errors.EEXIST(`copyfile '${sourceP}' -> '${destP}'`); + return { + indexSource, + resolvedDestP, + indexDest }; } - function idstring() { - return read(/[A-Za-z0-9-.]+/); + async appendFilePromise(p, content, opts) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`open '${p}'`); + if (typeof opts === `undefined`) + opts = { flag: `a` }; + else if (typeof opts === `string`) + opts = { flag: `a`, encoding: opts }; + else if (typeof opts.flag === `undefined`) + opts = { flag: `a`, ...opts }; + return this.writeFilePromise(p, content, opts); + } + appendFileSync(p, content, opts = {}) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`open '${p}'`); + if (typeof opts === `undefined`) + opts = { flag: `a` }; + else if (typeof opts === `string`) + opts = { flag: `a`, encoding: opts }; + else if (typeof opts.flag === `undefined`) + opts = { flag: `a`, ...opts }; + return this.writeFileSync(p, content, opts); } - function expectIdstring() { - var string = idstring(); - if (!string) { - throw new Error("Expected idstring at offset " + index); - } - return string; + fdToPath(fd, reason) { + var _a; + const path2 = (_a = this.fds.get(fd)) === null || _a === void 0 ? void 0 : _a.p; + if (typeof path2 === `undefined`) + throw fslib_5.errors.EBADF(reason); + return path2; } - function documentRef() { - if (read("DocumentRef-")) { - var string = expectIdstring(); - return { type: "DOCUMENTREF", string }; + async writeFilePromise(p, content, opts) { + const { encoding, mode, index, resolvedP } = this.prepareWriteFile(p, opts); + if (index !== void 0 && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) + content = Buffer.concat([await this.getFileSource(index, { asyncDecompress: true }), Buffer.from(content)]); + if (encoding !== null) + content = content.toString(encoding); + const newIndex = this.setFileSource(resolvedP, content); + if (newIndex !== index) + this.registerEntry(resolvedP, newIndex); + if (mode !== null) { + await this.chmodPromise(resolvedP, mode); } } - function licenseRef() { - if (read("LicenseRef-")) { - var string = expectIdstring(); - return { type: "LICENSEREF", string }; + writeFileSync(p, content, opts) { + const { encoding, mode, index, resolvedP } = this.prepareWriteFile(p, opts); + if (index !== void 0 && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) + content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]); + if (encoding !== null) + content = content.toString(encoding); + const newIndex = this.setFileSource(resolvedP, content); + if (newIndex !== index) + this.registerEntry(resolvedP, newIndex); + if (mode !== null) { + this.chmodSync(resolvedP, mode); } } - function identifier() { - var begin = index; - var string = idstring(); - if (licenses.indexOf(string) !== -1) { - return { - type: "LICENSE", - string - }; - } else if (exceptions.indexOf(string) !== -1) { - return { - type: "EXCEPTION", - string - }; + prepareWriteFile(p, opts) { + if (typeof p === `number`) + p = this.fdToPath(p, `read`); + if (this.readOnly) + throw fslib_5.errors.EROFS(`open '${p}'`); + const resolvedP = this.resolveFilename(`open '${p}'`, p); + if (this.listings.has(resolvedP)) + throw fslib_5.errors.EISDIR(`open '${p}'`); + let encoding = null, mode = null; + if (typeof opts === `string`) { + encoding = opts; + } else if (typeof opts === `object`) { + ({ + encoding = null, + mode = null + } = opts); } - index = begin; - } - function parseToken() { - return operator() || documentRef() || licenseRef() || identifier(); + const index = this.entries.get(resolvedP); + return { + encoding, + mode, + resolvedP, + index + }; } - var tokens = []; - while (hasMore()) { - skipWhitespace(); - if (!hasMore()) { - break; - } - var token = parseToken(); - if (!token) { - throw new Error("Unexpected `" + source[index] + "` at offset " + index); - } - tokens.push(token); + async unlinkPromise(p) { + return this.unlinkSync(p); } - return tokens; - }; - } -}); - -// ../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/parse.js -var require_parse6 = __commonJS({ - "../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/parse.js"(exports2, module2) { - "use strict"; - module2.exports = function(tokens) { - var index = 0; - function hasMore() { - return index < tokens.length; + unlinkSync(p) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`unlink '${p}'`); + const resolvedP = this.resolveFilename(`unlink '${p}'`, p); + if (this.listings.has(resolvedP)) + throw fslib_5.errors.EISDIR(`unlink '${p}'`); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) + throw fslib_5.errors.EINVAL(`unlink '${p}'`); + this.deleteEntry(resolvedP, index); } - function token() { - return hasMore() ? tokens[index] : null; + async utimesPromise(p, atime, mtime) { + return this.utimesSync(p, atime, mtime); } - function next() { - if (!hasMore()) { - throw new Error(); - } - index++; + utimesSync(p, atime, mtime) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`utimes '${p}'`); + const resolvedP = this.resolveFilename(`utimes '${p}'`, p); + this.utimesImpl(resolvedP, mtime); } - function parseOperator(operator) { - var t = token(); - if (t && t.type === "OPERATOR" && operator === t.string) { - next(); - return t.string; - } + async lutimesPromise(p, atime, mtime) { + return this.lutimesSync(p, atime, mtime); } - function parseWith() { - if (parseOperator("WITH")) { - var t = token(); - if (t && t.type === "EXCEPTION") { - next(); - return t.string; - } - throw new Error("Expected exception after `WITH`"); - } + lutimesSync(p, atime, mtime) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`lutimes '${p}'`); + const resolvedP = this.resolveFilename(`utimes '${p}'`, p, false); + this.utimesImpl(resolvedP, mtime); } - function parseLicenseRef() { - var begin = index; - var string = ""; - var t = token(); - if (t.type === "DOCUMENTREF") { - next(); - string += "DocumentRef-" + t.string + ":"; - if (!parseOperator(":")) { - throw new Error("Expected `:` after `DocumentRef-...`"); - } + utimesImpl(resolvedP, mtime) { + if (this.listings.has(resolvedP)) { + if (!this.entries.has(resolvedP)) + this.hydrateDirectory(resolvedP); } - t = token(); - if (t.type === "LICENSEREF") { - next(); - string += "LicenseRef-" + t.string; - return { license: string }; + const entry = this.entries.get(resolvedP); + if (entry === void 0) + throw new Error(`Unreachable`); + const rc = this.libzip.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0); + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); } - index = begin; } - function parseLicense() { - var t = token(); - if (t && t.type === "LICENSE") { - next(); - var node2 = { license: t.string }; - if (parseOperator("+")) { - node2.plus = true; - } - var exception = parseWith(); - if (exception) { - node2.exception = exception; - } - return node2; - } + async mkdirPromise(p, opts) { + return this.mkdirSync(p, opts); } - function parseParenthesizedExpression() { - var left = parseOperator("("); - if (!left) { + mkdirSync(p, { mode = 493, recursive = false } = {}) { + if (recursive) + return this.mkdirpSync(p, { chmod: mode }); + if (this.readOnly) + throw fslib_5.errors.EROFS(`mkdir '${p}'`); + const resolvedP = this.resolveFilename(`mkdir '${p}'`, p); + if (this.entries.has(resolvedP) || this.listings.has(resolvedP)) + throw fslib_5.errors.EEXIST(`mkdir '${p}'`); + this.hydrateDirectory(resolvedP); + this.chmodSync(resolvedP, mode); + return void 0; + } + async rmdirPromise(p, opts) { + return this.rmdirSync(p, opts); + } + rmdirSync(p, { recursive = false } = {}) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`rmdir '${p}'`); + if (recursive) { + this.removeSync(p); return; } - var expr = parseExpression(); - if (!parseOperator(")")) { - throw new Error("Expected `)`"); - } - return expr; - } - function parseAtom() { - return parseParenthesizedExpression() || parseLicenseRef() || parseLicense(); + const resolvedP = this.resolveFilename(`rmdir '${p}'`, p); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) + throw fslib_5.errors.ENOTDIR(`rmdir '${p}'`); + if (directoryListing.size > 0) + throw fslib_5.errors.ENOTEMPTY(`rmdir '${p}'`); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) + throw fslib_5.errors.EINVAL(`rmdir '${p}'`); + this.deleteEntry(p, index); } - function makeBinaryOpParser(operator, nextParser) { - return function parseBinaryOp() { - var left = nextParser(); - if (!left) { - return; - } - if (!parseOperator(operator)) { - return left; - } - var right = parseBinaryOp(); - if (!right) { - throw new Error("Expected expression"); - } - return { - left, - conjunction: operator.toLowerCase(), - right - }; - }; + hydrateDirectory(resolvedP) { + const index = this.libzip.dir.add(this.zip, fslib_6.ppath.relative(fslib_6.PortablePath.root, resolvedP)); + if (index === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.registerListing(resolvedP); + this.registerEntry(resolvedP, index); + return index; } - var parseAnd = makeBinaryOpParser("AND", parseAtom); - var parseExpression = makeBinaryOpParser("OR", parseAnd); - var node = parseExpression(); - if (!node || hasMore()) { - throw new Error("Syntax error"); + async linkPromise(existingP, newP) { + return this.linkSync(existingP, newP); } - return node; - }; - } -}); - -// ../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/index.js -var require_spdx_expression_parse = __commonJS({ - "../../node_modules/.pnpm/spdx-expression-parse@3.0.1/node_modules/spdx-expression-parse/index.js"(exports2, module2) { - "use strict"; - var scan = require_scan3(); - var parse = require_parse6(); - module2.exports = function(source) { - return parse(scan(source)); - }; - } -}); - -// ../../node_modules/.pnpm/spdx-correct@3.1.1/node_modules/spdx-correct/index.js -var require_spdx_correct = __commonJS({ - "../../node_modules/.pnpm/spdx-correct@3.1.1/node_modules/spdx-correct/index.js"(exports2, module2) { - var parse = require_spdx_expression_parse(); - var spdxLicenseIds = require_spdx_license_ids(); - function valid(string) { - try { - parse(string); - return true; - } catch (error) { - return false; + linkSync(existingP, newP) { + throw fslib_5.errors.EOPNOTSUPP(`link '${existingP}' -> '${newP}'`); } - } - var transpositions = [ - ["APGL", "AGPL"], - ["Gpl", "GPL"], - ["GLP", "GPL"], - ["APL", "Apache"], - ["ISD", "ISC"], - ["GLP", "GPL"], - ["IST", "ISC"], - ["Claude", "Clause"], - [" or later", "+"], - [" International", ""], - ["GNU", "GPL"], - ["GUN", "GPL"], - ["+", ""], - ["GNU GPL", "GPL"], - ["GNU/GPL", "GPL"], - ["GNU GLP", "GPL"], - ["GNU General Public License", "GPL"], - ["Gnu public license", "GPL"], - ["GNU Public License", "GPL"], - ["GNU GENERAL PUBLIC LICENSE", "GPL"], - ["MTI", "MIT"], - ["Mozilla Public License", "MPL"], - ["Universal Permissive License", "UPL"], - ["WTH", "WTF"], - ["-License", ""] - ]; - var TRANSPOSED = 0; - var CORRECT = 1; - var transforms = [ - function(argument) { - return argument.toUpperCase(); - }, - function(argument) { - return argument.trim(); - }, - function(argument) { - return argument.replace(/\./g, ""); - }, - function(argument) { - return argument.replace(/\s+/g, ""); - }, - function(argument) { - return argument.replace(/\s+/g, "-"); - }, - function(argument) { - return argument.replace("v", "-"); - }, - function(argument) { - return argument.replace(/,?\s*(\d)/, "-$1"); - }, - function(argument) { - return argument.replace(/,?\s*(\d)/, "-$1.0"); - }, - function(argument) { - return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2"); - }, - function(argument) { - return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2.0"); - }, - function(argument) { - return argument[0].toUpperCase() + argument.slice(1); - }, - function(argument) { - return argument.replace("/", "-"); - }, - function(argument) { - return argument.replace(/\s*V\s*(\d)/, "-$1").replace(/(\d)$/, "$1.0"); - }, - function(argument) { - if (argument.indexOf("3.0") !== -1) { - return argument + "-or-later"; - } else { - return argument + "-only"; - } - }, - function(argument) { - return argument + "only"; - }, - function(argument) { - return argument.replace(/(\d)$/, "-$1.0"); - }, - function(argument) { - return argument.replace(/(-| )?(\d)$/, "-$2-Clause"); - }, - function(argument) { - return argument.replace(/(-| )clause(-| )(\d)/, "-$3-Clause"); - }, - function(argument) { - return argument.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i, "BSD-3-Clause"); - }, - function(argument) { - return argument.replace(/\bSimplified(-| )?BSD((-| )License)?/i, "BSD-2-Clause"); - }, - function(argument) { - return argument.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i, "BSD-2-Clause-$1BSD"); - }, - function(argument) { - return argument.replace(/\bClear(-| )?BSD((-| )License)?/i, "BSD-3-Clause-Clear"); - }, - function(argument) { - return argument.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i, "BSD-4-Clause"); - }, - function(argument) { - return "CC-" + argument; - }, - function(argument) { - return "CC-" + argument + "-4.0"; - }, - function(argument) { - return argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, ""); - }, - function(argument) { - return "CC-" + argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, "") + "-4.0"; + async symlinkPromise(target, p) { + return this.symlinkSync(target, p); } - ]; - var licensesWithVersions = spdxLicenseIds.map(function(id) { - var match = /^(.*)-\d+\.\d+$/.exec(id); - return match ? [match[0], match[1]] : [id, null]; - }).reduce(function(objectMap, item) { - var key = item[1]; - objectMap[key] = objectMap[key] || []; - objectMap[key].push(item[0]); - return objectMap; - }, {}); - var licensesWithOneVersion = Object.keys(licensesWithVersions).map(function makeEntries(key) { - return [key, licensesWithVersions[key]]; - }).filter(function identifySoleVersions(item) { - return item[1].length === 1 && item[0] !== null && item[0] !== "APL"; - }).map(function createLastResorts(item) { - return [item[0], item[1][0]]; - }); - licensesWithVersions = void 0; - var lastResorts = [ - ["UNLI", "Unlicense"], - ["WTF", "WTFPL"], - ["2 CLAUSE", "BSD-2-Clause"], - ["2-CLAUSE", "BSD-2-Clause"], - ["3 CLAUSE", "BSD-3-Clause"], - ["3-CLAUSE", "BSD-3-Clause"], - ["AFFERO", "AGPL-3.0-or-later"], - ["AGPL", "AGPL-3.0-or-later"], - ["APACHE", "Apache-2.0"], - ["ARTISTIC", "Artistic-2.0"], - ["Affero", "AGPL-3.0-or-later"], - ["BEER", "Beerware"], - ["BOOST", "BSL-1.0"], - ["BSD", "BSD-2-Clause"], - ["CDDL", "CDDL-1.1"], - ["ECLIPSE", "EPL-1.0"], - ["FUCK", "WTFPL"], - ["GNU", "GPL-3.0-or-later"], - ["LGPL", "LGPL-3.0-or-later"], - ["GPLV1", "GPL-1.0-only"], - ["GPL-1", "GPL-1.0-only"], - ["GPLV2", "GPL-2.0-only"], - ["GPL-2", "GPL-2.0-only"], - ["GPL", "GPL-3.0-or-later"], - ["MIT +NO-FALSE-ATTRIBS", "MITNFA"], - ["MIT", "MIT"], - ["MPL", "MPL-2.0"], - ["X11", "X11"], - ["ZLIB", "Zlib"] - ].concat(licensesWithOneVersion); - var SUBSTRING = 0; - var IDENTIFIER = 1; - var validTransformation = function(identifier) { - for (var i = 0; i < transforms.length; i++) { - var transformed = transforms[i](identifier).trim(); - if (transformed !== identifier && valid(transformed)) { - return transformed; - } + symlinkSync(target, p) { + if (this.readOnly) + throw fslib_5.errors.EROFS(`symlink '${target}' -> '${p}'`); + const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p); + if (this.listings.has(resolvedP)) + throw fslib_5.errors.EISDIR(`symlink '${target}' -> '${p}'`); + if (this.entries.has(resolvedP)) + throw fslib_5.errors.EEXIST(`symlink '${target}' -> '${p}'`); + const index = this.setFileSource(resolvedP, target); + this.registerEntry(resolvedP, index); + const rc = this.libzip.file.setExternalAttributes(this.zip, index, 0, 0, this.libzip.ZIP_OPSYS_UNIX, (fs_1.constants.S_IFLNK | 511) << 16); + if (rc === -1) + throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.symlinkCount += 1; } - return null; - }; - var validLastResort = function(identifier) { - var upperCased = identifier.toUpperCase(); - for (var i = 0; i < lastResorts.length; i++) { - var lastResort = lastResorts[i]; - if (upperCased.indexOf(lastResort[SUBSTRING]) > -1) { - return lastResort[IDENTIFIER]; - } + async readFilePromise(p, encoding) { + if (typeof encoding === `object`) + encoding = encoding ? encoding.encoding : void 0; + const data = await this.readFileBuffer(p, { asyncDecompress: true }); + return encoding ? data.toString(encoding) : data; } - return null; - }; - var anyCorrection = function(identifier, check) { - for (var i = 0; i < transpositions.length; i++) { - var transposition = transpositions[i]; - var transposed = transposition[TRANSPOSED]; - if (identifier.indexOf(transposed) > -1) { - var corrected = identifier.replace(transposed, transposition[CORRECT]); - var checked = check(corrected); - if (checked !== null) { - return checked; - } - } + readFileSync(p, encoding) { + if (typeof encoding === `object`) + encoding = encoding ? encoding.encoding : void 0; + const data = this.readFileBuffer(p); + return encoding ? data.toString(encoding) : data; } - return null; - }; - module2.exports = function(identifier, options) { - options = options || {}; - var upgrade = options.upgrade === void 0 ? true : !!options.upgrade; - function postprocess(value) { - return upgrade ? upgradeGPLs(value) : value; + readFileBuffer(p, opts = { asyncDecompress: false }) { + if (typeof p === `number`) + p = this.fdToPath(p, `read`); + const resolvedP = this.resolveFilename(`open '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`open '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOTDIR(`open '${p}'`); + if (this.listings.has(resolvedP)) + throw fslib_5.errors.EISDIR(`read`); + const entry = this.entries.get(resolvedP); + if (entry === void 0) + throw new Error(`Unreachable`); + return this.getFileSource(entry, opts); } - var validArugment = typeof identifier === "string" && identifier.trim().length !== 0; - if (!validArugment) { - throw Error("Invalid argument. Expected non-empty string."); + async readdirPromise(p, opts) { + return this.readdirSync(p, opts); } - identifier = identifier.trim(); - if (valid(identifier)) { - return postprocess(identifier); + readdirSync(p, opts) { + const resolvedP = this.resolveFilename(`scandir '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`scandir '${p}'`); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) + throw fslib_5.errors.ENOTDIR(`scandir '${p}'`); + const entries = [...directoryListing]; + if (!(opts === null || opts === void 0 ? void 0 : opts.withFileTypes)) + return entries; + return entries.map((name) => { + return Object.assign(this.statImpl(`lstat`, fslib_6.ppath.join(p, name)), { + name + }); + }); } - var noPlus = identifier.replace(/\+$/, "").trim(); - if (valid(noPlus)) { - return postprocess(noPlus); + async readlinkPromise(p) { + const entry = this.prepareReadlink(p); + return (await this.getFileSource(entry, { asyncDecompress: true })).toString(); } - var transformed = validTransformation(identifier); - if (transformed !== null) { - return postprocess(transformed); + readlinkSync(p) { + const entry = this.prepareReadlink(p); + return this.getFileSource(entry).toString(); } - transformed = anyCorrection(identifier, function(argument) { - if (valid(argument)) { - return argument; - } - return validTransformation(argument); - }); - if (transformed !== null) { - return postprocess(transformed); + prepareReadlink(p) { + const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOENT(`readlink '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) + throw fslib_5.errors.ENOTDIR(`open '${p}'`); + if (this.listings.has(resolvedP)) + throw fslib_5.errors.EINVAL(`readlink '${p}'`); + const entry = this.entries.get(resolvedP); + if (entry === void 0) + throw new Error(`Unreachable`); + if (!this.isSymbolicLink(entry)) + throw fslib_5.errors.EINVAL(`readlink '${p}'`); + return entry; } - transformed = validLastResort(identifier); - if (transformed !== null) { - return postprocess(transformed); + async truncatePromise(p, len = 0) { + const resolvedP = this.resolveFilename(`open '${p}'`, p); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) + throw fslib_5.errors.EINVAL(`open '${p}'`); + const source = await this.getFileSource(index, { asyncDecompress: true }); + const truncated = Buffer.alloc(len, 0); + source.copy(truncated); + return await this.writeFilePromise(p, truncated); } - transformed = anyCorrection(identifier, validLastResort); - if (transformed !== null) { - return postprocess(transformed); + truncateSync(p, len = 0) { + const resolvedP = this.resolveFilename(`open '${p}'`, p); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) + throw fslib_5.errors.EINVAL(`open '${p}'`); + const source = this.getFileSource(index); + const truncated = Buffer.alloc(len, 0); + source.copy(truncated); + return this.writeFileSync(p, truncated); } - return null; - }; - function upgradeGPLs(value) { - if ([ - "GPL-1.0", - "LGPL-1.0", - "AGPL-1.0", - "GPL-2.0", - "LGPL-2.0", - "AGPL-2.0", - "LGPL-2.1" - ].indexOf(value) !== -1) { - return value + "-only"; - } else if ([ - "GPL-1.0+", - "GPL-2.0+", - "GPL-3.0+", - "LGPL-2.0+", - "LGPL-2.1+", - "LGPL-3.0+", - "AGPL-1.0+", - "AGPL-3.0+" - ].indexOf(value) !== -1) { - return value.replace(/\+$/, "-or-later"); - } else if (["GPL-3.0", "LGPL-3.0", "AGPL-3.0"].indexOf(value) !== -1) { - return value + "-or-later"; - } else { - return value; + async ftruncatePromise(fd, len) { + return this.truncatePromise(this.fdToPath(fd, `ftruncate`), len); } - } - } -}); - -// ../../node_modules/.pnpm/validate-npm-package-license@3.0.4/node_modules/validate-npm-package-license/index.js -var require_validate_npm_package_license = __commonJS({ - "../../node_modules/.pnpm/validate-npm-package-license@3.0.4/node_modules/validate-npm-package-license/index.js"(exports2, module2) { - var parse = require_spdx_expression_parse(); - var correct = require_spdx_correct(); - var genericWarning = 'license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN "'; - var fileReferenceRE = /^SEE LICEN[CS]E IN (.+)$/; - function startsWith(prefix, string) { - return string.slice(0, prefix.length) === prefix; - } - function usesLicenseRef(ast) { - if (ast.hasOwnProperty("license")) { - var license = ast.license; - return startsWith("LicenseRef", license) || startsWith("DocumentRef", license); - } else { - return usesLicenseRef(ast.left) || usesLicenseRef(ast.right); + ftruncateSync(fd, len) { + return this.truncateSync(this.fdToPath(fd, `ftruncateSync`), len); } - } - module2.exports = function(argument) { - var ast; - try { - ast = parse(argument); - } catch (e) { - var match; - if (argument === "UNLICENSED" || argument === "UNLICENCED") { - return { - validForOldPackages: true, - validForNewPackages: true, - unlicensed: true - }; - } else if (match = fileReferenceRE.exec(argument)) { - return { - validForOldPackages: true, - validForNewPackages: true, - inFile: match[1] - }; - } else { - var result = { - validForOldPackages: false, - validForNewPackages: false, - warnings: [genericWarning] - }; - if (argument.trim().length !== 0) { - var corrected = correct(argument); - if (corrected) { - result.warnings.push('license is similar to the valid expression "' + corrected + '"'); + watch(p, a, b) { + let persistent; + switch (typeof a) { + case `function`: + case `string`: + case `undefined`: + { + persistent = true; } - } - return result; + break; + default: + { + ({ persistent = true } = a); + } + break; } + if (!persistent) + return { on: () => { + }, close: () => { + } }; + const interval = setInterval(() => { + }, 24 * 60 * 60 * 1e3); + return { on: () => { + }, close: () => { + clearInterval(interval); + } }; } - if (usesLicenseRef(ast)) { - return { - validForNewPackages: false, - validForOldPackages: false, - spdx: true, - warnings: [genericWarning] - }; - } else { - return { - validForNewPackages: true, - validForOldPackages: true, - spdx: true - }; + watchFile(p, a, b) { + const resolvedP = fslib_6.ppath.resolve(fslib_6.PortablePath.root, p); + return (0, fslib_4.watchFile)(this, resolvedP, a, b); + } + unwatchFile(p, cb) { + const resolvedP = fslib_6.ppath.resolve(fslib_6.PortablePath.root, p); + return (0, fslib_4.unwatchFile)(this, resolvedP, cb); } }; + exports2.ZipFS = ZipFS; } }); -// ../../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js -var require_implementation = __commonJS({ - "../../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/mountMemoryDrive.js +var require_mountMemoryDrive = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/mountMemoryDrive.js"(exports2) { "use strict"; - var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; - var slice = Array.prototype.slice; - var toStr = Object.prototype.toString; - var funcType = "[object Function]"; - module2.exports = function bind(that) { - var target = this; - if (typeof target !== "function" || toStr.call(target) !== funcType) { - throw new TypeError(ERROR_MESSAGE + target); - } - var args2 = slice.call(arguments, 1); - var bound; - var binder = function() { - if (this instanceof bound) { - var result = target.apply(this, args2.concat(slice.call(arguments))); - if (Object(result) === result) { - return result; - } - return this; - } else { - return target.apply(that, args2.concat(slice.call(arguments))); - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mountMemoryDrive = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var fslib_12 = require_lib50(); + var fs_1 = tslib_12.__importDefault(require("fs")); + var ZipFS_1 = require_ZipFS(); + function mountMemoryDrive(origFs, mountPoint, source = Buffer.alloc(0)) { + const archive = new ZipFS_1.ZipFS(source); + const getMountPoint = (p) => { + const detectedMountPoint = p.startsWith(`${mountPoint}/`) ? p.slice(0, mountPoint.length) : null; + return detectedMountPoint; }; - var boundLength = Math.max(0, target.length - args2.length); - var boundArgs = []; - for (var i = 0; i < boundLength; i++) { - boundArgs.push("$" + i); - } - bound = Function("binder", "return function (" + boundArgs.join(",") + "){ return binder.apply(this,arguments); }")(binder); - if (target.prototype) { - var Empty = function Empty2() { - }; - Empty.prototype = target.prototype; - bound.prototype = new Empty(); - Empty.prototype = null; - } - return bound; - }; + const factoryPromise = async (baseFs, p) => { + return () => archive; + }; + const factorySync = (baseFs, p) => { + return archive; + }; + const localFs = { ...origFs }; + const nodeFs = new fslib_12.NodeFS(localFs); + const mountFs = new fslib_12.MountFS({ + baseFs: nodeFs, + getMountPoint, + factoryPromise, + factorySync, + magicByte: 21, + maxAge: Infinity + }); + (0, fslib_12.patchFs)(fs_1.default, new fslib_12.PosixFS(mountFs)); + return archive; + } + exports2.mountMemoryDrive = mountMemoryDrive; } }); -// ../../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js -var require_function_bind = __commonJS({ - "../../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/common.js +var require_common8 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/common.js"(exports2) { "use strict"; - var implementation = require_implementation(); - module2.exports = Function.prototype.bind || implementation; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mountMemoryDrive = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + tslib_12.__exportStar(require_ZipOpenFS(), exports2); + tslib_12.__exportStar(require_ZipFS(), exports2); + var mountMemoryDrive_1 = require_mountMemoryDrive(); + Object.defineProperty(exports2, "mountMemoryDrive", { enumerable: true, get: function() { + return mountMemoryDrive_1.mountMemoryDrive; + } }); } }); -// ../../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js -var require_src5 = __commonJS({ - "../../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/sync.js +var require_sync9 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+libzip@3.0.0-rc.25(@yarnpkg+fslib@3.0.0-rc.25)/node_modules/@yarnpkg/libzip/lib/sync.js"(exports2) { "use strict"; - var bind = require_function_bind(); - module2.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); - } -}); - -// ../../node_modules/.pnpm/is-core-module@2.6.0/node_modules/is-core-module/core.json -var require_core4 = __commonJS({ - "../../node_modules/.pnpm/is-core-module@2.6.0/node_modules/is-core-module/core.json"(exports2, module2) { - module2.exports = { - assert: true, - "node:assert": ">= 16", - "assert/strict": ">= 15", - "node:assert/strict": ">= 16", - async_hooks: ">= 8", - "node:async_hooks": ">= 16", - buffer_ieee754: "< 0.9.7", - buffer: true, - "node:buffer": ">= 16", - child_process: true, - "node:child_process": ">= 16", - cluster: true, - "node:cluster": ">= 16", - console: true, - "node:console": ">= 16", - constants: true, - "node:constants": ">= 16", - crypto: true, - "node:crypto": ">= 16", - _debug_agent: ">= 1 && < 8", - _debugger: "< 8", - dgram: true, - "node:dgram": ">= 16", - diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], - "node:diagnostics_channel": ">= 16", - dns: true, - "node:dns": ">= 16", - "dns/promises": ">= 15", - "node:dns/promises": ">= 16", - domain: ">= 0.7.12", - "node:domain": ">= 16", - events: true, - "node:events": ">= 16", - freelist: "< 6", - fs: true, - "node:fs": ">= 16", - "fs/promises": [">= 10 && < 10.1", ">= 14"], - "node:fs/promises": ">= 16", - _http_agent: ">= 0.11.1", - "node:_http_agent": ">= 16", - _http_client: ">= 0.11.1", - "node:_http_client": ">= 16", - _http_common: ">= 0.11.1", - "node:_http_common": ">= 16", - _http_incoming: ">= 0.11.1", - "node:_http_incoming": ">= 16", - _http_outgoing: ">= 0.11.1", - "node:_http_outgoing": ">= 16", - _http_server: ">= 0.11.1", - "node:_http_server": ">= 16", - http: true, - "node:http": ">= 16", - http2: ">= 8.8", - "node:http2": ">= 16", - https: true, - "node:https": ">= 16", - inspector: ">= 8", - "node:inspector": ">= 16", - _linklist: "< 8", - module: true, - "node:module": ">= 16", - net: true, - "node:net": ">= 16", - "node-inspect/lib/_inspect": ">= 7.6 && < 12", - "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", - "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", - os: true, - "node:os": ">= 16", - path: true, - "node:path": ">= 16", - "path/posix": ">= 15.3", - "node:path/posix": ">= 16", - "path/win32": ">= 15.3", - "node:path/win32": ">= 16", - perf_hooks: ">= 8.5", - "node:perf_hooks": ">= 16", - process: ">= 1", - "node:process": ">= 16", - punycode: true, - "node:punycode": ">= 16", - querystring: true, - "node:querystring": ">= 16", - readline: true, - "node:readline": ">= 16", - repl: true, - "node:repl": ">= 16", - smalloc: ">= 0.11.5 && < 3", - _stream_duplex: ">= 0.9.4", - "node:_stream_duplex": ">= 16", - _stream_transform: ">= 0.9.4", - "node:_stream_transform": ">= 16", - _stream_wrap: ">= 1.4.1", - "node:_stream_wrap": ">= 16", - _stream_passthrough: ">= 0.9.4", - "node:_stream_passthrough": ">= 16", - _stream_readable: ">= 0.9.4", - "node:_stream_readable": ">= 16", - _stream_writable: ">= 0.9.4", - "node:_stream_writable": ">= 16", - stream: true, - "node:stream": ">= 16", - "stream/consumers": ">= 16.7", - "node:stream/consumers": ">= 16.7", - "stream/promises": ">= 15", - "node:stream/promises": ">= 16", - "stream/web": ">= 16.5", - "node:stream/web": ">= 16.5", - string_decoder: true, - "node:string_decoder": ">= 16", - sys: [">= 0.6 && < 0.7", ">= 0.8"], - "node:sys": ">= 16", - timers: true, - "node:timers": ">= 16", - "timers/promises": ">= 15", - "node:timers/promises": ">= 16", - _tls_common: ">= 0.11.13", - "node:_tls_common": ">= 16", - _tls_legacy: ">= 0.11.3 && < 10", - _tls_wrap: ">= 0.11.3", - "node:_tls_wrap": ">= 16", - tls: true, - "node:tls": ">= 16", - trace_events: ">= 10", - "node:trace_events": ">= 16", - tty: true, - "node:tty": ">= 16", - url: true, - "node:url": ">= 16", - util: true, - "node:util": ">= 16", - "util/types": ">= 15.3", - "node:util/types": ">= 16", - "v8/tools/arguments": ">= 10 && < 12", - "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], - "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], - "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], - "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], - "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], - "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], - v8: ">= 1", - "node:v8": ">= 16", - vm: true, - "node:vm": ">= 16", - wasi: ">= 13.4 && < 13.5", - worker_threads: ">= 11.7", - "node:worker_threads": ">= 16", - zlib: true, - "node:zlib": ">= 16" - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getLibzipPromise = exports2.getLibzipSync = void 0; + var tslib_12 = (init_tslib_es62(), __toCommonJS(tslib_es6_exports2)); + var instance_1 = require_instance(); + var libzipSync_1 = tslib_12.__importDefault(require_libzipSync()); + var makeInterface_1 = require_makeInterface(); + tslib_12.__exportStar(require_common8(), exports2); + (0, instance_1.setFactory)(() => { + const emZip = (0, libzipSync_1.default)(); + return (0, makeInterface_1.makeInterface)(emZip); + }); + function getLibzipSync() { + return (0, instance_1.getInstance)(); + } + exports2.getLibzipSync = getLibzipSync; + async function getLibzipPromise() { + return (0, instance_1.getInstance)(); + } + exports2.getLibzipPromise = getLibzipPromise; } }); -// ../../node_modules/.pnpm/is-core-module@2.6.0/node_modules/is-core-module/index.js -var require_is_core_module = __commonJS({ - "../../node_modules/.pnpm/is-core-module@2.6.0/node_modules/is-core-module/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/shell.js +var require_shell3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/shell.js"(exports2, module2) { "use strict"; - var has = require_src5(); - function specifierIncluded(current, specifier) { - var nodeParts = current.split("."); - var parts = specifier.split(" "); - var op = parts.length > 1 ? parts[0] : "="; - var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); - for (var i = 0; i < 3; ++i) { - var cur = parseInt(nodeParts[i] || 0, 10); - var ver = parseInt(versionParts[i] || 0, 10); - if (cur === ver) { - continue; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); + } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - if (op === "<") { - return cur < ver; + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - if (op === ">=") { - return cur >= ver; + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; + } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(line) { + return line ? line : []; + }, peg$c1 = function(command, type, then) { + return [{ command, type }].concat(then || []); + }, peg$c2 = function(command, type) { + return [{ command, type: type || ";" }]; + }, peg$c3 = function(then) { + return then; + }, peg$c4 = ";", peg$c5 = peg$literalExpectation(";", false), peg$c6 = "&", peg$c7 = peg$literalExpectation("&", false), peg$c8 = function(chain, then) { + return then ? { chain, then } : { chain }; + }, peg$c9 = function(type, then) { + return { type, line: then }; + }, peg$c10 = "&&", peg$c11 = peg$literalExpectation("&&", false), peg$c12 = "||", peg$c13 = peg$literalExpectation("||", false), peg$c14 = function(main, then) { + return then ? { ...main, then } : main; + }, peg$c15 = function(type, then) { + return { type, chain: then }; + }, peg$c16 = "|&", peg$c17 = peg$literalExpectation("|&", false), peg$c18 = "|", peg$c19 = peg$literalExpectation("|", false), peg$c20 = "=", peg$c21 = peg$literalExpectation("=", false), peg$c22 = function(name, arg) { + return { name, args: [arg] }; + }, peg$c23 = function(name) { + return { name, args: [] }; + }, peg$c24 = "(", peg$c25 = peg$literalExpectation("(", false), peg$c26 = ")", peg$c27 = peg$literalExpectation(")", false), peg$c28 = function(subshell, args2) { + return { type: `subshell`, subshell, args: args2 }; + }, peg$c29 = "{", peg$c30 = peg$literalExpectation("{", false), peg$c31 = "}", peg$c32 = peg$literalExpectation("}", false), peg$c33 = function(group, args2) { + return { type: `group`, group, args: args2 }; + }, peg$c34 = function(envs, args2) { + return { type: `command`, args: args2, envs }; + }, peg$c35 = function(envs) { + return { type: `envs`, envs }; + }, peg$c36 = function(args2) { + return args2; + }, peg$c37 = function(arg) { + return arg; + }, peg$c38 = /^[0-9]/, peg$c39 = peg$classExpectation([["0", "9"]], false, false), peg$c40 = function(fd, redirect, arg) { + return { type: `redirection`, subtype: redirect, fd: fd !== null ? parseInt(fd) : null, args: [arg] }; + }, peg$c41 = ">>", peg$c42 = peg$literalExpectation(">>", false), peg$c43 = ">&", peg$c44 = peg$literalExpectation(">&", false), peg$c45 = ">", peg$c46 = peg$literalExpectation(">", false), peg$c47 = "<<<", peg$c48 = peg$literalExpectation("<<<", false), peg$c49 = "<&", peg$c50 = peg$literalExpectation("<&", false), peg$c51 = "<", peg$c52 = peg$literalExpectation("<", false), peg$c53 = function(segments) { + return { type: `argument`, segments: [].concat(...segments) }; + }, peg$c54 = function(string) { + return string; + }, peg$c55 = "$'", peg$c56 = peg$literalExpectation("$'", false), peg$c57 = "'", peg$c58 = peg$literalExpectation("'", false), peg$c59 = function(text2) { + return [{ type: `text`, text: text2 }]; + }, peg$c60 = '""', peg$c61 = peg$literalExpectation('""', false), peg$c62 = function() { + return { type: `text`, text: `` }; + }, peg$c63 = '"', peg$c64 = peg$literalExpectation('"', false), peg$c65 = function(segments) { + return segments; + }, peg$c66 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: true }; + }, peg$c67 = function(shell) { + return { type: `shell`, shell, quoted: true }; + }, peg$c68 = function(variable) { + return { type: `variable`, ...variable, quoted: true }; + }, peg$c69 = function(text2) { + return { type: `text`, text: text2 }; + }, peg$c70 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: false }; + }, peg$c71 = function(shell) { + return { type: `shell`, shell, quoted: false }; + }, peg$c72 = function(variable) { + return { type: `variable`, ...variable, quoted: false }; + }, peg$c73 = function(pattern) { + return { type: `glob`, pattern }; + }, peg$c74 = /^[^']/, peg$c75 = peg$classExpectation(["'"], true, false), peg$c76 = function(chars) { + return chars.join(``); + }, peg$c77 = /^[^$"]/, peg$c78 = peg$classExpectation(["$", '"'], true, false), peg$c79 = "\\\n", peg$c80 = peg$literalExpectation("\\\n", false), peg$c81 = function() { + return ``; + }, peg$c82 = "\\", peg$c83 = peg$literalExpectation("\\", false), peg$c84 = /^[\\$"`]/, peg$c85 = peg$classExpectation(["\\", "$", '"', "`"], false, false), peg$c86 = function(c) { + return c; + }, peg$c87 = "\\a", peg$c88 = peg$literalExpectation("\\a", false), peg$c89 = function() { + return "a"; + }, peg$c90 = "\\b", peg$c91 = peg$literalExpectation("\\b", false), peg$c92 = function() { + return "\b"; + }, peg$c93 = /^[Ee]/, peg$c94 = peg$classExpectation(["E", "e"], false, false), peg$c95 = function() { + return "\x1B"; + }, peg$c96 = "\\f", peg$c97 = peg$literalExpectation("\\f", false), peg$c98 = function() { + return "\f"; + }, peg$c99 = "\\n", peg$c100 = peg$literalExpectation("\\n", false), peg$c101 = function() { + return "\n"; + }, peg$c102 = "\\r", peg$c103 = peg$literalExpectation("\\r", false), peg$c104 = function() { + return "\r"; + }, peg$c105 = "\\t", peg$c106 = peg$literalExpectation("\\t", false), peg$c107 = function() { + return " "; + }, peg$c108 = "\\v", peg$c109 = peg$literalExpectation("\\v", false), peg$c110 = function() { + return "\v"; + }, peg$c111 = /^[\\'"?]/, peg$c112 = peg$classExpectation(["\\", "'", '"', "?"], false, false), peg$c113 = function(c) { + return String.fromCharCode(parseInt(c, 16)); + }, peg$c114 = "\\x", peg$c115 = peg$literalExpectation("\\x", false), peg$c116 = "\\u", peg$c117 = peg$literalExpectation("\\u", false), peg$c118 = "\\U", peg$c119 = peg$literalExpectation("\\U", false), peg$c120 = function(c) { + return String.fromCodePoint(parseInt(c, 16)); + }, peg$c121 = /^[0-7]/, peg$c122 = peg$classExpectation([["0", "7"]], false, false), peg$c123 = /^[0-9a-fA-f]/, peg$c124 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "f"]], false, false), peg$c125 = peg$anyExpectation(), peg$c126 = "{}", peg$c127 = peg$literalExpectation("{}", false), peg$c128 = function() { + return "{}"; + }, peg$c129 = "-", peg$c130 = peg$literalExpectation("-", false), peg$c131 = "+", peg$c132 = peg$literalExpectation("+", false), peg$c133 = ".", peg$c134 = peg$literalExpectation(".", false), peg$c135 = function(sign, left, right) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseFloat(left.join(``) + `.` + right.join(``)) }; + }, peg$c136 = function(sign, value) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseInt(value.join(``)) }; + }, peg$c137 = function(variable) { + return { type: `variable`, ...variable }; + }, peg$c138 = function(name) { + return { type: `variable`, name }; + }, peg$c139 = function(value) { + return value; + }, peg$c140 = "*", peg$c141 = peg$literalExpectation("*", false), peg$c142 = "/", peg$c143 = peg$literalExpectation("/", false), peg$c144 = function(left, op, right) { + return { type: op === `*` ? `multiplication` : `division`, right }; + }, peg$c145 = function(left, rest) { + return rest.reduce((left2, right) => ({ left: left2, ...right }), left); + }, peg$c146 = function(left, op, right) { + return { type: op === `+` ? `addition` : `subtraction`, right }; + }, peg$c147 = "$((", peg$c148 = peg$literalExpectation("$((", false), peg$c149 = "))", peg$c150 = peg$literalExpectation("))", false), peg$c151 = function(arithmetic) { + return arithmetic; + }, peg$c152 = "$(", peg$c153 = peg$literalExpectation("$(", false), peg$c154 = function(command) { + return command; + }, peg$c155 = "${", peg$c156 = peg$literalExpectation("${", false), peg$c157 = ":-", peg$c158 = peg$literalExpectation(":-", false), peg$c159 = function(name, arg) { + return { name, defaultValue: arg }; + }, peg$c160 = ":-}", peg$c161 = peg$literalExpectation(":-}", false), peg$c162 = function(name) { + return { name, defaultValue: [] }; + }, peg$c163 = ":+", peg$c164 = peg$literalExpectation(":+", false), peg$c165 = function(name, arg) { + return { name, alternativeValue: arg }; + }, peg$c166 = ":+}", peg$c167 = peg$literalExpectation(":+}", false), peg$c168 = function(name) { + return { name, alternativeValue: [] }; + }, peg$c169 = function(name) { + return { name }; + }, peg$c170 = "$", peg$c171 = peg$literalExpectation("$", false), peg$c172 = function(pattern) { + return options.isGlobPattern(pattern); + }, peg$c173 = function(pattern) { + return pattern; + }, peg$c174 = /^[a-zA-Z0-9_]/, peg$c175 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false), peg$c176 = function() { + return text(); + }, peg$c177 = /^[$@*?#a-zA-Z0-9_\-]/, peg$c178 = peg$classExpectation(["$", "@", "*", "?", "#", ["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c179 = /^[()}<>$|&; \t"']/, peg$c180 = peg$classExpectation(["(", ")", "}", "<", ">", "$", "|", "&", ";", " ", " ", '"', "'"], false, false), peg$c181 = /^[<>&; \t"']/, peg$c182 = peg$classExpectation(["<", ">", "&", ";", " ", " ", '"', "'"], false, false), peg$c183 = /^[ \t]/, peg$c184 = peg$classExpectation([" ", " "], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; + } + peg$posDetailsCache[pos] = details; + return details; } - return false; } - return op === ">="; - } - function matchesRange(current, range) { - var specifiers = range.split(/ ?&& ?/); - if (specifiers.length === 0) { - return false; + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } + }; } - for (var i = 0; i < specifiers.length; ++i) { - if (!specifierIncluded(current, specifiers[i])) { - return false; + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; + } + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } + peg$maxFailExpected.push(expected2); } - return true; - } - function versionIncluded(nodeVersion, specifierValue) { - if (typeof specifierValue === "boolean") { - return specifierValue; + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); } - var current = typeof nodeVersion === "undefined" ? process.versions && process.versions.node : nodeVersion; - if (typeof current !== "string") { - throw new TypeError(typeof nodeVersion === "undefined" ? "Unable to determine current node version" : "If provided, a valid node version is required"); + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); } - if (specifierValue && typeof specifierValue === "object") { - for (var i = 0; i < specifierValue.length; ++i) { - if (matchesRange(current, specifierValue[i])) { - return true; + function peg$parseStart() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return false; - } - return matchesRange(current, specifierValue); - } - var data = require_core4(); - module2.exports = function isCore(x, nodeVersion) { - return has(data, x) && versionIncluded(nodeVersion, data[x]); - }; - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/extract_description.js -var require_extract_description = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/extract_description.js"(exports2, module2) { - module2.exports = extractDescription; - function extractDescription(d) { - if (!d) { - return; - } - if (d === "ERROR: No README data found!") { - return; - } - d = d.trim().split("\n"); - for (var s = 0; d[s] && d[s].trim().match(/^(#|$)/); s++) { - ; - } - var l = d.length; - for (var e = s + 1; e < l && d[e].trim(); e++) { - ; + return s0; } - return d.slice(s, e).join(" ").trim(); - } - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/typos.json -var require_typos = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/typos.json"(exports2, module2) { - module2.exports = { - topLevel: { - dependancies: "dependencies", - dependecies: "dependencies", - depdenencies: "dependencies", - devEependencies: "devDependencies", - depends: "dependencies", - "dev-dependencies": "devDependencies", - devDependences: "devDependencies", - devDepenencies: "devDependencies", - devdependencies: "devDependencies", - repostitory: "repository", - repo: "repository", - prefereGlobal: "preferGlobal", - hompage: "homepage", - hampage: "homepage", - autohr: "author", - autor: "author", - contributers: "contributors", - publicationConfig: "publishConfig", - script: "scripts" - }, - bugs: { web: "url", name: "url" }, - script: { server: "start", tests: "test" } - }; - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/fixer.js -var require_fixer = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/fixer.js"(exports2, module2) { - var isValidSemver = require_valid(); - var cleanSemver = require_clean(); - var validateLicense = require_validate_npm_package_license(); - var hostedGitInfo = require_hosted_git_info(); - var isBuiltinModule = require_is_core_module(); - var depTypes = ["dependencies", "devDependencies", "optionalDependencies"]; - var extractDescription = require_extract_description(); - var url = require("url"); - var typos = require_typos(); - module2.exports = { - warn: function() { - }, - fixRepositoryField: function(data) { - if (data.repositories) { - this.warn("repositories"); - data.repository = data.repositories[0]; + function peg$parseShellLine() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLineThen(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c1(s1, s3, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (!data.repository) { - return this.warn("missingRepository"); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - if (typeof data.repository === "string") { - data.repository = { - type: "git", - url: data.repository - }; + return s0; + } + function peg$parseShellLineThen() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - var r = data.repository.url || ""; - if (r) { - var hosted = hostedGitInfo.fromUrl(r); - if (hosted) { - r = data.repository.url = hosted.getDefaultRepresentation() === "shortcut" ? hosted.https() : hosted.toString(); + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (r.match(/github.com\/[^/]+\/[^/]+\.git\.git$/)) { - this.warn("brokenGitUrl", r); - } - }, - fixTypos: function(data) { - Object.keys(typos.topLevel).forEach(function(d) { - if (Object.prototype.hasOwnProperty.call(data, d)) { - this.warn("typo", d, typos.topLevel[d]); + return s0; + } + function peg$parseShellLineType() { + var s0; + if (input.charCodeAt(peg$currPos) === 59) { + s0 = peg$c4; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); } - }, this); - }, - fixScriptsField: function(data) { - if (!data.scripts) { - return; } - if (typeof data.scripts !== "object") { - this.warn("nonObjectScripts"); - delete data.scripts; - return; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 38) { + s0 = peg$c6; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } } - Object.keys(data.scripts).forEach(function(k) { - if (typeof data.scripts[k] !== "string") { - this.warn("nonStringScript"); - delete data.scripts[k]; - } else if (typos.script[k] && !data.scripts[typos.script[k]]) { - this.warn("typo", k, typos.script[k], "scripts"); + return s0; + } + function peg$parseCommandLine() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommandChain(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineThen(); + if (s2 === peg$FAILED) { + s2 = null; } - }, this); - }, - fixFilesField: function(data) { - var files = data.files; - if (files && !Array.isArray(files)) { - this.warn("nonArrayFiles"); - delete data.files; - } else if (data.files) { - data.files = data.files.filter(function(file) { - if (!file || typeof file !== "string") { - this.warn("invalidFilename", file); - return false; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseCommandLineThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c9(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - return true; + peg$currPos = s0; + s0 = peg$FAILED; } - }, this); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - fixBinField: function(data) { - if (!data.bin) { - return; + return s0; + } + function peg$parseCommandLineType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c10) { + s0 = peg$c10; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c11); + } } - if (typeof data.bin === "string") { - var b = {}; - var match; - if (match = data.name.match(/^@[^/]+[/](.*)$/)) { - b[match[1]] = data.bin; + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c12) { + s0 = peg$c12; + peg$currPos += 2; } else { - b[data.name] = data.bin; + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } } - data.bin = b; - } - }, - fixManField: function(data) { - if (!data.man) { - return; } - if (typeof data.man === "string") { - data.man = [data.man]; + return s0; + } + function peg$parseCommandChain() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommand(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainThen(); + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c14(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - fixBundleDependenciesField: function(data) { - var bdd = "bundledDependencies"; - var bd = "bundleDependencies"; - if (data[bdd] && !data[bd]) { - data[bd] = data[bdd]; - delete data[bdd]; + return s0; + } + function peg$parseCommandChainThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - if (data[bd] && !Array.isArray(data[bd])) { - this.warn("nonArrayBundleDependencies"); - delete data[bd]; - } else if (data[bd]) { - data[bd] = data[bd].filter(function(bd2) { - if (!bd2 || typeof bd2 !== "string") { - this.warn("nonStringBundleDependency", bd2); - return false; - } else { - if (!data.dependencies) { - data.dependencies = {}; - } - if (Object.prototype.hasOwnProperty.call(data.dependencies, bd2)) { - this.warn("nonDependencyBundleDependency", bd2); - data.dependencies[bd2] = "*"; + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandChain(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return true; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, this); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - fixDependencies: function(data, strict) { - objectifyDeps(data, this.warn); - addOptionalDepsToDeps(data, this.warn); - this.fixBundleDependenciesField(data); - ["dependencies", "devDependencies"].forEach(function(deps) { - if (!(deps in data)) { - return; + return s0; + } + function peg$parseCommandChainType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c16) { + s0 = peg$c16; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c17); } - if (!data[deps] || typeof data[deps] !== "object") { - this.warn("nonObjectDependencies", deps); - delete data[deps]; - return; + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 124) { + s0 = peg$c18; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c19); + } } - Object.keys(data[deps]).forEach(function(d) { - var r = data[deps][d]; - if (typeof r !== "string") { - this.warn("nonStringDependency", d, JSON.stringify(r)); - delete data[deps][d]; + } + return s0; + } + function peg$parseVariableAssignment() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); } - var hosted = hostedGitInfo.fromUrl(data[deps][d]); - if (hosted) { - data[deps][d] = hosted.toString(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseStrictValueArgument(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c22(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, this); - }, this); - }, - fixModulesField: function(data) { - if (data.modules) { - this.warn("deprecatedModules"); - delete data.modules; - } - }, - fixKeywordsField: function(data) { - if (typeof data.keywords === "string") { - data.keywords = data.keywords.split(/,\s+/); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (data.keywords && !Array.isArray(data.keywords)) { - delete data.keywords; - this.warn("nonArrayKeywords"); - } else if (data.keywords) { - data.keywords = data.keywords.filter(function(kw) { - if (typeof kw !== "string" || !kw) { - this.warn("nonStringKeyword"); - return false; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; } else { - return true; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); + } } - }, this); - } - }, - fixVersionField: function(data, strict) { - var loose = !strict; - if (!data.version) { - data.version = ""; - return true; - } - if (!isValidSemver(data.version, loose)) { - throw new Error('Invalid version: "' + data.version + '"'); - } - data.version = cleanSemver(data.version, loose); - return true; - }, - fixPeople: function(data) { - modifyPeople(data, unParsePerson); - modifyPeople(data, parsePerson); - }, - fixNameField: function(data, options) { - if (typeof options === "boolean") { - options = { strict: options }; - } else if (typeof options === "undefined") { - options = {}; - } - var strict = options.strict; - if (!data.name && !strict) { - data.name = ""; - return; - } - if (typeof data.name !== "string") { - throw new Error("name field must be a string."); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c23(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - if (!strict) { - data.name = data.name.trim(); + return s0; + } + function peg$parseCommand() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - ensureValidName(data.name, strict, options.allowLegacyCase); - if (isBuiltinModule(data.name)) { - this.warn("conflictingName", data.name); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 40) { + s2 = peg$c24; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s6 = peg$c26; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c28(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - fixDescriptionField: function(data) { - if (data.description && typeof data.description !== "string") { - this.warn("nonStringDescription"); - delete data.description; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 123) { + s2 = peg$c29; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s6 = peg$c31; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c33(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseArgument(); + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseArgument(); + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c34(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c35(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } } - if (data.readme && !data.description) { - data.description = extractDescription(data.readme); + return s0; + } + function peg$parseCommandString() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - if (data.description === void 0) { - delete data.description; + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseValueArgument(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseValueArgument(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c36(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (!data.description) { - this.warn("missingDescription"); + return s0; + } + function peg$parseArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - }, - fixReadmeField: function(data) { - if (!data.readme) { - this.warn("missingReadme"); - data.readme = "ERROR: No README data found!"; + if (s1 !== peg$FAILED) { + s2 = peg$parseRedirectArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - fixBugsField: function(data) { - if (!data.bugs && data.repository && data.repository.url) { - var hosted = hostedGitInfo.fromUrl(data.repository.url); - if (hosted && hosted.bugs()) { - data.bugs = { url: hosted.bugs() }; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - } else if (data.bugs) { - var emailRe = /^.+@.*\..+$/; - if (typeof data.bugs === "string") { - if (emailRe.test(data.bugs)) { - data.bugs = { email: data.bugs }; - } else if (url.parse(data.bugs).protocol) { - data.bugs = { url: data.bugs }; + if (s1 !== peg$FAILED) { + s2 = peg$parseValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; } else { - this.warn("nonEmailUrlBugsString"); + peg$currPos = s0; + s0 = peg$FAILED; } } else { - bugsTypos(data.bugs, this.warn); - var oldBugs = data.bugs; - data.bugs = {}; - if (oldBugs.url) { - if (typeof oldBugs.url === "string" && url.parse(oldBugs.url).protocol) { - data.bugs.url = oldBugs.url; - } else { - this.warn("nonUrlBugsUrlField"); - } + peg$currPos = s0; + s0 = peg$FAILED; + } + } + return s0; + } + function peg$parseRedirectArgument() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + if (peg$c38.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); } - if (oldBugs.email) { - if (typeof oldBugs.email === "string" && emailRe.test(oldBugs.email)) { - data.bugs.email = oldBugs.email; + } + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + s3 = peg$parseRedirectType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseValueArgument(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(s2, s3, s4); + s0 = s1; } else { - this.warn("nonEmailBugsEmailField"); + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (!data.bugs.email && !data.bugs.url) { - delete data.bugs; - this.warn("emptyNormalizedBugs"); - } - } - }, - fixHomepageField: function(data) { - if (!data.homepage && data.repository && data.repository.url) { - var hosted = hostedGitInfo.fromUrl(data.repository.url); - if (hosted && hosted.docs()) { - data.homepage = hosted.docs(); - } - } - if (!data.homepage) { - return; - } - if (typeof data.homepage !== "string") { - this.warn("nonUrlHomepage"); - return delete data.homepage; - } - if (!url.parse(data.homepage).protocol) { - data.homepage = "http://" + data.homepage; - } - }, - fixLicenseField: function(data) { - const license = data.license || data.licence; - if (!license) { - return this.warn("missingLicense"); - } - if (typeof license !== "string" || license.length < 1 || license.trim() === "") { - return this.warn("invalidLicense"); - } - if (!validateLicense(license).validForNewPackages) { - return this.warn("invalidLicense"); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - }; - function isValidScopedPackageName(spec) { - if (spec.charAt(0) !== "@") { - return false; - } - var rest = spec.slice(1).split("/"); - if (rest.length !== 2) { - return false; - } - return rest[0] && rest[1] && rest[0] === encodeURIComponent(rest[0]) && rest[1] === encodeURIComponent(rest[1]); - } - function isCorrectlyEncodedName(spec) { - return !spec.match(/[/@\s+%:]/) && spec === encodeURIComponent(spec); - } - function ensureValidName(name, strict, allowLegacyCase) { - if (name.charAt(0) === "." || !(isValidScopedPackageName(name) || isCorrectlyEncodedName(name)) || strict && !allowLegacyCase && name !== name.toLowerCase() || name.toLowerCase() === "node_modules" || name.toLowerCase() === "favicon.ico") { - throw new Error("Invalid name: " + JSON.stringify(name)); - } - } - function modifyPeople(data, fn2) { - if (data.author) { - data.author = fn2(data.author); - } - ["maintainers", "contributors"].forEach(function(set) { - if (!Array.isArray(data[set])) { - return; + function peg$parseRedirectType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c41) { + s0 = peg$c41; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); + } } - data[set] = data[set].map(fn2); - }); - return data; - } - function unParsePerson(person) { - if (typeof person === "string") { - return person; - } - var name = person.name || ""; - var u = person.url || person.web; - var url2 = u ? " (" + u + ")" : ""; - var e = person.email || person.mail; - var email = e ? " <" + e + ">" : ""; - return name + email + url2; - } - function parsePerson(person) { - if (typeof person !== "string") { - return person; - } - var name = person.match(/^([^(<]+)/); - var url2 = person.match(/\(([^)]+)\)/); - var email = person.match(/<([^>]+)>/); - var obj = {}; - if (name && name[0].trim()) { - obj.name = name[0].trim(); - } - if (email) { - obj.email = email[1]; - } - if (url2) { - obj.url = url2[1]; - } - return obj; - } - function addOptionalDepsToDeps(data, warn) { - var o = data.optionalDependencies; - if (!o) { - return; - } - var d = data.dependencies || {}; - Object.keys(o).forEach(function(k) { - d[k] = o[k]; - }); - data.dependencies = d; - } - function depObjectify(deps, type, warn) { - if (!deps) { - return {}; - } - if (typeof deps === "string") { - deps = deps.trim().split(/[\n\r\s\t ,]+/); - } - if (!Array.isArray(deps)) { - return deps; - } - warn("deprecatedArrayDependencies", type); - var o = {}; - deps.filter(function(d) { - return typeof d === "string"; - }).forEach(function(d) { - d = d.trim().split(/(:?[@\s><=])/); - var dn = d.shift(); - var dv = d.join(""); - dv = dv.trim(); - dv = dv.replace(/^@/, ""); - o[dn] = dv; - }); - return o; - } - function objectifyDeps(data, warn) { - depTypes.forEach(function(type) { - if (!data[type]) { - return; + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c43) { + s0 = peg$c43; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c44); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 62) { + s0 = peg$c45; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c46); + } + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c47) { + s0 = peg$c47; + peg$currPos += 3; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c48); + } + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c49) { + s0 = peg$c49; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c50); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 60) { + s0 = peg$c51; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c52); + } + } + } + } + } + } } - data[type] = depObjectify(data[type], type, warn); - }); - } - function bugsTypos(bugs, warn) { - if (!bugs) { - return; + return s0; } - Object.keys(bugs).forEach(function(k) { - if (typos.bugs[k]) { - warn("typo", k, typos.bugs[k], "bugs"); - bugs[typos.bugs[k]] = bugs[k]; - delete bugs[k]; + function peg$parseValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - }); - } - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/warning_messages.json -var require_warning_messages = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/warning_messages.json"(exports2, module2) { - module2.exports = { - repositories: "'repositories' (plural) Not supported. Please pick one as the 'repository' field", - missingRepository: "No repository field.", - brokenGitUrl: "Probably broken git url: %s", - nonObjectScripts: "scripts must be an object", - nonStringScript: "script values must be string commands", - nonArrayFiles: "Invalid 'files' member", - invalidFilename: "Invalid filename in 'files' list: %s", - nonArrayBundleDependencies: "Invalid 'bundleDependencies' list. Must be array of package names", - nonStringBundleDependency: "Invalid bundleDependencies member: %s", - nonDependencyBundleDependency: "Non-dependency in bundleDependencies: %s", - nonObjectDependencies: "%s field must be an object", - nonStringDependency: "Invalid dependency: %s %s", - deprecatedArrayDependencies: "specifying %s as array is deprecated", - deprecatedModules: "modules field is deprecated", - nonArrayKeywords: "keywords should be an array of strings", - nonStringKeyword: "keywords should be an array of strings", - conflictingName: "%s is also the name of a node core module.", - nonStringDescription: "'description' field should be a string", - missingDescription: "No description", - missingReadme: "No README data", - missingLicense: "No license field.", - nonEmailUrlBugsString: "Bug string field must be url, email, or {email,url}", - nonUrlBugsUrlField: "bugs.url field must be a string url. Deleted.", - nonEmailBugsEmailField: "bugs.email field must be a string email. Deleted.", - emptyNormalizedBugs: "Normalized value of bugs field is an empty object. Deleted.", - nonUrlHomepage: "homepage field must be a string url. Deleted.", - invalidLicense: "license should be a valid SPDX license expression", - typo: "%s should probably be %s." - }; - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/make_warning.js -var require_make_warning = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/make_warning.js"(exports2, module2) { - var util = require("util"); - var messages = require_warning_messages(); - module2.exports = function() { - var args2 = Array.prototype.slice.call(arguments, 0); - var warningName = args2.shift(); - if (warningName === "typo") { - return makeTypoWarning.apply(null, args2); - } else { - var msgTemplate = messages[warningName] ? messages[warningName] : warningName + ": '%s'"; - args2.unshift(msgTemplate); - return util.format.apply(null, args2); - } - }; - function makeTypoWarning(providedName, probableName, field) { - if (field) { - providedName = field + "['" + providedName + "']"; - probableName = field + "['" + probableName + "']"; - } - return util.format(messages.typo, providedName, probableName); - } - } -}); - -// ../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/normalize.js -var require_normalize = __commonJS({ - "../../node_modules/.pnpm/normalize-package-data@3.0.3/node_modules/normalize-package-data/lib/normalize.js"(exports2, module2) { - module2.exports = normalize; - var fixer = require_fixer(); - normalize.fixer = fixer; - var makeWarning = require_make_warning(); - var fieldsToFix = [ - "name", - "version", - "description", - "repository", - "modules", - "scripts", - "files", - "bin", - "man", - "bugs", - "keywords", - "readme", - "homepage", - "license" - ]; - var otherThingsToFix = ["dependencies", "people", "typos"]; - var thingsToFix = fieldsToFix.map(function(fieldName) { - return ucFirst(fieldName) + "Field"; - }); - thingsToFix = thingsToFix.concat(otherThingsToFix); - function normalize(data, warn, strict) { - if (warn === true) { - warn = null; - strict = true; - } - if (!strict) { - strict = false; - } - if (!warn || data.private) { - warn = function(msg) { - }; - } - if (data.scripts && data.scripts.install === "node-gyp rebuild" && !data.scripts.preinstall) { - data.gypfile = true; - } - fixer.warn = function() { - warn(makeWarning.apply(null, arguments)); - }; - thingsToFix.forEach(function(thingName) { - fixer["fix" + ucFirst(thingName)](data, strict); - }); - data._id = data.name + "@" + data.version; - } - function ucFirst(string) { - return string.charAt(0).toUpperCase() + string.slice(1); - } - } -}); - -// ../read-package-json/lib/index.js -var require_lib32 = __commonJS({ - "../read-package-json/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.safeReadPackageFromDir = exports2.safeReadPackage = exports2.fromDir = void 0; - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var normalize_package_data_1 = __importDefault(require_normalize()); - async function readPkg(pkgPath) { - try { - const manifest = await load_json_file_1.default(pkgPath); - normalize_package_data_1.default(manifest); - return manifest; - } catch (err) { - if (err.code) - throw err; - throw new error_1.default("BAD_PACKAGE_JSON", `${pkgPath}: ${err.message}`); - } - } - exports2.default = readPkg; - async function fromDir(pkgPath) { - return readPkg(path_1.default.join(pkgPath, "package.json")); - } - exports2.fromDir = fromDir; - async function safeReadPackage(pkgPath) { - try { - return await readPkg(pkgPath); - } catch (err) { - if (err.code !== "ENOENT") - throw err; - return null; - } - } - exports2.safeReadPackage = safeReadPackage; - async function safeReadPackageFromDir(pkgPath) { - return safeReadPackage(path_1.default.join(pkgPath, "package.json")); - } - exports2.safeReadPackageFromDir = safeReadPackageFromDir; - } -}); - -// ../../node_modules/.pnpm/mimic-fn@3.1.0/node_modules/mimic-fn/index.js -var require_mimic_fn2 = __commonJS({ - "../../node_modules/.pnpm/mimic-fn@3.1.0/node_modules/mimic-fn/index.js"(exports2, module2) { - "use strict"; - var copyProperty = (to, from, property, ignoreNonConfigurable) => { - if (property === "length" || property === "prototype") { - return; - } - if (property === "arguments" || property === "caller") { - return; - } - const toDescriptor = Object.getOwnPropertyDescriptor(to, property); - const fromDescriptor = Object.getOwnPropertyDescriptor(from, property); - if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) { - return; - } - Object.defineProperty(to, property, fromDescriptor); - }; - var canCopyProperty = function(toDescriptor, fromDescriptor) { - return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value); - }; - var changePrototype = (to, from) => { - const fromPrototype = Object.getPrototypeOf(from); - if (fromPrototype === Object.getPrototypeOf(to)) { - return; - } - Object.setPrototypeOf(to, fromPrototype); - }; - var wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/ -${fromBody}`; - var toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString"); - var toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name"); - var changeToString = (to, from, name) => { - const withName = name === "" ? "" : `with ${name.trim()}() `; - const newToString = wrappedToString.bind(null, withName, from.toString()); - Object.defineProperty(newToString, "name", toStringName); - Object.defineProperty(to, "toString", { ...toStringDescriptor, value: newToString }); - }; - var mimicFn = (to, from, { ignoreNonConfigurable = false } = {}) => { - const { name } = to; - for (const property of Reflect.ownKeys(from)) { - copyProperty(to, from, property, ignoreNonConfigurable); - } - changePrototype(to, from); - changeToString(to, from, name); - return to; - }; - module2.exports = mimicFn; - } -}); - -// ../../node_modules/.pnpm/p-defer@1.0.0/node_modules/p-defer/index.js -var require_p_defer = __commonJS({ - "../../node_modules/.pnpm/p-defer@1.0.0/node_modules/p-defer/index.js"(exports2, module2) { - "use strict"; - module2.exports = () => { - const ret = {}; - ret.promise = new Promise((resolve, reject) => { - ret.resolve = resolve; - ret.reject = reject; - }); - return ret; - }; - } -}); - -// ../../node_modules/.pnpm/map-age-cleaner@0.1.3/node_modules/map-age-cleaner/dist/index.js -var require_dist7 = __commonJS({ - "../../node_modules/.pnpm/map-age-cleaner@0.1.3/node_modules/map-age-cleaner/dist/index.js"(exports2, module2) { - "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); + if (s1 !== peg$FAILED) { + s2 = peg$parseStrictValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); + return s0; + } + function peg$parseStrictValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseArgumentSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseArgumentSegment(); } + } else { + s1 = peg$FAILED; } - function step(result) { - result.done ? resolve(result.value) : new P(function(resolve2) { - resolve2(result.value); - }).then(fulfilled, rejected); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c53(s1); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var p_defer_1 = __importDefault(require_p_defer()); - function mapAgeCleaner(map, property = "maxAge") { - let processingKey; - let processingTimer; - let processingDeferred; - const cleanup = () => __awaiter(this, void 0, void 0, function* () { - if (processingKey !== void 0) { - return; + s0 = s1; + return s0; + } + function peg$parseArgumentSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseCQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); } - const setupTimer = (item) => __awaiter(this, void 0, void 0, function* () { - processingDeferred = p_defer_1.default(); - const delay = item[1][property] - Date.now(); - if (delay <= 0) { - map.delete(item[0]); - processingDeferred.resolve(); - return; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSglQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); } - processingKey = item[0]; - processingTimer = setTimeout(() => { - map.delete(item[0]); - if (processingDeferred) { - processingDeferred.resolve(); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; } - }, delay); - if (typeof processingTimer.unref === "function") { - processingTimer.unref(); - } - return processingDeferred.promise; - }); - try { - for (const entry of map) { - yield setupTimer(entry); } - } catch (_a) { - } - processingKey = void 0; - }); - const reset = () => { - processingKey = void 0; - if (processingTimer !== void 0) { - clearTimeout(processingTimer); - processingTimer = void 0; - } - if (processingDeferred !== void 0) { - processingDeferred.reject(void 0); - processingDeferred = void 0; - } - }; - const originalSet = map.set.bind(map); - map.set = (key, value) => { - if (map.has(key)) { - map.delete(key); - } - const result = originalSet(key, value); - if (processingKey && processingKey === key) { - reset(); - } - cleanup(); - return result; - }; - cleanup(); - return map; - } - exports2.default = mapAgeCleaner; - module2.exports = mapAgeCleaner; - module2.exports.default = mapAgeCleaner; - } -}); - -// ../../node_modules/.pnpm/mem@8.1.1/node_modules/mem/dist/index.js -var require_dist8 = __commonJS({ - "../../node_modules/.pnpm/mem@8.1.1/node_modules/mem/dist/index.js"(exports2, module2) { - "use strict"; - var mimicFn = require_mimic_fn2(); - var mapAgeCleaner = require_dist7(); - var decoratorInstanceMap = new WeakMap(); - var cacheStore = new WeakMap(); - var mem = (fn2, { cacheKey, cache = new Map(), maxAge } = {}) => { - if (typeof maxAge === "number") { - mapAgeCleaner(cache); - } - const memoized = function(...arguments_) { - const key = cacheKey ? cacheKey(arguments_) : arguments_[0]; - const cacheItem = cache.get(key); - if (cacheItem) { - return cacheItem.data; } - const result = fn2.apply(this, arguments_); - cache.set(key, { - data: result, - maxAge: maxAge ? Date.now() + maxAge : Number.POSITIVE_INFINITY - }); - return result; - }; - mimicFn(memoized, fn2, { - ignoreNonConfigurable: true - }); - cacheStore.set(memoized, cache); - return memoized; - }; - mem.decorator = (options = {}) => (target, propertyKey, descriptor) => { - const input = target[propertyKey]; - if (typeof input !== "function") { - throw new TypeError("The decorated value must be a function"); + return s0; } - delete descriptor.value; - delete descriptor.writable; - descriptor.get = function() { - if (!decoratorInstanceMap.has(this)) { - const value = mem(input, options); - decoratorInstanceMap.set(this, value); - return value; + function peg$parseCQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); + } } - return decoratorInstanceMap.get(this); - }; - }; - mem.clear = (fn2) => { - const cache = cacheStore.get(fn2); - if (!cache) { - throw new TypeError("Can't clear a function that was not memoized!"); - } - if (typeof cache.clear !== "function") { - throw new TypeError("The cache Map can't be cleared!"); - } - cache.clear(); - }; - module2.exports = mem; - } -}); - -// ../../node_modules/.pnpm/encode-registry@3.0.0/node_modules/encode-registry/index.js -var require_encode_registry = __commonJS({ - "../../node_modules/.pnpm/encode-registry@3.0.0/node_modules/encode-registry/index.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var { URL: URL2 } = require("url"); - var mem = require_dist8(); - module2.exports = mem(encodeRegistry); - function encodeRegistry(registry) { - assert(registry, "`registry` is required"); - assert(typeof registry === "string", "`registry` should be a string"); - const host = getHost(registry); - return escapeHost(host); - } - function escapeHost(host) { - return host.replace(":", "+"); - } - function getHost(rawUrl) { - const urlObj = new URL2(rawUrl); - if (!urlObj || !urlObj.host) { - throw new Error(`Couldn't get host from ${rawUrl}`); - } - return urlObj.host; - } - } -}); - -// ../dependency-path/lib/index.js -var require_lib33 = __commonJS({ - "../dependency-path/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.depPathToFilename = exports2.parse = exports2.refToRelative = exports2.relative = exports2.getRegistryByPackageName = exports2.refToAbsolute = exports2.tryGetPackageId = exports2.resolve = exports2.isAbsolute = void 0; - var crypto_1 = __importDefault(require("crypto")); - var path_1 = __importDefault(require("path")); - var encode_registry_1 = __importDefault(require_encode_registry()); - var normalize_path_1 = __importDefault(require_normalize_path()); - var semver_1 = __importDefault(require_semver2()); - function isAbsolute(dependencyPath) { - return dependencyPath[0] !== "/"; - } - exports2.isAbsolute = isAbsolute; - function resolve(registries, resolutionLocation) { - if (!isAbsolute(resolutionLocation)) { - let registryUrl; - if (resolutionLocation[1] === "@") { - const scope = resolutionLocation.substr(1, resolutionLocation.indexOf("/", 1) - 1); - registryUrl = registries[scope] || registries.default; + if (s1 !== peg$FAILED) { + s2 = peg$parseCQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - registryUrl = registries.default; + peg$currPos = s0; + s0 = peg$FAILED; } - const registryDirectory = encode_registry_1.default(registryUrl); - return `${registryDirectory}${resolutionLocation}`; - } - return resolutionLocation; - } - exports2.resolve = resolve; - function tryGetPackageId(registries, relDepPath) { - if (relDepPath[0] !== "/") { - return null; - } - const underscoreIndex = relDepPath.indexOf("_", relDepPath.lastIndexOf("/")); - if (underscoreIndex !== -1) { - return resolve(registries, relDepPath.substr(0, underscoreIndex)); - } - return resolve(registries, relDepPath); - } - exports2.tryGetPackageId = tryGetPackageId; - function refToAbsolute(reference, pkgName, registries) { - if (reference.startsWith("link:")) { - return null; - } - if (!reference.includes("/")) { - const registryName2 = encode_registry_1.default(getRegistryByPackageName(registries, pkgName)); - return `${registryName2}/${pkgName}/${reference}`; - } - if (reference[0] !== "/") - return reference; - const registryName = encode_registry_1.default(getRegistryByPackageName(registries, pkgName)); - return `${registryName}${reference}`; - } - exports2.refToAbsolute = refToAbsolute; - function getRegistryByPackageName(registries, packageName) { - if (packageName[0] !== "@") - return registries.default; - const scope = packageName.substr(0, packageName.indexOf("/")); - return registries[scope] || registries.default; - } - exports2.getRegistryByPackageName = getRegistryByPackageName; - function relative2(registries, packageName, absoluteResolutionLoc) { - const registryName = encode_registry_1.default(getRegistryByPackageName(registries, packageName)); - if (absoluteResolutionLoc.startsWith(`${registryName}/`)) { - return absoluteResolutionLoc.substr(absoluteResolutionLoc.indexOf("/")); - } - return absoluteResolutionLoc; - } - exports2.relative = relative2; - function refToRelative(reference, pkgName) { - if (reference.startsWith("link:")) { - return null; - } - if (reference.startsWith("file:")) { - return reference; - } - if (!reference.includes("/")) { - return `/${pkgName}/${reference}`; - } - return reference; - } - exports2.refToRelative = refToRelative; - function parse(dependencyPath) { - if (typeof dependencyPath !== "string") { - throw new TypeError(`Expected \`dependencyPath\` to be of type \`string\`, got \`${dependencyPath === null ? "null" : typeof dependencyPath}\``); + return s0; } - const _isAbsolute = isAbsolute(dependencyPath); - const parts = dependencyPath.split("/"); - if (!_isAbsolute) - parts.shift(); - const host = _isAbsolute ? parts.shift() : void 0; - const name = parts[0].startsWith("@") ? `${parts.shift()}/${parts.shift()}` : parts.shift(); - let version = parts.shift(); - if (version) { - const underscoreIndex = version.indexOf("_"); - let peersSuffix; - if (underscoreIndex !== -1) { - peersSuffix = version.substring(underscoreIndex + 1); - version = version.substring(0, underscoreIndex); - } - if (semver_1.default.valid(version)) { - return { - host, - isAbsolute: _isAbsolute, - name, - peersSuffix, - version - }; + function peg$parseSglQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 39) { + s1 = peg$c57; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } } - } - if (!_isAbsolute) - throw new Error(`${dependencyPath} is an invalid relative dependency path`); - return { - host, - isAbsolute: _isAbsolute - }; - } - exports2.parse = parse; - function depPathToFilename(depPath, lockfileDir) { - const filename = depPathToFilenameUnescaped(depPath, lockfileDir).replace(/\//g, "+"); - if (filename.length > 120 || filename !== filename.toLowerCase() && !filename.startsWith("local+")) { - return `${filename.substring(0, 50)}_${crypto_1.default.createHash("md5").update(filename).digest("hex")}`; - } - return filename; - } - exports2.depPathToFilename = depPathToFilename; - function depPathToFilenameUnescaped(depPath, lockfileDir) { - if (depPath.indexOf("file:") !== 0) { - if (depPath.startsWith("/")) { - depPath = depPath.substring(1); + if (s1 !== peg$FAILED) { + s2 = peg$parseSglQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - const index = depPath.lastIndexOf("/"); - return `${depPath.substring(0, index)}@${depPath.substr(index + 1)}`; - } - const absolutePath = normalize_path_1.default(path_1.default.join(lockfileDir, depPath.slice(5))); - return `local+${absolutePath.replace(":", "+")}`; - } - } -}); - -// ../../node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js -var require_eventemitter3 = __commonJS({ - "../../node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js"(exports2, module2) { - "use strict"; - var has = Object.prototype.hasOwnProperty; - var prefix = "~"; - function Events() { - } - if (Object.create) { - Events.prototype = Object.create(null); - if (!new Events().__proto__) - prefix = false; - } - function EE(fn2, context, once) { - this.fn = fn2; - this.context = context; - this.once = once || false; - } - function addListener(emitter, event, fn2, context, once) { - if (typeof fn2 !== "function") { - throw new TypeError("The listener must be a function"); - } - var listener = new EE(fn2, context || emitter, once), evt = prefix ? prefix + event : event; - if (!emitter._events[evt]) - emitter._events[evt] = listener, emitter._eventsCount++; - else if (!emitter._events[evt].fn) - emitter._events[evt].push(listener); - else - emitter._events[evt] = [emitter._events[evt], listener]; - return emitter; - } - function clearEvent(emitter, evt) { - if (--emitter._eventsCount === 0) - emitter._events = new Events(); - else - delete emitter._events[evt]; - } - function EventEmitter() { - this._events = new Events(); - this._eventsCount = 0; - } - EventEmitter.prototype.eventNames = function eventNames() { - var names = [], events, name; - if (this._eventsCount === 0) - return names; - for (name in events = this._events) { - if (has.call(events, name)) - names.push(prefix ? name.slice(1) : name); - } - if (Object.getOwnPropertySymbols) { - return names.concat(Object.getOwnPropertySymbols(events)); - } - return names; - }; - EventEmitter.prototype.listeners = function listeners(event) { - var evt = prefix ? prefix + event : event, handlers = this._events[evt]; - if (!handlers) - return []; - if (handlers.fn) - return [handlers.fn]; - for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) { - ee[i] = handlers[i].fn; + return s0; } - return ee; - }; - EventEmitter.prototype.listenerCount = function listenerCount(event) { - var evt = prefix ? prefix + event : event, listeners = this._events[evt]; - if (!listeners) - return 0; - if (listeners.fn) - return 1; - return listeners.length; - }; - EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) { - var evt = prefix ? prefix + event : event; - if (!this._events[evt]) - return false; - var listeners = this._events[evt], len = arguments.length, args2, i; - if (listeners.fn) { - if (listeners.once) - this.removeListener(event, listeners.fn, void 0, true); - switch (len) { - case 1: - return listeners.fn.call(listeners.context), true; - case 2: - return listeners.fn.call(listeners.context, a1), true; - case 3: - return listeners.fn.call(listeners.context, a1, a2), true; - case 4: - return listeners.fn.call(listeners.context, a1, a2, a3), true; - case 5: - return listeners.fn.call(listeners.context, a1, a2, a3, a4), true; - case 6: - return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true; + function peg$parseDblQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c60) { + s1 = peg$c60; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c61); + } } - for (i = 1, args2 = new Array(len - 1); i < len; i++) { - args2[i - 1] = arguments[i]; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c62(); } - listeners.fn.apply(listeners.context, args2); - } else { - var length = listeners.length, j; - for (i = 0; i < length; i++) { - if (listeners[i].once) - this.removeListener(event, listeners[i].fn, void 0, true); - switch (len) { - case 1: - listeners[i].fn.call(listeners[i].context); - break; - case 2: - listeners[i].fn.call(listeners[i].context, a1); - break; - case 3: - listeners[i].fn.call(listeners[i].context, a1, a2); - break; - case 4: - listeners[i].fn.call(listeners[i].context, a1, a2, a3); - break; - default: - if (!args2) - for (j = 1, args2 = new Array(len - 1); j < len; j++) { - args2[j - 1] = arguments[j]; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c63; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseDblQuoteStringSegment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseDblQuoteStringSegment(); + } + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c63; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); } - listeners[i].fn.apply(listeners[i].context, args2); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } + return s0; } - return true; - }; - EventEmitter.prototype.on = function on(event, fn2, context) { - return addListener(this, event, fn2, context, false); - }; - EventEmitter.prototype.once = function once(event, fn2, context) { - return addListener(this, event, fn2, context, true); - }; - EventEmitter.prototype.removeListener = function removeListener(event, fn2, context, once) { - var evt = prefix ? prefix + event : event; - if (!this._events[evt]) - return this; - if (!fn2) { - clearEvent(this, evt); - return this; + function peg$parsePlainString() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePlainStringSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePlainStringSegment(); + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s1); + } + s0 = s1; + return s0; } - var listeners = this._events[evt]; - if (listeners.fn) { - if (listeners.fn === fn2 && (!once || listeners.once) && (!context || listeners.context === context)) { - clearEvent(this, evt); + function peg$parseDblQuoteStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(s1); } - } else { - for (var i = 0, events = [], length = listeners.length; i < length; i++) { - if (listeners[i].fn !== fn2 || once && !listeners[i].once || context && listeners[i].context !== context) { - events.push(listeners[i]); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c67(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c68(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } } } - if (events.length) - this._events[evt] = events.length === 1 ? events[0] : events; - else - clearEvent(this, evt); - } - return this; - }; - EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) { - var evt; - if (event) { - evt = prefix ? prefix + event : event; - if (this._events[evt]) - clearEvent(this, evt); - } else { - this._events = new Events(); - this._eventsCount = 0; - } - return this; - }; - EventEmitter.prototype.off = EventEmitter.prototype.removeListener; - EventEmitter.prototype.addListener = EventEmitter.prototype.on; - EventEmitter.prefixed = prefix; - EventEmitter.EventEmitter = EventEmitter; - if (typeof module2 !== "undefined") { - module2.exports = EventEmitter; - } - } -}); - -// ../../node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js -var require_p_finally = __commonJS({ - "../../node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js"(exports2, module2) { - "use strict"; - module2.exports = (promise, onFinally) => { - onFinally = onFinally || (() => { - }); - return promise.then((val) => new Promise((resolve) => { - resolve(onFinally()); - }).then(() => val), (err) => new Promise((resolve) => { - resolve(onFinally()); - }).then(() => { - throw err; - })); - }; - } -}); - -// ../../node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js -var require_p_timeout = __commonJS({ - "../../node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js"(exports2, module2) { - "use strict"; - var pFinally = require_p_finally(); - var TimeoutError = class extends Error { - constructor(message2) { - super(message2); - this.name = "TimeoutError"; - } - }; - var pTimeout = (promise, milliseconds, fallback) => new Promise((resolve, reject) => { - if (typeof milliseconds !== "number" || milliseconds < 0) { - throw new TypeError("Expected `milliseconds` to be a positive number"); + return s0; } - if (milliseconds === Infinity) { - resolve(promise); - return; + function peg$parsePlainStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c70(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c71(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseGlob(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c73(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } + } + } + } + return s0; } - const timer = setTimeout(() => { - if (typeof fallback === "function") { - try { - resolve(fallback()); - } catch (error) { - reject(error); + function peg$parseSglQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); } - return; } - const message2 = typeof fallback === "string" ? fallback : `Promise timed out after ${milliseconds} milliseconds`; - const timeoutError = fallback instanceof Error ? fallback : new TimeoutError(message2); - if (typeof promise.cancel === "function") { - promise.cancel(); + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } + } } - reject(timeoutError); - }, milliseconds); - pFinally(promise.then(resolve, reject), () => { - clearTimeout(timer); - }); - }); - module2.exports = pTimeout; - module2.exports.default = pTimeout; - module2.exports.TimeoutError = TimeoutError; - } -}); - -// ../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js -var require_lower_bound = __commonJS({ - "../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function lowerBound(array, value, comparator) { - let first = 0; - let count = array.length; - while (count > 0) { - const step = count / 2 | 0; - let it = first + step; - if (comparator(array[it], value) <= 0) { - first = ++it; - count -= step + 1; - } else { - count = step; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } + s0 = s1; + return s0; } - return first; - } - exports2.default = lowerBound; - } -}); - -// ../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js -var require_priority_queue = __commonJS({ - "../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var lower_bound_1 = require_lower_bound(); - var PriorityQueue = class { - constructor() { - this._queue = []; - } - enqueue(run, options) { - options = Object.assign({ priority: 0 }, options); - const element = { - priority: options.priority, - run - }; - if (this.size && this._queue[this.size - 1].priority >= options.priority) { - this._queue.push(element); - return; + function peg$parseDblQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); + } + } } - const index = lower_bound_1.default(this._queue, element, (a, b) => b.priority - a.priority); - this._queue.splice(index, 0, element); - } - dequeue() { - const item = this._queue.shift(); - return item === null || item === void 0 ? void 0 : item.run; - } - filter(options) { - return this._queue.filter((element) => element.priority === options.priority).map((element) => element.run); - } - get size() { - return this._queue.length; - } - }; - exports2.default = PriorityQueue; - } -}); - -// ../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js -var require_dist9 = __commonJS({ - "../../node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var EventEmitter = require_eventemitter3(); - var p_timeout_1 = require_p_timeout(); - var priority_queue_1 = require_priority_queue(); - var empty = () => { - }; - var timeoutError = new p_timeout_1.TimeoutError(); - var PQueue = class extends EventEmitter { - constructor(options) { - var _a, _b, _c, _d; - super(); - this._intervalCount = 0; - this._intervalEnd = 0; - this._pendingCount = 0; - this._resolveEmpty = empty; - this._resolveIdle = empty; - options = Object.assign({ carryoverConcurrencyCount: false, intervalCap: Infinity, interval: 0, concurrency: Infinity, autoStart: true, queueClass: priority_queue_1.default }, options); - if (!(typeof options.intervalCap === "number" && options.intervalCap >= 1)) { - throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(_b = (_a = options.intervalCap) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : ""}\` (${typeof options.intervalCap})`); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); + } + } + } + } + } else { + s1 = peg$FAILED; } - if (options.interval === void 0 || !(Number.isFinite(options.interval) && options.interval >= 0)) { - throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(_d = (_c = options.interval) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : ""}\` (${typeof options.interval})`); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - this._carryoverConcurrencyCount = options.carryoverConcurrencyCount; - this._isIntervalIgnored = options.intervalCap === Infinity || options.interval === 0; - this._intervalCap = options.intervalCap; - this._interval = options.interval; - this._queue = new options.queueClass(); - this._queueClass = options.queueClass; - this.concurrency = options.concurrency; - this._timeout = options.timeout; - this._throwOnTimeout = options.throwOnTimeout === true; - this._isPaused = options.autoStart === false; - } - get _doesIntervalAllowAnother() { - return this._isIntervalIgnored || this._intervalCount < this._intervalCap; - } - get _doesConcurrentAllowAnother() { - return this._pendingCount < this._concurrency; - } - _next() { - this._pendingCount--; - this._tryToStartAnother(); - this.emit("next"); + s0 = s1; + return s0; } - _resolvePromises() { - this._resolveEmpty(); - this._resolveEmpty = empty; - if (this._pendingCount === 0) { - this._resolveIdle(); - this._resolveIdle = empty; - this.emit("idle"); + function peg$parseDblQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); + } } - } - _onResumeInterval() { - this._onInterval(); - this._initializeIntervalIfNeeded(); - this._timeoutId = void 0; - } - _isIntervalPaused() { - const now = Date.now(); - if (this._intervalId === void 0) { - const delay = this._intervalEnd - now; - if (delay < 0) { - this._intervalCount = this._carryoverConcurrencyCount ? this._pendingCount : 0; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; } else { - if (this._timeoutId === void 0) { - this._timeoutId = setTimeout(() => { - this._onResumeInterval(); - }, delay); + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - return true; + } + if (s1 !== peg$FAILED) { + if (peg$c84.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c85); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } - return false; + return s0; } - _tryToStartAnother() { - if (this._queue.size === 0) { - if (this._intervalId) { - clearInterval(this._intervalId); + function peg$parseCQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } } - this._intervalId = void 0; - this._resolvePromises(); - return false; } - if (!this._isPaused) { - const canInitializeInterval = !this._isIntervalPaused(); - if (this._doesIntervalAllowAnother && this._doesConcurrentAllowAnother) { - const job = this._queue.dequeue(); - if (!job) { - return false; - } - this.emit("active"); - job(); - if (canInitializeInterval) { - this._initializeIntervalIfNeeded(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } } - return true; } } - return false; - } - _initializeIntervalIfNeeded() { - if (this._isIntervalIgnored || this._intervalId !== void 0) { - return; - } - this._intervalId = setInterval(() => { - this._onInterval(); - }, this._interval); - this._intervalEnd = Date.now() + this._interval; - } - _onInterval() { - if (this._intervalCount === 0 && this._pendingCount === 0 && this._intervalId) { - clearInterval(this._intervalId); - this._intervalId = void 0; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - this._intervalCount = this._carryoverConcurrencyCount ? this._pendingCount : 0; - this._processQueue(); + s0 = s1; + return s0; } - _processQueue() { - while (this._tryToStartAnother()) { + function peg$parseCQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c87) { + s1 = peg$c87; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c88); + } } - } - get concurrency() { - return this._concurrency; - } - set concurrency(newConcurrency) { - if (!(typeof newConcurrency === "number" && newConcurrency >= 1)) { - throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${newConcurrency}\` (${typeof newConcurrency})`); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c89(); } - this._concurrency = newConcurrency; - this._processQueue(); - } - async add(fn2, options = {}) { - return new Promise((resolve, reject) => { - const run = async () => { - this._pendingCount++; - this._intervalCount++; - try { - const operation = this._timeout === void 0 && options.timeout === void 0 ? fn2() : p_timeout_1.default(Promise.resolve(fn2()), options.timeout === void 0 ? this._timeout : options.timeout, () => { - if (options.throwOnTimeout === void 0 ? this._throwOnTimeout : options.throwOnTimeout) { - reject(timeoutError); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c90) { + s1 = peg$c90; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c92(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c93.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c94); } - return void 0; - }); - resolve(await operation); - } catch (error) { - reject(error); + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c95(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - this._next(); - }; - this._queue.enqueue(run, options); - this._tryToStartAnother(); - this.emit("add"); - }); - } - async addAll(functions, options) { - return Promise.all(functions.map(async (function_) => this.add(function_, options))); - } - start() { - if (!this._isPaused) { - return this; - } - this._isPaused = false; - this._processQueue(); - return this; - } - pause() { - this._isPaused = true; - } - clear() { - this._queue = new this._queueClass(); - } - async onEmpty() { - if (this._queue.size === 0) { - return; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c96) { + s1 = peg$c96; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c97); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c98(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c99) { + s1 = peg$c99; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c100); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c101(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c102) { + s1 = peg$c102; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c103); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c104(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c105) { + s1 = peg$c105; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c106); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c107(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c108) { + s1 = peg$c108; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c109); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c110(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c111.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c112); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$parseHexCodeString(); + } + } + } + } + } + } + } + } } - return new Promise((resolve) => { - const existingResolve = this._resolveEmpty; - this._resolveEmpty = () => { - existingResolve(); - resolve(); - }; - }); + return s0; } - async onIdle() { - if (this._pendingCount === 0 && this._queue.size === 0) { - return; + function peg$parseHexCodeString() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } } - return new Promise((resolve) => { - const existingResolve = this._resolveIdle; - this._resolveIdle = () => { - existingResolve(); - resolve(); - }; - }); - } - get size() { - return this._queue.size; - } - sizeBy(options) { - return this._queue.filter(options).length; - } - get pending() { - return this._pendingCount; - } - get isPaused() { - return this._isPaused; - } - get timeout() { - return this._timeout; - } - set timeout(milliseconds) { - this._timeout = milliseconds; - } - }; - exports2.default = PQueue; - } -}); - -// ../../node_modules/.pnpm/p-defer@3.0.0/node_modules/p-defer/index.js -var require_p_defer2 = __commonJS({ - "../../node_modules/.pnpm/p-defer@3.0.0/node_modules/p-defer/index.js"(exports2, module2) { - "use strict"; - var pDefer = () => { - const deferred = {}; - deferred.promise = new Promise((resolve, reject) => { - deferred.resolve = resolve; - deferred.reject = reject; - }); - return deferred; - }; - module2.exports = pDefer; - } -}); - -// ../../node_modules/.pnpm/p-reflect@2.1.0/node_modules/p-reflect/index.js -var require_p_reflect = __commonJS({ - "../../node_modules/.pnpm/p-reflect@2.1.0/node_modules/p-reflect/index.js"(exports2, module2) { - "use strict"; - var pReflect = async (promise) => { - try { - const value = await promise; - return { - isFulfilled: true, - isRejected: false, - value - }; - } catch (error) { - return { - isFulfilled: false, - isRejected: true, - reason: error - }; - } - }; - module2.exports = pReflect; - module2.exports.default = pReflect; - } -}); - -// ../../node_modules/.pnpm/promise-share@1.0.0/node_modules/promise-share/index.js -var require_promise_share = __commonJS({ - "../../node_modules/.pnpm/promise-share@1.0.0/node_modules/promise-share/index.js"(exports2, module2) { - "use strict"; - var pReflect = require_p_reflect(); - module2.exports = function pShare(p) { - const reflected = pReflect(p); - return async () => { - const reflection = await reflected; - if (reflection.isRejected) - throw reflection.reason; - return reflection.value; - }; - }; - } -}); - -// ../package-requester/lib/safeDeferredPromise.js -var require_safeDeferredPromise = __commonJS({ - "../package-requester/lib/safeDeferredPromise.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var promise_share_1 = __importDefault(require_promise_share()); - function safeDeferredPromise() { - let _resolve; - let _reject; - const promiseFn = promise_share_1.default(new Promise((resolve, reject) => { - _resolve = resolve; - _reject = reject; - })); - return Object.assign(promiseFn, { resolve: _resolve, reject: _reject }); - } - exports2.default = safeDeferredPromise; - } -}); - -// ../package-requester/lib/packageRequester.js -var require_packageRequester = __commonJS({ - "../package-requester/lib/packageRequester.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var cafs_1 = require_lib31(); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var graceful_fs_1 = __importDefault(require_lib18()); - var logger_1 = __importDefault(require_lib6()); - var package_is_installable_1 = __importDefault(require_lib13()); - var read_package_json_1 = __importDefault(require_lib32()); - var dependency_path_1 = require_lib33(); - var p_queue_1 = __importDefault(require_dist9()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var p_defer_1 = __importDefault(require_p_defer2()); - var path_temp_1 = __importDefault(require_path_temp()); - var promise_share_1 = __importDefault(require_promise_share()); - var pick_1 = __importDefault(require_pick()); - var rename_overwrite_1 = __importDefault(require_rename_overwrite()); - var ssri_1 = __importDefault(require_ssri()); - var safeDeferredPromise_1 = __importDefault(require_safeDeferredPromise()); - var TARBALL_INTEGRITY_FILENAME = "tarball-integrity"; - var packageRequestLogger = logger_1.default("package-requester"); - var pickBundledManifest = pick_1.default([ - "bin", - "bundledDependencies", - "bundleDependencies", - "dependencies", - "directories", - "engines", - "name", - "optionalDependencies", - "os", - "peerDependencies", - "peerDependenciesMeta", - "scripts", - "version" - ]); - function default_1(opts) { - var _a; - opts = opts || {}; - const networkConcurrency = (_a = opts.networkConcurrency) !== null && _a !== void 0 ? _a : 16; - const requestsQueue = new p_queue_1.default({ - concurrency: networkConcurrency - }); - requestsQueue["counter"] = 0; - requestsQueue["concurrency"] = networkConcurrency; - const cafsDir = path_1.default.join(opts.storeDir, "files"); - const getFilePathInCafs = cafs_1.getFilePathInCafs.bind(null, cafsDir); - const fetch = fetcher.bind(null, opts.fetchers, opts.cafs); - const fetchPackageToStore = fetchToStore.bind(null, { - checkFilesIntegrity: cafs_1.checkFilesIntegrity.bind(null, cafsDir), - fetch, - fetchingLocker: new Map(), - getFilePathByModeInCafs: cafs_1.getFilePathByModeInCafs.bind(null, cafsDir), - getFilePathInCafs, - requestsQueue, - storeDir: opts.storeDir, - verifyStoreIntegrity: opts.verifyStoreIntegrity - }); - const requestPackage = resolveAndFetch.bind(null, { - engineStrict: opts.engineStrict, - nodeVersion: opts.nodeVersion, - pnpmVersion: opts.pnpmVersion, - force: opts.force, - fetchPackageToStore, - requestsQueue, - resolve: opts.resolve, - storeDir: opts.storeDir, - verifyStoreIntegrity: opts.verifyStoreIntegrity - }); - return Object.assign(requestPackage, { fetchPackageToStore, requestPackage }); - } - exports2.default = default_1; - async function resolveAndFetch(ctx, wantedDependency, options) { - var _a, _b, _c, _d, _e, _f; - let latest; - let manifest; - let normalizedPref; - let resolution = (_a = options.currentPkg) === null || _a === void 0 ? void 0 : _a.resolution; - let pkgId = (_b = options.currentPkg) === null || _b === void 0 ? void 0 : _b.id; - const skipResolution = resolution && !options.update; - let forceFetch = false; - let updated = false; - let resolvedVia; - if (!skipResolution || options.skipFetch === true || Boolean(pkgId === null || pkgId === void 0 ? void 0 : pkgId.startsWith("file:")) || wantedDependency.optional === true) { - const resolveResult = await ctx.requestsQueue.add(async () => ctx.resolve(wantedDependency, { - alwaysTryWorkspacePackages: options.alwaysTryWorkspacePackages, - defaultTag: options.defaultTag, - lockfileDir: options.lockfileDir, - preferredVersions: options.preferredVersions, - preferWorkspacePackages: options.preferWorkspacePackages, - projectDir: options.projectDir, - registry: options.registry, - workspacePackages: options.workspacePackages - }), { priority: options.downloadPriority }); - manifest = resolveResult.manifest; - latest = resolveResult.latest; - resolvedVia = resolveResult.resolvedVia; - forceFetch = Boolean(((_c = options.currentPkg) === null || _c === void 0 ? void 0 : _c.resolution) != null && (pkgId === null || pkgId === void 0 ? void 0 : pkgId.startsWith("file:")) && ((_d = options.currentPkg) === null || _d === void 0 ? void 0 : _d.resolution["integrity"]) !== resolveResult.resolution["integrity"]); - updated = pkgId !== resolveResult.id || !resolution || forceFetch; - resolution = resolveResult.resolution; - pkgId = resolveResult.id; - normalizedPref = resolveResult.normalizedPref; - } - const id = pkgId; - if (resolution.type === "directory") { - if (manifest == null) { - throw new Error(`Couldn't read package.json of local dependency ${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${(_e = wantedDependency.pref) !== null && _e !== void 0 ? _e : ""}`); + if (s1 !== peg$FAILED) { + s2 = peg$parseHexCodeChar0(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return { - body: { - id, - isLocal: true, - manifest, - normalizedPref, - resolution, - resolvedVia, - updated + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c114) { + s1 = peg$c114; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c115); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar0(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 === peg$FAILED) { + s3 = peg$parseHexCodeChar0(); + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c116) { + s1 = peg$c116; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c117); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c118) { + s1 = peg$c118; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c119); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s8 = peg$parseHexCodeChar(); + if (s8 !== peg$FAILED) { + s9 = peg$parseHexCodeChar(); + if (s9 !== peg$FAILED) { + s10 = peg$parseHexCodeChar(); + if (s10 !== peg$FAILED) { + s11 = peg$parseHexCodeChar(); + if (s11 !== peg$FAILED) { + s4 = [s4, s5, s6, s7, s8, s9, s10, s11]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c120(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } } - }; + } + return s0; } - const isInstallable = ctx.force === true || (manifest == null ? void 0 : package_is_installable_1.default(id, manifest, { - engineStrict: ctx.engineStrict, - lockfileDir: options.lockfileDir, - nodeVersion: ctx.nodeVersion, - optional: wantedDependency.optional === true, - pnpmVersion: ctx.pnpmVersion - })); - if ((options.skipFetch === true || isInstallable === false) && manifest != null) { - return { - body: { - id, - isLocal: false, - isInstallable: isInstallable !== null && isInstallable !== void 0 ? isInstallable : void 0, - latest, - manifest, - normalizedPref, - resolution, - resolvedVia, - updated + function peg$parseHexCodeChar0() { + var s0; + if (peg$c121.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c122); } - }; + } + return s0; } - const fetchResult = ctx.fetchPackageToStore({ - fetchRawManifest: true, - force: forceFetch, - lockfileDir: options.lockfileDir, - pkg: { - ...pick_1.default(["name", "version"], (_f = manifest !== null && manifest !== void 0 ? manifest : options.currentPkg) !== null && _f !== void 0 ? _f : {}), - id, - resolution + function peg$parseHexCodeChar() { + var s0; + if (peg$c123.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c124); + } } - }); - return { - body: { - id, - isLocal: false, - isInstallable: isInstallable !== null && isInstallable !== void 0 ? isInstallable : void 0, - latest, - manifest, - normalizedPref, - resolution, - resolvedVia, - updated - }, - bundledManifest: fetchResult.bundledManifest, - files: fetchResult.files, - filesIndexFile: fetchResult.filesIndexFile, - finishing: fetchResult.finishing - }; - } - function fetchToStore(ctx, opts) { - const targetRelative = dependency_path_1.depPathToFilename(opts.pkg.id, opts.lockfileDir); - const target = path_1.default.join(ctx.storeDir, targetRelative); - if (!ctx.fetchingLocker.has(opts.pkg.id)) { - const bundledManifest = p_defer_1.default(); - const files = p_defer_1.default(); - const finishing = p_defer_1.default(); - const filesIndexFile = opts.pkg.resolution["integrity"] ? ctx.getFilePathInCafs(opts.pkg.resolution["integrity"], "index") : path_1.default.join(target, "integrity.json"); - doFetchToStore(filesIndexFile, bundledManifest, files, finishing); - if (opts.fetchRawManifest) { - ctx.fetchingLocker.set(opts.pkg.id, { - bundledManifest: removeKeyOnFail(bundledManifest.promise), - files: removeKeyOnFail(files.promise), - filesIndexFile, - finishing: removeKeyOnFail(finishing.promise) - }); + return s0; + } + function peg$parsePlainStringText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; } else { - ctx.fetchingLocker.set(opts.pkg.id, { - files: removeKeyOnFail(files.promise), - filesIndexFile, - finishing: removeKeyOnFail(finishing.promise) - }); + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } } - files.promise.then((cache) => { - if (cache.fromStore) { - return; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } } - const tmp = ctx.fetchingLocker.get(opts.pkg.id); - if (tmp == null) - return; - ctx.fetchingLocker.set(opts.pkg.id, { - ...tmp, - files: Promise.resolve({ - ...cache, - fromStore: true - }) - }); - }).catch(() => { - ctx.fetchingLocker.delete(opts.pkg.id); - }); - } - const result = ctx.fetchingLocker.get(opts.pkg.id); - if (opts.fetchRawManifest && result.bundledManifest == null) { - result.bundledManifest = removeKeyOnFail(result.files.then(async ({ filesIndex }) => { - const { integrity, mode } = filesIndex["package.json"]; - const manifestPath = ctx.getFilePathByModeInCafs(integrity, mode); - return readBundledManifest(manifestPath); - })); - } - return { - bundledManifest: result.bundledManifest != null ? promise_share_1.default(result.bundledManifest) : void 0, - files: promise_share_1.default(result.files), - filesIndexFile: result.filesIndexFile, - finishing: promise_share_1.default(result.finishing) - }; - async function removeKeyOnFail(p) { - try { - return await p; - } catch (err) { - ctx.fetchingLocker.delete(opts.pkg.id); - throw err; + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - } - async function doFetchToStore(filesIndexFile, bundledManifest, files, finishing) { - try { - const isLocalTarballDep = opts.pkg.id.startsWith("file:"); - if (!opts.force && (!isLocalTarballDep || await tarballIsUpToDate(opts.pkg.resolution, target, opts.lockfileDir))) { - let pkgFilesIndex; - try { - pkgFilesIndex = await load_json_file_1.default(filesIndexFile); - } catch (err) { + if (s2 === peg$FAILED) { + s2 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c126) { + s3 = peg$c126; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); } - if ((pkgFilesIndex === null || pkgFilesIndex === void 0 ? void 0 : pkgFilesIndex.files) != null) { - const manifest = opts.fetchRawManifest ? safeDeferredPromise_1.default() : void 0; - if (pkgFilesIndex.name != null && opts.pkg.name != null && pkgFilesIndex.name !== opts.pkg.name || pkgFilesIndex.version != null && opts.pkg.version != null && pkgFilesIndex.version !== opts.pkg.version) { - throw new error_1.default("UNEXPECTED_PKG_CONTENT_IN_STORE", `Package name mismatch found while reading ${JSON.stringify(opts.pkg.resolution)} from the store. This means that the lockfile is broken. Expected package: ${opts.pkg.name}@${opts.pkg.version}. Actual package in the store by the given integrity: ${pkgFilesIndex.name}@${pkgFilesIndex.version}.`); - } - const verified = await ctx.checkFilesIntegrity(pkgFilesIndex.files, manifest); - if (verified) { - files.resolve({ - filesIndex: pkgFilesIndex.files, - fromStore: true, - sideEffects: pkgFilesIndex.sideEffects - }); - if (manifest != null) { - manifest().then((manifest2) => bundledManifest.resolve(pickBundledManifest(manifest2))).catch(bundledManifest.reject); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c128(); + } + s2 = s3; + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); } - finishing.resolve(void 0); - return; } - packageRequestLogger.warn({ - message: `Refetching ${target} to store. It was either modified or had no integrity checksums`, - prefix: opts.lockfileDir - }); + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } } - const priority = (++ctx.requestsQueue["counter"] % ctx.requestsQueue["concurrency"] === 0 ? -1 : 1) * 1e3; - const fetchManifest = opts.fetchRawManifest ? safeDeferredPromise_1.default() : void 0; - if (fetchManifest != null) { - fetchManifest().then((manifest) => bundledManifest.resolve(pickBundledManifest(manifest))).catch(bundledManifest.reject); - } - const fetchedPackage = await ctx.requestsQueue.add(async () => ctx.fetch(opts.pkg.id, opts.pkg.resolution, { - lockfileDir: opts.lockfileDir, - manifest: fetchManifest, - onProgress: (downloaded) => { - core_loggers_1.fetchingProgressLogger.debug({ - downloaded, - packageId: opts.pkg.id, - status: "in_progress" - }); - }, - onStart: (size, attempt) => { - core_loggers_1.fetchingProgressLogger.debug({ - attempt, - packageId: opts.pkg.id, - size, - status: "started" - }); + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 === peg$FAILED) { + s2 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c126) { + s3 = peg$c126; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c128(); + } + s2 = s3; + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } } - }), { priority }); - const filesIndex = fetchedPackage.filesIndex; - const integrity = {}; - await Promise.all(Object.keys(filesIndex).map(async (filename) => { - const { checkedAt, integrity: fileIntegrity } = await filesIndex[filename].writeResult; - integrity[filename] = { - checkedAt, - integrity: fileIntegrity.toString(), - mode: filesIndex[filename].mode, - size: filesIndex[filename].size - }; - })); - await writeJsonFile(filesIndexFile, { - name: opts.pkg.name, - version: opts.pkg.version, - files: integrity - }); - if (isLocalTarballDep && opts.pkg.resolution["integrity"]) { - await fs_1.promises.mkdir(target, { recursive: true }); - await graceful_fs_1.default.writeFile(path_1.default.join(target, TARBALL_INTEGRITY_FILENAME), opts.pkg.resolution["integrity"], "utf8"); - } - files.resolve({ - filesIndex: integrity, - fromStore: false - }); - finishing.resolve(void 0); - } catch (err) { - files.reject(err); - if (opts.fetchRawManifest) { - bundledManifest.reject(err); } + } else { + s1 = peg$FAILED; } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); + } + s0 = s1; + return s0; } - } - async function writeJsonFile(filePath, data) { - const targetDir = path_1.default.dirname(filePath); - await fs_1.promises.mkdir(targetDir, { recursive: true }); - const temp = path_temp_1.default(targetDir); - await graceful_fs_1.default.writeFile(temp, JSON.stringify(data)); - await rename_overwrite_1.default(temp, filePath); - } - async function readBundledManifest(pkgJsonPath) { - return pickBundledManifest(await read_package_json_1.default(pkgJsonPath)); - } - async function tarballIsUpToDate(resolution, pkgInStoreLocation, lockfileDir) { - let currentIntegrity; - try { - currentIntegrity = await graceful_fs_1.default.readFile(path_1.default.join(pkgInStoreLocation, TARBALL_INTEGRITY_FILENAME), "utf8"); - } catch (err) { - return false; - } - if (resolution.integrity && currentIntegrity !== resolution.integrity) - return false; - const tarball = path_1.default.join(lockfileDir, resolution.tarball.slice(5)); - const tarballStream = fs_1.createReadStream(tarball); - try { - return Boolean(await ssri_1.default.checkStream(tarballStream, currentIntegrity)); - } catch (err) { - return false; - } - } - async function fetcher(fetcherByHostingType, cafs, packageId, resolution, opts) { - var _a, _b; - const fetch = fetcherByHostingType[(_a = resolution.type) !== null && _a !== void 0 ? _a : "tarball"]; - if (!fetch) { - throw new Error(`Fetching for dependency type "${(_b = resolution.type) !== null && _b !== void 0 ? _b : "undefined"}" is not supported`); - } - try { - return await fetch(cafs, resolution, opts); - } catch (err) { - packageRequestLogger.warn({ - message: `Fetching ${packageId} failed!`, - prefix: opts.lockfileDir - }); - throw err; - } - } - } -}); - -// ../package-requester/lib/index.js -var require_lib34 = __commonJS({ - "../package-requester/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var packageRequester_1 = __importDefault(require_packageRequester()); - exports2.default = packageRequester_1.default; - } -}); - -// ../../node_modules/.pnpm/semver@6.3.0/node_modules/semver/semver.js -var require_semver3 = __commonJS({ - "../../node_modules/.pnpm/semver@6.3.0/node_modules/semver/semver.js"(exports2, module2) { - exports2 = module2.exports = SemVer; - var debug; - if (typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG)) { - debug = function() { - var args2 = Array.prototype.slice.call(arguments, 0); - args2.unshift("SEMVER"); - console.log.apply(console, args2); - }; - } else { - debug = function() { - }; - } - exports2.SEMVER_SPEC_VERSION = "2.0.0"; - var MAX_LENGTH = 256; - var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; - var MAX_SAFE_COMPONENT_LENGTH = 16; - var re = exports2.re = []; - var src = exports2.src = []; - var t = exports2.tokens = {}; - var R = 0; - function tok(n) { - t[n] = R++; - } - tok("NUMERICIDENTIFIER"); - src[t.NUMERICIDENTIFIER] = "0|[1-9]\\d*"; - tok("NUMERICIDENTIFIERLOOSE"); - src[t.NUMERICIDENTIFIERLOOSE] = "[0-9]+"; - tok("NONNUMERICIDENTIFIER"); - src[t.NONNUMERICIDENTIFIER] = "\\d*[a-zA-Z-][a-zA-Z0-9-]*"; - tok("MAINVERSION"); - src[t.MAINVERSION] = "(" + src[t.NUMERICIDENTIFIER] + ")\\.(" + src[t.NUMERICIDENTIFIER] + ")\\.(" + src[t.NUMERICIDENTIFIER] + ")"; - tok("MAINVERSIONLOOSE"); - src[t.MAINVERSIONLOOSE] = "(" + src[t.NUMERICIDENTIFIERLOOSE] + ")\\.(" + src[t.NUMERICIDENTIFIERLOOSE] + ")\\.(" + src[t.NUMERICIDENTIFIERLOOSE] + ")"; - tok("PRERELEASEIDENTIFIER"); - src[t.PRERELEASEIDENTIFIER] = "(?:" + src[t.NUMERICIDENTIFIER] + "|" + src[t.NONNUMERICIDENTIFIER] + ")"; - tok("PRERELEASEIDENTIFIERLOOSE"); - src[t.PRERELEASEIDENTIFIERLOOSE] = "(?:" + src[t.NUMERICIDENTIFIERLOOSE] + "|" + src[t.NONNUMERICIDENTIFIER] + ")"; - tok("PRERELEASE"); - src[t.PRERELEASE] = "(?:-(" + src[t.PRERELEASEIDENTIFIER] + "(?:\\." + src[t.PRERELEASEIDENTIFIER] + ")*))"; - tok("PRERELEASELOOSE"); - src[t.PRERELEASELOOSE] = "(?:-?(" + src[t.PRERELEASEIDENTIFIERLOOSE] + "(?:\\." + src[t.PRERELEASEIDENTIFIERLOOSE] + ")*))"; - tok("BUILDIDENTIFIER"); - src[t.BUILDIDENTIFIER] = "[0-9A-Za-z-]+"; - tok("BUILD"); - src[t.BUILD] = "(?:\\+(" + src[t.BUILDIDENTIFIER] + "(?:\\." + src[t.BUILDIDENTIFIER] + ")*))"; - tok("FULL"); - tok("FULLPLAIN"); - src[t.FULLPLAIN] = "v?" + src[t.MAINVERSION] + src[t.PRERELEASE] + "?" + src[t.BUILD] + "?"; - src[t.FULL] = "^" + src[t.FULLPLAIN] + "$"; - tok("LOOSEPLAIN"); - src[t.LOOSEPLAIN] = "[v=\\s]*" + src[t.MAINVERSIONLOOSE] + src[t.PRERELEASELOOSE] + "?" + src[t.BUILD] + "?"; - tok("LOOSE"); - src[t.LOOSE] = "^" + src[t.LOOSEPLAIN] + "$"; - tok("GTLT"); - src[t.GTLT] = "((?:<|>)?=?)"; - tok("XRANGEIDENTIFIERLOOSE"); - src[t.XRANGEIDENTIFIERLOOSE] = src[t.NUMERICIDENTIFIERLOOSE] + "|x|X|\\*"; - tok("XRANGEIDENTIFIER"); - src[t.XRANGEIDENTIFIER] = src[t.NUMERICIDENTIFIER] + "|x|X|\\*"; - tok("XRANGEPLAIN"); - src[t.XRANGEPLAIN] = "[v=\\s]*(" + src[t.XRANGEIDENTIFIER] + ")(?:\\.(" + src[t.XRANGEIDENTIFIER] + ")(?:\\.(" + src[t.XRANGEIDENTIFIER] + ")(?:" + src[t.PRERELEASE] + ")?" + src[t.BUILD] + "?)?)?"; - tok("XRANGEPLAINLOOSE"); - src[t.XRANGEPLAINLOOSE] = "[v=\\s]*(" + src[t.XRANGEIDENTIFIERLOOSE] + ")(?:\\.(" + src[t.XRANGEIDENTIFIERLOOSE] + ")(?:\\.(" + src[t.XRANGEIDENTIFIERLOOSE] + ")(?:" + src[t.PRERELEASELOOSE] + ")?" + src[t.BUILD] + "?)?)?"; - tok("XRANGE"); - src[t.XRANGE] = "^" + src[t.GTLT] + "\\s*" + src[t.XRANGEPLAIN] + "$"; - tok("XRANGELOOSE"); - src[t.XRANGELOOSE] = "^" + src[t.GTLT] + "\\s*" + src[t.XRANGEPLAINLOOSE] + "$"; - tok("COERCE"); - src[t.COERCE] = "(^|[^\\d])(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "})(?:\\.(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "}))?(?:\\.(\\d{1," + MAX_SAFE_COMPONENT_LENGTH + "}))?(?:$|[^\\d])"; - tok("COERCERTL"); - re[t.COERCERTL] = new RegExp(src[t.COERCE], "g"); - tok("LONETILDE"); - src[t.LONETILDE] = "(?:~>?)"; - tok("TILDETRIM"); - src[t.TILDETRIM] = "(\\s*)" + src[t.LONETILDE] + "\\s+"; - re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], "g"); - var tildeTrimReplace = "$1~"; - tok("TILDE"); - src[t.TILDE] = "^" + src[t.LONETILDE] + src[t.XRANGEPLAIN] + "$"; - tok("TILDELOOSE"); - src[t.TILDELOOSE] = "^" + src[t.LONETILDE] + src[t.XRANGEPLAINLOOSE] + "$"; - tok("LONECARET"); - src[t.LONECARET] = "(?:\\^)"; - tok("CARETTRIM"); - src[t.CARETTRIM] = "(\\s*)" + src[t.LONECARET] + "\\s+"; - re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], "g"); - var caretTrimReplace = "$1^"; - tok("CARET"); - src[t.CARET] = "^" + src[t.LONECARET] + src[t.XRANGEPLAIN] + "$"; - tok("CARETLOOSE"); - src[t.CARETLOOSE] = "^" + src[t.LONECARET] + src[t.XRANGEPLAINLOOSE] + "$"; - tok("COMPARATORLOOSE"); - src[t.COMPARATORLOOSE] = "^" + src[t.GTLT] + "\\s*(" + src[t.LOOSEPLAIN] + ")$|^$"; - tok("COMPARATOR"); - src[t.COMPARATOR] = "^" + src[t.GTLT] + "\\s*(" + src[t.FULLPLAIN] + ")$|^$"; - tok("COMPARATORTRIM"); - src[t.COMPARATORTRIM] = "(\\s*)" + src[t.GTLT] + "\\s*(" + src[t.LOOSEPLAIN] + "|" + src[t.XRANGEPLAIN] + ")"; - re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], "g"); - var comparatorTrimReplace = "$1$2$3"; - tok("HYPHENRANGE"); - src[t.HYPHENRANGE] = "^\\s*(" + src[t.XRANGEPLAIN] + ")\\s+-\\s+(" + src[t.XRANGEPLAIN] + ")\\s*$"; - tok("HYPHENRANGELOOSE"); - src[t.HYPHENRANGELOOSE] = "^\\s*(" + src[t.XRANGEPLAINLOOSE] + ")\\s+-\\s+(" + src[t.XRANGEPLAINLOOSE] + ")\\s*$"; - tok("STAR"); - src[t.STAR] = "(<|>)?=?\\s*\\*"; - for (i = 0; i < R; i++) { - debug(i, src[i]); - if (!re[i]) { - re[i] = new RegExp(src[i]); - } - } - var i; - exports2.parse = parse; - function parse(version, options) { - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; - } - if (version instanceof SemVer) { - return version; - } - if (typeof version !== "string") { - return null; - } - if (version.length > MAX_LENGTH) { - return null; - } - var r = options.loose ? re[t.LOOSE] : re[t.FULL]; - if (!r.test(version)) { - return null; - } - try { - return new SemVer(version, options); - } catch (er) { - return null; - } - } - exports2.valid = valid; - function valid(version, options) { - var v = parse(version, options); - return v ? v.version : null; - } - exports2.clean = clean; - function clean(version, options) { - var s = parse(version.trim().replace(/^[=v]+/, ""), options); - return s ? s.version : null; - } - exports2.SemVer = SemVer; - function SemVer(version, options) { - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; - } - if (version instanceof SemVer) { - if (version.loose === options.loose) { - return version; + function peg$parseArithmeticPrimary() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c129; + peg$currPos++; } else { - version = version.version; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); + } } - } else if (typeof version !== "string") { - throw new TypeError("Invalid Version: " + version); - } - if (version.length > MAX_LENGTH) { - throw new TypeError("version is longer than " + MAX_LENGTH + " characters"); - } - if (!(this instanceof SemVer)) { - return new SemVer(version, options); - } - debug("SemVer", version, options); - this.options = options; - this.loose = !!options.loose; - var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); - if (!m) { - throw new TypeError("Invalid Version: " + version); - } - this.raw = version; - this.major = +m[1]; - this.minor = +m[2]; - this.patch = +m[3]; - if (this.major > MAX_SAFE_INTEGER || this.major < 0) { - throw new TypeError("Invalid major version"); - } - if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { - throw new TypeError("Invalid minor version"); - } - if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { - throw new TypeError("Invalid patch version"); - } - if (!m[4]) { - this.prerelease = []; - } else { - this.prerelease = m[4].split(".").map(function(id) { - if (/^[0-9]+$/.test(id)) { - var num = +id; - if (num >= 0 && num < MAX_SAFE_INTEGER) { - return num; + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c131; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); } } - return id; - }); - } - this.build = m[5] ? m[5].split(".") : []; - this.format(); - } - SemVer.prototype.format = function() { - this.version = this.major + "." + this.minor + "." + this.patch; - if (this.prerelease.length) { - this.version += "-" + this.prerelease.join("."); - } - return this.version; - }; - SemVer.prototype.toString = function() { - return this.version; - }; - SemVer.prototype.compare = function(other) { - debug("SemVer.compare", this.version, this.options, other); - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - return this.compareMain(other) || this.comparePre(other); - }; - SemVer.prototype.compareMain = function(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); - }; - SemVer.prototype.comparePre = function(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - if (this.prerelease.length && !other.prerelease.length) { - return -1; - } else if (!this.prerelease.length && other.prerelease.length) { - return 1; - } else if (!this.prerelease.length && !other.prerelease.length) { - return 0; - } - var i2 = 0; - do { - var a = this.prerelease[i2]; - var b = other.prerelease[i2]; - debug("prerelease compare", i2, a, b); - if (a === void 0 && b === void 0) { - return 0; - } else if (b === void 0) { - return 1; - } else if (a === void 0) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); } - } while (++i2); - }; - SemVer.prototype.compareBuild = function(other) { - if (!(other instanceof SemVer)) { - other = new SemVer(other, this.options); - } - var i2 = 0; - do { - var a = this.build[i2]; - var b = other.build[i2]; - debug("prerelease compare", i2, a, b); - if (a === void 0 && b === void 0) { - return 0; - } else if (b === void 0) { - return 1; - } else if (a === void 0) { - return -1; - } else if (a === b) { - continue; - } else { - return compareIdentifiers(a, b); + if (s1 === peg$FAILED) { + s1 = null; } - } while (++i2); - }; - SemVer.prototype.inc = function(release, identifier) { - switch (release) { - case "premajor": - this.prerelease.length = 0; - this.patch = 0; - this.minor = 0; - this.major++; - this.inc("pre", identifier); - break; - case "preminor": - this.prerelease.length = 0; - this.patch = 0; - this.minor++; - this.inc("pre", identifier); - break; - case "prepatch": - this.prerelease.length = 0; - this.inc("patch", identifier); - this.inc("pre", identifier); - break; - case "prerelease": - if (this.prerelease.length === 0) { - this.inc("patch", identifier); - } - this.inc("pre", identifier); - break; - case "major": - if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { - this.major++; + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } } - this.minor = 0; - this.patch = 0; - this.prerelease = []; - break; - case "minor": - if (this.patch !== 0 || this.prerelease.length === 0) { - this.minor++; + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s2 = peg$FAILED; } - this.patch = 0; - this.prerelease = []; - break; - case "patch": - if (this.prerelease.length === 0) { - this.patch++; + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 46) { + s3 = peg$c133; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c134); + } + } + if (s3 !== peg$FAILED) { + s4 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c135(s1, s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - this.prerelease = []; - break; - case "pre": - if (this.prerelease.length === 0) { - this.prerelease = [0]; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c129; + peg$currPos++; } else { - var i2 = this.prerelease.length; - while (--i2 >= 0) { - if (typeof this.prerelease[i2] === "number") { - this.prerelease[i2]++; - i2 = -2; - } + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); } - if (i2 === -1) { - this.prerelease.push(0); + } + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c131; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } } } - if (identifier) { - if (this.prerelease[0] === identifier) { - if (isNaN(this.prerelease[1])) { - this.prerelease = [identifier, 0]; + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } } } else { - this.prerelease = [identifier, 0]; + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c136(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - break; - default: - throw new Error("invalid increment argument: " + release); - } - this.format(); - this.raw = this.version; - return this; - }; - exports2.inc = inc; - function inc(version, release, loose, identifier) { - if (typeof loose === "string") { - identifier = loose; - loose = void 0; - } - try { - return new SemVer(version, loose).inc(release, identifier).version; - } catch (er) { - return null; - } - } - exports2.diff = diff; - function diff(version1, version2) { - if (eq(version1, version2)) { - return null; - } else { - var v1 = parse(version1); - var v2 = parse(version2); - var prefix = ""; - if (v1.prerelease.length || v2.prerelease.length) { - prefix = "pre"; - var defaultResult = "prerelease"; - } - for (var key in v1) { - if (key === "major" || key === "minor" || key === "patch") { - if (v1[key] !== v2[key]) { - return prefix + key; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c137(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseIdentifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c138(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 40) { + s1 = peg$c24; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s5 = peg$c26; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c139(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } } } } - return defaultResult; - } - } - exports2.compareIdentifiers = compareIdentifiers; - var numeric = /^[0-9]+$/; - function compareIdentifiers(a, b) { - var anum = numeric.test(a); - var bnum = numeric.test(b); - if (anum && bnum) { - a = +a; - b = +b; - } - return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; - } - exports2.rcompareIdentifiers = rcompareIdentifiers; - function rcompareIdentifiers(a, b) { - return compareIdentifiers(b, a); - } - exports2.major = major; - function major(a, loose) { - return new SemVer(a, loose).major; - } - exports2.minor = minor; - function minor(a, loose) { - return new SemVer(a, loose).minor; - } - exports2.patch = patch; - function patch(a, loose) { - return new SemVer(a, loose).patch; - } - exports2.compare = compare; - function compare(a, b, loose) { - return new SemVer(a, loose).compare(new SemVer(b, loose)); - } - exports2.compareLoose = compareLoose; - function compareLoose(a, b) { - return compare(a, b, true); - } - exports2.compareBuild = compareBuild; - function compareBuild(a, b, loose) { - var versionA = new SemVer(a, loose); - var versionB = new SemVer(b, loose); - return versionA.compare(versionB) || versionA.compareBuild(versionB); - } - exports2.rcompare = rcompare; - function rcompare(a, b, loose) { - return compare(b, a, loose); - } - exports2.sort = sort; - function sort(list, loose) { - return list.sort(function(a, b) { - return exports2.compareBuild(a, b, loose); - }); - } - exports2.rsort = rsort; - function rsort(list, loose) { - return list.sort(function(a, b) { - return exports2.compareBuild(b, a, loose); - }); - } - exports2.gt = gt; - function gt(a, b, loose) { - return compare(a, b, loose) > 0; - } - exports2.lt = lt; - function lt(a, b, loose) { - return compare(a, b, loose) < 0; - } - exports2.eq = eq; - function eq(a, b, loose) { - return compare(a, b, loose) === 0; - } - exports2.neq = neq; - function neq(a, b, loose) { - return compare(a, b, loose) !== 0; - } - exports2.gte = gte; - function gte(a, b, loose) { - return compare(a, b, loose) >= 0; - } - exports2.lte = lte; - function lte(a, b, loose) { - return compare(a, b, loose) <= 0; - } - exports2.cmp = cmp; - function cmp(a, op, b, loose) { - switch (op) { - case "===": - if (typeof a === "object") - a = a.version; - if (typeof b === "object") - b = b.version; - return a === b; - case "!==": - if (typeof a === "object") - a = a.version; - if (typeof b === "object") - b = b.version; - return a !== b; - case "": - case "=": - case "==": - return eq(a, b, loose); - case "!=": - return neq(a, b, loose); - case ">": - return gt(a, b, loose); - case ">=": - return gte(a, b, loose); - case "<": - return lt(a, b, loose); - case "<=": - return lte(a, b, loose); - default: - throw new TypeError("Invalid operator: " + op); - } - } - exports2.Comparator = Comparator; - function Comparator(comp, options) { - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; + return s0; } - if (comp instanceof Comparator) { - if (comp.loose === !!options.loose) { - return comp; + function peg$parseArithmeticTimesExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticPrimary(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c140; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c141); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c142; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c143); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c144(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c140; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c141); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c142; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c143); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c144(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c145(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - comp = comp.value; - } - } - if (!(this instanceof Comparator)) { - return new Comparator(comp, options); - } - debug("comparator", comp, options); - this.options = options; - this.loose = !!options.loose; - this.parse(comp); - if (this.semver === ANY) { - this.value = ""; - } else { - this.value = this.operator + this.semver.version; - } - debug("comp", this); - } - var ANY = {}; - Comparator.prototype.parse = function(comp) { - var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; - var m = comp.match(r); - if (!m) { - throw new TypeError("Invalid comparator: " + comp); - } - this.operator = m[1] !== void 0 ? m[1] : ""; - if (this.operator === "=") { - this.operator = ""; - } - if (!m[2]) { - this.semver = ANY; - } else { - this.semver = new SemVer(m[2], this.options.loose); - } - }; - Comparator.prototype.toString = function() { - return this.value; - }; - Comparator.prototype.test = function(version) { - debug("Comparator.test", version, this.options.loose); - if (this.semver === ANY || version === ANY) { - return true; - } - if (typeof version === "string") { - try { - version = new SemVer(version, this.options); - } catch (er) { - return false; - } - } - return cmp(version, this.operator, this.semver, this.options); - }; - Comparator.prototype.intersects = function(comp, options) { - if (!(comp instanceof Comparator)) { - throw new TypeError("a Comparator is required"); - } - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; - } - var rangeTmp; - if (this.operator === "") { - if (this.value === "") { - return true; - } - rangeTmp = new Range(comp.value, options); - return satisfies(this.value, rangeTmp, options); - } else if (comp.operator === "") { - if (comp.value === "") { - return true; + peg$currPos = s0; + s0 = peg$FAILED; } - rangeTmp = new Range(this.value, options); - return satisfies(comp.semver, rangeTmp, options); - } - var sameDirectionIncreasing = (this.operator === ">=" || this.operator === ">") && (comp.operator === ">=" || comp.operator === ">"); - var sameDirectionDecreasing = (this.operator === "<=" || this.operator === "<") && (comp.operator === "<=" || comp.operator === "<"); - var sameSemVer = this.semver.version === comp.semver.version; - var differentDirectionsInclusive = (this.operator === ">=" || this.operator === "<=") && (comp.operator === ">=" || comp.operator === "<="); - var oppositeDirectionsLessThan = cmp(this.semver, "<", comp.semver, options) && ((this.operator === ">=" || this.operator === ">") && (comp.operator === "<=" || comp.operator === "<")); - var oppositeDirectionsGreaterThan = cmp(this.semver, ">", comp.semver, options) && ((this.operator === "<=" || this.operator === "<") && (comp.operator === ">=" || comp.operator === ">")); - return sameDirectionIncreasing || sameDirectionDecreasing || sameSemVer && differentDirectionsInclusive || oppositeDirectionsLessThan || oppositeDirectionsGreaterThan; - }; - exports2.Range = Range; - function Range(range, options) { - if (!options || typeof options !== "object") { - options = { - loose: !!options, - includePrerelease: false - }; + return s0; } - if (range instanceof Range) { - if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) { - return range; + function peg$parseArithmeticExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticTimesExpression(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c131; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c129; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c146(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c131; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c129; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c146(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c145(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - return new Range(range.raw, options); + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - if (range instanceof Comparator) { - return new Range(range.value, options); - } - if (!(this instanceof Range)) { - return new Range(range, options); - } - this.options = options; - this.loose = !!options.loose; - this.includePrerelease = !!options.includePrerelease; - this.raw = range; - this.set = range.split(/\s*\|\|\s*/).map(function(range2) { - return this.parseRange(range2.trim()); - }, this).filter(function(c) { - return c.length; - }); - if (!this.set.length) { - throw new TypeError("Invalid SemVer Range: " + range); - } - this.format(); - } - Range.prototype.format = function() { - this.range = this.set.map(function(comps) { - return comps.join(" ").trim(); - }).join("||").trim(); - return this.range; - }; - Range.prototype.toString = function() { - return this.range; - }; - Range.prototype.parseRange = function(range) { - var loose = this.options.loose; - range = range.trim(); - var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; - range = range.replace(hr, hyphenReplace); - debug("hyphen replace", range); - range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); - debug("comparator trim", range, re[t.COMPARATORTRIM]); - range = range.replace(re[t.TILDETRIM], tildeTrimReplace); - range = range.replace(re[t.CARETTRIM], caretTrimReplace); - range = range.split(/\s+/).join(" "); - var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; - var set = range.split(" ").map(function(comp) { - return parseComparator(comp, this.options); - }, this).join(" ").split(/\s+/); - if (this.options.loose) { - set = set.filter(function(comp) { - return !!comp.match(compRe); - }); - } - set = set.map(function(comp) { - return new Comparator(comp, this.options); - }, this); - return set; - }; - Range.prototype.intersects = function(range, options) { - if (!(range instanceof Range)) { - throw new TypeError("a Range is required"); - } - return this.set.some(function(thisComparators) { - return isSatisfiable(thisComparators, options) && range.set.some(function(rangeComparators) { - return isSatisfiable(rangeComparators, options) && thisComparators.every(function(thisComparator) { - return rangeComparators.every(function(rangeComparator) { - return thisComparator.intersects(rangeComparator, options); - }); - }); - }); - }); - }; - function isSatisfiable(comparators, options) { - var result = true; - var remainingComparators = comparators.slice(); - var testComparator = remainingComparators.pop(); - while (result && remainingComparators.length) { - result = remainingComparators.every(function(otherComparator) { - return testComparator.intersects(otherComparator, options); - }); - testComparator = remainingComparators.pop(); - } - return result; - } - exports2.toComparators = toComparators; - function toComparators(range, options) { - return new Range(range, options).set.map(function(comp) { - return comp.map(function(c) { - return c.value; - }).join(" ").trim().split(" "); - }); - } - function parseComparator(comp, options) { - debug("comp", comp, options); - comp = replaceCarets(comp, options); - debug("caret", comp); - comp = replaceTildes(comp, options); - debug("tildes", comp); - comp = replaceXRanges(comp, options); - debug("xrange", comp); - comp = replaceStars(comp, options); - debug("stars", comp); - return comp; - } - function isX(id) { - return !id || id.toLowerCase() === "x" || id === "*"; - } - function replaceTildes(comp, options) { - return comp.trim().split(/\s+/).map(function(comp2) { - return replaceTilde(comp2, options); - }).join(" "); - } - function replaceTilde(comp, options) { - var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]; - return comp.replace(r, function(_, M, m, p, pr) { - debug("tilde", comp, _, M, m, p, pr); - var ret; - if (isX(M)) { - ret = ""; - } else if (isX(m)) { - ret = ">=" + M + ".0.0 <" + (+M + 1) + ".0.0"; - } else if (isX(p)) { - ret = ">=" + M + "." + m + ".0 <" + M + "." + (+m + 1) + ".0"; - } else if (pr) { - debug("replaceTilde pr", pr); - ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + (+m + 1) + ".0"; + function peg$parseArithmetic() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 3) === peg$c147) { + s1 = peg$c147; + peg$currPos += 3; } else { - ret = ">=" + M + "." + m + "." + p + " <" + M + "." + (+m + 1) + ".0"; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c148); + } } - debug("tilde return", ret); - return ret; - }); - } - function replaceCarets(comp, options) { - return comp.trim().split(/\s+/).map(function(comp2) { - return replaceCaret(comp2, options); - }).join(" "); - } - function replaceCaret(comp, options) { - debug("caret", comp, options); - var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]; - return comp.replace(r, function(_, M, m, p, pr) { - debug("caret", comp, _, M, m, p, pr); - var ret; - if (isX(M)) { - ret = ""; - } else if (isX(m)) { - ret = ">=" + M + ".0.0 <" + (+M + 1) + ".0.0"; - } else if (isX(p)) { - if (M === "0") { - ret = ">=" + M + "." + m + ".0 <" + M + "." + (+m + 1) + ".0"; - } else { - ret = ">=" + M + "." + m + ".0 <" + (+M + 1) + ".0.0"; + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); } - } else if (pr) { - debug("replaceCaret pr", pr); - if (M === "0") { - if (m === "0") { - ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + m + "." + (+p + 1); + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c149) { + s5 = peg$c149; + peg$currPos += 2; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c150); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c151(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + M + "." + (+m + 1) + ".0"; + peg$currPos = s0; + s0 = peg$FAILED; } } else { - ret = ">=" + M + "." + m + "." + p + "-" + pr + " <" + (+M + 1) + ".0.0"; + peg$currPos = s0; + s0 = peg$FAILED; } } else { - debug("no pr"); - if (M === "0") { - if (m === "0") { - ret = ">=" + M + "." + m + "." + p + " <" + M + "." + m + "." + (+p + 1); - } else { - ret = ">=" + M + "." + m + "." + p + " <" + M + "." + (+m + 1) + ".0"; - } - } else { - ret = ">=" + M + "." + m + "." + p + " <" + (+M + 1) + ".0.0"; - } - } - debug("caret return", ret); - return ret; - }); - } - function replaceXRanges(comp, options) { - debug("replaceXRanges", comp, options); - return comp.split(/\s+/).map(function(comp2) { - return replaceXRange(comp2, options); - }).join(" "); - } - function replaceXRange(comp, options) { - comp = comp.trim(); - var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; - return comp.replace(r, function(ret, gtlt, M, m, p, pr) { - debug("xRange", comp, ret, gtlt, M, m, p, pr); - var xM = isX(M); - var xm = xM || isX(m); - var xp = xm || isX(p); - var anyX = xp; - if (gtlt === "=" && anyX) { - gtlt = ""; + peg$currPos = s0; + s0 = peg$FAILED; } - pr = options.includePrerelease ? "-0" : ""; - if (xM) { - if (gtlt === ">" || gtlt === "<") { - ret = "<0.0.0-0"; - } else { - ret = "*"; - } - } else if (gtlt && anyX) { - if (xm) { - m = 0; + return s0; + } + function peg$parseSubshell() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); } - p = 0; - if (gtlt === ">") { - gtlt = ">="; - if (xm) { - M = +M + 1; - m = 0; - p = 0; + } + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s3 = peg$c26; + peg$currPos++; } else { - m = +m + 1; - p = 0; + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } } - } else if (gtlt === "<=") { - gtlt = "<"; - if (xm) { - M = +M + 1; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c154(s2); + s0 = s1; } else { - m = +m + 1; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - ret = gtlt + M + "." + m + "." + p + pr; - } else if (xm) { - ret = ">=" + M + ".0.0" + pr + " <" + (+M + 1) + ".0.0" + pr; - } else if (xp) { - ret = ">=" + M + "." + m + ".0" + pr + " <" + M + "." + (+m + 1) + ".0" + pr; - } - debug("xRange return", ret); - return ret; - }); - } - function replaceStars(comp, options) { - debug("replaceStars", comp, options); - return comp.trim().replace(re[t.STAR], ""); - } - function hyphenReplace($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) { - if (isX(fM)) { - from = ""; - } else if (isX(fm)) { - from = ">=" + fM + ".0.0"; - } else if (isX(fp)) { - from = ">=" + fM + "." + fm + ".0"; - } else { - from = ">=" + from; - } - if (isX(tM)) { - to = ""; - } else if (isX(tm)) { - to = "<" + (+tM + 1) + ".0.0"; - } else if (isX(tp)) { - to = "<" + tM + "." + (+tm + 1) + ".0"; - } else if (tpr) { - to = "<=" + tM + "." + tm + "." + tp + "-" + tpr; - } else { - to = "<=" + to; - } - return (from + " " + to).trim(); - } - Range.prototype.test = function(version) { - if (!version) { - return false; - } - if (typeof version === "string") { - try { - version = new SemVer(version, this.options); - } catch (er) { - return false; - } - } - for (var i2 = 0; i2 < this.set.length; i2++) { - if (testSet(this.set[i2], version, this.options)) { - return true; - } - } - return false; - }; - function testSet(set, version, options) { - for (var i2 = 0; i2 < set.length; i2++) { - if (!set[i2].test(version)) { - return false; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - if (version.prerelease.length && !options.includePrerelease) { - for (i2 = 0; i2 < set.length; i2++) { - debug(set[i2].semver); - if (set[i2].semver === ANY) { - continue; - } - if (set[i2].semver.prerelease.length > 0) { - var allowed = set[i2].semver; - if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch) { - return true; - } + function peg$parseVariable() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); } } - return false; - } - return true; - } - exports2.satisfies = satisfies; - function satisfies(version, range, options) { - try { - range = new Range(range, options); - } catch (er) { - return false; - } - return range.test(version); - } - exports2.maxSatisfying = maxSatisfying; - function maxSatisfying(versions, range, options) { - var max = null; - var maxSV = null; - try { - var rangeObj = new Range(range, options); - } catch (er) { - return null; - } - versions.forEach(function(v) { - if (rangeObj.test(v)) { - if (!max || maxSV.compare(v) === -1) { - max = v; - maxSV = new SemVer(max, options); + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c157) { + s3 = peg$c157; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c158); + } + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c159(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - return max; - } - exports2.minSatisfying = minSatisfying; - function minSatisfying(versions, range, options) { - var min = null; - var minSV = null; - try { - var rangeObj = new Range(range, options); - } catch (er) { - return null; - } - versions.forEach(function(v) { - if (rangeObj.test(v)) { - if (!min || minSV.compare(v) === 1) { - min = v; - minSV = new SemVer(min, options); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } } - } - }); - return min; - } - exports2.minVersion = minVersion; - function minVersion(range, loose) { - range = new Range(range, loose); - var minver = new SemVer("0.0.0"); - if (range.test(minver)) { - return minver; - } - minver = new SemVer("0.0.0-0"); - if (range.test(minver)) { - return minver; - } - minver = null; - for (var i2 = 0; i2 < range.set.length; ++i2) { - var comparators = range.set[i2]; - comparators.forEach(function(comparator) { - var compver = new SemVer(comparator.semver.version); - switch (comparator.operator) { - case ">": - if (compver.prerelease.length === 0) { - compver.patch++; + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c160) { + s3 = peg$c160; + peg$currPos += 3; } else { - compver.prerelease.push(0); + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c161); + } } - compver.raw = compver.format(); - case "": - case ">=": - if (!minver || gt(minver, compver)) { - minver = compver; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c162(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - break; - case "<": - case "<=": - break; - default: - throw new Error("Unexpected operation: " + comparator.operator); - } - }); - } - if (minver && range.test(minver)) { - return minver; - } - return null; - } - exports2.validRange = validRange; - function validRange(range, options) { - try { - return new Range(range, options).range || "*"; - } catch (er) { - return null; - } - } - exports2.ltr = ltr; - function ltr(version, range, options) { - return outside(version, range, "<", options); - } - exports2.gtr = gtr; - function gtr(version, range, options) { - return outside(version, range, ">", options); - } - exports2.outside = outside; - function outside(version, range, hilo, options) { - version = new SemVer(version, options); - range = new Range(range, options); - var gtfn, ltefn, ltfn, comp, ecomp; - switch (hilo) { - case ">": - gtfn = gt; - ltefn = lte; - ltfn = lt; - comp = ">"; - ecomp = ">="; - break; - case "<": - gtfn = lt; - ltefn = gte; - ltfn = gt; - comp = "<"; - ecomp = "<="; - break; - default: - throw new TypeError('Must provide a hilo val of "<" or ">"'); - } - if (satisfies(version, range, options)) { - return false; - } - for (var i2 = 0; i2 < range.set.length; ++i2) { - var comparators = range.set[i2]; - var high = null; - var low = null; - comparators.forEach(function(comparator) { - if (comparator.semver === ANY) { - comparator = new Comparator(">=0.0.0"); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - high = high || comparator; - low = low || comparator; - if (gtfn(comparator.semver, high.semver, options)) { - high = comparator; - } else if (ltfn(comparator.semver, low.semver, options)) { - low = comparator; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c163) { + s3 = peg$c163; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c164); + } + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c165(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c166) { + s3 = peg$c166; + peg$currPos += 3; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c167); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c168(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s3 = peg$c31; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c169(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 36) { + s1 = peg$c170; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c171); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c169(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } } - }); - if (high.operator === comp || high.operator === ecomp) { - return false; - } - if ((!low.operator || low.operator === comp) && ltefn(version, low.semver)) { - return false; - } else if (low.operator === ecomp && ltfn(version, low.semver)) { - return false; } + return s0; } - return true; - } - exports2.prerelease = prerelease; - function prerelease(version, options) { - var parsed = parse(version, options); - return parsed && parsed.prerelease.length ? parsed.prerelease : null; - } - exports2.intersects = intersects; - function intersects(r1, r2, options) { - r1 = new Range(r1, options); - r2 = new Range(r2, options); - return r1.intersects(r2); - } - exports2.coerce = coerce; - function coerce(version, options) { - if (version instanceof SemVer) { - return version; - } - if (typeof version === "number") { - version = String(version); - } - if (typeof version !== "string") { - return null; - } - options = options || {}; - var match = null; - if (!options.rtl) { - match = version.match(re[t.COERCE]); - } else { - var next; - while ((next = re[t.COERCERTL].exec(version)) && (!match || match.index + match[0].length !== version.length)) { - if (!match || next.index + next[0].length !== match.index + match[0].length) { - match = next; + function peg$parseGlob() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseGlobText(); + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c172(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; } - re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c173(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - re[t.COERCERTL].lastIndex = -1; - } - if (match === null) { - return null; + return s0; } - return parse(match[2] + "." + (match[3] || "0") + "." + (match[4] || "0"), options); - } - } -}); - -// ../../node_modules/.pnpm/make-dir@3.1.0/node_modules/make-dir/index.js -var require_make_dir = __commonJS({ - "../../node_modules/.pnpm/make-dir@3.1.0/node_modules/make-dir/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var path = require("path"); - var { promisify } = require("util"); - var semver = require_semver3(); - var useNativeRecursiveOption = semver.satisfies(process.version, ">=10.12.0"); - var checkPath = (pth) => { - if (process.platform === "win32") { - const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path.parse(pth).root, "")); - if (pathHasInvalidWinCharacters) { - const error = new Error(`Path contains invalid characters: ${pth}`); - error.code = "EINVAL"; - throw error; + function peg$parseGlobText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - } - }; - var processOptions = (options) => { - const defaults = { - mode: 511, - fs - }; - return { - ...defaults, - ...options - }; - }; - var permissionError = (pth) => { - const error = new Error(`operation not permitted, mkdir '${pth}'`); - error.code = "EPERM"; - error.errno = -4048; - error.path = pth; - error.syscall = "mkdir"; - return error; - }; - var makeDir = async (input, options) => { - checkPath(input); - options = processOptions(options); - const mkdir = promisify(options.fs.mkdir); - const stat = promisify(options.fs.stat); - if (useNativeRecursiveOption && options.fs.mkdir === fs.mkdir) { - const pth = path.resolve(input); - await mkdir(pth, { - mode: options.mode, - recursive: true - }); - return pth; - } - const make = async (pth) => { - try { - await mkdir(pth, options.mode); - return pth; - } catch (error) { - if (error.code === "EPERM") { - throw error; - } - if (error.code === "ENOENT") { - if (path.dirname(pth) === pth) { - throw permissionError(pth); - } - if (error.message.includes("null bytes")) { - throw error; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); } - await make(path.dirname(pth)); - return make(pth); } - try { - const stats = await stat(pth); - if (!stats.isDirectory()) { - throw new Error("The path is not a directory"); - } - } catch (_) { - throw error; + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - return pth; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - }; - return make(path.resolve(input)); - }; - module2.exports = makeDir; - module2.exports.sync = (input, options) => { - checkPath(input); - options = processOptions(options); - if (useNativeRecursiveOption && options.fs.mkdirSync === fs.mkdirSync) { - const pth = path.resolve(input); - fs.mkdirSync(pth, { - mode: options.mode, - recursive: true - }); - return pth; - } - const make = (pth) => { - try { - options.fs.mkdirSync(pth, options.mode); - } catch (error) { - if (error.code === "EPERM") { - throw error; - } - if (error.code === "ENOENT") { - if (path.dirname(pth) === pth) { - throw permissionError(pth); - } - if (error.message.includes("null bytes")) { - throw error; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - make(path.dirname(pth)); - return make(pth); - } - try { - if (!options.fs.statSync(pth).isDirectory()) { - throw new Error("The path is not a directory"); + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - } catch (_) { - throw error; } + } else { + s1 = peg$FAILED; } - return pth; - }; - return make(path.resolve(input)); - }; - } -}); - -// ../../node_modules/.pnpm/write-json-file@4.3.0/node_modules/write-json-file/index.js -var require_write_json_file = __commonJS({ - "../../node_modules/.pnpm/write-json-file@4.3.0/node_modules/write-json-file/index.js"(exports2, module2) { - "use strict"; - var { promisify } = require("util"); - var path = require("path"); - var fs = require_graceful_fs(); - var writeFileAtomic = require_write_file_atomic(); - var sortKeys = require_sort_keys(); - var makeDir = require_make_dir(); - var detectIndent = require_detect_indent(); - var isPlainObj = require_is_plain_obj(); - var readFile = promisify(fs.readFile); - var init = (fn2, filePath, data, options) => { - if (!filePath) { - throw new TypeError("Expected a filepath"); - } - if (data === void 0) { - throw new TypeError("Expected data to stringify"); - } - options = { - indent: " ", - sortKeys: false, - ...options - }; - if (options.sortKeys && isPlainObj(data)) { - data = sortKeys(data, { - deep: true, - compare: typeof options.sortKeys === "function" ? options.sortKeys : void 0 - }); - } - return fn2(filePath, data, options); - }; - var main = async (filePath, data, options) => { - let { indent } = options; - let trailingNewline = "\n"; - try { - const file = await readFile(filePath, "utf8"); - if (!file.endsWith("\n")) { - trailingNewline = ""; - } - if (options.detectIndent) { - indent = detectIndent(file).indent; - } - } catch (error) { - if (error.code !== "ENOENT") { - throw error; - } - } - const json = JSON.stringify(data, options.replacer, indent); - return writeFileAtomic(filePath, `${json}${trailingNewline}`, { mode: options.mode, chown: false }); - }; - var mainSync = (filePath, data, options) => { - let { indent } = options; - let trailingNewline = "\n"; - try { - const file = fs.readFileSync(filePath, "utf8"); - if (!file.endsWith("\n")) { - trailingNewline = ""; - } - if (options.detectIndent) { - indent = detectIndent(file).indent; - } - } catch (error) { - if (error.code !== "ENOENT") { - throw error; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } + s0 = s1; + return s0; } - const json = JSON.stringify(data, options.replacer, indent); - return writeFileAtomic.sync(filePath, `${json}${trailingNewline}`, { mode: options.mode, chown: false }); - }; - module2.exports = async (filePath, data, options) => { - await makeDir(path.dirname(filePath), { fs }); - return init(main, filePath, data, options); - }; - module2.exports.sync = (filePath, data, options) => { - makeDir.sync(path.dirname(filePath), { fs }); - init(mainSync, filePath, data, options); - }; - } -}); - -// ../../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/lib/truncate.js -var require_truncate2 = __commonJS({ - "../../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/lib/truncate.js"(exports2, module2) { - "use strict"; - function isHighSurrogate(codePoint) { - return codePoint >= 55296 && codePoint <= 56319; - } - function isLowSurrogate(codePoint) { - return codePoint >= 56320 && codePoint <= 57343; - } - module2.exports = function truncate(getLength, string, byteLength) { - if (typeof string !== "string") { - throw new Error("Input must be string"); - } - var charLength = string.length; - var curByteLength = 0; - var codePoint; - var segment; - for (var i = 0; i < charLength; i += 1) { - codePoint = string.charCodeAt(i); - segment = string[i]; - if (isHighSurrogate(codePoint) && isLowSurrogate(string.charCodeAt(i + 1))) { - i += 1; - segment += string[i]; + function peg$parseEnvVariable() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); + } } - curByteLength += getLength(segment); - if (curByteLength === byteLength) { - return string.slice(0, i + 1); - } else if (curByteLength > byteLength) { - return string.slice(0, i - segment.length + 1); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); + } + } + } + } else { + s1 = peg$FAILED; } - } - return string; - }; - } -}); - -// ../../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/index.js -var require_truncate_utf8_bytes = __commonJS({ - "../../node_modules/.pnpm/truncate-utf8-bytes@1.0.2/node_modules/truncate-utf8-bytes/index.js"(exports2, module2) { - "use strict"; - var truncate = require_truncate2(); - var getLength = Buffer.byteLength.bind(Buffer); - module2.exports = truncate.bind(null, getLength); - } -}); - -// ../../node_modules/.pnpm/sanitize-filename@1.6.3/node_modules/sanitize-filename/index.js -var require_sanitize_filename = __commonJS({ - "../../node_modules/.pnpm/sanitize-filename@1.6.3/node_modules/sanitize-filename/index.js"(exports2, module2) { - "use strict"; - var truncate = require_truncate_utf8_bytes(); - var illegalRe = /[\/\?<>\\:\*\|"]/g; - var controlRe = /[\x00-\x1f\x80-\x9f]/g; - var reservedRe = /^\.+$/; - var windowsReservedRe = /^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i; - var windowsTrailingRe = /[\. ]+$/; - function sanitize(input, replacement) { - if (typeof input !== "string") { - throw new Error("Input must be string"); - } - var sanitized = input.replace(illegalRe, replacement).replace(controlRe, replacement).replace(reservedRe, replacement).replace(windowsReservedRe, replacement).replace(windowsTrailingRe, replacement); - return truncate(sanitized, 255); - } - module2.exports = function(input, options) { - var replacement = options && options.replacement || ""; - var output = sanitize(input, replacement); - if (replacement === "") { - return output; - } - return sanitize(output, ""); - }; - } -}); - -// ../../node_modules/.pnpm/make-empty-dir@2.0.0/node_modules/make-empty-dir/index.js -var require_make_empty_dir = __commonJS({ - "../../node_modules/.pnpm/make-empty-dir@2.0.0/node_modules/make-empty-dir/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs").promises; - var path = require("path"); - var rimraf = require_rimraf(); - module2.exports = async function makeEmptyDir(dir, opts) { - if (opts && opts.recursive) { - await fs.mkdir(path.dirname(dir), { recursive: true }); - } - try { - await fs.mkdir(dir); - return "created"; - } catch (err) { - if (err.code === "EEXIST") { - await removeContentsOfDir(dir); - return "emptied"; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c176(); } - throw err; - } - }; - async function removeContentsOfDir(dir) { - const items = await fs.readdir(dir); - for (const item of items) { - await rimraf(path.join(dir, item)); - } - } - } -}); - -// ../package-store/lib/fs/importIndexedDir.js -var require_importIndexedDir = __commonJS({ - "../package-store/lib/fs/importIndexedDir.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + s0 = s1; + return s0; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var logger_1 = __importStar2(require_lib6()); - var rimraf_1 = __importDefault(require_rimraf()); - var sanitize_filename_1 = __importDefault(require_sanitize_filename()); - var make_empty_dir_1 = __importDefault(require_make_empty_dir()); - var path_temp_1 = __importDefault(require_path_temp()); - var rename_overwrite_1 = __importDefault(require_rename_overwrite()); - var filenameConflictsLogger = logger_1.default("_filename-conflicts"); - async function importIndexedDir(importFile, newDir, filenames) { - const stage = path_temp_1.default(path_1.default.dirname(newDir)); - try { - await tryImportIndexedDir(importFile, stage, filenames); - await rename_overwrite_1.default(stage, newDir); - } catch (err) { - try { - await rimraf_1.default(stage); - } catch (err2) { - } - if (err["code"] === "EEXIST") { - const { uniqueFileMap, conflictingFileNames } = getUniqueFileMap(filenames); - if (Object.keys(conflictingFileNames).length === 0) - throw err; - filenameConflictsLogger.debug({ - conflicts: conflictingFileNames, - writingTo: newDir - }); - logger_1.globalWarn(`Not all files were linked to "${path_1.default.relative(process.cwd(), newDir)}". Some of the files have equal names in different case, which is an issue on case-insensitive filesystems. The conflicting file names are: ${JSON.stringify(conflictingFileNames)}`); - await importIndexedDir(importFile, newDir, uniqueFileMap); - return; + function peg$parseIdentifier() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c177.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c178); + } } - if (err["code"] === "ENOENT") { - const { sanitizedFilenames, invalidFilenames } = sanitizeFilenames(filenames); - if (invalidFilenames.length === 0) - throw err; - logger_1.globalWarn(`The package linked to "${path_1.default.relative(process.cwd(), newDir)}" had files with invalid names: ${invalidFilenames.join(", ")}. They were renamed.`); - await importIndexedDir(importFile, newDir, sanitizedFilenames); - return; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c177.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c178); + } + } + } + } else { + s1 = peg$FAILED; } - throw err; - } - } - exports2.default = importIndexedDir; - function sanitizeFilenames(filenames) { - const sanitizedFilenames = {}; - const invalidFilenames = []; - for (const [filename, src] of Object.entries(filenames)) { - const sanitizedFilename = filename.split("/").map((f) => sanitize_filename_1.default(f)).join("/"); - if (sanitizedFilename !== filename) { - invalidFilenames.push(filename); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c176(); } - sanitizedFilenames[sanitizedFilename] = src; + s0 = s1; + return s0; } - return { sanitizedFilenames, invalidFilenames }; - } - async function tryImportIndexedDir(importFile, newDir, filenames) { - await make_empty_dir_1.default(newDir, { recursive: true }); - const alldirs = new Set(); - Object.keys(filenames).forEach((f) => { - const dir = path_1.default.dirname(f); - if (dir === ".") - return; - alldirs.add(dir); - }); - await Promise.all(Array.from(alldirs).sort((d1, d2) => d1.length - d2.length).map(async (dir) => fs_1.promises.mkdir(path_1.default.join(newDir, dir), { recursive: true }))); - await Promise.all(Object.entries(filenames).map(async ([f, src]) => { - const dest = path_1.default.join(newDir, f); - await importFile(src, dest); - })); - } - function getUniqueFileMap(fileMap) { - const lowercaseFiles = new Map(); - const conflictingFileNames = {}; - const uniqueFileMap = {}; - for (const filename of Object.keys(fileMap).sort()) { - const lowercaseFilename = filename.toLowerCase(); - if (lowercaseFiles.has(lowercaseFilename)) { - conflictingFileNames[filename] = lowercaseFiles.get(lowercaseFilename); - continue; + function peg$parseSpecialShellChars() { + var s0; + if (peg$c179.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c180); + } } - lowercaseFiles.set(lowercaseFilename, filename); - uniqueFileMap[filename] = fileMap[filename]; + return s0; } - return { - conflictingFileNames, - uniqueFileMap - }; - } - } -}); - -// ../package-store/lib/storeController/createImportPackage.js -var require_createImportPackage = __commonJS({ - "../package-store/lib/storeController/createImportPackage.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.copyPkg = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var logger_1 = require_lib6(); - var core_loggers_1 = require_lib12(); - var p_limit_1 = __importDefault(require_p_limit()); - var path_exists_1 = __importDefault(require_path_exists()); - var importIndexedDir_1 = __importDefault(require_importIndexedDir()); - var limitLinking = p_limit_1.default(16); - exports2.default = (packageImportMethod) => { - const importPackage = createImportPackage(packageImportMethod); - return async (to, opts) => limitLinking(async () => importPackage(to, opts)); - }; - function createImportPackage(packageImportMethod) { - switch (packageImportMethod !== null && packageImportMethod !== void 0 ? packageImportMethod : "auto") { - case "clone": - core_loggers_1.packageImportMethodLogger.debug({ method: "clone" }); - return clonePkg; - case "hardlink": - core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); - return hardlinkPkg.bind(null, linkOrCopy); - case "auto": { - return createAutoImporter(); + function peg$parseGlobSpecialShellChars() { + var s0; + if (peg$c181.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c182); + } } - case "copy": - core_loggers_1.packageImportMethodLogger.debug({ method: "copy" }); - return copyPkg; - default: - throw new Error(`Unknown package import method ${packageImportMethod}`); + return s0; } - } - function createAutoImporter() { - let auto = initialAuto; - return async (to, opts) => auto(to, opts); - async function initialAuto(to, opts) { - try { - if (!await clonePkg(to, opts)) - return void 0; - core_loggers_1.packageImportMethodLogger.debug({ method: "clone" }); - auto = clonePkg; - return "clone"; - } catch (err) { + function peg$parseS() { + var s0, s1; + s0 = []; + if (peg$c183.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c184); + } } - try { - if (!await hardlinkPkg(fs_1.promises.link, to, opts)) - return void 0; - core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); - auto = hardlinkPkg.bind(null, linkOrCopy); - return "hardlink"; - } catch (err) { - if (err.message.startsWith("EXDEV: cross-device link not permitted")) { - logger_1.globalWarn(err.message); - logger_1.globalInfo("Falling back to copying packages from store"); - core_loggers_1.packageImportMethodLogger.debug({ method: "copy" }); - auto = copyPkg; - return auto(to, opts); + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c183.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c184); + } + } } - core_loggers_1.packageImportMethodLogger.debug({ method: "hardlink" }); - auto = hardlinkPkg.bind(null, linkOrCopy); - return auto(to, opts); + } else { + s0 = peg$FAILED; } + return s0; } - } - async function clonePkg(to, opts) { - const pkgJsonPath = path_1.default.join(to, "package.json"); - if (!opts.fromStore || opts.force || !await path_exists_1.default(pkgJsonPath)) { - await importIndexedDir_1.default(cloneFile, to, opts.filesMap); - return "clone"; - } - return void 0; - } - async function cloneFile(from, to) { - await fs_1.promises.copyFile(from, to, fs_1.constants.COPYFILE_FICLONE_FORCE); - } - async function hardlinkPkg(importFile, to, opts) { - const pkgJsonPath = path_1.default.join(to, "package.json"); - if (!opts.fromStore || opts.force || !await path_exists_1.default(pkgJsonPath) || !await pkgLinkedToStore(pkgJsonPath, opts.filesMap["package.json"], to)) { - await importIndexedDir_1.default(importFile, to, opts.filesMap); - return "hardlink"; + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); + } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } - return void 0; } - async function linkOrCopy(existingPath, newPath) { + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/shell.js +var require_shell4 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/shell.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyShell = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyValueArgument = exports2.stringifyRedirectArgument = exports2.stringifyArgument = exports2.stringifyEnvSegment = exports2.stringifyCommand = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyShellLine = exports2.parseShell = void 0; + var shell_1 = require_shell3(); + function parseShell(source, options = { isGlobPattern: () => false }) { try { - await fs_1.promises.link(existingPath, newPath); - } catch (err) { - if (err["code"] === "EEXIST") - return; - await fs_1.promises.copyFile(existingPath, newPath); + return (0, shell_1.parse)(source, options); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } } - async function pkgLinkedToStore(pkgJsonPath, pkgJsonPathInStore, to) { - if (await isSameFile(pkgJsonPath, pkgJsonPathInStore)) - return true; - logger_1.globalInfo(`Relinking ${to} from the store`); - return false; + exports2.parseShell = parseShell; + function stringifyShellLine(shellLine, { endSemicolon = false } = {}) { + return shellLine.map(({ command, type }, index) => `${stringifyCommandLine(command)}${type === `;` ? index !== shellLine.length - 1 || endSemicolon ? `;` : `` : ` &`}`).join(` `); + } + exports2.stringifyShellLine = stringifyShellLine; + exports2.stringifyShell = stringifyShellLine; + function stringifyCommandLine(commandLine) { + return `${stringifyCommandChain(commandLine.chain)}${commandLine.then ? ` ${stringifyCommandLineThen(commandLine.then)}` : ``}`; + } + exports2.stringifyCommandLine = stringifyCommandLine; + function stringifyCommandLineThen(commandLineThen) { + return `${commandLineThen.type} ${stringifyCommandLine(commandLineThen.line)}`; + } + exports2.stringifyCommandLineThen = stringifyCommandLineThen; + function stringifyCommandChain(commandChain) { + return `${stringifyCommand(commandChain)}${commandChain.then ? ` ${stringifyCommandChainThen(commandChain.then)}` : ``}`; + } + exports2.stringifyCommandChain = stringifyCommandChain; + function stringifyCommandChainThen(commandChainThen) { + return `${commandChainThen.type} ${stringifyCommandChain(commandChainThen.chain)}`; + } + exports2.stringifyCommandChainThen = stringifyCommandChainThen; + function stringifyCommand(command) { + switch (command.type) { + case `command`: + return `${command.envs.length > 0 ? `${command.envs.map((env) => stringifyEnvSegment(env)).join(` `)} ` : ``}${command.args.map((argument) => stringifyArgument(argument)).join(` `)}`; + case `subshell`: + return `(${stringifyShellLine(command.subshell)})${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `group`: + return `{ ${stringifyShellLine(command.group, { + /* Bash compat */ + endSemicolon: true + })} }${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `envs`: + return command.envs.map((env) => stringifyEnvSegment(env)).join(` `); + default: + throw new Error(`Unsupported command type: "${command.type}"`); + } } - async function isSameFile(file1, file2) { - const stats = await Promise.all([fs_1.promises.stat(file1), fs_1.promises.stat(file2)]); - return stats[0].ino === stats[1].ino; + exports2.stringifyCommand = stringifyCommand; + function stringifyEnvSegment(envSegment) { + return `${envSegment.name}=${envSegment.args[0] ? stringifyValueArgument(envSegment.args[0]) : ``}`; } - async function copyPkg(to, opts) { - const pkgJsonPath = path_1.default.join(to, "package.json"); - if (!opts.fromStore || opts.force || !await path_exists_1.default(pkgJsonPath)) { - await importIndexedDir_1.default(fs_1.promises.copyFile, to, opts.filesMap); - return "copy"; + exports2.stringifyEnvSegment = stringifyEnvSegment; + function stringifyArgument(argument) { + switch (argument.type) { + case `redirection`: + return stringifyRedirectArgument(argument); + case `argument`: + return stringifyValueArgument(argument); + default: + throw new Error(`Unsupported argument type: "${argument.type}"`); + } + } + exports2.stringifyArgument = stringifyArgument; + function stringifyRedirectArgument(argument) { + return `${argument.subtype} ${argument.args.map((argument2) => stringifyValueArgument(argument2)).join(` `)}`; + } + exports2.stringifyRedirectArgument = stringifyRedirectArgument; + function stringifyValueArgument(argument) { + return argument.segments.map((segment) => stringifyArgumentSegment(segment)).join(``); + } + exports2.stringifyValueArgument = stringifyValueArgument; + function stringifyArgumentSegment(argumentSegment) { + const doubleQuoteIfRequested = (string, quote) => quote ? `"${string}"` : string; + const quoteIfNeeded = (text) => { + if (text === ``) + return `""`; + if (!text.match(/[(){}<>$|&; \t"']/)) + return text; + return `$'${text.replace(/\\/g, `\\\\`).replace(/'/g, `\\'`).replace(/\f/g, `\\f`).replace(/\n/g, `\\n`).replace(/\r/g, `\\r`).replace(/\t/g, `\\t`).replace(/\v/g, `\\v`).replace(/\0/g, `\\0`)}'`; + }; + switch (argumentSegment.type) { + case `text`: + return quoteIfNeeded(argumentSegment.text); + case `glob`: + return argumentSegment.pattern; + case `shell`: + return doubleQuoteIfRequested(`\${${stringifyShellLine(argumentSegment.shell)}}`, argumentSegment.quoted); + case `variable`: + return doubleQuoteIfRequested(typeof argumentSegment.defaultValue === `undefined` ? typeof argumentSegment.alternativeValue === `undefined` ? `\${${argumentSegment.name}}` : argumentSegment.alternativeValue.length === 0 ? `\${${argumentSegment.name}:+}` : `\${${argumentSegment.name}:+${argumentSegment.alternativeValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}` : argumentSegment.defaultValue.length === 0 ? `\${${argumentSegment.name}:-}` : `\${${argumentSegment.name}:-${argumentSegment.defaultValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}`, argumentSegment.quoted); + case `arithmetic`: + return `$(( ${stringifyArithmeticExpression(argumentSegment.arithmetic)} ))`; + default: + throw new Error(`Unsupported argument segment type: "${argumentSegment.type}"`); + } + } + exports2.stringifyArgumentSegment = stringifyArgumentSegment; + function stringifyArithmeticExpression(argument) { + const getOperator = (type) => { + switch (type) { + case `addition`: + return `+`; + case `subtraction`: + return `-`; + case `multiplication`: + return `*`; + case `division`: + return `/`; + default: + throw new Error(`Can't extract operator from arithmetic expression of type "${type}"`); + } + }; + const parenthesizeIfRequested = (string, parenthesize) => parenthesize ? `( ${string} )` : string; + const stringifyAndParenthesizeIfNeeded = (expression) => ( + // Right now we parenthesize all arithmetic operator expressions because it's easier + parenthesizeIfRequested(stringifyArithmeticExpression(expression), ![`number`, `variable`].includes(expression.type)) + ); + switch (argument.type) { + case `number`: + return String(argument.value); + case `variable`: + return argument.name; + default: + return `${stringifyAndParenthesizeIfNeeded(argument.left)} ${getOperator(argument.type)} ${stringifyAndParenthesizeIfNeeded(argument.right)}`; } - return void 0; } - exports2.copyPkg = copyPkg; + exports2.stringifyArithmeticExpression = stringifyArithmeticExpression; } }); -// ../package-store/lib/storeController/prune.js -var require_prune = __commonJS({ - "../package-store/lib/storeController/prune.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js +var require_resolution3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); + } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; + } + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); + } + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; + } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var logger_1 = require_lib6(); - var rimraf_1 = __importDefault(require_rimraf()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var ssri_1 = __importDefault(require_ssri()); - var BIG_ONE = BigInt(1); - async function prune(storeDir) { - const cafsDir = path_1.default.join(storeDir, "files"); - await rimraf_1.default(path_1.default.join(storeDir, "metadata")); - await rimraf_1.default(path_1.default.join(storeDir, "metadata-full")); - await rimraf_1.default(path_1.default.join(storeDir, "tmp")); - logger_1.globalInfo("Removed all cached metadata files"); - const pkgIndexFiles = []; - const removedHashes = new Set(); - const dirs = (await fs_1.promises.readdir(cafsDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((dir) => dir.name); - let fileCounter = 0; - for (const dir of dirs) { - const subdir = path_1.default.join(cafsDir, dir); - for (const fileName of await fs_1.promises.readdir(subdir)) { - const filePath = path_1.default.join(subdir, fileName); - if (fileName.endsWith("-index.json")) { - pkgIndexFiles.push(filePath); - continue; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { resolution: peg$parseresolution }, peg$startRuleFunction = peg$parseresolution, peg$c0 = "/", peg$c1 = peg$literalExpectation("/", false), peg$c2 = function(from, descriptor) { + return { from, descriptor }; + }, peg$c3 = function(descriptor) { + return { descriptor }; + }, peg$c4 = "@", peg$c5 = peg$literalExpectation("@", false), peg$c6 = function(fullName, description) { + return { fullName, description }; + }, peg$c7 = function(fullName) { + return { fullName }; + }, peg$c8 = function() { + return text(); + }, peg$c9 = /^[^\/@]/, peg$c10 = peg$classExpectation(["/", "@"], true, false), peg$c11 = /^[^\/]/, peg$c12 = peg$classExpectation(["/"], true, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; } - const stat = await fs_1.promises.stat(filePath); - if (stat.nlink === 1 || stat.nlink === BIG_ONE) { - await fs_1.promises.unlink(filePath); - fileCounter++; - removedHashes.add(ssri_1.default.fromHex(`${dir}${fileName}`, "sha512").toString()); + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; } + peg$posDetailsCache[pos] = details; + return details; } } - logger_1.globalInfo(`Removed ${fileCounter} file${fileCounter === 1 ? "" : "s"}`); - let pkgCounter = 0; - for (const pkgIndexFilePath of pkgIndexFiles) { - const { files: pkgFilesIndex } = await load_json_file_1.default(pkgIndexFilePath); - if (removedHashes.has(pkgFilesIndex["package.json"].integrity)) { - await fs_1.promises.unlink(pkgIndexFilePath); - pkgCounter++; + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } + }; + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; + } + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } + peg$maxFailExpected.push(expected2); } - logger_1.globalInfo(`Removed ${pkgCounter} package${pkgCounter === 1 ? "" : "s"}`); - } - exports2.default = prune; - } -}); - -// ../package-store/lib/storeController/index.js -var require_storeController = __commonJS({ - "../package-store/lib/storeController/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createCafsStore = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var cafs_1 = __importStar2(require_lib31()); - var package_requester_1 = __importDefault(require_lib34()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var path_temp_1 = __importDefault(require_path_temp()); - var write_json_file_1 = __importDefault(require_write_json_file()); - var createImportPackage_1 = __importDefault(require_createImportPackage()); - var prune_1 = __importDefault(require_prune()); - function createPackageImporter(opts) { - const impPkg = createImportPackage_1.default(opts.packageImportMethod); - const getFilePathByModeInCafs = cafs_1.getFilePathByModeInCafs.bind(null, opts.cafsDir); - return async (to, opts2) => { - var _a, _b; - const filesMap = {}; - let isBuilt; - let filesIndex; - if (opts2.targetEngine && ((_a = opts2.filesResponse.sideEffects) === null || _a === void 0 ? void 0 : _a[opts2.targetEngine]) != null) { - filesIndex = (_b = opts2.filesResponse.sideEffects) === null || _b === void 0 ? void 0 : _b[opts2.targetEngine]; - isBuilt = true; + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseresolution() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s2 = peg$c0; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parsespecifier(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - filesIndex = opts2.filesResponse.filesIndex; - isBuilt = false; + peg$currPos = s0; + s0 = peg$FAILED; } - for (const [fileName, fileMeta] of Object.entries(filesIndex)) { - filesMap[fileName] = getFilePathByModeInCafs(fileMeta.integrity, fileMeta.mode); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s1); + } + s0 = s1; } - const importMethod = await impPkg(to, { filesMap, fromStore: opts2.filesResponse.fromStore, force: opts2.force }); - return { importMethod, isBuilt }; - }; - } - function createCafsStore(storeDir, opts) { - const cafsDir = path_1.default.join(storeDir, "files"); - const baseTempDir = path_1.default.join(storeDir, "tmp"); - const importPackage = createPackageImporter({ - packageImportMethod: opts === null || opts === void 0 ? void 0 : opts.packageImportMethod, - cafsDir - }); - return { - ...cafs_1.default(cafsDir, opts === null || opts === void 0 ? void 0 : opts.ignoreFile), - importPackage, - tempDir: async () => { - const tmpDir = path_temp_1.default(baseTempDir); - await fs_1.promises.mkdir(tmpDir, { recursive: true }); - return tmpDir; + return s0; + } + function peg$parsespecifier() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 64) { + s2 = peg$c4; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parsedescription(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c6(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - } - exports2.createCafsStore = createCafsStore; - async function default_1(resolve, fetchers, initOpts) { - const storeDir = initOpts.storeDir; - const cafs = createCafsStore(storeDir, initOpts); - const packageRequester = package_requester_1.default({ - force: initOpts.force, - engineStrict: initOpts.engineStrict, - nodeVersion: initOpts.nodeVersion, - pnpmVersion: initOpts.pnpmVersion, - resolve, - fetchers, - cafs, - ignoreFile: initOpts.ignoreFile, - networkConcurrency: initOpts.networkConcurrency, - storeDir: initOpts.storeDir, - verifyStoreIntegrity: initOpts.verifyStoreIntegrity - }); - return { - close: async () => { - }, - fetchPackage: packageRequester.fetchPackageToStore, - importPackage: cafs.importPackage, - prune: prune_1.default.bind(null, storeDir), - requestPackage: packageRequester.requestPackage, - upload - }; - async function upload(builtPkgLocation, opts) { - var _a; - const sideEffectsIndex = await cafs.addFilesFromDir(builtPkgLocation); - const integrity = {}; - await Promise.all(Object.keys(sideEffectsIndex).map(async (filename) => { - const { checkedAt, integrity: fileIntegrity } = await sideEffectsIndex[filename].writeResult; - integrity[filename] = { - checkedAt, - integrity: fileIntegrity.toString(), - mode: sideEffectsIndex[filename].mode, - size: sideEffectsIndex[filename].size - }; - })); - let filesIndex; - try { - filesIndex = await load_json_file_1.default(opts.filesIndexFile); - } catch (err) { - filesIndex = { files: integrity }; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c7(s1); + } + s0 = s1; } - filesIndex.sideEffects = (_a = filesIndex.sideEffects) !== null && _a !== void 0 ? _a : {}; - filesIndex.sideEffects[opts.engine] = integrity; - await write_json_file_1.default(opts.filesIndexFile, filesIndex, { indent: void 0 }); + return s0; } - } - exports2.default = default_1; - } -}); - -// ../resolver-base/lib/index.js -var require_lib35 = __commonJS({ - "../resolver-base/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// ../store-controller-types/lib/index.js -var require_lib36 = __commonJS({ - "../store-controller-types/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_lib35(), exports2); - } -}); - -// ../package-store/lib/index.js -var require_lib37 = __commonJS({ - "../package-store/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + function peg$parsefullName() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 64) { + s1 = peg$c4; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseident(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s3 = peg$c0; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } + } + if (s3 !== peg$FAILED) { + s4 = peg$parseident(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseident(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + } + s0 = s1; + } + return s0; } - __setModuleDefault2(result, mod); - return result; - }; - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createCafsStore = void 0; - var storeController_1 = __importStar2(require_storeController()); - Object.defineProperty(exports2, "createCafsStore", { enumerable: true, get: function() { - return storeController_1.createCafsStore; - } }); - exports2.default = storeController_1.default; - __exportStar(require_lib36(), exports2); - } -}); - -// ../../node_modules/.pnpm/can-link@2.0.0/node_modules/can-link/index.js -var require_can_link = __commonJS({ - "../../node_modules/.pnpm/can-link@2.0.0/node_modules/can-link/index.js"(exports2, module2) { - "use strict"; - var defaultFS = require("fs"); - module2.exports = async (existingPath, newPath, customFS) => { - const fs = customFS || defaultFS; - try { - await fs.promises.link(existingPath, newPath); - fs.promises.unlink(newPath).catch(() => { - }); - return true; - } catch (err) { - if (err.code === "EXDEV" || err.code === "EACCES" || err.code === "EPERM") { - return false; + function peg$parseident() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } } - throw err; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + } + s0 = s1; + return s0; } - }; - module2.exports.sync = (existingPath, newPath, customFS) => { - const fs = customFS || defaultFS; - try { - fs.linkSync(existingPath, newPath); - fs.unlinkSync(newPath); - return true; - } catch (err) { - if (err.code === "EXDEV" || err.code === "EACCES" || err.code === "EPERM") { - return false; + function peg$parsedescription() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); + } } - throw err; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); + } + } + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + } + s0 = s1; + return s0; + } + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); + } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } + } + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse }; } }); -// ../../node_modules/.pnpm/path-absolute@1.0.1/node_modules/path-absolute/index.js -var require_path_absolute = __commonJS({ - "../../node_modules/.pnpm/path-absolute@1.0.1/node_modules/path-absolute/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/resolution.js +var require_resolution4 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/resolution.js"(exports2) { "use strict"; - var os = require("os"); - var path = require("path"); - module2.exports = function(filepath, cwd) { - const home = getHomedir(); - if (isHomepath(filepath)) { - return path.join(home, filepath.substr(2)); - } - if (path.isAbsolute(filepath)) { - return filepath; - } - if (cwd) { - return path.join(cwd, filepath); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyResolution = exports2.parseResolution = void 0; + var resolution_1 = require_resolution3(); + function parseResolution(source) { + const legacyResolution = source.match(/^\*{1,2}\/(.*)/); + if (legacyResolution) + throw new Error(`The override for '${source}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${legacyResolution[1]}' instead.`); + try { + return (0, resolution_1.parse)(source); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } - return path.resolve(filepath); - }; - function getHomedir() { - const home = os.homedir(); - if (!home) - throw new Error("Could not find the homedir"); - return home; } - function isHomepath(filepath) { - return filepath.indexOf("~/") === 0 || filepath.indexOf("~\\") === 0; + exports2.parseResolution = parseResolution; + function stringifyResolution(resolution) { + let str = ``; + if (resolution.from) { + str += resolution.from.fullName; + if (resolution.from.description) + str += `@${resolution.from.description}`; + str += `/`; + } + str += resolution.descriptor.fullName; + if (resolution.descriptor.description) + str += `@${resolution.descriptor.description}`; + return str; } + exports2.stringifyResolution = stringifyResolution; } }); -// ../../node_modules/.pnpm/next-path@1.0.0/node_modules/next-path/index.js -var require_next_path = __commonJS({ - "../../node_modules/.pnpm/next-path@1.0.0/node_modules/next-path/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var nextPath = (from, to) => { - const diff = path.relative(from, to); - const sepIndex = diff.indexOf(path.sep); - const next = sepIndex >= 0 ? diff.substring(0, sepIndex) : diff; - return path.join(from, next); - }; - module2.exports = nextPath; - } -}); - -// ../../node_modules/.pnpm/root-link-target@3.1.0/node_modules/root-link-target/index.js -var require_root_link_target = __commonJS({ - "../../node_modules/.pnpm/root-link-target@3.1.0/node_modules/root-link-target/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/syml.js +var require_syml3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/grammars/syml.js"(exports2, module2) { "use strict"; - var canLink = require_can_link(); - var path = require("path"); - var pathTemp = require_path_temp(); - var nextPath = require_next_path(); - module2.exports = async (filePath) => { - filePath = path.resolve(filePath); - const end = path.dirname(filePath); - let dir = path.parse(end).root; - while (true) { - const result = await canLink(filePath, pathTemp(dir)); - if (result) { - return dir; - } else if (dir === end) { - throw new Error(`${filePath} cannot be linked to anywhere`); - } else { - dir = nextPath(dir, end); - } + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; } - }; - module2.exports.sync = (filePath) => { - filePath = path.resolve(filePath); - const end = path.dirname(filePath); - let dir = path.parse(end).root; - while (true) { - const result = canLink.sync(filePath, pathTemp(dir)); - if (result) { - return dir; - } else if (dir === end) { - throw new Error(`${filePath} cannot be linked to anywhere`); - } else { - dir = nextPath(dir, end); + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); + } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); } - }; - } -}); - -// ../../node_modules/.pnpm/touch@3.1.0/node_modules/touch/index.js -var require_touch = __commonJS({ - "../../node_modules/.pnpm/touch@3.1.0/node_modules/touch/index.js"(exports2, module2) { - "use strict"; - var EE = require("events").EventEmitter; - var cons = require("constants"); - var fs = require("fs"); - module2.exports = (f, options, cb) => { - if (typeof options === "function") - cb = options, options = {}; - const p = new Promise((res, rej) => { - new Touch(validOpts(options, f, null)).on("done", res).on("error", rej); - }); - return cb ? p.then((res) => cb(null, res), cb) : p; - }; - module2.exports.sync = module2.exports.touchSync = (f, options) => (new TouchSync(validOpts(options, f, null)), void 0); - module2.exports.ftouch = (fd, options, cb) => { - if (typeof options === "function") - cb = options, options = {}; - const p = new Promise((res, rej) => { - new Touch(validOpts(options, null, fd)).on("done", res).on("error", rej); - }); - return cb ? p.then((res) => cb(null, res), cb) : p; - }; - module2.exports.ftouchSync = (fd, opt) => (new TouchSync(validOpts(opt, null, fd)), void 0); - var validOpts = (options, path, fd) => { - options = Object.create(options || {}); - options.fd = fd; - options.path = path; - const now = parseInt(new Date(options.time || Date.now()).getTime() / 1e3); - if (!options.atime && !options.mtime) - options.atime = options.mtime = now; - else { - if (options.atime === true) - options.atime = now; - if (options.mtime === true) - options.mtime = now; + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - let oflags = 0; - if (!options.force) - oflags = oflags | cons.O_RDWR; - if (!options.nocreate) - oflags = oflags | cons.O_CREAT; - options.oflags = oflags; - return options; - }; - var Touch = class extends EE { - constructor(options) { - super(options); - this.fd = options.fd; - this.path = options.path; - this.atime = options.atime; - this.mtime = options.mtime; - this.ref = options.ref; - this.nocreate = !!options.nocreate; - this.force = !!options.force; - this.closeAfter = options.closeAfter; - this.oflags = options.oflags; - this.options = options; - if (typeof this.fd !== "number") { - this.closeAfter = true; - this.open(); - } else - this.onopen(null, this.fd); + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - emit(ev, data) { - this.close(); - return super.emit(ev, data); + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); } - close() { - if (typeof this.fd === "number" && this.closeAfter) - fs.close(this.fd, () => { - }); + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); + } + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; + } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } } - open() { - fs.open(this.path, this.oflags, (er, fd) => this.onopen(er, fd)); + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; } - onopen(er, fd) { - if (er) { - if (er.code === "EISDIR") - this.onopen(null, null); - else if (er.code === "ENOENT" && this.nocreate) - this.emit("done"); - else - this.emit("error", er); - } else { - this.fd = fd; - if (this.ref) - this.statref(); - else if (!this.atime || !this.mtime) - this.fstat(); - else - this.futimes(); + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(statements) { + return [].concat(...statements); + }, peg$c1 = "-", peg$c2 = peg$literalExpectation("-", false), peg$c3 = function(value) { + return value; + }, peg$c4 = function(statements) { + return Object.assign({}, ...statements); + }, peg$c5 = "#", peg$c6 = peg$literalExpectation("#", false), peg$c7 = peg$anyExpectation(), peg$c8 = function() { + return {}; + }, peg$c9 = ":", peg$c10 = peg$literalExpectation(":", false), peg$c11 = function(property, value) { + return { [property]: value }; + }, peg$c12 = ",", peg$c13 = peg$literalExpectation(",", false), peg$c14 = function(property, other) { + return other; + }, peg$c15 = function(property, others, value) { + return Object.assign({}, ...[property].concat(others).map((property2) => ({ [property2]: value }))); + }, peg$c16 = function(statements) { + return statements; + }, peg$c17 = function(expression) { + return expression; + }, peg$c18 = peg$otherExpectation("correct indentation"), peg$c19 = " ", peg$c20 = peg$literalExpectation(" ", false), peg$c21 = function(spaces) { + return spaces.length === indentLevel * INDENT_STEP; + }, peg$c22 = function(spaces) { + return spaces.length === (indentLevel + 1) * INDENT_STEP; + }, peg$c23 = function() { + indentLevel++; + return true; + }, peg$c24 = function() { + indentLevel--; + return true; + }, peg$c25 = function() { + return text(); + }, peg$c26 = peg$otherExpectation("pseudostring"), peg$c27 = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, peg$c28 = peg$classExpectation(["\r", "\n", " ", " ", "?", ":", ",", "]", "[", "{", "}", "#", "&", "*", "!", "|", ">", "'", '"', "%", "@", "`", "-"], true, false), peg$c29 = /^[^\r\n\t ,\][{}:#"']/, peg$c30 = peg$classExpectation(["\r", "\n", " ", " ", ",", "]", "[", "{", "}", ":", "#", '"', "'"], true, false), peg$c31 = function() { + return text().replace(/^ *| *$/g, ""); + }, peg$c32 = "--", peg$c33 = peg$literalExpectation("--", false), peg$c34 = /^[a-zA-Z\/0-9]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], "/", ["0", "9"]], false, false), peg$c36 = /^[^\r\n\t :,]/, peg$c37 = peg$classExpectation(["\r", "\n", " ", " ", ":", ","], true, false), peg$c38 = "null", peg$c39 = peg$literalExpectation("null", false), peg$c40 = function() { + return null; + }, peg$c41 = "true", peg$c42 = peg$literalExpectation("true", false), peg$c43 = function() { + return true; + }, peg$c44 = "false", peg$c45 = peg$literalExpectation("false", false), peg$c46 = function() { + return false; + }, peg$c47 = peg$otherExpectation("string"), peg$c48 = '"', peg$c49 = peg$literalExpectation('"', false), peg$c50 = function() { + return ""; + }, peg$c51 = function(chars) { + return chars; + }, peg$c52 = function(chars) { + return chars.join(``); + }, peg$c53 = /^[^"\\\0-\x1F\x7F]/, peg$c54 = peg$classExpectation(['"', "\\", ["\0", ""], "\x7F"], true, false), peg$c55 = '\\"', peg$c56 = peg$literalExpectation('\\"', false), peg$c57 = function() { + return `"`; + }, peg$c58 = "\\\\", peg$c59 = peg$literalExpectation("\\\\", false), peg$c60 = function() { + return `\\`; + }, peg$c61 = "\\/", peg$c62 = peg$literalExpectation("\\/", false), peg$c63 = function() { + return `/`; + }, peg$c64 = "\\b", peg$c65 = peg$literalExpectation("\\b", false), peg$c66 = function() { + return `\b`; + }, peg$c67 = "\\f", peg$c68 = peg$literalExpectation("\\f", false), peg$c69 = function() { + return `\f`; + }, peg$c70 = "\\n", peg$c71 = peg$literalExpectation("\\n", false), peg$c72 = function() { + return ` +`; + }, peg$c73 = "\\r", peg$c74 = peg$literalExpectation("\\r", false), peg$c75 = function() { + return `\r`; + }, peg$c76 = "\\t", peg$c77 = peg$literalExpectation("\\t", false), peg$c78 = function() { + return ` `; + }, peg$c79 = "\\u", peg$c80 = peg$literalExpectation("\\u", false), peg$c81 = function(h1, h2, h3, h4) { + return String.fromCharCode(parseInt(`0x${h1}${h2}${h3}${h4}`)); + }, peg$c82 = /^[0-9a-fA-F]/, peg$c83 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "F"]], false, false), peg$c84 = peg$otherExpectation("blank space"), peg$c85 = /^[ \t]/, peg$c86 = peg$classExpectation([" ", " "], false, false), peg$c87 = peg$otherExpectation("white space"), peg$c88 = /^[ \t\n\r]/, peg$c89 = peg$classExpectation([" ", " ", "\n", "\r"], false, false), peg$c90 = "\r\n", peg$c91 = peg$literalExpectation("\r\n", false), peg$c92 = "\n", peg$c93 = peg$literalExpectation("\n", false), peg$c94 = "\r", peg$c95 = peg$literalExpectation("\r", false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; } - statref() { - fs.stat(this.ref, (er, st) => { - if (er) - this.emit("error", er); - else - this.onstatref(st); - }); - } - onstatref(st) { - this.atime = this.atime && parseInt(st.atime.getTime() / 1e3, 10); - this.mtime = this.mtime && parseInt(st.mtime.getTime() / 1e3, 10); - if (!this.atime || !this.mtime) - this.fstat(); - else - this.futimes(); + function text() { + return input.substring(peg$savedPos, peg$currPos); } - fstat() { - const stat = this.fd ? "fstat" : "stat"; - const target = this.fd || this.path; - fs[stat](target, (er, st) => { - if (er) - this.emit("error", er); - else - this.onfstat(st); - }); + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); } - onfstat(st) { - if (typeof this.atime !== "number") - this.atime = parseInt(st.atime.getTime() / 1e3, 10); - if (typeof this.mtime !== "number") - this.mtime = parseInt(st.mtime.getTime() / 1e3, 10); - this.futimes(); + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); } - futimes() { - const utimes = this.fd ? "futimes" : "utimes"; - const target = this.fd || this.path; - fs[utimes](target, "" + this.atime, "" + this.mtime, (er) => { - if (er) - this.emit("error", er); - else - this.emit("done"); - }); + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); } - }; - var TouchSync = class extends Touch { - open() { - try { - this.onopen(null, fs.openSync(this.path, this.oflags)); - } catch (er) { - this.onopen(er); - } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; } - statref() { - let threw = true; - try { - this.onstatref(fs.statSync(this.ref)); - threw = false; - } finally { - if (threw) - this.close(); - } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; } - fstat() { - let threw = true; - const stat = this.fd ? "fstatSync" : "statSync"; - const target = this.fd || this.path; - try { - this.onfstat(fs[stat](target)); - threw = false; - } finally { - if (threw) - this.close(); - } + function peg$anyExpectation() { + return { type: "any" }; } - futimes() { - let threw = true; - const utimes = this.fd ? "futimesSync" : "utimesSync"; - const target = this.fd || this.path; - try { - fs[utimes](target, this.atime, this.mtime); - threw = false; - } finally { - if (threw) - this.close(); + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; + } + peg$posDetailsCache[pos] = details; + return details; } - this.emit("done"); } - close() { - if (typeof this.fd === "number" && this.closeAfter) - try { - fs.closeSync(this.fd); - } catch (er) { + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column } + }; } - }; - } -}); - -// ../../node_modules/.pnpm/@pnpm+store-path@5.0.0/node_modules/@pnpm/store-path/lib/index.js -var require_lib38 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+store-path@5.0.0/node_modules/@pnpm/store-path/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var rimraf = require_rimraf(); - var canLink = require_can_link(); - var os = require("os"); - var path = require("path"); - var pathAbsolute = require_path_absolute(); - var pathTemp = require_path_temp(); - var rootLinkTarget = require_root_link_target(); - var touch = require_touch(); - var STORE_VERSION = "v3"; - async function default_1(pkgRoot, storePath) { - if (!storePath || isHomepath(storePath)) { - const relStorePath = storePath ? storePath.substr(2) : ".pnpm-store"; - return await storePathRelativeToHome(pkgRoot, relStorePath); + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; + } + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } + peg$maxFailExpected.push(expected2); } - const storeBasePath = pathAbsolute(storePath, pkgRoot); - if (storeBasePath.endsWith(`${path.sep}${STORE_VERSION}`)) { - return storeBasePath; + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); } - return path.join(storeBasePath, STORE_VERSION); - } - exports2.default = default_1; - async function storePathRelativeToHome(pkgRoot, relStore) { - const tempFile = pathTemp(pkgRoot); - await fs_1.promises.mkdir(path.dirname(tempFile), { recursive: true }); - await touch(tempFile); - const homedir = getHomedir(); - if (await canLinkToSubdir(tempFile, homedir)) { - await fs_1.promises.unlink(tempFile); - return path.join(homedir, relStore, STORE_VERSION); + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); } - try { - let mountpoint = await rootLinkTarget(tempFile); - const mountpointParent = path.join(mountpoint, ".."); - if (!dirsAreEqual(mountpointParent, mountpoint) && await canLinkToSubdir(tempFile, mountpointParent)) { - mountpoint = mountpointParent; + function peg$parseStart() { + var s0; + s0 = peg$parsePropertyStatements(); + return s0; + } + function peg$parseItemStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseItemStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseItemStatement(); } - if (dirsAreEqual(pkgRoot, mountpoint)) { - return path.join(homedir, relStore, STORE_VERSION); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s1); } - return path.join(mountpoint, relStore, STORE_VERSION); - } catch (err) { - return path.join(homedir, relStore, STORE_VERSION); - } finally { - await fs_1.promises.unlink(tempFile); - } - } - async function canLinkToSubdir(fileToLink, dir) { - let result = false; - const tmpDir = pathTemp(dir); - try { - await fs_1.promises.mkdir(tmpDir, { recursive: true }); - result = await canLink(fileToLink, pathTemp(tmpDir)); - } catch (err) { - result = false; - } finally { - await safeRmdir(tmpDir); + s0 = s1; + return s0; } - return result; - } - async function safeRmdir(dir) { - try { - await rimraf(dir); - } catch (err) { + function peg$parseItemStatement() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s2 = peg$c1; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); + } + } + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExpression(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; } - } - function dirsAreEqual(dir1, dir2) { - return path.relative(dir1, dir2) === "."; - } - function getHomedir() { - const home = os.homedir(); - if (!home) - throw new Error("Could not find the homedir"); - return home; - } - function isHomepath(filepath) { - return filepath.indexOf("~/") === 0 || filepath.indexOf("~\\") === 0; - } - } -}); - -// ../../node_modules/.pnpm/p-try@2.2.0/node_modules/p-try/index.js -var require_p_try = __commonJS({ - "../../node_modules/.pnpm/p-try@2.2.0/node_modules/p-try/index.js"(exports2, module2) { - "use strict"; - var pTry = (fn2, ...arguments_) => new Promise((resolve) => { - resolve(fn2(...arguments_)); - }); - module2.exports = pTry; - module2.exports.default = pTry; - } -}); - -// ../../node_modules/.pnpm/p-limit@2.3.0/node_modules/p-limit/index.js -var require_p_limit2 = __commonJS({ - "../../node_modules/.pnpm/p-limit@2.3.0/node_modules/p-limit/index.js"(exports2, module2) { - "use strict"; - var pTry = require_p_try(); - var pLimit = (concurrency) => { - if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { - return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up")); + function peg$parsePropertyStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePropertyStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePropertyStatement(); + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c4(s1); + } + s0 = s1; + return s0; } - const queue = []; - let activeCount = 0; - const next = () => { - activeCount--; - if (queue.length > 0) { - queue.shift()(); + function peg$parsePropertyStatement() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8; + s0 = peg$currPos; + s1 = peg$parseB(); + if (s1 === peg$FAILED) { + s1 = null; } - }; - const run = (fn2, resolve, ...args2) => { - activeCount++; - const result = pTry(fn2, ...args2); - resolve(result); - result.then(next, next); - }; - const enqueue = (fn2, resolve, ...args2) => { - if (activeCount < concurrency) { - run(fn2, resolve, ...args2); + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 35) { + s3 = peg$c5; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c6); + } + } + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; + } + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; + } + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + s3 = [s3, s4]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseEOL_ANY(); + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseEOL_ANY(); + } + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - queue.push(run.bind(null, fn2, resolve, ...args2)); + peg$currPos = s0; + s0 = peg$FAILED; } - }; - const generator = (fn2, ...args2) => new Promise((resolve) => enqueue(fn2, resolve, ...args2)); - Object.defineProperties(generator, { - activeCount: { - get: () => activeCount - }, - pendingCount: { - get: () => queue.length - }, - clearQueue: { - value: () => { - queue.length = 0; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseLegacyLiteral(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseEOL_ANY(); + if (s6 !== peg$FAILED) { + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseEOL_ANY(); + } + } else { + s5 = peg$FAILED; + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s5 = peg$c9; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 === peg$FAILED) { + s6 = null; + } + if (s6 !== peg$FAILED) { + s7 = peg$parseExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s3, s7); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } } } - }); - return generator; - }; - module2.exports = pLimit; - module2.exports.default = pLimit; - } -}); - -// ../../node_modules/.pnpm/p-locate@4.1.0/node_modules/p-locate/index.js -var require_p_locate2 = __commonJS({ - "../../node_modules/.pnpm/p-locate@4.1.0/node_modules/p-locate/index.js"(exports2, module2) { - "use strict"; - var pLimit = require_p_limit2(); - var EndError = class extends Error { - constructor(value) { - super(); - this.value = value; - } - }; - var testElement = async (element, tester) => tester(await element); - var finder = async (element) => { - const values = await Promise.all(element); - if (values[1] === true) { - throw new EndError(values[0]); + return s0; } - return false; - }; - var pLocate = async (iterable, tester, options) => { - options = { - concurrency: Infinity, - preserveOrder: true, - ...options - }; - const limit = pLimit(options.concurrency); - const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]); - const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); - try { - await Promise.all(items.map((element) => checkLimit(finder, element))); - } catch (error) { - if (error instanceof EndError) { - return error.value; + function peg$parseExpression() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = peg$currPos; + peg$silentFails++; + s2 = peg$currPos; + s3 = peg$parseEOL(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExtradent(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c1; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 !== peg$FAILED) { + s3 = [s3, s4, s5, s6]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - throw error; - } - }; - module2.exports = pLocate; - module2.exports.default = pLocate; - } -}); - -// ../../node_modules/.pnpm/locate-path@5.0.0/node_modules/locate-path/index.js -var require_locate_path2 = __commonJS({ - "../../node_modules/.pnpm/locate-path@5.0.0/node_modules/locate-path/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var fs = require("fs"); - var { promisify } = require("util"); - var pLocate = require_p_locate2(); - var fsStat = promisify(fs.stat); - var fsLStat = promisify(fs.lstat); - var typeMappings = { - directory: "isDirectory", - file: "isFile" - }; - function checkType({ type }) { - if (type in typeMappings) { - return; - } - throw new Error(`Invalid type specified: ${type}`); - } - var matchType = (type, stat) => type === void 0 || stat[typeMappings[type]](); - module2.exports = async (paths, options) => { - options = { - cwd: process.cwd(), - type: "file", - allowSymlinks: true, - ...options - }; - checkType(options); - const statFn = options.allowSymlinks ? fsStat : fsLStat; - return pLocate(paths, async (path_) => { - try { - const stat = await statFn(path.resolve(options.cwd, path_)); - return matchType(options.type, stat); - } catch (_) { - return false; + peg$silentFails--; + if (s2 !== peg$FAILED) { + peg$currPos = s1; + s1 = void 0; + } else { + s1 = peg$FAILED; } - }, options); - }; - module2.exports.sync = (paths, options) => { - options = { - cwd: process.cwd(), - allowSymlinks: true, - type: "file", - ...options - }; - checkType(options); - const statFn = options.allowSymlinks ? fs.statSync : fs.lstatSync; - for (const path_ of paths) { - try { - const stat = statFn(path.resolve(options.cwd, path_)); - if (matchType(options.type, stat)) { - return path_; + if (s1 !== peg$FAILED) { + s2 = peg$parseEOL_ANY(); + if (s2 !== peg$FAILED) { + s3 = peg$parseIndent(); + if (s3 !== peg$FAILED) { + s4 = peg$parseItemStatements(); + if (s4 !== peg$FAILED) { + s5 = peg$parseDedent(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = peg$parseIndent(); + if (s2 !== peg$FAILED) { + s3 = peg$parsePropertyStatements(); + if (s3 !== peg$FAILED) { + s4 = peg$parseDedent(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseLiteral(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseEOL_ANY(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseEOL_ANY(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c17(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - } catch (_) { } + return s0; } - }; - } -}); - -// ../../node_modules/.pnpm/find-up@4.1.0/node_modules/find-up/index.js -var require_find_up2 = __commonJS({ - "../../node_modules/.pnpm/find-up@4.1.0/node_modules/find-up/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var locatePath = require_locate_path2(); - var pathExists = require_path_exists(); - var stop = Symbol("findUp.stop"); - module2.exports = async (name, options = {}) => { - let directory = path.resolve(options.cwd || ""); - const { root } = path.parse(directory); - const paths = [].concat(name); - const runMatcher = async (locateOptions) => { - if (typeof name !== "function") { - return locatePath(paths, locateOptions); + function peg$parseSamedent() { + var s0, s1, s2; + peg$silentFails++; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } } - const foundPath = await name(locateOptions.cwd); - if (typeof foundPath === "string") { - return locatePath([foundPath], locateOptions); + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } + } } - return foundPath; - }; - while (true) { - const foundPath = await runMatcher({ ...options, cwd: directory }); - if (foundPath === stop) { - return; + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c21(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (foundPath) { - return path.resolve(directory, foundPath); + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c18); + } } - if (directory === root) { - return; + return s0; + } + function peg$parseExtradent() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } + } + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c22(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - directory = path.dirname(directory); + return s0; } - }; - module2.exports.sync = (name, options = {}) => { - let directory = path.resolve(options.cwd || ""); - const { root } = path.parse(directory); - const paths = [].concat(name); - const runMatcher = (locateOptions) => { - if (typeof name !== "function") { - return locatePath.sync(paths, locateOptions); - } - const foundPath = name(locateOptions.cwd); - if (typeof foundPath === "string") { - return locatePath.sync([foundPath], locateOptions); + function peg$parseIndent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c23(); + if (s0) { + s0 = void 0; + } else { + s0 = peg$FAILED; } - return foundPath; - }; - while (true) { - const foundPath = runMatcher({ ...options, cwd: directory }); - if (foundPath === stop) { - return; + return s0; + } + function peg$parseDedent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c24(); + if (s0) { + s0 = void 0; + } else { + s0 = peg$FAILED; } - if (foundPath) { - return path.resolve(directory, foundPath); + return s0; + } + function peg$parseName() { + var s0; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); } - if (directory === root) { - return; + return s0; + } + function peg$parseLegacyName() { + var s0, s1, s2; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parsepseudostringLegacy(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsepseudostringLegacy(); + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c25(); + } + s0 = s1; } - directory = path.dirname(directory); + return s0; } - }; - module2.exports.exists = pathExists; - module2.exports.sync.exists = pathExists.sync; - module2.exports.stop = stop; - } -}); - -// ../../node_modules/.pnpm/pkg-dir@4.2.0/node_modules/pkg-dir/index.js -var require_pkg_dir = __commonJS({ - "../../node_modules/.pnpm/pkg-dir@4.2.0/node_modules/pkg-dir/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var findUp = require_find_up2(); - var pkgDir = async (cwd) => { - const filePath = await findUp("package.json", { cwd }); - return filePath && path.dirname(filePath); - }; - module2.exports = pkgDir; - module2.exports.default = pkgDir; - module2.exports.sync = (cwd) => { - const filePath = findUp.sync("package.json", { cwd }); - return filePath && path.dirname(filePath); - }; - } -}); - -// ../../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/core.js -var require_core5 = __commonJS({ - "../../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/core.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.readPackageJSON = exports2.extractWorkspaces = exports2.isMatchWorkspaces = exports2.checkWorkspaces = exports2.findWorkspaceRoot = void 0; - var path_1 = __importDefault(require("path")); - var pkg_dir_1 = __importDefault(require_pkg_dir()); - var fs_1 = require("fs"); - var micromatch_1 = __importDefault(require_micromatch()); - function findWorkspaceRoot(initial) { - if (!initial) { - initial = process.cwd(); + function peg$parseLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parseboolean(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); + } + } + } + return s0; } - let _pkg = pkg_dir_1.default.sync(initial); - if (!_pkg) { - return null; + function peg$parseLegacyLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostringLegacy(); + } + } + return s0; } - initial = path_1.default.normalize(_pkg); - let previous = null; - let current = initial; - do { - const manifest = readPackageJSON(current); - const workspaces = extractWorkspaces(manifest); - let { done, found } = checkWorkspaces(current, initial); - if (done) { - return found; + function peg$parsepseudostring() { + var s0, s1, s2, s3, s4, s5; + peg$silentFails++; + s0 = peg$currPos; + if (peg$c27.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c28); + } } - previous = current; - current = path_1.default.dirname(current); - } while (current !== previous); - return null; - } - exports2.findWorkspaceRoot = findWorkspaceRoot; - function checkWorkspaces(current, initial) { - const manifest = readPackageJSON(current); - const workspaces = extractWorkspaces(manifest); - let done = false; - let found; - let relativePath; - if (workspaces) { - done = true; - relativePath = path_1.default.relative(current, initial); - if (relativePath === "" || isMatchWorkspaces(relativePath, workspaces)) { - found = current; + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - found = null; + peg$currPos = s0; + s0 = peg$FAILED; } + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c26); + } + } + return s0; } - return { - done, - found, - relativePath - }; - } - exports2.checkWorkspaces = checkWorkspaces; - function isMatchWorkspaces(relativePath, workspaces) { - let ls = micromatch_1.default([relativePath], workspaces); - return ls.length > 0; - } - exports2.isMatchWorkspaces = isMatchWorkspaces; - function extractWorkspaces(manifest) { - const workspaces = (manifest || {}).workspaces; - return workspaces && workspaces.packages || (Array.isArray(workspaces) ? workspaces : null); - } - exports2.extractWorkspaces = extractWorkspaces; - function readPackageJSON(dir) { - const file = path_1.default.join(dir, "package.json"); - if (fs_1.existsSync(file)) { - return JSON.parse(fs_1.readFileSync(file, "utf8")); - } - return null; - } - exports2.readPackageJSON = readPackageJSON; - findWorkspaceRoot.findWorkspaceRoot = findWorkspaceRoot; - findWorkspaceRoot.readPackageJSON = readPackageJSON; - findWorkspaceRoot.extractWorkspaces = extractWorkspaces; - findWorkspaceRoot.isMatchWorkspaces = isMatchWorkspaces; - findWorkspaceRoot.default = findWorkspaceRoot; - exports2.default = findWorkspaceRoot; - } -}); - -// ../../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/index.js -var require_find_yarn_workspace_root2 = __commonJS({ - "../../node_modules/.pnpm/find-yarn-workspace-root2@1.2.16/node_modules/find-yarn-workspace-root2/index.js"(exports2, module2) { - "use strict"; - var core_1 = require_core5(); - module2.exports = core_1.findWorkspaceRoot; - } -}); - -// ../../node_modules/.pnpm/pify@4.0.1/node_modules/pify/index.js -var require_pify = __commonJS({ - "../../node_modules/.pnpm/pify@4.0.1/node_modules/pify/index.js"(exports2, module2) { - "use strict"; - var processFn = (fn2, options) => function(...args2) { - const P = options.promiseModule; - return new P((resolve, reject) => { - if (options.multiArgs) { - args2.push((...result) => { - if (options.errorFirst) { - if (result[0]) { - reject(result); + function peg$parsepseudostringLegacy() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c32) { + s1 = peg$c32; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c33); + } + } + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + if (peg$c34.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c35); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); + } + } + while (s4 !== peg$FAILED) { + s3.push(s4); + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; } else { - result.shift(); - resolve(result); + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); + } } - } else { - resolve(result); } - }); - } else if (options.errorFirst) { - args2.push((error, result) => { - if (error) { - reject(error); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; } else { - resolve(result); + peg$currPos = s0; + s0 = peg$FAILED; } - }); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - args2.push(resolve); + peg$currPos = s0; + s0 = peg$FAILED; } - fn2.apply(this, args2); - }); - }; - module2.exports = (input, options) => { - options = Object.assign({ - exclude: [/.+(Sync|Stream)$/], - errorFirst: true, - promiseModule: Promise - }, options); - const objType = typeof input; - if (!(input !== null && (objType === "object" || objType === "function"))) { - throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${input === null ? "null" : objType}\``); - } - const filter = (key) => { - const match = (pattern) => typeof pattern === "string" ? key === pattern : pattern.test(key); - return options.include ? options.include.some(match) : !options.exclude.some(match); - }; - let ret; - if (objType === "function") { - ret = function(...args2) { - return options.excludeMain ? input(...args2) : processFn(input, options).apply(this, args2); - }; - } else { - ret = Object.create(Object.getPrototypeOf(input)); - } - for (const key in input) { - const property = input[key]; - ret[key] = typeof property === "function" && filter(key) ? processFn(property, options) : property; - } - return ret; - }; - } -}); - -// ../../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js -var require_strip_bom2 = __commonJS({ - "../../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js"(exports2, module2) { - "use strict"; - module2.exports = (x) => { - if (typeof x !== "string") { - throw new TypeError("Expected a string, got " + typeof x); - } - if (x.charCodeAt(0) === 65279) { - return x.slice(1); + return s0; } - return x; - }; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/common.js -var require_common6 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/common.js"(exports2, module2) { - "use strict"; - function isNothing(subject) { - return typeof subject === "undefined" || subject === null; - } - function isObject(subject) { - return typeof subject === "object" && subject !== null; - } - function toArray(sequence) { - if (Array.isArray(sequence)) - return sequence; - else if (isNothing(sequence)) - return []; - return [sequence]; - } - function extend(target, source) { - var index, length, key, sourceKeys; - if (source) { - sourceKeys = Object.keys(source); - for (index = 0, length = sourceKeys.length; index < length; index += 1) { - key = sourceKeys[index]; - target[key] = source[key]; + function peg$parsenull() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c38) { + s1 = peg$c38; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } } - } - return target; - } - function repeat(string, count) { - var result = "", cycle; - for (cycle = 0; cycle < count; cycle += 1) { - result += string; - } - return result; - } - function isNegativeZero(number) { - return number === 0 && Number.NEGATIVE_INFINITY === 1 / number; - } - module2.exports.isNothing = isNothing; - module2.exports.isObject = isObject; - module2.exports.toArray = toArray; - module2.exports.repeat = repeat; - module2.exports.isNegativeZero = isNegativeZero; - module2.exports.extend = extend; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/exception.js -var require_exception2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/exception.js"(exports2, module2) { - "use strict"; - function YAMLException(reason, mark) { - Error.call(this); - this.name = "YAMLException"; - this.reason = reason; - this.mark = mark; - this.message = (this.reason || "(unknown reason)") + (this.mark ? " " + this.mark.toString() : ""); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } else { - this.stack = new Error().stack || ""; - } - } - YAMLException.prototype = Object.create(Error.prototype); - YAMLException.prototype.constructor = YAMLException; - YAMLException.prototype.toString = function toString(compact) { - var result = this.name + ": "; - result += this.reason || "(unknown reason)"; - if (!compact && this.mark) { - result += " " + this.mark.toString(); - } - return result; - }; - module2.exports = YAMLException; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/mark.js -var require_mark = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/mark.js"(exports2, module2) { - "use strict"; - var common = require_common6(); - function Mark(name, buffer, position, line, column) { - this.name = name; - this.buffer = buffer; - this.position = position; - this.line = line; - this.column = column; - } - Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { - var head, start, tail, end, snippet; - if (!this.buffer) - return null; - indent = indent || 4; - maxLength = maxLength || 75; - head = ""; - start = this.position; - while (start > 0 && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(start - 1)) === -1) { - start -= 1; - if (this.position - start > maxLength / 2 - 1) { - head = " ... "; - start += 5; - break; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(); } + s0 = s1; + return s0; } - tail = ""; - end = this.position; - while (end < this.buffer.length && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(end)) === -1) { - end += 1; - if (end - this.position > maxLength / 2 - 1) { - tail = " ... "; - end -= 5; - break; + function peg$parseboolean() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c41) { + s1 = peg$c41; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); + } } - } - snippet = this.buffer.slice(start, end); - return common.repeat(" ", indent) + head + snippet + tail + "\n" + common.repeat(" ", indent + this.position - start + head.length) + "^"; - }; - Mark.prototype.toString = function toString(compact) { - var snippet, where = ""; - if (this.name) { - where += 'in "' + this.name + '" '; - } - where += "at line " + (this.line + 1) + ", column " + (this.column + 1); - if (!compact) { - snippet = this.getSnippet(); - if (snippet) { - where += ":\n" + snippet; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c43(); } - } - return where; - }; - module2.exports = Mark; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type.js -var require_type3 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type.js"(exports2, module2) { - "use strict"; - var YAMLException = require_exception2(); - var TYPE_CONSTRUCTOR_OPTIONS = [ - "kind", - "resolve", - "construct", - "instanceOf", - "predicate", - "represent", - "defaultStyle", - "styleAliases" - ]; - var YAML_NODE_KINDS = [ - "scalar", - "sequence", - "mapping" - ]; - function compileStyleAliases(map) { - var result = {}; - if (map !== null) { - Object.keys(map).forEach(function(style) { - map[style].forEach(function(alias) { - result[String(alias)] = style; - }); - }); - } - return result; - } - function Type(tag, options) { - options = options || {}; - Object.keys(options).forEach(function(name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 5) === peg$c44) { + s1 = peg$c44; + peg$currPos += 5; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c45); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c46(); + } + s0 = s1; } - }); - this.tag = tag; - this.kind = options["kind"] || null; - this.resolve = options["resolve"] || function() { - return true; - }; - this.construct = options["construct"] || function(data) { - return data; - }; - this.instanceOf = options["instanceOf"] || null; - this.predicate = options["predicate"] || null; - this.represent = options["represent"] || null; - this.defaultStyle = options["defaultStyle"] || null; - this.styleAliases = compileStyleAliases(options["styleAliases"] || null); - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); + return s0; } - } - module2.exports = Type; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema.js -var require_schema2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema.js"(exports2, module2) { - "use strict"; - var common = require_common6(); - var YAMLException = require_exception2(); - var Type = require_type3(); - function compileList(schema, name, result) { - var exclude = []; - schema.include.forEach(function(includedSchema) { - result = compileList(includedSchema, name, result); - }); - schema[name].forEach(function(currentType) { - result.forEach(function(previousType, previousIndex) { - if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { - exclude.push(previousIndex); + function peg$parsestring() { + var s0, s1, s2, s3; + peg$silentFails++; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); } - }); - result.push(currentType); - }); - return result.filter(function(type, index) { - return exclude.indexOf(index) === -1; - }); - } - function compileMap() { - var result = { - scalar: {}, - sequence: {}, - mapping: {}, - fallback: {} - }, index, length; - function collectType(type) { - result[type.kind][type.tag] = result["fallback"][type.tag] = type; - } - for (index = 0, length = arguments.length; index < length; index += 1) { - arguments[index].forEach(collectType); - } - return result; - } - function Schema(definition) { - this.include = definition.include || []; - this.implicit = definition.implicit || []; - this.explicit = definition.explicit || []; - this.implicit.forEach(function(type) { - if (type.loadKind && type.loadKind !== "scalar") { - throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); } - }); - this.compiledImplicit = compileList(this, "implicit", []); - this.compiledExplicit = compileList(this, "explicit", []); - this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); - } - Schema.DEFAULT = null; - Schema.create = function createSchema() { - var schemas, types; - switch (arguments.length) { - case 1: - schemas = Schema.DEFAULT; - types = arguments[0]; - break; - case 2: - schemas = arguments[0]; - types = arguments[1]; - break; - default: - throw new YAMLException("Wrong number of arguments for Schema.create function"); - } - schemas = common.toArray(schemas); - types = common.toArray(types); - if (!schemas.every(function(schema) { - return schema instanceof Schema; - })) { - throw new YAMLException("Specified list of super schemas (or a single Schema object) contains a non-Schema object."); - } - if (!types.every(function(type) { - return type instanceof Type; - })) { - throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); - } - return new Schema({ - include: schemas, - explicit: types - }); - }; - module2.exports = Schema; - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/str.js -var require_str2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/str.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - module2.exports = new Type("tag:yaml.org,2002:str", { - kind: "scalar", - construct: function(data) { - return data !== null ? data : ""; - } - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/seq.js -var require_seq2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/seq.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - module2.exports = new Type("tag:yaml.org,2002:seq", { - kind: "sequence", - construct: function(data) { - return data !== null ? data : []; + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s2 = peg$c48; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c50(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parsechars(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c48; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c51(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c47); + } + } + return s0; } - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/map.js -var require_map5 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/map.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - module2.exports = new Type("tag:yaml.org,2002:map", { - kind: "mapping", - construct: function(data) { - return data !== null ? data : {}; + function peg$parsechars() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsechar(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsechar(); + } + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c52(s1); + } + s0 = s1; + return s0; } - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js -var require_failsafe2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js"(exports2, module2) { - "use strict"; - var Schema = require_schema2(); - module2.exports = new Schema({ - explicit: [ - require_str2(), - require_seq2(), - require_map5() - ] - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/null.js -var require_null2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/null.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - function resolveYamlNull(data) { - if (data === null) - return true; - var max = data.length; - return max === 1 && data === "~" || max === 4 && (data === "null" || data === "Null" || data === "NULL"); - } - function constructYamlNull() { - return null; - } - function isNull(object) { - return object === null; - } - module2.exports = new Type("tag:yaml.org,2002:null", { - kind: "scalar", - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function() { - return "~"; - }, - lowercase: function() { - return "null"; - }, - uppercase: function() { - return "NULL"; - }, - camelcase: function() { - return "Null"; + function peg$parsechar() { + var s0, s1, s2, s3, s4, s5; + if (peg$c53.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c54); + } + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c57(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c58) { + s1 = peg$c58; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c59); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c60(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c61) { + s1 = peg$c61; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c62); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c63(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c64) { + s1 = peg$c64; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c65); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c67) { + s1 = peg$c67; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c68); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c70) { + s1 = peg$c70; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c71); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c73) { + s1 = peg$c73; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c74); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c75(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c76) { + s1 = peg$c76; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c77); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c78(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parsehexDigit(); + if (s2 !== peg$FAILED) { + s3 = peg$parsehexDigit(); + if (s3 !== peg$FAILED) { + s4 = peg$parsehexDigit(); + if (s4 !== peg$FAILED) { + s5 = peg$parsehexDigit(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(s2, s3, s4, s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } + } + } + } + } + } } - }, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/bool.js -var require_bool2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/bool.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - function resolveYamlBoolean(data) { - if (data === null) - return false; - var max = data.length; - return max === 4 && (data === "true" || data === "True" || data === "TRUE") || max === 5 && (data === "false" || data === "False" || data === "FALSE"); - } - function constructYamlBoolean(data) { - return data === "true" || data === "True" || data === "TRUE"; - } - function isBoolean(object) { - return Object.prototype.toString.call(object) === "[object Boolean]"; - } - module2.exports = new Type("tag:yaml.org,2002:bool", { - kind: "scalar", - resolve: resolveYamlBoolean, - construct: constructYamlBoolean, - predicate: isBoolean, - represent: { - lowercase: function(object) { - return object ? "true" : "false"; - }, - uppercase: function(object) { - return object ? "TRUE" : "FALSE"; - }, - camelcase: function(object) { - return object ? "True" : "False"; + return s0; + } + function peg$parsehexDigit() { + var s0; + if (peg$c82.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } } - }, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/int.js -var require_int2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/int.js"(exports2, module2) { - "use strict"; - var common = require_common6(); - var Type = require_type3(); - function isHexCode(c) { - return 48 <= c && c <= 57 || 65 <= c && c <= 70 || 97 <= c && c <= 102; - } - function isOctCode(c) { - return 48 <= c && c <= 55; - } - function isDecCode(c) { - return 48 <= c && c <= 57; - } - function resolveYamlInteger(data) { - if (data === null) - return false; - var max = data.length, index = 0, hasDigits = false, ch; - if (!max) - return false; - ch = data[index]; - if (ch === "-" || ch === "+") { - ch = data[++index]; + return s0; } - if (ch === "0") { - if (index + 1 === max) - return true; - ch = data[++index]; - if (ch === "b") { - index++; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (ch !== "0" && ch !== "1") - return false; - hasDigits = true; + function peg$parseB() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); } - return hasDigits && ch !== "_"; } - if (ch === "x") { - index++; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (!isHexCode(data.charCodeAt(index))) - return false; - hasDigits = true; + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); + } + } } - return hasDigits && ch !== "_"; + } else { + s0 = peg$FAILED; } - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (!isOctCode(data.charCodeAt(index))) - return false; - hasDigits = true; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c84); + } } - return hasDigits && ch !== "_"; + return s0; } - if (ch === "_") - return false; - for (; index < max; index++) { - ch = data[index]; - if (ch === "_") - continue; - if (ch === ":") - break; - if (!isDecCode(data.charCodeAt(index))) { - return false; + function peg$parseS() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); + } } - hasDigits = true; - } - if (!hasDigits || ch === "_") - return false; - if (ch !== ":") - return true; - return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); - } - function constructYamlInteger(data) { - var value = data, sign = 1, ch, base, digits = []; - if (value.indexOf("_") !== -1) { - value = value.replace(/_/g, ""); - } - ch = value[0]; - if (ch === "-" || ch === "+") { - if (ch === "-") - sign = -1; - value = value.slice(1); - ch = value[0]; - } - if (value === "0") - return 0; - if (ch === "0") { - if (value[1] === "b") - return sign * parseInt(value.slice(2), 2); - if (value[1] === "x") - return sign * parseInt(value, 16); - return sign * parseInt(value, 8); - } - if (value.indexOf(":") !== -1) { - value.split(":").forEach(function(v) { - digits.unshift(parseInt(v, 10)); - }); - value = 0; - base = 1; - digits.forEach(function(d) { - value += d * base; - base *= 60; - }); - return sign * value; - } - return sign * parseInt(value, 10); - } - function isInteger(object) { - return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object)); - } - module2.exports = new Type("tag:yaml.org,2002:int", { - kind: "scalar", - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function(obj) { - return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1); - }, - octal: function(obj) { - return obj >= 0 ? "0" + obj.toString(8) : "-0" + obj.toString(8).slice(1); - }, - decimal: function(obj) { - return obj.toString(10); - }, - hexadecimal: function(obj) { - return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1); + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); + } + } + } + } else { + s0 = peg$FAILED; } - }, - defaultStyle: "decimal", - styleAliases: { - binary: [2, "bin"], - octal: [8, "oct"], - decimal: [10, "dec"], - hexadecimal: [16, "hex"] - } - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/float.js -var require_float2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/float.js"(exports2, module2) { - "use strict"; - var common = require_common6(); - var Type = require_type3(); - var YAML_FLOAT_PATTERN = new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"); - function resolveYamlFloat(data) { - if (data === null) - return false; - if (!YAML_FLOAT_PATTERN.test(data) || data[data.length - 1] === "_") { - return false; - } - return true; - } - function constructYamlFloat(data) { - var value, sign, base, digits; - value = data.replace(/_/g, "").toLowerCase(); - sign = value[0] === "-" ? -1 : 1; - digits = []; - if ("+-".indexOf(value[0]) >= 0) { - value = value.slice(1); + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c87); + } + } + return s0; } - if (value === ".inf") { - return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; - } else if (value === ".nan") { - return NaN; - } else if (value.indexOf(":") >= 0) { - value.split(":").forEach(function(v) { - digits.unshift(parseFloat(v, 10)); - }); - value = 0; - base = 1; - digits.forEach(function(d) { - value += d * base; - base *= 60; - }); - return sign * value; + function peg$parseEOL_ANY() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; } - return sign * parseFloat(value, 10); - } - var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; - function representYamlFloat(object, style) { - var res; - if (isNaN(object)) { - switch (style) { - case "lowercase": - return ".nan"; - case "uppercase": - return ".NAN"; - case "camelcase": - return ".NaN"; + function peg$parseEOL() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c90) { + s0 = peg$c90; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); + } } - } else if (Number.POSITIVE_INFINITY === object) { - switch (style) { - case "lowercase": - return ".inf"; - case "uppercase": - return ".INF"; - case "camelcase": - return ".Inf"; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 10) { + s0 = peg$c92; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c93); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 13) { + s0 = peg$c94; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c95); + } + } + } } - } else if (Number.NEGATIVE_INFINITY === object) { - switch (style) { - case "lowercase": - return "-.inf"; - case "uppercase": - return "-.INF"; - case "camelcase": - return "-.Inf"; + return s0; + } + const INDENT_STEP = 2; + let indentLevel = 0; + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); } - } else if (common.isNegativeZero(object)) { - return "-0.0"; + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } - res = object.toString(10); - return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res; - } - function isFloat(object) { - return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object)); } - module2.exports = new Type("tag:yaml.org,2002:float", { - kind: "scalar", - resolve: resolveYamlFloat, - construct: constructYamlFloat, - predicate: isFloat, - represent: representYamlFloat, - defaultStyle: "lowercase" - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/json.js -var require_json2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/json.js"(exports2, module2) { - "use strict"; - var Schema = require_schema2(); - module2.exports = new Schema({ - include: [ - require_failsafe2() - ], - implicit: [ - require_null2(), - require_bool2(), - require_int2(), - require_float2() - ] - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/core.js -var require_core6 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/core.js"(exports2, module2) { - "use strict"; - var Schema = require_schema2(); - module2.exports = new Schema({ - include: [ - require_json2() - ] - }); + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/timestamp.js -var require_timestamp3 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/timestamp.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/syml.js +var require_syml4 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/syml.js"(exports2) { "use strict"; - var Type = require_type3(); - var YAML_DATE_REGEXP = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"); - var YAML_TIMESTAMP_REGEXP = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$"); - function resolveYamlTimestamp(data) { - if (data === null) - return false; - if (YAML_DATE_REGEXP.exec(data) !== null) - return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) - return true; - return false; - } - function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date; - match = YAML_DATE_REGEXP.exec(data); - if (match === null) - match = YAML_TIMESTAMP_REGEXP.exec(data); - if (match === null) - throw new Error("Date resolve error"); - year = +match[1]; - month = +match[2] - 1; - day = +match[3]; - if (!match[4]) { - return new Date(Date.UTC(year, month, day)); - } - hour = +match[4]; - minute = +match[5]; - second = +match[6]; - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { - fraction += "0"; - } - fraction = +fraction; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseSyml = exports2.stringifySyml = exports2.PreserveOrdering = void 0; + var js_yaml_1 = require_js_yaml3(); + var syml_1 = require_syml3(); + var simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/; + var specialObjectKeys = [`__metadata`, `version`, `resolution`, `dependencies`, `peerDependencies`, `dependenciesMeta`, `peerDependenciesMeta`, `binaries`]; + var PreserveOrdering = class { + constructor(data) { + this.data = data; } - if (match[9]) { - tz_hour = +match[10]; - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 6e4; - if (match[9] === "-") - delta = -delta; + }; + exports2.PreserveOrdering = PreserveOrdering; + function stringifyString(value) { + if (value.match(simpleStringPattern)) { + return value; + } else { + return JSON.stringify(value); } - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - if (delta) - date.setTime(date.getTime() - delta); - return date; - } - function representYamlTimestamp(object) { - return object.toISOString(); - } - module2.exports = new Type("tag:yaml.org,2002:timestamp", { - kind: "scalar", - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/merge.js -var require_merge5 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/merge.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - function resolveYamlMerge(data) { - return data === "<<" || data === null; - } - module2.exports = new Type("tag:yaml.org,2002:merge", { - kind: "scalar", - resolve: resolveYamlMerge - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/binary.js -var require_binary2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/binary.js"(exports2, module2) { - "use strict"; - var NodeBuffer; - try { - _require = require; - NodeBuffer = _require("buffer").Buffer; - } catch (__) { } - var _require; - var Type = require_type3(); - var BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; - function resolveYamlBinary(data) { - if (data === null) - return false; - var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; - for (idx = 0; idx < max; idx++) { - code = map.indexOf(data.charAt(idx)); - if (code > 64) - continue; - if (code < 0) - return false; - bitlen += 6; - } - return bitlen % 8 === 0; + function isRemovableField(value) { + if (typeof value === `undefined`) + return true; + if (typeof value === `object` && value !== null) + return Object.keys(value).every((key) => isRemovableField(value[key])); + return false; } - function constructYamlBinary(data) { - var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max = input.length, map = BASE64_MAP, bits = 0, result = []; - for (idx = 0; idx < max; idx++) { - if (idx % 4 === 0 && idx) { - result.push(bits >> 16 & 255); - result.push(bits >> 8 & 255); - result.push(bits & 255); - } - bits = bits << 6 | map.indexOf(input.charAt(idx)); - } - tailbits = max % 4 * 6; - if (tailbits === 0) { - result.push(bits >> 16 & 255); - result.push(bits >> 8 & 255); - result.push(bits & 255); - } else if (tailbits === 18) { - result.push(bits >> 10 & 255); - result.push(bits >> 2 & 255); - } else if (tailbits === 12) { - result.push(bits >> 4 & 255); - } - if (NodeBuffer) { - return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); + function stringifyValue(value, indentLevel, newLineIfObject) { + if (value === null) + return `null +`; + if (typeof value === `number` || typeof value === `boolean`) + return `${value.toString()} +`; + if (typeof value === `string`) + return `${stringifyString(value)} +`; + if (Array.isArray(value)) { + if (value.length === 0) + return `[] +`; + const indent = ` `.repeat(indentLevel); + const serialized = value.map((sub) => { + return `${indent}- ${stringifyValue(sub, indentLevel + 1, false)}`; + }).join(``); + return ` +${serialized}`; } - return result; - } - function representYamlBinary(object) { - var result = "", bits = 0, idx, tail, max = object.length, map = BASE64_MAP; - for (idx = 0; idx < max; idx++) { - if (idx % 3 === 0 && idx) { - result += map[bits >> 18 & 63]; - result += map[bits >> 12 & 63]; - result += map[bits >> 6 & 63]; - result += map[bits & 63]; + if (typeof value === `object` && value) { + const [data, sort] = value instanceof PreserveOrdering ? [value.data, false] : [value, true]; + const indent = ` `.repeat(indentLevel); + const keys = Object.keys(data); + if (sort) { + keys.sort((a, b) => { + const aIndex = specialObjectKeys.indexOf(a); + const bIndex = specialObjectKeys.indexOf(b); + if (aIndex === -1 && bIndex === -1) + return a < b ? -1 : a > b ? 1 : 0; + if (aIndex !== -1 && bIndex === -1) + return -1; + if (aIndex === -1 && bIndex !== -1) + return 1; + return aIndex - bIndex; + }); } - bits = (bits << 8) + object[idx]; - } - tail = max % 3; - if (tail === 0) { - result += map[bits >> 18 & 63]; - result += map[bits >> 12 & 63]; - result += map[bits >> 6 & 63]; - result += map[bits & 63]; - } else if (tail === 2) { - result += map[bits >> 10 & 63]; - result += map[bits >> 4 & 63]; - result += map[bits << 2 & 63]; - result += map[64]; - } else if (tail === 1) { - result += map[bits >> 2 & 63]; - result += map[bits << 4 & 63]; - result += map[64]; - result += map[64]; - } - return result; - } - function isBinary(object) { - return NodeBuffer && NodeBuffer.isBuffer(object); - } - module2.exports = new Type("tag:yaml.org,2002:binary", { - kind: "scalar", - resolve: resolveYamlBinary, - construct: constructYamlBinary, - predicate: isBinary, - represent: representYamlBinary - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/omap.js -var require_omap2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/omap.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var _toString = Object.prototype.toString; - function resolveYamlOmap(data) { - if (data === null) - return true; - var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data; - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; - if (_toString.call(pair) !== "[object Object]") - return false; - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) - pairHasKey = true; - else - return false; - } + const fields = keys.filter((key) => { + return !isRemovableField(data[key]); + }).map((key, index) => { + const value2 = data[key]; + const stringifiedKey = stringifyString(key); + const stringifiedValue = stringifyValue(value2, indentLevel + 1, true); + const recordIndentation = index > 0 || newLineIfObject ? indent : ``; + const keyPart = stringifiedKey.length > 1024 ? `? ${stringifiedKey} +${recordIndentation}:` : `${stringifiedKey}:`; + const valuePart = stringifiedValue.startsWith(` +`) ? stringifiedValue : ` ${stringifiedValue}`; + return `${recordIndentation}${keyPart}${valuePart}`; + }).join(indentLevel === 0 ? ` +` : ``) || ` +`; + if (!newLineIfObject) { + return `${fields}`; + } else { + return ` +${fields}`; } - if (!pairHasKey) - return false; - if (objectKeys.indexOf(pairKey) === -1) - objectKeys.push(pairKey); - else - return false; } - return true; - } - function constructYamlOmap(data) { - return data !== null ? data : []; + throw new Error(`Unsupported value type (${value})`); } - module2.exports = new Type("tag:yaml.org,2002:omap", { - kind: "sequence", - resolve: resolveYamlOmap, - construct: constructYamlOmap - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/pairs.js -var require_pairs3 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/pairs.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - var _toString = Object.prototype.toString; - function resolveYamlPairs(data) { - if (data === null) - return true; - var index, length, pair, keys, result, object = data; - result = new Array(object.length); - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - if (_toString.call(pair) !== "[object Object]") - return false; - keys = Object.keys(pair); - if (keys.length !== 1) - return false; - result[index] = [keys[0], pair[keys[0]]]; + function stringifySyml(value) { + try { + const stringified = stringifyValue(value, 0, false); + return stringified !== ` +` ? stringified : ``; + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; } - return true; } - function constructYamlPairs(data) { - if (data === null) - return []; - var index, length, pair, keys, result, object = data; - result = new Array(object.length); - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - keys = Object.keys(pair); - result[index] = [keys[0], pair[keys[0]]]; - } - return result; + exports2.stringifySyml = stringifySyml; + stringifySyml.PreserveOrdering = PreserveOrdering; + function parseViaPeg(source) { + if (!source.endsWith(` +`)) + source += ` +`; + return (0, syml_1.parse)(source); } - module2.exports = new Type("tag:yaml.org,2002:pairs", { - kind: "sequence", - resolve: resolveYamlPairs, - construct: constructYamlPairs - }); - } -}); - -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/set.js -var require_set2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/set.js"(exports2, module2) { - "use strict"; - var Type = require_type3(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - function resolveYamlSet(data) { - if (data === null) - return true; - var key, object = data; - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) - return false; - } - } - return true; + var LEGACY_REGEXP = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i; + function parseViaJsYaml(source) { + if (LEGACY_REGEXP.test(source)) + return parseViaPeg(source); + const value = (0, js_yaml_1.safeLoad)(source, { + schema: js_yaml_1.FAILSAFE_SCHEMA, + json: true + }); + if (value === void 0 || value === null) + return {}; + if (typeof value !== `object`) + throw new Error(`Expected an indexed object, got a ${typeof value} instead. Does your file follow Yaml's rules?`); + if (Array.isArray(value)) + throw new Error(`Expected an indexed object, got an array instead. Does your file follow Yaml's rules?`); + return value; } - function constructYamlSet(data) { - return data !== null ? data : {}; + function parseSyml(source) { + return parseViaJsYaml(source); } - module2.exports = new Type("tag:yaml.org,2002:set", { - kind: "mapping", - resolve: resolveYamlSet, - construct: constructYamlSet - }); + exports2.parseSyml = parseSyml; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js -var require_default_safe = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/index.js +var require_lib122 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.45/node_modules/@yarnpkg/parsers/lib/index.js"(exports2) { "use strict"; - var Schema = require_schema2(); - module2.exports = new Schema({ - include: [ - require_core6() - ], - implicit: [ - require_timestamp3(), - require_merge5() - ], - explicit: [ - require_binary2(), - require_omap2(), - require_pairs3(), - require_set2() - ] - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifySyml = exports2.parseSyml = exports2.stringifyResolution = exports2.parseResolution = exports2.stringifyValueArgument = exports2.stringifyShellLine = exports2.stringifyRedirectArgument = exports2.stringifyEnvSegment = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommand = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyArgument = exports2.stringifyShell = exports2.parseShell = void 0; + var shell_1 = require_shell4(); + Object.defineProperty(exports2, "parseShell", { enumerable: true, get: function() { + return shell_1.parseShell; + } }); + Object.defineProperty(exports2, "stringifyShell", { enumerable: true, get: function() { + return shell_1.stringifyShell; + } }); + Object.defineProperty(exports2, "stringifyArgument", { enumerable: true, get: function() { + return shell_1.stringifyArgument; + } }); + Object.defineProperty(exports2, "stringifyArgumentSegment", { enumerable: true, get: function() { + return shell_1.stringifyArgumentSegment; + } }); + Object.defineProperty(exports2, "stringifyArithmeticExpression", { enumerable: true, get: function() { + return shell_1.stringifyArithmeticExpression; + } }); + Object.defineProperty(exports2, "stringifyCommand", { enumerable: true, get: function() { + return shell_1.stringifyCommand; + } }); + Object.defineProperty(exports2, "stringifyCommandChain", { enumerable: true, get: function() { + return shell_1.stringifyCommandChain; + } }); + Object.defineProperty(exports2, "stringifyCommandChainThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandChainThen; + } }); + Object.defineProperty(exports2, "stringifyCommandLine", { enumerable: true, get: function() { + return shell_1.stringifyCommandLine; + } }); + Object.defineProperty(exports2, "stringifyCommandLineThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandLineThen; + } }); + Object.defineProperty(exports2, "stringifyEnvSegment", { enumerable: true, get: function() { + return shell_1.stringifyEnvSegment; + } }); + Object.defineProperty(exports2, "stringifyRedirectArgument", { enumerable: true, get: function() { + return shell_1.stringifyRedirectArgument; + } }); + Object.defineProperty(exports2, "stringifyShellLine", { enumerable: true, get: function() { + return shell_1.stringifyShellLine; + } }); + Object.defineProperty(exports2, "stringifyValueArgument", { enumerable: true, get: function() { + return shell_1.stringifyValueArgument; + } }); + var resolution_1 = require_resolution4(); + Object.defineProperty(exports2, "parseResolution", { enumerable: true, get: function() { + return resolution_1.parseResolution; + } }); + Object.defineProperty(exports2, "stringifyResolution", { enumerable: true, get: function() { + return resolution_1.stringifyResolution; + } }); + var syml_1 = require_syml4(); + Object.defineProperty(exports2, "parseSyml", { enumerable: true, get: function() { + return syml_1.parseSyml; + } }); + Object.defineProperty(exports2, "stringifySyml", { enumerable: true, get: function() { + return syml_1.stringifySyml; + } }); } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js -var require_undefined = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js"(exports2, module2) { +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/constants.js +var require_constants11 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/constants.js"(exports2) { "use strict"; - var Type = require_type3(); - function resolveJavascriptUndefined() { - return true; - } - function constructJavascriptUndefined() { - return void 0; - } - function representJavascriptUndefined() { - return ""; - } - function isUndefined(object) { - return typeof object === "undefined"; - } - module2.exports = new Type("tag:yaml.org,2002:js/undefined", { - kind: "scalar", - resolve: resolveJavascriptUndefined, - construct: constructJavascriptUndefined, - predicate: isUndefined, - represent: representJavascriptUndefined - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + var NODE_INITIAL = 0; + var NODE_SUCCESS = 1; + var NODE_ERRORED = 2; + var START_OF_INPUT = ``; + var END_OF_INPUT = `\0`; + var HELP_COMMAND_INDEX = -1; + var HELP_REGEX = /^(-h|--help)(?:=([0-9]+))?$/; + var OPTION_REGEX = /^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/; + var BATCH_REGEX = /^-[a-zA-Z]{2,}$/; + var BINDING_REGEX = /^([^=]+)=([\s\S]*)$/; + var DEBUG = process.env.DEBUG_CLI === `1`; + exports2.BATCH_REGEX = BATCH_REGEX; + exports2.BINDING_REGEX = BINDING_REGEX; + exports2.DEBUG = DEBUG; + exports2.END_OF_INPUT = END_OF_INPUT; + exports2.HELP_COMMAND_INDEX = HELP_COMMAND_INDEX; + exports2.HELP_REGEX = HELP_REGEX; + exports2.NODE_ERRORED = NODE_ERRORED; + exports2.NODE_INITIAL = NODE_INITIAL; + exports2.NODE_SUCCESS = NODE_SUCCESS; + exports2.OPTION_REGEX = OPTION_REGEX; + exports2.START_OF_INPUT = START_OF_INPUT; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js -var require_regexp = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js"(exports2, module2) { +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/errors.js +var require_errors6 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/errors.js"(exports2) { "use strict"; - var Type = require_type3(); - function resolveJavascriptRegExp(data) { - if (data === null) - return false; - if (data.length === 0) - return false; - var regexp = data, tail = /\/([gim]*)$/.exec(data), modifiers = ""; - if (regexp[0] === "/") { - if (tail) - modifiers = tail[1]; - if (modifiers.length > 3) - return false; - if (regexp[regexp.length - modifiers.length - 1] !== "/") - return false; - } - return true; - } - function constructJavascriptRegExp(data) { - var regexp = data, tail = /\/([gim]*)$/.exec(data), modifiers = ""; - if (regexp[0] === "/") { - if (tail) - modifiers = tail[1]; - regexp = regexp.slice(1, regexp.length - modifiers.length - 1); + Object.defineProperty(exports2, "__esModule", { value: true }); + var constants = require_constants11(); + var UsageError = class extends Error { + constructor(message2) { + super(message2); + this.clipanion = { type: `usage` }; + this.name = `UsageError`; } - return new RegExp(regexp, modifiers); - } - function representJavascriptRegExp(object) { - var result = "/" + object.source + "/"; - if (object.global) - result += "g"; - if (object.multiline) - result += "m"; - if (object.ignoreCase) - result += "i"; - return result; - } - function isRegExp(object) { - return Object.prototype.toString.call(object) === "[object RegExp]"; - } - module2.exports = new Type("tag:yaml.org,2002:js/regexp", { - kind: "scalar", - resolve: resolveJavascriptRegExp, - construct: constructJavascriptRegExp, - predicate: isRegExp, - represent: representJavascriptRegExp - }); - } -}); + }; + var UnknownSyntaxError = class extends Error { + constructor(input, candidates) { + super(); + this.input = input; + this.candidates = candidates; + this.clipanion = { type: `none` }; + this.name = `UnknownSyntaxError`; + if (this.candidates.length === 0) { + this.message = `Command not found, but we're not sure what's the alternative.`; + } else if (this.candidates.every((candidate) => candidate.reason !== null && candidate.reason === candidates[0].reason)) { + const [{ reason }] = this.candidates; + this.message = `${reason} + +${this.candidates.map(({ usage }) => `$ ${usage}`).join(` +`)}`; + } else if (this.candidates.length === 1) { + const [{ usage }] = this.candidates; + this.message = `Command not found; did you mean: + +$ ${usage} +${whileRunning(input)}`; + } else { + this.message = `Command not found; did you mean one of: -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/function.js -var require_function = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/type/js/function.js"(exports2, module2) { - "use strict"; - var esprima; - try { - _require = require; - esprima = _require("esprima"); - } catch (_) { - if (typeof window !== "undefined") - esprima = window.esprima; - } - var _require; - var Type = require_type3(); - function resolveJavascriptFunction(data) { - if (data === null) - return false; - try { - var source = "(" + data + ")", ast = esprima.parse(source, { range: true }); - if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") { - return false; +${this.candidates.map(({ usage }, index) => { + return `${`${index}.`.padStart(4)} ${usage}`; + }).join(` +`)} + +${whileRunning(input)}`; } - return true; - } catch (err) { - return false; - } - } - function constructJavascriptFunction(data) { - var source = "(" + data + ")", ast = esprima.parse(source, { range: true }), params = [], body; - if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") { - throw new Error("Failed to resolve function"); } - ast.body[0].expression.params.forEach(function(param) { - params.push(param.name); - }); - body = ast.body[0].expression.body.range; - if (ast.body[0].expression.body.type === "BlockStatement") { - return new Function(params, source.slice(body[0] + 1, body[1] - 1)); - } - return new Function(params, "return " + source.slice(body[0], body[1])); - } - function representJavascriptFunction(object) { - return object.toString(); - } - function isFunction(object) { - return Object.prototype.toString.call(object) === "[object Function]"; - } - module2.exports = new Type("tag:yaml.org,2002:js/function", { - kind: "scalar", - resolve: resolveJavascriptFunction, - construct: constructJavascriptFunction, - predicate: isFunction, - represent: representJavascriptFunction - }); - } -}); + }; + var AmbiguousSyntaxError = class extends Error { + constructor(input, usages) { + super(); + this.input = input; + this.usages = usages; + this.clipanion = { type: `none` }; + this.name = `AmbiguousSyntaxError`; + this.message = `Cannot find which to pick amongst the following alternatives: -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_full.js -var require_default_full = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/schema/default_full.js"(exports2, module2) { - "use strict"; - var Schema = require_schema2(); - module2.exports = Schema.DEFAULT = new Schema({ - include: [ - require_default_safe() - ], - explicit: [ - require_undefined(), - require_regexp(), - require_function() - ] - }); +${this.usages.map((usage, index) => { + return `${`${index}.`.padStart(4)} ${usage}`; + }).join(` +`)} + +${whileRunning(input)}`; + } + }; + var whileRunning = (input) => `While running ${input.filter((token) => { + return token !== constants.END_OF_INPUT; + }).map((token) => { + const json = JSON.stringify(token); + if (token.match(/\s/) || token.length === 0 || json !== `"${token}"`) { + return json; + } else { + return token; + } + }).join(` `)}`; + exports2.AmbiguousSyntaxError = AmbiguousSyntaxError; + exports2.UnknownSyntaxError = UnknownSyntaxError; + exports2.UsageError = UsageError; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/loader.js -var require_loader2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/loader.js"(exports2, module2) { +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/utils.js +var require_utils15 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/utils.js"(exports2) { "use strict"; - var common = require_common6(); - var YAMLException = require_exception2(); - var Mark = require_mark(); - var DEFAULT_SAFE_SCHEMA = require_default_safe(); - var DEFAULT_FULL_SCHEMA = require_default_full(); - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var CONTEXT_FLOW_IN = 1; - var CONTEXT_FLOW_OUT = 2; - var CONTEXT_BLOCK_IN = 3; - var CONTEXT_BLOCK_OUT = 4; - var CHOMPING_CLIP = 1; - var CHOMPING_STRIP = 2; - var CHOMPING_KEEP = 3; - var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; - var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; - var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; - var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; - var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; - function _class(obj) { - return Object.prototype.toString.call(obj); - } - function is_EOL(c) { - return c === 10 || c === 13; - } - function is_WHITE_SPACE(c) { - return c === 9 || c === 32; - } - function is_WS_OR_EOL(c) { - return c === 9 || c === 32 || c === 10 || c === 13; - } - function is_FLOW_INDICATOR(c) { - return c === 44 || c === 91 || c === 93 || c === 123 || c === 125; + Object.defineProperty(exports2, "__esModule", { value: true }); + var errors = require_errors6(); + var isOptionSymbol = Symbol(`clipanion/isOption`); + function makeCommandOption(spec) { + return { ...spec, [isOptionSymbol]: true }; } - function fromHexCode(c) { - var lc; - if (48 <= c && c <= 57) { - return c - 48; - } - lc = c | 32; - if (97 <= lc && lc <= 102) { - return lc - 97 + 10; + function rerouteArguments(a, b) { + if (typeof a === `undefined`) + return [a, b]; + if (typeof a === `object` && a !== null && !Array.isArray(a)) { + return [void 0, a]; + } else { + return [a, b]; } - return -1; } - function escapedHexLen(c) { - if (c === 120) { - return 2; - } - if (c === 117) { - return 4; - } - if (c === 85) { - return 8; - } - return 0; + function cleanValidationError(message2, lowerCase = false) { + let cleaned = message2.replace(/^\.: /, ``); + if (lowerCase) + cleaned = cleaned[0].toLowerCase() + cleaned.slice(1); + return cleaned; } - function fromDecimalCode(c) { - if (48 <= c && c <= 57) { - return c - 48; + function formatError(message2, errors$1) { + if (errors$1.length === 1) { + return new errors.UsageError(`${message2}: ${cleanValidationError(errors$1[0], true)}`); + } else { + return new errors.UsageError(`${message2}: +${errors$1.map((error) => ` +- ${cleanValidationError(error)}`).join(``)}`); } - return -1; } - function simpleEscapeSequence(c) { - return c === 48 ? "\0" : c === 97 ? "\x07" : c === 98 ? "\b" : c === 116 ? " " : c === 9 ? " " : c === 110 ? "\n" : c === 118 ? "\v" : c === 102 ? "\f" : c === 114 ? "\r" : c === 101 ? "" : c === 32 ? " " : c === 34 ? '"' : c === 47 ? "/" : c === 92 ? "\\" : c === 78 ? "\x85" : c === 95 ? "\xA0" : c === 76 ? "\u2028" : c === 80 ? "\u2029" : ""; + function applyValidator(name, value, validator) { + if (typeof validator === `undefined`) + return value; + const errors2 = []; + const coercions = []; + const coercion = (v) => { + const orig = value; + value = v; + return coercion.bind(null, orig); + }; + const check = validator(value, { errors: errors2, coercions, coercion }); + if (!check) + throw formatError(`Invalid value for ${name}`, errors2); + for (const [, op] of coercions) + op(); + return value; } - function charFromCodepoint(c) { - if (c <= 65535) { - return String.fromCharCode(c); + exports2.applyValidator = applyValidator; + exports2.cleanValidationError = cleanValidationError; + exports2.formatError = formatError; + exports2.isOptionSymbol = isOptionSymbol; + exports2.makeCommandOption = makeCommandOption; + exports2.rerouteArguments = rerouteArguments; + } +}); + +// ../node_modules/.pnpm/typanion@3.12.1/node_modules/typanion/lib/index.js +var require_lib123 = __commonJS({ + "../node_modules/.pnpm/typanion@3.12.1/node_modules/typanion/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var simpleKeyRegExp = /^[a-zA-Z_][a-zA-Z0-9_]*$/; + function getPrintable(value) { + if (value === null) + return `null`; + if (value === void 0) + return `undefined`; + if (value === ``) + return `an empty string`; + if (typeof value === "symbol") + return `<${value.toString()}>`; + if (Array.isArray(value)) + return `an array`; + return JSON.stringify(value); + } + function getPrintableArray(value, conjunction) { + if (value.length === 0) + return `nothing`; + if (value.length === 1) + return getPrintable(value[0]); + const rest = value.slice(0, -1); + const trailing = value[value.length - 1]; + const separator = value.length > 2 ? `, ${conjunction} ` : ` ${conjunction} `; + return `${rest.map((value2) => getPrintable(value2)).join(`, `)}${separator}${getPrintable(trailing)}`; + } + function computeKey(state, key) { + var _a, _b, _c; + if (typeof key === `number`) { + return `${(_a = state === null || state === void 0 ? void 0 : state.p) !== null && _a !== void 0 ? _a : `.`}[${key}]`; + } else if (simpleKeyRegExp.test(key)) { + return `${(_b = state === null || state === void 0 ? void 0 : state.p) !== null && _b !== void 0 ? _b : ``}.${key}`; + } else { + return `${(_c = state === null || state === void 0 ? void 0 : state.p) !== null && _c !== void 0 ? _c : `.`}[${JSON.stringify(key)}]`; } - return String.fromCharCode((c - 65536 >> 10) + 55296, (c - 65536 & 1023) + 56320); } - var simpleEscapeCheck = new Array(256); - var simpleEscapeMap = new Array(256); - for (i = 0; i < 256; i++) { - simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; - simpleEscapeMap[i] = simpleEscapeSequence(i); + function plural(n, singular, plural2) { + return n === 1 ? singular : plural2; } - var i; - function State(input, options) { - this.input = input; - this.filename = options["filename"] || null; - this.schema = options["schema"] || DEFAULT_FULL_SCHEMA; - this.onWarning = options["onWarning"] || null; - this.legacy = options["legacy"] || false; - this.json = options["json"] || false; - this.listener = options["listener"] || null; - this.implicitTypes = this.schema.compiledImplicit; - this.typeMap = this.schema.compiledTypeMap; - this.length = input.length; - this.position = 0; - this.line = 0; - this.lineStart = 0; - this.lineIndent = 0; - this.documents = []; + var colorStringRegExp = /^#[0-9a-f]{6}$/i; + var colorStringAlphaRegExp = /^#[0-9a-f]{6}([0-9a-f]{2})?$/i; + var base64RegExp = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/; + var uuid4RegExp = /^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i; + var iso8601RegExp = /^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/; + function pushError({ errors, p } = {}, message2) { + errors === null || errors === void 0 ? void 0 : errors.push(`${p !== null && p !== void 0 ? p : `.`}: ${message2}`); + return false; } - function generateError(state, message2) { - return new YAMLException(message2, new Mark(state.filename, state.input, state.position, state.line, state.position - state.lineStart)); + function makeSetter(target, key) { + return (v) => { + target[key] = v; + }; } - function throwError(state, message2) { - throw generateError(state, message2); + function makeCoercionFn(target, key) { + return (v) => { + const previous = target[key]; + target[key] = v; + return makeCoercionFn(target, key).bind(null, previous); + }; } - function throwWarning(state, message2) { - if (state.onWarning) { - state.onWarning.call(null, generateError(state, message2)); - } + function makeLazyCoercionFn(fn3, orig, generator) { + const commit = () => { + fn3(generator()); + return revert; + }; + const revert = () => { + fn3(orig); + return commit; + }; + return commit; } - var directiveHandlers = { - YAML: function handleYamlDirective(state, name, args2) { - var match, major, minor; - if (state.version !== null) { - throwError(state, "duplication of %YAML directive"); + function isUnknown() { + return makeValidator({ + test: (value, state) => { + return true; } - if (args2.length !== 1) { - throwError(state, "YAML directive accepts exactly one argument"); + }); + } + function isLiteral(expected) { + return makeValidator({ + test: (value, state) => { + if (value !== expected) + return pushError(state, `Expected ${getPrintable(expected)} (got ${getPrintable(value)})`); + return true; } - match = /^([0-9]+)\.([0-9]+)$/.exec(args2[0]); - if (match === null) { - throwError(state, "ill-formed argument of the YAML directive"); + }); + } + function isString() { + return makeValidator({ + test: (value, state) => { + if (typeof value !== `string`) + return pushError(state, `Expected a string (got ${getPrintable(value)})`); + return true; } - major = parseInt(match[1], 10); - minor = parseInt(match[2], 10); - if (major !== 1) { - throwError(state, "unacceptable YAML version of the document"); + }); + } + function isEnum(enumSpec) { + const valuesArray = Array.isArray(enumSpec) ? enumSpec : Object.values(enumSpec); + const isAlphaNum = valuesArray.every((item) => typeof item === "string" || typeof item === "number"); + const values = new Set(valuesArray); + if (values.size === 1) + return isLiteral([...values][0]); + return makeValidator({ + test: (value, state) => { + if (!values.has(value)) { + if (isAlphaNum) { + return pushError(state, `Expected one of ${getPrintableArray(valuesArray, `or`)} (got ${getPrintable(value)})`); + } else { + return pushError(state, `Expected a valid enumeration value (got ${getPrintable(value)})`); + } + } + return true; } - state.version = args2[0]; - state.checkLineBreaks = minor < 2; - if (minor !== 1 && minor !== 2) { - throwWarning(state, "unsupported YAML version of the document"); + }); + } + var BOOLEAN_COERCIONS = /* @__PURE__ */ new Map([ + [`true`, true], + [`True`, true], + [`1`, true], + [1, true], + [`false`, false], + [`False`, false], + [`0`, false], + [0, false] + ]); + function isBoolean() { + return makeValidator({ + test: (value, state) => { + var _a; + if (typeof value !== `boolean`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + const coercion = BOOLEAN_COERCIONS.get(value); + if (typeof coercion !== `undefined`) { + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]); + return true; + } + } + return pushError(state, `Expected a boolean (got ${getPrintable(value)})`); + } + return true; } - }, - TAG: function handleTagDirective(state, name, args2) { - var handle, prefix; - if (args2.length !== 2) { - throwError(state, "TAG directive accepts exactly two arguments"); + }); + } + function isNumber() { + return makeValidator({ + test: (value, state) => { + var _a; + if (typeof value !== `number`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + let coercion; + if (typeof value === `string`) { + let val; + try { + val = JSON.parse(value); + } catch (_b) { + } + if (typeof val === `number`) { + if (JSON.stringify(val) === value) { + coercion = val; + } else { + return pushError(state, `Received a number that can't be safely represented by the runtime (${value})`); + } + } + } + if (typeof coercion !== `undefined`) { + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]); + return true; + } + } + return pushError(state, `Expected a number (got ${getPrintable(value)})`); + } + return true; } - handle = args2[0]; - prefix = args2[1]; - if (!PATTERN_TAG_HANDLE.test(handle)) { - throwError(state, "ill-formed tag handle (first argument) of the TAG directive"); + }); + } + function isDate() { + return makeValidator({ + test: (value, state) => { + var _a; + if (!(value instanceof Date)) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + let coercion; + if (typeof value === `string` && iso8601RegExp.test(value)) { + coercion = new Date(value); + } else { + let timestamp; + if (typeof value === `string`) { + let val; + try { + val = JSON.parse(value); + } catch (_b) { + } + if (typeof val === `number`) { + timestamp = val; + } + } else if (typeof value === `number`) { + timestamp = value; + } + if (typeof timestamp !== `undefined`) { + if (Number.isSafeInteger(timestamp) || !Number.isSafeInteger(timestamp * 1e3)) { + coercion = new Date(timestamp * 1e3); + } else { + return pushError(state, `Received a timestamp that can't be safely represented by the runtime (${value})`); + } + } + } + if (typeof coercion !== `undefined`) { + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]); + return true; + } + } + return pushError(state, `Expected a date (got ${getPrintable(value)})`); + } + return true; } - if (_hasOwnProperty.call(state.tagMap, handle)) { - throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); + }); + } + function isArray(spec, { delimiter } = {}) { + return makeValidator({ + test: (value, state) => { + var _a; + const originalValue = value; + if (typeof value === `string` && typeof delimiter !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + value = value.split(delimiter); + } + } + if (!Array.isArray(value)) + return pushError(state, `Expected an array (got ${getPrintable(value)})`); + let valid = true; + for (let t = 0, T = value.length; t < T; ++t) { + valid = spec(value[t], Object.assign(Object.assign({}, state), { p: computeKey(state, t), coercion: makeCoercionFn(value, t) })) && valid; + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + } + if (value !== originalValue) + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]); + return valid; } - if (!PATTERN_TAG_URI.test(prefix)) { - throwError(state, "ill-formed tag prefix (second argument) of the TAG directive"); + }); + } + function isSet(spec, { delimiter } = {}) { + const isArrayValidator = isArray(spec, { delimiter }); + return makeValidator({ + test: (value, state) => { + var _a, _b; + if (Object.getPrototypeOf(value).toString() === `[object Set]`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + const originalValues = [...value]; + const coercedValues = [...value]; + if (!isArrayValidator(coercedValues, Object.assign(Object.assign({}, state), { coercion: void 0 }))) + return false; + const updateValue = () => coercedValues.some((val, t) => val !== originalValues[t]) ? new Set(coercedValues) : value; + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]); + return true; + } else { + let valid = true; + for (const subValue of value) { + valid = spec(subValue, Object.assign({}, state)) && valid; + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + } + return valid; + } + } + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + const store = { value }; + if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: makeCoercionFn(store, `value`) }))) + return false; + state.coercions.push([(_b = state.p) !== null && _b !== void 0 ? _b : `.`, makeLazyCoercionFn(state.coercion, value, () => new Set(store.value))]); + return true; + } + return pushError(state, `Expected a set (got ${getPrintable(value)})`); } - state.tagMap[handle] = prefix; - } - }; - function captureSegment(state, start, end, checkJson) { - var _position, _length, _character, _result; - if (start < end) { - _result = state.input.slice(start, end); - if (checkJson) { - for (_position = 0, _length = _result.length; _position < _length; _position += 1) { - _character = _result.charCodeAt(_position); - if (!(_character === 9 || 32 <= _character && _character <= 1114111)) { - throwError(state, "expected valid JSON character"); + }); + } + function isMap(keySpec, valueSpec) { + const isArrayValidator = isArray(isTuple([keySpec, valueSpec])); + const isRecordValidator = isRecord(valueSpec, { keys: keySpec }); + return makeValidator({ + test: (value, state) => { + var _a, _b, _c; + if (Object.getPrototypeOf(value).toString() === `[object Map]`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + const originalValues = [...value]; + const coercedValues = [...value]; + if (!isArrayValidator(coercedValues, Object.assign(Object.assign({}, state), { coercion: void 0 }))) + return false; + const updateValue = () => coercedValues.some((val, t) => val[0] !== originalValues[t][0] || val[1] !== originalValues[t][1]) ? new Map(coercedValues) : value; + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]); + return true; + } else { + let valid = true; + for (const [key, subValue] of value) { + valid = keySpec(key, Object.assign({}, state)) && valid; + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + valid = valueSpec(subValue, Object.assign(Object.assign({}, state), { p: computeKey(state, key) })) && valid; + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + } + return valid; } } - } else if (PATTERN_NON_PRINTABLE.test(_result)) { - throwError(state, "the stream contains non-printable characters"); + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + const store = { value }; + if (Array.isArray(value)) { + if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: void 0 }))) + return false; + state.coercions.push([(_b = state.p) !== null && _b !== void 0 ? _b : `.`, makeLazyCoercionFn(state.coercion, value, () => new Map(store.value))]); + return true; + } else { + if (!isRecordValidator(value, Object.assign(Object.assign({}, state), { coercion: makeCoercionFn(store, `value`) }))) + return false; + state.coercions.push([(_c = state.p) !== null && _c !== void 0 ? _c : `.`, makeLazyCoercionFn(state.coercion, value, () => new Map(Object.entries(store.value)))]); + return true; + } + } + return pushError(state, `Expected a map (got ${getPrintable(value)})`); } - state.result += _result; - } + }); } - function mergeMappings(state, destination, source, overridableKeys) { - var sourceKeys, key, index, quantity; - if (!common.isObject(source)) { - throwError(state, "cannot merge mappings; the provided source object is unacceptable"); - } - sourceKeys = Object.keys(source); - for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { - key = sourceKeys[index]; - if (!_hasOwnProperty.call(destination, key)) { - destination[key] = source[key]; - overridableKeys[key] = true; + function isTuple(spec, { delimiter } = {}) { + const lengthValidator = hasExactLength(spec.length); + return makeValidator({ + test: (value, state) => { + var _a; + if (typeof value === `string` && typeof delimiter !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + value = value.split(delimiter); + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]); + } + } + if (!Array.isArray(value)) + return pushError(state, `Expected a tuple (got ${getPrintable(value)})`); + let valid = lengthValidator(value, Object.assign({}, state)); + for (let t = 0, T = value.length; t < T && t < spec.length; ++t) { + valid = spec[t](value[t], Object.assign(Object.assign({}, state), { p: computeKey(state, t), coercion: makeCoercionFn(value, t) })) && valid; + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + } + return valid; } - } + }); } - function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { - var index, quantity; - if (Array.isArray(keyNode)) { - keyNode = Array.prototype.slice.call(keyNode); - for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { - if (Array.isArray(keyNode[index])) { - throwError(state, "nested arrays are not supported inside keys"); + function isRecord(spec, { keys: keySpec = null } = {}) { + const isArrayValidator = isArray(isTuple([keySpec !== null && keySpec !== void 0 ? keySpec : isString(), spec])); + return makeValidator({ + test: (value, state) => { + var _a; + if (Array.isArray(value)) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: void 0 }))) + return false; + value = Object.fromEntries(value); + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]); + return true; + } } - if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") { - keyNode[index] = "[object Object]"; + if (typeof value !== `object` || value === null) + return pushError(state, `Expected an object (got ${getPrintable(value)})`); + const keys = Object.keys(value); + let valid = true; + for (let t = 0, T = keys.length; t < T && (valid || (state === null || state === void 0 ? void 0 : state.errors) != null); ++t) { + const key = keys[t]; + const sub = value[key]; + if (key === `__proto__` || key === `constructor`) { + valid = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Unsafe property name`); + continue; + } + if (keySpec !== null && !keySpec(key, state)) { + valid = false; + continue; + } + if (!spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) }))) { + valid = false; + continue; + } } + return valid; } + }); + } + function isDict(spec, opts = {}) { + return isRecord(spec, opts); + } + function isObject(props, { extra: extraSpec = null } = {}) { + const specKeys = Object.keys(props); + const validator = makeValidator({ + test: (value, state) => { + if (typeof value !== `object` || value === null) + return pushError(state, `Expected an object (got ${getPrintable(value)})`); + const keys = /* @__PURE__ */ new Set([...specKeys, ...Object.keys(value)]); + const extra = {}; + let valid = true; + for (const key of keys) { + if (key === `constructor` || key === `__proto__`) { + valid = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Unsafe property name`); + } else { + const spec = Object.prototype.hasOwnProperty.call(props, key) ? props[key] : void 0; + const sub = Object.prototype.hasOwnProperty.call(value, key) ? value[key] : void 0; + if (typeof spec !== `undefined`) { + valid = spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) })) && valid; + } else if (extraSpec === null) { + valid = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Extraneous property (got ${getPrintable(sub)})`); + } else { + Object.defineProperty(extra, key, { + enumerable: true, + get: () => sub, + set: makeSetter(value, key) + }); + } + } + if (!valid && (state === null || state === void 0 ? void 0 : state.errors) == null) { + break; + } + } + if (extraSpec !== null && (valid || (state === null || state === void 0 ? void 0 : state.errors) != null)) + valid = extraSpec(extra, state) && valid; + return valid; + } + }); + return Object.assign(validator, { + properties: props + }); + } + function isPartial(props) { + return isObject(props, { extra: isRecord(isUnknown()) }); + } + var isInstanceOf = (constructor) => makeValidator({ + test: (value, state) => { + if (!(value instanceof constructor)) + return pushError(state, `Expected an instance of ${constructor.name} (got ${getPrintable(value)})`); + return true; } - if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") { - keyNode = "[object Object]"; - } - keyNode = String(keyNode); - if (_result === null) { - _result = {}; - } - if (keyTag === "tag:yaml.org,2002:merge") { - if (Array.isArray(valueNode)) { - for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { - mergeMappings(state, _result, valueNode[index], overridableKeys); + }); + var isOneOf = (specs, { exclusive = false } = {}) => makeValidator({ + test: (value, state) => { + var _a, _b, _c; + const matches = []; + const errorBuffer = typeof (state === null || state === void 0 ? void 0 : state.errors) !== `undefined` ? [] : void 0; + for (let t = 0, T = specs.length; t < T; ++t) { + const subErrors = typeof (state === null || state === void 0 ? void 0 : state.errors) !== `undefined` ? [] : void 0; + const subCoercions = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? [] : void 0; + if (specs[t](value, Object.assign(Object.assign({}, state), { errors: subErrors, coercions: subCoercions, p: `${(_a = state === null || state === void 0 ? void 0 : state.p) !== null && _a !== void 0 ? _a : `.`}#${t + 1}` }))) { + matches.push([`#${t + 1}`, subCoercions]); + if (!exclusive) { + break; + } + } else { + errorBuffer === null || errorBuffer === void 0 ? void 0 : errorBuffer.push(subErrors[0]); } - } else { - mergeMappings(state, _result, valueNode, overridableKeys); } - } else { - if (!state.json && !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { - state.line = startLine || state.line; - state.position = startPos || state.position; - throwError(state, "duplicated mapping key"); + if (matches.length === 1) { + const [, subCoercions] = matches[0]; + if (typeof subCoercions !== `undefined`) + (_b = state === null || state === void 0 ? void 0 : state.coercions) === null || _b === void 0 ? void 0 : _b.push(...subCoercions); + return true; } - _result[keyNode] = valueNode; - delete overridableKeys[keyNode]; + if (matches.length > 1) + pushError(state, `Expected to match exactly a single predicate (matched ${matches.join(`, `)})`); + else + (_c = state === null || state === void 0 ? void 0 : state.errors) === null || _c === void 0 ? void 0 : _c.push(...errorBuffer); + return false; } - return _result; + }); + function makeTrait(value) { + return () => { + return value; + }; } - function readLineBreak(state) { - var ch; - ch = state.input.charCodeAt(state.position); - if (ch === 10) { - state.position++; - } else if (ch === 13) { - state.position++; - if (state.input.charCodeAt(state.position) === 10) { - state.position++; + function makeValidator({ test }) { + return makeTrait(test)(); + } + var TypeAssertionError = class extends Error { + constructor({ errors } = {}) { + let errorMessage = `Type mismatch`; + if (errors && errors.length > 0) { + errorMessage += ` +`; + for (const error of errors) { + errorMessage += ` +- ${error}`; + } } - } else { - throwError(state, "a line break is expected"); + super(errorMessage); + } + }; + function assert(val, validator) { + if (!validator(val)) { + throw new TypeAssertionError(); } - state.line += 1; - state.lineStart = state.position; } - function skipSeparationSpace(state, allowComments, checkIndent) { - var lineBreaks = 0, ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (allowComments && ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 10 && ch !== 13 && ch !== 0); + function assertWithErrors(val, validator) { + const errors = []; + if (!validator(val, { errors })) { + throw new TypeAssertionError({ errors }); + } + } + function softAssert(val, validator) { + } + function as(value, validator, { coerce = false, errors: storeErrors, throw: throws } = {}) { + const errors = storeErrors ? [] : void 0; + if (!coerce) { + if (validator(value, { errors })) { + return throws ? value : { value, errors: void 0 }; + } else if (!throws) { + return { value: void 0, errors: errors !== null && errors !== void 0 ? errors : true }; + } else { + throw new TypeAssertionError({ errors }); } - if (is_EOL(ch)) { - readLineBreak(state); - ch = state.input.charCodeAt(state.position); - lineBreaks++; - state.lineIndent = 0; - while (ch === 32) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } + } + const state = { value }; + const coercion = makeCoercionFn(state, `value`); + const coercions = []; + if (!validator(value, { errors, coercion, coercions })) { + if (!throws) { + return { value: void 0, errors: errors !== null && errors !== void 0 ? errors : true }; } else { - break; + throw new TypeAssertionError({ errors }); } } - if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { - throwWarning(state, "deficient indentation"); + for (const [, apply] of coercions) + apply(); + if (throws) { + return state.value; + } else { + return { value: state.value, errors: void 0 }; } - return lineBreaks; } - function testDocumentSeparator(state) { - var _position = state.position, ch; - ch = state.input.charCodeAt(_position); - if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) { - _position += 3; - ch = state.input.charCodeAt(_position); - if (ch === 0 || is_WS_OR_EOL(ch)) { + function fn2(validators, fn3) { + const isValidArgList = isTuple(validators); + return (...args2) => { + const check = isValidArgList(args2); + if (!check) + throw new TypeAssertionError(); + return fn3(...args2); + }; + } + function hasMinLength(length) { + return makeValidator({ + test: (value, state) => { + if (!(value.length >= length)) + return pushError(state, `Expected to have a length of at least ${length} elements (got ${value.length})`); return true; } - } - return false; + }); } - function writeFoldedLines(state, count) { - if (count === 1) { - state.result += " "; - } else if (count > 1) { - state.result += common.repeat("\n", count - 1); - } + function hasMaxLength(length) { + return makeValidator({ + test: (value, state) => { + if (!(value.length <= length)) + return pushError(state, `Expected to have a length of at most ${length} elements (got ${value.length})`); + return true; + } + }); } - function readPlainScalar(state, nodeIndent, withinFlowCollection) { - var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch; - ch = state.input.charCodeAt(state.position); - if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) { - return false; - } - if (ch === 63 || ch === 45) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { - return false; + function hasExactLength(length) { + return makeValidator({ + test: (value, state) => { + if (!(value.length === length)) + return pushError(state, `Expected to have a length of exactly ${length} elements (got ${value.length})`); + return true; } - } - state.kind = "scalar"; - state.result = ""; - captureStart = captureEnd = state.position; - hasPendingContent = false; - while (ch !== 0) { - if (ch === 58) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { - break; - } - } else if (ch === 35) { - preceding = state.input.charCodeAt(state.position - 1); - if (is_WS_OR_EOL(preceding)) { - break; - } - } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) { - break; - } else if (is_EOL(ch)) { - _line = state.line; - _lineStart = state.lineStart; - _lineIndent = state.lineIndent; - skipSeparationSpace(state, false, -1); - if (state.lineIndent >= nodeIndent) { - hasPendingContent = true; - ch = state.input.charCodeAt(state.position); - continue; - } else { - state.position = captureEnd; - state.line = _line; - state.lineStart = _lineStart; - state.lineIndent = _lineIndent; - break; + }); + } + function hasUniqueItems({ map } = {}) { + return makeValidator({ + test: (value, state) => { + const set = /* @__PURE__ */ new Set(); + const dup = /* @__PURE__ */ new Set(); + for (let t = 0, T = value.length; t < T; ++t) { + const sub = value[t]; + const key = typeof map !== `undefined` ? map(sub) : sub; + if (set.has(key)) { + if (dup.has(key)) + continue; + pushError(state, `Expected to contain unique elements; got a duplicate with ${getPrintable(value)}`); + dup.add(key); + } else { + set.add(key); + } } + return dup.size === 0; } - if (hasPendingContent) { - captureSegment(state, captureStart, captureEnd, false); - writeFoldedLines(state, state.line - _line); - captureStart = captureEnd = state.position; - hasPendingContent = false; + }); + } + function isNegative() { + return makeValidator({ + test: (value, state) => { + if (!(value <= 0)) + return pushError(state, `Expected to be negative (got ${value})`); + return true; } - if (!is_WHITE_SPACE(ch)) { - captureEnd = state.position + 1; + }); + } + function isPositive() { + return makeValidator({ + test: (value, state) => { + if (!(value >= 0)) + return pushError(state, `Expected to be positive (got ${value})`); + return true; } - ch = state.input.charCodeAt(++state.position); - } - captureSegment(state, captureStart, captureEnd, false); - if (state.result) { - return true; - } - state.kind = _kind; - state.result = _result; - return false; + }); } - function readSingleQuotedScalar(state, nodeIndent) { - var ch, captureStart, captureEnd; - ch = state.input.charCodeAt(state.position); - if (ch !== 39) { - return false; - } - state.kind = "scalar"; - state.result = ""; - state.position++; - captureStart = captureEnd = state.position; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 39) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - if (ch === 39) { - captureStart = state.position; - state.position++; - captureEnd = state.position; - } else { - return true; - } - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, "unexpected end of the document within a single quoted scalar"); - } else { - state.position++; - captureEnd = state.position; + function isAtLeast(n) { + return makeValidator({ + test: (value, state) => { + if (!(value >= n)) + return pushError(state, `Expected to be at least ${n} (got ${value})`); + return true; } - } - throwError(state, "unexpected end of the stream within a single quoted scalar"); + }); } - function readDoubleQuotedScalar(state, nodeIndent) { - var captureStart, captureEnd, hexLength, hexResult, tmp, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 34) { - return false; - } - state.kind = "scalar"; - state.result = ""; - state.position++; - captureStart = captureEnd = state.position; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 34) { - captureSegment(state, captureStart, state.position, true); - state.position++; + function isAtMost(n) { + return makeValidator({ + test: (value, state) => { + if (!(value <= n)) + return pushError(state, `Expected to be at most ${n} (got ${value})`); return true; - } else if (ch === 92) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - if (is_EOL(ch)) { - skipSeparationSpace(state, false, nodeIndent); - } else if (ch < 256 && simpleEscapeCheck[ch]) { - state.result += simpleEscapeMap[ch]; - state.position++; - } else if ((tmp = escapedHexLen(ch)) > 0) { - hexLength = tmp; - hexResult = 0; - for (; hexLength > 0; hexLength--) { - ch = state.input.charCodeAt(++state.position); - if ((tmp = fromHexCode(ch)) >= 0) { - hexResult = (hexResult << 4) + tmp; - } else { - throwError(state, "expected hexadecimal character"); - } - } - state.result += charFromCodepoint(hexResult); - state.position++; - } else { - throwError(state, "unknown escape sequence"); - } - captureStart = captureEnd = state.position; - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, "unexpected end of the document within a double quoted scalar"); - } else { - state.position++; - captureEnd = state.position; } - } - throwError(state, "unexpected end of the stream within a double quoted scalar"); + }); } - function readFlowCollection(state, nodeIndent) { - var readNext = true, _line, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = {}, keyNode, keyTag, valueNode, ch; - ch = state.input.charCodeAt(state.position); - if (ch === 91) { - terminator = 93; - isMapping = false; - _result = []; - } else if (ch === 123) { - terminator = 125; - isMapping = true; - _result = {}; - } else { - return false; - } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - ch = state.input.charCodeAt(++state.position); - while (ch !== 0) { - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if (ch === terminator) { - state.position++; - state.tag = _tag; - state.anchor = _anchor; - state.kind = isMapping ? "mapping" : "sequence"; - state.result = _result; + function isInInclusiveRange(a, b) { + return makeValidator({ + test: (value, state) => { + if (!(value >= a && value <= b)) + return pushError(state, `Expected to be in the [${a}; ${b}] range (got ${value})`); return true; - } else if (!readNext) { - throwError(state, "missed comma between flow collection entries"); } - keyTag = keyNode = valueNode = null; - isPair = isExplicitPair = false; - if (ch === 63) { - following = state.input.charCodeAt(state.position + 1); - if (is_WS_OR_EOL(following)) { - isPair = isExplicitPair = true; - state.position++; - skipSeparationSpace(state, true, nodeIndent); - } + }); + } + function isInExclusiveRange(a, b) { + return makeValidator({ + test: (value, state) => { + if (!(value >= a && value < b)) + return pushError(state, `Expected to be in the [${a}; ${b}[ range (got ${value})`); + return true; } - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - keyTag = state.tag; - keyNode = state.result; - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if ((isExplicitPair || state.line === _line) && ch === 58) { - isPair = true; - ch = state.input.charCodeAt(++state.position); - skipSeparationSpace(state, true, nodeIndent); - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - valueNode = state.result; + }); + } + function isInteger({ unsafe = false } = {}) { + return makeValidator({ + test: (value, state) => { + if (value !== Math.round(value)) + return pushError(state, `Expected to be an integer (got ${value})`); + if (!unsafe && !Number.isSafeInteger(value)) + return pushError(state, `Expected to be a safe integer (got ${value})`); + return true; } - if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); - } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); - } else { - _result.push(keyNode); + }); + } + function matchesRegExp(regExp) { + return makeValidator({ + test: (value, state) => { + if (!regExp.test(value)) + return pushError(state, `Expected to match the pattern ${regExp.toString()} (got ${getPrintable(value)})`); + return true; } - skipSeparationSpace(state, true, nodeIndent); - ch = state.input.charCodeAt(state.position); - if (ch === 44) { - readNext = true; - ch = state.input.charCodeAt(++state.position); - } else { - readNext = false; + }); + } + function isLowerCase() { + return makeValidator({ + test: (value, state) => { + if (value !== value.toLowerCase()) + return pushError(state, `Expected to be all-lowercase (got ${value})`); + return true; } - } - throwError(state, "unexpected end of the stream within a flow collection"); + }); } - function readBlockScalar(state, nodeIndent) { - var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch; - ch = state.input.charCodeAt(state.position); - if (ch === 124) { - folding = false; - } else if (ch === 62) { - folding = true; - } else { - return false; - } - state.kind = "scalar"; - state.result = ""; - while (ch !== 0) { - ch = state.input.charCodeAt(++state.position); - if (ch === 43 || ch === 45) { - if (CHOMPING_CLIP === chomping) { - chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP; - } else { - throwError(state, "repeat of a chomping mode identifier"); - } - } else if ((tmp = fromDecimalCode(ch)) >= 0) { - if (tmp === 0) { - throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one"); - } else if (!detectedIndent) { - textIndent = nodeIndent + tmp - 1; - detectedIndent = true; - } else { - throwError(state, "repeat of an indentation width identifier"); - } - } else { - break; + function isUpperCase() { + return makeValidator({ + test: (value, state) => { + if (value !== value.toUpperCase()) + return pushError(state, `Expected to be all-uppercase (got ${value})`); + return true; } - } - if (is_WHITE_SPACE(ch)) { - do { - ch = state.input.charCodeAt(++state.position); - } while (is_WHITE_SPACE(ch)); - if (ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (!is_EOL(ch) && ch !== 0); + }); + } + function isUUID4() { + return makeValidator({ + test: (value, state) => { + if (!uuid4RegExp.test(value)) + return pushError(state, `Expected to be a valid UUID v4 (got ${getPrintable(value)})`); + return true; } - } - while (ch !== 0) { - readLineBreak(state); - state.lineIndent = 0; - ch = state.input.charCodeAt(state.position); - while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); + }); + } + function isISO8601() { + return makeValidator({ + test: (value, state) => { + if (!iso8601RegExp.test(value)) + return pushError(state, `Expected to be a valid ISO 8601 date string (got ${getPrintable(value)})`); + return true; } - if (!detectedIndent && state.lineIndent > textIndent) { - textIndent = state.lineIndent; + }); + } + function isHexColor({ alpha = false }) { + return makeValidator({ + test: (value, state) => { + const res = alpha ? colorStringRegExp.test(value) : colorStringAlphaRegExp.test(value); + if (!res) + return pushError(state, `Expected to be a valid hexadecimal color string (got ${getPrintable(value)})`); + return true; } - if (is_EOL(ch)) { - emptyLines++; - continue; + }); + } + function isBase64() { + return makeValidator({ + test: (value, state) => { + if (!base64RegExp.test(value)) + return pushError(state, `Expected to be a valid base 64 string (got ${getPrintable(value)})`); + return true; } - if (state.lineIndent < textIndent) { - if (chomping === CHOMPING_KEEP) { - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); - } else if (chomping === CHOMPING_CLIP) { - if (didReadContent) { - state.result += "\n"; - } + }); + } + function isJSON(spec = isUnknown()) { + return makeValidator({ + test: (value, state) => { + let data; + try { + data = JSON.parse(value); + } catch (_a) { + return pushError(state, `Expected to be a valid JSON string (got ${getPrintable(value)})`); } - break; + return spec(data, state); } - if (folding) { - if (is_WHITE_SPACE(ch)) { - atMoreIndented = true; - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); - } else if (atMoreIndented) { - atMoreIndented = false; - state.result += common.repeat("\n", emptyLines + 1); - } else if (emptyLines === 0) { - if (didReadContent) { - state.result += " "; + }); + } + function cascade(spec, ...followups) { + const resolvedFollowups = Array.isArray(followups[0]) ? followups[0] : followups; + return makeValidator({ + test: (value, state) => { + var _a, _b; + const context = { value }; + const subCoercion = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? makeCoercionFn(context, `value`) : void 0; + const subCoercions = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? [] : void 0; + if (!spec(value, Object.assign(Object.assign({}, state), { coercion: subCoercion, coercions: subCoercions }))) + return false; + const reverts = []; + if (typeof subCoercions !== `undefined`) + for (const [, coercion] of subCoercions) + reverts.push(coercion()); + try { + if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) { + if (context.value !== value) { + if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`) + return pushError(state, `Unbound coercion result`); + state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, context.value)]); + } + (_b = state === null || state === void 0 ? void 0 : state.coercions) === null || _b === void 0 ? void 0 : _b.push(...subCoercions); + } + return resolvedFollowups.every((spec2) => { + return spec2(context.value, state); + }); + } finally { + for (const revert of reverts) { + revert(); } - } else { - state.result += common.repeat("\n", emptyLines); } - } else { - state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); } - didReadContent = true; - detectedIndent = true; - emptyLines = 0; - captureStart = state.position; - while (!is_EOL(ch) && ch !== 0) { - ch = state.input.charCodeAt(++state.position); + }); + } + function applyCascade(spec, ...followups) { + const resolvedFollowups = Array.isArray(followups[0]) ? followups[0] : followups; + return cascade(spec, resolvedFollowups); + } + function isOptional(spec) { + return makeValidator({ + test: (value, state) => { + if (typeof value === `undefined`) + return true; + return spec(value, state); } - captureSegment(state, captureStart, state.position, false); - } - return true; + }); } - function readBlockSequence(state, nodeIndent) { - var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } - ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - if (ch !== 45) { - break; + function isNullable(spec) { + return makeValidator({ + test: (value, state) => { + if (value === null) + return true; + return spec(value, state); } - following = state.input.charCodeAt(state.position + 1); - if (!is_WS_OR_EOL(following)) { - break; + }); + } + var checks = { + missing: (keys, key) => keys.has(key), + undefined: (keys, key, value) => keys.has(key) && typeof value[key] !== `undefined`, + nil: (keys, key, value) => keys.has(key) && value[key] != null, + falsy: (keys, key, value) => keys.has(key) && !!value[key] + }; + function hasRequiredKeys(requiredKeys, options) { + var _a; + const requiredSet = new Set(requiredKeys); + const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"]; + return makeValidator({ + test: (value, state) => { + const keys = new Set(Object.keys(value)); + const problems = []; + for (const key of requiredSet) + if (!check(keys, key, value)) + problems.push(key); + if (problems.length > 0) + return pushError(state, `Missing required ${plural(problems.length, `property`, `properties`)} ${getPrintableArray(problems, `and`)}`); + return true; } - detected = true; - state.position++; - if (skipSeparationSpace(state, true, -1)) { - if (state.lineIndent <= nodeIndent) { - _result.push(null); - ch = state.input.charCodeAt(state.position); - continue; - } + }); + } + function hasAtLeastOneKey(requiredKeys, options) { + var _a; + const requiredSet = new Set(requiredKeys); + const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"]; + return makeValidator({ + test: (value, state) => { + const keys = Object.keys(value); + const valid = keys.some((key) => check(requiredSet, key, value)); + if (!valid) + return pushError(state, `Missing at least one property from ${getPrintableArray(Array.from(requiredSet), `or`)}`); + return true; } - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); - _result.push(state.result); - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { - throwError(state, "bad indentation of a sequence entry"); - } else if (state.lineIndent < nodeIndent) { - break; + }); + } + function hasForbiddenKeys(forbiddenKeys, options) { + var _a; + const forbiddenSet = new Set(forbiddenKeys); + const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"]; + return makeValidator({ + test: (value, state) => { + const keys = new Set(Object.keys(value)); + const problems = []; + for (const key of forbiddenSet) + if (check(keys, key, value)) + problems.push(key); + if (problems.length > 0) + return pushError(state, `Forbidden ${plural(problems.length, `property`, `properties`)} ${getPrintableArray(problems, `and`)}`); + return true; + } + }); + } + function hasMutuallyExclusiveKeys(exclusiveKeys, options) { + var _a; + const exclusiveSet = new Set(exclusiveKeys); + const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"]; + return makeValidator({ + test: (value, state) => { + const keys = new Set(Object.keys(value)); + const used = []; + for (const key of exclusiveSet) + if (check(keys, key, value)) + used.push(key); + if (used.length > 1) + return pushError(state, `Mutually exclusive properties ${getPrintableArray(used, `and`)}`); + return true; + } + }); + } + (function(KeyRelationship) { + KeyRelationship["Forbids"] = "Forbids"; + KeyRelationship["Requires"] = "Requires"; + })(exports2.KeyRelationship || (exports2.KeyRelationship = {})); + var keyRelationships = { + [exports2.KeyRelationship.Forbids]: { + expect: false, + message: `forbids using` + }, + [exports2.KeyRelationship.Requires]: { + expect: true, + message: `requires using` + } + }; + function hasKeyRelationship(subject, relationship, others, { ignore = [] } = {}) { + const skipped = new Set(ignore); + const otherSet = new Set(others); + const spec = keyRelationships[relationship]; + const conjunction = relationship === exports2.KeyRelationship.Forbids ? `or` : `and`; + return makeValidator({ + test: (value, state) => { + const keys = new Set(Object.keys(value)); + if (!keys.has(subject) || skipped.has(value[subject])) + return true; + const problems = []; + for (const key of otherSet) + if ((keys.has(key) && !skipped.has(value[key])) !== spec.expect) + problems.push(key); + if (problems.length >= 1) + return pushError(state, `Property "${subject}" ${spec.message} ${plural(problems.length, `property`, `properties`)} ${getPrintableArray(problems, conjunction)}`); + return true; } + }); + } + exports2.TypeAssertionError = TypeAssertionError; + exports2.applyCascade = applyCascade; + exports2.as = as; + exports2.assert = assert; + exports2.assertWithErrors = assertWithErrors; + exports2.cascade = cascade; + exports2.fn = fn2; + exports2.hasAtLeastOneKey = hasAtLeastOneKey; + exports2.hasExactLength = hasExactLength; + exports2.hasForbiddenKeys = hasForbiddenKeys; + exports2.hasKeyRelationship = hasKeyRelationship; + exports2.hasMaxLength = hasMaxLength; + exports2.hasMinLength = hasMinLength; + exports2.hasMutuallyExclusiveKeys = hasMutuallyExclusiveKeys; + exports2.hasRequiredKeys = hasRequiredKeys; + exports2.hasUniqueItems = hasUniqueItems; + exports2.isArray = isArray; + exports2.isAtLeast = isAtLeast; + exports2.isAtMost = isAtMost; + exports2.isBase64 = isBase64; + exports2.isBoolean = isBoolean; + exports2.isDate = isDate; + exports2.isDict = isDict; + exports2.isEnum = isEnum; + exports2.isHexColor = isHexColor; + exports2.isISO8601 = isISO8601; + exports2.isInExclusiveRange = isInExclusiveRange; + exports2.isInInclusiveRange = isInInclusiveRange; + exports2.isInstanceOf = isInstanceOf; + exports2.isInteger = isInteger; + exports2.isJSON = isJSON; + exports2.isLiteral = isLiteral; + exports2.isLowerCase = isLowerCase; + exports2.isMap = isMap; + exports2.isNegative = isNegative; + exports2.isNullable = isNullable; + exports2.isNumber = isNumber; + exports2.isObject = isObject; + exports2.isOneOf = isOneOf; + exports2.isOptional = isOptional; + exports2.isPartial = isPartial; + exports2.isPositive = isPositive; + exports2.isRecord = isRecord; + exports2.isSet = isSet; + exports2.isString = isString; + exports2.isTuple = isTuple; + exports2.isUUID4 = isUUID4; + exports2.isUnknown = isUnknown; + exports2.isUpperCase = isUpperCase; + exports2.makeTrait = makeTrait; + exports2.makeValidator = makeValidator; + exports2.matchesRegExp = matchesRegExp; + exports2.softAssert = softAssert; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/Command.js +var require_Command = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/Command.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + function _interopNamespace(e) { + if (e && e.__esModule) + return e; + var n = /* @__PURE__ */ Object.create(null); + if (e) { + Object.keys(e).forEach(function(k) { + if (k !== "default") { + var d = Object.getOwnPropertyDescriptor(e, k); + Object.defineProperty(n, k, d.get ? d : { + enumerable: true, + get: function() { + return e[k]; + } + }); + } + }); } - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = "sequence"; - state.result = _result; - return true; + n["default"] = e; + return Object.freeze(n); + } + var Command = class { + constructor() { + this.help = false; + } + /** + * Defines the usage information for the given command. + */ + static Usage(usage) { + return usage; + } + /** + * Standard error handler which will simply rethrow the error. Can be used + * to add custom logic to handle errors from the command or simply return + * the parent class error handling. + */ + async catch(error) { + throw error; } - return false; + async validateAndExecute() { + const commandClass = this.constructor; + const cascade = commandClass.schema; + if (Array.isArray(cascade)) { + const { isDict, isUnknown, applyCascade } = await Promise.resolve().then(function() { + return /* @__PURE__ */ _interopNamespace(require_lib123()); + }); + const schema = applyCascade(isDict(isUnknown()), cascade); + const errors = []; + const coercions = []; + const check = schema(this, { errors, coercions }); + if (!check) + throw utils.formatError(`Invalid option schema`, errors); + for (const [, op] of coercions) { + op(); + } + } else if (cascade != null) { + throw new Error(`Invalid command schema`); + } + const exitCode = await this.execute(); + if (typeof exitCode !== `undefined`) { + return exitCode; + } else { + return 0; + } + } + }; + Command.isOption = utils.isOptionSymbol; + Command.Default = []; + exports2.Command = Command; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/format.js +var require_format2 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/format.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var MAX_LINE_LENGTH = 80; + var richLine = Array(MAX_LINE_LENGTH).fill(`\u2501`); + for (let t = 0; t <= 24; ++t) + richLine[richLine.length - t] = `\x1B[38;5;${232 + t}m\u2501`; + var richFormat = { + header: (str) => `\x1B[1m\u2501\u2501\u2501 ${str}${str.length < MAX_LINE_LENGTH - 5 ? ` ${richLine.slice(str.length + 5).join(``)}` : `:`}\x1B[0m`, + bold: (str) => `\x1B[1m${str}\x1B[22m`, + error: (str) => `\x1B[31m\x1B[1m${str}\x1B[22m\x1B[39m`, + code: (str) => `\x1B[36m${str}\x1B[39m` + }; + var textFormat = { + header: (str) => str, + bold: (str) => str, + error: (str) => str, + code: (str) => str + }; + function dedent(text) { + const lines = text.split(` +`); + const nonEmptyLines = lines.filter((line) => line.match(/\S/)); + const indent = nonEmptyLines.length > 0 ? nonEmptyLines.reduce((minLength, line) => Math.min(minLength, line.length - line.trimStart().length), Number.MAX_VALUE) : 0; + return lines.map((line) => line.slice(indent).trimRight()).join(` +`); } - function readBlockMapping(state, nodeIndent, flowIndent) { - var following, allowCompact, _line, _pos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = {}, keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; + function formatMarkdownish(text, { format, paragraphs }) { + text = text.replace(/\r\n?/g, ` +`); + text = dedent(text); + text = text.replace(/^\n+|\n+$/g, ``); + text = text.replace(/^(\s*)-([^\n]*?)\n+/gm, `$1-$2 + +`); + text = text.replace(/\n(\n)?\n*/g, ($0, $1) => $1 ? $1 : ` `); + if (paragraphs) { + text = text.split(/\n/).map((paragraph) => { + const bulletMatch = paragraph.match(/^\s*[*-][\t ]+(.*)/); + if (!bulletMatch) + return paragraph.match(/(.{1,80})(?: |$)/g).join(` +`); + const indent = paragraph.length - paragraph.trimStart().length; + return bulletMatch[1].match(new RegExp(`(.{1,${78 - indent}})(?: |$)`, `g`)).map((line, index) => { + return ` `.repeat(indent) + (index === 0 ? `- ` : ` `) + line; + }).join(` +`); + }).join(` + +`); } - ch = state.input.charCodeAt(state.position); - while (ch !== 0) { - following = state.input.charCodeAt(state.position + 1); - _line = state.line; - _pos = state.position; - if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) { - if (ch === 63) { - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } - detected = true; - atExplicitKey = true; - allowCompact = true; - } else if (atExplicitKey) { - atExplicitKey = false; - allowCompact = true; - } else { - throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"); + text = text.replace(/(`+)((?:.|[\n])*?)\1/g, ($0, $1, $2) => { + return format.code($1 + $2 + $1); + }); + text = text.replace(/(\*\*)((?:.|[\n])*?)\1/g, ($0, $1, $2) => { + return format.bold($1 + $2 + $1); + }); + return text ? `${text} +` : ``; + } + exports2.formatMarkdownish = formatMarkdownish; + exports2.richFormat = richFormat; + exports2.textFormat = textFormat; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/core.js +var require_core7 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/core.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var constants = require_constants11(); + var errors = require_errors6(); + function debug(str) { + if (constants.DEBUG) { + console.log(str); + } + } + var basicHelpState = { + candidateUsage: null, + requiredOptions: [], + errorMessage: null, + ignoreOptions: false, + path: [], + positionals: [], + options: [], + remainder: null, + selectedIndex: constants.HELP_COMMAND_INDEX + }; + function makeStateMachine() { + return { + nodes: [makeNode(), makeNode(), makeNode()] + }; + } + function makeAnyOfMachine(inputs) { + const output = makeStateMachine(); + const heads = []; + let offset = output.nodes.length; + for (const input of inputs) { + heads.push(offset); + for (let t = 0; t < input.nodes.length; ++t) + if (!isTerminalNode(t)) + output.nodes.push(cloneNode(input.nodes[t], offset)); + offset += input.nodes.length - 2; + } + for (const head of heads) + registerShortcut(output, constants.NODE_INITIAL, head); + return output; + } + function injectNode(machine, node) { + machine.nodes.push(node); + return machine.nodes.length - 1; + } + function simplifyMachine(input) { + const visited = /* @__PURE__ */ new Set(); + const process2 = (node) => { + if (visited.has(node)) + return; + visited.add(node); + const nodeDef = input.nodes[node]; + for (const transitions of Object.values(nodeDef.statics)) + for (const { to } of transitions) + process2(to); + for (const [, { to }] of nodeDef.dynamics) + process2(to); + for (const { to } of nodeDef.shortcuts) + process2(to); + const shortcuts = new Set(nodeDef.shortcuts.map(({ to }) => to)); + while (nodeDef.shortcuts.length > 0) { + const { to } = nodeDef.shortcuts.shift(); + const toDef = input.nodes[to]; + for (const [segment, transitions] of Object.entries(toDef.statics)) { + const store = !Object.prototype.hasOwnProperty.call(nodeDef.statics, segment) ? nodeDef.statics[segment] = [] : nodeDef.statics[segment]; + for (const transition of transitions) { + if (!store.some(({ to: to2 }) => transition.to === to2)) { + store.push(transition); + } + } + } + for (const [test, transition] of toDef.dynamics) + if (!nodeDef.dynamics.some(([otherTest, { to: to2 }]) => test === otherTest && transition.to === to2)) + nodeDef.dynamics.push([test, transition]); + for (const transition of toDef.shortcuts) { + if (!shortcuts.has(transition.to)) { + nodeDef.shortcuts.push(transition); + shortcuts.add(transition.to); + } + } + } + }; + process2(constants.NODE_INITIAL); + } + function debugMachine(machine, { prefix = `` } = {}) { + if (constants.DEBUG) { + debug(`${prefix}Nodes are:`); + for (let t = 0; t < machine.nodes.length; ++t) { + debug(`${prefix} ${t}: ${JSON.stringify(machine.nodes[t])}`); + } + } + } + function runMachineInternal(machine, input, partial = false) { + debug(`Running a vm on ${JSON.stringify(input)}`); + let branches = [{ node: constants.NODE_INITIAL, state: { + candidateUsage: null, + requiredOptions: [], + errorMessage: null, + ignoreOptions: false, + options: [], + path: [], + positionals: [], + remainder: null, + selectedIndex: null + } }]; + debugMachine(machine, { prefix: ` ` }); + const tokens = [constants.START_OF_INPUT, ...input]; + for (let t = 0; t < tokens.length; ++t) { + const segment = tokens[t]; + debug(` Processing ${JSON.stringify(segment)}`); + const nextBranches = []; + for (const { node, state } of branches) { + debug(` Current node is ${node}`); + const nodeDef = machine.nodes[node]; + if (node === constants.NODE_ERRORED) { + nextBranches.push({ node, state }); + continue; } - state.position += 1; - ch = following; - } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - if (state.line === _line) { - ch = state.input.charCodeAt(state.position); - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (ch === 58) { - ch = state.input.charCodeAt(++state.position); - if (!is_WS_OR_EOL(ch)) { - throwError(state, "a whitespace character is expected after the key-value separator within a block mapping"); - } - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; + console.assert(nodeDef.shortcuts.length === 0, `Shortcuts should have been eliminated by now`); + const hasExactMatch = Object.prototype.hasOwnProperty.call(nodeDef.statics, segment); + if (!partial || t < tokens.length - 1 || hasExactMatch) { + if (hasExactMatch) { + const transitions = nodeDef.statics[segment]; + for (const { to, reducer } of transitions) { + nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute(reducers, reducer, state, segment) : state }); + debug(` Static transition to ${to} found`); } - detected = true; - atExplicitKey = false; - allowCompact = false; - keyTag = state.tag; - keyNode = state.result; - } else if (detected) { - throwError(state, "can not read an implicit mapping pair; a colon is missed"); } else { - state.tag = _tag; - state.anchor = _anchor; - return true; + debug(` No static transition found`); } - } else if (detected) { - throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key"); } else { - state.tag = _tag; - state.anchor = _anchor; - return true; - } - } else { - break; - } - if (state.line === _line || state.lineIndent > nodeIndent) { - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { - if (atExplicitKey) { - keyNode = state.result; - } else { - valueNode = state.result; + let hasMatches = false; + for (const candidate of Object.keys(nodeDef.statics)) { + if (!candidate.startsWith(segment)) + continue; + if (segment === candidate) { + for (const { to, reducer } of nodeDef.statics[candidate]) { + nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute(reducers, reducer, state, segment) : state }); + debug(` Static transition to ${to} found`); + } + } else { + for (const { to } of nodeDef.statics[candidate]) { + nextBranches.push({ node: to, state: { ...state, remainder: candidate.slice(segment.length) } }); + debug(` Static transition to ${to} found (partial match)`); + } + } + hasMatches = true; + } + if (!hasMatches) { + debug(` No partial static transition found`); } } - if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); - keyTag = keyNode = valueNode = null; + if (segment !== constants.END_OF_INPUT) { + for (const [test, { to, reducer }] of nodeDef.dynamics) { + if (execute(tests, test, state, segment)) { + nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute(reducers, reducer, state, segment) : state }); + debug(` Dynamic transition to ${to} found (via ${test})`); + } + } } - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); } - if (state.lineIndent > nodeIndent && ch !== 0) { - throwError(state, "bad indentation of a mapping entry"); - } else if (state.lineIndent < nodeIndent) { - break; + if (nextBranches.length === 0 && segment === constants.END_OF_INPUT && input.length === 1) { + return [{ + node: constants.NODE_INITIAL, + state: basicHelpState + }]; } + if (nextBranches.length === 0) { + throw new errors.UnknownSyntaxError(input, branches.filter(({ node }) => { + return node !== constants.NODE_ERRORED; + }).map(({ state }) => { + return { usage: state.candidateUsage, reason: null }; + })); + } + if (nextBranches.every(({ node }) => node === constants.NODE_ERRORED)) { + throw new errors.UnknownSyntaxError(input, nextBranches.map(({ state }) => { + return { usage: state.candidateUsage, reason: state.errorMessage }; + })); + } + branches = trimSmallerBranches(nextBranches); } - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); + if (branches.length > 0) { + debug(` Results:`); + for (const branch of branches) { + debug(` - ${branch.node} -> ${JSON.stringify(branch.state)}`); + } + } else { + debug(` No results`); } - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = "mapping"; - state.result = _result; + return branches; + } + function checkIfNodeIsFinished(node, state) { + if (state.selectedIndex !== null) + return true; + if (Object.prototype.hasOwnProperty.call(node.statics, constants.END_OF_INPUT)) { + for (const { to } of node.statics[constants.END_OF_INPUT]) + if (to === constants.NODE_SUCCESS) + return true; } - return detected; + return false; } - function readTagProperty(state) { - var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 33) - return false; - if (state.tag !== null) { - throwError(state, "duplication of a tag property"); + function suggestMachine(machine, input, partial) { + const prefix = partial && input.length > 0 ? [``] : []; + const branches = runMachineInternal(machine, input, partial); + const suggestions = []; + const suggestionsJson = /* @__PURE__ */ new Set(); + const traverseSuggestion = (suggestion, node, skipFirst = true) => { + let nextNodes = [node]; + while (nextNodes.length > 0) { + const currentNodes = nextNodes; + nextNodes = []; + for (const node2 of currentNodes) { + const nodeDef = machine.nodes[node2]; + const keys = Object.keys(nodeDef.statics); + for (const key of Object.keys(nodeDef.statics)) { + const segment = keys[0]; + for (const { to, reducer } of nodeDef.statics[segment]) { + if (reducer !== `pushPath`) + continue; + if (!skipFirst) + suggestion.push(segment); + nextNodes.push(to); + } + } + } + skipFirst = false; + } + const json = JSON.stringify(suggestion); + if (suggestionsJson.has(json)) + return; + suggestions.push(suggestion); + suggestionsJson.add(json); + }; + for (const { node, state } of branches) { + if (state.remainder !== null) { + traverseSuggestion([state.remainder], node); + continue; + } + const nodeDef = machine.nodes[node]; + const isFinished = checkIfNodeIsFinished(nodeDef, state); + for (const [candidate, transitions] of Object.entries(nodeDef.statics)) + if (isFinished && candidate !== constants.END_OF_INPUT || !candidate.startsWith(`-`) && transitions.some(({ reducer }) => reducer === `pushPath`)) + traverseSuggestion([...prefix, candidate], node); + if (!isFinished) + continue; + for (const [test, { to }] of nodeDef.dynamics) { + if (to === constants.NODE_ERRORED) + continue; + const tokens = suggest(test, state); + if (tokens === null) + continue; + for (const token of tokens) { + traverseSuggestion([...prefix, token], node); + } + } } - ch = state.input.charCodeAt(++state.position); - if (ch === 60) { - isVerbatim = true; - ch = state.input.charCodeAt(++state.position); - } else if (ch === 33) { - isNamed = true; - tagHandle = "!!"; - ch = state.input.charCodeAt(++state.position); + return [...suggestions].sort(); + } + function runMachine(machine, input) { + const branches = runMachineInternal(machine, [...input, constants.END_OF_INPUT]); + return selectBestState(input, branches.map(({ state }) => { + return state; + })); + } + function trimSmallerBranches(branches) { + let maxPathSize = 0; + for (const { state } of branches) + if (state.path.length > maxPathSize) + maxPathSize = state.path.length; + return branches.filter(({ state }) => { + return state.path.length === maxPathSize; + }); + } + function selectBestState(input, states) { + const terminalStates = states.filter((state) => { + return state.selectedIndex !== null; + }); + if (terminalStates.length === 0) + throw new Error(); + const requiredOptionsSetStates = terminalStates.filter((state) => state.requiredOptions.every((names) => names.some((name) => state.options.find((opt) => opt.name === name)))); + if (requiredOptionsSetStates.length === 0) { + throw new errors.UnknownSyntaxError(input, terminalStates.map((state) => ({ + usage: state.candidateUsage, + reason: null + }))); + } + let maxPathSize = 0; + for (const state of requiredOptionsSetStates) + if (state.path.length > maxPathSize) + maxPathSize = state.path.length; + const bestPathBranches = requiredOptionsSetStates.filter((state) => { + return state.path.length === maxPathSize; + }); + const getPositionalCount = (state) => state.positionals.filter(({ extra }) => { + return !extra; + }).length + state.options.length; + const statesWithPositionalCount = bestPathBranches.map((state) => { + return { state, positionalCount: getPositionalCount(state) }; + }); + let maxPositionalCount = 0; + for (const { positionalCount } of statesWithPositionalCount) + if (positionalCount > maxPositionalCount) + maxPositionalCount = positionalCount; + const bestPositionalStates = statesWithPositionalCount.filter(({ positionalCount }) => { + return positionalCount === maxPositionalCount; + }).map(({ state }) => { + return state; + }); + const fixedStates = aggregateHelpStates(bestPositionalStates); + if (fixedStates.length > 1) + throw new errors.AmbiguousSyntaxError(input, fixedStates.map((state) => state.candidateUsage)); + return fixedStates[0]; + } + function aggregateHelpStates(states) { + const notHelps = []; + const helps = []; + for (const state of states) { + if (state.selectedIndex === constants.HELP_COMMAND_INDEX) { + helps.push(state); + } else { + notHelps.push(state); + } + } + if (helps.length > 0) { + notHelps.push({ + ...basicHelpState, + path: findCommonPrefix(...helps.map((state) => state.path)), + options: helps.reduce((options, state) => options.concat(state.options), []) + }); + } + return notHelps; + } + function findCommonPrefix(firstPath, secondPath, ...rest) { + if (secondPath === void 0) + return Array.from(firstPath); + return findCommonPrefix(firstPath.filter((segment, i) => segment === secondPath[i]), ...rest); + } + function makeNode() { + return { + dynamics: [], + shortcuts: [], + statics: {} + }; + } + function isTerminalNode(node) { + return node === constants.NODE_SUCCESS || node === constants.NODE_ERRORED; + } + function cloneTransition(input, offset = 0) { + return { + to: !isTerminalNode(input.to) ? input.to > 2 ? input.to + offset - 2 : input.to + offset : input.to, + reducer: input.reducer + }; + } + function cloneNode(input, offset = 0) { + const output = makeNode(); + for (const [test, transition] of input.dynamics) + output.dynamics.push([test, cloneTransition(transition, offset)]); + for (const transition of input.shortcuts) + output.shortcuts.push(cloneTransition(transition, offset)); + for (const [segment, transitions] of Object.entries(input.statics)) + output.statics[segment] = transitions.map((transition) => cloneTransition(transition, offset)); + return output; + } + function registerDynamic(machine, from, test, to, reducer) { + machine.nodes[from].dynamics.push([ + test, + { to, reducer } + ]); + } + function registerShortcut(machine, from, to, reducer) { + machine.nodes[from].shortcuts.push({ to, reducer }); + } + function registerStatic(machine, from, test, to, reducer) { + const store = !Object.prototype.hasOwnProperty.call(machine.nodes[from].statics, test) ? machine.nodes[from].statics[test] = [] : machine.nodes[from].statics[test]; + store.push({ to, reducer }); + } + function execute(store, callback, state, segment) { + if (Array.isArray(callback)) { + const [name, ...args2] = callback; + return store[name](state, segment, ...args2); } else { - tagHandle = "!"; + return store[callback](state, segment); } - _position = state.position; - if (isVerbatim) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0 && ch !== 62); - if (state.position < state.length) { - tagName = state.input.slice(_position, state.position); - ch = state.input.charCodeAt(++state.position); + } + function suggest(callback, state) { + const fn2 = Array.isArray(callback) ? tests[callback[0]] : tests[callback]; + if (typeof fn2.suggest === `undefined`) + return null; + const args2 = Array.isArray(callback) ? callback.slice(1) : []; + return fn2.suggest(state, ...args2); + } + var tests = { + always: () => { + return true; + }, + isOptionLike: (state, segment) => { + return !state.ignoreOptions && (segment !== `-` && segment.startsWith(`-`)); + }, + isNotOptionLike: (state, segment) => { + return state.ignoreOptions || segment === `-` || !segment.startsWith(`-`); + }, + isOption: (state, segment, name, hidden) => { + return !state.ignoreOptions && segment === name; + }, + isBatchOption: (state, segment, names) => { + return !state.ignoreOptions && constants.BATCH_REGEX.test(segment) && [...segment.slice(1)].every((name) => names.includes(`-${name}`)); + }, + isBoundOption: (state, segment, names, options) => { + const optionParsing = segment.match(constants.BINDING_REGEX); + return !state.ignoreOptions && !!optionParsing && constants.OPTION_REGEX.test(optionParsing[1]) && names.includes(optionParsing[1]) && options.filter((opt) => opt.names.includes(optionParsing[1])).every((opt) => opt.allowBinding); + }, + isNegatedOption: (state, segment, name) => { + return !state.ignoreOptions && segment === `--no-${name.slice(2)}`; + }, + isHelp: (state, segment) => { + return !state.ignoreOptions && constants.HELP_REGEX.test(segment); + }, + isUnsupportedOption: (state, segment, names) => { + return !state.ignoreOptions && segment.startsWith(`-`) && constants.OPTION_REGEX.test(segment) && !names.includes(segment); + }, + isInvalidOption: (state, segment) => { + return !state.ignoreOptions && segment.startsWith(`-`) && !constants.OPTION_REGEX.test(segment); + } + }; + tests.isOption.suggest = (state, name, hidden = true) => { + return !hidden ? [name] : null; + }; + var reducers = { + setCandidateState: (state, segment, candidateState) => { + return { ...state, ...candidateState }; + }, + setSelectedIndex: (state, segment, index) => { + return { ...state, selectedIndex: index }; + }, + pushBatch: (state, segment) => { + return { ...state, options: state.options.concat([...segment.slice(1)].map((name) => ({ name: `-${name}`, value: true }))) }; + }, + pushBound: (state, segment) => { + const [, name, value] = segment.match(constants.BINDING_REGEX); + return { ...state, options: state.options.concat({ name, value }) }; + }, + pushPath: (state, segment) => { + return { ...state, path: state.path.concat(segment) }; + }, + pushPositional: (state, segment) => { + return { ...state, positionals: state.positionals.concat({ value: segment, extra: false }) }; + }, + pushExtra: (state, segment) => { + return { ...state, positionals: state.positionals.concat({ value: segment, extra: true }) }; + }, + pushExtraNoLimits: (state, segment) => { + return { ...state, positionals: state.positionals.concat({ value: segment, extra: NoLimits }) }; + }, + pushTrue: (state, segment, name = segment) => { + return { ...state, options: state.options.concat({ name: segment, value: true }) }; + }, + pushFalse: (state, segment, name = segment) => { + return { ...state, options: state.options.concat({ name, value: false }) }; + }, + pushUndefined: (state, segment) => { + return { ...state, options: state.options.concat({ name: segment, value: void 0 }) }; + }, + pushStringValue: (state, segment) => { + var _a; + const copy = { ...state, options: [...state.options] }; + const lastOption = state.options[state.options.length - 1]; + lastOption.value = ((_a = lastOption.value) !== null && _a !== void 0 ? _a : []).concat([segment]); + return copy; + }, + setStringValue: (state, segment) => { + const copy = { ...state, options: [...state.options] }; + const lastOption = state.options[state.options.length - 1]; + lastOption.value = segment; + return copy; + }, + inhibateOptions: (state) => { + return { ...state, ignoreOptions: true }; + }, + useHelp: (state, segment, command) => { + const [ + , + /* name */ + , + index + ] = segment.match(constants.HELP_REGEX); + if (typeof index !== `undefined`) { + return { ...state, options: [{ name: `-c`, value: String(command) }, { name: `-i`, value: index }] }; } else { - throwError(state, "unexpected end of the stream within a verbatim tag"); + return { ...state, options: [{ name: `-c`, value: String(command) }] }; } - } else { - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - if (ch === 33) { - if (!isNamed) { - tagHandle = state.input.slice(_position - 1, state.position + 1); - if (!PATTERN_TAG_HANDLE.test(tagHandle)) { - throwError(state, "named tag handle cannot contain such characters"); - } - isNamed = true; - _position = state.position + 1; + }, + setError: (state, segment, errorMessage) => { + if (segment === constants.END_OF_INPUT) { + return { ...state, errorMessage: `${errorMessage}.` }; + } else { + return { ...state, errorMessage: `${errorMessage} ("${segment}").` }; + } + }, + setOptionArityError: (state, segment) => { + const lastOption = state.options[state.options.length - 1]; + return { ...state, errorMessage: `Not enough arguments to option ${lastOption.name}.` }; + } + }; + var NoLimits = Symbol(); + var CommandBuilder = class { + constructor(cliIndex, cliOpts) { + this.allOptionNames = []; + this.arity = { leading: [], trailing: [], extra: [], proxy: false }; + this.options = []; + this.paths = []; + this.cliIndex = cliIndex; + this.cliOpts = cliOpts; + } + addPath(path2) { + this.paths.push(path2); + } + setArity({ leading = this.arity.leading, trailing = this.arity.trailing, extra = this.arity.extra, proxy = this.arity.proxy }) { + Object.assign(this.arity, { leading, trailing, extra, proxy }); + } + addPositional({ name = `arg`, required = true } = {}) { + if (!required && this.arity.extra === NoLimits) + throw new Error(`Optional parameters cannot be declared when using .rest() or .proxy()`); + if (!required && this.arity.trailing.length > 0) + throw new Error(`Optional parameters cannot be declared after the required trailing positional arguments`); + if (!required && this.arity.extra !== NoLimits) { + this.arity.extra.push(name); + } else if (this.arity.extra !== NoLimits && this.arity.extra.length === 0) { + this.arity.leading.push(name); + } else { + this.arity.trailing.push(name); + } + } + addRest({ name = `arg`, required = 0 } = {}) { + if (this.arity.extra === NoLimits) + throw new Error(`Infinite lists cannot be declared multiple times in the same command`); + if (this.arity.trailing.length > 0) + throw new Error(`Infinite lists cannot be declared after the required trailing positional arguments`); + for (let t = 0; t < required; ++t) + this.addPositional({ name }); + this.arity.extra = NoLimits; + } + addProxy({ required = 0 } = {}) { + this.addRest({ required }); + this.arity.proxy = true; + } + addOption({ names, description, arity = 0, hidden = false, required = false, allowBinding = true }) { + if (!allowBinding && arity > 1) + throw new Error(`The arity cannot be higher than 1 when the option only supports the --arg=value syntax`); + if (!Number.isInteger(arity)) + throw new Error(`The arity must be an integer, got ${arity}`); + if (arity < 0) + throw new Error(`The arity must be positive, got ${arity}`); + this.allOptionNames.push(...names); + this.options.push({ names, description, arity, hidden, required, allowBinding }); + } + setContext(context) { + this.context = context; + } + usage({ detailed = true, inlineOptions = true } = {}) { + const segments = [this.cliOpts.binaryName]; + const detailedOptionList = []; + if (this.paths.length > 0) + segments.push(...this.paths[0]); + if (detailed) { + for (const { names, arity, hidden, description, required } of this.options) { + if (hidden) + continue; + const args2 = []; + for (let t = 0; t < arity; ++t) + args2.push(` #${t}`); + const definition = `${names.join(`,`)}${args2.join(``)}`; + if (!inlineOptions && description) { + detailedOptionList.push({ definition, description, required }); } else { - throwError(state, "tag suffix cannot contain exclamation marks"); + segments.push(required ? `<${definition}>` : `[${definition}]`); } } - ch = state.input.charCodeAt(++state.position); + segments.push(...this.arity.leading.map((name) => `<${name}>`)); + if (this.arity.extra === NoLimits) + segments.push(`...`); + else + segments.push(...this.arity.extra.map((name) => `[${name}]`)); + segments.push(...this.arity.trailing.map((name) => `<${name}>`)); + } + const usage = segments.join(` `); + return { usage, options: detailedOptionList }; + } + compile() { + if (typeof this.context === `undefined`) + throw new Error(`Assertion failed: No context attached`); + const machine = makeStateMachine(); + let firstNode = constants.NODE_INITIAL; + const candidateUsage = this.usage().usage; + const requiredOptions = this.options.filter((opt) => opt.required).map((opt) => opt.names); + firstNode = injectNode(machine, makeNode()); + registerStatic(machine, constants.NODE_INITIAL, constants.START_OF_INPUT, firstNode, [`setCandidateState`, { candidateUsage, requiredOptions }]); + const positionalArgument = this.arity.proxy ? `always` : `isNotOptionLike`; + const paths = this.paths.length > 0 ? this.paths : [[]]; + for (const path2 of paths) { + let lastPathNode = firstNode; + if (path2.length > 0) { + const optionPathNode = injectNode(machine, makeNode()); + registerShortcut(machine, lastPathNode, optionPathNode); + this.registerOptions(machine, optionPathNode); + lastPathNode = optionPathNode; + } + for (let t = 0; t < path2.length; ++t) { + const nextPathNode = injectNode(machine, makeNode()); + registerStatic(machine, lastPathNode, path2[t], nextPathNode, `pushPath`); + lastPathNode = nextPathNode; + } + if (this.arity.leading.length > 0 || !this.arity.proxy) { + const helpNode = injectNode(machine, makeNode()); + registerDynamic(machine, lastPathNode, `isHelp`, helpNode, [`useHelp`, this.cliIndex]); + registerStatic(machine, helpNode, constants.END_OF_INPUT, constants.NODE_SUCCESS, [`setSelectedIndex`, constants.HELP_COMMAND_INDEX]); + this.registerOptions(machine, lastPathNode); + } + if (this.arity.leading.length > 0) + registerStatic(machine, lastPathNode, constants.END_OF_INPUT, constants.NODE_ERRORED, [`setError`, `Not enough positional arguments`]); + let lastLeadingNode = lastPathNode; + for (let t = 0; t < this.arity.leading.length; ++t) { + const nextLeadingNode = injectNode(machine, makeNode()); + if (!this.arity.proxy || t + 1 !== this.arity.leading.length) + this.registerOptions(machine, nextLeadingNode); + if (this.arity.trailing.length > 0 || t + 1 !== this.arity.leading.length) + registerStatic(machine, nextLeadingNode, constants.END_OF_INPUT, constants.NODE_ERRORED, [`setError`, `Not enough positional arguments`]); + registerDynamic(machine, lastLeadingNode, `isNotOptionLike`, nextLeadingNode, `pushPositional`); + lastLeadingNode = nextLeadingNode; + } + let lastExtraNode = lastLeadingNode; + if (this.arity.extra === NoLimits || this.arity.extra.length > 0) { + const extraShortcutNode = injectNode(machine, makeNode()); + registerShortcut(machine, lastLeadingNode, extraShortcutNode); + if (this.arity.extra === NoLimits) { + const extraNode = injectNode(machine, makeNode()); + if (!this.arity.proxy) + this.registerOptions(machine, extraNode); + registerDynamic(machine, lastLeadingNode, positionalArgument, extraNode, `pushExtraNoLimits`); + registerDynamic(machine, extraNode, positionalArgument, extraNode, `pushExtraNoLimits`); + registerShortcut(machine, extraNode, extraShortcutNode); + } else { + for (let t = 0; t < this.arity.extra.length; ++t) { + const nextExtraNode = injectNode(machine, makeNode()); + if (!this.arity.proxy || t > 0) + this.registerOptions(machine, nextExtraNode); + registerDynamic(machine, lastExtraNode, positionalArgument, nextExtraNode, `pushExtra`); + registerShortcut(machine, nextExtraNode, extraShortcutNode); + lastExtraNode = nextExtraNode; + } + } + lastExtraNode = extraShortcutNode; + } + if (this.arity.trailing.length > 0) + registerStatic(machine, lastExtraNode, constants.END_OF_INPUT, constants.NODE_ERRORED, [`setError`, `Not enough positional arguments`]); + let lastTrailingNode = lastExtraNode; + for (let t = 0; t < this.arity.trailing.length; ++t) { + const nextTrailingNode = injectNode(machine, makeNode()); + if (!this.arity.proxy) + this.registerOptions(machine, nextTrailingNode); + if (t + 1 < this.arity.trailing.length) + registerStatic(machine, nextTrailingNode, constants.END_OF_INPUT, constants.NODE_ERRORED, [`setError`, `Not enough positional arguments`]); + registerDynamic(machine, lastTrailingNode, `isNotOptionLike`, nextTrailingNode, `pushPositional`); + lastTrailingNode = nextTrailingNode; + } + registerDynamic(machine, lastTrailingNode, positionalArgument, constants.NODE_ERRORED, [`setError`, `Extraneous positional argument`]); + registerStatic(machine, lastTrailingNode, constants.END_OF_INPUT, constants.NODE_SUCCESS, [`setSelectedIndex`, this.cliIndex]); } - tagName = state.input.slice(_position, state.position); - if (PATTERN_FLOW_INDICATORS.test(tagName)) { - throwError(state, "tag suffix cannot contain flow indicator characters"); + return { + machine, + context: this.context + }; + } + registerOptions(machine, node) { + registerDynamic(machine, node, [`isOption`, `--`], node, `inhibateOptions`); + registerDynamic(machine, node, [`isBatchOption`, this.allOptionNames], node, `pushBatch`); + registerDynamic(machine, node, [`isBoundOption`, this.allOptionNames, this.options], node, `pushBound`); + registerDynamic(machine, node, [`isUnsupportedOption`, this.allOptionNames], constants.NODE_ERRORED, [`setError`, `Unsupported option name`]); + registerDynamic(machine, node, [`isInvalidOption`], constants.NODE_ERRORED, [`setError`, `Invalid option name`]); + for (const option of this.options) { + const longestName = option.names.reduce((longestName2, name) => { + return name.length > longestName2.length ? name : longestName2; + }, ``); + if (option.arity === 0) { + for (const name of option.names) { + registerDynamic(machine, node, [`isOption`, name, option.hidden || name !== longestName], node, `pushTrue`); + if (name.startsWith(`--`) && !name.startsWith(`--no-`)) { + registerDynamic(machine, node, [`isNegatedOption`, name], node, [`pushFalse`, name]); + } + } + } else { + let lastNode = injectNode(machine, makeNode()); + for (const name of option.names) + registerDynamic(machine, node, [`isOption`, name, option.hidden || name !== longestName], lastNode, `pushUndefined`); + for (let t = 0; t < option.arity; ++t) { + const nextNode = injectNode(machine, makeNode()); + registerStatic(machine, lastNode, constants.END_OF_INPUT, constants.NODE_ERRORED, `setOptionArityError`); + registerDynamic(machine, lastNode, `isOptionLike`, constants.NODE_ERRORED, `setOptionArityError`); + const action = option.arity === 1 ? `setStringValue` : `pushStringValue`; + registerDynamic(machine, lastNode, `isNotOptionLike`, nextNode, action); + lastNode = nextNode; + } + registerShortcut(machine, lastNode, node); + } } } - if (tagName && !PATTERN_TAG_URI.test(tagName)) { - throwError(state, "tag name cannot contain such characters: " + tagName); + }; + var CliBuilder = class { + constructor({ binaryName = `...` } = {}) { + this.builders = []; + this.opts = { binaryName }; } - if (isVerbatim) { - state.tag = tagName; - } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { - state.tag = state.tagMap[tagHandle] + tagName; - } else if (tagHandle === "!") { - state.tag = "!" + tagName; - } else if (tagHandle === "!!") { - state.tag = "tag:yaml.org,2002:" + tagName; - } else { - throwError(state, 'undeclared tag handle "' + tagHandle + '"'); + static build(cbs, opts = {}) { + return new CliBuilder(opts).commands(cbs).compile(); } - return true; - } - function readAnchorProperty(state) { - var _position, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 38) - return false; - if (state.anchor !== null) { - throwError(state, "duplication of an anchor property"); + getBuilderByIndex(n) { + if (!(n >= 0 && n < this.builders.length)) + throw new Error(`Assertion failed: Out-of-bound command index (${n})`); + return this.builders[n]; } - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); + commands(cbs) { + for (const cb of cbs) + cb(this.command()); + return this; } - if (state.position === _position) { - throwError(state, "name of an anchor node must contain at least one character"); + command() { + const builder = new CommandBuilder(this.builders.length, this.opts); + this.builders.push(builder); + return builder; } - state.anchor = state.input.slice(_position, state.position); - return true; - } - function readAlias(state) { - var _position, alias, ch; - ch = state.input.charCodeAt(state.position); - if (ch !== 42) - return false; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); + compile() { + const machines = []; + const contexts = []; + for (const builder of this.builders) { + const { machine: machine2, context } = builder.compile(); + machines.push(machine2); + contexts.push(context); + } + const machine = makeAnyOfMachine(machines); + simplifyMachine(machine); + return { + machine, + contexts, + process: (input) => { + return runMachine(machine, input); + }, + suggest: (input, partial) => { + return suggestMachine(machine, input, partial); + } + }; } - if (state.position === _position) { - throwError(state, "name of an alias node must contain at least one character"); + }; + exports2.CliBuilder = CliBuilder; + exports2.CommandBuilder = CommandBuilder; + exports2.NoLimits = NoLimits; + exports2.aggregateHelpStates = aggregateHelpStates; + exports2.cloneNode = cloneNode; + exports2.cloneTransition = cloneTransition; + exports2.debug = debug; + exports2.debugMachine = debugMachine; + exports2.execute = execute; + exports2.injectNode = injectNode; + exports2.isTerminalNode = isTerminalNode; + exports2.makeAnyOfMachine = makeAnyOfMachine; + exports2.makeNode = makeNode; + exports2.makeStateMachine = makeStateMachine; + exports2.reducers = reducers; + exports2.registerDynamic = registerDynamic; + exports2.registerShortcut = registerShortcut; + exports2.registerStatic = registerStatic; + exports2.runMachineInternal = runMachineInternal; + exports2.selectBestState = selectBestState; + exports2.simplifyMachine = simplifyMachine; + exports2.suggest = suggest; + exports2.tests = tests; + exports2.trimSmallerBranches = trimSmallerBranches; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/HelpCommand.js +var require_HelpCommand = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/HelpCommand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var Command = require_Command(); + var HelpCommand = class extends Command.Command { + constructor(contexts) { + super(); + this.contexts = contexts; + this.commands = []; + } + static from(state, contexts) { + const command = new HelpCommand(contexts); + command.path = state.path; + for (const opt of state.options) { + switch (opt.name) { + case `-c`: + { + command.commands.push(Number(opt.value)); + } + break; + case `-i`: + { + command.index = Number(opt.value); + } + break; + } + } + return command; } - alias = state.input.slice(_position, state.position); - if (!_hasOwnProperty.call(state.anchorMap, alias)) { - throwError(state, 'unidentified alias "' + alias + '"'); + async execute() { + let commands = this.commands; + if (typeof this.index !== `undefined` && this.index >= 0 && this.index < commands.length) + commands = [commands[this.index]]; + if (commands.length === 0) { + this.context.stdout.write(this.cli.usage()); + } else if (commands.length === 1) { + this.context.stdout.write(this.cli.usage(this.contexts[commands[0]].commandClass, { detailed: true })); + } else if (commands.length > 1) { + this.context.stdout.write(`Multiple commands match your selection: +`); + this.context.stdout.write(` +`); + let index = 0; + for (const command of this.commands) + this.context.stdout.write(this.cli.usage(this.contexts[command].commandClass, { prefix: `${index++}. `.padStart(5) })); + this.context.stdout.write(` +`); + this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. +`); + } } - state.result = state.anchorMap[alias]; - skipSeparationSpace(state, true, -1); - return true; - } - function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { - var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, type, flowIndent, blockIndent; - if (state.listener !== null) { - state.listener("open", state); + }; + exports2.HelpCommand = HelpCommand; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/Cli.js +var require_Cli = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/Cli.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var constants = require_constants11(); + var Command = require_Command(); + var tty = require("tty"); + var core = require_core7(); + var format = require_format2(); + var HelpCommand = require_HelpCommand(); + function _interopDefaultLegacy(e) { + return e && typeof e === "object" && "default" in e ? e : { "default": e }; + } + var tty__default = /* @__PURE__ */ _interopDefaultLegacy(tty); + var errorCommandSymbol = Symbol(`clipanion/errorCommand`); + function getDefaultColorDepth() { + if (process.env.FORCE_COLOR === `0`) + return 1; + if (process.env.FORCE_COLOR === `1`) + return 8; + if (typeof process.stdout !== `undefined` && process.stdout.isTTY) + return 8; + return 1; + } + var Cli = class { + constructor({ binaryLabel, binaryName: binaryNameOpt = `...`, binaryVersion, enableCapture = false, enableColors } = {}) { + this.registrations = /* @__PURE__ */ new Map(); + this.builder = new core.CliBuilder({ binaryName: binaryNameOpt }); + this.binaryLabel = binaryLabel; + this.binaryName = binaryNameOpt; + this.binaryVersion = binaryVersion; + this.enableCapture = enableCapture; + this.enableColors = enableColors; + } + /** + * Creates a new Cli and registers all commands passed as parameters. + * + * @param commandClasses The Commands to register + * @returns The created `Cli` instance + */ + static from(commandClasses, options = {}) { + const cli = new Cli(options); + for (const commandClass of commandClasses) + cli.register(commandClass); + return cli; + } + /** + * Registers a command inside the CLI. + */ + register(commandClass) { + var _a; + const specs = /* @__PURE__ */ new Map(); + const command = new commandClass(); + for (const key in command) { + const value = command[key]; + if (typeof value === `object` && value !== null && value[Command.Command.isOption]) { + specs.set(key, value); + } + } + const builder = this.builder.command(); + const index = builder.cliIndex; + const paths = (_a = commandClass.paths) !== null && _a !== void 0 ? _a : command.paths; + if (typeof paths !== `undefined`) + for (const path2 of paths) + builder.addPath(path2); + this.registrations.set(commandClass, { specs, builder, index }); + for (const [key, { definition }] of specs.entries()) + definition(builder, key); + builder.setContext({ + commandClass + }); } - state.tag = null; - state.anchor = null; - state.kind = null; - state.result = null; - allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext; - if (allowToSeek) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; + process(input) { + const { contexts, process: process2 } = this.builder.compile(); + const state = process2(input); + switch (state.selectedIndex) { + case constants.HELP_COMMAND_INDEX: { + return HelpCommand.HelpCommand.from(state, contexts); } + default: + { + const { commandClass } = contexts[state.selectedIndex]; + const record = this.registrations.get(commandClass); + if (typeof record === `undefined`) + throw new Error(`Assertion failed: Expected the command class to have been registered.`); + const command = new commandClass(); + command.path = state.path; + try { + for (const [key, { transformer }] of record.specs.entries()) + command[key] = transformer(record.builder, key, state); + return command; + } catch (error) { + error[errorCommandSymbol] = command; + throw error; + } + } + break; } } - if (indentStatus === 1) { - while (readTagProperty(state) || readAnchorProperty(state)) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - allowBlockCollections = allowBlockStyles; - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } else { - allowBlockCollections = false; + async run(input, userContext) { + var _a; + let command; + const context = { + ...Cli.defaultContext, + ...userContext + }; + const colored = (_a = this.enableColors) !== null && _a !== void 0 ? _a : context.colorDepth > 1; + if (!Array.isArray(input)) { + command = input; + } else { + try { + command = this.process(input); + } catch (error) { + context.stdout.write(this.error(error, { colored })); + return 1; } } + if (command.help) { + context.stdout.write(this.usage(command, { colored, detailed: true })); + return 0; + } + command.context = context; + command.cli = { + binaryLabel: this.binaryLabel, + binaryName: this.binaryName, + binaryVersion: this.binaryVersion, + enableCapture: this.enableCapture, + enableColors: this.enableColors, + definitions: () => this.definitions(), + error: (error, opts) => this.error(error, opts), + format: (colored2) => this.format(colored2), + process: (input2) => this.process(input2), + run: (input2, subContext) => this.run(input2, { ...context, ...subContext }), + usage: (command2, opts) => this.usage(command2, opts) + }; + const activate = this.enableCapture ? getCaptureActivator(context) : noopCaptureActivator; + let exitCode; + try { + exitCode = await activate(() => command.validateAndExecute().catch((error) => command.catch(error).then(() => 0))); + } catch (error) { + context.stdout.write(this.error(error, { colored, command })); + return 1; + } + return exitCode; } - if (allowBlockCollections) { - allowBlockCollections = atNewLine || allowCompact; + async runExit(input, context) { + process.exitCode = await this.run(input, context); } - if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { - if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { - flowIndent = parentIndent; - } else { - flowIndent = parentIndent + 1; + suggest(input, partial) { + const { suggest } = this.builder.compile(); + return suggest(input, partial); + } + definitions({ colored = false } = {}) { + const data = []; + for (const [commandClass, { index }] of this.registrations) { + if (typeof commandClass.usage === `undefined`) + continue; + const { usage: path2 } = this.getUsageByIndex(index, { detailed: false }); + const { usage, options } = this.getUsageByIndex(index, { detailed: true, inlineOptions: false }); + const category = typeof commandClass.usage.category !== `undefined` ? format.formatMarkdownish(commandClass.usage.category, { format: this.format(colored), paragraphs: false }) : void 0; + const description = typeof commandClass.usage.description !== `undefined` ? format.formatMarkdownish(commandClass.usage.description, { format: this.format(colored), paragraphs: false }) : void 0; + const details = typeof commandClass.usage.details !== `undefined` ? format.formatMarkdownish(commandClass.usage.details, { format: this.format(colored), paragraphs: true }) : void 0; + const examples = typeof commandClass.usage.examples !== `undefined` ? commandClass.usage.examples.map(([label, cli]) => [format.formatMarkdownish(label, { format: this.format(colored), paragraphs: false }), cli.replace(/\$0/g, this.binaryName)]) : void 0; + data.push({ path: path2, usage, category, description, details, examples, options }); } - blockIndent = state.position - state.lineStart; - if (indentStatus === 1) { - if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) { - hasContent = true; - } else { - if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) { - hasContent = true; - } else if (readAlias(state)) { - hasContent = true; - if (state.tag !== null || state.anchor !== null) { - throwError(state, "alias node should not have any properties"); + return data; + } + usage(command = null, { colored, detailed = false, prefix = `$ ` } = {}) { + var _a; + if (command === null) { + for (const commandClass2 of this.registrations.keys()) { + const paths = commandClass2.paths; + const isDocumented = typeof commandClass2.usage !== `undefined`; + const isExclusivelyDefault = !paths || paths.length === 0 || paths.length === 1 && paths[0].length === 0; + const isDefault = isExclusivelyDefault || ((_a = paths === null || paths === void 0 ? void 0 : paths.some((path2) => path2.length === 0)) !== null && _a !== void 0 ? _a : false); + if (isDefault) { + if (command) { + command = null; + break; + } else { + command = commandClass2; } - } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { - hasContent = true; - if (state.tag === null) { - state.tag = "?"; + } else { + if (isDocumented) { + command = null; + continue; } } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } } - } else if (indentStatus === 0) { - hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); + if (command) { + detailed = true; + } } - } - if (state.tag !== null && state.tag !== "!") { - if (state.tag === "?") { - if (state.result !== null && state.kind !== "scalar") { - throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + const commandClass = command !== null && command instanceof Command.Command ? command.constructor : command; + let result2 = ``; + if (!commandClass) { + const commandsByCategories = /* @__PURE__ */ new Map(); + for (const [commandClass2, { index }] of this.registrations.entries()) { + if (typeof commandClass2.usage === `undefined`) + continue; + const category = typeof commandClass2.usage.category !== `undefined` ? format.formatMarkdownish(commandClass2.usage.category, { format: this.format(colored), paragraphs: false }) : null; + let categoryCommands = commandsByCategories.get(category); + if (typeof categoryCommands === `undefined`) + commandsByCategories.set(category, categoryCommands = []); + const { usage } = this.getUsageByIndex(index); + categoryCommands.push({ commandClass: commandClass2, usage }); + } + const categoryNames = Array.from(commandsByCategories.keys()).sort((a, b) => { + if (a === null) + return -1; + if (b === null) + return 1; + return a.localeCompare(b, `en`, { usage: `sort`, caseFirst: `upper` }); + }); + const hasLabel = typeof this.binaryLabel !== `undefined`; + const hasVersion = typeof this.binaryVersion !== `undefined`; + if (hasLabel || hasVersion) { + if (hasLabel && hasVersion) + result2 += `${this.format(colored).header(`${this.binaryLabel} - ${this.binaryVersion}`)} + +`; + else if (hasLabel) + result2 += `${this.format(colored).header(`${this.binaryLabel}`)} +`; + else + result2 += `${this.format(colored).header(`${this.binaryVersion}`)} +`; + result2 += ` ${this.format(colored).bold(prefix)}${this.binaryName} +`; + } else { + result2 += `${this.format(colored).bold(prefix)}${this.binaryName} +`; } - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; - if (type.resolve(state.result)) { - state.result = type.construct(state.result); - state.tag = type.tag; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - break; + for (const categoryName of categoryNames) { + const commands = commandsByCategories.get(categoryName).slice().sort((a, b) => { + return a.usage.localeCompare(b.usage, `en`, { usage: `sort`, caseFirst: `upper` }); + }); + const header = categoryName !== null ? categoryName.trim() : `General commands`; + result2 += ` +`; + result2 += `${this.format(colored).header(`${header}`)} +`; + for (const { commandClass: commandClass2, usage } of commands) { + const doc = commandClass2.usage.description || `undocumented`; + result2 += ` +`; + result2 += ` ${this.format(colored).bold(usage)} +`; + result2 += ` ${format.formatMarkdownish(doc, { format: this.format(colored), paragraphs: false })}`; } } - } else if (_hasOwnProperty.call(state.typeMap[state.kind || "fallback"], state.tag)) { - type = state.typeMap[state.kind || "fallback"][state.tag]; - if (state.result !== null && type.kind !== state.kind) { - throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); - } - if (!type.resolve(state.result)) { - throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag"); + result2 += ` +`; + result2 += format.formatMarkdownish(`You can also print more details about any of these commands by calling them with the \`-h,--help\` flag right after the command name.`, { format: this.format(colored), paragraphs: true }); + } else { + if (!detailed) { + const { usage } = this.getUsageByRegistration(commandClass); + result2 += `${this.format(colored).bold(prefix)}${usage} +`; } else { - state.result = type.construct(state.result); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; + const { description = ``, details = ``, examples = [] } = commandClass.usage || {}; + if (description !== ``) { + result2 += format.formatMarkdownish(description, { format: this.format(colored), paragraphs: false }).replace(/^./, ($0) => $0.toUpperCase()); + result2 += ` +`; + } + if (details !== `` || examples.length > 0) { + result2 += `${this.format(colored).header(`Usage`)} +`; + result2 += ` +`; + } + const { usage, options } = this.getUsageByRegistration(commandClass, { inlineOptions: false }); + result2 += `${this.format(colored).bold(prefix)}${usage} +`; + if (options.length > 0) { + result2 += ` +`; + result2 += `${format.richFormat.header(`Options`)} +`; + const maxDefinitionLength = options.reduce((length, option) => { + return Math.max(length, option.definition.length); + }, 0); + result2 += ` +`; + for (const { definition, description: description2 } of options) { + result2 += ` ${this.format(colored).bold(definition.padEnd(maxDefinitionLength))} ${format.formatMarkdownish(description2, { format: this.format(colored), paragraphs: false })}`; + } + } + if (details !== ``) { + result2 += ` +`; + result2 += `${this.format(colored).header(`Details`)} +`; + result2 += ` +`; + result2 += format.formatMarkdownish(details, { format: this.format(colored), paragraphs: true }); + } + if (examples.length > 0) { + result2 += ` +`; + result2 += `${this.format(colored).header(`Examples`)} +`; + for (const [description2, example] of examples) { + result2 += ` +`; + result2 += format.formatMarkdownish(description2, { format: this.format(colored), paragraphs: false }); + result2 += `${example.replace(/^/m, ` ${this.format(colored).bold(prefix)}`).replace(/\$0/g, this.binaryName)} +`; + } } } - } else { - throwError(state, "unknown tag !<" + state.tag + ">"); } + return result2; } - if (state.listener !== null) { - state.listener("close", state); - } - return state.tag !== null || state.anchor !== null || hasContent; - } - function readDocument(state) { - var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch; - state.version = null; - state.checkLineBreaks = state.legacy; - state.tagMap = {}; - state.anchorMap = {}; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - if (state.lineIndent > 0 || ch !== 37) { - break; - } - hasDirectives = true; - ch = state.input.charCodeAt(++state.position); - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } - directiveName = state.input.slice(_position, state.position); - directiveArgs = []; - if (directiveName.length < 1) { - throwError(state, "directive name must not be less than one character in length"); - } - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } - if (ch === 35) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0 && !is_EOL(ch)); - break; - } - if (is_EOL(ch)) - break; - _position = state.position; - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); + error(error, _a) { + var _b; + var { colored, command = (_b = error[errorCommandSymbol]) !== null && _b !== void 0 ? _b : null } = _a === void 0 ? {} : _a; + if (!(error instanceof Error)) + error = new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(error)})`); + let result2 = ``; + let name = error.name.replace(/([a-z])([A-Z])/g, `$1 $2`); + if (name === `Error`) + name = `Internal Error`; + result2 += `${this.format(colored).error(name)}: ${error.message} +`; + const meta = error.clipanion; + if (typeof meta !== `undefined`) { + if (meta.type === `usage`) { + result2 += ` +`; + result2 += this.usage(command); } - directiveArgs.push(state.input.slice(_position, state.position)); - } - if (ch !== 0) - readLineBreak(state); - if (_hasOwnProperty.call(directiveHandlers, directiveName)) { - directiveHandlers[directiveName](state, directiveName, directiveArgs); } else { - throwWarning(state, 'unknown document directive "' + directiveName + '"'); - } - } - skipSeparationSpace(state, true, -1); - if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) { - state.position += 3; - skipSeparationSpace(state, true, -1); - } else if (hasDirectives) { - throwError(state, "directives end mark is expected"); - } - composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); - skipSeparationSpace(state, true, -1); - if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { - throwWarning(state, "non-ASCII line breaks are interpreted as content"); - } - state.documents.push(state.result); - if (state.position === state.lineStart && testDocumentSeparator(state)) { - if (state.input.charCodeAt(state.position) === 46) { - state.position += 3; - skipSeparationSpace(state, true, -1); + if (error.stack) { + result2 += `${error.stack.replace(/^.*\n/, ``)} +`; + } } - return; + return result2; } - if (state.position < state.length - 1) { - throwError(state, "end of the stream or a document separator is expected"); - } else { - return; + format(colored) { + var _a; + return ((_a = colored !== null && colored !== void 0 ? colored : this.enableColors) !== null && _a !== void 0 ? _a : Cli.defaultContext.colorDepth > 1) ? format.richFormat : format.textFormat; + } + getUsageByRegistration(klass, opts) { + const record = this.registrations.get(klass); + if (typeof record === `undefined`) + throw new Error(`Assertion failed: Unregistered command`); + return this.getUsageByIndex(record.index, opts); + } + getUsageByIndex(n, opts) { + return this.builder.getBuilderByIndex(n).usage(opts); + } + }; + Cli.defaultContext = { + stdin: process.stdin, + stdout: process.stdout, + stderr: process.stderr, + colorDepth: `getColorDepth` in tty__default["default"].WriteStream.prototype ? tty__default["default"].WriteStream.prototype.getColorDepth() : getDefaultColorDepth() + }; + var gContextStorage; + function getCaptureActivator(context) { + let contextStorage = gContextStorage; + if (typeof contextStorage === `undefined`) { + if (context.stdout === process.stdout && context.stderr === process.stderr) + return noopCaptureActivator; + const { AsyncLocalStorage: LazyAsyncLocalStorage } = require("async_hooks"); + contextStorage = gContextStorage = new LazyAsyncLocalStorage(); + const origStdoutWrite = process.stdout._write; + process.stdout._write = function(chunk, encoding, cb) { + const context2 = contextStorage.getStore(); + if (typeof context2 === `undefined`) + return origStdoutWrite.call(this, chunk, encoding, cb); + return context2.stdout.write(chunk, encoding, cb); + }; + const origStderrWrite = process.stderr._write; + process.stderr._write = function(chunk, encoding, cb) { + const context2 = contextStorage.getStore(); + if (typeof context2 === `undefined`) + return origStderrWrite.call(this, chunk, encoding, cb); + return context2.stderr.write(chunk, encoding, cb); + }; } + return (fn2) => { + return contextStorage.run(context, fn2); + }; } - function loadDocuments(input, options) { - input = String(input); - options = options || {}; - if (input.length !== 0) { - if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) { - input += "\n"; - } - if (input.charCodeAt(0) === 65279) { - input = input.slice(1); - } - } - var state = new State(input, options); - var nullpos = input.indexOf("\0"); - if (nullpos !== -1) { - state.position = nullpos; - throwError(state, "null byte is not allowed in input"); - } - state.input += "\0"; - while (state.input.charCodeAt(state.position) === 32) { - state.lineIndent += 1; - state.position += 1; - } - while (state.position < state.length - 1) { - readDocument(state); - } - return state.documents; + function noopCaptureActivator(fn2) { + return fn2(); } - function loadAll(input, iterator, options) { - if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") { - options = iterator; - iterator = null; + exports2.Cli = Cli; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/definitions.js +var require_definitions = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/definitions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var Command = require_Command(); + var DefinitionsCommand = class extends Command.Command { + async execute() { + this.context.stdout.write(`${JSON.stringify(this.cli.definitions(), null, 2)} +`); } - var documents = loadDocuments(input, options); - if (typeof iterator !== "function") { - return documents; + }; + DefinitionsCommand.paths = [[`--clipanion=definitions`]]; + exports2.DefinitionsCommand = DefinitionsCommand; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/help.js +var require_help = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/help.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var Command = require_Command(); + var HelpCommand = class extends Command.Command { + async execute() { + this.context.stdout.write(this.cli.usage()); } - for (var index = 0, length = documents.length; index < length; index += 1) { - iterator(documents[index]); + }; + HelpCommand.paths = [[`-h`], [`--help`]]; + exports2.HelpCommand = HelpCommand; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/version.js +var require_version = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var Command = require_Command(); + var VersionCommand = class extends Command.Command { + async execute() { + var _a; + this.context.stdout.write(`${(_a = this.cli.binaryVersion) !== null && _a !== void 0 ? _a : ``} +`); } + }; + VersionCommand.paths = [[`-v`], [`--version`]]; + exports2.VersionCommand = VersionCommand; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/index.js +var require_builtins2 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/builtins/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var definitions = require_definitions(); + var help = require_help(); + var version2 = require_version(); + exports2.DefinitionsCommand = definitions.DefinitionsCommand; + exports2.HelpCommand = help.HelpCommand; + exports2.VersionCommand = version2.VersionCommand; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Array.js +var require_Array = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Array.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + function Array2(descriptor, initialValueBase, optsBase) { + const [initialValue, opts] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {}); + const { arity = 1 } = opts; + const optNames = descriptor.split(`,`); + const nameSet = new Set(optNames); + return utils.makeCommandOption({ + definition(builder) { + builder.addOption({ + names: optNames, + arity, + hidden: opts === null || opts === void 0 ? void 0 : opts.hidden, + description: opts === null || opts === void 0 ? void 0 : opts.description, + required: opts.required + }); + }, + transformer(builder, key, state) { + let currentValue = typeof initialValue !== `undefined` ? [...initialValue] : void 0; + for (const { name, value } of state.options) { + if (!nameSet.has(name)) + continue; + currentValue = currentValue !== null && currentValue !== void 0 ? currentValue : []; + currentValue.push(value); + } + return currentValue; + } + }); } - function load(input, options) { - var documents = loadDocuments(input, options); - if (documents.length === 0) { - return void 0; - } else if (documents.length === 1) { - return documents[0]; - } - throw new YAMLException("expected a single document in the stream, but found more"); + exports2.Array = Array2; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Boolean.js +var require_Boolean = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Boolean.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + function Boolean2(descriptor, initialValueBase, optsBase) { + const [initialValue, opts] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {}); + const optNames = descriptor.split(`,`); + const nameSet = new Set(optNames); + return utils.makeCommandOption({ + definition(builder) { + builder.addOption({ + names: optNames, + allowBinding: false, + arity: 0, + hidden: opts.hidden, + description: opts.description, + required: opts.required + }); + }, + transformer(builer, key, state) { + let currentValue = initialValue; + for (const { name, value } of state.options) { + if (!nameSet.has(name)) + continue; + currentValue = value; + } + return currentValue; + } + }); } - function safeLoadAll(input, iterator, options) { - if (typeof iterator === "object" && iterator !== null && typeof options === "undefined") { - options = iterator; - iterator = null; - } - return loadAll(input, iterator, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); + exports2.Boolean = Boolean2; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Counter.js +var require_Counter = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Counter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + function Counter(descriptor, initialValueBase, optsBase) { + const [initialValue, opts] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {}); + const optNames = descriptor.split(`,`); + const nameSet = new Set(optNames); + return utils.makeCommandOption({ + definition(builder) { + builder.addOption({ + names: optNames, + allowBinding: false, + arity: 0, + hidden: opts.hidden, + description: opts.description, + required: opts.required + }); + }, + transformer(builder, key, state) { + let currentValue = initialValue; + for (const { name, value } of state.options) { + if (!nameSet.has(name)) + continue; + currentValue !== null && currentValue !== void 0 ? currentValue : currentValue = 0; + if (!value) { + currentValue = 0; + } else { + currentValue += 1; + } + } + return currentValue; + } + }); } - function safeLoad(input, options) { - return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); + exports2.Counter = Counter; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Proxy.js +var require_Proxy = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Proxy.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + function Proxy2(opts = {}) { + return utils.makeCommandOption({ + definition(builder, key) { + var _a; + builder.addProxy({ + name: (_a = opts.name) !== null && _a !== void 0 ? _a : key, + required: opts.required + }); + }, + transformer(builder, key, state) { + return state.positionals.map(({ value }) => value); + } + }); } - module2.exports.loadAll = loadAll; - module2.exports.load = load; - module2.exports.safeLoadAll = safeLoadAll; - module2.exports.safeLoad = safeLoad; + exports2.Proxy = Proxy2; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/dumper.js -var require_dumper2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml/dumper.js"(exports2, module2) { +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Rest.js +var require_Rest = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/Rest.js"(exports2) { "use strict"; - var common = require_common6(); - var YAMLException = require_exception2(); - var DEFAULT_FULL_SCHEMA = require_default_full(); - var DEFAULT_SAFE_SCHEMA = require_default_safe(); - var _toString = Object.prototype.toString; - var _hasOwnProperty = Object.prototype.hasOwnProperty; - var CHAR_TAB = 9; - var CHAR_LINE_FEED = 10; - var CHAR_CARRIAGE_RETURN = 13; - var CHAR_SPACE = 32; - var CHAR_EXCLAMATION = 33; - var CHAR_DOUBLE_QUOTE = 34; - var CHAR_SHARP = 35; - var CHAR_PERCENT = 37; - var CHAR_AMPERSAND = 38; - var CHAR_SINGLE_QUOTE = 39; - var CHAR_ASTERISK = 42; - var CHAR_COMMA = 44; - var CHAR_MINUS = 45; - var CHAR_COLON = 58; - var CHAR_EQUALS = 61; - var CHAR_GREATER_THAN = 62; - var CHAR_QUESTION = 63; - var CHAR_COMMERCIAL_AT = 64; - var CHAR_LEFT_SQUARE_BRACKET = 91; - var CHAR_RIGHT_SQUARE_BRACKET = 93; - var CHAR_GRAVE_ACCENT = 96; - var CHAR_LEFT_CURLY_BRACKET = 123; - var CHAR_VERTICAL_LINE = 124; - var CHAR_RIGHT_CURLY_BRACKET = 125; - var ESCAPE_SEQUENCES = {}; - ESCAPE_SEQUENCES[0] = "\\0"; - ESCAPE_SEQUENCES[7] = "\\a"; - ESCAPE_SEQUENCES[8] = "\\b"; - ESCAPE_SEQUENCES[9] = "\\t"; - ESCAPE_SEQUENCES[10] = "\\n"; - ESCAPE_SEQUENCES[11] = "\\v"; - ESCAPE_SEQUENCES[12] = "\\f"; - ESCAPE_SEQUENCES[13] = "\\r"; - ESCAPE_SEQUENCES[27] = "\\e"; - ESCAPE_SEQUENCES[34] = '\\"'; - ESCAPE_SEQUENCES[92] = "\\\\"; - ESCAPE_SEQUENCES[133] = "\\N"; - ESCAPE_SEQUENCES[160] = "\\_"; - ESCAPE_SEQUENCES[8232] = "\\L"; - ESCAPE_SEQUENCES[8233] = "\\P"; - var DEPRECATED_BOOLEANS_SYNTAX = [ - "y", - "Y", - "yes", - "Yes", - "YES", - "on", - "On", - "ON", - "n", - "N", - "no", - "No", - "NO", - "off", - "Off", - "OFF" - ]; - function compileStyleMap(schema, map) { - var result, keys, index, length, tag, style, type; - if (map === null) - return {}; - result = {}; - keys = Object.keys(map); - for (index = 0, length = keys.length; index < length; index += 1) { - tag = keys[index]; - style = String(map[tag]); - if (tag.slice(0, 2) === "!!") { - tag = "tag:yaml.org,2002:" + tag.slice(2); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + var core = require_core7(); + function Rest(opts = {}) { + return utils.makeCommandOption({ + definition(builder, key) { + var _a; + builder.addRest({ + name: (_a = opts.name) !== null && _a !== void 0 ? _a : key, + required: opts.required + }); + }, + transformer(builder, key, state) { + const isRestPositional = (index) => { + const positional = state.positionals[index]; + if (positional.extra === core.NoLimits) + return true; + if (positional.extra === false && index < builder.arity.leading.length) + return true; + return false; + }; + let count = 0; + while (count < state.positionals.length && isRestPositional(count)) + count += 1; + return state.positionals.splice(0, count).map(({ value }) => value); } - type = schema.compiledTypeMap["fallback"][tag]; - if (type && _hasOwnProperty.call(type.styleAliases, style)) { - style = type.styleAliases[style]; + }); + } + exports2.Rest = Rest; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/String.js +var require_String = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/String.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + var core = require_core7(); + function StringOption(descriptor, initialValueBase, optsBase) { + const [initialValue, opts] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {}); + const { arity = 1 } = opts; + const optNames = descriptor.split(`,`); + const nameSet = new Set(optNames); + return utils.makeCommandOption({ + definition(builder) { + builder.addOption({ + names: optNames, + arity: opts.tolerateBoolean ? 0 : arity, + hidden: opts.hidden, + description: opts.description, + required: opts.required + }); + }, + transformer(builder, key, state) { + let usedName; + let currentValue = initialValue; + for (const { name, value } of state.options) { + if (!nameSet.has(name)) + continue; + usedName = name; + currentValue = value; + } + if (typeof currentValue === `string`) { + return utils.applyValidator(usedName !== null && usedName !== void 0 ? usedName : key, currentValue, opts.validator); + } else { + return currentValue; + } } - result[tag] = style; - } - return result; + }); } - function encodeHex(character) { - var string, handle, length; - string = character.toString(16).toUpperCase(); - if (character <= 255) { - handle = "x"; - length = 2; - } else if (character <= 65535) { - handle = "u"; - length = 4; - } else if (character <= 4294967295) { - handle = "U"; - length = 8; + function StringPositional(opts = {}) { + const { required = true } = opts; + return utils.makeCommandOption({ + definition(builder, key) { + var _a; + builder.addPositional({ + name: (_a = opts.name) !== null && _a !== void 0 ? _a : key, + required: opts.required + }); + }, + transformer(builder, key, state) { + var _a; + for (let i = 0; i < state.positionals.length; ++i) { + if (state.positionals[i].extra === core.NoLimits) + continue; + if (required && state.positionals[i].extra === true) + continue; + if (!required && state.positionals[i].extra === false) + continue; + const [positional] = state.positionals.splice(i, 1); + return utils.applyValidator((_a = opts.name) !== null && _a !== void 0 ? _a : key, positional.value, opts.validator); + } + return void 0; + } + }); + } + function String2(descriptor, ...args2) { + if (typeof descriptor === `string`) { + return StringOption(descriptor, ...args2); } else { - throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF"); + return StringPositional(descriptor); } - return "\\" + handle + common.repeat("0", length - string.length) + string; } - function State(options) { - this.schema = options["schema"] || DEFAULT_FULL_SCHEMA; - this.indent = Math.max(1, options["indent"] || 2); - this.noArrayIndent = options["noArrayIndent"] || false; - this.skipInvalid = options["skipInvalid"] || false; - this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"]; - this.styleMap = compileStyleMap(this.schema, options["styles"] || null); - this.sortKeys = options["sortKeys"] || false; - this.lineWidth = options["lineWidth"] || 80; - this.noRefs = options["noRefs"] || false; - this.noCompatMode = options["noCompatMode"] || false; - this.condenseFlow = options["condenseFlow"] || false; - this.implicitTypes = this.schema.compiledImplicit; - this.explicitTypes = this.schema.compiledExplicit; - this.tag = null; - this.result = ""; - this.duplicates = []; - this.usedDuplicates = null; + exports2.String = String2; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/index.js +var require_options2 = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/options/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils15(); + var _Array = require_Array(); + var _Boolean = require_Boolean(); + var Counter = require_Counter(); + var _Proxy = require_Proxy(); + var Rest = require_Rest(); + var _String = require_String(); + exports2.applyValidator = utils.applyValidator; + exports2.cleanValidationError = utils.cleanValidationError; + exports2.formatError = utils.formatError; + exports2.isOptionSymbol = utils.isOptionSymbol; + exports2.makeCommandOption = utils.makeCommandOption; + exports2.rerouteArguments = utils.rerouteArguments; + exports2.Array = _Array.Array; + exports2.Boolean = _Boolean.Boolean; + exports2.Counter = Counter.Counter; + exports2.Proxy = _Proxy.Proxy; + exports2.Rest = Rest.Rest; + exports2.String = _String.String; + } +}); + +// ../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/index.js +var require_advanced = __commonJS({ + "../node_modules/.pnpm/clipanion@3.2.0-rc.6(typanion@3.12.1)/node_modules/clipanion/lib/advanced/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var errors = require_errors6(); + var Command = require_Command(); + var format = require_format2(); + var Cli = require_Cli(); + var index = require_builtins2(); + var index$1 = require_options2(); + exports2.UsageError = errors.UsageError; + exports2.Command = Command.Command; + exports2.formatMarkdownish = format.formatMarkdownish; + exports2.Cli = Cli.Cli; + exports2.Builtins = index; + exports2.Option = index$1; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MessageName.js +var require_MessageName = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MessageName.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseMessageName = exports2.stringifyMessageName = exports2.MessageName = void 0; + var MessageName; + (function(MessageName2) { + MessageName2[MessageName2["UNNAMED"] = 0] = "UNNAMED"; + MessageName2[MessageName2["EXCEPTION"] = 1] = "EXCEPTION"; + MessageName2[MessageName2["MISSING_PEER_DEPENDENCY"] = 2] = "MISSING_PEER_DEPENDENCY"; + MessageName2[MessageName2["CYCLIC_DEPENDENCIES"] = 3] = "CYCLIC_DEPENDENCIES"; + MessageName2[MessageName2["DISABLED_BUILD_SCRIPTS"] = 4] = "DISABLED_BUILD_SCRIPTS"; + MessageName2[MessageName2["BUILD_DISABLED"] = 5] = "BUILD_DISABLED"; + MessageName2[MessageName2["SOFT_LINK_BUILD"] = 6] = "SOFT_LINK_BUILD"; + MessageName2[MessageName2["MUST_BUILD"] = 7] = "MUST_BUILD"; + MessageName2[MessageName2["MUST_REBUILD"] = 8] = "MUST_REBUILD"; + MessageName2[MessageName2["BUILD_FAILED"] = 9] = "BUILD_FAILED"; + MessageName2[MessageName2["RESOLVER_NOT_FOUND"] = 10] = "RESOLVER_NOT_FOUND"; + MessageName2[MessageName2["FETCHER_NOT_FOUND"] = 11] = "FETCHER_NOT_FOUND"; + MessageName2[MessageName2["LINKER_NOT_FOUND"] = 12] = "LINKER_NOT_FOUND"; + MessageName2[MessageName2["FETCH_NOT_CACHED"] = 13] = "FETCH_NOT_CACHED"; + MessageName2[MessageName2["YARN_IMPORT_FAILED"] = 14] = "YARN_IMPORT_FAILED"; + MessageName2[MessageName2["REMOTE_INVALID"] = 15] = "REMOTE_INVALID"; + MessageName2[MessageName2["REMOTE_NOT_FOUND"] = 16] = "REMOTE_NOT_FOUND"; + MessageName2[MessageName2["RESOLUTION_PACK"] = 17] = "RESOLUTION_PACK"; + MessageName2[MessageName2["CACHE_CHECKSUM_MISMATCH"] = 18] = "CACHE_CHECKSUM_MISMATCH"; + MessageName2[MessageName2["UNUSED_CACHE_ENTRY"] = 19] = "UNUSED_CACHE_ENTRY"; + MessageName2[MessageName2["MISSING_LOCKFILE_ENTRY"] = 20] = "MISSING_LOCKFILE_ENTRY"; + MessageName2[MessageName2["WORKSPACE_NOT_FOUND"] = 21] = "WORKSPACE_NOT_FOUND"; + MessageName2[MessageName2["TOO_MANY_MATCHING_WORKSPACES"] = 22] = "TOO_MANY_MATCHING_WORKSPACES"; + MessageName2[MessageName2["CONSTRAINTS_MISSING_DEPENDENCY"] = 23] = "CONSTRAINTS_MISSING_DEPENDENCY"; + MessageName2[MessageName2["CONSTRAINTS_INCOMPATIBLE_DEPENDENCY"] = 24] = "CONSTRAINTS_INCOMPATIBLE_DEPENDENCY"; + MessageName2[MessageName2["CONSTRAINTS_EXTRANEOUS_DEPENDENCY"] = 25] = "CONSTRAINTS_EXTRANEOUS_DEPENDENCY"; + MessageName2[MessageName2["CONSTRAINTS_INVALID_DEPENDENCY"] = 26] = "CONSTRAINTS_INVALID_DEPENDENCY"; + MessageName2[MessageName2["CANT_SUGGEST_RESOLUTIONS"] = 27] = "CANT_SUGGEST_RESOLUTIONS"; + MessageName2[MessageName2["FROZEN_LOCKFILE_EXCEPTION"] = 28] = "FROZEN_LOCKFILE_EXCEPTION"; + MessageName2[MessageName2["CROSS_DRIVE_VIRTUAL_LOCAL"] = 29] = "CROSS_DRIVE_VIRTUAL_LOCAL"; + MessageName2[MessageName2["FETCH_FAILED"] = 30] = "FETCH_FAILED"; + MessageName2[MessageName2["DANGEROUS_NODE_MODULES"] = 31] = "DANGEROUS_NODE_MODULES"; + MessageName2[MessageName2["NODE_GYP_INJECTED"] = 32] = "NODE_GYP_INJECTED"; + MessageName2[MessageName2["AUTHENTICATION_NOT_FOUND"] = 33] = "AUTHENTICATION_NOT_FOUND"; + MessageName2[MessageName2["INVALID_CONFIGURATION_KEY"] = 34] = "INVALID_CONFIGURATION_KEY"; + MessageName2[MessageName2["NETWORK_ERROR"] = 35] = "NETWORK_ERROR"; + MessageName2[MessageName2["LIFECYCLE_SCRIPT"] = 36] = "LIFECYCLE_SCRIPT"; + MessageName2[MessageName2["CONSTRAINTS_MISSING_FIELD"] = 37] = "CONSTRAINTS_MISSING_FIELD"; + MessageName2[MessageName2["CONSTRAINTS_INCOMPATIBLE_FIELD"] = 38] = "CONSTRAINTS_INCOMPATIBLE_FIELD"; + MessageName2[MessageName2["CONSTRAINTS_EXTRANEOUS_FIELD"] = 39] = "CONSTRAINTS_EXTRANEOUS_FIELD"; + MessageName2[MessageName2["CONSTRAINTS_INVALID_FIELD"] = 40] = "CONSTRAINTS_INVALID_FIELD"; + MessageName2[MessageName2["AUTHENTICATION_INVALID"] = 41] = "AUTHENTICATION_INVALID"; + MessageName2[MessageName2["PROLOG_UNKNOWN_ERROR"] = 42] = "PROLOG_UNKNOWN_ERROR"; + MessageName2[MessageName2["PROLOG_SYNTAX_ERROR"] = 43] = "PROLOG_SYNTAX_ERROR"; + MessageName2[MessageName2["PROLOG_EXISTENCE_ERROR"] = 44] = "PROLOG_EXISTENCE_ERROR"; + MessageName2[MessageName2["STACK_OVERFLOW_RESOLUTION"] = 45] = "STACK_OVERFLOW_RESOLUTION"; + MessageName2[MessageName2["AUTOMERGE_FAILED_TO_PARSE"] = 46] = "AUTOMERGE_FAILED_TO_PARSE"; + MessageName2[MessageName2["AUTOMERGE_IMMUTABLE"] = 47] = "AUTOMERGE_IMMUTABLE"; + MessageName2[MessageName2["AUTOMERGE_SUCCESS"] = 48] = "AUTOMERGE_SUCCESS"; + MessageName2[MessageName2["AUTOMERGE_REQUIRED"] = 49] = "AUTOMERGE_REQUIRED"; + MessageName2[MessageName2["DEPRECATED_CLI_SETTINGS"] = 50] = "DEPRECATED_CLI_SETTINGS"; + MessageName2[MessageName2["PLUGIN_NAME_NOT_FOUND"] = 51] = "PLUGIN_NAME_NOT_FOUND"; + MessageName2[MessageName2["INVALID_PLUGIN_REFERENCE"] = 52] = "INVALID_PLUGIN_REFERENCE"; + MessageName2[MessageName2["CONSTRAINTS_AMBIGUITY"] = 53] = "CONSTRAINTS_AMBIGUITY"; + MessageName2[MessageName2["CACHE_OUTSIDE_PROJECT"] = 54] = "CACHE_OUTSIDE_PROJECT"; + MessageName2[MessageName2["IMMUTABLE_INSTALL"] = 55] = "IMMUTABLE_INSTALL"; + MessageName2[MessageName2["IMMUTABLE_CACHE"] = 56] = "IMMUTABLE_CACHE"; + MessageName2[MessageName2["INVALID_MANIFEST"] = 57] = "INVALID_MANIFEST"; + MessageName2[MessageName2["PACKAGE_PREPARATION_FAILED"] = 58] = "PACKAGE_PREPARATION_FAILED"; + MessageName2[MessageName2["INVALID_RANGE_PEER_DEPENDENCY"] = 59] = "INVALID_RANGE_PEER_DEPENDENCY"; + MessageName2[MessageName2["INCOMPATIBLE_PEER_DEPENDENCY"] = 60] = "INCOMPATIBLE_PEER_DEPENDENCY"; + MessageName2[MessageName2["DEPRECATED_PACKAGE"] = 61] = "DEPRECATED_PACKAGE"; + MessageName2[MessageName2["INCOMPATIBLE_OS"] = 62] = "INCOMPATIBLE_OS"; + MessageName2[MessageName2["INCOMPATIBLE_CPU"] = 63] = "INCOMPATIBLE_CPU"; + MessageName2[MessageName2["FROZEN_ARTIFACT_EXCEPTION"] = 64] = "FROZEN_ARTIFACT_EXCEPTION"; + MessageName2[MessageName2["TELEMETRY_NOTICE"] = 65] = "TELEMETRY_NOTICE"; + MessageName2[MessageName2["PATCH_HUNK_FAILED"] = 66] = "PATCH_HUNK_FAILED"; + MessageName2[MessageName2["INVALID_CONFIGURATION_VALUE"] = 67] = "INVALID_CONFIGURATION_VALUE"; + MessageName2[MessageName2["UNUSED_PACKAGE_EXTENSION"] = 68] = "UNUSED_PACKAGE_EXTENSION"; + MessageName2[MessageName2["REDUNDANT_PACKAGE_EXTENSION"] = 69] = "REDUNDANT_PACKAGE_EXTENSION"; + MessageName2[MessageName2["AUTO_NM_SUCCESS"] = 70] = "AUTO_NM_SUCCESS"; + MessageName2[MessageName2["NM_CANT_INSTALL_EXTERNAL_SOFT_LINK"] = 71] = "NM_CANT_INSTALL_EXTERNAL_SOFT_LINK"; + MessageName2[MessageName2["NM_PRESERVE_SYMLINKS_REQUIRED"] = 72] = "NM_PRESERVE_SYMLINKS_REQUIRED"; + MessageName2[MessageName2["UPDATE_LOCKFILE_ONLY_SKIP_LINK"] = 73] = "UPDATE_LOCKFILE_ONLY_SKIP_LINK"; + MessageName2[MessageName2["NM_HARDLINKS_MODE_DOWNGRADED"] = 74] = "NM_HARDLINKS_MODE_DOWNGRADED"; + MessageName2[MessageName2["PROLOG_INSTANTIATION_ERROR"] = 75] = "PROLOG_INSTANTIATION_ERROR"; + MessageName2[MessageName2["INCOMPATIBLE_ARCHITECTURE"] = 76] = "INCOMPATIBLE_ARCHITECTURE"; + MessageName2[MessageName2["GHOST_ARCHITECTURE"] = 77] = "GHOST_ARCHITECTURE"; + MessageName2[MessageName2["RESOLUTION_MISMATCH"] = 78] = "RESOLUTION_MISMATCH"; + MessageName2[MessageName2["PROLOG_LIMIT_EXCEEDED"] = 79] = "PROLOG_LIMIT_EXCEEDED"; + MessageName2[MessageName2["NETWORK_DISABLED"] = 80] = "NETWORK_DISABLED"; + MessageName2[MessageName2["NETWORK_UNSAFE_HTTP"] = 81] = "NETWORK_UNSAFE_HTTP"; + MessageName2[MessageName2["RESOLUTION_FAILED"] = 82] = "RESOLUTION_FAILED"; + MessageName2[MessageName2["AUTOMERGE_GIT_ERROR"] = 83] = "AUTOMERGE_GIT_ERROR"; + MessageName2[MessageName2["CONSTRAINTS_CHECK_FAILED"] = 84] = "CONSTRAINTS_CHECK_FAILED"; + })(MessageName || (exports2.MessageName = MessageName = {})); + function stringifyMessageName(name) { + return `YN${name.toString(10).padStart(4, `0`)}`; + } + exports2.stringifyMessageName = stringifyMessageName; + function parseMessageName(messageName) { + const parsed = Number(messageName.slice(2)); + if (typeof MessageName[parsed] === `undefined`) + throw new Error(`Unknown message name: "${messageName}"`); + return parsed; } - function indentString(string, spaces) { - var ind = common.repeat(" ", spaces), position = 0, next = -1, result = "", line, length = string.length; - while (position < length) { - next = string.indexOf("\n", position); - if (next === -1) { - line = string.slice(position); - position = length; - } else { - line = string.slice(position, next + 1); - position = next + 1; - } - if (line.length && line !== "\n") - result += ind; - result += line; + exports2.parseMessageName = parseMessageName; + } +}); + +// ../node_modules/.pnpm/tinylogic@2.0.0/node_modules/tinylogic/grammar.js +var require_grammar = __commonJS({ + "../node_modules/.pnpm/tinylogic@2.0.0/node_modules/tinylogic/grammar.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; } - return result; - } - function generateNextLine(state, level) { - return "\n" + common.repeat(" ", state.indent * level); + ctor.prototype = parent.prototype; + child.prototype = new ctor(); } - function testImplicitResolving(state, str) { - var index, length, type; - for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { - type = state.implicitTypes[index]; - if (type.resolve(str)) { - return true; - } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); } - return false; - } - function isWhitespace(c) { - return c === CHAR_SPACE || c === CHAR_TAB; - } - function isPrintable(c) { - return 32 <= c && c <= 126 || 161 <= c && c <= 55295 && c !== 8232 && c !== 8233 || 57344 <= c && c <= 65533 && c !== 65279 || 65536 <= c && c <= 1114111; - } - function isNsChar(c) { - return isPrintable(c) && !isWhitespace(c) && c !== 65279 && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; - } - function isPlainSafe(c, prev) { - return isPrintable(c) && c !== 65279 && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_COLON && (c !== CHAR_SHARP || prev && isNsChar(prev)); - } - function isPlainSafeFirst(c) { - return isPrintable(c) && c !== 65279 && !isWhitespace(c) && c !== CHAR_MINUS && c !== CHAR_QUESTION && c !== CHAR_COLON && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_SHARP && c !== CHAR_AMPERSAND && c !== CHAR_ASTERISK && c !== CHAR_EXCLAMATION && c !== CHAR_VERTICAL_LINE && c !== CHAR_EQUALS && c !== CHAR_GREATER_THAN && c !== CHAR_SINGLE_QUOTE && c !== CHAR_DOUBLE_QUOTE && c !== CHAR_PERCENT && c !== CHAR_COMMERCIAL_AT && c !== CHAR_GRAVE_ACCENT; } - function needIndentIndicator(string) { - var leadingSpaceRe = /^\n* /; - return leadingSpaceRe.test(string); - } - var STYLE_PLAIN = 1; - var STYLE_SINGLE = 2; - var STYLE_LITERAL = 3; - var STYLE_FOLDED = 4; - var STYLE_DOUBLE = 5; - function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { - var i; - var char, prev_char; - var hasLineBreak = false; - var hasFoldableLine = false; - var shouldTrackWidth = lineWidth !== -1; - var previousLineBreak = -1; - var plain = isPlainSafeFirst(string.charCodeAt(0)) && !isWhitespace(string.charCodeAt(string.length - 1)); - if (singleLineOnly) { - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - prev_char = i > 0 ? string.charCodeAt(i - 1) : null; - plain = plain && isPlainSafe(char, prev_char); - } - } else { - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (char === CHAR_LINE_FEED) { - hasLineBreak = true; - if (shouldTrackWidth) { - hasFoldableLine = hasFoldableLine || i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "; - previousLineBreak = i; - } - } else if (!isPrintable(char)) { - return STYLE_DOUBLE; + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } - prev_char = i > 0 ? string.charCodeAt(i - 1) : null; - plain = plain && isPlainSafe(char, prev_char); + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "); + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); } - if (!hasLineBreak && !hasFoldableLine) { - return plain && !testAmbiguousType(string) ? STYLE_PLAIN : STYLE_SINGLE; + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - if (indentPerLevel > 9 && needIndentIndicator(string)) { - return STYLE_DOUBLE; + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); } - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; - } - function writeScalar(state, string, level, iskey) { - state.dump = function() { - if (string.length === 0) { - return "''"; - } - if (!state.noCompatMode && DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { - return "'" + string + "'"; + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - var indent = state.indent * Math.max(1, level); - var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); - var singleLineOnly = iskey || state.flowLevel > -1 && level >= state.flowLevel; - function testAmbiguity(string2) { - return testImplicitResolving(state, string2); + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } + } + descriptions.length = j; } - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { - case STYLE_PLAIN: - return string; - case STYLE_SINGLE: - return "'" + string.replace(/'/g, "''") + "'"; - case STYLE_LITERAL: - return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent)); - case STYLE_FOLDED: - return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); - case STYLE_DOUBLE: - return '"' + escapeString(string, lineWidth) + '"'; + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; default: - throw new YAMLException("impossible error: invalid scalar style"); + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; } - }(); - } - function blockHeader(string, indentPerLevel) { - var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ""; - var clip = string[string.length - 1] === "\n"; - var keep = clip && (string[string.length - 2] === "\n" || string === "\n"); - var chomp = keep ? "+" : clip ? "" : "-"; - return indentIndicator + chomp + "\n"; - } - function dropEndingNewline(string) { - return string[string.length - 1] === "\n" ? string.slice(0, -1) : string; - } - function foldString(string, width) { - var lineRe = /(\n+)([^\n]*)/g; - var result = function() { - var nextLF = string.indexOf("\n"); - nextLF = nextLF !== -1 ? nextLF : string.length; - lineRe.lastIndex = nextLF; - return foldLine(string.slice(0, nextLF), width); - }(); - var prevMoreIndented = string[0] === "\n" || string[0] === " "; - var moreIndented; - var match; - while (match = lineRe.exec(string)) { - var prefix = match[1], line = match[2]; - moreIndented = line[0] === " "; - result += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width); - prevMoreIndented = moreIndented; } - return result; - } - function foldLine(line, width) { - if (line === "" || line[0] === " ") - return line; - var breakRe = / [^ ]/g; - var match; - var start = 0, end, curr = 0, next = 0; - var result = ""; - while (match = breakRe.exec(line)) { - next = match.index; - if (next - start > width) { - end = curr > start ? curr : next; - result += "\n" + line.slice(start, end); - start = end + 1; + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Expression: peg$parseExpression }, peg$startRuleFunction = peg$parseExpression, peg$c0 = "|", peg$c1 = peg$literalExpectation("|", false), peg$c2 = "&", peg$c3 = peg$literalExpectation("&", false), peg$c4 = "^", peg$c5 = peg$literalExpectation("^", false), peg$c6 = function(head, tail) { + return !!tail.reduce((result2, element) => { + switch (element[1]) { + case "|": + return result2 | element[3]; + case "&": + return result2 & element[3]; + case "^": + return result2 ^ element[3]; + } + }, head); + }, peg$c7 = "!", peg$c8 = peg$literalExpectation("!", false), peg$c9 = function(term) { + return !term; + }, peg$c10 = "(", peg$c11 = peg$literalExpectation("(", false), peg$c12 = ")", peg$c13 = peg$literalExpectation(")", false), peg$c14 = function(expr) { + return expr; + }, peg$c15 = /^[^ \t\n\r()!|&\^]/, peg$c16 = peg$classExpectation([" ", " ", "\n", "\r", "(", ")", "!", "|", "&", "^"], true, false), peg$c17 = function(token) { + return options.queryPattern.test(token); + }, peg$c18 = function(token) { + return options.checkFn(token); + }, peg$c19 = peg$otherExpectation("whitespace"), peg$c20 = /^[ \t\n\r]/, peg$c21 = peg$classExpectation([" ", " ", "\n", "\r"], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); } - curr = next; + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; } - result += "\n"; - if (line.length - start > width && curr > start) { - result += line.slice(start, curr) + "\n" + line.slice(curr + 1); - } else { - result += line.slice(start); + function text() { + return input.substring(peg$savedPos, peg$currPos); } - return result.slice(1); - } - function escapeString(string) { - var result = ""; - var char, nextChar; - var escapeSeq; - for (var i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (char >= 55296 && char <= 56319) { - nextChar = string.charCodeAt(i + 1); - if (nextChar >= 56320 && nextChar <= 57343) { - result += encodeHex((char - 55296) * 1024 + nextChar - 56320 + 65536); - i++; - continue; - } - } - escapeSeq = ESCAPE_SEQUENCES[char]; - result += !escapeSeq && isPrintable(char) ? string[i] : escapeSeq || encodeHex(char); + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); } - return result; - } - function writeFlowSequence(state, level, object) { - var _result = "", _tag = state.tag, index, length; - for (index = 0, length = object.length; index < length; index += 1) { - if (writeNode(state, level, object[index], false, false)) { - if (index !== 0) - _result += "," + (!state.condenseFlow ? " " : ""); - _result += state.dump; - } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); } - state.tag = _tag; - state.dump = "[" + _result + "]"; - } - function writeBlockSequence(state, level, object, compact) { - var _result = "", _tag = state.tag, index, length; - for (index = 0, length = object.length; index < length; index += 1) { - if (writeNode(state, level + 1, object[index], true, true)) { - if (!compact || index !== 0) { - _result += generateNextLine(state, level); + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; } - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - _result += "-"; - } else { - _result += "- "; + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; + } + p++; } - _result += state.dump; - } - } - state.tag = _tag; - state.dump = _result || "[]"; - } - function writeFlowMapping(state, level, object) { - var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer; - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ""; - if (index !== 0) - pairBuffer += ", "; - if (state.condenseFlow) - pairBuffer += '"'; - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - if (!writeNode(state, level, objectKey, false, false)) { - continue; - } - if (state.dump.length > 1024) - pairBuffer += "? "; - pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " "); - if (!writeNode(state, level, objectValue, false, false)) { - continue; + peg$posDetailsCache[pos] = details; + return details; } - pairBuffer += state.dump; - _result += pairBuffer; } - state.tag = _tag; - state.dump = "{" + _result + "}"; - } - function writeBlockMapping(state, level, object, compact) { - var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer; - if (state.sortKeys === true) { - objectKeyList.sort(); - } else if (typeof state.sortKeys === "function") { - objectKeyList.sort(state.sortKeys); - } else if (state.sortKeys) { - throw new YAMLException("sortKeys must be a boolean or a function"); + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } + }; } - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ""; - if (!compact || index !== 0) { - pairBuffer += generateNextLine(state, level); + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; } - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; - if (!writeNode(state, level + 1, objectKey, true, true, true)) { - continue; + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } - explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024; - if (explicitPair) { - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += "?"; + peg$maxFailExpected.push(expected2); + } + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); + } + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseTerm(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 124) { + s5 = peg$c0; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 38) { + s5 = peg$c2; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c3); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 94) { + s5 = peg$c4; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } + } + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parse_(); + if (s6 !== peg$FAILED) { + s7 = peg$parseTerm(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { - pairBuffer += "? "; + peg$currPos = s3; + s3 = peg$FAILED; } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 124) { + s5 = peg$c0; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 38) { + s5 = peg$c2; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c3); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 94) { + s5 = peg$c4; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } + } + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parse_(); + if (s6 !== peg$FAILED) { + s7 = peg$parseTerm(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c6(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - pairBuffer += state.dump; - if (explicitPair) { - pairBuffer += generateNextLine(state, level); - } - if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { - continue; + return s0; + } + function peg$parseTerm() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 33) { + s1 = peg$c7; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c8); + } } - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += ":"; + if (s1 !== peg$FAILED) { + s2 = peg$parseTerm(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c9(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - pairBuffer += ": "; + peg$currPos = s0; + s0 = peg$FAILED; } - pairBuffer += state.dump; - _result += pairBuffer; - } - state.tag = _tag; - state.dump = _result || "{}"; - } - function detectType(state, object, explicit) { - var _result, typeList, index, length, type, style; - typeList = explicit ? state.explicitTypes : state.implicitTypes; - for (index = 0, length = typeList.length; index < length; index += 1) { - type = typeList[index]; - if ((type.instanceOf || type.predicate) && (!type.instanceOf || typeof object === "object" && object instanceof type.instanceOf) && (!type.predicate || type.predicate(object))) { - state.tag = explicit ? type.tag : "?"; - if (type.represent) { - style = state.styleMap[type.tag] || type.defaultStyle; - if (_toString.call(type.represent) === "[object Function]") { - _result = type.represent(object, style); - } else if (_hasOwnProperty.call(type.represent, style)) { - _result = type.represent[style](object, style); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 40) { + s1 = peg$c10; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c11); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + s3 = peg$parseExpression(); + if (s3 !== peg$FAILED) { + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s5 = peg$c12; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c14(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - throw new YAMLException("!<" + type.tag + '> tag resolver accepts not "' + style + '" style'); + peg$currPos = s0; + s0 = peg$FAILED; } - state.dump = _result; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$parseToken(); } - return true; } + return s0; } - return false; - } - function writeNode(state, level, object, block, compact, iskey) { - state.tag = null; - state.dump = object; - if (!detectType(state, object, false)) { - detectType(state, object, true); - } - var type = _toString.call(state.dump); - if (block) { - block = state.flowLevel < 0 || state.flowLevel > level; - } - var objectOrArray = type === "[object Object]" || type === "[object Array]", duplicateIndex, duplicate; - if (objectOrArray) { - duplicateIndex = state.duplicates.indexOf(object); - duplicate = duplicateIndex !== -1; - } - if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) { - compact = false; - } - if (duplicate && state.usedDuplicates[duplicateIndex]) { - state.dump = "*ref_" + duplicateIndex; - } else { - if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { - state.usedDuplicates[duplicateIndex] = true; - } - if (type === "[object Object]") { - if (block && Object.keys(state.dump).length !== 0) { - writeBlockMapping(state, level, state.dump, compact); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + state.dump; - } + function peg$parseToken() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parse_(); + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = []; + if (peg$c15.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; } else { - writeFlowMapping(state, level, state.dump); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + " " + state.dump; + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c16); } } - } else if (type === "[object Array]") { - var arrayLevel = state.noArrayIndent && level > 0 ? level - 1 : level; - if (block && state.dump.length !== 0) { - writeBlockSequence(state, arrayLevel, state.dump, compact); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + state.dump; + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + if (peg$c15.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c16); + } + } } } else { - writeFlowSequence(state, arrayLevel, state.dump); - if (duplicate) { - state.dump = "&ref_" + duplicateIndex + " " + state.dump; - } + s3 = peg$FAILED; } - } else if (type === "[object String]") { - if (state.tag !== "?") { - writeScalar(state, state.dump, level, iskey); + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s3 = peg$c17(s2); + if (s3) { + s3 = void 0; + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c18(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } else { - if (state.skipInvalid) - return false; - throw new YAMLException("unacceptable kind of an object to dump " + type); - } - if (state.tag !== null && state.tag !== "?") { - state.dump = "!<" + state.tag + "> " + state.dump; + peg$currPos = s0; + s0 = peg$FAILED; } + return s0; } - return true; - } - function getDuplicateReferences(object, state) { - var objects = [], duplicatesIndexes = [], index, length; - inspectNode(object, objects, duplicatesIndexes); - for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { - state.duplicates.push(objects[duplicatesIndexes[index]]); - } - state.usedDuplicates = new Array(length); - } - function inspectNode(object, objects, duplicatesIndexes) { - var objectKeyList, index, length; - if (object !== null && typeof object === "object") { - index = objects.indexOf(object); - if (index !== -1) { - if (duplicatesIndexes.indexOf(index) === -1) { - duplicatesIndexes.push(index); - } + function peg$parse_() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c20.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; } else { - objects.push(object); - if (Array.isArray(object)) { - for (index = 0, length = object.length; index < length; index += 1) { - inspectNode(object[index], objects, duplicatesIndexes); - } + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); + } + } + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c20.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; } else { - objectKeyList = Object.keys(object); - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); } } } + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c19); + } + } + return s0; + } + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); + } + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); } } - function dump(input, options) { - options = options || {}; - var state = new State(options); - if (!state.noRefs) - getDuplicateReferences(input, state); - if (writeNode(state, 0, input, true, true)) - return state.dump + "\n"; - return ""; - } - function safeDump(input, options) { - return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); - } - module2.exports.dump = dump; - module2.exports.safeDump = safeDump; + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml.js -var require_js_yaml2 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/lib/js-yaml.js"(exports2, module2) { - "use strict"; - var loader = require_loader2(); - var dumper = require_dumper2(); - function deprecated(name) { - return function() { - throw new Error("Function " + name + " is deprecated and cannot be used."); - }; - } - module2.exports.Type = require_type3(); - module2.exports.Schema = require_schema2(); - module2.exports.FAILSAFE_SCHEMA = require_failsafe2(); - module2.exports.JSON_SCHEMA = require_json2(); - module2.exports.CORE_SCHEMA = require_core6(); - module2.exports.DEFAULT_SAFE_SCHEMA = require_default_safe(); - module2.exports.DEFAULT_FULL_SCHEMA = require_default_full(); - module2.exports.load = loader.load; - module2.exports.loadAll = loader.loadAll; - module2.exports.safeLoad = loader.safeLoad; - module2.exports.safeLoadAll = loader.safeLoadAll; - module2.exports.dump = dumper.dump; - module2.exports.safeDump = dumper.safeDump; - module2.exports.YAMLException = require_exception2(); - module2.exports.MINIMAL_SCHEMA = require_failsafe2(); - module2.exports.SAFE_SCHEMA = require_default_safe(); - module2.exports.DEFAULT_SCHEMA = require_default_full(); - module2.exports.scan = deprecated("scan"); - module2.exports.parse = deprecated("parse"); - module2.exports.compose = deprecated("compose"); - module2.exports.addConstructor = deprecated("addConstructor"); +// ../node_modules/.pnpm/tinylogic@2.0.0/node_modules/tinylogic/index.js +var require_tinylogic = __commonJS({ + "../node_modules/.pnpm/tinylogic@2.0.0/node_modules/tinylogic/index.js"(exports2) { + var { parse: parse2 } = require_grammar(); + exports2.makeParser = (queryPattern = /[a-z]+/) => { + return (str, checkFn) => parse2(str, { queryPattern, checkFn }); + }; + exports2.parse = exports2.makeParser(); } }); -// ../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/index.js -var require_js_yaml3 = __commonJS({ - "../../node_modules/.pnpm/js-yaml@3.14.1/node_modules/js-yaml/index.js"(exports2, module2) { - "use strict"; - var yaml = require_js_yaml2(); - module2.exports = yaml; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js +var require_listCacheClear = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js"(exports2, module2) { + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + module2.exports = listCacheClear; } }); -// ../../node_modules/.pnpm/load-yaml-file@0.2.0/node_modules/load-yaml-file/index.js -var require_load_yaml_file = __commonJS({ - "../../node_modules/.pnpm/load-yaml-file@0.2.0/node_modules/load-yaml-file/index.js"(exports2, module2) { - "use strict"; - var fs = require_graceful_fs(); - var pify = require_pify(); - var stripBom = require_strip_bom2(); - var yaml = require_js_yaml3(); - var parse = (data) => yaml.safeLoad(stripBom(data)); - module2.exports = (fp) => pify(fs.readFile)(fp, "utf8").then((data) => parse(data)); - module2.exports.sync = (fp) => parse(fs.readFileSync(fp, "utf8")); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js +var require_eq2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js"(exports2, module2) { + function eq(value, other) { + return value === other || value !== value && other !== other; + } + module2.exports = eq; } }); -// ../../node_modules/.pnpm/which-pm@2.0.0/node_modules/which-pm/index.js -var require_which_pm = __commonJS({ - "../../node_modules/.pnpm/which-pm@2.0.0/node_modules/which-pm/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var pathExists = require_path_exists(); - var loadYamlFile = require_load_yaml_file(); - module2.exports = async function(pkgPath) { - const modulesPath = path.join(pkgPath, "node_modules"); - const exists = await pathExists(path.join(modulesPath, ".yarn-integrity")); - if (exists) - return { name: "yarn" }; - try { - const modules = await loadYamlFile(path.join(modulesPath, ".modules.yaml")); - return toNameAndVersion(modules.packageManager); - } catch (err) { - if (err.code !== "ENOENT") - throw err; - } - const modulesExists = await pathExists(modulesPath); - return modulesExists ? { name: "npm" } : null; - }; - function toNameAndVersion(pkgSpec) { - if (pkgSpec[0] === "@") { - const woPrefix = pkgSpec.substr(1); - const parts2 = woPrefix.split("@"); - return { - name: `@${parts2[0]}`, - version: parts2[1] - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js +var require_assocIndexOf = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js"(exports2, module2) { + var eq = require_eq2(); + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } } - const parts = pkgSpec.split("@"); - return { - name: parts[0], - version: parts[1] - }; + return -1; } + module2.exports = assocIndexOf; } }); -// ../../node_modules/.pnpm/preferred-pm@3.0.3/node_modules/preferred-pm/index.js -var require_preferred_pm = __commonJS({ - "../../node_modules/.pnpm/preferred-pm@3.0.3/node_modules/preferred-pm/index.js"(exports2, module2) { - "use strict"; - var findYarnWorkspaceRoot = require_find_yarn_workspace_root2(); - var findUp = require_find_up(); - var path = require("path"); - var pathExists = require_path_exists(); - var whichPM = require_which_pm(); - module2.exports = async function preferredPM(pkgPath) { - if (typeof pkgPath !== "string") { - throw new TypeError(`pkgPath should be a string, got ${typeof pkgPath}`); - } - if (await pathExists(path.join(pkgPath, "package-lock.json"))) { - return { - name: "npm", - version: ">=5" - }; - } - if (await pathExists(path.join(pkgPath, "yarn.lock"))) { - return { - name: "yarn", - version: "*" - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js +var require_listCacheDelete = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js"(exports2, module2) { + var assocIndexOf = require_assocIndexOf(); + var arrayProto = Array.prototype; + var splice = arrayProto.splice; + function listCacheDelete(key) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + return false; } - if (await pathExists(path.join(pkgPath, "pnpm-lock.yaml"))) { - return { - name: "pnpm", - version: ">=3" - }; + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); } - if (await pathExists(path.join(pkgPath, "shrinkwrap.yaml"))) { - return { - name: "pnpm", - version: "1 || 2" - }; + --this.size; + return true; + } + module2.exports = listCacheDelete; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js +var require_listCacheGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js"(exports2, module2) { + var assocIndexOf = require_assocIndexOf(); + function listCacheGet(key) { + var data = this.__data__, index = assocIndexOf(data, key); + return index < 0 ? void 0 : data[index][1]; + } + module2.exports = listCacheGet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js +var require_listCacheHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js"(exports2, module2) { + var assocIndexOf = require_assocIndexOf(); + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + module2.exports = listCacheHas; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js +var require_listCacheSet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js"(exports2, module2) { + var assocIndexOf = require_assocIndexOf(); + function listCacheSet(key, value) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; } - if (await findUp("pnpm-lock.yaml", { cwd: pkgPath })) { - return { - name: "pnpm", - version: ">=3" - }; + return this; + } + module2.exports = listCacheSet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js +var require_ListCache = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js"(exports2, module2) { + var listCacheClear = require_listCacheClear(); + var listCacheDelete = require_listCacheDelete(); + var listCacheGet = require_listCacheGet(); + var listCacheHas = require_listCacheHas(); + var listCacheSet = require_listCacheSet(); + function ListCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); } + } + ListCache.prototype.clear = listCacheClear; + ListCache.prototype["delete"] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + module2.exports = ListCache; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackClear.js +var require_stackClear = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackClear.js"(exports2, module2) { + var ListCache = require_ListCache(); + function stackClear() { + this.__data__ = new ListCache(); + this.size = 0; + } + module2.exports = stackClear; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackDelete.js +var require_stackDelete = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackDelete.js"(exports2, module2) { + function stackDelete(key) { + var data = this.__data__, result2 = data["delete"](key); + this.size = data.size; + return result2; + } + module2.exports = stackDelete; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackGet.js +var require_stackGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackGet.js"(exports2, module2) { + function stackGet(key) { + return this.__data__.get(key); + } + module2.exports = stackGet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackHas.js +var require_stackHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackHas.js"(exports2, module2) { + function stackHas(key) { + return this.__data__.has(key); + } + module2.exports = stackHas; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js +var require_freeGlobal = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js"(exports2, module2) { + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + module2.exports = freeGlobal; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js +var require_root = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js"(exports2, module2) { + var freeGlobal = require_freeGlobal(); + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + module2.exports = root; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js +var require_Symbol = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js"(exports2, module2) { + var root = require_root(); + var Symbol2 = root.Symbol; + module2.exports = Symbol2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js +var require_getRawTag = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js"(exports2, module2) { + var Symbol2 = require_Symbol(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + var nativeObjectToString = objectProto.toString; + var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; + function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; try { - if (typeof findYarnWorkspaceRoot(pkgPath) === "string") { - return { - name: "yarn", - version: "*" - }; + value[symToStringTag] = void 0; + var unmasked = true; + } catch (e) { + } + var result2 = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; } - } catch (err) { } - const pm = await whichPM(pkgPath); - return pm && { name: pm.name, version: pm.version || "*" }; - }; + return result2; + } + module2.exports = getRawTag; } }); -// ../prepare-package/lib/index.js -var require_lib39 = __commonJS({ - "../prepare-package/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var read_package_json_1 = require_lib32(); - var rimraf_1 = __importDefault(require_rimraf()); - var execa_1 = __importDefault(require_lib26()); - var preferred_pm_1 = __importDefault(require_preferred_pm()); - async function preparePackage(pkgDir) { - var _a, _b, _c; - const manifest = await read_package_json_1.fromDir(pkgDir); - if (((_a = manifest.scripts) === null || _a === void 0 ? void 0 : _a.prepare) != null && manifest.scripts.prepare !== "") { - const pm = (_c = (_b = await preferred_pm_1.default(pkgDir)) === null || _b === void 0 ? void 0 : _b.name) !== null && _c !== void 0 ? _c : "npm"; - await execa_1.default(pm, ["install"], { cwd: pkgDir }); - await rimraf_1.default(path_1.default.join(pkgDir, "node_modules")); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js +var require_objectToString = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js"(exports2, module2) { + var objectProto = Object.prototype; + var nativeObjectToString = objectProto.toString; + function objectToString(value) { + return nativeObjectToString.call(value); + } + module2.exports = objectToString; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js +var require_baseGetTag = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js"(exports2, module2) { + var Symbol2 = require_Symbol(); + var getRawTag = require_getRawTag(); + var objectToString = require_objectToString(); + var nullTag = "[object Null]"; + var undefinedTag = "[object Undefined]"; + var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; + function baseGetTag(value) { + if (value == null) { + return value === void 0 ? undefinedTag : nullTag; } + return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); } - exports2.default = preparePackage; + module2.exports = baseGetTag; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/omit.js -var require_omit = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/omit.js"(exports2, module2) { - var _curry2 = require_curry2(); - var omit = /* @__PURE__ */ _curry2(function omit2(names, obj) { - var result = {}; - var index = {}; - var idx = 0; - var len = names.length; - while (idx < len) { - index[names[idx]] = 1; - idx += 1; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js +var require_isObject2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js"(exports2, module2) { + function isObject(value) { + var type = typeof value; + return value != null && (type == "object" || type == "function"); + } + module2.exports = isObject; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js +var require_isFunction2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js"(exports2, module2) { + var baseGetTag = require_baseGetTag(); + var isObject = require_isObject2(); + var asyncTag = "[object AsyncFunction]"; + var funcTag = "[object Function]"; + var genTag = "[object GeneratorFunction]"; + var proxyTag = "[object Proxy]"; + function isFunction(value) { + if (!isObject(value)) { + return false; } - for (var prop in obj) { - if (!index.hasOwnProperty(prop)) { - result[prop] = obj[prop]; + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + module2.exports = isFunction; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js +var require_coreJsData = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js"(exports2, module2) { + var root = require_root(); + var coreJsData = root["__core-js_shared__"]; + module2.exports = coreJsData; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js +var require_isMasked = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js"(exports2, module2) { + var coreJsData = require_coreJsData(); + var maskSrcKey = function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); + return uid ? "Symbol(src)_1." + uid : ""; + }(); + function isMasked(func) { + return !!maskSrcKey && maskSrcKey in func; + } + module2.exports = isMasked; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js +var require_toSource = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js"(exports2, module2) { + var funcProto = Function.prototype; + var funcToString = funcProto.toString; + function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) { + } + try { + return func + ""; + } catch (e) { } } - return result; - }); - module2.exports = omit; + return ""; + } + module2.exports = toSource; } }); -// ../tarball-fetcher/lib/errorTypes/BadTarballError.js -var require_BadTarballError = __commonJS({ - "../tarball-fetcher/lib/errorTypes/BadTarballError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var BadTarballError = class extends error_1.default { - constructor(opts) { - const message2 = `Actual size (${opts.receivedSize}) of tarball (${opts.tarballUrl}) did not match the one specified in 'Content-Length' header (${opts.expectedSize})`; - super("BAD_TARBALL_SIZE", message2, { - attempts: opts === null || opts === void 0 ? void 0 : opts.attempts - }); - this.expectedSize = opts.expectedSize; - this.receivedSize = opts.receivedSize; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js +var require_baseIsNative = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js"(exports2, module2) { + var isFunction = require_isFunction2(); + var isMasked = require_isMasked(); + var isObject = require_isObject2(); + var toSource = require_toSource(); + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + var reIsHostCtor = /^\[object .+?Constructor\]$/; + var funcProto = Function.prototype; + var objectProto = Object.prototype; + var funcToString = funcProto.toString; + var hasOwnProperty = objectProto.hasOwnProperty; + var reIsNative = RegExp( + "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" + ); + function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; } - }; - exports2.default = BadTarballError; + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + module2.exports = baseIsNative; } }); -// ../tarball-fetcher/lib/errorTypes/index.js -var require_errorTypes = __commonJS({ - "../tarball-fetcher/lib/errorTypes/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BadTarballError = void 0; - var BadTarballError_1 = __importDefault(require_BadTarballError()); - exports2.BadTarballError = BadTarballError_1.default; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js +var require_getValue = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js"(exports2, module2) { + function getValue(object, key) { + return object == null ? void 0 : object[key]; + } + module2.exports = getValue; } }); -// ../tarball-fetcher/lib/createDownloader.js -var require_createDownloader = __commonJS({ - "../tarball-fetcher/lib/createDownloader.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitForFilesIndex = exports2.TarballIntegrityError = void 0; - var url_1 = __importDefault(require("url")); - var core_loggers_1 = require_lib12(); - var error_1 = __importStar2(require_lib8()); - var prepare_package_1 = __importDefault(require_lib39()); - var retry = __importStar2(require_retry2()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var omit_1 = __importDefault(require_omit()); - var ssri_1 = __importDefault(require_ssri()); - var errorTypes_1 = require_errorTypes(); - var BIG_TARBALL_SIZE = 1024 * 1024 * 5; - var TarballIntegrityError = class extends error_1.default { - constructor(opts) { - super("TARBALL_INTEGRITY", `Got unexpected checksum for "${opts.url}". Wanted "${opts.expected}". Got "${opts.found}".`, { attempts: opts.attempts }); - this.found = opts.found; - this.expected = opts.expected; - this.algorithm = opts.algorithm; - this.sri = opts.sri; - this.url = opts.url; - } - }; - exports2.TarballIntegrityError = TarballIntegrityError; - exports2.default = (fetchFromRegistry, gotOpts) => { - const retryOpts = { - factor: 10, - maxTimeout: 6e4, - minTimeout: 1e4, - retries: 2, - ...gotOpts.retry - }; - return async function download(url, opts) { - const shouldAuth = opts.auth != null && (opts.auth.alwaysAuth === true || !opts.registry || new url_1.default.URL(url).host === new url_1.default.URL(opts.registry).host); - const op = retry.operation(retryOpts); - return new Promise((resolve, reject) => { - op.attempt(async (attempt) => { - var _a, _b; - try { - resolve(await fetch(attempt)); - } catch (error) { - if (((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === 401 || ((_b = error.response) === null || _b === void 0 ? void 0 : _b.status) === 403) { - reject(error); - } - const timeout = op.retry(error); - if (timeout === false) { - reject(op.mainError()); - return; - } - core_loggers_1.requestRetryLogger.debug({ - attempt, - error, - maxRetries: retryOpts.retries, - method: "GET", - timeout, - url - }); - } - }); - }); - async function fetch(currentAttempt) { - var _a; - try { - const authHeaderValue = shouldAuth ? (_a = opts.auth) === null || _a === void 0 ? void 0 : _a.authHeaderValue : void 0; - const res = await fetchFromRegistry(url, { - authHeaderValue, - retry: { retries: 0 }, - timeout: gotOpts.timeout - }); - if (res.status !== 200) { - throw new error_1.FetchError({ url, authHeaderValue }, res); - } - const contentLength = res.headers.has("content-length") && res.headers.get("content-length"); - const size = typeof contentLength === "string" ? parseInt(contentLength, 10) : null; - if (opts.onStart != null) { - opts.onStart(size, currentAttempt); - } - const onProgress = size != null && size >= BIG_TARBALL_SIZE ? opts.onProgress : void 0; - let downloaded = 0; - res.body.on("data", (chunk) => { - downloaded += chunk.length; - if (onProgress != null) - onProgress(downloaded); - }); - return await new Promise(async (resolve, reject) => { - const stream = res.body.on("error", reject); - try { - const [integrityCheckResult, filesIndex] = await Promise.all([ - opts.integrity ? safeCheckStream(res.body, opts.integrity, url) : true, - opts.cafs.addFilesFromTarball(res.body, opts.manifest), - waitTillClosed({ stream, size, getDownloaded: () => downloaded, url }) - ]); - if (integrityCheckResult !== true) { - throw integrityCheckResult; - } - if (!isGitHostedPkgUrl(url)) { - resolve({ filesIndex }); - return; - } - resolve({ filesIndex: await prepareGitHostedPkg(filesIndex, opts.cafs) }); - } catch (err) { - reject(err); - } - }); - } catch (err) { - err.attempts = currentAttempt; - err.resource = url; - throw err; - } - } - }; - }; - function isGitHostedPkgUrl(url) { - return (url.startsWith("https://codeload.github.com/") || url.startsWith("https://bitbucket.org/") || url.startsWith("https://gitlab.com/")) && url.includes("tar.gz"); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js +var require_getNative = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js"(exports2, module2) { + var baseIsNative = require_baseIsNative(); + var getValue = require_getValue(); + function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : void 0; } - async function waitForFilesIndex(filesIndex) { - return fromPairs_1.default(await Promise.all(Object.entries(filesIndex).map(async ([fileName, fileInfo]) => { - const { integrity, checkedAt } = await fileInfo.writeResult; - return [ - fileName, - { - ...omit_1.default(["writeResult"], fileInfo), - checkedAt, - integrity: integrity.toString() - } - ]; - }))); + module2.exports = getNative; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js +var require_Map = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js"(exports2, module2) { + var getNative = require_getNative(); + var root = require_root(); + var Map2 = getNative(root, "Map"); + module2.exports = Map2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js +var require_nativeCreate = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js"(exports2, module2) { + var getNative = require_getNative(); + var nativeCreate = getNative(Object, "create"); + module2.exports = nativeCreate; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js +var require_hashClear = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js"(exports2, module2) { + var nativeCreate = require_nativeCreate(); + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; } - exports2.waitForFilesIndex = waitForFilesIndex; - async function prepareGitHostedPkg(filesIndex, cafs) { - const tempLocation = await cafs.tempDir(); - await cafs.importPackage(tempLocation, { - filesResponse: { - filesIndex: await waitForFilesIndex(filesIndex), - fromStore: false - }, - force: true - }); - await prepare_package_1.default(tempLocation); - const newFilesIndex = await cafs.addFilesFromDir(tempLocation); - return newFilesIndex; + module2.exports = hashClear; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js +var require_hashDelete = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js"(exports2, module2) { + function hashDelete(key) { + var result2 = this.has(key) && delete this.__data__[key]; + this.size -= result2 ? 1 : 0; + return result2; } - async function safeCheckStream(stream, integrity, url) { - try { - await ssri_1.default.checkStream(stream, integrity); - return true; - } catch (err) { - return new TarballIntegrityError({ - algorithm: err["algorithm"], - expected: err["expected"], - found: err["found"], - sri: err["sri"], - url - }); + module2.exports = hashDelete; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js +var require_hashGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js"(exports2, module2) { + var nativeCreate = require_nativeCreate(); + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result2 = data[key]; + return result2 === HASH_UNDEFINED ? void 0 : result2; } + return hasOwnProperty.call(data, key) ? data[key] : void 0; } - async function waitTillClosed(opts) { - return new Promise((resolve, reject) => { - opts.stream.on("end", () => { - const downloaded = opts.getDownloaded(); - if (opts.size !== null && opts.size !== downloaded) { - const err = new errorTypes_1.BadTarballError({ - expectedSize: opts.size, - receivedSize: downloaded, - tarballUrl: opts.url - }); - reject(err); - return; - } - resolve(); - }); - }); + module2.exports = hashGet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js +var require_hashHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js"(exports2, module2) { + var nativeCreate = require_nativeCreate(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } + module2.exports = hashHas; } }); -// ../tarball-fetcher/lib/index.js -var require_lib40 = __commonJS({ - "../tarball-fetcher/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js +var require_hashSet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js"(exports2, module2) { + var nativeCreate = require_nativeCreate(); + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; + return this; + } + module2.exports = hashSet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js +var require_Hash = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js"(exports2, module2) { + var hashClear = require_hashClear(); + var hashDelete = require_hashDelete(); + var hashGet = require_hashGet(); + var hashHas = require_hashHas(); + var hashSet = require_hashSet(); + function Hash(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.waitForFilesIndex = exports2.TarballIntegrityError = exports2.BadTarballError = void 0; - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var graceful_fs_1 = __importDefault(require_lib18()); - var ssri_1 = __importDefault(require_ssri()); - var createDownloader_1 = __importStar2(require_createDownloader()); - Object.defineProperty(exports2, "TarballIntegrityError", { enumerable: true, get: function() { - return createDownloader_1.TarballIntegrityError; - } }); - Object.defineProperty(exports2, "waitForFilesIndex", { enumerable: true, get: function() { - return createDownloader_1.waitForFilesIndex; - } }); - var errorTypes_1 = require_errorTypes(); - Object.defineProperty(exports2, "BadTarballError", { enumerable: true, get: function() { - return errorTypes_1.BadTarballError; - } }); - function default_1(fetchFromRegistry, getCredentials, opts) { - const download = createDownloader_1.default(fetchFromRegistry, { - retry: opts.retry, - timeout: opts.timeout - }); - return { - tarball: fetchFromTarball.bind(null, { - download, - getCredentialsByURI: getCredentials, - offline: opts.offline - }) + } + Hash.prototype.clear = hashClear; + Hash.prototype["delete"] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + module2.exports = Hash; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js +var require_mapCacheClear = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js"(exports2, module2) { + var Hash = require_Hash(); + var ListCache = require_ListCache(); + var Map2 = require_Map(); + function mapCacheClear() { + this.size = 0; + this.__data__ = { + "hash": new Hash(), + "map": new (Map2 || ListCache)(), + "string": new Hash() }; } - exports2.default = default_1; - async function fetchFromTarball(ctx, cafs, resolution, opts) { - if (resolution.tarball.startsWith("file:")) { - const tarball = resolvePath(opts.lockfileDir, resolution.tarball.slice(5)); - return fetchFromLocalTarball(cafs, tarball, { - integrity: resolution.integrity, - manifest: opts.manifest - }); - } - if (ctx.offline) { - throw new error_1.default("NO_OFFLINE_TARBALL", `A package is missing from the store but cannot download it in offline mode. The missing package may be downloaded from ${resolution.tarball}.`); - } - const auth = resolution.registry ? ctx.getCredentialsByURI(resolution.registry) : void 0; - return ctx.download(resolution.tarball, { - auth, - cafs, - integrity: resolution.integrity, - manifest: opts.manifest, - onProgress: opts.onProgress, - onStart: opts.onStart, - registry: resolution.registry - }); + module2.exports = mapCacheClear; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js +var require_isKeyable = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js"(exports2, module2) { + function isKeyable(value) { + var type = typeof value; + return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } - var isAbsolutePath = /^[/]|^[A-Za-z]:/; - function resolvePath(where, spec) { - if (isAbsolutePath.test(spec)) - return spec; - return path_1.default.resolve(where, spec); + module2.exports = isKeyable; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js +var require_getMapData = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js"(exports2, module2) { + var isKeyable = require_isKeyable(); + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } - async function fetchFromLocalTarball(cafs, tarball, opts) { - try { - const tarballStream = graceful_fs_1.default.createReadStream(tarball); - const [fetchResult] = await Promise.all([ - cafs.addFilesFromTarball(tarballStream, opts.manifest), - opts.integrity && ssri_1.default.checkStream(tarballStream, opts.integrity) - ]); - return { filesIndex: fetchResult }; - } catch (err) { - const error = new createDownloader_1.TarballIntegrityError({ - attempts: 1, - algorithm: err["algorithm"], - expected: err["expected"], - found: err["found"], - sri: err["sri"], - url: tarball - }); - error["resource"] = tarball; - throw error; - } + module2.exports = getMapData; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js +var require_mapCacheDelete = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js"(exports2, module2) { + var getMapData = require_getMapData(); + function mapCacheDelete(key) { + var result2 = getMapData(this, key)["delete"](key); + this.size -= result2 ? 1 : 0; + return result2; } + module2.exports = mapCacheDelete; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/fileSystem.js -var require_fileSystem = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/fileSystem.js"(exports2) { - exports2.require = function() { - if (typeof process === "object" && process.versions && process.versions["electron"]) { - try { - const originalFs = require("original-fs"); - if (Object.keys(originalFs).length > 0) { - return originalFs; - } - } catch (e) { - } - } - return require("fs"); - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js +var require_mapCacheGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js"(exports2, module2) { + var getMapData = require_getMapData(); + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + module2.exports = mapCacheGet; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/constants.js -var require_constants9 = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/constants.js"(exports2, module2) { - module2.exports = { - LOCHDR: 30, - LOCSIG: 67324752, - LOCVER: 4, - LOCFLG: 6, - LOCHOW: 8, - LOCTIM: 10, - LOCCRC: 14, - LOCSIZ: 18, - LOCLEN: 22, - LOCNAM: 26, - LOCEXT: 28, - EXTSIG: 134695760, - EXTHDR: 16, - EXTCRC: 4, - EXTSIZ: 8, - EXTLEN: 12, - CENHDR: 46, - CENSIG: 33639248, - CENVEM: 4, - CENVER: 6, - CENFLG: 8, - CENHOW: 10, - CENTIM: 12, - CENCRC: 16, - CENSIZ: 20, - CENLEN: 24, - CENNAM: 28, - CENEXT: 30, - CENCOM: 32, - CENDSK: 34, - CENATT: 36, - CENATX: 38, - CENOFF: 42, - ENDHDR: 22, - ENDSIG: 101010256, - ENDSUB: 8, - ENDTOT: 10, - ENDSIZ: 12, - ENDOFF: 16, - ENDCOM: 20, - END64HDR: 20, - END64SIG: 117853008, - END64START: 4, - END64OFF: 8, - END64NUMDISKS: 16, - ZIP64SIG: 101075792, - ZIP64HDR: 56, - ZIP64LEAD: 12, - ZIP64SIZE: 4, - ZIP64VEM: 12, - ZIP64VER: 14, - ZIP64DSK: 16, - ZIP64DSKDIR: 20, - ZIP64SUB: 24, - ZIP64TOT: 32, - ZIP64SIZB: 40, - ZIP64OFF: 48, - ZIP64EXTRA: 56, - STORED: 0, - SHRUNK: 1, - REDUCED1: 2, - REDUCED2: 3, - REDUCED3: 4, - REDUCED4: 5, - IMPLODED: 6, - DEFLATED: 8, - ENHANCED_DEFLATED: 9, - PKWARE: 10, - BZIP2: 12, - LZMA: 14, - IBM_TERSE: 18, - IBM_LZ77: 19, - AES_ENCRYPT: 99, - FLG_ENC: 1, - FLG_COMP1: 2, - FLG_COMP2: 4, - FLG_DESC: 8, - FLG_ENH: 16, - FLG_PATCH: 32, - FLG_STR: 64, - FLG_EFS: 2048, - FLG_MSK: 4096, - FILE: 2, - BUFFER: 1, - NONE: 0, - EF_ID: 0, - EF_SIZE: 2, - ID_ZIP64: 1, - ID_AVINFO: 7, - ID_PFS: 8, - ID_OS2: 9, - ID_NTFS: 10, - ID_OPENVMS: 12, - ID_UNIX: 13, - ID_FORK: 14, - ID_PATCH: 15, - ID_X509_PKCS7: 20, - ID_X509_CERTID_F: 21, - ID_X509_CERTID_C: 22, - ID_STRONGENC: 23, - ID_RECORD_MGT: 24, - ID_X509_PKCS7_RL: 25, - ID_IBM1: 101, - ID_IBM2: 102, - ID_POSZIP: 18064, - EF_ZIP64_OR_32: 4294967295, - EF_ZIP64_OR_16: 65535, - EF_ZIP64_SUNCOMP: 0, - EF_ZIP64_SCOMP: 8, - EF_ZIP64_RHO: 16, - EF_ZIP64_DSN: 24 - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js +var require_mapCacheHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js"(exports2, module2) { + var getMapData = require_getMapData(); + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + module2.exports = mapCacheHas; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/utils.js -var require_utils8 = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/utils.js"(exports2, module2) { - var fs = require_fileSystem().require(); - var pth = require("path"); - var Constants = require_constants9(); - var isWin = typeof process === "object" && process.platform === "win32"; - module2.exports = function() { - const crcTable = []; - const PATH_SEPARATOR = pth.sep; - function genCRCTable() { - for (let n = 0; n < 256; n++) { - let c = n; - for (let k = 8; --k >= 0; ) - if ((c & 1) !== 0) { - c = 3988292384 ^ c >>> 1; - } else { - c = c >>> 1; - } - crcTable[n] = c >>> 0; - } - } - function mkdirSync(path) { - var resolvedPath = path.split(PATH_SEPARATOR)[0]; - path.split(PATH_SEPARATOR).forEach(function(name) { - if (!name || name.substr(-1, 1) === ":") - return; - resolvedPath += PATH_SEPARATOR + name; - var stat; - try { - stat = fs.statSync(resolvedPath); - } catch (e) { - fs.mkdirSync(resolvedPath); - } - if (stat && stat.isFile()) - throw Errors.FILE_IN_THE_WAY.replace("%s", resolvedPath); - }); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js +var require_mapCacheSet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js"(exports2, module2) { + var getMapData = require_getMapData(); + function mapCacheSet(key, value) { + var data = getMapData(this, key), size = data.size; + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + module2.exports = mapCacheSet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js +var require_MapCache = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js"(exports2, module2) { + var mapCacheClear = require_mapCacheClear(); + var mapCacheDelete = require_mapCacheDelete(); + var mapCacheGet = require_mapCacheGet(); + var mapCacheHas = require_mapCacheHas(); + var mapCacheSet = require_mapCacheSet(); + function MapCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); } - function findSync(dir, pattern, recoursive) { - if (typeof pattern === "boolean") { - recoursive = pattern; - pattern = void 0; + } + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype["delete"] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + module2.exports = MapCache; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackSet.js +var require_stackSet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stackSet.js"(exports2, module2) { + var ListCache = require_ListCache(); + var Map2 = require_Map(); + var MapCache = require_MapCache(); + var LARGE_ARRAY_SIZE = 200; + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { + pairs.push([key, value]); + this.size = ++data.size; + return this; } - var files = []; - fs.readdirSync(dir).forEach(function(file) { - var path = pth.join(dir, file); - if (fs.statSync(path).isDirectory() && recoursive) - files = files.concat(findSync(path, pattern, recoursive)); - if (!pattern || pattern.test(path)) { - files.push(pth.normalize(path) + (fs.statSync(path).isDirectory() ? PATH_SEPARATOR : "")); - } - }); - return files; - } - function readBigUInt64LE(buffer, index) { - var slice = Buffer.from(buffer.slice(index, index + 8)); - slice.swap64(); - return parseInt(`0x${slice.toString("hex")}`); + data = this.__data__ = new MapCache(pairs); } - return { - makeDir: function(path) { - mkdirSync(path); - }, - crc32: function(buf) { - if (typeof buf === "string") { - buf = Buffer.from(buf, "utf8"); - } - if (!crcTable.length) - genCRCTable(); - let off = 0; - let len = buf.length; - let crc = ~0; - while (--len >= 0) - crc = crcTable[(crc ^ buf[off++]) & 255] ^ crc >>> 8; - return ~crc >>> 0; - }, - methodToString: function(method) { - switch (method) { - case Constants.STORED: - return "STORED (" + method + ")"; - case Constants.DEFLATED: - return "DEFLATED (" + method + ")"; - default: - return "UNSUPPORTED (" + method + ")"; - } - }, - writeFileTo: function(path, content, overwrite, attr) { - if (fs.existsSync(path)) { - if (!overwrite) - return false; - var stat = fs.statSync(path); - if (stat.isDirectory()) { - return false; - } - } - var folder = pth.dirname(path); - if (!fs.existsSync(folder)) { - mkdirSync(folder); - } - var fd; - try { - fd = fs.openSync(path, "w", 438); - } catch (e) { - fs.chmodSync(path, 438); - fd = fs.openSync(path, "w", 438); - } - if (fd) { - try { - fs.writeSync(fd, content, 0, content.length, 0); - } finally { - fs.closeSync(fd); - } - } - fs.chmodSync(path, attr || 438); - return true; - }, - canonical: function(p) { - if (!p) - return ""; - var safeSuffix = pth.posix.normalize("/" + p.split("\\").join("/")); - return pth.join(".", safeSuffix); - }, - sanitize: function(prefix, name) { - prefix = pth.resolve(pth.normalize(prefix)); - var parts = name.split("/"); - for (var i = 0, l = parts.length; i < l; i++) { - var path = pth.normalize(pth.join(prefix, parts.slice(i, l).join(pth.sep))); - if (path.indexOf(prefix) === 0) { - return path; - } - } - return pth.normalize(pth.join(prefix, pth.basename(name))); - }, - writeFileToAsync: function(path, content, overwrite, attr, callback) { - if (typeof attr === "function") { - callback = attr; - attr = void 0; - } - fs.exists(path, function(exist) { - if (exist && !overwrite) - return callback(false); - fs.stat(path, function(err, stat) { - if (exist && stat.isDirectory()) { - return callback(false); - } - var folder = pth.dirname(path); - fs.exists(folder, function(exists) { - if (!exists) - mkdirSync(folder); - fs.open(path, "w", 438, function(err2, fd) { - if (err2) { - fs.chmod(path, 438, function() { - fs.open(path, "w", 438, function(err3, fd2) { - fs.write(fd2, content, 0, content.length, 0, function() { - fs.close(fd2, function() { - fs.chmod(path, attr || 438, function() { - callback(true); - }); - }); - }); - }); - }); - } else if (fd) { - fs.write(fd, content, 0, content.length, 0, function() { - fs.close(fd, function() { - fs.chmod(path, attr || 438, function() { - callback(true); - }); - }); - }); - } else { - fs.chmod(path, attr || 438, function() { - callback(true); - }); - } - }); - }); - }); - }); - }, - findFiles: function(path) { - return findSync(path, true); - }, - getAttributes: function() { - }, - setAttributes: function() { - }, - toBuffer: function(input) { - if (Buffer.isBuffer(input)) { - return input; - } else if (input instanceof Uint8Array) { - return Buffer.from(input); - } else { - return typeof input === "string" ? Buffer.from(input, "utf8") : Buffer.alloc(0); - } - }, - isWin, - readBigUInt64LE - }; - }(); + data.set(key, value); + this.size = data.size; + return this; + } + module2.exports = stackSet; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/errors.js -var require_errors2 = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/errors.js"(exports2, module2) { - module2.exports = { - INVALID_LOC: "Invalid LOC header (bad signature)", - INVALID_CEN: "Invalid CEN header (bad signature)", - INVALID_END: "Invalid END header (bad signature)", - NO_DATA: "Nothing to decompress", - BAD_CRC: "CRC32 checksum failed", - FILE_IN_THE_WAY: "There is a file in the way: %s", - UNKNOWN_METHOD: "Invalid/unsupported compression method", - AVAIL_DATA: "inflate::Available inflate data did not terminate", - INVALID_DISTANCE: "inflate::Invalid literal/length or distance code in fixed or dynamic block", - TO_MANY_CODES: "inflate::Dynamic block code description: too many length or distance codes", - INVALID_REPEAT_LEN: "inflate::Dynamic block code description: repeat more than specified lengths", - INVALID_REPEAT_FIRST: "inflate::Dynamic block code description: repeat lengths with no first length", - INCOMPLETE_CODES: "inflate::Dynamic block code description: code lengths codes incomplete", - INVALID_DYN_DISTANCE: "inflate::Dynamic block code description: invalid distance code lengths", - INVALID_CODES_LEN: "inflate::Dynamic block code description: invalid literal/length code lengths", - INVALID_STORE_BLOCK: "inflate::Stored block length did not match one's complement", - INVALID_BLOCK_TYPE: "inflate::Invalid block type (type == 3)", - CANT_EXTRACT_FILE: "Could not extract the file", - CANT_OVERRIDE: "Target file already exists", - NO_ZIP: "No zip file was loaded", - NO_ENTRY: "Entry doesn't exist", - DIRECTORY_CONTENT_ERROR: "A directory cannot have content", - FILE_NOT_FOUND: "File not found: %s", - NOT_IMPLEMENTED: "Not implemented", - INVALID_FILENAME: "Invalid filename", - INVALID_FORMAT: "Invalid or unsupported zip format. No END header found" - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Stack.js +var require_Stack = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Stack.js"(exports2, module2) { + var ListCache = require_ListCache(); + var stackClear = require_stackClear(); + var stackDelete = require_stackDelete(); + var stackGet = require_stackGet(); + var stackHas = require_stackHas(); + var stackSet = require_stackSet(); + function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + Stack.prototype.clear = stackClear; + Stack.prototype["delete"] = stackDelete; + Stack.prototype.get = stackGet; + Stack.prototype.has = stackHas; + Stack.prototype.set = stackSet; + module2.exports = Stack; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/fattr.js -var require_fattr = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/fattr.js"(exports2, module2) { - var fs = require_fileSystem().require(); - var pth = require("path"); - fs.existsSync = fs.existsSync || pth.existsSync; - module2.exports = function(path) { - var _path = path || "", _obj = newAttr(), _stat = null; - function newAttr() { - return { - directory: false, - readonly: false, - hidden: false, - executable: false, - mtime: 0, - atime: 0 - }; - } - if (_path && fs.existsSync(_path)) { - _stat = fs.statSync(_path); - _obj.directory = _stat.isDirectory(); - _obj.mtime = _stat.mtime; - _obj.atime = _stat.atime; - _obj.executable = (73 & _stat.mode) !== 0; - _obj.readonly = (128 & _stat.mode) === 0; - _obj.hidden = pth.basename(_path)[0] === "."; - } else { - console.warn("Invalid path: " + _path); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js +var require_setCacheAdd = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js"(exports2, module2) { + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + module2.exports = setCacheAdd; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js +var require_setCacheHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js"(exports2, module2) { + function setCacheHas(value) { + return this.__data__.has(value); + } + module2.exports = setCacheHas; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js +var require_SetCache = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js"(exports2, module2) { + var MapCache = require_MapCache(); + var setCacheAdd = require_setCacheAdd(); + var setCacheHas = require_setCacheHas(); + function SetCache(values) { + var index = -1, length = values == null ? 0 : values.length; + this.__data__ = new MapCache(); + while (++index < length) { + this.add(values[index]); } - return { - get directory() { - return _obj.directory; - }, - get readOnly() { - return _obj.readonly; - }, - get hidden() { - return _obj.hidden; - }, - get mtime() { - return _obj.mtime; - }, - get atime() { - return _obj.atime; - }, - get executable() { - return _obj.executable; - }, - decodeAttributes: function() { - }, - encodeAttributes: function() { - }, - toJSON: function() { - return { - path: _path, - isDirectory: _obj.directory, - isReadOnly: _obj.readonly, - isHidden: _obj.hidden, - isExecutable: _obj.executable, - mTime: _obj.mtime, - aTime: _obj.atime - }; - }, - toString: function() { - return JSON.stringify(this.toJSON(), null, " "); + } + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + module2.exports = SetCache; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arraySome.js +var require_arraySome = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arraySome.js"(exports2, module2) { + function arraySome(array, predicate) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; } - }; - }; + } + return false; + } + module2.exports = arraySome; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/index.js -var require_util7 = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/util/index.js"(exports2, module2) { - module2.exports = require_utils8(); - module2.exports.FileSystem = require_fileSystem(); - module2.exports.Constants = require_constants9(); - module2.exports.Errors = require_errors2(); - module2.exports.FileAttr = require_fattr(); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js +var require_cacheHas = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js"(exports2, module2) { + function cacheHas(cache, key) { + return cache.has(key); + } + module2.exports = cacheHas; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/entryHeader.js -var require_entryHeader = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/entryHeader.js"(exports2, module2) { - var Utils = require_util7(); - var Constants = Utils.Constants; - module2.exports = function() { - var _verMade = 20, _version = 10, _flags = 0, _method = 0, _time = 0, _crc = 0, _compressedSize = 0, _size = 0, _fnameLen = 0, _extraLen = 0, _comLen = 0, _diskStart = 0, _inattr = 0, _attr = 0, _offset = 0; - _verMade |= Utils.isWin ? 2560 : 768; - _flags |= Constants.FLG_EFS; - var _dataHeader = {}; - function setTime(val) { - val = new Date(val); - _time = (val.getFullYear() - 1980 & 127) << 25 | val.getMonth() + 1 << 21 | val.getDate() << 16 | val.getHours() << 11 | val.getMinutes() << 5 | val.getSeconds() >> 1; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalArrays.js +var require_equalArrays = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalArrays.js"(exports2, module2) { + var SetCache = require_SetCache(); + var arraySome = require_arraySome(); + var cacheHas = require_cacheHas(); + var COMPARE_PARTIAL_FLAG = 1; + var COMPARE_UNORDERED_FLAG = 2; + function equalArrays(array, other, bitmask, customizer, equalFunc, stack2) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; } - setTime(+new Date()); - return { - get made() { - return _verMade; - }, - set made(val) { - _verMade = val; - }, - get version() { - return _version; - }, - set version(val) { - _version = val; - }, - get flags() { - return _flags; - }, - set flags(val) { - _flags = val; - }, - get method() { - return _method; - }, - set method(val) { - switch (val) { - case Constants.STORED: - this.version = 10; - case Constants.DEFLATED: - default: - this.version = 20; - } - _method = val; - }, - get time() { - return new Date((_time >> 25 & 127) + 1980, (_time >> 21 & 15) - 1, _time >> 16 & 31, _time >> 11 & 31, _time >> 5 & 63, (_time & 31) << 1); - }, - set time(val) { - setTime(val); - }, - get crc() { - return _crc; - }, - set crc(val) { - _crc = Math.max(0, val) >>> 0; - }, - get compressedSize() { - return _compressedSize; - }, - set compressedSize(val) { - _compressedSize = Math.max(0, val) >>> 0; - }, - get size() { - return _size; - }, - set size(val) { - _size = Math.max(0, val) >>> 0; - }, - get fileNameLength() { - return _fnameLen; - }, - set fileNameLength(val) { - _fnameLen = val; - }, - get extraLength() { - return _extraLen; - }, - set extraLength(val) { - _extraLen = val; - }, - get commentLength() { - return _comLen; - }, - set commentLength(val) { - _comLen = val; - }, - get diskNumStart() { - return _diskStart; - }, - set diskNumStart(val) { - _diskStart = Math.max(0, val) >>> 0; - }, - get inAttr() { - return _inattr; - }, - set inAttr(val) { - _inattr = Math.max(0, val) >>> 0; - }, - get attr() { - return _attr; - }, - set attr(val) { - _attr = Math.max(0, val) >>> 0; - }, - get fileAttr() { - return (_attr >>> 0 | 0) >> 16 & 4095; - }, - get offset() { - return _offset; - }, - set offset(val) { - _offset = Math.max(0, val) >>> 0; - }, - get encripted() { - return (_flags & 1) === 1; - }, - get entryHeaderSize() { - return Constants.CENHDR + _fnameLen + _extraLen + _comLen; - }, - get realDataOffset() { - return _offset + Constants.LOCHDR + _dataHeader.fnameLen + _dataHeader.extraLen; - }, - get dataHeader() { - return _dataHeader; - }, - loadDataHeaderFromBinary: function(input) { - var data = input.slice(_offset, _offset + Constants.LOCHDR); - if (data.readUInt32LE(0) !== Constants.LOCSIG) { - throw new Error(Utils.Errors.INVALID_LOC); + var arrStacked = stack2.get(array); + var othStacked = stack2.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, result2 = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : void 0; + stack2.set(array, other); + stack2.set(other, array); + while (++index < arrLength) { + var arrValue = array[index], othValue = other[index]; + if (customizer) { + var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack2) : customizer(arrValue, othValue, index, array, other, stack2); + } + if (compared !== void 0) { + if (compared) { + continue; } - _dataHeader = { - version: data.readUInt16LE(Constants.LOCVER), - flags: data.readUInt16LE(Constants.LOCFLG), - method: data.readUInt16LE(Constants.LOCHOW), - time: data.readUInt32LE(Constants.LOCTIM), - crc: data.readUInt32LE(Constants.LOCCRC), - compressedSize: data.readUInt32LE(Constants.LOCSIZ), - size: data.readUInt32LE(Constants.LOCLEN), - fnameLen: data.readUInt16LE(Constants.LOCNAM), - extraLen: data.readUInt16LE(Constants.LOCEXT) - }; - }, - loadFromBinary: function(data) { - if (data.length !== Constants.CENHDR || data.readUInt32LE(0) !== Constants.CENSIG) { - throw new Error(Utils.Errors.INVALID_CEN); + result2 = false; + break; + } + if (seen) { + if (!arraySome(other, function(othValue2, othIndex) { + if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack2))) { + return seen.push(othIndex); + } + })) { + result2 = false; + break; } - _verMade = data.readUInt16LE(Constants.CENVEM); - _version = data.readUInt16LE(Constants.CENVER); - _flags = data.readUInt16LE(Constants.CENFLG); - _method = data.readUInt16LE(Constants.CENHOW); - _time = data.readUInt32LE(Constants.CENTIM); - _crc = data.readUInt32LE(Constants.CENCRC); - _compressedSize = data.readUInt32LE(Constants.CENSIZ); - _size = data.readUInt32LE(Constants.CENLEN); - _fnameLen = data.readUInt16LE(Constants.CENNAM); - _extraLen = data.readUInt16LE(Constants.CENEXT); - _comLen = data.readUInt16LE(Constants.CENCOM); - _diskStart = data.readUInt16LE(Constants.CENDSK); - _inattr = data.readUInt16LE(Constants.CENATT); - _attr = data.readUInt32LE(Constants.CENATX); - _offset = data.readUInt32LE(Constants.CENOFF); - }, - dataHeaderToBinary: function() { - var data = Buffer.alloc(Constants.LOCHDR); - data.writeUInt32LE(Constants.LOCSIG, 0); - data.writeUInt16LE(_version, Constants.LOCVER); - data.writeUInt16LE(_flags, Constants.LOCFLG); - data.writeUInt16LE(_method, Constants.LOCHOW); - data.writeUInt32LE(_time, Constants.LOCTIM); - data.writeUInt32LE(_crc, Constants.LOCCRC); - data.writeUInt32LE(_compressedSize, Constants.LOCSIZ); - data.writeUInt32LE(_size, Constants.LOCLEN); - data.writeUInt16LE(_fnameLen, Constants.LOCNAM); - data.writeUInt16LE(_extraLen, Constants.LOCEXT); - return data; - }, - entryHeaderToBinary: function() { - var data = Buffer.alloc(Constants.CENHDR + _fnameLen + _extraLen + _comLen); - data.writeUInt32LE(Constants.CENSIG, 0); - data.writeUInt16LE(_verMade, Constants.CENVEM); - data.writeUInt16LE(_version, Constants.CENVER); - data.writeUInt16LE(_flags, Constants.CENFLG); - data.writeUInt16LE(_method, Constants.CENHOW); - data.writeUInt32LE(_time, Constants.CENTIM); - data.writeUInt32LE(_crc, Constants.CENCRC); - data.writeUInt32LE(_compressedSize, Constants.CENSIZ); - data.writeUInt32LE(_size, Constants.CENLEN); - data.writeUInt16LE(_fnameLen, Constants.CENNAM); - data.writeUInt16LE(_extraLen, Constants.CENEXT); - data.writeUInt16LE(_comLen, Constants.CENCOM); - data.writeUInt16LE(_diskStart, Constants.CENDSK); - data.writeUInt16LE(_inattr, Constants.CENATT); - data.writeUInt32LE(_attr, Constants.CENATX); - data.writeUInt32LE(_offset, Constants.CENOFF); - data.fill(0, Constants.CENHDR); - return data; - }, - toJSON: function() { - const bytes = function(nr) { - return nr + " bytes"; - }; - return { - made: _verMade, - version: _version, - flags: _flags, - method: Utils.methodToString(_method), - time: this.time, - crc: "0x" + _crc.toString(16).toUpperCase(), - compressedSize: bytes(_compressedSize), - size: bytes(_size), - fileNameLength: bytes(_fnameLen), - extraLength: bytes(_extraLen), - commentLength: bytes(_comLen), - diskNumStart: _diskStart, - inAttr: _inattr, - attr: _attr, - offset: _offset, - entryHeaderSize: bytes(Constants.CENHDR + _fnameLen + _extraLen + _comLen) - }; - }, - toString: function() { - return JSON.stringify(this.toJSON(), null, " "); + } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack2))) { + result2 = false; + break; } - }; - }; + } + stack2["delete"](array); + stack2["delete"](other); + return result2; + } + module2.exports = equalArrays; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/mainHeader.js -var require_mainHeader = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/mainHeader.js"(exports2, module2) { - var Utils = require_util7(); - var Constants = Utils.Constants; - module2.exports = function() { - var _volumeEntries = 0, _totalEntries = 0, _size = 0, _offset = 0, _commentLength = 0; - return { - get diskEntries() { - return _volumeEntries; - }, - set diskEntries(val) { - _volumeEntries = _totalEntries = val; - }, - get totalEntries() { - return _totalEntries; - }, - set totalEntries(val) { - _totalEntries = _volumeEntries = val; - }, - get size() { - return _size; - }, - set size(val) { - _size = val; - }, - get offset() { - return _offset; - }, - set offset(val) { - _offset = val; - }, - get commentLength() { - return _commentLength; - }, - set commentLength(val) { - _commentLength = val; - }, - get mainHeaderSize() { - return Constants.ENDHDR + _commentLength; - }, - loadFromBinary: function(data) { - if ((data.length !== Constants.ENDHDR || data.readUInt32LE(0) !== Constants.ENDSIG) && (data.length < Constants.ZIP64HDR || data.readUInt32LE(0) !== Constants.ZIP64SIG)) { - throw new Error(Utils.Errors.INVALID_END); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Uint8Array.js +var require_Uint8Array = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Uint8Array.js"(exports2, module2) { + var root = require_root(); + var Uint8Array2 = root.Uint8Array; + module2.exports = Uint8Array2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapToArray.js +var require_mapToArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapToArray.js"(exports2, module2) { + function mapToArray(map) { + var index = -1, result2 = Array(map.size); + map.forEach(function(value, key) { + result2[++index] = [key, value]; + }); + return result2; + } + module2.exports = mapToArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js +var require_setToArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js"(exports2, module2) { + function setToArray(set) { + var index = -1, result2 = Array(set.size); + set.forEach(function(value) { + result2[++index] = value; + }); + return result2; + } + module2.exports = setToArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalByTag.js +var require_equalByTag = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalByTag.js"(exports2, module2) { + var Symbol2 = require_Symbol(); + var Uint8Array2 = require_Uint8Array(); + var eq = require_eq2(); + var equalArrays = require_equalArrays(); + var mapToArray = require_mapToArray(); + var setToArray = require_setToArray(); + var COMPARE_PARTIAL_FLAG = 1; + var COMPARE_UNORDERED_FLAG = 2; + var boolTag = "[object Boolean]"; + var dateTag = "[object Date]"; + var errorTag = "[object Error]"; + var mapTag = "[object Map]"; + var numberTag = "[object Number]"; + var regexpTag = "[object RegExp]"; + var setTag = "[object Set]"; + var stringTag = "[object String]"; + var symbolTag = "[object Symbol]"; + var arrayBufferTag = "[object ArrayBuffer]"; + var dataViewTag = "[object DataView]"; + var symbolProto = Symbol2 ? Symbol2.prototype : void 0; + var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack2) { + switch (tag) { + case dataViewTag: + if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { + return false; } - if (data.readUInt32LE(0) === Constants.ENDSIG) { - _volumeEntries = data.readUInt16LE(Constants.ENDSUB); - _totalEntries = data.readUInt16LE(Constants.ENDTOT); - _size = data.readUInt32LE(Constants.ENDSIZ); - _offset = data.readUInt32LE(Constants.ENDOFF); - _commentLength = data.readUInt16LE(Constants.ENDCOM); - } else { - _volumeEntries = Utils.readBigUInt64LE(data, Constants.ZIP64SUB); - _totalEntries = Utils.readBigUInt64LE(data, Constants.ZIP64TOT); - _size = Utils.readBigUInt64LE(data, Constants.ZIP64SIZ); - _offset = Utils.readBigUInt64LE(data, Constants.ZIP64OFF); - _commentLength = 0; + object = object.buffer; + other = other.buffer; + case arrayBufferTag: + if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { + return false; } - }, - toBinary: function() { - var b = Buffer.alloc(Constants.ENDHDR + _commentLength); - b.writeUInt32LE(Constants.ENDSIG, 0); - b.writeUInt32LE(0, 4); - b.writeUInt16LE(_volumeEntries, Constants.ENDSUB); - b.writeUInt16LE(_totalEntries, Constants.ENDTOT); - b.writeUInt32LE(_size, Constants.ENDSIZ); - b.writeUInt32LE(_offset, Constants.ENDOFF); - b.writeUInt16LE(_commentLength, Constants.ENDCOM); - b.fill(" ", Constants.ENDHDR); - return b; - }, - toJSON: function() { - const offset = function(nr, len) { - let offs = nr.toString(16).toUpperCase(); - while (offs.length < len) - offs = "0" + offs; - return "0x" + offs; - }; - return { - diskEntries: _volumeEntries, - totalEntries: _totalEntries, - size: _size + " bytes", - offset: offset(_offset, 4), - commentLength: _commentLength - }; - }, - toString: function() { - return JSON.stringify(this.toJSON(), null, " "); - } - }; - }; + return true; + case boolTag: + case dateTag: + case numberTag: + return eq(+object, +other); + case errorTag: + return object.name == other.name && object.message == other.message; + case regexpTag: + case stringTag: + return object == other + ""; + case mapTag: + var convert = mapToArray; + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + if (object.size != other.size && !isPartial) { + return false; + } + var stacked = stack2.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + stack2.set(object, other); + var result2 = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack2); + stack2["delete"](object); + return result2; + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + module2.exports = equalByTag; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/index.js -var require_headers2 = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/headers/index.js"(exports2) { - exports2.EntryHeader = require_entryHeader(); - exports2.MainHeader = require_mainHeader(); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayPush.js +var require_arrayPush = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayPush.js"(exports2, module2) { + function arrayPush(array, values) { + var index = -1, length = values.length, offset = array.length; + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + module2.exports = arrayPush; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/deflater.js -var require_deflater = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/deflater.js"(exports2, module2) { - module2.exports = function(inbuf) { - var zlib = require("zlib"); - var opts = { chunkSize: (parseInt(inbuf.length / 1024) + 1) * 1024 }; - return { - deflate: function() { - return zlib.deflateRawSync(inbuf, opts); - }, - deflateAsync: function(callback) { - var tmp = zlib.createDeflateRaw(opts), parts = [], total = 0; - tmp.on("data", function(data) { - parts.push(data); - total += data.length; - }); - tmp.on("end", function() { - var buf = Buffer.alloc(total), written = 0; - buf.fill(0); - for (var i = 0; i < parts.length; i++) { - var part = parts[i]; - part.copy(buf, written); - written += part.length; - } - callback && callback(buf); - }); - tmp.end(inbuf); - } - }; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js +var require_isArray2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js"(exports2, module2) { + var isArray = Array.isArray; + module2.exports = isArray; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/inflater.js -var require_inflater = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/inflater.js"(exports2, module2) { - module2.exports = function(inbuf) { - var zlib = require("zlib"); - return { - inflate: function() { - return zlib.inflateRawSync(inbuf); - }, - inflateAsync: function(callback) { - var tmp = zlib.createInflateRaw(), parts = [], total = 0; - tmp.on("data", function(data) { - parts.push(data); - total += data.length; - }); - tmp.on("end", function() { - var buf = Buffer.alloc(total), written = 0; - buf.fill(0); - for (var i = 0; i < parts.length; i++) { - var part = parts[i]; - part.copy(buf, written); - written += part.length; - } - callback && callback(buf); - }); - tmp.end(inbuf); - } - }; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetAllKeys.js +var require_baseGetAllKeys = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetAllKeys.js"(exports2, module2) { + var arrayPush = require_arrayPush(); + var isArray = require_isArray2(); + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result2 = keysFunc(object); + return isArray(object) ? result2 : arrayPush(result2, symbolsFunc(object)); + } + module2.exports = baseGetAllKeys; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/zipcrypto.js -var require_zipcrypto = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/zipcrypto.js"(exports2, module2) { - "use strict"; - var { randomFillSync } = require("crypto"); - var crctable = new Uint32Array(256).map((t, crc) => { - for (let j = 0; j < 8; j++) { - if ((crc & 1) !== 0) { - crc = crc >>> 1 ^ 3988292384; - } else { - crc >>>= 1; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayFilter.js +var require_arrayFilter = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayFilter.js"(exports2, module2) { + function arrayFilter(array, predicate) { + var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result2 = []; + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result2[resIndex++] = value; } } - return crc >>> 0; - }); - var uMul = (a, b) => Math.imul(a, b) >>> 0; - var crc32update = (pCrc32, bval) => { - return crctable[(pCrc32 ^ bval) & 255] ^ pCrc32 >>> 8; - }; - var genSalt = () => { - if (typeof randomFillSync === "function") { - return randomFillSync(Buffer.alloc(12)); - } else { - return genSalt.node(); + return result2; + } + module2.exports = arrayFilter; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubArray.js +var require_stubArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubArray.js"(exports2, module2) { + function stubArray() { + return []; + } + module2.exports = stubArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbols.js +var require_getSymbols = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getSymbols.js"(exports2, module2) { + var arrayFilter = require_arrayFilter(); + var stubArray = require_stubArray(); + var objectProto = Object.prototype; + var propertyIsEnumerable = objectProto.propertyIsEnumerable; + var nativeGetSymbols = Object.getOwnPropertySymbols; + var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; } + object = Object(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); }; - genSalt.node = () => { - const salt = Buffer.alloc(12); - const len = salt.length; - for (let i = 0; i < len; i++) - salt[i] = Math.random() * 256 & 255; - return salt; - }; - var config = { - genSalt - }; - function Initkeys(pw) { - const pass = Buffer.isBuffer(pw) ? pw : Buffer.from(pw); - this.keys = new Uint32Array([305419896, 591751049, 878082192]); - for (let i = 0; i < pass.length; i++) { - this.updateKeys(pass[i]); + module2.exports = getSymbols; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTimes.js +var require_baseTimes = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTimes.js"(exports2, module2) { + function baseTimes(n, iteratee) { + var index = -1, result2 = Array(n); + while (++index < n) { + result2[index] = iteratee(index); } + return result2; } - Initkeys.prototype.updateKeys = function(byteValue) { - const keys = this.keys; - keys[0] = crc32update(keys[0], byteValue); - keys[1] += keys[0] & 255; - keys[1] = uMul(keys[1], 134775813) + 1; - keys[2] = crc32update(keys[2], keys[1] >>> 24); - return byteValue; - }; - Initkeys.prototype.next = function() { - const k = (this.keys[2] | 2) >>> 0; - return uMul(k, k ^ 1) >> 8 & 255; - }; - function make_decrypter(pwd) { - const keys = new Initkeys(pwd); - return function(data) { - const result = Buffer.alloc(data.length); - let pos = 0; - for (let c of data) { - result[pos++] = keys.updateKeys(c ^ keys.next()); - } - return result; - }; + module2.exports = baseTimes; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js +var require_isObjectLike = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js"(exports2, module2) { + function isObjectLike(value) { + return value != null && typeof value == "object"; } - function make_encrypter(pwd) { - const keys = new Initkeys(pwd); - return function(data, result, pos = 0) { - if (!result) - result = Buffer.alloc(data.length); - for (let c of data) { - const k = keys.next(); - result[pos++] = c ^ k; - keys.updateKeys(c); - } - return result; - }; + module2.exports = isObjectLike; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js +var require_baseIsArguments = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js"(exports2, module2) { + var baseGetTag = require_baseGetTag(); + var isObjectLike = require_isObjectLike(); + var argsTag = "[object Arguments]"; + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; } - function decrypt(data, header, pwd) { - if (!data || !Buffer.isBuffer(data) || data.length < 12) { - return Buffer.alloc(0); - } - const decrypter = make_decrypter(pwd); - const salt = decrypter(data.slice(0, 12)); - if (salt[11] !== header.crc >>> 24) { - throw "ADM-ZIP: Wrong Password"; - } - return decrypter(data.slice(12)); + module2.exports = baseIsArguments; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js +var require_isArguments2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js"(exports2, module2) { + var baseIsArguments = require_baseIsArguments(); + var isObjectLike = require_isObjectLike(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + var propertyIsEnumerable = objectProto.propertyIsEnumerable; + var isArguments = baseIsArguments(function() { + return arguments; + }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); + }; + module2.exports = isArguments; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubFalse.js +var require_stubFalse = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/stubFalse.js"(exports2, module2) { + function stubFalse() { + return false; } - function _salter(data) { - if (Buffer.isBuffer(data) && data.length >= 12) { - config.genSalt = function() { - return data.slice(0, 12); - }; - } else if (data === "node") { - config.genSalt = genSalt.node; - } else { - config.genSalt = genSalt; - } + module2.exports = stubFalse; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBuffer.js +var require_isBuffer = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isBuffer.js"(exports2, module2) { + var root = require_root(); + var stubFalse = require_stubFalse(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports = freeModule && freeModule.exports === freeExports; + var Buffer2 = moduleExports ? root.Buffer : void 0; + var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0; + var isBuffer = nativeIsBuffer || stubFalse; + module2.exports = isBuffer; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js +var require_isIndex = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js"(exports2, module2) { + var MAX_SAFE_INTEGER = 9007199254740991; + var reIsUint = /^(?:0|[1-9]\d*)$/; + function isIndex(value, length) { + var type = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } - function encrypt(data, header, pwd, oldlike = false) { - if (data == null) - data = Buffer.alloc(0); - if (!Buffer.isBuffer(data)) - data = Buffer.from(data.toString()); - const encrypter = make_encrypter(pwd); - const salt = config.genSalt(); - salt[11] = header.crc >>> 24 & 255; - if (oldlike) - salt[10] = header.crc >>> 16 & 255; - const result = Buffer.alloc(data.length + 12); - encrypter(salt, result); - return encrypter(data, result, 12); + module2.exports = isIndex; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js +var require_isLength = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js"(exports2, module2) { + var MAX_SAFE_INTEGER = 9007199254740991; + function isLength(value) { + return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } - module2.exports = { decrypt, encrypt, _salter }; + module2.exports = isLength; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/index.js -var require_methods = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/methods/index.js"(exports2) { - exports2.Deflater = require_deflater(); - exports2.Inflater = require_inflater(); - exports2.ZipCrypto = require_zipcrypto(); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsTypedArray.js +var require_baseIsTypedArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsTypedArray.js"(exports2, module2) { + var baseGetTag = require_baseGetTag(); + var isLength = require_isLength(); + var isObjectLike = require_isObjectLike(); + var argsTag = "[object Arguments]"; + var arrayTag = "[object Array]"; + var boolTag = "[object Boolean]"; + var dateTag = "[object Date]"; + var errorTag = "[object Error]"; + var funcTag = "[object Function]"; + var mapTag = "[object Map]"; + var numberTag = "[object Number]"; + var objectTag = "[object Object]"; + var regexpTag = "[object RegExp]"; + var setTag = "[object Set]"; + var stringTag = "[object String]"; + var weakMapTag = "[object WeakMap]"; + var arrayBufferTag = "[object ArrayBuffer]"; + var dataViewTag = "[object DataView]"; + var float32Tag = "[object Float32Array]"; + var float64Tag = "[object Float64Array]"; + var int8Tag = "[object Int8Array]"; + var int16Tag = "[object Int16Array]"; + var int32Tag = "[object Int32Array]"; + var uint8Tag = "[object Uint8Array]"; + var uint8ClampedTag = "[object Uint8ClampedArray]"; + var uint16Tag = "[object Uint16Array]"; + var uint32Tag = "[object Uint32Array]"; + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; + function baseIsTypedArray(value) { + return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + module2.exports = baseIsTypedArray; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/zipEntry.js -var require_zipEntry = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/zipEntry.js"(exports2, module2) { - var Utils = require_util7(); - var Headers = require_headers2(); - var Constants = Utils.Constants; - var Methods = require_methods(); - module2.exports = function(input) { - var _entryHeader = new Headers.EntryHeader(), _entryName = Buffer.alloc(0), _comment = Buffer.alloc(0), _isDirectory = false, uncompressedData = null, _extra = Buffer.alloc(0); - function getCompressedDataFromZip() { - if (!input || !Buffer.isBuffer(input)) { - return Buffer.alloc(0); - } - _entryHeader.loadDataHeaderFromBinary(input); - return input.slice(_entryHeader.realDataOffset, _entryHeader.realDataOffset + _entryHeader.compressedSize); - } - function crc32OK(data) { - if ((_entryHeader.flags & 8) !== 8) { - if (Utils.crc32(data) !== _entryHeader.dataHeader.crc) { - return false; - } - } else { - } - return true; - } - function decompress(async, callback, pass) { - if (typeof callback === "undefined" && typeof async === "string") { - pass = async; - async = void 0; - } - if (_isDirectory) { - if (async && callback) { - callback(Buffer.alloc(0), Utils.Errors.DIRECTORY_CONTENT_ERROR); - } - return Buffer.alloc(0); - } - var compressedData = getCompressedDataFromZip(); - if (compressedData.length === 0) { - if (async && callback) - callback(compressedData); - return compressedData; - } - if (_entryHeader.encripted) { - if (typeof pass !== "string" && !Buffer.isBuffer(pass)) { - throw new Error("ADM-ZIP: Incompatible password parameter"); - } - compressedData = Methods.ZipCrypto.decrypt(compressedData, _entryHeader, pass); - } - var data = Buffer.alloc(_entryHeader.size); - switch (_entryHeader.method) { - case Utils.Constants.STORED: - compressedData.copy(data); - if (!crc32OK(data)) { - if (async && callback) - callback(data, Utils.Errors.BAD_CRC); - throw new Error(Utils.Errors.BAD_CRC); - } else { - if (async && callback) - callback(data); - return data; - } - case Utils.Constants.DEFLATED: - var inflater = new Methods.Inflater(compressedData); - if (!async) { - const result = inflater.inflate(data); - result.copy(data, 0); - if (!crc32OK(data)) { - throw new Error(Utils.Errors.BAD_CRC + " " + _entryName.toString()); - } - return data; - } else { - inflater.inflateAsync(function(result) { - result.copy(result, 0); - if (callback) { - if (!crc32OK(result)) { - callback(result, Utils.Errors.BAD_CRC); - } else { - callback(result); - } - } - }); - } - break; - default: - if (async && callback) - callback(Buffer.alloc(0), Utils.Errors.UNKNOWN_METHOD); - throw new Error(Utils.Errors.UNKNOWN_METHOD); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUnary.js +var require_baseUnary = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUnary.js"(exports2, module2) { + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + module2.exports = baseUnary; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nodeUtil.js +var require_nodeUtil = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nodeUtil.js"(exports2, module2) { + var freeGlobal = require_freeGlobal(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports = freeModule && freeModule.exports === freeExports; + var freeProcess = moduleExports && freeGlobal.process; + var nodeUtil = function() { + try { + var types = freeModule && freeModule.require && freeModule.require("util").types; + if (types) { + return types; } + return freeProcess && freeProcess.binding && freeProcess.binding("util"); + } catch (e) { } - function compress(async, callback) { - if ((!uncompressedData || !uncompressedData.length) && Buffer.isBuffer(input)) { - if (async && callback) - callback(getCompressedDataFromZip()); - return getCompressedDataFromZip(); - } - if (uncompressedData.length && !_isDirectory) { - var compressedData; - switch (_entryHeader.method) { - case Utils.Constants.STORED: - _entryHeader.compressedSize = _entryHeader.size; - compressedData = Buffer.alloc(uncompressedData.length); - uncompressedData.copy(compressedData); - if (async && callback) - callback(compressedData); - return compressedData; - default: - case Utils.Constants.DEFLATED: - var deflater = new Methods.Deflater(uncompressedData); - if (!async) { - var deflated = deflater.deflate(); - _entryHeader.compressedSize = deflated.length; - return deflated; - } else { - deflater.deflateAsync(function(data) { - compressedData = Buffer.alloc(data.length); - _entryHeader.compressedSize = data.length; - data.copy(compressedData); - callback && callback(compressedData); - }); - } - deflater = null; - break; - } - } else if (async && callback) { - callback(Buffer.alloc(0)); - } else { - return Buffer.alloc(0); + }(); + module2.exports = nodeUtil; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isTypedArray.js +var require_isTypedArray2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isTypedArray.js"(exports2, module2) { + var baseIsTypedArray = require_baseIsTypedArray(); + var baseUnary = require_baseUnary(); + var nodeUtil = require_nodeUtil(); + var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + module2.exports = isTypedArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayLikeKeys.js +var require_arrayLikeKeys = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayLikeKeys.js"(exports2, module2) { + var baseTimes = require_baseTimes(); + var isArguments = require_isArguments2(); + var isArray = require_isArray2(); + var isBuffer = require_isBuffer(); + var isIndex = require_isIndex(); + var isTypedArray = require_isTypedArray2(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result2 = skipIndexes ? baseTimes(value.length, String) : [], length = result2.length; + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. + (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. + isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. + isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. + isIndex(key, length)))) { + result2.push(key); } } - function readUInt64LE(buffer, offset) { - return (buffer.readUInt32LE(offset + 4) << 4) + buffer.readUInt32LE(offset); - } - function parseExtra(data) { - var offset = 0; - var signature, size, part; - while (offset < data.length) { - signature = data.readUInt16LE(offset); - offset += 2; - size = data.readUInt16LE(offset); - offset += 2; - part = data.slice(offset, offset + size); - offset += size; - if (Constants.ID_ZIP64 === signature) { - parseZip64ExtendedInformation(part); - } - } + return result2; + } + module2.exports = arrayLikeKeys; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isPrototype.js +var require_isPrototype = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isPrototype.js"(exports2, module2) { + var objectProto = Object.prototype; + function isPrototype(value) { + var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; + return value === proto; + } + module2.exports = isPrototype; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overArg.js +var require_overArg = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overArg.js"(exports2, module2) { + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + module2.exports = overArg; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeys.js +var require_nativeKeys = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeys.js"(exports2, module2) { + var overArg = require_overArg(); + var nativeKeys = overArg(Object.keys, Object); + module2.exports = nativeKeys; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeys.js +var require_baseKeys = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeys.js"(exports2, module2) { + var isPrototype = require_isPrototype(); + var nativeKeys = require_nativeKeys(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); } - function parseZip64ExtendedInformation(data) { - var size, compressedSize, offset, diskNumStart; - if (data.length >= Constants.EF_ZIP64_SCOMP) { - size = readUInt64LE(data, Constants.EF_ZIP64_SUNCOMP); - if (_entryHeader.size === Constants.EF_ZIP64_OR_32) { - _entryHeader.size = size; - } - } - if (data.length >= Constants.EF_ZIP64_RHO) { - compressedSize = readUInt64LE(data, Constants.EF_ZIP64_SCOMP); - if (_entryHeader.compressedSize === Constants.EF_ZIP64_OR_32) { - _entryHeader.compressedSize = compressedSize; - } - } - if (data.length >= Constants.EF_ZIP64_DSN) { - offset = readUInt64LE(data, Constants.EF_ZIP64_RHO); - if (_entryHeader.offset === Constants.EF_ZIP64_OR_32) { - _entryHeader.offset = offset; - } - } - if (data.length >= Constants.EF_ZIP64_DSN + 4) { - diskNumStart = data.readUInt32LE(Constants.EF_ZIP64_DSN); - if (_entryHeader.diskNumStart === Constants.EF_ZIP64_OR_16) { - _entryHeader.diskNumStart = diskNumStart; - } + var result2 = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != "constructor") { + result2.push(key); } } - return { - get entryName() { - return _entryName.toString(); - }, - get rawEntryName() { - return _entryName; - }, - set entryName(val) { - _entryName = Utils.toBuffer(val); - var lastChar = _entryName[_entryName.length - 1]; - _isDirectory = lastChar === 47 || lastChar === 92; - _entryHeader.fileNameLength = _entryName.length; - }, - get extra() { - return _extra; - }, - set extra(val) { - _extra = val; - _entryHeader.extraLength = val.length; - parseExtra(val); - }, - get comment() { - return _comment.toString(); - }, - set comment(val) { - _comment = Utils.toBuffer(val); - _entryHeader.commentLength = _comment.length; - }, - get name() { - var n = _entryName.toString(); - return _isDirectory ? n.substr(n.length - 1).split("/").pop() : n.split("/").pop(); - }, - get isDirectory() { - return _isDirectory; - }, - getCompressedData: function() { - return compress(false, null); - }, - getCompressedDataAsync: function(callback) { - compress(true, callback); - }, - setData: function(value) { - uncompressedData = Utils.toBuffer(value); - if (!_isDirectory && uncompressedData.length) { - _entryHeader.size = uncompressedData.length; - _entryHeader.method = Utils.Constants.DEFLATED; - _entryHeader.crc = Utils.crc32(value); - _entryHeader.changed = true; - } else { - _entryHeader.method = Utils.Constants.STORED; - } - }, - getData: function(pass) { - if (_entryHeader.changed) { - return uncompressedData; - } else { - return decompress(false, null, pass); - } - }, - getDataAsync: function(callback, pass) { - if (_entryHeader.changed) { - callback(uncompressedData); - } else { - decompress(true, callback, pass); - } - }, - set attr(attr) { - _entryHeader.attr = attr; - }, - get attr() { - return _entryHeader.attr; - }, - set header(data) { - _entryHeader.loadFromBinary(data); - }, - get header() { - return _entryHeader; - }, - packHeader: function() { - var header = _entryHeader.entryHeaderToBinary(); - var addpos = Utils.Constants.CENHDR; - _entryName.copy(header, addpos); - addpos += _entryName.length; - if (_entryHeader.extraLength) { - _extra.copy(header, addpos); - addpos += _entryHeader.extraLength; - } - if (_entryHeader.commentLength) { - _comment.copy(header, addpos); - } - return header; - }, - toJSON: function() { - const bytes = function(nr) { - return "<" + (nr && nr.length + " bytes buffer" || "null") + ">"; - }; - return { - entryName: this.entryName, - name: this.name, - comment: this.comment, - isDirectory: this.isDirectory, - header: _entryHeader.toJSON(), - compressedData: bytes(input), - data: bytes(uncompressedData) - }; - }, - toString: function() { - return JSON.stringify(this.toJSON(), null, " "); - } - }; - }; + return result2; + } + module2.exports = baseKeys; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/zipFile.js -var require_zipFile = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/zipFile.js"(exports2, module2) { - var ZipEntry = require_zipEntry(); - var Headers = require_headers2(); - var Utils = require_util7(); - module2.exports = function(inBuffer, options) { - var entryList = [], entryTable = {}, _comment = Buffer.alloc(0), mainHeader = new Headers.MainHeader(), loadedEntries = false; - const opts = Object.assign(Object.create(null), options); - const { noSort } = opts; - if (inBuffer) { - readMainHeader(opts.readEntries); - } else { - loadedEntries = true; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLike.js +var require_isArrayLike3 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLike.js"(exports2, module2) { + var isFunction = require_isFunction2(); + var isLength = require_isLength(); + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + module2.exports = isArrayLike; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keys.js +var require_keys2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keys.js"(exports2, module2) { + var arrayLikeKeys = require_arrayLikeKeys(); + var baseKeys = require_baseKeys(); + var isArrayLike = require_isArrayLike3(); + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + module2.exports = keys; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeys.js +var require_getAllKeys = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getAllKeys.js"(exports2, module2) { + var baseGetAllKeys = require_baseGetAllKeys(); + var getSymbols = require_getSymbols(); + var keys = require_keys2(); + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + module2.exports = getAllKeys; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalObjects.js +var require_equalObjects = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_equalObjects.js"(exports2, module2) { + var getAllKeys = require_getAllKeys(); + var COMPARE_PARTIAL_FLAG = 1; + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function equalObjects(object, other, bitmask, customizer, equalFunc, stack2) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; + if (objLength != othLength && !isPartial) { + return false; } - function iterateEntries(callback) { - const totalEntries = mainHeader.diskEntries; - let index = mainHeader.offset; - for (let i = 0; i < totalEntries; i++) { - let tmp = index; - const entry = new ZipEntry(inBuffer); - entry.header = inBuffer.slice(tmp, tmp += Utils.Constants.CENHDR); - entry.entryName = inBuffer.slice(tmp, tmp += entry.header.fileNameLength); - index += entry.header.entryHeaderSize; - callback(entry); + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; } } - function readEntries() { - loadedEntries = true; - entryTable = {}; - entryList = new Array(mainHeader.diskEntries); - var index = mainHeader.offset; - for (var i = 0; i < entryList.length; i++) { - var tmp = index, entry = new ZipEntry(inBuffer); - entry.header = inBuffer.slice(tmp, tmp += Utils.Constants.CENHDR); - entry.entryName = inBuffer.slice(tmp, tmp += entry.header.fileNameLength); - if (entry.header.extraLength) { - entry.extra = inBuffer.slice(tmp, tmp += entry.header.extraLength); - } - if (entry.header.commentLength) - entry.comment = inBuffer.slice(tmp, tmp + entry.header.commentLength); - index += entry.header.entryHeaderSize; - entryList[i] = entry; - entryTable[entry.entryName] = entry; - } + var objStacked = stack2.get(object); + var othStacked = stack2.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; } - function readMainHeader(readNow) { - var i = inBuffer.length - Utils.Constants.ENDHDR, max = Math.max(0, i - 65535), n = max, endStart = inBuffer.length, endOffset = -1, commentEnd = 0; - for (i; i >= n; i--) { - if (inBuffer[i] !== 80) - continue; - if (inBuffer.readUInt32LE(i) === Utils.Constants.ENDSIG) { - endOffset = i; - commentEnd = i; - endStart = i + Utils.Constants.ENDHDR; - n = i - Utils.Constants.END64HDR; - continue; - } - if (inBuffer.readUInt32LE(i) === Utils.Constants.END64SIG) { - n = max; - continue; - } - if (inBuffer.readUInt32LE(i) === Utils.Constants.ZIP64SIG) { - endOffset = i; - endStart = i + Utils.readBigUInt64LE(inBuffer, i + Utils.Constants.ZIP64SIZE) + Utils.Constants.ZIP64LEAD; - break; - } + var result2 = true; + stack2.set(object, other); + stack2.set(other, object); + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], othValue = other[key]; + if (customizer) { + var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack2) : customizer(objValue, othValue, key, object, other, stack2); } - if (!~endOffset) - throw new Error(Utils.Errors.INVALID_FORMAT); - mainHeader.loadFromBinary(inBuffer.slice(endOffset, endStart)); - if (mainHeader.commentLength) { - _comment = inBuffer.slice(commentEnd + Utils.Constants.ENDHDR); + if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack2) : compared)) { + result2 = false; + break; } - if (readNow) - readEntries(); + skipCtor || (skipCtor = key == "constructor"); } - function sortEntries() { - if (entryList.length > 1 && !noSort) { - entryList.sort((a, b) => a.entryName.toLowerCase().localeCompare(b.entryName.toLowerCase())); + if (result2 && !skipCtor) { + var objCtor = object.constructor, othCtor = other.constructor; + if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { + result2 = false; } } - return { - get entries() { - if (!loadedEntries) { - readEntries(); - } - return entryList; - }, - get comment() { - return _comment.toString(); - }, - set comment(val) { - _comment = Utils.toBuffer(val); - mainHeader.commentLength = _comment.length; - }, - getEntryCount: function() { - if (!loadedEntries) { - return mainHeader.diskEntries; - } - return entryList.length; - }, - forEach: function(callback) { - if (!loadedEntries) { - iterateEntries(callback); - return; - } - entryList.forEach(callback); - }, - getEntry: function(entryName) { - if (!loadedEntries) { - readEntries(); - } - return entryTable[entryName] || null; - }, - setEntry: function(entry) { - if (!loadedEntries) { - readEntries(); - } - entryList.push(entry); - entryTable[entry.entryName] = entry; - mainHeader.totalEntries = entryList.length; - }, - deleteEntry: function(entryName) { - if (!loadedEntries) { - readEntries(); - } - var entry = entryTable[entryName]; - if (entry && entry.isDirectory) { - var _self = this; - this.getEntryChildren(entry).forEach(function(child) { - if (child.entryName !== entryName) { - _self.deleteEntry(child.entryName); - } - }); - } - entryList.splice(entryList.indexOf(entry), 1); - delete entryTable[entryName]; - mainHeader.totalEntries = entryList.length; - }, - getEntryChildren: function(entry) { - if (!loadedEntries) { - readEntries(); - } - if (entry && entry.isDirectory) { - const list = []; - const name = entry.entryName; - const len = name.length; - entryList.forEach(function(zipEntry) { - if (zipEntry.entryName.substr(0, len) === name) { - list.push(zipEntry); - } - }); - return list; - } - return []; - }, - compressToBuffer: function() { - if (!loadedEntries) { - readEntries(); - } - sortEntries(); - const dataBlock = []; - const entryHeaders = []; - let totalSize = 0; - let dindex = 0; - mainHeader.size = 0; - mainHeader.offset = 0; - for (const entry of entryList) { - const compressedData = entry.getCompressedData(); - entry.header.offset = dindex; - const dataHeader = entry.header.dataHeaderToBinary(); - const entryNameLen = entry.rawEntryName.length; - const postHeader = Buffer.alloc(entryNameLen + entry.extra.length); - entry.rawEntryName.copy(postHeader, 0); - postHeader.copy(entry.extra, entryNameLen); - const dataLength = dataHeader.length + postHeader.length + compressedData.length; - dindex += dataLength; - dataBlock.push(dataHeader); - dataBlock.push(postHeader); - dataBlock.push(compressedData); - const entryHeader = entry.packHeader(); - entryHeaders.push(entryHeader); - mainHeader.size += entryHeader.length; - totalSize += dataLength + entryHeader.length; - } - totalSize += mainHeader.mainHeaderSize; - mainHeader.offset = dindex; - dindex = 0; - const outBuffer = Buffer.alloc(totalSize); - for (const content of dataBlock) { - content.copy(outBuffer, dindex); - dindex += content.length; - } - for (const content of entryHeaders) { - content.copy(outBuffer, dindex); - dindex += content.length; - } - const mh = mainHeader.toBinary(); - if (_comment) { - _comment.copy(mh, Utils.Constants.ENDHDR); - } - mh.copy(outBuffer, dindex); - return outBuffer; - }, - toAsyncBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) { - try { - if (!loadedEntries) { - readEntries(); - } - sortEntries(); - const dataBlock = []; - const entryHeaders = []; - let totalSize = 0; - let dindex = 0; - mainHeader.size = 0; - mainHeader.offset = 0; - const compress2Buffer = function(entryLists) { - if (entryLists.length) { - const entry = entryLists.pop(); - const name = entry.entryName + entry.extra.toString(); - if (onItemStart) - onItemStart(name); - entry.getCompressedDataAsync(function(compressedData) { - if (onItemEnd) - onItemEnd(name); - entry.header.offset = dindex; - const dataHeader = entry.header.dataHeaderToBinary(); - const postHeader = Buffer.alloc(name.length, name); - const dataLength = dataHeader.length + postHeader.length + compressedData.length; - dindex += dataLength; - dataBlock.push(dataHeader); - dataBlock.push(postHeader); - dataBlock.push(compressedData); - const entryHeader = entry.packHeader(); - entryHeaders.push(entryHeader); - mainHeader.size += entryHeader.length; - totalSize += dataLength + entryHeader.length; - compress2Buffer(entryLists); - }); - } else { - totalSize += mainHeader.mainHeaderSize; - mainHeader.offset = dindex; - dindex = 0; - const outBuffer = Buffer.alloc(totalSize); - dataBlock.forEach(function(content) { - content.copy(outBuffer, dindex); - dindex += content.length; - }); - entryHeaders.forEach(function(content) { - content.copy(outBuffer, dindex); - dindex += content.length; - }); - const mh = mainHeader.toBinary(); - if (_comment) { - _comment.copy(mh, Utils.Constants.ENDHDR); - } - mh.copy(outBuffer, dindex); - onSuccess(outBuffer); - } - }; - compress2Buffer(entryList); - } catch (e) { - onFail(e); + stack2["delete"](object); + stack2["delete"](other); + return result2; + } + module2.exports = equalObjects; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_DataView.js +var require_DataView = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_DataView.js"(exports2, module2) { + var getNative = require_getNative(); + var root = require_root(); + var DataView2 = getNative(root, "DataView"); + module2.exports = DataView2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Promise.js +var require_Promise = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Promise.js"(exports2, module2) { + var getNative = require_getNative(); + var root = require_root(); + var Promise2 = getNative(root, "Promise"); + module2.exports = Promise2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js +var require_Set2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js"(exports2, module2) { + var getNative = require_getNative(); + var root = require_root(); + var Set2 = getNative(root, "Set"); + module2.exports = Set2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_WeakMap.js +var require_WeakMap = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_WeakMap.js"(exports2, module2) { + var getNative = require_getNative(); + var root = require_root(); + var WeakMap2 = getNative(root, "WeakMap"); + module2.exports = WeakMap2; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getTag.js +var require_getTag = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getTag.js"(exports2, module2) { + var DataView2 = require_DataView(); + var Map2 = require_Map(); + var Promise2 = require_Promise(); + var Set2 = require_Set2(); + var WeakMap2 = require_WeakMap(); + var baseGetTag = require_baseGetTag(); + var toSource = require_toSource(); + var mapTag = "[object Map]"; + var objectTag = "[object Object]"; + var promiseTag = "[object Promise]"; + var setTag = "[object Set]"; + var weakMapTag = "[object WeakMap]"; + var dataViewTag = "[object DataView]"; + var dataViewCtorString = toSource(DataView2); + var mapCtorString = toSource(Map2); + var promiseCtorString = toSource(Promise2); + var setCtorString = toSource(Set2); + var weakMapCtorString = toSource(WeakMap2); + var getTag = baseGetTag; + if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { + getTag = function(value) { + var result2 = baseGetTag(value), Ctor = result2 == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : ""; + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: + return dataViewTag; + case mapCtorString: + return mapTag; + case promiseCtorString: + return promiseTag; + case setCtorString: + return setTag; + case weakMapCtorString: + return weakMapTag; } } + return result2; }; - }; + } + module2.exports = getTag; } }); -// ../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/adm-zip.js -var require_adm_zip = __commonJS({ - "../../node_modules/.pnpm/adm-zip@0.5.6/node_modules/adm-zip/adm-zip.js"(exports2, module2) { - var Utils = require_util7(); - var pth = require("path"); - var ZipEntry = require_zipEntry(); - var ZipFile = require_zipFile(); - var fs = Utils.FileSystem.require(); - fs.existsSync = fs.existsSync || pth.existsSync; - var defaultOptions = { - noSort: false, - readEntries: false, - method: Utils.Constants.NONE - }; - module2.exports = function(input, options) { - let inBuffer = null; - const opts = Object.assign(Object.create(null), defaultOptions); - if (input && typeof input === "object") { - if (!(input instanceof Uint8Array)) { - Object.assign(opts, input); - input = opts.input ? opts.input : void 0; - if (opts.input) - delete opts.input; - } - if (Buffer.isBuffer(input)) { - inBuffer = input; - opts.method = Utils.Constants.BUFFER; - input = void 0; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqualDeep.js +var require_baseIsEqualDeep = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqualDeep.js"(exports2, module2) { + var Stack = require_Stack(); + var equalArrays = require_equalArrays(); + var equalByTag = require_equalByTag(); + var equalObjects = require_equalObjects(); + var getTag = require_getTag(); + var isArray = require_isArray2(); + var isBuffer = require_isBuffer(); + var isTypedArray = require_isTypedArray2(); + var COMPARE_PARTIAL_FLAG = 1; + var argsTag = "[object Arguments]"; + var arrayTag = "[object Array]"; + var objectTag = "[object Object]"; + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack2) { + var objIsArr = isArray(object), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; } + objIsArr = true; + objIsObj = false; } - Object.assign(opts, options); - if (input && typeof input === "string") { - if (fs.existsSync(input)) { - opts.method = Utils.Constants.FILE; - opts.filename = input; - inBuffer = fs.readFileSync(input); - } else { - throw new Error(Utils.Errors.INVALID_FILENAME); - } + if (isSameTag && !objIsObj) { + stack2 || (stack2 = new Stack()); + return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack2) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack2); } - const _zip = new ZipFile(inBuffer, opts); - const { canonical, sanitize } = Utils; - function getEntry(entry) { - if (entry && _zip) { - var item; - if (typeof entry === "string") - item = _zip.getEntry(entry); - if (typeof entry === "object" && typeof entry.entryName !== "undefined" && typeof entry.header !== "undefined") - item = _zip.getEntry(entry.entryName); - if (item) { - return item; - } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; + stack2 || (stack2 = new Stack()); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack2); } - return null; } - function fixPath(zipPath) { - const { join, normalize, sep } = pth.posix; - return join(".", normalize(sep + zipPath.split("\\").join(sep) + sep)); + if (!isSameTag) { + return false; } - return { - readFile: function(entry, pass) { - var item = getEntry(entry); - return item && item.getData(pass) || null; - }, - readFileAsync: function(entry, callback) { - var item = getEntry(entry); - if (item) { - item.getDataAsync(callback); - } else { - callback(null, "getEntry failed for:" + entry); - } - }, - readAsText: function(entry, encoding) { - var item = getEntry(entry); - if (item) { - var data = item.getData(); - if (data && data.length) { - return data.toString(encoding || "utf8"); - } - } - return ""; - }, - readAsTextAsync: function(entry, callback, encoding) { - var item = getEntry(entry); - if (item) { - item.getDataAsync(function(data, err) { - if (err) { - callback(data, err); - return; - } - if (data && data.length) { - callback(data.toString(encoding || "utf8")); - } else { - callback(""); - } - }); - } else { - callback(""); - } - }, - deleteFile: function(entry) { - var item = getEntry(entry); - if (item) { - _zip.deleteEntry(item.entryName); - } - }, - addZipComment: function(comment) { - _zip.comment = comment; - }, - getZipComment: function() { - return _zip.comment || ""; - }, - addZipEntryComment: function(entry, comment) { - var item = getEntry(entry); - if (item) { - item.comment = comment; - } - }, - getZipEntryComment: function(entry) { - var item = getEntry(entry); - if (item) { - return item.comment || ""; - } - return ""; - }, - updateFile: function(entry, content) { - var item = getEntry(entry); - if (item) { - item.setData(content); - } - }, - addLocalFile: function(localPath, zipPath, zipName, comment) { - if (fs.existsSync(localPath)) { - zipPath = zipPath ? fixPath(zipPath) : ""; - var p = localPath.split("\\").join("/").split("/").pop(); - zipPath += zipName ? zipName : p; - const _attr = fs.statSync(localPath); - this.addFile(zipPath, fs.readFileSync(localPath), comment, _attr); - } else { - throw new Error(Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); - } - }, - addLocalFolder: function(localPath, zipPath, filter) { - if (filter instanceof RegExp) { - filter = function(rx) { - return function(filename) { - return rx.test(filename); - }; - }(filter); - } else if (typeof filter !== "function") { - filter = function() { - return true; - }; - } - zipPath = zipPath ? fixPath(zipPath) : ""; - localPath = pth.normalize(localPath); - if (fs.existsSync(localPath)) { - const items = Utils.findFiles(localPath); - const self2 = this; - if (items.length) { - items.forEach(function(filepath) { - var p = pth.relative(localPath, filepath).split("\\").join("/"); - if (filter(p)) { - var stats = fs.statSync(filepath); - if (stats.isFile()) { - self2.addFile(zipPath + p, fs.readFileSync(filepath), "", stats); - } else { - self2.addFile(zipPath + p + "/", Buffer.alloc(0), "", stats); - } - } - }); - } - } else { - throw new Error(Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); - } - }, - addLocalFolderAsync: function(localPath, callback, zipPath, filter) { - if (filter instanceof RegExp) { - filter = function(rx) { - return function(filename) { - return rx.test(filename); - }; - }(filter); - } else if (typeof filter !== "function") { - filter = function() { - return true; - }; - } - zipPath = zipPath ? fixPath(zipPath) : ""; - localPath = pth.normalize(localPath); - var self2 = this; - fs.open(localPath, "r", function(err) { - if (err && err.code === "ENOENT") { - callback(void 0, Utils.Errors.FILE_NOT_FOUND.replace("%s", localPath)); - } else if (err) { - callback(void 0, err); - } else { - var items = Utils.findFiles(localPath); - var i = -1; - var next = function() { - i += 1; - if (i < items.length) { - var filepath = items[i]; - var p = pth.relative(localPath, filepath).split("\\").join("/"); - p = p.normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^\x20-\x7E]/g, ""); - if (filter(p)) { - fs.stat(filepath, function(er0, stats) { - if (er0) - callback(void 0, er0); - if (stats.isFile()) { - fs.readFile(filepath, function(er1, data) { - if (er1) { - callback(void 0, er1); - } else { - self2.addFile(zipPath + p, data, "", stats); - next(); - } - }); - } else { - self2.addFile(zipPath + p + "/", Buffer.alloc(0), "", stats); - next(); - } - }); - } else { - next(); - } - } else { - callback(true, void 0); - } - }; - next(); - } - }); - }, - addLocalFolderPromise: function(localPath, props) { - return new Promise((resolve, reject) => { - const { filter, zipPath } = Object.assign({}, props); - this.addLocalFolderAsync(localPath, (done, err) => { - if (err) - reject(err); - if (done) - resolve(this); - }, zipPath, filter); - }); - }, - addFile: function(entryName, content, comment, attr) { - let entry = getEntry(entryName); - const update = entry != null; - if (!update) { - entry = new ZipEntry(); - entry.entryName = entryName; - } - entry.comment = comment || ""; - const isStat = typeof attr === "object" && attr instanceof fs.Stats; - if (isStat) { - entry.header.time = attr.mtime; - } - var fileattr = entry.isDirectory ? 16 : 0; - if (!Utils.isWin) { - let unix = entry.isDirectory ? 16384 : 32768; - if (isStat) { - unix |= 4095 & attr.mode; - } else if (typeof attr === "number") { - unix |= 4095 & attr; - } else { - unix |= entry.isDirectory ? 493 : 420; - } - fileattr = (fileattr | unix << 16) >>> 0; - } - entry.attr = fileattr; - entry.setData(content); - if (!update) - _zip.setEntry(entry); - }, - getEntries: function() { - return _zip ? _zip.entries : []; - }, - getEntry: function(name) { - return getEntry(name); - }, - getEntryCount: function() { - return _zip.getEntryCount(); - }, - forEach: function(callback) { - return _zip.forEach(callback); - }, - extractEntryTo: function(entry, targetPath, maintainEntryPath, overwrite, outFileName) { - overwrite = overwrite || false; - maintainEntryPath = typeof maintainEntryPath === "undefined" ? true : maintainEntryPath; - var item = getEntry(entry); - if (!item) { - throw new Error(Utils.Errors.NO_ENTRY); - } - var entryName = canonical(item.entryName); - var target = sanitize(targetPath, outFileName && !item.isDirectory ? outFileName : maintainEntryPath ? entryName : pth.basename(entryName)); - if (item.isDirectory) { - var children = _zip.getEntryChildren(item); - children.forEach(function(child) { - if (child.isDirectory) - return; - var content2 = child.getData(); - if (!content2) { - throw new Error(Utils.Errors.CANT_EXTRACT_FILE); - } - var name = canonical(child.entryName); - var childName = sanitize(targetPath, maintainEntryPath ? name : pth.basename(name)); - var fileAttr2 = child.attr ? (child.attr >>> 0 | 0) >> 16 & 4095 : 0; - Utils.writeFileTo(childName, content2, overwrite, fileAttr2); - }); - return true; - } - var content = item.getData(); - if (!content) - throw new Error(Utils.Errors.CANT_EXTRACT_FILE); - if (fs.existsSync(target) && !overwrite) { - throw new Error(Utils.Errors.CANT_OVERRIDE); - } - var fileAttr = item.attr ? (item.attr >>> 0 | 0) >> 16 & 4095 : 0; - Utils.writeFileTo(target, content, overwrite, fileAttr); - return true; - }, - test: function(pass) { - if (!_zip) { - return false; - } - for (var entry in _zip.entries) { - try { - if (entry.isDirectory) { - continue; - } - var content = _zip.entries[entry].getData(pass); - if (!content) { - return false; - } - } catch (err) { - return false; - } - } - return true; - }, - extractAllTo: function(targetPath, overwrite, pass) { - overwrite = overwrite || false; - if (!_zip) { - throw new Error(Utils.Errors.NO_ZIP); - } - _zip.entries.forEach(function(entry) { - var entryName = sanitize(targetPath, canonical(entry.entryName.toString())); - if (entry.isDirectory) { - Utils.makeDir(entryName); - return; - } - var content = entry.getData(pass); - if (!content) { - throw new Error(Utils.Errors.CANT_EXTRACT_FILE); - } - var fileAttr = entry.attr ? (entry.attr >>> 0 | 0) >> 16 & 4095 : 0; - Utils.writeFileTo(entryName, content, overwrite, fileAttr); - try { - fs.utimesSync(entryName, entry.header.time, entry.header.time); - } catch (err) { - throw new Error(Utils.Errors.CANT_EXTRACT_FILE); - } - }); - }, - extractAllToAsync: function(targetPath, overwrite, callback) { - if (!callback) { - callback = function() { - }; - } - overwrite = overwrite || false; - if (!_zip) { - callback(new Error(Utils.Errors.NO_ZIP)); - return; - } - targetPath = pth.resolve(targetPath); - const getPath = (entry) => sanitize(targetPath, pth.normalize(canonical(entry.entryName.toString()))); - const getError = (msg, file) => new Error(msg + ': "' + file + '"'); - const entries = _zip.entries; - for (const entry of entries.filter((e) => e.isDirectory)) { - const filePath = getPath(entry); - const fileAttr = entry.header.fileAttr; - try { - Utils.makeDir(filePath); - if (fileAttr) - fs.chmodSync(filePath, fileAttr); - fs.utimesSync(filePath, entry.header.time, entry.header.time); - } catch (er) { - callback(getError("Unable to create folder", filePath)); - } - } - for (const entry of entries.filter((e) => !e.isDirectory)) { - const entryName = pth.normalize(canonical(entry.entryName.toString())); - const filePath = sanitize(targetPath, entryName); - entry.getDataAsync(function(content, err_1) { - if (err_1) { - callback(new Error(err_1)); - return; - } - if (!content) { - callback(new Error(Utils.Errors.CANT_EXTRACT_FILE)); - } else { - Utils.writeFileToAsync(filePath, content, overwrite, entry.header.fileAttr, function(succ) { - if (!succ) - callback(getError("Unable to write file", filePath)); - fs.utimes(filePath, entry.header.time, entry.header.time, function(err_2) { - if (err_2) - callback(getError("Unable to set times", filePath)); - }); - }); - } - }); - } - callback(); - }, - writeZip: function(targetFileName, callback) { - if (arguments.length === 1) { - if (typeof targetFileName === "function") { - callback = targetFileName; - targetFileName = ""; - } - } - if (!targetFileName && opts.filename) { - targetFileName = opts.filename; - } - if (!targetFileName) - return; - var zipData = _zip.compressToBuffer(); - if (zipData) { - var ok = Utils.writeFileTo(targetFileName, zipData, true); - if (typeof callback === "function") - callback(!ok ? new Error("failed") : null, ""); - } - }, - writeZipPromise: function(targetFileName, props) { - const { overwrite, perm } = Object.assign({ overwrite: true }, props); - return new Promise((resolve, reject) => { - if (!targetFileName && opts.filename) - targetFileName = opts.filename; - if (!targetFileName) - reject("ADM-ZIP: ZIP File Name Missing"); - this.toBufferPromise().then((zipData) => { - const ret = (done) => done ? resolve(done) : reject("ADM-ZIP: Wasn't able to write zip file"); - Utils.writeFileToAsync(targetFileName, zipData, overwrite, perm, ret); - }, reject); - }); - }, - toBufferPromise: function() { - return new Promise((resolve, reject) => { - _zip.toAsyncBuffer(resolve, reject); - }); - }, - toBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) { - this.valueOf = 2; - if (typeof onSuccess === "function") { - _zip.toAsyncBuffer(onSuccess, onFail, onItemStart, onItemEnd); - return null; + stack2 || (stack2 = new Stack()); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack2); + } + module2.exports = baseIsEqualDeep; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqual.js +var require_baseIsEqual = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsEqual.js"(exports2, module2) { + var baseIsEqualDeep = require_baseIsEqualDeep(); + var isObjectLike = require_isObjectLike(); + function baseIsEqual(value, other, bitmask, customizer, stack2) { + if (value === other) { + return true; + } + if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack2); + } + module2.exports = baseIsEqual; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isEqual.js +var require_isEqual = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isEqual.js"(exports2, module2) { + var baseIsEqual = require_baseIsEqual(); + function isEqual(value, other) { + return baseIsEqual(value, other); + } + module2.exports = isEqual; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js +var require_defineProperty = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js"(exports2, module2) { + var getNative = require_getNative(); + var defineProperty = function() { + try { + var func = getNative(Object, "defineProperty"); + func({}, "", {}); + return func; + } catch (e) { + } + }(); + module2.exports = defineProperty; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js +var require_baseAssignValue = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js"(exports2, module2) { + var defineProperty = require_defineProperty(); + function baseAssignValue(object, key, value) { + if (key == "__proto__" && defineProperty) { + defineProperty(object, key, { + "configurable": true, + "enumerable": true, + "value": value, + "writable": true + }); + } else { + object[key] = value; + } + } + module2.exports = baseAssignValue; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignMergeValue.js +var require_assignMergeValue = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignMergeValue.js"(exports2, module2) { + var baseAssignValue = require_baseAssignValue(); + var eq = require_eq2(); + function assignMergeValue(object, key, value) { + if (value !== void 0 && !eq(object[key], value) || value === void 0 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + module2.exports = assignMergeValue; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createBaseFor.js +var require_createBaseFor = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createBaseFor.js"(exports2, module2) { + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; } - return _zip.compressToBuffer(); } + return object; }; - }; + } + module2.exports = createBaseFor; } }); -// ../../node_modules/.pnpm/temp-dir@2.0.0/node_modules/temp-dir/index.js -var require_temp_dir = __commonJS({ - "../../node_modules/.pnpm/temp-dir@2.0.0/node_modules/temp-dir/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var os = require("os"); - var tempDirectorySymbol = Symbol.for("__RESOLVED_TEMP_DIRECTORY__"); - if (!global[tempDirectorySymbol]) { - Object.defineProperty(global, tempDirectorySymbol, { - value: fs.realpathSync(os.tmpdir()) - }); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFor.js +var require_baseFor = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFor.js"(exports2, module2) { + var createBaseFor = require_createBaseFor(); + var baseFor = createBaseFor(); + module2.exports = baseFor; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneBuffer.js +var require_cloneBuffer = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneBuffer.js"(exports2, module2) { + var root = require_root(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports = freeModule && freeModule.exports === freeExports; + var Buffer2 = moduleExports ? root.Buffer : void 0; + var allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : void 0; + function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, result2 = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + buffer.copy(result2); + return result2; } - module2.exports = global[tempDirectorySymbol]; + module2.exports = cloneBuffer; } }); -// ../../node_modules/.pnpm/array-union@2.1.0/node_modules/array-union/index.js -var require_array_union = __commonJS({ - "../../node_modules/.pnpm/array-union@2.1.0/node_modules/array-union/index.js"(exports2, module2) { - "use strict"; - module2.exports = (...arguments_) => { - return [...new Set([].concat(...arguments_))]; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneArrayBuffer.js +var require_cloneArrayBuffer = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneArrayBuffer.js"(exports2, module2) { + var Uint8Array2 = require_Uint8Array(); + function cloneArrayBuffer(arrayBuffer) { + var result2 = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array2(result2).set(new Uint8Array2(arrayBuffer)); + return result2; + } + module2.exports = cloneArrayBuffer; } }); -// ../../node_modules/.pnpm/path-type@4.0.0/node_modules/path-type/index.js -var require_path_type = __commonJS({ - "../../node_modules/.pnpm/path-type@4.0.0/node_modules/path-type/index.js"(exports2) { - "use strict"; - var { promisify } = require("util"); - var fs = require("fs"); - async function isType(fsStatType, statsMethodName, filePath) { - if (typeof filePath !== "string") { - throw new TypeError(`Expected a string, got ${typeof filePath}`); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneTypedArray.js +var require_cloneTypedArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cloneTypedArray.js"(exports2, module2) { + var cloneArrayBuffer = require_cloneArrayBuffer(); + function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + } + module2.exports = cloneTypedArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyArray.js +var require_copyArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyArray.js"(exports2, module2) { + function copyArray(source, array) { + var index = -1, length = source.length; + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; } - try { - const stats = await promisify(fs[fsStatType])(filePath); - return stats[statsMethodName](); - } catch (error) { - if (error.code === "ENOENT") { - return false; + return array; + } + module2.exports = copyArray; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseCreate.js +var require_baseCreate = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseCreate.js"(exports2, module2) { + var isObject = require_isObject2(); + var objectCreate = Object.create; + var baseCreate = function() { + function object() { + } + return function(proto) { + if (!isObject(proto)) { + return {}; } - throw error; + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result2 = new object(); + object.prototype = void 0; + return result2; + }; + }(); + module2.exports = baseCreate; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getPrototype.js +var require_getPrototype = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getPrototype.js"(exports2, module2) { + var overArg = require_overArg(); + var getPrototype = overArg(Object.getPrototypeOf, Object); + module2.exports = getPrototype; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneObject.js +var require_initCloneObject = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_initCloneObject.js"(exports2, module2) { + var baseCreate = require_baseCreate(); + var getPrototype = require_getPrototype(); + var isPrototype = require_isPrototype(); + function initCloneObject(object) { + return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; + } + module2.exports = initCloneObject; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLikeObject.js +var require_isArrayLikeObject = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArrayLikeObject.js"(exports2, module2) { + var isArrayLike = require_isArrayLike3(); + var isObjectLike = require_isObjectLike(); + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + module2.exports = isArrayLikeObject; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isPlainObject.js +var require_isPlainObject = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isPlainObject.js"(exports2, module2) { + var baseGetTag = require_baseGetTag(); + var getPrototype = require_getPrototype(); + var isObjectLike = require_isObjectLike(); + var objectTag = "[object Object]"; + var funcProto = Function.prototype; + var objectProto = Object.prototype; + var funcToString = funcProto.toString; + var hasOwnProperty = objectProto.hasOwnProperty; + var objectCtorString = funcToString.call(Object); + function isPlainObject(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; } + var Ctor = hasOwnProperty.call(proto, "constructor") && proto.constructor; + return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; } - function isTypeSync(fsStatType, statsMethodName, filePath) { - if (typeof filePath !== "string") { - throw new TypeError(`Expected a string, got ${typeof filePath}`); + module2.exports = isPlainObject; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_safeGet.js +var require_safeGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_safeGet.js"(exports2, module2) { + function safeGet(object, key) { + if (key === "constructor" && typeof object[key] === "function") { + return; } - try { - return fs[fsStatType](filePath)[statsMethodName](); - } catch (error) { - if (error.code === "ENOENT") { - return false; + if (key == "__proto__") { + return; + } + return object[key]; + } + module2.exports = safeGet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js +var require_assignValue = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js"(exports2, module2) { + var baseAssignValue = require_baseAssignValue(); + var eq = require_eq2(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + module2.exports = assignValue; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyObject.js +var require_copyObject = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_copyObject.js"(exports2, module2) { + var assignValue = require_assignValue(); + var baseAssignValue = require_baseAssignValue(); + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + var index = -1, length = props.length; + while (++index < length) { + var key = props[index]; + var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0; + if (newValue === void 0) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); } - throw error; } + return object; } - exports2.isFile = isType.bind(null, "stat", "isFile"); - exports2.isDirectory = isType.bind(null, "stat", "isDirectory"); - exports2.isSymlink = isType.bind(null, "lstat", "isSymbolicLink"); - exports2.isFileSync = isTypeSync.bind(null, "statSync", "isFile"); - exports2.isDirectorySync = isTypeSync.bind(null, "statSync", "isDirectory"); - exports2.isSymlinkSync = isTypeSync.bind(null, "lstatSync", "isSymbolicLink"); + module2.exports = copyObject; } }); -// ../../node_modules/.pnpm/dir-glob@3.0.1/node_modules/dir-glob/index.js -var require_dir_glob = __commonJS({ - "../../node_modules/.pnpm/dir-glob@3.0.1/node_modules/dir-glob/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var pathType = require_path_type(); - var getExtensions = (extensions) => extensions.length > 1 ? `{${extensions.join(",")}}` : extensions[0]; - var getPath = (filepath, cwd) => { - const pth = filepath[0] === "!" ? filepath.slice(1) : filepath; - return path.isAbsolute(pth) ? pth : path.join(cwd, pth); - }; - var addExtensions = (file, extensions) => { - if (path.extname(file)) { - return `**/${file}`; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeysIn.js +var require_nativeKeysIn = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeKeysIn.js"(exports2, module2) { + function nativeKeysIn(object) { + var result2 = []; + if (object != null) { + for (var key in Object(object)) { + result2.push(key); + } } - return `**/${file}.${getExtensions(extensions)}`; - }; - var getGlob = (directory, options) => { - if (options.files && !Array.isArray(options.files)) { - throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof options.files}\``); + return result2; + } + module2.exports = nativeKeysIn; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeysIn.js +var require_baseKeysIn = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseKeysIn.js"(exports2, module2) { + var isObject = require_isObject2(); + var isPrototype = require_isPrototype(); + var nativeKeysIn = require_nativeKeysIn(); + var objectProto = Object.prototype; + var hasOwnProperty = objectProto.hasOwnProperty; + function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); } - if (options.extensions && !Array.isArray(options.extensions)) { - throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof options.extensions}\``); + var isProto = isPrototype(object), result2 = []; + for (var key in object) { + if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) { + result2.push(key); + } } - if (options.files && options.extensions) { - return options.files.map((x) => path.posix.join(directory, addExtensions(x, options.extensions))); + return result2; + } + module2.exports = baseKeysIn; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keysIn.js +var require_keysIn = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/keysIn.js"(exports2, module2) { + var arrayLikeKeys = require_arrayLikeKeys(); + var baseKeysIn = require_baseKeysIn(); + var isArrayLike = require_isArrayLike3(); + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + module2.exports = keysIn; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toPlainObject.js +var require_toPlainObject = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toPlainObject.js"(exports2, module2) { + var copyObject = require_copyObject(); + var keysIn = require_keysIn(); + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + module2.exports = toPlainObject; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMergeDeep.js +var require_baseMergeDeep = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMergeDeep.js"(exports2, module2) { + var assignMergeValue = require_assignMergeValue(); + var cloneBuffer = require_cloneBuffer(); + var cloneTypedArray = require_cloneTypedArray(); + var copyArray = require_copyArray(); + var initCloneObject = require_initCloneObject(); + var isArguments = require_isArguments2(); + var isArray = require_isArray2(); + var isArrayLikeObject = require_isArrayLikeObject(); + var isBuffer = require_isBuffer(); + var isFunction = require_isFunction2(); + var isObject = require_isObject2(); + var isPlainObject = require_isPlainObject(); + var isTypedArray = require_isTypedArray2(); + var safeGet = require_safeGet(); + var toPlainObject = require_toPlainObject(); + function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack2) { + var objValue = safeGet(object, key), srcValue = safeGet(source, key), stacked = stack2.get(srcValue); + if (stacked) { + assignMergeValue(object, key, stacked); + return; } - if (options.files) { - return options.files.map((x) => path.posix.join(directory, `**/${x}`)); + var newValue = customizer ? customizer(objValue, srcValue, key + "", object, source, stack2) : void 0; + var isCommon = newValue === void 0; + if (isCommon) { + var isArr = isArray(srcValue), isBuff = !isArr && isBuffer(srcValue), isTyped = !isArr && !isBuff && isTypedArray(srcValue); + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray(objValue)) { + newValue = objValue; + } else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } else { + newValue = []; + } + } else if (isPlainObject(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } else if (!isObject(objValue) || isFunction(objValue)) { + newValue = initCloneObject(srcValue); + } + } else { + isCommon = false; + } } - if (options.extensions) { - return [path.posix.join(directory, `**/*.${getExtensions(options.extensions)}`)]; + if (isCommon) { + stack2.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack2); + stack2["delete"](srcValue); } - return [path.posix.join(directory, "**")]; - }; - module2.exports = async (input, options) => { - options = { - cwd: process.cwd(), - ...options - }; - if (typeof options.cwd !== "string") { - throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + assignMergeValue(object, key, newValue); + } + module2.exports = baseMergeDeep; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMerge.js +var require_baseMerge = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseMerge.js"(exports2, module2) { + var Stack = require_Stack(); + var assignMergeValue = require_assignMergeValue(); + var baseFor = require_baseFor(); + var baseMergeDeep = require_baseMergeDeep(); + var isObject = require_isObject2(); + var keysIn = require_keysIn(); + var safeGet = require_safeGet(); + function baseMerge(object, source, srcIndex, customizer, stack2) { + if (object === source) { + return; } - const globs = await Promise.all([].concat(input).map(async (x) => { - const isDirectory = await pathType.isDirectory(getPath(x, options.cwd)); - return isDirectory ? getGlob(x, options) : x; - })); - return [].concat.apply([], globs); + baseFor(source, function(srcValue, key) { + stack2 || (stack2 = new Stack()); + if (isObject(srcValue)) { + baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack2); + } else { + var newValue = customizer ? customizer(safeGet(object, key), srcValue, key + "", object, source, stack2) : void 0; + if (newValue === void 0) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + module2.exports = baseMerge; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/identity.js +var require_identity4 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/identity.js"(exports2, module2) { + function identity(value) { + return value; + } + module2.exports = identity; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_apply.js +var require_apply2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_apply.js"(exports2, module2) { + function apply(func, thisArg, args2) { + switch (args2.length) { + case 0: + return func.call(thisArg); + case 1: + return func.call(thisArg, args2[0]); + case 2: + return func.call(thisArg, args2[0], args2[1]); + case 3: + return func.call(thisArg, args2[0], args2[1], args2[2]); + } + return func.apply(thisArg, args2); + } + module2.exports = apply; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overRest.js +var require_overRest = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_overRest.js"(exports2, module2) { + var apply = require_apply2(); + var nativeMax = Math.max; + function overRest(func, start, transform) { + start = nativeMax(start === void 0 ? func.length - 1 : start, 0); + return function() { + var args2 = arguments, index = -1, length = nativeMax(args2.length - start, 0), array = Array(length); + while (++index < length) { + array[index] = args2[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args2[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; + } + module2.exports = overRest; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/constant.js +var require_constant = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/constant.js"(exports2, module2) { + function constant(value) { + return function() { + return value; + }; + } + module2.exports = constant; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSetToString.js +var require_baseSetToString = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSetToString.js"(exports2, module2) { + var constant = require_constant(); + var defineProperty = require_defineProperty(); + var identity = require_identity4(); + var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, "toString", { + "configurable": true, + "enumerable": false, + "value": constant(string), + "writable": true + }); }; - module2.exports.sync = (input, options) => { - options = { - cwd: process.cwd(), - ...options + module2.exports = baseSetToString; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_shortOut.js +var require_shortOut = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_shortOut.js"(exports2, module2) { + var HOT_COUNT = 800; + var HOT_SPAN = 16; + var nativeNow = Date.now; + function shortOut(func) { + var count = 0, lastCalled = 0; + return function() { + var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(void 0, arguments); }; - if (typeof options.cwd !== "string") { - throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } + module2.exports = shortOut; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToString.js +var require_setToString = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToString.js"(exports2, module2) { + var baseSetToString = require_baseSetToString(); + var shortOut = require_shortOut(); + var setToString = shortOut(baseSetToString); + module2.exports = setToString; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseRest.js +var require_baseRest = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseRest.js"(exports2, module2) { + var identity = require_identity4(); + var overRest = require_overRest(); + var setToString = require_setToString(); + function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ""); + } + module2.exports = baseRest; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIterateeCall.js +var require_isIterateeCall = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIterateeCall.js"(exports2, module2) { + var eq = require_eq2(); + var isArrayLike = require_isArrayLike3(); + var isIndex = require_isIndex(); + var isObject = require_isObject2(); + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; } - const globs = [].concat(input).map((x) => pathType.isDirectorySync(getPath(x, options.cwd)) ? getGlob(x, options) : x); - return [].concat.apply([], globs); - }; + var type = typeof index; + if (type == "number" ? isArrayLike(object) && isIndex(index, object.length) : type == "string" && index in object) { + return eq(object[index], value); + } + return false; + } + module2.exports = isIterateeCall; } }); -// ../../node_modules/.pnpm/ignore@5.1.8/node_modules/ignore/index.js -var require_ignore = __commonJS({ - "../../node_modules/.pnpm/ignore@5.1.8/node_modules/ignore/index.js"(exports2, module2) { - function makeArray(subject) { - return Array.isArray(subject) ? subject : [subject]; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createAssigner.js +var require_createAssigner = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createAssigner.js"(exports2, module2) { + var baseRest = require_baseRest(); + var isIterateeCall = require_isIterateeCall(); + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : void 0, guard = length > 2 ? sources[2] : void 0; + customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : void 0; + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? void 0 : customizer; + length = 1; + } + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); } - var EMPTY = ""; - var SPACE = " "; - var ESCAPE = "\\"; - var REGEX_TEST_BLANK_LINE = /^\s+$/; - var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; - var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; - var REGEX_SPLITALL_CRLF = /\r?\n/g; - var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; - var SLASH = "/"; - var KEY_IGNORE = typeof Symbol !== "undefined" ? Symbol.for("node-ignore") : "node-ignore"; - var define2 = (object, key, value) => Object.defineProperty(object, key, { value }); - var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; - var sanitizeRange = (range) => range.replace(REGEX_REGEXP_RANGE, (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY); - var cleanRangeBackSlash = (slashes) => { - const { length } = slashes; - return slashes.slice(0, length - length % 2); - }; - var REPLACERS = [ - [ - /\\?\s+$/, - (match) => match.indexOf("\\") === 0 ? SPACE : EMPTY - ], - [ - /\\\s/g, - () => SPACE - ], - [ - /[\\$.|*+(){^]/g, - (match) => `\\${match}` - ], - [ - /(?!\\)\?/g, - () => "[^/]" - ], - [ - /^\//, - () => "^" - ], - [ - /\//g, - () => "\\/" - ], - [ - /^\^*\\\*\\\*\\\//, - () => "^(?:.*\\/)?" - ], - [ - /^(?=[^^])/, - function startingReplacer() { - return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^"; + module2.exports = createAssigner; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/mergeWith.js +var require_mergeWith2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/mergeWith.js"(exports2, module2) { + var baseMerge = require_baseMerge(); + var createAssigner = require_createAssigner(); + var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { + baseMerge(object, source, srcIndex, customizer); + }); + module2.exports = mergeWith; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/miscUtils.js +var require_miscUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/miscUtils.js"(exports, module) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.toMerged = exports.mergeIntoTarget = exports.isPathLike = exports.tryParseOptionalBoolean = exports.parseOptionalBoolean = exports.parseBoolean = exports.replaceEnvVariables = exports.buildIgnorePattern = exports.sortMap = exports.dynamicRequire = exports.CachingStrategy = exports.DefaultStream = exports.AsyncActions = exports.makeDeferred = exports.BufferStream = exports.bufferStream = exports.prettifySyncErrors = exports.prettifyAsyncErrors = exports.releaseAfterUseAsync = exports.getMapWithDefault = exports.getSetWithDefault = exports.getArrayWithDefault = exports.getFactoryWithDefault = exports.convertMapsToIndexableObjects = exports.allSettledSafe = exports.isIndexableObject = exports.mapAndFind = exports.mapAndFilter = exports.validateEnum = exports.assertNever = exports.overrideType = exports.escapeRegExp = exports.isTaggedYarnVersion = void 0; + var tslib_1 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_1 = require_lib50(); + var clipanion_1 = require_advanced(); + var isEqual_1 = tslib_1.__importDefault(require_isEqual()); + var mergeWith_1 = tslib_1.__importDefault(require_mergeWith2()); + var micromatch_1 = tslib_1.__importDefault(require_micromatch()); + var p_limit_1 = tslib_1.__importDefault(require_p_limit2()); + var semver_1 = tslib_1.__importDefault(require_semver2()); + var stream_1 = require("stream"); + function isTaggedYarnVersion(version2) { + return !!(semver_1.default.valid(version2) && version2.match(/^[^-]+(-rc\.[0-9]+)?$/)); + } + exports.isTaggedYarnVersion = isTaggedYarnVersion; + function escapeRegExp(str) { + return str.replace(/[.*+?^${}()|[\]\\]/g, `\\$&`); + } + exports.escapeRegExp = escapeRegExp; + function overrideType(val) { + } + exports.overrideType = overrideType; + function assertNever(arg) { + throw new Error(`Assertion failed: Unexpected object '${arg}'`); + } + exports.assertNever = assertNever; + function validateEnum(def, value) { + const values = Object.values(def); + if (!values.includes(value)) + throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(value)} (expected one of ${values.map((value2) => JSON.stringify(value2)).join(`, `)})`); + return value; + } + exports.validateEnum = validateEnum; + function mapAndFilter(iterable, cb) { + const output = []; + for (const value of iterable) { + const out = cb(value); + if (out !== mapAndFilterSkip) { + output.push(out); } - ], - [ - /\\\/\\\*\\\*(?=\\\/|$)/g, - (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+" - ], - [ - /(^|[^\\]+)\\\*(?=.+)/g, - (_, p1) => `${p1}[^\\/]*` - ], - [ - /\\\\\\(?=[$.|*+(){^])/g, - () => ESCAPE - ], - [ - /\\\\/g, - () => ESCAPE - ], - [ - /(\\)?\[([^\]/]*?)(\\*)($|\])/g, - (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE ? `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range)}${endEscape}]` : "[]" : "[]" - ], - [ - /(?:[^*])$/, - (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)` - ], - [ - /(\^|\\\/)?\\\*$/, - (_, p1) => { - const prefix = p1 ? `${p1}[^/]+` : "[^/]*"; - return `${prefix}(?=$|\\/$)`; + } + return output; + } + exports.mapAndFilter = mapAndFilter; + var mapAndFilterSkip = Symbol(); + mapAndFilter.skip = mapAndFilterSkip; + function mapAndFind(iterable, cb) { + for (const value of iterable) { + const out = cb(value); + if (out !== mapAndFindSkip) { + return out; + } + } + return void 0; + } + exports.mapAndFind = mapAndFind; + var mapAndFindSkip = Symbol(); + mapAndFind.skip = mapAndFindSkip; + function isIndexableObject(value) { + return typeof value === `object` && value !== null; + } + exports.isIndexableObject = isIndexableObject; + async function allSettledSafe(promises) { + const results = await Promise.allSettled(promises); + const values = []; + for (const result2 of results) { + if (result2.status === `rejected`) { + throw result2.reason; + } else { + values.push(result2.value); } - ] - ]; - var regexCache = Object.create(null); - var makeRegex = (pattern, negative, ignorecase) => { - const r = regexCache[pattern]; - if (r) { - return r; } - const source = REPLACERS.reduce((prev, current) => prev.replace(current[0], current[1].bind(pattern)), pattern); - return regexCache[pattern] = ignorecase ? new RegExp(source, "i") : new RegExp(source); - }; - var isString = (subject) => typeof subject === "string"; - var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && pattern.indexOf("#") !== 0; - var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); - var IgnoreRule = class { - constructor(origin, pattern, negative, regex) { - this.origin = origin; - this.pattern = pattern; - this.negative = negative; - this.regex = regex; + return values; + } + exports.allSettledSafe = allSettledSafe; + function convertMapsToIndexableObjects(arg) { + if (arg instanceof Map) + arg = Object.fromEntries(arg); + if (isIndexableObject(arg)) { + for (const key of Object.keys(arg)) { + const value = arg[key]; + if (isIndexableObject(value)) { + arg[key] = convertMapsToIndexableObjects(value); + } + } } - }; - var createRule = (pattern, ignorecase) => { - const origin = pattern; - let negative = false; - if (pattern.indexOf("!") === 0) { - negative = true; - pattern = pattern.substr(1); + return arg; + } + exports.convertMapsToIndexableObjects = convertMapsToIndexableObjects; + function getFactoryWithDefault(map, key, factory) { + let value = map.get(key); + if (typeof value === `undefined`) + map.set(key, value = factory()); + return value; + } + exports.getFactoryWithDefault = getFactoryWithDefault; + function getArrayWithDefault(map, key) { + let value = map.get(key); + if (typeof value === `undefined`) + map.set(key, value = []); + return value; + } + exports.getArrayWithDefault = getArrayWithDefault; + function getSetWithDefault(map, key) { + let value = map.get(key); + if (typeof value === `undefined`) + map.set(key, value = /* @__PURE__ */ new Set()); + return value; + } + exports.getSetWithDefault = getSetWithDefault; + function getMapWithDefault(map, key) { + let value = map.get(key); + if (typeof value === `undefined`) + map.set(key, value = /* @__PURE__ */ new Map()); + return value; + } + exports.getMapWithDefault = getMapWithDefault; + async function releaseAfterUseAsync(fn2, cleanup) { + if (cleanup == null) + return await fn2(); + try { + return await fn2(); + } finally { + await cleanup(); } - pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); - const regex = makeRegex(pattern, negative, ignorecase); - return new IgnoreRule(origin, pattern, negative, regex); - }; - var throwError = (message2, Ctor) => { - throw new Ctor(message2); - }; - var checkPath = (path, originalPath, doThrow) => { - if (!isString(path)) { - return doThrow(`path must be a string, but got \`${originalPath}\``, TypeError); + } + exports.releaseAfterUseAsync = releaseAfterUseAsync; + async function prettifyAsyncErrors(fn2, update) { + try { + return await fn2(); + } catch (error) { + error.message = update(error.message); + throw error; } - if (!path) { - return doThrow(`path must not be empty`, TypeError); + } + exports.prettifyAsyncErrors = prettifyAsyncErrors; + function prettifySyncErrors(fn2, update) { + try { + return fn2(); + } catch (error) { + error.message = update(error.message); + throw error; } - if (checkPath.isNotRelative(path)) { - const r = "`path.relative()`d"; - return doThrow(`path should be a ${r} string, but got "${originalPath}"`, RangeError); + } + exports.prettifySyncErrors = prettifySyncErrors; + async function bufferStream(stream) { + return await new Promise((resolve, reject) => { + const chunks = []; + stream.on(`error`, (error) => { + reject(error); + }); + stream.on(`data`, (chunk) => { + chunks.push(chunk); + }); + stream.on(`end`, () => { + resolve(Buffer.concat(chunks)); + }); + }); + } + exports.bufferStream = bufferStream; + var BufferStream = class extends stream_1.Transform { + constructor() { + super(...arguments); + this.chunks = []; + } + _transform(chunk, encoding, cb) { + if (encoding !== `buffer` || !Buffer.isBuffer(chunk)) + throw new Error(`Assertion failed: BufferStream only accept buffers`); + this.chunks.push(chunk); + cb(null, null); + } + _flush(cb) { + cb(null, Buffer.concat(this.chunks)); + } + }; + exports.BufferStream = BufferStream; + function makeDeferred() { + let resolve; + let reject; + const promise = new Promise((resolveFn, rejectFn) => { + resolve = resolveFn; + reject = rejectFn; + }); + return { promise, resolve, reject }; + } + exports.makeDeferred = makeDeferred; + var AsyncActions = class { + constructor(limit) { + this.deferred = /* @__PURE__ */ new Map(); + this.promises = /* @__PURE__ */ new Map(); + this.limit = (0, p_limit_1.default)(limit); + } + set(key, factory) { + let deferred = this.deferred.get(key); + if (typeof deferred === `undefined`) + this.deferred.set(key, deferred = makeDeferred()); + const promise = this.limit(() => factory()); + this.promises.set(key, promise); + promise.then(() => { + if (this.promises.get(key) === promise) { + deferred.resolve(); + } + }, (err) => { + if (this.promises.get(key) === promise) { + deferred.reject(err); + } + }); + return deferred.promise; } - return true; - }; - var isNotRelative = (path) => REGEX_TEST_INVALID_PATH.test(path); - checkPath.isNotRelative = isNotRelative; - checkPath.convert = (p) => p; - var Ignore = class { - constructor({ - ignorecase = true - } = {}) { - this._rules = []; - this._ignorecase = ignorecase; - define2(this, KEY_IGNORE, true); - this._initCache(); + reduce(key, factory) { + var _a; + const promise = (_a = this.promises.get(key)) !== null && _a !== void 0 ? _a : Promise.resolve(); + this.set(key, () => factory(promise)); } - _initCache() { - this._ignoreCache = Object.create(null); - this._testCache = Object.create(null); + async wait() { + await Promise.all(this.promises.values()); } - _addPattern(pattern) { - if (pattern && pattern[KEY_IGNORE]) { - this._rules = this._rules.concat(pattern._rules); - this._added = true; - return; - } - if (checkPattern(pattern)) { - const rule = createRule(pattern, this._ignorecase); - this._added = true; - this._rules.push(rule); + }; + exports.AsyncActions = AsyncActions; + var DefaultStream = class extends stream_1.Transform { + constructor(ifEmpty = Buffer.alloc(0)) { + super(); + this.active = true; + this.ifEmpty = ifEmpty; + } + _transform(chunk, encoding, cb) { + if (encoding !== `buffer` || !Buffer.isBuffer(chunk)) + throw new Error(`Assertion failed: DefaultStream only accept buffers`); + this.active = false; + cb(null, chunk); + } + _flush(cb) { + if (this.active && this.ifEmpty.length > 0) { + cb(null, this.ifEmpty); + } else { + cb(null); } } - add(pattern) { - this._added = false; - makeArray(isString(pattern) ? splitPattern(pattern) : pattern).forEach(this._addPattern, this); - if (this._added) { - this._initCache(); + }; + exports.DefaultStream = DefaultStream; + var realRequire = eval(`require`); + function dynamicRequireNode(path2) { + return realRequire(fslib_1.npath.fromPortablePath(path2)); + } + function dynamicRequireNoCache(path) { + const physicalPath = fslib_1.npath.fromPortablePath(path); + const currentCacheEntry = realRequire.cache[physicalPath]; + delete realRequire.cache[physicalPath]; + let result; + try { + result = dynamicRequireNode(physicalPath); + const freshCacheEntry = realRequire.cache[physicalPath]; + const dynamicModule = eval(`module`); + const freshCacheIndex = dynamicModule.children.indexOf(freshCacheEntry); + if (freshCacheIndex !== -1) { + dynamicModule.children.splice(freshCacheIndex, 1); } - return this; + } finally { + realRequire.cache[physicalPath] = currentCacheEntry; } - addPattern(pattern) { - return this.add(pattern); + return result; + } + var dynamicRequireFsTimeCache = /* @__PURE__ */ new Map(); + function dynamicRequireFsTime(path2) { + const cachedInstance = dynamicRequireFsTimeCache.get(path2); + const stat = fslib_1.xfs.statSync(path2); + if ((cachedInstance === null || cachedInstance === void 0 ? void 0 : cachedInstance.mtime) === stat.mtimeMs) + return cachedInstance.instance; + const instance = dynamicRequireNoCache(path2); + dynamicRequireFsTimeCache.set(path2, { mtime: stat.mtimeMs, instance }); + return instance; + } + var CachingStrategy; + (function(CachingStrategy2) { + CachingStrategy2[CachingStrategy2["NoCache"] = 0] = "NoCache"; + CachingStrategy2[CachingStrategy2["FsTime"] = 1] = "FsTime"; + CachingStrategy2[CachingStrategy2["Node"] = 2] = "Node"; + })(CachingStrategy || (exports.CachingStrategy = CachingStrategy = {})); + function dynamicRequire(path2, { cachingStrategy = CachingStrategy.Node } = {}) { + switch (cachingStrategy) { + case CachingStrategy.NoCache: + return dynamicRequireNoCache(path2); + case CachingStrategy.FsTime: + return dynamicRequireFsTime(path2); + case CachingStrategy.Node: + return dynamicRequireNode(path2); + default: { + throw new Error(`Unsupported caching strategy`); + } } - _testOne(path, checkUnignored) { - let ignored = false; - let unignored = false; - this._rules.forEach((rule) => { - const { negative } = rule; - if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { - return; - } - const matched = rule.regex.test(path); - if (matched) { - ignored = !negative; - unignored = negative; + } + exports.dynamicRequire = dynamicRequire; + function sortMap(values, mappers) { + const asArray = Array.from(values); + if (!Array.isArray(mappers)) + mappers = [mappers]; + const stringified = []; + for (const mapper of mappers) + stringified.push(asArray.map((value) => mapper(value))); + const indices = asArray.map((_, index) => index); + indices.sort((a, b) => { + for (const layer of stringified) { + const comparison = layer[a] < layer[b] ? -1 : layer[a] > layer[b] ? 1 : 0; + if (comparison !== 0) { + return comparison; } - }); - return { - ignored, - unignored - }; - } - _test(originalPath, cache, checkUnignored, slices) { - const path = originalPath && checkPath.convert(originalPath); - checkPath(path, originalPath, throwError); - return this._t(path, cache, checkUnignored, slices); - } - _t(path, cache, checkUnignored, slices) { - if (path in cache) { - return cache[path]; } - if (!slices) { - slices = path.split(SLASH); + return 0; + }); + return indices.map((index) => { + return asArray[index]; + }); + } + exports.sortMap = sortMap; + function buildIgnorePattern(ignorePatterns) { + if (ignorePatterns.length === 0) + return null; + return ignorePatterns.map((pattern) => { + return `(${micromatch_1.default.makeRe(pattern, { + windows: false, + dot: true + }).source})`; + }).join(`|`); + } + exports.buildIgnorePattern = buildIgnorePattern; + function replaceEnvVariables(value, { env }) { + const regex = /\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g; + return value.replace(regex, (...args2) => { + const { variableName, colon, fallback } = args2[args2.length - 1]; + const variableExist = Object.prototype.hasOwnProperty.call(env, variableName); + const variableValue = env[variableName]; + if (variableValue) + return variableValue; + if (variableExist && !colon) + return variableValue; + if (fallback != null) + return fallback; + throw new clipanion_1.UsageError(`Environment variable not found (${variableName})`); + }); + } + exports.replaceEnvVariables = replaceEnvVariables; + function parseBoolean(value) { + switch (value) { + case `true`: + case `1`: + case 1: + case true: { + return true; } - slices.pop(); - if (!slices.length) { - return cache[path] = this._testOne(path, checkUnignored); + case `false`: + case `0`: + case 0: + case false: { + return false; + } + default: { + throw new Error(`Couldn't parse "${value}" as a boolean`); } - const parent = this._t(slices.join(SLASH) + SLASH, cache, checkUnignored, slices); - return cache[path] = parent.ignored ? parent : this._testOne(path, checkUnignored); - } - ignores(path) { - return this._test(path, this._ignoreCache, false).ignored; - } - createFilter() { - return (path) => !this.ignores(path); - } - filter(paths) { - return makeArray(paths).filter(this.createFilter()); } - test(path) { - return this._test(path, this._testCache, true); + } + exports.parseBoolean = parseBoolean; + function parseOptionalBoolean(value) { + if (typeof value === `undefined`) + return value; + return parseBoolean(value); + } + exports.parseOptionalBoolean = parseOptionalBoolean; + function tryParseOptionalBoolean(value) { + try { + return parseOptionalBoolean(value); + } catch { + return null; } - }; - var factory = (options) => new Ignore(options); - var returnFalse = () => false; - var isPathValid = (path) => checkPath(path && checkPath.convert(path), path, returnFalse); - factory.isPathValid = isPathValid; - factory.default = factory; - module2.exports = factory; - if (typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")) { - const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/"); - checkPath.convert = makePosix; - const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; - checkPath.isNotRelative = (path) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path) || isNotRelative(path); } + exports.tryParseOptionalBoolean = tryParseOptionalBoolean; + function isPathLike(value) { + if (fslib_1.npath.isAbsolute(value) || value.match(/^(\.{1,2}|~)\//)) + return true; + return false; + } + exports.isPathLike = isPathLike; + function mergeIntoTarget(target, ...sources) { + const wrap = (value2) => ({ value: value2 }); + const wrappedTarget = wrap(target); + const wrappedSources = sources.map((source) => wrap(source)); + const { value } = (0, mergeWith_1.default)(wrappedTarget, ...wrappedSources, (targetValue, sourceValue) => { + if (Array.isArray(targetValue) && Array.isArray(sourceValue)) { + for (const sourceItem of sourceValue) { + if (!targetValue.find((targetItem) => (0, isEqual_1.default)(targetItem, sourceItem))) { + targetValue.push(sourceItem); + } + } + return targetValue; + } + return void 0; + }); + return value; + } + exports.mergeIntoTarget = mergeIntoTarget; + function toMerged(...sources) { + return mergeIntoTarget({}, ...sources); + } + exports.toMerged = toMerged; } }); -// ../../node_modules/.pnpm/slash@3.0.0/node_modules/slash/index.js -var require_slash = __commonJS({ - "../../node_modules/.pnpm/slash@3.0.0/node_modules/slash/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/types.js +var require_types5 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/types.js"(exports2) { "use strict"; - module2.exports = (path) => { - const isExtendedLengthPath = /^\\\\\?\\/.test(path); - const hasNonAscii = /[^\u0000-\u0080]+/.test(path); - if (isExtendedLengthPath || hasNonAscii) { - return path; - } - return path.replace(/\\/g, "/"); - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PackageExtensionStatus = exports2.PackageExtensionType = exports2.LinkType = void 0; + var LinkType; + (function(LinkType2) { + LinkType2["HARD"] = "HARD"; + LinkType2["SOFT"] = "SOFT"; + })(LinkType || (exports2.LinkType = LinkType = {})); + var PackageExtensionType; + (function(PackageExtensionType2) { + PackageExtensionType2["Dependency"] = "Dependency"; + PackageExtensionType2["PeerDependency"] = "PeerDependency"; + PackageExtensionType2["PeerDependencyMeta"] = "PeerDependencyMeta"; + })(PackageExtensionType || (exports2.PackageExtensionType = PackageExtensionType = {})); + var PackageExtensionStatus; + (function(PackageExtensionStatus2) { + PackageExtensionStatus2["Inactive"] = "inactive"; + PackageExtensionStatus2["Redundant"] = "redundant"; + PackageExtensionStatus2["Active"] = "active"; + })(PackageExtensionStatus || (exports2.PackageExtensionStatus = PackageExtensionStatus = {})); } }); -// ../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/gitignore.js -var require_gitignore = __commonJS({ - "../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/gitignore.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/formatUtils.js +var require_formatUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/formatUtils.js"(exports2) { "use strict"; - var { promisify } = require("util"); - var fs = require("fs"); - var path = require("path"); - var fastGlob = require_out4(); - var gitIgnore = require_ignore(); - var slash = require_slash(); - var DEFAULT_IGNORE = [ - "**/node_modules/**", - "**/flow-typed/**", - "**/coverage/**", - "**/.git" - ]; - var readFileP = promisify(fs.readFile); - var mapGitIgnorePatternTo = (base) => (ignore) => { - if (ignore.startsWith("!")) { - return "!" + path.posix.join(base, ignore.slice(1)); - } - return path.posix.join(base, ignore); - }; - var parseGitIgnore = (content, options) => { - const base = slash(path.relative(options.cwd, path.dirname(options.fileName))); - return content.split(/\r?\n/).filter(Boolean).filter((line) => !line.startsWith("#")).map(mapGitIgnorePatternTo(base)); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addLogFilterSupport = exports2.LogLevel = exports2.prettyField = exports2.mark = exports2.jsonOrPretty = exports2.json = exports2.prettyList = exports2.pretty = exports2.applyHyperlink = exports2.applyColor = exports2.applyStyle = exports2.tuple = exports2.supportsHyperlinks = exports2.supportsColor = exports2.Style = exports2.Type = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var chalk_1 = tslib_12.__importDefault(require_source2()); + var ci_info_1 = tslib_12.__importDefault(require_ci_info()); + var clipanion_12 = require_advanced(); + var micromatch_12 = tslib_12.__importDefault(require_micromatch()); + var strip_ansi_1 = tslib_12.__importDefault(require_strip_ansi()); + var util_1 = require("util"); + var MessageName_1 = require_MessageName(); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var types_1 = require_types5(); + exports2.Type = { + NO_HINT: `NO_HINT`, + NULL: `NULL`, + SCOPE: `SCOPE`, + NAME: `NAME`, + RANGE: `RANGE`, + REFERENCE: `REFERENCE`, + NUMBER: `NUMBER`, + PATH: `PATH`, + URL: `URL`, + ADDED: `ADDED`, + REMOVED: `REMOVED`, + CODE: `CODE`, + INSPECT: `INSPECT`, + DURATION: `DURATION`, + SIZE: `SIZE`, + IDENT: `IDENT`, + DESCRIPTOR: `DESCRIPTOR`, + LOCATOR: `LOCATOR`, + RESOLUTION: `RESOLUTION`, + DEPENDENT: `DEPENDENT`, + PACKAGE_EXTENSION: `PACKAGE_EXTENSION`, + SETTING: `SETTING`, + MARKDOWN: `MARKDOWN` + }; + var Style; + (function(Style2) { + Style2[Style2["BOLD"] = 2] = "BOLD"; + })(Style || (exports2.Style = Style = {})); + var chalkOptions = ci_info_1.default.GITHUB_ACTIONS ? { level: 2 } : chalk_1.default.supportsColor ? { level: chalk_1.default.supportsColor.level } : { level: 0 }; + exports2.supportsColor = chalkOptions.level !== 0; + exports2.supportsHyperlinks = exports2.supportsColor && !ci_info_1.default.GITHUB_ACTIONS && !ci_info_1.default.CIRCLE && !ci_info_1.default.GITLAB; + var chalkInstance = new chalk_1.default.Instance(chalkOptions); + var colors = /* @__PURE__ */ new Map([ + [exports2.Type.NO_HINT, null], + [exports2.Type.NULL, [`#a853b5`, 129]], + [exports2.Type.SCOPE, [`#d75f00`, 166]], + [exports2.Type.NAME, [`#d7875f`, 173]], + [exports2.Type.RANGE, [`#00afaf`, 37]], + [exports2.Type.REFERENCE, [`#87afff`, 111]], + [exports2.Type.NUMBER, [`#ffd700`, 220]], + [exports2.Type.PATH, [`#d75fd7`, 170]], + [exports2.Type.URL, [`#d75fd7`, 170]], + [exports2.Type.ADDED, [`#5faf00`, 70]], + [exports2.Type.REMOVED, [`#d70000`, 160]], + [exports2.Type.CODE, [`#87afff`, 111]], + [exports2.Type.SIZE, [`#ffd700`, 220]] + ]); + var validateTransform = (spec) => spec; + var transforms = { + [exports2.Type.INSPECT]: validateTransform({ + pretty: (configuration, value) => { + return (0, util_1.inspect)(value, { depth: Infinity, colors: configuration.get(`enableColors`), compact: true, breakLength: Infinity }); + }, + json: (value) => { + return value; + } + }), + [exports2.Type.NUMBER]: validateTransform({ + pretty: (configuration, value) => { + return applyColor(configuration, `${value}`, exports2.Type.NUMBER); + }, + json: (value) => { + return value; + } + }), + [exports2.Type.IDENT]: validateTransform({ + pretty: (configuration, ident) => { + return structUtils.prettyIdent(configuration, ident); + }, + json: (ident) => { + return structUtils.stringifyIdent(ident); + } + }), + [exports2.Type.LOCATOR]: validateTransform({ + pretty: (configuration, locator) => { + return structUtils.prettyLocator(configuration, locator); + }, + json: (locator) => { + return structUtils.stringifyLocator(locator); + } + }), + [exports2.Type.DESCRIPTOR]: validateTransform({ + pretty: (configuration, descriptor) => { + return structUtils.prettyDescriptor(configuration, descriptor); + }, + json: (descriptor) => { + return structUtils.stringifyDescriptor(descriptor); + } + }), + [exports2.Type.RESOLUTION]: validateTransform({ + pretty: (configuration, { descriptor, locator }) => { + return structUtils.prettyResolution(configuration, descriptor, locator); + }, + json: ({ descriptor, locator }) => { + return { + descriptor: structUtils.stringifyDescriptor(descriptor), + locator: locator !== null ? structUtils.stringifyLocator(locator) : null + }; + } + }), + [exports2.Type.DEPENDENT]: validateTransform({ + pretty: (configuration, { locator, descriptor }) => { + return structUtils.prettyDependent(configuration, locator, descriptor); + }, + json: ({ locator, descriptor }) => { + return { + locator: structUtils.stringifyLocator(locator), + descriptor: structUtils.stringifyDescriptor(descriptor) + }; + } + }), + [exports2.Type.PACKAGE_EXTENSION]: validateTransform({ + pretty: (configuration, packageExtension) => { + switch (packageExtension.type) { + case types_1.PackageExtensionType.Dependency: + return `${structUtils.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `dependencies`, exports2.Type.CODE)} \u27A4 ${structUtils.prettyIdent(configuration, packageExtension.descriptor)}`; + case types_1.PackageExtensionType.PeerDependency: + return `${structUtils.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `peerDependencies`, exports2.Type.CODE)} \u27A4 ${structUtils.prettyIdent(configuration, packageExtension.descriptor)}`; + case types_1.PackageExtensionType.PeerDependencyMeta: + return `${structUtils.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `peerDependenciesMeta`, exports2.Type.CODE)} \u27A4 ${structUtils.prettyIdent(configuration, structUtils.parseIdent(packageExtension.selector))} \u27A4 ${applyColor(configuration, packageExtension.key, exports2.Type.CODE)}`; + default: + throw new Error(`Assertion failed: Unsupported package extension type: ${packageExtension.type}`); + } + }, + json: (packageExtension) => { + switch (packageExtension.type) { + case types_1.PackageExtensionType.Dependency: + return `${structUtils.stringifyIdent(packageExtension.parentDescriptor)} > ${structUtils.stringifyIdent(packageExtension.descriptor)}`; + case types_1.PackageExtensionType.PeerDependency: + return `${structUtils.stringifyIdent(packageExtension.parentDescriptor)} >> ${structUtils.stringifyIdent(packageExtension.descriptor)}`; + case types_1.PackageExtensionType.PeerDependencyMeta: + return `${structUtils.stringifyIdent(packageExtension.parentDescriptor)} >> ${packageExtension.selector} / ${packageExtension.key}`; + default: + throw new Error(`Assertion failed: Unsupported package extension type: ${packageExtension.type}`); + } + } + }), + [exports2.Type.SETTING]: validateTransform({ + pretty: (configuration, settingName) => { + configuration.get(settingName); + return applyHyperlink(configuration, applyColor(configuration, settingName, exports2.Type.CODE), `https://yarnpkg.com/configuration/yarnrc#${settingName}`); + }, + json: (settingName) => { + return settingName; + } + }), + [exports2.Type.DURATION]: validateTransform({ + pretty: (configuration, duration) => { + if (duration > 1e3 * 60) { + const minutes = Math.floor(duration / 1e3 / 60); + const seconds = Math.ceil((duration - minutes * 60 * 1e3) / 1e3); + return seconds === 0 ? `${minutes}m` : `${minutes}m ${seconds}s`; + } else { + const seconds = Math.floor(duration / 1e3); + const milliseconds = duration - seconds * 1e3; + return milliseconds === 0 ? `${seconds}s` : `${seconds}s ${milliseconds}ms`; + } + }, + json: (duration) => { + return duration; + } + }), + [exports2.Type.SIZE]: validateTransform({ + pretty: (configuration, size) => { + const thresholds = [`KB`, `MB`, `GB`, `TB`]; + let power = thresholds.length; + while (power > 1 && size < 1024 ** power) + power -= 1; + const factor = 1024 ** power; + const value = Math.floor(size * 100 / factor) / 100; + return applyColor(configuration, `${value} ${thresholds[power - 1]}`, exports2.Type.NUMBER); + }, + json: (size) => { + return size; + } + }), + [exports2.Type.PATH]: validateTransform({ + pretty: (configuration, filePath) => { + return applyColor(configuration, fslib_12.npath.fromPortablePath(filePath), exports2.Type.PATH); + }, + json: (filePath) => { + return fslib_12.npath.fromPortablePath(filePath); + } + }), + [exports2.Type.MARKDOWN]: validateTransform({ + pretty: (configuration, { text, format, paragraphs }) => { + return (0, clipanion_12.formatMarkdownish)(text, { format, paragraphs }); + }, + json: ({ text }) => { + return text; + } + }) }; - var reduceIgnore = (files) => { - const ignores = gitIgnore(); - for (const file of files) { - ignores.add(parseGitIgnore(file.content, { - cwd: file.cwd, - fileName: file.filePath - })); + function tuple(formatType, value) { + return [value, formatType]; + } + exports2.tuple = tuple; + function applyStyle(configuration, text, flags) { + if (!configuration.get(`enableColors`)) + return text; + if (flags & Style.BOLD) + text = chalk_1.default.bold(text); + return text; + } + exports2.applyStyle = applyStyle; + function applyColor(configuration, value, formatType) { + if (!configuration.get(`enableColors`)) + return value; + const colorSpec = colors.get(formatType); + if (colorSpec === null) + return value; + const color = typeof colorSpec === `undefined` ? formatType : chalkOptions.level >= 3 ? colorSpec[0] : colorSpec[1]; + const fn2 = typeof color === `number` ? chalkInstance.ansi256(color) : color.startsWith(`#`) ? chalkInstance.hex(color) : chalkInstance[color]; + if (typeof fn2 !== `function`) + throw new Error(`Invalid format type ${color}`); + return fn2(value); + } + exports2.applyColor = applyColor; + var isKonsole = !!process.env.KONSOLE_VERSION; + function applyHyperlink(configuration, text, href) { + if (!configuration.get(`enableHyperlinks`)) + return text; + if (isKonsole) + return `\x1B]8;;${href}\x1B\\${text}\x1B]8;;\x1B\\`; + return `\x1B]8;;${href}\x07${text}\x1B]8;;\x07`; + } + exports2.applyHyperlink = applyHyperlink; + function pretty(configuration, value, formatType) { + if (value === null) + return applyColor(configuration, `null`, exports2.Type.NULL); + if (Object.prototype.hasOwnProperty.call(transforms, formatType)) { + const transform = transforms[formatType]; + const typedTransform = transform; + return typedTransform.pretty(configuration, value); + } + if (typeof value !== `string`) + throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof value}`); + return applyColor(configuration, value, formatType); + } + exports2.pretty = pretty; + function prettyList(configuration, values, formatType, { separator = `, ` } = {}) { + return [...values].map((value) => pretty(configuration, value, formatType)).join(separator); + } + exports2.prettyList = prettyList; + function json(value, formatType) { + if (value === null) + return null; + if (Object.prototype.hasOwnProperty.call(transforms, formatType)) { + miscUtils.overrideType(formatType); + return transforms[formatType].json(value); } - return ignores; - }; - var ensureAbsolutePathForCwd = (cwd, p) => { - cwd = slash(cwd); - if (path.isAbsolute(p)) { - if (slash(p).startsWith(cwd)) { - return p; + if (typeof value !== `string`) + throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof value}`); + return value; + } + exports2.json = json; + function jsonOrPretty(outputJson, configuration, [value, formatType]) { + return outputJson ? json(value, formatType) : pretty(configuration, value, formatType); + } + exports2.jsonOrPretty = jsonOrPretty; + function mark(configuration) { + return { + Check: applyColor(configuration, `\u2713`, `green`), + Cross: applyColor(configuration, `\u2718`, `red`), + Question: applyColor(configuration, `?`, `cyan`) + }; + } + exports2.mark = mark; + function prettyField(configuration, { label, value: [value, formatType] }) { + return `${pretty(configuration, label, exports2.Type.CODE)}: ${pretty(configuration, value, formatType)}`; + } + exports2.prettyField = prettyField; + var LogLevel; + (function(LogLevel2) { + LogLevel2["Error"] = "error"; + LogLevel2["Warning"] = "warning"; + LogLevel2["Info"] = "info"; + LogLevel2["Discard"] = "discard"; + })(LogLevel || (exports2.LogLevel = LogLevel = {})); + function addLogFilterSupport(report, { configuration }) { + const logFilters = configuration.get(`logFilters`); + const logFiltersByCode = /* @__PURE__ */ new Map(); + const logFiltersByText = /* @__PURE__ */ new Map(); + const logFiltersByPatternMatcher = []; + for (const filter of logFilters) { + const level = filter.get(`level`); + if (typeof level === `undefined`) + continue; + const code = filter.get(`code`); + if (typeof code !== `undefined`) + logFiltersByCode.set(code, level); + const text = filter.get(`text`); + if (typeof text !== `undefined`) + logFiltersByText.set(text, level); + const pattern = filter.get(`pattern`); + if (typeof pattern !== `undefined`) { + logFiltersByPatternMatcher.push([micromatch_12.default.matcher(pattern, { contains: true }), level]); } - throw new Error(`Path ${p} is not in cwd ${cwd}`); } - return path.join(cwd, p); - }; - var getIsIgnoredPredecate = (ignores, cwd) => { - return (p) => ignores.ignores(slash(path.relative(cwd, ensureAbsolutePathForCwd(cwd, p.path || p)))); - }; - var getFile = async (file, cwd) => { - const filePath = path.join(cwd, file); - const content = await readFileP(filePath, "utf8"); - return { - cwd, - filePath, - content + logFiltersByPatternMatcher.reverse(); + const findLogLevel = (name, text, defaultLevel) => { + if (name === null || name === MessageName_1.MessageName.UNNAMED) + return defaultLevel; + const strippedText = logFiltersByText.size > 0 || logFiltersByPatternMatcher.length > 0 ? (0, strip_ansi_1.default)(text) : text; + if (logFiltersByText.size > 0) { + const level = logFiltersByText.get(strippedText); + if (typeof level !== `undefined`) { + return level !== null && level !== void 0 ? level : defaultLevel; + } + } + if (logFiltersByPatternMatcher.length > 0) { + for (const [filterMatcher, filterLevel] of logFiltersByPatternMatcher) { + if (filterMatcher(strippedText)) { + return filterLevel !== null && filterLevel !== void 0 ? filterLevel : defaultLevel; + } + } + } + if (logFiltersByCode.size > 0) { + const level = logFiltersByCode.get((0, MessageName_1.stringifyMessageName)(name)); + if (typeof level !== `undefined`) { + return level !== null && level !== void 0 ? level : defaultLevel; + } + } + return defaultLevel; }; - }; - var getFileSync = (file, cwd) => { - const filePath = path.join(cwd, file); - const content = fs.readFileSync(filePath, "utf8"); + const reportInfo = report.reportInfo; + const reportWarning = report.reportWarning; + const reportError = report.reportError; + const routeMessage = function(report2, name, text, level) { + switch (findLogLevel(name, text, level)) { + case LogLevel.Info: + { + reportInfo.call(report2, name, text); + } + break; + case LogLevel.Warning: + { + reportWarning.call(report2, name !== null && name !== void 0 ? name : MessageName_1.MessageName.UNNAMED, text); + } + break; + case LogLevel.Error: + { + reportError.call(report2, name !== null && name !== void 0 ? name : MessageName_1.MessageName.UNNAMED, text); + } + break; + } + }; + report.reportInfo = function(...args2) { + return routeMessage(this, ...args2, LogLevel.Info); + }; + report.reportWarning = function(...args2) { + return routeMessage(this, ...args2, LogLevel.Warning); + }; + report.reportError = function(...args2) { + return routeMessage(this, ...args2, LogLevel.Error); + }; + } + exports2.addLogFilterSupport = addLogFilterSupport; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/hashUtils.js +var require_hashUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/hashUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.checksumPattern = exports2.checksumFile = exports2.makeHash = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var crypto_1 = require("crypto"); + var globby_1 = tslib_12.__importDefault(require_globby()); + function makeHash(...args2) { + const hash = (0, crypto_1.createHash)(`sha512`); + let acc = ``; + for (const arg of args2) { + if (typeof arg === `string`) { + acc += arg; + } else if (arg) { + if (acc) { + hash.update(acc); + acc = ``; + } + hash.update(arg); + } + } + if (acc) + hash.update(acc); + return hash.digest(`hex`); + } + exports2.makeHash = makeHash; + async function checksumFile(path2, { baseFs, algorithm } = { baseFs: fslib_12.xfs, algorithm: `sha512` }) { + const fd = await baseFs.openPromise(path2, `r`); + try { + const CHUNK_SIZE = 65536; + const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE); + const hash = (0, crypto_1.createHash)(algorithm); + let bytesRead = 0; + while ((bytesRead = await baseFs.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0) + hash.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead)); + return hash.digest(`hex`); + } finally { + await baseFs.closePromise(fd); + } + } + exports2.checksumFile = checksumFile; + async function checksumPattern(pattern, { cwd }) { + const dirListing = await (0, globby_1.default)(pattern, { + cwd: fslib_12.npath.fromPortablePath(cwd), + expandDirectories: false, + onlyDirectories: true, + unique: true + }); + const dirPatterns = dirListing.map((entry) => { + return `${entry}/**/*`; + }); + const listing = await (0, globby_1.default)([pattern, ...dirPatterns], { + cwd: fslib_12.npath.fromPortablePath(cwd), + expandDirectories: false, + onlyFiles: false, + unique: true + }); + listing.sort(); + const hashes = await Promise.all(listing.map(async (entry) => { + const parts = [Buffer.from(entry)]; + const p = fslib_12.npath.toPortablePath(entry); + const stat = await fslib_12.xfs.lstatPromise(p); + if (stat.isSymbolicLink()) + parts.push(Buffer.from(await fslib_12.xfs.readlinkPromise(p))); + else if (stat.isFile()) + parts.push(await fslib_12.xfs.readFilePromise(p)); + return parts.join(`\0`); + })); + const hash = (0, crypto_1.createHash)(`sha512`); + for (const sub of hashes) + hash.update(sub); + return hash.digest(`hex`); + } + exports2.checksumPattern = checksumPattern; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/structUtils.js +var require_structUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/structUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getIdentVendorPath = exports2.prettyDependent = exports2.prettyResolution = exports2.prettyWorkspace = exports2.sortDescriptors = exports2.prettyLocatorNoColors = exports2.prettyLocator = exports2.prettyReference = exports2.prettyDescriptor = exports2.prettyRange = exports2.prettyIdent = exports2.slugifyLocator = exports2.slugifyIdent = exports2.stringifyLocator = exports2.stringifyDescriptor = exports2.stringifyIdent = exports2.convertToManifestRange = exports2.makeRange = exports2.parseFileStyleRange = exports2.tryParseRange = exports2.parseRange = exports2.tryParseLocator = exports2.parseLocator = exports2.tryParseDescriptor = exports2.parseDescriptor = exports2.tryParseIdent = exports2.parseIdent = exports2.areVirtualPackagesEquivalent = exports2.areLocatorsEqual = exports2.areDescriptorsEqual = exports2.areIdentsEqual = exports2.bindLocator = exports2.bindDescriptor = exports2.ensureDevirtualizedLocator = exports2.ensureDevirtualizedDescriptor = exports2.devirtualizeLocator = exports2.devirtualizeDescriptor = exports2.isVirtualLocator = exports2.isVirtualDescriptor = exports2.virtualizePackage = exports2.virtualizeDescriptor = exports2.copyPackage = exports2.renamePackage = exports2.convertPackageToLocator = exports2.convertLocatorToDescriptor = exports2.convertDescriptorToLocator = exports2.convertToIdent = exports2.makeLocator = exports2.makeDescriptor = exports2.makeIdent = void 0; + exports2.isPackageCompatible = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var querystring_1 = tslib_12.__importDefault(require("querystring")); + var semver_12 = tslib_12.__importDefault(require_semver2()); + var tinylogic_1 = require_tinylogic(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var VIRTUAL_PROTOCOL = `virtual:`; + var VIRTUAL_ABBREVIATE = 5; + var conditionRegex = /(os|cpu|libc)=([a-z0-9_-]+)/; + var conditionParser = (0, tinylogic_1.makeParser)(conditionRegex); + function makeIdent(scope, name) { + if (scope === null || scope === void 0 ? void 0 : scope.startsWith(`@`)) + throw new Error(`Invalid scope: don't prefix it with '@'`); + return { identHash: hashUtils.makeHash(scope, name), scope, name }; + } + exports2.makeIdent = makeIdent; + function makeDescriptor(ident, range) { + return { identHash: ident.identHash, scope: ident.scope, name: ident.name, descriptorHash: hashUtils.makeHash(ident.identHash, range), range }; + } + exports2.makeDescriptor = makeDescriptor; + function makeLocator(ident, reference) { + return { identHash: ident.identHash, scope: ident.scope, name: ident.name, locatorHash: hashUtils.makeHash(ident.identHash, reference), reference }; + } + exports2.makeLocator = makeLocator; + function convertToIdent(source) { + return { identHash: source.identHash, scope: source.scope, name: source.name }; + } + exports2.convertToIdent = convertToIdent; + function convertDescriptorToLocator(descriptor) { + return { identHash: descriptor.identHash, scope: descriptor.scope, name: descriptor.name, locatorHash: descriptor.descriptorHash, reference: descriptor.range }; + } + exports2.convertDescriptorToLocator = convertDescriptorToLocator; + function convertLocatorToDescriptor(locator) { + return { identHash: locator.identHash, scope: locator.scope, name: locator.name, descriptorHash: locator.locatorHash, range: locator.reference }; + } + exports2.convertLocatorToDescriptor = convertLocatorToDescriptor; + function convertPackageToLocator(pkg) { + return { identHash: pkg.identHash, scope: pkg.scope, name: pkg.name, locatorHash: pkg.locatorHash, reference: pkg.reference }; + } + exports2.convertPackageToLocator = convertPackageToLocator; + function renamePackage(pkg, locator) { return { - cwd, - filePath, - content + identHash: locator.identHash, + scope: locator.scope, + name: locator.name, + locatorHash: locator.locatorHash, + reference: locator.reference, + version: pkg.version, + languageName: pkg.languageName, + linkType: pkg.linkType, + conditions: pkg.conditions, + dependencies: new Map(pkg.dependencies), + peerDependencies: new Map(pkg.peerDependencies), + dependenciesMeta: new Map(pkg.dependenciesMeta), + peerDependenciesMeta: new Map(pkg.peerDependenciesMeta), + bin: new Map(pkg.bin) + }; + } + exports2.renamePackage = renamePackage; + function copyPackage(pkg) { + return renamePackage(pkg, pkg); + } + exports2.copyPackage = copyPackage; + function virtualizeDescriptor(descriptor, entropy) { + if (entropy.includes(`#`)) + throw new Error(`Invalid entropy`); + return makeDescriptor(descriptor, `virtual:${entropy}#${descriptor.range}`); + } + exports2.virtualizeDescriptor = virtualizeDescriptor; + function virtualizePackage(pkg, entropy) { + if (entropy.includes(`#`)) + throw new Error(`Invalid entropy`); + return renamePackage(pkg, makeLocator(pkg, `virtual:${entropy}#${pkg.reference}`)); + } + exports2.virtualizePackage = virtualizePackage; + function isVirtualDescriptor(descriptor) { + return descriptor.range.startsWith(VIRTUAL_PROTOCOL); + } + exports2.isVirtualDescriptor = isVirtualDescriptor; + function isVirtualLocator(locator) { + return locator.reference.startsWith(VIRTUAL_PROTOCOL); + } + exports2.isVirtualLocator = isVirtualLocator; + function devirtualizeDescriptor(descriptor) { + if (!isVirtualDescriptor(descriptor)) + throw new Error(`Not a virtual descriptor`); + return makeDescriptor(descriptor, descriptor.range.replace(/^[^#]*#/, ``)); + } + exports2.devirtualizeDescriptor = devirtualizeDescriptor; + function devirtualizeLocator(locator) { + if (!isVirtualLocator(locator)) + throw new Error(`Not a virtual descriptor`); + return makeLocator(locator, locator.reference.replace(/^[^#]*#/, ``)); + } + exports2.devirtualizeLocator = devirtualizeLocator; + function ensureDevirtualizedDescriptor(descriptor) { + if (!isVirtualDescriptor(descriptor)) + return descriptor; + return makeDescriptor(descriptor, descriptor.range.replace(/^[^#]*#/, ``)); + } + exports2.ensureDevirtualizedDescriptor = ensureDevirtualizedDescriptor; + function ensureDevirtualizedLocator(locator) { + if (!isVirtualLocator(locator)) + return locator; + return makeLocator(locator, locator.reference.replace(/^[^#]*#/, ``)); + } + exports2.ensureDevirtualizedLocator = ensureDevirtualizedLocator; + function bindDescriptor(descriptor, params) { + if (descriptor.range.includes(`::`)) + return descriptor; + return makeDescriptor(descriptor, `${descriptor.range}::${querystring_1.default.stringify(params)}`); + } + exports2.bindDescriptor = bindDescriptor; + function bindLocator(locator, params) { + if (locator.reference.includes(`::`)) + return locator; + return makeLocator(locator, `${locator.reference}::${querystring_1.default.stringify(params)}`); + } + exports2.bindLocator = bindLocator; + function areIdentsEqual(a, b) { + return a.identHash === b.identHash; + } + exports2.areIdentsEqual = areIdentsEqual; + function areDescriptorsEqual(a, b) { + return a.descriptorHash === b.descriptorHash; + } + exports2.areDescriptorsEqual = areDescriptorsEqual; + function areLocatorsEqual(a, b) { + return a.locatorHash === b.locatorHash; + } + exports2.areLocatorsEqual = areLocatorsEqual; + function areVirtualPackagesEquivalent(a, b) { + if (!isVirtualLocator(a)) + throw new Error(`Invalid package type`); + if (!isVirtualLocator(b)) + throw new Error(`Invalid package type`); + if (!areIdentsEqual(a, b)) + return false; + if (a.dependencies.size !== b.dependencies.size) + return false; + for (const dependencyDescriptorA of a.dependencies.values()) { + const dependencyDescriptorB = b.dependencies.get(dependencyDescriptorA.identHash); + if (!dependencyDescriptorB) + return false; + if (!areDescriptorsEqual(dependencyDescriptorA, dependencyDescriptorB)) { + return false; + } + } + return true; + } + exports2.areVirtualPackagesEquivalent = areVirtualPackagesEquivalent; + function parseIdent(string) { + const ident = tryParseIdent(string); + if (!ident) + throw new Error(`Invalid ident (${string})`); + return ident; + } + exports2.parseIdent = parseIdent; + function tryParseIdent(string) { + const match = string.match(/^(?:@([^/]+?)\/)?([^@/]+)$/); + if (!match) + return null; + const [, scope, name] = match; + const realScope = typeof scope !== `undefined` ? scope : null; + return makeIdent(realScope, name); + } + exports2.tryParseIdent = tryParseIdent; + function parseDescriptor(string, strict = false) { + const descriptor = tryParseDescriptor(string, strict); + if (!descriptor) + throw new Error(`Invalid descriptor (${string})`); + return descriptor; + } + exports2.parseDescriptor = parseDescriptor; + function tryParseDescriptor(string, strict = false) { + const match = strict ? string.match(/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/) : string.match(/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/); + if (!match) + return null; + const [, scope, name, range] = match; + if (range === `unknown`) + throw new Error(`Invalid range (${string})`); + const realScope = typeof scope !== `undefined` ? scope : null; + const realRange = typeof range !== `undefined` ? range : `unknown`; + return makeDescriptor(makeIdent(realScope, name), realRange); + } + exports2.tryParseDescriptor = tryParseDescriptor; + function parseLocator(string, strict = false) { + const locator = tryParseLocator(string, strict); + if (!locator) + throw new Error(`Invalid locator (${string})`); + return locator; + } + exports2.parseLocator = parseLocator; + function tryParseLocator(string, strict = false) { + const match = strict ? string.match(/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/) : string.match(/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/); + if (!match) + return null; + const [, scope, name, reference] = match; + if (reference === `unknown`) + throw new Error(`Invalid reference (${string})`); + const realScope = typeof scope !== `undefined` ? scope : null; + const realReference = typeof reference !== `undefined` ? reference : `unknown`; + return makeLocator(makeIdent(realScope, name), realReference); + } + exports2.tryParseLocator = tryParseLocator; + function parseRange(range, opts) { + const match = range.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/); + if (match === null) + throw new Error(`Invalid range (${range})`); + const protocol = typeof match[1] !== `undefined` ? match[1] : null; + if (typeof (opts === null || opts === void 0 ? void 0 : opts.requireProtocol) === `string` && protocol !== opts.requireProtocol) + throw new Error(`Invalid protocol (${protocol})`); + else if ((opts === null || opts === void 0 ? void 0 : opts.requireProtocol) && protocol === null) + throw new Error(`Missing protocol (${protocol})`); + const source = typeof match[3] !== `undefined` ? decodeURIComponent(match[2]) : null; + if ((opts === null || opts === void 0 ? void 0 : opts.requireSource) && source === null) + throw new Error(`Missing source (${range})`); + const rawSelector = typeof match[3] !== `undefined` ? decodeURIComponent(match[3]) : decodeURIComponent(match[2]); + const selector = (opts === null || opts === void 0 ? void 0 : opts.parseSelector) ? querystring_1.default.parse(rawSelector) : rawSelector; + const params = typeof match[4] !== `undefined` ? querystring_1.default.parse(match[4]) : null; + return { + // @ts-expect-error + protocol, + // @ts-expect-error + source, + // @ts-expect-error + selector, + // @ts-expect-error + params }; - }; - var normalizeOptions = ({ - ignore = [], - cwd = slash(process.cwd()) - } = {}) => { - return { ignore, cwd }; - }; - module2.exports = async (options) => { - options = normalizeOptions(options); - const paths = await fastGlob("**/.gitignore", { - ignore: DEFAULT_IGNORE.concat(options.ignore), - cwd: options.cwd + } + exports2.parseRange = parseRange; + function tryParseRange(range, opts) { + try { + return parseRange(range, opts); + } catch { + return null; + } + } + exports2.tryParseRange = tryParseRange; + function parseFileStyleRange(range, { protocol }) { + const { selector, params } = parseRange(range, { + requireProtocol: protocol, + requireBindings: true }); - const files = await Promise.all(paths.map((file) => getFile(file, options.cwd))); - const ignores = reduceIgnore(files); - return getIsIgnoredPredecate(ignores, options.cwd); - }; - module2.exports.sync = (options) => { - options = normalizeOptions(options); - const paths = fastGlob.sync("**/.gitignore", { - ignore: DEFAULT_IGNORE.concat(options.ignore), - cwd: options.cwd + if (typeof params.locator !== `string`) + throw new Error(`Assertion failed: Invalid bindings for ${range}`); + const parentLocator = parseLocator(params.locator, true); + const path2 = selector; + return { parentLocator, path: path2 }; + } + exports2.parseFileStyleRange = parseFileStyleRange; + function encodeUnsafeCharacters(str) { + str = str.replace(/%/g, `%25`); + str = str.replace(/:/g, `%3A`); + str = str.replace(/#/g, `%23`); + return str; + } + function hasParams(params) { + if (params === null) + return false; + return Object.entries(params).length > 0; + } + function makeRange({ protocol, source, selector, params }) { + let range = ``; + if (protocol !== null) + range += `${protocol}`; + if (source !== null) + range += `${encodeUnsafeCharacters(source)}#`; + range += encodeUnsafeCharacters(selector); + if (hasParams(params)) + range += `::${querystring_1.default.stringify(params)}`; + return range; + } + exports2.makeRange = makeRange; + function convertToManifestRange(range) { + const { params, protocol, source, selector } = parseRange(range); + for (const name in params) + if (name.startsWith(`__`)) + delete params[name]; + return makeRange({ protocol, source, params, selector }); + } + exports2.convertToManifestRange = convertToManifestRange; + function stringifyIdent(ident) { + if (ident.scope) { + return `@${ident.scope}/${ident.name}`; + } else { + return `${ident.name}`; + } + } + exports2.stringifyIdent = stringifyIdent; + function stringifyDescriptor(descriptor) { + if (descriptor.scope) { + return `@${descriptor.scope}/${descriptor.name}@${descriptor.range}`; + } else { + return `${descriptor.name}@${descriptor.range}`; + } + } + exports2.stringifyDescriptor = stringifyDescriptor; + function stringifyLocator(locator) { + if (locator.scope) { + return `@${locator.scope}/${locator.name}@${locator.reference}`; + } else { + return `${locator.name}@${locator.reference}`; + } + } + exports2.stringifyLocator = stringifyLocator; + function slugifyIdent(ident) { + if (ident.scope !== null) { + return `@${ident.scope}-${ident.name}`; + } else { + return ident.name; + } + } + exports2.slugifyIdent = slugifyIdent; + function slugifyLocator(locator) { + const { protocol, selector } = parseRange(locator.reference); + const humanProtocol = protocol !== null ? protocol.replace(/:$/, ``) : `exotic`; + const humanVersion = semver_12.default.valid(selector); + const humanReference = humanVersion !== null ? `${humanProtocol}-${humanVersion}` : `${humanProtocol}`; + const hashTruncate = 10; + const slug = locator.scope ? `${slugifyIdent(locator)}-${humanReference}-${locator.locatorHash.slice(0, hashTruncate)}` : `${slugifyIdent(locator)}-${humanReference}-${locator.locatorHash.slice(0, hashTruncate)}`; + return (0, fslib_12.toFilename)(slug); + } + exports2.slugifyLocator = slugifyLocator; + function prettyIdent(configuration, ident) { + if (ident.scope) { + return `${formatUtils.pretty(configuration, `@${ident.scope}/`, formatUtils.Type.SCOPE)}${formatUtils.pretty(configuration, ident.name, formatUtils.Type.NAME)}`; + } else { + return `${formatUtils.pretty(configuration, ident.name, formatUtils.Type.NAME)}`; + } + } + exports2.prettyIdent = prettyIdent; + function prettyRangeNoColors(range) { + if (range.startsWith(VIRTUAL_PROTOCOL)) { + const nested = prettyRangeNoColors(range.substring(range.indexOf(`#`) + 1)); + const abbrev = range.substring(VIRTUAL_PROTOCOL.length, VIRTUAL_PROTOCOL.length + VIRTUAL_ABBREVIATE); + return false ? `${nested} (virtual:${abbrev})` : `${nested} [${abbrev}]`; + } else { + return range.replace(/\?.*/, `?[...]`); + } + } + function prettyRange(configuration, range) { + return `${formatUtils.pretty(configuration, prettyRangeNoColors(range), formatUtils.Type.RANGE)}`; + } + exports2.prettyRange = prettyRange; + function prettyDescriptor(configuration, descriptor) { + return `${prettyIdent(configuration, descriptor)}${formatUtils.pretty(configuration, `@`, formatUtils.Type.RANGE)}${prettyRange(configuration, descriptor.range)}`; + } + exports2.prettyDescriptor = prettyDescriptor; + function prettyReference(configuration, reference) { + return `${formatUtils.pretty(configuration, prettyRangeNoColors(reference), formatUtils.Type.REFERENCE)}`; + } + exports2.prettyReference = prettyReference; + function prettyLocator(configuration, locator) { + return `${prettyIdent(configuration, locator)}${formatUtils.pretty(configuration, `@`, formatUtils.Type.REFERENCE)}${prettyReference(configuration, locator.reference)}`; + } + exports2.prettyLocator = prettyLocator; + function prettyLocatorNoColors(locator) { + return `${stringifyIdent(locator)}@${prettyRangeNoColors(locator.reference)}`; + } + exports2.prettyLocatorNoColors = prettyLocatorNoColors; + function sortDescriptors(descriptors) { + return miscUtils.sortMap(descriptors, [ + (descriptor) => stringifyIdent(descriptor), + (descriptor) => descriptor.range + ]); + } + exports2.sortDescriptors = sortDescriptors; + function prettyWorkspace(configuration, workspace) { + return prettyIdent(configuration, workspace.locator); + } + exports2.prettyWorkspace = prettyWorkspace; + function prettyResolution(configuration, descriptor, locator) { + const devirtualizedDescriptor = isVirtualDescriptor(descriptor) ? devirtualizeDescriptor(descriptor) : descriptor; + if (locator === null) { + return `${structUtils.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${formatUtils.mark(configuration).Cross}`; + } else if (devirtualizedDescriptor.identHash === locator.identHash) { + return `${structUtils.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${prettyReference(configuration, locator.reference)}`; + } else { + return `${structUtils.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${prettyLocator(configuration, locator)}`; + } + } + exports2.prettyResolution = prettyResolution; + function prettyDependent(configuration, locator, descriptor) { + if (descriptor === null) { + return `${prettyLocator(configuration, locator)}`; + } else { + return `${prettyLocator(configuration, locator)} (via ${structUtils.prettyRange(configuration, descriptor.range)})`; + } + } + exports2.prettyDependent = prettyDependent; + function getIdentVendorPath(ident) { + return `node_modules/${stringifyIdent(ident)}`; + } + exports2.getIdentVendorPath = getIdentVendorPath; + function isPackageCompatible(pkg, architectures) { + if (!pkg.conditions) + return true; + return conditionParser(pkg.conditions, (specifier) => { + const [, name, value] = specifier.match(conditionRegex); + const supported = architectures[name]; + return supported ? supported.includes(value) : true; }); - const files = paths.map((file) => getFileSync(file, options.cwd)); - const ignores = reduceIgnore(files); - return getIsIgnoredPredecate(ignores, options.cwd); - }; + } + exports2.isPackageCompatible = isPackageCompatible; } }); -// ../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/stream-utils.js -var require_stream_utils = __commonJS({ - "../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/stream-utils.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/CorePlugin.js +var require_CorePlugin = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/CorePlugin.js"(exports2) { "use strict"; - var { Transform } = require("stream"); - var ObjectTransform = class extends Transform { - constructor() { - super({ - objectMode: true - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CorePlugin = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var MessageName_1 = require_MessageName(); + var structUtils = tslib_12.__importStar(require_structUtils()); + exports2.CorePlugin = { + hooks: { + reduceDependency: (dependency, project, locator, initialDependency, { resolver, resolveOptions }) => { + var _a, _b; + for (const { pattern, reference } of project.topLevelWorkspace.manifest.resolutions) { + if (pattern.from) { + if (pattern.from.fullName !== structUtils.stringifyIdent(locator)) + continue; + const normalizedFrom = project.configuration.normalizeLocator(structUtils.makeLocator(structUtils.parseIdent(pattern.from.fullName), (_a = pattern.from.description) !== null && _a !== void 0 ? _a : locator.reference)); + if (normalizedFrom.locatorHash !== locator.locatorHash) { + continue; + } + } + { + if (pattern.descriptor.fullName !== structUtils.stringifyIdent(dependency)) + continue; + const normalizedDescriptor = project.configuration.normalizeDependency(structUtils.makeDescriptor(structUtils.parseLocator(pattern.descriptor.fullName), (_b = pattern.descriptor.description) !== null && _b !== void 0 ? _b : dependency.range)); + if (normalizedDescriptor.descriptorHash !== dependency.descriptorHash) { + continue; + } + } + const alias = resolver.bindDescriptor(project.configuration.normalizeDependency(structUtils.makeDescriptor(dependency, reference)), project.topLevelWorkspace.anchoredLocator, resolveOptions); + return alias; + } + return dependency; + }, + validateProject: async (project, report) => { + for (const workspace of project.workspaces) { + const workspaceName = structUtils.prettyWorkspace(project.configuration, workspace); + await project.configuration.triggerHook((hooks) => { + return hooks.validateWorkspace; + }, workspace, { + reportWarning: (name, text) => report.reportWarning(name, `${workspaceName}: ${text}`), + reportError: (name, text) => report.reportError(name, `${workspaceName}: ${text}`) + }); + } + }, + validateWorkspace: async (workspace, report) => { + const { manifest } = workspace; + if (manifest.resolutions.length && workspace.cwd !== workspace.project.cwd) + manifest.errors.push(new Error(`Resolutions field will be ignored`)); + for (const manifestError of manifest.errors) { + report.reportWarning(MessageName_1.MessageName.INVALID_MANIFEST, manifestError.message); + } + } } }; - var FilterStream = class extends ObjectTransform { - constructor(filter) { - super(); - this._filter = filter; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkspaceResolver.js +var require_WorkspaceResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkspaceResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.WorkspaceResolver = void 0; + var types_1 = require_types5(); + var WorkspaceResolver = class { + supportsDescriptor(descriptor, opts) { + if (descriptor.range.startsWith(WorkspaceResolver.protocol)) + return true; + const workspace = opts.project.tryWorkspaceByDescriptor(descriptor); + if (workspace !== null) + return true; + return false; } - _transform(data, encoding, callback) { - if (this._filter(data)) { - this.push(data); - } - callback(); + supportsLocator(locator, opts) { + if (!locator.reference.startsWith(WorkspaceResolver.protocol)) + return false; + return true; } - }; - var UniqueStream = class extends ObjectTransform { - constructor() { - super(); - this._pushed = new Set(); + shouldPersistResolution(locator, opts) { + return false; } - _transform(data, encoding, callback) { - if (!this._pushed.has(data)) { - this.push(data); - this._pushed.add(data); - } - callback(); + bindDescriptor(descriptor, fromLocator, opts) { + return descriptor; + } + getResolutionDependencies(descriptor, opts) { + return {}; + } + async getCandidates(descriptor, dependencies, opts) { + const workspace = opts.project.getWorkspaceByDescriptor(descriptor); + return [workspace.anchoredLocator]; + } + async getSatisfying(descriptor, dependencies, locators, opts) { + const [locator] = await this.getCandidates(descriptor, dependencies, opts); + return { + locators: locators.filter((candidate) => candidate.locatorHash === locator.locatorHash), + sorted: false + }; + } + async resolve(locator, opts) { + const workspace = opts.project.getWorkspaceByCwd(locator.reference.slice(WorkspaceResolver.protocol.length)); + return { + ...locator, + version: workspace.manifest.version || `0.0.0`, + languageName: `unknown`, + linkType: types_1.LinkType.SOFT, + conditions: null, + dependencies: opts.project.configuration.normalizeDependencyMap(new Map([...workspace.manifest.dependencies, ...workspace.manifest.devDependencies])), + peerDependencies: new Map([...workspace.manifest.peerDependencies]), + dependenciesMeta: workspace.manifest.dependenciesMeta, + peerDependenciesMeta: workspace.manifest.peerDependenciesMeta, + bin: workspace.manifest.bin + }; } }; - module2.exports = { - FilterStream, - UniqueStream - }; + exports2.WorkspaceResolver = WorkspaceResolver; + WorkspaceResolver.protocol = `workspace:`; } }); -// ../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/index.js -var require_globby = __commonJS({ - "../../node_modules/.pnpm/globby@11.0.4/node_modules/globby/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/semverUtils.js +var require_semverUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/semverUtils.js"(exports2) { "use strict"; - var fs = require("fs"); - var arrayUnion = require_array_union(); - var merge2 = require_merge22(); - var fastGlob = require_out4(); - var dirGlob = require_dir_glob(); - var gitignore = require_gitignore(); - var { FilterStream, UniqueStream } = require_stream_utils(); - var DEFAULT_FILTER = () => false; - var isNegative = (pattern) => pattern[0] === "!"; - var assertPatternsInput = (patterns) => { - if (!patterns.every((pattern) => typeof pattern === "string")) { - throw new TypeError("Patterns must be a string or an array of strings"); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.clean = exports2.validRange = exports2.satisfiesWithPrereleases = exports2.SemVer = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var semver_12 = tslib_12.__importDefault(require_semver2()); + var semver_2 = require_semver2(); + Object.defineProperty(exports2, "SemVer", { enumerable: true, get: function() { + return semver_2.SemVer; + } }); + var satisfiesWithPrereleasesCache = /* @__PURE__ */ new Map(); + function satisfiesWithPrereleases(version2, range, loose = false) { + if (!version2) + return false; + const key = `${range}${loose}`; + let semverRange = satisfiesWithPrereleasesCache.get(key); + if (typeof semverRange === `undefined`) { + try { + semverRange = new semver_12.default.Range(range, { includePrerelease: true, loose }); + } catch { + return false; + } finally { + satisfiesWithPrereleasesCache.set(key, semverRange || null); + } + } else if (semverRange === null) { + return false; } - }; - var checkCwdOption = (options = {}) => { - if (!options.cwd) { - return; + let semverVersion; + try { + semverVersion = new semver_12.default.SemVer(version2, semverRange); + } catch (err) { + return false; } - let stat; + if (semverRange.test(semverVersion)) + return true; + if (semverVersion.prerelease) + semverVersion.prerelease = []; + return semverRange.set.some((comparatorSet) => { + for (const comparator of comparatorSet) + if (comparator.semver.prerelease) + comparator.semver.prerelease = []; + return comparatorSet.every((comparator) => { + return comparator.test(semverVersion); + }); + }); + } + exports2.satisfiesWithPrereleases = satisfiesWithPrereleases; + var rangesCache = /* @__PURE__ */ new Map(); + function validRange(potentialRange) { + if (potentialRange.indexOf(`:`) !== -1) + return null; + let range = rangesCache.get(potentialRange); + if (typeof range !== `undefined`) + return range; try { - stat = fs.statSync(options.cwd); + range = new semver_12.default.Range(potentialRange); } catch { - return; + range = null; } - if (!stat.isDirectory()) { - throw new Error("The `cwd` option must be a path to a directory"); + rangesCache.set(potentialRange, range); + return range; + } + exports2.validRange = validRange; + var CLEAN_SEMVER_REGEXP = /^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/; + function clean(potentialVersion) { + const version2 = CLEAN_SEMVER_REGEXP.exec(potentialVersion); + return version2 ? version2[1] : null; + } + exports2.clean = clean; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Manifest.js +var require_Manifest = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Manifest.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Manifest = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var parsers_1 = require_lib122(); + var semver_12 = tslib_12.__importDefault(require_semver2()); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var Manifest = class { + constructor() { + this.indent = ` `; + this.name = null; + this.version = null; + this.os = null; + this.cpu = null; + this.libc = null; + this.type = null; + this.packageManager = null; + this["private"] = false; + this.license = null; + this.main = null; + this.module = null; + this.browser = null; + this.languageName = null; + this.bin = /* @__PURE__ */ new Map(); + this.scripts = /* @__PURE__ */ new Map(); + this.dependencies = /* @__PURE__ */ new Map(); + this.devDependencies = /* @__PURE__ */ new Map(); + this.peerDependencies = /* @__PURE__ */ new Map(); + this.workspaceDefinitions = []; + this.dependenciesMeta = /* @__PURE__ */ new Map(); + this.peerDependenciesMeta = /* @__PURE__ */ new Map(); + this.resolutions = []; + this.files = null; + this.publishConfig = null; + this.installConfig = null; + this.preferUnplugged = null; + this.raw = {}; + this.errors = []; + } + static async tryFind(path2, { baseFs = new fslib_12.NodeFS() } = {}) { + const manifestPath = fslib_12.ppath.join(path2, `package.json`); + try { + return await Manifest.fromFile(manifestPath, { baseFs }); + } catch (err) { + if (err.code === `ENOENT`) + return null; + throw err; + } } - }; - var getPathString = (p) => p.stats instanceof fs.Stats ? p.path : p; - var generateGlobTasks = (patterns, taskOptions) => { - patterns = arrayUnion([].concat(patterns)); - assertPatternsInput(patterns); - checkCwdOption(taskOptions); - const globTasks = []; - taskOptions = { - ignore: [], - expandDirectories: true, - ...taskOptions - }; - for (const [index, pattern] of patterns.entries()) { - if (isNegative(pattern)) { - continue; + static async find(path2, { baseFs } = {}) { + const manifest = await Manifest.tryFind(path2, { baseFs }); + if (manifest === null) + throw new Error(`Manifest not found`); + return manifest; + } + static async fromFile(path2, { baseFs = new fslib_12.NodeFS() } = {}) { + const manifest = new Manifest(); + await manifest.loadFile(path2, { baseFs }); + return manifest; + } + static fromText(text) { + const manifest = new Manifest(); + manifest.loadFromText(text); + return manifest; + } + loadFromText(text) { + let data; + try { + data = JSON.parse(stripBOM(text) || `{}`); + } catch (error) { + error.message += ` (when parsing ${text})`; + throw error; } - const ignore = patterns.slice(index).filter((pattern2) => isNegative(pattern2)).map((pattern2) => pattern2.slice(1)); - const options = { - ...taskOptions, - ignore: taskOptions.ignore.concat(ignore) - }; - globTasks.push({ pattern, options }); + this.load(data); + this.indent = getIndent(text); } - return globTasks; - }; - var globDirs = (task, fn2) => { - let options = {}; - if (task.options.cwd) { - options.cwd = task.options.cwd; + async loadFile(path2, { baseFs = new fslib_12.NodeFS() }) { + const content = await baseFs.readFilePromise(path2, `utf8`); + let data; + try { + data = JSON.parse(stripBOM(content) || `{}`); + } catch (error) { + error.message += ` (when parsing ${path2})`; + throw error; + } + this.load(data); + this.indent = getIndent(content); } - if (Array.isArray(task.options.expandDirectories)) { - options = { - ...options, - files: task.options.expandDirectories - }; - } else if (typeof task.options.expandDirectories === "object") { - options = { - ...options, - ...task.options.expandDirectories - }; + load(data, { yamlCompatibilityMode = false } = {}) { + if (typeof data !== `object` || data === null) + throw new Error(`Utterly invalid manifest data (${data})`); + this.raw = data; + const errors = []; + this.name = null; + if (typeof data.name === `string`) { + try { + this.name = structUtils.parseIdent(data.name); + } catch (error) { + errors.push(new Error(`Parsing failed for the 'name' field`)); + } + } + if (typeof data.version === `string`) + this.version = data.version; + else + this.version = null; + if (Array.isArray(data.os)) { + const os = []; + this.os = os; + for (const item of data.os) { + if (typeof item !== `string`) { + errors.push(new Error(`Parsing failed for the 'os' field`)); + } else { + os.push(item); + } + } + } else { + this.os = null; + } + if (Array.isArray(data.cpu)) { + const cpu = []; + this.cpu = cpu; + for (const item of data.cpu) { + if (typeof item !== `string`) { + errors.push(new Error(`Parsing failed for the 'cpu' field`)); + } else { + cpu.push(item); + } + } + } else { + this.cpu = null; + } + if (Array.isArray(data.libc)) { + const libc = []; + this.libc = libc; + for (const item of data.libc) { + if (typeof item !== `string`) { + errors.push(new Error(`Parsing failed for the 'libc' field`)); + } else { + libc.push(item); + } + } + } else { + this.libc = null; + } + if (typeof data.type === `string`) + this.type = data.type; + else + this.type = null; + if (typeof data.packageManager === `string`) + this.packageManager = data.packageManager; + else + this.packageManager = null; + if (typeof data.private === `boolean`) + this.private = data.private; + else + this.private = false; + if (typeof data.license === `string`) + this.license = data.license; + else + this.license = null; + if (typeof data.languageName === `string`) + this.languageName = data.languageName; + else + this.languageName = null; + if (typeof data.main === `string`) + this.main = normalizeSlashes(data.main); + else + this.main = null; + if (typeof data.module === `string`) + this.module = normalizeSlashes(data.module); + else + this.module = null; + if (data.browser != null) { + if (typeof data.browser === `string`) { + this.browser = normalizeSlashes(data.browser); + } else { + this.browser = /* @__PURE__ */ new Map(); + for (const [key, value] of Object.entries(data.browser)) { + this.browser.set(normalizeSlashes(key), typeof value === `string` ? normalizeSlashes(value) : value); + } + } + } else { + this.browser = null; + } + this.bin = /* @__PURE__ */ new Map(); + if (typeof data.bin === `string`) { + if (this.name !== null) { + this.bin.set(this.name.name, normalizeSlashes(data.bin)); + } else { + errors.push(new Error(`String bin field, but no attached package name`)); + } + } else if (typeof data.bin === `object` && data.bin !== null) { + for (const [key, value] of Object.entries(data.bin)) { + if (typeof value !== `string`) { + errors.push(new Error(`Invalid bin definition for '${key}'`)); + continue; + } + const binaryIdent = structUtils.parseIdent(key); + this.bin.set(binaryIdent.name, normalizeSlashes(value)); + } + } + this.scripts = /* @__PURE__ */ new Map(); + if (typeof data.scripts === `object` && data.scripts !== null) { + for (const [key, value] of Object.entries(data.scripts)) { + if (typeof value !== `string`) { + errors.push(new Error(`Invalid script definition for '${key}'`)); + continue; + } + this.scripts.set(key, value); + } + } + this.dependencies = /* @__PURE__ */ new Map(); + if (typeof data.dependencies === `object` && data.dependencies !== null) { + for (const [name, range] of Object.entries(data.dependencies)) { + if (typeof range !== `string`) { + errors.push(new Error(`Invalid dependency range for '${name}'`)); + continue; + } + let ident; + try { + ident = structUtils.parseIdent(name); + } catch (error) { + errors.push(new Error(`Parsing failed for the dependency name '${name}'`)); + continue; + } + const descriptor = structUtils.makeDescriptor(ident, range); + this.dependencies.set(descriptor.identHash, descriptor); + } + } + this.devDependencies = /* @__PURE__ */ new Map(); + if (typeof data.devDependencies === `object` && data.devDependencies !== null) { + for (const [name, range] of Object.entries(data.devDependencies)) { + if (typeof range !== `string`) { + errors.push(new Error(`Invalid dependency range for '${name}'`)); + continue; + } + let ident; + try { + ident = structUtils.parseIdent(name); + } catch (error) { + errors.push(new Error(`Parsing failed for the dependency name '${name}'`)); + continue; + } + const descriptor = structUtils.makeDescriptor(ident, range); + this.devDependencies.set(descriptor.identHash, descriptor); + } + } + this.peerDependencies = /* @__PURE__ */ new Map(); + if (typeof data.peerDependencies === `object` && data.peerDependencies !== null) { + for (let [name, range] of Object.entries(data.peerDependencies)) { + let ident; + try { + ident = structUtils.parseIdent(name); + } catch (error) { + errors.push(new Error(`Parsing failed for the dependency name '${name}'`)); + continue; + } + if (typeof range !== `string` || !range.startsWith(WorkspaceResolver_1.WorkspaceResolver.protocol) && !semverUtils.validRange(range)) { + errors.push(new Error(`Invalid dependency range for '${name}'`)); + range = `*`; + } + const descriptor = structUtils.makeDescriptor(ident, range); + this.peerDependencies.set(descriptor.identHash, descriptor); + } + } + if (typeof data.workspaces === `object` && data.workspaces !== null && data.workspaces.nohoist) + errors.push(new Error(`'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead`)); + const workspaces = Array.isArray(data.workspaces) ? data.workspaces : typeof data.workspaces === `object` && data.workspaces !== null && Array.isArray(data.workspaces.packages) ? data.workspaces.packages : []; + this.workspaceDefinitions = []; + for (const entry of workspaces) { + if (typeof entry !== `string`) { + errors.push(new Error(`Invalid workspace definition for '${entry}'`)); + continue; + } + this.workspaceDefinitions.push({ + pattern: entry + }); + } + this.dependenciesMeta = /* @__PURE__ */ new Map(); + if (typeof data.dependenciesMeta === `object` && data.dependenciesMeta !== null) { + for (const [pattern, meta] of Object.entries(data.dependenciesMeta)) { + if (typeof meta !== `object` || meta === null) { + errors.push(new Error(`Invalid meta field for '${pattern}`)); + continue; + } + const descriptor = structUtils.parseDescriptor(pattern); + const dependencyMeta = this.ensureDependencyMeta(descriptor); + const built = tryParseOptionalBoolean2(meta.built, { yamlCompatibilityMode }); + if (built === null) { + errors.push(new Error(`Invalid built meta field for '${pattern}'`)); + continue; + } + const optional = tryParseOptionalBoolean2(meta.optional, { yamlCompatibilityMode }); + if (optional === null) { + errors.push(new Error(`Invalid optional meta field for '${pattern}'`)); + continue; + } + const unplugged = tryParseOptionalBoolean2(meta.unplugged, { yamlCompatibilityMode }); + if (unplugged === null) { + errors.push(new Error(`Invalid unplugged meta field for '${pattern}'`)); + continue; + } + Object.assign(dependencyMeta, { built, optional, unplugged }); + } + } + this.peerDependenciesMeta = /* @__PURE__ */ new Map(); + if (typeof data.peerDependenciesMeta === `object` && data.peerDependenciesMeta !== null) { + for (const [pattern, meta] of Object.entries(data.peerDependenciesMeta)) { + if (typeof meta !== `object` || meta === null) { + errors.push(new Error(`Invalid meta field for '${pattern}'`)); + continue; + } + const descriptor = structUtils.parseDescriptor(pattern); + const peerDependencyMeta = this.ensurePeerDependencyMeta(descriptor); + const optional = tryParseOptionalBoolean2(meta.optional, { yamlCompatibilityMode }); + if (optional === null) { + errors.push(new Error(`Invalid optional meta field for '${pattern}'`)); + continue; + } + Object.assign(peerDependencyMeta, { optional }); + } + } + this.resolutions = []; + if (typeof data.resolutions === `object` && data.resolutions !== null) { + for (const [pattern, reference] of Object.entries(data.resolutions)) { + if (typeof reference !== `string`) { + errors.push(new Error(`Invalid resolution entry for '${pattern}'`)); + continue; + } + try { + this.resolutions.push({ pattern: (0, parsers_1.parseResolution)(pattern), reference }); + } catch (error) { + errors.push(error); + continue; + } + } + } + if (Array.isArray(data.files)) { + this.files = /* @__PURE__ */ new Set(); + for (const filename of data.files) { + if (typeof filename !== `string`) { + errors.push(new Error(`Invalid files entry for '${filename}'`)); + continue; + } + this.files.add(filename); + } + } else { + this.files = null; + } + if (typeof data.publishConfig === `object` && data.publishConfig !== null) { + this.publishConfig = {}; + if (typeof data.publishConfig.access === `string`) + this.publishConfig.access = data.publishConfig.access; + if (typeof data.publishConfig.main === `string`) + this.publishConfig.main = normalizeSlashes(data.publishConfig.main); + if (typeof data.publishConfig.module === `string`) + this.publishConfig.module = normalizeSlashes(data.publishConfig.module); + if (data.publishConfig.browser != null) { + if (typeof data.publishConfig.browser === `string`) { + this.publishConfig.browser = normalizeSlashes(data.publishConfig.browser); + } else { + this.publishConfig.browser = /* @__PURE__ */ new Map(); + for (const [key, value] of Object.entries(data.publishConfig.browser)) { + this.publishConfig.browser.set(normalizeSlashes(key), typeof value === `string` ? normalizeSlashes(value) : value); + } + } + } + if (typeof data.publishConfig.registry === `string`) + this.publishConfig.registry = data.publishConfig.registry; + if (typeof data.publishConfig.bin === `string`) { + if (this.name !== null) { + this.publishConfig.bin = /* @__PURE__ */ new Map([[this.name.name, normalizeSlashes(data.publishConfig.bin)]]); + } else { + errors.push(new Error(`String bin field, but no attached package name`)); + } + } else if (typeof data.publishConfig.bin === `object` && data.publishConfig.bin !== null) { + this.publishConfig.bin = /* @__PURE__ */ new Map(); + for (const [key, value] of Object.entries(data.publishConfig.bin)) { + if (typeof value !== `string`) { + errors.push(new Error(`Invalid bin definition for '${key}'`)); + continue; + } + this.publishConfig.bin.set(key, normalizeSlashes(value)); + } + } + if (Array.isArray(data.publishConfig.executableFiles)) { + this.publishConfig.executableFiles = /* @__PURE__ */ new Set(); + for (const value of data.publishConfig.executableFiles) { + if (typeof value !== `string`) { + errors.push(new Error(`Invalid executable file definition`)); + continue; + } + this.publishConfig.executableFiles.add(normalizeSlashes(value)); + } + } + } else { + this.publishConfig = null; + } + if (typeof data.installConfig === `object` && data.installConfig !== null) { + this.installConfig = {}; + for (const key of Object.keys(data.installConfig)) { + if (key === `hoistingLimits`) { + if (typeof data.installConfig.hoistingLimits === `string`) { + this.installConfig.hoistingLimits = data.installConfig.hoistingLimits; + } else { + errors.push(new Error(`Invalid hoisting limits definition`)); + } + } else if (key == `selfReferences`) { + if (typeof data.installConfig.selfReferences == `boolean`) { + this.installConfig.selfReferences = data.installConfig.selfReferences; + } else { + errors.push(new Error(`Invalid selfReferences definition, must be a boolean value`)); + } + } else { + errors.push(new Error(`Unrecognized installConfig key: ${key}`)); + } + } + } else { + this.installConfig = null; + } + if (typeof data.optionalDependencies === `object` && data.optionalDependencies !== null) { + for (const [name, range] of Object.entries(data.optionalDependencies)) { + if (typeof range !== `string`) { + errors.push(new Error(`Invalid dependency range for '${name}'`)); + continue; + } + let ident; + try { + ident = structUtils.parseIdent(name); + } catch (error) { + errors.push(new Error(`Parsing failed for the dependency name '${name}'`)); + continue; + } + const realDescriptor = structUtils.makeDescriptor(ident, range); + this.dependencies.set(realDescriptor.identHash, realDescriptor); + const identDescriptor = structUtils.makeDescriptor(ident, `unknown`); + const dependencyMeta = this.ensureDependencyMeta(identDescriptor); + Object.assign(dependencyMeta, { optional: true }); + } + } + if (typeof data.preferUnplugged === `boolean`) + this.preferUnplugged = data.preferUnplugged; + else + this.preferUnplugged = null; + this.errors = errors; } - return fn2(task.pattern, options); - }; - var getPattern = (task, fn2) => task.options.expandDirectories ? globDirs(task, fn2) : [task.pattern]; - var getFilterSync = (options) => { - return options && options.gitignore ? gitignore.sync({ cwd: options.cwd, ignore: options.ignore }) : DEFAULT_FILTER; - }; - var globToTask = (task) => (glob) => { - const { options } = task; - if (options.ignore && Array.isArray(options.ignore) && options.expandDirectories) { - options.ignore = dirGlob.sync(options.ignore); + getForScope(type) { + switch (type) { + case `dependencies`: + return this.dependencies; + case `devDependencies`: + return this.devDependencies; + case `peerDependencies`: + return this.peerDependencies; + default: { + throw new Error(`Unsupported value ("${type}")`); + } + } } - return { - pattern: glob, - options - }; - }; - module2.exports = async (patterns, options) => { - const globTasks = generateGlobTasks(patterns, options); - const getFilter = async () => { - return options && options.gitignore ? gitignore({ cwd: options.cwd, ignore: options.ignore }) : DEFAULT_FILTER; - }; - const getTasks = async () => { - const tasks2 = await Promise.all(globTasks.map(async (task) => { - const globs = await getPattern(task, dirGlob); - return Promise.all(globs.map(globToTask(task))); + hasConsumerDependency(ident) { + if (this.dependencies.has(ident.identHash)) + return true; + if (this.peerDependencies.has(ident.identHash)) + return true; + return false; + } + hasHardDependency(ident) { + if (this.dependencies.has(ident.identHash)) + return true; + if (this.devDependencies.has(ident.identHash)) + return true; + return false; + } + hasSoftDependency(ident) { + if (this.peerDependencies.has(ident.identHash)) + return true; + return false; + } + hasDependency(ident) { + if (this.hasHardDependency(ident)) + return true; + if (this.hasSoftDependency(ident)) + return true; + return false; + } + getConditions() { + const fields = []; + if (this.os && this.os.length > 0) + fields.push(toConditionLine(`os`, this.os)); + if (this.cpu && this.cpu.length > 0) + fields.push(toConditionLine(`cpu`, this.cpu)); + if (this.libc && this.libc.length > 0) + fields.push(toConditionLine(`libc`, this.libc)); + return fields.length > 0 ? fields.join(` & `) : null; + } + ensureDependencyMeta(descriptor) { + if (descriptor.range !== `unknown` && !semver_12.default.valid(descriptor.range)) + throw new Error(`Invalid meta field range for '${structUtils.stringifyDescriptor(descriptor)}'`); + const identString = structUtils.stringifyIdent(descriptor); + const range = descriptor.range !== `unknown` ? descriptor.range : null; + let dependencyMetaSet = this.dependenciesMeta.get(identString); + if (!dependencyMetaSet) + this.dependenciesMeta.set(identString, dependencyMetaSet = /* @__PURE__ */ new Map()); + let dependencyMeta = dependencyMetaSet.get(range); + if (!dependencyMeta) + dependencyMetaSet.set(range, dependencyMeta = {}); + return dependencyMeta; + } + ensurePeerDependencyMeta(descriptor) { + if (descriptor.range !== `unknown`) + throw new Error(`Invalid meta field range for '${structUtils.stringifyDescriptor(descriptor)}'`); + const identString = structUtils.stringifyIdent(descriptor); + let peerDependencyMeta = this.peerDependenciesMeta.get(identString); + if (!peerDependencyMeta) + this.peerDependenciesMeta.set(identString, peerDependencyMeta = {}); + return peerDependencyMeta; + } + setRawField(name, value, { after = [] } = {}) { + const afterSet = new Set(after.filter((key) => { + return Object.prototype.hasOwnProperty.call(this.raw, key); })); - return arrayUnion(...tasks2); - }; - const [filter, tasks] = await Promise.all([getFilter(), getTasks()]); - const paths = await Promise.all(tasks.map((task) => fastGlob(task.pattern, task.options))); - return arrayUnion(...paths).filter((path_) => !filter(getPathString(path_))); - }; - module2.exports.sync = (patterns, options) => { - const globTasks = generateGlobTasks(patterns, options); - const tasks = []; - for (const task of globTasks) { - const newTask = getPattern(task, dirGlob.sync).map(globToTask(task)); - tasks.push(...newTask); + if (afterSet.size === 0 || Object.prototype.hasOwnProperty.call(this.raw, name)) { + this.raw[name] = value; + } else { + const oldRaw = this.raw; + const newRaw = this.raw = {}; + let inserted = false; + for (const key of Object.keys(oldRaw)) { + newRaw[key] = oldRaw[key]; + if (!inserted) { + afterSet.delete(key); + if (afterSet.size === 0) { + newRaw[name] = value; + inserted = true; + } + } + } + } } - const filter = getFilterSync(options); - let matches = []; - for (const task of tasks) { - matches = arrayUnion(matches, fastGlob.sync(task.pattern, task.options)); + exportTo(data, { compatibilityMode = true } = {}) { + var _a; + Object.assign(data, this.raw); + if (this.name !== null) + data.name = structUtils.stringifyIdent(this.name); + else + delete data.name; + if (this.version !== null) + data.version = this.version; + else + delete data.version; + if (this.os !== null) + data.os = this.os; + else + delete data.os; + if (this.cpu !== null) + data.cpu = this.cpu; + else + delete data.cpu; + if (this.type !== null) + data.type = this.type; + else + delete data.type; + if (this.packageManager !== null) + data.packageManager = this.packageManager; + else + delete data.packageManager; + if (this.private) + data.private = true; + else + delete data.private; + if (this.license !== null) + data.license = this.license; + else + delete data.license; + if (this.languageName !== null) + data.languageName = this.languageName; + else + delete data.languageName; + if (this.main !== null) + data.main = this.main; + else + delete data.main; + if (this.module !== null) + data.module = this.module; + else + delete data.module; + if (this.browser !== null) { + const browser = this.browser; + if (typeof browser === `string`) { + data.browser = browser; + } else if (browser instanceof Map) { + data.browser = Object.assign({}, ...Array.from(browser.keys()).sort().map((name) => { + return { [name]: browser.get(name) }; + })); + } + } else { + delete data.browser; + } + if (this.bin.size === 1 && this.name !== null && this.bin.has(this.name.name)) { + data.bin = this.bin.get(this.name.name); + } else if (this.bin.size > 0) { + data.bin = Object.assign({}, ...Array.from(this.bin.keys()).sort().map((name) => { + return { [name]: this.bin.get(name) }; + })); + } else { + delete data.bin; + } + if (this.workspaceDefinitions.length > 0) { + if (this.raw.workspaces && !Array.isArray(this.raw.workspaces)) { + data.workspaces = { ...this.raw.workspaces, packages: this.workspaceDefinitions.map(({ pattern }) => pattern) }; + } else { + data.workspaces = this.workspaceDefinitions.map(({ pattern }) => pattern); + } + } else if (this.raw.workspaces && !Array.isArray(this.raw.workspaces) && Object.keys(this.raw.workspaces).length > 0) { + data.workspaces = this.raw.workspaces; + } else { + delete data.workspaces; + } + const regularDependencies = []; + const optionalDependencies = []; + for (const dependency of this.dependencies.values()) { + const dependencyMetaSet = this.dependenciesMeta.get(structUtils.stringifyIdent(dependency)); + let isOptionallyBuilt = false; + if (compatibilityMode) { + if (dependencyMetaSet) { + const meta = dependencyMetaSet.get(null); + if (meta && meta.optional) { + isOptionallyBuilt = true; + } + } + } + if (isOptionallyBuilt) { + optionalDependencies.push(dependency); + } else { + regularDependencies.push(dependency); + } + } + if (regularDependencies.length > 0) { + data.dependencies = Object.assign({}, ...structUtils.sortDescriptors(regularDependencies).map((dependency) => { + return { [structUtils.stringifyIdent(dependency)]: dependency.range }; + })); + } else { + delete data.dependencies; + } + if (optionalDependencies.length > 0) { + data.optionalDependencies = Object.assign({}, ...structUtils.sortDescriptors(optionalDependencies).map((dependency) => { + return { [structUtils.stringifyIdent(dependency)]: dependency.range }; + })); + } else { + delete data.optionalDependencies; + } + if (this.devDependencies.size > 0) { + data.devDependencies = Object.assign({}, ...structUtils.sortDescriptors(this.devDependencies.values()).map((dependency) => { + return { [structUtils.stringifyIdent(dependency)]: dependency.range }; + })); + } else { + delete data.devDependencies; + } + if (this.peerDependencies.size > 0) { + data.peerDependencies = Object.assign({}, ...structUtils.sortDescriptors(this.peerDependencies.values()).map((dependency) => { + return { [structUtils.stringifyIdent(dependency)]: dependency.range }; + })); + } else { + delete data.peerDependencies; + } + data.dependenciesMeta = {}; + for (const [identString, dependencyMetaSet] of miscUtils.sortMap(this.dependenciesMeta.entries(), ([identString2, dependencyMetaSet2]) => identString2)) { + for (const [range, meta] of miscUtils.sortMap(dependencyMetaSet.entries(), ([range2, meta2]) => range2 !== null ? `0${range2}` : `1`)) { + const key = range !== null ? structUtils.stringifyDescriptor(structUtils.makeDescriptor(structUtils.parseIdent(identString), range)) : identString; + const metaCopy = { ...meta }; + if (compatibilityMode && range === null) + delete metaCopy.optional; + if (Object.keys(metaCopy).length === 0) + continue; + data.dependenciesMeta[key] = metaCopy; + } + } + if (Object.keys(data.dependenciesMeta).length === 0) + delete data.dependenciesMeta; + if (this.peerDependenciesMeta.size > 0) { + data.peerDependenciesMeta = Object.assign({}, ...miscUtils.sortMap(this.peerDependenciesMeta.entries(), ([identString, meta]) => identString).map(([identString, meta]) => { + return { [identString]: meta }; + })); + } else { + delete data.peerDependenciesMeta; + } + if (this.resolutions.length > 0) { + data.resolutions = Object.assign({}, ...this.resolutions.map(({ pattern, reference }) => { + return { [(0, parsers_1.stringifyResolution)(pattern)]: reference }; + })); + } else { + delete data.resolutions; + } + if (this.files !== null) + data.files = Array.from(this.files); + else + delete data.files; + if (this.preferUnplugged !== null) + data.preferUnplugged = this.preferUnplugged; + else + delete data.preferUnplugged; + if (this.scripts !== null && this.scripts.size > 0) { + (_a = data.scripts) !== null && _a !== void 0 ? _a : data.scripts = {}; + for (const existingScriptName of Object.keys(data.scripts)) + if (!this.scripts.has(existingScriptName)) + delete data.scripts[existingScriptName]; + for (const [name, content] of this.scripts.entries()) { + data.scripts[name] = content; + } + } else { + delete data.scripts; + } + return data; } - return matches.filter((path_) => !filter(path_)); }; - module2.exports.stream = (patterns, options) => { - const globTasks = generateGlobTasks(patterns, options); - const tasks = []; - for (const task of globTasks) { - const newTask = getPattern(task, dirGlob.sync).map(globToTask(task)); - tasks.push(...newTask); + exports2.Manifest = Manifest; + Manifest.fileName = `package.json`; + Manifest.allDependencies = [`dependencies`, `devDependencies`, `peerDependencies`]; + Manifest.hardDependencies = [`dependencies`, `devDependencies`]; + function getIndent(content) { + const indentMatch = content.match(/^[ \t]+/m); + if (indentMatch) { + return indentMatch[0]; + } else { + return ` `; } - const filter = getFilterSync(options); - const filterStream = new FilterStream((p) => !filter(p)); - const uniqueStream = new UniqueStream(); - return merge2(tasks.map((task) => fastGlob.stream(task.pattern, task.options))).pipe(filterStream).pipe(uniqueStream); + } + function stripBOM(content) { + if (content.charCodeAt(0) === 65279) { + return content.slice(1); + } else { + return content; + } + } + function normalizeSlashes(str) { + return str.replace(/\\/g, `/`); + } + function tryParseOptionalBoolean2(value, { yamlCompatibilityMode }) { + if (yamlCompatibilityMode) + return miscUtils.tryParseOptionalBoolean(value); + if (typeof value === `undefined` || typeof value === `boolean`) + return value; + return null; + } + function toConditionToken(name, raw) { + const index = raw.search(/[^!]/); + if (index === -1) + return `invalid`; + const prefix = index % 2 === 0 ? `` : `!`; + const value = raw.slice(index); + return `${prefix}${name}=${value}`; + } + function toConditionLine(name, rawTokens) { + if (rawTokens.length === 1) { + return toConditionToken(name, rawTokens[0]); + } else { + return `(${rawTokens.map((raw) => toConditionToken(name, raw)).join(` | `)})`; + } + } + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/now.js +var require_now = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/now.js"(exports2, module2) { + var root = require_root(); + var now = function() { + return root.Date.now(); }; - module2.exports.generateGlobTasks = generateGlobTasks; - module2.exports.hasMagic = (patterns, options) => [].concat(patterns).some((pattern) => fastGlob.isDynamicPattern(pattern, options)); - module2.exports.gitignore = gitignore; + module2.exports = now; } }); -// ../../node_modules/.pnpm/is-path-cwd@2.2.0/node_modules/is-path-cwd/index.js -var require_is_path_cwd = __commonJS({ - "../../node_modules/.pnpm/is-path-cwd@2.2.0/node_modules/is-path-cwd/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - module2.exports = (path_) => { - let cwd = process.cwd(); - path_ = path.resolve(path_); - if (process.platform === "win32") { - cwd = cwd.toLowerCase(); - path_ = path_.toLowerCase(); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js +var require_trimmedEndIndex = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js"(exports2, module2) { + var reWhitespace = /\s/; + function trimmedEndIndex(string) { + var index = string.length; + while (index-- && reWhitespace.test(string.charAt(index))) { } - return path_ === cwd; - }; + return index; + } + module2.exports = trimmedEndIndex; } }); -// ../../node_modules/.pnpm/is-path-inside@3.0.3/node_modules/is-path-inside/index.js -var require_is_path_inside = __commonJS({ - "../../node_modules/.pnpm/is-path-inside@3.0.3/node_modules/is-path-inside/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - module2.exports = (childPath, parentPath) => { - const relation = path.relative(parentPath, childPath); - return Boolean(relation && relation !== ".." && !relation.startsWith(`..${path.sep}`) && relation !== path.resolve(childPath)); - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js +var require_baseTrim = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js"(exports2, module2) { + var trimmedEndIndex = require_trimmedEndIndex(); + var reTrimStart = /^\s+/; + function baseTrim(string) { + return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; + } + module2.exports = baseTrim; } }); -// ../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js -var require_old = __commonJS({ - "../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js"(exports2) { - var pathModule = require("path"); - var isWindows = process.platform === "win32"; - var fs = require("fs"); - var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); - function rethrow() { - var callback; - if (DEBUG) { - var backtrace = new Error(); - callback = debugCallback; - } else - callback = missingCallback; - return callback; - function debugCallback(err) { - if (err) { - backtrace.message = err.message; - err = backtrace; - missingCallback(err); - } +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js +var require_isSymbol = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js"(exports2, module2) { + var baseGetTag = require_baseGetTag(); + var isObjectLike = require_isObjectLike(); + var symbolTag = "[object Symbol]"; + function isSymbol(value) { + return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; + } + module2.exports = isSymbol; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js +var require_toNumber = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js"(exports2, module2) { + var baseTrim = require_baseTrim(); + var isObject = require_isObject2(); + var isSymbol = require_isSymbol(); + var NAN = 0 / 0; + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + var reIsBinary = /^0b[01]+$/i; + var reIsOctal = /^0o[0-7]+$/i; + var freeParseInt = parseInt; + function toNumber(value) { + if (typeof value == "number") { + return value; } - function missingCallback(err) { - if (err) { - if (process.throwDeprecation) - throw err; - else if (!process.noDeprecation) { - var msg = "fs: missing callback " + (err.stack || err.message); - if (process.traceDeprecation) - console.trace(msg); - else - console.error(msg); - } - } + if (isSymbol(value)) { + return NAN; } + if (isObject(value)) { + var other = typeof value.valueOf == "function" ? value.valueOf() : value; + value = isObject(other) ? other + "" : other; + } + if (typeof value != "string") { + return value === 0 ? value : +value; + } + value = baseTrim(value); + var isBinary = reIsBinary.test(value); + return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } - function maybeCallback(cb) { - return typeof cb === "function" ? cb : rethrow(); - } - var normalize = pathModule.normalize; - if (isWindows) { - nextPartRe = /(.*?)(?:[\/\\]+|$)/g; - } else { - nextPartRe = /(.*?)(?:[\/]+|$)/g; - } - var nextPartRe; - if (isWindows) { - splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; - } else { - splitRootRe = /^[\/]*/; - } - var splitRootRe; - exports2.realpathSync = function realpathSync(p, cache) { - p = pathModule.resolve(p); - if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { - return cache[p]; + module2.exports = toNumber; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/debounce.js +var require_debounce2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/debounce.js"(exports2, module2) { + var isObject = require_isObject2(); + var now = require_now(); + var toNumber = require_toNumber(); + var FUNC_ERROR_TEXT = "Expected a function"; + var nativeMax = Math.max; + var nativeMin = Math.min; + function debounce(func, wait, options) { + var lastArgs, lastThis, maxWait, result2, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true; + if (typeof func != "function") { + throw new TypeError(FUNC_ERROR_TEXT); } - var original = p, seenLinks = {}, knownHard = {}; - var pos; - var current; - var base; - var previous; - start(); - function start() { - var m = splitRootRe.exec(p); - pos = m[0].length; - current = m[0]; - base = m[0]; - previous = ""; - if (isWindows && !knownHard[base]) { - fs.lstatSync(base); - knownHard[base] = true; + wait = toNumber(wait) || 0; + if (isObject(options)) { + leading = !!options.leading; + maxing = "maxWait" in options; + maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; + trailing = "trailing" in options ? !!options.trailing : trailing; + } + function invokeFunc(time) { + var args2 = lastArgs, thisArg = lastThis; + lastArgs = lastThis = void 0; + lastInvokeTime = time; + result2 = func.apply(thisArg, args2); + return result2; + } + function leadingEdge(time) { + lastInvokeTime = time; + timerId = setTimeout(timerExpired, wait); + return leading ? invokeFunc(time) : result2; + } + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall; + return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; + } + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime; + return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; + } + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); } + timerId = setTimeout(timerExpired, remainingWait(time)); } - while (pos < p.length) { - nextPartRe.lastIndex = pos; - var result = nextPartRe.exec(p); - previous = current; - current += result[0]; - base = previous + result[1]; - pos = nextPartRe.lastIndex; - if (knownHard[base] || cache && cache[base] === base) { - continue; + function trailingEdge(time) { + timerId = void 0; + if (trailing && lastArgs) { + return invokeFunc(time); } - var resolvedLink; - if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { - resolvedLink = cache[base]; - } else { - var stat = fs.lstatSync(base); - if (!stat.isSymbolicLink()) { - knownHard[base] = true; - if (cache) - cache[base] = base; - continue; - } - var linkTarget = null; - if (!isWindows) { - var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); - if (seenLinks.hasOwnProperty(id)) { - linkTarget = seenLinks[id]; - } + lastArgs = lastThis = void 0; + return result2; + } + function cancel() { + if (timerId !== void 0) { + clearTimeout(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = void 0; + } + function flush() { + return timerId === void 0 ? result2 : trailingEdge(now()); + } + function debounced() { + var time = now(), isInvoking = shouldInvoke(time); + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + if (isInvoking) { + if (timerId === void 0) { + return leadingEdge(lastCallTime); } - if (linkTarget === null) { - fs.statSync(base); - linkTarget = fs.readlinkSync(base); + if (maxing) { + clearTimeout(timerId); + timerId = setTimeout(timerExpired, wait); + return invokeFunc(lastCallTime); } - resolvedLink = pathModule.resolve(previous, linkTarget); - if (cache) - cache[base] = resolvedLink; - if (!isWindows) - seenLinks[id] = linkTarget; } - p = pathModule.resolve(resolvedLink, p.slice(pos)); - start(); + if (timerId === void 0) { + timerId = setTimeout(timerExpired, wait); + } + return result2; } - if (cache) - cache[original] = p; - return p; - }; - exports2.realpath = function realpath(p, cache, cb) { - if (typeof cb !== "function") { - cb = maybeCallback(cache); - cache = null; + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; + } + module2.exports = debounce; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/throttle.js +var require_throttle2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/throttle.js"(exports2, module2) { + var debounce = require_debounce2(); + var isObject = require_isObject2(); + var FUNC_ERROR_TEXT = "Expected a function"; + function throttle(func, wait, options) { + var leading = true, trailing = true; + if (typeof func != "function") { + throw new TypeError(FUNC_ERROR_TEXT); } - p = pathModule.resolve(p); - if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { - return process.nextTick(cb.bind(null, null, cache[p])); + if (isObject(options)) { + leading = "leading" in options ? !!options.leading : leading; + trailing = "trailing" in options ? !!options.trailing : trailing; } - var original = p, seenLinks = {}, knownHard = {}; - var pos; - var current; - var base; - var previous; - start(); - function start() { - var m = splitRootRe.exec(p); - pos = m[0].length; - current = m[0]; - base = m[0]; - previous = ""; - if (isWindows && !knownHard[base]) { - fs.lstat(base, function(err) { - if (err) - return cb(err); - knownHard[base] = true; - LOOP(); + return debounce(func, wait, { + "leading": leading, + "maxWait": wait, + "trailing": trailing + }); + } + module2.exports = throttle; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Report.js +var require_Report = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Report.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Report = exports2.isReportError = exports2.ReportError = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var throttle_1 = tslib_12.__importDefault(require_throttle2()); + var stream_12 = require("stream"); + var string_decoder_1 = require("string_decoder"); + var MessageName_1 = require_MessageName(); + var TITLE_PROGRESS_FPS = 15; + var ReportError = class extends Error { + constructor(code, message2, reportExtra) { + super(message2); + this.reportExtra = reportExtra; + this.reportCode = code; + } + }; + exports2.ReportError = ReportError; + function isReportError(error) { + return typeof error.reportCode !== `undefined`; + } + exports2.isReportError = isReportError; + var Report = class { + constructor() { + this.reportedInfos = /* @__PURE__ */ new Set(); + this.reportedWarnings = /* @__PURE__ */ new Set(); + this.reportedErrors = /* @__PURE__ */ new Set(); + } + static progressViaCounter(max) { + let current = 0; + let unlock; + let lock = new Promise((resolve) => { + unlock = resolve; + }); + const set = (n) => { + const thisUnlock = unlock; + lock = new Promise((resolve) => { + unlock = resolve; }); - } else { - process.nextTick(LOOP); + current = n; + thisUnlock(); + }; + const tick = (n = 0) => { + set(current + 1); + }; + const gen = async function* () { + while (current < max) { + await lock; + yield { + progress: current / max + }; + } + }(); + return { + [Symbol.asyncIterator]() { + return gen; + }, + hasProgress: true, + hasTitle: false, + set, + tick + }; + } + static progressViaTitle() { + let currentTitle; + let unlock; + let lock = new Promise((resolve) => { + unlock = resolve; + }); + const setTitle = (0, throttle_1.default)((title) => { + const thisUnlock = unlock; + lock = new Promise((resolve) => { + unlock = resolve; + }); + currentTitle = title; + thisUnlock(); + }, 1e3 / TITLE_PROGRESS_FPS); + const gen = async function* () { + while (true) { + await lock; + yield { + title: currentTitle + }; + } + }(); + return { + [Symbol.asyncIterator]() { + return gen; + }, + hasProgress: false, + hasTitle: true, + setTitle + }; + } + async startProgressPromise(progressIt, cb) { + const reportedProgress = this.reportProgress(progressIt); + try { + return await cb(progressIt); + } finally { + reportedProgress.stop(); } } - function LOOP() { - if (pos >= p.length) { - if (cache) - cache[original] = p; - return cb(null, p); + startProgressSync(progressIt, cb) { + const reportedProgress = this.reportProgress(progressIt); + try { + return cb(progressIt); + } finally { + reportedProgress.stop(); } - nextPartRe.lastIndex = pos; - var result = nextPartRe.exec(p); - previous = current; - current += result[0]; - base = previous + result[1]; - pos = nextPartRe.lastIndex; - if (knownHard[base] || cache && cache[base] === base) { - return process.nextTick(LOOP); + } + reportInfoOnce(name, text, opts) { + var _a; + const key = opts && opts.key ? opts.key : text; + if (!this.reportedInfos.has(key)) { + this.reportedInfos.add(key); + this.reportInfo(name, text); + (_a = opts === null || opts === void 0 ? void 0 : opts.reportExtra) === null || _a === void 0 ? void 0 : _a.call(opts, this); } - if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { - return gotResolvedLink(cache[base]); + } + reportWarningOnce(name, text, opts) { + var _a; + const key = opts && opts.key ? opts.key : text; + if (!this.reportedWarnings.has(key)) { + this.reportedWarnings.add(key); + this.reportWarning(name, text); + (_a = opts === null || opts === void 0 ? void 0 : opts.reportExtra) === null || _a === void 0 ? void 0 : _a.call(opts, this); } - return fs.lstat(base, gotStat); } - function gotStat(err, stat) { - if (err) - return cb(err); - if (!stat.isSymbolicLink()) { - knownHard[base] = true; - if (cache) - cache[base] = base; - return process.nextTick(LOOP); + reportErrorOnce(name, text, opts) { + var _a; + const key = opts && opts.key ? opts.key : text; + if (!this.reportedErrors.has(key)) { + this.reportedErrors.add(key); + this.reportError(name, text); + (_a = opts === null || opts === void 0 ? void 0 : opts.reportExtra) === null || _a === void 0 ? void 0 : _a.call(opts, this); } - if (!isWindows) { - var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); - if (seenLinks.hasOwnProperty(id)) { - return gotTarget(null, seenLinks[id], base); - } + } + reportExceptionOnce(error) { + if (isReportError(error)) { + this.reportErrorOnce(error.reportCode, error.message, { key: error, reportExtra: error.reportExtra }); + } else { + this.reportErrorOnce(MessageName_1.MessageName.EXCEPTION, error.stack || error.message, { key: error }); } - fs.stat(base, function(err2) { - if (err2) - return cb(err2); - fs.readlink(base, function(err3, target) { - if (!isWindows) - seenLinks[id] = target; - gotTarget(err3, target); - }); + } + createStreamReporter(prefix = null) { + const stream = new stream_12.PassThrough(); + const decoder = new string_decoder_1.StringDecoder(); + let buffer = ``; + stream.on(`data`, (chunk) => { + let chunkStr = decoder.write(chunk); + let lineIndex; + do { + lineIndex = chunkStr.indexOf(` +`); + if (lineIndex !== -1) { + const line = buffer + chunkStr.substring(0, lineIndex); + chunkStr = chunkStr.substring(lineIndex + 1); + buffer = ``; + if (prefix !== null) { + this.reportInfo(null, `${prefix} ${line}`); + } else { + this.reportInfo(null, line); + } + } + } while (lineIndex !== -1); + buffer += chunkStr; + }); + stream.on(`end`, () => { + const last = decoder.end(); + if (last !== ``) { + if (prefix !== null) { + this.reportInfo(null, `${prefix} ${last}`); + } else { + this.reportInfo(null, last); + } + } }); + return stream; } - function gotTarget(err, target, base2) { - if (err) - return cb(err); - var resolvedLink = pathModule.resolve(previous, target); - if (cache) - cache[base2] = resolvedLink; - gotResolvedLink(resolvedLink); + }; + exports2.Report = Report; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MultiFetcher.js +var require_MultiFetcher = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MultiFetcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MultiFetcher = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var structUtils = tslib_12.__importStar(require_structUtils()); + var MultiFetcher = class { + constructor(fetchers) { + this.fetchers = fetchers; } - function gotResolvedLink(resolvedLink) { - p = pathModule.resolve(resolvedLink, p.slice(pos)); - start(); + supports(locator, opts) { + if (!this.tryFetcher(locator, opts)) + return false; + return true; + } + getLocalPath(locator, opts) { + const fetcher = this.getFetcher(locator, opts); + return fetcher.getLocalPath(locator, opts); + } + async fetch(locator, opts) { + const fetcher = this.getFetcher(locator, opts); + return await fetcher.fetch(locator, opts); + } + tryFetcher(locator, opts) { + const fetcher = this.fetchers.find((fetcher2) => fetcher2.supports(locator, opts)); + if (!fetcher) + return null; + return fetcher; + } + getFetcher(locator, opts) { + const fetcher = this.fetchers.find((fetcher2) => fetcher2.supports(locator, opts)); + if (!fetcher) + throw new Report_1.ReportError(MessageName_1.MessageName.FETCHER_NOT_FOUND, `${structUtils.prettyLocator(opts.project.configuration, locator)} isn't supported by any available fetcher`); + return fetcher; } }; + exports2.MultiFetcher = MultiFetcher; } }); -// ../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js -var require_fs5 = __commonJS({ - "../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js"(exports2, module2) { - module2.exports = realpath; - realpath.realpath = realpath; - realpath.sync = realpathSync; - realpath.realpathSync = realpathSync; - realpath.monkeypatch = monkeypatch; - realpath.unmonkeypatch = unmonkeypatch; - var fs = require("fs"); - var origRealpath = fs.realpath; - var origRealpathSync = fs.realpathSync; - var version = process.version; - var ok = /^v[0-5]\./.test(version); - var old = require_old(); - function newError(er) { - return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); - } - function realpath(p, cache, cb) { - if (ok) { - return origRealpath(p, cache, cb); +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MultiResolver.js +var require_MultiResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/MultiResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MultiResolver = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var structUtils = tslib_12.__importStar(require_structUtils()); + var MultiResolver = class { + constructor(resolvers) { + this.resolvers = resolvers.filter((resolver) => resolver); } - if (typeof cache === "function") { - cb = cache; - cache = null; + supportsDescriptor(descriptor, opts) { + const resolver = this.tryResolverByDescriptor(descriptor, opts); + return !!resolver; } - origRealpath(p, cache, function(er, result) { - if (newError(er)) { - old.realpath(p, cache, cb); - } else { - cb(er, result); - } - }); - } - function realpathSync(p, cache) { - if (ok) { - return origRealpathSync(p, cache); + supportsLocator(locator, opts) { + const resolver = this.tryResolverByLocator(locator, opts); + return !!resolver; } - try { - return origRealpathSync(p, cache); - } catch (er) { - if (newError(er)) { - return old.realpathSync(p, cache); - } else { - throw er; - } + shouldPersistResolution(locator, opts) { + const resolver = this.getResolverByLocator(locator, opts); + return resolver.shouldPersistResolution(locator, opts); } - } - function monkeypatch() { - fs.realpath = realpath; - fs.realpathSync = realpathSync; - } - function unmonkeypatch() { - fs.realpath = origRealpath; - fs.realpathSync = origRealpathSync; - } + bindDescriptor(descriptor, fromLocator, opts) { + const resolver = this.getResolverByDescriptor(descriptor, opts); + return resolver.bindDescriptor(descriptor, fromLocator, opts); + } + getResolutionDependencies(descriptor, opts) { + const resolver = this.getResolverByDescriptor(descriptor, opts); + return resolver.getResolutionDependencies(descriptor, opts); + } + async getCandidates(descriptor, dependencies, opts) { + const resolver = this.getResolverByDescriptor(descriptor, opts); + return await resolver.getCandidates(descriptor, dependencies, opts); + } + async getSatisfying(descriptor, dependencies, locators, opts) { + const resolver = this.getResolverByDescriptor(descriptor, opts); + return resolver.getSatisfying(descriptor, dependencies, locators, opts); + } + async resolve(locator, opts) { + const resolver = this.getResolverByLocator(locator, opts); + return await resolver.resolve(locator, opts); + } + tryResolverByDescriptor(descriptor, opts) { + const resolver = this.resolvers.find((resolver2) => resolver2.supportsDescriptor(descriptor, opts)); + if (!resolver) + return null; + return resolver; + } + getResolverByDescriptor(descriptor, opts) { + const resolver = this.resolvers.find((resolver2) => resolver2.supportsDescriptor(descriptor, opts)); + if (!resolver) + throw new Error(`${structUtils.prettyDescriptor(opts.project.configuration, descriptor)} isn't supported by any available resolver`); + return resolver; + } + tryResolverByLocator(locator, opts) { + const resolver = this.resolvers.find((resolver2) => resolver2.supportsLocator(locator, opts)); + if (!resolver) + return null; + return resolver; + } + getResolverByLocator(locator, opts) { + const resolver = this.resolvers.find((resolver2) => resolver2.supportsLocator(locator, opts)); + if (!resolver) + throw new Error(`${structUtils.prettyLocator(opts.project.configuration, locator)} isn't supported by any available resolver`); + return resolver; + } + }; + exports2.MultiResolver = MultiResolver; } }); -// ../../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js -var require_concat_map = __commonJS({ - "../../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js"(exports2, module2) { - module2.exports = function(xs, fn2) { - var res = []; - for (var i = 0; i < xs.length; i++) { - var x = fn2(xs[i], i); - if (isArray(x)) - res.push.apply(res, x); - else - res.push(x); +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/VirtualFetcher.js +var require_VirtualFetcher = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/VirtualFetcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualFetcher = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var structUtils = tslib_12.__importStar(require_structUtils()); + var VirtualFetcher = class { + supports(locator) { + if (!locator.reference.startsWith(`virtual:`)) + return false; + return true; + } + getLocalPath(locator, opts) { + const splitPoint = locator.reference.indexOf(`#`); + if (splitPoint === -1) + throw new Error(`Invalid virtual package reference`); + const nextReference = locator.reference.slice(splitPoint + 1); + const nextLocator = structUtils.makeLocator(locator, nextReference); + return opts.fetcher.getLocalPath(nextLocator, opts); + } + async fetch(locator, opts) { + const splitPoint = locator.reference.indexOf(`#`); + if (splitPoint === -1) + throw new Error(`Invalid virtual package reference`); + const nextReference = locator.reference.slice(splitPoint + 1); + const nextLocator = structUtils.makeLocator(locator, nextReference); + const parentFetch = await opts.fetcher.fetch(nextLocator, opts); + return await this.ensureVirtualLink(locator, parentFetch, opts); + } + getLocatorFilename(locator) { + return structUtils.slugifyLocator(locator); + } + async ensureVirtualLink(locator, sourceFetch, opts) { + const to = sourceFetch.packageFs.getRealPath(); + const virtualFolder = opts.project.configuration.get(`virtualFolder`); + const virtualName = this.getLocatorFilename(locator); + const virtualPath = fslib_12.VirtualFS.makeVirtualPath(virtualFolder, virtualName, to); + const aliasFs = new fslib_12.AliasFS(virtualPath, { baseFs: sourceFetch.packageFs, pathUtils: fslib_12.ppath }); + return { ...sourceFetch, packageFs: aliasFs }; } - return res; }; - var isArray = Array.isArray || function(xs) { - return Object.prototype.toString.call(xs) === "[object Array]"; + exports2.VirtualFetcher = VirtualFetcher; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/VirtualResolver.js +var require_VirtualResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/VirtualResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualResolver = void 0; + var VirtualResolver = class { + static isVirtualDescriptor(descriptor) { + if (!descriptor.range.startsWith(VirtualResolver.protocol)) + return false; + return true; + } + static isVirtualLocator(locator) { + if (!locator.reference.startsWith(VirtualResolver.protocol)) + return false; + return true; + } + supportsDescriptor(descriptor, opts) { + return VirtualResolver.isVirtualDescriptor(descriptor); + } + supportsLocator(locator, opts) { + return VirtualResolver.isVirtualLocator(locator); + } + shouldPersistResolution(locator, opts) { + return false; + } + bindDescriptor(descriptor, locator, opts) { + throw new Error(`Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported`); + } + getResolutionDependencies(descriptor, opts) { + throw new Error(`Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported`); + } + async getCandidates(descriptor, dependencies, opts) { + throw new Error(`Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported`); + } + async getSatisfying(descriptor, dependencies, candidates, opts) { + throw new Error(`Assertion failed: calling "getSatisfying" on a virtual descriptor is unsupported`); + } + async resolve(locator, opts) { + throw new Error(`Assertion failed: calling "resolve" on a virtual locator is unsupported`); + } }; + exports2.VirtualResolver = VirtualResolver; + VirtualResolver.protocol = `virtual:`; } }); -// ../../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js -var require_balanced_match = __commonJS({ - "../../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkspaceFetcher.js +var require_WorkspaceFetcher = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkspaceFetcher.js"(exports2) { "use strict"; - module2.exports = balanced; - function balanced(a, b, str) { - if (a instanceof RegExp) - a = maybeMatch(a, str); - if (b instanceof RegExp) - b = maybeMatch(b, str); - var r = range(a, b, str); - return r && { - start: r[0], - end: r[1], - pre: str.slice(0, r[0]), - body: str.slice(r[0] + a.length, r[1]), - post: str.slice(r[1] + b.length) - }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.WorkspaceFetcher = void 0; + var fslib_12 = require_lib50(); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + var WorkspaceFetcher = class { + supports(locator) { + if (!locator.reference.startsWith(WorkspaceResolver_1.WorkspaceResolver.protocol)) + return false; + return true; + } + getLocalPath(locator, opts) { + return this.getWorkspace(locator, opts).cwd; + } + async fetch(locator, opts) { + const sourcePath = this.getWorkspace(locator, opts).cwd; + return { packageFs: new fslib_12.CwdFS(sourcePath), prefixPath: fslib_12.PortablePath.dot, localPath: sourcePath }; + } + getWorkspace(locator, opts) { + return opts.project.getWorkspaceByCwd(locator.reference.slice(WorkspaceResolver_1.WorkspaceResolver.protocol.length)); + } + }; + exports2.WorkspaceFetcher = WorkspaceFetcher; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/configUtils.js +var require_configUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/configUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSource = exports2.getValueByTree = exports2.getValue = exports2.resolveRcFiles = exports2.RESOLVED_RC_FILE = void 0; + var findLastIndex = (array, predicate, thisArg) => { + const reversedArray = [...array]; + reversedArray.reverse(); + return reversedArray.findIndex(predicate, thisArg); + }; + function isObject(data) { + return typeof data === `object` && data !== null && !Array.isArray(data); } - function maybeMatch(reg, str) { - var m = str.match(reg); - return m ? m[0] : null; + var ValueType; + (function(ValueType2) { + ValueType2[ValueType2["Object"] = 0] = "Object"; + ValueType2[ValueType2["Array"] = 1] = "Array"; + ValueType2[ValueType2["Literal"] = 2] = "Literal"; + ValueType2[ValueType2["Undefined"] = 3] = "Undefined"; + })(ValueType || (ValueType = {})); + function getValueType(data) { + if (typeof data === `undefined`) + return ValueType.Undefined; + if (isObject(data)) + return ValueType.Object; + if (Array.isArray(data)) + return ValueType.Array; + return ValueType.Literal; } - balanced.range = range; - function range(a, b, str) { - var begs, beg, left, right, result; - var ai = str.indexOf(a); - var bi = str.indexOf(b, ai + 1); - var i = ai; - if (ai >= 0 && bi > 0) { - if (a === b) { - return [ai, bi]; + function hasProperty(data, key) { + return Object.prototype.hasOwnProperty.call(data, key); + } + function isConflictMarker(data) { + return isObject(data) && hasProperty(data, `onConflict`) && typeof data.onConflict === `string`; + } + function normalizeValue(data) { + if (typeof data === `undefined`) + return { onConflict: `default`, value: data }; + if (!isConflictMarker(data)) + return { onConflict: `default`, value: data }; + if (hasProperty(data, `value`)) + return data; + const { onConflict, ...value } = data; + return { onConflict, value }; + } + function getNormalized(data, key) { + const rawValue = isObject(data) && hasProperty(data, key) ? data[key] : void 0; + return normalizeValue(rawValue); + } + exports2.RESOLVED_RC_FILE = Symbol(); + function resolvedRcFile(id, value) { + return [id, value, exports2.RESOLVED_RC_FILE]; + } + function isResolvedRcFile(value) { + if (!Array.isArray(value)) + return false; + return value[2] === exports2.RESOLVED_RC_FILE; + } + function attachIdToTree(data, id) { + if (isObject(data)) { + const result2 = {}; + for (const key of Object.keys(data)) + result2[key] = attachIdToTree(data[key], id); + return resolvedRcFile(id, result2); + } + if (Array.isArray(data)) + return resolvedRcFile(id, data.map((item) => attachIdToTree(item, id))); + return resolvedRcFile(id, data); + } + function resolveValueAt(rcFiles, path2, key, firstVisiblePosition, resolveAtPosition) { + let expectedValueType; + const relevantValues = []; + let lastRelevantPosition = resolveAtPosition; + let currentResetPosition = 0; + for (let t = resolveAtPosition - 1; t >= firstVisiblePosition; --t) { + const [id, data] = rcFiles[t]; + const { onConflict, value } = getNormalized(data, key); + const valueType = getValueType(value); + if (valueType === ValueType.Undefined) + continue; + expectedValueType !== null && expectedValueType !== void 0 ? expectedValueType : expectedValueType = valueType; + if (valueType !== expectedValueType || onConflict === `hardReset`) { + currentResetPosition = lastRelevantPosition; + break; } - begs = []; - left = str.length; - while (i >= 0 && !result) { - if (i == ai) { - begs.push(i); - ai = str.indexOf(a, i + 1); - } else if (begs.length == 1) { - result = [begs.pop(), bi]; + if (valueType === ValueType.Literal) + return resolvedRcFile(id, value); + relevantValues.unshift([id, value]); + if (onConflict === `reset`) { + currentResetPosition = t; + break; + } + if (onConflict === `extend` && t === firstVisiblePosition) + firstVisiblePosition = 0; + lastRelevantPosition = t; + } + if (typeof expectedValueType === `undefined`) + return null; + const source = relevantValues.map(([relevantId]) => relevantId).join(`, `); + switch (expectedValueType) { + case ValueType.Array: + return resolvedRcFile(source, new Array().concat(...relevantValues.map(([id, value]) => value.map((item) => attachIdToTree(item, id))))); + case ValueType.Object: { + const conglomerate = Object.assign({}, ...relevantValues.map(([, value]) => value)); + const keys = Object.keys(conglomerate); + const result2 = {}; + const nextIterationValues = rcFiles.map(([id, data]) => { + return [id, getNormalized(data, key).value]; + }); + const hardResetLocation = findLastIndex(nextIterationValues, ([_, value]) => { + const valueType = getValueType(value); + return valueType !== ValueType.Object && valueType !== ValueType.Undefined; + }); + if (hardResetLocation !== -1) { + const slice = nextIterationValues.slice(hardResetLocation + 1); + for (const key2 of keys) { + result2[key2] = resolveValueAt(slice, path2, key2, 0, slice.length); + } } else { - beg = begs.pop(); - if (beg < left) { - left = beg; - right = bi; + for (const key2 of keys) { + result2[key2] = resolveValueAt(nextIterationValues, path2, key2, currentResetPosition, nextIterationValues.length); } - bi = str.indexOf(b, i + 1); } - i = ai < bi && ai >= 0 ? ai : bi; - } - if (begs.length) { - result = [left, right]; + return resolvedRcFile(source, result2); } + default: + throw new Error(`Assertion failed: Non-extendable value type`); } - return result; - } - } -}); - -// ../../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js -var require_brace_expansion = __commonJS({ - "../../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js"(exports2, module2) { - var concatMap = require_concat_map(); - var balanced = require_balanced_match(); - module2.exports = expandTop; - var escSlash = "\0SLASH" + Math.random() + "\0"; - var escOpen = "\0OPEN" + Math.random() + "\0"; - var escClose = "\0CLOSE" + Math.random() + "\0"; - var escComma = "\0COMMA" + Math.random() + "\0"; - var escPeriod = "\0PERIOD" + Math.random() + "\0"; - function numeric(str) { - return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); } - function escapeBraces(str) { - return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + function resolveRcFiles(rcFiles) { + return resolveValueAt(rcFiles.map(([source, data]) => [source, { [`.`]: data }]), [], `.`, 0, rcFiles.length); } - function unescapeBraces(str) { - return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + exports2.resolveRcFiles = resolveRcFiles; + function getValue(value) { + return isResolvedRcFile(value) ? value[1] : value; } - function parseCommaParts(str) { - if (!str) - return [""]; - var parts = []; - var m = balanced("{", "}", str); - if (!m) - return str.split(","); - var pre = m.pre; - var body = m.body; - var post = m.post; - var p = pre.split(","); - p[p.length - 1] += "{" + body + "}"; - var postParts = parseCommaParts(post); - if (post.length) { - p[p.length - 1] += postParts.shift(); - p.push.apply(p, postParts); + exports2.getValue = getValue; + function getValueByTree(valueBase) { + const value = isResolvedRcFile(valueBase) ? valueBase[1] : valueBase; + if (Array.isArray(value)) + return value.map((v) => getValueByTree(v)); + if (isObject(value)) { + const result2 = {}; + for (const [propKey, propValue] of Object.entries(value)) + result2[propKey] = getValueByTree(propValue); + return result2; } - parts.push.apply(parts, p); - return parts; + return value; } - function expandTop(str) { - if (!str) - return []; - if (str.substr(0, 2) === "{}") { - str = "\\{\\}" + str.substr(2); + exports2.getValueByTree = getValueByTree; + function getSource(value) { + return isResolvedRcFile(value) ? value[0] : null; + } + exports2.getSource = getSource; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/folderUtils.js +var require_folderUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/folderUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isFolderInside = exports2.getHomeFolder = exports2.getDefaultGlobalFolder = void 0; + var fslib_12 = require_lib50(); + var os_1 = require("os"); + function getDefaultGlobalFolder() { + if (process.platform === `win32`) { + const base = fslib_12.npath.toPortablePath(process.env.LOCALAPPDATA || fslib_12.npath.join((0, os_1.homedir)(), `AppData`, `Local`)); + return fslib_12.ppath.resolve(base, `Yarn/Berry`); } - return expand(escapeBraces(str), true).map(unescapeBraces); + if (process.env.XDG_DATA_HOME) { + const base = fslib_12.npath.toPortablePath(process.env.XDG_DATA_HOME); + return fslib_12.ppath.resolve(base, `yarn/berry`); + } + return fslib_12.ppath.resolve(getHomeFolder(), `.yarn/berry`); } - function embrace(str) { - return "{" + str + "}"; + exports2.getDefaultGlobalFolder = getDefaultGlobalFolder; + function getHomeFolder() { + return fslib_12.npath.toPortablePath((0, os_1.homedir)() || `/usr/local/share`); } - function isPadded(el) { - return /^-?0\d/.test(el); + exports2.getHomeFolder = getHomeFolder; + function isFolderInside(target, parent) { + const relative2 = fslib_12.ppath.relative(parent, target); + return relative2 && !relative2.startsWith(`..`) && !fslib_12.ppath.isAbsolute(relative2); } - function lte(i, y) { - return i <= y; + exports2.isFolderInside = isFolderInside; + } +}); + +// ../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/lib/tunnel.js +var require_tunnel = __commonJS({ + "../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/lib/tunnel.js"(exports2) { + "use strict"; + var net = require("net"); + var tls = require("tls"); + var http = require("http"); + var https = require("https"); + var events = require("events"); + var assert = require("assert"); + var util = require("util"); + exports2.httpOverHttp = httpOverHttp; + exports2.httpsOverHttp = httpsOverHttp; + exports2.httpOverHttps = httpOverHttps; + exports2.httpsOverHttps = httpsOverHttps; + function httpOverHttp(options) { + var agent = new TunnelingAgent(options); + agent.request = http.request; + return agent; } - function gte(i, y) { - return i >= y; + function httpsOverHttp(options) { + var agent = new TunnelingAgent(options); + agent.request = http.request; + agent.createSocket = createSecureSocket; + agent.defaultPort = 443; + return agent; } - function expand(str, isTop) { - var expansions = []; - var m = balanced("{", "}", str); - if (!m || /\$$/.test(m.pre)) - return [str]; - var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); - var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); - var isSequence = isNumericSequence || isAlphaSequence; - var isOptions = m.body.indexOf(",") >= 0; - if (!isSequence && !isOptions) { - if (m.post.match(/,.*\}/)) { - str = m.pre + "{" + m.body + escClose + m.post; - return expand(str); + function httpOverHttps(options) { + var agent = new TunnelingAgent(options); + agent.request = https.request; + return agent; + } + function httpsOverHttps(options) { + var agent = new TunnelingAgent(options); + agent.request = https.request; + agent.createSocket = createSecureSocket; + agent.defaultPort = 443; + return agent; + } + function TunnelingAgent(options) { + var self2 = this; + self2.options = options || {}; + self2.proxyOptions = self2.options.proxy || {}; + self2.maxSockets = self2.options.maxSockets || http.Agent.defaultMaxSockets; + self2.requests = []; + self2.sockets = []; + self2.on("free", function onFree(socket, host, port, localAddress) { + var options2 = toOptions(host, port, localAddress); + for (var i = 0, len = self2.requests.length; i < len; ++i) { + var pending = self2.requests[i]; + if (pending.host === options2.host && pending.port === options2.port) { + self2.requests.splice(i, 1); + pending.request.onSocket(socket); + return; + } } - return [str]; + socket.destroy(); + self2.removeSocket(socket); + }); + } + util.inherits(TunnelingAgent, events.EventEmitter); + TunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) { + var self2 = this; + var options = mergeOptions({ request: req }, self2.options, toOptions(host, port, localAddress)); + if (self2.sockets.length >= this.maxSockets) { + self2.requests.push(options); + return; } - var n; - if (isSequence) { - n = m.body.split(/\.\./); - } else { - n = parseCommaParts(m.body); - if (n.length === 1) { - n = expand(n[0], false).map(embrace); - if (n.length === 1) { - var post = m.post.length ? expand(m.post, false) : [""]; - return post.map(function(p) { - return m.pre + n[0] + p; - }); - } + self2.createSocket(options, function(socket) { + socket.on("free", onFree); + socket.on("close", onCloseOrRemove); + socket.on("agentRemove", onCloseOrRemove); + req.onSocket(socket); + function onFree() { + self2.emit("free", socket, options); } + function onCloseOrRemove(err) { + self2.removeSocket(socket); + socket.removeListener("free", onFree); + socket.removeListener("close", onCloseOrRemove); + socket.removeListener("agentRemove", onCloseOrRemove); + } + }); + }; + TunnelingAgent.prototype.createSocket = function createSocket(options, cb) { + var self2 = this; + var placeholder = {}; + self2.sockets.push(placeholder); + var connectOptions = mergeOptions({}, self2.proxyOptions, { + method: "CONNECT", + path: options.host + ":" + options.port, + agent: false, + headers: { + host: options.host + ":" + options.port + } + }); + if (options.localAddress) { + connectOptions.localAddress = options.localAddress; + } + if (connectOptions.proxyAuth) { + connectOptions.headers = connectOptions.headers || {}; + connectOptions.headers["Proxy-Authorization"] = "Basic " + new Buffer(connectOptions.proxyAuth).toString("base64"); + } + debug("making CONNECT request"); + var connectReq = self2.request(connectOptions); + connectReq.useChunkedEncodingByDefault = false; + connectReq.once("response", onResponse); + connectReq.once("upgrade", onUpgrade); + connectReq.once("connect", onConnect); + connectReq.once("error", onError); + connectReq.end(); + function onResponse(res) { + res.upgrade = true; + } + function onUpgrade(res, socket, head) { + process.nextTick(function() { + onConnect(res, socket, head); + }); } - var pre = m.pre; - var post = m.post.length ? expand(m.post, false) : [""]; - var N; - if (isSequence) { - var x = numeric(n[0]); - var y = numeric(n[1]); - var width = Math.max(n[0].length, n[1].length); - var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; - var test = lte; - var reverse = y < x; - if (reverse) { - incr *= -1; - test = gte; + function onConnect(res, socket, head) { + connectReq.removeAllListeners(); + socket.removeAllListeners(); + if (res.statusCode !== 200) { + debug( + "tunneling socket could not be established, statusCode=%d", + res.statusCode + ); + socket.destroy(); + var error = new Error("tunneling socket could not be established, statusCode=" + res.statusCode); + error.code = "ECONNRESET"; + options.request.emit("error", error); + self2.removeSocket(placeholder); + return; } - var pad = n.some(isPadded); - N = []; - for (var i = x; test(i, y); i += incr) { - var c; - if (isAlphaSequence) { - c = String.fromCharCode(i); - if (c === "\\") - c = ""; - } else { - c = String(i); - if (pad) { - var need = width - c.length; - if (need > 0) { - var z = new Array(need + 1).join("0"); - if (i < 0) - c = "-" + z + c.slice(1); - else - c = z + c; - } - } - } - N.push(c); + if (head.length > 0) { + debug("got illegal response body from proxy"); + socket.destroy(); + var error = new Error("got illegal response body from proxy"); + error.code = "ECONNRESET"; + options.request.emit("error", error); + self2.removeSocket(placeholder); + return; } - } else { - N = concatMap(n, function(el) { - return expand(el, false); + debug("tunneling connection has established"); + self2.sockets[self2.sockets.indexOf(placeholder)] = socket; + return cb(socket); + } + function onError(cause) { + connectReq.removeAllListeners(); + debug( + "tunneling socket could not be established, cause=%s\n", + cause.message, + cause.stack + ); + var error = new Error("tunneling socket could not be established, cause=" + cause.message); + error.code = "ECONNRESET"; + options.request.emit("error", error); + self2.removeSocket(placeholder); + } + }; + TunnelingAgent.prototype.removeSocket = function removeSocket(socket) { + var pos = this.sockets.indexOf(socket); + if (pos === -1) { + return; + } + this.sockets.splice(pos, 1); + var pending = this.requests.shift(); + if (pending) { + this.createSocket(pending, function(socket2) { + pending.request.onSocket(socket2); }); } - for (var j = 0; j < N.length; j++) { - for (var k = 0; k < post.length; k++) { - var expansion = pre + N[j] + post[k]; - if (!isTop || isSequence || expansion) - expansions.push(expansion); + }; + function createSecureSocket(options, cb) { + var self2 = this; + TunnelingAgent.prototype.createSocket.call(self2, options, function(socket) { + var hostHeader = options.request.getHeader("host"); + var tlsOptions = mergeOptions({}, self2.options, { + socket, + servername: hostHeader ? hostHeader.replace(/:.*$/, "") : options.host + }); + var secureSocket = tls.connect(0, tlsOptions); + self2.sockets[self2.sockets.indexOf(socket)] = secureSocket; + cb(secureSocket); + }); + } + function toOptions(host, port, localAddress) { + if (typeof host === "string") { + return { + host, + port, + localAddress + }; + } + return host; + } + function mergeOptions(target) { + for (var i = 1, len = arguments.length; i < len; ++i) { + var overrides = arguments[i]; + if (typeof overrides === "object") { + var keys = Object.keys(overrides); + for (var j = 0, keyLen = keys.length; j < keyLen; ++j) { + var k = keys[j]; + if (overrides[k] !== void 0) { + target[k] = overrides[k]; + } + } } } - return expansions; + return target; + } + var debug; + if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) { + debug = function() { + var args2 = Array.prototype.slice.call(arguments); + if (typeof args2[0] === "string") { + args2[0] = "TUNNEL: " + args2[0]; + } else { + args2.unshift("TUNNEL:"); + } + console.error.apply(console, args2); + }; + } else { + debug = function() { + }; } + exports2.debug = debug; } }); -// ../../node_modules/.pnpm/minimatch@3.0.4/node_modules/minimatch/minimatch.js -var require_minimatch = __commonJS({ - "../../node_modules/.pnpm/minimatch@3.0.4/node_modules/minimatch/minimatch.js"(exports2, module2) { - module2.exports = minimatch; - minimatch.Minimatch = Minimatch; - var path = { sep: "/" }; - try { - path = require("path"); - } catch (er) { - } - var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; - var expand = require_brace_expansion(); - var plTypes = { - "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, - "?": { open: "(?:", close: ")?" }, - "+": { open: "(?:", close: ")+" }, - "*": { open: "(?:", close: ")*" }, - "@": { open: "(?:", close: ")" } - }; - var qmark = "[^/]"; - var star = qmark + "*?"; - var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; - var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; - var reSpecials = charSet("().*{}+?[]^$\\!"); - function charSet(s) { - return s.split("").reduce(function(set, c) { - set[c] = true; - return set; - }, {}); - } - var slashSplit = /\/+/; - minimatch.filter = filter; - function filter(pattern, options) { - options = options || {}; - return function(p, i, list) { - return minimatch(p, pattern, options); - }; +// ../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var require_tunnel2 = __commonJS({ + "../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js"(exports2, module2) { + module2.exports = require_tunnel(); + } +}); + +// ../node_modules/.pnpm/@sindresorhus+is@4.6.0/node_modules/@sindresorhus/is/dist/index.js +var require_dist14 = __commonJS({ + "../node_modules/.pnpm/@sindresorhus+is@4.6.0/node_modules/@sindresorhus/is/dist/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var typedArrayTypeNames = [ + "Int8Array", + "Uint8Array", + "Uint8ClampedArray", + "Int16Array", + "Uint16Array", + "Int32Array", + "Uint32Array", + "Float32Array", + "Float64Array", + "BigInt64Array", + "BigUint64Array" + ]; + function isTypedArrayName(name) { + return typedArrayTypeNames.includes(name); + } + var objectTypeNames = [ + "Function", + "Generator", + "AsyncGenerator", + "GeneratorFunction", + "AsyncGeneratorFunction", + "AsyncFunction", + "Observable", + "Array", + "Buffer", + "Blob", + "Object", + "RegExp", + "Date", + "Error", + "Map", + "Set", + "WeakMap", + "WeakSet", + "ArrayBuffer", + "SharedArrayBuffer", + "DataView", + "Promise", + "URL", + "FormData", + "URLSearchParams", + "HTMLElement", + ...typedArrayTypeNames + ]; + function isObjectTypeName(name) { + return objectTypeNames.includes(name); + } + var primitiveTypeNames = [ + "null", + "undefined", + "string", + "number", + "bigint", + "boolean", + "symbol" + ]; + function isPrimitiveTypeName(name) { + return primitiveTypeNames.includes(name); } - function ext(a, b) { - a = a || {}; - b = b || {}; - var t = {}; - Object.keys(b).forEach(function(k) { - t[k] = b[k]; - }); - Object.keys(a).forEach(function(k) { - t[k] = a[k]; - }); - return t; + function isOfType(type) { + return (value) => typeof value === type; } - minimatch.defaults = function(def) { - if (!def || !Object.keys(def).length) - return minimatch; - var orig = minimatch; - var m = function minimatch2(p, pattern, options) { - return orig.minimatch(p, pattern, ext(def, options)); - }; - m.Minimatch = function Minimatch2(pattern, options) { - return new orig.Minimatch(pattern, ext(def, options)); - }; - return m; - }; - Minimatch.defaults = function(def) { - if (!def || !Object.keys(def).length) - return Minimatch; - return minimatch.defaults(def).Minimatch; + var { toString } = Object.prototype; + var getObjectType = (value) => { + const objectTypeName = toString.call(value).slice(8, -1); + if (/HTML\w+Element/.test(objectTypeName) && is.domElement(value)) { + return "HTMLElement"; + } + if (isObjectTypeName(objectTypeName)) { + return objectTypeName; + } + return void 0; }; - function minimatch(p, pattern, options) { - if (typeof pattern !== "string") { - throw new TypeError("glob pattern string required"); + var isObjectOfType = (type) => (value) => getObjectType(value) === type; + function is(value) { + if (value === null) { + return "null"; } - if (!options) - options = {}; - if (!options.nocomment && pattern.charAt(0) === "#") { + switch (typeof value) { + case "undefined": + return "undefined"; + case "string": + return "string"; + case "number": + return "number"; + case "boolean": + return "boolean"; + case "function": + return "Function"; + case "bigint": + return "bigint"; + case "symbol": + return "symbol"; + default: + } + if (is.observable(value)) { + return "Observable"; + } + if (is.array(value)) { + return "Array"; + } + if (is.buffer(value)) { + return "Buffer"; + } + const tagType = getObjectType(value); + if (tagType) { + return tagType; + } + if (value instanceof String || value instanceof Boolean || value instanceof Number) { + throw new TypeError("Please don't use object wrappers for primitive types"); + } + return "Object"; + } + is.undefined = isOfType("undefined"); + is.string = isOfType("string"); + var isNumberType = isOfType("number"); + is.number = (value) => isNumberType(value) && !is.nan(value); + is.bigint = isOfType("bigint"); + is.function_ = isOfType("function"); + is.null_ = (value) => value === null; + is.class_ = (value) => is.function_(value) && value.toString().startsWith("class "); + is.boolean = (value) => value === true || value === false; + is.symbol = isOfType("symbol"); + is.numericString = (value) => is.string(value) && !is.emptyStringOrWhitespace(value) && !Number.isNaN(Number(value)); + is.array = (value, assertion) => { + if (!Array.isArray(value)) { return false; } - if (pattern.trim() === "") - return p === ""; - return new Minimatch(pattern, options).match(p); - } - function Minimatch(pattern, options) { - if (!(this instanceof Minimatch)) { - return new Minimatch(pattern, options); + if (!is.function_(assertion)) { + return true; } - if (typeof pattern !== "string") { - throw new TypeError("glob pattern string required"); + return value.every(assertion); + }; + is.buffer = (value) => { + var _a, _b, _c, _d; + return (_d = (_c = (_b = (_a = value) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.isBuffer) === null || _c === void 0 ? void 0 : _c.call(_b, value)) !== null && _d !== void 0 ? _d : false; + }; + is.blob = (value) => isObjectOfType("Blob")(value); + is.nullOrUndefined = (value) => is.null_(value) || is.undefined(value); + is.object = (value) => !is.null_(value) && (typeof value === "object" || is.function_(value)); + is.iterable = (value) => { + var _a; + return is.function_((_a = value) === null || _a === void 0 ? void 0 : _a[Symbol.iterator]); + }; + is.asyncIterable = (value) => { + var _a; + return is.function_((_a = value) === null || _a === void 0 ? void 0 : _a[Symbol.asyncIterator]); + }; + is.generator = (value) => { + var _a, _b; + return is.iterable(value) && is.function_((_a = value) === null || _a === void 0 ? void 0 : _a.next) && is.function_((_b = value) === null || _b === void 0 ? void 0 : _b.throw); + }; + is.asyncGenerator = (value) => is.asyncIterable(value) && is.function_(value.next) && is.function_(value.throw); + is.nativePromise = (value) => isObjectOfType("Promise")(value); + var hasPromiseAPI = (value) => { + var _a, _b; + return is.function_((_a = value) === null || _a === void 0 ? void 0 : _a.then) && is.function_((_b = value) === null || _b === void 0 ? void 0 : _b.catch); + }; + is.promise = (value) => is.nativePromise(value) || hasPromiseAPI(value); + is.generatorFunction = isObjectOfType("GeneratorFunction"); + is.asyncGeneratorFunction = (value) => getObjectType(value) === "AsyncGeneratorFunction"; + is.asyncFunction = (value) => getObjectType(value) === "AsyncFunction"; + is.boundFunction = (value) => is.function_(value) && !value.hasOwnProperty("prototype"); + is.regExp = isObjectOfType("RegExp"); + is.date = isObjectOfType("Date"); + is.error = isObjectOfType("Error"); + is.map = (value) => isObjectOfType("Map")(value); + is.set = (value) => isObjectOfType("Set")(value); + is.weakMap = (value) => isObjectOfType("WeakMap")(value); + is.weakSet = (value) => isObjectOfType("WeakSet")(value); + is.int8Array = isObjectOfType("Int8Array"); + is.uint8Array = isObjectOfType("Uint8Array"); + is.uint8ClampedArray = isObjectOfType("Uint8ClampedArray"); + is.int16Array = isObjectOfType("Int16Array"); + is.uint16Array = isObjectOfType("Uint16Array"); + is.int32Array = isObjectOfType("Int32Array"); + is.uint32Array = isObjectOfType("Uint32Array"); + is.float32Array = isObjectOfType("Float32Array"); + is.float64Array = isObjectOfType("Float64Array"); + is.bigInt64Array = isObjectOfType("BigInt64Array"); + is.bigUint64Array = isObjectOfType("BigUint64Array"); + is.arrayBuffer = isObjectOfType("ArrayBuffer"); + is.sharedArrayBuffer = isObjectOfType("SharedArrayBuffer"); + is.dataView = isObjectOfType("DataView"); + is.enumCase = (value, targetEnum) => Object.values(targetEnum).includes(value); + is.directInstanceOf = (instance, class_) => Object.getPrototypeOf(instance) === class_.prototype; + is.urlInstance = (value) => isObjectOfType("URL")(value); + is.urlString = (value) => { + if (!is.string(value)) { + return false; } - if (!options) - options = {}; - pattern = pattern.trim(); - if (path.sep !== "/") { - pattern = pattern.split(path.sep).join("/"); + try { + new URL(value); + return true; + } catch (_a) { + return false; } - this.options = options; - this.set = []; - this.pattern = pattern; - this.regexp = null; - this.negate = false; - this.comment = false; - this.empty = false; - this.make(); - } - Minimatch.prototype.debug = function() { }; - Minimatch.prototype.make = make; - function make() { - if (this._made) - return; - var pattern = this.pattern; - var options = this.options; - if (!options.nocomment && pattern.charAt(0) === "#") { - this.comment = true; - return; + is.truthy = (value) => Boolean(value); + is.falsy = (value) => !value; + is.nan = (value) => Number.isNaN(value); + is.primitive = (value) => is.null_(value) || isPrimitiveTypeName(typeof value); + is.integer = (value) => Number.isInteger(value); + is.safeInteger = (value) => Number.isSafeInteger(value); + is.plainObject = (value) => { + if (toString.call(value) !== "[object Object]") { + return false; } - if (!pattern) { - this.empty = true; - return; + const prototype = Object.getPrototypeOf(value); + return prototype === null || prototype === Object.getPrototypeOf({}); + }; + is.typedArray = (value) => isTypedArrayName(getObjectType(value)); + var isValidLength = (value) => is.safeInteger(value) && value >= 0; + is.arrayLike = (value) => !is.nullOrUndefined(value) && !is.function_(value) && isValidLength(value.length); + is.inRange = (value, range) => { + if (is.number(range)) { + return value >= Math.min(0, range) && value <= Math.max(range, 0); + } + if (is.array(range) && range.length === 2) { + return value >= Math.min(...range) && value <= Math.max(...range); + } + throw new TypeError(`Invalid range: ${JSON.stringify(range)}`); + }; + var NODE_TYPE_ELEMENT = 1; + var DOM_PROPERTIES_TO_CHECK = [ + "innerHTML", + "ownerDocument", + "style", + "attributes", + "nodeValue" + ]; + is.domElement = (value) => { + return is.object(value) && value.nodeType === NODE_TYPE_ELEMENT && is.string(value.nodeName) && !is.plainObject(value) && DOM_PROPERTIES_TO_CHECK.every((property) => property in value); + }; + is.observable = (value) => { + var _a, _b, _c, _d; + if (!value) { + return false; } - this.parseNegate(); - var set = this.globSet = this.braceExpand(); - if (options.debug) - this.debug = console.error; - this.debug(this.pattern, set); - set = this.globParts = set.map(function(s) { - return s.split(slashSplit); - }); - this.debug(this.pattern, set); - set = set.map(function(s, si, set2) { - return s.map(this.parse, this); - }, this); - this.debug(this.pattern, set); - set = set.filter(function(s) { - return s.indexOf(false) === -1; - }); - this.debug(this.pattern, set); - this.set = set; - } - Minimatch.prototype.parseNegate = parseNegate; - function parseNegate() { - var pattern = this.pattern; - var negate = false; - var options = this.options; - var negateOffset = 0; - if (options.nonegate) - return; - for (var i = 0, l = pattern.length; i < l && pattern.charAt(i) === "!"; i++) { - negate = !negate; - negateOffset++; + if (value === ((_b = (_a = value)[Symbol.observable]) === null || _b === void 0 ? void 0 : _b.call(_a))) { + return true; } - if (negateOffset) - this.pattern = pattern.substr(negateOffset); - this.negate = negate; - } - minimatch.braceExpand = function(pattern, options) { - return braceExpand(pattern, options); + if (value === ((_d = (_c = value)["@@observable"]) === null || _d === void 0 ? void 0 : _d.call(_c))) { + return true; + } + return false; }; - Minimatch.prototype.braceExpand = braceExpand; - function braceExpand(pattern, options) { - if (!options) { - if (this instanceof Minimatch) { - options = this.options; - } else { - options = {}; + is.nodeStream = (value) => is.object(value) && is.function_(value.pipe) && !is.observable(value); + is.infinite = (value) => value === Infinity || value === -Infinity; + var isAbsoluteMod2 = (remainder) => (value) => is.integer(value) && Math.abs(value % 2) === remainder; + is.evenInteger = isAbsoluteMod2(0); + is.oddInteger = isAbsoluteMod2(1); + is.emptyArray = (value) => is.array(value) && value.length === 0; + is.nonEmptyArray = (value) => is.array(value) && value.length > 0; + is.emptyString = (value) => is.string(value) && value.length === 0; + var isWhiteSpaceString = (value) => is.string(value) && !/\S/.test(value); + is.emptyStringOrWhitespace = (value) => is.emptyString(value) || isWhiteSpaceString(value); + is.nonEmptyString = (value) => is.string(value) && value.length > 0; + is.nonEmptyStringAndNotWhitespace = (value) => is.string(value) && !is.emptyStringOrWhitespace(value); + is.emptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length === 0; + is.nonEmptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length > 0; + is.emptySet = (value) => is.set(value) && value.size === 0; + is.nonEmptySet = (value) => is.set(value) && value.size > 0; + is.emptyMap = (value) => is.map(value) && value.size === 0; + is.nonEmptyMap = (value) => is.map(value) && value.size > 0; + is.propertyKey = (value) => is.any([is.string, is.number, is.symbol], value); + is.formData = (value) => isObjectOfType("FormData")(value); + is.urlSearchParams = (value) => isObjectOfType("URLSearchParams")(value); + var predicateOnArray = (method, predicate, values) => { + if (!is.function_(predicate)) { + throw new TypeError(`Invalid predicate: ${JSON.stringify(predicate)}`); + } + if (values.length === 0) { + throw new TypeError("Invalid number of values"); + } + return method.call(values, predicate); + }; + is.any = (predicate, ...values) => { + const predicates = is.array(predicate) ? predicate : [predicate]; + return predicates.some((singlePredicate) => predicateOnArray(Array.prototype.some, singlePredicate, values)); + }; + is.all = (predicate, ...values) => predicateOnArray(Array.prototype.every, predicate, values); + var assertType = (condition, description, value, options = {}) => { + if (!condition) { + const { multipleValues } = options; + const valuesMessage = multipleValues ? `received values of types ${[ + ...new Set(value.map((singleValue) => `\`${is(singleValue)}\``)) + ].join(", ")}` : `received value of type \`${is(value)}\``; + throw new TypeError(`Expected value which is \`${description}\`, ${valuesMessage}.`); + } + }; + exports2.assert = { + // Unknowns. + undefined: (value) => assertType(is.undefined(value), "undefined", value), + string: (value) => assertType(is.string(value), "string", value), + number: (value) => assertType(is.number(value), "number", value), + bigint: (value) => assertType(is.bigint(value), "bigint", value), + // eslint-disable-next-line @typescript-eslint/ban-types + function_: (value) => assertType(is.function_(value), "Function", value), + null_: (value) => assertType(is.null_(value), "null", value), + class_: (value) => assertType(is.class_(value), "Class", value), + boolean: (value) => assertType(is.boolean(value), "boolean", value), + symbol: (value) => assertType(is.symbol(value), "symbol", value), + numericString: (value) => assertType(is.numericString(value), "string with a number", value), + array: (value, assertion) => { + const assert = assertType; + assert(is.array(value), "Array", value); + if (assertion) { + value.forEach(assertion); } + }, + buffer: (value) => assertType(is.buffer(value), "Buffer", value), + blob: (value) => assertType(is.blob(value), "Blob", value), + nullOrUndefined: (value) => assertType(is.nullOrUndefined(value), "null or undefined", value), + object: (value) => assertType(is.object(value), "Object", value), + iterable: (value) => assertType(is.iterable(value), "Iterable", value), + asyncIterable: (value) => assertType(is.asyncIterable(value), "AsyncIterable", value), + generator: (value) => assertType(is.generator(value), "Generator", value), + asyncGenerator: (value) => assertType(is.asyncGenerator(value), "AsyncGenerator", value), + nativePromise: (value) => assertType(is.nativePromise(value), "native Promise", value), + promise: (value) => assertType(is.promise(value), "Promise", value), + generatorFunction: (value) => assertType(is.generatorFunction(value), "GeneratorFunction", value), + asyncGeneratorFunction: (value) => assertType(is.asyncGeneratorFunction(value), "AsyncGeneratorFunction", value), + // eslint-disable-next-line @typescript-eslint/ban-types + asyncFunction: (value) => assertType(is.asyncFunction(value), "AsyncFunction", value), + // eslint-disable-next-line @typescript-eslint/ban-types + boundFunction: (value) => assertType(is.boundFunction(value), "Function", value), + regExp: (value) => assertType(is.regExp(value), "RegExp", value), + date: (value) => assertType(is.date(value), "Date", value), + error: (value) => assertType(is.error(value), "Error", value), + map: (value) => assertType(is.map(value), "Map", value), + set: (value) => assertType(is.set(value), "Set", value), + weakMap: (value) => assertType(is.weakMap(value), "WeakMap", value), + weakSet: (value) => assertType(is.weakSet(value), "WeakSet", value), + int8Array: (value) => assertType(is.int8Array(value), "Int8Array", value), + uint8Array: (value) => assertType(is.uint8Array(value), "Uint8Array", value), + uint8ClampedArray: (value) => assertType(is.uint8ClampedArray(value), "Uint8ClampedArray", value), + int16Array: (value) => assertType(is.int16Array(value), "Int16Array", value), + uint16Array: (value) => assertType(is.uint16Array(value), "Uint16Array", value), + int32Array: (value) => assertType(is.int32Array(value), "Int32Array", value), + uint32Array: (value) => assertType(is.uint32Array(value), "Uint32Array", value), + float32Array: (value) => assertType(is.float32Array(value), "Float32Array", value), + float64Array: (value) => assertType(is.float64Array(value), "Float64Array", value), + bigInt64Array: (value) => assertType(is.bigInt64Array(value), "BigInt64Array", value), + bigUint64Array: (value) => assertType(is.bigUint64Array(value), "BigUint64Array", value), + arrayBuffer: (value) => assertType(is.arrayBuffer(value), "ArrayBuffer", value), + sharedArrayBuffer: (value) => assertType(is.sharedArrayBuffer(value), "SharedArrayBuffer", value), + dataView: (value) => assertType(is.dataView(value), "DataView", value), + enumCase: (value, targetEnum) => assertType(is.enumCase(value, targetEnum), "EnumCase", value), + urlInstance: (value) => assertType(is.urlInstance(value), "URL", value), + urlString: (value) => assertType(is.urlString(value), "string with a URL", value), + truthy: (value) => assertType(is.truthy(value), "truthy", value), + falsy: (value) => assertType(is.falsy(value), "falsy", value), + nan: (value) => assertType(is.nan(value), "NaN", value), + primitive: (value) => assertType(is.primitive(value), "primitive", value), + integer: (value) => assertType(is.integer(value), "integer", value), + safeInteger: (value) => assertType(is.safeInteger(value), "integer", value), + plainObject: (value) => assertType(is.plainObject(value), "plain object", value), + typedArray: (value) => assertType(is.typedArray(value), "TypedArray", value), + arrayLike: (value) => assertType(is.arrayLike(value), "array-like", value), + domElement: (value) => assertType(is.domElement(value), "HTMLElement", value), + observable: (value) => assertType(is.observable(value), "Observable", value), + nodeStream: (value) => assertType(is.nodeStream(value), "Node.js Stream", value), + infinite: (value) => assertType(is.infinite(value), "infinite number", value), + emptyArray: (value) => assertType(is.emptyArray(value), "empty array", value), + nonEmptyArray: (value) => assertType(is.nonEmptyArray(value), "non-empty array", value), + emptyString: (value) => assertType(is.emptyString(value), "empty string", value), + emptyStringOrWhitespace: (value) => assertType(is.emptyStringOrWhitespace(value), "empty string or whitespace", value), + nonEmptyString: (value) => assertType(is.nonEmptyString(value), "non-empty string", value), + nonEmptyStringAndNotWhitespace: (value) => assertType(is.nonEmptyStringAndNotWhitespace(value), "non-empty string and not whitespace", value), + emptyObject: (value) => assertType(is.emptyObject(value), "empty object", value), + nonEmptyObject: (value) => assertType(is.nonEmptyObject(value), "non-empty object", value), + emptySet: (value) => assertType(is.emptySet(value), "empty set", value), + nonEmptySet: (value) => assertType(is.nonEmptySet(value), "non-empty set", value), + emptyMap: (value) => assertType(is.emptyMap(value), "empty map", value), + nonEmptyMap: (value) => assertType(is.nonEmptyMap(value), "non-empty map", value), + propertyKey: (value) => assertType(is.propertyKey(value), "PropertyKey", value), + formData: (value) => assertType(is.formData(value), "FormData", value), + urlSearchParams: (value) => assertType(is.urlSearchParams(value), "URLSearchParams", value), + // Numbers. + evenInteger: (value) => assertType(is.evenInteger(value), "even integer", value), + oddInteger: (value) => assertType(is.oddInteger(value), "odd integer", value), + // Two arguments. + directInstanceOf: (instance, class_) => assertType(is.directInstanceOf(instance, class_), "T", instance), + inRange: (value, range) => assertType(is.inRange(value, range), "in range", value), + // Variadic functions. + any: (predicate, ...values) => { + return assertType(is.any(predicate, ...values), "predicate returns truthy for any value", values, { multipleValues: true }); + }, + all: (predicate, ...values) => assertType(is.all(predicate, ...values), "predicate returns truthy for all values", values, { multipleValues: true }) + }; + Object.defineProperties(is, { + class: { + value: is.class_ + }, + function: { + value: is.function_ + }, + null: { + value: is.null_ } - pattern = typeof pattern === "undefined" ? this.pattern : pattern; - if (typeof pattern === "undefined") { - throw new TypeError("undefined pattern"); + }); + Object.defineProperties(exports2.assert, { + class: { + value: exports2.assert.class_ + }, + function: { + value: exports2.assert.function_ + }, + null: { + value: exports2.assert.null_ } - if (options.nobrace || !pattern.match(/\{.*\}/)) { - return [pattern]; + }); + exports2.default = is; + module2.exports = is; + module2.exports.default = is; + module2.exports.assert = exports2.assert; + } +}); + +// ../node_modules/.pnpm/p-cancelable@2.1.1/node_modules/p-cancelable/index.js +var require_p_cancelable = __commonJS({ + "../node_modules/.pnpm/p-cancelable@2.1.1/node_modules/p-cancelable/index.js"(exports2, module2) { + "use strict"; + var CancelError = class extends Error { + constructor(reason) { + super(reason || "Promise was canceled"); + this.name = "CancelError"; } - return expand(pattern); + get isCanceled() { + return true; + } + }; + var PCancelable = class { + static fn(userFn) { + return (...arguments_) => { + return new PCancelable((resolve, reject, onCancel) => { + arguments_.push(onCancel); + userFn(...arguments_).then(resolve, reject); + }); + }; + } + constructor(executor) { + this._cancelHandlers = []; + this._isPending = true; + this._isCanceled = false; + this._rejectOnCancel = true; + this._promise = new Promise((resolve, reject) => { + this._reject = reject; + const onResolve = (value) => { + if (!this._isCanceled || !onCancel.shouldReject) { + this._isPending = false; + resolve(value); + } + }; + const onReject = (error) => { + this._isPending = false; + reject(error); + }; + const onCancel = (handler) => { + if (!this._isPending) { + throw new Error("The `onCancel` handler was attached after the promise settled."); + } + this._cancelHandlers.push(handler); + }; + Object.defineProperties(onCancel, { + shouldReject: { + get: () => this._rejectOnCancel, + set: (boolean) => { + this._rejectOnCancel = boolean; + } + } + }); + return executor(onResolve, onReject, onCancel); + }); + } + then(onFulfilled, onRejected) { + return this._promise.then(onFulfilled, onRejected); + } + catch(onRejected) { + return this._promise.catch(onRejected); + } + finally(onFinally) { + return this._promise.finally(onFinally); + } + cancel(reason) { + if (!this._isPending || this._isCanceled) { + return; + } + this._isCanceled = true; + if (this._cancelHandlers.length > 0) { + try { + for (const handler of this._cancelHandlers) { + handler(); + } + } catch (error) { + this._reject(error); + return; + } + } + if (this._rejectOnCancel) { + this._reject(new CancelError(reason)); + } + } + get isCanceled() { + return this._isCanceled; + } + }; + Object.setPrototypeOf(PCancelable.prototype, Promise.prototype); + module2.exports = PCancelable; + module2.exports.CancelError = CancelError; + } +}); + +// ../node_modules/.pnpm/defer-to-connect@2.0.1/node_modules/defer-to-connect/dist/source/index.js +var require_source3 = __commonJS({ + "../node_modules/.pnpm/defer-to-connect@2.0.1/node_modules/defer-to-connect/dist/source/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function isTLSSocket(socket) { + return socket.encrypted; } - Minimatch.prototype.parse = parse; - var SUBPARSE = {}; - function parse(pattern, isSub) { - if (pattern.length > 1024 * 64) { - throw new TypeError("pattern is too long"); + var deferToConnect = (socket, fn2) => { + let listeners; + if (typeof fn2 === "function") { + const connect = fn2; + listeners = { connect }; + } else { + listeners = fn2; } - var options = this.options; - if (!options.noglobstar && pattern === "**") - return GLOBSTAR; - if (pattern === "") - return ""; - var re = ""; - var hasMagic = !!options.nocase; - var escaping = false; - var patternListStack = []; - var negativeLists = []; - var stateChar; - var inClass = false; - var reClassStart = -1; - var classStart = -1; - var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; - var self2 = this; - function clearStateChar() { - if (stateChar) { - switch (stateChar) { - case "*": - re += star; - hasMagic = true; - break; - case "?": - re += qmark; - hasMagic = true; - break; - default: - re += "\\" + stateChar; - break; + const hasConnectListener = typeof listeners.connect === "function"; + const hasSecureConnectListener = typeof listeners.secureConnect === "function"; + const hasCloseListener = typeof listeners.close === "function"; + const onConnect = () => { + if (hasConnectListener) { + listeners.connect(); + } + if (isTLSSocket(socket) && hasSecureConnectListener) { + if (socket.authorized) { + listeners.secureConnect(); + } else if (!socket.authorizationError) { + socket.once("secureConnect", listeners.secureConnect); } - self2.debug("clearStateChar %j %j", stateChar, re); - stateChar = false; } + if (hasCloseListener) { + socket.once("close", listeners.close); + } + }; + if (socket.writable && !socket.connecting) { + onConnect(); + } else if (socket.connecting) { + socket.once("connect", onConnect); + } else if (socket.destroyed && hasCloseListener) { + listeners.close(socket._hadError); } - for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { - this.debug("%s %s %s %j", pattern, i, re, c); - if (escaping && reSpecials[c]) { - re += "\\" + c; - escaping = false; + }; + exports2.default = deferToConnect; + module2.exports = deferToConnect; + module2.exports.default = deferToConnect; + } +}); + +// ../node_modules/.pnpm/@szmarczak+http-timer@4.0.6/node_modules/@szmarczak/http-timer/dist/source/index.js +var require_source4 = __commonJS({ + "../node_modules/.pnpm/@szmarczak+http-timer@4.0.6/node_modules/@szmarczak/http-timer/dist/source/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var defer_to_connect_1 = require_source3(); + var util_1 = require("util"); + var nodejsMajorVersion = Number(process.versions.node.split(".")[0]); + var timer = (request) => { + if (request.timings) { + return request.timings; + } + const timings = { + start: Date.now(), + socket: void 0, + lookup: void 0, + connect: void 0, + secureConnect: void 0, + upload: void 0, + response: void 0, + end: void 0, + error: void 0, + abort: void 0, + phases: { + wait: void 0, + dns: void 0, + tcp: void 0, + tls: void 0, + request: void 0, + firstByte: void 0, + download: void 0, + total: void 0 + } + }; + request.timings = timings; + const handleError = (origin) => { + const emit = origin.emit.bind(origin); + origin.emit = (event, ...args2) => { + if (event === "error") { + timings.error = Date.now(); + timings.phases.total = timings.error - timings.start; + origin.emit = emit; + } + return emit(event, ...args2); + }; + }; + handleError(request); + const onAbort = () => { + timings.abort = Date.now(); + if (!timings.response || nodejsMajorVersion >= 13) { + timings.phases.total = Date.now() - timings.start; + } + }; + request.prependOnceListener("abort", onAbort); + const onSocket = (socket) => { + timings.socket = Date.now(); + timings.phases.wait = timings.socket - timings.start; + if (util_1.types.isProxy(socket)) { + return; + } + const lookupListener = () => { + timings.lookup = Date.now(); + timings.phases.dns = timings.lookup - timings.socket; + }; + socket.prependOnceListener("lookup", lookupListener); + defer_to_connect_1.default(socket, { + connect: () => { + timings.connect = Date.now(); + if (timings.lookup === void 0) { + socket.removeListener("lookup", lookupListener); + timings.lookup = timings.connect; + timings.phases.dns = timings.lookup - timings.socket; + } + timings.phases.tcp = timings.connect - timings.lookup; + }, + secureConnect: () => { + timings.secureConnect = Date.now(); + timings.phases.tls = timings.secureConnect - timings.connect; + } + }); + }; + if (request.socket) { + onSocket(request.socket); + } else { + request.prependOnceListener("socket", onSocket); + } + const onUpload = () => { + var _a; + timings.upload = Date.now(); + timings.phases.request = timings.upload - ((_a = timings.secureConnect) !== null && _a !== void 0 ? _a : timings.connect); + }; + const writableFinished = () => { + if (typeof request.writableFinished === "boolean") { + return request.writableFinished; + } + return request.finished && request.outputSize === 0 && (!request.socket || request.socket.writableLength === 0); + }; + if (writableFinished()) { + onUpload(); + } else { + request.prependOnceListener("finish", onUpload); + } + request.prependOnceListener("response", (response) => { + timings.response = Date.now(); + timings.phases.firstByte = timings.response - timings.upload; + response.timings = timings; + handleError(response); + response.prependOnceListener("end", () => { + timings.end = Date.now(); + timings.phases.download = timings.end - timings.response; + timings.phases.total = timings.end - timings.start; + }); + response.prependOnceListener("aborted", onAbort); + }); + return timings; + }; + exports2.default = timer; + module2.exports = timer; + module2.exports.default = timer; + } +}); + +// ../node_modules/.pnpm/cacheable-lookup@5.0.4/node_modules/cacheable-lookup/source/index.js +var require_source5 = __commonJS({ + "../node_modules/.pnpm/cacheable-lookup@5.0.4/node_modules/cacheable-lookup/source/index.js"(exports2, module2) { + "use strict"; + var { + V4MAPPED, + ADDRCONFIG, + ALL, + promises: { + Resolver: AsyncResolver + }, + lookup: dnsLookup + } = require("dns"); + var { promisify } = require("util"); + var os = require("os"); + var kCacheableLookupCreateConnection = Symbol("cacheableLookupCreateConnection"); + var kCacheableLookupInstance = Symbol("cacheableLookupInstance"); + var kExpires = Symbol("expires"); + var supportsALL = typeof ALL === "number"; + var verifyAgent = (agent) => { + if (!(agent && typeof agent.createConnection === "function")) { + throw new Error("Expected an Agent instance as the first argument"); + } + }; + var map4to6 = (entries) => { + for (const entry of entries) { + if (entry.family === 6) { continue; } - switch (c) { - case "/": - return false; - case "\\": - clearStateChar(); - escaping = true; - continue; - case "?": - case "*": - case "+": - case "@": - case "!": - this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); - if (inClass) { - this.debug(" in class"); - if (c === "!" && i === classStart + 1) - c = "^"; - re += c; - continue; - } - self2.debug("call clearStateChar %j", stateChar); - clearStateChar(); - stateChar = c; - if (options.noext) - clearStateChar(); - continue; - case "(": - if (inClass) { - re += "("; - continue; - } - if (!stateChar) { - re += "\\("; - continue; - } - patternListStack.push({ - type: stateChar, - start: i - 1, - reStart: re.length, - open: plTypes[stateChar].open, - close: plTypes[stateChar].close - }); - re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; - this.debug("plType %j %j", stateChar, re); - stateChar = false; - continue; - case ")": - if (inClass || !patternListStack.length) { - re += "\\)"; - continue; - } - clearStateChar(); - hasMagic = true; - var pl = patternListStack.pop(); - re += pl.close; - if (pl.type === "!") { - negativeLists.push(pl); - } - pl.reEnd = re.length; - continue; - case "|": - if (inClass || !patternListStack.length || escaping) { - re += "\\|"; - escaping = false; - continue; - } - clearStateChar(); - re += "|"; - continue; - case "[": - clearStateChar(); - if (inClass) { - re += "\\" + c; - continue; - } - inClass = true; - classStart = i; - reClassStart = re.length; - re += c; + entry.address = `::ffff:${entry.address}`; + entry.family = 6; + } + }; + var getIfaceInfo = () => { + let has4 = false; + let has6 = false; + for (const device of Object.values(os.networkInterfaces())) { + for (const iface of device) { + if (iface.internal) { continue; - case "]": - if (i === classStart + 1 || !inClass) { - re += "\\" + c; - escaping = false; - continue; + } + if (iface.family === "IPv6") { + has6 = true; + } else { + has4 = true; + } + if (has4 && has6) { + return { has4, has6 }; + } + } + } + return { has4, has6 }; + }; + var isIterable = (map) => { + return Symbol.iterator in map; + }; + var ttl = { ttl: true }; + var all = { all: true }; + var CacheableLookup = class { + constructor({ + cache = /* @__PURE__ */ new Map(), + maxTtl = Infinity, + fallbackDuration = 3600, + errorTtl = 0.15, + resolver = new AsyncResolver(), + lookup = dnsLookup + } = {}) { + this.maxTtl = maxTtl; + this.errorTtl = errorTtl; + this._cache = cache; + this._resolver = resolver; + this._dnsLookup = promisify(lookup); + if (this._resolver instanceof AsyncResolver) { + this._resolve4 = this._resolver.resolve4.bind(this._resolver); + this._resolve6 = this._resolver.resolve6.bind(this._resolver); + } else { + this._resolve4 = promisify(this._resolver.resolve4.bind(this._resolver)); + this._resolve6 = promisify(this._resolver.resolve6.bind(this._resolver)); + } + this._iface = getIfaceInfo(); + this._pending = {}; + this._nextRemovalTime = false; + this._hostnamesToFallback = /* @__PURE__ */ new Set(); + if (fallbackDuration < 1) { + this._fallback = false; + } else { + this._fallback = true; + const interval = setInterval(() => { + this._hostnamesToFallback.clear(); + }, fallbackDuration * 1e3); + if (interval.unref) { + interval.unref(); + } + } + this.lookup = this.lookup.bind(this); + this.lookupAsync = this.lookupAsync.bind(this); + } + set servers(servers) { + this.clear(); + this._resolver.setServers(servers); + } + get servers() { + return this._resolver.getServers(); + } + lookup(hostname, options, callback) { + if (typeof options === "function") { + callback = options; + options = {}; + } else if (typeof options === "number") { + options = { + family: options + }; + } + if (!callback) { + throw new Error("Callback must be a function."); + } + this.lookupAsync(hostname, options).then((result2) => { + if (options.all) { + callback(null, result2); + } else { + callback(null, result2.address, result2.family, result2.expires, result2.ttl); + } + }, callback); + } + async lookupAsync(hostname, options = {}) { + if (typeof options === "number") { + options = { + family: options + }; + } + let cached = await this.query(hostname); + if (options.family === 6) { + const filtered = cached.filter((entry) => entry.family === 6); + if (options.hints & V4MAPPED) { + if (supportsALL && options.hints & ALL || filtered.length === 0) { + map4to6(cached); + } else { + cached = filtered; } - if (inClass) { - var cs = pattern.substring(classStart + 1, i); - try { - RegExp("[" + cs + "]"); - } catch (er) { - var sp = this.parse(cs, SUBPARSE); - re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; - hasMagic = hasMagic || sp[1]; - inClass = false; - continue; - } + } else { + cached = filtered; + } + } else if (options.family === 4) { + cached = cached.filter((entry) => entry.family === 4); + } + if (options.hints & ADDRCONFIG) { + const { _iface } = this; + cached = cached.filter((entry) => entry.family === 6 ? _iface.has6 : _iface.has4); + } + if (cached.length === 0) { + const error = new Error(`cacheableLookup ENOTFOUND ${hostname}`); + error.code = "ENOTFOUND"; + error.hostname = hostname; + throw error; + } + if (options.all) { + return cached; + } + return cached[0]; + } + async query(hostname) { + let cached = await this._cache.get(hostname); + if (!cached) { + const pending = this._pending[hostname]; + if (pending) { + cached = await pending; + } else { + const newPromise = this.queryAndCache(hostname); + this._pending[hostname] = newPromise; + try { + cached = await newPromise; + } finally { + delete this._pending[hostname]; } - hasMagic = true; - inClass = false; - re += c; - continue; - default: - clearStateChar(); - if (escaping) { - escaping = false; - } else if (reSpecials[c] && !(c === "^" && inClass)) { - re += "\\"; + } + } + cached = cached.map((entry) => { + return { ...entry }; + }); + return cached; + } + async _resolve(hostname) { + const wrap = async (promise) => { + try { + return await promise; + } catch (error) { + if (error.code === "ENODATA" || error.code === "ENOTFOUND") { + return []; } - re += c; + throw error; + } + }; + const [A, AAAA] = await Promise.all([ + this._resolve4(hostname, ttl), + this._resolve6(hostname, ttl) + ].map((promise) => wrap(promise))); + let aTtl = 0; + let aaaaTtl = 0; + let cacheTtl = 0; + const now = Date.now(); + for (const entry of A) { + entry.family = 4; + entry.expires = now + entry.ttl * 1e3; + aTtl = Math.max(aTtl, entry.ttl); + } + for (const entry of AAAA) { + entry.family = 6; + entry.expires = now + entry.ttl * 1e3; + aaaaTtl = Math.max(aaaaTtl, entry.ttl); + } + if (A.length > 0) { + if (AAAA.length > 0) { + cacheTtl = Math.min(aTtl, aaaaTtl); + } else { + cacheTtl = aTtl; + } + } else { + cacheTtl = aaaaTtl; } + return { + entries: [ + ...A, + ...AAAA + ], + cacheTtl + }; } - if (inClass) { - cs = pattern.substr(classStart + 1); - sp = this.parse(cs, SUBPARSE); - re = re.substr(0, reClassStart) + "\\[" + sp[0]; - hasMagic = hasMagic || sp[1]; + async _lookup(hostname) { + try { + const entries = await this._dnsLookup(hostname, { + all: true + }); + return { + entries, + cacheTtl: 0 + }; + } catch (_) { + return { + entries: [], + cacheTtl: 0 + }; + } } - for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { - var tail = re.slice(pl.reStart + pl.open.length); - this.debug("setting tail", re, pl); - tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) { - if (!$2) { - $2 = "\\"; + async _set(hostname, data, cacheTtl) { + if (this.maxTtl > 0 && cacheTtl > 0) { + cacheTtl = Math.min(cacheTtl, this.maxTtl) * 1e3; + data[kExpires] = Date.now() + cacheTtl; + try { + await this._cache.set(hostname, data, cacheTtl); + } catch (error) { + this.lookupAsync = async () => { + const cacheError = new Error("Cache Error. Please recreate the CacheableLookup instance."); + cacheError.cause = error; + throw cacheError; + }; } - return $1 + $1 + $2 + "|"; - }); - this.debug("tail=%j\n %s", tail, tail, pl, re); - var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; - hasMagic = true; - re = re.slice(0, pl.reStart) + t + "\\(" + tail; + if (isIterable(this._cache)) { + this._tick(cacheTtl); + } + } + } + async queryAndCache(hostname) { + if (this._hostnamesToFallback.has(hostname)) { + return this._dnsLookup(hostname, all); + } + let query = await this._resolve(hostname); + if (query.entries.length === 0 && this._fallback) { + query = await this._lookup(hostname); + if (query.entries.length !== 0) { + this._hostnamesToFallback.add(hostname); + } + } + const cacheTtl = query.entries.length === 0 ? this.errorTtl : query.cacheTtl; + await this._set(hostname, query.entries, cacheTtl); + return query.entries; + } + _tick(ms) { + const nextRemovalTime = this._nextRemovalTime; + if (!nextRemovalTime || ms < nextRemovalTime) { + clearTimeout(this._removalTimeout); + this._nextRemovalTime = ms; + this._removalTimeout = setTimeout(() => { + this._nextRemovalTime = false; + let nextExpiry = Infinity; + const now = Date.now(); + for (const [hostname, entries] of this._cache) { + const expires = entries[kExpires]; + if (now >= expires) { + this._cache.delete(hostname); + } else if (expires < nextExpiry) { + nextExpiry = expires; + } + } + if (nextExpiry !== Infinity) { + this._tick(nextExpiry - now); + } + }, ms); + if (this._removalTimeout.unref) { + this._removalTimeout.unref(); + } + } } - clearStateChar(); - if (escaping) { - re += "\\\\"; + install(agent) { + verifyAgent(agent); + if (kCacheableLookupCreateConnection in agent) { + throw new Error("CacheableLookup has been already installed"); + } + agent[kCacheableLookupCreateConnection] = agent.createConnection; + agent[kCacheableLookupInstance] = this; + agent.createConnection = (options, callback) => { + if (!("lookup" in options)) { + options.lookup = this.lookup; + } + return agent[kCacheableLookupCreateConnection](options, callback); + }; } - var addPatternStart = false; - switch (re.charAt(0)) { - case ".": - case "[": - case "(": - addPatternStart = true; + uninstall(agent) { + verifyAgent(agent); + if (agent[kCacheableLookupCreateConnection]) { + if (agent[kCacheableLookupInstance] !== this) { + throw new Error("The agent is not owned by this CacheableLookup instance"); + } + agent.createConnection = agent[kCacheableLookupCreateConnection]; + delete agent[kCacheableLookupCreateConnection]; + delete agent[kCacheableLookupInstance]; + } } - for (var n = negativeLists.length - 1; n > -1; n--) { - var nl = negativeLists[n]; - var nlBefore = re.slice(0, nl.reStart); - var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); - var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); - var nlAfter = re.slice(nl.reEnd); - nlLast += nlAfter; - var openParensBefore = nlBefore.split("(").length - 1; - var cleanAfter = nlAfter; - for (i = 0; i < openParensBefore; i++) { - cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + updateInterfaceInfo() { + const { _iface } = this; + this._iface = getIfaceInfo(); + if (_iface.has4 && !this._iface.has4 || _iface.has6 && !this._iface.has6) { + this._cache.clear(); } - nlAfter = cleanAfter; - var dollar = ""; - if (nlAfter === "" && isSub !== SUBPARSE) { - dollar = "$"; + } + clear(hostname) { + if (hostname) { + this._cache.delete(hostname); + return; } - var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; - re = newRe; + this._cache.clear(); } - if (re !== "" && hasMagic) { - re = "(?=.)" + re; + }; + module2.exports = CacheableLookup; + module2.exports.default = CacheableLookup; + } +}); + +// ../node_modules/.pnpm/normalize-url@6.1.0/node_modules/normalize-url/index.js +var require_normalize_url = __commonJS({ + "../node_modules/.pnpm/normalize-url@6.1.0/node_modules/normalize-url/index.js"(exports2, module2) { + "use strict"; + var DATA_URL_DEFAULT_MIME_TYPE = "text/plain"; + var DATA_URL_DEFAULT_CHARSET = "us-ascii"; + var testParameter = (name, filters) => { + return filters.some((filter) => filter instanceof RegExp ? filter.test(name) : filter === name); + }; + var normalizeDataURL = (urlString, { stripHash }) => { + const match = /^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(urlString); + if (!match) { + throw new Error(`Invalid URL: ${urlString}`); + } + let { type, data, hash } = match.groups; + const mediaType = type.split(";"); + hash = stripHash ? "" : hash; + let isBase64 = false; + if (mediaType[mediaType.length - 1] === "base64") { + mediaType.pop(); + isBase64 = true; + } + const mimeType = (mediaType.shift() || "").toLowerCase(); + const attributes = mediaType.map((attribute) => { + let [key, value = ""] = attribute.split("=").map((string) => string.trim()); + if (key === "charset") { + value = value.toLowerCase(); + if (value === DATA_URL_DEFAULT_CHARSET) { + return ""; + } + } + return `${key}${value ? `=${value}` : ""}`; + }).filter(Boolean); + const normalizedMediaType = [ + ...attributes + ]; + if (isBase64) { + normalizedMediaType.push("base64"); } - if (addPatternStart) { - re = patternStart + re; + if (normalizedMediaType.length !== 0 || mimeType && mimeType !== DATA_URL_DEFAULT_MIME_TYPE) { + normalizedMediaType.unshift(mimeType); } - if (isSub === SUBPARSE) { - return [re, hasMagic]; + return `data:${normalizedMediaType.join(";")},${isBase64 ? data.trim() : data}${hash ? `#${hash}` : ""}`; + }; + var normalizeUrl = (urlString, options) => { + options = { + defaultProtocol: "http:", + normalizeProtocol: true, + forceHttp: false, + forceHttps: false, + stripAuthentication: true, + stripHash: false, + stripTextFragment: true, + stripWWW: true, + removeQueryParameters: [/^utm_\w+/i], + removeTrailingSlash: true, + removeSingleSlash: true, + removeDirectoryIndex: false, + sortQueryParameters: true, + ...options + }; + urlString = urlString.trim(); + if (/^data:/i.test(urlString)) { + return normalizeDataURL(urlString, options); } - if (!hasMagic) { - return globUnescape(pattern); + if (/^view-source:/i.test(urlString)) { + throw new Error("`view-source:` is not supported as it is a non-standard protocol"); } - var flags = options.nocase ? "i" : ""; - try { - var regExp = new RegExp("^" + re + "$", flags); - } catch (er) { - return new RegExp("$."); + const hasRelativeProtocol = urlString.startsWith("//"); + const isRelativeUrl = !hasRelativeProtocol && /^\.*\//.test(urlString); + if (!isRelativeUrl) { + urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol); } - regExp._glob = pattern; - regExp._src = re; - return regExp; - } - minimatch.makeRe = function(pattern, options) { - return new Minimatch(pattern, options || {}).makeRe(); - }; - Minimatch.prototype.makeRe = makeRe; - function makeRe() { - if (this.regexp || this.regexp === false) - return this.regexp; - var set = this.set; - if (!set.length) { - this.regexp = false; - return this.regexp; + const urlObj = new URL(urlString); + if (options.forceHttp && options.forceHttps) { + throw new Error("The `forceHttp` and `forceHttps` options cannot be used together"); } - var options = this.options; - var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; - var flags = options.nocase ? "i" : ""; - var re = set.map(function(pattern) { - return pattern.map(function(p) { - return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; - }).join("\\/"); - }).join("|"); - re = "^(?:" + re + ")$"; - if (this.negate) - re = "^(?!" + re + ").*$"; - try { - this.regexp = new RegExp(re, flags); - } catch (ex) { - this.regexp = false; + if (options.forceHttp && urlObj.protocol === "https:") { + urlObj.protocol = "http:"; } - return this.regexp; - } - minimatch.match = function(list, pattern, options) { - options = options || {}; - var mm = new Minimatch(pattern, options); - list = list.filter(function(f) { - return mm.match(f); - }); - if (mm.options.nonull && !list.length) { - list.push(pattern); + if (options.forceHttps && urlObj.protocol === "http:") { + urlObj.protocol = "https:"; } - return list; - }; - Minimatch.prototype.match = match; - function match(f, partial) { - this.debug("match", f, this.pattern); - if (this.comment) - return false; - if (this.empty) - return f === ""; - if (f === "/" && partial) - return true; - var options = this.options; - if (path.sep !== "/") { - f = f.split(path.sep).join("/"); + if (options.stripAuthentication) { + urlObj.username = ""; + urlObj.password = ""; } - f = f.split(slashSplit); - this.debug(this.pattern, "split", f); - var set = this.set; - this.debug(this.pattern, "set", set); - var filename; - var i; - for (i = f.length - 1; i >= 0; i--) { - filename = f[i]; - if (filename) - break; + if (options.stripHash) { + urlObj.hash = ""; + } else if (options.stripTextFragment) { + urlObj.hash = urlObj.hash.replace(/#?:~:text.*?$/i, ""); } - for (i = 0; i < set.length; i++) { - var pattern = set[i]; - var file = f; - if (options.matchBase && pattern.length === 1) { - file = [filename]; + if (urlObj.pathname) { + urlObj.pathname = urlObj.pathname.replace(/(? 0) { + let pathComponents = urlObj.pathname.split("/"); + const lastComponent = pathComponents[pathComponents.length - 1]; + if (testParameter(lastComponent, options.removeDirectoryIndex)) { + pathComponents = pathComponents.slice(0, pathComponents.length - 1); + urlObj.pathname = pathComponents.slice(1).join("/") + "/"; } } - if (options.flipNegate) - return false; - return this.negate; - } - Minimatch.prototype.matchOne = function(file, pattern, partial) { - var options = this.options; - this.debug("matchOne", { "this": this, file, pattern }); - this.debug("matchOne", file.length, pattern.length); - for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { - this.debug("matchOne loop"); - var p = pattern[pi]; - var f = file[fi]; - this.debug(pattern, p, f); - if (p === false) - return false; - if (p === GLOBSTAR) { - this.debug("GLOBSTAR", [pattern, p, f]); - var fr = fi; - var pr = pi + 1; - if (pr === pl) { - this.debug("** at the end"); - for (; fi < fl; fi++) { - if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") - return false; - } - return true; - } - while (fr < fl) { - var swallowee = file[fr]; - this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); - if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { - this.debug("globstar found match!", fr, fl, swallowee); - return true; - } else { - if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { - this.debug("dot detected!", file, fr, pattern, pr); - break; - } - this.debug("globstar swallow a segment, and continue"); - fr++; - } - } - if (partial) { - this.debug("\n>>> no match, partial?", file, fr, pattern, pr); - if (fr === fl) - return true; - } - return false; + if (urlObj.hostname) { + urlObj.hostname = urlObj.hostname.replace(/\.$/, ""); + if (options.stripWWW && /^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(urlObj.hostname)) { + urlObj.hostname = urlObj.hostname.replace(/^www\./, ""); } - var hit; - if (typeof p === "string") { - if (options.nocase) { - hit = f.toLowerCase() === p.toLowerCase(); - } else { - hit = f === p; + } + if (Array.isArray(options.removeQueryParameters)) { + for (const key of [...urlObj.searchParams.keys()]) { + if (testParameter(key, options.removeQueryParameters)) { + urlObj.searchParams.delete(key); } - this.debug("string match", p, f, hit); - } else { - hit = f.match(p); - this.debug("pattern match", p, f, hit); } - if (!hit) - return false; } - if (fi === fl && pi === pl) { - return true; - } else if (fi === fl) { - return partial; - } else if (pi === pl) { - var emptyFileEnd = fi === fl - 1 && file[fi] === ""; - return emptyFileEnd; + if (options.removeQueryParameters === true) { + urlObj.search = ""; } - throw new Error("wtf?"); + if (options.sortQueryParameters) { + urlObj.searchParams.sort(); + } + if (options.removeTrailingSlash) { + urlObj.pathname = urlObj.pathname.replace(/\/$/, ""); + } + const oldUrlString = urlString; + urlString = urlObj.toString(); + if (!options.removeSingleSlash && urlObj.pathname === "/" && !oldUrlString.endsWith("/") && urlObj.hash === "") { + urlString = urlString.replace(/\/$/, ""); + } + if ((options.removeTrailingSlash || urlObj.pathname === "/") && urlObj.hash === "" && options.removeSingleSlash) { + urlString = urlString.replace(/\/$/, ""); + } + if (hasRelativeProtocol && !options.normalizeProtocol) { + urlString = urlString.replace(/^http:\/\//, "//"); + } + if (options.stripProtocol) { + urlString = urlString.replace(/^(?:https?:)?\/\//, ""); + } + return urlString; }; - function globUnescape(s) { - return s.replace(/\\(.)/g, "$1"); - } - function regExpEscape(s) { - return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); - } + module2.exports = normalizeUrl; } }); -// ../../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js -var require_path_is_absolute = __commonJS({ - "../../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js"(exports2, module2) { - "use strict"; - function posix(path) { - return path.charAt(0) === "/"; - } - function win32(path) { - var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; - var result = splitDeviceRe.exec(path); - var device = result[1] || ""; - var isUnc = Boolean(device && device.charAt(1) !== ":"); - return Boolean(result[2] || isUnc); - } - module2.exports = process.platform === "win32" ? win32 : posix; - module2.exports.posix = posix; - module2.exports.win32 = win32; +// ../node_modules/.pnpm/pump@3.0.0/node_modules/pump/index.js +var require_pump2 = __commonJS({ + "../node_modules/.pnpm/pump@3.0.0/node_modules/pump/index.js"(exports2, module2) { + var once = require_once(); + var eos = require_end_of_stream2(); + var fs2 = require("fs"); + var noop = function() { + }; + var ancient = /^v?\.0/.test(process.version); + var isFn = function(fn2) { + return typeof fn2 === "function"; + }; + var isFS = function(stream) { + if (!ancient) + return false; + if (!fs2) + return false; + return (stream instanceof (fs2.ReadStream || noop) || stream instanceof (fs2.WriteStream || noop)) && isFn(stream.close); + }; + var isRequest = function(stream) { + return stream.setHeader && isFn(stream.abort); + }; + var destroyer = function(stream, reading, writing, callback) { + callback = once(callback); + var closed = false; + stream.on("close", function() { + closed = true; + }); + eos(stream, { readable: reading, writable: writing }, function(err) { + if (err) + return callback(err); + closed = true; + callback(); + }); + var destroyed = false; + return function(err) { + if (closed) + return; + if (destroyed) + return; + destroyed = true; + if (isFS(stream)) + return stream.close(noop); + if (isRequest(stream)) + return stream.abort(); + if (isFn(stream.destroy)) + return stream.destroy(); + callback(err || new Error("stream was destroyed")); + }; + }; + var call = function(fn2) { + fn2(); + }; + var pipe = function(from, to) { + return from.pipe(to); + }; + var pump = function() { + var streams = Array.prototype.slice.call(arguments); + var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop; + if (Array.isArray(streams[0])) + streams = streams[0]; + if (streams.length < 2) + throw new Error("pump requires two streams per minimum"); + var error; + var destroys = streams.map(function(stream, i) { + var reading = i < streams.length - 1; + var writing = i > 0; + return destroyer(stream, reading, writing, function(err) { + if (!error) + error = err; + if (err) + destroys.forEach(call); + if (reading) + return; + destroys.forEach(call); + callback(error); + }); + }); + return streams.reduce(pipe); + }; + module2.exports = pump; } }); -// ../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/common.js -var require_common7 = __commonJS({ - "../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/common.js"(exports2) { - exports2.setopts = setopts; - exports2.ownProp = ownProp; - exports2.makeAbs = makeAbs; - exports2.finish = finish; - exports2.mark = mark; - exports2.isIgnored = isIgnored; - exports2.childrenIgnored = childrenIgnored; - function ownProp(obj, field) { - return Object.prototype.hasOwnProperty.call(obj, field); - } - var fs = require("fs"); - var path = require("path"); - var minimatch = require_minimatch(); - var isAbsolute = require_path_is_absolute(); - var Minimatch = minimatch.Minimatch; - function alphasort(a, b) { - return a.localeCompare(b, "en"); - } - function setupIgnores(self2, options) { - self2.ignore = options.ignore || []; - if (!Array.isArray(self2.ignore)) - self2.ignore = [self2.ignore]; - if (self2.ignore.length) { - self2.ignore = self2.ignore.map(ignoreMap); - } - } - function ignoreMap(pattern) { - var gmatcher = null; - if (pattern.slice(-3) === "/**") { - var gpattern = pattern.replace(/(\/\*\*)+$/, ""); - gmatcher = new Minimatch(gpattern, { dot: true }); +// ../node_modules/.pnpm/get-stream@5.2.0/node_modules/get-stream/buffer-stream.js +var require_buffer_stream2 = __commonJS({ + "../node_modules/.pnpm/get-stream@5.2.0/node_modules/get-stream/buffer-stream.js"(exports2, module2) { + "use strict"; + var { PassThrough: PassThroughStream } = require("stream"); + module2.exports = (options) => { + options = { ...options }; + const { array } = options; + let { encoding } = options; + const isBuffer = encoding === "buffer"; + let objectMode = false; + if (array) { + objectMode = !(encoding || isBuffer); + } else { + encoding = encoding || "utf8"; } - return { - matcher: new Minimatch(pattern, { dot: true }), - gmatcher - }; - } - function setopts(self2, pattern, options) { - if (!options) - options = {}; - if (options.matchBase && pattern.indexOf("/") === -1) { - if (options.noglobstar) { - throw new Error("base matching requires globstar"); - } - pattern = "**/" + pattern; + if (isBuffer) { + encoding = null; } - self2.silent = !!options.silent; - self2.pattern = pattern; - self2.strict = options.strict !== false; - self2.realpath = !!options.realpath; - self2.realpathCache = options.realpathCache || Object.create(null); - self2.follow = !!options.follow; - self2.dot = !!options.dot; - self2.mark = !!options.mark; - self2.nodir = !!options.nodir; - if (self2.nodir) - self2.mark = true; - self2.sync = !!options.sync; - self2.nounique = !!options.nounique; - self2.nonull = !!options.nonull; - self2.nosort = !!options.nosort; - self2.nocase = !!options.nocase; - self2.stat = !!options.stat; - self2.noprocess = !!options.noprocess; - self2.absolute = !!options.absolute; - self2.fs = options.fs || fs; - self2.maxLength = options.maxLength || Infinity; - self2.cache = options.cache || Object.create(null); - self2.statCache = options.statCache || Object.create(null); - self2.symlinks = options.symlinks || Object.create(null); - setupIgnores(self2, options); - self2.changedCwd = false; - var cwd = process.cwd(); - if (!ownProp(options, "cwd")) - self2.cwd = cwd; - else { - self2.cwd = path.resolve(options.cwd); - self2.changedCwd = self2.cwd !== cwd; + const stream = new PassThroughStream({ objectMode }); + if (encoding) { + stream.setEncoding(encoding); } - self2.root = options.root || path.resolve(self2.cwd, "/"); - self2.root = path.resolve(self2.root); - if (process.platform === "win32") - self2.root = self2.root.replace(/\\/g, "/"); - self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); - if (process.platform === "win32") - self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); - self2.nomount = !!options.nomount; - options.nonegate = true; - options.nocomment = true; - self2.minimatch = new Minimatch(pattern, options); - self2.options = self2.minimatch.options; - } - function finish(self2) { - var nou = self2.nounique; - var all = nou ? [] : Object.create(null); - for (var i = 0, l = self2.matches.length; i < l; i++) { - var matches = self2.matches[i]; - if (!matches || Object.keys(matches).length === 0) { - if (self2.nonull) { - var literal = self2.minimatch.globSet[i]; - if (nou) - all.push(literal); - else - all[literal] = true; - } + let length = 0; + const chunks = []; + stream.on("data", (chunk) => { + chunks.push(chunk); + if (objectMode) { + length = chunks.length; } else { - var m = Object.keys(matches); - if (nou) - all.push.apply(all, m); - else - m.forEach(function(m2) { - all[m2] = true; - }); - } - } - if (!nou) - all = Object.keys(all); - if (!self2.nosort) - all = all.sort(alphasort); - if (self2.mark) { - for (var i = 0; i < all.length; i++) { - all[i] = self2._mark(all[i]); - } - if (self2.nodir) { - all = all.filter(function(e) { - var notDir = !/\/$/.test(e); - var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; - if (notDir && c) - notDir = c !== "DIR" && !Array.isArray(c); - return notDir; - }); + length += chunk.length; } - } - if (self2.ignore.length) - all = all.filter(function(m2) { - return !isIgnored(self2, m2); - }); - self2.found = all; - } - function mark(self2, p) { - var abs = makeAbs(self2, p); - var c = self2.cache[abs]; - var m = p; - if (c) { - var isDir = c === "DIR" || Array.isArray(c); - var slash = p.slice(-1) === "/"; - if (isDir && !slash) - m += "/"; - else if (!isDir && slash) - m = m.slice(0, -1); - if (m !== p) { - var mabs = makeAbs(self2, m); - self2.statCache[mabs] = self2.statCache[abs]; - self2.cache[mabs] = self2.cache[abs]; + }); + stream.getBufferedValue = () => { + if (array) { + return chunks; } + return isBuffer ? Buffer.concat(chunks, length) : chunks.join(""); + }; + stream.getBufferedLength = () => length; + return stream; + }; + } +}); + +// ../node_modules/.pnpm/get-stream@5.2.0/node_modules/get-stream/index.js +var require_get_stream2 = __commonJS({ + "../node_modules/.pnpm/get-stream@5.2.0/node_modules/get-stream/index.js"(exports2, module2) { + "use strict"; + var { constants: BufferConstants } = require("buffer"); + var pump = require_pump2(); + var bufferStream2 = require_buffer_stream2(); + var MaxBufferError = class extends Error { + constructor() { + super("maxBuffer exceeded"); + this.name = "MaxBufferError"; } - return m; - } - function makeAbs(self2, f) { - var abs = f; - if (f.charAt(0) === "/") { - abs = path.join(self2.root, f); - } else if (isAbsolute(f) || f === "") { - abs = f; - } else if (self2.changedCwd) { - abs = path.resolve(self2.cwd, f); - } else { - abs = path.resolve(f); + }; + async function getStream(inputStream, options) { + if (!inputStream) { + return Promise.reject(new Error("Expected a stream")); } - if (process.platform === "win32") - abs = abs.replace(/\\/g, "/"); - return abs; - } - function isIgnored(self2, path2) { - if (!self2.ignore.length) - return false; - return self2.ignore.some(function(item) { - return item.matcher.match(path2) || !!(item.gmatcher && item.gmatcher.match(path2)); - }); - } - function childrenIgnored(self2, path2) { - if (!self2.ignore.length) - return false; - return self2.ignore.some(function(item) { - return !!(item.gmatcher && item.gmatcher.match(path2)); + options = { + maxBuffer: Infinity, + ...options + }; + const { maxBuffer } = options; + let stream; + await new Promise((resolve, reject) => { + const rejectPromise = (error) => { + if (error && stream.getBufferedLength() <= BufferConstants.MAX_LENGTH) { + error.bufferedData = stream.getBufferedValue(); + } + reject(error); + }; + stream = pump(inputStream, bufferStream2(options), (error) => { + if (error) { + rejectPromise(error); + return; + } + resolve(); + }); + stream.on("data", () => { + if (stream.getBufferedLength() > maxBuffer) { + rejectPromise(new MaxBufferError()); + } + }); }); + return stream.getBufferedValue(); } + module2.exports = getStream; + module2.exports.default = getStream; + module2.exports.buffer = (stream, options) => getStream(stream, { ...options, encoding: "buffer" }); + module2.exports.array = (stream, options) => getStream(stream, { ...options, array: true }); + module2.exports.MaxBufferError = MaxBufferError; } }); -// ../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/sync.js -var require_sync7 = __commonJS({ - "../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/sync.js"(exports2, module2) { - module2.exports = globSync; - globSync.GlobSync = GlobSync; - var rp = require_fs5(); - var minimatch = require_minimatch(); - var Minimatch = minimatch.Minimatch; - var Glob = require_glob().Glob; - var util = require("util"); - var path = require("path"); - var assert = require("assert"); - var isAbsolute = require_path_is_absolute(); - var common = require_common7(); - var setopts = common.setopts; - var ownProp = common.ownProp; - var childrenIgnored = common.childrenIgnored; - var isIgnored = common.isIgnored; - function globSync(pattern, options) { - if (typeof options === "function" || arguments.length === 3) - throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); - return new GlobSync(pattern, options).found; +// ../node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js +var require_http_cache_semantics = __commonJS({ + "../node_modules/.pnpm/http-cache-semantics@4.1.1/node_modules/http-cache-semantics/index.js"(exports2, module2) { + "use strict"; + var statusCodeCacheableByDefault = /* @__PURE__ */ new Set([ + 200, + 203, + 204, + 206, + 300, + 301, + 308, + 404, + 405, + 410, + 414, + 501 + ]); + var understoodStatuses = /* @__PURE__ */ new Set([ + 200, + 203, + 204, + 300, + 301, + 302, + 303, + 307, + 308, + 404, + 405, + 410, + 414, + 501 + ]); + var errorStatusCodes = /* @__PURE__ */ new Set([ + 500, + 502, + 503, + 504 + ]); + var hopByHopHeaders = { + date: true, + // included, because we add Age update Date + connection: true, + "keep-alive": true, + "proxy-authenticate": true, + "proxy-authorization": true, + te: true, + trailer: true, + "transfer-encoding": true, + upgrade: true + }; + var excludedFromRevalidationUpdate = { + // Since the old body is reused, it doesn't make sense to change properties of the body + "content-length": true, + "content-encoding": true, + "transfer-encoding": true, + "content-range": true + }; + function toNumberOrZero(s) { + const n = parseInt(s, 10); + return isFinite(n) ? n : 0; + } + function isErrorResponse(response) { + if (!response) { + return true; + } + return errorStatusCodes.has(response.status); } - function GlobSync(pattern, options) { - if (!pattern) - throw new Error("must provide pattern"); - if (typeof options === "function" || arguments.length === 3) - throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); - if (!(this instanceof GlobSync)) - return new GlobSync(pattern, options); - setopts(this, pattern, options); - if (this.noprocess) - return this; - var n = this.minimatch.set.length; - this.matches = new Array(n); - for (var i = 0; i < n; i++) { - this._process(this.minimatch.set[i], i, false); + function parseCacheControl(header) { + const cc = {}; + if (!header) + return cc; + const parts = header.trim().split(/,/); + for (const part of parts) { + const [k, v] = part.split(/=/, 2); + cc[k.trim()] = v === void 0 ? true : v.trim().replace(/^"|"$/g, ""); } - this._finish(); + return cc; } - GlobSync.prototype._finish = function() { - assert(this instanceof GlobSync); - if (this.realpath) { - var self2 = this; - this.matches.forEach(function(matchset, index) { - var set = self2.matches[index] = Object.create(null); - for (var p in matchset) { - try { - p = self2._makeAbs(p); - var real = rp.realpathSync(p, self2.realpathCache); - set[real] = true; - } catch (er) { - if (er.syscall === "stat") - set[self2._makeAbs(p)] = true; - else - throw er; - } - } - }); + function formatCacheControl(cc) { + let parts = []; + for (const k in cc) { + const v = cc[k]; + parts.push(v === true ? k : k + "=" + v); } - common.finish(this); - }; - GlobSync.prototype._process = function(pattern, index, inGlobStar) { - assert(this instanceof GlobSync); - var n = 0; - while (typeof pattern[n] === "string") { - n++; + if (!parts.length) { + return void 0; } - var prefix; - switch (n) { - case pattern.length: - this._processSimple(pattern.join("/"), index); + return parts.join(", "); + } + module2.exports = class CachePolicy { + constructor(req, res, { + shared, + cacheHeuristic, + immutableMinTimeToLive, + ignoreCargoCult, + _fromObject + } = {}) { + if (_fromObject) { + this._fromObject(_fromObject); return; - case 0: - prefix = null; - break; - default: - prefix = pattern.slice(0, n).join("/"); - break; + } + if (!res || !res.headers) { + throw Error("Response headers missing"); + } + this._assertRequestHasHeaders(req); + this._responseTime = this.now(); + this._isShared = shared !== false; + this._cacheHeuristic = void 0 !== cacheHeuristic ? cacheHeuristic : 0.1; + this._immutableMinTtl = void 0 !== immutableMinTimeToLive ? immutableMinTimeToLive : 24 * 3600 * 1e3; + this._status = "status" in res ? res.status : 200; + this._resHeaders = res.headers; + this._rescc = parseCacheControl(res.headers["cache-control"]); + this._method = "method" in req ? req.method : "GET"; + this._url = req.url; + this._host = req.headers.host; + this._noAuthorization = !req.headers.authorization; + this._reqHeaders = res.headers.vary ? req.headers : null; + this._reqcc = parseCacheControl(req.headers["cache-control"]); + if (ignoreCargoCult && "pre-check" in this._rescc && "post-check" in this._rescc) { + delete this._rescc["pre-check"]; + delete this._rescc["post-check"]; + delete this._rescc["no-cache"]; + delete this._rescc["no-store"]; + delete this._rescc["must-revalidate"]; + this._resHeaders = Object.assign({}, this._resHeaders, { + "cache-control": formatCacheControl(this._rescc) + }); + delete this._resHeaders.expires; + delete this._resHeaders.pragma; + } + if (res.headers["cache-control"] == null && /no-cache/.test(res.headers.pragma)) { + this._rescc["no-cache"] = true; + } + } + now() { + return Date.now(); + } + storable() { + return !!(!this._reqcc["no-store"] && // A cache MUST NOT store a response to any request, unless: + // The request method is understood by the cache and defined as being cacheable, and + ("GET" === this._method || "HEAD" === this._method || "POST" === this._method && this._hasExplicitExpiration()) && // the response status code is understood by the cache, and + understoodStatuses.has(this._status) && // the "no-store" cache directive does not appear in request or response header fields, and + !this._rescc["no-store"] && // the "private" response directive does not appear in the response, if the cache is shared, and + (!this._isShared || !this._rescc.private) && // the Authorization header field does not appear in the request, if the cache is shared, + (!this._isShared || this._noAuthorization || this._allowsStoringAuthenticated()) && // the response either: + // contains an Expires header field, or + (this._resHeaders.expires || // contains a max-age response directive, or + // contains a s-maxage response directive and the cache is shared, or + // contains a public response directive. + this._rescc["max-age"] || this._isShared && this._rescc["s-maxage"] || this._rescc.public || // has a status code that is defined as cacheable by default + statusCodeCacheableByDefault.has(this._status))); + } + _hasExplicitExpiration() { + return this._isShared && this._rescc["s-maxage"] || this._rescc["max-age"] || this._resHeaders.expires; + } + _assertRequestHasHeaders(req) { + if (!req || !req.headers) { + throw Error("Request headers missing"); + } + } + satisfiesWithoutRevalidation(req) { + this._assertRequestHasHeaders(req); + const requestCC = parseCacheControl(req.headers["cache-control"]); + if (requestCC["no-cache"] || /no-cache/.test(req.headers.pragma)) { + return false; + } + if (requestCC["max-age"] && this.age() > requestCC["max-age"]) { + return false; + } + if (requestCC["min-fresh"] && this.timeToLive() < 1e3 * requestCC["min-fresh"]) { + return false; + } + if (this.stale()) { + const allowsStale = requestCC["max-stale"] && !this._rescc["must-revalidate"] && (true === requestCC["max-stale"] || requestCC["max-stale"] > this.age() - this.maxAge()); + if (!allowsStale) { + return false; + } + } + return this._requestMatches(req, false); } - var remain = pattern.slice(n); - var read; - if (prefix === null) - read = "."; - else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { - if (!prefix || !isAbsolute(prefix)) - prefix = "/" + prefix; - read = prefix; - } else - read = prefix; - var abs = this._makeAbs(read); - if (childrenIgnored(this, read)) - return; - var isGlobStar = remain[0] === minimatch.GLOBSTAR; - if (isGlobStar) - this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); - else - this._processReaddir(prefix, read, abs, remain, index, inGlobStar); - }; - GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { - var entries = this._readdir(abs, inGlobStar); - if (!entries) - return; - var pn = remain[0]; - var negate = !!this.minimatch.negate; - var rawGlob = pn._glob; - var dotOk = this.dot || rawGlob.charAt(0) === "."; - var matchedEntries = []; - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (e.charAt(0) !== "." || dotOk) { - var m; - if (negate && !prefix) { - m = !e.match(pn); + _requestMatches(req, allowHeadMethod) { + return (!this._url || this._url === req.url) && this._host === req.headers.host && // the request method associated with the stored response allows it to be used for the presented request, and + (!req.method || this._method === req.method || allowHeadMethod && "HEAD" === req.method) && // selecting header fields nominated by the stored response (if any) match those presented, and + this._varyMatches(req); + } + _allowsStoringAuthenticated() { + return this._rescc["must-revalidate"] || this._rescc.public || this._rescc["s-maxage"]; + } + _varyMatches(req) { + if (!this._resHeaders.vary) { + return true; + } + if (this._resHeaders.vary === "*") { + return false; + } + const fields = this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/); + for (const name of fields) { + if (req.headers[name] !== this._reqHeaders[name]) + return false; + } + return true; + } + _copyWithoutHopByHopHeaders(inHeaders) { + const headers = {}; + for (const name in inHeaders) { + if (hopByHopHeaders[name]) + continue; + headers[name] = inHeaders[name]; + } + if (inHeaders.connection) { + const tokens = inHeaders.connection.trim().split(/\s*,\s*/); + for (const name of tokens) { + delete headers[name]; + } + } + if (headers.warning) { + const warnings = headers.warning.split(/,/).filter((warning) => { + return !/^\s*1[0-9][0-9]/.test(warning); + }); + if (!warnings.length) { + delete headers.warning; } else { - m = e.match(pn); + headers.warning = warnings.join(",").trim(); + } + } + return headers; + } + responseHeaders() { + const headers = this._copyWithoutHopByHopHeaders(this._resHeaders); + const age = this.age(); + if (age > 3600 * 24 && !this._hasExplicitExpiration() && this.maxAge() > 3600 * 24) { + headers.warning = (headers.warning ? `${headers.warning}, ` : "") + '113 - "rfc7234 5.5.4"'; + } + headers.age = `${Math.round(age)}`; + headers.date = new Date(this.now()).toUTCString(); + return headers; + } + /** + * Value of the Date response header or current time if Date was invalid + * @return timestamp + */ + date() { + const serverDate = Date.parse(this._resHeaders.date); + if (isFinite(serverDate)) { + return serverDate; + } + return this._responseTime; + } + /** + * Value of the Age header, in seconds, updated for the current time. + * May be fractional. + * + * @return Number + */ + age() { + let age = this._ageValue(); + const residentTime = (this.now() - this._responseTime) / 1e3; + return age + residentTime; + } + _ageValue() { + return toNumberOrZero(this._resHeaders.age); + } + /** + * Value of applicable max-age (or heuristic equivalent) in seconds. This counts since response's `Date`. + * + * For an up-to-date value, see `timeToLive()`. + * + * @return Number + */ + maxAge() { + if (!this.storable() || this._rescc["no-cache"]) { + return 0; + } + if (this._isShared && (this._resHeaders["set-cookie"] && !this._rescc.public && !this._rescc.immutable)) { + return 0; + } + if (this._resHeaders.vary === "*") { + return 0; + } + if (this._isShared) { + if (this._rescc["proxy-revalidate"]) { + return 0; + } + if (this._rescc["s-maxage"]) { + return toNumberOrZero(this._rescc["s-maxage"]); } - if (m) - matchedEntries.push(e); } - } - var len = matchedEntries.length; - if (len === 0) - return; - if (remain.length === 1 && !this.mark && !this.stat) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - if (prefix) { - if (prefix.slice(-1) !== "/") - e = prefix + "/" + e; - else - e = prefix + e; + if (this._rescc["max-age"]) { + return toNumberOrZero(this._rescc["max-age"]); + } + const defaultMinTtl = this._rescc.immutable ? this._immutableMinTtl : 0; + const serverDate = this.date(); + if (this._resHeaders.expires) { + const expires = Date.parse(this._resHeaders.expires); + if (Number.isNaN(expires) || expires < serverDate) { + return 0; } - if (e.charAt(0) === "/" && !this.nomount) { - e = path.join(this.root, e); + return Math.max(defaultMinTtl, (expires - serverDate) / 1e3); + } + if (this._resHeaders["last-modified"]) { + const lastModified = Date.parse(this._resHeaders["last-modified"]); + if (isFinite(lastModified) && serverDate > lastModified) { + return Math.max( + defaultMinTtl, + (serverDate - lastModified) / 1e3 * this._cacheHeuristic + ); + } + } + return defaultMinTtl; + } + timeToLive() { + const age = this.maxAge() - this.age(); + const staleIfErrorAge = age + toNumberOrZero(this._rescc["stale-if-error"]); + const staleWhileRevalidateAge = age + toNumberOrZero(this._rescc["stale-while-revalidate"]); + return Math.max(0, age, staleIfErrorAge, staleWhileRevalidateAge) * 1e3; + } + stale() { + return this.maxAge() <= this.age(); + } + _useStaleIfError() { + return this.maxAge() + toNumberOrZero(this._rescc["stale-if-error"]) > this.age(); + } + useStaleWhileRevalidate() { + return this.maxAge() + toNumberOrZero(this._rescc["stale-while-revalidate"]) > this.age(); + } + static fromObject(obj) { + return new this(void 0, void 0, { _fromObject: obj }); + } + _fromObject(obj) { + if (this._responseTime) + throw Error("Reinitialized"); + if (!obj || obj.v !== 1) + throw Error("Invalid serialization"); + this._responseTime = obj.t; + this._isShared = obj.sh; + this._cacheHeuristic = obj.ch; + this._immutableMinTtl = obj.imm !== void 0 ? obj.imm : 24 * 3600 * 1e3; + this._status = obj.st; + this._resHeaders = obj.resh; + this._rescc = obj.rescc; + this._method = obj.m; + this._url = obj.u; + this._host = obj.h; + this._noAuthorization = obj.a; + this._reqHeaders = obj.reqh; + this._reqcc = obj.reqcc; + } + toObject() { + return { + v: 1, + t: this._responseTime, + sh: this._isShared, + ch: this._cacheHeuristic, + imm: this._immutableMinTtl, + st: this._status, + resh: this._resHeaders, + rescc: this._rescc, + m: this._method, + u: this._url, + h: this._host, + a: this._noAuthorization, + reqh: this._reqHeaders, + reqcc: this._reqcc + }; + } + /** + * Headers for sending to the origin server to revalidate stale response. + * Allows server to return 304 to allow reuse of the previous response. + * + * Hop by hop headers are always stripped. + * Revalidation headers may be added or removed, depending on request. + */ + revalidationHeaders(incomingReq) { + this._assertRequestHasHeaders(incomingReq); + const headers = this._copyWithoutHopByHopHeaders(incomingReq.headers); + delete headers["if-range"]; + if (!this._requestMatches(incomingReq, true) || !this.storable()) { + delete headers["if-none-match"]; + delete headers["if-modified-since"]; + return headers; + } + if (this._resHeaders.etag) { + headers["if-none-match"] = headers["if-none-match"] ? `${headers["if-none-match"]}, ${this._resHeaders.etag}` : this._resHeaders.etag; + } + const forbidsWeakValidators = headers["accept-ranges"] || headers["if-match"] || headers["if-unmodified-since"] || this._method && this._method != "GET"; + if (forbidsWeakValidators) { + delete headers["if-modified-since"]; + if (headers["if-none-match"]) { + const etags = headers["if-none-match"].split(/,/).filter((etag) => { + return !/^\s*W\//.test(etag); + }); + if (!etags.length) { + delete headers["if-none-match"]; + } else { + headers["if-none-match"] = etags.join(",").trim(); + } + } + } else if (this._resHeaders["last-modified"] && !headers["if-modified-since"]) { + headers["if-modified-since"] = this._resHeaders["last-modified"]; + } + return headers; + } + /** + * Creates new CachePolicy with information combined from the previews response, + * and the new revalidation response. + * + * Returns {policy, modified} where modified is a boolean indicating + * whether the response body has been modified, and old cached body can't be used. + * + * @return {Object} {policy: CachePolicy, modified: Boolean} + */ + revalidatedPolicy(request, response) { + this._assertRequestHasHeaders(request); + if (this._useStaleIfError() && isErrorResponse(response)) { + return { + modified: false, + matches: false, + policy: this + }; + } + if (!response || !response.headers) { + throw Error("Response headers missing"); + } + let matches = false; + if (response.status !== void 0 && response.status != 304) { + matches = false; + } else if (response.headers.etag && !/^\s*W\//.test(response.headers.etag)) { + matches = this._resHeaders.etag && this._resHeaders.etag.replace(/^\s*W\//, "") === response.headers.etag; + } else if (this._resHeaders.etag && response.headers.etag) { + matches = this._resHeaders.etag.replace(/^\s*W\//, "") === response.headers.etag.replace(/^\s*W\//, ""); + } else if (this._resHeaders["last-modified"]) { + matches = this._resHeaders["last-modified"] === response.headers["last-modified"]; + } else { + if (!this._resHeaders.etag && !this._resHeaders["last-modified"] && !response.headers.etag && !response.headers["last-modified"]) { + matches = true; } - this._emitMatch(index, e); } - return; + if (!matches) { + return { + policy: new this.constructor(request, response), + // Client receiving 304 without body, even if it's invalid/mismatched has no option + // but to reuse a cached body. We don't have a good way to tell clients to do + // error recovery in such case. + modified: response.status != 304, + matches: false + }; + } + const headers = {}; + for (const k in this._resHeaders) { + headers[k] = k in response.headers && !excludedFromRevalidationUpdate[k] ? response.headers[k] : this._resHeaders[k]; + } + const newResponse = Object.assign({}, response, { + status: this._status, + method: this._method, + headers + }); + return { + policy: new this.constructor(request, newResponse, { + shared: this._isShared, + cacheHeuristic: this._cacheHeuristic, + immutableMinTimeToLive: this._immutableMinTtl + }), + modified: false, + matches: true + }; } - remain.shift(); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - var newPattern; - if (prefix) - newPattern = [prefix, e]; - else - newPattern = [e]; - this._process(newPattern.concat(remain), index, inGlobStar); + }; + } +}); + +// ../node_modules/.pnpm/lowercase-keys@2.0.0/node_modules/lowercase-keys/index.js +var require_lowercase_keys = __commonJS({ + "../node_modules/.pnpm/lowercase-keys@2.0.0/node_modules/lowercase-keys/index.js"(exports2, module2) { + "use strict"; + module2.exports = (object) => { + const result2 = {}; + for (const [key, value] of Object.entries(object)) { + result2[key.toLowerCase()] = value; } + return result2; }; - GlobSync.prototype._emitMatch = function(index, e) { - if (isIgnored(this, e)) - return; - var abs = this._makeAbs(e); - if (this.mark) - e = this._mark(e); - if (this.absolute) { - e = abs; + } +}); + +// ../node_modules/.pnpm/responselike@2.0.1/node_modules/responselike/src/index.js +var require_src7 = __commonJS({ + "../node_modules/.pnpm/responselike@2.0.1/node_modules/responselike/src/index.js"(exports2, module2) { + "use strict"; + var Readable = require("stream").Readable; + var lowercaseKeys = require_lowercase_keys(); + var Response = class extends Readable { + constructor(statusCode, headers, body, url) { + if (typeof statusCode !== "number") { + throw new TypeError("Argument `statusCode` should be a number"); + } + if (typeof headers !== "object") { + throw new TypeError("Argument `headers` should be an object"); + } + if (!(body instanceof Buffer)) { + throw new TypeError("Argument `body` should be a buffer"); + } + if (typeof url !== "string") { + throw new TypeError("Argument `url` should be a string"); + } + super(); + this.statusCode = statusCode; + this.headers = lowercaseKeys(headers); + this.body = body; + this.url = url; } - if (this.matches[index][e]) - return; - if (this.nodir) { - var c = this.cache[abs]; - if (c === "DIR" || Array.isArray(c)) - return; + _read() { + this.push(this.body); + this.push(null); } - this.matches[index][e] = true; - if (this.stat) - this._stat(e); }; - GlobSync.prototype._readdirInGlobStar = function(abs) { - if (this.follow) - return this._readdir(abs, false); - var entries; - var lstat; - var stat; - try { - lstat = this.fs.lstatSync(abs); - } catch (er) { - if (er.code === "ENOENT") { - return null; + module2.exports = Response; + } +}); + +// ../node_modules/.pnpm/mimic-response@1.0.1/node_modules/mimic-response/index.js +var require_mimic_response = __commonJS({ + "../node_modules/.pnpm/mimic-response@1.0.1/node_modules/mimic-response/index.js"(exports2, module2) { + "use strict"; + var knownProps = [ + "destroy", + "setTimeout", + "socket", + "headers", + "trailers", + "rawHeaders", + "statusCode", + "httpVersion", + "httpVersionMinor", + "httpVersionMajor", + "rawTrailers", + "statusMessage" + ]; + module2.exports = (fromStream, toStream) => { + const fromProps = new Set(Object.keys(fromStream).concat(knownProps)); + for (const prop of fromProps) { + if (prop in toStream) { + continue; } + toStream[prop] = typeof fromStream[prop] === "function" ? fromStream[prop].bind(fromStream) : fromStream[prop]; } - var isSym = lstat && lstat.isSymbolicLink(); - this.symlinks[abs] = isSym; - if (!isSym && lstat && !lstat.isDirectory()) - this.cache[abs] = "FILE"; - else - entries = this._readdir(abs, false); - return entries; }; - GlobSync.prototype._readdir = function(abs, inGlobStar) { - var entries; - if (inGlobStar && !ownProp(this.symlinks, abs)) - return this._readdirInGlobStar(abs); - if (ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (!c || c === "FILE") - return null; - if (Array.isArray(c)) - return c; - } - try { - return this._readdirEntries(abs, this.fs.readdirSync(abs)); - } catch (er) { - this._readdirError(abs, er); - return null; + } +}); + +// ../node_modules/.pnpm/clone-response@1.0.3/node_modules/clone-response/src/index.js +var require_src8 = __commonJS({ + "../node_modules/.pnpm/clone-response@1.0.3/node_modules/clone-response/src/index.js"(exports2, module2) { + "use strict"; + var PassThrough = require("stream").PassThrough; + var mimicResponse = require_mimic_response(); + var cloneResponse = (response) => { + if (!(response && response.pipe)) { + throw new TypeError("Parameter `response` must be a response stream."); } + const clone = new PassThrough(); + mimicResponse(response, clone); + return response.pipe(clone); }; - GlobSync.prototype._readdirEntries = function(abs, entries) { - if (!this.mark && !this.stat) { - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (abs === "/") - e = abs + e; - else - e = abs + "/" + e; - this.cache[e] = true; + module2.exports = cloneResponse; + } +}); + +// ../node_modules/.pnpm/json-buffer@3.0.1/node_modules/json-buffer/index.js +var require_json_buffer = __commonJS({ + "../node_modules/.pnpm/json-buffer@3.0.1/node_modules/json-buffer/index.js"(exports2) { + exports2.stringify = function stringify2(o) { + if ("undefined" == typeof o) + return o; + if (o && Buffer.isBuffer(o)) + return JSON.stringify(":base64:" + o.toString("base64")); + if (o && o.toJSON) + o = o.toJSON(); + if (o && "object" === typeof o) { + var s = ""; + var array = Array.isArray(o); + s = array ? "[" : "{"; + var first = true; + for (var k in o) { + var ignore = "function" == typeof o[k] || !array && "undefined" === typeof o[k]; + if (Object.hasOwnProperty.call(o, k) && !ignore) { + if (!first) + s += ","; + first = false; + if (array) { + if (o[k] == void 0) + s += "null"; + else + s += stringify2(o[k]); + } else if (o[k] !== void 0) { + s += stringify2(k) + ":" + stringify2(o[k]); + } + } } - } - this.cache[abs] = entries; - return entries; + s += array ? "]" : "}"; + return s; + } else if ("string" === typeof o) { + return JSON.stringify(/^:/.test(o) ? ":" + o : o); + } else if ("undefined" === typeof o) { + return "null"; + } else + return JSON.stringify(o); }; - GlobSync.prototype._readdirError = function(f, er) { - switch (er.code) { - case "ENOTSUP": - case "ENOTDIR": - var abs = this._makeAbs(f); - this.cache[abs] = "FILE"; - if (abs === this.cwdAbs) { - var error = new Error(er.code + " invalid cwd " + this.cwd); - error.path = this.cwd; - error.code = er.code; - throw error; - } - break; - case "ENOENT": - case "ELOOP": - case "ENAMETOOLONG": - case "UNKNOWN": - this.cache[this._makeAbs(f)] = false; - break; - default: - this.cache[this._makeAbs(f)] = false; - if (this.strict) - throw er; - if (!this.silent) - console.error("glob error", er); - break; - } + exports2.parse = function(s) { + return JSON.parse(s, function(key, value) { + if ("string" === typeof value) { + if (/^:base64:/.test(value)) + return Buffer.from(value.substring(8), "base64"); + else + return /^:/.test(value) ? value.substring(1) : value; + } + return value; + }); }; - GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { - var entries = this._readdir(abs, inGlobStar); - if (!entries) - return; - var remainWithoutGlobStar = remain.slice(1); - var gspref = prefix ? [prefix] : []; - var noGlobStar = gspref.concat(remainWithoutGlobStar); - this._process(noGlobStar, index, false); - var len = entries.length; - var isSym = this.symlinks[abs]; - if (isSym && inGlobStar) - return; - for (var i = 0; i < len; i++) { - var e = entries[i]; - if (e.charAt(0) === "." && !this.dot) - continue; - var instead = gspref.concat(entries[i], remainWithoutGlobStar); - this._process(instead, index, true); - var below = gspref.concat(entries[i], remain); - this._process(below, index, true); + } +}); + +// ../node_modules/.pnpm/keyv@4.5.2/node_modules/keyv/src/index.js +var require_src9 = __commonJS({ + "../node_modules/.pnpm/keyv@4.5.2/node_modules/keyv/src/index.js"(exports2, module2) { + "use strict"; + var EventEmitter = require("events"); + var JSONB = require_json_buffer(); + var loadStore = (options) => { + const adapters = { + redis: "@keyv/redis", + rediss: "@keyv/redis", + mongodb: "@keyv/mongo", + mongo: "@keyv/mongo", + sqlite: "@keyv/sqlite", + postgresql: "@keyv/postgres", + postgres: "@keyv/postgres", + mysql: "@keyv/mysql", + etcd: "@keyv/etcd", + offline: "@keyv/offline", + tiered: "@keyv/tiered" + }; + if (options.adapter || options.uri) { + const adapter = options.adapter || /^[^:+]*/.exec(options.uri)[0]; + return new (require(adapters[adapter]))(options); } + return /* @__PURE__ */ new Map(); }; - GlobSync.prototype._processSimple = function(prefix, index) { - var exists = this._stat(prefix); - if (!this.matches[index]) - this.matches[index] = Object.create(null); - if (!exists) - return; - if (prefix && isAbsolute(prefix) && !this.nomount) { - var trail = /[\/\\]$/.test(prefix); - if (prefix.charAt(0) === "/") { - prefix = path.join(this.root, prefix); - } else { - prefix = path.resolve(this.root, prefix); - if (trail) - prefix += "/"; + var iterableAdapters = [ + "sqlite", + "postgres", + "mysql", + "mongo", + "redis", + "tiered" + ]; + var Keyv = class extends EventEmitter { + constructor(uri, { emitErrors = true, ...options } = {}) { + super(); + this.opts = { + namespace: "keyv", + serialize: JSONB.stringify, + deserialize: JSONB.parse, + ...typeof uri === "string" ? { uri } : uri, + ...options + }; + if (!this.opts.store) { + const adapterOptions = { ...this.opts }; + this.opts.store = loadStore(adapterOptions); + } + if (this.opts.compression) { + const compression = this.opts.compression; + this.opts.serialize = compression.serialize.bind(compression); + this.opts.deserialize = compression.deserialize.bind(compression); + } + if (typeof this.opts.store.on === "function" && emitErrors) { + this.opts.store.on("error", (error) => this.emit("error", error)); + } + this.opts.store.namespace = this.opts.namespace; + const generateIterator = (iterator) => async function* () { + for await (const [key, raw] of typeof iterator === "function" ? iterator(this.opts.store.namespace) : iterator) { + const data = this.opts.deserialize(raw); + if (this.opts.store.namespace && !key.includes(this.opts.store.namespace)) { + continue; + } + if (typeof data.expires === "number" && Date.now() > data.expires) { + this.delete(key); + continue; + } + yield [this._getKeyUnprefix(key), data.value]; + } + }; + if (typeof this.opts.store[Symbol.iterator] === "function" && this.opts.store instanceof Map) { + this.iterator = generateIterator(this.opts.store); + } else if (typeof this.opts.store.iterator === "function" && this.opts.store.opts && this._checkIterableAdaptar()) { + this.iterator = generateIterator(this.opts.store.iterator.bind(this.opts.store)); + } + } + _checkIterableAdaptar() { + return iterableAdapters.includes(this.opts.store.opts.dialect) || iterableAdapters.findIndex((element) => this.opts.store.opts.url.includes(element)) >= 0; + } + _getKeyPrefix(key) { + return `${this.opts.namespace}:${key}`; + } + _getKeyPrefixArray(keys) { + return keys.map((key) => `${this.opts.namespace}:${key}`); + } + _getKeyUnprefix(key) { + return key.split(":").splice(1).join(":"); + } + get(key, options) { + const { store } = this.opts; + const isArray = Array.isArray(key); + const keyPrefixed = isArray ? this._getKeyPrefixArray(key) : this._getKeyPrefix(key); + if (isArray && store.getMany === void 0) { + const promises = []; + for (const key2 of keyPrefixed) { + promises.push( + Promise.resolve().then(() => store.get(key2)).then((data) => typeof data === "string" ? this.opts.deserialize(data) : this.opts.compression ? this.opts.deserialize(data) : data).then((data) => { + if (data === void 0 || data === null) { + return void 0; + } + if (typeof data.expires === "number" && Date.now() > data.expires) { + return this.delete(key2).then(() => void 0); + } + return options && options.raw ? data : data.value; + }) + ); + } + return Promise.allSettled(promises).then((values) => { + const data = []; + for (const value of values) { + data.push(value.value); + } + return data; + }); } + return Promise.resolve().then(() => isArray ? store.getMany(keyPrefixed) : store.get(keyPrefixed)).then((data) => typeof data === "string" ? this.opts.deserialize(data) : this.opts.compression ? this.opts.deserialize(data) : data).then((data) => { + if (data === void 0 || data === null) { + return void 0; + } + if (isArray) { + const result2 = []; + for (let row of data) { + if (typeof row === "string") { + row = this.opts.deserialize(row); + } + if (row === void 0 || row === null) { + result2.push(void 0); + continue; + } + if (typeof row.expires === "number" && Date.now() > row.expires) { + this.delete(key).then(() => void 0); + result2.push(void 0); + } else { + result2.push(options && options.raw ? row : row.value); + } + } + return result2; + } + if (typeof data.expires === "number" && Date.now() > data.expires) { + return this.delete(key).then(() => void 0); + } + return options && options.raw ? data : data.value; + }); } - if (process.platform === "win32") - prefix = prefix.replace(/\\/g, "/"); - this._emitMatch(index, prefix); - }; - GlobSync.prototype._stat = function(f) { - var abs = this._makeAbs(f); - var needDir = f.slice(-1) === "/"; - if (f.length > this.maxLength) - return false; - if (!this.stat && ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (Array.isArray(c)) - c = "DIR"; - if (!needDir || c === "DIR") - return c; - if (needDir && c === "FILE") - return false; + set(key, value, ttl) { + const keyPrefixed = this._getKeyPrefix(key); + if (typeof ttl === "undefined") { + ttl = this.opts.ttl; + } + if (ttl === 0) { + ttl = void 0; + } + const { store } = this.opts; + return Promise.resolve().then(() => { + const expires = typeof ttl === "number" ? Date.now() + ttl : null; + if (typeof value === "symbol") { + this.emit("error", "symbol cannot be serialized"); + } + value = { value, expires }; + return this.opts.serialize(value); + }).then((value2) => store.set(keyPrefixed, value2, ttl)).then(() => true); } - var exists; - var stat = this.statCache[abs]; - if (!stat) { - var lstat; - try { - lstat = this.fs.lstatSync(abs); - } catch (er) { - if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { - this.statCache[abs] = false; - return false; + delete(key) { + const { store } = this.opts; + if (Array.isArray(key)) { + const keyPrefixed2 = this._getKeyPrefixArray(key); + if (store.deleteMany === void 0) { + const promises = []; + for (const key2 of keyPrefixed2) { + promises.push(store.delete(key2)); + } + return Promise.allSettled(promises).then((values) => values.every((x) => x.value === true)); } + return Promise.resolve().then(() => store.deleteMany(keyPrefixed2)); } - if (lstat && lstat.isSymbolicLink()) { - try { - stat = this.fs.statSync(abs); - } catch (er) { - stat = lstat; - } - } else { - stat = lstat; + const keyPrefixed = this._getKeyPrefix(key); + return Promise.resolve().then(() => store.delete(keyPrefixed)); + } + clear() { + const { store } = this.opts; + return Promise.resolve().then(() => store.clear()); + } + has(key) { + const keyPrefixed = this._getKeyPrefix(key); + const { store } = this.opts; + return Promise.resolve().then(async () => { + if (typeof store.has === "function") { + return store.has(keyPrefixed); + } + const value = await store.get(keyPrefixed); + return value !== void 0; + }); + } + disconnect() { + const { store } = this.opts; + if (typeof store.disconnect === "function") { + return store.disconnect(); } } - this.statCache[abs] = stat; - var c = true; - if (stat) - c = stat.isDirectory() ? "DIR" : "FILE"; - this.cache[abs] = this.cache[abs] || c; - if (needDir && c === "FILE") - return false; - return c; - }; - GlobSync.prototype._mark = function(p) { - return common.mark(this, p); - }; - GlobSync.prototype._makeAbs = function(f) { - return common.makeAbs(this, f); }; + module2.exports = Keyv; } }); -// ../../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js -var require_inflight = __commonJS({ - "../../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js"(exports2, module2) { - var wrappy = require_wrappy(); - var reqs = Object.create(null); - var once = require_once(); - module2.exports = wrappy(inflight); - function inflight(key, cb) { - if (reqs[key]) { - reqs[key].push(cb); - return null; - } else { - reqs[key] = [cb]; - return makeres(key); +// ../node_modules/.pnpm/cacheable-request@7.0.2/node_modules/cacheable-request/src/index.js +var require_src10 = __commonJS({ + "../node_modules/.pnpm/cacheable-request@7.0.2/node_modules/cacheable-request/src/index.js"(exports2, module2) { + "use strict"; + var EventEmitter = require("events"); + var urlLib = require("url"); + var normalizeUrl = require_normalize_url(); + var getStream = require_get_stream2(); + var CachePolicy = require_http_cache_semantics(); + var Response = require_src7(); + var lowercaseKeys = require_lowercase_keys(); + var cloneResponse = require_src8(); + var Keyv = require_src9(); + var CacheableRequest = class { + constructor(request, cacheAdapter) { + if (typeof request !== "function") { + throw new TypeError("Parameter `request` must be a function"); + } + this.cache = new Keyv({ + uri: typeof cacheAdapter === "string" && cacheAdapter, + store: typeof cacheAdapter !== "string" && cacheAdapter, + namespace: "cacheable-request" + }); + return this.createCacheableRequest(request); + } + createCacheableRequest(request) { + return (opts, cb) => { + let url; + if (typeof opts === "string") { + url = normalizeUrlObject(urlLib.parse(opts)); + opts = {}; + } else if (opts instanceof urlLib.URL) { + url = normalizeUrlObject(urlLib.parse(opts.toString())); + opts = {}; + } else { + const [pathname, ...searchParts] = (opts.path || "").split("?"); + const search = searchParts.length > 0 ? `?${searchParts.join("?")}` : ""; + url = normalizeUrlObject({ ...opts, pathname, search }); + } + opts = { + headers: {}, + method: "GET", + cache: true, + strictTtl: false, + automaticFailover: false, + ...opts, + ...urlObjectToRequestOptions(url) + }; + opts.headers = lowercaseKeys(opts.headers); + const ee = new EventEmitter(); + const normalizedUrlString = normalizeUrl( + urlLib.format(url), + { + stripWWW: false, + removeTrailingSlash: false, + stripAuthentication: false + } + ); + const key = `${opts.method}:${normalizedUrlString}`; + let revalidate = false; + let madeRequest = false; + const makeRequest = (opts2) => { + madeRequest = true; + let requestErrored = false; + let requestErrorCallback; + const requestErrorPromise = new Promise((resolve) => { + requestErrorCallback = () => { + if (!requestErrored) { + requestErrored = true; + resolve(); + } + }; + }); + const handler = (response) => { + if (revalidate && !opts2.forceRefresh) { + response.status = response.statusCode; + const revalidatedPolicy = CachePolicy.fromObject(revalidate.cachePolicy).revalidatedPolicy(opts2, response); + if (!revalidatedPolicy.modified) { + const headers = revalidatedPolicy.policy.responseHeaders(); + response = new Response(revalidate.statusCode, headers, revalidate.body, revalidate.url); + response.cachePolicy = revalidatedPolicy.policy; + response.fromCache = true; + } + } + if (!response.fromCache) { + response.cachePolicy = new CachePolicy(opts2, response, opts2); + response.fromCache = false; + } + let clonedResponse; + if (opts2.cache && response.cachePolicy.storable()) { + clonedResponse = cloneResponse(response); + (async () => { + try { + const bodyPromise = getStream.buffer(response); + await Promise.race([ + requestErrorPromise, + new Promise((resolve) => response.once("end", resolve)) + ]); + if (requestErrored) { + return; + } + const body = await bodyPromise; + const value = { + cachePolicy: response.cachePolicy.toObject(), + url: response.url, + statusCode: response.fromCache ? revalidate.statusCode : response.statusCode, + body + }; + let ttl = opts2.strictTtl ? response.cachePolicy.timeToLive() : void 0; + if (opts2.maxTtl) { + ttl = ttl ? Math.min(ttl, opts2.maxTtl) : opts2.maxTtl; + } + await this.cache.set(key, value, ttl); + } catch (error) { + ee.emit("error", new CacheableRequest.CacheError(error)); + } + })(); + } else if (opts2.cache && revalidate) { + (async () => { + try { + await this.cache.delete(key); + } catch (error) { + ee.emit("error", new CacheableRequest.CacheError(error)); + } + })(); + } + ee.emit("response", clonedResponse || response); + if (typeof cb === "function") { + cb(clonedResponse || response); + } + }; + try { + const req = request(opts2, handler); + req.once("error", requestErrorCallback); + req.once("abort", requestErrorCallback); + ee.emit("request", req); + } catch (error) { + ee.emit("error", new CacheableRequest.RequestError(error)); + } + }; + (async () => { + const get = async (opts2) => { + await Promise.resolve(); + const cacheEntry = opts2.cache ? await this.cache.get(key) : void 0; + if (typeof cacheEntry === "undefined") { + return makeRequest(opts2); + } + const policy = CachePolicy.fromObject(cacheEntry.cachePolicy); + if (policy.satisfiesWithoutRevalidation(opts2) && !opts2.forceRefresh) { + const headers = policy.responseHeaders(); + const response = new Response(cacheEntry.statusCode, headers, cacheEntry.body, cacheEntry.url); + response.cachePolicy = policy; + response.fromCache = true; + ee.emit("response", response); + if (typeof cb === "function") { + cb(response); + } + } else { + revalidate = cacheEntry; + opts2.headers = policy.revalidationHeaders(opts2); + makeRequest(opts2); + } + }; + const errorHandler = (error) => ee.emit("error", new CacheableRequest.CacheError(error)); + this.cache.once("error", errorHandler); + ee.on("response", () => this.cache.removeListener("error", errorHandler)); + try { + await get(opts); + } catch (error) { + if (opts.automaticFailover && !madeRequest) { + makeRequest(opts); + } + ee.emit("error", new CacheableRequest.CacheError(error)); + } + })(); + return ee; + }; } + }; + function urlObjectToRequestOptions(url) { + const options = { ...url }; + options.path = `${url.pathname || "/"}${url.search || ""}`; + delete options.pathname; + delete options.search; + return options; } - function makeres(key) { - return once(function RES() { - var cbs = reqs[key]; - var len = cbs.length; - var args2 = slice(arguments); - try { - for (var i = 0; i < len; i++) { - cbs[i].apply(null, args2); - } - } finally { - if (cbs.length > len) { - cbs.splice(0, len); - process.nextTick(function() { - RES.apply(null, args2); + function normalizeUrlObject(url) { + return { + protocol: url.protocol, + auth: url.auth, + hostname: url.hostname || url.host || "localhost", + port: url.port, + pathname: url.pathname, + search: url.search + }; + } + CacheableRequest.RequestError = class extends Error { + constructor(error) { + super(error.message); + this.name = "RequestError"; + Object.assign(this, error); + } + }; + CacheableRequest.CacheError = class extends Error { + constructor(error) { + super(error.message); + this.name = "CacheError"; + Object.assign(this, error); + } + }; + module2.exports = CacheableRequest; + } +}); + +// ../node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js +var require_mimic_response2 = __commonJS({ + "../node_modules/.pnpm/mimic-response@3.1.0/node_modules/mimic-response/index.js"(exports2, module2) { + "use strict"; + var knownProperties = [ + "aborted", + "complete", + "headers", + "httpVersion", + "httpVersionMinor", + "httpVersionMajor", + "method", + "rawHeaders", + "rawTrailers", + "setTimeout", + "socket", + "statusCode", + "statusMessage", + "trailers", + "url" + ]; + module2.exports = (fromStream, toStream) => { + if (toStream._readableState.autoDestroy) { + throw new Error("The second stream must have the `autoDestroy` option set to `false`"); + } + const fromProperties = new Set(Object.keys(fromStream).concat(knownProperties)); + const properties = {}; + for (const property of fromProperties) { + if (property in toStream) { + continue; + } + properties[property] = { + get() { + const value = fromStream[property]; + const isFunction = typeof value === "function"; + return isFunction ? value.bind(fromStream) : value; + }, + set(value) { + fromStream[property] = value; + }, + enumerable: true, + configurable: false + }; + } + Object.defineProperties(toStream, properties); + fromStream.once("aborted", () => { + toStream.destroy(); + toStream.emit("aborted"); + }); + fromStream.once("close", () => { + if (fromStream.complete) { + if (toStream.readable) { + toStream.once("end", () => { + toStream.emit("close"); }); } else { - delete reqs[key]; + toStream.emit("close"); } + } else { + toStream.emit("close"); } }); - } - function slice(args2) { - var length = args2.length; - var array = []; - for (var i = 0; i < length; i++) - array[i] = args2[i]; - return array; - } + return toStream; + }; } }); -// ../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/glob.js -var require_glob = __commonJS({ - "../../node_modules/.pnpm/glob@7.2.0/node_modules/glob/glob.js"(exports2, module2) { - module2.exports = glob; - var rp = require_fs5(); - var minimatch = require_minimatch(); - var Minimatch = minimatch.Minimatch; - var inherits = require_inherits(); - var EE = require("events").EventEmitter; - var path = require("path"); - var assert = require("assert"); - var isAbsolute = require_path_is_absolute(); - var globSync = require_sync7(); - var common = require_common7(); - var setopts = common.setopts; - var ownProp = common.ownProp; - var inflight = require_inflight(); - var util = require("util"); - var childrenIgnored = common.childrenIgnored; - var isIgnored = common.isIgnored; - var once = require_once(); - function glob(pattern, options, cb) { - if (typeof options === "function") - cb = options, options = {}; - if (!options) - options = {}; - if (options.sync) { - if (cb) - throw new TypeError("callback provided to sync glob"); - return globSync(pattern, options); +// ../node_modules/.pnpm/decompress-response@6.0.0/node_modules/decompress-response/index.js +var require_decompress_response = __commonJS({ + "../node_modules/.pnpm/decompress-response@6.0.0/node_modules/decompress-response/index.js"(exports2, module2) { + "use strict"; + var { Transform, PassThrough } = require("stream"); + var zlib = require("zlib"); + var mimicResponse = require_mimic_response2(); + module2.exports = (response) => { + const contentEncoding = (response.headers["content-encoding"] || "").toLowerCase(); + if (!["gzip", "deflate", "br"].includes(contentEncoding)) { + return response; + } + const isBrotli = contentEncoding === "br"; + if (isBrotli && typeof zlib.createBrotliDecompress !== "function") { + response.destroy(new Error("Brotli is not supported on Node.js < 12")); + return response; + } + let isEmpty = true; + const checker = new Transform({ + transform(data, _encoding, callback) { + isEmpty = false; + callback(null, data); + }, + flush(callback) { + callback(); + } + }); + const finalStream = new PassThrough({ + autoDestroy: false, + destroy(error, callback) { + response.destroy(); + callback(error); + } + }); + const decompressStream = isBrotli ? zlib.createBrotliDecompress() : zlib.createUnzip(); + decompressStream.once("error", (error) => { + if (isEmpty && !response.readable) { + finalStream.end(); + return; + } + finalStream.destroy(error); + }); + mimicResponse(response, finalStream); + response.pipe(checker).pipe(decompressStream).pipe(finalStream); + return finalStream; + }; + } +}); + +// ../node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js +var require_quick_lru2 = __commonJS({ + "../node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js"(exports2, module2) { + "use strict"; + var QuickLRU = class { + constructor(options = {}) { + if (!(options.maxSize && options.maxSize > 0)) { + throw new TypeError("`maxSize` must be a number greater than 0"); + } + this.maxSize = options.maxSize; + this.onEviction = options.onEviction; + this.cache = /* @__PURE__ */ new Map(); + this.oldCache = /* @__PURE__ */ new Map(); + this._size = 0; } - return new Glob(pattern, options, cb); - } - glob.sync = globSync; - var GlobSync = glob.GlobSync = globSync.GlobSync; - glob.glob = glob; - function extend(origin, add) { - if (add === null || typeof add !== "object") { - return origin; + _set(key, value) { + this.cache.set(key, value); + this._size++; + if (this._size >= this.maxSize) { + this._size = 0; + if (typeof this.onEviction === "function") { + for (const [key2, value2] of this.oldCache.entries()) { + this.onEviction(key2, value2); + } + } + this.oldCache = this.cache; + this.cache = /* @__PURE__ */ new Map(); + } } - var keys = Object.keys(add); - var i = keys.length; - while (i--) { - origin[keys[i]] = add[keys[i]]; + get(key) { + if (this.cache.has(key)) { + return this.cache.get(key); + } + if (this.oldCache.has(key)) { + const value = this.oldCache.get(key); + this.oldCache.delete(key); + this._set(key, value); + return value; + } } - return origin; - } - glob.hasMagic = function(pattern, options_) { - var options = extend({}, options_); - options.noprocess = true; - var g = new Glob(pattern, options); - var set = g.minimatch.set; - if (!pattern) - return false; - if (set.length > 1) - return true; - for (var j = 0; j < set[0].length; j++) { - if (typeof set[0][j] !== "string") - return true; + set(key, value) { + if (this.cache.has(key)) { + this.cache.set(key, value); + } else { + this._set(key, value); + } + return this; } - return false; - }; - glob.Glob = Glob; - inherits(Glob, EE); - function Glob(pattern, options, cb) { - if (typeof options === "function") { - cb = options; - options = null; + has(key) { + return this.cache.has(key) || this.oldCache.has(key); } - if (options && options.sync) { - if (cb) - throw new TypeError("callback provided to sync glob"); - return new GlobSync(pattern, options); + peek(key) { + if (this.cache.has(key)) { + return this.cache.get(key); + } + if (this.oldCache.has(key)) { + return this.oldCache.get(key); + } } - if (!(this instanceof Glob)) - return new Glob(pattern, options, cb); - setopts(this, pattern, options); - this._didRealPath = false; - var n = this.minimatch.set.length; - this.matches = new Array(n); - if (typeof cb === "function") { - cb = once(cb); - this.on("error", cb); - this.on("end", function(matches) { - cb(null, matches); - }); + delete(key) { + const deleted = this.cache.delete(key); + if (deleted) { + this._size--; + } + return this.oldCache.delete(key) || deleted; } - var self2 = this; - this._processing = 0; - this._emitQueue = []; - this._processQueue = []; - this.paused = false; - if (this.noprocess) - return this; - if (n === 0) - return done(); - var sync = true; - for (var i = 0; i < n; i++) { - this._process(this.minimatch.set[i], i, false, done); + clear() { + this.cache.clear(); + this.oldCache.clear(); + this._size = 0; } - sync = false; - function done() { - --self2._processing; - if (self2._processing <= 0) { - if (sync) { - process.nextTick(function() { - self2._finish(); - }); - } else { - self2._finish(); - } + *keys() { + for (const [key] of this) { + yield key; } } - } - Glob.prototype._finish = function() { - assert(this instanceof Glob); - if (this.aborted) - return; - if (this.realpath && !this._didRealpath) - return this._realpath(); - common.finish(this); - this.emit("end", this.found); - }; - Glob.prototype._realpath = function() { - if (this._didRealpath) - return; - this._didRealpath = true; - var n = this.matches.length; - if (n === 0) - return this._finish(); - var self2 = this; - for (var i = 0; i < this.matches.length; i++) - this._realpathSet(i, next); - function next() { - if (--n === 0) - self2._finish(); + *values() { + for (const [, value] of this) { + yield value; + } } - }; - Glob.prototype._realpathSet = function(index, cb) { - var matchset = this.matches[index]; - if (!matchset) - return cb(); - var found = Object.keys(matchset); - var self2 = this; - var n = found.length; - if (n === 0) - return cb(); - var set = this.matches[index] = Object.create(null); - found.forEach(function(p, i) { - p = self2._makeAbs(p); - rp.realpath(p, self2.realpathCache, function(er, real) { - if (!er) - set[real] = true; - else if (er.syscall === "stat") - set[p] = true; - else - self2.emit("error", er); - if (--n === 0) { - self2.matches[index] = set; - cb(); + *[Symbol.iterator]() { + for (const item of this.cache) { + yield item; + } + for (const item of this.oldCache) { + const [key] = item; + if (!this.cache.has(key)) { + yield item; } - }); - }); - }; - Glob.prototype._mark = function(p) { - return common.mark(this, p); - }; - Glob.prototype._makeAbs = function(f) { - return common.makeAbs(this, f); - }; - Glob.prototype.abort = function() { - this.aborted = true; - this.emit("abort"); - }; - Glob.prototype.pause = function() { - if (!this.paused) { - this.paused = true; - this.emit("pause"); + } } - }; - Glob.prototype.resume = function() { - if (this.paused) { - this.emit("resume"); - this.paused = false; - if (this._emitQueue.length) { - var eq = this._emitQueue.slice(0); - this._emitQueue.length = 0; - for (var i = 0; i < eq.length; i++) { - var e = eq[i]; - this._emitMatch(e[0], e[1]); + get size() { + let oldCacheSize = 0; + for (const key of this.oldCache.keys()) { + if (!this.cache.has(key)) { + oldCacheSize++; } } - if (this._processQueue.length) { - var pq = this._processQueue.slice(0); - this._processQueue.length = 0; - for (var i = 0; i < pq.length; i++) { - var p = pq[i]; - this._processing--; - this._process(p[0], p[1], p[2], p[3]); - } + return Math.min(this._size + oldCacheSize, this.maxSize); + } + }; + module2.exports = QuickLRU; + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/agent.js +var require_agent6 = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/agent.js"(exports2, module2) { + "use strict"; + var EventEmitter = require("events"); + var tls = require("tls"); + var http2 = require("http2"); + var QuickLRU = require_quick_lru2(); + var kCurrentStreamsCount = Symbol("currentStreamsCount"); + var kRequest = Symbol("request"); + var kOriginSet = Symbol("cachedOriginSet"); + var kGracefullyClosing = Symbol("gracefullyClosing"); + var nameKeys = [ + // `http2.connect()` options + "maxDeflateDynamicTableSize", + "maxSessionMemory", + "maxHeaderListPairs", + "maxOutstandingPings", + "maxReservedRemoteStreams", + "maxSendHeaderBlockLength", + "paddingStrategy", + // `tls.connect()` options + "localAddress", + "path", + "rejectUnauthorized", + "minDHSize", + // `tls.createSecureContext()` options + "ca", + "cert", + "clientCertEngine", + "ciphers", + "key", + "pfx", + "servername", + "minVersion", + "maxVersion", + "secureProtocol", + "crl", + "honorCipherOrder", + "ecdhCurve", + "dhparam", + "secureOptions", + "sessionIdContext" + ]; + var getSortedIndex = (array, value, compare) => { + let low = 0; + let high = array.length; + while (low < high) { + const mid = low + high >>> 1; + if (compare(array[mid], value)) { + low = mid + 1; + } else { + high = mid; } } + return low; }; - Glob.prototype._process = function(pattern, index, inGlobStar, cb) { - assert(this instanceof Glob); - assert(typeof cb === "function"); - if (this.aborted) - return; - this._processing++; - if (this.paused) { - this._processQueue.push([pattern, index, inGlobStar, cb]); - return; + var compareSessions = (a, b) => { + return a.remoteSettings.maxConcurrentStreams > b.remoteSettings.maxConcurrentStreams; + }; + var closeCoveredSessions = (where, session) => { + for (const coveredSession of where) { + if ( + // The set is a proper subset when its length is less than the other set. + coveredSession[kOriginSet].length < session[kOriginSet].length && // And the other set includes all elements of the subset. + coveredSession[kOriginSet].every((origin) => session[kOriginSet].includes(origin)) && // Makes sure that the session can handle all requests from the covered session. + coveredSession[kCurrentStreamsCount] + session[kCurrentStreamsCount] <= session.remoteSettings.maxConcurrentStreams + ) { + gracefullyClose(coveredSession); + } } - var n = 0; - while (typeof pattern[n] === "string") { - n++; + }; + var closeSessionIfCovered = (where, coveredSession) => { + for (const session of where) { + if (coveredSession[kOriginSet].length < session[kOriginSet].length && coveredSession[kOriginSet].every((origin) => session[kOriginSet].includes(origin)) && coveredSession[kCurrentStreamsCount] + session[kCurrentStreamsCount] <= session.remoteSettings.maxConcurrentStreams) { + gracefullyClose(coveredSession); + } } - var prefix; - switch (n) { - case pattern.length: - this._processSimple(pattern.join("/"), index, cb); - return; - case 0: - prefix = null; - break; - default: - prefix = pattern.slice(0, n).join("/"); - break; + }; + var getSessions = ({ agent, isFree }) => { + const result2 = {}; + for (const normalizedOptions in agent.sessions) { + const sessions = agent.sessions[normalizedOptions]; + const filtered = sessions.filter((session) => { + const result3 = session[Agent.kCurrentStreamsCount] < session.remoteSettings.maxConcurrentStreams; + return isFree ? result3 : !result3; + }); + if (filtered.length !== 0) { + result2[normalizedOptions] = filtered; + } } - var remain = pattern.slice(n); - var read; - if (prefix === null) - read = "."; - else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { - if (!prefix || !isAbsolute(prefix)) - prefix = "/" + prefix; - read = prefix; - } else - read = prefix; - var abs = this._makeAbs(read); - if (childrenIgnored(this, read)) - return cb(); - var isGlobStar = remain[0] === minimatch.GLOBSTAR; - if (isGlobStar) - this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); - else - this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); + return result2; }; - Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { - var self2 = this; - this._readdir(abs, inGlobStar, function(er, entries) { - return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); - }); + var gracefullyClose = (session) => { + session[kGracefullyClosing] = true; + if (session[kCurrentStreamsCount] === 0) { + session.close(); + } }; - Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { - if (!entries) - return cb(); - var pn = remain[0]; - var negate = !!this.minimatch.negate; - var rawGlob = pn._glob; - var dotOk = this.dot || rawGlob.charAt(0) === "."; - var matchedEntries = []; - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (e.charAt(0) !== "." || dotOk) { - var m; - if (negate && !prefix) { - m = !e.match(pn); - } else { - m = e.match(pn); - } - if (m) - matchedEntries.push(e); + var Agent = class extends EventEmitter { + constructor({ timeout = 6e4, maxSessions = Infinity, maxFreeSessions = 10, maxCachedTlsSessions = 100 } = {}) { + super(); + this.sessions = {}; + this.queue = {}; + this.timeout = timeout; + this.maxSessions = maxSessions; + this.maxFreeSessions = maxFreeSessions; + this._freeSessionsCount = 0; + this._sessionsCount = 0; + this.settings = { + enablePush: false + }; + this.tlsSessionCache = new QuickLRU({ maxSize: maxCachedTlsSessions }); + } + static normalizeOrigin(url, servername) { + if (typeof url === "string") { + url = new URL(url); + } + if (servername && url.hostname !== servername) { + url.hostname = servername; } + return url.origin; } - var len = matchedEntries.length; - if (len === 0) - return cb(); - if (remain.length === 1 && !this.mark && !this.stat) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - if (prefix) { - if (prefix !== "/") - e = prefix + "/" + e; - else - e = prefix + e; - } - if (e.charAt(0) === "/" && !this.nomount) { - e = path.join(this.root, e); + normalizeOptions(options) { + let normalized = ""; + if (options) { + for (const key of nameKeys) { + if (options[key]) { + normalized += `:${options[key]}`; + } } - this._emitMatch(index, e); } - return cb(); + return normalized; } - remain.shift(); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - var newPattern; - if (prefix) { - if (prefix !== "/") - e = prefix + "/" + e; - else - e = prefix + e; + _tryToCreateNewSession(normalizedOptions, normalizedOrigin) { + if (!(normalizedOptions in this.queue) || !(normalizedOrigin in this.queue[normalizedOptions])) { + return; + } + const item = this.queue[normalizedOptions][normalizedOrigin]; + if (this._sessionsCount < this.maxSessions && !item.completed) { + item.completed = true; + item(); } - this._process([e].concat(remain), index, inGlobStar, cb); } - cb(); - }; - Glob.prototype._emitMatch = function(index, e) { - if (this.aborted) - return; - if (isIgnored(this, e)) - return; - if (this.paused) { - this._emitQueue.push([index, e]); - return; + getSession(origin, options, listeners) { + return new Promise((resolve, reject) => { + if (Array.isArray(listeners)) { + listeners = [...listeners]; + resolve(); + } else { + listeners = [{ resolve, reject }]; + } + const normalizedOptions = this.normalizeOptions(options); + const normalizedOrigin = Agent.normalizeOrigin(origin, options && options.servername); + if (normalizedOrigin === void 0) { + for (const { reject: reject2 } of listeners) { + reject2(new TypeError("The `origin` argument needs to be a string or an URL object")); + } + return; + } + if (normalizedOptions in this.sessions) { + const sessions = this.sessions[normalizedOptions]; + let maxConcurrentStreams = -1; + let currentStreamsCount = -1; + let optimalSession; + for (const session of sessions) { + const sessionMaxConcurrentStreams = session.remoteSettings.maxConcurrentStreams; + if (sessionMaxConcurrentStreams < maxConcurrentStreams) { + break; + } + if (session[kOriginSet].includes(normalizedOrigin)) { + const sessionCurrentStreamsCount = session[kCurrentStreamsCount]; + if (sessionCurrentStreamsCount >= sessionMaxConcurrentStreams || session[kGracefullyClosing] || // Unfortunately the `close` event isn't called immediately, + // so `session.destroyed` is `true`, but `session.closed` is `false`. + session.destroyed) { + continue; + } + if (!optimalSession) { + maxConcurrentStreams = sessionMaxConcurrentStreams; + } + if (sessionCurrentStreamsCount > currentStreamsCount) { + optimalSession = session; + currentStreamsCount = sessionCurrentStreamsCount; + } + } + } + if (optimalSession) { + if (listeners.length !== 1) { + for (const { reject: reject2 } of listeners) { + const error = new Error( + `Expected the length of listeners to be 1, got ${listeners.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/` + ); + reject2(error); + } + return; + } + listeners[0].resolve(optimalSession); + return; + } + } + if (normalizedOptions in this.queue) { + if (normalizedOrigin in this.queue[normalizedOptions]) { + this.queue[normalizedOptions][normalizedOrigin].listeners.push(...listeners); + this._tryToCreateNewSession(normalizedOptions, normalizedOrigin); + return; + } + } else { + this.queue[normalizedOptions] = {}; + } + const removeFromQueue = () => { + if (normalizedOptions in this.queue && this.queue[normalizedOptions][normalizedOrigin] === entry) { + delete this.queue[normalizedOptions][normalizedOrigin]; + if (Object.keys(this.queue[normalizedOptions]).length === 0) { + delete this.queue[normalizedOptions]; + } + } + }; + const entry = () => { + const name = `${normalizedOrigin}:${normalizedOptions}`; + let receivedSettings = false; + try { + const session = http2.connect(origin, { + createConnection: this.createConnection, + settings: this.settings, + session: this.tlsSessionCache.get(name), + ...options + }); + session[kCurrentStreamsCount] = 0; + session[kGracefullyClosing] = false; + const isFree = () => session[kCurrentStreamsCount] < session.remoteSettings.maxConcurrentStreams; + let wasFree = true; + session.socket.once("session", (tlsSession) => { + this.tlsSessionCache.set(name, tlsSession); + }); + session.once("error", (error) => { + for (const { reject: reject2 } of listeners) { + reject2(error); + } + this.tlsSessionCache.delete(name); + }); + session.setTimeout(this.timeout, () => { + session.destroy(); + }); + session.once("close", () => { + if (receivedSettings) { + if (wasFree) { + this._freeSessionsCount--; + } + this._sessionsCount--; + const where = this.sessions[normalizedOptions]; + where.splice(where.indexOf(session), 1); + if (where.length === 0) { + delete this.sessions[normalizedOptions]; + } + } else { + const error = new Error("Session closed without receiving a SETTINGS frame"); + error.code = "HTTP2WRAPPER_NOSETTINGS"; + for (const { reject: reject2 } of listeners) { + reject2(error); + } + removeFromQueue(); + } + this._tryToCreateNewSession(normalizedOptions, normalizedOrigin); + }); + const processListeners = () => { + if (!(normalizedOptions in this.queue) || !isFree()) { + return; + } + for (const origin2 of session[kOriginSet]) { + if (origin2 in this.queue[normalizedOptions]) { + const { listeners: listeners2 } = this.queue[normalizedOptions][origin2]; + while (listeners2.length !== 0 && isFree()) { + listeners2.shift().resolve(session); + } + const where = this.queue[normalizedOptions]; + if (where[origin2].listeners.length === 0) { + delete where[origin2]; + if (Object.keys(where).length === 0) { + delete this.queue[normalizedOptions]; + break; + } + } + if (!isFree()) { + break; + } + } + } + }; + session.on("origin", () => { + session[kOriginSet] = session.originSet; + if (!isFree()) { + return; + } + processListeners(); + closeCoveredSessions(this.sessions[normalizedOptions], session); + }); + session.once("remoteSettings", () => { + session.ref(); + session.unref(); + this._sessionsCount++; + if (entry.destroyed) { + const error = new Error("Agent has been destroyed"); + for (const listener of listeners) { + listener.reject(error); + } + session.destroy(); + return; + } + session[kOriginSet] = session.originSet; + { + const where = this.sessions; + if (normalizedOptions in where) { + const sessions = where[normalizedOptions]; + sessions.splice(getSortedIndex(sessions, session, compareSessions), 0, session); + } else { + where[normalizedOptions] = [session]; + } + } + this._freeSessionsCount += 1; + receivedSettings = true; + this.emit("session", session); + processListeners(); + removeFromQueue(); + if (session[kCurrentStreamsCount] === 0 && this._freeSessionsCount > this.maxFreeSessions) { + session.close(); + } + if (listeners.length !== 0) { + this.getSession(normalizedOrigin, options, listeners); + listeners.length = 0; + } + session.on("remoteSettings", () => { + processListeners(); + closeCoveredSessions(this.sessions[normalizedOptions], session); + }); + }); + session[kRequest] = session.request; + session.request = (headers, streamOptions) => { + if (session[kGracefullyClosing]) { + throw new Error("The session is gracefully closing. No new streams are allowed."); + } + const stream = session[kRequest](headers, streamOptions); + session.ref(); + ++session[kCurrentStreamsCount]; + if (session[kCurrentStreamsCount] === session.remoteSettings.maxConcurrentStreams) { + this._freeSessionsCount--; + } + stream.once("close", () => { + wasFree = isFree(); + --session[kCurrentStreamsCount]; + if (!session.destroyed && !session.closed) { + closeSessionIfCovered(this.sessions[normalizedOptions], session); + if (isFree() && !session.closed) { + if (!wasFree) { + this._freeSessionsCount++; + wasFree = true; + } + const isEmpty = session[kCurrentStreamsCount] === 0; + if (isEmpty) { + session.unref(); + } + if (isEmpty && (this._freeSessionsCount > this.maxFreeSessions || session[kGracefullyClosing])) { + session.close(); + } else { + closeCoveredSessions(this.sessions[normalizedOptions], session); + processListeners(); + } + } + } + }); + return stream; + }; + } catch (error) { + for (const listener of listeners) { + listener.reject(error); + } + removeFromQueue(); + } + }; + entry.listeners = listeners; + entry.completed = false; + entry.destroyed = false; + this.queue[normalizedOptions][normalizedOrigin] = entry; + this._tryToCreateNewSession(normalizedOptions, normalizedOrigin); + }); } - var abs = isAbsolute(e) ? e : this._makeAbs(e); - if (this.mark) - e = this._mark(e); - if (this.absolute) - e = abs; - if (this.matches[index][e]) - return; - if (this.nodir) { - var c = this.cache[abs]; - if (c === "DIR" || Array.isArray(c)) - return; + request(origin, options, headers, streamOptions) { + return new Promise((resolve, reject) => { + this.getSession(origin, options, [{ + reject, + resolve: (session) => { + try { + resolve(session.request(headers, streamOptions)); + } catch (error) { + reject(error); + } + } + }]); + }); } - this.matches[index][e] = true; - var st = this.statCache[abs]; - if (st) - this.emit("stat", e, st); - this.emit("match", e); - }; - Glob.prototype._readdirInGlobStar = function(abs, cb) { - if (this.aborted) - return; - if (this.follow) - return this._readdir(abs, false, cb); - var lstatkey = "lstat\0" + abs; - var self2 = this; - var lstatcb = inflight(lstatkey, lstatcb_); - if (lstatcb) - self2.fs.lstat(abs, lstatcb); - function lstatcb_(er, lstat) { - if (er && er.code === "ENOENT") - return cb(); - var isSym = lstat && lstat.isSymbolicLink(); - self2.symlinks[abs] = isSym; - if (!isSym && lstat && !lstat.isDirectory()) { - self2.cache[abs] = "FILE"; - cb(); - } else - self2._readdir(abs, false, cb); + createConnection(origin, options) { + return Agent.connect(origin, options); } - }; - Glob.prototype._readdir = function(abs, inGlobStar, cb) { - if (this.aborted) - return; - cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); - if (!cb) - return; - if (inGlobStar && !ownProp(this.symlinks, abs)) - return this._readdirInGlobStar(abs, cb); - if (ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (!c || c === "FILE") - return cb(); - if (Array.isArray(c)) - return cb(null, c); + static connect(origin, options) { + options.ALPNProtocols = ["h2"]; + const port = origin.port || 443; + const host = origin.hostname || origin.host; + if (typeof options.servername === "undefined") { + options.servername = host; + } + return tls.connect(port, host, options); } - var self2 = this; - self2.fs.readdir(abs, readdirCb(this, abs, cb)); - }; - function readdirCb(self2, abs, cb) { - return function(er, entries) { - if (er) - self2._readdirError(abs, er, cb); - else - self2._readdirEntries(abs, entries, cb); - }; - } - Glob.prototype._readdirEntries = function(abs, entries, cb) { - if (this.aborted) - return; - if (!this.mark && !this.stat) { - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (abs === "/") - e = abs + e; - else - e = abs + "/" + e; - this.cache[e] = true; + closeFreeSessions() { + for (const sessions of Object.values(this.sessions)) { + for (const session of sessions) { + if (session[kCurrentStreamsCount] === 0) { + session.close(); + } + } } } - this.cache[abs] = entries; - return cb(null, entries); - }; - Glob.prototype._readdirError = function(f, er, cb) { - if (this.aborted) - return; - switch (er.code) { - case "ENOTSUP": - case "ENOTDIR": - var abs = this._makeAbs(f); - this.cache[abs] = "FILE"; - if (abs === this.cwdAbs) { - var error = new Error(er.code + " invalid cwd " + this.cwd); - error.path = this.cwd; - error.code = er.code; - this.emit("error", error); - this.abort(); + destroy(reason) { + for (const sessions of Object.values(this.sessions)) { + for (const session of sessions) { + session.destroy(reason); } - break; - case "ENOENT": - case "ELOOP": - case "ENAMETOOLONG": - case "UNKNOWN": - this.cache[this._makeAbs(f)] = false; - break; - default: - this.cache[this._makeAbs(f)] = false; - if (this.strict) { - this.emit("error", er); - this.abort(); + } + for (const entriesOfAuthority of Object.values(this.queue)) { + for (const entry of Object.values(entriesOfAuthority)) { + entry.destroyed = true; } - if (!this.silent) - console.error("glob error", er); - break; + } + this.queue = {}; } - return cb(); - }; - Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { - var self2 = this; - this._readdir(abs, inGlobStar, function(er, entries) { - self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); - }); - }; - Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { - if (!entries) - return cb(); - var remainWithoutGlobStar = remain.slice(1); - var gspref = prefix ? [prefix] : []; - var noGlobStar = gspref.concat(remainWithoutGlobStar); - this._process(noGlobStar, index, false, cb); - var isSym = this.symlinks[abs]; - var len = entries.length; - if (isSym && inGlobStar) - return cb(); - for (var i = 0; i < len; i++) { - var e = entries[i]; - if (e.charAt(0) === "." && !this.dot) - continue; - var instead = gspref.concat(entries[i], remainWithoutGlobStar); - this._process(instead, index, true, cb); - var below = gspref.concat(entries[i], remain); - this._process(below, index, true, cb); + get freeSessions() { + return getSessions({ agent: this, isFree: true }); } - cb(); - }; - Glob.prototype._processSimple = function(prefix, index, cb) { - var self2 = this; - this._stat(prefix, function(er, exists) { - self2._processSimple2(prefix, index, er, exists, cb); - }); - }; - Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - if (!exists) - return cb(); - if (prefix && isAbsolute(prefix) && !this.nomount) { - var trail = /[\/\\]$/.test(prefix); - if (prefix.charAt(0) === "/") { - prefix = path.join(this.root, prefix); - } else { - prefix = path.resolve(this.root, prefix); - if (trail) - prefix += "/"; - } + get busySessions() { + return getSessions({ agent: this, isFree: false }); } - if (process.platform === "win32") - prefix = prefix.replace(/\\/g, "/"); - this._emitMatch(index, prefix); - cb(); }; - Glob.prototype._stat = function(f, cb) { - var abs = this._makeAbs(f); - var needDir = f.slice(-1) === "/"; - if (f.length > this.maxLength) - return cb(); - if (!this.stat && ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (Array.isArray(c)) - c = "DIR"; - if (!needDir || c === "DIR") - return cb(null, c); - if (needDir && c === "FILE") - return cb(); + Agent.kCurrentStreamsCount = kCurrentStreamsCount; + Agent.kGracefullyClosing = kGracefullyClosing; + module2.exports = { + Agent, + globalAgent: new Agent() + }; + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/incoming-message.js +var require_incoming_message = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/incoming-message.js"(exports2, module2) { + "use strict"; + var { Readable } = require("stream"); + var IncomingMessage = class extends Readable { + constructor(socket, highWaterMark) { + super({ + highWaterMark, + autoDestroy: false + }); + this.statusCode = null; + this.statusMessage = ""; + this.httpVersion = "2.0"; + this.httpVersionMajor = 2; + this.httpVersionMinor = 0; + this.headers = {}; + this.trailers = {}; + this.req = null; + this.aborted = false; + this.complete = false; + this.upgrade = null; + this.rawHeaders = []; + this.rawTrailers = []; + this.socket = socket; + this.connection = socket; + this._dumped = false; + } + _destroy(error) { + this.req._request.destroy(error); + } + setTimeout(ms, callback) { + this.req.setTimeout(ms, callback); + return this; } - var exists; - var stat = this.statCache[abs]; - if (stat !== void 0) { - if (stat === false) - return cb(null, stat); - else { - var type = stat.isDirectory() ? "DIR" : "FILE"; - if (needDir && type === "FILE") - return cb(); - else - return cb(null, type, stat); + _dump() { + if (!this._dumped) { + this._dumped = true; + this.removeAllListeners("data"); + this.resume(); } } - var self2 = this; - var statcb = inflight("stat\0" + abs, lstatcb_); - if (statcb) - self2.fs.lstat(abs, statcb); - function lstatcb_(er, lstat) { - if (lstat && lstat.isSymbolicLink()) { - return self2.fs.stat(abs, function(er2, stat2) { - if (er2) - self2._stat2(f, abs, null, lstat, cb); - else - self2._stat2(f, abs, er2, stat2, cb); - }); - } else { - self2._stat2(f, abs, er, lstat, cb); + _read() { + if (this.req) { + this.req._request.resume(); } } }; - Glob.prototype._stat2 = function(f, abs, er, stat, cb) { - if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { - this.statCache[abs] = false; - return cb(); + module2.exports = IncomingMessage; + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/url-to-options.js +var require_url_to_options = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/url-to-options.js"(exports2, module2) { + "use strict"; + module2.exports = (url) => { + const options = { + protocol: url.protocol, + hostname: typeof url.hostname === "string" && url.hostname.startsWith("[") ? url.hostname.slice(1, -1) : url.hostname, + host: url.host, + hash: url.hash, + search: url.search, + pathname: url.pathname, + href: url.href, + path: `${url.pathname || ""}${url.search || ""}` + }; + if (typeof url.port === "string" && url.port.length !== 0) { + options.port = Number(url.port); } - var needDir = f.slice(-1) === "/"; - this.statCache[abs] = stat; - if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) - return cb(null, false, stat); - var c = true; - if (stat) - c = stat.isDirectory() ? "DIR" : "FILE"; - this.cache[abs] = this.cache[abs] || c; - if (needDir && c === "FILE") - return cb(); - return cb(null, c, stat); + if (url.username || url.password) { + options.auth = `${url.username || ""}:${url.password || ""}`; + } + return options; }; } }); -// ../../node_modules/.pnpm/rimraf@3.0.2/node_modules/rimraf/rimraf.js -var require_rimraf2 = __commonJS({ - "../../node_modules/.pnpm/rimraf@3.0.2/node_modules/rimraf/rimraf.js"(exports2, module2) { - var assert = require("assert"); - var path = require("path"); - var fs = require("fs"); - var glob = void 0; - try { - glob = require_glob(); - } catch (_err) { - } - var defaultGlobOpts = { - nosort: true, - silent: true - }; - var timeout = 0; - var isWindows = process.platform === "win32"; - var defaults = (options) => { - const methods = [ - "unlink", - "chmod", - "stat", - "lstat", - "rmdir", - "readdir" - ]; - methods.forEach((m) => { - options[m] = options[m] || fs[m]; - m = m + "Sync"; - options[m] = options[m] || fs[m]; - }); - options.maxBusyTries = options.maxBusyTries || 3; - options.emfileWait = options.emfileWait || 1e3; - if (options.glob === false) { - options.disableGlob = true; - } - if (options.disableGlob !== true && glob === void 0) { - throw Error("glob dependency not found, set `options.disableGlob = true` if intentional"); +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/proxy-events.js +var require_proxy_events = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/proxy-events.js"(exports2, module2) { + "use strict"; + module2.exports = (from, to, events) => { + for (const event of events) { + from.on(event, (...args2) => to.emit(event, ...args2)); } - options.disableGlob = options.disableGlob || false; - options.glob = options.glob || defaultGlobOpts; }; - var rimraf = (p, options, cb) => { - if (typeof options === "function") { - cb = options; - options = {}; + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/is-request-pseudo-header.js +var require_is_request_pseudo_header = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/is-request-pseudo-header.js"(exports2, module2) { + "use strict"; + module2.exports = (header) => { + switch (header) { + case ":method": + case ":scheme": + case ":authority": + case ":path": + return true; + default: + return false; } - assert(p, "rimraf: missing path"); - assert.equal(typeof p, "string", "rimraf: path should be a string"); - assert.equal(typeof cb, "function", "rimraf: callback function required"); - assert(options, "rimraf: invalid options argument provided"); - assert.equal(typeof options, "object", "rimraf: options should be object"); - defaults(options); - let busyTries = 0; - let errState = null; - let n = 0; - const next = (er) => { - errState = errState || er; - if (--n === 0) - cb(errState); - }; - const afterGlob = (er, results) => { - if (er) - return cb(er); - n = results.length; - if (n === 0) - return cb(); - results.forEach((p2) => { - const CB = (er2) => { - if (er2) { - if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) { - busyTries++; - return setTimeout(() => rimraf_(p2, options, CB), busyTries * 100); - } - if (er2.code === "EMFILE" && timeout < options.emfileWait) { - return setTimeout(() => rimraf_(p2, options, CB), timeout++); - } - if (er2.code === "ENOENT") - er2 = null; - } - timeout = 0; - next(er2); - }; - rimraf_(p2, options, CB); - }); + }; + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/errors.js +var require_errors7 = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/errors.js"(exports2, module2) { + "use strict"; + var makeError = (Base, key, getMessage) => { + module2.exports[key] = class NodeError extends Base { + constructor(...args2) { + super(typeof getMessage === "string" ? getMessage : getMessage(args2)); + this.name = `${super.name} [${key}]`; + this.code = key; + } }; - if (options.disableGlob || !glob.hasMagic(p)) - return afterGlob(null, [p]); - options.lstat(p, (er, stat) => { - if (!er) - return afterGlob(null, [p]); - glob(p, options.glob, afterGlob); - }); }; - var rimraf_ = (p, options, cb) => { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.lstat(p, (er, st) => { - if (er && er.code === "ENOENT") - return cb(null); - if (er && er.code === "EPERM" && isWindows) - fixWinEPERM(p, options, er, cb); - if (st && st.isDirectory()) - return rmdir(p, options, er, cb); - options.unlink(p, (er2) => { - if (er2) { - if (er2.code === "ENOENT") - return cb(null); - if (er2.code === "EPERM") - return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); - if (er2.code === "EISDIR") - return rmdir(p, options, er2, cb); - } - return cb(er2); + makeError(TypeError, "ERR_INVALID_ARG_TYPE", (args2) => { + const type = args2[0].includes(".") ? "property" : "argument"; + let valid = args2[1]; + const isManyTypes = Array.isArray(valid); + if (isManyTypes) { + valid = `${valid.slice(0, -1).join(", ")} or ${valid.slice(-1)}`; + } + return `The "${args2[0]}" ${type} must be ${isManyTypes ? "one of" : "of"} type ${valid}. Received ${typeof args2[2]}`; + }); + makeError(TypeError, "ERR_INVALID_PROTOCOL", (args2) => { + return `Protocol "${args2[0]}" not supported. Expected "${args2[1]}"`; + }); + makeError(Error, "ERR_HTTP_HEADERS_SENT", (args2) => { + return `Cannot ${args2[0]} headers after they are sent to the client`; + }); + makeError(TypeError, "ERR_INVALID_HTTP_TOKEN", (args2) => { + return `${args2[0]} must be a valid HTTP token [${args2[1]}]`; + }); + makeError(TypeError, "ERR_HTTP_INVALID_HEADER_VALUE", (args2) => { + return `Invalid value "${args2[0]} for header "${args2[1]}"`; + }); + makeError(TypeError, "ERR_INVALID_CHAR", (args2) => { + return `Invalid character in ${args2[0]} [${args2[1]}]`; + }); + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/client-request.js +var require_client_request = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/client-request.js"(exports2, module2) { + "use strict"; + var http2 = require("http2"); + var { Writable } = require("stream"); + var { Agent, globalAgent } = require_agent6(); + var IncomingMessage = require_incoming_message(); + var urlToOptions = require_url_to_options(); + var proxyEvents = require_proxy_events(); + var isRequestPseudoHeader = require_is_request_pseudo_header(); + var { + ERR_INVALID_ARG_TYPE, + ERR_INVALID_PROTOCOL, + ERR_HTTP_HEADERS_SENT, + ERR_INVALID_HTTP_TOKEN, + ERR_HTTP_INVALID_HEADER_VALUE, + ERR_INVALID_CHAR + } = require_errors7(); + var { + HTTP2_HEADER_STATUS, + HTTP2_HEADER_METHOD, + HTTP2_HEADER_PATH, + HTTP2_METHOD_CONNECT + } = http2.constants; + var kHeaders = Symbol("headers"); + var kOrigin = Symbol("origin"); + var kSession = Symbol("session"); + var kOptions = Symbol("options"); + var kFlushedHeaders = Symbol("flushedHeaders"); + var kJobs = Symbol("jobs"); + var isValidHttpToken = /^[\^`\-\w!#$%&*+.|~]+$/; + var isInvalidHeaderValue = /[^\t\u0020-\u007E\u0080-\u00FF]/; + var ClientRequest = class extends Writable { + constructor(input, options, callback) { + super({ + autoDestroy: false }); - }); - }; - var fixWinEPERM = (p, options, er, cb) => { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.chmod(p, 438, (er2) => { - if (er2) - cb(er2.code === "ENOENT" ? null : er); - else - options.stat(p, (er3, stats) => { - if (er3) - cb(er3.code === "ENOENT" ? null : er); - else if (stats.isDirectory()) - rmdir(p, options, er, cb); - else - options.unlink(p, cb); - }); - }); - }; - var fixWinEPERMSync = (p, options, er) => { - assert(p); - assert(options); - try { - options.chmodSync(p, 438); - } catch (er2) { - if (er2.code === "ENOENT") + const hasInput = typeof input === "string" || input instanceof URL; + if (hasInput) { + input = urlToOptions(input instanceof URL ? input : new URL(input)); + } + if (typeof options === "function" || options === void 0) { + callback = options; + options = hasInput ? input : { ...input }; + } else { + options = { ...input, ...options }; + } + if (options.h2session) { + this[kSession] = options.h2session; + } else if (options.agent === false) { + this.agent = new Agent({ maxFreeSessions: 0 }); + } else if (typeof options.agent === "undefined" || options.agent === null) { + if (typeof options.createConnection === "function") { + this.agent = new Agent({ maxFreeSessions: 0 }); + this.agent.createConnection = options.createConnection; + } else { + this.agent = globalAgent; + } + } else if (typeof options.agent.request === "function") { + this.agent = options.agent; + } else { + throw new ERR_INVALID_ARG_TYPE("options.agent", ["Agent-like Object", "undefined", "false"], options.agent); + } + if (options.protocol && options.protocol !== "https:") { + throw new ERR_INVALID_PROTOCOL(options.protocol, "https:"); + } + const port = options.port || options.defaultPort || this.agent && this.agent.defaultPort || 443; + const host = options.hostname || options.host || "localhost"; + delete options.hostname; + delete options.host; + delete options.port; + const { timeout } = options; + options.timeout = void 0; + this[kHeaders] = /* @__PURE__ */ Object.create(null); + this[kJobs] = []; + this.socket = null; + this.connection = null; + this.method = options.method || "GET"; + this.path = options.path; + this.res = null; + this.aborted = false; + this.reusedSocket = false; + if (options.headers) { + for (const [header, value] of Object.entries(options.headers)) { + this.setHeader(header, value); + } + } + if (options.auth && !("authorization" in this[kHeaders])) { + this[kHeaders].authorization = "Basic " + Buffer.from(options.auth).toString("base64"); + } + options.session = options.tlsSession; + options.path = options.socketPath; + this[kOptions] = options; + if (port === 443) { + this[kOrigin] = `https://${host}`; + if (!(":authority" in this[kHeaders])) { + this[kHeaders][":authority"] = host; + } + } else { + this[kOrigin] = `https://${host}:${port}`; + if (!(":authority" in this[kHeaders])) { + this[kHeaders][":authority"] = `${host}:${port}`; + } + } + if (timeout) { + this.setTimeout(timeout); + } + if (callback) { + this.once("response", callback); + } + this[kFlushedHeaders] = false; + } + get method() { + return this[kHeaders][HTTP2_HEADER_METHOD]; + } + set method(value) { + if (value) { + this[kHeaders][HTTP2_HEADER_METHOD] = value.toUpperCase(); + } + } + get path() { + return this[kHeaders][HTTP2_HEADER_PATH]; + } + set path(value) { + if (value) { + this[kHeaders][HTTP2_HEADER_PATH] = value; + } + } + get _mustNotHaveABody() { + return this.method === "GET" || this.method === "HEAD" || this.method === "DELETE"; + } + _write(chunk, encoding, callback) { + if (this._mustNotHaveABody) { + callback(new Error("The GET, HEAD and DELETE methods must NOT have a body")); return; - else - throw er; + } + this.flushHeaders(); + const callWrite = () => this._request.write(chunk, encoding, callback); + if (this._request) { + callWrite(); + } else { + this[kJobs].push(callWrite); + } } - let stats; - try { - stats = options.statSync(p); - } catch (er3) { - if (er3.code === "ENOENT") + _final(callback) { + if (this.destroyed) { return; - else - throw er; + } + this.flushHeaders(); + const callEnd = () => { + if (this._mustNotHaveABody) { + callback(); + return; + } + this._request.end(callback); + }; + if (this._request) { + callEnd(); + } else { + this[kJobs].push(callEnd); + } } - if (stats.isDirectory()) - rmdirSync(p, options, er); - else - options.unlinkSync(p); - }; - var rmdir = (p, options, originalEr, cb) => { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.rmdir(p, (er) => { - if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) - rmkids(p, options, cb); - else if (er && er.code === "ENOTDIR") - cb(originalEr); - else - cb(er); - }); - }; - var rmkids = (p, options, cb) => { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.readdir(p, (er, files) => { - if (er) - return cb(er); - let n = files.length; - if (n === 0) - return options.rmdir(p, cb); - let errState; - files.forEach((f) => { - rimraf(path.join(p, f), options, (er2) => { - if (errState) - return; - if (er2) - return cb(errState = er2); - if (--n === 0) - options.rmdir(p, cb); - }); - }); - }); - }; - var rimrafSync = (p, options) => { - options = options || {}; - defaults(options); - assert(p, "rimraf: missing path"); - assert.equal(typeof p, "string", "rimraf: path should be a string"); - assert(options, "rimraf: missing options"); - assert.equal(typeof options, "object", "rimraf: options should be object"); - let results; - if (options.disableGlob || !glob.hasMagic(p)) { - results = [p]; - } else { - try { - options.lstatSync(p); - results = [p]; - } catch (er) { - results = glob.sync(p, options.glob); + abort() { + if (this.res && this.res.complete) { + return; + } + if (!this.aborted) { + process.nextTick(() => this.emit("abort")); + } + this.aborted = true; + this.destroy(); + } + _destroy(error, callback) { + if (this.res) { + this.res._dump(); + } + if (this._request) { + this._request.destroy(); + } + callback(error); + } + async flushHeaders() { + if (this[kFlushedHeaders] || this.destroyed) { + return; + } + this[kFlushedHeaders] = true; + const isConnectMethod = this.method === HTTP2_METHOD_CONNECT; + const onStream = (stream) => { + this._request = stream; + if (this.destroyed) { + stream.destroy(); + return; + } + if (!isConnectMethod) { + proxyEvents(stream, this, ["timeout", "continue", "close", "error"]); + } + const waitForEnd = (fn2) => { + return (...args2) => { + if (!this.writable && !this.destroyed) { + fn2(...args2); + } else { + this.once("finish", () => { + fn2(...args2); + }); + } + }; + }; + stream.once("response", waitForEnd((headers, flags, rawHeaders) => { + const response = new IncomingMessage(this.socket, stream.readableHighWaterMark); + this.res = response; + response.req = this; + response.statusCode = headers[HTTP2_HEADER_STATUS]; + response.headers = headers; + response.rawHeaders = rawHeaders; + response.once("end", () => { + if (this.aborted) { + response.aborted = true; + response.emit("aborted"); + } else { + response.complete = true; + response.socket = null; + response.connection = null; + } + }); + if (isConnectMethod) { + response.upgrade = true; + if (this.emit("connect", response, stream, Buffer.alloc(0))) { + this.emit("close"); + } else { + stream.destroy(); + } + } else { + stream.on("data", (chunk) => { + if (!response._dumped && !response.push(chunk)) { + stream.pause(); + } + }); + stream.once("end", () => { + response.push(null); + }); + if (!this.emit("response", response)) { + response._dump(); + } + } + })); + stream.once("headers", waitForEnd( + (headers) => this.emit("information", { statusCode: headers[HTTP2_HEADER_STATUS] }) + )); + stream.once("trailers", waitForEnd((trailers, flags, rawTrailers) => { + const { res } = this; + res.trailers = trailers; + res.rawTrailers = rawTrailers; + })); + const { socket } = stream.session; + this.socket = socket; + this.connection = socket; + for (const job of this[kJobs]) { + job(); + } + this.emit("socket", this.socket); + }; + if (this[kSession]) { + try { + onStream(this[kSession].request(this[kHeaders])); + } catch (error) { + this.emit("error", error); + } + } else { + this.reusedSocket = true; + try { + onStream(await this.agent.request(this[kOrigin], this[kOptions], this[kHeaders])); + } catch (error) { + this.emit("error", error); + } } } - if (!results.length) - return; - for (let i = 0; i < results.length; i++) { - const p2 = results[i]; - let st; - try { - st = options.lstatSync(p2); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "EPERM" && isWindows) - fixWinEPERMSync(p2, options, er); + getHeader(name) { + if (typeof name !== "string") { + throw new ERR_INVALID_ARG_TYPE("name", "string", name); } - try { - if (st && st.isDirectory()) - rmdirSync(p2, options, null); - else - options.unlinkSync(p2); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "EPERM") - return isWindows ? fixWinEPERMSync(p2, options, er) : rmdirSync(p2, options, er); - if (er.code !== "EISDIR") - throw er; - rmdirSync(p2, options, er); + return this[kHeaders][name.toLowerCase()]; + } + get headersSent() { + return this[kFlushedHeaders]; + } + removeHeader(name) { + if (typeof name !== "string") { + throw new ERR_INVALID_ARG_TYPE("name", "string", name); + } + if (this.headersSent) { + throw new ERR_HTTP_HEADERS_SENT("remove"); } + delete this[kHeaders][name.toLowerCase()]; } - }; - var rmdirSync = (p, options, originalEr) => { - assert(p); - assert(options); - try { - options.rmdirSync(p); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "ENOTDIR") - throw originalEr; - if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") - rmkidsSync(p, options); + setHeader(name, value) { + if (this.headersSent) { + throw new ERR_HTTP_HEADERS_SENT("set"); + } + if (typeof name !== "string" || !isValidHttpToken.test(name) && !isRequestPseudoHeader(name)) { + throw new ERR_INVALID_HTTP_TOKEN("Header name", name); + } + if (typeof value === "undefined") { + throw new ERR_HTTP_INVALID_HEADER_VALUE(value, name); + } + if (isInvalidHeaderValue.test(value)) { + throw new ERR_INVALID_CHAR("header content", name); + } + this[kHeaders][name.toLowerCase()] = value; + } + setNoDelay() { + } + setSocketKeepAlive() { + } + setTimeout(ms, callback) { + const applyTimeout = () => this._request.setTimeout(ms, callback); + if (this._request) { + applyTimeout(); + } else { + this[kJobs].push(applyTimeout); + } + return this; + } + get maxHeadersCount() { + if (!this.destroyed && this._request) { + return this._request.session.localSettings.maxHeaderListSize; + } + return void 0; + } + set maxHeadersCount(_value) { } }; - var rmkidsSync = (p, options) => { - assert(p); - assert(options); - options.readdirSync(p).forEach((f) => rimrafSync(path.join(p, f), options)); - const retries = isWindows ? 100 : 1; - let i = 0; - do { - let threw = true; + module2.exports = ClientRequest; + } +}); + +// ../node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js +var require_resolve_alpn = __commonJS({ + "../node_modules/.pnpm/resolve-alpn@1.2.1/node_modules/resolve-alpn/index.js"(exports2, module2) { + "use strict"; + var tls = require("tls"); + module2.exports = (options = {}, connect = tls.connect) => new Promise((resolve, reject) => { + let timeout = false; + let socket; + const callback = async () => { + await socketPromise; + socket.off("timeout", onTimeout); + socket.off("error", reject); + if (options.resolveSocket) { + resolve({ alpnProtocol: socket.alpnProtocol, socket, timeout }); + if (timeout) { + await Promise.resolve(); + socket.emit("timeout"); + } + } else { + socket.destroy(); + resolve({ alpnProtocol: socket.alpnProtocol, timeout }); + } + }; + const onTimeout = async () => { + timeout = true; + callback(); + }; + const socketPromise = (async () => { try { - const ret = options.rmdirSync(p, options); - threw = false; - return ret; - } finally { - if (++i < retries && threw) - continue; + socket = await connect(options, callback); + socket.on("error", reject); + socket.once("timeout", onTimeout); + } catch (error) { + reject(error); } - } while (true); + })(); + }); + } +}); + +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/calculate-server-name.js +var require_calculate_server_name = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/utils/calculate-server-name.js"(exports2, module2) { + "use strict"; + var net = require("net"); + module2.exports = (options) => { + let servername = options.host; + const hostHeader = options.headers && options.headers.host; + if (hostHeader) { + if (hostHeader.startsWith("[")) { + const index = hostHeader.indexOf("]"); + if (index === -1) { + servername = hostHeader; + } else { + servername = hostHeader.slice(1, -1); + } + } else { + servername = hostHeader.split(":", 1)[0]; + } + } + if (net.isIP(servername)) { + return ""; + } + return servername; }; - module2.exports = rimraf; - rimraf.sync = rimrafSync; } }); -// ../../node_modules/.pnpm/indent-string@4.0.0/node_modules/indent-string/index.js -var require_indent_string = __commonJS({ - "../../node_modules/.pnpm/indent-string@4.0.0/node_modules/indent-string/index.js"(exports2, module2) { +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/auto.js +var require_auto = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/auto.js"(exports2, module2) { "use strict"; - module2.exports = (string, count = 1, options) => { - options = { - indent: " ", - includeEmptyLines: false, - ...options + var http = require("http"); + var https = require("https"); + var resolveALPN = require_resolve_alpn(); + var QuickLRU = require_quick_lru2(); + var Http2ClientRequest = require_client_request(); + var calculateServerName = require_calculate_server_name(); + var urlToOptions = require_url_to_options(); + var cache = new QuickLRU({ maxSize: 100 }); + var queue = /* @__PURE__ */ new Map(); + var installSocket = (agent, socket, options) => { + socket._httpMessage = { shouldKeepAlive: true }; + const onFree = () => { + agent.emit("free", socket, options); }; - if (typeof string !== "string") { - throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof string}\``); + socket.on("free", onFree); + const onClose = () => { + agent.removeSocket(socket, options); + }; + socket.on("close", onClose); + const onRemove = () => { + agent.removeSocket(socket, options); + socket.off("close", onClose); + socket.off("free", onFree); + socket.off("agentRemove", onRemove); + }; + socket.on("agentRemove", onRemove); + agent.emit("free", socket, options); + }; + var resolveProtocol = async (options) => { + const name = `${options.host}:${options.port}:${options.ALPNProtocols.sort()}`; + if (!cache.has(name)) { + if (queue.has(name)) { + const result2 = await queue.get(name); + return result2.alpnProtocol; + } + const { path: path2, agent } = options; + options.path = options.socketPath; + const resultPromise = resolveALPN(options); + queue.set(name, resultPromise); + try { + const { socket, alpnProtocol } = await resultPromise; + cache.set(name, alpnProtocol); + options.path = path2; + if (alpnProtocol === "h2") { + socket.destroy(); + } else { + const { globalAgent } = https; + const defaultCreateConnection = https.Agent.prototype.createConnection; + if (agent) { + if (agent.createConnection === defaultCreateConnection) { + installSocket(agent, socket, options); + } else { + socket.destroy(); + } + } else if (globalAgent.createConnection === defaultCreateConnection) { + installSocket(globalAgent, socket, options); + } else { + socket.destroy(); + } + } + queue.delete(name); + return alpnProtocol; + } catch (error) { + queue.delete(name); + throw error; + } } - if (typeof count !== "number") { - throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof count}\``); + return cache.get(name); + }; + module2.exports = async (input, options, callback) => { + if (typeof input === "string" || input instanceof URL) { + input = urlToOptions(new URL(input)); } - if (typeof options.indent !== "string") { - throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof options.indent}\``); + if (typeof options === "function") { + callback = options; + options = void 0; } - if (count === 0) { - return string; + options = { + ALPNProtocols: ["h2", "http/1.1"], + ...input, + ...options, + resolveSocket: true + }; + if (!Array.isArray(options.ALPNProtocols) || options.ALPNProtocols.length === 0) { + throw new Error("The `ALPNProtocols` option must be an Array with at least one entry"); } - const regex = options.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return string.replace(regex, options.indent.repeat(count)); + options.protocol = options.protocol || "https:"; + const isHttps = options.protocol === "https:"; + options.host = options.hostname || options.host || "localhost"; + options.session = options.tlsSession; + options.servername = options.servername || calculateServerName(options); + options.port = options.port || (isHttps ? 443 : 80); + options._defaultAgent = isHttps ? https.globalAgent : http.globalAgent; + const agents = options.agent; + if (agents) { + if (agents.addRequest) { + throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties"); + } + options.agent = agents[isHttps ? "https" : "http"]; + } + if (isHttps) { + const protocol = await resolveProtocol(options); + if (protocol === "h2") { + if (agents) { + options.agent = agents.http2; + } + return new Http2ClientRequest(options, callback); + } + } + return http.request(options, callback); }; + module2.exports.protocolCache = cache; } }); -// ../../node_modules/.pnpm/clean-stack@2.2.0/node_modules/clean-stack/index.js -var require_clean_stack = __commonJS({ - "../../node_modules/.pnpm/clean-stack@2.2.0/node_modules/clean-stack/index.js"(exports2, module2) { +// ../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/index.js +var require_source6 = __commonJS({ + "../node_modules/.pnpm/http2-wrapper@1.0.3/node_modules/http2-wrapper/source/index.js"(exports2, module2) { "use strict"; - var os = require("os"); - var extractPathRegex = /\s+at.*(?:\(|\s)(.*)\)?/; - var pathRegex = /^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/; - var homeDir = typeof os.homedir === "undefined" ? "" : os.homedir(); - module2.exports = (stack2, options) => { - options = Object.assign({ pretty: false }, options); - return stack2.replace(/\\/g, "/").split("\n").filter((line) => { - const pathMatches = line.match(extractPathRegex); - if (pathMatches === null || !pathMatches[1]) { - return true; - } - const match = pathMatches[1]; - if (match.includes(".app/Contents/Resources/electron.asar") || match.includes(".app/Contents/Resources/default_app.asar")) { - return false; - } - return !pathRegex.test(match); - }).filter((line) => line.trim() !== "").map((line) => { - if (options.pretty) { - return line.replace(extractPathRegex, (m, p1) => m.replace(p1, p1.replace(homeDir, "~"))); + var http2 = require("http2"); + var agent = require_agent6(); + var ClientRequest = require_client_request(); + var IncomingMessage = require_incoming_message(); + var auto = require_auto(); + var request = (url, options, callback) => { + return new ClientRequest(url, options, callback); + }; + var get = (url, options, callback) => { + const req = new ClientRequest(url, options, callback); + req.end(); + return req; + }; + module2.exports = { + ...http2, + ClientRequest, + IncomingMessage, + ...agent, + request, + get, + auto + }; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/is-form-data.js +var require_is_form_data = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/is-form-data.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var is_1 = require_dist14(); + exports2.default = (body) => is_1.default.nodeStream(body) && is_1.default.function_(body.getBoundary); + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/get-body-size.js +var require_get_body_size = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/get-body-size.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fs_1 = require("fs"); + var util_1 = require("util"); + var is_1 = require_dist14(); + var is_form_data_1 = require_is_form_data(); + var statAsync = util_1.promisify(fs_1.stat); + exports2.default = async (body, headers) => { + if (headers && "content-length" in headers) { + return Number(headers["content-length"]); + } + if (!body) { + return 0; + } + if (is_1.default.string(body)) { + return Buffer.byteLength(body); + } + if (is_1.default.buffer(body)) { + return body.length; + } + if (is_form_data_1.default(body)) { + return util_1.promisify(body.getLength.bind(body))(); + } + if (body instanceof fs_1.ReadStream) { + const { size } = await statAsync(body.path); + if (size === 0) { + return void 0; } - return line; - }).join("\n"); + return size; + } + return void 0; }; } }); -// ../../node_modules/.pnpm/aggregate-error@3.1.0/node_modules/aggregate-error/index.js -var require_aggregate_error = __commonJS({ - "../../node_modules/.pnpm/aggregate-error@3.1.0/node_modules/aggregate-error/index.js"(exports2, module2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/proxy-events.js +var require_proxy_events2 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/proxy-events.js"(exports2) { "use strict"; - var indentString = require_indent_string(); - var cleanStack = require_clean_stack(); - var cleanInternalStack = (stack2) => stack2.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g, ""); - var AggregateError2 = class extends Error { - constructor(errors) { - if (!Array.isArray(errors)) { - throw new TypeError(`Expected input to be an Array, got ${typeof errors}`); + Object.defineProperty(exports2, "__esModule", { value: true }); + function default_1(from, to, events) { + const fns = {}; + for (const event of events) { + fns[event] = (...args2) => { + to.emit(event, ...args2); + }; + from.on(event, fns[event]); + } + return () => { + for (const event of events) { + from.off(event, fns[event]); } - errors = [...errors].map((error) => { - if (error instanceof Error) { - return error; - } - if (error !== null && typeof error === "object") { - return Object.assign(new Error(error.message), error); + }; + } + exports2.default = default_1; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/unhandle.js +var require_unhandle = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/unhandle.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.default = () => { + const handlers = []; + return { + once(origin, event, fn2) { + origin.once(event, fn2); + handlers.push({ origin, event, fn: fn2 }); + }, + unhandleAll() { + for (const handler of handlers) { + const { origin, event, fn: fn2 } = handler; + origin.removeListener(event, fn2); } - return new Error(error); - }); - let message2 = errors.map((error) => { - return typeof error.stack === "string" ? cleanInternalStack(cleanStack(error.stack)) : String(error); - }).join("\n"); - message2 = "\n" + indentString(message2, 4); - super(message2); - this.name = "AggregateError"; - Object.defineProperty(this, "_errors", { value: errors }); - } - *[Symbol.iterator]() { - for (const error of this._errors) { - yield error; + handlers.length = 0; } - } + }; }; - module2.exports = AggregateError2; } }); -// ../../node_modules/.pnpm/p-map@4.0.0/node_modules/p-map/index.js -var require_p_map2 = __commonJS({ - "../../node_modules/.pnpm/p-map@4.0.0/node_modules/p-map/index.js"(exports2, module2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/timed-out.js +var require_timed_out = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/timed-out.js"(exports2) { "use strict"; - var AggregateError2 = require_aggregate_error(); - module2.exports = async (iterable, mapper, { - concurrency = Infinity, - stopOnError = true - } = {}) => { - return new Promise((resolve, reject) => { - if (typeof mapper !== "function") { - throw new TypeError("Mapper function is required"); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TimeoutError = void 0; + var net = require("net"); + var unhandle_1 = require_unhandle(); + var reentry = Symbol("reentry"); + var noop = () => { + }; + var TimeoutError = class extends Error { + constructor(threshold, event) { + super(`Timeout awaiting '${event}' for ${threshold}ms`); + this.event = event; + this.name = "TimeoutError"; + this.code = "ETIMEDOUT"; + } + }; + exports2.TimeoutError = TimeoutError; + exports2.default = (request, delays, options) => { + if (reentry in request) { + return noop; + } + request[reentry] = true; + const cancelers = []; + const { once, unhandleAll } = unhandle_1.default(); + const addTimeout = (delay, callback, event) => { + var _a; + const timeout = setTimeout(callback, delay, delay, event); + (_a = timeout.unref) === null || _a === void 0 ? void 0 : _a.call(timeout); + const cancel = () => { + clearTimeout(timeout); + }; + cancelers.push(cancel); + return cancel; + }; + const { host, hostname } = options; + const timeoutHandler = (delay, event) => { + request.destroy(new TimeoutError(delay, event)); + }; + const cancelTimeouts = () => { + for (const cancel of cancelers) { + cancel(); } - if (!((Number.isSafeInteger(concurrency) || concurrency === Infinity) && concurrency >= 1)) { - throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`); + unhandleAll(); + }; + request.once("error", (error) => { + cancelTimeouts(); + if (request.listenerCount("error") === 0) { + throw error; } - const result = []; - const errors = []; - const iterator = iterable[Symbol.iterator](); - let isRejected = false; - let isIterableDone = false; - let resolvingCount = 0; - let currentIndex = 0; - const next = () => { - if (isRejected) { - return; - } - const nextItem = iterator.next(); - const index = currentIndex; - currentIndex++; - if (nextItem.done) { - isIterableDone = true; - if (resolvingCount === 0) { - if (!stopOnError && errors.length !== 0) { - reject(new AggregateError2(errors)); - } else { - resolve(result); - } + }); + request.once("close", cancelTimeouts); + once(request, "response", (response) => { + once(response, "end", cancelTimeouts); + }); + if (typeof delays.request !== "undefined") { + addTimeout(delays.request, timeoutHandler, "request"); + } + if (typeof delays.socket !== "undefined") { + const socketTimeoutHandler = () => { + timeoutHandler(delays.socket, "socket"); + }; + request.setTimeout(delays.socket, socketTimeoutHandler); + cancelers.push(() => { + request.removeListener("timeout", socketTimeoutHandler); + }); + } + once(request, "socket", (socket) => { + var _a; + const { socketPath } = request; + if (socket.connecting) { + const hasPath = Boolean(socketPath !== null && socketPath !== void 0 ? socketPath : net.isIP((_a = hostname !== null && hostname !== void 0 ? hostname : host) !== null && _a !== void 0 ? _a : "") !== 0); + if (typeof delays.lookup !== "undefined" && !hasPath && typeof socket.address().address === "undefined") { + const cancelTimeout = addTimeout(delays.lookup, timeoutHandler, "lookup"); + once(socket, "lookup", cancelTimeout); + } + if (typeof delays.connect !== "undefined") { + const timeConnect = () => addTimeout(delays.connect, timeoutHandler, "connect"); + if (hasPath) { + once(socket, "connect", timeConnect()); + } else { + once(socket, "lookup", (error) => { + if (error === null) { + once(socket, "connect", timeConnect()); + } + }); } - return; } - resolvingCount++; - (async () => { - try { - const element = await nextItem.value; - result[index] = await mapper(element, index); - resolvingCount--; - next(); - } catch (error) { - if (stopOnError) { - isRejected = true; - reject(error); - } else { - errors.push(error); - resolvingCount--; - next(); - } - } - })(); - }; - for (let i = 0; i < concurrency; i++) { - next(); - if (isIterableDone) { - break; + if (typeof delays.secureConnect !== "undefined" && options.protocol === "https:") { + once(socket, "connect", () => { + const cancelTimeout = addTimeout(delays.secureConnect, timeoutHandler, "secureConnect"); + once(socket, "secureConnect", cancelTimeout); + }); + } + } + if (typeof delays.send !== "undefined") { + const timeRequest = () => addTimeout(delays.send, timeoutHandler, "send"); + if (socket.connecting) { + once(socket, "connect", () => { + once(request, "upload-complete", timeRequest()); + }); + } else { + once(request, "upload-complete", timeRequest()); } } }); + if (typeof delays.response !== "undefined") { + once(request, "upload-complete", () => { + const cancelTimeout = addTimeout(delays.response, timeoutHandler, "response"); + once(request, "response", cancelTimeout); + }); + } + return cancelTimeouts; }; } }); -// ../../node_modules/.pnpm/del@6.0.0/node_modules/del/index.js -var require_del = __commonJS({ - "../../node_modules/.pnpm/del@6.0.0/node_modules/del/index.js"(exports2, module2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/url-to-options.js +var require_url_to_options2 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/url-to-options.js"(exports2) { "use strict"; - var { promisify } = require("util"); - var path = require("path"); - var globby = require_globby(); - var isGlob = require_is_glob(); - var slash = require_slash(); - var gracefulFs = require_graceful_fs(); - var isPathCwd = require_is_path_cwd(); - var isPathInside = require_is_path_inside(); - var rimraf = require_rimraf2(); - var pMap = require_p_map2(); - var rimrafP = promisify(rimraf); - var rimrafOptions = { - glob: false, - unlink: gracefulFs.unlink, - unlinkSync: gracefulFs.unlinkSync, - chmod: gracefulFs.chmod, - chmodSync: gracefulFs.chmodSync, - stat: gracefulFs.stat, - statSync: gracefulFs.statSync, - lstat: gracefulFs.lstat, - lstatSync: gracefulFs.lstatSync, - rmdir: gracefulFs.rmdir, - rmdirSync: gracefulFs.rmdirSync, - readdir: gracefulFs.readdir, - readdirSync: gracefulFs.readdirSync - }; - function safeCheck(file, cwd) { - if (isPathCwd(file)) { - throw new Error("Cannot delete the current working directory. Can be overridden with the `force` option."); + Object.defineProperty(exports2, "__esModule", { value: true }); + var is_1 = require_dist14(); + exports2.default = (url) => { + url = url; + const options = { + protocol: url.protocol, + hostname: is_1.default.string(url.hostname) && url.hostname.startsWith("[") ? url.hostname.slice(1, -1) : url.hostname, + host: url.host, + hash: url.hash, + search: url.search, + pathname: url.pathname, + href: url.href, + path: `${url.pathname || ""}${url.search || ""}` + }; + if (is_1.default.string(url.port) && url.port.length > 0) { + options.port = Number(url.port); } - if (!isPathInside(file, cwd)) { - throw new Error("Cannot delete files/directories outside the current working directory. Can be overridden with the `force` option."); + if (url.username || url.password) { + options.auth = `${url.username || ""}:${url.password || ""}`; } - } - function normalizePatterns(patterns) { - patterns = Array.isArray(patterns) ? patterns : [patterns]; - patterns = patterns.map((pattern) => { - if (process.platform === "win32" && isGlob(pattern) === false) { - return slash(pattern); + return options; + }; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/options-to-url.js +var require_options_to_url = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/options-to-url.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var url_1 = require("url"); + var keys = [ + "protocol", + "host", + "hostname", + "port", + "pathname", + "search" + ]; + exports2.default = (origin, options) => { + var _a, _b; + if (options.path) { + if (options.pathname) { + throw new TypeError("Parameters `path` and `pathname` are mutually exclusive."); } - return pattern; - }); - return patterns; - } - module2.exports = async (patterns, { force, dryRun, cwd = process.cwd(), ...options } = {}) => { - options = { - expandDirectories: false, - onlyFiles: false, - followSymbolicLinks: false, - cwd, - ...options - }; - patterns = normalizePatterns(patterns); - const files = (await globby(patterns, options)).sort((a, b) => b.localeCompare(a)); - const mapper = async (file) => { - file = path.resolve(cwd, file); - if (!force) { - safeCheck(file, cwd); + if (options.search) { + throw new TypeError("Parameters `path` and `search` are mutually exclusive."); } - if (!dryRun) { - await rimrafP(file, rimrafOptions); + if (options.searchParams) { + throw new TypeError("Parameters `path` and `searchParams` are mutually exclusive."); } - return file; - }; - const removedFiles = await pMap(files, mapper, options); - removedFiles.sort((a, b) => a.localeCompare(b)); - return removedFiles; - }; - module2.exports.sync = (patterns, { force, dryRun, cwd = process.cwd(), ...options } = {}) => { - options = { - expandDirectories: false, - onlyFiles: false, - followSymbolicLinks: false, - cwd, - ...options - }; - patterns = normalizePatterns(patterns); - const files = globby.sync(patterns, options).sort((a, b) => b.localeCompare(a)); - const removedFiles = files.map((file) => { - file = path.resolve(cwd, file); - if (!force) { - safeCheck(file, cwd); + } + if (options.search && options.searchParams) { + throw new TypeError("Parameters `search` and `searchParams` are mutually exclusive."); + } + if (!origin) { + if (!options.protocol) { + throw new TypeError("No URL protocol specified"); } - if (!dryRun) { - rimraf.sync(file, rimrafOptions); + origin = `${options.protocol}//${(_b = (_a = options.hostname) !== null && _a !== void 0 ? _a : options.host) !== null && _b !== void 0 ? _b : ""}`; + } + const url = new url_1.URL(origin); + if (options.path) { + const searchIndex = options.path.indexOf("?"); + if (searchIndex === -1) { + options.pathname = options.path; + } else { + options.pathname = options.path.slice(0, searchIndex); + options.search = options.path.slice(searchIndex + 1); } - return file; - }); - removedFiles.sort((a, b) => a.localeCompare(b)); - return removedFiles; + delete options.path; + } + for (const key of keys) { + if (options[key]) { + url[key] = options[key].toString(); + } + } + return url; }; } }); -// ../../node_modules/.pnpm/tempy@1.0.1/node_modules/tempy/index.js -var require_tempy = __commonJS({ - "../../node_modules/.pnpm/tempy@1.0.1/node_modules/tempy/index.js"(exports2, module2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/weakable-map.js +var require_weakable_map = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/weakable-map.js"(exports2) { "use strict"; - var fs = require("fs"); - var path = require("path"); - var uniqueString = require_unique_string(); - var tempDir = require_temp_dir(); - var isStream = require_is_stream(); - var del = require_del(); - var stream = require("stream"); - var { promisify } = require("util"); - var pipeline = promisify(stream.pipeline); - var { writeFile } = fs.promises; - var getPath = (prefix = "") => path.join(tempDir, prefix + uniqueString()); - var writeStream = async (filePath, data) => pipeline(data, fs.createWriteStream(filePath)); - var createTask = (tempyFunction, { extraArguments = 0 } = {}) => async (...arguments_) => { - const [callback, options] = arguments_.slice(extraArguments); - const result = await tempyFunction(...arguments_.slice(0, extraArguments), options); - try { - return await callback(result); - } finally { - await del(result, { force: true }); + Object.defineProperty(exports2, "__esModule", { value: true }); + var WeakableMap = class { + constructor() { + this.weakMap = /* @__PURE__ */ new WeakMap(); + this.map = /* @__PURE__ */ new Map(); } - }; - module2.exports.file = (options) => { - options = { - ...options - }; - if (options.name) { - if (options.extension !== void 0 && options.extension !== null) { - throw new Error("The `name` and `extension` options are mutually exclusive"); + set(key, value) { + if (typeof key === "object") { + this.weakMap.set(key, value); + } else { + this.map.set(key, value); } - return path.join(module2.exports.directory(), options.name); } - return getPath() + (options.extension === void 0 || options.extension === null ? "" : "." + options.extension.replace(/^\./, "")); + get(key) { + if (typeof key === "object") { + return this.weakMap.get(key); + } + return this.map.get(key); + } + has(key) { + if (typeof key === "object") { + return this.weakMap.has(key); + } + return this.map.has(key); + } }; - module2.exports.file.task = createTask(module2.exports.file); - module2.exports.directory = ({ prefix = "" } = {}) => { - const directory = getPath(prefix); - fs.mkdirSync(directory); - return directory; + exports2.default = WeakableMap; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/get-buffer.js +var require_get_buffer = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/get-buffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var getBuffer = async (stream) => { + const chunks = []; + let length = 0; + for await (const chunk of stream) { + chunks.push(chunk); + length += Buffer.byteLength(chunk); + } + if (Buffer.isBuffer(chunks[0])) { + return Buffer.concat(chunks, length); + } + return Buffer.from(chunks.join("")); }; - module2.exports.directory.task = createTask(module2.exports.directory); - module2.exports.write = async (data, options) => { - const filename = module2.exports.file(options); - const write = isStream(data) ? writeStream : writeFile; - await write(filename, data); - return filename; + exports2.default = getBuffer; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/dns-ip-version.js +var require_dns_ip_version = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/dns-ip-version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dnsLookupIpVersionToFamily = exports2.isDnsLookupIpVersion = void 0; + var conversionTable = { + auto: 0, + ipv4: 4, + ipv6: 6 }; - module2.exports.write.task = createTask(module2.exports.write, { extraArguments: 1 }); - module2.exports.writeSync = (data, options) => { - const filename = module2.exports.file(options); - fs.writeFileSync(filename, data); - return filename; + exports2.isDnsLookupIpVersion = (value) => { + return value in conversionTable; }; - Object.defineProperty(module2.exports, "root", { - get() { - return tempDir; + exports2.dnsLookupIpVersionToFamily = (dnsLookupIpVersion) => { + if (exports2.isDnsLookupIpVersion(dnsLookupIpVersion)) { + return conversionTable[dnsLookupIpVersion]; } - }); + throw new Error("Invalid DNS lookup IP version"); + }; } }); -// ../plugin-commands-env/lib/node.js -var require_node4 = __commonJS({ - "../plugin-commands-env/lib/node.js"(exports2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/is-response-ok.js +var require_is_response_ok = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/utils/is-response-ok.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isResponseOk = void 0; + exports2.isResponseOk = (response) => { + const { statusCode } = response; + const limitStatusCode = response.request.options.followRedirect ? 299 : 399; + return statusCode >= 200 && statusCode <= limitStatusCode || statusCode === 304; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/utils/deprecation-warning.js +var require_deprecation_warning = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/utils/deprecation-warning.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var alreadyWarned = /* @__PURE__ */ new Set(); + exports2.default = (message2) => { + if (alreadyWarned.has(message2)) { + return; + } + alreadyWarned.add(message2); + process.emitWarning(`Got: ${message2}`, { + type: "DeprecationWarning" + }); }; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/normalize-arguments.js +var require_normalize_arguments = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/normalize-arguments.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getNodeDir = exports2.getNodeBinDir = void 0; - var fs_1 = __importDefault(require("fs")); - var path_1 = __importDefault(require("path")); - var fetch_1 = __importStar2(require_lib29()); - var package_store_1 = require_lib37(); - var store_path_1 = __importDefault(require_lib38()); - var tarball_fetcher_1 = __importStar2(require_lib40()); - var adm_zip_1 = __importDefault(require_adm_zip()); - var rename_overwrite_1 = __importDefault(require_rename_overwrite()); - var tempy_1 = __importDefault(require_tempy()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var write_json_file_1 = __importDefault(require_write_json_file()); - async function getNodeBinDir(opts) { - const nodeDir = await getNodeDir(opts); - return process.platform === "win32" ? nodeDir : path_1.default.join(nodeDir, "bin"); - } - exports2.getNodeBinDir = getNodeBinDir; - async function getNodeDir(opts) { - var _a, _b; - const nodesDir = path_1.default.join(opts.pnpmHomeDir, "nodejs"); - let wantedNodeVersion = (_a = opts.useNodeVersion) !== null && _a !== void 0 ? _a : (_b = await readNodeVersionsManifest(nodesDir)) === null || _b === void 0 ? void 0 : _b.default; - await fs_1.default.promises.mkdir(nodesDir, { recursive: true }); - if (wantedNodeVersion == null) { - const response = await fetch_1.default("https://registry.npmjs.org/node"); - wantedNodeVersion = (await response.json())["dist-tags"].lts; - if (wantedNodeVersion == null) { - throw new Error("Could not resolve LTS version of Node.js"); - } - await write_json_file_1.default(path_1.default.join(nodesDir, "versions.json"), { - default: wantedNodeVersion - }); + var is_1 = require_dist14(); + var normalizeArguments = (options, defaults) => { + if (is_1.default.null_(options.encoding)) { + throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead"); } - const versionDir = path_1.default.join(nodesDir, wantedNodeVersion); - if (!fs_1.default.existsSync(versionDir)) { - await installNode(wantedNodeVersion, versionDir, opts); + is_1.assert.any([is_1.default.string, is_1.default.undefined], options.encoding); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.resolveBodyOnly); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.methodRewriting); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.isStream); + is_1.assert.any([is_1.default.string, is_1.default.undefined], options.responseType); + if (options.responseType === void 0) { + options.responseType = "text"; } - return versionDir; - } - exports2.getNodeDir = getNodeDir; - async function installNode(wantedNodeVersion, versionDir, opts) { - await fs_1.default.promises.mkdir(versionDir, { recursive: true }); - const { tarball, pkgName } = getNodeJSTarball(wantedNodeVersion); - const fetchFromRegistry = fetch_1.createFetchFromRegistry(opts); - if (tarball.endsWith(".zip")) { - await downloadAndUnpackZip(fetchFromRegistry, tarball, versionDir, pkgName); - return; + const { retry } = options; + if (defaults) { + options.retry = { ...defaults.retry }; + } else { + options.retry = { + calculateDelay: (retryObject) => retryObject.computedValue, + limit: 0, + methods: [], + statusCodes: [], + errorCodes: [], + maxRetryAfter: void 0 + }; } - const getCredentials = () => ({ authHeaderValue: void 0, alwaysAuth: void 0 }); - const fetch = tarball_fetcher_1.default(fetchFromRegistry, getCredentials, { - retry: { - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries, - factor: opts.fetchRetryFactor - }, - timeout: opts.fetchTimeout - }); - const storeDir = await store_path_1.default(process.cwd(), opts.storeDir); - const cafsDir = path_1.default.join(storeDir, "files"); - const cafs = package_store_1.createCafsStore(cafsDir); - const { filesIndex } = await fetch.tarball(cafs, { tarball }, { - lockfileDir: process.cwd() - }); - await cafs.importPackage(versionDir, { - filesResponse: { - filesIndex: await tarball_fetcher_1.waitForFilesIndex(filesIndex), - fromStore: false - }, - force: true - }); - } - async function downloadAndUnpackZip(fetchFromRegistry, zipUrl, targetDir, pkgName) { - const response = await fetchFromRegistry(zipUrl); - const tmp = path_1.default.join(tempy_1.default.directory(), "pnpm.zip"); - const dest = fs_1.default.createWriteStream(tmp); - await new Promise((resolve, reject) => { - response.body.pipe(dest).on("error", reject).on("close", resolve); - }); - const zip = new adm_zip_1.default(tmp); - const nodeDir = path_1.default.dirname(targetDir); - zip.extractAllTo(nodeDir, true); - await rename_overwrite_1.default(path_1.default.join(nodeDir, pkgName), targetDir); - await fs_1.default.promises.unlink(tmp); - } - function getNodeJSTarball(nodeVersion) { - const platform = process.platform === "win32" ? "win" : process.platform; - const arch = platform === "win" && process.arch === "ia32" ? "x86" : process.arch; - const extension = platform === "win" ? "zip" : "tar.gz"; - const pkgName = `node-v${nodeVersion}-${platform}-${arch}`; - return { - pkgName, - tarball: `https://nodejs.org/download/release/v${nodeVersion}/${pkgName}.${extension}` - }; - } - async function readNodeVersionsManifest(nodesDir) { - try { - return await load_json_file_1.default(path_1.default.join(nodesDir, "versions.json")); - } catch (err) { - if (err.code === "ENOENT") { - return {}; + if (is_1.default.object(retry)) { + options.retry = { + ...options.retry, + ...retry + }; + options.retry.methods = [...new Set(options.retry.methods.map((method) => method.toUpperCase()))]; + options.retry.statusCodes = [...new Set(options.retry.statusCodes)]; + options.retry.errorCodes = [...new Set(options.retry.errorCodes)]; + } else if (is_1.default.number(retry)) { + options.retry.limit = retry; + } + if (is_1.default.undefined(options.retry.maxRetryAfter)) { + options.retry.maxRetryAfter = Math.min( + ...[options.timeout.request, options.timeout.connect].filter(is_1.default.number) + ); + } + if (is_1.default.object(options.pagination)) { + if (defaults) { + options.pagination = { + ...defaults.pagination, + ...options.pagination + }; + } + const { pagination } = options; + if (!is_1.default.function_(pagination.transform)) { + throw new Error("`options.pagination.transform` must be implemented"); + } + if (!is_1.default.function_(pagination.shouldContinue)) { + throw new Error("`options.pagination.shouldContinue` must be implemented"); + } + if (!is_1.default.function_(pagination.filter)) { + throw new TypeError("`options.pagination.filter` must be implemented"); + } + if (!is_1.default.function_(pagination.paginate)) { + throw new Error("`options.pagination.paginate` must be implemented"); } - throw err; } - } + if (options.responseType === "json" && options.headers.accept === void 0) { + options.headers.accept = "application/json"; + } + return options; + }; + exports2.default = normalizeArguments; } }); -// ../plugin-commands-env/lib/env.js -var require_env = __commonJS({ - "../plugin-commands-env/lib/env.js"(exports2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/calculate-retry-delay.js +var require_calculate_retry_delay = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/calculate-retry-delay.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.retryAfterStatusCodes = void 0; + exports2.retryAfterStatusCodes = /* @__PURE__ */ new Set([413, 429, 503]); + var calculateRetryDelay = ({ attemptCount, retryOptions, error, retryAfter }) => { + if (attemptCount > retryOptions.limit) { + return 0; + } + const hasMethod = retryOptions.methods.includes(error.options.method); + const hasErrorCode = retryOptions.errorCodes.includes(error.code); + const hasStatusCode = error.response && retryOptions.statusCodes.includes(error.response.statusCode); + if (!hasMethod || !hasErrorCode && !hasStatusCode) { + return 0; + } + if (error.response) { + if (retryAfter) { + if (retryOptions.maxRetryAfter === void 0 || retryAfter > retryOptions.maxRetryAfter) { + return 0; + } + return retryAfter; + } + if (error.response.statusCode === 413) { + return 0; + } + } + const noise = Math.random() * 100; + return 2 ** (attemptCount - 1) * 1e3 + noise; }; + exports2.default = calculateRetryDelay; + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/index.js +var require_core8 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/core/index.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var error_1 = __importDefault(require_lib8()); - var fetch_1 = __importDefault(require_lib29()); - var cmd_shim_1 = __importDefault(require_cmd_shim()); - var render_help_1 = __importDefault(require_lib30()); - var semver_1 = __importDefault(require_semver2()); - var version_selector_type_1 = __importDefault(require_version_selector_type()); - var node_1 = require_node4(); - function rcOptionsTypes() { - return {}; + exports2.UnsupportedProtocolError = exports2.ReadError = exports2.TimeoutError = exports2.UploadError = exports2.CacheError = exports2.HTTPError = exports2.MaxRedirectsError = exports2.RequestError = exports2.setNonEnumerableProperties = exports2.knownHookEvents = exports2.withoutBody = exports2.kIsNormalizedAlready = void 0; + var util_1 = require("util"); + var stream_12 = require("stream"); + var fs_1 = require("fs"); + var url_1 = require("url"); + var http = require("http"); + var http_1 = require("http"); + var https = require("https"); + var http_timer_1 = require_source4(); + var cacheable_lookup_1 = require_source5(); + var CacheableRequest = require_src10(); + var decompressResponse = require_decompress_response(); + var http2wrapper = require_source6(); + var lowercaseKeys = require_lowercase_keys(); + var is_1 = require_dist14(); + var get_body_size_1 = require_get_body_size(); + var is_form_data_1 = require_is_form_data(); + var proxy_events_1 = require_proxy_events2(); + var timed_out_1 = require_timed_out(); + var url_to_options_1 = require_url_to_options2(); + var options_to_url_1 = require_options_to_url(); + var weakable_map_1 = require_weakable_map(); + var get_buffer_1 = require_get_buffer(); + var dns_ip_version_1 = require_dns_ip_version(); + var is_response_ok_1 = require_is_response_ok(); + var deprecation_warning_1 = require_deprecation_warning(); + var normalize_arguments_1 = require_normalize_arguments(); + var calculate_retry_delay_1 = require_calculate_retry_delay(); + var globalDnsCache; + var kRequest = Symbol("request"); + var kResponse = Symbol("response"); + var kResponseSize = Symbol("responseSize"); + var kDownloadedSize = Symbol("downloadedSize"); + var kBodySize = Symbol("bodySize"); + var kUploadedSize = Symbol("uploadedSize"); + var kServerResponsesPiped = Symbol("serverResponsesPiped"); + var kUnproxyEvents = Symbol("unproxyEvents"); + var kIsFromCache = Symbol("isFromCache"); + var kCancelTimeouts = Symbol("cancelTimeouts"); + var kStartedReading = Symbol("startedReading"); + var kStopReading = Symbol("stopReading"); + var kTriggerRead = Symbol("triggerRead"); + var kBody = Symbol("body"); + var kJobs = Symbol("jobs"); + var kOriginalResponse = Symbol("originalResponse"); + var kRetryTimeout = Symbol("retryTimeout"); + exports2.kIsNormalizedAlready = Symbol("isNormalizedAlready"); + var supportsBrotli = is_1.default.string(process.versions.brotli); + exports2.withoutBody = /* @__PURE__ */ new Set(["GET", "HEAD"]); + exports2.knownHookEvents = [ + "init", + "beforeRequest", + "beforeRedirect", + "beforeError", + "beforeRetry", + // Promise-Only + "afterResponse" + ]; + function validateSearchParameters(searchParameters) { + for (const key in searchParameters) { + const value = searchParameters[key]; + if (!is_1.default.string(value) && !is_1.default.number(value) && !is_1.default.boolean(value) && !is_1.default.null_(value) && !is_1.default.undefined(value)) { + throw new TypeError(`The \`searchParams\` value '${String(value)}' must be a string, number, boolean or null`); + } + } } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { - return { - global: Boolean - }; + function isClientRequest(clientRequest) { + return is_1.default.object(clientRequest) && !("statusCode" in clientRequest); } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["env"]; - function help() { - return render_help_1.default({ - description: "Install and use the specified version of Node.js. The npm CLI bundled with the given Node.js version gets installed as well.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Installs Node.js globally", - name: "--global", - shortAlias: "-g" + var cacheableStore = new weakable_map_1.default(); + var waitForOpenFile = async (file) => new Promise((resolve, reject) => { + const onError = (error) => { + reject(error); + }; + if (!file.pending) { + resolve(); + } + file.once("error", onError); + file.once("ready", () => { + file.off("error", onError); + resolve(); + }); + }); + var redirectCodes = /* @__PURE__ */ new Set([300, 301, 302, 303, 304, 307, 308]); + var nonEnumerableProperties = [ + "context", + "body", + "json", + "form" + ]; + exports2.setNonEnumerableProperties = (sources, to) => { + const properties = {}; + for (const source of sources) { + if (!source) { + continue; + } + for (const name of nonEnumerableProperties) { + if (!(name in source)) { + continue; + } + properties[name] = { + writable: true, + configurable: true, + enumerable: false, + // @ts-expect-error TS doesn't see the check above + value: source[name] + }; + } + } + Object.defineProperties(to, properties); + }; + var RequestError = class extends Error { + constructor(message2, error, self2) { + var _a, _b; + super(message2); + Error.captureStackTrace(this, this.constructor); + this.name = "RequestError"; + this.code = (_a = error.code) !== null && _a !== void 0 ? _a : "ERR_GOT_REQUEST_ERROR"; + if (self2 instanceof Request) { + Object.defineProperty(this, "request", { + enumerable: false, + value: self2 + }); + Object.defineProperty(this, "response", { + enumerable: false, + value: self2[kResponse] + }); + Object.defineProperty(this, "options", { + // This fails because of TS 3.7.2 useDefineForClassFields + // Ref: https://github.com/microsoft/TypeScript/issues/34972 + enumerable: false, + value: self2.options + }); + } else { + Object.defineProperty(this, "options", { + // This fails because of TS 3.7.2 useDefineForClassFields + // Ref: https://github.com/microsoft/TypeScript/issues/34972 + enumerable: false, + value: self2 + }); + } + this.timings = (_b = this.request) === null || _b === void 0 ? void 0 : _b.timings; + if (is_1.default.string(error.stack) && is_1.default.string(this.stack)) { + const indexOfMessage = this.stack.indexOf(this.message) + this.message.length; + const thisStackTrace = this.stack.slice(indexOfMessage).split("\n").reverse(); + const errorStackTrace = error.stack.slice(error.stack.indexOf(error.message) + error.message.length).split("\n").reverse(); + while (errorStackTrace.length !== 0 && errorStackTrace[0] === thisStackTrace[0]) { + thisStackTrace.shift(); + } + this.stack = `${this.stack.slice(0, indexOfMessage)}${thisStackTrace.reverse().join("\n")}${errorStackTrace.reverse().join("\n")}`; + } + } + }; + exports2.RequestError = RequestError; + var MaxRedirectsError = class extends RequestError { + constructor(request) { + super(`Redirected ${request.options.maxRedirects} times. Aborting.`, {}, request); + this.name = "MaxRedirectsError"; + this.code = "ERR_TOO_MANY_REDIRECTS"; + } + }; + exports2.MaxRedirectsError = MaxRedirectsError; + var HTTPError = class extends RequestError { + constructor(response) { + super(`Response code ${response.statusCode} (${response.statusMessage})`, {}, response.request); + this.name = "HTTPError"; + this.code = "ERR_NON_2XX_3XX_RESPONSE"; + } + }; + exports2.HTTPError = HTTPError; + var CacheError = class extends RequestError { + constructor(error, request) { + super(error.message, error, request); + this.name = "CacheError"; + this.code = this.code === "ERR_GOT_REQUEST_ERROR" ? "ERR_CACHE_ACCESS" : this.code; + } + }; + exports2.CacheError = CacheError; + var UploadError = class extends RequestError { + constructor(error, request) { + super(error.message, error, request); + this.name = "UploadError"; + this.code = this.code === "ERR_GOT_REQUEST_ERROR" ? "ERR_UPLOAD" : this.code; + } + }; + exports2.UploadError = UploadError; + var TimeoutError = class extends RequestError { + constructor(error, timings, request) { + super(error.message, error, request); + this.name = "TimeoutError"; + this.event = error.event; + this.timings = timings; + } + }; + exports2.TimeoutError = TimeoutError; + var ReadError = class extends RequestError { + constructor(error, request) { + super(error.message, error, request); + this.name = "ReadError"; + this.code = this.code === "ERR_GOT_REQUEST_ERROR" ? "ERR_READING_RESPONSE_STREAM" : this.code; + } + }; + exports2.ReadError = ReadError; + var UnsupportedProtocolError = class extends RequestError { + constructor(options) { + super(`Unsupported protocol "${options.url.protocol}"`, {}, options); + this.name = "UnsupportedProtocolError"; + this.code = "ERR_UNSUPPORTED_PROTOCOL"; + } + }; + exports2.UnsupportedProtocolError = UnsupportedProtocolError; + var proxiedRequestEvents = [ + "socket", + "connect", + "continue", + "information", + "upgrade", + "timeout" + ]; + var Request = class extends stream_12.Duplex { + constructor(url, options = {}, defaults) { + super({ + // This must be false, to enable throwing after destroy + // It is used for retry logic in Promise API + autoDestroy: false, + // It needs to be zero because we're just proxying the data to another stream + highWaterMark: 0 + }); + this[kDownloadedSize] = 0; + this[kUploadedSize] = 0; + this.requestInitialized = false; + this[kServerResponsesPiped] = /* @__PURE__ */ new Set(); + this.redirects = []; + this[kStopReading] = false; + this[kTriggerRead] = false; + this[kJobs] = []; + this.retryCount = 0; + this._progressCallbacks = []; + const unlockWrite = () => this._unlockWrite(); + const lockWrite = () => this._lockWrite(); + this.on("pipe", (source) => { + source.prependListener("data", unlockWrite); + source.on("data", lockWrite); + source.prependListener("end", unlockWrite); + source.on("end", lockWrite); + }); + this.on("unpipe", (source) => { + source.off("data", unlockWrite); + source.off("data", lockWrite); + source.off("end", unlockWrite); + source.off("end", lockWrite); + }); + this.on("pipe", (source) => { + if (source instanceof http_1.IncomingMessage) { + this.options.headers = { + ...source.headers, + ...this.options.headers + }; + } + }); + const { json, body, form } = options; + if (json || body || form) { + this._lockWrite(); + } + if (exports2.kIsNormalizedAlready in options) { + this.options = options; + } else { + try { + this.options = this.constructor.normalizeArguments(url, options, defaults); + } catch (error) { + if (is_1.default.nodeStream(options.body)) { + options.body.destroy(); + } + this.destroy(error); + return; + } + } + (async () => { + var _a; + try { + if (this.options.body instanceof fs_1.ReadStream) { + await waitForOpenFile(this.options.body); + } + const { url: normalizedURL } = this.options; + if (!normalizedURL) { + throw new TypeError("Missing `url` property"); + } + this.requestUrl = normalizedURL.toString(); + decodeURI(this.requestUrl); + await this._finalizeBody(); + await this._makeRequest(); + if (this.destroyed) { + (_a = this[kRequest]) === null || _a === void 0 ? void 0 : _a.destroy(); + return; + } + for (const job of this[kJobs]) { + job(); + } + this[kJobs].length = 0; + this.requestInitialized = true; + } catch (error) { + if (error instanceof RequestError) { + this._beforeError(error); + return; + } + if (!this.destroyed) { + this.destroy(error); + } + } + })(); + } + static normalizeArguments(url, options, defaults) { + var _a, _b, _c, _d, _e; + const rawOptions = options; + if (is_1.default.object(url) && !is_1.default.urlInstance(url)) { + options = { ...defaults, ...url, ...options }; + } else { + if (url && options && options.url !== void 0) { + throw new TypeError("The `url` option is mutually exclusive with the `input` argument"); + } + options = { ...defaults, ...options }; + if (url !== void 0) { + options.url = url; + } + if (is_1.default.urlInstance(options.url)) { + options.url = new url_1.URL(options.url.toString()); + } + } + if (options.cache === false) { + options.cache = void 0; + } + if (options.dnsCache === false) { + options.dnsCache = void 0; + } + is_1.assert.any([is_1.default.string, is_1.default.undefined], options.method); + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.headers); + is_1.assert.any([is_1.default.string, is_1.default.urlInstance, is_1.default.undefined], options.prefixUrl); + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.cookieJar); + is_1.assert.any([is_1.default.object, is_1.default.string, is_1.default.undefined], options.searchParams); + is_1.assert.any([is_1.default.object, is_1.default.string, is_1.default.undefined], options.cache); + is_1.assert.any([is_1.default.object, is_1.default.number, is_1.default.undefined], options.timeout); + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.context); + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.hooks); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.decompress); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.ignoreInvalidCookies); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.followRedirect); + is_1.assert.any([is_1.default.number, is_1.default.undefined], options.maxRedirects); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.throwHttpErrors); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.http2); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.allowGetBody); + is_1.assert.any([is_1.default.string, is_1.default.undefined], options.localAddress); + is_1.assert.any([dns_ip_version_1.isDnsLookupIpVersion, is_1.default.undefined], options.dnsLookupIpVersion); + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.https); + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.rejectUnauthorized); + if (options.https) { + is_1.assert.any([is_1.default.boolean, is_1.default.undefined], options.https.rejectUnauthorized); + is_1.assert.any([is_1.default.function_, is_1.default.undefined], options.https.checkServerIdentity); + is_1.assert.any([is_1.default.string, is_1.default.object, is_1.default.array, is_1.default.undefined], options.https.certificateAuthority); + is_1.assert.any([is_1.default.string, is_1.default.object, is_1.default.array, is_1.default.undefined], options.https.key); + is_1.assert.any([is_1.default.string, is_1.default.object, is_1.default.array, is_1.default.undefined], options.https.certificate); + is_1.assert.any([is_1.default.string, is_1.default.undefined], options.https.passphrase); + is_1.assert.any([is_1.default.string, is_1.default.buffer, is_1.default.array, is_1.default.undefined], options.https.pfx); + } + is_1.assert.any([is_1.default.object, is_1.default.undefined], options.cacheOptions); + if (is_1.default.string(options.method)) { + options.method = options.method.toUpperCase(); + } else { + options.method = "GET"; + } + if (options.headers === (defaults === null || defaults === void 0 ? void 0 : defaults.headers)) { + options.headers = { ...options.headers }; + } else { + options.headers = lowercaseKeys({ ...defaults === null || defaults === void 0 ? void 0 : defaults.headers, ...options.headers }); + } + if ("slashes" in options) { + throw new TypeError("The legacy `url.Url` has been deprecated. Use `URL` instead."); + } + if ("auth" in options) { + throw new TypeError("Parameter `auth` is deprecated. Use `username` / `password` instead."); + } + if ("searchParams" in options) { + if (options.searchParams && options.searchParams !== (defaults === null || defaults === void 0 ? void 0 : defaults.searchParams)) { + let searchParameters; + if (is_1.default.string(options.searchParams) || options.searchParams instanceof url_1.URLSearchParams) { + searchParameters = new url_1.URLSearchParams(options.searchParams); + } else { + validateSearchParameters(options.searchParams); + searchParameters = new url_1.URLSearchParams(); + for (const key in options.searchParams) { + const value = options.searchParams[key]; + if (value === null) { + searchParameters.append(key, ""); + } else if (value !== void 0) { + searchParameters.append(key, value); + } } - ] + } + (_a = defaults === null || defaults === void 0 ? void 0 : defaults.searchParams) === null || _a === void 0 ? void 0 : _a.forEach((value, key) => { + if (!searchParameters.has(key)) { + searchParameters.append(key, value); + } + }); + options.searchParams = searchParameters; } - ], - url: cli_utils_1.docsUrl("env"), - usages: [ - "pnpm env use --global ", - "pnpm env use --global 16", - "pnpm env use --global lts", - "pnpm env use --global argon" - ] - }); - } - exports2.help = help; - async function handler(opts, params) { - if (params.length === 0) { - throw new error_1.default("ENV_NO_SUBCOMMAND", "Please specify the subcommand"); + } + options.username = (_b = options.username) !== null && _b !== void 0 ? _b : ""; + options.password = (_c = options.password) !== null && _c !== void 0 ? _c : ""; + if (is_1.default.undefined(options.prefixUrl)) { + options.prefixUrl = (_d = defaults === null || defaults === void 0 ? void 0 : defaults.prefixUrl) !== null && _d !== void 0 ? _d : ""; + } else { + options.prefixUrl = options.prefixUrl.toString(); + if (options.prefixUrl !== "" && !options.prefixUrl.endsWith("/")) { + options.prefixUrl += "/"; + } + } + if (is_1.default.string(options.url)) { + if (options.url.startsWith("/")) { + throw new Error("`input` must not start with a slash when using `prefixUrl`"); + } + options.url = options_to_url_1.default(options.prefixUrl + options.url, options); + } else if (is_1.default.undefined(options.url) && options.prefixUrl !== "" || options.protocol) { + options.url = options_to_url_1.default(options.prefixUrl, options); + } + if (options.url) { + if ("port" in options) { + delete options.port; + } + let { prefixUrl } = options; + Object.defineProperty(options, "prefixUrl", { + set: (value) => { + const url2 = options.url; + if (!url2.href.startsWith(value)) { + throw new Error(`Cannot change \`prefixUrl\` from ${prefixUrl} to ${value}: ${url2.href}`); + } + options.url = new url_1.URL(value + url2.href.slice(prefixUrl.length)); + prefixUrl = value; + }, + get: () => prefixUrl + }); + let { protocol } = options.url; + if (protocol === "unix:") { + protocol = "http:"; + options.url = new url_1.URL(`http://unix${options.url.pathname}${options.url.search}`); + } + if (options.searchParams) { + options.url.search = options.searchParams.toString(); + } + if (protocol !== "http:" && protocol !== "https:") { + throw new UnsupportedProtocolError(options); + } + if (options.username === "") { + options.username = options.url.username; + } else { + options.url.username = options.username; + } + if (options.password === "") { + options.password = options.url.password; + } else { + options.url.password = options.password; + } + } + const { cookieJar } = options; + if (cookieJar) { + let { setCookie, getCookieString } = cookieJar; + is_1.assert.function_(setCookie); + is_1.assert.function_(getCookieString); + if (setCookie.length === 4 && getCookieString.length === 0) { + setCookie = util_1.promisify(setCookie.bind(options.cookieJar)); + getCookieString = util_1.promisify(getCookieString.bind(options.cookieJar)); + options.cookieJar = { + setCookie, + getCookieString + }; + } + } + const { cache } = options; + if (cache) { + if (!cacheableStore.has(cache)) { + cacheableStore.set(cache, new CacheableRequest((requestOptions, handler) => { + const result2 = requestOptions[kRequest](requestOptions, handler); + if (is_1.default.promise(result2)) { + result2.once = (event, handler2) => { + if (event === "error") { + result2.catch(handler2); + } else if (event === "abort") { + (async () => { + try { + const request = await result2; + request.once("abort", handler2); + } catch (_a2) { + } + })(); + } else { + throw new Error(`Unknown HTTP2 promise event: ${event}`); + } + return result2; + }; + } + return result2; + }, cache)); + } + } + options.cacheOptions = { ...options.cacheOptions }; + if (options.dnsCache === true) { + if (!globalDnsCache) { + globalDnsCache = new cacheable_lookup_1.default(); + } + options.dnsCache = globalDnsCache; + } else if (!is_1.default.undefined(options.dnsCache) && !options.dnsCache.lookup) { + throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${is_1.default(options.dnsCache)}`); + } + if (is_1.default.number(options.timeout)) { + options.timeout = { request: options.timeout }; + } else if (defaults && options.timeout !== defaults.timeout) { + options.timeout = { + ...defaults.timeout, + ...options.timeout + }; + } else { + options.timeout = { ...options.timeout }; + } + if (!options.context) { + options.context = {}; + } + const areHooksDefault = options.hooks === (defaults === null || defaults === void 0 ? void 0 : defaults.hooks); + options.hooks = { ...options.hooks }; + for (const event of exports2.knownHookEvents) { + if (event in options.hooks) { + if (is_1.default.array(options.hooks[event])) { + options.hooks[event] = [...options.hooks[event]]; + } else { + throw new TypeError(`Parameter \`${event}\` must be an Array, got ${is_1.default(options.hooks[event])}`); + } + } else { + options.hooks[event] = []; + } + } + if (defaults && !areHooksDefault) { + for (const event of exports2.knownHookEvents) { + const defaultHooks = defaults.hooks[event]; + if (defaultHooks.length > 0) { + options.hooks[event] = [ + ...defaults.hooks[event], + ...options.hooks[event] + ]; + } + } + } + if ("family" in options) { + deprecation_warning_1.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'); + } + if (defaults === null || defaults === void 0 ? void 0 : defaults.https) { + options.https = { ...defaults.https, ...options.https }; + } + if ("rejectUnauthorized" in options) { + deprecation_warning_1.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'); + } + if ("checkServerIdentity" in options) { + deprecation_warning_1.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'); + } + if ("ca" in options) { + deprecation_warning_1.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'); + } + if ("key" in options) { + deprecation_warning_1.default('"options.key" was never documented, please use "options.https.key"'); + } + if ("cert" in options) { + deprecation_warning_1.default('"options.cert" was never documented, please use "options.https.certificate"'); + } + if ("passphrase" in options) { + deprecation_warning_1.default('"options.passphrase" was never documented, please use "options.https.passphrase"'); + } + if ("pfx" in options) { + deprecation_warning_1.default('"options.pfx" was never documented, please use "options.https.pfx"'); + } + if ("followRedirects" in options) { + throw new TypeError("The `followRedirects` option does not exist. Use `followRedirect` instead."); + } + if (options.agent) { + for (const key in options.agent) { + if (key !== "http" && key !== "https" && key !== "http2") { + throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${key}\``); + } + } + } + options.maxRedirects = (_e = options.maxRedirects) !== null && _e !== void 0 ? _e : 0; + exports2.setNonEnumerableProperties([defaults, rawOptions], options); + return normalize_arguments_1.default(options, defaults); } - switch (params[0]) { - case "use": { - if (!opts.global) { - throw new error_1.default("NOT_IMPLEMENTED_YET", '"pnpm env use " can only be used with the "--global" option currently'); + _lockWrite() { + const onLockedWrite = () => { + throw new TypeError("The payload has been already provided"); + }; + this.write = onLockedWrite; + this.end = onLockedWrite; + } + _unlockWrite() { + this.write = super.write; + this.end = super.end; + } + async _finalizeBody() { + const { options } = this; + const { headers } = options; + const isForm = !is_1.default.undefined(options.form); + const isJSON = !is_1.default.undefined(options.json); + const isBody = !is_1.default.undefined(options.body); + const hasPayload = isForm || isJSON || isBody; + const cannotHaveBody = exports2.withoutBody.has(options.method) && !(options.method === "GET" && options.allowGetBody); + this._cannotHaveBody = cannotHaveBody; + if (hasPayload) { + if (cannotHaveBody) { + throw new TypeError(`The \`${options.method}\` method cannot be used with a body`); + } + if ([isBody, isForm, isJSON].filter((isTrue) => isTrue).length > 1) { + throw new TypeError("The `body`, `json` and `form` options are mutually exclusive"); + } + if (isBody && !(options.body instanceof stream_12.Readable) && !is_1.default.string(options.body) && !is_1.default.buffer(options.body) && !is_form_data_1.default(options.body)) { + throw new TypeError("The `body` option must be a stream.Readable, string or Buffer"); + } + if (isForm && !is_1.default.object(options.form)) { + throw new TypeError("The `form` option must be an Object"); + } + { + const noContentType = !is_1.default.string(headers["content-type"]); + if (isBody) { + if (is_form_data_1.default(options.body) && noContentType) { + headers["content-type"] = `multipart/form-data; boundary=${options.body.getBoundary()}`; + } + this[kBody] = options.body; + } else if (isForm) { + if (noContentType) { + headers["content-type"] = "application/x-www-form-urlencoded"; + } + this[kBody] = new url_1.URLSearchParams(options.form).toString(); + } else { + if (noContentType) { + headers["content-type"] = "application/json"; + } + this[kBody] = options.stringifyJson(options.json); + } + const uploadBodySize = await get_body_size_1.default(this[kBody], options.headers); + if (is_1.default.undefined(headers["content-length"]) && is_1.default.undefined(headers["transfer-encoding"])) { + if (!cannotHaveBody && !is_1.default.undefined(uploadBodySize)) { + headers["content-length"] = String(uploadBodySize); + } + } } - const nodeVersion = await resolveNodeVersion(params[1]); - if (!nodeVersion) { - throw new error_1.default("COULD_NOT_RESOLVE_NODEJS", `Couldn't find Node.js version matching ${params[1]}`); + } else if (cannotHaveBody) { + this._lockWrite(); + } else { + this._unlockWrite(); + } + this[kBodySize] = Number(headers["content-length"]) || void 0; + } + async _onResponseBase(response) { + const { options } = this; + const { url } = options; + this[kOriginalResponse] = response; + if (options.decompress) { + response = decompressResponse(response); + } + const statusCode = response.statusCode; + const typedResponse = response; + typedResponse.statusMessage = typedResponse.statusMessage ? typedResponse.statusMessage : http.STATUS_CODES[statusCode]; + typedResponse.url = options.url.toString(); + typedResponse.requestUrl = this.requestUrl; + typedResponse.redirectUrls = this.redirects; + typedResponse.request = this; + typedResponse.isFromCache = response.fromCache || false; + typedResponse.ip = this.ip; + typedResponse.retryCount = this.retryCount; + this[kIsFromCache] = typedResponse.isFromCache; + this[kResponseSize] = Number(response.headers["content-length"]) || void 0; + this[kResponse] = response; + response.once("end", () => { + this[kResponseSize] = this[kDownloadedSize]; + this.emit("downloadProgress", this.downloadProgress); + }); + response.once("error", (error) => { + response.destroy(); + this._beforeError(new ReadError(error, this)); + }); + response.once("aborted", () => { + this._beforeError(new ReadError({ + name: "Error", + message: "The server aborted pending request", + code: "ECONNRESET" + }, this)); + }); + this.emit("downloadProgress", this.downloadProgress); + const rawCookies = response.headers["set-cookie"]; + if (is_1.default.object(options.cookieJar) && rawCookies) { + let promises = rawCookies.map(async (rawCookie) => options.cookieJar.setCookie(rawCookie, url.toString())); + if (options.ignoreInvalidCookies) { + promises = promises.map(async (p) => p.catch(() => { + })); } - const nodeDir = await node_1.getNodeDir({ - ...opts, - useNodeVersion: nodeVersion + try { + await Promise.all(promises); + } catch (error) { + this._beforeError(error); + return; + } + } + if (options.followRedirect && response.headers.location && redirectCodes.has(statusCode)) { + response.resume(); + if (this[kRequest]) { + this[kCancelTimeouts](); + delete this[kRequest]; + this[kUnproxyEvents](); + } + const shouldBeGet = statusCode === 303 && options.method !== "GET" && options.method !== "HEAD"; + if (shouldBeGet || !options.methodRewriting) { + options.method = "GET"; + if ("body" in options) { + delete options.body; + } + if ("json" in options) { + delete options.json; + } + if ("form" in options) { + delete options.form; + } + this[kBody] = void 0; + delete options.headers["content-length"]; + } + if (this.redirects.length >= options.maxRedirects) { + this._beforeError(new MaxRedirectsError(this)); + return; + } + try { + let isUnixSocketURL = function(url2) { + return url2.protocol === "unix:" || url2.hostname === "unix"; + }; + const redirectBuffer = Buffer.from(response.headers.location, "binary").toString(); + const redirectUrl = new url_1.URL(redirectBuffer, url); + const redirectString = redirectUrl.toString(); + decodeURI(redirectString); + if (!isUnixSocketURL(url) && isUnixSocketURL(redirectUrl)) { + this._beforeError(new RequestError("Cannot redirect to UNIX socket", {}, this)); + return; + } + if (redirectUrl.hostname !== url.hostname || redirectUrl.port !== url.port) { + if ("host" in options.headers) { + delete options.headers.host; + } + if ("cookie" in options.headers) { + delete options.headers.cookie; + } + if ("authorization" in options.headers) { + delete options.headers.authorization; + } + if (options.username || options.password) { + options.username = ""; + options.password = ""; + } + } else { + redirectUrl.username = options.username; + redirectUrl.password = options.password; + } + this.redirects.push(redirectString); + options.url = redirectUrl; + for (const hook of options.hooks.beforeRedirect) { + await hook(options, typedResponse); + } + this.emit("redirect", typedResponse, options); + await this._makeRequest(); + } catch (error) { + this._beforeError(error); + return; + } + return; + } + if (options.isStream && options.throwHttpErrors && !is_response_ok_1.isResponseOk(typedResponse)) { + this._beforeError(new HTTPError(typedResponse)); + return; + } + response.on("readable", () => { + if (this[kTriggerRead]) { + this._read(); + } + }); + this.on("resume", () => { + response.resume(); + }); + this.on("pause", () => { + response.pause(); + }); + response.once("end", () => { + this.push(null); + }); + this.emit("response", response); + for (const destination of this[kServerResponsesPiped]) { + if (destination.headersSent) { + continue; + } + for (const key in response.headers) { + const isAllowed = options.decompress ? key !== "content-encoding" : true; + const value = response.headers[key]; + if (isAllowed) { + destination.setHeader(key, value); + } + } + destination.statusCode = statusCode; + } + } + async _onResponse(response) { + try { + await this._onResponseBase(response); + } catch (error) { + this._beforeError(error); + } + } + _onRequest(request) { + const { options } = this; + const { timeout, url } = options; + http_timer_1.default(request); + this[kCancelTimeouts] = timed_out_1.default(request, timeout, url); + const responseEventName = options.cache ? "cacheableResponse" : "response"; + request.once(responseEventName, (response) => { + void this._onResponse(response); + }); + request.once("error", (error) => { + var _a; + request.destroy(); + (_a = request.res) === null || _a === void 0 ? void 0 : _a.removeAllListeners("end"); + error = error instanceof timed_out_1.TimeoutError ? new TimeoutError(error, this.timings, this) : new RequestError(error.message, error, this); + this._beforeError(error); + }); + this[kUnproxyEvents] = proxy_events_1.default(request, this, proxiedRequestEvents); + this[kRequest] = request; + this.emit("uploadProgress", this.uploadProgress); + const body = this[kBody]; + const currentRequest = this.redirects.length === 0 ? this : request; + if (is_1.default.nodeStream(body)) { + body.pipe(currentRequest); + body.once("error", (error) => { + this._beforeError(new UploadError(error, this)); + }); + } else { + this._unlockWrite(); + if (!is_1.default.undefined(body)) { + this._writeRequest(body, void 0, () => { + }); + currentRequest.end(); + this._lockWrite(); + } else if (this._cannotHaveBody || this._noPipe) { + currentRequest.end(); + this._lockWrite(); + } + } + this.emit("request", request); + } + async _createCacheableRequest(url, options) { + return new Promise((resolve, reject) => { + Object.assign(options, url_to_options_1.default(url)); + delete options.url; + let request; + const cacheRequest = cacheableStore.get(options.cache)(options, async (response) => { + response._readableState.autoDestroy = false; + if (request) { + (await request).emit("cacheableResponse", response); + } + resolve(response); }); - const src = path_1.default.join(nodeDir, process.platform === "win32" ? "node.exe" : "bin/node"); - const dest = path_1.default.join(opts.bin, "node"); - const cmdShimOpts = { createPwshFile: false }; - await cmd_shim_1.default(src, dest, cmdShimOpts); + options.url = url; + cacheRequest.once("error", reject); + cacheRequest.once("request", async (requestOrPromise) => { + request = requestOrPromise; + resolve(request); + }); + }); + } + async _makeRequest() { + var _a, _b, _c, _d, _e; + const { options } = this; + const { headers } = options; + for (const key in headers) { + if (is_1.default.undefined(headers[key])) { + delete headers[key]; + } else if (is_1.default.null_(headers[key])) { + throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${key}\` header`); + } + } + if (options.decompress && is_1.default.undefined(headers["accept-encoding"])) { + headers["accept-encoding"] = supportsBrotli ? "gzip, deflate, br" : "gzip, deflate"; + } + if (options.cookieJar) { + const cookieString = await options.cookieJar.getCookieString(options.url.toString()); + if (is_1.default.nonEmptyString(cookieString)) { + options.headers.cookie = cookieString; + } + } + for (const hook of options.hooks.beforeRequest) { + const result2 = await hook(options); + if (!is_1.default.undefined(result2)) { + options.request = () => result2; + break; + } + } + if (options.body && this[kBody] !== options.body) { + this[kBody] = options.body; + } + const { agent, request, timeout, url } = options; + if (options.dnsCache && !("lookup" in options)) { + options.lookup = options.dnsCache.lookup; + } + if (url.hostname === "unix") { + const matches = /(?.+?):(?.+)/.exec(`${url.pathname}${url.search}`); + if (matches === null || matches === void 0 ? void 0 : matches.groups) { + const { socketPath, path: path2 } = matches.groups; + Object.assign(options, { + socketPath, + path: path2, + host: "" + }); + } + } + const isHttps = url.protocol === "https:"; + let fallbackFn; + if (options.http2) { + fallbackFn = http2wrapper.auto; + } else { + fallbackFn = isHttps ? https.request : http.request; + } + const realFn = (_a = options.request) !== null && _a !== void 0 ? _a : fallbackFn; + const fn2 = options.cache ? this._createCacheableRequest : realFn; + if (agent && !options.http2) { + options.agent = agent[isHttps ? "https" : "http"]; + } + options[kRequest] = realFn; + delete options.request; + delete options.timeout; + const requestOptions = options; + requestOptions.shared = (_b = options.cacheOptions) === null || _b === void 0 ? void 0 : _b.shared; + requestOptions.cacheHeuristic = (_c = options.cacheOptions) === null || _c === void 0 ? void 0 : _c.cacheHeuristic; + requestOptions.immutableMinTimeToLive = (_d = options.cacheOptions) === null || _d === void 0 ? void 0 : _d.immutableMinTimeToLive; + requestOptions.ignoreCargoCult = (_e = options.cacheOptions) === null || _e === void 0 ? void 0 : _e.ignoreCargoCult; + if (options.dnsLookupIpVersion !== void 0) { try { - let npmDir = nodeDir; - if (process.platform !== "win32") { - npmDir = path_1.default.join(npmDir, "lib"); + requestOptions.family = dns_ip_version_1.dnsLookupIpVersionToFamily(options.dnsLookupIpVersion); + } catch (_f) { + throw new Error("Invalid `dnsLookupIpVersion` option value"); + } + } + if (options.https) { + if ("rejectUnauthorized" in options.https) { + requestOptions.rejectUnauthorized = options.https.rejectUnauthorized; + } + if (options.https.checkServerIdentity) { + requestOptions.checkServerIdentity = options.https.checkServerIdentity; + } + if (options.https.certificateAuthority) { + requestOptions.ca = options.https.certificateAuthority; + } + if (options.https.certificate) { + requestOptions.cert = options.https.certificate; + } + if (options.https.key) { + requestOptions.key = options.https.key; + } + if (options.https.passphrase) { + requestOptions.passphrase = options.https.passphrase; + } + if (options.https.pfx) { + requestOptions.pfx = options.https.pfx; + } + } + try { + let requestOrResponse = await fn2(url, requestOptions); + if (is_1.default.undefined(requestOrResponse)) { + requestOrResponse = fallbackFn(url, requestOptions); + } + options.request = request; + options.timeout = timeout; + options.agent = agent; + if (options.https) { + if ("rejectUnauthorized" in options.https) { + delete requestOptions.rejectUnauthorized; } - npmDir = path_1.default.join(npmDir, "node_modules/npm/bin"); - await cmd_shim_1.default(path_1.default.join(npmDir, "npm-cli.js"), path_1.default.join(opts.bin, "npm"), cmdShimOpts); - await cmd_shim_1.default(path_1.default.join(npmDir, "npx-cli.js"), path_1.default.join(opts.bin, "npx"), cmdShimOpts); - } catch (err) { + if (options.https.checkServerIdentity) { + delete requestOptions.checkServerIdentity; + } + if (options.https.certificateAuthority) { + delete requestOptions.ca; + } + if (options.https.certificate) { + delete requestOptions.cert; + } + if (options.https.key) { + delete requestOptions.key; + } + if (options.https.passphrase) { + delete requestOptions.passphrase; + } + if (options.https.pfx) { + delete requestOptions.pfx; + } + } + if (isClientRequest(requestOrResponse)) { + this._onRequest(requestOrResponse); + } else if (this.writable) { + this.once("finish", () => { + void this._onResponse(requestOrResponse); + }); + this._unlockWrite(); + this.end(); + this._lockWrite(); + } else { + void this._onResponse(requestOrResponse); } - return `Node.js ${nodeVersion} is activated - ${dest} -> ${src}`; + } catch (error) { + if (error instanceof CacheableRequest.CacheError) { + throw new CacheError(error, this); + } + throw new RequestError(error.message, error, this); } - default: { - throw new error_1.default("ENV_UNKNOWN_SUBCOMMAND", "This subcommand is not known"); + } + async _error(error) { + try { + for (const hook of this.options.hooks.beforeError) { + error = await hook(error); + } + } catch (error_) { + error = new RequestError(error_.message, error_, this); } + this.destroy(error); } - } - exports2.handler = handler; - async function resolveNodeVersion(rawVersionSelector) { - const response = await fetch_1.default("https://nodejs.org/download/release/index.json"); - const allVersions = await response.json(); - const { versions, versionSelector } = filterVersions(allVersions, rawVersionSelector); - const pickedVersion = semver_1.default.maxSatisfying(versions.map(({ version }) => version), versionSelector); - if (!pickedVersion) - return null; - return pickedVersion.substring(1); - } - function filterVersions(versions, versionSelector) { - if (versionSelector === "lts") { + _beforeError(error) { + if (this[kStopReading]) { + return; + } + const { options } = this; + const retryCount = this.retryCount + 1; + this[kStopReading] = true; + if (!(error instanceof RequestError)) { + error = new RequestError(error.message, error, this); + } + const typedError = error; + const { response } = typedError; + void (async () => { + if (response && !response.body) { + response.setEncoding(this._readableState.encoding); + try { + response.rawBody = await get_buffer_1.default(response); + response.body = response.rawBody.toString(); + } catch (_a) { + } + } + if (this.listenerCount("retry") !== 0) { + let backoff; + try { + let retryAfter; + if (response && "retry-after" in response.headers) { + retryAfter = Number(response.headers["retry-after"]); + if (Number.isNaN(retryAfter)) { + retryAfter = Date.parse(response.headers["retry-after"]) - Date.now(); + if (retryAfter <= 0) { + retryAfter = 1; + } + } else { + retryAfter *= 1e3; + } + } + backoff = await options.retry.calculateDelay({ + attemptCount: retryCount, + retryOptions: options.retry, + error: typedError, + retryAfter, + computedValue: calculate_retry_delay_1.default({ + attemptCount: retryCount, + retryOptions: options.retry, + error: typedError, + retryAfter, + computedValue: 0 + }) + }); + } catch (error_) { + void this._error(new RequestError(error_.message, error_, this)); + return; + } + if (backoff) { + const retry = async () => { + try { + for (const hook of this.options.hooks.beforeRetry) { + await hook(this.options, typedError, retryCount); + } + } catch (error_) { + void this._error(new RequestError(error_.message, error, this)); + return; + } + if (this.destroyed) { + return; + } + this.destroy(); + this.emit("retry", retryCount, error); + }; + this[kRetryTimeout] = setTimeout(retry, backoff); + return; + } + } + void this._error(typedError); + })(); + } + _read() { + this[kTriggerRead] = true; + const response = this[kResponse]; + if (response && !this[kStopReading]) { + if (response.readableLength) { + this[kTriggerRead] = false; + } + let data; + while ((data = response.read()) !== null) { + this[kDownloadedSize] += data.length; + this[kStartedReading] = true; + const progress = this.downloadProgress; + if (progress.percent < 1) { + this.emit("downloadProgress", progress); + } + this.push(data); + } + } + } + // Node.js 12 has incorrect types, so the encoding must be a string + _write(chunk, encoding, callback) { + const write = () => { + this._writeRequest(chunk, encoding, callback); + }; + if (this.requestInitialized) { + write(); + } else { + this[kJobs].push(write); + } + } + _writeRequest(chunk, encoding, callback) { + if (this[kRequest].destroyed) { + return; + } + this._progressCallbacks.push(() => { + this[kUploadedSize] += Buffer.byteLength(chunk, encoding); + const progress = this.uploadProgress; + if (progress.percent < 1) { + this.emit("uploadProgress", progress); + } + }); + this[kRequest].write(chunk, encoding, (error) => { + if (!error && this._progressCallbacks.length > 0) { + this._progressCallbacks.shift()(); + } + callback(error); + }); + } + _final(callback) { + const endRequest = () => { + while (this._progressCallbacks.length !== 0) { + this._progressCallbacks.shift()(); + } + if (!(kRequest in this)) { + callback(); + return; + } + if (this[kRequest].destroyed) { + callback(); + return; + } + this[kRequest].end((error) => { + if (!error) { + this[kBodySize] = this[kUploadedSize]; + this.emit("uploadProgress", this.uploadProgress); + this[kRequest].emit("upload-complete"); + } + callback(error); + }); + }; + if (this.requestInitialized) { + endRequest(); + } else { + this[kJobs].push(endRequest); + } + } + _destroy(error, callback) { + var _a; + this[kStopReading] = true; + clearTimeout(this[kRetryTimeout]); + if (kRequest in this) { + this[kCancelTimeouts](); + if (!((_a = this[kResponse]) === null || _a === void 0 ? void 0 : _a.complete)) { + this[kRequest].destroy(); + } + } + if (error !== null && !is_1.default.undefined(error) && !(error instanceof RequestError)) { + error = new RequestError(error.message, error, this); + } + callback(error); + } + get _isAboutToError() { + return this[kStopReading]; + } + /** + The remote IP address. + */ + get ip() { + var _a; + return (_a = this.socket) === null || _a === void 0 ? void 0 : _a.remoteAddress; + } + /** + Indicates whether the request has been aborted or not. + */ + get aborted() { + var _a, _b, _c; + return ((_b = (_a = this[kRequest]) === null || _a === void 0 ? void 0 : _a.destroyed) !== null && _b !== void 0 ? _b : this.destroyed) && !((_c = this[kOriginalResponse]) === null || _c === void 0 ? void 0 : _c.complete); + } + get socket() { + var _a, _b; + return (_b = (_a = this[kRequest]) === null || _a === void 0 ? void 0 : _a.socket) !== null && _b !== void 0 ? _b : void 0; + } + /** + Progress event for downloading (receiving a response). + */ + get downloadProgress() { + let percent; + if (this[kResponseSize]) { + percent = this[kDownloadedSize] / this[kResponseSize]; + } else if (this[kResponseSize] === this[kDownloadedSize]) { + percent = 1; + } else { + percent = 0; + } return { - versions: versions.filter(({ lts }) => lts !== false), - versionSelector: "*" + percent, + transferred: this[kDownloadedSize], + total: this[kResponseSize] }; } - const vst = version_selector_type_1.default(versionSelector); - if ((vst === null || vst === void 0 ? void 0 : vst.type) === "tag") { - const wantedLtsVersion = vst.normalized.toLowerCase(); + /** + Progress event for uploading (sending a request). + */ + get uploadProgress() { + let percent; + if (this[kBodySize]) { + percent = this[kUploadedSize] / this[kBodySize]; + } else if (this[kBodySize] === this[kUploadedSize]) { + percent = 1; + } else { + percent = 0; + } return { - versions: versions.filter(({ lts }) => typeof lts === "string" && lts.toLowerCase() === wantedLtsVersion), - versionSelector: "*" + percent, + transferred: this[kUploadedSize], + total: this[kBodySize] }; } - return { versions, versionSelector }; - } + /** + The object contains the following properties: + + - `start` - Time when the request started. + - `socket` - Time when a socket was assigned to the request. + - `lookup` - Time when the DNS lookup finished. + - `connect` - Time when the socket successfully connected. + - `secureConnect` - Time when the socket securely connected. + - `upload` - Time when the request finished uploading. + - `response` - Time when the request fired `response` event. + - `end` - Time when the response fired `end` event. + - `error` - Time when the request fired `error` event. + - `abort` - Time when the request fired `abort` event. + - `phases` + - `wait` - `timings.socket - timings.start` + - `dns` - `timings.lookup - timings.socket` + - `tcp` - `timings.connect - timings.lookup` + - `tls` - `timings.secureConnect - timings.connect` + - `request` - `timings.upload - (timings.secureConnect || timings.connect)` + - `firstByte` - `timings.response - timings.upload` + - `download` - `timings.end - timings.response` + - `total` - `(timings.end || timings.error || timings.abort) - timings.start` + + If something has not been measured yet, it will be `undefined`. + + __Note__: The time is a `number` representing the milliseconds elapsed since the UNIX epoch. + */ + get timings() { + var _a; + return (_a = this[kRequest]) === null || _a === void 0 ? void 0 : _a.timings; + } + /** + Whether the response was retrieved from the cache. + */ + get isFromCache() { + return this[kIsFromCache]; + } + pipe(destination, options) { + if (this[kStartedReading]) { + throw new Error("Failed to pipe. The response has been emitted already."); + } + if (destination instanceof http_1.ServerResponse) { + this[kServerResponsesPiped].add(destination); + } + return super.pipe(destination, options); + } + unpipe(destination) { + if (destination instanceof http_1.ServerResponse) { + this[kServerResponsesPiped].delete(destination); + } + super.unpipe(destination); + return this; + } + }; + exports2.default = Request; } }); -// ../plugin-commands-env/lib/index.js -var require_lib41 = __commonJS({ - "../plugin-commands-env/lib/index.js"(exports2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/types.js +var require_types6 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/types.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { @@ -83692,296 +160838,306 @@ var require_lib41 = __commonJS({ k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.node = exports2.env = void 0; - var env = __importStar2(require_env()); - exports2.env = env; - var node = __importStar2(require_node4()); - exports2.node = node; - } -}); - -// ../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry_operation.js -var require_retry_operation2 = __commonJS({ - "../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry_operation.js"(exports2, module2) { - function RetryOperation(timeouts, options) { - if (typeof options === "boolean") { - options = { forever: options }; - } - this._originalTimeouts = JSON.parse(JSON.stringify(timeouts)); - this._timeouts = timeouts; - this._options = options || {}; - this._maxRetryTime = options && options.maxRetryTime || Infinity; - this._fn = null; - this._errors = []; - this._attempts = 1; - this._operationTimeout = null; - this._operationTimeoutCb = null; - this._timeout = null; - this._operationStart = null; - if (this._options.forever) { - this._cachedTimeouts = this._timeouts.slice(0); - } - } - module2.exports = RetryOperation; - RetryOperation.prototype.reset = function() { - this._attempts = 1; - this._timeouts = this._originalTimeouts; - }; - RetryOperation.prototype.stop = function() { - if (this._timeout) { - clearTimeout(this._timeout); + exports2.CancelError = exports2.ParseError = void 0; + var core_1 = require_core8(); + var ParseError = class extends core_1.RequestError { + constructor(error, response) { + const { options } = response.request; + super(`${error.message} in "${options.url.toString()}"`, error, response.request); + this.name = "ParseError"; + this.code = this.code === "ERR_GOT_REQUEST_ERROR" ? "ERR_BODY_PARSE_FAILURE" : this.code; } - this._timeouts = []; - this._cachedTimeouts = null; }; - RetryOperation.prototype.retry = function(err) { - if (this._timeout) { - clearTimeout(this._timeout); - } - if (!err) { - return false; - } - var currentTime = new Date().getTime(); - if (err && currentTime - this._operationStart >= this._maxRetryTime) { - this._errors.unshift(new Error("RetryOperation timeout occurred")); - return false; - } - this._errors.push(err); - var timeout = this._timeouts.shift(); - if (timeout === void 0) { - if (this._cachedTimeouts) { - this._errors.splice(this._errors.length - 1, this._errors.length); - this._timeouts = this._cachedTimeouts.slice(0); - timeout = this._timeouts.shift(); - } else { - return false; - } + exports2.ParseError = ParseError; + var CancelError = class extends core_1.RequestError { + constructor(request) { + super("Promise was canceled", {}, request); + this.name = "CancelError"; + this.code = "ERR_CANCELED"; } - var self2 = this; - var timer = setTimeout(function() { - self2._attempts++; - if (self2._operationTimeoutCb) { - self2._timeout = setTimeout(function() { - self2._operationTimeoutCb(self2._attempts); - }, self2._operationTimeout); - if (self2._options.unref) { - self2._timeout.unref(); - } - } - self2._fn(self2._attempts); - }, timeout); - if (this._options.unref) { - timer.unref(); + get isCanceled() { + return true; } - return true; }; - RetryOperation.prototype.attempt = function(fn2, timeoutOps) { - this._fn = fn2; - if (timeoutOps) { - if (timeoutOps.timeout) { - this._operationTimeout = timeoutOps.timeout; + exports2.CancelError = CancelError; + __exportStar4(require_core8(), exports2); + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/parse-body.js +var require_parse_body = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/parse-body.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var types_1 = require_types6(); + var parseBody = (response, responseType, parseJson, encoding) => { + const { rawBody } = response; + try { + if (responseType === "text") { + return rawBody.toString(encoding); } - if (timeoutOps.cb) { - this._operationTimeoutCb = timeoutOps.cb; + if (responseType === "json") { + return rawBody.length === 0 ? "" : parseJson(rawBody.toString()); } - } - var self2 = this; - if (this._operationTimeoutCb) { - this._timeout = setTimeout(function() { - self2._operationTimeoutCb(); - }, self2._operationTimeout); - } - this._operationStart = new Date().getTime(); - this._fn(this._attempts); - }; - RetryOperation.prototype.try = function(fn2) { - console.log("Using RetryOperation.try() is deprecated"); - this.attempt(fn2); - }; - RetryOperation.prototype.start = function(fn2) { - console.log("Using RetryOperation.start() is deprecated"); - this.attempt(fn2); - }; - RetryOperation.prototype.start = RetryOperation.prototype.try; - RetryOperation.prototype.errors = function() { - return this._errors; - }; - RetryOperation.prototype.attempts = function() { - return this._attempts; - }; - RetryOperation.prototype.mainError = function() { - if (this._errors.length === 0) { - return null; - } - var counts = {}; - var mainError = null; - var mainErrorCount = 0; - for (var i = 0; i < this._errors.length; i++) { - var error = this._errors[i]; - var message2 = error.message; - var count = (counts[message2] || 0) + 1; - counts[message2] = count; - if (count >= mainErrorCount) { - mainError = error; - mainErrorCount = count; + if (responseType === "buffer") { + return rawBody; } + throw new types_1.ParseError({ + message: `Unknown body type '${responseType}'`, + name: "Error" + }, response); + } catch (error) { + throw new types_1.ParseError(error, response); } - return mainError; }; + exports2.default = parseBody; } }); -// ../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry.js -var require_retry3 = __commonJS({ - "../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/lib/retry.js"(exports2) { - var RetryOperation = require_retry_operation2(); - exports2.operation = function(options) { - var timeouts = exports2.timeouts(options); - return new RetryOperation(timeouts, { - forever: options && options.forever, - unref: options && options.unref, - maxRetryTime: options && options.maxRetryTime - }); - }; - exports2.timeouts = function(options) { - if (options instanceof Array) { - return [].concat(options); - } - var opts = { - retries: 10, - factor: 2, - minTimeout: 1 * 1e3, - maxTimeout: Infinity, - randomize: false - }; - for (var key in options) { - opts[key] = options[key]; - } - if (opts.minTimeout > opts.maxTimeout) { - throw new Error("minTimeout is greater than maxTimeout"); - } - var timeouts = []; - for (var i = 0; i < opts.retries; i++) { - timeouts.push(this.createTimeout(i, opts)); - } - if (options && options.forever && !timeouts.length) { - timeouts.push(this.createTimeout(i, opts)); - } - timeouts.sort(function(a, b) { - return a - b; - }); - return timeouts; - }; - exports2.createTimeout = function(attempt, opts) { - var random = opts.randomize ? Math.random() + 1 : 1; - var timeout = Math.round(random * opts.minTimeout * Math.pow(opts.factor, attempt)); - timeout = Math.min(timeout, opts.maxTimeout); - return timeout; +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/index.js +var require_as_promise = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; - exports2.wrap = function(obj, options, methods) { - if (options instanceof Array) { - methods = options; - options = null; - } - if (!methods) { - methods = []; - for (var key in obj) { - if (typeof obj[key] === "function") { - methods.push(key); - } - } - } - for (var i = 0; i < methods.length; i++) { - var method = methods[i]; - var original = obj[method]; - obj[method] = function retryWrapper(original2) { - var op = exports2.operation(options); - var args2 = Array.prototype.slice.call(arguments, 1); - var callback = args2.pop(); - args2.push(function(err) { - if (op.retry(err)) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var events_1 = require("events"); + var is_1 = require_dist14(); + var PCancelable = require_p_cancelable(); + var types_1 = require_types6(); + var parse_body_1 = require_parse_body(); + var core_1 = require_core8(); + var proxy_events_1 = require_proxy_events2(); + var get_buffer_1 = require_get_buffer(); + var is_response_ok_1 = require_is_response_ok(); + var proxiedRequestEvents = [ + "request", + "response", + "redirect", + "uploadProgress", + "downloadProgress" + ]; + function asPromise(normalizedOptions) { + let globalRequest; + let globalResponse; + const emitter = new events_1.EventEmitter(); + const promise = new PCancelable((resolve, reject, onCancel) => { + const makeRequest = (retryCount) => { + const request = new core_1.default(void 0, normalizedOptions); + request.retryCount = retryCount; + request._noPipe = true; + onCancel(() => request.destroy()); + onCancel.shouldReject = false; + onCancel(() => reject(new types_1.CancelError(request))); + globalRequest = request; + request.once("response", async (response) => { + var _a; + response.retryCount = retryCount; + if (response.request.aborted) { return; } - if (err) { - arguments[0] = op.mainError(); + let rawBody; + try { + rawBody = await get_buffer_1.default(request); + response.rawBody = rawBody; + } catch (_b) { + return; } - callback.apply(this, arguments); + if (request._isAboutToError) { + return; + } + const contentEncoding = ((_a = response.headers["content-encoding"]) !== null && _a !== void 0 ? _a : "").toLowerCase(); + const isCompressed = ["gzip", "deflate", "br"].includes(contentEncoding); + const { options } = request; + if (isCompressed && !options.decompress) { + response.body = rawBody; + } else { + try { + response.body = parse_body_1.default(response, options.responseType, options.parseJson, options.encoding); + } catch (error) { + response.body = rawBody.toString(); + if (is_response_ok_1.isResponseOk(response)) { + request._beforeError(error); + return; + } + } + } + try { + for (const [index, hook] of options.hooks.afterResponse.entries()) { + response = await hook(response, async (updatedOptions) => { + const typedOptions = core_1.default.normalizeArguments(void 0, { + ...updatedOptions, + retry: { + calculateDelay: () => 0 + }, + throwHttpErrors: false, + resolveBodyOnly: false + }, options); + typedOptions.hooks.afterResponse = typedOptions.hooks.afterResponse.slice(0, index); + for (const hook2 of typedOptions.hooks.beforeRetry) { + await hook2(typedOptions); + } + const promise2 = asPromise(typedOptions); + onCancel(() => { + promise2.catch(() => { + }); + promise2.cancel(); + }); + return promise2; + }); + } + } catch (error) { + request._beforeError(new types_1.RequestError(error.message, error, request)); + return; + } + globalResponse = response; + if (!is_response_ok_1.isResponseOk(response)) { + request._beforeError(new types_1.HTTPError(response)); + return; + } + request.destroy(); + resolve(request.options.resolveBodyOnly ? response.body : response); }); - op.attempt(function() { - original2.apply(obj, args2); + const onError = (error) => { + if (promise.isCanceled) { + return; + } + const { options } = request; + if (error instanceof types_1.HTTPError && !options.throwHttpErrors) { + const { response } = error; + resolve(request.options.resolveBodyOnly ? response.body : response); + return; + } + reject(error); + }; + request.once("error", onError); + const previousBody = request.options.body; + request.once("retry", (newRetryCount, error) => { + var _a, _b; + if (previousBody === ((_a = error.request) === null || _a === void 0 ? void 0 : _a.options.body) && is_1.default.nodeStream((_b = error.request) === null || _b === void 0 ? void 0 : _b.options.body)) { + onError(error); + return; + } + makeRequest(newRetryCount); }); - }.bind(obj, original); - obj[method].options = options; - } - }; + proxy_events_1.default(request, emitter, proxiedRequestEvents); + }; + makeRequest(0); + }); + promise.on = (event, fn2) => { + emitter.on(event, fn2); + return promise; + }; + const shortcut = (responseType) => { + const newPromise = (async () => { + await promise; + const { options } = globalResponse.request; + return parse_body_1.default(globalResponse, responseType, options.parseJson, options.encoding); + })(); + Object.defineProperties(newPromise, Object.getOwnPropertyDescriptors(promise)); + return newPromise; + }; + promise.json = () => { + const { headers } = globalRequest.options; + if (!globalRequest.writableFinished && headers.accept === void 0) { + headers.accept = "application/json"; + } + return shortcut("json"); + }; + promise.buffer = () => shortcut("buffer"); + promise.text = () => shortcut("text"); + return promise; + } + exports2.default = asPromise; + __exportStar4(require_types6(), exports2); } }); -// ../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/index.js -var require_retry4 = __commonJS({ - "../../node_modules/.pnpm/retry@0.12.0/node_modules/retry/index.js"(exports2, module2) { - module2.exports = require_retry3(); +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/create-rejection.js +var require_create_rejection = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/as-promise/create-rejection.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var types_1 = require_types6(); + function createRejection(error, ...beforeErrorGroups) { + const promise = (async () => { + if (error instanceof types_1.RequestError) { + try { + for (const hooks of beforeErrorGroups) { + if (hooks) { + for (const hook of hooks) { + error = await hook(error); + } + } + } + } catch (error_) { + error = error_; + } + } + throw error; + })(); + const returnPromise = () => promise; + promise.json = returnPromise; + promise.text = returnPromise; + promise.buffer = returnPromise; + promise.on = returnPromise; + return promise; + } + exports2.default = createRejection; } }); -// ../../node_modules/.pnpm/graceful-git@3.1.2/node_modules/graceful-git/index.js -var require_graceful_git = __commonJS({ - "../../node_modules/.pnpm/graceful-git@3.1.2/node_modules/graceful-git/index.js"(exports2, module2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/utils/deep-freeze.js +var require_deep_freeze = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/utils/deep-freeze.js"(exports2) { "use strict"; - var execa = require_lib26().default; - var retry = require_retry4(); - var RETRY_OPTIONS = { - retries: 3, - minTimeout: 1 * 1e3, - maxTimeout: 10 * 1e3, - randomize: true - }; - module2.exports = gracefulGit; - module2.exports.noRetry = noRetry; - async function gracefulGit(args2, opts) { - opts = opts || {}; - const operation = retry.operation(Object.assign({}, RETRY_OPTIONS, opts)); - return new Promise((resolve, reject) => { - operation.attempt((currentAttempt) => { - noRetry(args2, opts).then(resolve).catch((err) => { - if (operation.retry(err)) { - return; - } - reject(operation.mainError()); - }); - }); - }); - } - async function noRetry(args2, opts) { - opts = opts || {}; - return execa("git", args2, { cwd: opts.cwd || process.cwd() }); + Object.defineProperty(exports2, "__esModule", { value: true }); + var is_1 = require_dist14(); + function deepFreeze(object) { + for (const value of Object.values(object)) { + if (is_1.default.plainObject(value) || is_1.default.array(value)) { + deepFreeze(value); + } + } + return Object.freeze(object); } + exports2.default = deepFreeze; } }); -// ../git-resolver/lib/parsePref.js -var require_parsePref = __commonJS({ - "../git-resolver/lib/parsePref.js"(exports2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/types.js +var require_types7 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/create.js +var require_create = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/create.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { @@ -83992,9367 +161148,15853 @@ var require_parsePref = __commonJS({ k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultHandler = void 0; + var is_1 = require_dist14(); + var as_promise_1 = require_as_promise(); + var create_rejection_1 = require_create_rejection(); + var core_1 = require_core8(); + var deep_freeze_1 = require_deep_freeze(); + var errors = { + RequestError: as_promise_1.RequestError, + CacheError: as_promise_1.CacheError, + ReadError: as_promise_1.ReadError, + HTTPError: as_promise_1.HTTPError, + MaxRedirectsError: as_promise_1.MaxRedirectsError, + TimeoutError: as_promise_1.TimeoutError, + ParseError: as_promise_1.ParseError, + CancelError: as_promise_1.CancelError, + UnsupportedProtocolError: as_promise_1.UnsupportedProtocolError, + UploadError: as_promise_1.UploadError + }; + var delay = async (ms) => new Promise((resolve) => { + setTimeout(resolve, ms); }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var { normalizeArguments } = core_1.default; + var mergeOptions = (...sources) => { + let mergedOptions; + for (const source of sources) { + mergedOptions = normalizeArguments(void 0, source, mergedOptions); + } + return mergedOptions; + }; + var getPromiseOrStream = (options) => options.isStream ? new core_1.default(void 0, options) : as_promise_1.default(options); + var isGotInstance = (value) => "defaults" in value && "options" in value.defaults; + var aliases = [ + "get", + "post", + "put", + "patch", + "head", + "delete" + ]; + exports2.defaultHandler = (options, next) => next(options); + var callInitHooks = (hooks, options) => { + if (hooks) { + for (const hook of hooks) { + hook(options); + } } - __setModuleDefault2(result, mod); - return result; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var url_1 = __importStar2(require("url")); - var fetch_1 = __importDefault(require_lib29()); - var graceful_git_1 = __importDefault(require_graceful_git()); - var hosted_git_info_1 = __importDefault(require_hosted_git_info()); - var gitProtocols = new Set([ - "git", - "git+http", - "git+https", - "git+rsync", - "git+ftp", - "git+file", - "git+ssh", - "ssh" - ]); - async function parsePref(pref) { - var _a; - const hosted = hosted_git_info_1.default.fromUrl(pref); - if (hosted != null) { - return fromHostedGit(hosted); - } - const colonsPos = pref.indexOf(":"); - if (colonsPos === -1) - return null; - const protocol = pref.substr(0, colonsPos); - if (protocol && gitProtocols.has(protocol.toLocaleLowerCase())) { - const urlparse = new url_1.URL(pref); - if (!urlparse || !urlparse.protocol) - return null; - const match = urlparse.protocol === "git+ssh:" && matchGitScp(pref); - if (match) { - return { - ...match, - normalizedPref: pref - }; + var create = (defaults) => { + defaults._rawHandlers = defaults.handlers; + defaults.handlers = defaults.handlers.map((fn2) => (options, next) => { + let root; + const result2 = fn2(options, (newOptions) => { + root = next(newOptions); + return root; + }); + if (result2 !== root && !options.isStream && root) { + const typedResult = result2; + const { then: promiseThen, catch: promiseCatch, finally: promiseFianlly } = typedResult; + Object.setPrototypeOf(typedResult, Object.getPrototypeOf(root)); + Object.defineProperties(typedResult, Object.getOwnPropertyDescriptors(root)); + typedResult.then = promiseThen; + typedResult.catch = promiseCatch; + typedResult.finally = promiseFianlly; } - const committish = ((_a = urlparse.hash) === null || _a === void 0 ? void 0 : _a.length) > 1 ? decodeURIComponent(urlparse.hash.slice(1)) : null; - return { - fetchSpec: urlToFetchSpec(urlparse), - normalizedPref: pref, - ...setGitCommittish(committish) + return result2; + }); + const got = (url, options = {}, _defaults) => { + var _a, _b; + let iteration = 0; + const iterateHandlers = (newOptions) => { + return defaults.handlers[iteration++](newOptions, iteration === defaults.handlers.length ? getPromiseOrStream : iterateHandlers); }; - } - return null; - } - exports2.default = parsePref; - function urlToFetchSpec(urlparse) { - urlparse.hash = ""; - const fetchSpec = url_1.default.format(urlparse); - if (fetchSpec.startsWith("git+")) { - return fetchSpec.substr(4); - } - return fetchSpec; - } - async function fromHostedGit(hosted) { - let fetchSpec = null; - const gitUrl = hosted.git({ noCommittish: true }); - if (gitUrl && await accessRepository(gitUrl)) { - fetchSpec = gitUrl; - } - if (!fetchSpec) { - const httpsUrl = hosted.https({ noGitPlus: true, noCommittish: true }); - if (httpsUrl) { - if (hosted.auth && await accessRepository(httpsUrl)) { - return { - fetchSpec: httpsUrl, - hosted: { - ...hosted, - _fill: hosted._fill, - tarball: void 0 - }, - normalizedPref: `git+${httpsUrl}`, - ...setGitCommittish(hosted.committish) - }; + if (is_1.default.plainObject(url)) { + const mergedOptions = { + ...url, + ...options + }; + core_1.setNonEnumerableProperties([url, options], mergedOptions); + options = mergedOptions; + url = void 0; + } + try { + let initHookError; + try { + callInitHooks(defaults.options.hooks.init, options); + callInitHooks((_a = options.hooks) === null || _a === void 0 ? void 0 : _a.init, options); + } catch (error) { + initHookError = error; + } + const normalizedOptions = normalizeArguments(url, options, _defaults !== null && _defaults !== void 0 ? _defaults : defaults.options); + normalizedOptions[core_1.kIsNormalizedAlready] = true; + if (initHookError) { + throw new as_promise_1.RequestError(initHookError.message, initHookError, normalizedOptions); + } + return iterateHandlers(normalizedOptions); + } catch (error) { + if (options.isStream) { + throw error; } else { - try { - const response = await fetch_1.default(httpsUrl.substr(0, httpsUrl.length - 4), { method: "HEAD", follow: 0 }); - if (response.ok) { - fetchSpec = httpsUrl; + return create_rejection_1.default(error, defaults.options.hooks.beforeError, (_b = options.hooks) === null || _b === void 0 ? void 0 : _b.beforeError); + } + } + }; + got.extend = (...instancesOrOptions) => { + const optionsArray = [defaults.options]; + let handlers = [...defaults._rawHandlers]; + let isMutableDefaults; + for (const value of instancesOrOptions) { + if (isGotInstance(value)) { + optionsArray.push(value.defaults.options); + handlers.push(...value.defaults._rawHandlers); + isMutableDefaults = value.defaults.mutableDefaults; + } else { + optionsArray.push(value); + if ("handlers" in value) { + handlers.push(...value.handlers); + } + isMutableDefaults = value.mutableDefaults; + } + } + handlers = handlers.filter((handler) => handler !== exports2.defaultHandler); + if (handlers.length === 0) { + handlers.push(exports2.defaultHandler); + } + return create({ + options: mergeOptions(...optionsArray), + handlers, + mutableDefaults: Boolean(isMutableDefaults) + }); + }; + const paginateEach = async function* (url, options) { + let normalizedOptions = normalizeArguments(url, options, defaults.options); + normalizedOptions.resolveBodyOnly = false; + const pagination = normalizedOptions.pagination; + if (!is_1.default.object(pagination)) { + throw new TypeError("`options.pagination` must be implemented"); + } + const all = []; + let { countLimit } = pagination; + let numberOfRequests = 0; + while (numberOfRequests < pagination.requestLimit) { + if (numberOfRequests !== 0) { + await delay(pagination.backoff); + } + const result2 = await got(void 0, void 0, normalizedOptions); + const parsed = await pagination.transform(result2); + const current = []; + for (const item of parsed) { + if (pagination.filter(item, all, current)) { + if (!pagination.shouldContinue(item, all, current)) { + return; + } + yield item; + if (pagination.stackAllItems) { + all.push(item); + } + current.push(item); + if (--countLimit <= 0) { + return; } - } catch (e) { } } + const optionsToMerge = pagination.paginate(result2, all, current); + if (optionsToMerge === false) { + return; + } + if (optionsToMerge === result2.request.options) { + normalizedOptions = result2.request.options; + } else if (optionsToMerge !== void 0) { + normalizedOptions = normalizeArguments(void 0, optionsToMerge, normalizedOptions); + } + numberOfRequests++; } - } - if (!fetchSpec) { - fetchSpec = hosted.sshurl({ noCommittish: true }); - } - return { - fetchSpec, - hosted: { - ...hosted, - _fill: hosted._fill, - tarball: hosted.tarball - }, - normalizedPref: hosted.shortcut(), - ...setGitCommittish(hosted.committish) }; - } - async function accessRepository(repository) { - try { - await graceful_git_1.default(["ls-remote", "--exit-code", repository, "HEAD"], { retries: 0 }); - return true; - } catch (err) { - return false; - } - } - function setGitCommittish(committish) { - if (committish !== null && committish.length >= 7 && committish.slice(0, 7) === "semver:") { - return { - gitCommittish: null, - gitRange: committish.slice(7) + got.paginate = paginateEach; + got.paginate.all = async (url, options) => { + const results = []; + for await (const item of paginateEach(url, options)) { + results.push(item); + } + return results; + }; + got.paginate.each = paginateEach; + got.stream = (url, options) => got(url, { ...options, isStream: true }); + for (const method of aliases) { + got[method] = (url, options) => got(url, { ...options, method }); + got.stream[method] = (url, options) => { + return got(url, { ...options, method, isStream: true }); }; } - return { gitCommittish: committish }; - } - function matchGitScp(spec) { - const matched = spec.match(/^git\+ssh:\/\/([^:#]+:[^#]+(?:\.git)?)(?:#(.*))?$/i); - return matched != null && matched[1].match(/:[0-9]+\/?.*$/i) == null && { - fetchSpec: matched[1], - gitCommittish: matched[2] - }; - } + Object.assign(got, errors); + Object.defineProperty(got, "defaults", { + value: defaults.mutableDefaults ? defaults : deep_freeze_1.default(defaults), + writable: defaults.mutableDefaults, + configurable: defaults.mutableDefaults, + enumerable: true + }); + got.mergeOptions = mergeOptions; + return got; + }; + exports2.default = create; + __exportStar4(require_types7(), exports2); } }); -// ../git-resolver/lib/index.js -var require_lib42 = __commonJS({ - "../git-resolver/lib/index.js"(exports2) { +// ../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/index.js +var require_source7 = __commonJS({ + "../node_modules/.pnpm/got@11.8.6/node_modules/got/dist/source/index.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); - var graceful_git_1 = __importDefault(require_graceful_git()); - var semver_1 = __importDefault(require_semver2()); - var parsePref_1 = __importDefault(require_parsePref()); - function default_1(opts) { - return async function resolveGit(wantedDependency) { - var _a; - const parsedSpec = await parsePref_1.default(wantedDependency.pref); - if (parsedSpec == null) - return null; - const pref = parsedSpec.gitCommittish == null || parsedSpec.gitCommittish === "" ? "HEAD" : parsedSpec.gitCommittish; - const commit = await resolveRef(parsedSpec.fetchSpec, pref, parsedSpec.gitRange); - let resolution; - if (parsedSpec.hosted != null && !isSsh(parsedSpec.fetchSpec)) { - const hosted = parsedSpec.hosted; - hosted.committish = commit; - const tarball = (_a = hosted.tarball) === null || _a === void 0 ? void 0 : _a.call(hosted); - if (tarball) { - resolution = { tarball }; - } - } - if (resolution == null) { - resolution = { - commit, - repo: parsedSpec.fetchSpec, - type: "git" - }; - } - return { - id: parsedSpec.fetchSpec.replace(/^.*:\/\/(git@)?/, "").replace(/:/g, "+").replace(/\.git$/, "") + "/" + commit, - normalizedPref: parsedSpec.normalizedPref, - resolution, - resolvedVia: "git-repository" - }; - }; - } - exports2.default = default_1; - function resolveVTags(vTags, range) { - return semver_1.default.maxSatisfying(vTags, range, true); - } - async function getRepoRefs(repo, ref) { - const gitArgs = [repo]; - if (ref !== "HEAD") { - gitArgs.unshift("--refs"); - } - if (ref) { - gitArgs.push(ref); - } - const result = await graceful_git_1.default(["ls-remote", ...gitArgs], { retries: 1 }); - const refs = result.stdout.split("\n").reduce((obj, line) => { - const [commit, refName] = line.split(" "); - obj[refName] = commit; - return obj; - }, {}); - return refs; + var url_1 = require("url"); + var create_1 = require_create(); + var defaults = { + 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 }) => computedValue + }, + timeout: {}, + headers: { + "user-agent": "got (https://github.com/sindresorhus/got)" + }, + hooks: { + init: [], + beforeRequest: [], + beforeRedirect: [], + beforeRetry: [], + beforeError: [], + afterResponse: [] + }, + cache: void 0, + dnsCache: void 0, + decompress: true, + throwHttpErrors: true, + followRedirect: true, + isStream: false, + responseType: "text", + resolveBodyOnly: false, + maxRedirects: 10, + prefixUrl: "", + methodRewriting: true, + ignoreInvalidCookies: false, + context: {}, + // TODO: Set this to `true` when Got 12 gets released + http2: false, + allowGetBody: false, + https: void 0, + pagination: { + transform: (response) => { + if (response.request.options.responseType === "json") { + return response.body; + } + return JSON.parse(response.body); + }, + paginate: (response) => { + if (!Reflect.has(response.headers, "link")) { + return false; + } + const items = response.headers.link.split(","); + let next; + for (const item of items) { + const parsed = item.split(";"); + if (parsed[1].includes("next")) { + next = parsed[0].trimStart().trim(); + next = next.slice(1, -1); + break; + } + } + if (next) { + const options = { + url: new url_1.URL(next) + }; + return options; + } + return false; + }, + filter: () => true, + shouldContinue: () => true, + countLimit: Infinity, + backoff: 0, + requestLimit: 1e4, + stackAllItems: true + }, + parseJson: (text) => JSON.parse(text), + stringifyJson: (object) => JSON.stringify(object), + cacheOptions: {} + }, + handlers: [create_1.defaultHandler], + mutableDefaults: false + }; + var got = create_1.default(defaults); + exports2.default = got; + module2.exports = got; + module2.exports.default = got; + module2.exports.__esModule = true; + __exportStar4(require_create(), exports2); + __exportStar4(require_as_promise(), exports2); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/httpUtils.js +var require_httpUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/httpUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.del = exports2.post = exports2.put = exports2.get = exports2.request = exports2.Method = exports2.getNetworkSettings = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var https_1 = require("https"); + var http_1 = require("http"); + var micromatch_12 = tslib_12.__importDefault(require_micromatch()); + var tunnel_1 = tslib_12.__importDefault(require_tunnel2()); + var url_1 = require("url"); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var cache = /* @__PURE__ */ new Map(); + var fileCache = /* @__PURE__ */ new Map(); + var globalHttpAgent = new http_1.Agent({ keepAlive: true }); + var globalHttpsAgent = new https_1.Agent({ keepAlive: true }); + function parseProxy(specifier) { + const url = new url_1.URL(specifier); + const proxy = { host: url.hostname, headers: {} }; + if (url.port) + proxy.port = Number(url.port); + if (url.username && url.password) + proxy.proxyAuth = `${url.username}:${url.password}`; + return { proxy }; + } + async function getCachedFile(filePath) { + return miscUtils.getFactoryWithDefault(fileCache, filePath, () => { + return fslib_12.xfs.readFilePromise(filePath).then((file) => { + fileCache.set(filePath, file); + return file; + }); + }); } - async function resolveRef(repo, ref, range) { - if (ref.match(/^[0-9a-f]{7,40}$/) != null) { - return ref; - } - const refs = await getRepoRefs(repo, range ? null : ref); - return resolveRefFromRefs(refs, repo, ref, range); + function prettyResponseCode({ statusCode, statusMessage }, configuration) { + const prettyStatusCode = formatUtils.pretty(configuration, statusCode, formatUtils.Type.NUMBER); + const href = `https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${statusCode}`; + return formatUtils.applyHyperlink(configuration, `${prettyStatusCode}${statusMessage ? ` (${statusMessage})` : ``}`, href); } - function resolveRefFromRefs(refs, repo, ref, range) { - if (!range) { - const commitId = refs[ref] || refs[`refs/tags/${ref}^{}`] || refs[`refs/tags/${ref}`] || refs[`refs/heads/${ref}`]; - if (!commitId) { - throw new Error(`Could not resolve ${ref} to a commit of ${repo}.`); - } - return commitId; + async function prettyNetworkError(response, { configuration, customErrorMessage }) { + var _a, _b; + try { + return await response; + } catch (err) { + if (err.name !== `HTTPError`) + throw err; + let message2 = (_a = customErrorMessage === null || customErrorMessage === void 0 ? void 0 : customErrorMessage(err, configuration)) !== null && _a !== void 0 ? _a : (_b = err.response.body) === null || _b === void 0 ? void 0 : _b.error; + if (message2 == null) { + if (err.message.startsWith(`Response code`)) { + message2 = `The remote server failed to provide the requested resource`; + } else { + message2 = err.message; + } + } + if (err.code === `ETIMEDOUT` && err.event === `socket`) + message2 += `(can be increased via ${formatUtils.pretty(configuration, `httpTimeout`, formatUtils.Type.SETTING)})`; + const networkError = new Report_1.ReportError(MessageName_1.MessageName.NETWORK_ERROR, message2, (report) => { + if (err.response) { + report.reportError(MessageName_1.MessageName.NETWORK_ERROR, ` ${formatUtils.prettyField(configuration, { + label: `Response Code`, + value: formatUtils.tuple(formatUtils.Type.NO_HINT, prettyResponseCode(err.response, configuration)) + })}`); + } + if (err.request) { + report.reportError(MessageName_1.MessageName.NETWORK_ERROR, ` ${formatUtils.prettyField(configuration, { + label: `Request Method`, + value: formatUtils.tuple(formatUtils.Type.NO_HINT, err.request.options.method) + })}`); + report.reportError(MessageName_1.MessageName.NETWORK_ERROR, ` ${formatUtils.prettyField(configuration, { + label: `Request URL`, + value: formatUtils.tuple(formatUtils.Type.URL, err.request.requestUrl) + })}`); + } + if (err.request.redirects.length > 0) { + report.reportError(MessageName_1.MessageName.NETWORK_ERROR, ` ${formatUtils.prettyField(configuration, { + label: `Request Redirects`, + value: formatUtils.tuple(formatUtils.Type.NO_HINT, formatUtils.prettyList(configuration, err.request.redirects, formatUtils.Type.URL)) + })}`); + } + if (err.request.retryCount === err.request.options.retry.limit) { + report.reportError(MessageName_1.MessageName.NETWORK_ERROR, ` ${formatUtils.prettyField(configuration, { + label: `Request Retry Count`, + value: formatUtils.tuple(formatUtils.Type.NO_HINT, `${formatUtils.pretty(configuration, err.request.retryCount, formatUtils.Type.NUMBER)} (can be increased via ${formatUtils.pretty(configuration, `httpRetry`, formatUtils.Type.SETTING)})`) + })}`); + } + }); + networkError.originalError = err; + throw networkError; + } + } + function getNetworkSettings(target, opts) { + const networkSettings = [...opts.configuration.get(`networkSettings`)].sort(([keyA], [keyB]) => { + return keyB.length - keyA.length; + }); + const mergedNetworkSettings = { + enableNetwork: void 0, + httpsCaFilePath: void 0, + httpProxy: void 0, + httpsProxy: void 0, + httpsKeyFilePath: void 0, + httpsCertFilePath: void 0 + }; + const mergableKeys = Object.keys(mergedNetworkSettings); + const url = typeof target === `string` ? new url_1.URL(target) : target; + for (const [glob, config] of networkSettings) { + if (micromatch_12.default.isMatch(url.hostname, glob)) { + for (const key of mergableKeys) { + const setting = config.get(key); + if (setting !== null && typeof mergedNetworkSettings[key] === `undefined`) { + mergedNetworkSettings[key] = setting; + } + } + } + } + for (const key of mergableKeys) + if (typeof mergedNetworkSettings[key] === `undefined`) + mergedNetworkSettings[key] = opts.configuration.get(key); + return mergedNetworkSettings; + } + exports2.getNetworkSettings = getNetworkSettings; + var Method; + (function(Method2) { + Method2["GET"] = "GET"; + Method2["PUT"] = "PUT"; + Method2["POST"] = "POST"; + Method2["DELETE"] = "DELETE"; + })(Method || (exports2.Method = Method = {})); + async function request(target, body, { configuration, headers, jsonRequest, jsonResponse, method = Method.GET }) { + const realRequest = async () => await requestImpl(target, body, { configuration, headers, jsonRequest, jsonResponse, method }); + const executor = await configuration.reduceHook((hooks) => { + return hooks.wrapNetworkRequest; + }, realRequest, { target, body, configuration, headers, jsonRequest, jsonResponse, method }); + return await executor(); + } + exports2.request = request; + async function get(target, { configuration, jsonResponse, customErrorMessage, ...rest }) { + let entry = miscUtils.getFactoryWithDefault(cache, target, () => { + return prettyNetworkError(request(target, null, { configuration, ...rest }), { configuration, customErrorMessage }).then((response) => { + cache.set(target, response.body); + return response.body; + }); + }); + if (Buffer.isBuffer(entry) === false) + entry = await entry; + if (jsonResponse) { + return JSON.parse(entry.toString()); } else { - const vTags = Object.keys(refs).filter((key) => /^refs\/tags\/v?(\d+\.\d+\.\d+(?:[-+].+)?)(\^{})?$/.test(key)).map((key) => { - return key.replace(/^refs\/tags\//, "").replace(/\^{}$/, ""); - }).filter((key) => semver_1.default.valid(key, true)); - const refVTag = resolveVTags(vTags, range); - const commitId = refVTag && (refs[`refs/tags/${refVTag}^{}`] || refs[`refs/tags/${refVTag}`]); - if (!commitId) { - throw new Error(`Could not resolve ${range} to a commit of ${repo}. Available versions are: ${vTags.join(", ")}`); - } - return commitId; + return entry; } } - function isSsh(gitSpec) { - return gitSpec.substr(0, 10) === "git+ssh://" || gitSpec.substr(0, 4) === "git@"; + exports2.get = get; + async function put(target, body, { customErrorMessage, ...options }) { + const response = await prettyNetworkError(request(target, body, { ...options, method: Method.PUT }), { customErrorMessage, configuration: options.configuration }); + return response.body; + } + exports2.put = put; + async function post(target, body, { customErrorMessage, ...options }) { + const response = await prettyNetworkError(request(target, body, { ...options, method: Method.POST }), { customErrorMessage, configuration: options.configuration }); + return response.body; + } + exports2.post = post; + async function del(target, { customErrorMessage, ...options }) { + const response = await prettyNetworkError(request(target, null, { ...options, method: Method.DELETE }), { customErrorMessage, configuration: options.configuration }); + return response.body; + } + exports2.del = del; + async function requestImpl(target, body, { configuration, headers, jsonRequest, jsonResponse, method = Method.GET }) { + const url = typeof target === `string` ? new url_1.URL(target) : target; + const networkConfig = getNetworkSettings(url, { configuration }); + if (networkConfig.enableNetwork === false) + throw new Report_1.ReportError(MessageName_1.MessageName.NETWORK_DISABLED, `Request to '${url.href}' has been blocked because of your configuration settings`); + if (url.protocol === `http:` && !micromatch_12.default.isMatch(url.hostname, configuration.get(`unsafeHttpWhitelist`))) + throw new Report_1.ReportError(MessageName_1.MessageName.NETWORK_UNSAFE_HTTP, `Unsafe http requests must be explicitly whitelisted in your configuration (${url.hostname})`); + const agent = { + http: networkConfig.httpProxy ? tunnel_1.default.httpOverHttp(parseProxy(networkConfig.httpProxy)) : globalHttpAgent, + https: networkConfig.httpsProxy ? tunnel_1.default.httpsOverHttp(parseProxy(networkConfig.httpsProxy)) : globalHttpsAgent + }; + const gotOptions = { agent, headers, method }; + gotOptions.responseType = jsonResponse ? `json` : `buffer`; + if (body !== null) { + if (Buffer.isBuffer(body) || !jsonRequest && typeof body === `string`) { + gotOptions.body = body; + } else { + gotOptions.json = body; + } + } + const socketTimeout = configuration.get(`httpTimeout`); + const retry = configuration.get(`httpRetry`); + const rejectUnauthorized = configuration.get(`enableStrictSsl`); + const httpsCaFilePath = networkConfig.httpsCaFilePath; + const httpsCertFilePath = networkConfig.httpsCertFilePath; + const httpsKeyFilePath = networkConfig.httpsKeyFilePath; + const { default: got } = await Promise.resolve().then(() => tslib_12.__importStar(require_source7())); + const certificateAuthority = httpsCaFilePath ? await getCachedFile(httpsCaFilePath) : void 0; + const certificate = httpsCertFilePath ? await getCachedFile(httpsCertFilePath) : void 0; + const key = httpsKeyFilePath ? await getCachedFile(httpsKeyFilePath) : void 0; + const gotClient = got.extend({ + timeout: { + socket: socketTimeout + }, + retry, + https: { + rejectUnauthorized, + certificateAuthority, + certificate, + key + }, + ...gotOptions + }); + return configuration.getLimit(`networkConcurrency`)(() => { + return gotClient(url); + }); } } }); -// ../local-resolver/lib/parsePref.js -var require_parsePref2 = __commonJS({ - "../local-resolver/lib/parsePref.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/nodeUtils.js +var require_nodeUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/nodeUtils.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var os_1 = __importDefault(require("os")); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var normalize_path_1 = __importDefault(require_normalize_path()); - var isWindows = process.platform === "win32" || global["FAKE_WINDOWS"]; - var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; - var isFilename = /[.](?:tgz|tar.gz|tar)$/i; - var isAbsolutePath = /^[/]|^[A-Za-z]:/; - function parsePref(pref, projectDir, lockfileDir) { - if (pref.startsWith("link:") || pref.startsWith("workspace:")) { - return fromLocal(pref, projectDir, lockfileDir, "directory"); - } - if (pref.endsWith(".tgz") || pref.endsWith(".tar.gz") || pref.endsWith(".tar") || pref.includes(path_1.default.sep) || pref.startsWith("file:") || isFilespec.test(pref)) { - const type = isFilename.test(pref) ? "file" : "directory"; - return fromLocal(pref, projectDir, lockfileDir, type); + exports2.availableParallelism = exports2.getCaller = exports2.getArchitectureSet = exports2.getArchitectureName = exports2.getArchitecture = exports2.builtinModules = exports2.openUrl = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var module_1 = tslib_12.__importDefault(require("module")); + var os_1 = tslib_12.__importDefault(require("os")); + var execUtils = tslib_12.__importStar(require_execUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var openUrlBinary = (/* @__PURE__ */ new Map([ + [`darwin`, `open`], + [`linux`, `xdg-open`], + [`win32`, `explorer.exe`] + ])).get(process.platform); + exports2.openUrl = typeof openUrlBinary !== `undefined` ? async (url) => { + try { + await execUtils.execvp(openUrlBinary, [url], { cwd: fslib_12.ppath.cwd() }); + return true; + } catch { + return false; } - if (pref.startsWith("path:")) { - const err = new error_1.default("PATH_IS_UNSUPPORTED_PROTOCOL", "Local dependencies via `path:` protocol are not supported. Use the `link:` protocol for folder dependencies and `file:` for local tarballs"); - err["pref"] = pref; - err["protocol"] = "path:"; - throw err; + } : void 0; + function builtinModules() { + return new Set(module_1.default.builtinModules || Object.keys(process.binding(`natives`))); + } + exports2.builtinModules = builtinModules; + function getLibc() { + var _a, _b, _c, _d; + if (process.platform === `win32`) + return null; + const report = (_b = (_a = process.report) === null || _a === void 0 ? void 0 : _a.getReport()) !== null && _b !== void 0 ? _b : {}; + const sharedObjects = (_c = report.sharedObjects) !== null && _c !== void 0 ? _c : []; + const libcRegExp = /\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/; + return (_d = miscUtils.mapAndFind(sharedObjects, (entry) => { + const match = entry.match(libcRegExp); + if (!match) + return miscUtils.mapAndFind.skip; + if (match[1]) + return `glibc`; + if (match[2]) + return `musl`; + throw new Error(`Assertion failed: Expected the libc variant to have been detected`); + })) !== null && _d !== void 0 ? _d : null; + } + var architecture; + var architectureSet; + function getArchitecture() { + return architecture = architecture !== null && architecture !== void 0 ? architecture : { + os: process.platform, + cpu: process.arch, + libc: getLibc() + }; + } + exports2.getArchitecture = getArchitecture; + function getArchitectureName(architecture2 = getArchitecture()) { + if (architecture2.libc) { + return `${architecture2.os}-${architecture2.cpu}-${architecture2.libc}`; + } else { + return `${architecture2.os}-${architecture2.cpu}`; } - return null; } - exports2.default = parsePref; - function fromLocal(pref, projectDir, lockfileDir, type) { - const spec = pref.replace(/\\/g, "/").replace(/^(file|link|workspace):[/]*([A-Za-z]:)/, "$2").replace(/^(file|link|workspace):(?:[/]*([~./]))?/, "$2"); - const protocol = type === "directory" ? "link:" : "file:"; - let fetchSpec; - let normalizedPref; - if (/^~[/]/.test(spec)) { - fetchSpec = resolvePath(os_1.default.homedir(), spec.slice(2)); - normalizedPref = `${protocol}${spec}`; + exports2.getArchitectureName = getArchitectureName; + function getArchitectureSet() { + const architecture2 = getArchitecture(); + return architectureSet = architectureSet !== null && architectureSet !== void 0 ? architectureSet : { + os: [architecture2.os], + cpu: [architecture2.cpu], + libc: architecture2.libc ? [architecture2.libc] : [] + }; + } + exports2.getArchitectureSet = getArchitectureSet; + var chromeRe = /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i; + var chromeEvalRe = /\((\S*)(?::(\d+))(?::(\d+))\)/; + function parseStackLine(line) { + const parts = chromeRe.exec(line); + if (!parts) + return null; + const isNative = parts[2] && parts[2].indexOf(`native`) === 0; + const isEval = parts[2] && parts[2].indexOf(`eval`) === 0; + const submatch = chromeEvalRe.exec(parts[2]); + if (isEval && submatch != null) { + parts[2] = submatch[1]; + parts[3] = submatch[2]; + parts[4] = submatch[3]; + } + return { + file: !isNative ? parts[2] : null, + methodName: parts[1] || ``, + arguments: isNative ? [parts[2]] : [], + line: parts[3] ? +parts[3] : null, + column: parts[4] ? +parts[4] : null + }; + } + function getCaller() { + const err = new Error(); + const line = err.stack.split(` +`)[3]; + return parseStackLine(line); + } + exports2.getCaller = getCaller; + function availableParallelism() { + if (`availableParallelism` in os_1.default) + return os_1.default.availableParallelism(); + return Math.max(1, os_1.default.cpus().length); + } + exports2.availableParallelism = availableParallelism; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Configuration.js +var require_Configuration = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Configuration.js"(exports2) { + "use strict"; + var _a; + var _b; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Configuration = exports2.ProjectLookup = exports2.coreDefinitions = exports2.WindowsLinkType = exports2.FormatType = exports2.SettingsType = exports2.SECRET = exports2.DEFAULT_LOCK_FILENAME = exports2.DEFAULT_RC_FILENAME = exports2.ENVIRONMENT_PREFIX = exports2.TAG_REGEXP = exports2.LEGACY_PLUGINS = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var libzip_1 = require_sync9(); + var parsers_1 = require_lib122(); + var camelcase_1 = tslib_12.__importDefault(require_camelcase2()); + var ci_info_1 = require_ci_info(); + var clipanion_12 = require_advanced(); + var p_limit_12 = tslib_12.__importDefault(require_p_limit2()); + var stream_12 = require("stream"); + var CorePlugin_1 = require_CorePlugin(); + var Manifest_1 = require_Manifest(); + var MultiFetcher_1 = require_MultiFetcher(); + var MultiResolver_1 = require_MultiResolver(); + var VirtualFetcher_1 = require_VirtualFetcher(); + var VirtualResolver_1 = require_VirtualResolver(); + var WorkspaceFetcher_1 = require_WorkspaceFetcher(); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + var configUtils = tslib_12.__importStar(require_configUtils()); + var folderUtils = tslib_12.__importStar(require_folderUtils()); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var httpUtils = tslib_12.__importStar(require_httpUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var nodeUtils = tslib_12.__importStar(require_nodeUtils()); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var types_1 = require_types5(); + var isPublicRepository = ci_info_1.GITHUB_ACTIONS && process.env.GITHUB_EVENT_PATH ? !((_b = (_a = fslib_12.xfs.readJsonSync(fslib_12.npath.toPortablePath(process.env.GITHUB_EVENT_PATH)).repository) === null || _a === void 0 ? void 0 : _a.private) !== null && _b !== void 0 ? _b : true) : false; + exports2.LEGACY_PLUGINS = /* @__PURE__ */ new Set([ + `@yarnpkg/plugin-constraints`, + `@yarnpkg/plugin-exec`, + `@yarnpkg/plugin-interactive-tools`, + `@yarnpkg/plugin-stage`, + `@yarnpkg/plugin-typescript`, + `@yarnpkg/plugin-version`, + `@yarnpkg/plugin-workspace-tools` + ]); + var IGNORED_ENV_VARIABLES = /* @__PURE__ */ new Set([ + // Used by our test environment + `isTestEnv`, + `injectNpmUser`, + `injectNpmPassword`, + `injectNpm2FaToken`, + // "binFolder" is the magic location where the parent process stored the + // current binaries; not an actual configuration settings + `binFolder`, + // "version" is set by Docker: + // https://github.com/nodejs/docker-node/blob/5a6a5e91999358c5b04fddd6c22a9a4eb0bf3fbf/10/alpine/Dockerfile#L51 + `version`, + // "flags" is set by Netlify; they use it to specify the flags to send to the + // CLI when running the automatic `yarn install` + `flags`, + // "gpg" and "profile" are used by the install.sh script: + // https://classic.yarnpkg.com/install.sh + `profile`, + `gpg`, + // "ignoreNode" is used to disable the Node version check + `ignoreNode`, + // "wrapOutput" was a variable used to indicate nested "yarn run" processes + // back in Yarn 1. + `wrapOutput`, + // "YARN_HOME" and "YARN_CONF_DIR" may be present as part of the unrelated "Apache Hadoop YARN" software project. + // https://hadoop.apache.org/docs/r0.23.11/hadoop-project-dist/hadoop-common/SingleCluster.html + `home`, + `confDir`, + // "YARN_REGISTRY", read by yarn 1.x, prevents yarn 2+ installations if set + `registry` + ]); + exports2.TAG_REGEXP = /^(?!v)[a-z0-9._-]+$/i; + exports2.ENVIRONMENT_PREFIX = `yarn_`; + exports2.DEFAULT_RC_FILENAME = `.yarnrc.yml`; + exports2.DEFAULT_LOCK_FILENAME = `yarn.lock`; + exports2.SECRET = `********`; + var SettingsType; + (function(SettingsType2) { + SettingsType2["ANY"] = "ANY"; + SettingsType2["BOOLEAN"] = "BOOLEAN"; + SettingsType2["ABSOLUTE_PATH"] = "ABSOLUTE_PATH"; + SettingsType2["LOCATOR"] = "LOCATOR"; + SettingsType2["LOCATOR_LOOSE"] = "LOCATOR_LOOSE"; + SettingsType2["NUMBER"] = "NUMBER"; + SettingsType2["STRING"] = "STRING"; + SettingsType2["SECRET"] = "SECRET"; + SettingsType2["SHAPE"] = "SHAPE"; + SettingsType2["MAP"] = "MAP"; + })(SettingsType || (exports2.SettingsType = SettingsType = {})); + exports2.FormatType = formatUtils.Type; + var WindowsLinkType; + (function(WindowsLinkType2) { + WindowsLinkType2["JUNCTIONS"] = "junctions"; + WindowsLinkType2["SYMLINKS"] = "symlinks"; + })(WindowsLinkType || (exports2.WindowsLinkType = WindowsLinkType = {})); + exports2.coreDefinitions = { + // Not implemented for now, but since it's part of all Yarn installs we want to declare it in order to improve drop-in compatibility + lastUpdateCheck: { + description: `Last timestamp we checked whether new Yarn versions were available`, + type: SettingsType.STRING, + default: null + }, + // Settings related to proxying all Yarn calls to a specific executable + yarnPath: { + description: `Path to the local executable that must be used over the global one`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + ignorePath: { + description: `If true, the local executable will be ignored when using the global one`, + type: SettingsType.BOOLEAN, + default: false + }, + ignoreCwd: { + description: `If true, the \`--cwd\` flag will be ignored`, + type: SettingsType.BOOLEAN, + default: false + }, + // Settings related to the package manager internal names + cacheKeyOverride: { + description: `A global cache key override; used only for test purposes`, + type: SettingsType.STRING, + default: null + }, + globalFolder: { + description: `Folder where all system-global files are stored`, + type: SettingsType.ABSOLUTE_PATH, + default: folderUtils.getDefaultGlobalFolder() + }, + cacheFolder: { + description: `Folder where the cache files must be written`, + type: SettingsType.ABSOLUTE_PATH, + default: `./.yarn/cache` + }, + compressionLevel: { + description: `Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)`, + type: SettingsType.NUMBER, + values: [`mixed`, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9], + default: libzip_1.DEFAULT_COMPRESSION_LEVEL + }, + virtualFolder: { + description: `Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)`, + type: SettingsType.ABSOLUTE_PATH, + default: `./.yarn/__virtual__` + }, + lockfileFilename: { + description: `Name of the files where the Yarn dependency tree entries must be stored`, + type: SettingsType.STRING, + default: exports2.DEFAULT_LOCK_FILENAME + }, + installStatePath: { + description: `Path of the file where the install state will be persisted`, + type: SettingsType.ABSOLUTE_PATH, + default: `./.yarn/install-state.gz` + }, + immutablePatterns: { + description: `Array of glob patterns; files matching them won't be allowed to change during immutable installs`, + type: SettingsType.STRING, + default: [], + isArray: true + }, + rcFilename: { + description: `Name of the files where the configuration can be found`, + type: SettingsType.STRING, + default: getRcFilename() + }, + enableGlobalCache: { + description: `If true, the system-wide cache folder will be used regardless of \`cache-folder\``, + type: SettingsType.BOOLEAN, + default: true + }, + // Settings related to the output style + enableColors: { + description: `If true, the CLI is allowed to use colors in its output`, + type: SettingsType.BOOLEAN, + default: formatUtils.supportsColor, + defaultText: `` + }, + enableHyperlinks: { + description: `If true, the CLI is allowed to use hyperlinks in its output`, + type: SettingsType.BOOLEAN, + default: formatUtils.supportsHyperlinks, + defaultText: `` + }, + enableInlineBuilds: { + description: `If true, the CLI will print the build output on the command line`, + type: SettingsType.BOOLEAN, + default: ci_info_1.isCI, + defaultText: `` + }, + enableMessageNames: { + description: `If true, the CLI will prefix most messages with codes suitable for search engines`, + type: SettingsType.BOOLEAN, + default: true + }, + enableProgressBars: { + description: `If true, the CLI is allowed to show a progress bar for long-running events`, + type: SettingsType.BOOLEAN, + default: !ci_info_1.isCI, + defaultText: `` + }, + enableTimers: { + description: `If true, the CLI is allowed to print the time spent executing commands`, + type: SettingsType.BOOLEAN, + default: true + }, + preferAggregateCacheInfo: { + description: `If true, the CLI will only print a one-line report of any cache changes`, + type: SettingsType.BOOLEAN, + default: ci_info_1.isCI + }, + preferInteractive: { + description: `If true, the CLI will automatically use the interactive mode when called from a TTY`, + type: SettingsType.BOOLEAN, + default: false + }, + preferTruncatedLines: { + description: `If true, the CLI will truncate lines that would go beyond the size of the terminal`, + type: SettingsType.BOOLEAN, + default: false + }, + progressBarStyle: { + description: `Which style of progress bar should be used (only when progress bars are enabled)`, + type: SettingsType.STRING, + default: void 0, + defaultText: `` + }, + // Settings related to how packages are interpreted by default + defaultLanguageName: { + description: `Default language mode that should be used when a package doesn't offer any insight`, + type: SettingsType.STRING, + default: `node` + }, + defaultProtocol: { + description: `Default resolution protocol used when resolving pure semver and tag ranges`, + type: SettingsType.STRING, + default: `npm:` + }, + enableTransparentWorkspaces: { + description: `If false, Yarn won't automatically resolve workspace dependencies unless they use the \`workspace:\` protocol`, + type: SettingsType.BOOLEAN, + default: true + }, + supportedArchitectures: { + description: `Architectures that Yarn will fetch and inject into the resolver`, + type: SettingsType.SHAPE, + properties: { + os: { + description: `Array of supported process.platform strings, or null to target them all`, + type: SettingsType.STRING, + isArray: true, + isNullable: true, + default: [`current`] + }, + cpu: { + description: `Array of supported process.arch strings, or null to target them all`, + type: SettingsType.STRING, + isArray: true, + isNullable: true, + default: [`current`] + }, + libc: { + description: `Array of supported libc libraries, or null to target them all`, + type: SettingsType.STRING, + isArray: true, + isNullable: true, + default: [`current`] + } + } + }, + // Settings related to network access + enableMirror: { + description: `If true, the downloaded packages will be retrieved and stored in both the local and global folders`, + type: SettingsType.BOOLEAN, + default: true + }, + enableNetwork: { + description: `If false, the package manager will refuse to use the network if required to`, + type: SettingsType.BOOLEAN, + default: true + }, + httpProxy: { + description: `URL of the http proxy that must be used for outgoing http requests`, + type: SettingsType.STRING, + default: null + }, + httpsProxy: { + description: `URL of the http proxy that must be used for outgoing https requests`, + type: SettingsType.STRING, + default: null + }, + unsafeHttpWhitelist: { + description: `List of the hostnames for which http queries are allowed (glob patterns are supported)`, + type: SettingsType.STRING, + default: [], + isArray: true + }, + httpTimeout: { + description: `Timeout of each http request in milliseconds`, + type: SettingsType.NUMBER, + default: 6e4 + }, + httpRetry: { + description: `Retry times on http failure`, + type: SettingsType.NUMBER, + default: 3 + }, + networkConcurrency: { + description: `Maximal number of concurrent requests`, + type: SettingsType.NUMBER, + default: 50 + }, + networkSettings: { + description: `Network settings per hostname (glob patterns are supported)`, + type: SettingsType.MAP, + valueDefinition: { + description: ``, + type: SettingsType.SHAPE, + properties: { + httpsCaFilePath: { + description: `Path to file containing one or multiple Certificate Authority signing certificates`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + enableNetwork: { + description: `If false, the package manager will refuse to use the network if required to`, + type: SettingsType.BOOLEAN, + default: null + }, + httpProxy: { + description: `URL of the http proxy that must be used for outgoing http requests`, + type: SettingsType.STRING, + default: null + }, + httpsProxy: { + description: `URL of the http proxy that must be used for outgoing https requests`, + type: SettingsType.STRING, + default: null + }, + httpsKeyFilePath: { + description: `Path to file containing private key in PEM format`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + httpsCertFilePath: { + description: `Path to file containing certificate chain in PEM format`, + type: SettingsType.ABSOLUTE_PATH, + default: null + } + } + } + }, + httpsCaFilePath: { + description: `A path to a file containing one or multiple Certificate Authority signing certificates`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + httpsKeyFilePath: { + description: `Path to file containing private key in PEM format`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + httpsCertFilePath: { + description: `Path to file containing certificate chain in PEM format`, + type: SettingsType.ABSOLUTE_PATH, + default: null + }, + enableStrictSsl: { + description: `If false, SSL certificate errors will be ignored`, + type: SettingsType.BOOLEAN, + default: true + }, + logFilters: { + description: `Overrides for log levels`, + type: SettingsType.SHAPE, + isArray: true, + concatenateValues: true, + properties: { + code: { + description: `Code of the messages covered by this override`, + type: SettingsType.STRING, + default: void 0 + }, + text: { + description: `Code of the texts covered by this override`, + type: SettingsType.STRING, + default: void 0 + }, + pattern: { + description: `Code of the patterns covered by this override`, + type: SettingsType.STRING, + default: void 0 + }, + level: { + description: `Log level override, set to null to remove override`, + type: SettingsType.STRING, + values: Object.values(formatUtils.LogLevel), + isNullable: true, + default: void 0 + } + } + }, + // Settings related to telemetry + enableTelemetry: { + description: `If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry`, + type: SettingsType.BOOLEAN, + default: true + }, + telemetryInterval: { + description: `Minimal amount of time between two telemetry uploads, in days`, + type: SettingsType.NUMBER, + default: 7 + }, + telemetryUserId: { + description: `If you desire to tell us which project you are, you can set this field. Completely optional and opt-in.`, + type: SettingsType.STRING, + default: null + }, + // Settings related to security + enableHardenedMode: { + description: `If true, automatically enable --check-resolutions --refresh-lockfile on installs`, + type: SettingsType.BOOLEAN, + default: ci_info_1.isPR && isPublicRepository, + defaultText: `` + }, + enableScripts: { + description: `If true, packages are allowed to have install scripts by default`, + type: SettingsType.BOOLEAN, + default: true + }, + enableStrictSettings: { + description: `If true, unknown settings will cause Yarn to abort`, + type: SettingsType.BOOLEAN, + default: true + }, + enableImmutableCache: { + description: `If true, the cache is reputed immutable and actions that would modify it will throw`, + type: SettingsType.BOOLEAN, + default: false + }, + checksumBehavior: { + description: `Enumeration defining what to do when a checksum doesn't match expectations`, + type: SettingsType.STRING, + default: `throw` + }, + // Package patching - to fix incorrect definitions + packageExtensions: { + description: `Map of package corrections to apply on the dependency tree`, + type: SettingsType.MAP, + valueDefinition: { + description: `The extension that will be applied to any package whose version matches the specified range`, + type: SettingsType.SHAPE, + properties: { + dependencies: { + description: `The set of dependencies that must be made available to the current package in order for it to work properly`, + type: SettingsType.MAP, + valueDefinition: { + description: `A range`, + type: SettingsType.STRING + } + }, + peerDependencies: { + description: `Inherited dependencies - the consumer of the package will be tasked to provide them`, + type: SettingsType.MAP, + valueDefinition: { + description: `A semver range`, + type: SettingsType.STRING + } + }, + peerDependenciesMeta: { + description: `Extra information related to the dependencies listed in the peerDependencies field`, + type: SettingsType.MAP, + valueDefinition: { + description: `The peerDependency meta`, + type: SettingsType.SHAPE, + properties: { + optional: { + description: `If true, the selected peer dependency will be marked as optional by the package manager and the consumer omitting it won't be reported as an error`, + type: SettingsType.BOOLEAN, + default: false + } + } + } + } + } + } + } + }; + function parseValue(configuration, path2, valueBase, definition, folder) { + const value = configUtils.getValue(valueBase); + if (definition.isArray || definition.type === SettingsType.ANY && Array.isArray(value)) { + if (!Array.isArray(value)) { + return String(value).split(/,/).map((segment) => { + return parseSingleValue(configuration, path2, segment, definition, folder); + }); + } else { + return value.map((sub, i) => parseSingleValue(configuration, `${path2}[${i}]`, sub, definition, folder)); + } } else { - fetchSpec = resolvePath(projectDir, spec); - if (isAbsolute(spec)) { - normalizedPref = `${protocol}${spec}`; + if (Array.isArray(value)) { + throw new Error(`Non-array configuration settings "${path2}" cannot be an array`); } else { - normalizedPref = `${protocol}${path_1.default.relative(projectDir, fetchSpec)}`; + return parseSingleValue(configuration, path2, valueBase, definition, folder); } } - const dependencyPath = normalize_path_1.default(path_1.default.relative(projectDir, fetchSpec)); - const id = type === "directory" || projectDir === lockfileDir ? `${protocol}${dependencyPath}` : `${protocol}${normalize_path_1.default(path_1.default.relative(lockfileDir, fetchSpec))}`; - return { - dependencyPath, - fetchSpec, - id, - normalizedPref, - type + } + function parseSingleValue(configuration, path2, valueBase, definition, folder) { + var _a2; + const value = configUtils.getValue(valueBase); + switch (definition.type) { + case SettingsType.ANY: + return configUtils.getValueByTree(value); + case SettingsType.SHAPE: + return parseShape(configuration, path2, valueBase, definition, folder); + case SettingsType.MAP: + return parseMap(configuration, path2, valueBase, definition, folder); + } + if (value === null && !definition.isNullable && definition.default !== null) + throw new Error(`Non-nullable configuration settings "${path2}" cannot be set to null`); + if ((_a2 = definition.values) === null || _a2 === void 0 ? void 0 : _a2.includes(value)) + return value; + const interpretValue = () => { + if (definition.type === SettingsType.BOOLEAN && typeof value !== `string`) + return miscUtils.parseBoolean(value); + if (typeof value !== `string`) + throw new Error(`Expected configuration setting "${path2}" to be a string, got ${typeof value}`); + const valueWithReplacedVariables = miscUtils.replaceEnvVariables(value, { + env: process.env + }); + switch (definition.type) { + case SettingsType.ABSOLUTE_PATH: { + let cwd = folder; + const source = configUtils.getSource(valueBase); + if (source) + cwd = fslib_12.ppath.resolve(source, `..`); + return fslib_12.ppath.resolve(cwd, fslib_12.npath.toPortablePath(valueWithReplacedVariables)); + } + case SettingsType.LOCATOR_LOOSE: + return structUtils.parseLocator(valueWithReplacedVariables, false); + case SettingsType.NUMBER: + return parseInt(valueWithReplacedVariables); + case SettingsType.LOCATOR: + return structUtils.parseLocator(valueWithReplacedVariables); + case SettingsType.BOOLEAN: + return miscUtils.parseBoolean(valueWithReplacedVariables); + default: + return valueWithReplacedVariables; + } }; + const interpreted = interpretValue(); + if (definition.values && !definition.values.includes(interpreted)) + throw new Error(`Invalid value, expected one of ${definition.values.join(`, `)}`); + return interpreted; } - function resolvePath(where, spec) { - if (isAbsolutePath.test(spec)) - return spec; - return path_1.default.resolve(where, spec); + function parseShape(configuration, path2, valueBase, definition, folder) { + const value = configUtils.getValue(valueBase); + if (typeof value !== `object` || Array.isArray(value)) + throw new clipanion_12.UsageError(`Object configuration settings "${path2}" must be an object`); + const result2 = getDefaultValue(configuration, definition, { + ignoreArrays: true + }); + if (value === null) + return result2; + for (const [propKey, propValue] of Object.entries(value)) { + const subPath = `${path2}.${propKey}`; + const subDefinition = definition.properties[propKey]; + if (!subDefinition) + throw new clipanion_12.UsageError(`Unrecognized configuration settings found: ${path2}.${propKey} - run "yarn config -v" to see the list of settings supported in Yarn`); + result2.set(propKey, parseValue(configuration, subPath, propValue, definition.properties[propKey], folder)); + } + return result2; + } + function parseMap(configuration, path2, valueBase, definition, folder) { + const value = configUtils.getValue(valueBase); + const result2 = /* @__PURE__ */ new Map(); + if (typeof value !== `object` || Array.isArray(value)) + throw new clipanion_12.UsageError(`Map configuration settings "${path2}" must be an object`); + if (value === null) + return result2; + for (const [propKey, propValue] of Object.entries(value)) { + const normalizedKey = definition.normalizeKeys ? definition.normalizeKeys(propKey) : propKey; + const subPath = `${path2}['${normalizedKey}']`; + const valueDefinition = definition.valueDefinition; + result2.set(normalizedKey, parseValue(configuration, subPath, propValue, valueDefinition, folder)); + } + return result2; } - function isAbsolute(dir) { - if (dir[0] === "/") - return true; - if (/^[A-Za-z]:/.test(dir)) - return true; - return false; + function getDefaultValue(configuration, definition, { ignoreArrays = false } = {}) { + switch (definition.type) { + case SettingsType.SHAPE: + { + if (definition.isArray && !ignoreArrays) + return []; + const result2 = /* @__PURE__ */ new Map(); + for (const [propKey, propDefinition] of Object.entries(definition.properties)) + result2.set(propKey, getDefaultValue(configuration, propDefinition)); + return result2; + } + break; + case SettingsType.MAP: + { + if (definition.isArray && !ignoreArrays) + return []; + return /* @__PURE__ */ new Map(); + } + break; + case SettingsType.ABSOLUTE_PATH: + { + if (definition.default === null) + return null; + if (configuration.projectCwd === null) { + if (fslib_12.ppath.isAbsolute(definition.default)) { + return fslib_12.ppath.normalize(definition.default); + } else if (definition.isNullable) { + return null; + } else { + return void 0; + } + } else { + if (Array.isArray(definition.default)) { + return definition.default.map((entry) => fslib_12.ppath.resolve(configuration.projectCwd, entry)); + } else { + return fslib_12.ppath.resolve(configuration.projectCwd, definition.default); + } + } + } + break; + default: + { + return definition.default; + } + break; + } } - } -}); - -// ../local-resolver/lib/index.js -var require_lib43 = __commonJS({ - "../local-resolver/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var graceful_fs_1 = __importDefault(require_lib18()); - var read_project_manifest_1 = require_lib19(); - var ssri_1 = __importDefault(require_ssri()); - var parsePref_1 = __importDefault(require_parsePref2()); - async function resolveLocal(wantedDependency, opts) { - var _a; - const spec = parsePref_1.default(wantedDependency.pref, opts.projectDir, (_a = opts.lockfileDir) !== null && _a !== void 0 ? _a : opts.projectDir); - if (spec == null) - return null; - if (spec.type === "file") { - return { - id: spec.id, - normalizedPref: spec.normalizedPref, - resolution: { - integrity: await getFileIntegrity(spec.fetchSpec), - tarball: spec.id - }, - resolvedVia: "local-filesystem" - }; + function transformConfiguration(rawValue, definition, transforms) { + if (definition.type === SettingsType.SECRET && typeof rawValue === `string` && transforms.hideSecrets) + return exports2.SECRET; + if (definition.type === SettingsType.ABSOLUTE_PATH && typeof rawValue === `string` && transforms.getNativePaths) + return fslib_12.npath.fromPortablePath(rawValue); + if (definition.isArray && Array.isArray(rawValue)) { + const newValue = []; + for (const value of rawValue) + newValue.push(transformConfiguration(value, definition, transforms)); + return newValue; + } + if (definition.type === SettingsType.MAP && rawValue instanceof Map) { + const newValue = /* @__PURE__ */ new Map(); + for (const [key, value] of rawValue.entries()) + newValue.set(key, transformConfiguration(value, definition.valueDefinition, transforms)); + return newValue; + } + if (definition.type === SettingsType.SHAPE && rawValue instanceof Map) { + const newValue = /* @__PURE__ */ new Map(); + for (const [key, value] of rawValue.entries()) { + const propertyDefinition = definition.properties[key]; + newValue.set(key, transformConfiguration(value, propertyDefinition, transforms)); + } + return newValue; + } + return rawValue; + } + function getEnvironmentSettings() { + const environmentSettings = {}; + for (let [key, value] of Object.entries(process.env)) { + key = key.toLowerCase(); + if (!key.startsWith(exports2.ENVIRONMENT_PREFIX)) + continue; + key = (0, camelcase_1.default)(key.slice(exports2.ENVIRONMENT_PREFIX.length)); + environmentSettings[key] = value; } - let localDependencyManifest; - try { - localDependencyManifest = await read_project_manifest_1.readProjectManifestOnly(spec.fetchSpec); - } catch (internalErr) { - if (!fs_1.existsSync(spec.fetchSpec)) { - throw new error_1.default("LINKED_PKG_DIR_NOT_FOUND", `Could not install from "${spec.fetchSpec}" as it does not exist.`); - } - switch (internalErr.code) { - case "ENOTDIR": { - throw new error_1.default("NOT_PACKAGE_DIRECTORY", `Could not install from "${spec.fetchSpec}" as it is not a directory.`); - } - case "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND": - case "ENOENT": { - localDependencyManifest = { - name: path_1.default.basename(spec.fetchSpec), - version: "0.0.0" - }; + return environmentSettings; + } + function getRcFilename() { + const rcKey = `${exports2.ENVIRONMENT_PREFIX}rc_filename`; + for (const [key, value] of Object.entries(process.env)) + if (key.toLowerCase() === rcKey && typeof value === `string`) + return value; + return exports2.DEFAULT_RC_FILENAME; + } + var ProjectLookup; + (function(ProjectLookup2) { + ProjectLookup2[ProjectLookup2["LOCKFILE"] = 0] = "LOCKFILE"; + ProjectLookup2[ProjectLookup2["MANIFEST"] = 1] = "MANIFEST"; + ProjectLookup2[ProjectLookup2["NONE"] = 2] = "NONE"; + })(ProjectLookup || (exports2.ProjectLookup = ProjectLookup = {})); + var Configuration = class { + static create(startingCwd, projectCwdOrPlugins, maybePlugins) { + const configuration = new Configuration(startingCwd); + if (typeof projectCwdOrPlugins !== `undefined` && !(projectCwdOrPlugins instanceof Map)) + configuration.projectCwd = projectCwdOrPlugins; + configuration.importSettings(exports2.coreDefinitions); + const plugins = typeof maybePlugins !== `undefined` ? maybePlugins : projectCwdOrPlugins instanceof Map ? projectCwdOrPlugins : /* @__PURE__ */ new Map(); + for (const [name, plugin] of plugins) + configuration.activatePlugin(name, plugin); + return configuration; + } + /** + * Instantiate a new configuration object exposing the configuration obtained + * from reading the various rc files and the environment settings. + * + * The `pluginConfiguration` parameter is expected to indicate: + * + * 1. which modules should be made available to plugins when they require a + * package (this is the dynamic linking part - for example we want all the + * plugins to use the exact same version of @yarnpkg/core, which also is the + * version used by the running Yarn instance). + * + * 2. which of those modules are actually plugins that need to be injected + * within the configuration. + * + * Note that some extra plugins will be automatically added based on the + * content of the rc files - with the rc plugins taking precedence over + * the other ones. + * + * One particularity: the plugin initialization order is quite strict, with + * plugins listed in /foo/bar/.yarnrc.yml taking precedence over plugins + * listed in /foo/.yarnrc.yml and /.yarnrc.yml. Additionally, while plugins + * can depend on one another, they can only depend on plugins that have been + * instantiated before them (so a plugin listed in /foo/.yarnrc.yml can + * depend on another one listed on /foo/bar/.yarnrc.yml, but not the other + * way around). + */ + static async find(startingCwd, pluginConfiguration, { lookup = ProjectLookup.LOCKFILE, strict = true, usePath = false, useRc = true } = {}) { + var _a2, _b2; + const environmentSettings = getEnvironmentSettings(); + delete environmentSettings.rcFilename; + const rcFiles = await Configuration.findRcFiles(startingCwd); + const homeRcFile = await Configuration.findHomeRcFile(); + if (homeRcFile) { + const rcFile = rcFiles.find((rcFile2) => rcFile2.path === homeRcFile.path); + if (!rcFile) { + rcFiles.unshift(homeRcFile); + } + } + const resolvedRcFile = configUtils.resolveRcFiles(rcFiles.map((rcFile) => [rcFile.path, rcFile.data])); + const resolvedRcFileCwd = `.`; + const allCoreFieldKeys = new Set(Object.keys(exports2.coreDefinitions)); + const pickPrimaryCoreFields = ({ ignoreCwd, yarnPath, ignorePath, lockfileFilename: lockfileFilename2 }) => ({ ignoreCwd, yarnPath, ignorePath, lockfileFilename: lockfileFilename2 }); + const pickSecondaryCoreFields = ({ ignoreCwd, yarnPath, ignorePath, lockfileFilename: lockfileFilename2, ...rest }) => { + const secondaryCoreFields = {}; + for (const [key, value] of Object.entries(rest)) + if (allCoreFieldKeys.has(key)) + secondaryCoreFields[key] = value; + return secondaryCoreFields; + }; + const pickPluginFields = ({ ignoreCwd, yarnPath, ignorePath, lockfileFilename: lockfileFilename2, ...rest }) => { + const pluginFields = {}; + for (const [key, value] of Object.entries(rest)) + if (!allCoreFieldKeys.has(key)) + pluginFields[key] = value; + return pluginFields; + }; + const configuration = new Configuration(startingCwd); + configuration.importSettings(pickPrimaryCoreFields(exports2.coreDefinitions)); + configuration.useWithSource(``, pickPrimaryCoreFields(environmentSettings), startingCwd, { strict: false }); + if (resolvedRcFile) { + const [source, data] = resolvedRcFile; + configuration.useWithSource(source, pickPrimaryCoreFields(data), resolvedRcFileCwd, { strict: false }); + } + if (usePath) { + const yarnPath = configuration.get(`yarnPath`); + const ignorePath = configuration.get(`ignorePath`); + if (yarnPath !== null && !ignorePath) { + return configuration; + } + } + const lockfileFilename = configuration.get(`lockfileFilename`); + let projectCwd; + switch (lookup) { + case ProjectLookup.LOCKFILE: + { + projectCwd = await Configuration.findProjectCwd(startingCwd, lockfileFilename); + } + break; + case ProjectLookup.MANIFEST: + { + projectCwd = await Configuration.findProjectCwd(startingCwd, null); + } + break; + case ProjectLookup.NONE: + { + if (fslib_12.xfs.existsSync(fslib_12.ppath.join(startingCwd, `package.json`))) { + projectCwd = fslib_12.ppath.resolve(startingCwd); + } else { + projectCwd = null; + } + } break; + } + configuration.startingCwd = startingCwd; + configuration.projectCwd = projectCwd; + configuration.importSettings(pickSecondaryCoreFields(exports2.coreDefinitions)); + configuration.useWithSource(``, pickSecondaryCoreFields(environmentSettings), startingCwd, { strict }); + if (resolvedRcFile) { + const [source, data] = resolvedRcFile; + configuration.useWithSource(source, pickSecondaryCoreFields(data), resolvedRcFileCwd, { strict }); + } + const getDefault = (object) => { + return `default` in object ? object.default : object; + }; + const corePlugins = /* @__PURE__ */ new Map([ + [`@@core`, CorePlugin_1.CorePlugin] + ]); + if (pluginConfiguration !== null) + for (const request of pluginConfiguration.plugins.keys()) + corePlugins.set(request, getDefault(pluginConfiguration.modules.get(request))); + for (const [name, corePlugin] of corePlugins) + configuration.activatePlugin(name, corePlugin); + const thirdPartyPlugins = /* @__PURE__ */ new Map([]); + if (pluginConfiguration !== null) { + const requireEntries = /* @__PURE__ */ new Map(); + for (const request of nodeUtils.builtinModules()) + requireEntries.set(request, () => miscUtils.dynamicRequire(request)); + for (const [request, embedModule] of pluginConfiguration.modules) + requireEntries.set(request, () => embedModule); + const dynamicPlugins = /* @__PURE__ */ new Set(); + const importPlugin = async (pluginPath, source) => { + const { factory, name } = miscUtils.dynamicRequire(pluginPath); + if (!factory) + return; + if (dynamicPlugins.has(name)) + return; + const pluginRequireEntries = new Map(requireEntries); + const pluginRequire = (request) => { + if (pluginRequireEntries.has(request)) { + return pluginRequireEntries.get(request)(); + } else { + throw new clipanion_12.UsageError(`This plugin cannot access the package referenced via ${request} which is neither a builtin, nor an exposed entry`); + } + }; + const plugin = await miscUtils.prettifyAsyncErrors(async () => { + return getDefault(await factory(pluginRequire)); + }, (message2) => { + return `${message2} (when initializing ${name}, defined in ${source})`; + }); + requireEntries.set(name, () => plugin); + dynamicPlugins.add(name); + thirdPartyPlugins.set(name, plugin); + }; + if (environmentSettings.plugins) { + for (const userProvidedPath of environmentSettings.plugins.split(`;`)) { + const pluginPath = fslib_12.ppath.resolve(startingCwd, fslib_12.npath.toPortablePath(userProvidedPath)); + await importPlugin(pluginPath, ``); + } } - default: { - throw internalErr; + for (const { path: path2, cwd, data } of rcFiles) { + if (!useRc) + continue; + if (!Array.isArray(data.plugins)) + continue; + for (const userPluginEntry of data.plugins) { + const userProvidedPath = typeof userPluginEntry !== `string` ? userPluginEntry.path : userPluginEntry; + const userProvidedSpec = (_a2 = userPluginEntry === null || userPluginEntry === void 0 ? void 0 : userPluginEntry.spec) !== null && _a2 !== void 0 ? _a2 : ``; + const userProvidedChecksum = (_b2 = userPluginEntry === null || userPluginEntry === void 0 ? void 0 : userPluginEntry.checksum) !== null && _b2 !== void 0 ? _b2 : ``; + if (exports2.LEGACY_PLUGINS.has(userProvidedSpec)) + continue; + const pluginPath = fslib_12.ppath.resolve(cwd, fslib_12.npath.toPortablePath(userProvidedPath)); + if (!await fslib_12.xfs.existsPromise(pluginPath)) { + if (!userProvidedSpec) { + const prettyPluginName = formatUtils.pretty(configuration, fslib_12.ppath.basename(pluginPath, `.cjs`), formatUtils.Type.NAME); + const prettyGitIgnore = formatUtils.pretty(configuration, `.gitignore`, formatUtils.Type.NAME); + const prettyYarnrc = formatUtils.pretty(configuration, configuration.values.get(`rcFilename`), formatUtils.Type.NAME); + const prettyUrl = formatUtils.pretty(configuration, `https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored`, formatUtils.Type.URL); + throw new clipanion_12.UsageError(`Missing source for the ${prettyPluginName} plugin - please try to remove the plugin from ${prettyYarnrc} then reinstall it manually. This error usually occurs because ${prettyGitIgnore} is incorrect, check ${prettyUrl} to make sure your plugin folder isn't gitignored.`); + } + if (!userProvidedSpec.match(/^https?:/)) { + const prettyPluginName = formatUtils.pretty(configuration, fslib_12.ppath.basename(pluginPath, `.cjs`), formatUtils.Type.NAME); + const prettyYarnrc = formatUtils.pretty(configuration, configuration.values.get(`rcFilename`), formatUtils.Type.NAME); + throw new clipanion_12.UsageError(`Failed to recognize the source for the ${prettyPluginName} plugin - please try to delete the plugin from ${prettyYarnrc} then reinstall it manually.`); + } + const pluginBuffer = await httpUtils.get(userProvidedSpec, { configuration }); + const pluginChecksum = hashUtils.makeHash(pluginBuffer); + if (userProvidedChecksum && userProvidedChecksum !== pluginChecksum) { + const prettyPluginName = formatUtils.pretty(configuration, fslib_12.ppath.basename(pluginPath, `.cjs`), formatUtils.Type.NAME); + const prettyYarnrc = formatUtils.pretty(configuration, configuration.values.get(`rcFilename`), formatUtils.Type.NAME); + const prettyPluginImportCommand = formatUtils.pretty(configuration, `yarn plugin import ${userProvidedSpec}`, formatUtils.Type.CODE); + throw new clipanion_12.UsageError(`Failed to fetch the ${prettyPluginName} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${prettyYarnrc} then run ${prettyPluginImportCommand} to reimport it.`); + } + await fslib_12.xfs.mkdirPromise(fslib_12.ppath.dirname(pluginPath), { recursive: true }); + await fslib_12.xfs.writeFilePromise(pluginPath, pluginBuffer); + } + await importPlugin(pluginPath, path2); + } + } + } + for (const [name, thirdPartyPlugin] of thirdPartyPlugins) + configuration.activatePlugin(name, thirdPartyPlugin); + configuration.useWithSource(``, pickPluginFields(environmentSettings), startingCwd, { strict }); + if (resolvedRcFile) { + const [source, data] = resolvedRcFile; + configuration.useWithSource(source, pickPluginFields(data), resolvedRcFileCwd, { strict }); + } + if (configuration.get(`enableGlobalCache`)) { + configuration.values.set(`cacheFolder`, `${configuration.get(`globalFolder`)}/cache`); + configuration.sources.set(`cacheFolder`, ``); + } + await configuration.refreshPackageExtensions(); + return configuration; + } + static async findRcFiles(startingCwd) { + const rcFilename = getRcFilename(); + const rcFiles = []; + let nextCwd = startingCwd; + let currentCwd = null; + while (nextCwd !== currentCwd) { + currentCwd = nextCwd; + const rcPath = fslib_12.ppath.join(currentCwd, rcFilename); + if (fslib_12.xfs.existsSync(rcPath)) { + const content = await fslib_12.xfs.readFilePromise(rcPath, `utf8`); + let data; + try { + data = (0, parsers_1.parseSyml)(content); + } catch (error) { + let tip = ``; + if (content.match(/^\s+(?!-)[^:]+\s+\S+/m)) + tip = ` (in particular, make sure you list the colons after each key name)`; + throw new clipanion_12.UsageError(`Parse error when loading ${rcPath}; please check it's proper Yaml${tip}`); + } + rcFiles.unshift({ path: rcPath, cwd: currentCwd, data }); } + nextCwd = fslib_12.ppath.dirname(currentCwd); } + return rcFiles; } - return { - id: spec.id, - manifest: localDependencyManifest, - normalizedPref: spec.normalizedPref, - resolution: { - directory: spec.dependencyPath, - type: "directory" - }, - resolvedVia: "local-filesystem" - }; - } - exports2.default = resolveLocal; - async function getFileIntegrity(filename) { - return (await ssri_1.default.fromStream(graceful_fs_1.default.createReadStream(filename))).toString(); - } - } -}); - -// ../../node_modules/.pnpm/p-memoize@4.0.2/node_modules/p-memoize/index.js -var require_p_memoize = __commonJS({ - "../../node_modules/.pnpm/p-memoize@4.0.2/node_modules/p-memoize/index.js"(exports2, module2) { - "use strict"; - var mimicFn = require_mimic_fn2(); - var mapAgeCleaner = require_dist7(); - var cacheStore = new WeakMap(); - var pMemoize = (fn2, { cachePromiseRejection = false, ...options } = {}) => { - const { maxAge, cacheKey } = options; - const cache = options.cache || new Map(); - if (Number.isSafeInteger(maxAge)) { - mapAgeCleaner(cache); - } else if (typeof maxAge !== "undefined") { - throw new TypeError("maxAge is not a safe integer."); + static async findHomeRcFile() { + const rcFilename = getRcFilename(); + const homeFolder = folderUtils.getHomeFolder(); + const homeRcFilePath = fslib_12.ppath.join(homeFolder, rcFilename); + if (fslib_12.xfs.existsSync(homeRcFilePath)) { + const content = await fslib_12.xfs.readFilePromise(homeRcFilePath, `utf8`); + const data = (0, parsers_1.parseSyml)(content); + return { path: homeRcFilePath, cwd: homeFolder, data }; + } + return null; } - const memoized = async function(...arguments_) { - const key = cacheKey ? cacheKey(arguments_) : arguments_[0]; - const cacheItem = cache.get(key); - if (cacheItem) { - return cacheItem.data; + static async findProjectCwd(startingCwd, lockfileFilename) { + let projectCwd = null; + let nextCwd = startingCwd; + let currentCwd = null; + while (nextCwd !== currentCwd) { + currentCwd = nextCwd; + if (fslib_12.xfs.existsSync(fslib_12.ppath.join(currentCwd, `package.json`))) + projectCwd = currentCwd; + if (lockfileFilename !== null) { + if (fslib_12.xfs.existsSync(fslib_12.ppath.join(currentCwd, lockfileFilename))) { + projectCwd = currentCwd; + break; + } + } else { + if (projectCwd !== null) { + break; + } + } + nextCwd = fslib_12.ppath.dirname(currentCwd); + } + return projectCwd; + } + static async updateConfiguration(cwd, patch, opts = {}) { + const rcFilename = getRcFilename(); + const configurationPath = fslib_12.ppath.join(cwd, rcFilename); + const current = fslib_12.xfs.existsSync(configurationPath) ? (0, parsers_1.parseSyml)(await fslib_12.xfs.readFilePromise(configurationPath, `utf8`)) : {}; + let patched = false; + let replacement; + if (typeof patch === `function`) { + try { + replacement = patch(current); + } catch { + replacement = patch({}); + } + if (replacement === current) { + return false; + } + } else { + replacement = current; + for (const key of Object.keys(patch)) { + const currentValue = current[key]; + const patchField = patch[key]; + let nextValue; + if (typeof patchField === `function`) { + try { + nextValue = patchField(currentValue); + } catch { + nextValue = patchField(void 0); + } + } else { + nextValue = patchField; + } + if (currentValue === nextValue) + continue; + if (nextValue === Configuration.deleteProperty) + delete replacement[key]; + else + replacement[key] = nextValue; + patched = true; + } + if (!patched) { + return false; + } + } + await fslib_12.xfs.changeFilePromise(configurationPath, (0, parsers_1.stringifySyml)(replacement), { + automaticNewlines: true + }); + return true; + } + static async addPlugin(cwd, pluginMetaList) { + if (pluginMetaList.length === 0) + return; + await Configuration.updateConfiguration(cwd, (current) => { + var _a2; + const currentPluginMetaList = (_a2 = current.plugins) !== null && _a2 !== void 0 ? _a2 : []; + if (currentPluginMetaList.length === 0) + return { ...current, plugins: pluginMetaList }; + const newPluginMetaList = []; + let notYetProcessedList = [...pluginMetaList]; + for (const currentPluginMeta of currentPluginMetaList) { + const currentPluginPath = typeof currentPluginMeta !== `string` ? currentPluginMeta.path : currentPluginMeta; + const updatingPlugin = notYetProcessedList.find((pluginMeta) => { + return pluginMeta.path === currentPluginPath; + }); + if (updatingPlugin) { + newPluginMetaList.push(updatingPlugin); + notYetProcessedList = notYetProcessedList.filter((p) => p !== updatingPlugin); + } else { + newPluginMetaList.push(currentPluginMeta); + } + } + newPluginMetaList.push(...notYetProcessedList); + return { ...current, plugins: newPluginMetaList }; + }); + } + static async updateHomeConfiguration(patch) { + const homeFolder = folderUtils.getHomeFolder(); + return await Configuration.updateConfiguration(homeFolder, patch); + } + constructor(startingCwd) { + this.isCI = ci_info_1.isCI; + this.projectCwd = null; + this.plugins = /* @__PURE__ */ new Map(); + this.settings = /* @__PURE__ */ new Map(); + this.values = /* @__PURE__ */ new Map(); + this.sources = /* @__PURE__ */ new Map(); + this.invalid = /* @__PURE__ */ new Map(); + this.packageExtensions = /* @__PURE__ */ new Map(); + this.limits = /* @__PURE__ */ new Map(); + this.startingCwd = startingCwd; + } + activatePlugin(name, plugin) { + this.plugins.set(name, plugin); + if (typeof plugin.configuration !== `undefined`) { + this.importSettings(plugin.configuration); + } + } + importSettings(definitions) { + for (const [name, definition] of Object.entries(definitions)) { + if (definition == null) + continue; + if (this.settings.has(name)) + throw new Error(`Cannot redefine settings "${name}"`); + this.settings.set(name, definition); + this.values.set(name, getDefaultValue(this, definition)); } - const result = fn2.apply(this, arguments_); - let resultError; + } + useWithSource(source, data, folder, opts) { try { - return await Promise.resolve(result); + this.use(source, data, folder, opts); } catch (error) { - resultError = error; + error.message += ` (in ${formatUtils.pretty(this, source, formatUtils.Type.PATH)})`; throw error; - } finally { - cache.set(key, { - data: result, - maxAge: maxAge ? Date.now() + maxAge : Number.POSITIVE_INFINITY + } + } + use(source, data, folder, { strict = true, overwrite = false } = {}) { + strict = strict && this.get(`enableStrictSettings`); + for (const key of [`enableStrictSettings`, ...Object.keys(data)]) { + const value = data[key]; + const fieldSource = configUtils.getSource(value); + if (fieldSource) + source = fieldSource; + if (typeof value === `undefined`) + continue; + if (key === `plugins`) + continue; + if (source === `` && IGNORED_ENV_VARIABLES.has(key)) + continue; + if (key === `rcFilename`) + throw new clipanion_12.UsageError(`The rcFilename settings can only be set via ${`${exports2.ENVIRONMENT_PREFIX}RC_FILENAME`.toUpperCase()}, not via a rc file`); + const definition = this.settings.get(key); + if (!definition) { + const homeFolder = folderUtils.getHomeFolder(); + const rcFileFolder = fslib_12.ppath.resolve(source, `..`); + const isHomeRcFile = homeFolder === rcFileFolder; + if (strict && !isHomeRcFile) { + throw new clipanion_12.UsageError(`Unrecognized or legacy configuration settings found: ${key} - run "yarn config -v" to see the list of settings supported in Yarn`); + } else { + this.invalid.set(key, source); + continue; + } + } + if (this.sources.has(key) && !(overwrite || definition.type === SettingsType.MAP || definition.isArray && definition.concatenateValues)) + continue; + let parsed; + try { + parsed = parseValue(this, key, value, definition, folder); + } catch (error) { + error.message += ` in ${formatUtils.pretty(this, source, formatUtils.Type.PATH)}`; + throw error; + } + if (key === `enableStrictSettings` && source !== ``) { + strict = parsed; + continue; + } + if (definition.type === SettingsType.MAP) { + const previousValue = this.values.get(key); + this.values.set(key, new Map(overwrite ? [...previousValue, ...parsed] : [...parsed, ...previousValue])); + this.sources.set(key, `${this.sources.get(key)}, ${source}`); + } else if (definition.isArray && definition.concatenateValues) { + const previousValue = this.values.get(key); + this.values.set(key, overwrite ? [...previousValue, ...parsed] : [...parsed, ...previousValue]); + this.sources.set(key, `${this.sources.get(key)}, ${source}`); + } else { + this.values.set(key, parsed); + this.sources.set(key, source); + } + } + } + get(key) { + if (!this.values.has(key)) + throw new Error(`Invalid configuration key "${key}"`); + return this.values.get(key); + } + getSpecial(key, { hideSecrets = false, getNativePaths = false }) { + const rawValue = this.get(key); + const definition = this.settings.get(key); + if (typeof definition === `undefined`) + throw new clipanion_12.UsageError(`Couldn't find a configuration settings named "${key}"`); + return transformConfiguration(rawValue, definition, { + hideSecrets, + getNativePaths + }); + } + getSubprocessStreams(logFile, { header, prefix, report }) { + let stdout; + let stderr; + const logStream = fslib_12.xfs.createWriteStream(logFile); + if (this.get(`enableInlineBuilds`)) { + const stdoutLineReporter = report.createStreamReporter(`${prefix} ${formatUtils.pretty(this, `STDOUT`, `green`)}`); + const stderrLineReporter = report.createStreamReporter(`${prefix} ${formatUtils.pretty(this, `STDERR`, `red`)}`); + stdout = new stream_12.PassThrough(); + stdout.pipe(stdoutLineReporter); + stdout.pipe(logStream); + stderr = new stream_12.PassThrough(); + stderr.pipe(stderrLineReporter); + stderr.pipe(logStream); + } else { + stdout = logStream; + stderr = logStream; + if (typeof header !== `undefined`) { + stdout.write(`${header} +`); + } + } + return { stdout, stderr }; + } + makeResolver() { + const pluginResolvers = []; + for (const plugin of this.plugins.values()) + for (const resolver of plugin.resolvers || []) + pluginResolvers.push(new resolver()); + return new MultiResolver_1.MultiResolver([ + new VirtualResolver_1.VirtualResolver(), + new WorkspaceResolver_1.WorkspaceResolver(), + ...pluginResolvers + ]); + } + makeFetcher() { + const pluginFetchers = []; + for (const plugin of this.plugins.values()) + for (const fetcher of plugin.fetchers || []) + pluginFetchers.push(new fetcher()); + return new MultiFetcher_1.MultiFetcher([ + new VirtualFetcher_1.VirtualFetcher(), + new WorkspaceFetcher_1.WorkspaceFetcher(), + ...pluginFetchers + ]); + } + getLinkers() { + const linkers = []; + for (const plugin of this.plugins.values()) + for (const linker of plugin.linkers || []) + linkers.push(new linker()); + return linkers; + } + getSupportedArchitectures() { + const architecture = nodeUtils.getArchitecture(); + const supportedArchitectures = this.get(`supportedArchitectures`); + let os = supportedArchitectures.get(`os`); + if (os !== null) + os = os.map((value) => value === `current` ? architecture.os : value); + let cpu = supportedArchitectures.get(`cpu`); + if (cpu !== null) + cpu = cpu.map((value) => value === `current` ? architecture.cpu : value); + let libc = supportedArchitectures.get(`libc`); + if (libc !== null) + libc = miscUtils.mapAndFilter(libc, (value) => { + var _a2; + return value === `current` ? (_a2 = architecture.libc) !== null && _a2 !== void 0 ? _a2 : miscUtils.mapAndFilter.skip : value; }); - if (!cachePromiseRejection && resultError) { - cache.delete(key); + return { os, cpu, libc }; + } + async refreshPackageExtensions() { + this.packageExtensions = /* @__PURE__ */ new Map(); + const packageExtensions = this.packageExtensions; + const registerPackageExtension = (descriptor, extensionData, { userProvided = false } = {}) => { + if (!semverUtils.validRange(descriptor.range)) + throw new Error(`Only semver ranges are allowed as keys for the packageExtensions setting`); + const extension = new Manifest_1.Manifest(); + extension.load(extensionData, { yamlCompatibilityMode: true }); + const extensionsPerIdent = miscUtils.getArrayWithDefault(packageExtensions, descriptor.identHash); + const extensionsPerRange = []; + extensionsPerIdent.push([descriptor.range, extensionsPerRange]); + const baseExtension = { + status: types_1.PackageExtensionStatus.Inactive, + userProvided, + parentDescriptor: descriptor + }; + for (const dependency of extension.dependencies.values()) + extensionsPerRange.push({ ...baseExtension, type: types_1.PackageExtensionType.Dependency, descriptor: dependency }); + for (const peerDependency of extension.peerDependencies.values()) + extensionsPerRange.push({ ...baseExtension, type: types_1.PackageExtensionType.PeerDependency, descriptor: peerDependency }); + for (const [selector, meta] of extension.peerDependenciesMeta) { + for (const [key, value] of Object.entries(meta)) { + extensionsPerRange.push({ ...baseExtension, type: types_1.PackageExtensionType.PeerDependencyMeta, selector, key, value }); + } + } + }; + await this.triggerHook((hooks) => { + return hooks.registerPackageExtensions; + }, this, registerPackageExtension); + for (const [descriptorString, extensionData] of this.get(`packageExtensions`)) { + registerPackageExtension(structUtils.parseDescriptor(descriptorString, true), miscUtils.convertMapsToIndexableObjects(extensionData), { userProvided: true }); + } + } + normalizeLocator(locator) { + if (semverUtils.validRange(locator.reference)) + return structUtils.makeLocator(locator, `${this.get(`defaultProtocol`)}${locator.reference}`); + if (exports2.TAG_REGEXP.test(locator.reference)) + return structUtils.makeLocator(locator, `${this.get(`defaultProtocol`)}${locator.reference}`); + return locator; + } + // TODO: Rename into `normalizeLocator`? + // TODO: Move into `structUtils`, and remove references to `defaultProtocol` (we can make it a constant, same as the lockfile name) + normalizeDependency(dependency) { + if (semverUtils.validRange(dependency.range)) + return structUtils.makeDescriptor(dependency, `${this.get(`defaultProtocol`)}${dependency.range}`); + if (exports2.TAG_REGEXP.test(dependency.range)) + return structUtils.makeDescriptor(dependency, `${this.get(`defaultProtocol`)}${dependency.range}`); + return dependency; + } + normalizeDependencyMap(dependencyMap) { + return new Map([...dependencyMap].map(([key, dependency]) => { + return [key, this.normalizeDependency(dependency)]; + })); + } + normalizePackage(original) { + const pkg = structUtils.copyPackage(original); + if (this.packageExtensions == null) + throw new Error(`refreshPackageExtensions has to be called before normalizing packages`); + const extensionsPerIdent = this.packageExtensions.get(original.identHash); + if (typeof extensionsPerIdent !== `undefined`) { + const version2 = original.version; + if (version2 !== null) { + for (const [range, extensionsPerRange] of extensionsPerIdent) { + if (!semverUtils.satisfiesWithPrereleases(version2, range)) + continue; + for (const extension of extensionsPerRange) { + if (extension.status === types_1.PackageExtensionStatus.Inactive) + extension.status = types_1.PackageExtensionStatus.Redundant; + switch (extension.type) { + case types_1.PackageExtensionType.Dependency: + { + const currentDependency = pkg.dependencies.get(extension.descriptor.identHash); + if (typeof currentDependency === `undefined`) { + extension.status = types_1.PackageExtensionStatus.Active; + pkg.dependencies.set(extension.descriptor.identHash, this.normalizeDependency(extension.descriptor)); + } + } + break; + case types_1.PackageExtensionType.PeerDependency: + { + const currentPeerDependency = pkg.peerDependencies.get(extension.descriptor.identHash); + if (typeof currentPeerDependency === `undefined`) { + extension.status = types_1.PackageExtensionStatus.Active; + pkg.peerDependencies.set(extension.descriptor.identHash, extension.descriptor); + } + } + break; + case types_1.PackageExtensionType.PeerDependencyMeta: + { + const currentPeerDependencyMeta = pkg.peerDependenciesMeta.get(extension.selector); + if (typeof currentPeerDependencyMeta === `undefined` || !Object.prototype.hasOwnProperty.call(currentPeerDependencyMeta, extension.key) || currentPeerDependencyMeta[extension.key] !== extension.value) { + extension.status = types_1.PackageExtensionStatus.Active; + miscUtils.getFactoryWithDefault(pkg.peerDependenciesMeta, extension.selector, () => ({}))[extension.key] = extension.value; + } + } + break; + default: + { + miscUtils.assertNever(extension); + } + break; + } + } + } } } - }; - mimicFn(memoized, fn2); - cacheStore.set(memoized, cache); - return memoized; + const getTypesName = (descriptor) => { + return descriptor.scope ? `${descriptor.scope}__${descriptor.name}` : `${descriptor.name}`; + }; + for (const identString of pkg.peerDependenciesMeta.keys()) { + const ident = structUtils.parseIdent(identString); + if (!pkg.peerDependencies.has(ident.identHash)) { + pkg.peerDependencies.set(ident.identHash, structUtils.makeDescriptor(ident, `*`)); + } + } + for (const descriptor of pkg.peerDependencies.values()) { + if (descriptor.scope === `types`) + continue; + const typesName = getTypesName(descriptor); + const typesIdent = structUtils.makeIdent(`types`, typesName); + const stringifiedTypesIdent = structUtils.stringifyIdent(typesIdent); + if (pkg.peerDependencies.has(typesIdent.identHash) || pkg.peerDependenciesMeta.has(stringifiedTypesIdent)) + continue; + pkg.peerDependencies.set(typesIdent.identHash, structUtils.makeDescriptor(typesIdent, `*`)); + pkg.peerDependenciesMeta.set(stringifiedTypesIdent, { + optional: true + }); + } + pkg.dependencies = new Map(miscUtils.sortMap(pkg.dependencies, ([, descriptor]) => structUtils.stringifyDescriptor(descriptor))); + pkg.peerDependencies = new Map(miscUtils.sortMap(pkg.peerDependencies, ([, descriptor]) => structUtils.stringifyDescriptor(descriptor))); + return pkg; + } + getLimit(key) { + return miscUtils.getFactoryWithDefault(this.limits, key, () => { + return (0, p_limit_12.default)(this.get(key)); + }); + } + async triggerHook(get, ...args2) { + for (const plugin of this.plugins.values()) { + const hooks = plugin.hooks; + if (!hooks) + continue; + const hook = get(hooks); + if (!hook) + continue; + await hook(...args2); + } + } + async triggerMultipleHooks(get, argsList) { + for (const args2 of argsList) { + await this.triggerHook(get, ...args2); + } + } + async reduceHook(get, initialValue, ...args2) { + let value = initialValue; + for (const plugin of this.plugins.values()) { + const hooks = plugin.hooks; + if (!hooks) + continue; + const hook = get(hooks); + if (!hook) + continue; + value = await hook(value, ...args2); + } + return value; + } + async firstHook(get, ...args2) { + for (const plugin of this.plugins.values()) { + const hooks = plugin.hooks; + if (!hooks) + continue; + const hook = get(hooks); + if (!hook) + continue; + const ret = await hook(...args2); + if (typeof ret !== `undefined`) { + return ret; + } + } + return null; + } }; - module2.exports = pMemoize; - module2.exports.clear = (memoized) => { - if (!cacheStore.has(memoized)) { - throw new Error("Can't clear a function that was not memoized!"); + exports2.Configuration = Configuration; + Configuration.deleteProperty = Symbol(); + Configuration.telemetry = null; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/execUtils.js +var require_execUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/execUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.execvp = exports2.pipevp = exports2.ExecError = exports2.PipeError = exports2.EndStrategy = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var cross_spawn_1 = tslib_12.__importDefault(require_cross_spawn()); + var Configuration_1 = require_Configuration(); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var EndStrategy; + (function(EndStrategy2) { + EndStrategy2[EndStrategy2["Never"] = 0] = "Never"; + EndStrategy2[EndStrategy2["ErrorCode"] = 1] = "ErrorCode"; + EndStrategy2[EndStrategy2["Always"] = 2] = "Always"; + })(EndStrategy || (exports2.EndStrategy = EndStrategy = {})); + var PipeError = class extends Report_1.ReportError { + constructor({ fileName, code, signal }) { + const configuration = Configuration_1.Configuration.create(fslib_12.ppath.cwd()); + const prettyFileName = formatUtils.pretty(configuration, fileName, formatUtils.Type.PATH); + super(MessageName_1.MessageName.EXCEPTION, `Child ${prettyFileName} reported an error`, (report) => { + reportExitStatus(code, signal, { configuration, report }); + }); + this.code = getExitCode(code, signal); + } + }; + exports2.PipeError = PipeError; + var ExecError = class extends PipeError { + constructor({ fileName, code, signal, stdout, stderr }) { + super({ fileName, code, signal }); + this.stdout = stdout; + this.stderr = stderr; + } + }; + exports2.ExecError = ExecError; + function hasFd(stream) { + return stream !== null && typeof stream.fd === `number`; + } + var activeChildren = /* @__PURE__ */ new Set(); + function sigintHandler() { + } + function sigtermHandler() { + for (const child of activeChildren) { + child.kill(); + } + } + async function pipevp(fileName, args2, { cwd, env = process.env, strict = false, stdin = null, stdout, stderr, end = EndStrategy.Always }) { + const stdio = [`pipe`, `pipe`, `pipe`]; + if (stdin === null) + stdio[0] = `ignore`; + else if (hasFd(stdin)) + stdio[0] = stdin; + if (hasFd(stdout)) + stdio[1] = stdout; + if (hasFd(stderr)) + stdio[2] = stderr; + const child = (0, cross_spawn_1.default)(fileName, args2, { + cwd: fslib_12.npath.fromPortablePath(cwd), + env: { + ...env, + PWD: fslib_12.npath.fromPortablePath(cwd) + }, + stdio + }); + activeChildren.add(child); + if (activeChildren.size === 1) { + process.on(`SIGINT`, sigintHandler); + process.on(`SIGTERM`, sigtermHandler); + } + if (!hasFd(stdin) && stdin !== null) + stdin.pipe(child.stdin); + if (!hasFd(stdout)) + child.stdout.pipe(stdout, { end: false }); + if (!hasFd(stderr)) + child.stderr.pipe(stderr, { end: false }); + const closeStreams = () => { + for (const stream of /* @__PURE__ */ new Set([stdout, stderr])) { + if (!hasFd(stream)) { + stream.end(); + } + } + }; + return new Promise((resolve, reject) => { + child.on(`error`, (error) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); + } + if (end === EndStrategy.Always || end === EndStrategy.ErrorCode) + closeStreams(); + reject(error); + }); + child.on(`close`, (code, signal) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); + } + if (end === EndStrategy.Always || end === EndStrategy.ErrorCode && code !== 0) + closeStreams(); + if (code === 0 || !strict) { + resolve({ code: getExitCode(code, signal) }); + } else { + reject(new PipeError({ fileName, code, signal })); + } + }); + }); + } + exports2.pipevp = pipevp; + async function execvp(fileName, args2, { cwd, env = process.env, encoding = `utf8`, strict = false }) { + const stdio = [`ignore`, `pipe`, `pipe`]; + const stdoutChunks = []; + const stderrChunks = []; + const nativeCwd = fslib_12.npath.fromPortablePath(cwd); + if (typeof env.PWD !== `undefined`) + env = { ...env, PWD: nativeCwd }; + const subprocess = (0, cross_spawn_1.default)(fileName, args2, { + cwd: nativeCwd, + env, + stdio + }); + subprocess.stdout.on(`data`, (chunk) => { + stdoutChunks.push(chunk); + }); + subprocess.stderr.on(`data`, (chunk) => { + stderrChunks.push(chunk); + }); + return await new Promise((resolve, reject) => { + subprocess.on(`error`, (err) => { + const configuration = Configuration_1.Configuration.create(cwd); + const prettyFileName = formatUtils.pretty(configuration, fileName, formatUtils.Type.PATH); + reject(new Report_1.ReportError(MessageName_1.MessageName.EXCEPTION, `Process ${prettyFileName} failed to spawn`, (report) => { + report.reportError(MessageName_1.MessageName.EXCEPTION, ` ${formatUtils.prettyField(configuration, { + label: `Thrown Error`, + value: formatUtils.tuple(formatUtils.Type.NO_HINT, err.message) + })}`); + })); + }); + subprocess.on(`close`, (code, signal) => { + const stdout = encoding === `buffer` ? Buffer.concat(stdoutChunks) : Buffer.concat(stdoutChunks).toString(encoding); + const stderr = encoding === `buffer` ? Buffer.concat(stderrChunks) : Buffer.concat(stderrChunks).toString(encoding); + if (code === 0 || !strict) { + resolve({ + code: getExitCode(code, signal), + stdout, + stderr + }); + } else { + reject(new ExecError({ fileName, code, signal, stdout, stderr })); + } + }); + }); + } + exports2.execvp = execvp; + var signalToCodeMap = /* @__PURE__ */ new Map([ + [`SIGINT`, 2], + [`SIGQUIT`, 3], + [`SIGKILL`, 9], + [`SIGTERM`, 15] + // default signal for kill + ]); + function getExitCode(code, signal) { + const signalCode = signalToCodeMap.get(signal); + if (typeof signalCode !== `undefined`) { + return 128 + signalCode; + } else { + return code !== null && code !== void 0 ? code : 1; } - const cache = cacheStore.get(memoized); - if (typeof cache.clear !== "function") { - throw new TypeError("The cache Map can't be cleared!"); + } + function reportExitStatus(code, signal, { configuration, report }) { + report.reportError(MessageName_1.MessageName.EXCEPTION, ` ${formatUtils.prettyField(configuration, code !== null ? { + label: `Exit Code`, + value: formatUtils.tuple(formatUtils.Type.NUMBER, code) + } : { + label: `Exit Signal`, + value: formatUtils.tuple(formatUtils.Type.CODE, signal) + })}`); + } + } +}); + +// ../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/commands/entry.js +var require_entry3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/commands/entry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var fslib_12 = require_lib50(); + var clipanion_12 = require_advanced(); + var index_1 = require_lib124(); + var EntryCommand = class extends clipanion_12.Command { + constructor() { + super(...arguments); + this.cwd = clipanion_12.Option.String(`--cwd`, process.cwd(), { + description: `The directory to run the command in` + }); + this.commandName = clipanion_12.Option.String(); + this.args = clipanion_12.Option.Proxy(); + } + async execute() { + const command = this.args.length > 0 ? `${this.commandName} ${this.args.join(` `)}` : this.commandName; + return await (0, index_1.execute)(command, [], { + cwd: fslib_12.npath.toPortablePath(this.cwd), + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr + }); } - cache.clear(); }; + EntryCommand.usage = { + description: `run a command using yarn's portable shell`, + details: ` + This command will run a command using Yarn's portable shell. + + Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. + + Note: To escape something from Yarn's shell, you might have to escape it twice, the first time from your own shell. + + Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. + + For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. + `, + examples: [[ + `Run a simple command`, + `$0 echo Hello` + ], [ + `Run a command with a glob pattern`, + `$0 echo '*.js'` + ], [ + `Run a command with a redirection`, + `$0 echo Hello World '>' hello.txt` + ], [ + `Run a command with an escaped glob pattern (The double escape is needed in Unix shells)`, + `$0 echo '"*.js"'` + ], [ + `Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)`, + `$0 "GREETING=Hello echo $GREETING World"` + ]] + }; + exports2.default = EntryCommand; } }); -// ../npm-resolver/lib/toRaw.js -var require_toRaw = __commonJS({ - "../npm-resolver/lib/toRaw.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/errors.js +var require_errors8 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/errors.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - function toRaw(spec) { - return `${spec.name}@${spec.fetchSpec}`; - } - exports2.default = toRaw; + exports2.ShellError = void 0; + var ShellError = class extends Error { + constructor(message2) { + super(message2); + this.name = `ShellError`; + } + }; + exports2.ShellError = ShellError; } }); -// ../npm-resolver/lib/pickPackageFromMeta.js -var require_pickPackageFromMeta = __commonJS({ - "../npm-resolver/lib/pickPackageFromMeta.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/globUtils.js +var require_globUtils2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/globUtils.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var semver_1 = __importDefault(require_semver2()); - function default_1(spec, preferredVersionSelectors, meta) { + exports2.isBraceExpansion = exports2.match = exports2.isGlobPattern = exports2.fastGlobOptions = exports2.micromatchOptions = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var fast_glob_1 = tslib_12.__importDefault(require_out4()); + var fs_1 = tslib_12.__importDefault(require("fs")); + var micromatch_12 = tslib_12.__importDefault(require_micromatch()); + exports2.micromatchOptions = { + // This is required because we don't want ")/*" to be a valid shell glob pattern. + strictBrackets: true + }; + exports2.fastGlobOptions = { + onlyDirectories: false, + onlyFiles: false + }; + function isGlobPattern(pattern) { + if (!micromatch_12.default.scan(pattern, exports2.micromatchOptions).isGlob) + return false; try { - let version; - switch (spec.type) { - case "version": - version = spec.fetchSpec; - break; - case "tag": - version = meta["dist-tags"][spec.fetchSpec]; - break; - case "range": - version = pickVersionByVersionRange(meta, spec.fetchSpec, preferredVersionSelectors); - break; - } - const manifest = meta.versions[version]; - if (manifest && meta["name"]) { - manifest.name = meta["name"]; - } - return manifest; - } catch (err) { - throw new error_1.default("MALFORMED_METADATA", `Received malformed metadata for "${spec.name}"`, { hint: "This might mean that the package was unpublished from the registry" }); + micromatch_12.default.parse(pattern, exports2.micromatchOptions); + } catch { + return false; } + return true; } - exports2.default = default_1; - function pickVersionByVersionRange(meta, versionRange, preferredVerSels) { - let versions; - const latest = meta["dist-tags"].latest; - const preferredVerSelsArr = Object.entries(preferredVerSels !== null && preferredVerSels !== void 0 ? preferredVerSels : {}); - if (preferredVerSelsArr.length > 0) { - const preferredVersions = []; - for (const [preferredSelector, preferredSelectorType] of preferredVerSelsArr) { - if (preferredSelector === versionRange) - continue; - switch (preferredSelectorType) { - case "tag": { - preferredVersions.push(meta["dist-tags"][preferredSelector]); - break; - } - case "range": { - versions = Object.keys(meta.versions); - for (const version of versions) { - if (semver_1.default.satisfies(version, preferredSelector, true)) { - preferredVersions.push(version); - } - } - break; - } - case "version": { - if (meta.versions[preferredSelector]) { - preferredVersions.push(preferredSelector); - } - break; - } - } - } - if (preferredVersions.includes(latest) && semver_1.default.satisfies(latest, versionRange, true)) { - return latest; - } - const preferredVersion = semver_1.default.maxSatisfying(preferredVersions, versionRange, true); - if (preferredVersion) { - return preferredVersion; - } - } - if (versionRange === "*" || semver_1.default.satisfies(latest, versionRange, true)) { - return latest; - } - versions = versions !== null && versions !== void 0 ? versions : Object.keys(meta.versions); - const maxVersion = semver_1.default.maxSatisfying(versions, versionRange, true); - if (maxVersion && meta.versions[maxVersion].deprecated && versions.length > 1) { - const nonDeprecatedVersions = versions.map((version) => meta.versions[version]).filter((versionMeta) => !versionMeta.deprecated).map((versionMeta) => versionMeta.version); - const maxNonDeprecatedVersion = semver_1.default.maxSatisfying(nonDeprecatedVersions, versionRange, true); - if (maxNonDeprecatedVersion) - return maxNonDeprecatedVersion; - } - return maxVersion; + exports2.isGlobPattern = isGlobPattern; + function match(pattern, { cwd, baseFs }) { + return (0, fast_glob_1.default)(pattern, { + ...exports2.fastGlobOptions, + cwd: fslib_12.npath.fromPortablePath(cwd), + fs: (0, fslib_12.extendFs)(fs_1.default, new fslib_12.PosixFS(baseFs)) + }); } + exports2.match = match; + function isBraceExpansion(pattern) { + return micromatch_12.default.scan(pattern, exports2.micromatchOptions).isBrace; + } + exports2.isBraceExpansion = isBraceExpansion; } }); -// ../npm-resolver/lib/pickPackage.js -var require_pickPackage = __commonJS({ - "../npm-resolver/lib/pickPackage.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/pipe.js +var require_pipe5 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/pipe.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var crypto_1 = __importDefault(require("crypto")); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var graceful_fs_1 = __importDefault(require_lib18()); - var encode_registry_1 = __importDefault(require_encode_registry()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var p_limit_1 = __importDefault(require_p_limit()); - var path_temp_1 = __importDefault(require_path_temp()); - var rename_overwrite_1 = __importDefault(require_rename_overwrite()); - var toRaw_1 = __importDefault(require_toRaw()); - var pickPackageFromMeta_1 = __importDefault(require_pickPackageFromMeta()); - var metafileOperationLimits = {}; - exports2.default = async (ctx, spec, opts) => { - var _a; - opts = opts || {}; - validatePackageName(spec.name); - const cachedMeta = ctx.metaCache.get(spec.name); - if (cachedMeta != null) { - return { - meta: cachedMeta, - pickedPackage: pickPackageFromMeta_1.default(spec, opts.preferredVersionSelectors, cachedMeta) - }; - } - const registryName = encode_registry_1.default(opts.registry); - const pkgMirror = path_1.default.join(ctx.cacheDir, ctx.metaDir, registryName, `${encodePkgName(spec.name)}.json`); - const limit = metafileOperationLimits[pkgMirror] = metafileOperationLimits[pkgMirror] || p_limit_1.default(1); - let metaCachedInStore; - if (ctx.offline === true || ctx.preferOffline) { - metaCachedInStore = await limit(async () => loadMeta(pkgMirror)); - if (ctx.offline) { - if (metaCachedInStore != null) - return { - meta: metaCachedInStore, - pickedPackage: pickPackageFromMeta_1.default(spec, opts.preferredVersionSelectors, metaCachedInStore) - }; - throw new error_1.default("NO_OFFLINE_META", `Failed to resolve ${toRaw_1.default(spec)} in package mirror ${pkgMirror}`); - } - if (metaCachedInStore != null) { - const pickedPackage = pickPackageFromMeta_1.default(spec, opts.preferredVersionSelectors, metaCachedInStore); - if (pickedPackage) { - return { - meta: metaCachedInStore, - pickedPackage - }; - } - } - } - if (spec.type === "version") { - metaCachedInStore = metaCachedInStore !== null && metaCachedInStore !== void 0 ? metaCachedInStore : await limit(async () => loadMeta(pkgMirror)); - if (((_a = metaCachedInStore === null || metaCachedInStore === void 0 ? void 0 : metaCachedInStore.versions) === null || _a === void 0 ? void 0 : _a[spec.fetchSpec]) != null) { - return { - meta: metaCachedInStore, - pickedPackage: metaCachedInStore.versions[spec.fetchSpec] - }; - } + exports2.createOutputStreamsWithPrefix = exports2.start = exports2.Handle = exports2.ProtectedStream = exports2.makeBuiltin = exports2.makeProcess = exports2.Pipe = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var cross_spawn_1 = tslib_12.__importDefault(require_cross_spawn()); + var stream_12 = require("stream"); + var string_decoder_1 = require("string_decoder"); + var Pipe; + (function(Pipe2) { + Pipe2[Pipe2["STDIN"] = 0] = "STDIN"; + Pipe2[Pipe2["STDOUT"] = 1] = "STDOUT"; + Pipe2[Pipe2["STDERR"] = 2] = "STDERR"; + })(Pipe || (exports2.Pipe = Pipe = {})); + var activeChildren = /* @__PURE__ */ new Set(); + function sigintHandler() { + } + function sigtermHandler() { + for (const child of activeChildren) { + child.kill(); } - try { - const meta = await ctx.fetch(spec.name, opts.registry, opts.authHeaderValue); - meta.cachedAt = Date.now(); - ctx.metaCache.set(spec.name, meta); - if (!opts.dryRun) { - limit(async () => { - try { - await saveMeta(pkgMirror, meta); - } catch (err) { - } - }); + } + function makeProcess(name, args2, opts, spawnOpts) { + return (stdio) => { + const stdin = stdio[0] instanceof stream_12.Transform ? `pipe` : stdio[0]; + const stdout = stdio[1] instanceof stream_12.Transform ? `pipe` : stdio[1]; + const stderr = stdio[2] instanceof stream_12.Transform ? `pipe` : stdio[2]; + const child = (0, cross_spawn_1.default)(name, args2, { ...spawnOpts, stdio: [ + stdin, + stdout, + stderr + ] }); + activeChildren.add(child); + if (activeChildren.size === 1) { + process.on(`SIGINT`, sigintHandler); + process.on(`SIGTERM`, sigtermHandler); } + if (stdio[0] instanceof stream_12.Transform) + stdio[0].pipe(child.stdin); + if (stdio[1] instanceof stream_12.Transform) + child.stdout.pipe(stdio[1], { end: false }); + if (stdio[2] instanceof stream_12.Transform) + child.stderr.pipe(stdio[2], { end: false }); return { - meta, - pickedPackage: pickPackageFromMeta_1.default(spec, opts.preferredVersionSelectors, meta) + stdin: child.stdin, + promise: new Promise((resolve) => { + child.on(`error`, (error) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); + } + switch (error.code) { + case `ENOENT`: + { + stdio[2].write(`command not found: ${name} +`); + resolve(127); + } + break; + case `EACCES`: + { + stdio[2].write(`permission denied: ${name} +`); + resolve(128); + } + break; + default: + { + stdio[2].write(`uncaught error: ${error.message} +`); + resolve(1); + } + break; + } + }); + child.on(`close`, (code) => { + activeChildren.delete(child); + if (activeChildren.size === 0) { + process.off(`SIGINT`, sigintHandler); + process.off(`SIGTERM`, sigtermHandler); + } + if (code !== null) { + resolve(code); + } else { + resolve(129); + } + }); + }) }; - } catch (err) { - const meta = await loadMeta(pkgMirror); - if (meta == null) - throw err; - logger_1.default.error(err, err); - logger_1.default.debug({ message: `Using cached meta from ${pkgMirror}` }); + }; + } + exports2.makeProcess = makeProcess; + function makeBuiltin(builtin) { + return (stdio) => { + const stdin = stdio[0] === `pipe` ? new stream_12.PassThrough() : stdio[0]; return { - meta, - pickedPackage: pickPackageFromMeta_1.default(spec, opts.preferredVersionSelectors, meta) + stdin, + promise: Promise.resolve().then(() => builtin({ + stdin, + stdout: stdio[1], + stderr: stdio[2] + })) }; - } - }; - function encodePkgName(pkgName) { - if (pkgName !== pkgName.toLowerCase()) { - return `${pkgName}_${crypto_1.default.createHash("md5").update(pkgName).digest("hex")}`; - } - return pkgName; + }; } - async function loadMeta(pkgMirror) { - try { - return await load_json_file_1.default(pkgMirror); - } catch (err) { - return null; + exports2.makeBuiltin = makeBuiltin; + var ProtectedStream = class { + constructor(stream) { + this.stream = stream; } - } - var createdDirs = new Set(); - async function saveMeta(pkgMirror, meta) { - const dir = path_1.default.dirname(pkgMirror); - if (!createdDirs.has(dir)) { - await fs_1.promises.mkdir(dir, { recursive: true }); - createdDirs.add(dir); + close() { } - const temp = path_temp_1.default(dir); - await graceful_fs_1.default.writeFile(temp, JSON.stringify(meta)); - await rename_overwrite_1.default(temp, pkgMirror); - } - function validatePackageName(pkgName) { - if (pkgName.includes("/") && pkgName[0] !== "@") { - throw new error_1.default("INVALID_PACKAGE_NAME", `Package name ${pkgName} is invalid, it should have a @scope`); + get() { + return this.stream; } - } - } -}); - -// ../../node_modules/.pnpm/parse-npm-tarball-url@3.0.0/node_modules/parse-npm-tarball-url/lib/index.js -var require_lib44 = __commonJS({ - "../../node_modules/.pnpm/parse-npm-tarball-url@3.0.0/node_modules/parse-npm-tarball-url/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var url_1 = require("url"); - var assert = require("assert"); - var semver_1 = require_semver3(); - function parseNpmTarballUrl(url) { - assert(url, "url is required"); - assert(typeof url === "string", "url should be a string"); - const { path, host } = url_1.parse(url); - if (!path || !host) - return null; - const pkg = parsePath(path); - if (!pkg) - return null; - return { - host, - name: pkg.name, - version: pkg.version - }; - } - exports2.default = parseNpmTarballUrl; - function parsePath(path) { - const parts = path.split("/-/"); - if (parts.length !== 2) - return null; - const name = parts[0] && decodeURIComponent(parts[0].substr(1)); - if (!name) - return null; - const pathWithNoExtension = parts[1].replace(/\.tgz$/, ""); - const scopelessNameLength = name.length - (name.indexOf("/") + 1); - const version = pathWithNoExtension.substr(scopelessNameLength + 1); - if (!semver_1.valid(version, true)) - return null; - return { name, version }; - } - } -}); - -// ../npm-resolver/lib/parsePref.js -var require_parsePref3 = __commonJS({ - "../npm-resolver/lib/parsePref.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var parse_npm_tarball_url_1 = __importDefault(require_lib44()); - var version_selector_type_1 = __importDefault(require_version_selector_type()); - function parsePref(pref, alias, defaultTag, registry) { - let name = alias; - if (pref.startsWith("npm:")) { - pref = pref.substr(4); - const index = pref.lastIndexOf("@"); - if (index < 1) { - name = pref; - pref = defaultTag; + exports2.ProtectedStream = ProtectedStream; + var PipeStream = class { + constructor() { + this.stream = null; + } + close() { + if (this.stream === null) { + throw new Error(`Assertion failed: No stream attached`); } else { - name = pref.substr(0, index); - pref = pref.substr(index + 1); + this.stream.end(); } } - if (name) { - const selector = version_selector_type_1.default(pref); - if (selector != null) { - return { - fetchSpec: selector.normalized, - name, - type: selector.type - }; + attach(stream) { + this.stream = stream; + } + get() { + if (this.stream === null) { + throw new Error(`Assertion failed: No stream attached`); + } else { + return this.stream; } } - if (pref.startsWith(registry)) { - const pkg = parse_npm_tarball_url_1.default(pref); - if (pkg != null) { - return { - fetchSpec: pkg.version, - name: pkg.name, - normalizedPref: pref, - type: "version" - }; + }; + var Handle = class { + static start(implementation, { stdin, stdout, stderr }) { + const chain = new Handle(null, implementation); + chain.stdin = stdin; + chain.stdout = stdout; + chain.stderr = stderr; + return chain; + } + constructor(ancestor, implementation) { + this.stdin = null; + this.stdout = null; + this.stderr = null; + this.pipe = null; + this.ancestor = ancestor; + this.implementation = implementation; + } + pipeTo(implementation, source = Pipe.STDOUT) { + const next = new Handle(this, implementation); + const pipe = new PipeStream(); + next.pipe = pipe; + next.stdout = this.stdout; + next.stderr = this.stderr; + if ((source & Pipe.STDOUT) === Pipe.STDOUT) + this.stdout = pipe; + else if (this.ancestor !== null) + this.stderr = this.ancestor.stdout; + if ((source & Pipe.STDERR) === Pipe.STDERR) + this.stderr = pipe; + else if (this.ancestor !== null) + this.stderr = this.ancestor.stderr; + return next; + } + async exec() { + const stdio = [ + `ignore`, + `ignore`, + `ignore` + ]; + if (this.pipe) { + stdio[0] = `pipe`; + } else { + if (this.stdin === null) { + throw new Error(`Assertion failed: No input stream registered`); + } else { + stdio[0] = this.stdin.get(); + } + } + let stdoutLock; + if (this.stdout === null) { + throw new Error(`Assertion failed: No output stream registered`); + } else { + stdoutLock = this.stdout; + stdio[1] = stdoutLock.get(); + } + let stderrLock; + if (this.stderr === null) { + throw new Error(`Assertion failed: No error stream registered`); + } else { + stderrLock = this.stderr; + stdio[2] = stderrLock.get(); } + const child = this.implementation(stdio); + if (this.pipe) + this.pipe.attach(child.stdin); + return await child.promise.then((code) => { + stdoutLock.close(); + stderrLock.close(); + return code; + }); } - return null; + async run() { + const promises = []; + for (let handle = this; handle; handle = handle.ancestor) + promises.push(handle.exec()); + const exitCodes = await Promise.all(promises); + return exitCodes[0]; + } + }; + exports2.Handle = Handle; + function start(p, opts) { + return Handle.start(p, opts); + } + exports2.start = start; + function createStreamReporter(reportFn, prefix = null) { + const stream = new stream_12.PassThrough(); + const decoder = new string_decoder_1.StringDecoder(); + let buffer = ``; + stream.on(`data`, (chunk) => { + let chunkStr = decoder.write(chunk); + let lineIndex; + do { + lineIndex = chunkStr.indexOf(` +`); + if (lineIndex !== -1) { + const line = buffer + chunkStr.substring(0, lineIndex); + chunkStr = chunkStr.substring(lineIndex + 1); + buffer = ``; + if (prefix !== null) { + reportFn(`${prefix} ${line}`); + } else { + reportFn(line); + } + } + } while (lineIndex !== -1); + buffer += chunkStr; + }); + stream.on(`end`, () => { + const last = decoder.end(); + if (last !== ``) { + if (prefix !== null) { + reportFn(`${prefix} ${last}`); + } else { + reportFn(last); + } + } + }); + return stream; + } + function createOutputStreamsWithPrefix(state, { prefix }) { + return { + stdout: createStreamReporter((text) => state.stdout.write(`${text} +`), state.stdout.isTTY ? prefix : null), + stderr: createStreamReporter((text) => state.stderr.write(`${text} +`), state.stderr.isTTY ? prefix : null) + }; } - exports2.default = parsePref; + exports2.createOutputStreamsWithPrefix = createOutputStreamsWithPrefix; } }); -// ../npm-resolver/lib/fetch.js -var require_fetch2 = __commonJS({ - "../npm-resolver/lib/fetch.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/index.js +var require_lib124 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+shell@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/shell/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.RegistryResponseError = void 0; - var url_1 = __importDefault(require("url")); - var core_loggers_1 = require_lib12(); - var error_1 = __importStar2(require_lib8()); - var retry = __importStar2(require_retry2()); - var semverRegex = /(.*)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; - var RegistryResponseError = class extends error_1.FetchError { - constructor(request, response, pkgName) { - let hint; - if (response.status === 404) { - hint = `${pkgName} is not in the npm registry, or you have no permission to fetch it.`; - const matched = pkgName.match(semverRegex); - if (matched != null) { - hint += ` Did you mean ${matched[1]}?`; + exports2.execute = exports2.globUtils = exports2.ShellError = exports2.EntryCommand = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var parsers_1 = require_lib122(); + var chalk_1 = tslib_12.__importDefault(require_source2()); + var os_1 = require("os"); + var stream_12 = require("stream"); + var util_1 = require("util"); + var entry_1 = tslib_12.__importDefault(require_entry3()); + exports2.EntryCommand = entry_1.default; + var errors_1 = require_errors8(); + Object.defineProperty(exports2, "ShellError", { enumerable: true, get: function() { + return errors_1.ShellError; + } }); + var globUtils = tslib_12.__importStar(require_globUtils2()); + exports2.globUtils = globUtils; + var pipe_1 = require_pipe5(); + var pipe_2 = require_pipe5(); + var setTimeoutPromise = (0, util_1.promisify)(setTimeout); + var StreamType; + (function(StreamType2) { + StreamType2[StreamType2["Readable"] = 1] = "Readable"; + StreamType2[StreamType2["Writable"] = 2] = "Writable"; + })(StreamType || (StreamType = {})); + function getFileDescriptorStream(fd, type, state) { + const stream = new stream_12.PassThrough({ autoDestroy: true }); + switch (fd) { + case pipe_2.Pipe.STDIN: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stdin.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable && state.stdin instanceof stream_12.Writable) { + stream.pipe(state.stdin, { end: false }); + } + } + break; + case pipe_2.Pipe.STDOUT: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stdout.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable) { + stream.pipe(state.stdout, { end: false }); + } + } + break; + case pipe_2.Pipe.STDERR: + { + if ((type & StreamType.Readable) === StreamType.Readable) + state.stderr.pipe(stream, { end: false }); + if ((type & StreamType.Writable) === StreamType.Writable) { + stream.pipe(state.stderr, { end: false }); + } } + break; + default: { + throw new errors_1.ShellError(`Bad file descriptor: "${fd}"`); } - super(request, response, hint); - this.pkgName = pkgName; } - }; - exports2.RegistryResponseError = RegistryResponseError; - async function fromRegistry(fetch, fetchOpts, pkgName, registry, authHeaderValue) { - const uri = toUri(pkgName, registry); - const op = retry.operation(fetchOpts.retry); - return new Promise((resolve, reject) => op.attempt(async (attempt) => { - let response; - try { - response = await fetch(uri, { - authHeaderValue, - compress: true, - retry: fetchOpts.retry, - timeout: fetchOpts.timeout - }); - } catch (error) { - reject(new error_1.default("META_FETCH_FAIL", `GET ${uri}: ${error.message}`, { attempts: attempt })); - return; + return stream; + } + function cloneState(state, mergeWith = {}) { + const newState = { ...state, ...mergeWith }; + newState.environment = { ...state.environment, ...mergeWith.environment }; + newState.variables = { ...state.variables, ...mergeWith.variables }; + return newState; + } + var BUILTINS = /* @__PURE__ */ new Map([ + [`cd`, async ([target = (0, os_1.homedir)(), ...rest], opts, state) => { + const resolvedTarget = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(target)); + const stat = await opts.baseFs.statPromise(resolvedTarget).catch((error) => { + throw error.code === `ENOENT` ? new errors_1.ShellError(`cd: no such file or directory: ${target}`) : error; + }); + if (!stat.isDirectory()) + throw new errors_1.ShellError(`cd: not a directory: ${target}`); + state.cwd = resolvedTarget; + return 0; + }], + [`pwd`, async (args2, opts, state) => { + state.stdout.write(`${fslib_12.npath.fromPortablePath(state.cwd)} +`); + return 0; + }], + [`:`, async (args2, opts, state) => { + return 0; + }], + [`true`, async (args2, opts, state) => { + return 0; + }], + [`false`, async (args2, opts, state) => { + return 1; + }], + [`exit`, async ([code, ...rest], opts, state) => { + return state.exitCode = parseInt(code !== null && code !== void 0 ? code : state.variables[`?`], 10); + }], + [`echo`, async (args2, opts, state) => { + state.stdout.write(`${args2.join(` `)} +`); + return 0; + }], + [`sleep`, async ([time], opts, state) => { + if (typeof time === `undefined`) + throw new errors_1.ShellError(`sleep: missing operand`); + const seconds = Number(time); + if (Number.isNaN(seconds)) + throw new errors_1.ShellError(`sleep: invalid time interval '${time}'`); + return await setTimeoutPromise(1e3 * seconds, 0); + }], + [`__ysh_run_procedure`, async (args2, opts, state) => { + const procedure = state.procedures[args2[0]]; + const exitCode = await (0, pipe_2.start)(procedure, { + stdin: new pipe_2.ProtectedStream(state.stdin), + stdout: new pipe_2.ProtectedStream(state.stdout), + stderr: new pipe_2.ProtectedStream(state.stderr) + }).run(); + return exitCode; + }], + [`__ysh_set_redirects`, async (args2, opts, state) => { + let stdin = state.stdin; + let stdout = state.stdout; + let stderr = state.stderr; + const inputs = []; + const outputs = []; + const errors = []; + let t = 0; + while (args2[t] !== `--`) { + const key = args2[t++]; + const { type, fd } = JSON.parse(key); + const pushInput = (readableFactory) => { + switch (fd) { + case null: + case 0: + { + inputs.push(readableFactory); + } + break; + default: + throw new Error(`Unsupported file descriptor: "${fd}"`); + } + }; + const pushOutput = (writable) => { + switch (fd) { + case null: + case 1: + { + outputs.push(writable); + } + break; + case 2: + { + errors.push(writable); + } + break; + default: + throw new Error(`Unsupported file descriptor: "${fd}"`); + } + }; + const count = Number(args2[t++]); + const last = t + count; + for (let u = t; u < last; ++t, ++u) { + switch (type) { + case `<`: + { + pushInput(() => { + return opts.baseFs.createReadStream(fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args2[u]))); + }); + } + break; + case `<<<`: + { + pushInput(() => { + const input = new stream_12.PassThrough(); + process.nextTick(() => { + input.write(`${args2[u]} +`); + input.end(); + }); + return input; + }); + } + break; + case `<&`: + { + pushInput(() => getFileDescriptorStream(Number(args2[u]), StreamType.Readable, state)); + } + break; + case `>`: + case `>>`: + { + const outputPath = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args2[u])); + if (outputPath === `/dev/null`) { + pushOutput(new stream_12.Writable({ + autoDestroy: true, + emitClose: true, + write(chunk, encoding, callback) { + setImmediate(callback); + } + })); + } else { + pushOutput(opts.baseFs.createWriteStream(outputPath, type === `>>` ? { flags: `a` } : void 0)); + } + } + break; + case `>&`: + { + pushOutput(getFileDescriptorStream(Number(args2[u]), StreamType.Writable, state)); + } + break; + default: { + throw new Error(`Assertion failed: Unsupported redirection type: "${type}"`); + } + } + } } - if (response.status > 400) { - const request = { - authHeaderValue, - url: uri + if (inputs.length > 0) { + const pipe = new stream_12.PassThrough(); + stdin = pipe; + const bindInput = (n) => { + if (n === inputs.length) { + pipe.end(); + } else { + const input = inputs[n](); + input.pipe(pipe, { end: false }); + input.on(`end`, () => { + bindInput(n + 1); + }); + } }; - reject(new RegistryResponseError(request, response, pkgName)); - return; + bindInput(0); } - try { - resolve(await response.json()); - } catch (error) { - const timeout = op.retry(new error_1.default("BROKEN_METADATA_JSON", error.message)); - if (timeout === false) { - reject(op.mainError()); - return; + if (outputs.length > 0) { + const pipe = new stream_12.PassThrough(); + stdout = pipe; + for (const output of outputs) { + pipe.pipe(output); } - core_loggers_1.requestRetryLogger.debug({ - attempt, - error, - maxRetries: fetchOpts.retry.retries, - method: "GET", - timeout, - url: uri - }); } - })); + if (errors.length > 0) { + const pipe = new stream_12.PassThrough(); + stderr = pipe; + for (const error of errors) { + pipe.pipe(error); + } + } + const exitCode = await (0, pipe_2.start)(makeCommandAction(args2.slice(t + 1), opts, state), { + stdin: new pipe_2.ProtectedStream(stdin), + stdout: new pipe_2.ProtectedStream(stdout), + stderr: new pipe_2.ProtectedStream(stderr) + }).run(); + await Promise.all(outputs.map((output) => { + return new Promise((resolve, reject) => { + output.on(`error`, (error) => { + reject(error); + }); + output.on(`close`, () => { + resolve(); + }); + output.end(); + }); + })); + await Promise.all(errors.map((err) => { + return new Promise((resolve, reject) => { + err.on(`error`, (error) => { + reject(error); + }); + err.on(`close`, () => { + resolve(); + }); + err.end(); + }); + })); + return exitCode; + }] + ]); + async function executeBufferedSubshell(ast, opts, state) { + const chunks = []; + const stdout = new stream_12.PassThrough(); + stdout.on(`data`, (chunk) => chunks.push(chunk)); + await executeShellLine(ast, opts, cloneState(state, { stdout })); + return Buffer.concat(chunks).toString().replace(/[\r\n]+$/, ``); } - exports2.default = fromRegistry; - function toUri(pkgName, registry) { - let encodedName; - if (pkgName[0] === "@") { - encodedName = `@${encodeURIComponent(pkgName.substr(1))}`; - } else { - encodedName = encodeURIComponent(pkgName); + async function applyEnvVariables(environmentSegments, opts, state) { + const envPromises = environmentSegments.map(async (envSegment) => { + const interpolatedArgs = await interpolateArguments(envSegment.args, opts, state); + return { + name: envSegment.name, + value: interpolatedArgs.join(` `) + }; + }); + const interpolatedEnvs = await Promise.all(envPromises); + return interpolatedEnvs.reduce((envs, env) => { + envs[env.name] = env.value; + return envs; + }, {}); + } + function split(raw) { + return raw.match(/[^ \r\n\t]+/g) || []; + } + async function evaluateVariable(segment, opts, state, push, pushAndClose = push) { + switch (segment.name) { + case `$`: + { + push(String(process.pid)); + } + break; + case `#`: + { + push(String(opts.args.length)); + } + break; + case `@`: + { + if (segment.quoted) { + for (const raw of opts.args) { + pushAndClose(raw); + } + } else { + for (const raw of opts.args) { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + push(parts[parts.length - 1]); + } + } + } + break; + case `*`: + { + const raw = opts.args.join(` `); + if (segment.quoted) { + push(raw); + } else { + for (const part of split(raw)) { + pushAndClose(part); + } + } + } + break; + case `PPID`: + { + push(String(process.ppid)); + } + break; + case `RANDOM`: + { + push(String(Math.floor(Math.random() * 32768))); + } + break; + default: + { + const argIndex = parseInt(segment.name, 10); + let raw; + const isArgument = Number.isFinite(argIndex); + if (isArgument) { + if (argIndex >= 0 && argIndex < opts.args.length) { + raw = opts.args[argIndex]; + } + } else { + if (Object.prototype.hasOwnProperty.call(state.variables, segment.name)) { + raw = state.variables[segment.name]; + } else if (Object.prototype.hasOwnProperty.call(state.environment, segment.name)) { + raw = state.environment[segment.name]; + } + } + if (typeof raw !== `undefined` && segment.alternativeValue) { + raw = (await interpolateArguments(segment.alternativeValue, opts, state)).join(` `); + } else if (typeof raw === `undefined`) { + if (segment.defaultValue) { + raw = (await interpolateArguments(segment.defaultValue, opts, state)).join(` `); + } else if (segment.alternativeValue) { + raw = ``; + } + } + if (typeof raw === `undefined`) { + if (isArgument) + throw new errors_1.ShellError(`Unbound argument #${argIndex}`); + throw new errors_1.ShellError(`Unbound variable "${segment.name}"`); + } + if (segment.quoted) { + push(raw); + } else { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + const part = parts[parts.length - 1]; + if (typeof part !== `undefined`) { + push(part); + } + } + } + break; } - return new url_1.default.URL(encodedName, registry).toString(); } - } -}); - -// ../npm-resolver/lib/createNpmPkgId.js -var require_createNpmPkgId = __commonJS({ - "../npm-resolver/lib/createNpmPkgId.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var operators = { + addition: (left, right) => left + right, + subtraction: (left, right) => left - right, + multiplication: (left, right) => left * right, + division: (left, right) => Math.trunc(left / right) }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var encode_registry_1 = __importDefault(require_encode_registry()); - function createPkgId(registry, pkgName, pkgVersion) { - const escapedRegistryHost = encode_registry_1.default(registry); - return `${escapedRegistryHost}/${pkgName}/${pkgVersion}`; + async function evaluateArithmetic(arithmetic, opts, state) { + if (arithmetic.type === `number`) { + if (!Number.isInteger(arithmetic.value)) { + throw new Error(`Invalid number: "${arithmetic.value}", only integers are allowed`); + } else { + return arithmetic.value; + } + } else if (arithmetic.type === `variable`) { + const parts = []; + await evaluateVariable({ ...arithmetic, quoted: true }, opts, state, (result2) => parts.push(result2)); + const number = Number(parts.join(` `)); + if (Number.isNaN(number)) { + return evaluateArithmetic({ type: `variable`, name: parts.join(` `) }, opts, state); + } else { + return evaluateArithmetic({ type: `number`, value: number }, opts, state); + } + } else { + return operators[arithmetic.type](await evaluateArithmetic(arithmetic.left, opts, state), await evaluateArithmetic(arithmetic.right, opts, state)); + } } - exports2.default = createPkgId; - } -}); - -// ../npm-resolver/lib/index.js -var require_lib45 = __commonJS({ - "../npm-resolver/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + async function interpolateArguments(commandArgs, opts, state) { + const redirections = /* @__PURE__ */ new Map(); + const interpolated = []; + let interpolatedSegments = []; + const push = (segment) => { + interpolatedSegments.push(segment); + }; + const close = () => { + if (interpolatedSegments.length > 0) + interpolated.push(interpolatedSegments.join(``)); + interpolatedSegments = []; + }; + const pushAndClose = (segment) => { + push(segment); + close(); + }; + const redirect = (type, fd, target) => { + const key = JSON.stringify({ type, fd }); + let targets = redirections.get(key); + if (typeof targets === `undefined`) + redirections.set(key, targets = []); + targets.push(target); + }; + for (const commandArg of commandArgs) { + let isGlob = false; + switch (commandArg.type) { + case `redirection`: + { + const interpolatedArgs = await interpolateArguments(commandArg.args, opts, state); + for (const interpolatedArg of interpolatedArgs) { + redirect(commandArg.subtype, commandArg.fd, interpolatedArg); + } + } + break; + case `argument`: + { + for (const segment of commandArg.segments) { + switch (segment.type) { + case `text`: + { + push(segment.text); + } + break; + case `glob`: + { + push(segment.pattern); + isGlob = true; + } + break; + case `shell`: + { + const raw = await executeBufferedSubshell(segment.shell, opts, state); + if (segment.quoted) { + push(raw); + } else { + const parts = split(raw); + for (let t = 0; t < parts.length - 1; ++t) + pushAndClose(parts[t]); + push(parts[parts.length - 1]); + } + } + break; + case `variable`: + { + await evaluateVariable(segment, opts, state, push, pushAndClose); + } + break; + case `arithmetic`: + { + push(String(await evaluateArithmetic(segment.arithmetic, opts, state))); + } + break; + } + } + } + break; + } + close(); + if (isGlob) { + const pattern = interpolated.pop(); + if (typeof pattern === `undefined`) + throw new Error(`Assertion failed: Expected a glob pattern to have been set`); + const matches = await opts.glob.match(pattern, { cwd: state.cwd, baseFs: opts.baseFs }); + if (matches.length === 0) { + const braceExpansionNotice = globUtils.isBraceExpansion(pattern) ? `. Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22` : ``; + throw new errors_1.ShellError(`No matches found: "${pattern}"${braceExpansionNotice}`); + } + for (const match of matches.sort()) { + pushAndClose(match); + } + } } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.RegistryResponseError = exports2.NoMatchingVersionError = void 0; - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var resolve_workspace_range_1 = __importDefault(require_lib24()); - var lru_cache_1 = __importDefault(require_lru_cache()); - var normalize_path_1 = __importDefault(require_normalize_path()); - var p_memoize_1 = __importDefault(require_p_memoize()); - var semver_1 = __importDefault(require_semver2()); - var ssri_1 = __importDefault(require_ssri()); - var pickPackage_1 = __importDefault(require_pickPackage()); - var parsePref_1 = __importDefault(require_parsePref3()); - var fetch_1 = __importStar2(require_fetch2()); - Object.defineProperty(exports2, "RegistryResponseError", { enumerable: true, get: function() { - return fetch_1.RegistryResponseError; - } }); - var createNpmPkgId_1 = __importDefault(require_createNpmPkgId()); - var NoMatchingVersionError = class extends error_1.default { - constructor(opts) { - var _a; - const dep = opts.wantedDependency.alias ? `${opts.wantedDependency.alias}@${(_a = opts.wantedDependency.pref) !== null && _a !== void 0 ? _a : ""}` : opts.wantedDependency.pref; - super("NO_MATCHING_VERSION", `No matching version found for ${dep}`); - this.packageMeta = opts.packageMeta; + if (redirections.size > 0) { + const redirectionArgs = []; + for (const [key, targets] of redirections.entries()) + redirectionArgs.splice(redirectionArgs.length, 0, key, String(targets.length), ...targets); + interpolated.splice(0, 0, `__ysh_set_redirects`, ...redirectionArgs, `--`); } - }; - exports2.NoMatchingVersionError = NoMatchingVersionError; - var META_DIR = "metadata"; - var FULL_META_DIR = "metadata-full"; - function createResolver(fetchFromRegistry, getCredentials, opts) { - var _a, _b; - if (typeof opts.cacheDir !== "string") { - throw new TypeError("`opts.cacheDir` is required and needs to be a string"); + return interpolated; + } + function makeCommandAction(args2, opts, state) { + if (!opts.builtins.has(args2[0])) + args2 = [`command`, ...args2]; + const nativeCwd = fslib_12.npath.fromPortablePath(state.cwd); + let env = state.environment; + if (typeof env.PWD !== `undefined`) + env = { ...env, PWD: nativeCwd }; + const [name, ...rest] = args2; + if (name === `command`) { + return (0, pipe_1.makeProcess)(rest[0], rest.slice(1), opts, { + cwd: nativeCwd, + env + }); } - const fetchOpts = { - retry: (_a = opts.retry) !== null && _a !== void 0 ? _a : {}, - timeout: (_b = opts.timeout) !== null && _b !== void 0 ? _b : 6e4 - }; - const fetch = p_memoize_1.default(fetch_1.default.bind(null, fetchFromRegistry, fetchOpts), { - cacheKey: (...args2) => JSON.stringify(args2), - maxAge: 1e3 * 20 - }); - const getAuthHeaderValueByURI = (registry) => getCredentials(registry).authHeaderValue; - const metaCache = new lru_cache_1.default({ - max: 1e4, - maxAge: 120 * 1e3 - }); - return resolveNpm.bind(null, { - getAuthHeaderValueByURI, - pickPackage: pickPackage_1.default.bind(null, { - fetch, - metaCache, - metaDir: opts.fullMetadata ? FULL_META_DIR : META_DIR, - offline: opts.offline, - preferOffline: opts.preferOffline, - cacheDir: opts.cacheDir - }) + const builtin = opts.builtins.get(name); + if (typeof builtin === `undefined`) + throw new Error(`Assertion failed: A builtin should exist for "${name}"`); + return (0, pipe_1.makeBuiltin)(async ({ stdin, stdout, stderr }) => { + const { stdin: initialStdin, stdout: initialStdout, stderr: initialStderr } = state; + state.stdin = stdin; + state.stdout = stdout; + state.stderr = stderr; + try { + return await builtin(rest, opts, state); + } finally { + state.stdin = initialStdin; + state.stdout = initialStdout; + state.stderr = initialStderr; + } }); } - exports2.default = createResolver; - async function resolveNpm(ctx, wantedDependency, opts) { - var _a, _b, _c; - const defaultTag = (_a = opts.defaultTag) !== null && _a !== void 0 ? _a : "latest"; - if ((_b = wantedDependency.pref) === null || _b === void 0 ? void 0 : _b.startsWith("workspace:")) { - if (wantedDependency.pref.startsWith("workspace:.")) - return null; - const resolvedFromWorkspace = tryResolveFromWorkspace(wantedDependency, { - defaultTag, - projectDir: opts.projectDir, - registry: opts.registry, - workspacePackages: opts.workspacePackages - }); - if (resolvedFromWorkspace != null) { - return resolvedFromWorkspace; + function makeSubshellAction(ast, opts, state) { + return (stdio) => { + const stdin = new stream_12.PassThrough(); + const promise = executeShellLine(ast, opts, cloneState(state, { stdin })); + return { stdin, promise }; + }; + } + function makeGroupAction(ast, opts, state) { + return (stdio) => { + const stdin = new stream_12.PassThrough(); + const promise = executeShellLine(ast, opts, state); + return { stdin, promise }; + }; + } + function makeActionFromProcedure(procedure, args2, opts, activeState) { + if (args2.length === 0) { + return procedure; + } else { + let key; + do { + key = String(Math.random()); + } while (Object.prototype.hasOwnProperty.call(activeState.procedures, key)); + activeState.procedures = { ...activeState.procedures }; + activeState.procedures[key] = procedure; + return makeCommandAction([...args2, `__ysh_run_procedure`, key], opts, activeState); + } + } + async function executeCommandChainImpl(node, opts, state) { + let current = node; + let pipeType = null; + let execution = null; + while (current) { + const activeState = current.then ? { ...state } : state; + let action; + switch (current.type) { + case `command`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const environment = await applyEnvVariables(current.envs, opts, state); + action = current.envs.length ? makeCommandAction(args2, opts, cloneState(activeState, { environment })) : makeCommandAction(args2, opts, activeState); + } + break; + case `subshell`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const procedure = makeSubshellAction(current.subshell, opts, activeState); + action = makeActionFromProcedure(procedure, args2, opts, activeState); + } + break; + case `group`: + { + const args2 = await interpolateArguments(current.args, opts, state); + const procedure = makeGroupAction(current.group, opts, activeState); + action = makeActionFromProcedure(procedure, args2, opts, activeState); + } + break; + case `envs`: + { + const environment = await applyEnvVariables(current.envs, opts, state); + activeState.environment = { ...activeState.environment, ...environment }; + action = makeCommandAction([`true`], opts, activeState); + } + break; + } + if (typeof action === `undefined`) + throw new Error(`Assertion failed: An action should have been generated`); + if (pipeType === null) { + execution = (0, pipe_2.start)(action, { + stdin: new pipe_2.ProtectedStream(activeState.stdin), + stdout: new pipe_2.ProtectedStream(activeState.stdout), + stderr: new pipe_2.ProtectedStream(activeState.stderr) + }); + } else { + if (execution === null) + throw new Error(`Assertion failed: The execution pipeline should have been setup`); + switch (pipeType) { + case `|`: + { + execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT); + } + break; + case `|&`: + { + execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT | pipe_2.Pipe.STDERR); + } + break; + } } - } - const workspacePackages = opts.alwaysTryWorkspacePackages !== false ? opts.workspacePackages : void 0; - const spec = wantedDependency.pref ? parsePref_1.default(wantedDependency.pref, wantedDependency.alias, defaultTag, opts.registry) : defaultTagForAlias(wantedDependency.alias, defaultTag); - if (spec == null) - return null; - const authHeaderValue = ctx.getAuthHeaderValueByURI(opts.registry); - let pickResult; - try { - pickResult = await ctx.pickPackage(spec, { - authHeaderValue, - dryRun: opts.dryRun === true, - preferredVersionSelectors: (_c = opts.preferredVersions) === null || _c === void 0 ? void 0 : _c[spec.name], - registry: opts.registry - }); - } catch (err) { - if (workspacePackages != null && opts.projectDir) { - const resolvedFromLocal = tryResolveFromWorkspacePackages(workspacePackages, spec, opts.projectDir); - if (resolvedFromLocal != null) - return resolvedFromLocal; + if (current.then) { + pipeType = current.then.type; + current = current.then.chain; + } else { + current = null; } - throw err; } - const pickedPackage = pickResult.pickedPackage; - const meta = pickResult.meta; - if (pickedPackage == null) { - if (workspacePackages != null && opts.projectDir) { - const resolvedFromLocal = tryResolveFromWorkspacePackages(workspacePackages, spec, opts.projectDir); - if (resolvedFromLocal != null) - return resolvedFromLocal; - } - throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta }); + if (execution === null) + throw new Error(`Assertion failed: The execution pipeline should have been setup`); + return await execution.run(); + } + async function executeCommandChain(node, opts, state, { background = false } = {}) { + function getColorizer(index) { + const colors = [`#2E86AB`, `#A23B72`, `#F18F01`, `#C73E1D`, `#CCE2A3`]; + const colorName = colors[index % colors.length]; + return chalk_1.default.hex(colorName); + } + if (background) { + const index = state.nextBackgroundJobIndex++; + const colorizer = getColorizer(index); + const rawPrefix = `[${index}]`; + const prefix = colorizer(rawPrefix); + const { stdout, stderr } = (0, pipe_1.createOutputStreamsWithPrefix)(state, { prefix }); + state.backgroundJobs.push(executeCommandChainImpl(node, opts, cloneState(state, { stdout, stderr })).catch((error) => stderr.write(`${error.message} +`)).finally(() => { + if (state.stdout.isTTY) { + state.stdout.write(`Job ${prefix}, '${colorizer((0, parsers_1.stringifyCommandChain)(node))}' has ended +`); + } + })); + return 0; } - if ((workspacePackages === null || workspacePackages === void 0 ? void 0 : workspacePackages[pickedPackage.name]) != null && opts.projectDir) { - if (workspacePackages[pickedPackage.name][pickedPackage.version]) { - return { - ...resolveFromLocalPackage(workspacePackages[pickedPackage.name][pickedPackage.version], spec.normalizedPref, opts.projectDir), - latest: meta["dist-tags"].latest - }; + return await executeCommandChainImpl(node, opts, state); + } + async function executeCommandLine(node, opts, state, { background = false } = {}) { + let code; + const setCode = (newCode) => { + code = newCode; + state.variables[`?`] = String(newCode); + }; + const executeChain = async (line) => { + try { + return await executeCommandChain(line.chain, opts, state, { background: background && typeof line.then === `undefined` }); + } catch (error) { + if (!(error instanceof errors_1.ShellError)) + throw error; + state.stderr.write(`${error.message} +`); + return 1; } - const localVersion = pickMatchingLocalVersionOrNull(workspacePackages[pickedPackage.name], spec); - if (localVersion && (semver_1.default.gt(localVersion, pickedPackage.version) || opts.preferWorkspacePackages)) { - return { - ...resolveFromLocalPackage(workspacePackages[pickedPackage.name][localVersion], spec.normalizedPref, opts.projectDir), - latest: meta["dist-tags"].latest - }; + }; + setCode(await executeChain(node)); + while (node.then) { + if (state.exitCode !== null) + return state.exitCode; + switch (node.then.type) { + case `&&`: + { + if (code === 0) { + setCode(await executeChain(node.then.line)); + } + } + break; + case `||`: + { + if (code !== 0) { + setCode(await executeChain(node.then.line)); + } + } + break; + default: { + throw new Error(`Assertion failed: Unsupported command type: "${node.then.type}"`); + } } + node = node.then.line; } - const id = createNpmPkgId_1.default(pickedPackage.dist.tarball, pickedPackage.name, pickedPackage.version); - const resolution = { - integrity: getIntegrity(pickedPackage.dist), - registry: opts.registry, - tarball: pickedPackage.dist.tarball - }; - return { - id, - latest: meta["dist-tags"].latest, - manifest: pickedPackage, - normalizedPref: spec.normalizedPref, - resolution, - resolvedVia: "npm-registry" - }; + return code; } - function workspacePrefToNpm(workspacePref) { - const prefParts = /^workspace:([^@]+@)?(.*)$/.exec(workspacePref); - if (prefParts == null) { - throw new Error(`Invalid workspace spec: ${workspacePref}`); + async function executeShellLine(node, opts, state) { + const originalBackgroundJobs = state.backgroundJobs; + state.backgroundJobs = []; + let rightMostExitCode = 0; + for (const { command, type } of node) { + rightMostExitCode = await executeCommandLine(command, opts, state, { background: type === `&` }); + if (state.exitCode !== null) + return state.exitCode; + state.variables[`?`] = String(rightMostExitCode); } - const [workspacePkgAlias, workspaceVersion] = prefParts.slice(1); - const pkgAliasPart = workspacePkgAlias != null && workspacePkgAlias ? `npm:${workspacePkgAlias}` : ""; - const versionPart = workspaceVersion === "^" || workspaceVersion === "~" ? "*" : workspaceVersion; - return `${pkgAliasPart}${versionPart}`; + await Promise.all(state.backgroundJobs); + state.backgroundJobs = originalBackgroundJobs; + return rightMostExitCode; } - function tryResolveFromWorkspace(wantedDependency, opts) { - var _a, _b; - if (!((_a = wantedDependency.pref) === null || _a === void 0 ? void 0 : _a.startsWith("workspace:"))) { - return null; - } - const pref = workspacePrefToNpm(wantedDependency.pref); - const spec = parsePref_1.default(pref, wantedDependency.alias, opts.defaultTag, opts.registry); - if (spec == null) - throw new Error(`Invalid workspace: spec (${wantedDependency.pref})`); - if (opts.workspacePackages == null) { - throw new Error("Cannot resolve package from workspace because opts.workspacePackages is not defined"); - } - if (!opts.projectDir) { - throw new Error("Cannot resolve package from workspace because opts.projectDir is not defined"); - } - const resolvedFromLocal = tryResolveFromWorkspacePackages(opts.workspacePackages, spec, opts.projectDir); - if (resolvedFromLocal == null) { - throw new error_1.default("NO_MATCHING_VERSION_INSIDE_WORKSPACE", `In ${path_1.default.relative(process.cwd(), opts.projectDir)}: No matching version found for ${(_b = wantedDependency.alias) !== null && _b !== void 0 ? _b : ""}@${pref} inside the workspace`); + function locateArgsVariableInSegment(segment) { + switch (segment.type) { + case `variable`: { + return segment.name === `@` || segment.name === `#` || segment.name === `*` || Number.isFinite(parseInt(segment.name, 10)) || `defaultValue` in segment && !!segment.defaultValue && segment.defaultValue.some((arg) => locateArgsVariableInArgument(arg)) || `alternativeValue` in segment && !!segment.alternativeValue && segment.alternativeValue.some((arg) => locateArgsVariableInArgument(arg)); + } + case `arithmetic`: { + return locateArgsVariableInArithmetic(segment.arithmetic); + } + case `shell`: { + return locateArgsVariable(segment.shell); + } + default: { + return false; + } } - return resolvedFromLocal; - } - function tryResolveFromWorkspacePackages(workspacePackages, spec, projectDir) { - if (!workspacePackages[spec.name]) - return null; - const localVersion = pickMatchingLocalVersionOrNull(workspacePackages[spec.name], spec); - if (!localVersion) - return null; - return resolveFromLocalPackage(workspacePackages[spec.name][localVersion], spec.normalizedPref, projectDir); } - function pickMatchingLocalVersionOrNull(versions, spec) { - const localVersions = Object.keys(versions); - switch (spec.type) { - case "tag": - return semver_1.default.maxSatisfying(localVersions, "*"); - case "version": - return versions[spec.fetchSpec] ? spec.fetchSpec : null; - case "range": - return resolve_workspace_range_1.default(spec.fetchSpec, localVersions); + function locateArgsVariableInArgument(arg) { + switch (arg.type) { + case `redirection`: { + return arg.args.some((arg2) => locateArgsVariableInArgument(arg2)); + } + case `argument`: { + return arg.segments.some((segment) => locateArgsVariableInSegment(segment)); + } default: - return null; + throw new Error(`Assertion failed: Unsupported argument type: "${arg.type}"`); } } - function resolveFromLocalPackage(localPackage, normalizedPref, projectDir) { - return { - id: `link:${normalize_path_1.default(path_1.default.relative(projectDir, localPackage.dir))}`, - manifest: localPackage.manifest, - normalizedPref, - resolution: { - directory: localPackage.dir, - type: "directory" - }, - resolvedVia: "local-filesystem" - }; + function locateArgsVariableInArithmetic(arg) { + switch (arg.type) { + case `variable`: { + return locateArgsVariableInSegment(arg); + } + case `number`: { + return false; + } + default: + return locateArgsVariableInArithmetic(arg.left) || locateArgsVariableInArithmetic(arg.right); + } } - function defaultTagForAlias(alias, defaultTag) { - return { - fetchSpec: defaultTag, - name: alias, - type: "tag" - }; + function locateArgsVariable(node) { + return node.some(({ command }) => { + while (command) { + let chain = command.chain; + while (chain) { + let hasArgs; + switch (chain.type) { + case `subshell`: + { + hasArgs = locateArgsVariable(chain.subshell); + } + break; + case `command`: + { + hasArgs = chain.envs.some((env) => env.args.some((arg) => { + return locateArgsVariableInArgument(arg); + })) || chain.args.some((arg) => { + return locateArgsVariableInArgument(arg); + }); + } + break; + } + if (hasArgs) + return true; + if (!chain.then) + break; + chain = chain.then.chain; + } + if (!command.then) + break; + command = command.then.line; + } + return false; + }); } - function getIntegrity(dist) { - if (dist.integrity) { - return dist.integrity; - } - if (!dist.shasum) { - return void 0; + async function execute(command, args2 = [], { baseFs = new fslib_12.NodeFS(), builtins = {}, cwd = fslib_12.npath.toPortablePath(process.cwd()), env = process.env, stdin = process.stdin, stdout = process.stdout, stderr = process.stderr, variables = {}, glob = globUtils } = {}) { + const normalizedEnv = {}; + for (const [key, value] of Object.entries(env)) + if (typeof value !== `undefined`) + normalizedEnv[key] = value; + const normalizedBuiltins = new Map(BUILTINS); + for (const [key, builtin] of Object.entries(builtins)) + normalizedBuiltins.set(key, builtin); + if (stdin === null) { + stdin = new stream_12.PassThrough(); + stdin.end(); } - const integrity = ssri_1.default.fromHex(dist.shasum, "sha1"); - if (!integrity) { - throw new error_1.default("INVALID_TARBALL_INTEGRITY", `Tarball "${dist.tarball}" has invalid shasum specified in its metadata: ${dist.shasum}`); + const ast = (0, parsers_1.parseShell)(command, glob); + if (!locateArgsVariable(ast) && ast.length > 0 && args2.length > 0) { + let { command: command2 } = ast[ast.length - 1]; + while (command2.then) + command2 = command2.then.line; + let chain = command2.chain; + while (chain.then) + chain = chain.then.chain; + if (chain.type === `command`) { + chain.args = chain.args.concat(args2.map((arg) => { + return { + type: `argument`, + segments: [{ + type: `text`, + text: arg + }] + }; + })); + } } - return integrity.toString(); + return await executeShellLine(ast, { + args: args2, + baseFs, + builtins: normalizedBuiltins, + initialStdin: stdin, + initialStdout: stdout, + initialStderr: stderr, + glob + }, { + cwd, + environment: normalizedEnv, + exitCode: null, + procedures: {}, + stdin, + stdout, + stderr, + variables: Object.assign({}, variables, { + [`?`]: 0 + }), + nextBackgroundJobIndex: 1, + backgroundJobs: [] + }); } + exports2.execute = execute; } }); -// ../tarball-resolver/lib/index.js -var require_lib46 = __commonJS({ - "../tarball-resolver/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - async function resolveTarball(wantedDependency) { - if (!wantedDependency.pref.startsWith("http:") && !wantedDependency.pref.startsWith("https:")) { - return null; - } - if (isRepository(wantedDependency.pref)) - return null; - return { - id: `@${wantedDependency.pref.replace(/^.*:\/\/(git@)?/, "").replace(":", "+")}`, - normalizedPref: wantedDependency.pref, - resolution: { - tarball: wantedDependency.pref - }, - resolvedVia: "url" - }; - } - exports2.default = resolveTarball; - var GIT_HOSTERS = new Set([ - "github.com", - "gitlab.com", - "bitbucket.org" - ]); - function isRepository(pref) { - if (pref.endsWith("/")) { - pref = pref.substr(0, pref.length - 1); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js +var require_arrayMap = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js"(exports2, module2) { + function arrayMap(array, iteratee) { + var index = -1, length = array == null ? 0 : array.length, result2 = Array(length); + while (++index < length) { + result2[index] = iteratee(array[index], index, array); } - const parts = pref.split("/"); - return parts.length === 5 && GIT_HOSTERS.has(parts[2]); - } - } -}); - -// ../default-resolver/lib/index.js -var require_lib47 = __commonJS({ - "../default-resolver/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var git_resolver_1 = __importDefault(require_lib42()); - var local_resolver_1 = __importDefault(require_lib43()); - var npm_resolver_1 = __importDefault(require_lib45()); - var tarball_resolver_1 = __importDefault(require_lib46()); - function createResolver(fetchFromRegistry, getCredentials, pnpmOpts) { - const resolveFromNpm = npm_resolver_1.default(fetchFromRegistry, getCredentials, pnpmOpts); - const resolveFromGit = git_resolver_1.default(pnpmOpts); - return async (wantedDependency, opts) => { - var _a, _b, _c, _d; - const resolution = (_a = await resolveFromNpm(wantedDependency, opts)) !== null && _a !== void 0 ? _a : wantedDependency.pref && ((_c = (_b = await tarball_resolver_1.default(wantedDependency)) !== null && _b !== void 0 ? _b : await resolveFromGit(wantedDependency)) !== null && _c !== void 0 ? _c : await local_resolver_1.default(wantedDependency, opts)); - if (!resolution) { - throw new error_1.default("SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER", `${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${(_d = wantedDependency.pref) !== null && _d !== void 0 ? _d : ""} isn't supported by any available resolver.`); - } - return resolution; - }; + return result2; } - exports2.default = createResolver; + module2.exports = arrayMap; } }); -// ../git-fetcher/lib/index.js -var require_lib48 = __commonJS({ - "../git-fetcher/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var prepare_package_1 = __importDefault(require_lib39()); - var rimraf_1 = __importDefault(require_rimraf()); - var execa_1 = __importDefault(require_lib26()); - exports2.default = () => { - return { - git: async function fetchFromGit(cafs, resolution, opts) { - const tempLocation = await cafs.tempDir(); - await execGit(["clone", resolution.repo, tempLocation]); - await execGit(["checkout", resolution.commit], { cwd: tempLocation }); - await prepare_package_1.default(tempLocation); - await rimraf_1.default(path_1.default.join(tempLocation, ".git")); - const filesIndex = await cafs.addFilesFromDir(tempLocation, opts.manifest); - return { filesIndex }; - } - }; - }; - function prefixGitArgs() { - return process.platform === "win32" ? ["-c", "core.longpaths=true"] : []; - } - function execGit(args2, opts) { - const fullArgs = prefixGitArgs().concat(args2 || []); - return execa_1.default("git", fullArgs, opts); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js +var require_baseToString = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js"(exports2, module2) { + var Symbol2 = require_Symbol(); + var arrayMap = require_arrayMap(); + var isArray = require_isArray2(); + var isSymbol = require_isSymbol(); + var INFINITY = 1 / 0; + var symbolProto = Symbol2 ? Symbol2.prototype : void 0; + var symbolToString = symbolProto ? symbolProto.toString : void 0; + function baseToString(value) { + if (typeof value == "string") { + return value; + } + if (isArray(value)) { + return arrayMap(value, baseToString) + ""; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ""; + } + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; } + module2.exports = baseToString; } }); -// ../../node_modules/.pnpm/nerf-dart@1.0.0/node_modules/nerf-dart/index.js -var require_nerf_dart = __commonJS({ - "../../node_modules/.pnpm/nerf-dart@1.0.0/node_modules/nerf-dart/index.js"(exports2, module2) { - var url = require("url"); - module2.exports = toNerfDart; - function toNerfDart(uri) { - var parsed = url.parse(uri); - delete parsed.protocol; - delete parsed.auth; - delete parsed.query; - delete parsed.search; - delete parsed.hash; - return url.resolve(url.format(parsed), "."); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js +var require_toString = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js"(exports2, module2) { + var baseToString = require_baseToString(); + function toString(value) { + return value == null ? "" : baseToString(value); } + module2.exports = toString; } }); -// ../../node_modules/.pnpm/credentials-by-uri@2.0.0/node_modules/credentials-by-uri/index.js -var require_credentials_by_uri = __commonJS({ - "../../node_modules/.pnpm/credentials-by-uri@2.0.0/node_modules/credentials-by-uri/index.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var toNerfDart = require_nerf_dart(); - module2.exports = function getCredentialsByURI(config, uri) { - assert(uri && typeof uri === "string", "registry URL is required"); - const nerfed = toNerfDart(uri); - const defnerf = toNerfDart(config.registry); - const creds = getScopedCredentials(nerfed, `${nerfed}:`, config); - if (nerfed !== defnerf) - return creds; - return { - ...getScopedCredentials(nerfed, "", config), - ...creds - }; - }; - function getScopedCredentials(nerfed, scope, config) { - const c = {}; - if (config[`${scope}always-auth`] !== void 0) { - const val = config[`${scope}always-auth`]; - c.alwaysAuth = val === "false" ? false : !!val; - } - if (config[`${scope}_authToken`]) { - c.authHeaderValue = `Bearer ${config[`${scope}_authToken`]}`; - return c; - } - if (config[`${scope}_auth`]) { - c.authHeaderValue = `Basic ${config[`${scope}_auth`]}`; - return c; - } - let username, password; - if (config[`${scope}username`]) { - username = config[`${scope}username`]; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSlice.js +var require_baseSlice = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSlice.js"(exports2, module2) { + function baseSlice(array, start, end) { + var index = -1, length = array.length; + if (start < 0) { + start = -start > length ? 0 : length + start; } - if (config[`${scope}_password`]) { - if (scope === "") { - password = config[`${scope}_password`]; - } else { - password = Buffer.from(config[`${scope}_password`], "base64").toString("utf8"); - } + end = end > length ? length : end; + if (end < 0) { + end += length; } - if (username && password) { - c.authHeaderValue = `Basic ${Buffer.from(`${username}:${password}`).toString("base64")}`; + length = start > end ? 0 : end - start >>> 0; + start >>>= 0; + var result2 = Array(length); + while (++index < length) { + result2[index] = array[index + start]; } - return c; + return result2; } + module2.exports = baseSlice; } }); -// ../client/lib/index.js -var require_lib49 = __commonJS({ - "../client/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createResolver = void 0; - var default_resolver_1 = __importDefault(require_lib47()); - var fetch_1 = require_lib29(); - var git_fetcher_1 = __importDefault(require_lib48()); - var tarball_fetcher_1 = __importDefault(require_lib40()); - var credentials_by_uri_1 = __importDefault(require_credentials_by_uri()); - var mem_1 = __importDefault(require_dist8()); - function default_1(opts) { - const fetchFromRegistry = fetch_1.createFetchFromRegistry(opts); - const getCredentials = mem_1.default((registry) => credentials_by_uri_1.default(opts.authConfig, registry)); - return { - fetchers: createFetchers(fetchFromRegistry, getCredentials, opts), - resolve: default_resolver_1.default(fetchFromRegistry, getCredentials, opts) - }; - } - exports2.default = default_1; - function createResolver(opts) { - const fetchFromRegistry = fetch_1.createFetchFromRegistry(opts); - const getCredentials = mem_1.default((registry) => credentials_by_uri_1.default(opts.authConfig, registry)); - return default_resolver_1.default(fetchFromRegistry, getCredentials, opts); - } - exports2.createResolver = createResolver; - function createFetchers(fetchFromRegistry, getCredentials, opts) { - return { - ...tarball_fetcher_1.default(fetchFromRegistry, getCredentials, opts), - ...git_fetcher_1.default() - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castSlice.js +var require_castSlice = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castSlice.js"(exports2, module2) { + var baseSlice = require_baseSlice(); + function castSlice(array, start, end) { + var length = array.length; + end = end === void 0 ? length : end; + return !start && end >= length ? array : baseSlice(array, start, end); } + module2.exports = castSlice; } }); -// ../pick-registry-for-package/lib/index.js -var require_lib50 = __commonJS({ - "../pick-registry-for-package/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.default = (registries, packageName, pref) => { - var _a; - const scope = getScope(packageName, pref); - return (_a = scope && registries[scope]) !== null && _a !== void 0 ? _a : registries.default; - }; - function getScope(pkgName, pref) { - if (pref === null || pref === void 0 ? void 0 : pref.startsWith("npm:")) { - pref = pref.substr(4); - if (pref[0] === "@") { - return pref.substr(0, pref.indexOf("/")); - } - } - if (pkgName[0] === "@") { - return pkgName.substr(0, pkgName.indexOf("/")); - } - return null; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasUnicode.js +var require_hasUnicode = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasUnicode.js"(exports2, module2) { + var rsAstralRange = "\\ud800-\\udfff"; + var rsComboMarksRange = "\\u0300-\\u036f"; + var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; + var rsComboSymbolsRange = "\\u20d0-\\u20ff"; + var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; + var rsVarRange = "\\ufe0e\\ufe0f"; + var rsZWJ = "\\u200d"; + var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + "]"); + function hasUnicode(string) { + return reHasUnicode.test(string); } + module2.exports = hasUnicode; } }); -// lib/checkForUpdates.js -var require_checkForUpdates = __commonJS({ - "lib/checkForUpdates.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var cli_meta_1 = __importDefault(require_lib4()); - var client_1 = require_lib49(); - var pick_registry_for_package_1 = __importDefault(require_lib50()); - var core_loggers_1 = require_lib12(); - var load_json_file_1 = __importDefault(require_load_json_file()); - var write_json_file_1 = __importDefault(require_write_json_file()); - var UPDATE_CHECK_FREQUENCY = 24 * 60 * 60 * 1e3; - async function default_1(config) { - var _a, _b; - const stateFile = path_1.default.join(config.stateDir, "pnpm-state.json"); - let state; - try { - state = await load_json_file_1.default(stateFile); - } catch (err) { - } - if ((state === null || state === void 0 ? void 0 : state.lastUpdateCheck) && Date.now() - new Date(state.lastUpdateCheck).valueOf() < UPDATE_CHECK_FREQUENCY) - return; - const resolve = client_1.createResolver({ - ...config, - authConfig: config.rawConfig, - retry: { - retries: 0 - } - }); - const resolution = await resolve({ alias: cli_meta_1.default.name, pref: "latest" }, { - lockfileDir: (_a = config.lockfileDir) !== null && _a !== void 0 ? _a : config.dir, - preferredVersions: {}, - projectDir: config.dir, - registry: pick_registry_for_package_1.default(config.registries, cli_meta_1.default.name, "latest") - }); - if ((_b = resolution === null || resolution === void 0 ? void 0 : resolution.manifest) === null || _b === void 0 ? void 0 : _b.version) { - core_loggers_1.updateCheckLogger.debug({ - currentVersion: cli_meta_1.default.version, - latestVersion: resolution === null || resolution === void 0 ? void 0 : resolution.manifest.version - }); - } - await write_json_file_1.default(stateFile, { - ...state, - lastUpdateCheck: new Date().toUTCString() - }); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiToArray.js +var require_asciiToArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_asciiToArray.js"(exports2, module2) { + function asciiToArray(string) { + return string.split(""); } - exports2.default = default_1; + module2.exports = asciiToArray; } }); -// ../lockfile-utils/lib/nameVerFromPkgSnapshot.js -var require_nameVerFromPkgSnapshot = __commonJS({ - "../lockfile-utils/lib/nameVerFromPkgSnapshot.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var dp = __importStar2(require_lib33()); - exports2.default = (depPath, pkgSnapshot) => { - if (!pkgSnapshot.name) { - const pkgInfo = dp.parse(depPath); - return { - name: pkgInfo.name, - peersSuffix: pkgInfo.peersSuffix, - version: pkgInfo.version - }; - } - return { - name: pkgSnapshot.name, - peersSuffix: void 0, - version: pkgSnapshot.version - }; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeToArray.js +var require_unicodeToArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_unicodeToArray.js"(exports2, module2) { + var rsAstralRange = "\\ud800-\\udfff"; + var rsComboMarksRange = "\\u0300-\\u036f"; + var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; + var rsComboSymbolsRange = "\\u20d0-\\u20ff"; + var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; + var rsVarRange = "\\ufe0e\\ufe0f"; + var rsAstral = "[" + rsAstralRange + "]"; + var rsCombo = "[" + rsComboRange + "]"; + var rsFitz = "\\ud83c[\\udffb-\\udfff]"; + var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; + var rsNonAstral = "[^" + rsAstralRange + "]"; + var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; + var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; + var rsZWJ = "\\u200d"; + var reOptMod = rsModifier + "?"; + var rsOptVar = "[" + rsVarRange + "]?"; + var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; + var rsSeq = rsOptVar + reOptMod + rsOptJoin; + var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; + var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + module2.exports = unicodeToArray; } }); -// ../lockfile-utils/lib/packageIdFromSnapshot.js -var require_packageIdFromSnapshot = __commonJS({ - "../lockfile-utils/lib/packageIdFromSnapshot.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var dp = __importStar2(require_lib33()); - exports2.default = (depPath, pkgSnapshot, registries) => { - var _a; - if (pkgSnapshot.id) - return pkgSnapshot.id; - return (_a = dp.tryGetPackageId(registries, depPath)) !== null && _a !== void 0 ? _a : depPath; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToArray.js +var require_stringToArray = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToArray.js"(exports2, module2) { + var asciiToArray = require_asciiToArray(); + var hasUnicode = require_hasUnicode(); + var unicodeToArray = require_unicodeToArray(); + function stringToArray(string) { + return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); + } + module2.exports = stringToArray; } }); -// ../lockfile-utils/lib/packageIsIndependent.js -var require_packageIsIndependent = __commonJS({ - "../lockfile-utils/lib/packageIsIndependent.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.default = ({ dependencies, optionalDependencies }) => { - return dependencies === void 0 && optionalDependencies === void 0; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createCaseFirst.js +var require_createCaseFirst = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createCaseFirst.js"(exports2, module2) { + var castSlice = require_castSlice(); + var hasUnicode = require_hasUnicode(); + var stringToArray = require_stringToArray(); + var toString = require_toString(); + function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + var strSymbols = hasUnicode(string) ? stringToArray(string) : void 0; + var chr = strSymbols ? strSymbols[0] : string.charAt(0); + var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1); + return chr[methodName]() + trailing; + }; + } + module2.exports = createCaseFirst; } }); -// ../../node_modules/.pnpm/normalize-registry-url@1.0.0/node_modules/normalize-registry-url/index.js -var require_normalize_registry_url = __commonJS({ - "../../node_modules/.pnpm/normalize-registry-url@1.0.0/node_modules/normalize-registry-url/index.js"(exports2, module2) { - "use strict"; - module2.exports = function(registry) { - if (typeof registry !== "string") { - throw new TypeError("`registry` should be a string"); - } - if (registry[registry.length - 1] === "/") - return registry; - return `${registry}/`; - }; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/upperFirst.js +var require_upperFirst = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/upperFirst.js"(exports2, module2) { + var createCaseFirst = require_createCaseFirst(); + var upperFirst = createCaseFirst("toUpperCase"); + module2.exports = upperFirst; } }); -// ../../node_modules/.pnpm/get-npm-tarball-url@2.0.2/node_modules/get-npm-tarball-url/lib/index.js -var require_lib51 = __commonJS({ - "../../node_modules/.pnpm/get-npm-tarball-url@2.0.2/node_modules/get-npm-tarball-url/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var normalizeRegistry = require_normalize_registry_url(); - function default_1(pkgName, pkgVersion, opts) { - const registry = normalizeRegistry(opts && opts.registry || "https://registry.npmjs.org/"); - const scopelessName = getScopelessName(pkgName); - return `${registry}${pkgName}/-/${scopelessName}-${removeBuildMetadataFromVersion(pkgVersion)}.tgz`; - } - exports2.default = default_1; - function removeBuildMetadataFromVersion(version) { - const plusPos = version.indexOf("+"); - if (plusPos === -1) - return version; - return version.substring(0, plusPos); - } - function getScopelessName(name) { - if (name[0] !== "@") { - return name; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/capitalize.js +var require_capitalize = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/capitalize.js"(exports2, module2) { + var toString = require_toString(); + var upperFirst = require_upperFirst(); + function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); + } + module2.exports = capitalize; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/StreamReport.js +var require_StreamReport = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/StreamReport.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.StreamReport = exports2.formatNameWithHyperlink = exports2.formatName = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var slice_ansi_1 = tslib_12.__importDefault(require_slice_ansi2()); + var ci_info_1 = tslib_12.__importDefault(require_ci_info()); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var PROGRESS_FRAMES = [`\u280B`, `\u2819`, `\u2839`, `\u2838`, `\u283C`, `\u2834`, `\u2826`, `\u2827`, `\u2807`, `\u280F`]; + var PROGRESS_INTERVAL = 80; + var BASE_FORGETTABLE_NAMES = /* @__PURE__ */ new Set([MessageName_1.MessageName.FETCH_NOT_CACHED, MessageName_1.MessageName.UNUSED_CACHE_ENTRY]); + var BASE_FORGETTABLE_BUFFER_SIZE = 5; + var GROUP = ci_info_1.default.GITHUB_ACTIONS ? { start: (what) => `::group::${what} +`, end: (what) => `::endgroup:: +` } : ci_info_1.default.TRAVIS ? { start: (what) => `travis_fold:start:${what} +`, end: (what) => `travis_fold:end:${what} +` } : ci_info_1.default.GITLAB ? { start: (what) => `section_start:${Math.floor(Date.now() / 1e3)}:${what.toLowerCase().replace(/\W+/g, `_`)}[collapsed=true]\r\x1B[0K${what} +`, end: (what) => `section_end:${Math.floor(Date.now() / 1e3)}:${what.toLowerCase().replace(/\W+/g, `_`)}\r\x1B[0K` } : null; + var now = /* @__PURE__ */ new Date(); + var supportsEmojis = [`iTerm.app`, `Apple_Terminal`, `WarpTerminal`, `vscode`].includes(process.env.TERM_PROGRAM) || !!process.env.WT_SESSION; + var makeRecord = (obj) => obj; + var PROGRESS_STYLES = makeRecord({ + patrick: { + date: [17, 3], + chars: [`\u{1F340}`, `\u{1F331}`], + size: 40 + }, + simba: { + date: [19, 7], + chars: [`\u{1F981}`, `\u{1F334}`], + size: 40 + }, + jack: { + date: [31, 10], + chars: [`\u{1F383}`, `\u{1F987}`], + size: 40 + }, + hogsfather: { + date: [31, 12], + chars: [`\u{1F389}`, `\u{1F384}`], + size: 40 + }, + default: { + chars: [`=`, `-`], + size: 80 } - return name.split("/")[1]; - } - } -}); - -// ../lockfile-utils/lib/pkgSnapshotToResolution.js -var require_pkgSnapshotToResolution = __commonJS({ - "../lockfile-utils/lib/pkgSnapshotToResolution.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var url_1 = __importDefault(require("url")); - var dp = __importStar2(require_lib33()); - var get_npm_tarball_url_1 = __importDefault(require_lib51()); - var nameVerFromPkgSnapshot_1 = __importDefault(require_nameVerFromPkgSnapshot()); - exports2.default = (depPath, pkgSnapshot, registries) => { - var _a; - if (pkgSnapshot.resolution["type"] || ((_a = pkgSnapshot.resolution["tarball"]) === null || _a === void 0 ? void 0 : _a.startsWith("file:"))) { - return pkgSnapshot.resolution; - } - const { name } = nameVerFromPkgSnapshot_1.default(depPath, pkgSnapshot); - const registry = pkgSnapshot.resolution["registry"] || name[0] === "@" && registries[name.split("/")[0]] || registries.default; - let tarball; - if (!pkgSnapshot.resolution["tarball"]) { - tarball = getTarball(registry); + var defaultStyle = supportsEmojis && Object.keys(PROGRESS_STYLES).find((name) => { + const style = PROGRESS_STYLES[name]; + if (style.date && (style.date[0] !== now.getDate() || style.date[1] !== now.getMonth() + 1)) + return false; + return true; + }) || `default`; + function formatName(name, { configuration, json }) { + if (!configuration.get(`enableMessageNames`)) + return ``; + const num = name === null ? 0 : name; + const label = (0, MessageName_1.stringifyMessageName)(num); + if (!json && name === null) { + return formatUtils.pretty(configuration, label, `grey`); } else { - tarball = new url_1.default.URL(pkgSnapshot.resolution["tarball"], registry).toString(); + return label; } - return { - ...pkgSnapshot.resolution, - registry, - tarball - }; - function getTarball(registry2) { - const { name: name2, version } = dp.parse(depPath); - if (!name2 || !version) { - throw new Error(`Couldn't get tarball URL from dependency path ${depPath}`); + } + exports2.formatName = formatName; + function formatNameWithHyperlink(name, { configuration, json }) { + const code = formatName(name, { configuration, json }); + if (!code) + return code; + if (name === null || name === MessageName_1.MessageName.UNNAMED) + return code; + const desc = MessageName_1.MessageName[name]; + const href = `https://yarnpkg.com/advanced/error-codes#${code}---${desc}`.toLowerCase(); + return formatUtils.applyHyperlink(configuration, code, href); + } + exports2.formatNameWithHyperlink = formatNameWithHyperlink; + var StreamReport = class extends Report_1.Report { + static async start(opts, cb) { + const report = new this(opts); + const emitWarning = process.emitWarning; + process.emitWarning = (message2, name) => { + if (typeof message2 !== `string`) { + const error = message2; + message2 = error.message; + name = name !== null && name !== void 0 ? name : error.name; + } + const fullMessage = typeof name !== `undefined` ? `${name}: ${message2}` : message2; + report.reportWarning(MessageName_1.MessageName.UNNAMED, fullMessage); + }; + try { + await cb(report); + } catch (error) { + report.reportExceptionOnce(error); + } finally { + await report.finalize(); + process.emitWarning = emitWarning; } - return get_npm_tarball_url_1.default(name2, version, { registry: registry2 }); - } - }; - } -}); - -// ../lockfile-utils/lib/satisfiesPackageManifest.js -var require_satisfiesPackageManifest = __commonJS({ - "../lockfile-utils/lib/satisfiesPackageManifest.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var types_1 = require_lib14(); - var equals_1 = __importDefault(require_equals2()); - exports2.default = (lockfile, pkg, importerId) => { - var _a, _b; - const importer = lockfile.importers[importerId]; - if (!importer) - return false; - if (!equals_1.default({ ...pkg.devDependencies, ...pkg.dependencies, ...pkg.optionalDependencies }, importer.specifiers)) { - return false; + return report; } - for (const depField of types_1.DEPENDENCIES_FIELDS) { - const importerDeps = (_a = importer[depField]) !== null && _a !== void 0 ? _a : {}; - const pkgDeps = (_b = pkg[depField]) !== null && _b !== void 0 ? _b : {}; - let pkgDepNames; - switch (depField) { - case "optionalDependencies": - pkgDepNames = Object.keys(pkgDeps); - break; - case "devDependencies": - pkgDepNames = Object.keys(pkgDeps).filter((depName) => (pkg.optionalDependencies == null || !pkg.optionalDependencies[depName]) && (pkg.dependencies == null || !pkg.dependencies[depName])); - break; - case "dependencies": - pkgDepNames = Object.keys(pkgDeps).filter((depName) => pkg.optionalDependencies == null || !pkg.optionalDependencies[depName]); - break; - default: - throw new Error(`Unknown dependency type "${depField}"`); - } - if (pkgDepNames.length !== Object.keys(importerDeps).length && pkgDepNames.length !== countOfNonLinkedDeps(importerDeps)) { - return false; + constructor({ configuration, stdout, json = false, includeNames = true, includePrefix = true, includeFooter = true, includeLogs = !json, includeInfos = includeLogs, includeWarnings = includeLogs, forgettableBufferSize = BASE_FORGETTABLE_BUFFER_SIZE, forgettableNames = /* @__PURE__ */ new Set() }) { + super(); + this.uncommitted = /* @__PURE__ */ new Set(); + this.cacheHitCount = 0; + this.cacheMissCount = 0; + this.lastCacheMiss = null; + this.warningCount = 0; + this.errors = []; + this.startTime = Date.now(); + this.indent = 0; + this.progress = /* @__PURE__ */ new Map(); + this.progressTime = 0; + this.progressFrame = 0; + this.progressTimeout = null; + this.progressStyle = null; + this.progressMaxScaledSize = null; + this.forgettableLines = []; + formatUtils.addLogFilterSupport(this, { configuration }); + this.configuration = configuration; + this.forgettableBufferSize = forgettableBufferSize; + this.forgettableNames = /* @__PURE__ */ new Set([...forgettableNames, ...BASE_FORGETTABLE_NAMES]); + this.includeNames = includeNames; + this.includePrefix = includePrefix; + this.includeFooter = includeFooter; + this.includeInfos = includeInfos; + this.includeWarnings = includeWarnings; + this.json = json; + this.stdout = stdout; + if (configuration.get(`enableProgressBars`) && !json && stdout.isTTY && stdout.columns > 22) { + const styleName = configuration.get(`progressBarStyle`) || defaultStyle; + if (!Object.prototype.hasOwnProperty.call(PROGRESS_STYLES, styleName)) + throw new Error(`Assertion failed: Invalid progress bar style`); + this.progressStyle = PROGRESS_STYLES[styleName]; + const PAD_LEFT = `\u27A4 YN0000: \u250C `.length; + const maxWidth = Math.max(0, Math.min(stdout.columns - PAD_LEFT, 80)); + this.progressMaxScaledSize = Math.floor(this.progressStyle.size * maxWidth / 80); + } + } + hasErrors() { + return this.errors.length > 0; + } + exitCode() { + return this.hasErrors() ? 1 : 0; + } + reportCacheHit(locator) { + this.cacheHitCount += 1; + } + reportCacheMiss(locator, message2) { + this.lastCacheMiss = locator; + this.cacheMissCount += 1; + if (typeof message2 !== `undefined` && !this.configuration.get(`preferAggregateCacheInfo`)) { + this.reportInfo(MessageName_1.MessageName.FETCH_NOT_CACHED, message2); + } + } + startSectionSync({ reportHeader, reportFooter, skipIfEmpty }, cb) { + const mark = { committed: false, action: () => { + reportHeader === null || reportHeader === void 0 ? void 0 : reportHeader(); + } }; + if (skipIfEmpty) { + this.uncommitted.add(mark); + } else { + mark.action(); + mark.committed = true; } - for (const depName of pkgDepNames) { - if (!importerDeps[depName] || importer.specifiers[depName] !== pkgDeps[depName]) - return false; + const before = Date.now(); + try { + return cb(); + } catch (error) { + this.reportExceptionOnce(error); + throw error; + } finally { + const after = Date.now(); + this.uncommitted.delete(mark); + if (mark.committed) { + reportFooter === null || reportFooter === void 0 ? void 0 : reportFooter(after - before); + } } } - return true; - }; - function countOfNonLinkedDeps(lockfileDeps) { - return Object.values(lockfileDeps).filter((ref) => !ref.includes("link:") && !ref.includes("file:")).length; - } - } -}); - -// ../lockfile-types/lib/index.js -var require_lib52 = __commonJS({ - "../lockfile-types/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// ../lockfile-utils/lib/index.js -var require_lib53 = __commonJS({ - "../lockfile-utils/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getPkgShortId = exports2.satisfiesPackageManifest = exports2.pkgSnapshotToResolution = exports2.packageIsIndependent = exports2.packageIdFromSnapshot = exports2.nameVerFromPkgSnapshot = void 0; - var dependency_path_1 = require_lib33(); - var nameVerFromPkgSnapshot_1 = __importDefault(require_nameVerFromPkgSnapshot()); - exports2.nameVerFromPkgSnapshot = nameVerFromPkgSnapshot_1.default; - var packageIdFromSnapshot_1 = __importDefault(require_packageIdFromSnapshot()); - exports2.packageIdFromSnapshot = packageIdFromSnapshot_1.default; - var packageIsIndependent_1 = __importDefault(require_packageIsIndependent()); - exports2.packageIsIndependent = packageIsIndependent_1.default; - var pkgSnapshotToResolution_1 = __importDefault(require_pkgSnapshotToResolution()); - exports2.pkgSnapshotToResolution = pkgSnapshotToResolution_1.default; - var satisfiesPackageManifest_1 = __importDefault(require_satisfiesPackageManifest()); - exports2.satisfiesPackageManifest = satisfiesPackageManifest_1.default; - __exportStar(require_lib52(), exports2); - exports2.getPkgShortId = dependency_path_1.refToRelative; - } -}); - -// ../lockfile-walker/lib/index.js -var require_lib54 = __commonJS({ - "../lockfile-walker/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.lockfileWalkerGroupImporterSteps = void 0; - var dp = __importStar2(require_lib33()); - function lockfileWalkerGroupImporterSteps(lockfile, importerIds, opts) { - const walked = new Set((opts === null || opts === void 0 ? void 0 : opts.skipped) != null ? Array.from(opts === null || opts === void 0 ? void 0 : opts.skipped) : []); - return importerIds.map((importerId) => { - var _a, _b, _c, _d; - const projectSnapshot = lockfile.importers[importerId]; - const entryNodes = Object.entries({ - ...((_a = opts === null || opts === void 0 ? void 0 : opts.include) === null || _a === void 0 ? void 0 : _a.devDependencies) === false ? {} : projectSnapshot.devDependencies, - ...((_b = opts === null || opts === void 0 ? void 0 : opts.include) === null || _b === void 0 ? void 0 : _b.dependencies) === false ? {} : projectSnapshot.dependencies, - ...((_c = opts === null || opts === void 0 ? void 0 : opts.include) === null || _c === void 0 ? void 0 : _c.optionalDependencies) === false ? {} : projectSnapshot.optionalDependencies - }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null); - return { - importerId, - step: step({ - includeOptionalDependencies: ((_d = opts === null || opts === void 0 ? void 0 : opts.include) === null || _d === void 0 ? void 0 : _d.optionalDependencies) !== false, - lockfile, - walked - }, entryNodes) - }; - }); - } - exports2.lockfileWalkerGroupImporterSteps = lockfileWalkerGroupImporterSteps; - function lockfileWalker(lockfile, importerIds, opts) { - var _a; - const walked = new Set((opts === null || opts === void 0 ? void 0 : opts.skipped) != null ? Array.from(opts === null || opts === void 0 ? void 0 : opts.skipped) : []); - const entryNodes = []; - const directDeps = []; - importerIds.forEach((importerId) => { - var _a2, _b, _c; - const projectSnapshot = lockfile.importers[importerId]; - Object.entries({ - ...((_a2 = opts === null || opts === void 0 ? void 0 : opts.include) === null || _a2 === void 0 ? void 0 : _a2.devDependencies) === false ? {} : projectSnapshot.devDependencies, - ...((_b = opts === null || opts === void 0 ? void 0 : opts.include) === null || _b === void 0 ? void 0 : _b.dependencies) === false ? {} : projectSnapshot.dependencies, - ...((_c = opts === null || opts === void 0 ? void 0 : opts.include) === null || _c === void 0 ? void 0 : _c.optionalDependencies) === false ? {} : projectSnapshot.optionalDependencies - }).forEach(([pkgName, reference]) => { - const depPath = dp.refToRelative(reference, pkgName); - if (depPath === null) - return; - entryNodes.push(depPath); - directDeps.push({ alias: pkgName, depPath }); - }); - }); - return { - directDeps, - step: step({ - includeOptionalDependencies: ((_a = opts === null || opts === void 0 ? void 0 : opts.include) === null || _a === void 0 ? void 0 : _a.optionalDependencies) !== false, - lockfile, - walked - }, entryNodes) - }; - } - exports2.default = lockfileWalker; - function step(ctx, nextDepPaths) { - var _a; - const result = { - dependencies: [], - links: [], - missing: [] - }; - for (const depPath of nextDepPaths) { - if (ctx.walked.has(depPath)) - continue; - ctx.walked.add(depPath); - const pkgSnapshot = (_a = ctx.lockfile.packages) === null || _a === void 0 ? void 0 : _a[depPath]; - if (pkgSnapshot == null) { - if (depPath.startsWith("link:")) { - result.links.push(depPath); - continue; + async startSectionPromise({ reportHeader, reportFooter, skipIfEmpty }, cb) { + const mark = { committed: false, action: () => { + reportHeader === null || reportHeader === void 0 ? void 0 : reportHeader(); + } }; + if (skipIfEmpty) { + this.uncommitted.add(mark); + } else { + mark.action(); + mark.committed = true; + } + const before = Date.now(); + try { + return await cb(); + } catch (error) { + this.reportExceptionOnce(error); + throw error; + } finally { + const after = Date.now(); + this.uncommitted.delete(mark); + if (mark.committed) { + reportFooter === null || reportFooter === void 0 ? void 0 : reportFooter(after - before); } - result.missing.push(depPath); - continue; } - result.dependencies.push({ - depPath, - next: () => step(ctx, next({ includeOptionalDependencies: ctx.includeOptionalDependencies }, pkgSnapshot)), - pkgSnapshot - }); } - return result; - } - function next(opts, nextPkg) { - return Object.entries({ - ...nextPkg.dependencies, - ...opts.includeOptionalDependencies ? nextPkg.optionalDependencies : {} - }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null); - } - } -}); - -// ../audit/lib/lockfileToAuditTree.js -var require_lockfileToAuditTree = __commonJS({ - "../audit/lib/lockfileToAuditTree.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var lockfile_utils_1 = require_lib53(); - var lockfile_walker_1 = require_lib54(); - function lockfileToAuditTree(lockfile, opts) { - const importerWalkers = lockfile_walker_1.lockfileWalkerGroupImporterSteps(lockfile, Object.keys(lockfile.importers), { include: opts === null || opts === void 0 ? void 0 : opts.include }); - const dependencies = {}; - importerWalkers.forEach((importerWalker) => { - const importerDeps = lockfileToAuditNode(importerWalker.step); - const depName = importerWalker.importerId.replace(/\//g, "__"); - dependencies[depName] = { - dependencies: importerDeps, - requires: toRequires(importerDeps), - version: "0.0.0" - }; - }); - const auditTree = { - name: void 0, - version: void 0, - dependencies, - dev: false, - install: [], - integrity: void 0, - metadata: {}, - remove: [], - requires: toRequires(dependencies) - }; - return auditTree; - } - exports2.default = lockfileToAuditTree; - function lockfileToAuditNode(step) { - const dependencies = {}; - for (const { depPath, pkgSnapshot, next } of step.dependencies) { - const { name, version } = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - const subdeps = lockfileToAuditNode(next()); - const dep = { - dev: pkgSnapshot.dev === true, - integrity: pkgSnapshot.resolution["integrity"], - version + startTimerImpl(what, opts, cb) { + const realOpts = typeof opts === `function` ? {} : opts; + const realCb = typeof opts === `function` ? opts : cb; + return { + cb: realCb, + reportHeader: () => { + this.reportInfo(null, `\u250C ${what}`); + this.indent += 1; + if (GROUP !== null && !this.json && this.includeInfos) { + this.stdout.write(GROUP.start(what)); + } + }, + reportFooter: (elapsedTime) => { + this.indent -= 1; + if (GROUP !== null && !this.json && this.includeInfos) { + this.stdout.write(GROUP.end(what)); + for (const [name, text] of this.errors) { + this.reportErrorImpl(name, text); + } + } + if (this.configuration.get(`enableTimers`) && elapsedTime > 200) { + this.reportInfo(null, `\u2514 Completed in ${formatUtils.pretty(this.configuration, elapsedTime, formatUtils.Type.DURATION)}`); + } else { + this.reportInfo(null, `\u2514 Completed`); + } + }, + skipIfEmpty: realOpts.skipIfEmpty }; - if (Object.keys(subdeps).length > 0) { - dep.dependencies = subdeps; - dep.requires = toRequires(subdeps); - } - dependencies[name] = dep; } - return dependencies; - } - function toRequires(auditNodesByDepName) { - const requires = {}; - for (const subdepName of Object.keys(auditNodesByDepName)) { - requires[subdepName] = auditNodesByDepName[subdepName].version; + startTimerSync(what, opts, cb) { + const { cb: realCb, ...sectionOps } = this.startTimerImpl(what, opts, cb); + return this.startSectionSync(sectionOps, realCb); } - return requires; - } - } -}); - -// ../audit/lib/types.js -var require_types4 = __commonJS({ - "../audit/lib/types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } -}); - -// ../audit/lib/index.js -var require_lib55 = __commonJS({ - "../audit/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var fetch_1 = __importDefault(require_lib29()); - var lockfileToAuditTree_1 = __importDefault(require_lockfileToAuditTree()); - __exportStar(require_types4(), exports2); - async function audit(lockfile, opts) { - const auditTree = lockfileToAuditTree_1.default(lockfile, { include: opts.include }); - const registry = opts.registry.endsWith("/") ? opts.registry : `${opts.registry}/`; - const auditUrl = `${registry}-/npm/v1/security/audits`; - const res = await fetch_1.default(auditUrl, { - body: JSON.stringify(auditTree), - headers: { "Content-Type": "application/json" }, - method: "post", - retry: opts.retry, - timeout: opts.timeout - }); - if (res.status !== 200) { - throw new error_1.default("AUDIT_BAD_RESPONSE", `The audit endpoint (at ${auditUrl}) responded with ${res.status}: ${await res.text()}`); + async startTimerPromise(what, opts, cb) { + const { cb: realCb, ...sectionOps } = this.startTimerImpl(what, opts, cb); + return this.startSectionPromise(sectionOps, realCb); } - return res.json(); - } - exports2.default = audit; - } -}); - -// ../lockfile-file/lib/existsWantedLockfile.js -var require_existsWantedLockfile = __commonJS({ - "../lockfile-file/lib/existsWantedLockfile.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = __importDefault(require("fs")); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - exports2.default = async (pkgPath) => new Promise((resolve, reject) => { - fs_1.default.access(path_1.default.join(pkgPath, constants_1.WANTED_LOCKFILE), (err) => { - if (err == null) { - resolve(true); - return; - } - if (err.code === "ENOENT") { - resolve(false); - return; - } - reject(err); - }); - }); - } -}); - -// ../lockfile-file/lib/getLockfileImporterId.js -var require_getLockfileImporterId = __commonJS({ - "../lockfile-file/lib/getLockfileImporterId.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var normalize_path_1 = __importDefault(require_normalize_path()); - exports2.default = (lockfileDir, prefix) => normalize_path_1.default(path_1.default.relative(lockfileDir, prefix)) || "."; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/empty.js -var require_empty2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/empty.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _isArguments = require_isArguments(); - var _isArray = require_isArray(); - var _isObject = require_isObject(); - var _isString = require_isString(); - var empty = /* @__PURE__ */ _curry1(function empty2(x) { - return x != null && typeof x["fantasy-land/empty"] === "function" ? x["fantasy-land/empty"]() : x != null && x.constructor != null && typeof x.constructor["fantasy-land/empty"] === "function" ? x.constructor["fantasy-land/empty"]() : x != null && typeof x.empty === "function" ? x.empty() : x != null && x.constructor != null && typeof x.constructor.empty === "function" ? x.constructor.empty() : _isArray(x) ? [] : _isString(x) ? "" : _isObject(x) ? {} : _isArguments(x) ? function() { - return arguments; - }() : void 0; - }); - module2.exports = empty; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/isEmpty.js -var require_isEmpty2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/isEmpty.js"(exports2, module2) { - var _curry1 = require_curry1(); - var empty = require_empty2(); - var equals = require_equals2(); - var isEmpty = /* @__PURE__ */ _curry1(function isEmpty2(x) { - return x != null && equals(x, empty(x)); - }); - module2.exports = isEmpty; - } -}); - -// ../lockfile-file/lib/logger.js -var require_logger2 = __commonJS({ - "../lockfile-file/lib/logger.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var logger_1 = __importDefault(require_lib6()); - exports2.default = logger_1.default("lockfile"); - } -}); - -// ../lockfile-file/lib/sortLockfileKeys.js -var require_sortLockfileKeys = __commonJS({ - "../lockfile-file/lib/sortLockfileKeys.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sortLockfileKeys = void 0; - var sort_keys_1 = __importDefault(require_sort_keys()); - var ORDERED_KEYS = { - resolution: 1, - id: 2, - name: 3, - version: 4, - engines: 5, - cpu: 6, - os: 7, - deprecated: 8, - hasBin: 9, - prepare: 10, - requiresBuild: 11, - bundleDependencies: 12, - peerDependencies: 13, - peerDependenciesMeta: 14, - dependencies: 15, - optionalDependencies: 16, - transitivePeerDependencies: 17, - dev: 18, - optional: 19 - }; - var ROOT_KEYS_ORDER = { - lockfileVersion: 1, - neverBuiltDependencies: 2, - overrides: 3, - packageExtensionsChecksum: 4, - specifiers: 10, - dependencies: 11, - optionalDependencies: 12, - devDependencies: 13, - importers: 14, - packages: 15 - }; - function compareWithPriority(priority, left, right) { - const leftPriority = priority[left]; - const rightPriority = priority[right]; - if (leftPriority && rightPriority) - return leftPriority - rightPriority; - if (leftPriority) - return -1; - if (rightPriority) - return 1; - return left.localeCompare(right); - } - function sortLockfileKeys(lockfile) { - const compareRootKeys = compareWithPriority.bind(null, ROOT_KEYS_ORDER); - if (lockfile.importers != null) { - lockfile.importers = sort_keys_1.default(lockfile.importers); - for (const importerId of Object.keys(lockfile.importers)) { - lockfile.importers[importerId] = sort_keys_1.default(lockfile.importers[importerId], { - compare: compareRootKeys, - deep: true - }); + async startCacheReport(cb) { + const cacheInfo = this.configuration.get(`preferAggregateCacheInfo`) ? { cacheHitCount: this.cacheHitCount, cacheMissCount: this.cacheMissCount } : null; + try { + return await cb(); + } catch (error) { + this.reportExceptionOnce(error); + throw error; + } finally { + if (cacheInfo !== null) { + this.reportCacheChanges(cacheInfo); + } } } - if (lockfile.packages != null) { - lockfile.packages = sort_keys_1.default(lockfile.packages); - for (const pkgId of Object.keys(lockfile.packages)) { - lockfile.packages[pkgId] = sort_keys_1.default(lockfile.packages[pkgId], { - compare: compareWithPriority.bind(null, ORDERED_KEYS), - deep: true - }); + reportSeparator() { + if (this.indent === 0) { + this.writeLineWithForgettableReset(``); + } else { + this.reportInfo(null, ``); } } - for (const key of ["specifiers", "dependencies", "devDependencies", "optionalDependencies"]) { - if (!lockfile[key]) - continue; - lockfile[key] = sort_keys_1.default(lockfile[key]); + reportInfo(name, text) { + if (!this.includeInfos) + return; + this.commit(); + const formattedName = this.formatNameWithHyperlink(name); + const prefix = formattedName ? `${formattedName}: ` : ``; + const message2 = `${this.formatPrefix(prefix, `blueBright`)}${text}`; + if (!this.json) { + if (this.forgettableNames.has(name)) { + this.forgettableLines.push(message2); + if (this.forgettableLines.length > this.forgettableBufferSize) { + while (this.forgettableLines.length > this.forgettableBufferSize) + this.forgettableLines.shift(); + this.writeLines(this.forgettableLines, { truncate: true }); + } else { + this.writeLine(message2, { truncate: true }); + } + } else { + this.writeLineWithForgettableReset(message2); + } + } else { + this.reportJson({ type: `info`, name, displayName: this.formatName(name), indent: this.formatIndent(), data: text }); + } } - return sort_keys_1.default(lockfile, { compare: compareRootKeys }); - } - exports2.sortLockfileKeys = sortLockfileKeys; - } -}); - -// ../lockfile-file/lib/write.js -var require_write = __commonJS({ - "../lockfile-file/lib/write.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.normalizeLockfile = exports2.writeCurrentLockfile = exports2.writeWantedLockfile = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var types_1 = require_lib14(); - var constants_1 = require_lib7(); - var rimraf_1 = __importDefault(require_rimraf()); - var js_yaml_1 = __importDefault(require_js_yaml()); - var equals_1 = __importDefault(require_equals2()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var write_file_atomic_1 = __importDefault(require_write_file_atomic()); - var logger_1 = __importDefault(require_logger2()); - var sortLockfileKeys_1 = require_sortLockfileKeys(); - async function writeFileAtomic(filename, data) { - return new Promise((resolve, reject) => write_file_atomic_1.default(filename, data, {}, (err) => err != null ? reject(err) : resolve())); - } - var LOCKFILE_YAML_FORMAT = { - blankLines: true, - lineWidth: 1e3, - noCompatMode: true, - noRefs: true, - sortKeys: false - }; - async function writeWantedLockfile(pkgPath, wantedLockfile, opts) { - return writeLockfile(constants_1.WANTED_LOCKFILE, pkgPath, wantedLockfile, opts); - } - exports2.writeWantedLockfile = writeWantedLockfile; - async function writeCurrentLockfile(virtualStoreDir, currentLockfile, opts) { - await fs_1.promises.mkdir(virtualStoreDir, { recursive: true }); - return writeLockfile("lock.yaml", virtualStoreDir, currentLockfile, opts); - } - exports2.writeCurrentLockfile = writeCurrentLockfile; - async function writeLockfile(lockfileFilename, pkgPath, wantedLockfile, opts) { - const lockfilePath = path_1.default.join(pkgPath, lockfileFilename); - if (isEmptyLockfile(wantedLockfile)) { - return rimraf_1.default(lockfilePath); + reportWarning(name, text) { + this.warningCount += 1; + if (!this.includeWarnings) + return; + this.commit(); + const formattedName = this.formatNameWithHyperlink(name); + const prefix = formattedName ? `${formattedName}: ` : ``; + if (!this.json) { + this.writeLineWithForgettableReset(`${this.formatPrefix(prefix, `yellowBright`)}${text}`); + } else { + this.reportJson({ type: `warning`, name, displayName: this.formatName(name), indent: this.formatIndent(), data: text }); + } } - const yamlDoc = yamlStringify(wantedLockfile, (opts === null || opts === void 0 ? void 0 : opts.forceSharedFormat) === true); - return writeFileAtomic(lockfilePath, yamlDoc); - } - function yamlStringify(lockfile, forceSharedFormat) { - let normalizedLockfile = normalizeLockfile(lockfile, forceSharedFormat); - normalizedLockfile = sortLockfileKeys_1.sortLockfileKeys(normalizedLockfile); - return js_yaml_1.default.dump(normalizedLockfile, LOCKFILE_YAML_FORMAT); - } - function isEmptyLockfile(lockfile) { - return Object.values(lockfile.importers).every((importer) => { - var _a, _b; - return isEmpty_1.default((_a = importer.specifiers) !== null && _a !== void 0 ? _a : {}) && isEmpty_1.default((_b = importer.dependencies) !== null && _b !== void 0 ? _b : {}); - }); - } - function normalizeLockfile(lockfile, forceSharedFormat) { - let lockfileToSave; - if (!forceSharedFormat && equals_1.default(Object.keys(lockfile.importers), ["."])) { - lockfileToSave = { - ...lockfile, - ...lockfile.importers["."] + reportError(name, text) { + this.errors.push([name, text]); + this.reportErrorImpl(name, text); + } + reportErrorImpl(name, text) { + this.commit(); + const formattedName = this.formatNameWithHyperlink(name); + const prefix = formattedName ? `${formattedName}: ` : ``; + if (!this.json) { + this.writeLineWithForgettableReset(`${this.formatPrefix(prefix, `redBright`)}${text}`, { truncate: false }); + } else { + this.reportJson({ type: `error`, name, displayName: this.formatName(name), indent: this.formatIndent(), data: text }); + } + } + reportProgress(progressIt) { + if (this.progressStyle === null) + return { ...Promise.resolve(), stop: () => { + } }; + if (progressIt.hasProgress && progressIt.hasTitle) + throw new Error(`Unimplemented: Progress bars can't have both progress and titles.`); + let stopped = false; + const promise = Promise.resolve().then(async () => { + const progressDefinition = { + progress: progressIt.hasProgress ? 0 : void 0, + title: progressIt.hasTitle ? `` : void 0 + }; + this.progress.set(progressIt, { + definition: progressDefinition, + lastScaledSize: progressIt.hasProgress ? -1 : void 0, + lastTitle: void 0 + }); + this.refreshProgress({ delta: -1 }); + for await (const { progress, title } of progressIt) { + if (stopped) + continue; + if (progressDefinition.progress === progress && progressDefinition.title === title) + continue; + progressDefinition.progress = progress; + progressDefinition.title = title; + this.refreshProgress(); + } + stop(); + }); + const stop = () => { + if (stopped) + return; + stopped = true; + this.progress.delete(progressIt); + this.refreshProgress({ delta: 1 }); }; - delete lockfileToSave.importers; - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (isEmpty_1.default(lockfileToSave[depType])) { - delete lockfileToSave[depType]; + return { ...promise, stop }; + } + reportJson(data) { + if (this.json) { + this.writeLineWithForgettableReset(`${JSON.stringify(data)}`); + } + } + async finalize() { + if (!this.includeFooter) + return; + let installStatus = ``; + if (this.errors.length > 0) + installStatus = `Failed with errors`; + else if (this.warningCount > 0) + installStatus = `Done with warnings`; + else + installStatus = `Done`; + const timing = formatUtils.pretty(this.configuration, Date.now() - this.startTime, formatUtils.Type.DURATION); + const message2 = this.configuration.get(`enableTimers`) ? `${installStatus} in ${timing}` : installStatus; + if (this.errors.length > 0) { + this.reportError(MessageName_1.MessageName.UNNAMED, message2); + } else if (this.warningCount > 0) { + this.reportWarning(MessageName_1.MessageName.UNNAMED, message2); + } else { + this.reportInfo(MessageName_1.MessageName.UNNAMED, message2); + } + } + writeLine(str, { truncate } = {}) { + this.clearProgress({ clear: true }); + this.stdout.write(`${this.truncate(str, { truncate })} +`); + this.writeProgress(); + } + writeLineWithForgettableReset(str, { truncate } = {}) { + this.forgettableLines = []; + this.writeLine(str, { truncate }); + } + writeLines(lines, { truncate } = {}) { + this.clearProgress({ delta: lines.length }); + for (const line of lines) + this.stdout.write(`${this.truncate(line, { truncate })} +`); + this.writeProgress(); + } + reportCacheChanges({ cacheHitCount, cacheMissCount }) { + const cacheHitDelta = this.cacheHitCount - cacheHitCount; + const cacheMissDelta = this.cacheMissCount - cacheMissCount; + if (cacheHitDelta === 0 && cacheMissDelta === 0) + return; + let fetchStatus = ``; + if (this.cacheHitCount > 1) + fetchStatus += `${this.cacheHitCount} packages were already cached`; + else if (this.cacheHitCount === 1) + fetchStatus += ` - one package was already cached`; + else + fetchStatus += `No packages were cached`; + if (this.cacheHitCount > 0) { + if (this.cacheMissCount > 1) { + fetchStatus += `, ${this.cacheMissCount} had to be fetched`; + } else if (this.cacheMissCount === 1) { + fetchStatus += `, one had to be fetched (${structUtils.prettyLocator(this.configuration, this.lastCacheMiss)})`; + } + } else { + if (this.cacheMissCount > 1) { + fetchStatus += ` - ${this.cacheMissCount} packages had to be fetched`; + } else if (this.cacheMissCount === 1) { + fetchStatus += ` - one package had to be fetched (${structUtils.prettyLocator(this.configuration, this.lastCacheMiss)})`; } } - if (isEmpty_1.default(lockfileToSave.packages) || lockfileToSave.packages == null) { - delete lockfileToSave.packages; + this.reportInfo(MessageName_1.MessageName.FETCH_NOT_CACHED, fetchStatus); + } + commit() { + const marks = this.uncommitted; + this.uncommitted = /* @__PURE__ */ new Set(); + for (const mark of marks) { + mark.committed = true; + mark.action(); } - } else { - lockfileToSave = { - ...lockfile, - importers: Object.keys(lockfile.importers).reduce((acc, alias) => { - var _a, _b; - const importer = lockfile.importers[alias]; - const normalizedImporter = { - specifiers: (_a = importer.specifiers) !== null && _a !== void 0 ? _a : {} - }; - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (!isEmpty_1.default((_b = importer[depType]) !== null && _b !== void 0 ? _b : {})) { - normalizedImporter[depType] = importer[depType]; - } - } - acc[alias] = normalizedImporter; - return acc; - }, {}) - }; - if (isEmpty_1.default(lockfileToSave.packages) || lockfileToSave.packages == null) { - delete lockfileToSave.packages; + } + clearProgress({ delta = 0, clear = false }) { + if (this.progressStyle === null) + return; + if (this.progress.size + delta > 0) { + this.stdout.write(`\x1B[${this.progress.size + delta}A`); + if (delta > 0 || clear) { + this.stdout.write(`\x1B[0J`); + } } } - if (lockfileToSave.overrides != null && isEmpty_1.default(lockfileToSave.overrides)) { - delete lockfileToSave.overrides; + writeProgress() { + if (this.progressStyle === null) + return; + if (this.progressTimeout !== null) + clearTimeout(this.progressTimeout); + this.progressTimeout = null; + if (this.progress.size === 0) + return; + const now2 = Date.now(); + if (now2 - this.progressTime > PROGRESS_INTERVAL) { + this.progressFrame = (this.progressFrame + 1) % PROGRESS_FRAMES.length; + this.progressTime = now2; + } + const spinner = PROGRESS_FRAMES[this.progressFrame]; + for (const progress of this.progress.values()) { + let progressBar = ``; + if (typeof progress.lastScaledSize !== `undefined`) { + const ok = this.progressStyle.chars[0].repeat(progress.lastScaledSize); + const ko = this.progressStyle.chars[1].repeat(this.progressMaxScaledSize - progress.lastScaledSize); + progressBar = ` ${ok}${ko}`; + } + const formattedName = this.formatName(null); + const prefix = formattedName ? `${formattedName}: ` : ``; + const title = progress.definition.title ? ` ${progress.definition.title}` : ``; + this.stdout.write(`${formatUtils.pretty(this.configuration, `\u27A4`, `blueBright`)} ${prefix}${spinner}${progressBar}${title} +`); + } + this.progressTimeout = setTimeout(() => { + this.refreshProgress({ force: true }); + }, PROGRESS_INTERVAL); } - if (lockfileToSave.neverBuiltDependencies != null) { - if (isEmpty_1.default(lockfileToSave.neverBuiltDependencies)) { - delete lockfileToSave.neverBuiltDependencies; + refreshProgress({ delta = 0, force = false } = {}) { + let needsUpdate = false; + let needsClear = false; + if (force || this.progress.size === 0) { + needsUpdate = true; } else { - lockfileToSave.neverBuiltDependencies = lockfileToSave.neverBuiltDependencies.sort(); + for (const progress of this.progress.values()) { + const refreshedScaledSize = typeof progress.definition.progress !== `undefined` ? Math.trunc(this.progressMaxScaledSize * progress.definition.progress) : void 0; + const previousScaledSize = progress.lastScaledSize; + progress.lastScaledSize = refreshedScaledSize; + const previousTitle = progress.lastTitle; + progress.lastTitle = progress.definition.title; + if (refreshedScaledSize !== previousScaledSize || (needsClear = previousTitle !== progress.definition.title)) { + needsUpdate = true; + break; + } + } + } + if (needsUpdate) { + this.clearProgress({ delta, clear: needsClear }); + this.writeProgress(); } } - if (!lockfileToSave.packageExtensionsChecksum) { - delete lockfileToSave.packageExtensionsChecksum; + truncate(str, { truncate } = {}) { + if (this.progressStyle === null) + truncate = false; + if (typeof truncate === `undefined`) + truncate = this.configuration.get(`preferTruncatedLines`); + if (truncate) + str = (0, slice_ansi_1.default)(str, 0, this.stdout.columns - 1); + return str; } - return lockfileToSave; - } - exports2.normalizeLockfile = normalizeLockfile; - async function writeLockfiles(opts) { - const wantedLockfilePath = path_1.default.join(opts.wantedLockfileDir, constants_1.WANTED_LOCKFILE); - const currentLockfilePath = path_1.default.join(opts.currentLockfileDir, "lock.yaml"); - if (isEmptyLockfile(opts.wantedLockfile)) { - await Promise.all([ - rimraf_1.default(wantedLockfilePath), - rimraf_1.default(currentLockfilePath) - ]); - return; + formatName(name) { + if (!this.includeNames) + return ``; + return formatName(name, { + configuration: this.configuration, + json: this.json + }); } - const forceSharedFormat = (opts === null || opts === void 0 ? void 0 : opts.forceSharedFormat) === true; - const yamlDoc = yamlStringify(opts.wantedLockfile, forceSharedFormat); - if (opts.wantedLockfile === opts.currentLockfile) { - await Promise.all([ - writeFileAtomic(wantedLockfilePath, yamlDoc), - (async () => { - await fs_1.promises.mkdir(path_1.default.dirname(currentLockfilePath), { recursive: true }); - await writeFileAtomic(currentLockfilePath, yamlDoc); - })() - ]); - return; + formatPrefix(prefix, caretColor) { + return this.includePrefix ? `${formatUtils.pretty(this.configuration, `\u27A4`, caretColor)} ${prefix}${this.formatIndent()}` : ``; } - logger_1.default.debug({ - message: `\`${constants_1.WANTED_LOCKFILE}\` differs from \`${path_1.default.relative(opts.wantedLockfileDir, currentLockfilePath)}\``, - prefix: opts.wantedLockfileDir - }); - const currentYamlDoc = yamlStringify(opts.currentLockfile, forceSharedFormat); - await Promise.all([ - writeFileAtomic(wantedLockfilePath, yamlDoc), - (async () => { - await fs_1.promises.mkdir(path_1.default.dirname(currentLockfilePath), { recursive: true }); - await writeFileAtomic(currentLockfilePath, currentYamlDoc); - })() - ]); - } - exports2.default = writeLockfiles; - } -}); - -// ../../node_modules/.pnpm/comver-to-semver@1.0.0/node_modules/comver-to-semver/index.js -var require_comver_to_semver = __commonJS({ - "../../node_modules/.pnpm/comver-to-semver@1.0.0/node_modules/comver-to-semver/index.js"(exports2, module2) { - "use strict"; - module2.exports = function comverToSemver(comver) { - if (!comver.includes(".")) - return `${comver}.0.0`; - return `${comver}.0`; - }; - } -}); - -// ../lockfile-file/lib/errors/LockfileBreakingChangeError.js -var require_LockfileBreakingChangeError = __commonJS({ - "../lockfile-file/lib/errors/LockfileBreakingChangeError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var LockfileBreakingChangeError = class extends error_1.default { - constructor(filename) { - super("LOCKFILE_BREAKING_CHANGE", `Lockfile ${filename} not compatible with current pnpm`); - this.filename = filename; + formatNameWithHyperlink(name) { + if (!this.includeNames) + return ``; + return formatNameWithHyperlink(name, { + configuration: this.configuration, + json: this.json + }); + } + formatIndent() { + return `\u2502 `.repeat(this.indent); } }; - exports2.default = LockfileBreakingChangeError; + exports2.StreamReport = StreamReport; } }); -// ../lockfile-file/lib/errors/index.js -var require_errors3 = __commonJS({ - "../lockfile-file/lib/errors/index.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/YarnVersion.js +var require_YarnVersion = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/YarnVersion.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LockfileBreakingChangeError = void 0; - var LockfileBreakingChangeError_1 = __importDefault(require_LockfileBreakingChangeError()); - exports2.LockfileBreakingChangeError = LockfileBreakingChangeError_1.default; + exports2.YarnVersion = void 0; + exports2.YarnVersion = typeof YARN_VERSION !== `undefined` ? YARN_VERSION : null; } }); -// ../merge-lockfile-changes/lib/index.js -var require_lib56 = __commonJS({ - "../merge-lockfile-changes/lib/index.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/scriptUtils.js +var require_scriptUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/scriptUtils.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var comver_to_semver_1 = __importDefault(require_comver_to_semver()); - var semver_1 = __importDefault(require_semver2()); - function mergeLockfileChanges(ours, theirs) { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p; - const newLockfile = { - importers: {}, - lockfileVersion: semver_1.default.gt(comver_to_semver_1.default(theirs.lockfileVersion.toString()), comver_to_semver_1.default(ours.lockfileVersion.toString())) ? theirs.lockfileVersion : ours.lockfileVersion - }; - for (const importerId of Array.from(new Set([...Object.keys(ours.importers), ...Object.keys(theirs.importers)]))) { - newLockfile.importers[importerId] = { - specifiers: {} - }; - for (const key of ["dependencies", "devDependencies", "optionalDependencies"]) { - newLockfile.importers[importerId][key] = mergeDict((_b = (_a = ours.importers[importerId]) === null || _a === void 0 ? void 0 : _a[key]) !== null && _b !== void 0 ? _b : {}, (_d = (_c = theirs.importers[importerId]) === null || _c === void 0 ? void 0 : _c[key]) !== null && _d !== void 0 ? _d : {}, mergeVersions); - if (Object.keys(newLockfile.importers[importerId][key]).length === 0) { - delete newLockfile.importers[importerId][key]; + exports2.executeWorkspaceAccessibleBinary = exports2.executePackageAccessibleBinary = exports2.getWorkspaceAccessibleBinaries = exports2.getPackageAccessibleBinaries = exports2.maybeExecuteWorkspaceLifecycleScript = exports2.executeWorkspaceLifecycleScript = exports2.hasWorkspaceScript = exports2.executeWorkspaceScript = exports2.executePackageShellcode = exports2.executePackageScript = exports2.hasPackageScript = exports2.prepareExternalProject = exports2.makeScriptEnv = exports2.detectPackageManager = exports2.PackageManager = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var fslib_2 = require_lib50(); + var libzip_1 = require_sync9(); + var shell_1 = require_lib124(); + var capitalize_1 = tslib_12.__importDefault(require_capitalize()); + var p_limit_12 = tslib_12.__importDefault(require_p_limit2()); + var stream_12 = require("stream"); + var Manifest_1 = require_Manifest(); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var StreamReport_1 = require_StreamReport(); + var YarnVersion_1 = require_YarnVersion(); + var execUtils = tslib_12.__importStar(require_execUtils()); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var PackageManager; + (function(PackageManager2) { + PackageManager2["Yarn1"] = "Yarn Classic"; + PackageManager2["Yarn2"] = "Yarn"; + PackageManager2["Npm"] = "npm"; + PackageManager2["Pnpm"] = "pnpm"; + })(PackageManager || (exports2.PackageManager = PackageManager = {})); + async function makePathWrapper(location, name, argv0, args2 = []) { + if (process.platform === `win32`) { + const cmdScript = `@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${argv0}" ${args2.map((arg) => `"${arg.replace(`"`, `""`)}"`).join(` `)} %*`; + await fslib_2.xfs.writeFilePromise(fslib_2.ppath.format({ dir: location, name, ext: `.cmd` }), cmdScript); + } + await fslib_2.xfs.writeFilePromise(fslib_2.ppath.join(location, name), `#!/bin/sh +exec "${argv0}" ${args2.map((arg) => `'${arg.replace(/'/g, `'"'"'`)}'`).join(` `)} "$@" +`, { + mode: 493 + }); + } + async function detectPackageManager(location) { + const manifest = await Manifest_1.Manifest.tryFind(location); + if (manifest === null || manifest === void 0 ? void 0 : manifest.packageManager) { + const locator = structUtils.tryParseLocator(manifest.packageManager); + if (locator === null || locator === void 0 ? void 0 : locator.name) { + const reason = `found ${JSON.stringify({ packageManager: manifest.packageManager })} in manifest`; + const [major] = locator.reference.split(`.`); + switch (locator.name) { + case `yarn`: + { + const packageManager = Number(major) === 1 ? PackageManager.Yarn1 : PackageManager.Yarn2; + return { packageManagerField: true, packageManager, reason }; + } + break; + case `npm`: + { + return { packageManagerField: true, packageManager: PackageManager.Npm, reason }; + } + break; + case `pnpm`: + { + return { packageManagerField: true, packageManager: PackageManager.Pnpm, reason }; + } + break; } } - newLockfile.importers[importerId].specifiers = mergeDict((_f = (_e = ours.importers[importerId]) === null || _e === void 0 ? void 0 : _e.specifiers) !== null && _f !== void 0 ? _f : {}, (_h = (_g = theirs.importers[importerId]) === null || _g === void 0 ? void 0 : _g.specifiers) !== null && _h !== void 0 ? _h : {}, takeChangedValue); } - const packages = {}; - for (const depPath of Array.from(new Set([...Object.keys((_j = ours.packages) !== null && _j !== void 0 ? _j : {}), ...Object.keys((_k = theirs.packages) !== null && _k !== void 0 ? _k : {})]))) { - const ourPkg = (_l = ours.packages) === null || _l === void 0 ? void 0 : _l[depPath]; - const theirPkg = (_m = theirs.packages) === null || _m === void 0 ? void 0 : _m[depPath]; - const pkg = { - ...ourPkg, - ...theirPkg - }; - for (const key of ["dependencies", "optionalDependencies"]) { - pkg[key] = mergeDict((_o = ourPkg === null || ourPkg === void 0 ? void 0 : ourPkg[key]) !== null && _o !== void 0 ? _o : {}, (_p = theirPkg === null || theirPkg === void 0 ? void 0 : theirPkg[key]) !== null && _p !== void 0 ? _p : {}, mergeVersions); - if (Object.keys(pkg[key]).length === 0) { - delete pkg[key]; - } + let yarnLock; + try { + yarnLock = await fslib_2.xfs.readFilePromise(fslib_2.ppath.join(location, fslib_12.Filename.lockfile), `utf8`); + } catch { + } + if (yarnLock !== void 0) { + if (yarnLock.match(/^__metadata:$/m)) { + return { + packageManager: PackageManager.Yarn2, + reason: `"__metadata" key found in yarn.lock` + }; + } else { + return { + packageManager: PackageManager.Yarn1, + reason: `"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile` + }; } - packages[depPath] = pkg; } - newLockfile.packages = packages; - return newLockfile; + if (fslib_2.xfs.existsSync(fslib_2.ppath.join(location, `package-lock.json`))) + return { packageManager: PackageManager.Npm, reason: `found npm's "package-lock.json" lockfile` }; + if (fslib_2.xfs.existsSync(fslib_2.ppath.join(location, `pnpm-lock.yaml`))) + return { packageManager: PackageManager.Pnpm, reason: `found pnpm's "pnpm-lock.yaml" lockfile` }; + return null; } - exports2.default = mergeLockfileChanges; - function mergeDict(ourDict, theirDict, valueMerger) { - const newDict = {}; - for (const key of Object.keys(ourDict).concat(Object.keys(theirDict))) { - const changedValue = valueMerger(ourDict[key], theirDict[key]); - if (changedValue) { - newDict[key] = changedValue; - } + exports2.detectPackageManager = detectPackageManager; + async function makeScriptEnv({ project, locator, binFolder, ignoreCorepack, lifecycleScript }) { + var _a, _b; + const scriptEnv = {}; + for (const [key, value] of Object.entries(process.env)) + if (typeof value !== `undefined`) + scriptEnv[key.toLowerCase() !== `path` ? key : `PATH`] = value; + const nBinFolder = fslib_2.npath.fromPortablePath(binFolder); + scriptEnv.BERRY_BIN_FOLDER = fslib_2.npath.fromPortablePath(nBinFolder); + const yarnBin = process.env.COREPACK_ROOT && !ignoreCorepack ? fslib_2.npath.join(process.env.COREPACK_ROOT, `dist/yarn.js`) : process.argv[1]; + await Promise.all([ + makePathWrapper(binFolder, `node`, process.execPath), + ...YarnVersion_1.YarnVersion !== null ? [ + makePathWrapper(binFolder, `run`, process.execPath, [yarnBin, `run`]), + makePathWrapper(binFolder, `yarn`, process.execPath, [yarnBin]), + makePathWrapper(binFolder, `yarnpkg`, process.execPath, [yarnBin]), + makePathWrapper(binFolder, `node-gyp`, process.execPath, [yarnBin, `run`, `--top-level`, `node-gyp`]) + ] : [] + ]); + if (project) { + scriptEnv.INIT_CWD = fslib_2.npath.cwd(); + scriptEnv.PROJECT_CWD = fslib_2.npath.fromPortablePath(project.cwd); + } + scriptEnv.PATH = scriptEnv.PATH ? `${nBinFolder}${fslib_2.npath.delimiter}${scriptEnv.PATH}` : `${nBinFolder}`; + scriptEnv.npm_execpath = `${nBinFolder}${fslib_2.npath.sep}yarn`; + scriptEnv.npm_node_execpath = `${nBinFolder}${fslib_2.npath.sep}node`; + if (locator) { + if (!project) + throw new Error(`Assertion failed: Missing project`); + const workspace = project.tryWorkspaceByLocator(locator); + const version3 = workspace ? (_a = workspace.manifest.version) !== null && _a !== void 0 ? _a : `` : (_b = project.storedPackages.get(locator.locatorHash).version) !== null && _b !== void 0 ? _b : ``; + scriptEnv.npm_package_name = structUtils.stringifyIdent(locator); + scriptEnv.npm_package_version = version3; + let packageLocation; + if (workspace) { + packageLocation = workspace.cwd; + } else { + const pkg = project.storedPackages.get(locator.locatorHash); + if (!pkg) + throw new Error(`Package for ${structUtils.prettyLocator(project.configuration, locator)} not found in the project`); + const linkers = project.configuration.getLinkers(); + const linkerOptions = { project, report: new StreamReport_1.StreamReport({ stdout: new stream_12.PassThrough(), configuration: project.configuration }) }; + const linker = linkers.find((linker2) => linker2.supportsPackage(pkg, linkerOptions)); + if (!linker) + throw new Error(`The package ${structUtils.prettyLocator(project.configuration, pkg)} isn't supported by any of the available linkers`); + packageLocation = await linker.findPackageLocation(pkg, linkerOptions); + } + scriptEnv.npm_package_json = fslib_2.npath.fromPortablePath(fslib_2.ppath.join(packageLocation, fslib_12.Filename.manifest)); + } + const version2 = YarnVersion_1.YarnVersion !== null ? `yarn/${YarnVersion_1.YarnVersion}` : `yarn/${miscUtils.dynamicRequire(`@yarnpkg/core`).version}-core`; + scriptEnv.npm_config_user_agent = `${version2} npm/? node/${process.version} ${process.platform} ${process.arch}`; + if (lifecycleScript) + scriptEnv.npm_lifecycle_event = lifecycleScript; + if (project) { + await project.configuration.triggerHook((hook) => hook.setupScriptEnvironment, project, scriptEnv, async (name, argv0, args2) => { + return await makePathWrapper(binFolder, (0, fslib_2.toFilename)(name), argv0, args2); + }); } - return newDict; + return scriptEnv; + } + exports2.makeScriptEnv = makeScriptEnv; + var MAX_PREPARE_CONCURRENCY = 2; + var prepareLimit = (0, p_limit_12.default)(MAX_PREPARE_CONCURRENCY); + async function prepareExternalProject(cwd, outputPath, { configuration, report, workspace = null, locator = null }) { + await prepareLimit(async () => { + await fslib_2.xfs.mktempPromise(async (logDir) => { + const logFile = fslib_2.ppath.join(logDir, `pack.log`); + const stdin = null; + const { stdout, stderr } = configuration.getSubprocessStreams(logFile, { prefix: fslib_2.npath.fromPortablePath(cwd), report }); + const devirtualizedLocator = locator && structUtils.isVirtualLocator(locator) ? structUtils.devirtualizeLocator(locator) : locator; + const name = devirtualizedLocator ? structUtils.stringifyLocator(devirtualizedLocator) : `an external project`; + stdout.write(`Packing ${name} from sources +`); + const packageManagerSelection = await detectPackageManager(cwd); + let effectivePackageManager; + if (packageManagerSelection !== null) { + stdout.write(`Using ${packageManagerSelection.packageManager} for bootstrap. Reason: ${packageManagerSelection.reason} + +`); + effectivePackageManager = packageManagerSelection.packageManager; + } else { + stdout.write(`No package manager configuration detected; defaulting to Yarn + +`); + effectivePackageManager = PackageManager.Yarn2; + } + const ignoreCorepack = effectivePackageManager === PackageManager.Yarn2 && !(packageManagerSelection === null || packageManagerSelection === void 0 ? void 0 : packageManagerSelection.packageManagerField); + await fslib_2.xfs.mktempPromise(async (binFolder) => { + const env = await makeScriptEnv({ binFolder, ignoreCorepack }); + const workflows = /* @__PURE__ */ new Map([ + [PackageManager.Yarn1, async () => { + const workspaceCli = workspace !== null ? [`workspace`, workspace] : []; + const manifestPath = fslib_2.ppath.join(cwd, fslib_12.Filename.manifest); + const manifestBuffer = await fslib_2.xfs.readFilePromise(manifestPath); + const version2 = await execUtils.pipevp(process.execPath, [process.argv[1], `set`, `version`, `classic`, `--only-if-needed`, `--yarn-path`], { cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode }); + if (version2.code !== 0) + return version2.code; + await fslib_2.xfs.writeFilePromise(manifestPath, manifestBuffer); + await fslib_2.xfs.appendFilePromise(fslib_2.ppath.join(cwd, `.npmignore`), `/.yarn +`); + stdout.write(` +`); + delete env.NODE_ENV; + const install = await execUtils.pipevp(`yarn`, [`install`], { cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode }); + if (install.code !== 0) + return install.code; + stdout.write(` +`); + const pack = await execUtils.pipevp(`yarn`, [...workspaceCli, `pack`, `--filename`, fslib_2.npath.fromPortablePath(outputPath)], { cwd, env, stdin, stdout, stderr }); + if (pack.code !== 0) + return pack.code; + return 0; + }], + [PackageManager.Yarn2, async () => { + const workspaceCli = workspace !== null ? [`workspace`, workspace] : []; + env.YARN_ENABLE_INLINE_BUILDS = `1`; + const lockfilePath = fslib_2.ppath.join(cwd, fslib_12.Filename.lockfile); + if (!await fslib_2.xfs.existsPromise(lockfilePath)) + await fslib_2.xfs.writeFilePromise(lockfilePath, ``); + const pack = await execUtils.pipevp(`yarn`, [...workspaceCli, `pack`, `--install-if-needed`, `--filename`, fslib_2.npath.fromPortablePath(outputPath)], { cwd, env, stdin, stdout, stderr }); + if (pack.code !== 0) + return pack.code; + return 0; + }], + [PackageManager.Npm, async () => { + if (workspace !== null) { + const versionStream = new stream_12.PassThrough(); + const versionPromise = miscUtils.bufferStream(versionStream); + versionStream.pipe(stdout, { end: false }); + const version2 = await execUtils.pipevp(`npm`, [`--version`], { cwd, env, stdin, stdout: versionStream, stderr, end: execUtils.EndStrategy.Never }); + versionStream.end(); + if (version2.code !== 0) { + stdout.end(); + stderr.end(); + return version2.code; + } + const npmVersion = (await versionPromise).toString().trim(); + if (!semverUtils.satisfiesWithPrereleases(npmVersion, `>=7.x`)) { + const npmIdent = structUtils.makeIdent(null, `npm`); + const currentNpmDescriptor = structUtils.makeDescriptor(npmIdent, npmVersion); + const requiredNpmDescriptor = structUtils.makeDescriptor(npmIdent, `>=7.x`); + throw new Error(`Workspaces aren't supported by ${structUtils.prettyDescriptor(configuration, currentNpmDescriptor)}; please upgrade to ${structUtils.prettyDescriptor(configuration, requiredNpmDescriptor)} (npm has been detected as the primary package manager for ${formatUtils.pretty(configuration, cwd, formatUtils.Type.PATH)})`); + } + } + const workspaceCli = workspace !== null ? [`--workspace`, workspace] : []; + delete env.npm_config_user_agent; + delete env.npm_config_production; + delete env.NPM_CONFIG_PRODUCTION; + delete env.NODE_ENV; + const install = await execUtils.pipevp(`npm`, [`install`], { cwd, env, stdin, stdout, stderr, end: execUtils.EndStrategy.ErrorCode }); + if (install.code !== 0) + return install.code; + const packStream = new stream_12.PassThrough(); + const packPromise = miscUtils.bufferStream(packStream); + packStream.pipe(stdout); + const pack = await execUtils.pipevp(`npm`, [`pack`, `--silent`, ...workspaceCli], { cwd, env, stdin, stdout: packStream, stderr }); + if (pack.code !== 0) + return pack.code; + const packOutput = (await packPromise).toString().trim().replace(/^.*\n/s, ``); + const packTarget = fslib_2.ppath.resolve(cwd, fslib_2.npath.toPortablePath(packOutput)); + await fslib_2.xfs.renamePromise(packTarget, outputPath); + return 0; + }] + ]); + const workflow = workflows.get(effectivePackageManager); + if (typeof workflow === `undefined`) + throw new Error(`Assertion failed: Unsupported workflow`); + const code = await workflow(); + if (code === 0 || typeof code === `undefined`) + return; + fslib_2.xfs.detachTemp(logDir); + throw new Report_1.ReportError(MessageName_1.MessageName.PACKAGE_PREPARATION_FAILED, `Packing the package failed (exit code ${code}, logs can be found here: ${formatUtils.pretty(configuration, logFile, formatUtils.Type.PATH)})`); + }); + }); + }); } - function takeChangedValue(ourValue, theirValue) { - if (ourValue === theirValue || theirValue == null) - return ourValue; - return theirValue; + exports2.prepareExternalProject = prepareExternalProject; + async function hasPackageScript(locator, scriptName, { project }) { + const workspace = project.tryWorkspaceByLocator(locator); + if (workspace !== null) + return hasWorkspaceScript(workspace, scriptName); + const pkg = project.storedPackages.get(locator.locatorHash); + if (!pkg) + throw new Error(`Package for ${structUtils.prettyLocator(project.configuration, locator)} not found in the project`); + return await libzip_1.ZipOpenFS.openPromise(async (zipOpenFs) => { + const configuration = project.configuration; + const linkers = project.configuration.getLinkers(); + const linkerOptions = { project, report: new StreamReport_1.StreamReport({ stdout: new stream_12.PassThrough(), configuration }) }; + const linker = linkers.find((linker2) => linker2.supportsPackage(pkg, linkerOptions)); + if (!linker) + throw new Error(`The package ${structUtils.prettyLocator(project.configuration, pkg)} isn't supported by any of the available linkers`); + const packageLocation = await linker.findPackageLocation(pkg, linkerOptions); + const packageFs = new fslib_12.CwdFS(packageLocation, { baseFs: zipOpenFs }); + const manifest = await Manifest_1.Manifest.find(fslib_12.PortablePath.dot, { baseFs: packageFs }); + return manifest.scripts.has(scriptName); + }); + } + exports2.hasPackageScript = hasPackageScript; + async function executePackageScript(locator, scriptName, args2, { cwd, project, stdin, stdout, stderr }) { + return await fslib_2.xfs.mktempPromise(async (binFolder) => { + const { manifest, env, cwd: realCwd } = await initializePackageEnvironment(locator, { project, binFolder, cwd, lifecycleScript: scriptName }); + const script = manifest.scripts.get(scriptName); + if (typeof script === `undefined`) + return 1; + const realExecutor = async () => { + return await (0, shell_1.execute)(script, args2, { cwd: realCwd, env, stdin, stdout, stderr }); + }; + const executor = await project.configuration.reduceHook((hooks) => { + return hooks.wrapScriptExecution; + }, realExecutor, project, locator, scriptName, { + script, + args: args2, + cwd: realCwd, + env, + stdin, + stdout, + stderr + }); + return await executor(); + }); } - function mergeVersions(ourValue, theirValue) { - if (ourValue === theirValue || !theirValue) - return ourValue; - if (!ourValue) - return theirValue; - const [ourVersion] = ourValue.split("_"); - const [theirVersion] = theirValue.split("_"); - if (semver_1.default.gt(ourVersion, theirVersion)) { - return ourValue; + exports2.executePackageScript = executePackageScript; + async function executePackageShellcode(locator, command, args2, { cwd, project, stdin, stdout, stderr }) { + return await fslib_2.xfs.mktempPromise(async (binFolder) => { + const { env, cwd: realCwd } = await initializePackageEnvironment(locator, { project, binFolder, cwd }); + return await (0, shell_1.execute)(command, args2, { cwd: realCwd, env, stdin, stdout, stderr }); + }); + } + exports2.executePackageShellcode = executePackageShellcode; + async function initializeWorkspaceEnvironment(workspace, { binFolder, cwd, lifecycleScript }) { + const env = await makeScriptEnv({ project: workspace.project, locator: workspace.anchoredLocator, binFolder, lifecycleScript }); + await Promise.all(Array.from(await getWorkspaceAccessibleBinaries(workspace), ([binaryName, [, binaryPath]]) => makePathWrapper(binFolder, (0, fslib_2.toFilename)(binaryName), process.execPath, [binaryPath]))); + if (typeof cwd === `undefined`) + cwd = fslib_2.ppath.dirname(await fslib_2.xfs.realpathPromise(fslib_2.ppath.join(workspace.cwd, `package.json`))); + return { manifest: workspace.manifest, binFolder, env, cwd }; + } + async function initializePackageEnvironment(locator, { project, binFolder, cwd, lifecycleScript }) { + const workspace = project.tryWorkspaceByLocator(locator); + if (workspace !== null) + return initializeWorkspaceEnvironment(workspace, { binFolder, cwd, lifecycleScript }); + const pkg = project.storedPackages.get(locator.locatorHash); + if (!pkg) + throw new Error(`Package for ${structUtils.prettyLocator(project.configuration, locator)} not found in the project`); + return await libzip_1.ZipOpenFS.openPromise(async (zipOpenFs) => { + const configuration = project.configuration; + const linkers = project.configuration.getLinkers(); + const linkerOptions = { project, report: new StreamReport_1.StreamReport({ stdout: new stream_12.PassThrough(), configuration }) }; + const linker = linkers.find((linker2) => linker2.supportsPackage(pkg, linkerOptions)); + if (!linker) + throw new Error(`The package ${structUtils.prettyLocator(project.configuration, pkg)} isn't supported by any of the available linkers`); + const env = await makeScriptEnv({ project, locator, binFolder, lifecycleScript }); + await Promise.all(Array.from(await getPackageAccessibleBinaries(locator, { project }), ([binaryName, [, binaryPath]]) => makePathWrapper(binFolder, (0, fslib_2.toFilename)(binaryName), process.execPath, [binaryPath]))); + const packageLocation = await linker.findPackageLocation(pkg, linkerOptions); + const packageFs = new fslib_12.CwdFS(packageLocation, { baseFs: zipOpenFs }); + const manifest = await Manifest_1.Manifest.find(fslib_12.PortablePath.dot, { baseFs: packageFs }); + if (typeof cwd === `undefined`) + cwd = packageLocation; + return { manifest, binFolder, env, cwd }; + }); + } + async function executeWorkspaceScript(workspace, scriptName, args2, { cwd, stdin, stdout, stderr }) { + return await executePackageScript(workspace.anchoredLocator, scriptName, args2, { cwd, project: workspace.project, stdin, stdout, stderr }); + } + exports2.executeWorkspaceScript = executeWorkspaceScript; + function hasWorkspaceScript(workspace, scriptName) { + return workspace.manifest.scripts.has(scriptName); + } + exports2.hasWorkspaceScript = hasWorkspaceScript; + async function executeWorkspaceLifecycleScript(workspace, lifecycleScriptName, { cwd, report }) { + const { configuration } = workspace.project; + const stdin = null; + await fslib_2.xfs.mktempPromise(async (logDir) => { + const logFile = fslib_2.ppath.join(logDir, `${lifecycleScriptName}.log`); + const header = `# This file contains the result of Yarn calling the "${lifecycleScriptName}" lifecycle script inside a workspace ("${fslib_2.npath.fromPortablePath(workspace.cwd)}") +`; + const { stdout, stderr } = configuration.getSubprocessStreams(logFile, { + report, + prefix: structUtils.prettyLocator(configuration, workspace.anchoredLocator), + header + }); + report.reportInfo(MessageName_1.MessageName.LIFECYCLE_SCRIPT, `Calling the "${lifecycleScriptName}" lifecycle script`); + const exitCode = await executeWorkspaceScript(workspace, lifecycleScriptName, [], { cwd, stdin, stdout, stderr }); + stdout.end(); + stderr.end(); + if (exitCode !== 0) { + fslib_2.xfs.detachTemp(logDir); + throw new Report_1.ReportError(MessageName_1.MessageName.LIFECYCLE_SCRIPT, `${(0, capitalize_1.default)(lifecycleScriptName)} script failed (exit code ${formatUtils.pretty(configuration, exitCode, formatUtils.Type.NUMBER)}, logs can be found here: ${formatUtils.pretty(configuration, logFile, formatUtils.Type.PATH)}); run ${formatUtils.pretty(configuration, `yarn ${lifecycleScriptName}`, formatUtils.Type.CODE)} to investigate`); + } + }); + } + exports2.executeWorkspaceLifecycleScript = executeWorkspaceLifecycleScript; + async function maybeExecuteWorkspaceLifecycleScript(workspace, lifecycleScriptName, opts) { + if (hasWorkspaceScript(workspace, lifecycleScriptName)) { + await executeWorkspaceLifecycleScript(workspace, lifecycleScriptName, opts); } - return theirValue; } + exports2.maybeExecuteWorkspaceLifecycleScript = maybeExecuteWorkspaceLifecycleScript; + async function getPackageAccessibleBinaries(locator, { project }) { + const configuration = project.configuration; + const binaries = /* @__PURE__ */ new Map(); + const pkg = project.storedPackages.get(locator.locatorHash); + if (!pkg) + throw new Error(`Package for ${structUtils.prettyLocator(configuration, locator)} not found in the project`); + const stdout = new stream_12.Writable(); + const linkers = configuration.getLinkers(); + const linkerOptions = { project, report: new StreamReport_1.StreamReport({ configuration, stdout }) }; + const visibleLocators = /* @__PURE__ */ new Set([locator.locatorHash]); + for (const descriptor of pkg.dependencies.values()) { + const resolution = project.storedResolutions.get(descriptor.descriptorHash); + if (!resolution) + throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(configuration, descriptor)}) should have been registered`); + visibleLocators.add(resolution); + } + const dependenciesWithBinaries = await Promise.all(Array.from(visibleLocators, async (locatorHash) => { + const dependency = project.storedPackages.get(locatorHash); + if (!dependency) + throw new Error(`Assertion failed: The package (${locatorHash}) should have been registered`); + if (dependency.bin.size === 0) + return miscUtils.mapAndFilter.skip; + const linker = linkers.find((linker2) => linker2.supportsPackage(dependency, linkerOptions)); + if (!linker) + return miscUtils.mapAndFilter.skip; + let packageLocation = null; + try { + packageLocation = await linker.findPackageLocation(dependency, linkerOptions); + } catch (err) { + if (err.code === `LOCATOR_NOT_INSTALLED`) { + return miscUtils.mapAndFilter.skip; + } else { + throw err; + } + } + return { dependency, packageLocation }; + })); + for (const candidate of dependenciesWithBinaries) { + if (candidate === miscUtils.mapAndFilter.skip) + continue; + const { dependency, packageLocation } = candidate; + for (const [name, target] of dependency.bin) { + binaries.set(name, [dependency, fslib_2.npath.fromPortablePath(fslib_2.ppath.resolve(packageLocation, target))]); + } + } + return binaries; + } + exports2.getPackageAccessibleBinaries = getPackageAccessibleBinaries; + async function getWorkspaceAccessibleBinaries(workspace) { + return await getPackageAccessibleBinaries(workspace.anchoredLocator, { project: workspace.project }); + } + exports2.getWorkspaceAccessibleBinaries = getWorkspaceAccessibleBinaries; + async function executePackageAccessibleBinary(locator, binaryName, args2, { cwd, project, stdin, stdout, stderr, nodeArgs = [], packageAccessibleBinaries }) { + packageAccessibleBinaries !== null && packageAccessibleBinaries !== void 0 ? packageAccessibleBinaries : packageAccessibleBinaries = await getPackageAccessibleBinaries(locator, { project }); + const binary = packageAccessibleBinaries.get(binaryName); + if (!binary) + throw new Error(`Binary not found (${binaryName}) for ${structUtils.prettyLocator(project.configuration, locator)}`); + return await fslib_2.xfs.mktempPromise(async (binFolder) => { + const [, binaryPath] = binary; + const env = await makeScriptEnv({ project, locator, binFolder }); + await Promise.all(Array.from(packageAccessibleBinaries, ([binaryName2, [, binaryPath2]]) => makePathWrapper(env.BERRY_BIN_FOLDER, (0, fslib_2.toFilename)(binaryName2), process.execPath, [binaryPath2]))); + let result2; + try { + result2 = await execUtils.pipevp(process.execPath, [...nodeArgs, binaryPath, ...args2], { cwd, env, stdin, stdout, stderr }); + } finally { + await fslib_2.xfs.removePromise(env.BERRY_BIN_FOLDER); + } + return result2.code; + }); + } + exports2.executePackageAccessibleBinary = executePackageAccessibleBinary; + async function executeWorkspaceAccessibleBinary(workspace, binaryName, args2, { cwd, stdin, stdout, stderr, packageAccessibleBinaries }) { + return await executePackageAccessibleBinary(workspace.anchoredLocator, binaryName, args2, { project: workspace.project, cwd, stdin, stdout, stderr, packageAccessibleBinaries }); + } + exports2.executeWorkspaceAccessibleBinary = executeWorkspaceAccessibleBinary; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/high-level-opt.js +var require_high_level_opt = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/high-level-opt.js"(exports2, module2) { + "use strict"; + var argmap = /* @__PURE__ */ new Map([ + ["C", "cwd"], + ["f", "file"], + ["z", "gzip"], + ["P", "preservePaths"], + ["U", "unlink"], + ["strip-components", "strip"], + ["stripComponents", "strip"], + ["keep-newer", "newer"], + ["keepNewer", "newer"], + ["keep-newer-files", "newer"], + ["keepNewerFiles", "newer"], + ["k", "keep"], + ["keep-existing", "keep"], + ["keepExisting", "keep"], + ["m", "noMtime"], + ["no-mtime", "noMtime"], + ["p", "preserveOwner"], + ["L", "follow"], + ["h", "follow"] + ]); + module2.exports = (opt) => opt ? Object.keys(opt).map((k) => [ + argmap.has(k) ? argmap.get(k) : k, + opt[k] + ]).reduce((set, kv) => (set[kv[0]] = kv[1], set), /* @__PURE__ */ Object.create(null)) : {}; } }); -// ../lockfile-file/lib/gitMergeFile.js -var require_gitMergeFile = __commonJS({ - "../lockfile-file/lib/gitMergeFile.js"(exports2) { +// ../node_modules/.pnpm/minipass@5.0.0/node_modules/minipass/index.js +var require_minipass2 = __commonJS({ + "../node_modules/.pnpm/minipass@5.0.0/node_modules/minipass/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var proc = typeof process === "object" && process ? process : { + stdout: null, + stderr: null }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isDiff = exports2.autofixMergeConflicts = void 0; - var merge_lockfile_changes_1 = __importDefault(require_lib56()); - var js_yaml_1 = __importDefault(require_js_yaml()); - var MERGE_CONFLICT_PARENT = "|||||||"; - var MERGE_CONFLICT_END = ">>>>>>>"; - var MERGE_CONFLICT_THEIRS = "======="; - var MERGE_CONFLICT_OURS = "<<<<<<<"; - function autofixMergeConflicts(fileContent) { - const { ours, theirs } = parseMergeFile(fileContent); - return merge_lockfile_changes_1.default(js_yaml_1.default.load(ours), js_yaml_1.default.load(theirs)); - } - exports2.autofixMergeConflicts = autofixMergeConflicts; - function parseMergeFile(fileContent) { - const lines = fileContent.split(/[\n\r]+/g); - let state = "top"; - const ours = []; - const theirs = []; - while (lines.length > 0) { - const line = lines.shift(); - if (line.startsWith(MERGE_CONFLICT_PARENT)) { - state = "parent"; - continue; + var EE = require("events"); + var Stream = require("stream"); + var stringdecoder = require("string_decoder"); + var SD = stringdecoder.StringDecoder; + var EOF = Symbol("EOF"); + var MAYBE_EMIT_END = Symbol("maybeEmitEnd"); + var EMITTED_END = Symbol("emittedEnd"); + var EMITTING_END = Symbol("emittingEnd"); + var EMITTED_ERROR = Symbol("emittedError"); + var CLOSED = Symbol("closed"); + var READ = Symbol("read"); + var FLUSH = Symbol("flush"); + var FLUSHCHUNK = Symbol("flushChunk"); + var ENCODING = Symbol("encoding"); + var DECODER = Symbol("decoder"); + var FLOWING = Symbol("flowing"); + var PAUSED = Symbol("paused"); + var RESUME = Symbol("resume"); + var BUFFER = Symbol("buffer"); + var PIPES = Symbol("pipes"); + var BUFFERLENGTH = Symbol("bufferLength"); + var BUFFERPUSH = Symbol("bufferPush"); + var BUFFERSHIFT = Symbol("bufferShift"); + var OBJECTMODE = Symbol("objectMode"); + var DESTROYED = Symbol("destroyed"); + var ERROR = Symbol("error"); + var EMITDATA = Symbol("emitData"); + var EMITEND = Symbol("emitEnd"); + var EMITEND2 = Symbol("emitEnd2"); + var ASYNC = Symbol("async"); + var ABORT = Symbol("abort"); + var ABORTED = Symbol("aborted"); + var SIGNAL = Symbol("signal"); + var defer = (fn2) => Promise.resolve().then(fn2); + var doIter = global._MP_NO_ITERATOR_SYMBOLS_ !== "1"; + var ASYNCITERATOR = doIter && Symbol.asyncIterator || Symbol("asyncIterator not implemented"); + var ITERATOR = doIter && Symbol.iterator || Symbol("iterator not implemented"); + var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish"; + var isArrayBuffer = (b) => b instanceof ArrayBuffer || typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0; + var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b); + var Pipe = class { + constructor(src, dest, opts) { + this.src = src; + this.dest = dest; + this.opts = opts; + this.ondrain = () => src[RESUME](); + dest.on("drain", this.ondrain); + } + unpipe() { + this.dest.removeListener("drain", this.ondrain); + } + // istanbul ignore next - only here for the prototype + proxyErrors() { + } + end() { + this.unpipe(); + if (this.opts.end) + this.dest.end(); + } + }; + var PipeProxyErrors = class extends Pipe { + unpipe() { + this.src.removeListener("error", this.proxyErrors); + super.unpipe(); + } + constructor(src, dest, opts) { + super(src, dest, opts); + this.proxyErrors = (er) => dest.emit("error", er); + src.on("error", this.proxyErrors); + } + }; + var Minipass = class extends Stream { + constructor(options) { + super(); + this[FLOWING] = false; + this[PAUSED] = false; + this[PIPES] = []; + this[BUFFER] = []; + this[OBJECTMODE] = options && options.objectMode || false; + if (this[OBJECTMODE]) + this[ENCODING] = null; + else + this[ENCODING] = options && options.encoding || null; + if (this[ENCODING] === "buffer") + this[ENCODING] = null; + this[ASYNC] = options && !!options.async || false; + this[DECODER] = this[ENCODING] ? new SD(this[ENCODING]) : null; + this[EOF] = false; + this[EMITTED_END] = false; + this[EMITTING_END] = false; + this[CLOSED] = false; + this[EMITTED_ERROR] = null; + this.writable = true; + this.readable = true; + this[BUFFERLENGTH] = 0; + this[DESTROYED] = false; + if (options && options.debugExposeBuffer === true) { + Object.defineProperty(this, "buffer", { get: () => this[BUFFER] }); } - if (line.startsWith(MERGE_CONFLICT_OURS)) { - state = "ours"; - continue; + if (options && options.debugExposePipes === true) { + Object.defineProperty(this, "pipes", { get: () => this[PIPES] }); } - if (line === MERGE_CONFLICT_THEIRS) { - state = "theirs"; - continue; + this[SIGNAL] = options && options.signal; + this[ABORTED] = false; + if (this[SIGNAL]) { + this[SIGNAL].addEventListener("abort", () => this[ABORT]()); + if (this[SIGNAL].aborted) { + this[ABORT](); + } } - if (line.startsWith(MERGE_CONFLICT_END)) { - state = "top"; - continue; + } + get bufferLength() { + return this[BUFFERLENGTH]; + } + get encoding() { + return this[ENCODING]; + } + set encoding(enc) { + if (this[OBJECTMODE]) + throw new Error("cannot set encoding in objectMode"); + if (this[ENCODING] && enc !== this[ENCODING] && (this[DECODER] && this[DECODER].lastNeed || this[BUFFERLENGTH])) + throw new Error("cannot change encoding"); + if (this[ENCODING] !== enc) { + this[DECODER] = enc ? new SD(enc) : null; + if (this[BUFFER].length) + this[BUFFER] = this[BUFFER].map((chunk) => this[DECODER].write(chunk)); } - if (state === "top" || state === "ours") - ours.push(line); - if (state === "top" || state === "theirs") - theirs.push(line); + this[ENCODING] = enc; } - return { ours: ours.join("\n"), theirs: theirs.join("\n") }; - } - function isDiff(fileContent) { - return fileContent.includes(MERGE_CONFLICT_OURS) && fileContent.includes(MERGE_CONFLICT_THEIRS) && fileContent.includes(MERGE_CONFLICT_END); - } - exports2.isDiff = isDiff; - } -}); - -// ../lockfile-file/lib/read.js -var require_read = __commonJS({ - "../lockfile-file/lib/read.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createLockfileObject = exports2.readWantedLockfile = exports2.readWantedLockfileAndAutofixConflicts = exports2.readCurrentLockfile = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var types_1 = require_lib14(); - var comver_to_semver_1 = __importDefault(require_comver_to_semver()); - var js_yaml_1 = __importDefault(require_js_yaml()); - var semver_1 = __importDefault(require_semver2()); - var strip_bom_1 = __importDefault(require_strip_bom()); - var errors_1 = require_errors3(); - var gitMergeFile_1 = require_gitMergeFile(); - var logger_1 = __importDefault(require_logger2()); - async function readCurrentLockfile(virtualStoreDir, opts) { - const lockfilePath = path_1.default.join(virtualStoreDir, "lock.yaml"); - return (await _read(lockfilePath, virtualStoreDir, opts)).lockfile; - } - exports2.readCurrentLockfile = readCurrentLockfile; - async function readWantedLockfileAndAutofixConflicts(pkgPath, opts) { - const lockfilePath = path_1.default.join(pkgPath, constants_1.WANTED_LOCKFILE); - return _read(lockfilePath, pkgPath, { ...opts, autofixMergeConflicts: true }); - } - exports2.readWantedLockfileAndAutofixConflicts = readWantedLockfileAndAutofixConflicts; - async function readWantedLockfile(pkgPath, opts) { - const lockfilePath = path_1.default.join(pkgPath, constants_1.WANTED_LOCKFILE); - return (await _read(lockfilePath, pkgPath, opts)).lockfile; - } - exports2.readWantedLockfile = readWantedLockfile; - async function _read(lockfilePath, prefix, opts) { - var _a; - let lockfileRawContent; - try { - lockfileRawContent = strip_bom_1.default(await fs_1.promises.readFile(lockfilePath, "utf8")); - } catch (err) { - if (err.code !== "ENOENT") { - throw err; + setEncoding(enc) { + this.encoding = enc; + } + get objectMode() { + return this[OBJECTMODE]; + } + set objectMode(om) { + this[OBJECTMODE] = this[OBJECTMODE] || !!om; + } + get ["async"]() { + return this[ASYNC]; + } + set ["async"](a) { + this[ASYNC] = this[ASYNC] || !!a; + } + // drop everything and get out of the flow completely + [ABORT]() { + this[ABORTED] = true; + this.emit("abort", this[SIGNAL].reason); + this.destroy(this[SIGNAL].reason); + } + get aborted() { + return this[ABORTED]; + } + set aborted(_) { + } + write(chunk, encoding, cb) { + if (this[ABORTED]) + return false; + if (this[EOF]) + throw new Error("write after end"); + if (this[DESTROYED]) { + this.emit( + "error", + Object.assign( + new Error("Cannot call write after a stream was destroyed"), + { code: "ERR_STREAM_DESTROYED" } + ) + ); + return true; } - return { - lockfile: null, - hadConflicts: false - }; + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (!encoding) + encoding = "utf8"; + const fn2 = this[ASYNC] ? defer : (f) => f(); + if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) { + if (isArrayBufferView(chunk)) + chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); + else if (isArrayBuffer(chunk)) + chunk = Buffer.from(chunk); + else if (typeof chunk !== "string") + this.objectMode = true; + } + if (this[OBJECTMODE]) { + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (!chunk.length) { + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (typeof chunk === "string" && // unless it is a string already ready for us to use + !(encoding === this[ENCODING] && !this[DECODER].lastNeed)) { + chunk = Buffer.from(chunk, encoding); + } + if (Buffer.isBuffer(chunk) && this[ENCODING]) + chunk = this[DECODER].write(chunk); + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; } - let lockfile; - let hadConflicts; - try { - lockfile = js_yaml_1.default.load(lockfileRawContent); - hadConflicts = false; - } catch (err) { - if (!opts.autofixMergeConflicts || !gitMergeFile_1.isDiff(lockfileRawContent)) { - throw new error_1.default("BROKEN_LOCKFILE", `The lockfile at "${lockfilePath}" is broken: ${err.message}`); + read(n) { + if (this[DESTROYED]) + return null; + if (this[BUFFERLENGTH] === 0 || n === 0 || n > this[BUFFERLENGTH]) { + this[MAYBE_EMIT_END](); + return null; } - hadConflicts = true; - lockfile = gitMergeFile_1.autofixMergeConflicts(lockfileRawContent); - logger_1.default.info({ - message: `Merge conflict detected in ${constants_1.WANTED_LOCKFILE} and successfully merged`, - prefix: path_1.default.dirname(lockfilePath) - }); + if (this[OBJECTMODE]) + n = null; + if (this[BUFFER].length > 1 && !this[OBJECTMODE]) { + if (this.encoding) + this[BUFFER] = [this[BUFFER].join("")]; + else + this[BUFFER] = [Buffer.concat(this[BUFFER], this[BUFFERLENGTH])]; + } + const ret = this[READ](n || null, this[BUFFER][0]); + this[MAYBE_EMIT_END](); + return ret; } - if (typeof (lockfile === null || lockfile === void 0 ? void 0 : lockfile["specifiers"]) !== "undefined") { - lockfile.importers = { - ".": { - specifiers: lockfile["specifiers"] - } - }; - delete lockfile.specifiers; - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (lockfile[depType] != null) { - lockfile.importers["."][depType] = lockfile[depType]; - delete lockfile[depType]; - } + [READ](n, chunk) { + if (n === chunk.length || n === null) + this[BUFFERSHIFT](); + else { + this[BUFFER][0] = chunk.slice(n); + chunk = chunk.slice(0, n); + this[BUFFERLENGTH] -= n; } + this.emit("data", chunk); + if (!this[BUFFER].length && !this[EOF]) + this.emit("drain"); + return chunk; } - if (lockfile) { - const lockfileSemver = comver_to_semver_1.default(((_a = lockfile.lockfileVersion) !== null && _a !== void 0 ? _a : 0).toString()); - if (typeof opts.wantedVersion !== "number" || semver_1.default.major(lockfileSemver) === semver_1.default.major(comver_to_semver_1.default(opts.wantedVersion.toString()))) { - if (typeof opts.wantedVersion === "number" && semver_1.default.gt(lockfileSemver, comver_to_semver_1.default(opts.wantedVersion.toString()))) { - logger_1.default.warn({ - message: `Your ${constants_1.WANTED_LOCKFILE} was generated by a newer version of pnpm. It is a compatible version but it might get downgraded to version ${opts.wantedVersion}`, - prefix - }); + end(chunk, encoding, cb) { + if (typeof chunk === "function") + cb = chunk, chunk = null; + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (chunk) + this.write(chunk, encoding); + if (cb) + this.once("end", cb); + this[EOF] = true; + this.writable = false; + if (this.flowing || !this[PAUSED]) + this[MAYBE_EMIT_END](); + return this; + } + // don't let the internal resume be overwritten + [RESUME]() { + if (this[DESTROYED]) + return; + this[PAUSED] = false; + this[FLOWING] = true; + this.emit("resume"); + if (this[BUFFER].length) + this[FLUSH](); + else if (this[EOF]) + this[MAYBE_EMIT_END](); + else + this.emit("drain"); + } + resume() { + return this[RESUME](); + } + pause() { + this[FLOWING] = false; + this[PAUSED] = true; + } + get destroyed() { + return this[DESTROYED]; + } + get flowing() { + return this[FLOWING]; + } + get paused() { + return this[PAUSED]; + } + [BUFFERPUSH](chunk) { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] += 1; + else + this[BUFFERLENGTH] += chunk.length; + this[BUFFER].push(chunk); + } + [BUFFERSHIFT]() { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] -= 1; + else + this[BUFFERLENGTH] -= this[BUFFER][0].length; + return this[BUFFER].shift(); + } + [FLUSH](noDrain) { + do { + } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) && this[BUFFER].length); + if (!noDrain && !this[BUFFER].length && !this[EOF]) + this.emit("drain"); + } + [FLUSHCHUNK](chunk) { + this.emit("data", chunk); + return this.flowing; + } + pipe(dest, opts) { + if (this[DESTROYED]) + return; + const ended = this[EMITTED_END]; + opts = opts || {}; + if (dest === proc.stdout || dest === proc.stderr) + opts.end = false; + else + opts.end = opts.end !== false; + opts.proxyErrors = !!opts.proxyErrors; + if (ended) { + if (opts.end) + dest.end(); + } else { + this[PIPES].push( + !opts.proxyErrors ? new Pipe(this, dest, opts) : new PipeProxyErrors(this, dest, opts) + ); + if (this[ASYNC]) + defer(() => this[RESUME]()); + else + this[RESUME](); + } + return dest; + } + unpipe(dest) { + const p = this[PIPES].find((p2) => p2.dest === dest); + if (p) { + this[PIPES].splice(this[PIPES].indexOf(p), 1); + p.unpipe(); + } + } + addListener(ev, fn2) { + return this.on(ev, fn2); + } + on(ev, fn2) { + const ret = super.on(ev, fn2); + if (ev === "data" && !this[PIPES].length && !this.flowing) + this[RESUME](); + else if (ev === "readable" && this[BUFFERLENGTH] !== 0) + super.emit("readable"); + else if (isEndish(ev) && this[EMITTED_END]) { + super.emit(ev); + this.removeAllListeners(ev); + } else if (ev === "error" && this[EMITTED_ERROR]) { + if (this[ASYNC]) + defer(() => fn2.call(this, this[EMITTED_ERROR])); + else + fn2.call(this, this[EMITTED_ERROR]); + } + return ret; + } + get emittedEnd() { + return this[EMITTED_END]; + } + [MAYBE_EMIT_END]() { + if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this[BUFFER].length === 0 && this[EOF]) { + this[EMITTING_END] = true; + this.emit("end"); + this.emit("prefinish"); + this.emit("finish"); + if (this[CLOSED]) + this.emit("close"); + this[EMITTING_END] = false; + } + } + emit(ev, data, ...extra) { + if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) + return; + else if (ev === "data") { + return !this[OBJECTMODE] && !data ? false : this[ASYNC] ? defer(() => this[EMITDATA](data)) : this[EMITDATA](data); + } else if (ev === "end") { + return this[EMITEND](); + } else if (ev === "close") { + this[CLOSED] = true; + if (!this[EMITTED_END] && !this[DESTROYED]) + return; + const ret2 = super.emit("close"); + this.removeAllListeners("close"); + return ret2; + } else if (ev === "error") { + this[EMITTED_ERROR] = data; + super.emit(ERROR, data); + const ret2 = !this[SIGNAL] || this.listeners("error").length ? super.emit("error", data) : false; + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "resume") { + const ret2 = super.emit("resume"); + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "finish" || ev === "prefinish") { + const ret2 = super.emit(ev); + this.removeAllListeners(ev); + return ret2; + } + const ret = super.emit(ev, data, ...extra); + this[MAYBE_EMIT_END](); + return ret; + } + [EMITDATA](data) { + for (const p of this[PIPES]) { + if (p.dest.write(data) === false) + this.pause(); + } + const ret = super.emit("data", data); + this[MAYBE_EMIT_END](); + return ret; + } + [EMITEND]() { + if (this[EMITTED_END]) + return; + this[EMITTED_END] = true; + this.readable = false; + if (this[ASYNC]) + defer(() => this[EMITEND2]()); + else + this[EMITEND2](); + } + [EMITEND2]() { + if (this[DECODER]) { + const data = this[DECODER].end(); + if (data) { + for (const p of this[PIPES]) { + p.dest.write(data); + } + super.emit("data", data); } - return { lockfile, hadConflicts }; } + for (const p of this[PIPES]) { + p.end(); + } + const ret = super.emit("end"); + this.removeAllListeners("end"); + return ret; } - if (opts.ignoreIncompatible) { - logger_1.default.warn({ - message: `Ignoring not compatible lockfile at ${lockfilePath}`, - prefix + // const all = await stream.collect() + collect() { + const buf = []; + if (!this[OBJECTMODE]) + buf.dataLength = 0; + const p = this.promise(); + this.on("data", (c) => { + buf.push(c); + if (!this[OBJECTMODE]) + buf.dataLength += c.length; }); - return { lockfile: null, hadConflicts: false }; + return p.then(() => buf); } - throw new errors_1.LockfileBreakingChangeError(lockfilePath); - } - function createLockfileObject(importerIds, opts) { - const importers = importerIds.reduce((acc, importerId) => { - acc[importerId] = { - dependencies: {}, - specifiers: {} + // const data = await stream.concat() + concat() { + return this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this.collect().then( + (buf) => this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength) + ); + } + // stream.promise().then(() => done, er => emitted error) + promise() { + return new Promise((resolve, reject) => { + this.on(DESTROYED, () => reject(new Error("stream destroyed"))); + this.on("error", (er) => reject(er)); + this.on("end", () => resolve()); + }); + } + // for await (let chunk of stream) + [ASYNCITERATOR]() { + let stopped = false; + const stop = () => { + this.pause(); + stopped = true; + return Promise.resolve({ done: true }); + }; + const next = () => { + if (stopped) + return stop(); + const res = this.read(); + if (res !== null) + return Promise.resolve({ done: false, value: res }); + if (this[EOF]) + return stop(); + let resolve = null; + let reject = null; + const onerr = (er) => { + this.removeListener("data", ondata); + this.removeListener("end", onend); + this.removeListener(DESTROYED, ondestroy); + stop(); + reject(er); + }; + const ondata = (value) => { + this.removeListener("error", onerr); + this.removeListener("end", onend); + this.removeListener(DESTROYED, ondestroy); + this.pause(); + resolve({ value, done: !!this[EOF] }); + }; + const onend = () => { + this.removeListener("error", onerr); + this.removeListener("data", ondata); + this.removeListener(DESTROYED, ondestroy); + stop(); + resolve({ done: true }); + }; + const ondestroy = () => onerr(new Error("stream destroyed")); + return new Promise((res2, rej) => { + reject = rej; + resolve = res2; + this.once(DESTROYED, ondestroy); + this.once("error", onerr); + this.once("end", onend); + this.once("data", ondata); + }); + }; + return { + next, + throw: stop, + return: stop, + [ASYNCITERATOR]() { + return this; + } }; - return acc; - }, {}); - return { - importers, - lockfileVersion: opts.lockfileVersion || constants_1.LOCKFILE_VERSION - }; - } - exports2.createLockfileObject = createLockfileObject; - } -}); - -// ../lockfile-file/lib/index.js -var require_lib57 = __commonJS({ - "../lockfile-file/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); } - __setModuleDefault2(result, mod); - return result; + // for (let chunk of stream) + [ITERATOR]() { + let stopped = false; + const stop = () => { + this.pause(); + this.removeListener(ERROR, stop); + this.removeListener(DESTROYED, stop); + this.removeListener("end", stop); + stopped = true; + return { done: true }; + }; + const next = () => { + if (stopped) + return stop(); + const value = this.read(); + return value === null ? stop() : { value }; + }; + this.once("end", stop); + this.once(ERROR, stop); + this.once(DESTROYED, stop); + return { + next, + throw: stop, + return: stop, + [ITERATOR]() { + return this; + } + }; + } + destroy(er) { + if (this[DESTROYED]) { + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + this[DESTROYED] = true; + this[BUFFER].length = 0; + this[BUFFERLENGTH] = 0; + if (typeof this.close === "function" && !this[CLOSED]) + this.close(); + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + static isStream(s) { + return !!s && (s instanceof Minipass || s instanceof Stream || s instanceof EE && // readable + (typeof s.pipe === "function" || // writable + typeof s.write === "function" && typeof s.end === "function")); + } + }; + exports2.Minipass = Minipass; + } +}); + +// ../node_modules/.pnpm/minizlib@2.1.2/node_modules/minizlib/constants.js +var require_constants12 = __commonJS({ + "../node_modules/.pnpm/minizlib@2.1.2/node_modules/minizlib/constants.js"(exports2, module2) { + var realZlibConstants = require("zlib").constants || /* istanbul ignore next */ + { ZLIB_VERNUM: 4736 }; + module2.exports = Object.freeze(Object.assign(/* @__PURE__ */ Object.create(null), { + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + Z_VERSION_ERROR: -6, + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + DEFLATE: 1, + INFLATE: 2, + GZIP: 3, + GUNZIP: 4, + DEFLATERAW: 5, + INFLATERAW: 6, + UNZIP: 7, + BROTLI_DECODE: 8, + BROTLI_ENCODE: 9, + Z_MIN_WINDOWBITS: 8, + Z_MAX_WINDOWBITS: 15, + Z_DEFAULT_WINDOWBITS: 15, + Z_MIN_CHUNK: 64, + Z_MAX_CHUNK: Infinity, + Z_DEFAULT_CHUNK: 16384, + Z_MIN_MEMLEVEL: 1, + Z_MAX_MEMLEVEL: 9, + Z_DEFAULT_MEMLEVEL: 8, + Z_MIN_LEVEL: -1, + Z_MAX_LEVEL: 9, + Z_DEFAULT_LEVEL: -1, + BROTLI_OPERATION_PROCESS: 0, + BROTLI_OPERATION_FLUSH: 1, + BROTLI_OPERATION_FINISH: 2, + BROTLI_OPERATION_EMIT_METADATA: 3, + BROTLI_MODE_GENERIC: 0, + BROTLI_MODE_TEXT: 1, + BROTLI_MODE_FONT: 2, + BROTLI_DEFAULT_MODE: 0, + BROTLI_MIN_QUALITY: 0, + BROTLI_MAX_QUALITY: 11, + BROTLI_DEFAULT_QUALITY: 11, + BROTLI_MIN_WINDOW_BITS: 10, + BROTLI_MAX_WINDOW_BITS: 24, + BROTLI_LARGE_MAX_WINDOW_BITS: 30, + BROTLI_DEFAULT_WINDOW: 22, + BROTLI_MIN_INPUT_BLOCK_BITS: 16, + BROTLI_MAX_INPUT_BLOCK_BITS: 24, + BROTLI_PARAM_MODE: 0, + BROTLI_PARAM_QUALITY: 1, + BROTLI_PARAM_LGWIN: 2, + BROTLI_PARAM_LGBLOCK: 3, + BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4, + BROTLI_PARAM_SIZE_HINT: 5, + BROTLI_PARAM_LARGE_WINDOW: 6, + BROTLI_PARAM_NPOSTFIX: 7, + BROTLI_PARAM_NDIRECT: 8, + BROTLI_DECODER_RESULT_ERROR: 0, + BROTLI_DECODER_RESULT_SUCCESS: 1, + BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2, + BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3, + BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0, + BROTLI_DECODER_PARAM_LARGE_WINDOW: 1, + BROTLI_DECODER_NO_ERROR: 0, + BROTLI_DECODER_SUCCESS: 1, + BROTLI_DECODER_NEEDS_MORE_INPUT: 2, + BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3, + BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1, + BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2, + BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3, + BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4, + BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5, + BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6, + BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7, + BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8, + BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9, + BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10, + BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11, + BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12, + BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13, + BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14, + BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15, + BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16, + BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19, + BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20, + BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21, + BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22, + BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25, + BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26, + BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27, + BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30, + BROTLI_DECODER_ERROR_UNREACHABLE: -31 + }, realZlibConstants)); + } +}); + +// ../node_modules/.pnpm/minipass@3.3.6/node_modules/minipass/index.js +var require_minipass3 = __commonJS({ + "../node_modules/.pnpm/minipass@3.3.6/node_modules/minipass/index.js"(exports2, module2) { + "use strict"; + var proc = typeof process === "object" && process ? process : { + stdout: null, + stderr: null }; - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); + var EE = require("events"); + var Stream = require("stream"); + var SD = require("string_decoder").StringDecoder; + var EOF = Symbol("EOF"); + var MAYBE_EMIT_END = Symbol("maybeEmitEnd"); + var EMITTED_END = Symbol("emittedEnd"); + var EMITTING_END = Symbol("emittingEnd"); + var EMITTED_ERROR = Symbol("emittedError"); + var CLOSED = Symbol("closed"); + var READ = Symbol("read"); + var FLUSH = Symbol("flush"); + var FLUSHCHUNK = Symbol("flushChunk"); + var ENCODING = Symbol("encoding"); + var DECODER = Symbol("decoder"); + var FLOWING = Symbol("flowing"); + var PAUSED = Symbol("paused"); + var RESUME = Symbol("resume"); + var BUFFERLENGTH = Symbol("bufferLength"); + var BUFFERPUSH = Symbol("bufferPush"); + var BUFFERSHIFT = Symbol("bufferShift"); + var OBJECTMODE = Symbol("objectMode"); + var DESTROYED = Symbol("destroyed"); + var EMITDATA = Symbol("emitData"); + var EMITEND = Symbol("emitEnd"); + var EMITEND2 = Symbol("emitEnd2"); + var ASYNC = Symbol("async"); + var defer = (fn2) => Promise.resolve().then(fn2); + var doIter = global._MP_NO_ITERATOR_SYMBOLS_ !== "1"; + var ASYNCITERATOR = doIter && Symbol.asyncIterator || Symbol("asyncIterator not implemented"); + var ITERATOR = doIter && Symbol.iterator || Symbol("iterator not implemented"); + var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish"; + var isArrayBuffer = (b) => b instanceof ArrayBuffer || typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0; + var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b); + var Pipe = class { + constructor(src, dest, opts) { + this.src = src; + this.dest = dest; + this.opts = opts; + this.ondrain = () => src[RESUME](); + dest.on("drain", this.ondrain); + } + unpipe() { + this.dest.removeListener("drain", this.ondrain); + } + // istanbul ignore next - only here for the prototype + proxyErrors() { + } + end() { + this.unpipe(); + if (this.opts.end) + this.dest.end(); + } }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var PipeProxyErrors = class extends Pipe { + unpipe() { + this.src.removeListener("error", this.proxyErrors); + super.unpipe(); + } + constructor(src, dest, opts) { + super(src, dest, opts); + this.proxyErrors = (er) => dest.emit("error", er); + src.on("error", this.proxyErrors); + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.writeWantedLockfile = exports2.writeCurrentLockfile = exports2.writeLockfiles = exports2.getLockfileImporterId = exports2.existsWantedLockfile = void 0; - var existsWantedLockfile_1 = __importDefault(require_existsWantedLockfile()); - exports2.existsWantedLockfile = existsWantedLockfile_1.default; - var getLockfileImporterId_1 = __importDefault(require_getLockfileImporterId()); - exports2.getLockfileImporterId = getLockfileImporterId_1.default; - var write_1 = __importStar2(require_write()); - exports2.writeLockfiles = write_1.default; - Object.defineProperty(exports2, "writeCurrentLockfile", { enumerable: true, get: function() { - return write_1.writeCurrentLockfile; - } }); - Object.defineProperty(exports2, "writeWantedLockfile", { enumerable: true, get: function() { - return write_1.writeWantedLockfile; - } }); - __exportStar(require_lib52(), exports2); - __exportStar(require_read(), exports2); - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseValues.js -var require_baseValues = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseValues.js"(exports2, module2) { - var arrayMap = require_arrayMap(); - function baseValues(object, props) { - return arrayMap(props, function(key) { - return object[key]; - }); - } - module2.exports = baseValues; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/values.js -var require_values = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/values.js"(exports2, module2) { - var baseValues = require_baseValues(); - var keys = require_keys2(); - function values(object) { - return object == null ? [] : baseValues(object, keys(object)); - } - module2.exports = values; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFindIndex.js -var require_baseFindIndex = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFindIndex.js"(exports2, module2) { - function baseFindIndex(array, predicate, fromIndex, fromRight) { - var length = array.length, index = fromIndex + (fromRight ? 1 : -1); - while (fromRight ? index-- : ++index < length) { - if (predicate(array[index], index, array)) { - return index; + module2.exports = class Minipass extends Stream { + constructor(options) { + super(); + this[FLOWING] = false; + this[PAUSED] = false; + this.pipes = []; + this.buffer = []; + this[OBJECTMODE] = options && options.objectMode || false; + if (this[OBJECTMODE]) + this[ENCODING] = null; + else + this[ENCODING] = options && options.encoding || null; + if (this[ENCODING] === "buffer") + this[ENCODING] = null; + this[ASYNC] = options && !!options.async || false; + this[DECODER] = this[ENCODING] ? new SD(this[ENCODING]) : null; + this[EOF] = false; + this[EMITTED_END] = false; + this[EMITTING_END] = false; + this[CLOSED] = false; + this[EMITTED_ERROR] = null; + this.writable = true; + this.readable = true; + this[BUFFERLENGTH] = 0; + this[DESTROYED] = false; + } + get bufferLength() { + return this[BUFFERLENGTH]; + } + get encoding() { + return this[ENCODING]; + } + set encoding(enc) { + if (this[OBJECTMODE]) + throw new Error("cannot set encoding in objectMode"); + if (this[ENCODING] && enc !== this[ENCODING] && (this[DECODER] && this[DECODER].lastNeed || this[BUFFERLENGTH])) + throw new Error("cannot change encoding"); + if (this[ENCODING] !== enc) { + this[DECODER] = enc ? new SD(enc) : null; + if (this.buffer.length) + this.buffer = this.buffer.map((chunk) => this[DECODER].write(chunk)); } + this[ENCODING] = enc; } - return -1; - } - module2.exports = baseFindIndex; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNaN.js -var require_baseIsNaN = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNaN.js"(exports2, module2) { - function baseIsNaN(value) { - return value !== value; - } - module2.exports = baseIsNaN; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_strictIndexOf.js -var require_strictIndexOf = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_strictIndexOf.js"(exports2, module2) { - function strictIndexOf(array, value, fromIndex) { - var index = fromIndex - 1, length = array.length; - while (++index < length) { - if (array[index] === value) { - return index; + setEncoding(enc) { + this.encoding = enc; + } + get objectMode() { + return this[OBJECTMODE]; + } + set objectMode(om) { + this[OBJECTMODE] = this[OBJECTMODE] || !!om; + } + get ["async"]() { + return this[ASYNC]; + } + set ["async"](a) { + this[ASYNC] = this[ASYNC] || !!a; + } + write(chunk, encoding, cb) { + if (this[EOF]) + throw new Error("write after end"); + if (this[DESTROYED]) { + this.emit("error", Object.assign( + new Error("Cannot call write after a stream was destroyed"), + { code: "ERR_STREAM_DESTROYED" } + )); + return true; + } + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (!encoding) + encoding = "utf8"; + const fn2 = this[ASYNC] ? defer : (f) => f(); + if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) { + if (isArrayBufferView(chunk)) + chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); + else if (isArrayBuffer(chunk)) + chunk = Buffer.from(chunk); + else if (typeof chunk !== "string") + this.objectMode = true; + } + if (this[OBJECTMODE]) { + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (!chunk.length) { + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; + } + if (typeof chunk === "string" && // unless it is a string already ready for us to use + !(encoding === this[ENCODING] && !this[DECODER].lastNeed)) { + chunk = Buffer.from(chunk, encoding); } + if (Buffer.isBuffer(chunk) && this[ENCODING]) + chunk = this[DECODER].write(chunk); + if (this.flowing && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this.flowing) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn2(cb); + return this.flowing; } - return -1; - } - module2.exports = strictIndexOf; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIndexOf.js -var require_baseIndexOf = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIndexOf.js"(exports2, module2) { - var baseFindIndex = require_baseFindIndex(); - var baseIsNaN = require_baseIsNaN(); - var strictIndexOf = require_strictIndexOf(); - function baseIndexOf(array, value, fromIndex) { - return value === value ? strictIndexOf(array, value, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); - } - module2.exports = baseIndexOf; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_charsEndIndex.js -var require_charsEndIndex = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_charsEndIndex.js"(exports2, module2) { - var baseIndexOf = require_baseIndexOf(); - function charsEndIndex(strSymbols, chrSymbols) { - var index = strSymbols.length; - while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { + read(n) { + if (this[DESTROYED]) + return null; + if (this[BUFFERLENGTH] === 0 || n === 0 || n > this[BUFFERLENGTH]) { + this[MAYBE_EMIT_END](); + return null; + } + if (this[OBJECTMODE]) + n = null; + if (this.buffer.length > 1 && !this[OBJECTMODE]) { + if (this.encoding) + this.buffer = [this.buffer.join("")]; + else + this.buffer = [Buffer.concat(this.buffer, this[BUFFERLENGTH])]; + } + const ret = this[READ](n || null, this.buffer[0]); + this[MAYBE_EMIT_END](); + return ret; } - return index; - } - module2.exports = charsEndIndex; - } -}); - -// ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/trimEnd.js -var require_trimEnd = __commonJS({ - "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/trimEnd.js"(exports2, module2) { - var baseToString = require_baseToString(); - var castSlice = require_castSlice(); - var charsEndIndex = require_charsEndIndex(); - var stringToArray = require_stringToArray(); - var toString = require_toString(); - var trimmedEndIndex = require_trimmedEndIndex(); - function trimEnd(string, chars, guard) { - string = toString(string); - if (string && (guard || chars === void 0)) { - return string.slice(0, trimmedEndIndex(string) + 1); + [READ](n, chunk) { + if (n === chunk.length || n === null) + this[BUFFERSHIFT](); + else { + this.buffer[0] = chunk.slice(n); + chunk = chunk.slice(0, n); + this[BUFFERLENGTH] -= n; + } + this.emit("data", chunk); + if (!this.buffer.length && !this[EOF]) + this.emit("drain"); + return chunk; } - if (!string || !(chars = baseToString(chars))) { - return string; + end(chunk, encoding, cb) { + if (typeof chunk === "function") + cb = chunk, chunk = null; + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (chunk) + this.write(chunk, encoding); + if (cb) + this.once("end", cb); + this[EOF] = true; + this.writable = false; + if (this.flowing || !this[PAUSED]) + this[MAYBE_EMIT_END](); + return this; } - var strSymbols = stringToArray(string), end = charsEndIndex(strSymbols, stringToArray(chars)) + 1; - return castSlice(strSymbols, 0, end).join(""); - } - module2.exports = trimEnd; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/alignString.js -var require_alignString2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/alignString.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _isNumber2 = _interopRequireDefault(require_isNumber()); - var _isString2 = _interopRequireDefault(require_isString2()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var alignments = ["left", "right", "center"]; - var alignLeft = (subject, width) => { - return subject + " ".repeat(width); - }; - var alignRight = (subject, width) => { - return " ".repeat(width) + subject; - }; - var alignCenter = (subject, width) => { - let halfWidth; - halfWidth = width / 2; - if (width % 2 === 0) { - return " ".repeat(halfWidth) + subject + " ".repeat(halfWidth); - } else { - halfWidth = Math.floor(halfWidth); - return " ".repeat(halfWidth) + subject + " ".repeat(halfWidth + 1); + // don't let the internal resume be overwritten + [RESUME]() { + if (this[DESTROYED]) + return; + this[PAUSED] = false; + this[FLOWING] = true; + this.emit("resume"); + if (this.buffer.length) + this[FLUSH](); + else if (this[EOF]) + this[MAYBE_EMIT_END](); + else + this.emit("drain"); } - }; - var alignString = (subject, containerWidth, alignment) => { - if (!(0, _isString2.default)(subject)) { - throw new TypeError("Subject parameter value must be a string."); + resume() { + return this[RESUME](); } - if (!(0, _isNumber2.default)(containerWidth)) { - throw new TypeError("Container width parameter value must be a number."); + pause() { + this[FLOWING] = false; + this[PAUSED] = true; } - const subjectWidth = (0, _stringWidth.default)(subject); - if (subjectWidth > containerWidth) { - throw new Error("Subject parameter value width cannot be greater than the container width."); + get destroyed() { + return this[DESTROYED]; } - if (!(0, _isString2.default)(alignment)) { - throw new TypeError("Alignment parameter value must be a string."); + get flowing() { + return this[FLOWING]; } - if (!alignments.includes(alignment)) { - throw new Error("Alignment parameter value must be a known alignment parameter value (left, right, center)."); + get paused() { + return this[PAUSED]; } - if (subjectWidth === 0) { - return " ".repeat(containerWidth); + [BUFFERPUSH](chunk) { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] += 1; + else + this[BUFFERLENGTH] += chunk.length; + this.buffer.push(chunk); } - const availableWidth = containerWidth - subjectWidth; - if (alignment === "left") { - return alignLeft(subject, availableWidth); + [BUFFERSHIFT]() { + if (this.buffer.length) { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] -= 1; + else + this[BUFFERLENGTH] -= this.buffer[0].length; + } + return this.buffer.shift(); } - if (alignment === "right") { - return alignRight(subject, availableWidth); + [FLUSH](noDrain) { + do { + } while (this[FLUSHCHUNK](this[BUFFERSHIFT]())); + if (!noDrain && !this.buffer.length && !this[EOF]) + this.emit("drain"); } - return alignCenter(subject, availableWidth); - }; - var _default = alignString; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/alignTableData.js -var require_alignTableData2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/alignTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _stringWidth = _interopRequireDefault(require_string_width()); - var _alignString = _interopRequireDefault(require_alignString2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var alignTableData = (rows, config) => { - return rows.map((cells) => { - return cells.map((value, index1) => { - const column = config.columns[index1]; - if ((0, _stringWidth.default)(value) === column.width) { - return value; - } else { - return (0, _alignString.default)(value, column.width, column.alignment); - } - }); - }); - }; - var _default = alignTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/grapheme-splitter@1.0.4/node_modules/grapheme-splitter/index.js -var require_grapheme_splitter = __commonJS({ - "../../node_modules/.pnpm/grapheme-splitter@1.0.4/node_modules/grapheme-splitter/index.js"(exports2, module2) { - function GraphemeSplitter() { - var CR = 0, LF = 1, Control = 2, Extend = 3, Regional_Indicator = 4, SpacingMark = 5, L = 6, V = 7, T = 8, LV = 9, LVT = 10, Other = 11, Prepend = 12, E_Base = 13, E_Modifier = 14, ZWJ = 15, Glue_After_Zwj = 16, E_Base_GAZ = 17; - var NotBreak = 0, BreakStart = 1, Break = 2, BreakLastRegional = 3, BreakPenultimateRegional = 4; - function isSurrogate(str, pos) { - return 55296 <= str.charCodeAt(pos) && str.charCodeAt(pos) <= 56319 && 56320 <= str.charCodeAt(pos + 1) && str.charCodeAt(pos + 1) <= 57343; + [FLUSHCHUNK](chunk) { + return chunk ? (this.emit("data", chunk), this.flowing) : false; } - function codePointAt(str, idx) { - if (idx === void 0) { - idx = 0; - } - var code = str.charCodeAt(idx); - if (55296 <= code && code <= 56319 && idx < str.length - 1) { - var hi = code; - var low = str.charCodeAt(idx + 1); - if (56320 <= low && low <= 57343) { - return (hi - 55296) * 1024 + (low - 56320) + 65536; - } - return hi; - } - if (56320 <= code && code <= 57343 && idx >= 1) { - var hi = str.charCodeAt(idx - 1); - var low = code; - if (55296 <= hi && hi <= 56319) { - return (hi - 55296) * 1024 + (low - 56320) + 65536; - } - return low; + pipe(dest, opts) { + if (this[DESTROYED]) + return; + const ended = this[EMITTED_END]; + opts = opts || {}; + if (dest === proc.stdout || dest === proc.stderr) + opts.end = false; + else + opts.end = opts.end !== false; + opts.proxyErrors = !!opts.proxyErrors; + if (ended) { + if (opts.end) + dest.end(); + } else { + this.pipes.push(!opts.proxyErrors ? new Pipe(this, dest, opts) : new PipeProxyErrors(this, dest, opts)); + if (this[ASYNC]) + defer(() => this[RESUME]()); + else + this[RESUME](); } - return code; + return dest; } - function shouldBreak(start, mid, end) { - var all = [start].concat(mid).concat([end]); - var previous = all[all.length - 2]; - var next = end; - var eModifierIndex = all.lastIndexOf(E_Modifier); - if (eModifierIndex > 1 && all.slice(1, eModifierIndex).every(function(c) { - return c == Extend; - }) && [Extend, E_Base, E_Base_GAZ].indexOf(start) == -1) { - return Break; - } - var rIIndex = all.lastIndexOf(Regional_Indicator); - if (rIIndex > 0 && all.slice(1, rIIndex).every(function(c) { - return c == Regional_Indicator; - }) && [Prepend, Regional_Indicator].indexOf(previous) == -1) { - if (all.filter(function(c) { - return c == Regional_Indicator; - }).length % 2 == 1) { - return BreakLastRegional; - } else { - return BreakPenultimateRegional; - } - } - if (previous == CR && next == LF) { - return NotBreak; - } else if (previous == Control || previous == CR || previous == LF) { - if (next == E_Modifier && mid.every(function(c) { - return c == Extend; - })) { - return Break; - } else { - return BreakStart; - } - } else if (next == Control || next == CR || next == LF) { - return BreakStart; - } else if (previous == L && (next == L || next == V || next == LV || next == LVT)) { - return NotBreak; - } else if ((previous == LV || previous == V) && (next == V || next == T)) { - return NotBreak; - } else if ((previous == LVT || previous == T) && next == T) { - return NotBreak; - } else if (next == Extend || next == ZWJ) { - return NotBreak; - } else if (next == SpacingMark) { - return NotBreak; - } else if (previous == Prepend) { - return NotBreak; - } - var previousNonExtendIndex = all.indexOf(Extend) != -1 ? all.lastIndexOf(Extend) - 1 : all.length - 2; - if ([E_Base, E_Base_GAZ].indexOf(all[previousNonExtendIndex]) != -1 && all.slice(previousNonExtendIndex + 1, -1).every(function(c) { - return c == Extend; - }) && next == E_Modifier) { - return NotBreak; - } - if (previous == ZWJ && [Glue_After_Zwj, E_Base_GAZ].indexOf(next) != -1) { - return NotBreak; - } - if (mid.indexOf(Regional_Indicator) != -1) { - return Break; - } - if (previous == Regional_Indicator && next == Regional_Indicator) { - return NotBreak; + unpipe(dest) { + const p = this.pipes.find((p2) => p2.dest === dest); + if (p) { + this.pipes.splice(this.pipes.indexOf(p), 1); + p.unpipe(); } - return BreakStart; } - this.nextBreak = function(string, index) { - if (index === void 0) { - index = 0; - } - if (index < 0) { - return 0; - } - if (index >= string.length - 1) { - return string.length; - } - var prev = getGraphemeBreakProperty(codePointAt(string, index)); - var mid = []; - for (var i = index + 1; i < string.length; i++) { - if (isSurrogate(string, i - 1)) { - continue; - } - var next = getGraphemeBreakProperty(codePointAt(string, i)); - if (shouldBreak(prev, mid, next)) { - return i; - } - mid.push(next); - } - return string.length; - }; - this.splitGraphemes = function(str) { - var res = []; - var index = 0; - var brk; - while ((brk = this.nextBreak(str, index)) < str.length) { - res.push(str.slice(index, brk)); - index = brk; - } - if (index < str.length) { - res.push(str.slice(index)); - } - return res; - }; - this.iterateGraphemes = function(str) { - var index = 0; - var res = { - next: function() { - var value; - var brk; - if ((brk = this.nextBreak(str, index)) < str.length) { - value = str.slice(index, brk); - index = brk; - return { value, done: false }; - } - if (index < str.length) { - value = str.slice(index); - index = str.length; - return { value, done: false }; - } - return { value: void 0, done: true }; - }.bind(this) - }; - if (typeof Symbol !== "undefined" && Symbol.iterator) { - res[Symbol.iterator] = function() { - return res; - }; - } - return res; - }; - this.countGraphemes = function(str) { - var count = 0; - var index = 0; - var brk; - while ((brk = this.nextBreak(str, index)) < str.length) { - index = brk; - count++; - } - if (index < str.length) { - count++; - } - return count; - }; - function getGraphemeBreakProperty(code) { - if (1536 <= code && code <= 1541 || code == 1757 || code == 1807 || code == 2274 || code == 3406 || code == 69821 || 70082 <= code && code <= 70083 || code == 72250 || 72326 <= code && code <= 72329 || code == 73030) { - return Prepend; - } - if (code == 13) { - return CR; - } - if (code == 10) { - return LF; - } - if (0 <= code && code <= 9 || 11 <= code && code <= 12 || 14 <= code && code <= 31 || 127 <= code && code <= 159 || code == 173 || code == 1564 || code == 6158 || code == 8203 || 8206 <= code && code <= 8207 || code == 8232 || code == 8233 || 8234 <= code && code <= 8238 || 8288 <= code && code <= 8292 || code == 8293 || 8294 <= code && code <= 8303 || 55296 <= code && code <= 57343 || code == 65279 || 65520 <= code && code <= 65528 || 65529 <= code && code <= 65531 || 113824 <= code && code <= 113827 || 119155 <= code && code <= 119162 || code == 917504 || code == 917505 || 917506 <= code && code <= 917535 || 917632 <= code && code <= 917759 || 918e3 <= code && code <= 921599) { - return Control; - } - if (768 <= code && code <= 879 || 1155 <= code && code <= 1159 || 1160 <= code && code <= 1161 || 1425 <= code && code <= 1469 || code == 1471 || 1473 <= code && code <= 1474 || 1476 <= code && code <= 1477 || code == 1479 || 1552 <= code && code <= 1562 || 1611 <= code && code <= 1631 || code == 1648 || 1750 <= code && code <= 1756 || 1759 <= code && code <= 1764 || 1767 <= code && code <= 1768 || 1770 <= code && code <= 1773 || code == 1809 || 1840 <= code && code <= 1866 || 1958 <= code && code <= 1968 || 2027 <= code && code <= 2035 || 2070 <= code && code <= 2073 || 2075 <= code && code <= 2083 || 2085 <= code && code <= 2087 || 2089 <= code && code <= 2093 || 2137 <= code && code <= 2139 || 2260 <= code && code <= 2273 || 2275 <= code && code <= 2306 || code == 2362 || code == 2364 || 2369 <= code && code <= 2376 || code == 2381 || 2385 <= code && code <= 2391 || 2402 <= code && code <= 2403 || code == 2433 || code == 2492 || code == 2494 || 2497 <= code && code <= 2500 || code == 2509 || code == 2519 || 2530 <= code && code <= 2531 || 2561 <= code && code <= 2562 || code == 2620 || 2625 <= code && code <= 2626 || 2631 <= code && code <= 2632 || 2635 <= code && code <= 2637 || code == 2641 || 2672 <= code && code <= 2673 || code == 2677 || 2689 <= code && code <= 2690 || code == 2748 || 2753 <= code && code <= 2757 || 2759 <= code && code <= 2760 || code == 2765 || 2786 <= code && code <= 2787 || 2810 <= code && code <= 2815 || code == 2817 || code == 2876 || code == 2878 || code == 2879 || 2881 <= code && code <= 2884 || code == 2893 || code == 2902 || code == 2903 || 2914 <= code && code <= 2915 || code == 2946 || code == 3006 || code == 3008 || code == 3021 || code == 3031 || code == 3072 || 3134 <= code && code <= 3136 || 3142 <= code && code <= 3144 || 3146 <= code && code <= 3149 || 3157 <= code && code <= 3158 || 3170 <= code && code <= 3171 || code == 3201 || code == 3260 || code == 3263 || code == 3266 || code == 3270 || 3276 <= code && code <= 3277 || 3285 <= code && code <= 3286 || 3298 <= code && code <= 3299 || 3328 <= code && code <= 3329 || 3387 <= code && code <= 3388 || code == 3390 || 3393 <= code && code <= 3396 || code == 3405 || code == 3415 || 3426 <= code && code <= 3427 || code == 3530 || code == 3535 || 3538 <= code && code <= 3540 || code == 3542 || code == 3551 || code == 3633 || 3636 <= code && code <= 3642 || 3655 <= code && code <= 3662 || code == 3761 || 3764 <= code && code <= 3769 || 3771 <= code && code <= 3772 || 3784 <= code && code <= 3789 || 3864 <= code && code <= 3865 || code == 3893 || code == 3895 || code == 3897 || 3953 <= code && code <= 3966 || 3968 <= code && code <= 3972 || 3974 <= code && code <= 3975 || 3981 <= code && code <= 3991 || 3993 <= code && code <= 4028 || code == 4038 || 4141 <= code && code <= 4144 || 4146 <= code && code <= 4151 || 4153 <= code && code <= 4154 || 4157 <= code && code <= 4158 || 4184 <= code && code <= 4185 || 4190 <= code && code <= 4192 || 4209 <= code && code <= 4212 || code == 4226 || 4229 <= code && code <= 4230 || code == 4237 || code == 4253 || 4957 <= code && code <= 4959 || 5906 <= code && code <= 5908 || 5938 <= code && code <= 5940 || 5970 <= code && code <= 5971 || 6002 <= code && code <= 6003 || 6068 <= code && code <= 6069 || 6071 <= code && code <= 6077 || code == 6086 || 6089 <= code && code <= 6099 || code == 6109 || 6155 <= code && code <= 6157 || 6277 <= code && code <= 6278 || code == 6313 || 6432 <= code && code <= 6434 || 6439 <= code && code <= 6440 || code == 6450 || 6457 <= code && code <= 6459 || 6679 <= code && code <= 6680 || code == 6683 || code == 6742 || 6744 <= code && code <= 6750 || code == 6752 || code == 6754 || 6757 <= code && code <= 6764 || 6771 <= code && code <= 6780 || code == 6783 || 6832 <= code && code <= 6845 || code == 6846 || 6912 <= code && code <= 6915 || code == 6964 || 6966 <= code && code <= 6970 || code == 6972 || code == 6978 || 7019 <= code && code <= 7027 || 7040 <= code && code <= 7041 || 7074 <= code && code <= 7077 || 7080 <= code && code <= 7081 || 7083 <= code && code <= 7085 || code == 7142 || 7144 <= code && code <= 7145 || code == 7149 || 7151 <= code && code <= 7153 || 7212 <= code && code <= 7219 || 7222 <= code && code <= 7223 || 7376 <= code && code <= 7378 || 7380 <= code && code <= 7392 || 7394 <= code && code <= 7400 || code == 7405 || code == 7412 || 7416 <= code && code <= 7417 || 7616 <= code && code <= 7673 || 7675 <= code && code <= 7679 || code == 8204 || 8400 <= code && code <= 8412 || 8413 <= code && code <= 8416 || code == 8417 || 8418 <= code && code <= 8420 || 8421 <= code && code <= 8432 || 11503 <= code && code <= 11505 || code == 11647 || 11744 <= code && code <= 11775 || 12330 <= code && code <= 12333 || 12334 <= code && code <= 12335 || 12441 <= code && code <= 12442 || code == 42607 || 42608 <= code && code <= 42610 || 42612 <= code && code <= 42621 || 42654 <= code && code <= 42655 || 42736 <= code && code <= 42737 || code == 43010 || code == 43014 || code == 43019 || 43045 <= code && code <= 43046 || 43204 <= code && code <= 43205 || 43232 <= code && code <= 43249 || 43302 <= code && code <= 43309 || 43335 <= code && code <= 43345 || 43392 <= code && code <= 43394 || code == 43443 || 43446 <= code && code <= 43449 || code == 43452 || code == 43493 || 43561 <= code && code <= 43566 || 43569 <= code && code <= 43570 || 43573 <= code && code <= 43574 || code == 43587 || code == 43596 || code == 43644 || code == 43696 || 43698 <= code && code <= 43700 || 43703 <= code && code <= 43704 || 43710 <= code && code <= 43711 || code == 43713 || 43756 <= code && code <= 43757 || code == 43766 || code == 44005 || code == 44008 || code == 44013 || code == 64286 || 65024 <= code && code <= 65039 || 65056 <= code && code <= 65071 || 65438 <= code && code <= 65439 || code == 66045 || code == 66272 || 66422 <= code && code <= 66426 || 68097 <= code && code <= 68099 || 68101 <= code && code <= 68102 || 68108 <= code && code <= 68111 || 68152 <= code && code <= 68154 || code == 68159 || 68325 <= code && code <= 68326 || code == 69633 || 69688 <= code && code <= 69702 || 69759 <= code && code <= 69761 || 69811 <= code && code <= 69814 || 69817 <= code && code <= 69818 || 69888 <= code && code <= 69890 || 69927 <= code && code <= 69931 || 69933 <= code && code <= 69940 || code == 70003 || 70016 <= code && code <= 70017 || 70070 <= code && code <= 70078 || 70090 <= code && code <= 70092 || 70191 <= code && code <= 70193 || code == 70196 || 70198 <= code && code <= 70199 || code == 70206 || code == 70367 || 70371 <= code && code <= 70378 || 70400 <= code && code <= 70401 || code == 70460 || code == 70462 || code == 70464 || code == 70487 || 70502 <= code && code <= 70508 || 70512 <= code && code <= 70516 || 70712 <= code && code <= 70719 || 70722 <= code && code <= 70724 || code == 70726 || code == 70832 || 70835 <= code && code <= 70840 || code == 70842 || code == 70845 || 70847 <= code && code <= 70848 || 70850 <= code && code <= 70851 || code == 71087 || 71090 <= code && code <= 71093 || 71100 <= code && code <= 71101 || 71103 <= code && code <= 71104 || 71132 <= code && code <= 71133 || 71219 <= code && code <= 71226 || code == 71229 || 71231 <= code && code <= 71232 || code == 71339 || code == 71341 || 71344 <= code && code <= 71349 || code == 71351 || 71453 <= code && code <= 71455 || 71458 <= code && code <= 71461 || 71463 <= code && code <= 71467 || 72193 <= code && code <= 72198 || 72201 <= code && code <= 72202 || 72243 <= code && code <= 72248 || 72251 <= code && code <= 72254 || code == 72263 || 72273 <= code && code <= 72278 || 72281 <= code && code <= 72283 || 72330 <= code && code <= 72342 || 72344 <= code && code <= 72345 || 72752 <= code && code <= 72758 || 72760 <= code && code <= 72765 || code == 72767 || 72850 <= code && code <= 72871 || 72874 <= code && code <= 72880 || 72882 <= code && code <= 72883 || 72885 <= code && code <= 72886 || 73009 <= code && code <= 73014 || code == 73018 || 73020 <= code && code <= 73021 || 73023 <= code && code <= 73029 || code == 73031 || 92912 <= code && code <= 92916 || 92976 <= code && code <= 92982 || 94095 <= code && code <= 94098 || 113821 <= code && code <= 113822 || code == 119141 || 119143 <= code && code <= 119145 || 119150 <= code && code <= 119154 || 119163 <= code && code <= 119170 || 119173 <= code && code <= 119179 || 119210 <= code && code <= 119213 || 119362 <= code && code <= 119364 || 121344 <= code && code <= 121398 || 121403 <= code && code <= 121452 || code == 121461 || code == 121476 || 121499 <= code && code <= 121503 || 121505 <= code && code <= 121519 || 122880 <= code && code <= 122886 || 122888 <= code && code <= 122904 || 122907 <= code && code <= 122913 || 122915 <= code && code <= 122916 || 122918 <= code && code <= 122922 || 125136 <= code && code <= 125142 || 125252 <= code && code <= 125258 || 917536 <= code && code <= 917631 || 917760 <= code && code <= 917999) { - return Extend; - } - if (127462 <= code && code <= 127487) { - return Regional_Indicator; - } - if (code == 2307 || code == 2363 || 2366 <= code && code <= 2368 || 2377 <= code && code <= 2380 || 2382 <= code && code <= 2383 || 2434 <= code && code <= 2435 || 2495 <= code && code <= 2496 || 2503 <= code && code <= 2504 || 2507 <= code && code <= 2508 || code == 2563 || 2622 <= code && code <= 2624 || code == 2691 || 2750 <= code && code <= 2752 || code == 2761 || 2763 <= code && code <= 2764 || 2818 <= code && code <= 2819 || code == 2880 || 2887 <= code && code <= 2888 || 2891 <= code && code <= 2892 || code == 3007 || 3009 <= code && code <= 3010 || 3014 <= code && code <= 3016 || 3018 <= code && code <= 3020 || 3073 <= code && code <= 3075 || 3137 <= code && code <= 3140 || 3202 <= code && code <= 3203 || code == 3262 || 3264 <= code && code <= 3265 || 3267 <= code && code <= 3268 || 3271 <= code && code <= 3272 || 3274 <= code && code <= 3275 || 3330 <= code && code <= 3331 || 3391 <= code && code <= 3392 || 3398 <= code && code <= 3400 || 3402 <= code && code <= 3404 || 3458 <= code && code <= 3459 || 3536 <= code && code <= 3537 || 3544 <= code && code <= 3550 || 3570 <= code && code <= 3571 || code == 3635 || code == 3763 || 3902 <= code && code <= 3903 || code == 3967 || code == 4145 || 4155 <= code && code <= 4156 || 4182 <= code && code <= 4183 || code == 4228 || code == 6070 || 6078 <= code && code <= 6085 || 6087 <= code && code <= 6088 || 6435 <= code && code <= 6438 || 6441 <= code && code <= 6443 || 6448 <= code && code <= 6449 || 6451 <= code && code <= 6456 || 6681 <= code && code <= 6682 || code == 6741 || code == 6743 || 6765 <= code && code <= 6770 || code == 6916 || code == 6965 || code == 6971 || 6973 <= code && code <= 6977 || 6979 <= code && code <= 6980 || code == 7042 || code == 7073 || 7078 <= code && code <= 7079 || code == 7082 || code == 7143 || 7146 <= code && code <= 7148 || code == 7150 || 7154 <= code && code <= 7155 || 7204 <= code && code <= 7211 || 7220 <= code && code <= 7221 || code == 7393 || 7410 <= code && code <= 7411 || code == 7415 || 43043 <= code && code <= 43044 || code == 43047 || 43136 <= code && code <= 43137 || 43188 <= code && code <= 43203 || 43346 <= code && code <= 43347 || code == 43395 || 43444 <= code && code <= 43445 || 43450 <= code && code <= 43451 || 43453 <= code && code <= 43456 || 43567 <= code && code <= 43568 || 43571 <= code && code <= 43572 || code == 43597 || code == 43755 || 43758 <= code && code <= 43759 || code == 43765 || 44003 <= code && code <= 44004 || 44006 <= code && code <= 44007 || 44009 <= code && code <= 44010 || code == 44012 || code == 69632 || code == 69634 || code == 69762 || 69808 <= code && code <= 69810 || 69815 <= code && code <= 69816 || code == 69932 || code == 70018 || 70067 <= code && code <= 70069 || 70079 <= code && code <= 70080 || 70188 <= code && code <= 70190 || 70194 <= code && code <= 70195 || code == 70197 || 70368 <= code && code <= 70370 || 70402 <= code && code <= 70403 || code == 70463 || 70465 <= code && code <= 70468 || 70471 <= code && code <= 70472 || 70475 <= code && code <= 70477 || 70498 <= code && code <= 70499 || 70709 <= code && code <= 70711 || 70720 <= code && code <= 70721 || code == 70725 || 70833 <= code && code <= 70834 || code == 70841 || 70843 <= code && code <= 70844 || code == 70846 || code == 70849 || 71088 <= code && code <= 71089 || 71096 <= code && code <= 71099 || code == 71102 || 71216 <= code && code <= 71218 || 71227 <= code && code <= 71228 || code == 71230 || code == 71340 || 71342 <= code && code <= 71343 || code == 71350 || 71456 <= code && code <= 71457 || code == 71462 || 72199 <= code && code <= 72200 || code == 72249 || 72279 <= code && code <= 72280 || code == 72343 || code == 72751 || code == 72766 || code == 72873 || code == 72881 || code == 72884 || 94033 <= code && code <= 94078 || code == 119142 || code == 119149) { - return SpacingMark; - } - if (4352 <= code && code <= 4447 || 43360 <= code && code <= 43388) { - return L; - } - if (4448 <= code && code <= 4519 || 55216 <= code && code <= 55238) { - return V; - } - if (4520 <= code && code <= 4607 || 55243 <= code && code <= 55291) { - return T; - } - if (code == 44032 || code == 44060 || code == 44088 || code == 44116 || code == 44144 || code == 44172 || code == 44200 || code == 44228 || code == 44256 || code == 44284 || code == 44312 || code == 44340 || code == 44368 || code == 44396 || code == 44424 || code == 44452 || code == 44480 || code == 44508 || code == 44536 || code == 44564 || code == 44592 || code == 44620 || code == 44648 || code == 44676 || code == 44704 || code == 44732 || code == 44760 || code == 44788 || code == 44816 || code == 44844 || code == 44872 || code == 44900 || code == 44928 || code == 44956 || code == 44984 || code == 45012 || code == 45040 || code == 45068 || code == 45096 || code == 45124 || code == 45152 || code == 45180 || code == 45208 || code == 45236 || code == 45264 || code == 45292 || code == 45320 || code == 45348 || code == 45376 || code == 45404 || code == 45432 || code == 45460 || code == 45488 || code == 45516 || code == 45544 || code == 45572 || code == 45600 || code == 45628 || code == 45656 || code == 45684 || code == 45712 || code == 45740 || code == 45768 || code == 45796 || code == 45824 || code == 45852 || code == 45880 || code == 45908 || code == 45936 || code == 45964 || code == 45992 || code == 46020 || code == 46048 || code == 46076 || code == 46104 || code == 46132 || code == 46160 || code == 46188 || code == 46216 || code == 46244 || code == 46272 || code == 46300 || code == 46328 || code == 46356 || code == 46384 || code == 46412 || code == 46440 || code == 46468 || code == 46496 || code == 46524 || code == 46552 || code == 46580 || code == 46608 || code == 46636 || code == 46664 || code == 46692 || code == 46720 || code == 46748 || code == 46776 || code == 46804 || code == 46832 || code == 46860 || code == 46888 || code == 46916 || code == 46944 || code == 46972 || code == 47e3 || code == 47028 || code == 47056 || code == 47084 || code == 47112 || code == 47140 || code == 47168 || code == 47196 || code == 47224 || code == 47252 || code == 47280 || code == 47308 || code == 47336 || code == 47364 || code == 47392 || code == 47420 || code == 47448 || code == 47476 || code == 47504 || code == 47532 || code == 47560 || code == 47588 || code == 47616 || code == 47644 || code == 47672 || code == 47700 || code == 47728 || code == 47756 || code == 47784 || code == 47812 || code == 47840 || code == 47868 || code == 47896 || code == 47924 || code == 47952 || code == 47980 || code == 48008 || code == 48036 || code == 48064 || code == 48092 || code == 48120 || code == 48148 || code == 48176 || code == 48204 || code == 48232 || code == 48260 || code == 48288 || code == 48316 || code == 48344 || code == 48372 || code == 48400 || code == 48428 || code == 48456 || code == 48484 || code == 48512 || code == 48540 || code == 48568 || code == 48596 || code == 48624 || code == 48652 || code == 48680 || code == 48708 || code == 48736 || code == 48764 || code == 48792 || code == 48820 || code == 48848 || code == 48876 || code == 48904 || code == 48932 || code == 48960 || code == 48988 || code == 49016 || code == 49044 || code == 49072 || code == 49100 || code == 49128 || code == 49156 || code == 49184 || code == 49212 || code == 49240 || code == 49268 || code == 49296 || code == 49324 || code == 49352 || code == 49380 || code == 49408 || code == 49436 || code == 49464 || code == 49492 || code == 49520 || code == 49548 || code == 49576 || code == 49604 || code == 49632 || code == 49660 || code == 49688 || code == 49716 || code == 49744 || code == 49772 || code == 49800 || code == 49828 || code == 49856 || code == 49884 || code == 49912 || code == 49940 || code == 49968 || code == 49996 || code == 50024 || code == 50052 || code == 50080 || code == 50108 || code == 50136 || code == 50164 || code == 50192 || code == 50220 || code == 50248 || code == 50276 || code == 50304 || code == 50332 || code == 50360 || code == 50388 || code == 50416 || code == 50444 || code == 50472 || code == 50500 || code == 50528 || code == 50556 || code == 50584 || code == 50612 || code == 50640 || code == 50668 || code == 50696 || code == 50724 || code == 50752 || code == 50780 || code == 50808 || code == 50836 || code == 50864 || code == 50892 || code == 50920 || code == 50948 || code == 50976 || code == 51004 || code == 51032 || code == 51060 || code == 51088 || code == 51116 || code == 51144 || code == 51172 || code == 51200 || code == 51228 || code == 51256 || code == 51284 || code == 51312 || code == 51340 || code == 51368 || code == 51396 || code == 51424 || code == 51452 || code == 51480 || code == 51508 || code == 51536 || code == 51564 || code == 51592 || code == 51620 || code == 51648 || code == 51676 || code == 51704 || code == 51732 || code == 51760 || code == 51788 || code == 51816 || code == 51844 || code == 51872 || code == 51900 || code == 51928 || code == 51956 || code == 51984 || code == 52012 || code == 52040 || code == 52068 || code == 52096 || code == 52124 || code == 52152 || code == 52180 || code == 52208 || code == 52236 || code == 52264 || code == 52292 || code == 52320 || code == 52348 || code == 52376 || code == 52404 || code == 52432 || code == 52460 || code == 52488 || code == 52516 || code == 52544 || code == 52572 || code == 52600 || code == 52628 || code == 52656 || code == 52684 || code == 52712 || code == 52740 || code == 52768 || code == 52796 || code == 52824 || code == 52852 || code == 52880 || code == 52908 || code == 52936 || code == 52964 || code == 52992 || code == 53020 || code == 53048 || code == 53076 || code == 53104 || code == 53132 || code == 53160 || code == 53188 || code == 53216 || code == 53244 || code == 53272 || code == 53300 || code == 53328 || code == 53356 || code == 53384 || code == 53412 || code == 53440 || code == 53468 || code == 53496 || code == 53524 || code == 53552 || code == 53580 || code == 53608 || code == 53636 || code == 53664 || code == 53692 || code == 53720 || code == 53748 || code == 53776 || code == 53804 || code == 53832 || code == 53860 || code == 53888 || code == 53916 || code == 53944 || code == 53972 || code == 54e3 || code == 54028 || code == 54056 || code == 54084 || code == 54112 || code == 54140 || code == 54168 || code == 54196 || code == 54224 || code == 54252 || code == 54280 || code == 54308 || code == 54336 || code == 54364 || code == 54392 || code == 54420 || code == 54448 || code == 54476 || code == 54504 || code == 54532 || code == 54560 || code == 54588 || code == 54616 || code == 54644 || code == 54672 || code == 54700 || code == 54728 || code == 54756 || code == 54784 || code == 54812 || code == 54840 || code == 54868 || code == 54896 || code == 54924 || code == 54952 || code == 54980 || code == 55008 || code == 55036 || code == 55064 || code == 55092 || code == 55120 || code == 55148 || code == 55176) { - return LV; - } - if (44033 <= code && code <= 44059 || 44061 <= code && code <= 44087 || 44089 <= code && code <= 44115 || 44117 <= code && code <= 44143 || 44145 <= code && code <= 44171 || 44173 <= code && code <= 44199 || 44201 <= code && code <= 44227 || 44229 <= code && code <= 44255 || 44257 <= code && code <= 44283 || 44285 <= code && code <= 44311 || 44313 <= code && code <= 44339 || 44341 <= code && code <= 44367 || 44369 <= code && code <= 44395 || 44397 <= code && code <= 44423 || 44425 <= code && code <= 44451 || 44453 <= code && code <= 44479 || 44481 <= code && code <= 44507 || 44509 <= code && code <= 44535 || 44537 <= code && code <= 44563 || 44565 <= code && code <= 44591 || 44593 <= code && code <= 44619 || 44621 <= code && code <= 44647 || 44649 <= code && code <= 44675 || 44677 <= code && code <= 44703 || 44705 <= code && code <= 44731 || 44733 <= code && code <= 44759 || 44761 <= code && code <= 44787 || 44789 <= code && code <= 44815 || 44817 <= code && code <= 44843 || 44845 <= code && code <= 44871 || 44873 <= code && code <= 44899 || 44901 <= code && code <= 44927 || 44929 <= code && code <= 44955 || 44957 <= code && code <= 44983 || 44985 <= code && code <= 45011 || 45013 <= code && code <= 45039 || 45041 <= code && code <= 45067 || 45069 <= code && code <= 45095 || 45097 <= code && code <= 45123 || 45125 <= code && code <= 45151 || 45153 <= code && code <= 45179 || 45181 <= code && code <= 45207 || 45209 <= code && code <= 45235 || 45237 <= code && code <= 45263 || 45265 <= code && code <= 45291 || 45293 <= code && code <= 45319 || 45321 <= code && code <= 45347 || 45349 <= code && code <= 45375 || 45377 <= code && code <= 45403 || 45405 <= code && code <= 45431 || 45433 <= code && code <= 45459 || 45461 <= code && code <= 45487 || 45489 <= code && code <= 45515 || 45517 <= code && code <= 45543 || 45545 <= code && code <= 45571 || 45573 <= code && code <= 45599 || 45601 <= code && code <= 45627 || 45629 <= code && code <= 45655 || 45657 <= code && code <= 45683 || 45685 <= code && code <= 45711 || 45713 <= code && code <= 45739 || 45741 <= code && code <= 45767 || 45769 <= code && code <= 45795 || 45797 <= code && code <= 45823 || 45825 <= code && code <= 45851 || 45853 <= code && code <= 45879 || 45881 <= code && code <= 45907 || 45909 <= code && code <= 45935 || 45937 <= code && code <= 45963 || 45965 <= code && code <= 45991 || 45993 <= code && code <= 46019 || 46021 <= code && code <= 46047 || 46049 <= code && code <= 46075 || 46077 <= code && code <= 46103 || 46105 <= code && code <= 46131 || 46133 <= code && code <= 46159 || 46161 <= code && code <= 46187 || 46189 <= code && code <= 46215 || 46217 <= code && code <= 46243 || 46245 <= code && code <= 46271 || 46273 <= code && code <= 46299 || 46301 <= code && code <= 46327 || 46329 <= code && code <= 46355 || 46357 <= code && code <= 46383 || 46385 <= code && code <= 46411 || 46413 <= code && code <= 46439 || 46441 <= code && code <= 46467 || 46469 <= code && code <= 46495 || 46497 <= code && code <= 46523 || 46525 <= code && code <= 46551 || 46553 <= code && code <= 46579 || 46581 <= code && code <= 46607 || 46609 <= code && code <= 46635 || 46637 <= code && code <= 46663 || 46665 <= code && code <= 46691 || 46693 <= code && code <= 46719 || 46721 <= code && code <= 46747 || 46749 <= code && code <= 46775 || 46777 <= code && code <= 46803 || 46805 <= code && code <= 46831 || 46833 <= code && code <= 46859 || 46861 <= code && code <= 46887 || 46889 <= code && code <= 46915 || 46917 <= code && code <= 46943 || 46945 <= code && code <= 46971 || 46973 <= code && code <= 46999 || 47001 <= code && code <= 47027 || 47029 <= code && code <= 47055 || 47057 <= code && code <= 47083 || 47085 <= code && code <= 47111 || 47113 <= code && code <= 47139 || 47141 <= code && code <= 47167 || 47169 <= code && code <= 47195 || 47197 <= code && code <= 47223 || 47225 <= code && code <= 47251 || 47253 <= code && code <= 47279 || 47281 <= code && code <= 47307 || 47309 <= code && code <= 47335 || 47337 <= code && code <= 47363 || 47365 <= code && code <= 47391 || 47393 <= code && code <= 47419 || 47421 <= code && code <= 47447 || 47449 <= code && code <= 47475 || 47477 <= code && code <= 47503 || 47505 <= code && code <= 47531 || 47533 <= code && code <= 47559 || 47561 <= code && code <= 47587 || 47589 <= code && code <= 47615 || 47617 <= code && code <= 47643 || 47645 <= code && code <= 47671 || 47673 <= code && code <= 47699 || 47701 <= code && code <= 47727 || 47729 <= code && code <= 47755 || 47757 <= code && code <= 47783 || 47785 <= code && code <= 47811 || 47813 <= code && code <= 47839 || 47841 <= code && code <= 47867 || 47869 <= code && code <= 47895 || 47897 <= code && code <= 47923 || 47925 <= code && code <= 47951 || 47953 <= code && code <= 47979 || 47981 <= code && code <= 48007 || 48009 <= code && code <= 48035 || 48037 <= code && code <= 48063 || 48065 <= code && code <= 48091 || 48093 <= code && code <= 48119 || 48121 <= code && code <= 48147 || 48149 <= code && code <= 48175 || 48177 <= code && code <= 48203 || 48205 <= code && code <= 48231 || 48233 <= code && code <= 48259 || 48261 <= code && code <= 48287 || 48289 <= code && code <= 48315 || 48317 <= code && code <= 48343 || 48345 <= code && code <= 48371 || 48373 <= code && code <= 48399 || 48401 <= code && code <= 48427 || 48429 <= code && code <= 48455 || 48457 <= code && code <= 48483 || 48485 <= code && code <= 48511 || 48513 <= code && code <= 48539 || 48541 <= code && code <= 48567 || 48569 <= code && code <= 48595 || 48597 <= code && code <= 48623 || 48625 <= code && code <= 48651 || 48653 <= code && code <= 48679 || 48681 <= code && code <= 48707 || 48709 <= code && code <= 48735 || 48737 <= code && code <= 48763 || 48765 <= code && code <= 48791 || 48793 <= code && code <= 48819 || 48821 <= code && code <= 48847 || 48849 <= code && code <= 48875 || 48877 <= code && code <= 48903 || 48905 <= code && code <= 48931 || 48933 <= code && code <= 48959 || 48961 <= code && code <= 48987 || 48989 <= code && code <= 49015 || 49017 <= code && code <= 49043 || 49045 <= code && code <= 49071 || 49073 <= code && code <= 49099 || 49101 <= code && code <= 49127 || 49129 <= code && code <= 49155 || 49157 <= code && code <= 49183 || 49185 <= code && code <= 49211 || 49213 <= code && code <= 49239 || 49241 <= code && code <= 49267 || 49269 <= code && code <= 49295 || 49297 <= code && code <= 49323 || 49325 <= code && code <= 49351 || 49353 <= code && code <= 49379 || 49381 <= code && code <= 49407 || 49409 <= code && code <= 49435 || 49437 <= code && code <= 49463 || 49465 <= code && code <= 49491 || 49493 <= code && code <= 49519 || 49521 <= code && code <= 49547 || 49549 <= code && code <= 49575 || 49577 <= code && code <= 49603 || 49605 <= code && code <= 49631 || 49633 <= code && code <= 49659 || 49661 <= code && code <= 49687 || 49689 <= code && code <= 49715 || 49717 <= code && code <= 49743 || 49745 <= code && code <= 49771 || 49773 <= code && code <= 49799 || 49801 <= code && code <= 49827 || 49829 <= code && code <= 49855 || 49857 <= code && code <= 49883 || 49885 <= code && code <= 49911 || 49913 <= code && code <= 49939 || 49941 <= code && code <= 49967 || 49969 <= code && code <= 49995 || 49997 <= code && code <= 50023 || 50025 <= code && code <= 50051 || 50053 <= code && code <= 50079 || 50081 <= code && code <= 50107 || 50109 <= code && code <= 50135 || 50137 <= code && code <= 50163 || 50165 <= code && code <= 50191 || 50193 <= code && code <= 50219 || 50221 <= code && code <= 50247 || 50249 <= code && code <= 50275 || 50277 <= code && code <= 50303 || 50305 <= code && code <= 50331 || 50333 <= code && code <= 50359 || 50361 <= code && code <= 50387 || 50389 <= code && code <= 50415 || 50417 <= code && code <= 50443 || 50445 <= code && code <= 50471 || 50473 <= code && code <= 50499 || 50501 <= code && code <= 50527 || 50529 <= code && code <= 50555 || 50557 <= code && code <= 50583 || 50585 <= code && code <= 50611 || 50613 <= code && code <= 50639 || 50641 <= code && code <= 50667 || 50669 <= code && code <= 50695 || 50697 <= code && code <= 50723 || 50725 <= code && code <= 50751 || 50753 <= code && code <= 50779 || 50781 <= code && code <= 50807 || 50809 <= code && code <= 50835 || 50837 <= code && code <= 50863 || 50865 <= code && code <= 50891 || 50893 <= code && code <= 50919 || 50921 <= code && code <= 50947 || 50949 <= code && code <= 50975 || 50977 <= code && code <= 51003 || 51005 <= code && code <= 51031 || 51033 <= code && code <= 51059 || 51061 <= code && code <= 51087 || 51089 <= code && code <= 51115 || 51117 <= code && code <= 51143 || 51145 <= code && code <= 51171 || 51173 <= code && code <= 51199 || 51201 <= code && code <= 51227 || 51229 <= code && code <= 51255 || 51257 <= code && code <= 51283 || 51285 <= code && code <= 51311 || 51313 <= code && code <= 51339 || 51341 <= code && code <= 51367 || 51369 <= code && code <= 51395 || 51397 <= code && code <= 51423 || 51425 <= code && code <= 51451 || 51453 <= code && code <= 51479 || 51481 <= code && code <= 51507 || 51509 <= code && code <= 51535 || 51537 <= code && code <= 51563 || 51565 <= code && code <= 51591 || 51593 <= code && code <= 51619 || 51621 <= code && code <= 51647 || 51649 <= code && code <= 51675 || 51677 <= code && code <= 51703 || 51705 <= code && code <= 51731 || 51733 <= code && code <= 51759 || 51761 <= code && code <= 51787 || 51789 <= code && code <= 51815 || 51817 <= code && code <= 51843 || 51845 <= code && code <= 51871 || 51873 <= code && code <= 51899 || 51901 <= code && code <= 51927 || 51929 <= code && code <= 51955 || 51957 <= code && code <= 51983 || 51985 <= code && code <= 52011 || 52013 <= code && code <= 52039 || 52041 <= code && code <= 52067 || 52069 <= code && code <= 52095 || 52097 <= code && code <= 52123 || 52125 <= code && code <= 52151 || 52153 <= code && code <= 52179 || 52181 <= code && code <= 52207 || 52209 <= code && code <= 52235 || 52237 <= code && code <= 52263 || 52265 <= code && code <= 52291 || 52293 <= code && code <= 52319 || 52321 <= code && code <= 52347 || 52349 <= code && code <= 52375 || 52377 <= code && code <= 52403 || 52405 <= code && code <= 52431 || 52433 <= code && code <= 52459 || 52461 <= code && code <= 52487 || 52489 <= code && code <= 52515 || 52517 <= code && code <= 52543 || 52545 <= code && code <= 52571 || 52573 <= code && code <= 52599 || 52601 <= code && code <= 52627 || 52629 <= code && code <= 52655 || 52657 <= code && code <= 52683 || 52685 <= code && code <= 52711 || 52713 <= code && code <= 52739 || 52741 <= code && code <= 52767 || 52769 <= code && code <= 52795 || 52797 <= code && code <= 52823 || 52825 <= code && code <= 52851 || 52853 <= code && code <= 52879 || 52881 <= code && code <= 52907 || 52909 <= code && code <= 52935 || 52937 <= code && code <= 52963 || 52965 <= code && code <= 52991 || 52993 <= code && code <= 53019 || 53021 <= code && code <= 53047 || 53049 <= code && code <= 53075 || 53077 <= code && code <= 53103 || 53105 <= code && code <= 53131 || 53133 <= code && code <= 53159 || 53161 <= code && code <= 53187 || 53189 <= code && code <= 53215 || 53217 <= code && code <= 53243 || 53245 <= code && code <= 53271 || 53273 <= code && code <= 53299 || 53301 <= code && code <= 53327 || 53329 <= code && code <= 53355 || 53357 <= code && code <= 53383 || 53385 <= code && code <= 53411 || 53413 <= code && code <= 53439 || 53441 <= code && code <= 53467 || 53469 <= code && code <= 53495 || 53497 <= code && code <= 53523 || 53525 <= code && code <= 53551 || 53553 <= code && code <= 53579 || 53581 <= code && code <= 53607 || 53609 <= code && code <= 53635 || 53637 <= code && code <= 53663 || 53665 <= code && code <= 53691 || 53693 <= code && code <= 53719 || 53721 <= code && code <= 53747 || 53749 <= code && code <= 53775 || 53777 <= code && code <= 53803 || 53805 <= code && code <= 53831 || 53833 <= code && code <= 53859 || 53861 <= code && code <= 53887 || 53889 <= code && code <= 53915 || 53917 <= code && code <= 53943 || 53945 <= code && code <= 53971 || 53973 <= code && code <= 53999 || 54001 <= code && code <= 54027 || 54029 <= code && code <= 54055 || 54057 <= code && code <= 54083 || 54085 <= code && code <= 54111 || 54113 <= code && code <= 54139 || 54141 <= code && code <= 54167 || 54169 <= code && code <= 54195 || 54197 <= code && code <= 54223 || 54225 <= code && code <= 54251 || 54253 <= code && code <= 54279 || 54281 <= code && code <= 54307 || 54309 <= code && code <= 54335 || 54337 <= code && code <= 54363 || 54365 <= code && code <= 54391 || 54393 <= code && code <= 54419 || 54421 <= code && code <= 54447 || 54449 <= code && code <= 54475 || 54477 <= code && code <= 54503 || 54505 <= code && code <= 54531 || 54533 <= code && code <= 54559 || 54561 <= code && code <= 54587 || 54589 <= code && code <= 54615 || 54617 <= code && code <= 54643 || 54645 <= code && code <= 54671 || 54673 <= code && code <= 54699 || 54701 <= code && code <= 54727 || 54729 <= code && code <= 54755 || 54757 <= code && code <= 54783 || 54785 <= code && code <= 54811 || 54813 <= code && code <= 54839 || 54841 <= code && code <= 54867 || 54869 <= code && code <= 54895 || 54897 <= code && code <= 54923 || 54925 <= code && code <= 54951 || 54953 <= code && code <= 54979 || 54981 <= code && code <= 55007 || 55009 <= code && code <= 55035 || 55037 <= code && code <= 55063 || 55065 <= code && code <= 55091 || 55093 <= code && code <= 55119 || 55121 <= code && code <= 55147 || 55149 <= code && code <= 55175 || 55177 <= code && code <= 55203) { - return LVT; - } - if (code == 9757 || code == 9977 || 9994 <= code && code <= 9997 || code == 127877 || 127938 <= code && code <= 127940 || code == 127943 || 127946 <= code && code <= 127948 || 128066 <= code && code <= 128067 || 128070 <= code && code <= 128080 || code == 128110 || 128112 <= code && code <= 128120 || code == 128124 || 128129 <= code && code <= 128131 || 128133 <= code && code <= 128135 || code == 128170 || 128372 <= code && code <= 128373 || code == 128378 || code == 128400 || 128405 <= code && code <= 128406 || 128581 <= code && code <= 128583 || 128587 <= code && code <= 128591 || code == 128675 || 128692 <= code && code <= 128694 || code == 128704 || code == 128716 || 129304 <= code && code <= 129308 || 129310 <= code && code <= 129311 || code == 129318 || 129328 <= code && code <= 129337 || 129341 <= code && code <= 129342 || 129489 <= code && code <= 129501) { - return E_Base; - } - if (127995 <= code && code <= 127999) { - return E_Modifier; - } - if (code == 8205) { - return ZWJ; + addListener(ev, fn2) { + return this.on(ev, fn2); + } + on(ev, fn2) { + const ret = super.on(ev, fn2); + if (ev === "data" && !this.pipes.length && !this.flowing) + this[RESUME](); + else if (ev === "readable" && this[BUFFERLENGTH] !== 0) + super.emit("readable"); + else if (isEndish(ev) && this[EMITTED_END]) { + super.emit(ev); + this.removeAllListeners(ev); + } else if (ev === "error" && this[EMITTED_ERROR]) { + if (this[ASYNC]) + defer(() => fn2.call(this, this[EMITTED_ERROR])); + else + fn2.call(this, this[EMITTED_ERROR]); } - if (code == 9792 || code == 9794 || 9877 <= code && code <= 9878 || code == 9992 || code == 10084 || code == 127752 || code == 127806 || code == 127859 || code == 127891 || code == 127908 || code == 127912 || code == 127979 || code == 127981 || code == 128139 || 128187 <= code && code <= 128188 || code == 128295 || code == 128300 || code == 128488 || code == 128640 || code == 128658) { - return Glue_After_Zwj; + return ret; + } + get emittedEnd() { + return this[EMITTED_END]; + } + [MAYBE_EMIT_END]() { + if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this.buffer.length === 0 && this[EOF]) { + this[EMITTING_END] = true; + this.emit("end"); + this.emit("prefinish"); + this.emit("finish"); + if (this[CLOSED]) + this.emit("close"); + this[EMITTING_END] = false; } - if (128102 <= code && code <= 128105) { - return E_Base_GAZ; + } + emit(ev, data, ...extra) { + if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) + return; + else if (ev === "data") { + return !data ? false : this[ASYNC] ? defer(() => this[EMITDATA](data)) : this[EMITDATA](data); + } else if (ev === "end") { + return this[EMITEND](); + } else if (ev === "close") { + this[CLOSED] = true; + if (!this[EMITTED_END] && !this[DESTROYED]) + return; + const ret2 = super.emit("close"); + this.removeAllListeners("close"); + return ret2; + } else if (ev === "error") { + this[EMITTED_ERROR] = data; + const ret2 = super.emit("error", data); + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "resume") { + const ret2 = super.emit("resume"); + this[MAYBE_EMIT_END](); + return ret2; + } else if (ev === "finish" || ev === "prefinish") { + const ret2 = super.emit(ev); + this.removeAllListeners(ev); + return ret2; + } + const ret = super.emit(ev, data, ...extra); + this[MAYBE_EMIT_END](); + return ret; + } + [EMITDATA](data) { + for (const p of this.pipes) { + if (p.dest.write(data) === false) + this.pause(); } - return Other; + const ret = super.emit("data", data); + this[MAYBE_EMIT_END](); + return ret; } - return this; - } - if (typeof module2 != "undefined" && module2.exports) { - module2.exports = GraphemeSplitter; - } - } -}); - -// ../../node_modules/.pnpm/@arcanis+slice-ansi@1.0.2/node_modules/@arcanis/slice-ansi/index.js -var require_slice_ansi2 = __commonJS({ - "../../node_modules/.pnpm/@arcanis+slice-ansi@1.0.2/node_modules/@arcanis/slice-ansi/index.js"(exports2, module2) { - var GraphemeSplitter = require_grapheme_splitter(); - var ANSI_SEQUENCE = /^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/; - var splitter = new GraphemeSplitter(); - module2.exports = (orig, at = 0, until = orig.length) => { - if (at < 0 || until < 0) - throw new RangeError(`Negative indices aren't supported by this implementation`); - const length = until - at; - let output = ``; - let skipped = 0; - let visible = 0; - while (orig.length > 0) { - const lookup = orig.match(ANSI_SEQUENCE) || [orig, orig, void 0]; - let graphemes = splitter.splitGraphemes(lookup[1]); - const skipping = Math.min(at - skipped, graphemes.length); - graphemes = graphemes.slice(skipping); - const displaying = Math.min(length - visible, graphemes.length); - output += graphemes.slice(0, displaying).join(``); - skipped += skipping; - visible += displaying; - if (typeof lookup[2] !== `undefined`) - output += lookup[2]; - orig = orig.slice(lookup[0].length); + [EMITEND]() { + if (this[EMITTED_END]) + return; + this[EMITTED_END] = true; + this.readable = false; + if (this[ASYNC]) + defer(() => this[EMITEND2]()); + else + this[EMITEND2](); } - return output; - }; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapString.js -var require_wrapString2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapString.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _sliceAnsi = _interopRequireDefault(require_slice_ansi2()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapString = (subject, size) => { - let subjectSlice; - subjectSlice = subject; - const chunks = []; - do { - chunks.push((0, _sliceAnsi.default)(subjectSlice, 0, size)); - subjectSlice = (0, _sliceAnsi.default)(subjectSlice, size).trim(); - } while ((0, _stringWidth.default)(subjectSlice)); - return chunks; - }; - var _default = wrapString; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapWord.js -var require_wrapWord2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapWord.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _sliceAnsi = _interopRequireDefault(require_slice_ansi2()); - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapWord = (input, size) => { - let subject; - subject = input; - const chunks = []; - const re = new RegExp("(^.{1," + size + "}(\\s+|$))|(^.{1," + (size - 1) + "}(\\\\|/|_|\\.|,|;|-))"); - do { - let chunk; - chunk = subject.match(re); - if (chunk) { - chunk = chunk[0]; - subject = (0, _sliceAnsi.default)(subject, (0, _stringWidth.default)(chunk)); - chunk = chunk.trim(); - } else { - chunk = (0, _sliceAnsi.default)(subject, 0, size); - subject = (0, _sliceAnsi.default)(subject, size); + [EMITEND2]() { + if (this[DECODER]) { + const data = this[DECODER].end(); + if (data) { + for (const p of this.pipes) { + p.dest.write(data); + } + super.emit("data", data); + } } - chunks.push(chunk); - } while ((0, _stringWidth.default)(subject)); - return chunks; - }; - var _default = wrapWord; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapCell.js -var require_wrapCell2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/wrapCell.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _wrapString = _interopRequireDefault(require_wrapString2()); - var _wrapWord = _interopRequireDefault(require_wrapWord2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var wrapCell = (cellValue, columnWidth, useWrapWord) => { - const cellLines = cellValue.split("\n"); - for (let lineNr = 0; lineNr < cellLines.length; ) { - let lineChunks; - if (useWrapWord) { - lineChunks = (0, _wrapWord.default)(cellLines[lineNr], columnWidth); - } else { - lineChunks = (0, _wrapString.default)(cellLines[lineNr], columnWidth); + for (const p of this.pipes) { + p.end(); } - cellLines.splice(lineNr, 1, ...lineChunks); - lineNr += lineChunks.length; - } - return cellLines; - }; - var _default = wrapCell; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateCellHeight.js -var require_calculateCellHeight2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateCellHeight.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _isString2 = _interopRequireDefault(require_isString2()); - var _wrapCell = _interopRequireDefault(require_wrapCell2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateCellHeight = (value, columnWidth, useWrapWord = false) => { - if (!(0, _isString2.default)(value)) { - throw new TypeError("Value must be a string."); + const ret = super.emit("end"); + this.removeAllListeners("end"); + return ret; } - if (!Number.isInteger(columnWidth)) { - throw new TypeError("Column width must be an integer."); + // const all = await stream.collect() + collect() { + const buf = []; + if (!this[OBJECTMODE]) + buf.dataLength = 0; + const p = this.promise(); + this.on("data", (c) => { + buf.push(c); + if (!this[OBJECTMODE]) + buf.dataLength += c.length; + }); + return p.then(() => buf); } - if (columnWidth < 1) { - throw new Error("Column width must be greater than 0."); + // const data = await stream.concat() + concat() { + return this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this.collect().then((buf) => this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength)); } - return (0, _wrapCell.default)(value, columnWidth, useWrapWord).length; - }; - var _default = calculateCellHeight; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateRowHeightIndex.js -var require_calculateRowHeightIndex2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateRowHeightIndex.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _max2 = _interopRequireDefault(require_max3()); - var _isBoolean2 = _interopRequireDefault(require_isBoolean()); - var _isNumber2 = _interopRequireDefault(require_isNumber()); - var _calculateCellHeight = _interopRequireDefault(require_calculateCellHeight2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateRowHeightIndex = (rows, config) => { - const tableWidth = rows[0].length; - const rowSpanIndex = []; - rows.forEach((cells) => { - const cellHeightIndex = new Array(tableWidth).fill(1); - cells.forEach((value, index1) => { - if (!(0, _isNumber2.default)(config.columns[index1].width)) { - throw new TypeError("column[index].width must be a number."); - } - if (!(0, _isBoolean2.default)(config.columns[index1].wrapWord)) { - throw new TypeError("column[index].wrapWord must be a boolean."); - } - cellHeightIndex[index1] = (0, _calculateCellHeight.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); + // stream.promise().then(() => done, er => emitted error) + promise() { + return new Promise((resolve, reject) => { + this.on(DESTROYED, () => reject(new Error("stream destroyed"))); + this.on("error", (er) => reject(er)); + this.on("end", () => resolve()); }); - rowSpanIndex.push((0, _max2.default)(cellHeightIndex)); - }); - return rowSpanIndex; - }; - var _default = calculateRowHeightIndex; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawBorder.js -var require_drawBorder2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawBorder.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.drawBorderTop = exports2.drawBorderJoin = exports2.drawBorderBottom = exports2.drawBorder = void 0; - var drawBorder = (columnSizeIndex, parts) => { - const columns = columnSizeIndex.map((size) => { - return parts.body.repeat(size); - }).join(parts.join); - return parts.left + columns + parts.right + "\n"; - }; - exports2.drawBorder = drawBorder; - var drawBorderTop = (columnSizeIndex, parts) => { - const border = drawBorder(columnSizeIndex, { - body: parts.topBody, - join: parts.topJoin, - left: parts.topLeft, - right: parts.topRight - }); - if (border === "\n") { - return ""; } - return border; - }; - exports2.drawBorderTop = drawBorderTop; - var drawBorderJoin = (columnSizeIndex, parts) => { - return drawBorder(columnSizeIndex, { - body: parts.joinBody, - join: parts.joinJoin, - left: parts.joinLeft, - right: parts.joinRight - }); - }; - exports2.drawBorderJoin = drawBorderJoin; - var drawBorderBottom = (columnSizeIndex, parts) => { - return drawBorder(columnSizeIndex, { - body: parts.bottomBody, - join: parts.bottomJoin, - left: parts.bottomLeft, - right: parts.bottomRight - }); - }; - exports2.drawBorderBottom = drawBorderBottom; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawRow.js -var require_drawRow2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawRow.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var drawRow = (columns, border) => { - return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + "\n"; - }; - var _default = drawRow; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/getBorderCharacters.js -var require_getBorderCharacters2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/getBorderCharacters.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var getBorderCharacters = (name) => { - if (name === "honeywell") { - return { - topBody: "\u2550", - topJoin: "\u2564", - topLeft: "\u2554", - topRight: "\u2557", - bottomBody: "\u2550", - bottomJoin: "\u2567", - bottomLeft: "\u255A", - bottomRight: "\u255D", - bodyLeft: "\u2551", - bodyRight: "\u2551", - bodyJoin: "\u2502", - joinBody: "\u2500", - joinLeft: "\u255F", - joinRight: "\u2562", - joinJoin: "\u253C" + // for await (let chunk of stream) + [ASYNCITERATOR]() { + const next = () => { + const res = this.read(); + if (res !== null) + return Promise.resolve({ done: false, value: res }); + if (this[EOF]) + return Promise.resolve({ done: true }); + let resolve = null; + let reject = null; + const onerr = (er) => { + this.removeListener("data", ondata); + this.removeListener("end", onend); + reject(er); + }; + const ondata = (value) => { + this.removeListener("error", onerr); + this.removeListener("end", onend); + this.pause(); + resolve({ value, done: !!this[EOF] }); + }; + const onend = () => { + this.removeListener("error", onerr); + this.removeListener("data", ondata); + resolve({ done: true }); + }; + const ondestroy = () => onerr(new Error("stream destroyed")); + return new Promise((res2, rej) => { + reject = rej; + resolve = res2; + this.once(DESTROYED, ondestroy); + this.once("error", onerr); + this.once("end", onend); + this.once("data", ondata); + }); }; + return { next }; } - if (name === "norc") { - return { - topBody: "\u2500", - topJoin: "\u252C", - topLeft: "\u250C", - topRight: "\u2510", - bottomBody: "\u2500", - bottomJoin: "\u2534", - bottomLeft: "\u2514", - bottomRight: "\u2518", - bodyLeft: "\u2502", - bodyRight: "\u2502", - bodyJoin: "\u2502", - joinBody: "\u2500", - joinLeft: "\u251C", - joinRight: "\u2524", - joinJoin: "\u253C" + // for (let chunk of stream) + [ITERATOR]() { + const next = () => { + const value = this.read(); + const done = value === null; + return { value, done }; }; + return { next }; } - if (name === "ramac") { - return { - topBody: "-", - topJoin: "+", - topLeft: "+", - topRight: "+", - bottomBody: "-", - bottomJoin: "+", - bottomLeft: "+", - bottomRight: "+", - bodyLeft: "|", - bodyRight: "|", - bodyJoin: "|", - joinBody: "-", - joinLeft: "|", - joinRight: "|", - joinJoin: "|" - }; + destroy(er) { + if (this[DESTROYED]) { + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + this[DESTROYED] = true; + this.buffer.length = 0; + this[BUFFERLENGTH] = 0; + if (typeof this.close === "function" && !this[CLOSED]) + this.close(); + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; } - if (name === "void") { - return { - topBody: "", - topJoin: "", - topLeft: "", - topRight: "", - bottomBody: "", - bottomJoin: "", - bottomLeft: "", - bottomRight: "", - bodyLeft: "", - bodyRight: "", - bodyJoin: "", - joinBody: "", - joinLeft: "", - joinRight: "", - joinJoin: "" - }; + static isStream(s) { + return !!s && (s instanceof Minipass || s instanceof Stream || s instanceof EE && (typeof s.pipe === "function" || // readable + typeof s.write === "function" && typeof s.end === "function")); } - throw new Error('Unknown border template "' + name + '".'); }; - var _default = getBorderCharacters; - exports2.default = _default; } }); -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/validateConfig.js -var require_validateConfig2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/validateConfig.js"(exports2, module2) { - "use strict"; - var equal = require_equal(); - var validate = function() { - var pattern0 = new RegExp("^[0-9]+$"); - var refVal = []; - var refVal1 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !validate2.schema.properties.hasOwnProperty(key0); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - if (data.topBody !== void 0) { - var errs_1 = errors; - if (!refVal2(data.topBody, (dataPath || "") + ".topBody", data, "topBody", rootData)) { - if (vErrors === null) - vErrors = refVal2.errors; - else - vErrors = vErrors.concat(refVal2.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topJoin, (dataPath || "") + ".topJoin", data, "topJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topLeft, (dataPath || "") + ".topLeft", data, "topLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.topRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.topRight, (dataPath || "") + ".topRight", data, "topRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomBody !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomBody, (dataPath || "") + ".bottomBody", data, "bottomBody", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomJoin, (dataPath || "") + ".bottomJoin", data, "bottomJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomLeft, (dataPath || "") + ".bottomLeft", data, "bottomLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bottomRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bottomRight, (dataPath || "") + ".bottomRight", data, "bottomRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bodyLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyLeft, (dataPath || "") + ".bodyLeft", data, "bodyLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bodyRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyRight, (dataPath || "") + ".bodyRight", data, "bodyRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.bodyJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.bodyJoin, (dataPath || "") + ".bodyJoin", data, "bodyJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.joinBody !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinBody, (dataPath || "") + ".joinBody", data, "joinBody", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.joinLeft !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinLeft, (dataPath || "") + ".joinLeft", data, "joinLeft", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.joinRight !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinRight, (dataPath || "") + ".joinRight", data, "joinRight", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.joinJoin !== void 0) { - var errs_1 = errors; - if (!refVal[2](data.joinJoin, (dataPath || "") + ".joinJoin", data, "joinJoin", rootData)) { - if (vErrors === null) - vErrors = refVal[2].errors; - else - vErrors = vErrors.concat(refVal[2].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; +// ../node_modules/.pnpm/minizlib@2.1.2/node_modules/minizlib/index.js +var require_minizlib = __commonJS({ + "../node_modules/.pnpm/minizlib@2.1.2/node_modules/minizlib/index.js"(exports2) { + "use strict"; + var assert = require("assert"); + var Buffer2 = require("buffer").Buffer; + var realZlib = require("zlib"); + var constants = exports2.constants = require_constants12(); + var Minipass = require_minipass3(); + var OriginalBufferConcat = Buffer2.concat; + var _superWrite = Symbol("_superWrite"); + var ZlibError = class extends Error { + constructor(err) { + super("zlib: " + err.message); + this.code = err.code; + this.errno = err.errno; + if (!this.code) + this.code = "ZLIB_ERROR"; + this.message = "zlib: " + err.message; + Error.captureStackTrace(this, this.constructor); + } + get name() { + return "ZlibError"; + } + }; + var _opts = Symbol("opts"); + var _flushFlag = Symbol("flushFlag"); + var _finishFlushFlag = Symbol("finishFlushFlag"); + var _fullFlushFlag = Symbol("fullFlushFlag"); + var _handle = Symbol("handle"); + var _onError = Symbol("onError"); + var _sawError = Symbol("sawError"); + var _level = Symbol("level"); + var _strategy = Symbol("strategy"); + var _ended = Symbol("ended"); + var _defaultFullFlush = Symbol("_defaultFullFlush"); + var ZlibBase = class extends Minipass { + constructor(opts, mode) { + if (!opts || typeof opts !== "object") + throw new TypeError("invalid options for ZlibBase constructor"); + super(opts); + this[_sawError] = false; + this[_ended] = false; + this[_opts] = opts; + this[_flushFlag] = opts.flush; + this[_finishFlushFlag] = opts.finishFlush; + try { + this[_handle] = new realZlib[mode](opts); + } catch (er) { + throw new ZlibError(er); + } + this[_onError] = (err) => { + if (this[_sawError]) + return; + this[_sawError] = true; + this.close(); + this.emit("error", err); }; - }(); - refVal1.schema = { - "type": "object", - "properties": { - "topBody": { - "$ref": "#/definitions/border" - }, - "topJoin": { - "$ref": "#/definitions/border" - }, - "topLeft": { - "$ref": "#/definitions/border" - }, - "topRight": { - "$ref": "#/definitions/border" - }, - "bottomBody": { - "$ref": "#/definitions/border" - }, - "bottomJoin": { - "$ref": "#/definitions/border" - }, - "bottomLeft": { - "$ref": "#/definitions/border" - }, - "bottomRight": { - "$ref": "#/definitions/border" - }, - "bodyLeft": { - "$ref": "#/definitions/border" - }, - "bodyRight": { - "$ref": "#/definitions/border" - }, - "bodyJoin": { - "$ref": "#/definitions/border" - }, - "joinBody": { - "$ref": "#/definitions/border" - }, - "joinLeft": { - "$ref": "#/definitions/border" - }, - "joinRight": { - "$ref": "#/definitions/border" - }, - "joinJoin": { - "$ref": "#/definitions/border" - } - }, - "additionalProperties": false - }; - refVal1.errors = null; - refVal[1] = refVal1; - var refVal2 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (typeof data !== "string") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "string" - }, - message: "should be string" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; + this[_handle].on("error", (er) => this[_onError](new ZlibError(er))); + this.once("end", () => this.close); + } + close() { + if (this[_handle]) { + this[_handle].close(); + this[_handle] = null; + this.emit("close"); + } + } + reset() { + if (!this[_sawError]) { + assert(this[_handle], "zlib binding closed"); + return this[_handle].reset(); + } + } + flush(flushFlag) { + if (this.ended) + return; + if (typeof flushFlag !== "number") + flushFlag = this[_fullFlushFlag]; + this.write(Object.assign(Buffer2.alloc(0), { [_flushFlag]: flushFlag })); + } + end(chunk, encoding, cb) { + if (chunk) + this.write(chunk, encoding); + this.flush(this[_finishFlushFlag]); + this[_ended] = true; + return super.end(null, null, cb); + } + get ended() { + return this[_ended]; + } + write(chunk, encoding, cb) { + if (typeof encoding === "function") + cb = encoding, encoding = "utf8"; + if (typeof chunk === "string") + chunk = Buffer2.from(chunk, encoding); + if (this[_sawError]) + return; + assert(this[_handle], "zlib binding closed"); + const nativeHandle = this[_handle]._handle; + const originalNativeClose = nativeHandle.close; + nativeHandle.close = () => { }; - }(); - refVal2.schema = { - "type": "string" - }; - refVal2.errors = null; - refVal[2] = refVal2; - var refVal3 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !pattern02.test(key0); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - for (var key0 in data) { - if (pattern02.test(key0)) { - var errs_1 = errors; - if (!refVal4(data[key0], (dataPath || "") + "['" + key0 + "']", data, key0, rootData)) { - if (vErrors === null) - vErrors = refVal4.errors; - else - vErrors = vErrors.concat(refVal4.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; + const originalClose = this[_handle].close; + this[_handle].close = () => { }; - }(); - refVal3.schema = { - "type": "object", - "patternProperties": { - "^[0-9]+$": { - "$ref": "#/definitions/column" - } - }, - "additionalProperties": false - }; - refVal3.errors = null; - refVal[3] = refVal3; - var refVal4 = function() { - var pattern02 = new RegExp("^[0-9]+$"); - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !(key0 == "alignment" || key0 == "width" || key0 == "wrapWord" || key0 == "truncate" || key0 == "paddingLeft" || key0 == "paddingRight"); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - var data1 = data.alignment; - if (data1 !== void 0) { - var errs_1 = errors; - if (typeof data1 !== "string") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".alignment", - schemaPath: "#/properties/alignment/type", - params: { - type: "string" - }, - message: "should be string" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var schema1 = validate2.schema.properties.alignment.enum; - var valid1; - valid1 = false; - for (var i1 = 0; i1 < schema1.length; i1++) - if (equal(data1, schema1[i1])) { - valid1 = true; - break; - } - if (!valid1) { - var err = { - keyword: "enum", - dataPath: (dataPath || "") + ".alignment", - schemaPath: "#/properties/alignment/enum", - params: { - allowedValues: schema1 - }, - message: "should be equal to one of the allowed values" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.width !== void 0) { - var errs_1 = errors; - if (typeof data.width !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".width", - schemaPath: "#/properties/width/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.wrapWord !== void 0) { - var errs_1 = errors; - if (typeof data.wrapWord !== "boolean") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".wrapWord", - schemaPath: "#/properties/wrapWord/type", - params: { - type: "boolean" - }, - message: "should be boolean" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.truncate !== void 0) { - var errs_1 = errors; - if (typeof data.truncate !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".truncate", - schemaPath: "#/properties/truncate/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.paddingLeft !== void 0) { - var errs_1 = errors; - if (typeof data.paddingLeft !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".paddingLeft", - schemaPath: "#/properties/paddingLeft/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; - } - if (data.paddingRight !== void 0) { - var errs_1 = errors; - if (typeof data.paddingRight !== "number") { - var err = { - keyword: "type", - dataPath: (dataPath || "") + ".paddingRight", - schemaPath: "#/properties/paddingRight/type", - params: { - type: "number" - }, - message: "should be number" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - var valid1 = errors === errs_1; + Buffer2.concat = (args2) => args2; + let result2; + try { + const flushFlag = typeof chunk[_flushFlag] === "number" ? chunk[_flushFlag] : this[_flushFlag]; + result2 = this[_handle]._processChunk(chunk, flushFlag); + Buffer2.concat = OriginalBufferConcat; + } catch (err) { + Buffer2.concat = OriginalBufferConcat; + this[_onError](new ZlibError(err)); + } finally { + if (this[_handle]) { + this[_handle]._handle = nativeHandle; + nativeHandle.close = originalNativeClose; + this[_handle].close = originalClose; + this[_handle].removeAllListeners("error"); + } + } + if (this[_handle]) + this[_handle].on("error", (er) => this[_onError](new ZlibError(er))); + let writeReturn; + if (result2) { + if (Array.isArray(result2) && result2.length > 0) { + writeReturn = this[_superWrite](Buffer2.from(result2[0])); + for (let i = 1; i < result2.length; i++) { + writeReturn = this[_superWrite](result2[i]); } } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; - }; - }(); - refVal4.schema = { - "type": "object", - "properties": { - "alignment": { - "type": "string", - "enum": ["left", "right", "center"] - }, - "width": { - "type": "number" - }, - "wrapWord": { - "type": "boolean" - }, - "truncate": { - "type": "number" - }, - "paddingLeft": { - "type": "number" - }, - "paddingRight": { - "type": "number" - } - }, - "additionalProperties": false - }; - refVal4.errors = null; - refVal[4] = refVal4; - return function validate2(data, dataPath, parentData, parentDataProperty, rootData) { - "use strict"; - var vErrors = null; - var errors = 0; - if (rootData === void 0) - rootData = data; - if (data && typeof data === "object" && !Array.isArray(data)) { - var errs__0 = errors; - var valid1 = true; - for (var key0 in data) { - var isAdditional0 = !(key0 == "border" || key0 == "columns" || key0 == "columnDefault" || key0 == "drawHorizontalLine"); - if (isAdditional0) { - valid1 = false; - var err = { - keyword: "additionalProperties", - dataPath: (dataPath || "") + "", - schemaPath: "#/additionalProperties", - params: { - additionalProperty: "" + key0 + "" - }, - message: "should NOT have additional properties" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - } - if (data.border !== void 0) { - var errs_1 = errors; - if (!refVal1(data.border, (dataPath || "") + ".border", data, "border", rootData)) { - if (vErrors === null) - vErrors = refVal1.errors; - else - vErrors = vErrors.concat(refVal1.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.columns !== void 0) { - var errs_1 = errors; - if (!refVal3(data.columns, (dataPath || "") + ".columns", data, "columns", rootData)) { - if (vErrors === null) - vErrors = refVal3.errors; - else - vErrors = vErrors.concat(refVal3.errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; + writeReturn = this[_superWrite](Buffer2.from(result2)); } - if (data.columnDefault !== void 0) { - var errs_1 = errors; - if (!refVal[4](data.columnDefault, (dataPath || "") + ".columnDefault", data, "columnDefault", rootData)) { - if (vErrors === null) - vErrors = refVal[4].errors; - else - vErrors = vErrors.concat(refVal[4].errors); - errors = vErrors.length; - } - var valid1 = errors === errs_1; - } - if (data.drawHorizontalLine !== void 0) { - var errs_1 = errors; - var errs__1 = errors; - var valid1; - valid1 = typeof data.drawHorizontalLine == "function"; - if (!valid1) { - if (errs__1 == errors) { - var err = { - keyword: "typeof", - dataPath: (dataPath || "") + ".drawHorizontalLine", - schemaPath: "#/properties/drawHorizontalLine/typeof", - params: { - keyword: "typeof" - }, - message: 'should pass "typeof" keyword validation' - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } else { - for (var i1 = errs__1; i1 < errors; i1++) { - var ruleErr1 = vErrors[i1]; - if (ruleErr1.dataPath === void 0) - ruleErr1.dataPath = (dataPath || "") + ".drawHorizontalLine"; - if (ruleErr1.schemaPath === void 0) { - ruleErr1.schemaPath = "#/properties/drawHorizontalLine/typeof"; - } - } - } - } - var valid1 = errors === errs_1; - } - } else { - var err = { - keyword: "type", - dataPath: (dataPath || "") + "", - schemaPath: "#/type", - params: { - type: "object" - }, - message: "should be object" - }; - if (vErrors === null) - vErrors = [err]; - else - vErrors.push(err); - errors++; - } - validate2.errors = vErrors; - return errors === 0; - }; - }(); - validate.schema = { - "$id": "config.json", - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "border": { - "$ref": "#/definitions/borders" - }, - "columns": { - "$ref": "#/definitions/columns" - }, - "columnDefault": { - "$ref": "#/definitions/column" - }, - "drawHorizontalLine": { - "typeof": "function" - } - }, - "additionalProperties": false, - "definitions": { - "columns": { - "type": "object", - "patternProperties": { - "^[0-9]+$": { - "$ref": "#/definitions/column" - } - }, - "additionalProperties": false - }, - "column": { - "type": "object", - "properties": { - "alignment": { - "type": "string", - "enum": ["left", "right", "center"] - }, - "width": { - "type": "number" - }, - "wrapWord": { - "type": "boolean" - }, - "truncate": { - "type": "number" - }, - "paddingLeft": { - "type": "number" - }, - "paddingRight": { - "type": "number" - } - }, - "additionalProperties": false - }, - "borders": { - "type": "object", - "properties": { - "topBody": { - "$ref": "#/definitions/border" - }, - "topJoin": { - "$ref": "#/definitions/border" - }, - "topLeft": { - "$ref": "#/definitions/border" - }, - "topRight": { - "$ref": "#/definitions/border" - }, - "bottomBody": { - "$ref": "#/definitions/border" - }, - "bottomJoin": { - "$ref": "#/definitions/border" - }, - "bottomLeft": { - "$ref": "#/definitions/border" - }, - "bottomRight": { - "$ref": "#/definitions/border" - }, - "bodyLeft": { - "$ref": "#/definitions/border" - }, - "bodyRight": { - "$ref": "#/definitions/border" - }, - "bodyJoin": { - "$ref": "#/definitions/border" - }, - "joinBody": { - "$ref": "#/definitions/border" - }, - "joinLeft": { - "$ref": "#/definitions/border" - }, - "joinRight": { - "$ref": "#/definitions/border" - }, - "joinJoin": { - "$ref": "#/definitions/border" - } - }, - "additionalProperties": false - }, - "border": { - "type": "string" } + if (cb) + cb(); + return writeReturn; + } + [_superWrite](data) { + return super.write(data); } }; - validate.errors = null; - module2.exports = validate; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/makeStreamConfig.js -var require_makeStreamConfig2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/makeStreamConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _cloneDeep2 = _interopRequireDefault(require_cloneDeep()); - var _isUndefined2 = _interopRequireDefault(require_isUndefined()); - var _times2 = _interopRequireDefault(require_times2()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters2()); - var _validateConfig = _interopRequireDefault(require_validateConfig2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var makeBorder = (border = {}) => { - return Object.assign({}, (0, _getBorderCharacters.default)("honeywell"), border); - }; - var makeColumns = (columnCount, columns = {}, columnDefault = {}) => { - (0, _times2.default)(columnCount, (index) => { - if ((0, _isUndefined2.default)(columns[index])) { - columns[index] = {}; + var Zlib = class extends ZlibBase { + constructor(opts, mode) { + opts = opts || {}; + opts.flush = opts.flush || constants.Z_NO_FLUSH; + opts.finishFlush = opts.finishFlush || constants.Z_FINISH; + super(opts, mode); + this[_fullFlushFlag] = constants.Z_FULL_FLUSH; + this[_level] = opts.level; + this[_strategy] = opts.strategy; + } + params(level, strategy) { + if (this[_sawError]) + return; + if (!this[_handle]) + throw new Error("cannot switch params when binding is closed"); + if (!this[_handle].params) + throw new Error("not supported in this implementation"); + if (this[_level] !== level || this[_strategy] !== strategy) { + this.flush(constants.Z_SYNC_FLUSH); + assert(this[_handle], "zlib binding closed"); + const origFlush = this[_handle].flush; + this[_handle].flush = (flushFlag, cb) => { + this.flush(flushFlag); + cb(); + }; + try { + this[_handle].params(level, strategy); + } finally { + this[_handle].flush = origFlush; + } + if (this[_handle]) { + this[_level] = level; + this[_strategy] = strategy; + } } - columns[index] = Object.assign({ - alignment: "left", - paddingLeft: 1, - paddingRight: 1, - truncate: Infinity, - wrapWord: false - }, columnDefault, columns[index]); - }); - return columns; + } }; - var makeStreamConfig = (userConfig = {}) => { - (0, _validateConfig.default)("streamConfig.json", userConfig); - const config = (0, _cloneDeep2.default)(userConfig); - if (!config.columnDefault || !config.columnDefault.width) { - throw new Error("Must provide config.columnDefault.width when creating a stream."); + var Deflate = class extends Zlib { + constructor(opts) { + super(opts, "Deflate"); } - if (!config.columnCount) { - throw new Error("Must provide config.columnCount."); + }; + var Inflate = class extends Zlib { + constructor(opts) { + super(opts, "Inflate"); } - config.border = makeBorder(config.border); - config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault); - return config; }; - var _default = makeStreamConfig; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/mapDataUsingRowHeightIndex.js -var require_mapDataUsingRowHeightIndex2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/mapDataUsingRowHeightIndex.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _flatten2 = _interopRequireDefault(require_flatten()); - var _times2 = _interopRequireDefault(require_times2()); - var _wrapCell = _interopRequireDefault(require_wrapCell2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var mapDataUsingRowHeightIndex = (unmappedRows, rowHeightIndex, config) => { - const tableWidth = unmappedRows[0].length; - const mappedRows = unmappedRows.map((cells, index0) => { - const rowHeight = (0, _times2.default)(rowHeightIndex[index0], () => { - return new Array(tableWidth).fill(""); - }); - cells.forEach((value, index1) => { - const cellLines = (0, _wrapCell.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); - cellLines.forEach((cellLine, index2) => { - rowHeight[index2][index1] = cellLine; - }); - }); - return rowHeight; - }); - return (0, _flatten2.default)(mappedRows); + var _portable = Symbol("_portable"); + var Gzip = class extends Zlib { + constructor(opts) { + super(opts, "Gzip"); + this[_portable] = opts && !!opts.portable; + } + [_superWrite](data) { + if (!this[_portable]) + return super[_superWrite](data); + this[_portable] = false; + data[9] = 255; + return super[_superWrite](data); + } }; - var _default = mapDataUsingRowHeightIndex; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/padTableData.js -var require_padTableData2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/padTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var padTableData = (rows, config) => { - return rows.map((cells) => { - return cells.map((value, index1) => { - const column = config.columns[index1]; - return " ".repeat(column.paddingLeft) + value + " ".repeat(column.paddingRight); - }); - }); + var Gunzip = class extends Zlib { + constructor(opts) { + super(opts, "Gunzip"); + } }; - var _default = padTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/stringifyTableData.js -var require_stringifyTableData2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/stringifyTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var stringifyTableData = (rows) => { - return rows.map((cells) => { - return cells.map(String); - }); + var DeflateRaw = class extends Zlib { + constructor(opts) { + super(opts, "DeflateRaw"); + } }; - var _default = stringifyTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/truncateTableData.js -var require_truncateTableData2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/truncateTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _truncate2 = _interopRequireDefault(require_truncate()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var truncateTableData = (rows, config) => { - return rows.map((cells) => { - return cells.map((content, index) => { - return (0, _truncate2.default)(content, { - length: config.columns[index].truncate - }); - }); - }); + var InflateRaw = class extends Zlib { + constructor(opts) { + super(opts, "InflateRaw"); + } }; - var _default = truncateTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/createStream.js -var require_createStream2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/createStream.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _mapValues2 = _interopRequireDefault(require_mapValues()); - var _values2 = _interopRequireDefault(require_values()); - var _trimEnd2 = _interopRequireDefault(require_trimEnd()); - var _alignTableData = _interopRequireDefault(require_alignTableData2()); - var _calculateRowHeightIndex = _interopRequireDefault(require_calculateRowHeightIndex2()); - var _drawBorder = require_drawBorder2(); - var _drawRow = _interopRequireDefault(require_drawRow2()); - var _makeStreamConfig = _interopRequireDefault(require_makeStreamConfig2()); - var _mapDataUsingRowHeightIndex = _interopRequireDefault(require_mapDataUsingRowHeightIndex2()); - var _padTableData = _interopRequireDefault(require_padTableData2()); - var _stringifyTableData = _interopRequireDefault(require_stringifyTableData2()); - var _truncateTableData = _interopRequireDefault(require_truncateTableData2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var prepareData = (data, config) => { - let rows; - rows = (0, _stringifyTableData.default)(data); - rows = (0, _truncateTableData.default)(data, config); - const rowHeightIndex = (0, _calculateRowHeightIndex.default)(rows, config); - rows = (0, _mapDataUsingRowHeightIndex.default)(rows, rowHeightIndex, config); - rows = (0, _alignTableData.default)(rows, config); - rows = (0, _padTableData.default)(rows, config); - return rows; + var Unzip = class extends Zlib { + constructor(opts) { + super(opts, "Unzip"); + } }; - var create = (row, columnWidthIndex, config) => { - const rows = prepareData([row], config); - const body = rows.map((literalRow) => { - return (0, _drawRow.default)(literalRow, config.border); - }).join(""); - let output; - output = ""; - output += (0, _drawBorder.drawBorderTop)(columnWidthIndex, config.border); - output += body; - output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); - output = (0, _trimEnd2.default)(output); - process.stdout.write(output); + var Brotli = class extends ZlibBase { + constructor(opts, mode) { + opts = opts || {}; + opts.flush = opts.flush || constants.BROTLI_OPERATION_PROCESS; + opts.finishFlush = opts.finishFlush || constants.BROTLI_OPERATION_FINISH; + super(opts, mode); + this[_fullFlushFlag] = constants.BROTLI_OPERATION_FLUSH; + } }; - var append = (row, columnWidthIndex, config) => { - const rows = prepareData([row], config); - const body = rows.map((literalRow) => { - return (0, _drawRow.default)(literalRow, config.border); - }).join(""); - let output = ""; - const bottom = (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); - if (bottom !== "\n") { - output = "\r"; + var BrotliCompress = class extends Brotli { + constructor(opts) { + super(opts, "BrotliCompress"); } - output += (0, _drawBorder.drawBorderJoin)(columnWidthIndex, config.border); - output += body; - output += bottom; - output = (0, _trimEnd2.default)(output); - process.stdout.write(output); }; - var createStream = (userConfig = {}) => { - const config = (0, _makeStreamConfig.default)(userConfig); - const columnWidthIndex = (0, _values2.default)((0, _mapValues2.default)(config.columns, (column) => { - return column.width + column.paddingLeft + column.paddingRight; - })); - let empty; - empty = true; - return { - write: (row) => { - if (row.length !== config.columnCount) { - throw new Error("Row cell count does not match the config.columnCount."); - } - if (empty) { - empty = false; - return create(row, columnWidthIndex, config); - } else { - return append(row, columnWidthIndex, config); - } + var BrotliDecompress = class extends Brotli { + constructor(opts) { + super(opts, "BrotliDecompress"); + } + }; + exports2.Deflate = Deflate; + exports2.Inflate = Inflate; + exports2.Gzip = Gzip; + exports2.Gunzip = Gunzip; + exports2.DeflateRaw = DeflateRaw; + exports2.InflateRaw = InflateRaw; + exports2.Unzip = Unzip; + if (typeof realZlib.BrotliCompress === "function") { + exports2.BrotliCompress = BrotliCompress; + exports2.BrotliDecompress = BrotliDecompress; + } else { + exports2.BrotliCompress = exports2.BrotliDecompress = class { + constructor() { + throw new Error("Brotli is not supported in this version of Node.js"); } }; - }; - var _default = createStream; - exports2.default = _default; + } } }); -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateCellWidthIndex.js -var require_calculateCellWidthIndex2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateCellWidthIndex.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _stringWidth = _interopRequireDefault(require_string_width()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateCellWidthIndex = (cells) => { - return cells.map((value) => { - return Math.max(...value.split("\n").map((line) => { - return (0, _stringWidth.default)(line); - })); - }); - }; - var _default = calculateCellWidthIndex; - exports2.default = _default; +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/normalize-windows-path.js +var require_normalize_windows_path = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/normalize-windows-path.js"(exports2, module2) { + var platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform; + module2.exports = platform !== "win32" ? (p) => p : (p) => p && p.replace(/\\/g, "/"); } }); -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawTable.js -var require_drawTable2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/drawTable.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/read-entry.js +var require_read_entry = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/read-entry.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _drawBorder = require_drawBorder2(); - var _drawRow = _interopRequireDefault(require_drawRow2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var drawTable = (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine, singleLine) => { - let output; - let realRowIndex; - let rowHeight; - const rowCount = rows.length; - realRowIndex = 0; - output = ""; - if (drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border); - } - rows.forEach((row, index0) => { - output += (0, _drawRow.default)(row, border); - if (!rowHeight) { - rowHeight = rowSpanIndex[realRowIndex]; - realRowIndex++; - } - rowHeight--; - if (!singleLine && rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border); + var { Minipass } = require_minipass2(); + var normPath = require_normalize_windows_path(); + var SLURP = Symbol("slurp"); + module2.exports = class ReadEntry extends Minipass { + constructor(header, ex, gex) { + super(); + this.pause(); + this.extended = ex; + this.globalExtended = gex; + this.header = header; + this.startBlockSize = 512 * Math.ceil(header.size / 512); + this.blockRemain = this.startBlockSize; + this.remain = header.size; + this.type = header.type; + this.meta = false; + this.ignore = false; + switch (this.type) { + case "File": + case "OldFile": + case "Link": + case "SymbolicLink": + case "CharacterDevice": + case "BlockDevice": + case "Directory": + case "FIFO": + case "ContiguousFile": + case "GNUDumpDir": + break; + case "NextFileHasLongLinkpath": + case "NextFileHasLongPath": + case "OldGnuLongPath": + case "GlobalExtendedHeader": + case "ExtendedHeader": + case "OldExtendedHeader": + this.meta = true; + break; + default: + this.ignore = true; + } + this.path = normPath(header.path); + this.mode = header.mode; + if (this.mode) { + this.mode = this.mode & 4095; + } + this.uid = header.uid; + this.gid = header.gid; + this.uname = header.uname; + this.gname = header.gname; + this.size = header.size; + this.mtime = header.mtime; + this.atime = header.atime; + this.ctime = header.ctime; + this.linkpath = normPath(header.linkpath); + this.uname = header.uname; + this.gname = header.gname; + if (ex) { + this[SLURP](ex); + } + if (gex) { + this[SLURP](gex, true); } - }); - if (drawHorizontalLine(realRowIndex, rowCount)) { - output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border); } - return output; - }; - var _default = drawTable; - exports2.default = _default; + write(data) { + const writeLen = data.length; + if (writeLen > this.blockRemain) { + throw new Error("writing more to entry than is appropriate"); + } + const r = this.remain; + const br = this.blockRemain; + this.remain = Math.max(0, r - writeLen); + this.blockRemain = Math.max(0, br - writeLen); + if (this.ignore) { + return true; + } + if (r >= writeLen) { + return super.write(data); + } + return super.write(data.slice(0, r)); + } + [SLURP](ex, global2) { + for (const k in ex) { + if (ex[k] !== null && ex[k] !== void 0 && !(global2 && k === "path")) { + this[k] = k === "path" || k === "linkpath" ? normPath(ex[k]) : ex[k]; + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/types.js +var require_types8 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/types.js"(exports2) { + "use strict"; + exports2.name = /* @__PURE__ */ new Map([ + ["0", "File"], + // same as File + ["", "OldFile"], + ["1", "Link"], + ["2", "SymbolicLink"], + // Devices and FIFOs aren't fully supported + // they are parsed, but skipped when unpacking + ["3", "CharacterDevice"], + ["4", "BlockDevice"], + ["5", "Directory"], + ["6", "FIFO"], + // same as File + ["7", "ContiguousFile"], + // pax headers + ["g", "GlobalExtendedHeader"], + ["x", "ExtendedHeader"], + // vendor-specific stuff + // skip + ["A", "SolarisACL"], + // like 5, but with data, which should be skipped + ["D", "GNUDumpDir"], + // metadata only, skip + ["I", "Inode"], + // data = link path of next file + ["K", "NextFileHasLongLinkpath"], + // data = path of next file + ["L", "NextFileHasLongPath"], + // skip + ["M", "ContinuationFile"], + // like L + ["N", "OldGnuLongPath"], + // skip + ["S", "SparseFile"], + // skip + ["V", "TapeVolumeHeader"], + // like x + ["X", "OldExtendedHeader"] + ]); + exports2.code = new Map(Array.from(exports2.name).map((kv) => [kv[1], kv[0]])); } }); -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateMaximumColumnWidthIndex.js -var require_calculateMaximumColumnWidthIndex2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/calculateMaximumColumnWidthIndex.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/large-numbers.js +var require_large_numbers = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/large-numbers.js"(exports2, module2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _calculateCellWidthIndex = _interopRequireDefault(require_calculateCellWidthIndex2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var calculateMaximumColumnWidthIndex = (rows) => { - if (!rows[0]) { - throw new Error("Dataset must have at least one row."); + var encode = (num, buf) => { + if (!Number.isSafeInteger(num)) { + throw Error("cannot encode number outside of javascript safe integer range"); + } else if (num < 0) { + encodeNegative(num, buf); + } else { + encodePositive(num, buf); } - const columns = new Array(rows[0].length).fill(0); - rows.forEach((row) => { - const columnWidthIndex = (0, _calculateCellWidthIndex.default)(row); - columnWidthIndex.forEach((valueWidth, index0) => { - if (columns[index0] < valueWidth) { - columns[index0] = valueWidth; - } - }); - }); - return columns; - }; - var _default = calculateMaximumColumnWidthIndex; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/makeConfig.js -var require_makeConfig2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/makeConfig.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _cloneDeep2 = _interopRequireDefault(require_cloneDeep()); - var _isUndefined2 = _interopRequireDefault(require_isUndefined()); - var _times2 = _interopRequireDefault(require_times2()); - var _calculateMaximumColumnWidthIndex = _interopRequireDefault(require_calculateMaximumColumnWidthIndex2()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters2()); - var _validateConfig = _interopRequireDefault(require_validateConfig2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var makeBorder = (border = {}) => { - return Object.assign({}, (0, _getBorderCharacters.default)("honeywell"), border); + return buf; }; - var makeColumns = (rows, columns = {}, columnDefault = {}) => { - const maximumColumnWidthIndex = (0, _calculateMaximumColumnWidthIndex.default)(rows); - (0, _times2.default)(rows[0].length, (index) => { - if ((0, _isUndefined2.default)(columns[index])) { - columns[index] = {}; + var encodePositive = (num, buf) => { + buf[0] = 128; + for (var i = buf.length; i > 1; i--) { + buf[i - 1] = num & 255; + num = Math.floor(num / 256); + } + }; + var encodeNegative = (num, buf) => { + buf[0] = 255; + var flipped = false; + num = num * -1; + for (var i = buf.length; i > 1; i--) { + var byte = num & 255; + num = Math.floor(num / 256); + if (flipped) { + buf[i - 1] = onesComp(byte); + } else if (byte === 0) { + buf[i - 1] = 0; + } else { + flipped = true; + buf[i - 1] = twosComp(byte); } - columns[index] = Object.assign({ - alignment: "left", - paddingLeft: 1, - paddingRight: 1, - truncate: Infinity, - width: maximumColumnWidthIndex[index], - wrapWord: false - }, columnDefault, columns[index]); - }); - return columns; + } }; - var makeConfig = (rows, userConfig = {}) => { - (0, _validateConfig.default)("config.json", userConfig); - const config = (0, _cloneDeep2.default)(userConfig); - config.border = makeBorder(config.border); - config.columns = makeColumns(rows, config.columns, config.columnDefault); - if (!config.drawHorizontalLine) { - config.drawHorizontalLine = () => { - return true; - }; + var parse2 = (buf) => { + const pre = buf[0]; + const value = pre === 128 ? pos(buf.slice(1, buf.length)) : pre === 255 ? twos(buf) : null; + if (value === null) { + throw Error("invalid base256 encoding"); } - if (config.singleLine === void 0) { - config.singleLine = false; + if (!Number.isSafeInteger(value)) { + throw Error("parsed number outside of javascript safe integer range"); } - return config; + return value; }; - var _default = makeConfig; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/validateTableData.js -var require_validateTableData2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/validateTableData.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - function _createForOfIteratorHelper(o, allowArrayLike) { - var it; - if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { - if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { - if (it) - o = it; - var i = 0; - var F = function F2() { - }; - return { s: F, n: function n() { - if (i >= o.length) - return { done: true }; - return { done: false, value: o[i++] }; - }, e: function e(_e) { - throw _e; - }, f: F }; - } - throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - var normalCompletion = true, didErr = false, err; - return { s: function s() { - it = o[Symbol.iterator](); - }, n: function n() { - var step = it.next(); - normalCompletion = step.done; - return step; - }, e: function e(_e2) { - didErr = true; - err = _e2; - }, f: function f() { - try { - if (!normalCompletion && it.return != null) - it.return(); - } finally { - if (didErr) - throw err; + var twos = (buf) => { + var len = buf.length; + var sum = 0; + var flipped = false; + for (var i = len - 1; i > -1; i--) { + var byte = buf[i]; + var f; + if (flipped) { + f = onesComp(byte); + } else if (byte === 0) { + f = byte; + } else { + flipped = true; + f = twosComp(byte); + } + if (f !== 0) { + sum -= f * Math.pow(256, len - i - 1); } - } }; - } - function _unsupportedIterableToArray(o, minLen) { - if (!o) - return; - if (typeof o === "string") - return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) - n = o.constructor.name; - if (n === "Map" || n === "Set") - return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) - return _arrayLikeToArray(o, minLen); - } - function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) - len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) - arr2[i] = arr[i]; - return arr2; - } - var validateTableData = (rows) => { - if (!Array.isArray(rows)) { - throw new TypeError("Table data must be an array."); } - if (rows.length === 0) { - throw new Error("Table must define at least one row."); + return sum; + }; + var pos = (buf) => { + var len = buf.length; + var sum = 0; + for (var i = len - 1; i > -1; i--) { + var byte = buf[i]; + if (byte !== 0) { + sum += byte * Math.pow(256, len - i - 1); + } } - if (rows[0].length === 0) { - throw new Error("Table must define at least one column."); + return sum; + }; + var onesComp = (byte) => (255 ^ byte) & 255; + var twosComp = (byte) => (255 ^ byte) + 1 & 255; + module2.exports = { + encode, + parse: parse2 + }; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/header.js +var require_header = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/header.js"(exports2, module2) { + "use strict"; + var types = require_types8(); + var pathModule = require("path").posix; + var large = require_large_numbers(); + var SLURP = Symbol("slurp"); + var TYPE = Symbol("type"); + var Header = class { + constructor(data, off, ex, gex) { + this.cksumValid = false; + this.needPax = false; + this.nullBlock = false; + this.block = null; + this.path = null; + this.mode = null; + this.uid = null; + this.gid = null; + this.size = null; + this.mtime = null; + this.cksum = null; + this[TYPE] = "0"; + this.linkpath = null; + this.uname = null; + this.gname = null; + this.devmaj = 0; + this.devmin = 0; + this.atime = null; + this.ctime = null; + if (Buffer.isBuffer(data)) { + this.decode(data, off || 0, ex, gex); + } else if (data) { + this.set(data); + } + } + decode(buf, off, ex, gex) { + if (!off) { + off = 0; + } + if (!buf || !(buf.length >= off + 512)) { + throw new Error("need 512 bytes for header"); + } + this.path = decString(buf, off, 100); + this.mode = decNumber(buf, off + 100, 8); + this.uid = decNumber(buf, off + 108, 8); + this.gid = decNumber(buf, off + 116, 8); + this.size = decNumber(buf, off + 124, 12); + this.mtime = decDate(buf, off + 136, 12); + this.cksum = decNumber(buf, off + 148, 12); + this[SLURP](ex); + this[SLURP](gex, true); + this[TYPE] = decString(buf, off + 156, 1); + if (this[TYPE] === "") { + this[TYPE] = "0"; + } + if (this[TYPE] === "0" && this.path.slice(-1) === "/") { + this[TYPE] = "5"; + } + if (this[TYPE] === "5") { + this.size = 0; + } + this.linkpath = decString(buf, off + 157, 100); + if (buf.slice(off + 257, off + 265).toString() === "ustar\x0000") { + this.uname = decString(buf, off + 265, 32); + this.gname = decString(buf, off + 297, 32); + this.devmaj = decNumber(buf, off + 329, 8); + this.devmin = decNumber(buf, off + 337, 8); + if (buf[off + 475] !== 0) { + const prefix = decString(buf, off + 345, 155); + this.path = prefix + "/" + this.path; + } else { + const prefix = decString(buf, off + 345, 130); + if (prefix) { + this.path = prefix + "/" + this.path; + } + this.atime = decDate(buf, off + 476, 12); + this.ctime = decDate(buf, off + 488, 12); + } + } + let sum = 8 * 32; + for (let i = off; i < off + 148; i++) { + sum += buf[i]; + } + for (let i = off + 156; i < off + 512; i++) { + sum += buf[i]; + } + this.cksumValid = sum === this.cksum; + if (this.cksum === null && sum === 8 * 32) { + this.nullBlock = true; + } + } + [SLURP](ex, global2) { + for (const k in ex) { + if (ex[k] !== null && ex[k] !== void 0 && !(global2 && k === "path")) { + this[k] = ex[k]; + } + } + } + encode(buf, off) { + if (!buf) { + buf = this.block = Buffer.alloc(512); + off = 0; + } + if (!off) { + off = 0; + } + if (!(buf.length >= off + 512)) { + throw new Error("need 512 bytes for header"); + } + const prefixSize = this.ctime || this.atime ? 130 : 155; + const split = splitPrefix(this.path || "", prefixSize); + const path2 = split[0]; + const prefix = split[1]; + this.needPax = split[2]; + this.needPax = encString(buf, off, 100, path2) || this.needPax; + this.needPax = encNumber(buf, off + 100, 8, this.mode) || this.needPax; + this.needPax = encNumber(buf, off + 108, 8, this.uid) || this.needPax; + this.needPax = encNumber(buf, off + 116, 8, this.gid) || this.needPax; + this.needPax = encNumber(buf, off + 124, 12, this.size) || this.needPax; + this.needPax = encDate(buf, off + 136, 12, this.mtime) || this.needPax; + buf[off + 156] = this[TYPE].charCodeAt(0); + this.needPax = encString(buf, off + 157, 100, this.linkpath) || this.needPax; + buf.write("ustar\x0000", off + 257, 8); + this.needPax = encString(buf, off + 265, 32, this.uname) || this.needPax; + this.needPax = encString(buf, off + 297, 32, this.gname) || this.needPax; + this.needPax = encNumber(buf, off + 329, 8, this.devmaj) || this.needPax; + this.needPax = encNumber(buf, off + 337, 8, this.devmin) || this.needPax; + this.needPax = encString(buf, off + 345, prefixSize, prefix) || this.needPax; + if (buf[off + 475] !== 0) { + this.needPax = encString(buf, off + 345, 155, prefix) || this.needPax; + } else { + this.needPax = encString(buf, off + 345, 130, prefix) || this.needPax; + this.needPax = encDate(buf, off + 476, 12, this.atime) || this.needPax; + this.needPax = encDate(buf, off + 488, 12, this.ctime) || this.needPax; + } + let sum = 8 * 32; + for (let i = off; i < off + 148; i++) { + sum += buf[i]; + } + for (let i = off + 156; i < off + 512; i++) { + sum += buf[i]; + } + this.cksum = sum; + encNumber(buf, off + 148, 8, this.cksum); + this.cksumValid = true; + return this.needPax; } - const columnNumber = rows[0].length; - var _iterator = _createForOfIteratorHelper(rows), _step; - try { - for (_iterator.s(); !(_step = _iterator.n()).done; ) { - const cells = _step.value; - if (!Array.isArray(cells)) { - throw new TypeError("Table row data must be an array."); - } - if (cells.length !== columnNumber) { - throw new Error("Table must have a consistent number of cells."); + set(data) { + for (const i in data) { + if (data[i] !== null && data[i] !== void 0) { + this[i] = data[i]; } - var _iterator2 = _createForOfIteratorHelper(cells), _step2; - try { - for (_iterator2.s(); !(_step2 = _iterator2.n()).done; ) { - const cell = _step2.value; - if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test(cell)) { - throw new Error("Table data must not contain control characters."); - } - } - } catch (err) { - _iterator2.e(err); - } finally { - _iterator2.f(); + } + } + get type() { + return types.name.get(this[TYPE]) || this[TYPE]; + } + get typeKey() { + return this[TYPE]; + } + set type(type) { + if (types.code.has(type)) { + this[TYPE] = types.code.get(type); + } else { + this[TYPE] = type; + } + } + }; + var splitPrefix = (p, prefixSize) => { + const pathSize = 100; + let pp = p; + let prefix = ""; + let ret; + const root = pathModule.parse(p).root || "."; + if (Buffer.byteLength(pp) < pathSize) { + ret = [pp, prefix, false]; + } else { + prefix = pathModule.dirname(pp); + pp = pathModule.basename(pp); + do { + if (Buffer.byteLength(pp) <= pathSize && Buffer.byteLength(prefix) <= prefixSize) { + ret = [pp, prefix, false]; + } else if (Buffer.byteLength(pp) > pathSize && Buffer.byteLength(prefix) <= prefixSize) { + ret = [pp.slice(0, pathSize - 1), prefix, true]; + } else { + pp = pathModule.join(pathModule.basename(prefix), pp); + prefix = pathModule.dirname(prefix); } + } while (prefix !== root && !ret); + if (!ret) { + ret = [p.slice(0, pathSize - 1), "", true]; } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); } + return ret; }; - var _default = validateTableData; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/table.js -var require_table2 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/table.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - exports2.default = void 0; - var _alignTableData = _interopRequireDefault(require_alignTableData2()); - var _calculateCellWidthIndex = _interopRequireDefault(require_calculateCellWidthIndex2()); - var _calculateRowHeightIndex = _interopRequireDefault(require_calculateRowHeightIndex2()); - var _drawTable = _interopRequireDefault(require_drawTable2()); - var _makeConfig = _interopRequireDefault(require_makeConfig2()); - var _mapDataUsingRowHeightIndex = _interopRequireDefault(require_mapDataUsingRowHeightIndex2()); - var _padTableData = _interopRequireDefault(require_padTableData2()); - var _stringifyTableData = _interopRequireDefault(require_stringifyTableData2()); - var _truncateTableData = _interopRequireDefault(require_truncateTableData2()); - var _validateTableData = _interopRequireDefault(require_validateTableData2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - var table = (data, userConfig = {}) => { - let rows; - (0, _validateTableData.default)(data); - rows = (0, _stringifyTableData.default)(data); - const config = (0, _makeConfig.default)(rows, userConfig); - rows = (0, _truncateTableData.default)(data, config); - const rowHeightIndex = (0, _calculateRowHeightIndex.default)(rows, config); - rows = (0, _mapDataUsingRowHeightIndex.default)(rows, rowHeightIndex, config); - rows = (0, _alignTableData.default)(rows, config); - rows = (0, _padTableData.default)(rows, config); - const cellWidthIndex = (0, _calculateCellWidthIndex.default)(rows[0]); - return (0, _drawTable.default)(rows, config.border, cellWidthIndex, rowHeightIndex, config.drawHorizontalLine, config.singleLine); - }; - var _default = table; - exports2.default = _default; - } -}); - -// ../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/index.js -var require_dist10 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+table@1.0.0/node_modules/@zkochan/table/dist/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { - value: true - }); - Object.defineProperty(exports2, "createStream", { - enumerable: true, - get: function get() { - return _createStream.default; + var decString = (buf, off, size) => buf.slice(off, off + size).toString("utf8").replace(/\0.*/, ""); + var decDate = (buf, off, size) => numToDate(decNumber(buf, off, size)); + var numToDate = (num) => num === null ? null : new Date(num * 1e3); + var decNumber = (buf, off, size) => buf[off] & 128 ? large.parse(buf.slice(off, off + size)) : decSmallNumber(buf, off, size); + var nanNull = (value) => isNaN(value) ? null : value; + var decSmallNumber = (buf, off, size) => nanNull(parseInt( + buf.slice(off, off + size).toString("utf8").replace(/\0.*$/, "").trim(), + 8 + )); + var MAXNUM = { + 12: 8589934591, + 8: 2097151 + }; + var encNumber = (buf, off, size, number) => number === null ? false : number > MAXNUM[size] || number < 0 ? (large.encode(number, buf.slice(off, off + size)), true) : (encSmallNumber(buf, off, size, number), false); + var encSmallNumber = (buf, off, size, number) => buf.write(octalString(number, size), off, size, "ascii"); + var octalString = (number, size) => padOctal(Math.floor(number).toString(8), size); + var padOctal = (string, size) => (string.length === size - 1 ? string : new Array(size - string.length - 1).join("0") + string + " ") + "\0"; + var encDate = (buf, off, size, date) => date === null ? false : encNumber(buf, off, size, date.getTime() / 1e3); + var NULLS = new Array(156).join("\0"); + var encString = (buf, off, size, string) => string === null ? false : (buf.write(string + NULLS, off, size, "utf8"), string.length !== Buffer.byteLength(string) || string.length > size); + module2.exports = Header; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/pax.js +var require_pax = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/pax.js"(exports2, module2) { + "use strict"; + var Header = require_header(); + var path2 = require("path"); + var Pax = class { + constructor(obj, global2) { + this.atime = obj.atime || null; + this.charset = obj.charset || null; + this.comment = obj.comment || null; + this.ctime = obj.ctime || null; + this.gid = obj.gid || null; + this.gname = obj.gname || null; + this.linkpath = obj.linkpath || null; + this.mtime = obj.mtime || null; + this.path = obj.path || null; + this.size = obj.size || null; + this.uid = obj.uid || null; + this.uname = obj.uname || null; + this.dev = obj.dev || null; + this.ino = obj.ino || null; + this.nlink = obj.nlink || null; + this.global = global2 || false; + } + encode() { + const body = this.encodeBody(); + if (body === "") { + return null; + } + const bodyLen = Buffer.byteLength(body); + const bufLen = 512 * Math.ceil(1 + bodyLen / 512); + const buf = Buffer.allocUnsafe(bufLen); + for (let i = 0; i < 512; i++) { + buf[i] = 0; + } + new Header({ + // XXX split the path + // then the path should be PaxHeader + basename, but less than 99, + // prepend with the dirname + path: ("PaxHeader/" + path2.basename(this.path)).slice(0, 99), + mode: this.mode || 420, + uid: this.uid || null, + gid: this.gid || null, + size: bodyLen, + mtime: this.mtime || null, + type: this.global ? "GlobalExtendedHeader" : "ExtendedHeader", + linkpath: "", + uname: this.uname || "", + gname: this.gname || "", + devmaj: 0, + devmin: 0, + atime: this.atime || null, + ctime: this.ctime || null + }).encode(buf); + buf.write(body, 512, bodyLen, "utf8"); + for (let i = bodyLen + 512; i < buf.length; i++) { + buf[i] = 0; + } + return buf; } - }); - Object.defineProperty(exports2, "getBorderCharacters", { - enumerable: true, - get: function get() { - return _getBorderCharacters.default; + encodeBody() { + return this.encodeField("path") + this.encodeField("ctime") + this.encodeField("atime") + this.encodeField("dev") + this.encodeField("ino") + this.encodeField("nlink") + this.encodeField("charset") + this.encodeField("comment") + this.encodeField("gid") + this.encodeField("gname") + this.encodeField("linkpath") + this.encodeField("mtime") + this.encodeField("size") + this.encodeField("uid") + this.encodeField("uname"); } - }); - Object.defineProperty(exports2, "table", { - enumerable: true, - get: function get() { - return _table.default; + encodeField(field) { + if (this[field] === null || this[field] === void 0) { + return ""; + } + const v = this[field] instanceof Date ? this[field].getTime() / 1e3 : this[field]; + const s = " " + (field === "dev" || field === "ino" || field === "nlink" ? "SCHILY." : "") + field + "=" + v + "\n"; + const byteLen = Buffer.byteLength(s); + let digits = Math.floor(Math.log(byteLen) / Math.log(10)) + 1; + if (byteLen + digits >= Math.pow(10, digits)) { + digits += 1; + } + const len = digits + byteLen; + return len + s; } - }); - var _createStream = _interopRequireDefault(require_createStream2()); - var _getBorderCharacters = _interopRequireDefault(require_getBorderCharacters2()); - var _table = _interopRequireDefault(require_table2()); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } + }; + Pax.parse = (string, ex, g) => new Pax(merge(parseKV(string), ex), g); + var merge = (a, b) => b ? Object.keys(a).reduce((s, k) => (s[k] = a[k], s), b) : a; + var parseKV = (string) => string.replace(/\n$/, "").split("\n").reduce(parseKVLine, /* @__PURE__ */ Object.create(null)); + var parseKVLine = (set, line) => { + const n = parseInt(line, 10); + if (n !== Buffer.byteLength(line) + 1) { + return set; + } + line = line.slice((n + " ").length); + const kv = line.split("="); + const k = kv.shift().replace(/^SCHILY\.(dev|ino|nlink)/, "$1"); + if (!k) { + return set; + } + const v = kv.join("="); + set[k] = /^([A-Z]+\.)?([mac]|birth|creation)time$/.test(k) ? new Date(v * 1e3) : /^[0-9]+$/.test(v) ? +v : v; + return set; + }; + module2.exports = Pax; } }); -// ../plugin-commands-audit/lib/fix.js -var require_fix = __commonJS({ - "../plugin-commands-audit/lib/fix.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/strip-trailing-slashes.js +var require_strip_trailing_slashes = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/strip-trailing-slashes.js"(exports2, module2) { + module2.exports = (str) => { + let i = str.length - 1; + let slashesStart = -1; + while (i > -1 && str.charAt(i) === "/") { + slashesStart = i; + i--; + } + return slashesStart === -1 ? str : str.slice(0, slashesStart); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var read_project_manifest_1 = __importDefault(require_lib19()); - var fromPairs_1 = __importDefault(require_fromPairs()); - async function fix(dir, auditReport) { - var _a; - const { manifest, writeProjectManifest } = await read_project_manifest_1.default(dir); - const vulnOverrides = createOverrides(Object.values(auditReport.advisories)); - if (Object.values(vulnOverrides).length === 0) - return vulnOverrides; - await writeProjectManifest({ - ...manifest, - pnpm: { - ...manifest.pnpm, - overrides: { - ...(_a = manifest.pnpm) === null || _a === void 0 ? void 0 : _a.overrides, - ...vulnOverrides - } - } - }); - return vulnOverrides; - } - exports2.default = fix; - function createOverrides(advisories) { - return fromPairs_1.default(advisories.filter(({ vulnerable_versions }) => vulnerable_versions !== ">=0.0.0").map((advisory) => [ - `${advisory.module_name}@${advisory.vulnerable_versions}`, - advisory.patched_versions - ])); - } } }); -// ../plugin-commands-audit/lib/audit.js -var require_audit2 = __commonJS({ - "../plugin-commands-audit/lib/audit.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/warn-mixin.js +var require_warn_mixin = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/warn-mixin.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var audit_1 = __importDefault(require_lib55()); - var cli_utils_1 = require_lib20(); - var config_1 = require_lib10(); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var lockfile_file_1 = require_lib57(); - var table_1 = require_dist10(); - var chalk_1 = __importDefault(require_source()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var fix_1 = __importDefault(require_fix()); - var AUDIT_LEVEL_NUMBER = { - low: 0, - moderate: 1, - high: 2, - critical: 3 - }; - var AUDIT_COLOR = { - low: chalk_1.default.bold, - moderate: chalk_1.default.bold.yellow, - high: chalk_1.default.bold.red, - critical: chalk_1.default.bold.red - }; - exports2.rcOptionsTypes = cliOptionsTypes; - function cliOptionsTypes() { - return { - ...pick_1.default([ - "dev", - "json", - "only", - "optional", - "production", - "registry" - ], config_1.types), - "audit-level": ["low", "moderate", "high", "critical"], - fix: Boolean, - "ignore-registry-errors": Boolean - }; - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.shorthands = { - D: "--dev", - P: "--production" - }; - exports2.commandNames = ["audit"]; - function help() { - return render_help_1.default({ - description: "Checks for known security issues with the installed packages.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Add overrides to the package.json file in order to force non-vulnerable versions of the dependencies", - name: "--fix" - }, - { - description: "Output audit report in JSON format", - name: "--json" - }, - { - description: "Only print advisories with severity greater than or equal to one of the following: low|moderate|high|critical. Default: low", - name: "--audit-level " - }, - { - description: 'Only audit "devDependencies"', - name: "--dev", - shortAlias: "-D" - }, - { - description: 'Only audit "dependencies" and "optionalDependencies"', - name: "--prod", - shortAlias: "-P" - }, - { - description: `Don't audit "optionalDependencies"`, - name: "--no-optional" - }, - { - description: "Use exit code 0 if the registry responds with an error. Useful when audit checks are used in CI. A build should fail because the registry has issues.", - name: "--ignore-registry-errors" - } - ] - } - ], - url: cli_utils_1.docsUrl("audit"), - usages: ["pnpm audit [options]"] - }); - } - exports2.help = help; - async function handler(opts) { - var _a, _b; - const lockfile = await lockfile_file_1.readWantedLockfile((_a = opts.lockfileDir) !== null && _a !== void 0 ? _a : opts.dir, { ignoreIncompatible: true }); - if (lockfile == null) { - throw new error_1.default("AUDIT_NO_LOCKFILE", `No ${constants_1.WANTED_LOCKFILE} found: Cannot audit a project without a lockfile`); - } - const include = { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.optional !== false - }; - let auditReport; - try { - auditReport = await audit_1.default(lockfile, { - include, - registry: opts.registries.default, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - timeout: opts.fetchTimeout - }); - } catch (err) { - if (opts.ignoreRegistryErrors) { - return { - exitCode: 0, - output: err.message - }; + module2.exports = (Base) => class extends Base { + warn(code, message2, data = {}) { + if (this.file) { + data.file = this.file; } - } - if (opts.fix) { - const newOverrides = await fix_1.default(opts.dir, auditReport); - if (Object.values(newOverrides).length === 0) { - return { - exitCode: 0, - output: "No fixes were made" - }; + if (this.cwd) { + data.cwd = this.cwd; + } + data.code = message2 instanceof Error && message2.code || code; + data.tarCode = code; + if (!this.strict && data.recoverable !== false) { + if (message2 instanceof Error) { + data = Object.assign(message2, data); + message2 = message2.message; + } + this.emit("warn", data.tarCode, message2, data); + } else if (message2 instanceof Error) { + this.emit("error", Object.assign(message2, data)); + } else { + this.emit("error", Object.assign(new Error(`${code}: ${message2}`), data)); } - return { - exitCode: 0, - output: `${Object.values(newOverrides).length} overrides were added to package.json to fix vulnerabilities. -Run "pnpm install" to apply the fixes. - -The added overrides: -${JSON.stringify(newOverrides, null, 2)}` - }; - } - const vulnerabilities = auditReport.metadata.vulnerabilities; - const totalVulnerabilityCount = Object.values(vulnerabilities).reduce((sum, vulnerabilitiesCount) => sum + vulnerabilitiesCount, 0); - if (opts.json) { - return { - exitCode: totalVulnerabilityCount > 0 ? 1 : 0, - output: JSON.stringify(auditReport, null, 2) - }; - } - let output = ""; - const auditLevel = AUDIT_LEVEL_NUMBER[(_b = opts.auditLevel) !== null && _b !== void 0 ? _b : "low"]; - const advisories = Object.values(auditReport.advisories).filter(({ severity }) => AUDIT_LEVEL_NUMBER[severity] >= auditLevel).sort((a1, a2) => AUDIT_LEVEL_NUMBER[a2.severity] - AUDIT_LEVEL_NUMBER[a1.severity]); - for (const advisory of advisories) { - output += table_1.table([ - [AUDIT_COLOR[advisory.severity](advisory.severity), chalk_1.default.bold(advisory.title)], - ["Package", advisory.module_name], - ["Vulnerable versions", advisory.vulnerable_versions], - ["Patched versions", advisory.patched_versions], - ["More info", advisory.url] - ], cli_utils_1.TABLE_OPTIONS); } - return { - exitCode: output ? 1 : 0, - output: `${output}${reportSummary(auditReport.metadata.vulnerabilities, totalVulnerabilityCount)}` - }; - } - exports2.handler = handler; - function reportSummary(vulnerabilities, totalVulnerabilityCount) { - if (totalVulnerabilityCount === 0) - return "No known vulnerabilities found\n"; - return `${chalk_1.default.red(totalVulnerabilityCount)} vulnerabilities found -Severity: ${Object.entries(vulnerabilities).filter(([auditLevel, vulnerabilitiesCount]) => vulnerabilitiesCount > 0).map(([auditLevel, vulnerabilitiesCount]) => AUDIT_COLOR[auditLevel](`${vulnerabilitiesCount} ${auditLevel}`)).join(" | ")}`; - } + }; } }); -// ../plugin-commands-audit/lib/index.js -var require_lib58 = __commonJS({ - "../plugin-commands-audit/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/winchars.js +var require_winchars = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/winchars.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + var raw = [ + "|", + "<", + ">", + "?", + ":" + ]; + var win = raw.map((char) => String.fromCharCode(61440 + char.charCodeAt(0))); + var toWin = new Map(raw.map((char, i) => [char, win[i]])); + var toRaw = new Map(win.map((char, i) => [char, raw[i]])); + module2.exports = { + encode: (s) => raw.reduce((s2, c) => s2.split(c).join(toWin.get(c)), s), + decode: (s) => win.reduce((s2, c) => s2.split(c).join(toRaw.get(c)), s) }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.audit = void 0; - var audit = __importStar2(require_audit2()); - exports2.audit = audit; } }); -// ../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/lib/rng.js -var require_rng = __commonJS({ - "../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/lib/rng.js"(exports2, module2) { - var crypto = require("crypto"); - module2.exports = function nodeRNG() { - return crypto.randomBytes(16); +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/strip-absolute-path.js +var require_strip_absolute_path = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/strip-absolute-path.js"(exports2, module2) { + var { isAbsolute, parse: parse2 } = require("path").win32; + module2.exports = (path2) => { + let r = ""; + let parsed = parse2(path2); + while (isAbsolute(path2) || parsed.root) { + const root = path2.charAt(0) === "/" && path2.slice(0, 4) !== "//?/" ? "/" : parsed.root; + path2 = path2.slice(root.length); + r += root; + parsed = parse2(path2); + } + return [r, path2]; }; } }); -// ../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/lib/bytesToUuid.js -var require_bytesToUuid = __commonJS({ - "../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/lib/bytesToUuid.js"(exports2, module2) { - var byteToHex = []; - for (i = 0; i < 256; ++i) { - byteToHex[i] = (i + 256).toString(16).substr(1); - } - var i; - function bytesToUuid(buf, offset) { - var i2 = offset || 0; - var bth = byteToHex; - return [ - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]], - "-", - bth[buf[i2++]], - bth[buf[i2++]], - "-", - bth[buf[i2++]], - bth[buf[i2++]], - "-", - bth[buf[i2++]], - bth[buf[i2++]], - "-", - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]], - bth[buf[i2++]] - ].join(""); - } - module2.exports = bytesToUuid; - } -}); - -// ../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/v1.js -var require_v1 = __commonJS({ - "../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/v1.js"(exports2, module2) { - var rng = require_rng(); - var bytesToUuid = require_bytesToUuid(); - var _nodeId; - var _clockseq; - var _lastMSecs = 0; - var _lastNSecs = 0; - function v1(options, buf, offset) { - var i = buf && offset || 0; - var b = buf || []; - options = options || {}; - var node = options.node || _nodeId; - var clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; - if (node == null || clockseq == null) { - var seedBytes = rng(); - if (node == null) { - node = _nodeId = [ - seedBytes[0] | 1, - seedBytes[1], - seedBytes[2], - seedBytes[3], - seedBytes[4], - seedBytes[5] - ]; - } - if (clockseq == null) { - clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383; - } - } - var msecs = options.msecs !== void 0 ? options.msecs : new Date().getTime(); - var nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; - var dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; - if (dt < 0 && options.clockseq === void 0) { - clockseq = clockseq + 1 & 16383; - } - if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) { - nsecs = 0; - } - if (nsecs >= 1e4) { - throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); - } - _lastMSecs = msecs; - _lastNSecs = nsecs; - _clockseq = clockseq; - msecs += 122192928e5; - var tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; - b[i++] = tl >>> 24 & 255; - b[i++] = tl >>> 16 & 255; - b[i++] = tl >>> 8 & 255; - b[i++] = tl & 255; - var tmh = msecs / 4294967296 * 1e4 & 268435455; - b[i++] = tmh >>> 8 & 255; - b[i++] = tmh & 255; - b[i++] = tmh >>> 24 & 15 | 16; - b[i++] = tmh >>> 16 & 255; - b[i++] = clockseq >>> 8 | 128; - b[i++] = clockseq & 255; - for (var n = 0; n < 6; ++n) { - b[i + n] = node[n]; - } - return buf ? buf : bytesToUuid(b); - } - module2.exports = v1; - } -}); - -// ../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/v4.js -var require_v4 = __commonJS({ - "../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/v4.js"(exports2, module2) { - var rng = require_rng(); - var bytesToUuid = require_bytesToUuid(); - function v4(options, buf, offset) { - var i = buf && offset || 0; - if (typeof options == "string") { - buf = options === "binary" ? new Array(16) : null; - options = null; +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/mode-fix.js +var require_mode_fix = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/mode-fix.js"(exports2, module2) { + "use strict"; + module2.exports = (mode, isDir, portable) => { + mode &= 4095; + if (portable) { + mode = (mode | 384) & ~18; } - options = options || {}; - var rnds = options.random || (options.rng || rng)(); - rnds[6] = rnds[6] & 15 | 64; - rnds[8] = rnds[8] & 63 | 128; - if (buf) { - for (var ii = 0; ii < 16; ++ii) { - buf[i + ii] = rnds[ii]; + if (isDir) { + if (mode & 256) { + mode |= 64; + } + if (mode & 32) { + mode |= 8; + } + if (mode & 4) { + mode |= 1; } } - return buf || bytesToUuid(rnds); - } - module2.exports = v4; - } -}); - -// ../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/index.js -var require_uuid = __commonJS({ - "../../node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/index.js"(exports2, module2) { - var v1 = require_v1(); - var v4 = require_v4(); - var uuid = v4; - uuid.v1 = v1; - uuid.v4 = v4; - module2.exports = uuid; + return mode; + }; } }); -// ../server/lib/connectStoreController.js -var require_connectStoreController = __commonJS({ - "../server/lib/connectStoreController.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/write-entry.js +var require_write_entry = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/write-entry.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var { Minipass } = require_minipass2(); + var Pax = require_pax(); + var Header = require_header(); + var fs2 = require("fs"); + var path2 = require("path"); + var normPath = require_normalize_windows_path(); + var stripSlash = require_strip_trailing_slashes(); + var prefixPath = (path3, prefix) => { + if (!prefix) { + return normPath(path3); + } + path3 = normPath(path3).replace(/^\.(\/|$)/, ""); + return stripSlash(prefix) + "/" + path3; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fetch_1 = __importDefault(require_lib29()); - var p_limit_1 = __importDefault(require_p_limit()); - var promise_share_1 = __importDefault(require_promise_share()); - var uuid_1 = __importDefault(require_uuid()); - async function default_1(initOpts) { - var _a; - const remotePrefix = initOpts.remotePrefix; - const limitedFetch = limitFetch.bind(null, p_limit_1.default((_a = initOpts.concurrency) !== null && _a !== void 0 ? _a : 100)); - return new Promise((resolve, reject) => { - resolve({ - close: async () => { - }, - fetchPackage: fetchPackage.bind(null, remotePrefix, limitedFetch), - importPackage: async (to, opts) => { - return limitedFetch(`${remotePrefix}/importPackage`, { - opts, - to - }); - }, - prune: async () => { - await limitedFetch(`${remotePrefix}/prune`, {}); - }, - requestPackage: requestPackage.bind(null, remotePrefix, limitedFetch), - stop: async () => { - await limitedFetch(`${remotePrefix}/stop`, {}); - }, - upload: async (builtPkgLocation, opts) => { - await limitedFetch(`${remotePrefix}/upload`, { - builtPkgLocation, - opts - }); + var maxReadSize = 16 * 1024 * 1024; + var PROCESS = Symbol("process"); + var FILE = Symbol("file"); + var DIRECTORY = Symbol("directory"); + var SYMLINK = Symbol("symlink"); + var HARDLINK = Symbol("hardlink"); + var HEADER = Symbol("header"); + var READ = Symbol("read"); + var LSTAT = Symbol("lstat"); + var ONLSTAT = Symbol("onlstat"); + var ONREAD = Symbol("onread"); + var ONREADLINK = Symbol("onreadlink"); + var OPENFILE = Symbol("openfile"); + var ONOPENFILE = Symbol("onopenfile"); + var CLOSE = Symbol("close"); + var MODE = Symbol("mode"); + var AWAITDRAIN = Symbol("awaitDrain"); + var ONDRAIN = Symbol("ondrain"); + var PREFIX = Symbol("prefix"); + var HAD_ERROR = Symbol("hadError"); + var warner = require_warn_mixin(); + var winchars = require_winchars(); + var stripAbsolutePath = require_strip_absolute_path(); + var modeFix = require_mode_fix(); + var WriteEntry = warner(class WriteEntry extends Minipass { + constructor(p, opt) { + opt = opt || {}; + super(opt); + if (typeof p !== "string") { + throw new TypeError("path is required"); + } + this.path = normPath(p); + this.portable = !!opt.portable; + this.myuid = process.getuid && process.getuid() || 0; + this.myuser = process.env.USER || ""; + this.maxReadSize = opt.maxReadSize || maxReadSize; + this.linkCache = opt.linkCache || /* @__PURE__ */ new Map(); + this.statCache = opt.statCache || /* @__PURE__ */ new Map(); + this.preservePaths = !!opt.preservePaths; + this.cwd = normPath(opt.cwd || process.cwd()); + this.strict = !!opt.strict; + this.noPax = !!opt.noPax; + this.noMtime = !!opt.noMtime; + this.mtime = opt.mtime || null; + this.prefix = opt.prefix ? normPath(opt.prefix) : null; + this.fd = null; + this.blockLen = null; + this.blockRemain = null; + this.buf = null; + this.offset = null; + this.length = null; + this.pos = null; + this.remain = null; + if (typeof opt.onwarn === "function") { + this.on("warn", opt.onwarn); + } + let pathWarn = false; + if (!this.preservePaths) { + const [root, stripped] = stripAbsolutePath(this.path); + if (root) { + this.path = stripped; + pathWarn = root; + } + } + this.win32 = !!opt.win32 || process.platform === "win32"; + if (this.win32) { + this.path = winchars.decode(this.path.replace(/\\/g, "/")); + p = p.replace(/\\/g, "/"); + } + this.absolute = normPath(opt.absolute || path2.resolve(this.cwd, p)); + if (this.path === "") { + this.path = "./"; + } + if (pathWarn) { + this.warn("TAR_ENTRY_INFO", `stripping ${pathWarn} from absolute path`, { + entry: this, + path: pathWarn + this.path + }); + } + if (this.statCache.has(this.absolute)) { + this[ONLSTAT](this.statCache.get(this.absolute)); + } else { + this[LSTAT](); + } + } + emit(ev, ...data) { + if (ev === "error") { + this[HAD_ERROR] = true; + } + return super.emit(ev, ...data); + } + [LSTAT]() { + fs2.lstat(this.absolute, (er, stat) => { + if (er) { + return this.emit("error", er); } + this[ONLSTAT](stat); }); - }); - } - exports2.default = default_1; - function limitFetch(limit, url, body) { - return limit(async () => { - if (url.startsWith("http://unix:")) { - url = url.replace("http://unix:", "unix:"); - } - const response = await fetch_1.default(url, { - body: JSON.stringify(body), - headers: { "Content-Type": "application/json" }, - method: "POST", - retry: { - retries: 100 + } + [ONLSTAT](stat) { + this.statCache.set(this.absolute, stat); + this.stat = stat; + if (!stat.isFile()) { + stat.size = 0; + } + this.type = getType(stat); + this.emit("stat", stat); + this[PROCESS](); + } + [PROCESS]() { + switch (this.type) { + case "File": + return this[FILE](); + case "Directory": + return this[DIRECTORY](); + case "SymbolicLink": + return this[SYMLINK](); + default: + return this.end(); + } + } + [MODE](mode) { + return modeFix(mode, this.type === "Directory", this.portable); + } + [PREFIX](path3) { + return prefixPath(path3, this.prefix); + } + [HEADER]() { + if (this.type === "Directory" && this.portable) { + this.noMtime = true; + } + this.header = new Header({ + path: this[PREFIX](this.path), + // only apply the prefix to hard links. + linkpath: this.type === "Link" ? this[PREFIX](this.linkpath) : this.linkpath, + // only the permissions and setuid/setgid/sticky bitflags + // not the higher-order bits that specify file type + mode: this[MODE](this.stat.mode), + uid: this.portable ? null : this.stat.uid, + gid: this.portable ? null : this.stat.gid, + size: this.stat.size, + mtime: this.noMtime ? null : this.mtime || this.stat.mtime, + type: this.type, + uname: this.portable ? null : this.stat.uid === this.myuid ? this.myuser : "", + atime: this.portable ? null : this.stat.atime, + ctime: this.portable ? null : this.stat.ctime + }); + if (this.header.encode() && !this.noPax) { + super.write(new Pax({ + atime: this.portable ? null : this.header.atime, + ctime: this.portable ? null : this.header.ctime, + gid: this.portable ? null : this.header.gid, + mtime: this.noMtime ? null : this.mtime || this.header.mtime, + path: this[PREFIX](this.path), + linkpath: this.type === "Link" ? this[PREFIX](this.linkpath) : this.linkpath, + size: this.header.size, + uid: this.portable ? null : this.header.uid, + uname: this.portable ? null : this.header.uname, + dev: this.portable ? null : this.stat.dev, + ino: this.portable ? null : this.stat.ino, + nlink: this.portable ? null : this.stat.nlink + }).encode()); + } + super.write(this.header.block); + } + [DIRECTORY]() { + if (this.path.slice(-1) !== "/") { + this.path += "/"; + } + this.stat.size = 0; + this[HEADER](); + this.end(); + } + [SYMLINK]() { + fs2.readlink(this.absolute, (er, linkpath) => { + if (er) { + return this.emit("error", er); } + this[ONREADLINK](linkpath); }); - if (!response.ok) { - throw await response.json(); + } + [ONREADLINK](linkpath) { + this.linkpath = normPath(linkpath); + this[HEADER](); + this.end(); + } + [HARDLINK](linkpath) { + this.type = "Link"; + this.linkpath = normPath(path2.relative(this.cwd, linkpath)); + this.stat.size = 0; + this[HEADER](); + this.end(); + } + [FILE]() { + if (this.stat.nlink > 1) { + const linkKey = this.stat.dev + ":" + this.stat.ino; + if (this.linkCache.has(linkKey)) { + const linkpath = this.linkCache.get(linkKey); + if (linkpath.indexOf(this.cwd) === 0) { + return this[HARDLINK](linkpath); + } + } + this.linkCache.set(linkKey, this.absolute); } - const json = await response.json(); - if (json.error) { - throw json.error; + this[HEADER](); + if (this.stat.size === 0) { + return this.end(); } - return json; - }); - } - async function requestPackage(remotePrefix, limitedFetch, wantedDependency, options) { - const msgId = uuid_1.default.v4(); - return limitedFetch(`${remotePrefix}/requestPackage`, { - msgId, - options, - wantedDependency - }).then((packageResponseBody) => { - const fetchingBundledManifest = !packageResponseBody["fetchingBundledManifestInProgress"] ? void 0 : limitedFetch(`${remotePrefix}/rawManifestResponse`, { - msgId + this[OPENFILE](); + } + [OPENFILE]() { + fs2.open(this.absolute, "r", (er, fd) => { + if (er) { + return this.emit("error", er); + } + this[ONOPENFILE](fd); }); - delete packageResponseBody["fetchingBundledManifestInProgress"]; - if (options.skipFetch) { - return { - body: packageResponseBody, - bundledManifest: fetchingBundledManifest && promise_share_1.default(fetchingBundledManifest) - }; + } + [ONOPENFILE](fd) { + this.fd = fd; + if (this[HAD_ERROR]) { + return this[CLOSE](); } - const fetchingFiles = limitedFetch(`${remotePrefix}/packageFilesResponse`, { - msgId - }); - return { - body: packageResponseBody, - bundledManifest: fetchingBundledManifest && promise_share_1.default(fetchingBundledManifest), - files: promise_share_1.default(fetchingFiles), - finishing: promise_share_1.default(Promise.all([fetchingBundledManifest, fetchingFiles]).then(() => void 0)) - }; - }); - } - function fetchPackage(remotePrefix, limitedFetch, options) { - const msgId = uuid_1.default.v4(); - return limitedFetch(`${remotePrefix}/fetchPackage`, { - msgId, - options - }).then((fetchResponseBody) => { - const fetchingBundledManifest = options.fetchRawManifest ? limitedFetch(`${remotePrefix}/rawManifestResponse`, { msgId }) : void 0; - const fetchingFiles = limitedFetch(`${remotePrefix}/packageFilesResponse`, { - msgId + this.blockLen = 512 * Math.ceil(this.stat.size / 512); + this.blockRemain = this.blockLen; + const bufLen = Math.min(this.blockLen, this.maxReadSize); + this.buf = Buffer.allocUnsafe(bufLen); + this.offset = 0; + this.pos = 0; + this.remain = this.stat.size; + this.length = this.buf.length; + this[READ](); + } + [READ]() { + const { fd, buf, offset, length, pos } = this; + fs2.read(fd, buf, offset, length, pos, (er, bytesRead) => { + if (er) { + return this[CLOSE](() => this.emit("error", er)); + } + this[ONREAD](bytesRead); }); - return { - bundledManifest: fetchingBundledManifest && promise_share_1.default(fetchingBundledManifest), - files: promise_share_1.default(fetchingFiles), - filesIndexFile: fetchResponseBody.filesIndexFile, - finishing: promise_share_1.default(Promise.all([fetchingBundledManifest, fetchingFiles]).then(() => void 0)), - inStoreLocation: fetchResponseBody.inStoreLocation - }; - }); - } - } -}); - -// ../server/lib/lock.js -var require_lock = __commonJS({ - "../server/lib/lock.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function lock() { - const locks = {}; - return async (key, fn2) => { - if (locks[key] != null) - return locks[key]; - locks[key] = fn2(); - fn2().then(() => delete locks[key], () => delete locks[key]); - return locks[key]; - }; - } - exports2.default = lock; - } -}); - -// ../server/lib/createServer.js -var require_createServer = __commonJS({ - "../server/lib/createServer.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var http_1 = __importDefault(require("http")); - var logger_1 = require_lib6(); - var lock_1 = __importDefault(require_lock()); - function default_1(store, opts) { - const rawManifestPromises = {}; - const filesPromises = {}; - const lock = lock_1.default(); - const server = http_1.default.createServer(async (req, res) => { - var _a; - if (req.method !== "POST") { - res.statusCode = 405; - const responseError = { error: `Only POST is allowed, received ${(_a = req.method) !== null && _a !== void 0 ? _a : "unknown"}` }; - res.setHeader("Allow", "POST"); - res.end(JSON.stringify(responseError)); - return; + } + [CLOSE](cb) { + fs2.close(this.fd, cb); + } + [ONREAD](bytesRead) { + if (bytesRead <= 0 && this.remain > 0) { + const er = new Error("encountered unexpected EOF"); + er.path = this.absolute; + er.syscall = "read"; + er.code = "EOF"; + return this[CLOSE](() => this.emit("error", er)); + } + if (bytesRead > this.remain) { + const er = new Error("did not encounter expected EOF"); + er.path = this.absolute; + er.syscall = "read"; + er.code = "EOF"; + return this[CLOSE](() => this.emit("error", er)); + } + if (bytesRead === this.remain) { + for (let i = bytesRead; i < this.length && bytesRead < this.blockRemain; i++) { + this.buf[i + this.offset] = 0; + bytesRead++; + this.remain++; + } + } + const writeBuf = this.offset === 0 && bytesRead === this.buf.length ? this.buf : this.buf.slice(this.offset, this.offset + bytesRead); + const flushed = this.write(writeBuf); + if (!flushed) { + this[AWAITDRAIN](() => this[ONDRAIN]()); + } else { + this[ONDRAIN](); } - const bodyPromise = new Promise((resolve, reject) => { - let body = ""; - req.on("data", (data) => { - body += data; - }); - req.on("end", async () => { - try { - if (body.length > 0) { - body = JSON.parse(body); - } else { - body = {}; - } - resolve(body); - } catch (e) { - reject(e); - } - }); - }); + } + [AWAITDRAIN](cb) { + this.once("drain", cb); + } + write(writeBuf) { + if (this.blockRemain < writeBuf.length) { + const er = new Error("writing more data than expected"); + er.path = this.absolute; + return this.emit("error", er); + } + this.remain -= writeBuf.length; + this.blockRemain -= writeBuf.length; + this.pos += writeBuf.length; + this.offset += writeBuf.length; + return super.write(writeBuf); + } + [ONDRAIN]() { + if (!this.remain) { + if (this.blockRemain) { + super.write(Buffer.alloc(this.blockRemain)); + } + return this[CLOSE]((er) => er ? this.emit("error", er) : this.end()); + } + if (this.offset >= this.length) { + this.buf = Buffer.allocUnsafe(Math.min(this.blockRemain, this.buf.length)); + this.offset = 0; + } + this.length = this.buf.length - this.offset; + this[READ](); + } + }); + var WriteEntrySync = class extends WriteEntry { + [LSTAT]() { + this[ONLSTAT](fs2.lstatSync(this.absolute)); + } + [SYMLINK]() { + this[ONREADLINK](fs2.readlinkSync(this.absolute)); + } + [OPENFILE]() { + this[ONOPENFILE](fs2.openSync(this.absolute, "r")); + } + [READ]() { + let threw = true; try { - let body; - switch (req.url) { - case "/requestPackage": { - try { - body = await bodyPromise; - const pkgResponse = await store.requestPackage(body.wantedDependency, body.options); - if (pkgResponse["bundledManifest"]) { - rawManifestPromises[body.msgId] = pkgResponse["bundledManifest"]; - pkgResponse.body["fetchingBundledManifestInProgress"] = true; - } - if (pkgResponse["files"]) { - filesPromises[body.msgId] = pkgResponse["files"]; - } - res.end(JSON.stringify(pkgResponse.body)); - } catch (err) { - res.end(JSON.stringify({ - error: { - message: err.message, - ...JSON.parse(JSON.stringify(err)) - } - })); - } - break; - } - case "/fetchPackage": { - try { - body = await bodyPromise; - const pkgResponse = store.fetchPackage(body.options); - if (pkgResponse["bundledManifest"]) { - rawManifestPromises[body.msgId] = pkgResponse["bundledManifest"]; - } - if (pkgResponse["files"]) { - filesPromises[body.msgId] = pkgResponse["files"]; - } - res.end(JSON.stringify({ filesIndexFile: pkgResponse.filesIndexFile })); - } catch (err) { - res.end(JSON.stringify({ - error: { - message: err.message, - ...JSON.parse(JSON.stringify(err)) - } - })); - } - break; - } - case "/packageFilesResponse": { - body = await bodyPromise; - const filesResponse = await filesPromises[body.msgId](); - delete filesPromises[body.msgId]; - res.end(JSON.stringify(filesResponse)); - break; - } - case "/rawManifestResponse": { - body = await bodyPromise; - const manifestResponse = await rawManifestPromises[body.msgId](); - delete rawManifestPromises[body.msgId]; - res.end(JSON.stringify(manifestResponse)); - break; - } - case "/prune": - res.statusCode = 403; - res.end(); - break; - case "/importPackage": { - const importPackageBody = await bodyPromise; - await store.importPackage(importPackageBody.to, importPackageBody.opts); - res.end(JSON.stringify("OK")); - break; - } - case "/upload": { - if (opts.ignoreUploadRequests) { - res.statusCode = 403; - res.end(); - break; - } - const uploadBody = await bodyPromise; - await lock(uploadBody.builtPkgLocation, async () => store.upload(uploadBody.builtPkgLocation, uploadBody.opts)); - res.end(JSON.stringify("OK")); - break; - } - case "/stop": - if (opts.ignoreStopRequests) { - res.statusCode = 403; - res.end(); - break; - } - logger_1.globalInfo("Got request to stop the server"); - await close(); - res.end(JSON.stringify("OK")); - logger_1.globalInfo("Server stopped"); - break; - default: { - res.statusCode = 404; - const error = { error: `${req.url} does not match any route` }; - res.end(JSON.stringify(error)); + const { fd, buf, offset, length, pos } = this; + const bytesRead = fs2.readSync(fd, buf, offset, length, pos); + this[ONREAD](bytesRead); + threw = false; + } finally { + if (threw) { + try { + this[CLOSE](() => { + }); + } catch (er) { } } - } catch (e) { - res.statusCode = 503; - const jsonErr = JSON.parse(JSON.stringify(e)); - jsonErr.message = e.message; - res.end(JSON.stringify(jsonErr)); } - }); - let listener; - if (opts.path) { - listener = server.listen(opts.path); - } else { - listener = server.listen(opts.port, opts.hostname); } - return { close }; - async function close() { - listener.close(); - return store.close(); + [AWAITDRAIN](cb) { + cb(); + } + [CLOSE](cb) { + fs2.closeSync(this.fd); + cb(); } - } - exports2.default = default_1; - } -}); - -// ../server/lib/index.js -var require_lib59 = __commonJS({ - "../server/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.connectStoreController = exports2.createServer = void 0; - var connectStoreController_1 = __importDefault(require_connectStoreController()); - exports2.connectStoreController = connectStoreController_1.default; - var createServer_1 = __importDefault(require_createServer()); - exports2.createServer = createServer_1.default; + var WriteEntryTar = warner(class WriteEntryTar extends Minipass { + constructor(readEntry, opt) { + opt = opt || {}; + super(opt); + this.preservePaths = !!opt.preservePaths; + this.portable = !!opt.portable; + this.strict = !!opt.strict; + this.noPax = !!opt.noPax; + this.noMtime = !!opt.noMtime; + this.readEntry = readEntry; + this.type = readEntry.type; + if (this.type === "Directory" && this.portable) { + this.noMtime = true; + } + this.prefix = opt.prefix || null; + this.path = normPath(readEntry.path); + this.mode = this[MODE](readEntry.mode); + this.uid = this.portable ? null : readEntry.uid; + this.gid = this.portable ? null : readEntry.gid; + this.uname = this.portable ? null : readEntry.uname; + this.gname = this.portable ? null : readEntry.gname; + this.size = readEntry.size; + this.mtime = this.noMtime ? null : opt.mtime || readEntry.mtime; + this.atime = this.portable ? null : readEntry.atime; + this.ctime = this.portable ? null : readEntry.ctime; + this.linkpath = normPath(readEntry.linkpath); + if (typeof opt.onwarn === "function") { + this.on("warn", opt.onwarn); + } + let pathWarn = false; + if (!this.preservePaths) { + const [root, stripped] = stripAbsolutePath(this.path); + if (root) { + this.path = stripped; + pathWarn = root; + } + } + this.remain = readEntry.size; + this.blockRemain = readEntry.startBlockSize; + this.header = new Header({ + path: this[PREFIX](this.path), + linkpath: this.type === "Link" ? this[PREFIX](this.linkpath) : this.linkpath, + // only the permissions and setuid/setgid/sticky bitflags + // not the higher-order bits that specify file type + mode: this.mode, + uid: this.portable ? null : this.uid, + gid: this.portable ? null : this.gid, + size: this.size, + mtime: this.noMtime ? null : this.mtime, + type: this.type, + uname: this.portable ? null : this.uname, + atime: this.portable ? null : this.atime, + ctime: this.portable ? null : this.ctime + }); + if (pathWarn) { + this.warn("TAR_ENTRY_INFO", `stripping ${pathWarn} from absolute path`, { + entry: this, + path: pathWarn + this.path + }); + } + if (this.header.encode() && !this.noPax) { + super.write(new Pax({ + atime: this.portable ? null : this.atime, + ctime: this.portable ? null : this.ctime, + gid: this.portable ? null : this.gid, + mtime: this.noMtime ? null : this.mtime, + path: this[PREFIX](this.path), + linkpath: this.type === "Link" ? this[PREFIX](this.linkpath) : this.linkpath, + size: this.size, + uid: this.portable ? null : this.uid, + uname: this.portable ? null : this.uname, + dev: this.portable ? null : this.readEntry.dev, + ino: this.portable ? null : this.readEntry.ino, + nlink: this.portable ? null : this.readEntry.nlink + }).encode()); + } + super.write(this.header.block); + readEntry.pipe(this); + } + [PREFIX](path3) { + return prefixPath(path3, this.prefix); + } + [MODE](mode) { + return modeFix(mode, this.type === "Directory", this.portable); + } + write(data) { + const writeLen = data.length; + if (writeLen > this.blockRemain) { + throw new Error("writing more to entry than is appropriate"); + } + this.blockRemain -= writeLen; + return super.write(data); + } + end() { + if (this.blockRemain) { + super.write(Buffer.alloc(this.blockRemain)); + } + return super.end(); + } + }); + WriteEntry.Sync = WriteEntrySync; + WriteEntry.Tar = WriteEntryTar; + var getType = (stat) => stat.isFile() ? "File" : stat.isDirectory() ? "Directory" : stat.isSymbolicLink() ? "SymbolicLink" : "Unsupported"; + module2.exports = WriteEntry; } }); -// ../../node_modules/.pnpm/delay@5.0.0/node_modules/delay/index.js -var require_delay2 = __commonJS({ - "../../node_modules/.pnpm/delay@5.0.0/node_modules/delay/index.js"(exports2, module2) { - "use strict"; - var randomInteger = (minimum, maximum) => Math.floor(Math.random() * (maximum - minimum + 1) + minimum); - var createAbortError = () => { - const error = new Error("Delay aborted"); - error.name = "AbortError"; - return error; +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/pack.js +var require_pack2 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/pack.js"(exports2, module2) { + "use strict"; + var PackJob = class { + constructor(path3, absolute) { + this.path = path3 || "./"; + this.absolute = absolute; + this.entry = null; + this.stat = null; + this.readdir = null; + this.pending = false; + this.ignore = false; + this.piped = false; + } }; - var createDelay = ({ clearTimeout: defaultClear, setTimeout: set, willResolve }) => (ms, { value, signal } = {}) => { - if (signal && signal.aborted) { - return Promise.reject(createAbortError()); + var { Minipass } = require_minipass2(); + var zlib = require_minizlib(); + var ReadEntry = require_read_entry(); + var WriteEntry = require_write_entry(); + var WriteEntrySync = WriteEntry.Sync; + var WriteEntryTar = WriteEntry.Tar; + var Yallist = require_yallist(); + var EOF = Buffer.alloc(1024); + var ONSTAT = Symbol("onStat"); + var ENDED = Symbol("ended"); + var QUEUE = Symbol("queue"); + var CURRENT = Symbol("current"); + var PROCESS = Symbol("process"); + var PROCESSING = Symbol("processing"); + var PROCESSJOB = Symbol("processJob"); + var JOBS = Symbol("jobs"); + var JOBDONE = Symbol("jobDone"); + var ADDFSENTRY = Symbol("addFSEntry"); + var ADDTARENTRY = Symbol("addTarEntry"); + var STAT = Symbol("stat"); + var READDIR = Symbol("readdir"); + var ONREADDIR = Symbol("onreaddir"); + var PIPE = Symbol("pipe"); + var ENTRY = Symbol("entry"); + var ENTRYOPT = Symbol("entryOpt"); + var WRITEENTRYCLASS = Symbol("writeEntryClass"); + var WRITE = Symbol("write"); + var ONDRAIN = Symbol("ondrain"); + var fs2 = require("fs"); + var path2 = require("path"); + var warner = require_warn_mixin(); + var normPath = require_normalize_windows_path(); + var Pack = warner(class Pack extends Minipass { + constructor(opt) { + super(opt); + opt = opt || /* @__PURE__ */ Object.create(null); + this.opt = opt; + this.file = opt.file || ""; + this.cwd = opt.cwd || process.cwd(); + this.maxReadSize = opt.maxReadSize; + this.preservePaths = !!opt.preservePaths; + this.strict = !!opt.strict; + this.noPax = !!opt.noPax; + this.prefix = normPath(opt.prefix || ""); + this.linkCache = opt.linkCache || /* @__PURE__ */ new Map(); + this.statCache = opt.statCache || /* @__PURE__ */ new Map(); + this.readdirCache = opt.readdirCache || /* @__PURE__ */ new Map(); + this[WRITEENTRYCLASS] = WriteEntry; + if (typeof opt.onwarn === "function") { + this.on("warn", opt.onwarn); + } + this.portable = !!opt.portable; + this.zip = null; + if (opt.gzip) { + if (typeof opt.gzip !== "object") { + opt.gzip = {}; + } + if (this.portable) { + opt.gzip.portable = true; + } + this.zip = new zlib.Gzip(opt.gzip); + this.zip.on("data", (chunk) => super.write(chunk)); + this.zip.on("end", (_) => super.end()); + this.zip.on("drain", (_) => this[ONDRAIN]()); + this.on("resume", (_) => this.zip.resume()); + } else { + this.on("drain", this[ONDRAIN]); + } + this.noDirRecurse = !!opt.noDirRecurse; + this.follow = !!opt.follow; + this.noMtime = !!opt.noMtime; + this.mtime = opt.mtime || null; + this.filter = typeof opt.filter === "function" ? opt.filter : (_) => true; + this[QUEUE] = new Yallist(); + this[JOBS] = 0; + this.jobs = +opt.jobs || 4; + this[PROCESSING] = false; + this[ENDED] = false; + } + [WRITE](chunk) { + return super.write(chunk); + } + add(path3) { + this.write(path3); + return this; } - let timeoutId; - let settle; - let rejectFn; - const clear = defaultClear || clearTimeout; - const signalListener = () => { - clear(timeoutId); - rejectFn(createAbortError()); - }; - const cleanup = () => { - if (signal) { - signal.removeEventListener("abort", signalListener); + end(path3) { + if (path3) { + this.write(path3); } - }; - const delayPromise = new Promise((resolve, reject) => { - settle = () => { - cleanup(); - if (willResolve) { - resolve(value); + this[ENDED] = true; + this[PROCESS](); + return this; + } + write(path3) { + if (this[ENDED]) { + throw new Error("write after end"); + } + if (path3 instanceof ReadEntry) { + this[ADDTARENTRY](path3); + } else { + this[ADDFSENTRY](path3); + } + return this.flowing; + } + [ADDTARENTRY](p) { + const absolute = normPath(path2.resolve(this.cwd, p.path)); + if (!this.filter(p.path, p)) { + p.resume(); + } else { + const job = new PackJob(p.path, absolute, false); + job.entry = new WriteEntryTar(p, this[ENTRYOPT](job)); + job.entry.on("end", (_) => this[JOBDONE](job)); + this[JOBS] += 1; + this[QUEUE].push(job); + } + this[PROCESS](); + } + [ADDFSENTRY](p) { + const absolute = normPath(path2.resolve(this.cwd, p)); + this[QUEUE].push(new PackJob(p, absolute)); + this[PROCESS](); + } + [STAT](job) { + job.pending = true; + this[JOBS] += 1; + const stat = this.follow ? "stat" : "lstat"; + fs2[stat](job.absolute, (er, stat2) => { + job.pending = false; + this[JOBS] -= 1; + if (er) { + this.emit("error", er); } else { - reject(value); + this[ONSTAT](job, stat2); } - }; - rejectFn = reject; - timeoutId = (set || setTimeout)(settle, ms); - }); - if (signal) { - signal.addEventListener("abort", signalListener, { once: true }); + }); } - delayPromise.clear = () => { - clear(timeoutId); - timeoutId = null; - settle(); - }; - return delayPromise; - }; - var createWithTimers = (clearAndSet) => { - const delay2 = createDelay({ ...clearAndSet, willResolve: true }); - delay2.reject = createDelay({ ...clearAndSet, willResolve: false }); - delay2.range = (minimum, maximum, options) => delay2(randomInteger(minimum, maximum), options); - return delay2; - }; - var delay = createWithTimers(); - delay.createWithTimers = createWithTimers; - module2.exports = delay; - module2.exports.default = delay; - } -}); - -// ../store-connection-manager/lib/createNewStoreController.js -var require_createNewStoreController = __commonJS({ - "../store-connection-manager/lib/createNewStoreController.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var client_1 = __importDefault(require_lib49()); - var package_store_1 = __importDefault(require_lib37()); - var cli_meta_1 = __importDefault(require_lib4()); - exports2.default = async (opts) => { - var _a; - const { resolve, fetchers } = client_1.default({ - authConfig: opts.rawConfig, - ca: opts.ca, - cacheDir: opts.cacheDir, - cert: opts.cert, - fullMetadata: false, - httpProxy: opts.httpProxy, - httpsProxy: opts.httpsProxy, - key: opts.key, - localAddress: opts.localAddress, - noProxy: opts.noProxy, - offline: opts.offline, - preferOffline: opts.preferOffline, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - strictSsl: (_a = opts.strictSsl) !== null && _a !== void 0 ? _a : true, - timeout: opts.fetchTimeout, - userAgent: opts.userAgent, - maxSockets: opts.networkConcurrency != null ? opts.networkConcurrency * 3 : void 0 - }); - await fs_1.promises.mkdir(opts.storeDir, { recursive: true }); - return { - ctrl: await package_store_1.default(resolve, fetchers, { - engineStrict: opts.engineStrict, - force: opts.force, - nodeVersion: opts.nodeVersion, - pnpmVersion: cli_meta_1.default.version, - ignoreFile: opts.ignoreFile, - networkConcurrency: opts.networkConcurrency, - packageImportMethod: opts.packageImportMethod, - storeDir: opts.storeDir, - verifyStoreIntegrity: typeof opts.verifyStoreIntegrity === "boolean" ? opts.verifyStoreIntegrity : true - }), - dir: opts.storeDir - }; - }; - } -}); - -// ../../node_modules/.pnpm/proc-output@1.0.8/node_modules/proc-output/lib/index.js -var require_lib60 = __commonJS({ - "../../node_modules/.pnpm/proc-output@1.0.8/node_modules/proc-output/lib/index.js"(exports2, module2) { - "use strict"; - module2.exports = function procOutput(proc, cb) { - var stdout = "", stderr = ""; - proc.on("error", function(err) { - cb(err); - }); - proc.stdout.on("data", function(chunk) { - return stdout += chunk; - }); - proc.stderr.on("data", function(chunk) { - return stderr += chunk; - }); - proc.on("close", function(code) { - return cb(null, stdout, stderr, code); - }); - return proc; - }; - } -}); - -// ../../node_modules/.pnpm/spawno@2.1.1/node_modules/spawno/lib/index.js -var require_lib61 = __commonJS({ - "../../node_modules/.pnpm/spawno@2.1.1/node_modules/spawno/lib/index.js"(exports2, module2) { - "use strict"; - var spawn = require("child_process").spawn; - var procOutput = require_lib60(); - module2.exports = function spawno(command, args2, options, cb) { - if (typeof args2 === "function") { - cb = args2; - args2 = []; - options = {}; + [ONSTAT](job, stat) { + this.statCache.set(job.absolute, stat); + job.stat = stat; + if (!this.filter(job.path, stat)) { + job.ignore = true; + } + this[PROCESS](); + } + [READDIR](job) { + job.pending = true; + this[JOBS] += 1; + fs2.readdir(job.absolute, (er, entries) => { + job.pending = false; + this[JOBS] -= 1; + if (er) { + return this.emit("error", er); + } + this[ONREADDIR](job, entries); + }); + } + [ONREADDIR](job, entries) { + this.readdirCache.set(job.absolute, entries); + job.readdir = entries; + this[PROCESS](); + } + [PROCESS]() { + if (this[PROCESSING]) { + return; + } + this[PROCESSING] = true; + for (let w = this[QUEUE].head; w !== null && this[JOBS] < this.jobs; w = w.next) { + this[PROCESSJOB](w.value); + if (w.value.ignore) { + const p = w.next; + this[QUEUE].removeNode(w); + w.next = p; + } + } + this[PROCESSING] = false; + if (this[ENDED] && !this[QUEUE].length && this[JOBS] === 0) { + if (this.zip) { + this.zip.end(EOF); + } else { + super.write(EOF); + super.end(); + } + } + } + get [CURRENT]() { + return this[QUEUE] && this[QUEUE].head && this[QUEUE].head.value; + } + [JOBDONE](job) { + this[QUEUE].shift(); + this[JOBS] -= 1; + this[PROCESS](); + } + [PROCESSJOB](job) { + if (job.pending) { + return; + } + if (job.entry) { + if (job === this[CURRENT] && !job.piped) { + this[PIPE](job); + } + return; + } + if (!job.stat) { + if (this.statCache.has(job.absolute)) { + this[ONSTAT](job, this.statCache.get(job.absolute)); + } else { + this[STAT](job); + } + } + if (!job.stat) { + return; + } + if (job.ignore) { + return; + } + if (!this.noDirRecurse && job.stat.isDirectory() && !job.readdir) { + if (this.readdirCache.has(job.absolute)) { + this[ONREADDIR](job, this.readdirCache.get(job.absolute)); + } else { + this[READDIR](job); + } + if (!job.readdir) { + return; + } + } + job.entry = this[ENTRY](job); + if (!job.entry) { + job.ignore = true; + return; + } + if (job === this[CURRENT] && !job.piped) { + this[PIPE](job); + } } - if (typeof options === "function") { - cb = options; - if (!Array.isArray(args2)) { - options = args2; - args2 = []; + [ENTRYOPT](job) { + return { + onwarn: (code, msg, data) => this.warn(code, msg, data), + noPax: this.noPax, + cwd: this.cwd, + absolute: job.absolute, + preservePaths: this.preservePaths, + maxReadSize: this.maxReadSize, + strict: this.strict, + portable: this.portable, + linkCache: this.linkCache, + statCache: this.statCache, + noMtime: this.noMtime, + mtime: this.mtime, + prefix: this.prefix + }; + } + [ENTRY](job) { + this[JOBS] += 1; + try { + return new this[WRITEENTRYCLASS](job.path, this[ENTRYOPT](job)).on("end", () => this[JOBDONE](job)).on("error", (er) => this.emit("error", er)); + } catch (er) { + this.emit("error", er); + } + } + [ONDRAIN]() { + if (this[CURRENT] && this[CURRENT].entry) { + this[CURRENT].entry.resume(); + } + } + // like .pipe() but using super, because our write() is special + [PIPE](job) { + job.piped = true; + if (job.readdir) { + job.readdir.forEach((entry) => { + const p = job.path; + const base = p === "./" ? "" : p.replace(/\/*$/, "/"); + this[ADDFSENTRY](base + entry); + }); + } + const source = job.entry; + const zip = this.zip; + if (zip) { + source.on("data", (chunk) => { + if (!zip.write(chunk)) { + source.pause(); + } + }); } else { - options = {}; + source.on("data", (chunk) => { + if (!super.write(chunk)) { + source.pause(); + } + }); } } - options = options || {}; - if (options.input !== false) { - options.input = options.input || ""; + pause() { + if (this.zip) { + this.zip.pause(); + } + return super.pause(); } - var showOutput = options.output, inputData = options.input; - delete options.output; - delete options.input; - var proc = spawn(command, args2, options); - if (showOutput) { - proc.stdout.pipe(process.stdout); - proc.stderr.pipe(process.stderr); + }); + var PackSync = class extends Pack { + constructor(opt) { + super(opt); + this[WRITEENTRYCLASS] = WriteEntrySync; } - if (inputData !== false) { - proc.stdin && proc.stdin.end(inputData); + // pause/resume are no-ops in sync streams. + pause() { } - if (cb) { - procOutput(proc, cb); + resume() { } - return proc; - }; - module2.exports.promise = function(command, args2, options) { - return new Promise(function(resolve, reject) { - module2.exports(command, args2, options, function(err, stdout, stderr, code) { - if (err) { - return reject(err); - } - resolve({ - code, - stdout, - stderr + [STAT](job) { + const stat = this.follow ? "statSync" : "lstatSync"; + this[ONSTAT](job, fs2[stat](job.absolute)); + } + [READDIR](job, stat) { + this[ONREADDIR](job, fs2.readdirSync(job.absolute)); + } + // gotta get it all in this tick + [PIPE](job) { + const source = job.entry; + const zip = this.zip; + if (job.readdir) { + job.readdir.forEach((entry) => { + const p = job.path; + const base = p === "./" ? "" : p.replace(/\/*$/, "/"); + this[ADDFSENTRY](base + entry); }); - }); - }); + } + if (zip) { + source.on("data", (chunk) => { + zip.write(chunk); + }); + } else { + source.on("data", (chunk) => { + super[WRITE](chunk); + }); + } + } }; + Pack.Sync = PackSync; + module2.exports = Pack; } }); -// ../../node_modules/.pnpm/@zkochan+diable@1.0.2/node_modules/@zkochan/diable/lib/index.js -var require_lib62 = __commonJS({ - "../../node_modules/.pnpm/@zkochan+diable@1.0.2/node_modules/@zkochan/diable/lib/index.js"(exports2, module2) { +// ../node_modules/.pnpm/fs-minipass@2.1.0/node_modules/fs-minipass/index.js +var require_fs_minipass = __commonJS({ + "../node_modules/.pnpm/fs-minipass@2.1.0/node_modules/fs-minipass/index.js"(exports2) { "use strict"; - var spawn = require_lib61(); - function Diable(opts) { - if (Diable.isDaemon()) { - return false; + var MiniPass = require_minipass3(); + var EE = require("events").EventEmitter; + var fs2 = require("fs"); + var writev = fs2.writev; + if (!writev) { + const binding = process.binding("fs"); + const FSReqWrap = binding.FSReqWrap || binding.FSReqCallback; + writev = (fd, iovec, pos, cb) => { + const done = (er, bw) => cb(er, bw, iovec); + const req = new FSReqWrap(); + req.oncomplete = done; + binding.writeBuffers(fd, iovec, pos, req); + }; + } + var _autoClose = Symbol("_autoClose"); + var _close = Symbol("_close"); + var _ended = Symbol("_ended"); + var _fd = Symbol("_fd"); + var _finished = Symbol("_finished"); + var _flags = Symbol("_flags"); + var _flush = Symbol("_flush"); + var _handleChunk = Symbol("_handleChunk"); + var _makeBuf = Symbol("_makeBuf"); + var _mode = Symbol("_mode"); + var _needDrain = Symbol("_needDrain"); + var _onerror = Symbol("_onerror"); + var _onopen = Symbol("_onopen"); + var _onread = Symbol("_onread"); + var _onwrite = Symbol("_onwrite"); + var _open = Symbol("_open"); + var _path = Symbol("_path"); + var _pos = Symbol("_pos"); + var _queue = Symbol("_queue"); + var _read = Symbol("_read"); + var _readSize = Symbol("_readSize"); + var _reading = Symbol("_reading"); + var _remain = Symbol("_remain"); + var _size = Symbol("_size"); + var _write = Symbol("_write"); + var _writing = Symbol("_writing"); + var _defaultFlag = Symbol("_defaultFlag"); + var _errored = Symbol("_errored"); + var ReadStream = class extends MiniPass { + constructor(path2, opt) { + opt = opt || {}; + super(opt); + this.readable = true; + this.writable = false; + if (typeof path2 !== "string") + throw new TypeError("path must be a string"); + this[_errored] = false; + this[_fd] = typeof opt.fd === "number" ? opt.fd : null; + this[_path] = path2; + this[_readSize] = opt.readSize || 16 * 1024 * 1024; + this[_reading] = false; + this[_size] = typeof opt.size === "number" ? opt.size : Infinity; + this[_remain] = this[_size]; + this[_autoClose] = typeof opt.autoClose === "boolean" ? opt.autoClose : true; + if (typeof this[_fd] === "number") + this[_read](); + else + this[_open](); + } + get fd() { + return this[_fd]; + } + get path() { + return this[_path]; + } + write() { + throw new TypeError("this is a readable stream"); + } + end() { + throw new TypeError("this is a readable stream"); + } + [_open]() { + fs2.open(this[_path], "r", (er, fd) => this[_onopen](er, fd)); + } + [_onopen](er, fd) { + if (er) + this[_onerror](er); + else { + this[_fd] = fd; + this.emit("open", fd); + this[_read](); + } + } + [_makeBuf]() { + return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain])); + } + [_read]() { + if (!this[_reading]) { + this[_reading] = true; + const buf = this[_makeBuf](); + if (buf.length === 0) + return process.nextTick(() => this[_onread](null, 0, buf)); + fs2.read(this[_fd], buf, 0, buf.length, null, (er, br, buf2) => this[_onread](er, br, buf2)); + } + } + [_onread](er, br, buf) { + this[_reading] = false; + if (er) + this[_onerror](er); + else if (this[_handleChunk](br, buf)) + this[_read](); + } + [_close]() { + if (this[_autoClose] && typeof this[_fd] === "number") { + const fd = this[_fd]; + this[_fd] = null; + fs2.close(fd, (er) => er ? this.emit("error", er) : this.emit("close")); + } + } + [_onerror](er) { + this[_reading] = true; + this[_close](); + this.emit("error", er); + } + [_handleChunk](br, buf) { + let ret = false; + this[_remain] -= br; + if (br > 0) + ret = super.write(br < buf.length ? buf.slice(0, br) : buf); + if (br === 0 || this[_remain] <= 0) { + ret = false; + this[_close](); + super.end(); + } + return ret; + } + emit(ev, data) { + switch (ev) { + case "prefinish": + case "finish": + break; + case "drain": + if (typeof this[_fd] === "number") + this[_read](); + break; + case "error": + if (this[_errored]) + return; + this[_errored] = true; + return super.emit(ev, data); + default: + return super.emit(ev, data); + } } - opts = opts || {}; - const args2 = [].concat(process.argv); - args2.shift(); - const script = args2.shift(), env = opts.env || process.env; - Diable.daemonize(script, args2, opts); - return process.exit(); - } - Diable.isDaemon = function() { - return !!process.env.__is_daemon; - }; - Diable.daemonize = function(script, args2, opts) { - opts = opts || {}; - const stdout = opts.stdout || "ignore", stderr = opts.stderr || "ignore", env = opts.env || process.env, cwd = opts.cwd || process.cwd(); - env.__is_daemon = true; - const spawnOptions = { - stdio: ["inherit", stdout, stderr], - env, - cwd, - detached: true, - input: false - }; - const cmd = opts.command || process.execPath; - delete opts.command; - const child = spawn(cmd, [script].concat(args2).filter(Boolean), spawnOptions); - child.unref(); - return child; }; - module2.exports = Diable; - } -}); - -// ../store-connection-manager/lib/runServerInBackground.js -var require_runServerInBackground = __commonJS({ - "../store-connection-manager/lib/runServerInBackground.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var ReadStreamSync = class extends ReadStream { + [_open]() { + let threw = true; + try { + this[_onopen](null, fs2.openSync(this[_path], "r")); + threw = false; + } finally { + if (threw) + this[_close](); + } + } + [_read]() { + let threw = true; + try { + if (!this[_reading]) { + this[_reading] = true; + do { + const buf = this[_makeBuf](); + const br = buf.length === 0 ? 0 : fs2.readSync(this[_fd], buf, 0, buf.length, null); + if (!this[_handleChunk](br, buf)) + break; + } while (true); + this[_reading] = false; + } + threw = false; + } finally { + if (threw) + this[_close](); + } + } + [_close]() { + if (this[_autoClose] && typeof this[_fd] === "number") { + const fd = this[_fd]; + this[_fd] = null; + fs2.closeSync(fd); + this.emit("close"); + } + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var diable_1 = __importDefault(require_lib62()); - exports2.default = (storePath) => { - if (require.main == null) { - throw new error_1.default("CANNOT_START_SERVER", "pnpm server cannot be started when pnpm is streamed to Node.js"); + var WriteStream = class extends EE { + constructor(path2, opt) { + opt = opt || {}; + super(opt); + this.readable = false; + this.writable = true; + this[_errored] = false; + this[_writing] = false; + this[_ended] = false; + this[_needDrain] = false; + this[_queue] = []; + this[_path] = path2; + this[_fd] = typeof opt.fd === "number" ? opt.fd : null; + this[_mode] = opt.mode === void 0 ? 438 : opt.mode; + this[_pos] = typeof opt.start === "number" ? opt.start : null; + this[_autoClose] = typeof opt.autoClose === "boolean" ? opt.autoClose : true; + const defaultFlag = this[_pos] !== null ? "r+" : "w"; + this[_defaultFlag] = opt.flags === void 0; + this[_flags] = this[_defaultFlag] ? defaultFlag : opt.flags; + if (this[_fd] === null) + this[_open](); + } + emit(ev, data) { + if (ev === "error") { + if (this[_errored]) + return; + this[_errored] = true; + } + return super.emit(ev, data); + } + get fd() { + return this[_fd]; + } + get path() { + return this[_path]; + } + [_onerror](er) { + this[_close](); + this[_writing] = true; + this.emit("error", er); + } + [_open]() { + fs2.open( + this[_path], + this[_flags], + this[_mode], + (er, fd) => this[_onopen](er, fd) + ); + } + [_onopen](er, fd) { + if (this[_defaultFlag] && this[_flags] === "r+" && er && er.code === "ENOENT") { + this[_flags] = "w"; + this[_open](); + } else if (er) + this[_onerror](er); + else { + this[_fd] = fd; + this.emit("open", fd); + this[_flush](); + } + } + end(buf, enc) { + if (buf) + this.write(buf, enc); + this[_ended] = true; + if (!this[_writing] && !this[_queue].length && typeof this[_fd] === "number") + this[_onwrite](null, 0); + return this; + } + write(buf, enc) { + if (typeof buf === "string") + buf = Buffer.from(buf, enc); + if (this[_ended]) { + this.emit("error", new Error("write() after end()")); + return false; + } + if (this[_fd] === null || this[_writing] || this[_queue].length) { + this[_queue].push(buf); + this[_needDrain] = true; + return false; + } + this[_writing] = true; + this[_write](buf); + return true; + } + [_write](buf) { + fs2.write(this[_fd], buf, 0, buf.length, this[_pos], (er, bw) => this[_onwrite](er, bw)); + } + [_onwrite](er, bw) { + if (er) + this[_onerror](er); + else { + if (this[_pos] !== null) + this[_pos] += bw; + if (this[_queue].length) + this[_flush](); + else { + this[_writing] = false; + if (this[_ended] && !this[_finished]) { + this[_finished] = true; + this[_close](); + this.emit("finish"); + } else if (this[_needDrain]) { + this[_needDrain] = false; + this.emit("drain"); + } + } + } + } + [_flush]() { + if (this[_queue].length === 0) { + if (this[_ended]) + this[_onwrite](null, 0); + } else if (this[_queue].length === 1) + this[_write](this[_queue].pop()); + else { + const iovec = this[_queue]; + this[_queue] = []; + writev( + this[_fd], + iovec, + this[_pos], + (er, bw) => this[_onwrite](er, bw) + ); + } + } + [_close]() { + if (this[_autoClose] && typeof this[_fd] === "number") { + const fd = this[_fd]; + this[_fd] = null; + fs2.close(fd, (er) => er ? this.emit("error", er) : this.emit("close")); + } } - return diable_1.default.daemonize(require.main.filename, ["server", "start", "--store-dir", storePath], { stdio: "inherit" }); }; - } -}); - -// ../store-connection-manager/lib/serverConnectionInfoDir.js -var require_serverConnectionInfoDir = __commonJS({ - "../store-connection-manager/lib/serverConnectionInfoDir.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var WriteStreamSync = class extends WriteStream { + [_open]() { + let fd; + if (this[_defaultFlag] && this[_flags] === "r+") { + try { + fd = fs2.openSync(this[_path], this[_flags], this[_mode]); + } catch (er) { + if (er.code === "ENOENT") { + this[_flags] = "w"; + return this[_open](); + } else + throw er; + } + } else + fd = fs2.openSync(this[_path], this[_flags], this[_mode]); + this[_onopen](null, fd); + } + [_close]() { + if (this[_autoClose] && typeof this[_fd] === "number") { + const fd = this[_fd]; + this[_fd] = null; + fs2.closeSync(fd); + this.emit("close"); + } + } + [_write](buf) { + let threw = true; + try { + this[_onwrite]( + null, + fs2.writeSync(this[_fd], buf, 0, buf.length, this[_pos]) + ); + threw = false; + } finally { + if (threw) + try { + this[_close](); + } catch (_) { + } + } + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - exports2.default = (storePath) => path_1.default.join(storePath, "server"); + exports2.ReadStream = ReadStream; + exports2.ReadStreamSync = ReadStreamSync; + exports2.WriteStream = WriteStream; + exports2.WriteStreamSync = WriteStreamSync; } }); -// ../store-connection-manager/lib/index.js -var require_lib63 = __commonJS({ - "../store-connection-manager/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/parse.js +var require_parse8 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/parse.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.tryLoadServerJson = exports2.createOrConnectStoreController = exports2.createOrConnectStoreControllerCached = exports2.serverConnectionInfoDir = exports2.createNewStoreController = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var cli_meta_1 = __importDefault(require_lib4()); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var server_1 = require_lib59(); - var store_path_1 = __importDefault(require_lib38()); - var delay_1 = __importDefault(require_delay2()); - var createNewStoreController_1 = __importDefault(require_createNewStoreController()); - exports2.createNewStoreController = createNewStoreController_1.default; - var runServerInBackground_1 = __importDefault(require_runServerInBackground()); - var serverConnectionInfoDir_1 = __importDefault(require_serverConnectionInfoDir()); - exports2.serverConnectionInfoDir = serverConnectionInfoDir_1.default; - async function createOrConnectStoreControllerCached(storeControllerCache, opts) { - const storeDir = await store_path_1.default(opts.dir, opts.storeDir); - if (!storeControllerCache.has(storeDir)) { - storeControllerCache.set(storeDir, createOrConnectStoreController(opts)); - } - return await storeControllerCache.get(storeDir); - } - exports2.createOrConnectStoreControllerCached = createOrConnectStoreControllerCached; - async function createOrConnectStoreController(opts) { - const storeDir = await store_path_1.default(opts.dir, opts.storeDir); - const connectionInfoDir = serverConnectionInfoDir_1.default(storeDir); - const serverJsonPath = path_1.default.join(connectionInfoDir, "server.json"); - let serverJson = await tryLoadServerJson({ serverJsonPath, shouldRetryOnNoent: false }); - if (serverJson !== null) { - if (serverJson.pnpmVersion !== cli_meta_1.default.version) { - logger_1.default.warn({ - message: `The store server runs on pnpm v${serverJson.pnpmVersion}. It is recommended to connect with the same version (current is v${cli_meta_1.default.version})`, - prefix: opts.dir + var warner = require_warn_mixin(); + var Header = require_header(); + var EE = require("events"); + var Yallist = require_yallist(); + var maxMetaEntrySize = 1024 * 1024; + var Entry = require_read_entry(); + var Pax = require_pax(); + var zlib = require_minizlib(); + var { nextTick } = require("process"); + var gzipHeader = Buffer.from([31, 139]); + var STATE = Symbol("state"); + var WRITEENTRY = Symbol("writeEntry"); + var READENTRY = Symbol("readEntry"); + var NEXTENTRY = Symbol("nextEntry"); + var PROCESSENTRY = Symbol("processEntry"); + var EX = Symbol("extendedHeader"); + var GEX = Symbol("globalExtendedHeader"); + var META = Symbol("meta"); + var EMITMETA = Symbol("emitMeta"); + var BUFFER = Symbol("buffer"); + var QUEUE = Symbol("queue"); + var ENDED = Symbol("ended"); + var EMITTEDEND = Symbol("emittedEnd"); + var EMIT = Symbol("emit"); + var UNZIP = Symbol("unzip"); + var CONSUMECHUNK = Symbol("consumeChunk"); + var CONSUMECHUNKSUB = Symbol("consumeChunkSub"); + var CONSUMEBODY = Symbol("consumeBody"); + var CONSUMEMETA = Symbol("consumeMeta"); + var CONSUMEHEADER = Symbol("consumeHeader"); + var CONSUMING = Symbol("consuming"); + var BUFFERCONCAT = Symbol("bufferConcat"); + var MAYBEEND = Symbol("maybeEnd"); + var WRITING = Symbol("writing"); + var ABORTED = Symbol("aborted"); + var DONE = Symbol("onDone"); + var SAW_VALID_ENTRY = Symbol("sawValidEntry"); + var SAW_NULL_BLOCK = Symbol("sawNullBlock"); + var SAW_EOF = Symbol("sawEOF"); + var CLOSESTREAM = Symbol("closeStream"); + var noop = (_) => true; + module2.exports = warner(class Parser extends EE { + constructor(opt) { + opt = opt || {}; + super(opt); + this.file = opt.file || ""; + this[SAW_VALID_ENTRY] = null; + this.on(DONE, (_) => { + if (this[STATE] === "begin" || this[SAW_VALID_ENTRY] === false) { + this.warn("TAR_BAD_ARCHIVE", "Unrecognized archive format"); + } + }); + if (opt.ondone) { + this.on(DONE, opt.ondone); + } else { + this.on(DONE, (_) => { + this.emit("prefinish"); + this.emit("finish"); + this.emit("end"); }); } - logger_1.default.info({ - message: "A store server is running. All store manipulations are delegated to it.", - prefix: opts.dir - }); - return { - ctrl: await server_1.connectStoreController(serverJson.connectionOptions), - dir: storeDir - }; - } - if (opts.useRunningStoreServer) { - throw new error_1.default("NO_STORE_SERVER", "No store server is running."); - } - if (opts.useStoreServer) { - runServerInBackground_1.default(storeDir); - serverJson = await tryLoadServerJson({ serverJsonPath, shouldRetryOnNoent: true }); - logger_1.default.info({ - message: "A store server has been started. To stop it, use `pnpm server stop`", - prefix: opts.dir - }); - return { - ctrl: await server_1.connectStoreController(serverJson.connectionOptions), - dir: storeDir - }; - } - return createNewStoreController_1.default(Object.assign(opts, { - storeDir - })); - } - exports2.createOrConnectStoreController = createOrConnectStoreController; - async function tryLoadServerJson(options) { - let beforeFirstAttempt = true; - const startHRTime = process.hrtime(); - while (true) { - if (!beforeFirstAttempt) { - const elapsedHRTime = process.hrtime(startHRTime); - if (elapsedHRTime[0] >= 10) { - try { - await fs_1.promises.unlink(options.serverJsonPath); - } catch (error) { - if (error.code !== "ENOENT") { - throw error; + this.strict = !!opt.strict; + this.maxMetaEntrySize = opt.maxMetaEntrySize || maxMetaEntrySize; + this.filter = typeof opt.filter === "function" ? opt.filter : noop; + this.writable = true; + this.readable = false; + this[QUEUE] = new Yallist(); + this[BUFFER] = null; + this[READENTRY] = null; + this[WRITEENTRY] = null; + this[STATE] = "begin"; + this[META] = ""; + this[EX] = null; + this[GEX] = null; + this[ENDED] = false; + this[UNZIP] = null; + this[ABORTED] = false; + this[SAW_NULL_BLOCK] = false; + this[SAW_EOF] = false; + this.on("end", () => this[CLOSESTREAM]()); + if (typeof opt.onwarn === "function") { + this.on("warn", opt.onwarn); + } + if (typeof opt.onentry === "function") { + this.on("entry", opt.onentry); + } + } + [CONSUMEHEADER](chunk, position) { + if (this[SAW_VALID_ENTRY] === null) { + this[SAW_VALID_ENTRY] = false; + } + let header; + try { + header = new Header(chunk, position, this[EX], this[GEX]); + } catch (er) { + return this.warn("TAR_ENTRY_INVALID", er); + } + if (header.nullBlock) { + if (this[SAW_NULL_BLOCK]) { + this[SAW_EOF] = true; + if (this[STATE] === "begin") { + this[STATE] = "header"; + } + this[EMIT]("eof"); + } else { + this[SAW_NULL_BLOCK] = true; + this[EMIT]("nullBlock"); + } + } else { + this[SAW_NULL_BLOCK] = false; + if (!header.cksumValid) { + this.warn("TAR_ENTRY_INVALID", "checksum failure", { header }); + } else if (!header.path) { + this.warn("TAR_ENTRY_INVALID", "path is required", { header }); + } else { + const type = header.type; + if (/^(Symbolic)?Link$/.test(type) && !header.linkpath) { + this.warn("TAR_ENTRY_INVALID", "linkpath required", { header }); + } else if (!/^(Symbolic)?Link$/.test(type) && header.linkpath) { + this.warn("TAR_ENTRY_INVALID", "linkpath forbidden", { header }); + } else { + const entry = this[WRITEENTRY] = new Entry(header, this[EX], this[GEX]); + if (!this[SAW_VALID_ENTRY]) { + if (entry.remain) { + const onend = () => { + if (!entry.invalid) { + this[SAW_VALID_ENTRY] = true; + } + }; + entry.on("end", onend); + } else { + this[SAW_VALID_ENTRY] = true; + } + } + if (entry.meta) { + if (entry.size > this.maxMetaEntrySize) { + entry.ignore = true; + this[EMIT]("ignoredEntry", entry); + this[STATE] = "ignore"; + entry.resume(); + } else if (entry.size > 0) { + this[META] = ""; + entry.on("data", (c) => this[META] += c); + this[STATE] = "meta"; + } + } else { + this[EX] = null; + entry.ignore = entry.ignore || !this.filter(entry.path, entry); + if (entry.ignore) { + this[EMIT]("ignoredEntry", entry); + this[STATE] = entry.remain ? "ignore" : "header"; + entry.resume(); + } else { + if (entry.remain) { + this[STATE] = "body"; + } else { + this[STATE] = "header"; + entry.end(); + } + if (!this[READENTRY]) { + this[QUEUE].push(entry); + this[NEXTENTRY](); + } else { + this[QUEUE].push(entry); + } + } } } - return null; } - await delay_1.default(200); } - beforeFirstAttempt = false; - let serverJsonStr; - try { - serverJsonStr = await fs_1.promises.readFile(options.serverJsonPath, "utf8"); - } catch (error) { - if (error.code !== "ENOENT") { - throw error; + } + [CLOSESTREAM]() { + nextTick(() => this.emit("close")); + } + [PROCESSENTRY](entry) { + let go = true; + if (!entry) { + this[READENTRY] = null; + go = false; + } else if (Array.isArray(entry)) { + this.emit.apply(this, entry); + } else { + this[READENTRY] = entry; + this.emit("entry", entry); + if (!entry.emittedEnd) { + entry.on("end", (_) => this[NEXTENTRY]()); + go = false; } - if (!options.shouldRetryOnNoent) { - return null; + } + return go; + } + [NEXTENTRY]() { + do { + } while (this[PROCESSENTRY](this[QUEUE].shift())); + if (!this[QUEUE].length) { + const re = this[READENTRY]; + const drainNow = !re || re.flowing || re.size === re.remain; + if (drainNow) { + if (!this[WRITING]) { + this.emit("drain"); + } + } else { + re.once("drain", (_) => this.emit("drain")); } - continue; } - let serverJson; - try { - serverJson = JSON.parse(serverJsonStr); - } catch (error) { - continue; + } + [CONSUMEBODY](chunk, position) { + const entry = this[WRITEENTRY]; + const br = entry.blockRemain; + const c = br >= chunk.length && position === 0 ? chunk : chunk.slice(position, position + br); + entry.write(c); + if (!entry.blockRemain) { + this[STATE] = "header"; + this[WRITEENTRY] = null; + entry.end(); } - if (serverJson === null) { - throw new Error("server.json was modified by a third party"); + return c.length; + } + [CONSUMEMETA](chunk, position) { + const entry = this[WRITEENTRY]; + const ret = this[CONSUMEBODY](chunk, position); + if (!this[WRITEENTRY]) { + this[EMITMETA](entry); } - return serverJson; + return ret; } - } - exports2.tryLoadServerJson = tryLoadServerJson; - } -}); - -// ../modules-yaml/lib/index.js -var require_lib64 = __commonJS({ - "../modules-yaml/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.write = exports2.read = void 0; - var path_1 = __importDefault(require("path")); - var read_yaml_file_1 = __importDefault(require_read_yaml_file()); - var is_windows_1 = __importDefault(require_is_windows()); - var write_yaml_file_1 = __importDefault(require_write_yaml_file()); - var MODULES_FILENAME = ".modules.yaml"; - async function read(modulesDir) { - const modulesYamlPath = path_1.default.join(modulesDir, MODULES_FILENAME); - let modules; - try { - modules = await read_yaml_file_1.default(modulesYamlPath); - } catch (err) { - if (err.code !== "ENOENT") { - throw err; + [EMIT](ev, data, extra) { + if (!this[QUEUE].length && !this[READENTRY]) { + this.emit(ev, data, extra); + } else { + this[QUEUE].push([ev, data, extra]); } - return null; } - if (!modules.virtualStoreDir) { - modules.virtualStoreDir = path_1.default.join(modulesDir, ".pnpm"); - } else if (!path_1.default.isAbsolute(modules.virtualStoreDir)) { - modules.virtualStoreDir = path_1.default.join(modulesDir, modules.virtualStoreDir); + [EMITMETA](entry) { + this[EMIT]("meta", this[META]); + switch (entry.type) { + case "ExtendedHeader": + case "OldExtendedHeader": + this[EX] = Pax.parse(this[META], this[EX], false); + break; + case "GlobalExtendedHeader": + this[GEX] = Pax.parse(this[META], this[GEX], true); + break; + case "NextFileHasLongPath": + case "OldGnuLongPath": + this[EX] = this[EX] || /* @__PURE__ */ Object.create(null); + this[EX].path = this[META].replace(/\0.*/, ""); + break; + case "NextFileHasLongLinkpath": + this[EX] = this[EX] || /* @__PURE__ */ Object.create(null); + this[EX].linkpath = this[META].replace(/\0.*/, ""); + break; + default: + throw new Error("unknown meta: " + entry.type); + } } - switch (modules.shamefullyHoist) { - case true: - if (modules.publicHoistPattern == null) { - modules.publicHoistPattern = ["*"]; + abort(error) { + this[ABORTED] = true; + this.emit("abort", error); + this.warn("TAR_ABORT", error, { recoverable: false }); + } + write(chunk) { + if (this[ABORTED]) { + return; + } + if (this[UNZIP] === null && chunk) { + if (this[BUFFER]) { + chunk = Buffer.concat([this[BUFFER], chunk]); + this[BUFFER] = null; } - if (modules.hoistedAliases != null && !modules.hoistedDependencies) { - modules.hoistedDependencies = {}; - for (const depPath of Object.keys(modules.hoistedAliases)) { - modules.hoistedDependencies[depPath] = {}; - for (const alias of modules.hoistedAliases[depPath]) { - modules.hoistedDependencies[depPath][alias] = "public"; - } + if (chunk.length < gzipHeader.length) { + this[BUFFER] = chunk; + return true; + } + for (let i = 0; this[UNZIP] === null && i < gzipHeader.length; i++) { + if (chunk[i] !== gzipHeader[i]) { + this[UNZIP] = false; } } - break; - case false: - if (modules.publicHoistPattern == null) { - modules.publicHoistPattern = []; + if (this[UNZIP] === null) { + const ended = this[ENDED]; + this[ENDED] = false; + this[UNZIP] = new zlib.Unzip(); + this[UNZIP].on("data", (chunk2) => this[CONSUMECHUNK](chunk2)); + this[UNZIP].on("error", (er) => this.abort(er)); + this[UNZIP].on("end", (_) => { + this[ENDED] = true; + this[CONSUMECHUNK](); + }); + this[WRITING] = true; + const ret2 = this[UNZIP][ended ? "end" : "write"](chunk); + this[WRITING] = false; + return ret2; } - if (modules.hoistedAliases != null && !modules.hoistedDependencies) { - modules.hoistedDependencies = {}; - for (const depPath of Object.keys(modules.hoistedAliases)) { - modules.hoistedDependencies[depPath] = {}; - for (const alias of modules.hoistedAliases[depPath]) { - modules.hoistedDependencies[depPath][alias] = "private"; - } + } + this[WRITING] = true; + if (this[UNZIP]) { + this[UNZIP].write(chunk); + } else { + this[CONSUMECHUNK](chunk); + } + this[WRITING] = false; + const ret = this[QUEUE].length ? false : this[READENTRY] ? this[READENTRY].flowing : true; + if (!ret && !this[QUEUE].length) { + this[READENTRY].once("drain", (_) => this.emit("drain")); + } + return ret; + } + [BUFFERCONCAT](c) { + if (c && !this[ABORTED]) { + this[BUFFER] = this[BUFFER] ? Buffer.concat([this[BUFFER], c]) : c; + } + } + [MAYBEEND]() { + if (this[ENDED] && !this[EMITTEDEND] && !this[ABORTED] && !this[CONSUMING]) { + this[EMITTEDEND] = true; + const entry = this[WRITEENTRY]; + if (entry && entry.blockRemain) { + const have = this[BUFFER] ? this[BUFFER].length : 0; + this.warn("TAR_BAD_ARCHIVE", `Truncated input (needed ${entry.blockRemain} more bytes, only ${have} available)`, { entry }); + if (this[BUFFER]) { + entry.write(this[BUFFER]); } + entry.end(); } - break; + this[EMIT](DONE); + } } - if (!modules.prunedAt) { - modules.prunedAt = new Date().toUTCString(); + [CONSUMECHUNK](chunk) { + if (this[CONSUMING]) { + this[BUFFERCONCAT](chunk); + } else if (!chunk && !this[BUFFER]) { + this[MAYBEEND](); + } else { + this[CONSUMING] = true; + if (this[BUFFER]) { + this[BUFFERCONCAT](chunk); + const c = this[BUFFER]; + this[BUFFER] = null; + this[CONSUMECHUNKSUB](c); + } else { + this[CONSUMECHUNKSUB](chunk); + } + while (this[BUFFER] && this[BUFFER].length >= 512 && !this[ABORTED] && !this[SAW_EOF]) { + const c = this[BUFFER]; + this[BUFFER] = null; + this[CONSUMECHUNKSUB](c); + } + this[CONSUMING] = false; + } + if (!this[BUFFER] || this[ENDED]) { + this[MAYBEEND](); + } } - return modules; - } - exports2.read = read; - var YAML_OPTS = { - noCompatMode: true, - noRefs: true, - sortKeys: true - }; - async function write(modulesDir, modules) { - const modulesYamlPath = path_1.default.join(modulesDir, MODULES_FILENAME); - const saveModules = { ...modules }; - if (saveModules.skipped) - saveModules.skipped.sort(); - if (saveModules.hoistPattern == null || saveModules.hoistPattern === "") { - delete saveModules.hoistPattern; + [CONSUMECHUNKSUB](chunk) { + let position = 0; + const length = chunk.length; + while (position + 512 <= length && !this[ABORTED] && !this[SAW_EOF]) { + switch (this[STATE]) { + case "begin": + case "header": + this[CONSUMEHEADER](chunk, position); + position += 512; + break; + case "ignore": + case "body": + position += this[CONSUMEBODY](chunk, position); + break; + case "meta": + position += this[CONSUMEMETA](chunk, position); + break; + default: + throw new Error("invalid state: " + this[STATE]); + } + } + if (position < length) { + if (this[BUFFER]) { + this[BUFFER] = Buffer.concat([chunk.slice(position), this[BUFFER]]); + } else { + this[BUFFER] = chunk.slice(position); + } + } } - if (saveModules.publicHoistPattern == null) { - delete saveModules.publicHoistPattern; + end(chunk) { + if (!this[ABORTED]) { + if (this[UNZIP]) { + this[UNZIP].end(chunk); + } else { + this[ENDED] = true; + this.write(chunk); + } + } } - if (saveModules.hoistedAliases == null || saveModules.hoistPattern == null && saveModules.publicHoistPattern == null) { - delete saveModules.hoistedAliases; + }); + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/list.js +var require_list2 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/list.js"(exports2, module2) { + "use strict"; + var hlo = require_high_level_opt(); + var Parser = require_parse8(); + var fs2 = require("fs"); + var fsm = require_fs_minipass(); + var path2 = require("path"); + var stripSlash = require_strip_trailing_slashes(); + module2.exports = (opt_, files, cb) => { + if (typeof opt_ === "function") { + cb = opt_, files = null, opt_ = {}; + } else if (Array.isArray(opt_)) { + files = opt_, opt_ = {}; + } + if (typeof files === "function") { + cb = files, files = null; + } + if (!files) { + files = []; + } else { + files = Array.from(files); } - if (!is_windows_1.default()) { - saveModules.virtualStoreDir = path_1.default.relative(modulesDir, saveModules.virtualStoreDir); + const opt = hlo(opt_); + if (opt.sync && typeof cb === "function") { + throw new TypeError("callback not supported for sync tar functions"); } - return write_yaml_file_1.default(modulesYamlPath, saveModules, YAML_OPTS); - } - exports2.write = write; + if (!opt.file && typeof cb === "function") { + throw new TypeError("callback only supported with file option"); + } + if (files.length) { + filesFilter(opt, files); + } + if (!opt.noResume) { + onentryFunction(opt); + } + return opt.file && opt.sync ? listFileSync(opt) : opt.file ? listFile(opt, cb) : list(opt); + }; + var onentryFunction = (opt) => { + const onentry = opt.onentry; + opt.onentry = onentry ? (e) => { + onentry(e); + e.resume(); + } : (e) => e.resume(); + }; + var filesFilter = (opt, files) => { + const map = new Map(files.map((f) => [stripSlash(f), true])); + const filter = opt.filter; + const mapHas = (file, r) => { + const root = r || path2.parse(file).root || "."; + const ret = file === root ? false : map.has(file) ? map.get(file) : mapHas(path2.dirname(file), root); + map.set(file, ret); + return ret; + }; + opt.filter = filter ? (file, entry) => filter(file, entry) && mapHas(stripSlash(file)) : (file) => mapHas(stripSlash(file)); + }; + var listFileSync = (opt) => { + const p = list(opt); + const file = opt.file; + let threw = true; + let fd; + try { + const stat = fs2.statSync(file); + const readSize = opt.maxReadSize || 16 * 1024 * 1024; + if (stat.size < readSize) { + p.end(fs2.readFileSync(file)); + } else { + let pos = 0; + const buf = Buffer.allocUnsafe(readSize); + fd = fs2.openSync(file, "r"); + while (pos < stat.size) { + const bytesRead = fs2.readSync(fd, buf, 0, readSize, pos); + pos += bytesRead; + p.write(buf.slice(0, bytesRead)); + } + p.end(); + } + threw = false; + } finally { + if (threw && fd) { + try { + fs2.closeSync(fd); + } catch (er) { + } + } + } + }; + var listFile = (opt, cb) => { + const parse2 = new Parser(opt); + const readSize = opt.maxReadSize || 16 * 1024 * 1024; + const file = opt.file; + const p = new Promise((resolve, reject) => { + parse2.on("error", reject); + parse2.on("end", resolve); + fs2.stat(file, (er, stat) => { + if (er) { + reject(er); + } else { + const stream = new fsm.ReadStream(file, { + readSize, + size: stat.size + }); + stream.on("error", reject); + stream.pipe(parse2); + } + }); + }); + return cb ? p.then(cb, cb) : p; + }; + var list = (opt) => new Parser(opt); } }); -// ../normalize-registries/lib/index.js -var require_lib65 = __commonJS({ - "../normalize-registries/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/create.js +var require_create2 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/create.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var hlo = require_high_level_opt(); + var Pack = require_pack2(); + var fsm = require_fs_minipass(); + var t = require_list2(); + var path2 = require("path"); + module2.exports = (opt_, files, cb) => { + if (typeof files === "function") { + cb = files; + } + if (Array.isArray(opt_)) { + files = opt_, opt_ = {}; + } + if (!files || !Array.isArray(files) || !files.length) { + throw new TypeError("no files or directories specified"); + } + files = Array.from(files); + const opt = hlo(opt_); + if (opt.sync && typeof cb === "function") { + throw new TypeError("callback not supported for sync tar functions"); + } + if (!opt.file && typeof cb === "function") { + throw new TypeError("callback only supported with file option"); + } + return opt.file && opt.sync ? createFileSync(opt, files) : opt.file ? createFile(opt, files, cb) : opt.sync ? createSync(opt, files) : create(opt, files); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.DEFAULT_REGISTRIES = void 0; - var normalize_registry_url_1 = __importDefault(require_normalize_registry_url()); - exports2.DEFAULT_REGISTRIES = { - default: "https://registry.npmjs.org/" + var createFileSync = (opt, files) => { + const p = new Pack.Sync(opt); + const stream = new fsm.WriteStreamSync(opt.file, { + mode: opt.mode || 438 + }); + p.pipe(stream); + addFilesSync(p, files); }; - function normalizeRegistries(registries) { - if (registries == null) - return exports2.DEFAULT_REGISTRIES; - const normalizeRegistries2 = {}; - for (const scope of Object.keys(registries)) { - normalizeRegistries2[scope] = normalize_registry_url_1.default(registries[scope]); + var createFile = (opt, files, cb) => { + const p = new Pack(opt); + const stream = new fsm.WriteStream(opt.file, { + mode: opt.mode || 438 + }); + p.pipe(stream); + const promise = new Promise((res, rej) => { + stream.on("error", rej); + stream.on("close", res); + p.on("error", rej); + }); + addFilesAsync(p, files); + return cb ? promise.then(cb, cb) : promise; + }; + var addFilesSync = (p, files) => { + files.forEach((file) => { + if (file.charAt(0) === "@") { + t({ + file: path2.resolve(p.cwd, file.slice(1)), + sync: true, + noResume: true, + onentry: (entry) => p.add(entry) + }); + } else { + p.add(file); + } + }); + p.end(); + }; + var addFilesAsync = (p, files) => { + while (files.length) { + const file = files.shift(); + if (file.charAt(0) === "@") { + return t({ + file: path2.resolve(p.cwd, file.slice(1)), + noResume: true, + onentry: (entry) => p.add(entry) + }).then((_) => addFilesAsync(p, files)); + } else { + p.add(file); + } } - return { - ...exports2.DEFAULT_REGISTRIES, - ...normalizeRegistries2 - }; - } - exports2.default = normalizeRegistries; + p.end(); + }; + var createSync = (opt, files) => { + const p = new Pack.Sync(opt); + addFilesSync(p, files); + return p; + }; + var create = (opt, files) => { + const p = new Pack(opt); + addFilesAsync(p, files); + return p; + }; } }); -// ../read-projects-context/lib/index.js -var require_lib66 = __commonJS({ - "../read-projects-context/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/replace.js +var require_replace = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/replace.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var hlo = require_high_level_opt(); + var Pack = require_pack2(); + var fs2 = require("fs"); + var fsm = require_fs_minipass(); + var t = require_list2(); + var path2 = require("path"); + var Header = require_header(); + module2.exports = (opt_, files, cb) => { + const opt = hlo(opt_); + if (!opt.file) { + throw new TypeError("file is required"); + } + if (opt.gzip) { + throw new TypeError("cannot append to compressed archives"); + } + if (!files || !Array.isArray(files) || !files.length) { + throw new TypeError("no files or directories specified"); + } + files = Array.from(files); + return opt.sync ? replaceSync(opt, files) : replace(opt, files, cb); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var lockfile_file_1 = require_lib57(); - var modules_yaml_1 = require_lib64(); - var normalize_registries_1 = __importDefault(require_lib65()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - async function default_1(projects, opts) { - var _a, _b, _c, _d, _e; - const relativeModulesDir = (_a = opts.modulesDir) !== null && _a !== void 0 ? _a : "node_modules"; - const rootModulesDir = await realpath_missing_1.default(path_1.default.join(opts.lockfileDir, relativeModulesDir)); - const modules = await modules_yaml_1.read(rootModulesDir); - return { - currentHoistPattern: modules === null || modules === void 0 ? void 0 : modules.hoistPattern, - currentPublicHoistPattern: modules === null || modules === void 0 ? void 0 : modules.publicHoistPattern, - hoist: modules == null ? void 0 : Boolean(modules.hoistPattern), - hoistedDependencies: (_b = modules === null || modules === void 0 ? void 0 : modules.hoistedDependencies) !== null && _b !== void 0 ? _b : {}, - include: (_c = modules === null || modules === void 0 ? void 0 : modules.included) !== null && _c !== void 0 ? _c : { dependencies: true, devDependencies: true, optionalDependencies: true }, - modules, - pendingBuilds: (_d = modules === null || modules === void 0 ? void 0 : modules.pendingBuilds) !== null && _d !== void 0 ? _d : [], - projects: await Promise.all(projects.map(async (project) => { - var _a2, _b2; - const modulesDir = await realpath_missing_1.default(path_1.default.join(project.rootDir, (_a2 = project.modulesDir) !== null && _a2 !== void 0 ? _a2 : relativeModulesDir)); - const importerId = lockfile_file_1.getLockfileImporterId(opts.lockfileDir, project.rootDir); - return { - ...project, - binsDir: (_b2 = project.binsDir) !== null && _b2 !== void 0 ? _b2 : path_1.default.join(project.rootDir, relativeModulesDir, ".bin"), - id: importerId, - modulesDir - }; - })), - registries: (modules === null || modules === void 0 ? void 0 : modules.registries) != null ? normalize_registries_1.default(modules.registries) : void 0, - rootModulesDir, - skipped: new Set((_e = modules === null || modules === void 0 ? void 0 : modules.skipped) !== null && _e !== void 0 ? _e : []) + var replaceSync = (opt, files) => { + const p = new Pack.Sync(opt); + let threw = true; + let fd; + let position; + try { + try { + fd = fs2.openSync(opt.file, "r+"); + } catch (er) { + if (er.code === "ENOENT") { + fd = fs2.openSync(opt.file, "w+"); + } else { + throw er; + } + } + const st = fs2.fstatSync(fd); + const headBuf = Buffer.alloc(512); + POSITION: + for (position = 0; position < st.size; position += 512) { + for (let bufPos = 0, bytes = 0; bufPos < 512; bufPos += bytes) { + bytes = fs2.readSync( + fd, + headBuf, + bufPos, + headBuf.length - bufPos, + position + bufPos + ); + if (position === 0 && headBuf[0] === 31 && headBuf[1] === 139) { + throw new Error("cannot append to compressed archives"); + } + if (!bytes) { + break POSITION; + } + } + const h = new Header(headBuf); + if (!h.cksumValid) { + break; + } + const entryBlockSize = 512 * Math.ceil(h.size / 512); + if (position + entryBlockSize + 512 > st.size) { + break; + } + position += entryBlockSize; + if (opt.mtimeCache) { + opt.mtimeCache.set(h.path, h.mtime); + } + } + threw = false; + streamSync(opt, p, position, fd, files); + } finally { + if (threw) { + try { + fs2.closeSync(fd); + } catch (er) { + } + } + } + }; + var streamSync = (opt, p, position, fd, files) => { + const stream = new fsm.WriteStreamSync(opt.file, { + fd, + start: position + }); + p.pipe(stream); + addFilesSync(p, files); + }; + var replace = (opt, files, cb) => { + files = Array.from(files); + const p = new Pack(opt); + const getPos = (fd, size, cb_) => { + const cb2 = (er, pos) => { + if (er) { + fs2.close(fd, (_) => cb_(er)); + } else { + cb_(null, pos); + } + }; + let position = 0; + if (size === 0) { + return cb2(null, 0); + } + let bufPos = 0; + const headBuf = Buffer.alloc(512); + const onread = (er, bytes) => { + if (er) { + return cb2(er); + } + bufPos += bytes; + if (bufPos < 512 && bytes) { + return fs2.read( + fd, + headBuf, + bufPos, + headBuf.length - bufPos, + position + bufPos, + onread + ); + } + if (position === 0 && headBuf[0] === 31 && headBuf[1] === 139) { + return cb2(new Error("cannot append to compressed archives")); + } + if (bufPos < 512) { + return cb2(null, position); + } + const h = new Header(headBuf); + if (!h.cksumValid) { + return cb2(null, position); + } + const entryBlockSize = 512 * Math.ceil(h.size / 512); + if (position + entryBlockSize + 512 > size) { + return cb2(null, position); + } + position += entryBlockSize + 512; + if (position >= size) { + return cb2(null, position); + } + if (opt.mtimeCache) { + opt.mtimeCache.set(h.path, h.mtime); + } + bufPos = 0; + fs2.read(fd, headBuf, 0, 512, position, onread); + }; + fs2.read(fd, headBuf, 0, 512, position, onread); }; - } - exports2.default = default_1; + const promise = new Promise((resolve, reject) => { + p.on("error", reject); + let flag = "r+"; + const onopen = (er, fd) => { + if (er && er.code === "ENOENT" && flag === "r+") { + flag = "w+"; + return fs2.open(opt.file, flag, onopen); + } + if (er) { + return reject(er); + } + fs2.fstat(fd, (er2, st) => { + if (er2) { + return fs2.close(fd, () => reject(er2)); + } + getPos(fd, st.size, (er3, position) => { + if (er3) { + return reject(er3); + } + const stream = new fsm.WriteStream(opt.file, { + fd, + start: position + }); + p.pipe(stream); + stream.on("error", reject); + stream.on("close", resolve); + addFilesAsync(p, files); + }); + }); + }; + fs2.open(opt.file, flag, onopen); + }); + return cb ? promise.then(cb, cb) : promise; + }; + var addFilesSync = (p, files) => { + files.forEach((file) => { + if (file.charAt(0) === "@") { + t({ + file: path2.resolve(p.cwd, file.slice(1)), + sync: true, + noResume: true, + onentry: (entry) => p.add(entry) + }); + } else { + p.add(file); + } + }); + p.end(); + }; + var addFilesAsync = (p, files) => { + while (files.length) { + const file = files.shift(); + if (file.charAt(0) === "@") { + return t({ + file: path2.resolve(p.cwd, file.slice(1)), + noResume: true, + onentry: (entry) => p.add(entry) + }).then((_) => addFilesAsync(p, files)); + } else { + p.add(file); + } + } + p.end(); + }; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_cloneRegExp.js -var require_cloneRegExp2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_cloneRegExp.js"(exports2, module2) { - function _cloneRegExp(pattern) { - return new RegExp(pattern.source, (pattern.global ? "g" : "") + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : "") + (pattern.sticky ? "y" : "") + (pattern.unicode ? "u" : "")); - } - module2.exports = _cloneRegExp; +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/update.js +var require_update = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/update.js"(exports2, module2) { + "use strict"; + var hlo = require_high_level_opt(); + var r = require_replace(); + module2.exports = (opt_, files, cb) => { + const opt = hlo(opt_); + if (!opt.file) { + throw new TypeError("file is required"); + } + if (opt.gzip) { + throw new TypeError("cannot append to compressed archives"); + } + if (!files || !Array.isArray(files) || !files.length) { + throw new TypeError("no files or directories specified"); + } + files = Array.from(files); + mtimeFilter(opt); + return r(opt, files, cb); + }; + var mtimeFilter = (opt) => { + const filter = opt.filter; + if (!opt.mtimeCache) { + opt.mtimeCache = /* @__PURE__ */ new Map(); + } + opt.filter = filter ? (path2, stat) => filter(path2, stat) && !(opt.mtimeCache.get(path2) > stat.mtime) : (path2, stat) => !(opt.mtimeCache.get(path2) > stat.mtime); + }; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_clone.js -var require_clone2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_clone.js"(exports2, module2) { - var _cloneRegExp = require_cloneRegExp2(); - var type = require_type(); - function _clone(value, refFrom, refTo, deep) { - var copy = function copy2(copiedValue) { - var len = refFrom.length; - var idx = 0; - while (idx < len) { - if (value === refFrom[idx]) { - return refTo[idx]; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/opts-arg.js +var require_opts_arg = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/opts-arg.js"(exports2, module2) { + var { promisify } = require("util"); + var fs2 = require("fs"); + var optsArg = (opts) => { + if (!opts) + opts = { mode: 511, fs: fs2 }; + else if (typeof opts === "object") + opts = { mode: 511, fs: fs2, ...opts }; + else if (typeof opts === "number") + opts = { mode: opts, fs: fs2 }; + else if (typeof opts === "string") + opts = { mode: parseInt(opts, 8), fs: fs2 }; + else + throw new TypeError("invalid options argument"); + opts.mkdir = opts.mkdir || opts.fs.mkdir || fs2.mkdir; + opts.mkdirAsync = promisify(opts.mkdir); + opts.stat = opts.stat || opts.fs.stat || fs2.stat; + opts.statAsync = promisify(opts.stat); + opts.statSync = opts.statSync || opts.fs.statSync || fs2.statSync; + opts.mkdirSync = opts.mkdirSync || opts.fs.mkdirSync || fs2.mkdirSync; + return opts; + }; + module2.exports = optsArg; + } +}); + +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/path-arg.js +var require_path_arg = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/path-arg.js"(exports2, module2) { + var platform = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform; + var { resolve, parse: parse2 } = require("path"); + var pathArg = (path2) => { + if (/\0/.test(path2)) { + throw Object.assign( + new TypeError("path must be a string without null bytes"), + { + path: path2, + code: "ERR_INVALID_ARG_VALUE" } - idx += 1; - } - refFrom[idx + 1] = value; - refTo[idx + 1] = copiedValue; - for (var key in value) { - copiedValue[key] = deep ? _clone(value[key], refFrom, refTo, true) : value[key]; + ); + } + path2 = resolve(path2); + if (platform === "win32") { + const badWinChars = /[*|"<>?:]/; + const { root } = parse2(path2); + if (badWinChars.test(path2.substr(root.length))) { + throw Object.assign(new Error("Illegal characters in path."), { + path: path2, + code: "EINVAL" + }); } - return copiedValue; - }; - switch (type(value)) { - case "Object": - return copy({}); - case "Array": - return copy([]); - case "Date": - return new Date(value.valueOf()); - case "RegExp": - return _cloneRegExp(value); - default: - return value; } - } - module2.exports = _clone; + return path2; + }; + module2.exports = pathArg; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/clone.js -var require_clone3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/clone.js"(exports2, module2) { - var _clone = require_clone2(); - var _curry1 = require_curry1(); - var clone = /* @__PURE__ */ _curry1(function clone2(value) { - return value != null && typeof value.clone === "function" ? value.clone() : _clone(value, [], [], true); - }); - module2.exports = clone; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/find-made.js +var require_find_made = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/find-made.js"(exports2, module2) { + var { dirname } = require("path"); + var findMade = (opts, parent, path2 = void 0) => { + if (path2 === parent) + return Promise.resolve(); + return opts.statAsync(parent).then( + (st) => st.isDirectory() ? path2 : void 0, + // will fail later + (er) => er.code === "ENOENT" ? findMade(opts, dirname(parent), parent) : void 0 + ); + }; + var findMadeSync = (opts, parent, path2 = void 0) => { + if (path2 === parent) + return void 0; + try { + return opts.statSync(parent).isDirectory() ? path2 : void 0; + } catch (er) { + return er.code === "ENOENT" ? findMadeSync(opts, dirname(parent), parent) : void 0; + } + }; + module2.exports = { findMade, findMadeSync }; } }); -// ../get-context/lib/checkCompatibility/BreakingChangeError.js -var require_BreakingChangeError = __commonJS({ - "../get-context/lib/checkCompatibility/BreakingChangeError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/mkdirp-manual.js +var require_mkdirp_manual = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/mkdirp-manual.js"(exports2, module2) { + var { dirname } = require("path"); + var mkdirpManual = (path2, opts, made) => { + opts.recursive = false; + const parent = dirname(path2); + if (parent === path2) { + return opts.mkdirAsync(path2, opts).catch((er) => { + if (er.code !== "EISDIR") + throw er; + }); + } + return opts.mkdirAsync(path2, opts).then(() => made || path2, (er) => { + if (er.code === "ENOENT") + return mkdirpManual(parent, opts).then((made2) => mkdirpManual(path2, opts, made2)); + if (er.code !== "EEXIST" && er.code !== "EROFS") + throw er; + return opts.statAsync(path2).then((st) => { + if (st.isDirectory()) + return made; + else + throw er; + }, () => { + throw er; + }); + }); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var BreakingChangeError = class extends error_1.default { - constructor(opts) { - super(opts.code, opts.message); - this.relatedIssue = opts.relatedIssue; - this.relatedPR = opts.relatedPR; - this.additionalInformation = opts.additionalInformation; + var mkdirpManualSync = (path2, opts, made) => { + const parent = dirname(path2); + opts.recursive = false; + if (parent === path2) { + try { + return opts.mkdirSync(path2, opts); + } catch (er) { + if (er.code !== "EISDIR") + throw er; + else + return; + } + } + try { + opts.mkdirSync(path2, opts); + return made || path2; + } catch (er) { + if (er.code === "ENOENT") + return mkdirpManualSync(path2, opts, mkdirpManualSync(parent, opts, made)); + if (er.code !== "EEXIST" && er.code !== "EROFS") + throw er; + try { + if (!opts.statSync(path2).isDirectory()) + throw er; + } catch (_) { + throw er; + } } }; - exports2.default = BreakingChangeError; + module2.exports = { mkdirpManual, mkdirpManualSync }; } }); -// ../get-context/lib/checkCompatibility/ModulesBreakingChangeError.js -var require_ModulesBreakingChangeError = __commonJS({ - "../get-context/lib/checkCompatibility/ModulesBreakingChangeError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/mkdirp-native.js +var require_mkdirp_native = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/mkdirp-native.js"(exports2, module2) { + var { dirname } = require("path"); + var { findMade, findMadeSync } = require_find_made(); + var { mkdirpManual, mkdirpManualSync } = require_mkdirp_manual(); + var mkdirpNative = (path2, opts) => { + opts.recursive = true; + const parent = dirname(path2); + if (parent === path2) + return opts.mkdirAsync(path2, opts); + return findMade(opts, path2).then((made) => opts.mkdirAsync(path2, opts).then(() => made).catch((er) => { + if (er.code === "ENOENT") + return mkdirpManual(path2, opts); + else + throw er; + })); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var BreakingChangeError_1 = __importDefault(require_BreakingChangeError()); - var ModulesBreakingChangeError = class extends BreakingChangeError_1.default { - constructor(opts) { - super({ - additionalInformation: opts.additionalInformation, - code: "MODULES_BREAKING_CHANGE", - message: `The node_modules structure at "${opts.modulesPath}" is not compatible with the current pnpm version. Run "pnpm install --force" to recreate node_modules.`, - relatedIssue: opts.relatedIssue, - relatedPR: opts.relatedPR - }); - this.modulesPath = opts.modulesPath; + var mkdirpNativeSync = (path2, opts) => { + opts.recursive = true; + const parent = dirname(path2); + if (parent === path2) + return opts.mkdirSync(path2, opts); + const made = findMadeSync(opts, path2); + try { + opts.mkdirSync(path2, opts); + return made; + } catch (er) { + if (er.code === "ENOENT") + return mkdirpManualSync(path2, opts); + else + throw er; } }; - exports2.default = ModulesBreakingChangeError; + module2.exports = { mkdirpNative, mkdirpNativeSync }; } }); -// ../get-context/lib/checkCompatibility/UnexpectedStoreError.js -var require_UnexpectedStoreError = __commonJS({ - "../get-context/lib/checkCompatibility/UnexpectedStoreError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var UnexpectedStoreError = class extends error_1.default { - constructor(opts) { - super("UNEXPECTED_STORE", "Unexpected store location"); - this.expectedStorePath = opts.expectedStorePath; - this.actualStorePath = opts.actualStorePath; - this.modulesDir = opts.modulesDir; - } - }; - exports2.default = UnexpectedStoreError; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/use-native.js +var require_use_native = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/lib/use-native.js"(exports2, module2) { + var fs2 = require("fs"); + var version2 = process.env.__TESTING_MKDIRP_NODE_VERSION__ || process.version; + var versArr = version2.replace(/^v/, "").split("."); + var hasNative = +versArr[0] > 10 || +versArr[0] === 10 && +versArr[1] >= 12; + var useNative = !hasNative ? () => false : (opts) => opts.mkdir === fs2.mkdir; + var useNativeSync = !hasNative ? () => false : (opts) => opts.mkdirSync === fs2.mkdirSync; + module2.exports = { useNative, useNativeSync }; } }); -// ../get-context/lib/checkCompatibility/UnexpectedVirtualStoreDirError.js -var require_UnexpectedVirtualStoreDirError = __commonJS({ - "../get-context/lib/checkCompatibility/UnexpectedVirtualStoreDirError.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/index.js +var require_mkdirp = __commonJS({ + "../node_modules/.pnpm/mkdirp@1.0.4/node_modules/mkdirp/index.js"(exports2, module2) { + var optsArg = require_opts_arg(); + var pathArg = require_path_arg(); + var { mkdirpNative, mkdirpNativeSync } = require_mkdirp_native(); + var { mkdirpManual, mkdirpManualSync } = require_mkdirp_manual(); + var { useNative, useNativeSync } = require_use_native(); + var mkdirp = (path2, opts) => { + path2 = pathArg(path2); + opts = optsArg(opts); + return useNative(opts) ? mkdirpNative(path2, opts) : mkdirpManual(path2, opts); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var UnexpectedVirtualStoreDirError = class extends error_1.default { - constructor(opts) { - super("UNEXPECTED_VIRTUAL_STORE", "Unexpected virtual store location"); - this.expected = opts.expected; - this.actual = opts.actual; - this.modulesDir = opts.modulesDir; - } + var mkdirpSync = (path2, opts) => { + path2 = pathArg(path2); + opts = optsArg(opts); + return useNativeSync(opts) ? mkdirpNativeSync(path2, opts) : mkdirpManualSync(path2, opts); }; - exports2.default = UnexpectedVirtualStoreDirError; + mkdirp.sync = mkdirpSync; + mkdirp.native = (path2, opts) => mkdirpNative(pathArg(path2), optsArg(opts)); + mkdirp.manual = (path2, opts) => mkdirpManual(pathArg(path2), optsArg(opts)); + mkdirp.nativeSync = (path2, opts) => mkdirpNativeSync(pathArg(path2), optsArg(opts)); + mkdirp.manualSync = (path2, opts) => mkdirpManualSync(pathArg(path2), optsArg(opts)); + module2.exports = mkdirp; } }); -// ../get-context/lib/checkCompatibility/index.js -var require_checkCompatibility = __commonJS({ - "../get-context/lib/checkCompatibility/index.js"(exports2) { +// ../node_modules/.pnpm/chownr@2.0.0/node_modules/chownr/chownr.js +var require_chownr = __commonJS({ + "../node_modules/.pnpm/chownr@2.0.0/node_modules/chownr/chownr.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var fs2 = require("fs"); + var path2 = require("path"); + var LCHOWN = fs2.lchown ? "lchown" : "chown"; + var LCHOWNSYNC = fs2.lchownSync ? "lchownSync" : "chownSync"; + var needEISDIRHandled = fs2.lchown && !process.version.match(/v1[1-9]+\./) && !process.version.match(/v10\.[6-9]/); + var lchownSync = (path3, uid, gid) => { + try { + return fs2[LCHOWNSYNC](path3, uid, gid); + } catch (er) { + if (er.code !== "ENOENT") + throw er; + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var ModulesBreakingChangeError_1 = __importDefault(require_ModulesBreakingChangeError()); - var UnexpectedStoreError_1 = __importDefault(require_UnexpectedStoreError()); - var UnexpectedVirtualStoreDirError_1 = __importDefault(require_UnexpectedVirtualStoreDirError()); - function checkCompatibility(modules, opts) { - if (!modules.layoutVersion || modules.layoutVersion !== constants_1.LAYOUT_VERSION) { - throw new ModulesBreakingChangeError_1.default({ - modulesPath: opts.modulesDir - }); + var chownSync = (path3, uid, gid) => { + try { + return fs2.chownSync(path3, uid, gid); + } catch (er) { + if (er.code !== "ENOENT") + throw er; } - if (!modules.storeDir || path_1.default.relative(modules.storeDir, opts.storeDir) !== "") { - throw new UnexpectedStoreError_1.default({ - actualStorePath: opts.storeDir, - expectedStorePath: modules.storeDir, - modulesDir: opts.modulesDir + }; + var handleEISDIR = needEISDIRHandled ? (path3, uid, gid, cb) => (er) => { + if (!er || er.code !== "EISDIR") + cb(er); + else + fs2.chown(path3, uid, gid, cb); + } : (_, __, ___, cb) => cb; + var handleEISDirSync = needEISDIRHandled ? (path3, uid, gid) => { + try { + return lchownSync(path3, uid, gid); + } catch (er) { + if (er.code !== "EISDIR") + throw er; + chownSync(path3, uid, gid); + } + } : (path3, uid, gid) => lchownSync(path3, uid, gid); + var nodeVersion = process.version; + var readdir = (path3, options, cb) => fs2.readdir(path3, options, cb); + var readdirSync = (path3, options) => fs2.readdirSync(path3, options); + if (/^v4\./.test(nodeVersion)) + readdir = (path3, options, cb) => fs2.readdir(path3, cb); + var chown = (cpath, uid, gid, cb) => { + fs2[LCHOWN](cpath, uid, gid, handleEISDIR(cpath, uid, gid, (er) => { + cb(er && er.code !== "ENOENT" ? er : null); + })); + }; + var chownrKid = (p, child, uid, gid, cb) => { + if (typeof child === "string") + return fs2.lstat(path2.resolve(p, child), (er, stats) => { + if (er) + return cb(er.code !== "ENOENT" ? er : null); + stats.name = child; + chownrKid(p, stats, uid, gid, cb); }); - } - if (modules.virtualStoreDir && path_1.default.relative(modules.virtualStoreDir, opts.virtualStoreDir) !== "") { - throw new UnexpectedVirtualStoreDirError_1.default({ - actual: opts.virtualStoreDir, - expected: modules.virtualStoreDir, - modulesDir: opts.modulesDir + if (child.isDirectory()) { + chownr(path2.resolve(p, child.name), uid, gid, (er) => { + if (er) + return cb(er); + const cpath = path2.resolve(p, child.name); + chown(cpath, uid, gid, cb); }); + } else { + const cpath = path2.resolve(p, child.name); + chown(cpath, uid, gid, cb); } - } - exports2.default = checkCompatibility; - } -}); - -// ../../node_modules/.pnpm/ci-info@3.2.0/node_modules/ci-info/vendors.json -var require_vendors = __commonJS({ - "../../node_modules/.pnpm/ci-info@3.2.0/node_modules/ci-info/vendors.json"(exports2, module2) { - module2.exports = [ - { - name: "AppVeyor", - constant: "APPVEYOR", - env: "APPVEYOR", - pr: "APPVEYOR_PULL_REQUEST_NUMBER" - }, - { - name: "Azure Pipelines", - constant: "AZURE_PIPELINES", - env: "SYSTEM_TEAMFOUNDATIONCOLLECTIONURI", - pr: "SYSTEM_PULLREQUEST_PULLREQUESTID" - }, - { - name: "Appcircle", - constant: "APPCIRCLE", - env: "AC_APPCIRCLE" - }, - { - 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: "AWS CodeBuild", - constant: "CODEBUILD", - env: "CODEBUILD_BUILD_ARN" - }, - { - name: "Codefresh", - constant: "CODEFRESH", - env: "CF_BUILD_ID", - pr: { any: ["CF_PULL_REQUEST_NUMBER", "CF_PULL_REQUEST_ID"] } - }, - { - 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: "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: "LayerCI", - constant: "LAYERCI", - env: "LAYERCI", - pr: "LAYERCI_PULL_REQUEST" - }, - { - name: "Hudson", - constant: "HUDSON", - env: "HUDSON_URL" - }, - { - name: "Jenkins", - constant: "JENKINS", - env: ["JENKINS_URL", "BUILD_ID"], - pr: { any: ["ghprbPullId", "CHANGE_ID"] } - }, - { - 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: "Render", - constant: "RENDER", - env: "RENDER", - pr: { IS_PULL_REQUEST: "true" } - }, - { - name: "Sail CI", - constant: "SAIL", - env: "SAILCI", - pr: "SAIL_PULL_REQUEST_NUMBER" - }, - { - name: "Semaphore", - constant: "SEMAPHORE", - env: "SEMAPHORE", - pr: "PULL_REQUEST_NUMBER" - }, - { - name: "Screwdriver", - constant: "SCREWDRIVER", - env: "SCREWDRIVER", - pr: { env: "SD_PULL_REQUEST", ne: "false" } - }, - { - name: "Shippable", - constant: "SHIPPABLE", - env: "SHIPPABLE", - pr: { IS_PULL_REQUEST: "true" } - }, - { - name: "Solano CI", - constant: "SOLANO", - env: "TDDIUM", - pr: "TDDIUM_PR_ID" - }, - { - 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: "Vercel", - constant: "VERCEL", - env: "NOW_BUILDER" - }, - { - name: "Visual Studio App Center", - constant: "APPCENTER", - env: "APPCENTER_BUILD_ID" - } - ]; - } -}); - -// ../../node_modules/.pnpm/ci-info@3.2.0/node_modules/ci-info/index.js -var require_ci_info = __commonJS({ - "../../node_modules/.pnpm/ci-info@3.2.0/node_modules/ci-info/index.js"(exports2) { - "use strict"; - var vendors = require_vendors(); - var env = process.env; - Object.defineProperty(exports2, "_vendors", { - value: vendors.map(function(v) { - return v.constant; - }) - }); - exports2.name = null; - exports2.isPR = null; - vendors.forEach(function(vendor) { - const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env]; - const isCI = envs.every(function(obj) { - return checkEnv(obj); + }; + var chownr = (p, uid, gid, cb) => { + readdir(p, { withFileTypes: true }, (er, children) => { + if (er) { + if (er.code === "ENOENT") + return cb(); + else if (er.code !== "ENOTDIR" && er.code !== "ENOTSUP") + return cb(er); + } + if (er || !children.length) + return chown(p, uid, gid, cb); + let len = children.length; + let errState = null; + const then = (er2) => { + if (errState) + return; + if (er2) + return cb(errState = er2); + if (--len === 0) + return chown(p, uid, gid, cb); + }; + children.forEach((child) => chownrKid(p, child, uid, gid, then)); }); - exports2[vendor.constant] = isCI; - if (isCI) { - exports2.name = vendor.name; - switch (typeof vendor.pr) { - case "string": - exports2.isPR = !!env[vendor.pr]; - break; - case "object": - if ("env" in vendor.pr) { - exports2.isPR = vendor.pr.env in env && env[vendor.pr.env] !== vendor.pr.ne; - } else if ("any" in vendor.pr) { - exports2.isPR = vendor.pr.any.some(function(key) { - return !!env[key]; - }); - } else { - exports2.isPR = checkEnv(vendor.pr); - } - break; - default: - exports2.isPR = null; + }; + var chownrKidSync = (p, child, uid, gid) => { + if (typeof child === "string") { + try { + const stats = fs2.lstatSync(path2.resolve(p, child)); + stats.name = child; + child = stats; + } catch (er) { + if (er.code === "ENOENT") + return; + else + throw er; } } - }); - exports2.isCI = !!(env.CI || env.CONTINUOUS_INTEGRATION || env.BUILD_NUMBER || env.RUN_ID || exports2.name || false); - function checkEnv(obj) { - if (typeof obj === "string") - return !!env[obj]; - return Object.keys(obj).every(function(k) { - return env[k] === obj[k]; - }); - } - } -}); - -// ../../node_modules/.pnpm/is-ci@3.0.0/node_modules/is-ci/index.js -var require_is_ci = __commonJS({ - "../../node_modules/.pnpm/is-ci@3.0.0/node_modules/is-ci/index.js"(exports2, module2) { - "use strict"; - module2.exports = require_ci_info().isCI; + if (child.isDirectory()) + chownrSync(path2.resolve(p, child.name), uid, gid); + handleEISDirSync(path2.resolve(p, child.name), uid, gid); + }; + var chownrSync = (p, uid, gid) => { + let children; + try { + children = readdirSync(p, { withFileTypes: true }); + } catch (er) { + if (er.code === "ENOENT") + return; + else if (er.code === "ENOTDIR" || er.code === "ENOTSUP") + return handleEISDirSync(p, uid, gid); + else + throw er; + } + if (children && children.length) + children.forEach((child) => chownrKidSync(p, child, uid, gid)); + return handleEISDirSync(p, uid, gid); + }; + module2.exports = chownr; + chownr.sync = chownrSync; } }); -// ../get-context/lib/readLockfiles.js -var require_readLockfiles = __commonJS({ - "../get-context/lib/readLockfiles.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/mkdir.js +var require_mkdir = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/mkdir.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var mkdirp = require_mkdirp(); + var fs2 = require("fs"); + var path2 = require("path"); + var chownr = require_chownr(); + var normPath = require_normalize_windows_path(); + var SymlinkError = class extends Error { + constructor(symlink, path3) { + super("Cannot extract through symbolic link"); + this.path = path3; + this.symlink = symlink; + } + get name() { + return "SylinkError"; + } }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var lockfile_file_1 = require_lib57(); - var logger_1 = __importDefault(require_lib6()); - var is_ci_1 = __importDefault(require_is_ci()); - var clone_1 = __importDefault(require_clone3()); - var equals_1 = __importDefault(require_equals2()); - async function default_1(opts) { - var _a, _b, _c; - const lockfileOpts = { - ignoreIncompatible: opts.force || is_ci_1.default, - wantedVersion: constants_1.LOCKFILE_VERSION - }; - const fileReads = []; - let lockfileHadConflicts = false; - if (opts.useLockfile) { - if (!opts.frozenLockfile) { - fileReads.push((async () => { - try { - const { lockfile, hadConflicts } = await lockfile_file_1.readWantedLockfileAndAutofixConflicts(opts.lockfileDir, lockfileOpts); - lockfileHadConflicts = hadConflicts; - return lockfile; - } catch (err) { - logger_1.default.warn({ - message: `Ignoring broken lockfile at ${opts.lockfileDir}: ${err.message}`, - prefix: opts.lockfileDir - }); - return void 0; - } - })()); + var CwdError = class extends Error { + constructor(path3, code) { + super(code + ": Cannot cd into '" + path3 + "'"); + this.path = path3; + this.code = code; + } + get name() { + return "CwdError"; + } + }; + var cGet = (cache, key) => cache.get(normPath(key)); + var cSet = (cache, key, val) => cache.set(normPath(key), val); + var checkCwd = (dir, cb) => { + fs2.stat(dir, (er, st) => { + if (er || !st.isDirectory()) { + er = new CwdError(dir, er && er.code || "ENOTDIR"); + } + cb(er); + }); + }; + module2.exports = (dir, opt, cb) => { + dir = normPath(dir); + const umask = opt.umask; + const mode = opt.mode | 448; + const needChmod = (mode & umask) !== 0; + const uid = opt.uid; + const gid = opt.gid; + const doChown = typeof uid === "number" && typeof gid === "number" && (uid !== opt.processUid || gid !== opt.processGid); + const preserve = opt.preserve; + const unlink = opt.unlink; + const cache = opt.cache; + const cwd = normPath(opt.cwd); + const done = (er, created) => { + if (er) { + cb(er); } else { - fileReads.push(lockfile_file_1.readWantedLockfile(opts.lockfileDir, lockfileOpts)); + cSet(cache, dir, true); + if (created && doChown) { + chownr(created, uid, gid, (er2) => done(er2)); + } else if (needChmod) { + fs2.chmod(dir, mode, cb); + } else { + cb(); + } } + }; + if (cache && cGet(cache, dir) === true) { + return done(); + } + if (dir === cwd) { + return checkCwd(dir, done); + } + if (preserve) { + return mkdirp(dir, { mode }).then((made) => done(null, made), done); + } + const sub = normPath(path2.relative(cwd, dir)); + const parts = sub.split("/"); + mkdir_(cwd, parts, mode, cache, unlink, cwd, null, done); + }; + var mkdir_ = (base, parts, mode, cache, unlink, cwd, created, cb) => { + if (!parts.length) { + return cb(null, created); + } + const p = parts.shift(); + const part = normPath(path2.resolve(base + "/" + p)); + if (cGet(cache, part)) { + return mkdir_(part, parts, mode, cache, unlink, cwd, created, cb); + } + fs2.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb)); + }; + var onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => (er) => { + if (er) { + fs2.lstat(part, (statEr, st) => { + if (statEr) { + statEr.path = statEr.path && normPath(statEr.path); + cb(statEr); + } else if (st.isDirectory()) { + mkdir_(part, parts, mode, cache, unlink, cwd, created, cb); + } else if (unlink) { + fs2.unlink(part, (er2) => { + if (er2) { + return cb(er2); + } + fs2.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb)); + }); + } else if (st.isSymbolicLink()) { + return cb(new SymlinkError(part, part + "/" + parts.join("/"))); + } else { + cb(er); + } + }); } else { - if (await lockfile_file_1.existsWantedLockfile(opts.lockfileDir)) { - logger_1.default.warn({ - message: `A ${constants_1.WANTED_LOCKFILE} file exists. The current configuration prohibits to read or write a lockfile`, - prefix: opts.lockfileDir - }); + created = created || part; + mkdir_(part, parts, mode, cache, unlink, cwd, created, cb); + } + }; + var checkCwdSync = (dir) => { + let ok = false; + let code = "ENOTDIR"; + try { + ok = fs2.statSync(dir).isDirectory(); + } catch (er) { + code = er.code; + } finally { + if (!ok) { + throw new CwdError(dir, code); } - fileReads.push(Promise.resolve(void 0)); } - fileReads.push((async () => { - try { - return await lockfile_file_1.readCurrentLockfile(opts.virtualStoreDir, lockfileOpts); - } catch (err) { - logger_1.default.warn({ - message: `Ignoring broken lockfile at ${opts.virtualStoreDir}: ${err.message}`, - prefix: opts.lockfileDir - }); - return void 0; + }; + module2.exports.sync = (dir, opt) => { + dir = normPath(dir); + const umask = opt.umask; + const mode = opt.mode | 448; + const needChmod = (mode & umask) !== 0; + const uid = opt.uid; + const gid = opt.gid; + const doChown = typeof uid === "number" && typeof gid === "number" && (uid !== opt.processUid || gid !== opt.processGid); + const preserve = opt.preserve; + const unlink = opt.unlink; + const cache = opt.cache; + const cwd = normPath(opt.cwd); + const done = (created2) => { + cSet(cache, dir, true); + if (created2 && doChown) { + chownr.sync(created2, uid, gid); } - })()); - const files = await Promise.all(fileReads); - const sopts = { lockfileVersion: constants_1.LOCKFILE_VERSION }; - const importerIds = opts.projects.map((importer) => importer.id); - const currentLockfile = (_a = files[1]) !== null && _a !== void 0 ? _a : lockfile_file_1.createLockfileObject(importerIds, sopts); - for (const importerId of importerIds) { - if (!currentLockfile.importers[importerId]) { - currentLockfile.importers[importerId] = { - specifiers: {} - }; + if (needChmod) { + fs2.chmodSync(dir, mode); } + }; + if (cache && cGet(cache, dir) === true) { + return done(); } - const wantedLockfile = (_c = (_b = files[0]) !== null && _b !== void 0 ? _b : currentLockfile && clone_1.default(currentLockfile)) !== null && _c !== void 0 ? _c : lockfile_file_1.createLockfileObject(importerIds, sopts); - for (const importerId of importerIds) { - if (!wantedLockfile.importers[importerId]) { - wantedLockfile.importers[importerId] = { - specifiers: {} - }; + if (dir === cwd) { + checkCwdSync(cwd); + return done(); + } + if (preserve) { + return done(mkdirp.sync(dir, mode)); + } + const sub = normPath(path2.relative(cwd, dir)); + const parts = sub.split("/"); + let created = null; + for (let p = parts.shift(), part = cwd; p && (part += "/" + p); p = parts.shift()) { + part = normPath(path2.resolve(part)); + if (cGet(cache, part)) { + continue; + } + try { + fs2.mkdirSync(part, mode); + created = created || part; + cSet(cache, part, true); + } catch (er) { + const st = fs2.lstatSync(part); + if (st.isDirectory()) { + cSet(cache, part, true); + continue; + } else if (unlink) { + fs2.unlinkSync(part); + fs2.mkdirSync(part, mode); + created = created || part; + cSet(cache, part, true); + continue; + } else if (st.isSymbolicLink()) { + return new SymlinkError(part, part + "/" + parts.join("/")); + } } } - return { - currentLockfile, - currentLockfileIsUpToDate: equals_1.default(currentLockfile, wantedLockfile), - existsCurrentLockfile: files[1] != null, - existsWantedLockfile: files[0] != null, - wantedLockfile, - lockfileHadConflicts + return done(created); + }; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/normalize-unicode.js +var require_normalize_unicode = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/normalize-unicode.js"(exports2, module2) { + var normalizeCache = /* @__PURE__ */ Object.create(null); + var { hasOwnProperty } = Object.prototype; + module2.exports = (s) => { + if (!hasOwnProperty.call(normalizeCache, s)) { + normalizeCache[s] = s.normalize("NFKD"); + } + return normalizeCache[s]; + }; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/path-reservations.js +var require_path_reservations = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/path-reservations.js"(exports2, module2) { + var assert = require("assert"); + var normalize = require_normalize_unicode(); + var stripSlashes = require_strip_trailing_slashes(); + var { join } = require("path"); + var platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform; + var isWindows = platform === "win32"; + module2.exports = () => { + const queues = /* @__PURE__ */ new Map(); + const reservations = /* @__PURE__ */ new Map(); + const getDirs = (path2) => { + const dirs = path2.split("/").slice(0, -1).reduce((set, path3) => { + if (set.length) { + path3 = join(set[set.length - 1], path3); + } + set.push(path3 || "/"); + return set; + }, []); + return dirs; }; - } - exports2.default = default_1; + const running = /* @__PURE__ */ new Set(); + const getQueues = (fn2) => { + const res = reservations.get(fn2); + if (!res) { + throw new Error("function does not have any path reservations"); + } + return { + paths: res.paths.map((path2) => queues.get(path2)), + dirs: [...res.dirs].map((path2) => queues.get(path2)) + }; + }; + const check = (fn2) => { + const { paths, dirs } = getQueues(fn2); + return paths.every((q) => q[0] === fn2) && dirs.every((q) => q[0] instanceof Set && q[0].has(fn2)); + }; + const run = (fn2) => { + if (running.has(fn2) || !check(fn2)) { + return false; + } + running.add(fn2); + fn2(() => clear(fn2)); + return true; + }; + const clear = (fn2) => { + if (!running.has(fn2)) { + return false; + } + const { paths, dirs } = reservations.get(fn2); + const next = /* @__PURE__ */ new Set(); + paths.forEach((path2) => { + const q = queues.get(path2); + assert.equal(q[0], fn2); + if (q.length === 1) { + queues.delete(path2); + } else { + q.shift(); + if (typeof q[0] === "function") { + next.add(q[0]); + } else { + q[0].forEach((fn3) => next.add(fn3)); + } + } + }); + dirs.forEach((dir) => { + const q = queues.get(dir); + assert(q[0] instanceof Set); + if (q[0].size === 1 && q.length === 1) { + queues.delete(dir); + } else if (q[0].size === 1) { + q.shift(); + next.add(q[0]); + } else { + q[0].delete(fn2); + } + }); + running.delete(fn2); + next.forEach((fn3) => run(fn3)); + return true; + }; + const reserve = (paths, fn2) => { + paths = isWindows ? ["win32 parallelization disabled"] : paths.map((p) => { + return normalize(stripSlashes(join(p))).toLowerCase(); + }); + const dirs = new Set( + paths.map((path2) => getDirs(path2)).reduce((a, b) => a.concat(b)) + ); + reservations.set(fn2, { dirs, paths }); + paths.forEach((path2) => { + const q = queues.get(path2); + if (!q) { + queues.set(path2, [fn2]); + } else { + q.push(fn2); + } + }); + dirs.forEach((dir) => { + const q = queues.get(dir); + if (!q) { + queues.set(dir, [/* @__PURE__ */ new Set([fn2])]); + } else if (q[q.length - 1] instanceof Set) { + q[q.length - 1].add(fn2); + } else { + q.push(/* @__PURE__ */ new Set([fn2])); + } + }); + return run(fn2); + }; + return { check, reserve }; + }; } }); -// ../get-context/lib/index.js -var require_lib67 = __commonJS({ - "../get-context/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/get-write-flag.js +var require_get_write_flag = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/get-write-flag.js"(exports2, module2) { + var platform = process.env.__FAKE_PLATFORM__ || process.platform; + var isWindows = platform === "win32"; + var fs2 = global.__FAKE_TESTING_FS__ || require("fs"); + var { O_CREAT, O_TRUNC, O_WRONLY, UV_FS_O_FILEMAP = 0 } = fs2.constants; + var fMapEnabled = isWindows && !!UV_FS_O_FILEMAP; + var fMapLimit = 512 * 1024; + var fMapFlag = UV_FS_O_FILEMAP | O_TRUNC | O_CREAT | O_WRONLY; + module2.exports = !fMapEnabled ? () => "w" : (size) => size < fMapLimit ? fMapFlag : "w"; + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/unpack.js +var require_unpack = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/unpack.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var assert = require("assert"); + var Parser = require_parse8(); + var fs2 = require("fs"); + var fsm = require_fs_minipass(); + var path2 = require("path"); + var mkdir = require_mkdir(); + var wc = require_winchars(); + var pathReservations = require_path_reservations(); + var stripAbsolutePath = require_strip_absolute_path(); + var normPath = require_normalize_windows_path(); + var stripSlash = require_strip_trailing_slashes(); + var normalize = require_normalize_unicode(); + var ONENTRY = Symbol("onEntry"); + var CHECKFS = Symbol("checkFs"); + var CHECKFS2 = Symbol("checkFs2"); + var PRUNECACHE = Symbol("pruneCache"); + var ISREUSABLE = Symbol("isReusable"); + var MAKEFS = Symbol("makeFs"); + var FILE = Symbol("file"); + var DIRECTORY = Symbol("directory"); + var LINK = Symbol("link"); + var SYMLINK = Symbol("symlink"); + var HARDLINK = Symbol("hardlink"); + var UNSUPPORTED = Symbol("unsupported"); + var CHECKPATH = Symbol("checkPath"); + var MKDIR = Symbol("mkdir"); + var ONERROR = Symbol("onError"); + var PENDING = Symbol("pending"); + var PEND = Symbol("pend"); + var UNPEND = Symbol("unpend"); + var ENDED = Symbol("ended"); + var MAYBECLOSE = Symbol("maybeClose"); + var SKIP = Symbol("skip"); + var DOCHOWN = Symbol("doChown"); + var UID = Symbol("uid"); + var GID = Symbol("gid"); + var CHECKED_CWD = Symbol("checkedCwd"); + var crypto6 = require("crypto"); + var getFlag = require_get_write_flag(); + var platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform; + var isWindows = platform === "win32"; + var unlinkFile = (path3, cb) => { + if (!isWindows) { + return fs2.unlink(path3, cb); + } + const name = path3 + ".DELETE." + crypto6.randomBytes(16).toString("hex"); + fs2.rename(path3, name, (er) => { + if (er) { + return cb(er); + } + fs2.unlink(name, cb); + }); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getContextForSingleImporter = exports2.UnexpectedVirtualStoreDirError = exports2.UnexpectedStoreError = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var read_projects_context_1 = __importDefault(require_lib66()); - var types_1 = require_lib14(); - var rimraf_1 = __importDefault(require_rimraf()); - var path_absolute_1 = __importDefault(require_path_absolute()); - var clone_1 = __importDefault(require_clone3()); - var equals_1 = __importDefault(require_equals2()); - var checkCompatibility_1 = __importDefault(require_checkCompatibility()); - var UnexpectedStoreError_1 = __importDefault(require_UnexpectedStoreError()); - exports2.UnexpectedStoreError = UnexpectedStoreError_1.default; - var UnexpectedVirtualStoreDirError_1 = __importDefault(require_UnexpectedVirtualStoreDirError()); - exports2.UnexpectedVirtualStoreDirError = UnexpectedVirtualStoreDirError_1.default; - var readLockfiles_1 = __importDefault(require_readLockfiles()); - async function getContext(projects, opts) { - var _a, _b, _c, _d, _e, _f, _g; - const modulesDir = (_a = opts.modulesDir) !== null && _a !== void 0 ? _a : "node_modules"; - let importersContext = await read_projects_context_1.default(projects, { lockfileDir: opts.lockfileDir, modulesDir }); - const virtualStoreDir = path_absolute_1.default((_b = opts.virtualStoreDir) !== null && _b !== void 0 ? _b : path_1.default.join(modulesDir, ".pnpm"), opts.lockfileDir); - if (importersContext.modules != null) { - const { purged } = await validateModules(importersContext.modules, importersContext.projects, { - currentHoistPattern: importersContext.currentHoistPattern, - currentPublicHoistPattern: importersContext.currentPublicHoistPattern, - forceNewModules: opts.forceNewModules === true, - include: opts.include, - lockfileDir: opts.lockfileDir, - modulesDir, - registries: opts.registries, - storeDir: opts.storeDir, - virtualStoreDir, - forceHoistPattern: opts.forceHoistPattern, - hoistPattern: opts.hoistPattern, - forcePublicHoistPattern: opts.forcePublicHoistPattern, - publicHoistPattern: opts.publicHoistPattern - }); - if (purged) { - importersContext = await read_projects_context_1.default(projects, { - lockfileDir: opts.lockfileDir, - modulesDir - }); + var unlinkFileSync = (path3) => { + if (!isWindows) { + return fs2.unlinkSync(path3); + } + const name = path3 + ".DELETE." + crypto6.randomBytes(16).toString("hex"); + fs2.renameSync(path3, name); + fs2.unlinkSync(name); + }; + var uint32 = (a, b, c) => a === a >>> 0 ? a : b === b >>> 0 ? b : c; + var cacheKeyNormalize = (path3) => normalize(stripSlash(normPath(path3))).toLowerCase(); + var pruneCache = (cache, abs) => { + abs = cacheKeyNormalize(abs); + for (const path3 of cache.keys()) { + const pnorm = cacheKeyNormalize(path3); + if (pnorm === abs || pnorm.indexOf(abs + "/") === 0) { + cache.delete(path3); } } - await fs_1.promises.mkdir(opts.storeDir, { recursive: true }); - projects.forEach((project) => { - core_loggers_1.packageManifestLogger.debug({ - initial: project.manifest, - prefix: project.rootDir - }); - }); - if (((_c = opts.hooks) === null || _c === void 0 ? void 0 : _c.readPackage) != null) { - for (const project of importersContext.projects) { - project.originalManifest = project.manifest; - project.manifest = opts.hooks.readPackage(clone_1.default(project.manifest), project.rootDir); + }; + var dropCache = (cache) => { + for (const key of cache.keys()) { + cache.delete(key); + } + }; + var Unpack = class extends Parser { + constructor(opt) { + if (!opt) { + opt = {}; + } + opt.ondone = (_) => { + this[ENDED] = true; + this[MAYBECLOSE](); + }; + super(opt); + this[CHECKED_CWD] = false; + this.reservations = pathReservations(); + this.transform = typeof opt.transform === "function" ? opt.transform : null; + this.writable = true; + this.readable = false; + this[PENDING] = 0; + this[ENDED] = false; + this.dirCache = opt.dirCache || /* @__PURE__ */ new Map(); + if (typeof opt.uid === "number" || typeof opt.gid === "number") { + if (typeof opt.uid !== "number" || typeof opt.gid !== "number") { + throw new TypeError("cannot set owner without number uid and gid"); + } + if (opt.preserveOwner) { + throw new TypeError( + "cannot preserve owner in archive and also set owner explicitly" + ); + } + this.uid = opt.uid; + this.gid = opt.gid; + this.setOwner = true; + } else { + this.uid = null; + this.gid = null; + this.setOwner = false; + } + if (opt.preserveOwner === void 0 && typeof opt.uid !== "number") { + this.preserveOwner = process.getuid && process.getuid() === 0; + } else { + this.preserveOwner = !!opt.preserveOwner; + } + this.processUid = (this.preserveOwner || this.setOwner) && process.getuid ? process.getuid() : null; + this.processGid = (this.preserveOwner || this.setOwner) && process.getgid ? process.getgid() : null; + this.forceChown = opt.forceChown === true; + this.win32 = !!opt.win32 || isWindows; + this.newer = !!opt.newer; + this.keep = !!opt.keep; + this.noMtime = !!opt.noMtime; + this.preservePaths = !!opt.preservePaths; + this.unlink = !!opt.unlink; + this.cwd = normPath(path2.resolve(opt.cwd || process.cwd())); + this.strip = +opt.strip || 0; + this.processUmask = opt.noChmod ? 0 : process.umask(); + this.umask = typeof opt.umask === "number" ? opt.umask : this.processUmask; + this.dmode = opt.dmode || 511 & ~this.umask; + this.fmode = opt.fmode || 438 & ~this.umask; + this.on("entry", (entry) => this[ONENTRY](entry)); + } + // a bad or damaged archive is a warning for Parser, but an error + // when extracting. Mark those errors as unrecoverable, because + // the Unpack contract cannot be met. + warn(code, msg, data = {}) { + if (code === "TAR_BAD_ARCHIVE" || code === "TAR_ABORT") { + data.recoverable = false; + } + return super.warn(code, msg, data); + } + [MAYBECLOSE]() { + if (this[ENDED] && this[PENDING] === 0) { + this.emit("prefinish"); + this.emit("finish"); + this.emit("end"); } } - const extraBinPaths = [ - ...opts.extraBinPaths || [] - ]; - const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); - if ((_d = opts.hoistPattern) === null || _d === void 0 ? void 0 : _d.length) { - extraBinPaths.unshift(path_1.default.join(hoistedModulesDir, ".bin")); + [CHECKPATH](entry) { + if (this.strip) { + const parts = normPath(entry.path).split("/"); + if (parts.length < this.strip) { + return false; + } + entry.path = parts.slice(this.strip).join("/"); + if (entry.type === "Link") { + const linkparts = normPath(entry.linkpath).split("/"); + if (linkparts.length >= this.strip) { + entry.linkpath = linkparts.slice(this.strip).join("/"); + } else { + return false; + } + } + } + if (!this.preservePaths) { + const p = normPath(entry.path); + const parts = p.split("/"); + if (parts.includes("..") || isWindows && /^[a-z]:\.\.$/i.test(parts[0])) { + this.warn("TAR_ENTRY_ERROR", `path contains '..'`, { + entry, + path: p + }); + return false; + } + const [root, stripped] = stripAbsolutePath(p); + if (root) { + entry.path = stripped; + this.warn("TAR_ENTRY_INFO", `stripping ${root} from absolute path`, { + entry, + path: p + }); + } + } + if (path2.isAbsolute(entry.path)) { + entry.absolute = normPath(path2.resolve(entry.path)); + } else { + entry.absolute = normPath(path2.resolve(this.cwd, entry.path)); + } + if (!this.preservePaths && entry.absolute.indexOf(this.cwd + "/") !== 0 && entry.absolute !== this.cwd) { + this.warn("TAR_ENTRY_ERROR", "path escaped extraction target", { + entry, + path: normPath(entry.path), + resolvedPath: entry.absolute, + cwd: this.cwd + }); + return false; + } + if (entry.absolute === this.cwd && entry.type !== "Directory" && entry.type !== "GNUDumpDir") { + return false; + } + if (this.win32) { + const { root: aRoot } = path2.win32.parse(entry.absolute); + entry.absolute = aRoot + wc.encode(entry.absolute.slice(aRoot.length)); + const { root: pRoot } = path2.win32.parse(entry.path); + entry.path = pRoot + wc.encode(entry.path.slice(pRoot.length)); + } + return true; } - const ctx = { - extraBinPaths, - hoistedDependencies: importersContext.hoistedDependencies, - hoistedModulesDir, - hoistPattern: (_e = importersContext.currentHoistPattern) !== null && _e !== void 0 ? _e : opts.hoistPattern, - include: (_f = opts.include) !== null && _f !== void 0 ? _f : importersContext.include, - lockfileDir: opts.lockfileDir, - modulesFile: importersContext.modules, - pendingBuilds: importersContext.pendingBuilds, - projects: importersContext.projects, - publicHoistPattern: (_g = importersContext.currentPublicHoistPattern) !== null && _g !== void 0 ? _g : opts.publicHoistPattern, - registries: { - ...opts.registries, - ...importersContext.registries - }, - rootModulesDir: importersContext.rootModulesDir, - skipped: importersContext.skipped, - storeDir: opts.storeDir, - virtualStoreDir, - ...await readLockfiles_1.default({ - force: opts.force, - forceSharedLockfile: opts.forceSharedLockfile, - frozenLockfile: opts.frozenLockfile === true, - lockfileDir: opts.lockfileDir, - projects: importersContext.projects, - registry: opts.registries.default, - useLockfile: opts.useLockfile, - virtualStoreDir - }) - }; - core_loggers_1.contextLogger.debug({ - currentLockfileExists: ctx.existsCurrentLockfile, - storeDir: opts.storeDir, - virtualStoreDir - }); - return ctx; - } - exports2.default = getContext; - async function validateModules(modules, projects, opts) { - const rootProject = projects.find(({ id }) => id === "."); - if (opts.forcePublicHoistPattern && !equals_1.default(modules.publicHoistPattern, opts.publicHoistPattern || void 0)) { - if (opts.forceNewModules && rootProject != null) { - await purgeModulesDirsOfImporter(opts.virtualStoreDir, rootProject); - return { purged: true }; + [ONENTRY](entry) { + if (!this[CHECKPATH](entry)) { + return entry.resume(); + } + assert.equal(typeof entry.absolute, "string"); + switch (entry.type) { + case "Directory": + case "GNUDumpDir": + if (entry.mode) { + entry.mode = entry.mode | 448; + } + case "File": + case "OldFile": + case "ContiguousFile": + case "Link": + case "SymbolicLink": + return this[CHECKFS](entry); + case "CharacterDevice": + case "BlockDevice": + case "FIFO": + default: + return this[UNSUPPORTED](entry); } - throw new error_1.default("PUBLIC_HOIST_PATTERN_DIFF", 'This modules directory was created using a different public-hoist-pattern value. Run "pnpm install" to recreate the modules directory.'); } - let purged = false; - if (opts.forceHoistPattern && rootProject != null) { - try { - if (!equals_1.default(opts.currentHoistPattern, opts.hoistPattern || void 0)) { - throw new error_1.default("HOIST_PATTERN_DIFF", 'This modules directory was created using a different hoist-pattern value. Run "pnpm install" to recreate the modules directory.'); + [ONERROR](er, entry) { + if (er.name === "CwdError") { + this.emit("error", er); + } else { + this.warn("TAR_ENTRY_ERROR", er, { entry }); + this[UNPEND](); + entry.resume(); + } + } + [MKDIR](dir, mode, cb) { + mkdir(normPath(dir), { + uid: this.uid, + gid: this.gid, + processUid: this.processUid, + processGid: this.processGid, + umask: this.processUmask, + preserve: this.preservePaths, + unlink: this.unlink, + cache: this.dirCache, + cwd: this.cwd, + mode, + noChmod: this.noChmod + }, cb); + } + [DOCHOWN](entry) { + return this.forceChown || this.preserveOwner && (typeof entry.uid === "number" && entry.uid !== this.processUid || typeof entry.gid === "number" && entry.gid !== this.processGid) || (typeof this.uid === "number" && this.uid !== this.processUid || typeof this.gid === "number" && this.gid !== this.processGid); + } + [UID](entry) { + return uint32(this.uid, entry.uid, this.processUid); + } + [GID](entry) { + return uint32(this.gid, entry.gid, this.processGid); + } + [FILE](entry, fullyDone) { + const mode = entry.mode & 4095 || this.fmode; + const stream = new fsm.WriteStream(entry.absolute, { + flags: getFlag(entry.size), + mode, + autoClose: false + }); + stream.on("error", (er) => { + if (stream.fd) { + fs2.close(stream.fd, () => { + }); } - } catch (err) { - if (!opts.forceNewModules) - throw err; - await purgeModulesDirsOfImporter(opts.virtualStoreDir, rootProject); - purged = true; + stream.write = () => true; + this[ONERROR](er, entry); + fullyDone(); + }); + let actions = 1; + const done = (er) => { + if (er) { + if (stream.fd) { + fs2.close(stream.fd, () => { + }); + } + this[ONERROR](er, entry); + fullyDone(); + return; + } + if (--actions === 0) { + fs2.close(stream.fd, (er2) => { + if (er2) { + this[ONERROR](er2, entry); + } else { + this[UNPEND](); + } + fullyDone(); + }); + } + }; + stream.on("finish", (_) => { + const abs = entry.absolute; + const fd = stream.fd; + if (entry.mtime && !this.noMtime) { + actions++; + const atime = entry.atime || /* @__PURE__ */ new Date(); + const mtime = entry.mtime; + fs2.futimes(fd, atime, mtime, (er) => er ? fs2.utimes(abs, atime, mtime, (er2) => done(er2 && er)) : done()); + } + if (this[DOCHOWN](entry)) { + actions++; + const uid = this[UID](entry); + const gid = this[GID](entry); + fs2.fchown(fd, uid, gid, (er) => er ? fs2.chown(abs, uid, gid, (er2) => done(er2 && er)) : done()); + } + done(); + }); + const tx = this.transform ? this.transform(entry) || entry : entry; + if (tx !== entry) { + tx.on("error", (er) => { + this[ONERROR](er, entry); + fullyDone(); + }); + entry.pipe(tx); } + tx.pipe(stream); } - await Promise.all(projects.map(async (project) => { - try { - checkCompatibility_1.default(modules, { - modulesDir: project.modulesDir, - storeDir: opts.storeDir, - virtualStoreDir: opts.virtualStoreDir + [DIRECTORY](entry, fullyDone) { + const mode = entry.mode & 4095 || this.dmode; + this[MKDIR](entry.absolute, mode, (er) => { + if (er) { + this[ONERROR](er, entry); + fullyDone(); + return; + } + let actions = 1; + const done = (_) => { + if (--actions === 0) { + fullyDone(); + this[UNPEND](); + entry.resume(); + } + }; + if (entry.mtime && !this.noMtime) { + actions++; + fs2.utimes(entry.absolute, entry.atime || /* @__PURE__ */ new Date(), entry.mtime, done); + } + if (this[DOCHOWN](entry)) { + actions++; + fs2.chown(entry.absolute, this[UID](entry), this[GID](entry), done); + } + done(); + }); + } + [UNSUPPORTED](entry) { + entry.unsupported = true; + this.warn( + "TAR_ENTRY_UNSUPPORTED", + `unsupported entry type: ${entry.type}`, + { entry } + ); + entry.resume(); + } + [SYMLINK](entry, done) { + this[LINK](entry, entry.linkpath, "symlink", done); + } + [HARDLINK](entry, done) { + const linkpath = normPath(path2.resolve(this.cwd, entry.linkpath)); + this[LINK](entry, linkpath, "link", done); + } + [PEND]() { + this[PENDING]++; + } + [UNPEND]() { + this[PENDING]--; + this[MAYBECLOSE](); + } + [SKIP](entry) { + this[UNPEND](); + entry.resume(); + } + // Check if we can reuse an existing filesystem entry safely and + // overwrite it, rather than unlinking and recreating + // Windows doesn't report a useful nlink, so we just never reuse entries + [ISREUSABLE](entry, st) { + return entry.type === "File" && !this.unlink && st.isFile() && st.nlink <= 1 && !isWindows; + } + // check if a thing is there, and if so, try to clobber it + [CHECKFS](entry) { + this[PEND](); + const paths = [entry.path]; + if (entry.linkpath) { + paths.push(entry.linkpath); + } + this.reservations.reserve(paths, (done) => this[CHECKFS2](entry, done)); + } + [PRUNECACHE](entry) { + if (entry.type === "SymbolicLink") { + dropCache(this.dirCache); + } else if (entry.type !== "Directory") { + pruneCache(this.dirCache, entry.absolute); + } + } + [CHECKFS2](entry, fullyDone) { + this[PRUNECACHE](entry); + const done = (er) => { + this[PRUNECACHE](entry); + fullyDone(er); + }; + const checkCwd = () => { + this[MKDIR](this.cwd, this.dmode, (er) => { + if (er) { + this[ONERROR](er, entry); + done(); + return; + } + this[CHECKED_CWD] = true; + start(); }); - if (opts.lockfileDir !== project.rootDir && opts.include != null && modules.included) { - for (const depsField of types_1.DEPENDENCIES_FIELDS) { - if (opts.include[depsField] !== modules.included[depsField]) { - throw new error_1.default("INCLUDED_DEPS_CONFLICT", `modules directory (at "${opts.lockfileDir}") was installed with ${stringifyIncludedDeps(modules.included)}. Current install wants ${stringifyIncludedDeps(opts.include)}.`); - } + }; + const start = () => { + if (entry.absolute !== this.cwd) { + const parent = normPath(path2.dirname(entry.absolute)); + if (parent !== this.cwd) { + return this[MKDIR](parent, this.dmode, (er) => { + if (er) { + this[ONERROR](er, entry); + done(); + return; + } + afterMakeParent(); + }); } } - } catch (err) { - if (!opts.forceNewModules) - throw err; - await purgeModulesDirsOfImporter(opts.virtualStoreDir, project); - purged = true; - } - })); - if (modules.registries != null && !equals_1.default(opts.registries, modules.registries)) { - if (opts.forceNewModules) { - await Promise.all(projects.map(purgeModulesDirsOfImporter.bind(null, opts.virtualStoreDir))); - return { purged: true }; + afterMakeParent(); + }; + const afterMakeParent = () => { + fs2.lstat(entry.absolute, (lstatEr, st) => { + if (st && (this.keep || this.newer && st.mtime > entry.mtime)) { + this[SKIP](entry); + done(); + return; + } + if (lstatEr || this[ISREUSABLE](entry, st)) { + return this[MAKEFS](null, entry, done); + } + if (st.isDirectory()) { + if (entry.type === "Directory") { + const needChmod = !this.noChmod && entry.mode && (st.mode & 4095) !== entry.mode; + const afterChmod = (er) => this[MAKEFS](er, entry, done); + if (!needChmod) { + return afterChmod(); + } + return fs2.chmod(entry.absolute, entry.mode, afterChmod); + } + if (entry.absolute !== this.cwd) { + return fs2.rmdir(entry.absolute, (er) => this[MAKEFS](er, entry, done)); + } + } + if (entry.absolute === this.cwd) { + return this[MAKEFS](null, entry, done); + } + unlinkFile(entry.absolute, (er) => this[MAKEFS](er, entry, done)); + }); + }; + if (this[CHECKED_CWD]) { + start(); + } else { + checkCwd(); } - throw new error_1.default("REGISTRIES_MISMATCH", `This modules directory was created using the following registries configuration: ${JSON.stringify(modules.registries)}. The current configuration is ${JSON.stringify(opts.registries)}. To recreate the modules directory using the new settings, run "pnpm install".`); } - if (purged && rootProject == null) { - await purgeModulesDirsOfImporter(opts.virtualStoreDir, { - modulesDir: path_1.default.join(opts.lockfileDir, opts.modulesDir), - rootDir: opts.lockfileDir + [MAKEFS](er, entry, done) { + if (er) { + this[ONERROR](er, entry); + done(); + return; + } + switch (entry.type) { + case "File": + case "OldFile": + case "ContiguousFile": + return this[FILE](entry, done); + case "Link": + return this[HARDLINK](entry, done); + case "SymbolicLink": + return this[SYMLINK](entry, done); + case "Directory": + case "GNUDumpDir": + return this[DIRECTORY](entry, done); + } + } + [LINK](entry, linkpath, link, done) { + fs2[link](linkpath, entry.absolute, (er) => { + if (er) { + this[ONERROR](er, entry); + } else { + this[UNPEND](); + entry.resume(); + } + done(); }); } - return { purged }; - } - async function purgeModulesDirsOfImporter(virtualStoreDir, importer) { - logger_1.default.info({ - message: `Recreating ${importer.modulesDir}`, - prefix: importer.rootDir - }); + }; + var callSync = (fn2) => { try { - await removeContentsOfDir(importer.modulesDir, virtualStoreDir); - } catch (err) { - if (err.code !== "ENOENT") - throw err; + return [null, fn2()]; + } catch (er) { + return [er, null]; } - } - async function removeContentsOfDir(dir, virtualStoreDir) { - const items = await fs_1.promises.readdir(dir); - for (const item of items) { - if (item.startsWith(".") && item !== ".bin" && item !== ".modules.yaml" && !dirsAreEqual(path_1.default.join(dir, item), virtualStoreDir)) { - continue; + }; + var UnpackSync = class extends Unpack { + [MAKEFS](er, entry) { + return super[MAKEFS](er, entry, () => { + }); + } + [CHECKFS](entry) { + this[PRUNECACHE](entry); + if (!this[CHECKED_CWD]) { + const er2 = this[MKDIR](this.cwd, this.dmode); + if (er2) { + return this[ONERROR](er2, entry); + } + this[CHECKED_CWD] = true; + } + if (entry.absolute !== this.cwd) { + const parent = normPath(path2.dirname(entry.absolute)); + if (parent !== this.cwd) { + const mkParent = this[MKDIR](parent, this.dmode); + if (mkParent) { + return this[ONERROR](mkParent, entry); + } + } + } + const [lstatEr, st] = callSync(() => fs2.lstatSync(entry.absolute)); + if (st && (this.keep || this.newer && st.mtime > entry.mtime)) { + return this[SKIP](entry); + } + if (lstatEr || this[ISREUSABLE](entry, st)) { + return this[MAKEFS](null, entry); } - await rimraf_1.default(path_1.default.join(dir, item)); + if (st.isDirectory()) { + if (entry.type === "Directory") { + const needChmod = !this.noChmod && entry.mode && (st.mode & 4095) !== entry.mode; + const [er3] = needChmod ? callSync(() => { + fs2.chmodSync(entry.absolute, entry.mode); + }) : []; + return this[MAKEFS](er3, entry); + } + const [er2] = callSync(() => fs2.rmdirSync(entry.absolute)); + this[MAKEFS](er2, entry); + } + const [er] = entry.absolute === this.cwd ? [] : callSync(() => unlinkFileSync(entry.absolute)); + this[MAKEFS](er, entry); } - } - function dirsAreEqual(dir1, dir2) { - return path_1.default.relative(dir1, dir2) === ""; - } - function stringifyIncludedDeps(included) { - return types_1.DEPENDENCIES_FIELDS.filter((depsField) => included[depsField]).join(", "); - } - async function getContextForSingleImporter(manifest, opts, alreadyPurged = false) { - var _a, _b, _c, _d, _e, _f, _g; - const { currentHoistPattern, currentPublicHoistPattern, hoistedDependencies, projects, include, modules, pendingBuilds, registries, skipped, rootModulesDir } = await read_projects_context_1.default([ - { - rootDir: opts.dir + [FILE](entry, done) { + const mode = entry.mode & 4095 || this.fmode; + const oner = (er) => { + let closeError; + try { + fs2.closeSync(fd); + } catch (e) { + closeError = e; + } + if (er || closeError) { + this[ONERROR](er || closeError, entry); + } + done(); + }; + let fd; + try { + fd = fs2.openSync(entry.absolute, getFlag(entry.size), mode); + } catch (er) { + return oner(er); } - ], { - lockfileDir: opts.lockfileDir, - modulesDir: opts.modulesDir - }); - const storeDir = opts.storeDir; - const importer = projects[0]; - const modulesDir = importer.modulesDir; - const importerId = importer.id; - const virtualStoreDir = path_absolute_1.default((_a = opts.virtualStoreDir) !== null && _a !== void 0 ? _a : "node_modules/.pnpm", opts.lockfileDir); - if (modules != null && !alreadyPurged) { - const { purged } = await validateModules(modules, projects, { - currentHoistPattern, - currentPublicHoistPattern, - forceNewModules: opts.forceNewModules === true, - include: opts.include, - lockfileDir: opts.lockfileDir, - modulesDir: (_b = opts.modulesDir) !== null && _b !== void 0 ? _b : "node_modules", - registries: opts.registries, - storeDir: opts.storeDir, - virtualStoreDir, - forceHoistPattern: opts.forceHoistPattern, - hoistPattern: opts.hoistPattern, - forcePublicHoistPattern: opts.forcePublicHoistPattern, - publicHoistPattern: opts.publicHoistPattern + const tx = this.transform ? this.transform(entry) || entry : entry; + if (tx !== entry) { + tx.on("error", (er) => this[ONERROR](er, entry)); + entry.pipe(tx); + } + tx.on("data", (chunk) => { + try { + fs2.writeSync(fd, chunk, 0, chunk.length); + } catch (er) { + oner(er); + } }); - if (purged) { - return getContextForSingleImporter(manifest, opts, true); + tx.on("end", (_) => { + let er = null; + if (entry.mtime && !this.noMtime) { + const atime = entry.atime || /* @__PURE__ */ new Date(); + const mtime = entry.mtime; + try { + fs2.futimesSync(fd, atime, mtime); + } catch (futimeser) { + try { + fs2.utimesSync(entry.absolute, atime, mtime); + } catch (utimeser) { + er = futimeser; + } + } + } + if (this[DOCHOWN](entry)) { + const uid = this[UID](entry); + const gid = this[GID](entry); + try { + fs2.fchownSync(fd, uid, gid); + } catch (fchowner) { + try { + fs2.chownSync(entry.absolute, uid, gid); + } catch (chowner) { + er = er || fchowner; + } + } + } + oner(er); + }); + } + [DIRECTORY](entry, done) { + const mode = entry.mode & 4095 || this.dmode; + const er = this[MKDIR](entry.absolute, mode); + if (er) { + this[ONERROR](er, entry); + done(); + return; + } + if (entry.mtime && !this.noMtime) { + try { + fs2.utimesSync(entry.absolute, entry.atime || /* @__PURE__ */ new Date(), entry.mtime); + } catch (er2) { + } + } + if (this[DOCHOWN](entry)) { + try { + fs2.chownSync(entry.absolute, this[UID](entry), this[GID](entry)); + } catch (er2) { + } } + done(); + entry.resume(); } - await fs_1.promises.mkdir(storeDir, { recursive: true }); - const extraBinPaths = [ - ...opts.extraBinPaths || [] - ]; - const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); - if ((_c = opts.hoistPattern) === null || _c === void 0 ? void 0 : _c.length) { - extraBinPaths.unshift(path_1.default.join(hoistedModulesDir, ".bin")); + [MKDIR](dir, mode) { + try { + return mkdir.sync(normPath(dir), { + uid: this.uid, + gid: this.gid, + processUid: this.processUid, + processGid: this.processGid, + umask: this.processUmask, + preserve: this.preservePaths, + unlink: this.unlink, + cache: this.dirCache, + cwd: this.cwd, + mode + }); + } catch (er) { + return er; + } } - const ctx = { - extraBinPaths, - hoistedDependencies, - hoistedModulesDir, - hoistPattern: currentHoistPattern !== null && currentHoistPattern !== void 0 ? currentHoistPattern : opts.hoistPattern, - importerId, - include: (_d = opts.include) !== null && _d !== void 0 ? _d : include, - lockfileDir: opts.lockfileDir, - manifest: (_g = (_f = (_e = opts.hooks) === null || _e === void 0 ? void 0 : _e.readPackage) === null || _f === void 0 ? void 0 : _f.call(_e, manifest)) !== null && _g !== void 0 ? _g : manifest, - modulesDir, - modulesFile: modules, - pendingBuilds, - prefix: opts.dir, - publicHoistPattern: currentPublicHoistPattern !== null && currentPublicHoistPattern !== void 0 ? currentPublicHoistPattern : opts.publicHoistPattern, - registries: { - ...opts.registries, - ...registries - }, - rootModulesDir, - skipped, - storeDir, - virtualStoreDir, - ...await readLockfiles_1.default({ - force: opts.force, - forceSharedLockfile: opts.forceSharedLockfile, - frozenLockfile: false, - lockfileDir: opts.lockfileDir, - projects: [{ id: importerId, rootDir: opts.dir }], - registry: opts.registries.default, - useLockfile: opts.useLockfile, - virtualStoreDir - }) - }; - core_loggers_1.packageManifestLogger.debug({ - initial: manifest, - prefix: opts.dir - }); - core_loggers_1.contextLogger.debug({ - currentLockfileExists: ctx.existsCurrentLockfile, - storeDir: opts.storeDir, - virtualStoreDir - }); - return ctx; - } - exports2.getContextForSingleImporter = getContextForSingleImporter; + [LINK](entry, linkpath, link, done) { + try { + fs2[link + "Sync"](linkpath, entry.absolute); + done(); + entry.resume(); + } catch (er) { + return this[ONERROR](er, entry); + } + } + }; + Unpack.Sync = UnpackSync; + module2.exports = Unpack; } }); -// ../package-bins/lib/index.js -var require_lib68 = __commonJS({ - "../package-bins/lib/index.js"(exports2) { +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/extract.js +var require_extract2 = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/lib/extract.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var fast_glob_1 = __importDefault(require_out4()); - var is_subdir_1 = __importDefault(require_is_subdir()); - async function binify(manifest, pkgPath) { - var _a; - if (manifest.bin) { - return commandsFromBin(manifest.bin, manifest.name, pkgPath); + var hlo = require_high_level_opt(); + var Unpack = require_unpack(); + var fs2 = require("fs"); + var fsm = require_fs_minipass(); + var path2 = require("path"); + var stripSlash = require_strip_trailing_slashes(); + module2.exports = (opt_, files, cb) => { + if (typeof opt_ === "function") { + cb = opt_, files = null, opt_ = {}; + } else if (Array.isArray(opt_)) { + files = opt_, opt_ = {}; } - if ((_a = manifest.directories) === null || _a === void 0 ? void 0 : _a.bin) { - const binDir = path_1.default.join(pkgPath, manifest.directories.bin); - const files = await findFiles(binDir); - return files.map((file) => ({ - name: path_1.default.basename(file), - path: path_1.default.join(binDir, file) - })); + if (typeof files === "function") { + cb = files, files = null; } - return []; - } - exports2.default = binify; - async function findFiles(dir) { - try { - return await fast_glob_1.default("**", { - cwd: dir, - onlyFiles: true, - followSymbolicLinks: false - }); - } catch (err) { - if (err.code !== "ENOENT") { - throw err; - } - return []; + if (!files) { + files = []; + } else { + files = Array.from(files); } - } - function commandsFromBin(bin, pkgName, pkgPath) { - if (typeof bin === "string") { - return [ - { - name: pkgName.startsWith("@") ? pkgName.substr(pkgName.indexOf("/") + 1) : pkgName, - path: path_1.default.join(pkgPath, bin) + const opt = hlo(opt_); + if (opt.sync && typeof cb === "function") { + throw new TypeError("callback not supported for sync tar functions"); + } + if (!opt.file && typeof cb === "function") { + throw new TypeError("callback only supported with file option"); + } + if (files.length) { + filesFilter(opt, files); + } + return opt.file && opt.sync ? extractFileSync(opt) : opt.file ? extractFile(opt, cb) : opt.sync ? extractSync(opt) : extract(opt); + }; + var filesFilter = (opt, files) => { + const map = new Map(files.map((f) => [stripSlash(f), true])); + const filter = opt.filter; + const mapHas = (file, r) => { + const root = r || path2.parse(file).root || "."; + const ret = file === root ? false : map.has(file) ? map.get(file) : mapHas(path2.dirname(file), root); + map.set(file, ret); + return ret; + }; + opt.filter = filter ? (file, entry) => filter(file, entry) && mapHas(stripSlash(file)) : (file) => mapHas(stripSlash(file)); + }; + var extractFileSync = (opt) => { + const u = new Unpack.Sync(opt); + const file = opt.file; + const stat = fs2.statSync(file); + const readSize = opt.maxReadSize || 16 * 1024 * 1024; + const stream = new fsm.ReadStreamSync(file, { + readSize, + size: stat.size + }); + stream.pipe(u); + }; + var extractFile = (opt, cb) => { + const u = new Unpack(opt); + const readSize = opt.maxReadSize || 16 * 1024 * 1024; + const file = opt.file; + const p = new Promise((resolve, reject) => { + u.on("error", reject); + u.on("close", resolve); + fs2.stat(file, (er, stat) => { + if (er) { + reject(er); + } else { + const stream = new fsm.ReadStream(file, { + readSize, + size: stat.size + }); + stream.on("error", reject); + stream.pipe(u); } - ]; + }); + }); + return cb ? p.then(cb, cb) : p; + }; + var extractSync = (opt) => new Unpack.Sync(opt); + var extract = (opt) => new Unpack(opt); + } +}); + +// ../node_modules/.pnpm/tar@6.1.14/node_modules/tar/index.js +var require_tar = __commonJS({ + "../node_modules/.pnpm/tar@6.1.14/node_modules/tar/index.js"(exports2) { + "use strict"; + exports2.c = exports2.create = require_create2(); + exports2.r = exports2.replace = require_replace(); + exports2.t = exports2.list = require_list2(); + exports2.u = exports2.update = require_update(); + exports2.x = exports2.extract = require_extract2(); + exports2.Pack = require_pack2(); + exports2.Unpack = require_unpack(); + exports2.Parse = require_parse8(); + exports2.ReadEntry = require_read_entry(); + exports2.WriteEntry = require_write_entry(); + exports2.Header = require_header(); + exports2.Pax = require_pax(); + exports2.types = require_types8(); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkerPool.js +var require_WorkerPool = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/WorkerPool.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.WorkerPool = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var p_limit_12 = tslib_12.__importDefault(require_p_limit2()); + var worker_threads_1 = require("worker_threads"); + var nodeUtils = tslib_12.__importStar(require_nodeUtils()); + var kTaskInfo = Symbol(`kTaskInfo`); + var WorkerPool = class { + constructor(source) { + this.source = source; + this.workers = []; + this.limit = (0, p_limit_12.default)(nodeUtils.availableParallelism()); + this.cleanupInterval = setInterval(() => { + if (this.limit.pendingCount === 0 && this.limit.activeCount === 0) { + const worker = this.workers.pop(); + if (worker) { + worker.terminate(); + } else { + clearInterval(this.cleanupInterval); + } + } + }, 5e3).unref(); } - return Object.keys(bin).filter((commandName) => encodeURIComponent(commandName) === commandName || commandName === "$").map((commandName) => ({ - name: commandName, - path: path_1.default.join(pkgPath, bin[commandName]) - })).filter((cmd) => is_subdir_1.default(pkgPath, cmd.path)); - } + createWorker() { + this.cleanupInterval.refresh(); + const worker = new worker_threads_1.Worker(this.source, { + eval: true, + execArgv: [...process.execArgv, `--unhandled-rejections=strict`] + }); + worker.on(`message`, (result2) => { + if (!worker[kTaskInfo]) + throw new Error(`Assertion failed: Worker sent a result without having a task assigned`); + worker[kTaskInfo].resolve(result2); + worker[kTaskInfo] = null; + worker.unref(); + this.workers.push(worker); + }); + worker.on(`error`, (err) => { + var _a; + (_a = worker[kTaskInfo]) === null || _a === void 0 ? void 0 : _a.reject(err); + worker[kTaskInfo] = null; + }); + worker.on(`exit`, (code) => { + var _a; + if (code !== 0) + (_a = worker[kTaskInfo]) === null || _a === void 0 ? void 0 : _a.reject(new Error(`Worker exited with code ${code}`)); + worker[kTaskInfo] = null; + }); + return worker; + } + run(data) { + return this.limit(() => { + var _a; + const worker = (_a = this.workers.pop()) !== null && _a !== void 0 ? _a : this.createWorker(); + worker.ref(); + return new Promise((resolve, reject) => { + worker[kTaskInfo] = { resolve, reject }; + worker.postMessage(data); + }); + }); + } + }; + exports2.WorkerPool = WorkerPool; } }); -// ../read-modules-dir/lib/index.js -var require_lib69 = __commonJS({ - "../read-modules-dir/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/worker-zip/index.js +var require_worker_zip = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/worker-zip/index.js"(exports2, module2) { + var hook; + module2.exports.getContent = () => { + if (typeof hook === `undefined`) + hook = require("zlib").brotliDecompressSync(Buffer.from("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", "base64")).toString(); + return hook; }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/tgzUtils.js +var require_tgzUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/tgzUtils.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var util_1 = __importDefault(require("util")); - var graceful_fs_1 = __importDefault(require_graceful_fs()); - var readdir = util_1.default.promisify(graceful_fs_1.default.readdir); - async function readModulesDir(modulesDir) { - try { - return await _readModulesDir(modulesDir); - } catch (err) { - if (err["code"] === "ENOENT") - return null; - throw err; + exports2.extractArchiveTo = exports2.convertToZip = exports2.makeArchiveFromDirectory = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var libzip_1 = require_sync9(); + var stream_12 = require("stream"); + var tar_1 = tslib_12.__importDefault(require_tar()); + var WorkerPool_1 = require_WorkerPool(); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var worker_zip_1 = require_worker_zip(); + async function makeArchiveFromDirectory(source, { baseFs = new fslib_12.NodeFS(), prefixPath = fslib_12.PortablePath.root, compressionLevel, inMemory = false } = {}) { + let zipFs; + if (inMemory) { + zipFs = new libzip_1.ZipFS(null, { level: compressionLevel }); + } else { + const tmpFolder = await fslib_12.xfs.mktempPromise(); + const tmpFile = fslib_12.ppath.join(tmpFolder, `archive.zip`); + zipFs = new libzip_1.ZipFS(tmpFile, { create: true, level: compressionLevel }); + } + const target = fslib_12.ppath.resolve(fslib_12.PortablePath.root, prefixPath); + await zipFs.copyPromise(target, source, { baseFs, stableTime: true, stableSort: true }); + return zipFs; + } + exports2.makeArchiveFromDirectory = makeArchiveFromDirectory; + var workerPool; + async function convertToZip(tgz, opts) { + const tmpFolder = await fslib_12.xfs.mktempPromise(); + const tmpFile = fslib_12.ppath.join(tmpFolder, `archive.zip`); + workerPool || (workerPool = new WorkerPool_1.WorkerPool((0, worker_zip_1.getContent)())); + await workerPool.run({ tmpFile, tgz, opts }); + return new libzip_1.ZipFS(tmpFile, { level: opts.compressionLevel }); + } + exports2.convertToZip = convertToZip; + async function* parseTar(tgz) { + const parser = new tar_1.default.Parse(); + const passthrough = new stream_12.PassThrough({ objectMode: true, autoDestroy: true, emitClose: true }); + parser.on(`entry`, (entry) => { + passthrough.write(entry); + }); + parser.on(`error`, (error) => { + passthrough.destroy(error); + }); + parser.on(`close`, () => { + if (!passthrough.destroyed) { + passthrough.end(); + } + }); + parser.end(tgz); + for await (const entry of passthrough) { + const it = entry; + yield it; + it.resume(); + } + } + async function extractArchiveTo(tgz, targetFs, { stripComponents = 0, prefixPath = fslib_12.PortablePath.dot } = {}) { + var _a; + function ignore(entry) { + if (entry.path[0] === `/`) + return true; + const parts = entry.path.split(/\//g); + if (parts.some((part) => part === `..`)) + return true; + if (parts.length <= stripComponents) + return true; + return false; } - } - exports2.default = readModulesDir; - async function _readModulesDir(modulesDir, scope) { - let pkgNames = []; - const parentDir = scope ? path_1.default.join(modulesDir, scope) : modulesDir; - for (const dir of await readdir(parentDir, { withFileTypes: true })) { - if (dir.isFile() || dir.name[0] === ".") + for await (const entry of parseTar(tgz)) { + if (ignore(entry)) continue; - if (!scope && dir.name[0] === "@") { - pkgNames = [ - ...pkgNames, - ...await _readModulesDir(modulesDir, dir.name) - ]; + const parts = fslib_12.ppath.normalize(fslib_12.npath.toPortablePath(entry.path)).replace(/\/$/, ``).split(/\//g); + if (parts.length <= stripComponents) continue; + const slicePath = parts.slice(stripComponents).join(`/`); + const mappedPath = fslib_12.ppath.join(prefixPath, slicePath); + let mode = 420; + if (entry.type === `Directory` || (((_a = entry.mode) !== null && _a !== void 0 ? _a : 0) & 73) !== 0) + mode |= 73; + switch (entry.type) { + case `Directory`: + { + targetFs.mkdirpSync(fslib_12.ppath.dirname(mappedPath), { chmod: 493, utimes: [fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME] }); + targetFs.mkdirSync(mappedPath, { mode }); + targetFs.utimesSync(mappedPath, fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME); + } + break; + case `OldFile`: + case `File`: + { + targetFs.mkdirpSync(fslib_12.ppath.dirname(mappedPath), { chmod: 493, utimes: [fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME] }); + targetFs.writeFileSync(mappedPath, await miscUtils.bufferStream(entry), { mode }); + targetFs.utimesSync(mappedPath, fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME); + } + break; + case `SymbolicLink`: + { + targetFs.mkdirpSync(fslib_12.ppath.dirname(mappedPath), { chmod: 493, utimes: [fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME] }); + targetFs.symlinkSync(entry.linkpath, mappedPath); + targetFs.lutimesSync(mappedPath, fslib_12.constants.SAFE_TIME, fslib_12.constants.SAFE_TIME); + } + break; } - const pkgName = scope ? `${scope}/${dir.name}` : dir.name; - pkgNames.push(pkgName); } - return pkgNames; + return targetFs; } + exports2.extractArchiveTo = extractArchiveTo; } }); -// ../../node_modules/.pnpm/p-settle@4.1.1/node_modules/p-settle/index.js -var require_p_settle = __commonJS({ - "../../node_modules/.pnpm/p-settle@4.1.1/node_modules/p-settle/index.js"(exports2, module2) { - "use strict"; - var pReflect = require_p_reflect(); - var pLimit = require_p_limit2(); - module2.exports = async (array, options = {}) => { - const { concurrency = Infinity } = options; - const limit = pLimit(concurrency); - return Promise.all(array.map((element) => { - if (element && typeof element.then === "function") { - return pReflect(element); +// ../node_modules/.pnpm/treeify@1.1.0/node_modules/treeify/treeify.js +var require_treeify = __commonJS({ + "../node_modules/.pnpm/treeify@1.1.0/node_modules/treeify/treeify.js"(exports2, module2) { + (function(root, factory) { + if (typeof exports2 === "object") { + module2.exports = factory(); + } else if (typeof define === "function" && define.amd) { + define(factory); + } else { + root.treeify = factory(); + } + })(exports2, function() { + function makePrefix(key, last) { + var str = last ? "\u2514" : "\u251C"; + if (key) { + str += "\u2500 "; + } else { + str += "\u2500\u2500\u2510"; } - if (typeof element === "function") { - return pReflect(limit(() => element())); + return str; + } + function filterKeys(obj, hideFunctions) { + var keys = []; + for (var branch in obj) { + if (!obj.hasOwnProperty(branch)) { + continue; + } + if (hideFunctions && typeof obj[branch] === "function") { + continue; + } + keys.push(branch); } - return pReflect(Promise.resolve(element)); - })); - }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_concat.js -var require_concat3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_concat.js"(exports2, module2) { - function _concat(set1, set2) { - set1 = set1 || []; - set2 = set2 || []; - var idx; - var len1 = set1.length; - var len2 = set2.length; - var result = []; - idx = 0; - while (idx < len1) { - result[result.length] = set1[idx]; - idx += 1; + return keys; } - idx = 0; - while (idx < len2) { - result[result.length] = set2[idx]; - idx += 1; + function growBranch(key, root, last, lastStates, showValues, hideFunctions, callback) { + var line = "", index = 0, lastKey, circular, lastStatesCopy = lastStates.slice(0); + if (lastStatesCopy.push([root, last]) && lastStates.length > 0) { + lastStates.forEach(function(lastState, idx) { + if (idx > 0) { + line += (lastState[1] ? " " : "\u2502") + " "; + } + if (!circular && lastState[0] === root) { + circular = true; + } + }); + line += makePrefix(key, last) + key; + showValues && (typeof root !== "object" || root instanceof Date) && (line += ": " + root); + circular && (line += " (circular ref.)"); + callback(line); + } + if (!circular && typeof root === "object") { + var keys = filterKeys(root, hideFunctions); + keys.forEach(function(branch) { + lastKey = ++index === keys.length; + growBranch(branch, root[branch], lastKey, lastStatesCopy, showValues, hideFunctions, callback); + }); + } } - return result; - } - module2.exports = _concat; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_pipe.js -var require_pipe2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_pipe.js"(exports2, module2) { - function _pipe(f, g) { - return function() { - return g.call(this, f.apply(this, arguments)); + ; + var Treeify = {}; + Treeify.asLines = function(obj, showValues, hideFunctions, lineCallback) { + var hideFunctionsArg = typeof hideFunctions !== "function" ? hideFunctions : false; + growBranch(".", obj, false, [], showValues, hideFunctionsArg, lineCallback || hideFunctions); + }; + Treeify.asTree = function(obj, showValues, hideFunctions) { + var tree = ""; + growBranch(".", obj, false, [], showValues, hideFunctions, function(line) { + tree += line + "\n"; + }); + return tree; }; - } - module2.exports = _pipe; + return Treeify; + }); } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_checkForMethod.js -var require_checkForMethod = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_checkForMethod.js"(exports2, module2) { - var _isArray = require_isArray(); - function _checkForMethod(methodname, fn2) { - return function() { - var length = arguments.length; - if (length === 0) { - return fn2(); +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/treeUtils.js +var require_treeUtils = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/treeUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.emitTree = exports2.emitList = exports2.treeNodeToJson = exports2.treeNodeToTreeify = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var treeify_1 = require_treeify(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + function treeNodeToTreeify(printTree, { configuration }) { + const target = {}; + const copyTree = (printNode, targetNode) => { + const iterator = Array.isArray(printNode) ? printNode.entries() : Object.entries(printNode); + for (const [key, { label, value, children }] of iterator) { + const finalParts = []; + if (typeof label !== `undefined`) + finalParts.push(formatUtils.applyStyle(configuration, label, formatUtils.Style.BOLD)); + if (typeof value !== `undefined`) + finalParts.push(formatUtils.pretty(configuration, value[0], value[1])); + if (finalParts.length === 0) + finalParts.push(formatUtils.applyStyle(configuration, `${key}`, formatUtils.Style.BOLD)); + const finalLabel = finalParts.join(`: `); + const createdNode = targetNode[finalLabel] = {}; + if (typeof children !== `undefined`) { + copyTree(children, createdNode); + } } - var obj = arguments[length - 1]; - return _isArray(obj) || typeof obj[methodname] !== "function" ? fn2.apply(this, arguments) : obj[methodname].apply(obj, Array.prototype.slice.call(arguments, 0, length - 1)); }; + if (typeof printTree.children === `undefined`) + throw new Error(`The root node must only contain children`); + copyTree(printTree.children, target); + return target; } - module2.exports = _checkForMethod; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/slice.js -var require_slice = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/slice.js"(exports2, module2) { - var _checkForMethod = require_checkForMethod(); - var _curry3 = require_curry3(); - var slice = /* @__PURE__ */ _curry3(/* @__PURE__ */ _checkForMethod("slice", function slice2(fromIndex, toIndex, list) { - return Array.prototype.slice.call(list, fromIndex, toIndex); - })); - module2.exports = slice; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/tail.js -var require_tail = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/tail.js"(exports2, module2) { - var _checkForMethod = require_checkForMethod(); - var _curry1 = require_curry1(); - var slice = require_slice(); - var tail = /* @__PURE__ */ _curry1(/* @__PURE__ */ _checkForMethod("tail", /* @__PURE__ */ slice(1, Infinity))); - module2.exports = tail; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pipe.js -var require_pipe3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pipe.js"(exports2, module2) { - var _arity = require_arity(); - var _pipe = require_pipe2(); - var reduce = require_reduce3(); - var tail = require_tail(); - function pipe() { - if (arguments.length === 0) { - throw new Error("pipe requires at least one argument"); - } - return _arity(arguments[0].length, reduce(_pipe, arguments[0], tail(arguments))); + exports2.treeNodeToTreeify = treeNodeToTreeify; + function treeNodeToJson(printTree) { + const copyTree = (printNode) => { + var _a; + if (typeof printNode.children === `undefined`) { + if (typeof printNode.value === `undefined`) + throw new Error(`Assertion failed: Expected a value to be set if the children are missing`); + return formatUtils.json(printNode.value[0], printNode.value[1]); + } + const iterator = Array.isArray(printNode.children) ? printNode.children.entries() : Object.entries((_a = printNode.children) !== null && _a !== void 0 ? _a : {}); + const targetChildren = Array.isArray(printNode.children) ? [] : {}; + for (const [key, child] of iterator) + targetChildren[key] = copyTree(child); + if (typeof printNode.value === `undefined`) + return targetChildren; + return { + value: formatUtils.json(printNode.value[0], printNode.value[1]), + children: targetChildren + }; + }; + return copyTree(printTree); } - module2.exports = pipe; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reverse.js -var require_reverse = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/reverse.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _isString = require_isString(); - var reverse = /* @__PURE__ */ _curry1(function reverse2(list) { - return _isString(list) ? list.split("").reverse().join("") : Array.prototype.slice.call(list, 0).reverse(); - }); - module2.exports = reverse; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/compose.js -var require_compose = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/compose.js"(exports2, module2) { - var pipe = require_pipe3(); - var reverse = require_reverse(); - function compose() { - if (arguments.length === 0) { - throw new Error("compose requires at least one argument"); + exports2.treeNodeToJson = treeNodeToJson; + function emitList(values, { configuration, stdout, json }) { + const children = values.map((value) => ({ value })); + emitTree({ children }, { configuration, stdout, json }); + } + exports2.emitList = emitList; + function emitTree(tree, { configuration, stdout, json, separators = 0 }) { + var _a; + if (json) { + const iterator = Array.isArray(tree.children) ? tree.children.values() : Object.values((_a = tree.children) !== null && _a !== void 0 ? _a : {}); + for (const child of iterator) + stdout.write(`${JSON.stringify(treeNodeToJson(child))} +`); + return; } - return pipe.apply(this, reverse(arguments)); + let treeOutput = (0, treeify_1.asTree)(treeNodeToTreeify(tree, { configuration }), false, false); + if (separators >= 1) + treeOutput = treeOutput.replace(/^([├└]─)/gm, `\u2502 +$1`).replace(/^│\n/, ``); + if (separators >= 2) + for (let t = 0; t < 2; ++t) + treeOutput = treeOutput.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm, `$1$3 \u2502 +$2`).replace(/^│\n/, ``); + if (separators >= 3) + throw new Error(`Only the first two levels are accepted by treeUtils.emitTree`); + stdout.write(treeOutput); + } + exports2.emitTree = emitTree; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Cache.js +var require_Cache = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Cache.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Cache = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var fslib_2 = require_lib50(); + var libzip_1 = require_sync9(); + var crypto_1 = require("crypto"); + var fs_1 = tslib_12.__importDefault(require("fs")); + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var CACHE_VERSION = 9; + var Cache = class { + static async find(configuration, { immutable, check } = {}) { + const cache = new Cache(configuration.get(`cacheFolder`), { configuration, immutable, check }); + await cache.setup(); + return cache; + } + constructor(cacheCwd, { configuration, immutable = configuration.get(`enableImmutableCache`), check = false }) { + this.markedFiles = /* @__PURE__ */ new Set(); + this.mutexes = /* @__PURE__ */ new Map(); + this.cacheId = `-${(0, crypto_1.randomBytes)(8).toString(`hex`)}.tmp`; + this.configuration = configuration; + this.cwd = cacheCwd; + this.immutable = immutable; + this.check = check; + const cacheKeyOverride = configuration.get(`cacheKeyOverride`); + if (cacheKeyOverride !== null) { + this.cacheKey = `${cacheKeyOverride}`; + } else { + const compressionLevel = configuration.get(`compressionLevel`); + const compressionKey = compressionLevel !== libzip_1.DEFAULT_COMPRESSION_LEVEL ? `c${compressionLevel}` : ``; + this.cacheKey = [ + CACHE_VERSION, + compressionKey + ].join(``); + } + } + get mirrorCwd() { + if (!this.configuration.get(`enableMirror`)) + return null; + const mirrorCwd = `${this.configuration.get(`globalFolder`)}/cache`; + return mirrorCwd !== this.cwd ? mirrorCwd : null; + } + getVersionFilename(locator) { + return `${structUtils.slugifyLocator(locator)}-${this.cacheKey}.zip`; + } + getChecksumFilename(locator, checksum) { + const contentChecksum = getHashComponent(checksum); + const significantChecksum = contentChecksum.slice(0, 10); + return `${structUtils.slugifyLocator(locator)}-${significantChecksum}.zip`; + } + getLocatorPath(locator, expectedChecksum, opts = {}) { + var _a; + if (this.mirrorCwd === null || ((_a = opts.unstablePackages) === null || _a === void 0 ? void 0 : _a.has(locator.locatorHash))) + return fslib_2.ppath.resolve(this.cwd, this.getVersionFilename(locator)); + if (expectedChecksum === null) + return null; + const cacheKey = getCacheKeyComponent(expectedChecksum); + if (cacheKey !== this.cacheKey) + return null; + return fslib_2.ppath.resolve(this.cwd, this.getChecksumFilename(locator, expectedChecksum)); + } + getLocatorMirrorPath(locator) { + const mirrorCwd = this.mirrorCwd; + return mirrorCwd !== null ? fslib_2.ppath.resolve(mirrorCwd, this.getVersionFilename(locator)) : null; + } + async setup() { + if (!this.configuration.get(`enableGlobalCache`)) { + if (this.immutable) { + if (!await fslib_2.xfs.existsPromise(this.cwd)) { + throw new Report_1.ReportError(MessageName_1.MessageName.IMMUTABLE_CACHE, `Cache path does not exist.`); + } + } else { + await fslib_2.xfs.mkdirPromise(this.cwd, { recursive: true }); + const gitignorePath = fslib_2.ppath.resolve(this.cwd, `.gitignore`); + await fslib_2.xfs.changeFilePromise(gitignorePath, `/.gitignore +*.flock +*.tmp +`); + } + } + if (this.mirrorCwd || !this.immutable) { + await fslib_2.xfs.mkdirPromise(this.mirrorCwd || this.cwd, { recursive: true }); + } + } + async fetchPackageFromCache(locator, expectedChecksum, { onHit, onMiss, loader, ...opts }) { + var _a; + const mirrorPath = this.getLocatorMirrorPath(locator); + const baseFs = new fslib_12.NodeFS(); + const makeMockPackage = () => { + const zipFs2 = new libzip_1.ZipFS(); + const rootPackageDir = fslib_2.ppath.join(fslib_12.PortablePath.root, structUtils.getIdentVendorPath(locator)); + zipFs2.mkdirSync(rootPackageDir, { recursive: true }); + zipFs2.writeJsonSync(fslib_2.ppath.join(rootPackageDir, fslib_12.Filename.manifest), { + name: structUtils.stringifyIdent(locator), + mocked: true + }); + return zipFs2; + }; + const validateFile = async (path2, refetchPath = null) => { + var _a2; + if (refetchPath === null && ((_a2 = opts.unstablePackages) === null || _a2 === void 0 ? void 0 : _a2.has(locator.locatorHash))) + return { isValid: true, hash: null }; + const actualChecksum = !opts.skipIntegrityCheck || !expectedChecksum ? `${this.cacheKey}/${await hashUtils.checksumFile(path2)}` : expectedChecksum; + if (refetchPath !== null) { + const previousChecksum = !opts.skipIntegrityCheck || !expectedChecksum ? `${this.cacheKey}/${await hashUtils.checksumFile(refetchPath)}` : expectedChecksum; + if (actualChecksum !== previousChecksum) { + throw new Report_1.ReportError(MessageName_1.MessageName.CACHE_CHECKSUM_MISMATCH, `The remote archive doesn't match the local checksum - has the local cache been corrupted?`); + } + } + if (expectedChecksum !== null && actualChecksum !== expectedChecksum) { + let checksumBehavior; + if (this.check) + checksumBehavior = `throw`; + else if (getCacheKeyComponent(expectedChecksum) !== getCacheKeyComponent(actualChecksum)) + checksumBehavior = `update`; + else + checksumBehavior = this.configuration.get(`checksumBehavior`); + switch (checksumBehavior) { + case `ignore`: + return { isValid: true, hash: expectedChecksum }; + case `update`: + return { isValid: true, hash: actualChecksum }; + case `reset`: + return { isValid: false, hash: expectedChecksum }; + default: + case `throw`: { + throw new Report_1.ReportError(MessageName_1.MessageName.CACHE_CHECKSUM_MISMATCH, `The remote archive doesn't match the expected checksum`); + } + } + } + return { isValid: true, hash: actualChecksum }; + }; + const validateFileAgainstRemote = async (cachePath2) => { + if (!loader) + throw new Error(`Cache check required but no loader configured for ${structUtils.prettyLocator(this.configuration, locator)}`); + const zipFs2 = await loader(); + const refetchPath = zipFs2.getRealPath(); + zipFs2.saveAndClose(); + await fslib_2.xfs.chmodPromise(refetchPath, 420); + const result2 = await validateFile(cachePath2, refetchPath); + if (!result2.isValid) + throw new Error(`Assertion failed: Expected a valid checksum`); + return result2.hash; + }; + const loadPackageThroughMirror = async () => { + if (mirrorPath === null || !await fslib_2.xfs.existsPromise(mirrorPath)) { + const zipFs2 = await loader(); + const realPath = zipFs2.getRealPath(); + zipFs2.saveAndClose(); + return { source: `loader`, path: realPath }; + } + return { source: `mirror`, path: mirrorPath }; + }; + const loadPackage = async () => { + if (!loader) + throw new Error(`Cache entry required but missing for ${structUtils.prettyLocator(this.configuration, locator)}`); + if (this.immutable) + throw new Report_1.ReportError(MessageName_1.MessageName.IMMUTABLE_CACHE, `Cache entry required but missing for ${structUtils.prettyLocator(this.configuration, locator)}`); + const { path: packagePath, source: packageSource } = await loadPackageThroughMirror(); + const checksum2 = (await validateFile(packagePath)).hash; + const cachePath2 = this.getLocatorPath(locator, checksum2, opts); + if (!cachePath2) + throw new Error(`Assertion failed: Expected the cache path to be available`); + const copyProcess = []; + if (packageSource !== `mirror` && mirrorPath !== null) { + copyProcess.push(async () => { + const mirrorPathTemp = `${mirrorPath}${this.cacheId}`; + await fslib_2.xfs.copyFilePromise(packagePath, mirrorPathTemp, fs_1.default.constants.COPYFILE_FICLONE); + await fslib_2.xfs.chmodPromise(mirrorPathTemp, 420); + await fslib_2.xfs.renamePromise(mirrorPathTemp, mirrorPath); + }); + } + if (!opts.mirrorWriteOnly || mirrorPath === null) { + copyProcess.push(async () => { + const cachePathTemp = `${cachePath2}${this.cacheId}`; + await fslib_2.xfs.copyFilePromise(packagePath, cachePathTemp, fs_1.default.constants.COPYFILE_FICLONE); + await fslib_2.xfs.chmodPromise(cachePathTemp, 420); + await fslib_2.xfs.renamePromise(cachePathTemp, cachePath2); + }); + } + const finalPath = opts.mirrorWriteOnly ? mirrorPath !== null && mirrorPath !== void 0 ? mirrorPath : cachePath2 : cachePath2; + await Promise.all(copyProcess.map((copy) => copy())); + return [false, finalPath, checksum2]; + }; + const loadPackageThroughMutex = async () => { + const mutexedLoad = async () => { + var _a2; + const tentativeCachePath = this.getLocatorPath(locator, expectedChecksum, opts); + const cacheFileExists = tentativeCachePath !== null ? this.markedFiles.has(tentativeCachePath) || await baseFs.existsPromise(tentativeCachePath) : false; + const shouldMock2 = !!((_a2 = opts.mockedPackages) === null || _a2 === void 0 ? void 0 : _a2.has(locator.locatorHash)) && (!this.check || !cacheFileExists); + const isCacheHit = shouldMock2 || cacheFileExists; + const action = isCacheHit ? onHit : onMiss; + if (action) + action(); + if (!isCacheHit) { + return loadPackage(); + } else { + let checksum2 = null; + const cachePath2 = tentativeCachePath; + if (!shouldMock2) { + if (this.check) { + checksum2 = await validateFileAgainstRemote(cachePath2); + } else { + const maybeChecksum = await validateFile(cachePath2); + if (maybeChecksum.isValid) { + checksum2 = maybeChecksum.hash; + } else { + return loadPackage(); + } + } + } + return [shouldMock2, cachePath2, checksum2]; + } + }; + const mutex = mutexedLoad(); + this.mutexes.set(locator.locatorHash, mutex); + try { + return await mutex; + } finally { + this.mutexes.delete(locator.locatorHash); + } + }; + for (let mutex; mutex = this.mutexes.get(locator.locatorHash); ) + await mutex; + const [shouldMock, cachePath, checksum] = await loadPackageThroughMutex(); + if (!shouldMock) + this.markedFiles.add(cachePath); + let zipFs; + const zipFsBuilder = shouldMock ? () => makeMockPackage() : () => new libzip_1.ZipFS(cachePath, { baseFs, readOnly: true }); + const lazyFs = new fslib_12.LazyFS(() => miscUtils.prettifySyncErrors(() => { + return zipFs = zipFsBuilder(); + }, (message2) => { + return `Failed to open the cache entry for ${structUtils.prettyLocator(this.configuration, locator)}: ${message2}`; + }), fslib_2.ppath); + const aliasFs = new fslib_12.AliasFS(cachePath, { baseFs: lazyFs, pathUtils: fslib_2.ppath }); + const releaseFs = () => { + zipFs === null || zipFs === void 0 ? void 0 : zipFs.discardAndClose(); + }; + const exposedChecksum = !((_a = opts.unstablePackages) === null || _a === void 0 ? void 0 : _a.has(locator.locatorHash)) ? checksum : null; + return [aliasFs, releaseFs, exposedChecksum]; + } + }; + exports2.Cache = Cache; + function getCacheKeyComponent(checksum) { + const split = checksum.indexOf(`/`); + return split !== -1 ? checksum.slice(0, split) : null; } - module2.exports = compose; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_identity.js -var require_identity3 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_identity.js"(exports2, module2) { - function _identity(x) { - return x; + function getHashComponent(checksum) { + const split = checksum.indexOf(`/`); + return split !== -1 ? checksum.slice(split + 1) : checksum; } - module2.exports = _identity; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/identity.js -var require_identity4 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/identity.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _identity = require_identity3(); - var identity = /* @__PURE__ */ _curry1(_identity); - module2.exports = identity; +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Installer.js +var require_Installer = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Installer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BuildType = void 0; + var BuildType; + (function(BuildType2) { + BuildType2[BuildType2["SCRIPT"] = 0] = "SCRIPT"; + BuildType2[BuildType2["SHELLCODE"] = 1] = "SHELLCODE"; + })(BuildType || (exports2.BuildType = BuildType = {})); } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/uniqBy.js -var require_uniqBy = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/uniqBy.js"(exports2, module2) { - var _Set = require_Set(); - var _curry2 = require_curry2(); - var uniqBy = /* @__PURE__ */ _curry2(function uniqBy2(fn2, list) { - var set = new _Set(); - var result = []; - var idx = 0; - var appliedItem, item; - while (idx < list.length) { - item = list[idx]; - appliedItem = fn2(item); - if (set.add(appliedItem)) { - result.push(item); +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LegacyMigrationResolver.js +var require_LegacyMigrationResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LegacyMigrationResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LegacyMigrationResolver = exports2.IMPORTED_PATTERNS = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var parsers_1 = require_lib122(); + var MessageName_1 = require_MessageName(); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + exports2.IMPORTED_PATTERNS = [ + // These ones come from Git urls + [/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/, (version2, $0, $1, $2) => `${$1}#commit=${$2}`], + // These ones come from the GitHub HTTP endpoints + [/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/, (version2, $0, $1 = ``, $2, $3) => `https://${$1}github.com/${$2}.git#commit=${$3}`], + [/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/, (version2, $0, $1 = ``, $2, $3) => `https://${$1}github.com/${$2}.git#commit=${$3}`], + // These ones come from the npm registry + // Note: /download/ is used by custom registries like Taobao + [/^https?:\/\/[^/]+\/(?:[^/]+\/)*(?:@.+(?:\/|(?:%2f)))?([^/]+)\/(?:-|download)\/\1-[^/]+\.tgz(?:#|$)/, (version2) => `npm:${version2}`], + // The GitHub package registry uses a different style of URLs + [/^https:\/\/npm\.pkg\.github\.com\/download\/(?:@[^/]+)\/(?:[^/]+)\/(?:[^/]+)\/(?:[0-9a-f]+)(?:#|$)/, (version2) => `npm:${version2}`], + // FontAwesome too; what is it with these registries that made them think using a different url pattern was a good idea? + [/^https:\/\/npm\.fontawesome\.com\/(?:@[^/]+)\/([^/]+)\/-\/([^/]+)\/\1-\2.tgz(?:#|$)/, (version2) => `npm:${version2}`], + // JFrog, or Artifactory deployments at arbitrary domain names + [/^https?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/, (version2, $0) => structUtils.makeRange({ protocol: `npm:`, source: null, selector: version2, params: { __archiveUrl: $0 } })], + // These ones come from the old Yarn offline mirror - we assume they came from npm + [/^[^/]+\.tgz#[0-9a-f]+$/, (version2) => `npm:${version2}`] + ]; + var LegacyMigrationResolver = class { + constructor(resolver) { + this.resolver = resolver; + this.resolutions = null; + } + async setup(project, { report }) { + const lockfilePath = fslib_12.ppath.join(project.cwd, project.configuration.get(`lockfileFilename`)); + if (!fslib_12.xfs.existsSync(lockfilePath)) + return; + const content = await fslib_12.xfs.readFilePromise(lockfilePath, `utf8`); + const parsed = (0, parsers_1.parseSyml)(content); + if (Object.prototype.hasOwnProperty.call(parsed, `__metadata`)) + return; + const resolutions = this.resolutions = /* @__PURE__ */ new Map(); + for (const key of Object.keys(parsed)) { + const parsedDescriptor = structUtils.tryParseDescriptor(key); + if (!parsedDescriptor) { + report.reportWarning(MessageName_1.MessageName.YARN_IMPORT_FAILED, `Failed to parse the string "${key}" into a proper descriptor`); + continue; + } + const descriptor = semverUtils.validRange(parsedDescriptor.range) ? structUtils.makeDescriptor(parsedDescriptor, `npm:${parsedDescriptor.range}`) : parsedDescriptor; + const { version: version2, resolved } = parsed[key]; + if (!resolved) + continue; + let reference; + for (const [pattern, matcher] of exports2.IMPORTED_PATTERNS) { + const match = resolved.match(pattern); + if (match) { + reference = matcher(version2, ...match); + break; + } + } + if (!reference) { + report.reportWarning(MessageName_1.MessageName.YARN_IMPORT_FAILED, `${structUtils.prettyDescriptor(project.configuration, descriptor)}: Only some patterns can be imported from legacy lockfiles (not "${resolved}")`); + continue; + } + let actualDescriptor = descriptor; + try { + const parsedRange = structUtils.parseRange(descriptor.range); + const potentialDescriptor = structUtils.tryParseDescriptor(parsedRange.selector, true); + if (potentialDescriptor) { + actualDescriptor = potentialDescriptor; + } + } catch { + } + resolutions.set(descriptor.descriptorHash, structUtils.makeLocator(actualDescriptor, reference)); } - idx += 1; } - return result; - }); - module2.exports = uniqBy; + supportsDescriptor(descriptor, opts) { + if (!this.resolutions) + return false; + return this.resolutions.has(descriptor.descriptorHash); + } + supportsLocator(locator, opts) { + return false; + } + shouldPersistResolution(locator, opts) { + throw new Error(`Assertion failed: This resolver doesn't support resolving locators to packages`); + } + bindDescriptor(descriptor, fromLocator, opts) { + return descriptor; + } + getResolutionDependencies(descriptor, opts) { + return {}; + } + async getCandidates(descriptor, dependencies, opts) { + if (!this.resolutions) + throw new Error(`Assertion failed: The resolution store should have been setup`); + const resolution = this.resolutions.get(descriptor.descriptorHash); + if (!resolution) + throw new Error(`Assertion failed: The resolution should have been registered`); + const importedDescriptor = structUtils.convertLocatorToDescriptor(resolution); + const normalizedDescriptor = opts.project.configuration.normalizeDependency(importedDescriptor); + return await this.resolver.getCandidates(normalizedDescriptor, dependencies, opts); + } + async getSatisfying(descriptor, dependencies, locators, opts) { + const [locator] = await this.getCandidates(descriptor, dependencies, opts); + return { + locators: locators.filter((candidate) => candidate.locatorHash === locator.locatorHash), + sorted: false + }; + } + async resolve(locator, opts) { + throw new Error(`Assertion failed: This resolver doesn't support resolving locators to packages`); + } + }; + exports2.LegacyMigrationResolver = LegacyMigrationResolver; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/uniq.js -var require_uniq = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/uniq.js"(exports2, module2) { - var identity = require_identity4(); - var uniqBy = require_uniqBy(); - var uniq = /* @__PURE__ */ uniqBy(identity); - module2.exports = uniq; +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LightReport.js +var require_LightReport = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LightReport.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LightReport = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var Report_1 = require_Report(); + var StreamReport_1 = require_StreamReport(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var LightReport = class extends Report_1.Report { + static async start(opts, cb) { + const report = new this(opts); + try { + await cb(report); + } catch (error) { + report.reportExceptionOnce(error); + } finally { + await report.finalize(); + } + return report; + } + constructor({ configuration, stdout, suggestInstall = true }) { + super(); + this.errorCount = 0; + formatUtils.addLogFilterSupport(this, { configuration }); + this.configuration = configuration; + this.stdout = stdout; + this.suggestInstall = suggestInstall; + } + hasErrors() { + return this.errorCount > 0; + } + exitCode() { + return this.hasErrors() ? 1 : 0; + } + reportCacheHit(locator) { + } + reportCacheMiss(locator) { + } + startSectionSync(opts, cb) { + return cb(); + } + async startSectionPromise(opts, cb) { + return await cb(); + } + startTimerSync(what, opts, cb) { + const realCb = typeof opts === `function` ? opts : cb; + return realCb(); + } + async startTimerPromise(what, opts, cb) { + const realCb = typeof opts === `function` ? opts : cb; + return await realCb(); + } + async startCacheReport(cb) { + return await cb(); + } + reportSeparator() { + } + reportInfo(name, text) { + } + reportWarning(name, text) { + } + reportError(name, text) { + this.errorCount += 1; + this.stdout.write(`${formatUtils.pretty(this.configuration, `\u27A4`, `redBright`)} ${this.formatNameWithHyperlink(name)}: ${text} +`); + } + reportProgress(progress) { + const promise = Promise.resolve().then(async () => { + for await (const {} of progress) { + } + }); + const stop = () => { + }; + return { ...promise, stop }; + } + reportJson(data) { + } + async finalize() { + if (this.errorCount > 0) { + this.stdout.write(` +`); + this.stdout.write(`${formatUtils.pretty(this.configuration, `\u27A4`, `redBright`)} Errors happened when preparing the environment required to run this command. +`); + if (this.suggestInstall) { + this.stdout.write(`${formatUtils.pretty(this.configuration, `\u27A4`, `redBright`)} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`); + } + } + } + formatNameWithHyperlink(name) { + return (0, StreamReport_1.formatNameWithHyperlink)(name, { + configuration: this.configuration, + json: false + }); + } + }; + exports2.LightReport = LightReport; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/union.js -var require_union = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/union.js"(exports2, module2) { - var _concat = require_concat3(); - var _curry2 = require_curry2(); - var compose = require_compose(); - var uniq = require_uniq(); - var union = /* @__PURE__ */ _curry2(/* @__PURE__ */ compose(uniq, _concat)); - module2.exports = union; +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LockfileResolver.js +var require_LockfileResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/LockfileResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LockfileResolver = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var structUtils = tslib_12.__importStar(require_structUtils()); + var LockfileResolver = class { + constructor(resolver) { + this.resolver = resolver; + } + supportsDescriptor(descriptor, opts) { + const resolution = opts.project.storedResolutions.get(descriptor.descriptorHash); + if (resolution) + return true; + if (opts.project.originalPackages.has(structUtils.convertDescriptorToLocator(descriptor).locatorHash)) + return true; + return false; + } + supportsLocator(locator, opts) { + if (opts.project.originalPackages.has(locator.locatorHash) && !opts.project.lockfileNeedsRefresh) + return true; + return false; + } + shouldPersistResolution(locator, opts) { + throw new Error(`The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes`); + } + bindDescriptor(descriptor, fromLocator, opts) { + return descriptor; + } + getResolutionDependencies(descriptor, opts) { + return this.resolver.getResolutionDependencies(descriptor, opts); + } + async getCandidates(descriptor, dependencies, opts) { + const resolution = opts.project.storedResolutions.get(descriptor.descriptorHash); + if (resolution) { + const resolvedPkg = opts.project.originalPackages.get(resolution); + if (resolvedPkg) { + return [resolvedPkg]; + } + } + const originalPkg = opts.project.originalPackages.get(structUtils.convertDescriptorToLocator(descriptor).locatorHash); + if (originalPkg) + return [originalPkg]; + throw new Error(`Resolution expected from the lockfile data`); + } + async getSatisfying(descriptor, dependencies, locators, opts) { + const [locator] = await this.getCandidates(descriptor, dependencies, opts); + return { + locators: locators.filter((candidate) => candidate.locatorHash === locator.locatorHash), + sorted: false + }; + } + async resolve(locator, opts) { + const pkg = opts.project.originalPackages.get(locator.locatorHash); + if (!pkg) + throw new Error(`The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache`); + return pkg; + } + }; + exports2.LockfileResolver = LockfileResolver; } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_makeFlat.js -var require_makeFlat = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_makeFlat.js"(exports2, module2) { - var _isArrayLike = require_isArrayLike2(); - function _makeFlat(recursive) { - return function flatt(list) { - var value, jlen, j; - var result = []; - var idx = 0; - var ilen = list.length; - while (idx < ilen) { - if (_isArrayLike(list[idx])) { - value = recursive ? flatt(list[idx]) : list[idx]; - j = 0; - jlen = value.length; - while (j < jlen) { - result[result.length] = value[j]; - j += 1; - } +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/base.js +var require_base = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/base.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2["default"] = Diff; + function Diff() { + } + Diff.prototype = { + /*istanbul ignore start*/ + /*istanbul ignore end*/ + diff: function diff(oldString, newString) { + var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; + var callback = options.callback; + if (typeof options === "function") { + callback = options; + options = {}; + } + this.options = options; + var self2 = this; + function done(value) { + if (callback) { + setTimeout(function() { + callback(void 0, value); + }, 0); + return true; } else { - result[result.length] = list[idx]; + return value; } - idx += 1; } - return result; - }; - } - module2.exports = _makeFlat; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_forceReduced.js -var require_forceReduced = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_forceReduced.js"(exports2, module2) { - function _forceReduced(x) { - return { - "@@transducer/value": x, - "@@transducer/reduced": true - }; - } - module2.exports = _forceReduced; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_flatCat.js -var require_flatCat = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_flatCat.js"(exports2, module2) { - var _forceReduced = require_forceReduced(); - var _isArrayLike = require_isArrayLike2(); - var _reduce = require_reduce2(); - var _xfBase = require_xfBase(); - var preservingReduced = function(xf) { - return { - "@@transducer/init": _xfBase.init, - "@@transducer/result": function(result) { - return xf["@@transducer/result"](result); - }, - "@@transducer/step": function(result, input) { - var ret = xf["@@transducer/step"](result, input); - return ret["@@transducer/reduced"] ? _forceReduced(ret) : ret; + oldString = this.castInput(oldString); + newString = this.castInput(newString); + oldString = this.removeEmpty(this.tokenize(oldString)); + newString = this.removeEmpty(this.tokenize(newString)); + var newLen = newString.length, oldLen = oldString.length; + var editLength = 1; + var maxEditLength = newLen + oldLen; + if (options.maxEditLength) { + maxEditLength = Math.min(maxEditLength, options.maxEditLength); + } + var bestPath = [{ + newPos: -1, + components: [] + }]; + var oldPos = this.extractCommon(bestPath[0], newString, oldString, 0); + if (bestPath[0].newPos + 1 >= newLen && oldPos + 1 >= oldLen) { + return done([{ + value: this.join(newString), + count: newString.length + }]); + } + function execEditLength() { + for (var diagonalPath = -1 * editLength; diagonalPath <= editLength; diagonalPath += 2) { + var basePath2 = ( + /*istanbul ignore start*/ + void 0 + ); + var addPath = bestPath[diagonalPath - 1], removePath = bestPath[diagonalPath + 1], _oldPos = (removePath ? removePath.newPos : 0) - diagonalPath; + if (addPath) { + bestPath[diagonalPath - 1] = void 0; + } + var canAdd = addPath && addPath.newPos + 1 < newLen, canRemove = removePath && 0 <= _oldPos && _oldPos < oldLen; + if (!canAdd && !canRemove) { + bestPath[diagonalPath] = void 0; + continue; + } + if (!canAdd || canRemove && addPath.newPos < removePath.newPos) { + basePath2 = clonePath(removePath); + self2.pushComponent(basePath2.components, void 0, true); + } else { + basePath2 = addPath; + basePath2.newPos++; + self2.pushComponent(basePath2.components, true, void 0); + } + _oldPos = self2.extractCommon(basePath2, newString, oldString, diagonalPath); + if (basePath2.newPos + 1 >= newLen && _oldPos + 1 >= oldLen) { + return done(buildValues(self2, basePath2.components, newString, oldString, self2.useLongestToken)); + } else { + bestPath[diagonalPath] = basePath2; + } + } + editLength++; + } + if (callback) { + (function exec() { + setTimeout(function() { + if (editLength > maxEditLength) { + return callback(); + } + if (!execEditLength()) { + exec(); + } + }, 0); + })(); + } else { + while (editLength <= maxEditLength) { + var ret = execEditLength(); + if (ret) { + return ret; + } + } + } + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + pushComponent: function pushComponent(components, added, removed) { + var last = components[components.length - 1]; + if (last && last.added === added && last.removed === removed) { + components[components.length - 1] = { + count: last.count + 1, + added, + removed + }; + } else { + components.push({ + count: 1, + added, + removed + }); + } + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + extractCommon: function extractCommon(basePath2, newString, oldString, diagonalPath) { + var newLen = newString.length, oldLen = oldString.length, newPos = basePath2.newPos, oldPos = newPos - diagonalPath, commonCount = 0; + while (newPos + 1 < newLen && oldPos + 1 < oldLen && this.equals(newString[newPos + 1], oldString[oldPos + 1])) { + newPos++; + oldPos++; + commonCount++; + } + if (commonCount) { + basePath2.components.push({ + count: commonCount + }); + } + basePath2.newPos = newPos; + return oldPos; + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + equals: function equals(left, right) { + if (this.options.comparator) { + return this.options.comparator(left, right); + } else { + return left === right || this.options.ignoreCase && left.toLowerCase() === right.toLowerCase(); + } + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + removeEmpty: function removeEmpty(array) { + var ret = []; + for (var i = 0; i < array.length; i++) { + if (array[i]) { + ret.push(array[i]); + } + } + return ret; + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + castInput: function castInput(value) { + return value; + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + tokenize: function tokenize(value) { + return value.split(""); + }, + /*istanbul ignore start*/ + /*istanbul ignore end*/ + join: function join(chars) { + return chars.join(""); + } + }; + function buildValues(diff, components, newString, oldString, useLongestToken) { + var componentPos = 0, componentLen = components.length, newPos = 0, oldPos = 0; + for (; componentPos < componentLen; componentPos++) { + var component = components[componentPos]; + if (!component.removed) { + if (!component.added && useLongestToken) { + var value = newString.slice(newPos, newPos + component.count); + value = value.map(function(value2, i) { + var oldValue = oldString[oldPos + i]; + return oldValue.length > value2.length ? oldValue : value2; + }); + component.value = diff.join(value); + } else { + component.value = diff.join(newString.slice(newPos, newPos + component.count)); + } + newPos += component.count; + if (!component.added) { + oldPos += component.count; + } + } else { + component.value = diff.join(oldString.slice(oldPos, oldPos + component.count)); + oldPos += component.count; + if (componentPos && components[componentPos - 1].added) { + var tmp = components[componentPos - 1]; + components[componentPos - 1] = components[componentPos]; + components[componentPos] = tmp; + } } - }; - }; - var _flatCat = function _xcat(xf) { - var rxf = preservingReduced(xf); + } + var lastComponent = components[componentLen - 1]; + if (componentLen > 1 && typeof lastComponent.value === "string" && (lastComponent.added || lastComponent.removed) && diff.equals("", lastComponent.value)) { + components[componentLen - 2].value += lastComponent.value; + components.pop(); + } + return components; + } + function clonePath(path2) { return { - "@@transducer/init": _xfBase.init, - "@@transducer/result": function(result) { - return rxf["@@transducer/result"](result); - }, - "@@transducer/step": function(result, input) { - return !_isArrayLike(input) ? _reduce(rxf, result, [input]) : _reduce(rxf, result, input); - } + newPos: path2.newPos, + components: path2.components.slice(0) }; - }; - module2.exports = _flatCat; + } } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xchain.js -var require_xchain = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xchain.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _flatCat = require_flatCat(); - var map = require_map4(); - var _xchain = /* @__PURE__ */ _curry2(function _xchain2(f, xf) { - return map(f, _flatCat(xf)); +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/character.js +var require_character = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/character.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true }); - module2.exports = _xchain; + exports2.diffChars = diffChars; + exports2.characterDiff = void 0; + var _base = _interopRequireDefault(require_base()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var characterDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.characterDiff = characterDiff; + function diffChars(oldStr, newStr, options) { + return characterDiff.diff(oldStr, newStr, options); + } } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/chain.js -var require_chain = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/chain.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _dispatchable = require_dispatchable(); - var _makeFlat = require_makeFlat(); - var _xchain = require_xchain(); - var map = require_map4(); - var chain = /* @__PURE__ */ _curry2(/* @__PURE__ */ _dispatchable(["fantasy-land/chain", "chain"], _xchain, function chain2(fn2, monad) { - if (typeof monad === "function") { - return function(x) { - return fn2(monad(x))(x); - }; +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/params.js +var require_params = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/params.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.generateOptions = generateOptions; + function generateOptions(options, defaults) { + if (typeof options === "function") { + defaults.callback = options; + } else if (options) { + for (var name in options) { + if (options.hasOwnProperty(name)) { + defaults[name] = options[name]; + } + } } - return _makeFlat(false)(map(fn2, monad)); - })); - module2.exports = chain; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/unnest.js -var require_unnest = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/unnest.js"(exports2, module2) { - var _identity = require_identity3(); - var chain = require_chain(); - var unnest = /* @__PURE__ */ chain(_identity); - module2.exports = unnest; + return defaults; + } } }); -// ../link-bins/lib/index.js -var require_lib70 = __commonJS({ - "../link-bins/lib/index.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/word.js +var require_word = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/word.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.linkBinsOfPackages = void 0; - var fs_1 = require("fs"); - var module_1 = __importDefault(require("module")); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var manifest_utils_1 = require_lib15(); - var package_bins_1 = __importDefault(require_lib68()); - var read_modules_dir_1 = __importDefault(require_lib69()); - var read_package_json_1 = require_lib32(); - var read_project_manifest_1 = require_lib19(); - var cmd_shim_1 = __importDefault(require_cmd_shim()); - var is_subdir_1 = __importDefault(require_is_subdir()); - var is_windows_1 = __importDefault(require_is_windows()); - var normalize_path_1 = __importDefault(require_normalize_path()); - var p_settle_1 = __importDefault(require_p_settle()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var union_1 = __importDefault(require_union()); - var unnest_1 = __importDefault(require_unnest()); - var partition_1 = __importDefault(require_partition4()); - var IS_WINDOWS = is_windows_1.default(); - var EXECUTABLE_SHEBANG_SUPPORTED = !IS_WINDOWS; - var POWER_SHELL_IS_SUPPORTED = IS_WINDOWS; - exports2.default = async (modulesDir, binsDir, opts) => { - const allDeps = await read_modules_dir_1.default(modulesDir); - if (allDeps === null) - return []; - const pkgBinOpts = { - allowExoticManifests: false, - ...opts - }; - const directDependencies = opts.projectManifest == null ? void 0 : new Set(Object.keys(manifest_utils_1.getAllDependenciesFromManifest(opts.projectManifest))); - const allCmds = unnest_1.default((await Promise.all(allDeps.map((alias) => { - var _a; - return { - depDir: path_1.default.resolve(modulesDir, alias), - isDirectDependency: directDependencies === null || directDependencies === void 0 ? void 0 : directDependencies.has(alias), - nodeExecPath: (_a = opts.nodeExecPathByAlias) === null || _a === void 0 ? void 0 : _a[alias] - }; - }).filter(({ depDir }) => !is_subdir_1.default(depDir, binsDir)).map(async ({ depDir, isDirectDependency, nodeExecPath }) => { - const target = normalize_path_1.default(depDir); - const cmds = await getPackageBins(pkgBinOpts, target, nodeExecPath); - return cmds.map((cmd) => ({ ...cmd, isDirectDependency })); - }))).filter((cmds) => cmds.length)); - const cmdsToLink = directDependencies != null ? preferDirectCmds(allCmds) : allCmds; - return linkBins(cmdsToLink, binsDir, opts); - }; - function preferDirectCmds(allCmds) { - const [directCmds, hoistedCmds] = partition_1.default((cmd) => cmd.isDirectDependency === true, allCmds); - const usedDirectCmds = new Set(directCmds.map((directCmd) => directCmd.name)); - return [ - ...directCmds, - ...hoistedCmds.filter(({ name }) => !usedDirectCmds.has(name)) - ]; - } - async function linkBinsOfPackages(pkgs, binsTarget, opts) { - if (pkgs.length === 0) - return []; - const allCmds = unnest_1.default((await Promise.all(pkgs.map(async (pkg) => getPackageBinsFromManifest(pkg.manifest, pkg.location, pkg.nodeExecPath)))).filter((cmds) => cmds.length)); - return linkBins(allCmds, binsTarget, opts); - } - exports2.linkBinsOfPackages = linkBinsOfPackages; - async function linkBins(allCmds, binsDir, opts) { - if (allCmds.length === 0) - return []; - await fs_1.promises.mkdir(binsDir, { recursive: true }); - const [cmdsWithOwnName, cmdsWithOtherNames] = partition_1.default(({ ownName }) => ownName, allCmds); - const results1 = await p_settle_1.default(cmdsWithOwnName.map(async (cmd) => linkBin(cmd, binsDir, opts))); - const usedNames = fromPairs_1.default(cmdsWithOwnName.map((cmd) => [cmd.name, cmd.name])); - const results2 = await p_settle_1.default(cmdsWithOtherNames.map(async (cmd) => { - if (usedNames[cmd.name]) { - opts.warn(`Cannot link binary '${cmd.name}' of '${cmd.pkgName}' to '${binsDir}': binary of '${usedNames[cmd.name]}' is already linked`, "BINARIES_CONFLICT"); - return Promise.resolve(void 0); - } - usedNames[cmd.name] = cmd.pkgName; - return linkBin(cmd, binsDir, opts); - })); - for (const result of [...results1, ...results2]) { - if (result.isRejected) { - throw result.reason; - } - } - return allCmds.map((cmd) => cmd.pkgName); - } - async function isFromModules(filename) { - const real = await fs_1.promises.realpath(filename); - return normalize_path_1.default(real).includes("/node_modules/"); - } - async function getPackageBins(opts, target, nodeExecPath) { - const manifest = opts.allowExoticManifests ? await read_project_manifest_1.safeReadProjectManifestOnly(target) : await safeReadPkgJson(target); - if (manifest == null) { - return []; - } - if (isEmpty_1.default(manifest.bin) && !await isFromModules(target)) { - opts.warn(`Package in ${target} must have a non-empty bin field to get bin linked.`, "EMPTY_BIN"); - } - if (typeof manifest.bin === "string" && !manifest.name) { - throw new error_1.default("INVALID_PACKAGE_NAME", `Package in ${target} must have a name to get bin linked.`); - } - return getPackageBinsFromManifest(manifest, target, nodeExecPath); - } - async function getPackageBinsFromManifest(manifest, pkgDir, nodeExecPath) { - const cmds = await package_bins_1.default(manifest, pkgDir); - return cmds.map((cmd) => ({ - ...cmd, - ownName: cmd.name === manifest.name, - pkgName: manifest.name, - makePowerShellShim: POWER_SHELL_IS_SUPPORTED && manifest.name !== "pnpm", - nodeExecPath - })); - } - async function linkBin(cmd, binsDir, opts) { - const externalBinPath = path_1.default.join(binsDir, cmd.name); - if (EXECUTABLE_SHEBANG_SUPPORTED) { - await fs_1.promises.chmod(cmd.path, 493); - } - let nodePath; - if ((opts === null || opts === void 0 ? void 0 : opts.extendNodePath) !== false) { - nodePath = await getBinNodePaths(cmd.path); - const binsParentDir = path_1.default.dirname(binsDir); - if (path_1.default.relative(cmd.path, binsParentDir) !== "") { - nodePath = union_1.default(nodePath, await getBinNodePaths(binsParentDir)); + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffWords = diffWords; + exports2.diffWordsWithSpace = diffWordsWithSpace; + exports2.wordDiff = void 0; + var _base = _interopRequireDefault(require_base()); + var _params = require_params(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var extendedWordChars = /^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/; + var reWhitespace = /\S/; + var wordDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.wordDiff = wordDiff; + wordDiff.equals = function(left, right) { + if (this.options.ignoreCase) { + left = left.toLowerCase(); + right = right.toLowerCase(); + } + return left === right || this.options.ignoreWhitespace && !reWhitespace.test(left) && !reWhitespace.test(right); + }; + wordDiff.tokenize = function(value) { + var tokens = value.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/); + for (var i = 0; i < tokens.length - 1; i++) { + if (!tokens[i + 1] && tokens[i + 2] && extendedWordChars.test(tokens[i]) && extendedWordChars.test(tokens[i + 2])) { + tokens[i] += tokens[i + 2]; + tokens.splice(i + 1, 2); + i--; } } - return cmd_shim_1.default(cmd.path, externalBinPath, { - createPwshFile: cmd.makePowerShellShim, - nodePath, - nodeExecPath: cmd.nodeExecPath + return tokens; + }; + function diffWords(oldStr, newStr, options) { + options = /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _params.generateOptions)(options, { + ignoreWhitespace: true }); + return wordDiff.diff(oldStr, newStr, options); } - async function getBinNodePaths(target) { - const targetDir = path_1.default.dirname(target); - const targetRealPath = await fs_1.promises.realpath(targetDir); - return union_1.default(module_1.default["_nodeModulePaths"](targetRealPath), module_1.default["_nodeModulePaths"](targetDir)); - } - async function safeReadPkgJson(pkgDir) { - try { - return await read_package_json_1.fromDir(pkgDir); - } catch (err) { - if (err.code === "ENOENT") { - return null; - } - throw err; - } + function diffWordsWithSpace(oldStr, newStr, options) { + return wordDiff.diff(oldStr, newStr, options); } } }); -// ../filter-lockfile/lib/filterImporter.js -var require_filterImporter = __commonJS({ - "../filter-lockfile/lib/filterImporter.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/line.js +var require_line = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/line.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function filterImporter(importer, include) { - var _a, _b, _c; - return { - dependencies: !include.dependencies ? {} : (_a = importer.dependencies) !== null && _a !== void 0 ? _a : {}, - devDependencies: !include.devDependencies ? {} : (_b = importer.devDependencies) !== null && _b !== void 0 ? _b : {}, - optionalDependencies: !include.optionalDependencies ? {} : (_c = importer.optionalDependencies) !== null && _c !== void 0 ? _c : {}, - specifiers: importer.specifiers - }; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffLines = diffLines; + exports2.diffTrimmedLines = diffTrimmedLines; + exports2.lineDiff = void 0; + var _base = _interopRequireDefault(require_base()); + var _params = require_params(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var lineDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.lineDiff = lineDiff; + lineDiff.tokenize = function(value) { + var retLines = [], linesAndNewlines = value.split(/(\n|\r\n)/); + if (!linesAndNewlines[linesAndNewlines.length - 1]) { + linesAndNewlines.pop(); + } + for (var i = 0; i < linesAndNewlines.length; i++) { + var line = linesAndNewlines[i]; + if (i % 2 && !this.options.newlineIsToken) { + retLines[retLines.length - 1] += line; + } else { + if (this.options.ignoreWhitespace) { + line = line.trim(); + } + retLines.push(line); + } + } + return retLines; + }; + function diffLines(oldStr, newStr, callback) { + return lineDiff.diff(oldStr, newStr, callback); + } + function diffTrimmedLines(oldStr, newStr, callback) { + var options = ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _params.generateOptions)(callback, { + ignoreWhitespace: true + }) + ); + return lineDiff.diff(oldStr, newStr, options); } - exports2.default = filterImporter; } }); -// ../filter-lockfile/lib/filterLockfile.js -var require_filterLockfile = __commonJS({ - "../filter-lockfile/lib/filterLockfile.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/sentence.js +var require_sentence = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/sentence.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffSentences = diffSentences; + exports2.sentenceDiff = void 0; + var _base = _interopRequireDefault(require_base()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var sentenceDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.sentenceDiff = sentenceDiff; + sentenceDiff.tokenize = function(value) { + return value.split(/(\S.+?[.!?])(?=\s+|$)/); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fromPairs_1 = __importDefault(require_fromPairs()); - var filterImporter_1 = __importDefault(require_filterImporter()); - function filterLockfile(lockfile, opts) { - var _a; - let pairs = Object.entries((_a = lockfile.packages) !== null && _a !== void 0 ? _a : {}).filter(([depPath, pkg]) => !opts.skipped.has(depPath)); - if (!opts.include.dependencies) { - pairs = pairs.filter(([depPath, pkg]) => pkg.dev !== false || pkg.optional); - } - if (!opts.include.devDependencies) { - pairs = pairs.filter(([depPath, pkg]) => pkg.dev !== true); - } - if (!opts.include.optionalDependencies) { - pairs = pairs.filter(([depPath, pkg]) => !pkg.optional); - } - return { - ...lockfile, - importers: Object.keys(lockfile.importers).reduce((acc, importerId) => { - acc[importerId] = filterImporter_1.default(lockfile.importers[importerId], opts.include); - return acc; - }, {}), - packages: fromPairs_1.default(pairs) - }; + function diffSentences(oldStr, newStr, callback) { + return sentenceDiff.diff(oldStr, newStr, callback); } - exports2.default = filterLockfile; } }); -// ../filter-lockfile/lib/LockfileMissingDependencyError.js -var require_LockfileMissingDependencyError = __commonJS({ - "../filter-lockfile/lib/LockfileMissingDependencyError.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/css.js +var require_css = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/css.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var LockfileMissingDependencyError = class extends error_1.default { - constructor(depPath) { - const message2 = `Broken lockfile: no entry for '${depPath}' in ${constants_1.WANTED_LOCKFILE}`; - super("LOCKFILE_MISSING_DEPENDENCY", message2, { - hint: "This issue is probably caused by a badly resolved merge conflict.\nTo fix the lockfile, run 'pnpm install --no-frozen-lockfile'." - }); - } + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffCss = diffCss; + exports2.cssDiff = void 0; + var _base = _interopRequireDefault(require_base()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var cssDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.cssDiff = cssDiff; + cssDiff.tokenize = function(value) { + return value.split(/([{}:;,]|\s+)/); }; - exports2.default = LockfileMissingDependencyError; + function diffCss(oldStr, newStr, callback) { + return cssDiff.diff(oldStr, newStr, callback); + } } }); -// ../filter-lockfile/lib/filterLockfileByImporters.js -var require_filterLockfileByImporters = __commonJS({ - "../filter-lockfile/lib/filterLockfileByImporters.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/json.js +var require_json5 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/json.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var lockfile_walker_1 = __importDefault(require_lib54()); - var logger_1 = __importDefault(require_lib6()); - var filterImporter_1 = __importDefault(require_filterImporter()); - var LockfileMissingDependencyError_1 = __importDefault(require_LockfileMissingDependencyError()); - var logger = logger_1.default("lockfile"); - function filterByImporters(lockfile, importerIds, opts) { - const packages = {}; - if (lockfile.packages != null) { - pkgAllDeps(lockfile_walker_1.default(lockfile, importerIds, { include: opts.include, skipped: opts.skipped }).step, packages, { - failOnMissingDependencies: opts.failOnMissingDependencies - }); + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffJson = diffJson; + exports2.canonicalize = canonicalize; + exports2.jsonDiff = void 0; + var _base = _interopRequireDefault(require_base()); + var _line = require_line(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + function _typeof(obj) { + "@babel/helpers - typeof"; + if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { + _typeof = function _typeof2(obj2) { + return typeof obj2; + }; + } else { + _typeof = function _typeof2(obj2) { + return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2; + }; } - const importers = importerIds.reduce((acc, importerId) => { - acc[importerId] = filterImporter_1.default(lockfile.importers[importerId], opts.include); - return acc; - }, { ...lockfile.importers }); - return { - ...lockfile, - importers, - packages - }; + return _typeof(obj); } - exports2.default = filterByImporters; - function pkgAllDeps(step, pickedPackages, opts) { - for (const { pkgSnapshot, depPath, next } of step.dependencies) { - pickedPackages[depPath] = pkgSnapshot; - pkgAllDeps(next(), pickedPackages, opts); + var objectPrototypeToString = Object.prototype.toString; + var jsonDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.jsonDiff = jsonDiff; + jsonDiff.useLongestToken = true; + jsonDiff.tokenize = /*istanbul ignore start*/ + _line.lineDiff.tokenize; + jsonDiff.castInput = function(value) { + var _this$options = ( + /*istanbul ignore end*/ + this.options + ), undefinedReplacement = _this$options.undefinedReplacement, _this$options$stringi = _this$options.stringifyReplacer, stringifyReplacer = _this$options$stringi === void 0 ? function(k, v) { + return ( + /*istanbul ignore end*/ + typeof v === "undefined" ? undefinedReplacement : v + ); + } : _this$options$stringi; + return typeof value === "string" ? value : JSON.stringify(canonicalize(value, null, null, stringifyReplacer), stringifyReplacer, " "); + }; + jsonDiff.equals = function(left, right) { + return ( + /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ].prototype.equals.call(jsonDiff, left.replace(/,([\r\n])/g, "$1"), right.replace(/,([\r\n])/g, "$1")) + ); + }; + function diffJson(oldObj, newObj, options) { + return jsonDiff.diff(oldObj, newObj, options); + } + function canonicalize(obj, stack2, replacementStack, replacer, key) { + stack2 = stack2 || []; + replacementStack = replacementStack || []; + if (replacer) { + obj = replacer(key, obj); } - for (const depPath of step.missing) { - if (opts.failOnMissingDependencies) { - throw new LockfileMissingDependencyError_1.default(depPath); + var i; + for (i = 0; i < stack2.length; i += 1) { + if (stack2[i] === obj) { + return replacementStack[i]; } - logger.debug(`No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}`); } + var canonicalizedObj; + if ("[object Array]" === objectPrototypeToString.call(obj)) { + stack2.push(obj); + canonicalizedObj = new Array(obj.length); + replacementStack.push(canonicalizedObj); + for (i = 0; i < obj.length; i += 1) { + canonicalizedObj[i] = canonicalize(obj[i], stack2, replacementStack, replacer, key); + } + stack2.pop(); + replacementStack.pop(); + return canonicalizedObj; + } + if (obj && obj.toJSON) { + obj = obj.toJSON(); + } + if ( + /*istanbul ignore start*/ + _typeof( + /*istanbul ignore end*/ + obj + ) === "object" && obj !== null + ) { + stack2.push(obj); + canonicalizedObj = {}; + replacementStack.push(canonicalizedObj); + var sortedKeys = [], _key; + for (_key in obj) { + if (obj.hasOwnProperty(_key)) { + sortedKeys.push(_key); + } + } + sortedKeys.sort(); + for (i = 0; i < sortedKeys.length; i += 1) { + _key = sortedKeys[i]; + canonicalizedObj[_key] = canonicalize(obj[_key], stack2, replacementStack, replacer, _key); + } + stack2.pop(); + replacementStack.pop(); + } else { + canonicalizedObj = obj; + } + return canonicalizedObj; } } }); -// ../filter-lockfile/lib/filterLockfileByImportersAndEngine.js -var require_filterLockfileByImportersAndEngine = __commonJS({ - "../filter-lockfile/lib/filterLockfileByImportersAndEngine.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/array.js +var require_array3 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/diff/array.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + Object.defineProperty(exports2, "__esModule", { + value: true }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + exports2.diffArrays = diffArrays; + exports2.arrayDiff = void 0; + var _base = _interopRequireDefault(require_base()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + var arrayDiff = new /*istanbul ignore start*/ + _base[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ](); + exports2.arrayDiff = arrayDiff; + arrayDiff.tokenize = function(value) { + return value.slice(); + }; + arrayDiff.join = arrayDiff.removeEmpty = function(value) { + return value; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var lockfile_utils_1 = require_lib53(); - var logger_1 = __importDefault(require_lib6()); - var package_is_installable_1 = __importDefault(require_lib13()); - var dp = __importStar2(require_lib33()); - var unnest_1 = __importDefault(require_unnest()); - var filterImporter_1 = __importDefault(require_filterImporter()); - var LockfileMissingDependencyError_1 = __importDefault(require_LockfileMissingDependencyError()); - var logger = logger_1.default("lockfile"); - function filterByImportersAndEngine(lockfile, importerIds, opts) { - const importerDeps = importerIds.map((importerId) => lockfile.importers[importerId]).map((importer) => ({ - ...opts.include.dependencies ? importer.dependencies : {}, - ...opts.include.devDependencies ? importer.devDependencies : {}, - ...opts.include.optionalDependencies ? importer.optionalDependencies : {} - })).map(Object.entries); - const directDepPaths = unnest_1.default(importerDeps).map(([pkgName, ref]) => dp.refToRelative(ref, pkgName)).filter((nodeId) => nodeId !== null); - const packages = lockfile.packages != null ? pickPkgsWithAllDeps(lockfile.packages, directDepPaths, { - currentEngine: opts.currentEngine, - engineStrict: opts.engineStrict, - failOnMissingDependencies: opts.failOnMissingDependencies, - include: opts.include, - includeIncompatiblePackages: opts.includeIncompatiblePackages === true, - lockfileDir: opts.lockfileDir, - skipped: opts.skipped - }) : {}; - const importers = importerIds.reduce((acc, importerId) => { - var _a; - acc[importerId] = filterImporter_1.default(lockfile.importers[importerId], opts.include); - if (acc[importerId].optionalDependencies != null) { - for (const depName of Object.keys((_a = acc[importerId].optionalDependencies) !== null && _a !== void 0 ? _a : {})) { - const depPath = dp.refToRelative(acc[importerId].optionalDependencies[depName], depName); - if (depPath && !packages[depPath]) { - delete acc[importerId].optionalDependencies[depName]; - } + function diffArrays(oldArr, newArr, callback) { + return arrayDiff.diff(oldArr, newArr, callback); + } + } +}); + +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/parse.js +var require_parse9 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/parse.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.parsePatch = parsePatch; + function parsePatch(uniDiff) { + var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + var diffstr = uniDiff.split(/\r\n|[\n\v\f\r\x85]/), delimiters = uniDiff.match(/\r\n|[\n\v\f\r\x85]/g) || [], list = [], i = 0; + function parseIndex() { + var index = {}; + list.push(index); + while (i < diffstr.length) { + var line = diffstr[i]; + if (/^(\-\-\-|\+\+\+|@@)\s/.test(line)) { + break; } + var header = /^(?:Index:|diff(?: -r \w+)+)\s+(.+?)\s*$/.exec(line); + if (header) { + index.index = header[1]; + } + i++; } - return acc; - }, { ...lockfile.importers }); - return { - ...lockfile, - importers, - packages - }; - } - exports2.default = filterByImportersAndEngine; - function pickPkgsWithAllDeps(pkgSnapshots, depPaths, opts) { - const pickedPackages = {}; - pkgAllDeps({ pkgSnapshots, pickedPackages }, depPaths, true, opts); - return pickedPackages; - } - function pkgAllDeps(ctx, depPaths, parentIsInstallable, opts) { - var _a; - for (const depPath of depPaths) { - if (ctx.pickedPackages[depPath]) - continue; - const pkgSnapshot = ctx.pkgSnapshots[depPath]; - if (!pkgSnapshot && !depPath.startsWith("link:")) { - if (opts.failOnMissingDependencies) { - throw new LockfileMissingDependencyError_1.default(depPath); + parseFileHeader(index); + parseFileHeader(index); + index.hunks = []; + while (i < diffstr.length) { + var _line = diffstr[i]; + if (/^(Index:|diff|\-\-\-|\+\+\+)\s/.test(_line)) { + break; + } else if (/^@@/.test(_line)) { + index.hunks.push(parseHunk()); + } else if (_line && options.strict) { + throw new Error("Unknown line " + (i + 1) + " " + JSON.stringify(_line)); + } else { + i++; } - logger.debug(`No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}`); - continue; } - let installable; - if (!parentIsInstallable) { - installable = false; - if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) { - opts.skipped.add(depPath); + } + function parseFileHeader(index) { + var fileHeader = /^(---|\+\+\+)\s+(.*)$/.exec(diffstr[i]); + if (fileHeader) { + var keyPrefix = fileHeader[1] === "---" ? "old" : "new"; + var data = fileHeader[2].split(" ", 2); + var fileName = data[0].replace(/\\\\/g, "\\"); + if (/^".*"$/.test(fileName)) { + fileName = fileName.substr(1, fileName.length - 2); } - } else { - const pkg = { - ...lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot), - cpu: pkgSnapshot.cpu, - engines: pkgSnapshot.engines, - os: pkgSnapshot.os - }; - installable = opts.includeIncompatiblePackages || package_is_installable_1.default((_a = pkgSnapshot.id) !== null && _a !== void 0 ? _a : depPath, pkg, { - engineStrict: opts.engineStrict, - lockfileDir: opts.lockfileDir, - nodeVersion: opts.currentEngine.nodeVersion, - optional: pkgSnapshot.optional === true, - pnpmVersion: opts.currentEngine.pnpmVersion - }) !== false; - if (!installable) { - if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) { - opts.skipped.add(depPath); + index[keyPrefix + "FileName"] = fileName; + index[keyPrefix + "Header"] = (data[1] || "").trim(); + i++; + } + } + function parseHunk() { + var chunkHeaderIndex = i, chunkHeaderLine = diffstr[i++], chunkHeader = chunkHeaderLine.split(/@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/); + var hunk = { + oldStart: +chunkHeader[1], + oldLines: typeof chunkHeader[2] === "undefined" ? 1 : +chunkHeader[2], + newStart: +chunkHeader[3], + newLines: typeof chunkHeader[4] === "undefined" ? 1 : +chunkHeader[4], + lines: [], + linedelimiters: [] + }; + if (hunk.oldLines === 0) { + hunk.oldStart += 1; + } + if (hunk.newLines === 0) { + hunk.newStart += 1; + } + var addCount = 0, removeCount = 0; + for (; i < diffstr.length; i++) { + if (diffstr[i].indexOf("--- ") === 0 && i + 2 < diffstr.length && diffstr[i + 1].indexOf("+++ ") === 0 && diffstr[i + 2].indexOf("@@") === 0) { + break; + } + var operation = diffstr[i].length == 0 && i != diffstr.length - 1 ? " " : diffstr[i][0]; + if (operation === "+" || operation === "-" || operation === " " || operation === "\\") { + hunk.lines.push(diffstr[i]); + hunk.linedelimiters.push(delimiters[i] || "\n"); + if (operation === "+") { + addCount++; + } else if (operation === "-") { + removeCount++; + } else if (operation === " ") { + addCount++; + removeCount++; } } else { - opts.skipped.delete(depPath); + break; } } - ctx.pickedPackages[depPath] = pkgSnapshot; - const nextRelDepPaths = Object.entries({ - ...pkgSnapshot.dependencies, - ...opts.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {} - }).map(([pkgName, ref]) => { - var _a2; - if ((_a2 = pkgSnapshot.peerDependencies) === null || _a2 === void 0 ? void 0 : _a2[pkgName]) - return null; - return dp.refToRelative(ref, pkgName); - }).filter((nodeId) => nodeId !== null); - pkgAllDeps(ctx, nextRelDepPaths, installable, opts); + if (!addCount && hunk.newLines === 1) { + hunk.newLines = 0; + } + if (!removeCount && hunk.oldLines === 1) { + hunk.oldLines = 0; + } + if (options.strict) { + if (addCount !== hunk.newLines) { + throw new Error("Added line count did not match for hunk at line " + (chunkHeaderIndex + 1)); + } + if (removeCount !== hunk.oldLines) { + throw new Error("Removed line count did not match for hunk at line " + (chunkHeaderIndex + 1)); + } + } + return hunk; + } + while (i < diffstr.length) { + parseIndex(); } + return list; } } }); -// ../filter-lockfile/lib/index.js -var require_lib71 = __commonJS({ - "../filter-lockfile/lib/index.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/distance-iterator.js +var require_distance_iterator = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/distance-iterator.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.filterLockfileByImportersAndEngine = exports2.filterLockfileByImporters = void 0; - var filterLockfile_1 = __importDefault(require_filterLockfile()); - var filterLockfileByImporters_1 = __importDefault(require_filterLockfileByImporters()); - exports2.filterLockfileByImporters = filterLockfileByImporters_1.default; - var filterLockfileByImportersAndEngine_1 = __importDefault(require_filterLockfileByImportersAndEngine()); - exports2.filterLockfileByImportersAndEngine = filterLockfileByImportersAndEngine_1.default; - exports2.default = filterLockfile_1.default; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/mergeAll.js -var require_mergeAll2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/mergeAll.js"(exports2, module2) { - var _objectAssign = require_objectAssign(); - var _curry1 = require_curry1(); - var mergeAll = /* @__PURE__ */ _curry1(function mergeAll2(list) { - return _objectAssign.apply(null, [{}].concat(list)); - }); - module2.exports = mergeAll; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pickAll.js -var require_pickAll = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/pickAll.js"(exports2, module2) { - var _curry2 = require_curry2(); - var pickAll = /* @__PURE__ */ _curry2(function pickAll2(names, obj) { - var result = {}; - var idx = 0; - var len = names.length; - while (idx < len) { - var name = names[idx]; - result[name] = obj[name]; - idx += 1; - } - return result; + Object.defineProperty(exports2, "__esModule", { + value: true }); - module2.exports = pickAll; + exports2["default"] = _default; + function _default(start, minLine, maxLine) { + var wantForward = true, backwardExhausted = false, forwardExhausted = false, localOffset = 1; + return function iterator() { + if (wantForward && !forwardExhausted) { + if (backwardExhausted) { + localOffset++; + } else { + wantForward = false; + } + if (start + localOffset <= maxLine) { + return localOffset; + } + forwardExhausted = true; + } + if (!backwardExhausted) { + if (!forwardExhausted) { + wantForward = true; + } + if (minLine <= start - localOffset) { + return -localOffset++; + } + backwardExhausted = true; + return iterator(); + } + }; + } } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/props.js -var require_props = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/props.js"(exports2, module2) { - var _curry2 = require_curry2(); - var path = require_path3(); - var props = /* @__PURE__ */ _curry2(function props2(ps, obj) { - return ps.map(function(p) { - return path([p], obj); - }); +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/apply.js +var require_apply3 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/apply.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true }); - module2.exports = props; + exports2.applyPatch = applyPatch; + exports2.applyPatches = applyPatches; + var _parse = require_parse9(); + var _distanceIterator = _interopRequireDefault(require_distance_iterator()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; + } + function applyPatch(source, uniDiff) { + var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; + if (typeof uniDiff === "string") { + uniDiff = /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _parse.parsePatch)(uniDiff); + } + if (Array.isArray(uniDiff)) { + if (uniDiff.length > 1) { + throw new Error("applyPatch only works with a single input."); + } + uniDiff = uniDiff[0]; + } + var lines = source.split(/\r\n|[\n\v\f\r\x85]/), delimiters = source.match(/\r\n|[\n\v\f\r\x85]/g) || [], hunks = uniDiff.hunks, compareLine = options.compareLine || function(lineNumber, line2, operation2, patchContent) { + return ( + /*istanbul ignore end*/ + line2 === patchContent + ); + }, errorCount = 0, fuzzFactor = options.fuzzFactor || 0, minLine = 0, offset = 0, removeEOFNL, addEOFNL; + function hunkFits(hunk2, toPos2) { + for (var j2 = 0; j2 < hunk2.lines.length; j2++) { + var line2 = hunk2.lines[j2], operation2 = line2.length > 0 ? line2[0] : " ", content2 = line2.length > 0 ? line2.substr(1) : line2; + if (operation2 === " " || operation2 === "-") { + if (!compareLine(toPos2 + 1, lines[toPos2], operation2, content2)) { + errorCount++; + if (errorCount > fuzzFactor) { + return false; + } + } + toPos2++; + } + } + return true; + } + for (var i = 0; i < hunks.length; i++) { + var hunk = hunks[i], maxLine = lines.length - hunk.oldLines, localOffset = 0, toPos = offset + hunk.oldStart - 1; + var iterator = ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _distanceIterator[ + /*istanbul ignore start*/ + "default" + /*istanbul ignore end*/ + ])(toPos, minLine, maxLine) + ); + for (; localOffset !== void 0; localOffset = iterator()) { + if (hunkFits(hunk, toPos + localOffset)) { + hunk.offset = offset += localOffset; + break; + } + } + if (localOffset === void 0) { + return false; + } + minLine = hunk.offset + hunk.oldStart + hunk.oldLines; + } + var diffOffset = 0; + for (var _i = 0; _i < hunks.length; _i++) { + var _hunk = hunks[_i], _toPos = _hunk.oldStart + _hunk.offset + diffOffset - 1; + diffOffset += _hunk.newLines - _hunk.oldLines; + for (var j = 0; j < _hunk.lines.length; j++) { + var line = _hunk.lines[j], operation = line.length > 0 ? line[0] : " ", content = line.length > 0 ? line.substr(1) : line, delimiter = _hunk.linedelimiters[j]; + if (operation === " ") { + _toPos++; + } else if (operation === "-") { + lines.splice(_toPos, 1); + delimiters.splice(_toPos, 1); + } else if (operation === "+") { + lines.splice(_toPos, 0, content); + delimiters.splice(_toPos, 0, delimiter); + _toPos++; + } else if (operation === "\\") { + var previousOperation = _hunk.lines[j - 1] ? _hunk.lines[j - 1][0] : null; + if (previousOperation === "+") { + removeEOFNL = true; + } else if (previousOperation === "-") { + addEOFNL = true; + } + } + } + } + if (removeEOFNL) { + while (!lines[lines.length - 1]) { + lines.pop(); + delimiters.pop(); + } + } else if (addEOFNL) { + lines.push(""); + delimiters.push("\n"); + } + for (var _k = 0; _k < lines.length - 1; _k++) { + lines[_k] = lines[_k] + delimiters[_k]; + } + return lines.join(""); + } + function applyPatches(uniDiff, options) { + if (typeof uniDiff === "string") { + uniDiff = /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _parse.parsePatch)(uniDiff); + } + var currentIndex = 0; + function processIndex() { + var index = uniDiff[currentIndex++]; + if (!index) { + return options.complete(); + } + options.loadFile(index, function(err, data) { + if (err) { + return options.complete(err); + } + var updatedContent = applyPatch(data, index, options); + options.patched(index, updatedContent, function(err2) { + if (err2) { + return options.complete(err2); + } + processIndex(); + }); + }); + } + processIndex(); + } } }); -// ../remove-bins/lib/removeBins.js -var require_removeBins = __commonJS({ - "../remove-bins/lib/removeBins.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/create.js +var require_create3 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/create.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.removeBinsOfDependency = exports2.removeBin = void 0; - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var package_bins_1 = __importDefault(require_lib68()); - var read_package_json_1 = require_lib32(); - var rimraf_1 = __importDefault(require_rimraf()); - var cmd_extension_1 = __importDefault(require_cmd_extension()); - var is_windows_1 = __importDefault(require_is_windows()); - async function removeOnWin(cmd) { - core_loggers_1.removalLogger.debug(cmd); - await Promise.all([ - rimraf_1.default(cmd), - rimraf_1.default(`${cmd}.ps1`), - rimraf_1.default(`${cmd}${cmd_extension_1.default}`) - ]); + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.structuredPatch = structuredPatch; + exports2.formatPatch = formatPatch; + exports2.createTwoFilesPatch = createTwoFilesPatch; + exports2.createPatch = createPatch; + var _line = require_line(); + function _toConsumableArray(arr) { + return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } - async function removeOnNonWin(p) { - core_loggers_1.removalLogger.debug(p); - return rimraf_1.default(p); + function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - exports2.removeBin = is_windows_1.default() ? removeOnWin : removeOnNonWin; - async function removeBinsOfDependency(dependencyDir, opts) { - const uninstalledPkgJson = await read_package_json_1.safeReadPackageFromDir(dependencyDir); - if (!uninstalledPkgJson) + function _unsupportedIterableToArray(o, minLen) { + if (!o) return; - const cmds = await package_bins_1.default(uninstalledPkgJson, dependencyDir); - if (!opts.dryRun) { - await Promise.all(cmds.map((cmd) => path_1.default.join(opts.binsDir, cmd.name)).map(exports2.removeBin)); + if (typeof o === "string") + return _arrayLikeToArray(o, minLen); + var n = Object.prototype.toString.call(o).slice(8, -1); + if (n === "Object" && o.constructor) + n = o.constructor.name; + if (n === "Map" || n === "Set") + return Array.from(o); + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) + return _arrayLikeToArray(o, minLen); + } + function _iterableToArray(iter) { + if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) + return Array.from(iter); + } + function _arrayWithoutHoles(arr) { + if (Array.isArray(arr)) + return _arrayLikeToArray(arr); + } + function _arrayLikeToArray(arr, len) { + if (len == null || len > arr.length) + len = arr.length; + for (var i = 0, arr2 = new Array(len); i < len; i++) { + arr2[i] = arr[i]; } - return uninstalledPkgJson; + return arr2; + } + function structuredPatch(oldFileName, newFileName, oldStr, newStr, oldHeader, newHeader, options) { + if (!options) { + options = {}; + } + if (typeof options.context === "undefined") { + options.context = 4; + } + var diff = ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _line.diffLines)(oldStr, newStr, options) + ); + if (!diff) { + return; + } + diff.push({ + value: "", + lines: [] + }); + function contextLines(lines) { + return lines.map(function(entry) { + return " " + entry; + }); + } + var hunks = []; + var oldRangeStart = 0, newRangeStart = 0, curRange = [], oldLine = 1, newLine = 1; + var _loop = function _loop2(i2) { + var current = diff[i2], lines = current.lines || current.value.replace(/\n$/, "").split("\n"); + current.lines = lines; + if (current.added || current.removed) { + var _curRange; + if (!oldRangeStart) { + var prev = diff[i2 - 1]; + oldRangeStart = oldLine; + newRangeStart = newLine; + if (prev) { + curRange = options.context > 0 ? contextLines(prev.lines.slice(-options.context)) : []; + oldRangeStart -= curRange.length; + newRangeStart -= curRange.length; + } + } + (_curRange = /*istanbul ignore end*/ + curRange).push.apply( + /*istanbul ignore start*/ + _curRange, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + lines.map(function(entry) { + return (current.added ? "+" : "-") + entry; + }) + ) + ); + if (current.added) { + newLine += lines.length; + } else { + oldLine += lines.length; + } + } else { + if (oldRangeStart) { + if (lines.length <= options.context * 2 && i2 < diff.length - 2) { + var _curRange2; + (_curRange2 = /*istanbul ignore end*/ + curRange).push.apply( + /*istanbul ignore start*/ + _curRange2, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + contextLines(lines) + ) + ); + } else { + var _curRange3; + var contextSize = Math.min(lines.length, options.context); + (_curRange3 = /*istanbul ignore end*/ + curRange).push.apply( + /*istanbul ignore start*/ + _curRange3, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + contextLines(lines.slice(0, contextSize)) + ) + ); + var hunk = { + oldStart: oldRangeStart, + oldLines: oldLine - oldRangeStart + contextSize, + newStart: newRangeStart, + newLines: newLine - newRangeStart + contextSize, + lines: curRange + }; + if (i2 >= diff.length - 2 && lines.length <= options.context) { + var oldEOFNewline = /\n$/.test(oldStr); + var newEOFNewline = /\n$/.test(newStr); + var noNlBeforeAdds = lines.length == 0 && curRange.length > hunk.oldLines; + if (!oldEOFNewline && noNlBeforeAdds && oldStr.length > 0) { + curRange.splice(hunk.oldLines, 0, "\\ No newline at end of file"); + } + if (!oldEOFNewline && !noNlBeforeAdds || !newEOFNewline) { + curRange.push("\\ No newline at end of file"); + } + } + hunks.push(hunk); + oldRangeStart = 0; + newRangeStart = 0; + curRange = []; + } + } + oldLine += lines.length; + newLine += lines.length; + } + }; + for (var i = 0; i < diff.length; i++) { + _loop( + /*istanbul ignore end*/ + i + ); + } + return { + oldFileName, + newFileName, + oldHeader, + newHeader, + hunks + }; + } + function formatPatch(diff) { + var ret = []; + if (diff.oldFileName == diff.newFileName) { + ret.push("Index: " + diff.oldFileName); + } + ret.push("==================================================================="); + ret.push("--- " + diff.oldFileName + (typeof diff.oldHeader === "undefined" ? "" : " " + diff.oldHeader)); + ret.push("+++ " + diff.newFileName + (typeof diff.newHeader === "undefined" ? "" : " " + diff.newHeader)); + for (var i = 0; i < diff.hunks.length; i++) { + var hunk = diff.hunks[i]; + if (hunk.oldLines === 0) { + hunk.oldStart -= 1; + } + if (hunk.newLines === 0) { + hunk.newStart -= 1; + } + ret.push("@@ -" + hunk.oldStart + "," + hunk.oldLines + " +" + hunk.newStart + "," + hunk.newLines + " @@"); + ret.push.apply(ret, hunk.lines); + } + return ret.join("\n") + "\n"; + } + function createTwoFilesPatch(oldFileName, newFileName, oldStr, newStr, oldHeader, newHeader, options) { + return formatPatch(structuredPatch(oldFileName, newFileName, oldStr, newStr, oldHeader, newHeader, options)); + } + function createPatch(fileName, oldStr, newStr, oldHeader, newHeader, options) { + return createTwoFilesPatch(fileName, fileName, oldStr, newStr, oldHeader, newHeader, options); } - exports2.removeBinsOfDependency = removeBinsOfDependency; - } -}); - -// ../remove-bins/lib/index.js -var require_lib72 = __commonJS({ - "../remove-bins/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.removeBinsOfDependency = exports2.removeBin = void 0; - var removeBins_1 = require_removeBins(); - Object.defineProperty(exports2, "removeBin", { enumerable: true, get: function() { - return removeBins_1.removeBin; - } }); - Object.defineProperty(exports2, "removeBinsOfDependency", { enumerable: true, get: function() { - return removeBins_1.removeBinsOfDependency; - } }); } }); -// ../modules-cleaner/lib/removeDirectDependency.js -var require_removeDirectDependency = __commonJS({ - "../modules-cleaner/lib/removeDirectDependency.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/array.js +var require_array4 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/util/array.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var remove_bins_1 = require_lib72(); - async function removeDirectDependency(dependency, opts) { - const dependencyDir = path_1.default.join(opts.modulesDir, dependency.name); - const results = await Promise.all([ - remove_bins_1.removeBinsOfDependency(dependencyDir, opts), - !opts.dryRun && remove_bins_1.removeBin(dependencyDir) - ]); - const uninstalledPkg = results[0]; - if (!opts.muteLogs) { - core_loggers_1.rootLogger.debug({ - prefix: opts.rootDir, - removed: { - dependencyType: dependency.dependenciesField === "devDependencies" && "dev" || dependency.dependenciesField === "optionalDependencies" && "optional" || dependency.dependenciesField === "dependencies" && "prod" || void 0, - name: dependency.name, - version: uninstalledPkg === null || uninstalledPkg === void 0 ? void 0 : uninstalledPkg.version - } - }); + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.arrayEqual = arrayEqual; + exports2.arrayStartsWith = arrayStartsWith; + function arrayEqual(a, b) { + if (a.length !== b.length) { + return false; + } + return arrayStartsWith(a, b); + } + function arrayStartsWith(array, start) { + if (start.length > array.length) { + return false; } + for (var i = 0; i < start.length; i++) { + if (start[i] !== array[i]) { + return false; + } + } + return true; } - exports2.default = removeDirectDependency; } }); -// ../modules-cleaner/lib/prune.js -var require_prune2 = __commonJS({ - "../modules-cleaner/lib/prune.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/merge.js +var require_merge5 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/patch/merge.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + Object.defineProperty(exports2, "__esModule", { + value: true }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + exports2.calcLineCount = calcLineCount; + exports2.merge = merge; + var _create = require_create3(); + var _parse = require_parse9(); + var _array = require_array4(); + function _toConsumableArray(arr) { + return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); + } + function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } + function _unsupportedIterableToArray(o, minLen) { + if (!o) + return; + if (typeof o === "string") + return _arrayLikeToArray(o, minLen); + var n = Object.prototype.toString.call(o).slice(8, -1); + if (n === "Object" && o.constructor) + n = o.constructor.name; + if (n === "Map" || n === "Set") + return Array.from(o); + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) + return _arrayLikeToArray(o, minLen); + } + function _iterableToArray(iter) { + if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) + return Array.from(iter); + } + function _arrayWithoutHoles(arr) { + if (Array.isArray(arr)) + return _arrayLikeToArray(arr); + } + function _arrayLikeToArray(arr, len) { + if (len == null || len > arr.length) + len = arr.length; + for (var i = 0, arr2 = new Array(len); i < len; i++) { + arr2[i] = arr[i]; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var filter_lockfile_1 = __importStar2(require_lib71()); - var lockfile_utils_1 = require_lib53(); - var logger_1 = __importDefault(require_lib6()); - var read_modules_dir_1 = __importDefault(require_lib69()); - var types_1 = require_lib14(); - var dependency_path_1 = require_lib33(); - var rimraf_1 = __importDefault(require_rimraf()); - var difference_1 = __importDefault(require_difference()); - var equals_1 = __importDefault(require_equals2()); - var mergeAll_1 = __importDefault(require_mergeAll2()); - var pickAll_1 = __importDefault(require_pickAll()); - var props_1 = __importDefault(require_props()); - var removeDirectDependency_1 = __importDefault(require_removeDirectDependency()); - async function prune(importers, opts) { - var _a, _b, _c; - const wantedLockfile = filter_lockfile_1.default(opts.wantedLockfile, { - include: opts.include, - skipped: opts.skipped - }); - await Promise.all(importers.map(async ({ binsDir, id, modulesDir, pruneDirectDependencies, removePackages, rootDir }) => { - var _a2; - const currentImporter = opts.currentLockfile.importers[id] || {}; - const currentPkgs = Object.entries(mergeDependencies(currentImporter)); - const wantedPkgs = Object.entries(mergeDependencies(wantedLockfile.importers[id])); - const allCurrentPackages = new Set(pruneDirectDependencies === true || (removePackages === null || removePackages === void 0 ? void 0 : removePackages.length) ? (_a2 = await read_modules_dir_1.default(modulesDir)) !== null && _a2 !== void 0 ? _a2 : [] : []); - const depsToRemove = new Set([ - ...(removePackages !== null && removePackages !== void 0 ? removePackages : []).filter((removePackage) => allCurrentPackages.has(removePackage)), - ...difference_1.default(currentPkgs, wantedPkgs).map(([depName]) => depName) - ]); - if (pruneDirectDependencies) { - if (allCurrentPackages.size > 0) { - const newPkgsSet = new Set(wantedPkgs.map(([depName]) => depName)); - for (const currentPackage of Array.from(allCurrentPackages)) { - if (!newPkgsSet.has(currentPackage)) { - depsToRemove.add(currentPackage); - } - } - } + return arr2; + } + function calcLineCount(hunk) { + var _calcOldNewLineCount = ( + /*istanbul ignore end*/ + calcOldNewLineCount(hunk.lines) + ), oldLines = _calcOldNewLineCount.oldLines, newLines = _calcOldNewLineCount.newLines; + if (oldLines !== void 0) { + hunk.oldLines = oldLines; + } else { + delete hunk.oldLines; + } + if (newLines !== void 0) { + hunk.newLines = newLines; + } else { + delete hunk.newLines; + } + } + function merge(mine, theirs, base) { + mine = loadPatch(mine, base); + theirs = loadPatch(theirs, base); + var ret = {}; + if (mine.index || theirs.index) { + ret.index = mine.index || theirs.index; + } + if (mine.newFileName || theirs.newFileName) { + if (!fileNameChanged(mine)) { + ret.oldFileName = theirs.oldFileName || mine.oldFileName; + ret.newFileName = theirs.newFileName || mine.newFileName; + ret.oldHeader = theirs.oldHeader || mine.oldHeader; + ret.newHeader = theirs.newHeader || mine.newHeader; + } else if (!fileNameChanged(theirs)) { + ret.oldFileName = mine.oldFileName; + ret.newFileName = mine.newFileName; + ret.oldHeader = mine.oldHeader; + ret.newHeader = mine.newHeader; + } else { + ret.oldFileName = selectField(ret, mine.oldFileName, theirs.oldFileName); + ret.newFileName = selectField(ret, mine.newFileName, theirs.newFileName); + ret.oldHeader = selectField(ret, mine.oldHeader, theirs.oldHeader); + ret.newHeader = selectField(ret, mine.newHeader, theirs.newHeader); + } + } + ret.hunks = []; + var mineIndex = 0, theirsIndex = 0, mineOffset = 0, theirsOffset = 0; + while (mineIndex < mine.hunks.length || theirsIndex < theirs.hunks.length) { + var mineCurrent = mine.hunks[mineIndex] || { + oldStart: Infinity + }, theirsCurrent = theirs.hunks[theirsIndex] || { + oldStart: Infinity + }; + if (hunkBefore(mineCurrent, theirsCurrent)) { + ret.hunks.push(cloneHunk(mineCurrent, mineOffset)); + mineIndex++; + theirsOffset += mineCurrent.newLines - mineCurrent.oldLines; + } else if (hunkBefore(theirsCurrent, mineCurrent)) { + ret.hunks.push(cloneHunk(theirsCurrent, theirsOffset)); + theirsIndex++; + mineOffset += theirsCurrent.newLines - theirsCurrent.oldLines; + } else { + var mergedHunk = { + oldStart: Math.min(mineCurrent.oldStart, theirsCurrent.oldStart), + oldLines: 0, + newStart: Math.min(mineCurrent.newStart + mineOffset, theirsCurrent.oldStart + theirsOffset), + newLines: 0, + lines: [] + }; + mergeLines(mergedHunk, mineCurrent.oldStart, mineCurrent.lines, theirsCurrent.oldStart, theirsCurrent.lines); + theirsIndex++; + mineIndex++; + ret.hunks.push(mergedHunk); } - return Promise.all(Array.from(depsToRemove).map(async (depName) => { - var _a3, _b2, _c2; - return removeDirectDependency_1.default({ - dependenciesField: ((_a3 = currentImporter.devDependencies) === null || _a3 === void 0 ? void 0 : _a3[depName]) != null && "devDependencies" || ((_b2 = currentImporter.optionalDependencies) === null || _b2 === void 0 ? void 0 : _b2[depName]) != null && "optionalDependencies" || ((_c2 = currentImporter.dependencies) === null || _c2 === void 0 ? void 0 : _c2[depName]) != null && "dependencies" || void 0, - name: depName - }, { - binsDir, - dryRun: opts.dryRun, - modulesDir, - rootDir - }); - })); - })); - const selectedImporterIds = importers.map((importer) => importer.id).sort(); - const currentPkgIdsByDepPaths = equals_1.default(selectedImporterIds, Object.keys(opts.wantedLockfile.importers)) ? getPkgsDepPaths(opts.registries, (_a = opts.currentLockfile.packages) !== null && _a !== void 0 ? _a : {}, opts.skipped) : getPkgsDepPathsOwnedOnlyByImporters(selectedImporterIds, opts.registries, opts.currentLockfile, opts.include, opts.skipped); - const wantedPkgIdsByDepPaths = getPkgsDepPaths(opts.registries, (_b = wantedLockfile.packages) !== null && _b !== void 0 ? _b : {}, opts.skipped); - const oldDepPaths = Object.keys(currentPkgIdsByDepPaths); - const newDepPaths = Object.keys(wantedPkgIdsByDepPaths); - const orphanDepPaths = difference_1.default(oldDepPaths, newDepPaths); - const orphanPkgIds = new Set(props_1.default(orphanDepPaths, currentPkgIdsByDepPaths)); - core_loggers_1.statsLogger.debug({ - prefix: opts.lockfileDir, - removed: orphanPkgIds.size + } + return ret; + } + function loadPatch(param, base) { + if (typeof param === "string") { + if (/^@@/m.test(param) || /^Index:/m.test(param)) { + return ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _parse.parsePatch)(param)[0] + ); + } + if (!base) { + throw new Error("Must provide a base reference or pass in a patch"); + } + return ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _create.structuredPatch)(void 0, void 0, base, param) + ); + } + return param; + } + function fileNameChanged(patch) { + return patch.newFileName && patch.newFileName !== patch.oldFileName; + } + function selectField(index, mine, theirs) { + if (mine === theirs) { + return mine; + } else { + index.conflict = true; + return { + mine, + theirs + }; + } + } + function hunkBefore(test, check) { + return test.oldStart < check.oldStart && test.oldStart + test.oldLines < check.oldStart; + } + function cloneHunk(hunk, offset) { + return { + oldStart: hunk.oldStart, + oldLines: hunk.oldLines, + newStart: hunk.newStart + offset, + newLines: hunk.newLines, + lines: hunk.lines + }; + } + function mergeLines(hunk, mineOffset, mineLines, theirOffset, theirLines) { + var mine = { + offset: mineOffset, + lines: mineLines, + index: 0 + }, their = { + offset: theirOffset, + lines: theirLines, + index: 0 + }; + insertLeading(hunk, mine, their); + insertLeading(hunk, their, mine); + while (mine.index < mine.lines.length && their.index < their.lines.length) { + var mineCurrent = mine.lines[mine.index], theirCurrent = their.lines[their.index]; + if ((mineCurrent[0] === "-" || mineCurrent[0] === "+") && (theirCurrent[0] === "-" || theirCurrent[0] === "+")) { + mutualChange(hunk, mine, their); + } else if (mineCurrent[0] === "+" && theirCurrent[0] === " ") { + var _hunk$lines; + (_hunk$lines = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + collectChange(mine) + ) + ); + } else if (theirCurrent[0] === "+" && mineCurrent[0] === " ") { + var _hunk$lines2; + (_hunk$lines2 = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines2, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + collectChange(their) + ) + ); + } else if (mineCurrent[0] === "-" && theirCurrent[0] === " ") { + removal(hunk, mine, their); + } else if (theirCurrent[0] === "-" && mineCurrent[0] === " ") { + removal(hunk, their, mine, true); + } else if (mineCurrent === theirCurrent) { + hunk.lines.push(mineCurrent); + mine.index++; + their.index++; + } else { + conflict(hunk, collectChange(mine), collectChange(their)); + } + } + insertTrailing(hunk, mine); + insertTrailing(hunk, their); + calcLineCount(hunk); + } + function mutualChange(hunk, mine, their) { + var myChanges = collectChange(mine), theirChanges = collectChange(their); + if (allRemoves(myChanges) && allRemoves(theirChanges)) { + if ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _array.arrayStartsWith)(myChanges, theirChanges) && skipRemoveSuperset(their, myChanges, myChanges.length - theirChanges.length) + ) { + var _hunk$lines3; + (_hunk$lines3 = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines3, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + myChanges + ) + ); + return; + } else if ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _array.arrayStartsWith)(theirChanges, myChanges) && skipRemoveSuperset(mine, theirChanges, theirChanges.length - myChanges.length) + ) { + var _hunk$lines4; + (_hunk$lines4 = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines4, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + theirChanges + ) + ); + return; + } + } else if ( + /*istanbul ignore start*/ + (0, /*istanbul ignore end*/ + /*istanbul ignore start*/ + _array.arrayEqual)(myChanges, theirChanges) + ) { + var _hunk$lines5; + (_hunk$lines5 = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines5, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + myChanges + ) + ); + return; + } + conflict(hunk, myChanges, theirChanges); + } + function removal(hunk, mine, their, swap) { + var myChanges = collectChange(mine), theirChanges = collectContext(their, myChanges); + if (theirChanges.merged) { + var _hunk$lines6; + (_hunk$lines6 = /*istanbul ignore end*/ + hunk.lines).push.apply( + /*istanbul ignore start*/ + _hunk$lines6, + /*istanbul ignore start*/ + _toConsumableArray( + /*istanbul ignore end*/ + theirChanges.merged + ) + ); + } else { + conflict(hunk, swap ? theirChanges : myChanges, swap ? myChanges : theirChanges); + } + } + function conflict(hunk, mine, their) { + hunk.conflict = true; + hunk.lines.push({ + conflict: true, + mine, + theirs: their }); - if (!opts.dryRun) { - if (orphanDepPaths.length > 0 && opts.currentLockfile.packages != null && (opts.hoistedModulesDir != null || opts.publicHoistedModulesDir != null)) { - const prefix = path_1.default.join(opts.virtualStoreDir, "../.."); - await Promise.all(orphanDepPaths.map(async (orphanDepPath) => { - if (opts.hoistedDependencies[orphanDepPath]) { - await Promise.all(Object.entries(opts.hoistedDependencies[orphanDepPath]).map(([alias, hoistType]) => { - const modulesDir = hoistType === "public" ? opts.publicHoistedModulesDir : opts.hoistedModulesDir; - if (!modulesDir) - return void 0; - return removeDirectDependency_1.default({ - name: alias - }, { - binsDir: path_1.default.join(modulesDir, ".bin"), - modulesDir, - muteLogs: true, - rootDir: prefix - }); - })); - } - delete opts.hoistedDependencies[orphanDepPath]; - })); + } + function insertLeading(hunk, insert, their) { + while (insert.offset < their.offset && insert.index < insert.lines.length) { + var line = insert.lines[insert.index++]; + hunk.lines.push(line); + insert.offset++; + } + } + function insertTrailing(hunk, insert) { + while (insert.index < insert.lines.length) { + var line = insert.lines[insert.index++]; + hunk.lines.push(line); + } + } + function collectChange(state) { + var ret = [], operation = state.lines[state.index][0]; + while (state.index < state.lines.length) { + var line = state.lines[state.index]; + if (operation === "-" && line[0] === "+") { + operation = "+"; } - if (opts.pruneVirtualStore !== false) { - const _tryRemovePkg = tryRemovePkg.bind(null, opts.lockfileDir, opts.virtualStoreDir); - await Promise.all(orphanDepPaths.map((orphanDepPath) => dependency_path_1.depPathToFilename(orphanDepPath, opts.lockfileDir)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath))); - const neededPkgs = new Set(); - for (const depPath of Object.keys((_c = opts.wantedLockfile.packages) !== null && _c !== void 0 ? _c : {})) { - if (opts.skipped.has(depPath)) - continue; - neededPkgs.add(dependency_path_1.depPathToFilename(depPath, opts.lockfileDir)); - } - const availablePkgs = await readVirtualStoreDir(opts.virtualStoreDir, opts.lockfileDir); - await Promise.all(availablePkgs.filter((availablePkg) => !neededPkgs.has(availablePkg)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath))); + if (operation === line[0]) { + ret.push(line); + state.index++; + } else { + break; } } - return new Set(orphanDepPaths); + return ret; } - exports2.default = prune; - async function readVirtualStoreDir(virtualStoreDir, lockfileDir) { - try { - return await fs_1.promises.readdir(virtualStoreDir); - } catch (err) { - if (err.code !== "ENOENT") { - logger_1.default.warn({ - error: err, - message: `Failed to read virtualStoreDir at "${virtualStoreDir}"`, - prefix: lockfileDir - }); + function collectContext(state, matchChanges) { + var changes = [], merged = [], matchIndex = 0, contextChanges = false, conflicted = false; + while (matchIndex < matchChanges.length && state.index < state.lines.length) { + var change = state.lines[state.index], match = matchChanges[matchIndex]; + if (match[0] === "+") { + break; + } + contextChanges = contextChanges || change[0] !== " "; + merged.push(match); + matchIndex++; + if (change[0] === "+") { + conflicted = true; + while (change[0] === "+") { + changes.push(change); + change = state.lines[++state.index]; + } + } + if (match.substr(1) === change.substr(1)) { + changes.push(change); + state.index++; + } else { + conflicted = true; } - return []; } - } - async function tryRemovePkg(lockfileDir, virtualStoreDir, pkgDir) { - const pathToRemove = path_1.default.join(virtualStoreDir, pkgDir); - core_loggers_1.removalLogger.debug(pathToRemove); - try { - await rimraf_1.default(pathToRemove); - } catch (err) { - logger_1.default.warn({ - error: err, - message: `Failed to remove "${pathToRemove}"`, - prefix: lockfileDir - }); + if ((matchChanges[matchIndex] || "")[0] === "+" && contextChanges) { + conflicted = true; + } + if (conflicted) { + return changes; + } + while (matchIndex < matchChanges.length) { + merged.push(matchChanges[matchIndex++]); } + return { + merged, + changes + }; } - function mergeDependencies(projectSnapshot) { - return mergeAll_1.default(types_1.DEPENDENCIES_FIELDS.map((depType) => { - var _a; - return (_a = projectSnapshot[depType]) !== null && _a !== void 0 ? _a : {}; - })); + function allRemoves(changes) { + return changes.reduce(function(prev, change) { + return prev && change[0] === "-"; + }, true); } - function getPkgsDepPaths(registries, packages, skipped) { - const pkgIdsByDepPath = {}; - for (const depPath of Object.keys(packages)) { - if (skipped.has(depPath)) - continue; - pkgIdsByDepPath[depPath] = lockfile_utils_1.packageIdFromSnapshot(depPath, packages[depPath], registries); + function skipRemoveSuperset(state, removeChanges, delta) { + for (var i = 0; i < delta; i++) { + var changeContent = removeChanges[removeChanges.length - delta + i].substr(1); + if (state.lines[state.index + i] !== " " + changeContent) { + return false; + } } - return pkgIdsByDepPath; + state.index += delta; + return true; } - function getPkgsDepPathsOwnedOnlyByImporters(importerIds, registries, lockfile, include, skipped) { - const selected = filter_lockfile_1.filterLockfileByImporters(lockfile, importerIds, { - failOnMissingDependencies: false, - include, - skipped - }); - const other = filter_lockfile_1.filterLockfileByImporters(lockfile, difference_1.default(Object.keys(lockfile.importers), importerIds), { - failOnMissingDependencies: false, - include, - skipped + function calcOldNewLineCount(lines) { + var oldLines = 0; + var newLines = 0; + lines.forEach(function(line) { + if (typeof line !== "string") { + var myCount = calcOldNewLineCount(line.mine); + var theirCount = calcOldNewLineCount(line.theirs); + if (oldLines !== void 0) { + if (myCount.oldLines === theirCount.oldLines) { + oldLines += myCount.oldLines; + } else { + oldLines = void 0; + } + } + if (newLines !== void 0) { + if (myCount.newLines === theirCount.newLines) { + newLines += myCount.newLines; + } else { + newLines = void 0; + } + } + } else { + if (newLines !== void 0 && (line[0] === "+" || line[0] === " ")) { + newLines++; + } + if (oldLines !== void 0 && (line[0] === "-" || line[0] === " ")) { + oldLines++; + } + } }); - const packagesOfSelectedOnly = pickAll_1.default(difference_1.default(Object.keys(selected.packages), Object.keys(other.packages)), selected.packages); - return getPkgsDepPaths(registries, packagesOfSelectedOnly, skipped); + return { + oldLines, + newLines + }; } } }); -// ../modules-cleaner/lib/index.js -var require_lib73 = __commonJS({ - "../modules-cleaner/lib/index.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/convert/dmp.js +var require_dmp = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/convert/dmp.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.prune = void 0; - var prune_1 = __importDefault(require_prune2()); - exports2.prune = prune_1.default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.convertChangesToDMP = convertChangesToDMP; + function convertChangesToDMP(changes) { + var ret = [], change, operation; + for (var i = 0; i < changes.length; i++) { + change = changes[i]; + if (change.added) { + operation = 1; + } else if (change.removed) { + operation = -1; + } else { + operation = 0; + } + ret.push([operation, change.value]); + } + return ret; + } } }); -// ../prune-lockfile/lib/index.js -var require_lib74 = __commonJS({ - "../prune-lockfile/lib/index.js"(exports2) { +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/convert/xml.js +var require_xml = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/convert/xml.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; + Object.defineProperty(exports2, "__esModule", { + value: true }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.pruneLockfile = exports2.pruneSharedLockfile = void 0; - var constants_1 = require_lib7(); - var dependency_path_1 = require_lib33(); - var difference_1 = __importDefault(require_difference()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var omit_1 = __importDefault(require_omit()); - var unnest_1 = __importDefault(require_unnest()); - __exportStar(require_lib52(), exports2); - function pruneSharedLockfile(lockfile, opts) { - var _a; - const copiedPackages = lockfile.packages == null ? {} : copyPackageSnapshots(lockfile.packages, { - devDepPaths: unnest_1.default(Object.values(lockfile.importers).map((deps) => { - var _a2; - return resolvedDepsToDepPaths((_a2 = deps.devDependencies) !== null && _a2 !== void 0 ? _a2 : {}); - })), - optionalDepPaths: unnest_1.default(Object.values(lockfile.importers).map((deps) => { - var _a2; - return resolvedDepsToDepPaths((_a2 = deps.optionalDependencies) !== null && _a2 !== void 0 ? _a2 : {}); - })), - prodDepPaths: unnest_1.default(Object.values(lockfile.importers).map((deps) => { - var _a2; - return resolvedDepsToDepPaths((_a2 = deps.dependencies) !== null && _a2 !== void 0 ? _a2 : {}); - })), - warn: (_a = opts === null || opts === void 0 ? void 0 : opts.warn) !== null && _a !== void 0 ? _a : (msg) => void 0 - }); - const prunnedLockfile = { - ...lockfile, - packages: copiedPackages - }; - if (isEmpty_1.default(prunnedLockfile.packages)) { - delete prunnedLockfile.packages; - } - return prunnedLockfile; + exports2.convertChangesToXML = convertChangesToXML; + function convertChangesToXML(changes) { + var ret = []; + for (var i = 0; i < changes.length; i++) { + var change = changes[i]; + if (change.added) { + ret.push(""); + } else if (change.removed) { + ret.push(""); + } + ret.push(escapeHTML(change.value)); + if (change.added) { + ret.push(""); + } else if (change.removed) { + ret.push(""); + } + } + return ret.join(""); + } + function escapeHTML(s) { + var n = s; + n = n.replace(/&/g, "&"); + n = n.replace(//g, ">"); + n = n.replace(/"/g, """); + return n; } - exports2.pruneSharedLockfile = pruneSharedLockfile; - function pruneLockfile(lockfile, pkg, importerId, opts) { - var _a, _b, _c, _d; - const packages = {}; - const importer = lockfile.importers[importerId]; - const lockfileSpecs = (_a = importer.specifiers) !== null && _a !== void 0 ? _a : {}; - const optionalDependencies = Object.keys((_b = pkg.optionalDependencies) !== null && _b !== void 0 ? _b : {}); - const dependencies = difference_1.default(Object.keys((_c = pkg.dependencies) !== null && _c !== void 0 ? _c : {}), optionalDependencies); - const devDependencies = difference_1.default(difference_1.default(Object.keys((_d = pkg.devDependencies) !== null && _d !== void 0 ? _d : {}), optionalDependencies), dependencies); - const allDeps = [ - ...optionalDependencies, - ...devDependencies, - ...dependencies - ]; - const specifiers = {}; - const lockfileDependencies = {}; - const lockfileOptionalDependencies = {}; - const lockfileDevDependencies = {}; - Object.keys(lockfileSpecs).forEach((depName) => { - var _a2, _b2, _c2; - if (!allDeps.includes(depName)) - return; - specifiers[depName] = lockfileSpecs[depName]; - if ((_a2 = importer.dependencies) === null || _a2 === void 0 ? void 0 : _a2[depName]) { - lockfileDependencies[depName] = importer.dependencies[depName]; - } else if ((_b2 = importer.optionalDependencies) === null || _b2 === void 0 ? void 0 : _b2[depName]) { - lockfileOptionalDependencies[depName] = importer.optionalDependencies[depName]; - } else if ((_c2 = importer.devDependencies) === null || _c2 === void 0 ? void 0 : _c2[depName]) { - lockfileDevDependencies[depName] = importer.devDependencies[depName]; - } - }); - if (importer.dependencies != null) { - for (const dep of Object.keys(importer.dependencies)) { - if (!lockfileDependencies[dep] && importer.dependencies[dep].startsWith("link:") && !(lockfileSpecs[dep] && !allDeps[dep])) { - lockfileDependencies[dep] = importer.dependencies[dep]; - } - } + } +}); + +// ../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/index.js +var require_lib125 = __commonJS({ + "../node_modules/.pnpm/diff@5.1.0/node_modules/diff/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + Object.defineProperty(exports2, "Diff", { + enumerable: true, + get: function get() { + return _base["default"]; } - const updatedImporter = { - specifiers - }; - const prunnedLockfile = { - importers: { - ...lockfile.importers, - [importerId]: updatedImporter - }, - lockfileVersion: lockfile.lockfileVersion || constants_1.LOCKFILE_VERSION, - packages: lockfile.packages - }; - if (!isEmpty_1.default(packages)) { - prunnedLockfile.packages = packages; + }); + Object.defineProperty(exports2, "diffChars", { + enumerable: true, + get: function get() { + return _character.diffChars; } - if (!isEmpty_1.default(lockfileDependencies)) { - updatedImporter.dependencies = lockfileDependencies; + }); + Object.defineProperty(exports2, "diffWords", { + enumerable: true, + get: function get() { + return _word.diffWords; } - if (!isEmpty_1.default(lockfileOptionalDependencies)) { - updatedImporter.optionalDependencies = lockfileOptionalDependencies; + }); + Object.defineProperty(exports2, "diffWordsWithSpace", { + enumerable: true, + get: function get() { + return _word.diffWordsWithSpace; } - if (!isEmpty_1.default(lockfileDevDependencies)) { - updatedImporter.devDependencies = lockfileDevDependencies; + }); + Object.defineProperty(exports2, "diffLines", { + enumerable: true, + get: function get() { + return _line.diffLines; } - return pruneSharedLockfile(prunnedLockfile, opts); + }); + Object.defineProperty(exports2, "diffTrimmedLines", { + enumerable: true, + get: function get() { + return _line.diffTrimmedLines; + } + }); + Object.defineProperty(exports2, "diffSentences", { + enumerable: true, + get: function get() { + return _sentence.diffSentences; + } + }); + Object.defineProperty(exports2, "diffCss", { + enumerable: true, + get: function get() { + return _css.diffCss; + } + }); + Object.defineProperty(exports2, "diffJson", { + enumerable: true, + get: function get() { + return _json.diffJson; + } + }); + Object.defineProperty(exports2, "canonicalize", { + enumerable: true, + get: function get() { + return _json.canonicalize; + } + }); + Object.defineProperty(exports2, "diffArrays", { + enumerable: true, + get: function get() { + return _array.diffArrays; + } + }); + Object.defineProperty(exports2, "applyPatch", { + enumerable: true, + get: function get() { + return _apply.applyPatch; + } + }); + Object.defineProperty(exports2, "applyPatches", { + enumerable: true, + get: function get() { + return _apply.applyPatches; + } + }); + Object.defineProperty(exports2, "parsePatch", { + enumerable: true, + get: function get() { + return _parse.parsePatch; + } + }); + Object.defineProperty(exports2, "merge", { + enumerable: true, + get: function get() { + return _merge.merge; + } + }); + Object.defineProperty(exports2, "structuredPatch", { + enumerable: true, + get: function get() { + return _create.structuredPatch; + } + }); + Object.defineProperty(exports2, "createTwoFilesPatch", { + enumerable: true, + get: function get() { + return _create.createTwoFilesPatch; + } + }); + Object.defineProperty(exports2, "createPatch", { + enumerable: true, + get: function get() { + return _create.createPatch; + } + }); + Object.defineProperty(exports2, "convertChangesToDMP", { + enumerable: true, + get: function get() { + return _dmp.convertChangesToDMP; + } + }); + Object.defineProperty(exports2, "convertChangesToXML", { + enumerable: true, + get: function get() { + return _xml.convertChangesToXML; + } + }); + var _base = _interopRequireDefault(require_base()); + var _character = require_character(); + var _word = require_word(); + var _line = require_line(); + var _sentence = require_sentence(); + var _css = require_css(); + var _json = require_json5(); + var _array = require_array3(); + var _apply = require_apply3(); + var _parse = require_parse9(); + var _merge = require_merge5(); + var _create = require_create3(); + var _dmp = require_dmp(); + var _xml = require_xml(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { "default": obj }; } - exports2.pruneLockfile = pruneLockfile; - function copyPackageSnapshots(originalPackages, opts) { - const copiedSnapshots = {}; - const ctx = { - copiedSnapshots, - nonOptional: new Set(), - notProdOnly: new Set(), - originalPackages, - walked: new Set(), - warn: opts.warn + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js +var require_isKey = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js"(exports2, module2) { + var isArray = require_isArray2(); + var isSymbol = require_isSymbol(); + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; + var reIsPlainProp = /^\w*$/; + function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); + } + module2.exports = isKey; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js +var require_memoize = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js"(exports2, module2) { + var MapCache = require_MapCache(); + var FUNC_ERROR_TEXT = "Expected a function"; + function memoize(func, resolver) { + if (typeof func != "function" || resolver != null && typeof resolver != "function") { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args2 = arguments, key = resolver ? resolver.apply(this, args2) : args2[0], cache = memoized.cache; + if (cache.has(key)) { + return cache.get(key); + } + var result2 = func.apply(this, args2); + memoized.cache = cache.set(key, result2) || cache; + return result2; }; - copyDependencySubGraph(ctx, opts.devDepPaths, { - dev: true, - optional: false - }); - copyDependencySubGraph(ctx, opts.optionalDepPaths, { - dev: false, - optional: true + memoized.cache = new (memoize.Cache || MapCache)(); + return memoized; + } + memoize.Cache = MapCache; + module2.exports = memoize; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js +var require_memoizeCapped = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js"(exports2, module2) { + var memoize = require_memoize(); + var MAX_MEMOIZE_SIZE = 500; + function memoizeCapped(func) { + var result2 = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; }); - copyDependencySubGraph(ctx, opts.prodDepPaths, { - dev: false, - optional: false + var cache = result2.cache; + return result2; + } + module2.exports = memoizeCapped; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js +var require_stringToPath = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js"(exports2, module2) { + var memoizeCapped = require_memoizeCapped(); + var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + var reEscapeChar = /\\(\\)?/g; + var stringToPath = memoizeCapped(function(string) { + var result2 = []; + if (string.charCodeAt(0) === 46) { + result2.push(""); + } + string.replace(rePropName, function(match, number, quote, subString) { + result2.push(quote ? subString.replace(reEscapeChar, "$1") : number || match); }); - return copiedSnapshots; + return result2; + }); + module2.exports = stringToPath; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js +var require_castPath = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js"(exports2, module2) { + var isArray = require_isArray2(); + var isKey = require_isKey(); + var stringToPath = require_stringToPath(); + var toString = require_toString(); + function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); } - function resolvedDepsToDepPaths(deps) { - return Object.entries(deps).map(([alias, ref]) => dependency_path_1.refToRelative(ref, alias)).filter((depPath) => depPath !== null); + module2.exports = castPath; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js +var require_toKey = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js"(exports2, module2) { + var isSymbol = require_isSymbol(); + var INFINITY = 1 / 0; + function toKey(value) { + if (typeof value == "string" || isSymbol(value)) { + return value; + } + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; } - function copyDependencySubGraph(ctx, depPaths, opts) { - var _a, _b, _c, _d; - for (const depPath of depPaths) { - const key = `${depPath}:${opts.optional.toString()}:${opts.dev.toString()}`; - if (ctx.walked.has(key)) - continue; - ctx.walked.add(key); - if (!ctx.originalPackages[depPath]) { - if (depPath.startsWith("link:") || depPath.startsWith("file:") && !depPath.endsWith(".tar.gz")) - continue; - ctx.warn(`Cannot find resolution of ${depPath} in lockfile`); - continue; - } - const depLockfile = ctx.originalPackages[depPath]; - ctx.copiedSnapshots[depPath] = depLockfile; - if (opts.optional && !ctx.nonOptional.has(depPath)) { - depLockfile.optional = true; - } else { - ctx.nonOptional.add(depPath); - delete depLockfile.optional; + module2.exports = toKey; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js +var require_baseGet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js"(exports2, module2) { + var castPath = require_castPath(); + var toKey = require_toKey(); + function baseGet(object, path2) { + path2 = castPath(path2, object); + var index = 0, length = path2.length; + while (object != null && index < length) { + object = object[toKey(path2[index++])]; + } + return index && index == length ? object : void 0; + } + module2.exports = baseGet; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSet.js +var require_baseSet = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSet.js"(exports2, module2) { + var assignValue = require_assignValue(); + var castPath = require_castPath(); + var isIndex = require_isIndex(); + var isObject = require_isObject2(); + var toKey = require_toKey(); + function baseSet(object, path2, value, customizer) { + if (!isObject(object)) { + return object; + } + path2 = castPath(path2, object); + var index = -1, length = path2.length, lastIndex = length - 1, nested = object; + while (nested != null && ++index < length) { + var key = toKey(path2[index]), newValue = value; + if (key === "__proto__" || key === "constructor" || key === "prototype") { + return object; } - if (opts.dev) { - ctx.notProdOnly.add(depPath); - depLockfile.dev = true; - } else if (depLockfile.dev === true) { - delete depLockfile.dev; - } else if (depLockfile.dev === void 0 && !ctx.notProdOnly.has(depPath)) { - depLockfile.dev = false; + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : void 0; + if (newValue === void 0) { + newValue = isObject(objValue) ? objValue : isIndex(path2[index + 1]) ? [] : {}; + } } - const newDependencies = resolvedDepsToDepPaths(omit_1.default((_b = Object.keys((_a = depLockfile.peerDependencies) !== null && _a !== void 0 ? _a : {})) !== null && _b !== void 0 ? _b : [], (_c = depLockfile.dependencies) !== null && _c !== void 0 ? _c : {})); - copyDependencySubGraph(ctx, newDependencies, opts); - const newOptionalDependencies = resolvedDepsToDepPaths((_d = depLockfile.optionalDependencies) !== null && _d !== void 0 ? _d : {}); - copyDependencySubGraph(ctx, newOptionalDependencies, { dev: opts.dev, optional: true }); + assignValue(nested, key, newValue); + nested = nested[key]; } + return object; } + module2.exports = baseSet; } }); -// ../../node_modules/.pnpm/symlink-dir@5.0.1/node_modules/symlink-dir/dist/index.js -var require_dist11 = __commonJS({ - "../../node_modules/.pnpm/symlink-dir@5.0.1/node_modules/symlink-dir/dist/index.js"(exports2, module2) { - "use strict"; - var betterPathResolve = require_better_path_resolve(); - var fs_1 = require("fs"); - var path = require("path"); - var renameOverwrite = require_rename_overwrite(); - var IS_WINDOWS = process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE); - var symlinkType = IS_WINDOWS ? "junction" : "dir"; - var resolveSrc = IS_WINDOWS ? resolveSrcOnWin : resolveSrcOnNonWin; - function resolveSrcOnWin(src, dest) { - return `${src}\\`; - } - function resolveSrcOnNonWin(src, dest) { - return path.relative(path.dirname(dest), src); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePickBy.js +var require_basePickBy = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePickBy.js"(exports2, module2) { + var baseGet = require_baseGet(); + var baseSet = require_baseSet(); + var castPath = require_castPath(); + function basePickBy(object, paths, predicate) { + var index = -1, length = paths.length, result2 = {}; + while (++index < length) { + var path2 = paths[index], value = baseGet(object, path2); + if (predicate(value, path2)) { + baseSet(result2, castPath(path2, object), value); + } + } + return result2; } - function symlinkDir(src, dest) { - dest = betterPathResolve(dest); - src = betterPathResolve(src); - if (src === dest) - throw new Error(`Symlink path is the same as the target path (${src})`); - src = resolveSrc(src, dest); - return forceSymlink(src, dest); + module2.exports = basePickBy; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHasIn.js +var require_baseHasIn = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHasIn.js"(exports2, module2) { + function baseHasIn(object, key) { + return object != null && key in Object(object); } - async function forceSymlink(src, dest) { - try { - await fs_1.promises.symlink(src, dest, symlinkType); - return { reused: false }; - } catch (err) { - switch (err.code) { - case "ENOENT": - try { - await fs_1.promises.mkdir(path.dirname(dest), { recursive: true }); - } catch (mkdirError) { - mkdirError.message = `Error while trying to symlink "${src}" to "${dest}". The error happened while trying to create the parent directory for the symlink target. Details: ${mkdirError}`; - throw mkdirError; - } - await forceSymlink(src, dest); - return { reused: false }; - case "EEXIST": - case "EISDIR": - break; - default: - throw err; + module2.exports = baseHasIn; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js +var require_hasPath = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js"(exports2, module2) { + var castPath = require_castPath(); + var isArguments = require_isArguments2(); + var isArray = require_isArray2(); + var isIndex = require_isIndex(); + var isLength = require_isLength(); + var toKey = require_toKey(); + function hasPath(object, path2, hasFunc) { + path2 = castPath(path2, object); + var index = -1, length = path2.length, result2 = false; + while (++index < length) { + var key = toKey(path2[index]); + if (!(result2 = object != null && hasFunc(object, key))) { + break; } + object = object[key]; } - let linkString; - try { - linkString = await fs_1.promises.readlink(dest); - } catch (err) { - const parentDir = path.dirname(dest); - const ignore = `.ignored_${path.basename(dest)}`; - await renameOverwrite(dest, path.join(parentDir, ignore)); - return { - ...await forceSymlink(src, dest), - warn: `Symlink wanted name was occupied by directory or file. Old entity moved: "${parentDir}${path.sep}{${path.basename(dest)} => ${ignore}}".` - }; - } - if (src === linkString) { - return { reused: true }; + if (result2 || ++index != length) { + return result2; } - await fs_1.promises.unlink(dest); - return await forceSymlink(src, dest); + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); } - symlinkDir["default"] = symlinkDir; - module2.exports = symlinkDir; + module2.exports = hasPath; } }); -// ../symlink-dependency/lib/symlinkDirectRootDependency.js -var require_symlinkDirectRootDependency = __commonJS({ - "../symlink-dependency/lib/symlinkDirectRootDependency.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var symlink_dir_1 = __importDefault(require_dist11()); - var DEP_TYPE_BY_DEPS_FIELD_NAME = { - dependencies: "prod", - devDependencies: "dev", - optionalDependencies: "optional" - }; - async function symlinkDirectRootDependency(dependencyLocation, destModulesDir, importAs, opts) { - let destModulesDirReal; - try { - destModulesDirReal = await fs_1.promises.realpath(destModulesDir); - } catch (err) { - if (err.code === "ENOENT") { - await fs_1.promises.mkdir(destModulesDir, { recursive: true }); - destModulesDirReal = await fs_1.promises.realpath(destModulesDir); - } else { - throw err; - } - } - const dependencyRealocation = await fs_1.promises.realpath(dependencyLocation); - const dest = path_1.default.join(destModulesDirReal, importAs); - const { reused } = await symlink_dir_1.default(dependencyRealocation, dest); - if (reused) - return; - core_loggers_1.rootLogger.debug({ - added: { - dependencyType: opts.fromDependenciesField && DEP_TYPE_BY_DEPS_FIELD_NAME[opts.fromDependenciesField], - linkedFrom: dependencyRealocation, - name: importAs, - realName: opts.linkedPackage.name, - version: opts.linkedPackage.version - }, - prefix: opts.prefix +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/hasIn.js +var require_hasIn = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/hasIn.js"(exports2, module2) { + var baseHasIn = require_baseHasIn(); + var hasPath = require_hasPath(); + function hasIn(object, path2) { + return object != null && hasPath(object, path2, baseHasIn); + } + module2.exports = hasIn; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePick.js +var require_basePick = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_basePick.js"(exports2, module2) { + var basePickBy = require_basePickBy(); + var hasIn = require_hasIn(); + function basePick(object, paths) { + return basePickBy(object, paths, function(value, path2) { + return hasIn(object, path2); }); } - exports2.default = symlinkDirectRootDependency; + module2.exports = basePick; } }); -// ../symlink-dependency/lib/index.js -var require_lib75 = __commonJS({ - "../symlink-dependency/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.symlinkDirectRootDependency = void 0; - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var symlink_dir_1 = __importDefault(require_dist11()); - var symlinkDirectRootDependency_1 = __importDefault(require_symlinkDirectRootDependency()); - exports2.symlinkDirectRootDependency = symlinkDirectRootDependency_1.default; - async function symlinkDependency(dependencyRealLocation, destModulesDir, importAs) { - const link = path_1.default.join(destModulesDir, importAs); - core_loggers_1.linkLogger.debug({ target: dependencyRealLocation, link }); - return symlink_dir_1.default(dependencyRealLocation, link); +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isFlattenable.js +var require_isFlattenable = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isFlattenable.js"(exports2, module2) { + var Symbol2 = require_Symbol(); + var isArguments = require_isArguments2(); + var isArray = require_isArray2(); + var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; + function isFlattenable(value) { + return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); } - exports2.default = symlinkDependency; + module2.exports = isFlattenable; } }); -// ../supi/lib/link/options.js -var require_options2 = __commonJS({ - "../supi/lib/link/options.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.extendOptions = void 0; - var path_1 = __importDefault(require("path")); - var normalize_registries_1 = __importStar2(require_lib65()); - async function extendOptions(opts) { - if (opts) { - for (const key in opts) { - if (opts[key] === void 0) { - delete opts[key]; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFlatten.js +var require_baseFlatten = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFlatten.js"(exports2, module2) { + var arrayPush = require_arrayPush(); + var isFlattenable = require_isFlattenable(); + function baseFlatten(array, depth, predicate, isStrict, result2) { + var index = -1, length = array.length; + predicate || (predicate = isFlattenable); + result2 || (result2 = []); + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + baseFlatten(value, depth - 1, predicate, isStrict, result2); + } else { + arrayPush(result2, value); } + } else if (!isStrict) { + result2[result2.length] = value; } } - const defaultOpts = await defaults(opts); - const extendedOpts = { ...defaultOpts, ...opts, storeDir: defaultOpts.storeDir }; - extendedOpts.registries = normalize_registries_1.default(extendedOpts.registries); - return extendedOpts; + return result2; } - exports2.extendOptions = extendOptions; - async function defaults(opts) { - var _a, _b; - const dir = (_a = opts.dir) !== null && _a !== void 0 ? _a : process.cwd(); - return { - binsDir: path_1.default.join(dir, "node_modules", ".bin"), - dir, - force: false, - forceSharedLockfile: false, - hoistPattern: void 0, - lockfileDir: (_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : dir, - registries: normalize_registries_1.DEFAULT_REGISTRIES, - storeController: opts.storeController, - storeDir: opts.storeDir, - useLockfile: true - }; + module2.exports = baseFlatten; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/flatten.js +var require_flatten = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/flatten.js"(exports2, module2) { + var baseFlatten = require_baseFlatten(); + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; } + module2.exports = flatten; } }); -// ../supi/lib/link/index.js -var require_link = __commonJS({ - "../supi/lib/link/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_flatRest.js +var require_flatRest = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_flatRest.js"(exports2, module2) { + var flatten = require_flatten(); + var overRest = require_overRest(); + var setToString = require_setToString(); + function flatRest(func) { + return setToString(overRest(func, void 0, flatten), func + ""); + } + module2.exports = flatRest; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/pick.js +var require_pick2 = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/pick.js"(exports2, module2) { + var basePick = require_basePick(); + var flatRest = require_flatRest(); + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + module2.exports = pick; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/RunInstallPleaseResolver.js +var require_RunInstallPleaseResolver = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/RunInstallPleaseResolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RunInstallPleaseResolver = void 0; + var MessageName_1 = require_MessageName(); + var Report_1 = require_Report(); + var RunInstallPleaseResolver = class { + constructor(resolver) { + this.resolver = resolver; + } + supportsDescriptor(descriptor, opts) { + return this.resolver.supportsDescriptor(descriptor, opts); + } + supportsLocator(locator, opts) { + return this.resolver.supportsLocator(locator, opts); + } + shouldPersistResolution(locator, opts) { + return this.resolver.shouldPersistResolution(locator, opts); + } + bindDescriptor(descriptor, fromLocator, opts) { + return this.resolver.bindDescriptor(descriptor, fromLocator, opts); + } + getResolutionDependencies(descriptor, opts) { + return this.resolver.getResolutionDependencies(descriptor, opts); + } + async getCandidates(descriptor, dependencies, opts) { + throw new Report_1.ReportError(MessageName_1.MessageName.MISSING_LOCKFILE_ENTRY, `This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`); + } + async getSatisfying(descriptor, dependencies, locators, opts) { + throw new Report_1.ReportError(MessageName_1.MessageName.MISSING_LOCKFILE_ENTRY, `This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`); + } + async resolve(locator, opts) { + throw new Report_1.ReportError(MessageName_1.MessageName.MISSING_LOCKFILE_ENTRY, `This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; }; + exports2.RunInstallPleaseResolver = RunInstallPleaseResolver; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/ThrowReport.js +var require_ThrowReport = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/ThrowReport.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.linkToGlobal = exports2.linkFromGlobal = void 0; - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var get_context_1 = require_lib67(); - var link_bins_1 = require_lib70(); - var lockfile_file_1 = require_lib57(); - var logger_1 = __importStar2(require_lib6()); - var manifest_utils_1 = require_lib15(); - var modules_cleaner_1 = require_lib73(); - var prune_lockfile_1 = require_lib74(); - var read_project_manifest_1 = __importDefault(require_lib19()); - var symlink_dependency_1 = require_lib75(); - var types_1 = require_lib14(); - var normalize_path_1 = __importDefault(require_normalize_path()); - var path_absolute_1 = __importDefault(require_path_absolute()); - var clone_1 = __importDefault(require_clone3()); - var options_1 = require_options2(); - async function link(linkFromPkgs, destModules, maybeOpts) { - var _a, _b, _c; - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); + exports2.ThrowReport = void 0; + var Report_1 = require_Report(); + var ThrowReport = class extends Report_1.Report { + reportCacheHit(locator) { } - const opts = await options_1.extendOptions(maybeOpts); - const ctx = await get_context_1.getContextForSingleImporter(opts.manifest, { - ...opts, - extraBinPaths: [] - }, true); - const importerId = lockfile_file_1.getLockfileImporterId(ctx.lockfileDir, opts.dir); - const currentLockfile = clone_1.default(ctx.currentLockfile); - const linkedPkgs = []; - const specsToUpsert = []; - for (const linkFrom of linkFromPkgs) { - let linkFromPath; - let linkFromAlias; - if (typeof linkFrom === "string") { - linkFromPath = linkFrom; - } else { - linkFromPath = linkFrom.path; - linkFromAlias = linkFrom.alias; - } - const { manifest } = await read_project_manifest_1.default(linkFromPath); - if (typeof linkFrom === "string" && manifest.name === void 0) { - throw new error_1.default("INVALID_PACKAGE_NAME", `Package in ${linkFromPath} must have a name field to be linked`); - } - specsToUpsert.push({ - alias: manifest.name, - pref: manifest_utils_1.getPref(manifest.name, manifest.name, manifest.version, { - pinnedVersion: opts.pinnedVersion - }), - saveType: (_a = opts.targetDependenciesField) !== null && _a !== void 0 ? _a : ctx.manifest && manifest_utils_1.guessDependencyType(manifest.name, ctx.manifest) - }); - const packagePath = normalize_path_1.default(path_1.default.relative(opts.dir, linkFromPath)); - const addLinkOpts = { - linkedPkgName: linkFromAlias !== null && linkFromAlias !== void 0 ? linkFromAlias : manifest.name, - manifest: ctx.manifest, - packagePath - }; - addLinkToLockfile(ctx.currentLockfile.importers[importerId], addLinkOpts); - addLinkToLockfile(ctx.wantedLockfile.importers[importerId], addLinkOpts); - linkedPkgs.push({ - alias: linkFromAlias !== null && linkFromAlias !== void 0 ? linkFromAlias : manifest.name, - manifest, - path: linkFromPath - }); + reportCacheMiss(locator) { } - const updatedCurrentLockfile = prune_lockfile_1.pruneSharedLockfile(ctx.currentLockfile); - const warn = (message2) => logger_1.default.warn({ message: message2, prefix: opts.dir }); - const updatedWantedLockfile = prune_lockfile_1.pruneSharedLockfile(ctx.wantedLockfile, { warn }); - await modules_cleaner_1.prune([ - { - binsDir: opts.binsDir, - id: importerId, - modulesDir: ctx.modulesDir, - rootDir: opts.dir - } - ], { - currentLockfile, - hoistedDependencies: ctx.hoistedDependencies, - hoistedModulesDir: opts.hoistPattern != null ? ctx.hoistedModulesDir : void 0, - include: ctx.include, - lockfileDir: opts.lockfileDir, - publicHoistedModulesDir: opts.publicHoistPattern != null ? ctx.rootModulesDir : void 0, - registries: ctx.registries, - skipped: ctx.skipped, - storeController: opts.storeController, - virtualStoreDir: ctx.virtualStoreDir, - wantedLockfile: updatedCurrentLockfile - }); - for (const { alias, manifest, path } of linkedPkgs) { - const stu = specsToUpsert.find((s) => s.alias === manifest.name); - await symlink_dependency_1.symlinkDirectRootDependency(path, destModules, alias, { - fromDependenciesField: (_b = stu === null || stu === void 0 ? void 0 : stu.saveType) !== null && _b !== void 0 ? _b : opts.targetDependenciesField, - linkedPackage: manifest, - prefix: opts.dir - }); + startSectionSync(opts, cb) { + return cb(); } - const linkToBin = (_c = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.linkToBin) !== null && _c !== void 0 ? _c : path_1.default.join(destModules, ".bin"); - await link_bins_1.linkBinsOfPackages(linkedPkgs.map((p) => ({ manifest: p.manifest, location: p.path })), linkToBin, { - warn: (message2) => logger_1.default.info({ message: message2, prefix: opts.dir }) - }); - let newPkg; - if (opts.targetDependenciesField) { - newPkg = await manifest_utils_1.updateProjectManifestObject(opts.dir, opts.manifest, specsToUpsert); - for (const { alias } of specsToUpsert) { - updatedWantedLockfile.importers[importerId].specifiers[alias] = manifest_utils_1.getSpecFromPackageManifest(newPkg, alias); - } - } else { - newPkg = opts.manifest; + async startSectionPromise(opts, cb) { + return await cb(); } - const lockfileOpts = { forceSharedFormat: opts.forceSharedLockfile }; - if (opts.useLockfile) { - await lockfile_file_1.writeLockfiles({ - currentLockfile: updatedCurrentLockfile, - currentLockfileDir: ctx.virtualStoreDir, - wantedLockfile: updatedWantedLockfile, - wantedLockfileDir: ctx.lockfileDir, - ...lockfileOpts - }); - } else { - await lockfile_file_1.writeCurrentLockfile(ctx.virtualStoreDir, updatedCurrentLockfile, lockfileOpts); + startTimerSync(what, opts, cb) { + const realCb = typeof opts === `function` ? opts : cb; + return realCb(); } - core_loggers_1.summaryLogger.debug({ prefix: opts.dir }); - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.removeListener("data", reporter); + async startTimerPromise(what, opts, cb) { + const realCb = typeof opts === `function` ? opts : cb; + return await realCb(); } - return newPkg; - } - exports2.default = link; - function addLinkToLockfile(projectSnapshot, opts) { - var _a, _b, _c; - const id = `link:${opts.packagePath}`; - let addedTo; - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (!addedTo && ((_b = (_a = opts.manifest) === null || _a === void 0 ? void 0 : _a[depType]) === null || _b === void 0 ? void 0 : _b[opts.linkedPkgName])) { - addedTo = depType; - projectSnapshot[depType] = (_c = projectSnapshot[depType]) !== null && _c !== void 0 ? _c : {}; - projectSnapshot[depType][opts.linkedPkgName] = id; - } else if (projectSnapshot[depType] != null) { - delete projectSnapshot[depType][opts.linkedPkgName]; - } + async startCacheReport(cb) { + return await cb(); } - if (opts.manifest == null) - return; - const availableSpec = manifest_utils_1.getSpecFromPackageManifest(opts.manifest, opts.linkedPkgName); - if (availableSpec) { - projectSnapshot.specifiers[opts.linkedPkgName] = availableSpec; - } else { - delete projectSnapshot.specifiers[opts.linkedPkgName]; + reportSeparator() { } - } - async function linkFromGlobal(pkgNames, linkTo, maybeOpts) { - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); + reportInfo(name, text) { } - const opts = await options_1.extendOptions(maybeOpts); - const globalPkgPath = path_absolute_1.default(maybeOpts.globalDir); - const linkFromPkgs = pkgNames.map((pkgName) => path_1.default.join(globalPkgPath, "node_modules", pkgName)); - const newManifest = await link(linkFromPkgs, path_1.default.join(linkTo, "node_modules"), opts); - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.removeListener("data", reporter); + reportWarning(name, text) { } - return newManifest; - } - exports2.linkFromGlobal = linkFromGlobal; - async function linkToGlobal(linkFrom, maybeOpts) { - var _a; - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); + reportError(name, text) { } - maybeOpts.lockfileDir = (_a = maybeOpts.lockfileDir) !== null && _a !== void 0 ? _a : maybeOpts.globalDir; - const opts = await options_1.extendOptions(maybeOpts); - const globalPkgPath = path_absolute_1.default(maybeOpts.globalDir); - const newManifest = await link([linkFrom], path_1.default.join(globalPkgPath, "node_modules"), { - ...opts, - dir: maybeOpts.globalDir, - linkToBin: maybeOpts.globalBin - }); - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.removeListener("data", reporter); + reportProgress(progress) { + const promise = Promise.resolve().then(async () => { + for await (const {} of progress) { + } + }); + const stop = () => { + }; + return { ...promise, stop }; } - return newManifest; - } - exports2.linkToGlobal = linkToGlobal; + reportJson(data) { + } + async finalize() { + } + }; + exports2.ThrowReport = ThrowReport; } }); -// ../../node_modules/.pnpm/@zkochan+npm-lifecycle@5.1.2/node_modules/@zkochan/npm-lifecycle/lib/spawn.js -var require_spawn = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-lifecycle@5.1.2/node_modules/@zkochan/npm-lifecycle/lib/spawn.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Workspace.js +var require_Workspace = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Workspace.js"(exports2) { "use strict"; - module2.exports = spawn; - var _spawn = require("child_process").spawn; - var EventEmitter = require("events").EventEmitter; - var progressEnabled; - var running = 0; - function startRunning(log2) { - if (progressEnabled == null) - progressEnabled = log2.progressEnabled; - if (progressEnabled) - log2.disableProgress(); - ++running; - } - function stopRunning(log2) { - --running; - if (progressEnabled && running === 0) - log2.enableProgress(); - } - function willCmdOutput(stdio) { - if (stdio === "inherit") - return true; - if (!Array.isArray(stdio)) - return false; - for (let fh = 1; fh <= 2; ++fh) { - if (stdio[fh] === "inherit") + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Workspace = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var globby_1 = tslib_12.__importDefault(require_globby()); + var Manifest_1 = require_Manifest(); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var Workspace = class { + constructor(workspaceCwd, { project }) { + this.workspacesCwds = /* @__PURE__ */ new Set(); + this.project = project; + this.cwd = workspaceCwd; + } + async setup() { + var _a; + this.manifest = (_a = await Manifest_1.Manifest.tryFind(this.cwd)) !== null && _a !== void 0 ? _a : new Manifest_1.Manifest(); + this.relativeCwd = fslib_12.ppath.relative(this.project.cwd, this.cwd) || fslib_12.PortablePath.dot; + const ident = this.manifest.name ? this.manifest.name : structUtils.makeIdent(null, `${this.computeCandidateName()}-${hashUtils.makeHash(this.relativeCwd).substring(0, 6)}`); + const reference = this.manifest.version ? this.manifest.version : `0.0.0`; + this.locator = structUtils.makeLocator(ident, reference); + this.anchoredDescriptor = structUtils.makeDescriptor(this.locator, `${WorkspaceResolver_1.WorkspaceResolver.protocol}${this.relativeCwd}`); + this.anchoredLocator = structUtils.makeLocator(this.locator, `${WorkspaceResolver_1.WorkspaceResolver.protocol}${this.relativeCwd}`); + const patterns = this.manifest.workspaceDefinitions.map(({ pattern }) => pattern); + if (patterns.length === 0) + return; + const relativeCwds = await (0, globby_1.default)(patterns, { + cwd: fslib_12.npath.fromPortablePath(this.cwd), + expandDirectories: false, + onlyDirectories: true, + onlyFiles: false, + ignore: [`**/node_modules`, `**/.git`, `**/.yarn`] + }); + relativeCwds.sort(); + await relativeCwds.reduce(async (previousTask, relativeCwd) => { + const candidateCwd = fslib_12.ppath.resolve(this.cwd, fslib_12.npath.toPortablePath(relativeCwd)); + const exists = await fslib_12.xfs.existsPromise(fslib_12.ppath.join(candidateCwd, `package.json`)); + await previousTask; + if (exists) { + this.workspacesCwds.add(candidateCwd); + } + }, Promise.resolve()); + } + get anchoredPackage() { + const pkg = this.project.storedPackages.get(this.anchoredLocator.locatorHash); + if (!pkg) + throw new Error(`Assertion failed: Expected workspace ${structUtils.prettyWorkspace(this.project.configuration, this)} (${formatUtils.pretty(this.project.configuration, fslib_12.ppath.join(this.cwd, fslib_12.Filename.manifest), formatUtils.Type.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`); + return pkg; + } + accepts(range) { + var _a; + const protocolIndex = range.indexOf(`:`); + const protocol = protocolIndex !== -1 ? range.slice(0, protocolIndex + 1) : null; + const pathname = protocolIndex !== -1 ? range.slice(protocolIndex + 1) : range; + if (protocol === WorkspaceResolver_1.WorkspaceResolver.protocol && fslib_12.ppath.normalize(pathname) === this.relativeCwd) return true; - if (stdio[fh] === 1 || stdio[fh] === 2) + if (protocol === WorkspaceResolver_1.WorkspaceResolver.protocol && (pathname === `*` || pathname === `^` || pathname === `~`)) return true; + const semverRange = semverUtils.validRange(pathname); + if (!semverRange) + return false; + if (protocol === WorkspaceResolver_1.WorkspaceResolver.protocol) + return semverRange.test((_a = this.manifest.version) !== null && _a !== void 0 ? _a : `0.0.0`); + if (!this.project.configuration.get(`enableTransparentWorkspaces`)) + return false; + if (this.manifest.version !== null) + return semverRange.test(this.manifest.version); + return false; } - return false; - } - function spawn(cmd, args2, options, log2) { - const cmdWillOutput = willCmdOutput(options && options.stdio); - if (cmdWillOutput) - startRunning(log2); - const raw = _spawn(cmd, args2, options); - const cooked = new EventEmitter(); - raw.on("error", function(er) { - if (cmdWillOutput) - stopRunning(log2); - er.file = cmd; - cooked.emit("error", er); - }).on("close", function(code, signal) { - if (cmdWillOutput) - stopRunning(log2); - if (code === 127) { - const er = new Error("spawn ENOENT"); - er.code = "ENOENT"; - er.errno = "ENOENT"; - er.syscall = "spawn"; - er.file = cmd; - cooked.emit("error", er); + computeCandidateName() { + if (this.cwd === this.project.cwd) { + return `root-workspace`; } else { - cooked.emit("close", code, signal); - } - }); - cooked.stdin = raw.stdin; - cooked.stdout = raw.stdout; - cooked.stderr = raw.stderr; - cooked.kill = function(sig) { - return raw.kill(sig); - }; - return cooked; - } + return `${fslib_12.ppath.basename(this.cwd)}` || `unnamed-workspace`; + } + } + /** + * Find workspaces marked as dependencies/devDependencies of the current workspace recursively. + * + * @param rootWorkspace root workspace + * @param project project + * + * @returns all the workspaces marked as dependencies + */ + getRecursiveWorkspaceDependencies({ dependencies = Manifest_1.Manifest.hardDependencies } = {}) { + const workspaceList = /* @__PURE__ */ new Set(); + const visitWorkspace = (workspace) => { + for (const dependencyType of dependencies) { + for (const descriptor of workspace.manifest[dependencyType].values()) { + const foundWorkspace = this.project.tryWorkspaceByDescriptor(descriptor); + if (foundWorkspace === null || workspaceList.has(foundWorkspace)) + continue; + workspaceList.add(foundWorkspace); + visitWorkspace(foundWorkspace); + } + } + }; + visitWorkspace(this); + return workspaceList; + } + /** + * Find workspaces which include the current workspace as a dependency/devDependency recursively. + * + * @param rootWorkspace root workspace + * @param project project + * + * @returns all the workspaces marked as dependents + */ + getRecursiveWorkspaceDependents({ dependencies = Manifest_1.Manifest.hardDependencies } = {}) { + const workspaceList = /* @__PURE__ */ new Set(); + const visitWorkspace = (workspace) => { + for (const projectWorkspace of this.project.workspaces) { + const isDependent = dependencies.some((dependencyType) => { + return [...projectWorkspace.manifest[dependencyType].values()].some((descriptor) => { + const foundWorkspace = this.project.tryWorkspaceByDescriptor(descriptor); + return foundWorkspace !== null && structUtils.areLocatorsEqual(foundWorkspace.anchoredLocator, workspace.anchoredLocator); + }); + }); + if (isDependent && !workspaceList.has(projectWorkspace)) { + workspaceList.add(projectWorkspace); + visitWorkspace(projectWorkspace); + } + } + }; + visitWorkspace(this); + return workspaceList; + } + /** + * Retrieves all the child workspaces of a given root workspace recursively + * + * @param rootWorkspace root workspace + * @param project project + * + * @returns all the child workspaces + */ + getRecursiveWorkspaceChildren() { + const workspaceList = []; + for (const childWorkspaceCwd of this.workspacesCwds) { + const childWorkspace = this.project.workspacesByCwd.get(childWorkspaceCwd); + if (childWorkspace) { + workspaceList.push(childWorkspace, ...childWorkspace.getRecursiveWorkspaceChildren()); + } + } + return workspaceList; + } + async persistManifest() { + const data = {}; + this.manifest.exportTo(data); + const path2 = fslib_12.ppath.join(this.cwd, Manifest_1.Manifest.fileName); + const content = `${JSON.stringify(data, null, this.manifest.indent)} +`; + await fslib_12.xfs.changeFilePromise(path2, content, { + automaticNewlines: true + }); + this.manifest.raw = data; + } + }; + exports2.Workspace = Workspace; } }); -// ../../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.js -var require_tslib = __commonJS({ - "../../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.js"(exports2, module2) { - var __extends; - var __assign; - var __rest; - var __decorate; - var __param; - var __metadata; - var __awaiter; - var __generator; - var __exportStar; - var __values; - var __read; - var __spread; - var __spreadArrays; - var __await; - var __asyncGenerator; - var __asyncDelegator; - var __asyncValues; - var __makeTemplateObject; - var __importStar2; - var __importDefault; - var __classPrivateFieldGet; - var __classPrivateFieldSet; - var __createBinding2; - (function(factory) { - var root = typeof global === "object" ? global : typeof self === "object" ? self : typeof this === "object" ? this : {}; - if (typeof define === "function" && define.amd) { - define("tslib", ["exports"], function(exports3) { - factory(createExporter(root, createExporter(exports3))); - }); - } else if (typeof module2 === "object" && typeof module2.exports === "object") { - factory(createExporter(root, createExporter(module2.exports))); - } else { - factory(createExporter(root)); - } - function createExporter(exports3, previous) { - if (exports3 !== root) { - if (typeof Object.create === "function") { - Object.defineProperty(exports3, "__esModule", { value: true }); - } else { - exports3.__esModule = true; +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Project.js +var require_Project = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/Project.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Project = exports2.InstallMode = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var fslib_2 = require_lib50(); + var parsers_1 = require_lib122(); + var clipanion_12 = require_advanced(); + var crypto_1 = require("crypto"); + var diff_1 = require_lib125(); + var pick_1 = tslib_12.__importDefault(require_pick2()); + var p_limit_12 = tslib_12.__importDefault(require_p_limit2()); + var semver_12 = tslib_12.__importDefault(require_semver2()); + var util_1 = require("util"); + var v8_1 = tslib_12.__importDefault(require("v8")); + var zlib_1 = tslib_12.__importDefault(require("zlib")); + var Configuration_1 = require_Configuration(); + var Installer_1 = require_Installer(); + var LegacyMigrationResolver_1 = require_LegacyMigrationResolver(); + var LockfileResolver_1 = require_LockfileResolver(); + var Manifest_1 = require_Manifest(); + var MessageName_1 = require_MessageName(); + var MultiResolver_1 = require_MultiResolver(); + var Report_1 = require_Report(); + var RunInstallPleaseResolver_1 = require_RunInstallPleaseResolver(); + var ThrowReport_1 = require_ThrowReport(); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + var Workspace_1 = require_Workspace(); + var folderUtils_1 = require_folderUtils(); + var formatUtils = tslib_12.__importStar(require_formatUtils()); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var nodeUtils = tslib_12.__importStar(require_nodeUtils()); + var scriptUtils = tslib_12.__importStar(require_scriptUtils()); + var semverUtils = tslib_12.__importStar(require_semverUtils()); + var structUtils = tslib_12.__importStar(require_structUtils()); + var types_1 = require_types5(); + var types_2 = require_types5(); + var LOCKFILE_VERSION = 7; + var INSTALL_STATE_VERSION = 2; + var MULTIPLE_KEYS_REGEXP = / *, */g; + var TRAILING_SLASH_REGEXP = /\/$/; + var FETCHER_CONCURRENCY = 32; + var gzip = (0, util_1.promisify)(zlib_1.default.gzip); + var gunzip = (0, util_1.promisify)(zlib_1.default.gunzip); + var InstallMode; + (function(InstallMode2) { + InstallMode2["UpdateLockfile"] = "update-lockfile"; + InstallMode2["SkipBuild"] = "skip-build"; + })(InstallMode || (exports2.InstallMode = InstallMode = {})); + var INSTALL_STATE_FIELDS = { + restoreLinkersCustomData: [ + `linkersCustomData` + ], + restoreResolutions: [ + `accessibleLocators`, + `conditionalLocators`, + `disabledLocators`, + `optionalBuilds`, + `storedDescriptors`, + `storedResolutions`, + `storedPackages`, + `lockFileChecksum` + ], + restoreBuildState: [ + `storedBuildState` + ] + }; + var makeLockfileChecksum = (normalizedContent) => hashUtils.makeHash(`${INSTALL_STATE_VERSION}`, normalizedContent); + var Project = class { + static async find(configuration, startingCwd) { + var _a, _b, _c; + if (!configuration.projectCwd) + throw new clipanion_12.UsageError(`No project found in ${startingCwd}`); + let packageCwd = configuration.projectCwd; + let nextCwd = startingCwd; + let currentCwd = null; + while (currentCwd !== configuration.projectCwd) { + currentCwd = nextCwd; + if (fslib_2.xfs.existsSync(fslib_2.ppath.join(currentCwd, fslib_2.Filename.manifest))) { + packageCwd = currentCwd; + break; + } + nextCwd = fslib_2.ppath.dirname(currentCwd); + } + const project = new Project(configuration.projectCwd, { configuration }); + (_a = Configuration_1.Configuration.telemetry) === null || _a === void 0 ? void 0 : _a.reportProject(project.cwd); + await project.setupResolutions(); + await project.setupWorkspaces(); + (_b = Configuration_1.Configuration.telemetry) === null || _b === void 0 ? void 0 : _b.reportWorkspaceCount(project.workspaces.length); + (_c = Configuration_1.Configuration.telemetry) === null || _c === void 0 ? void 0 : _c.reportDependencyCount(project.workspaces.reduce((sum, workspace2) => sum + workspace2.manifest.dependencies.size + workspace2.manifest.devDependencies.size, 0)); + const workspace = project.tryWorkspaceByCwd(packageCwd); + if (workspace) + return { project, workspace, locator: workspace.anchoredLocator }; + const locator = await project.findLocatorForLocation(`${packageCwd}/`, { strict: true }); + if (locator) + return { project, locator, workspace: null }; + const projectCwdLog = formatUtils.pretty(configuration, project.cwd, formatUtils.Type.PATH); + const packageCwdLog = formatUtils.pretty(configuration, fslib_2.ppath.relative(project.cwd, packageCwd), formatUtils.Type.PATH); + const unintendedProjectLog = `- If ${projectCwdLog} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`; + const missingWorkspaceLog = `- If ${projectCwdLog} is intended to be a project, it might be that you forgot to list ${packageCwdLog} in its workspace configuration.`; + const decorrelatedProjectLog = `- Finally, if ${projectCwdLog} is fine and you intend ${packageCwdLog} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`; + throw new clipanion_12.UsageError(`The nearest package directory (${formatUtils.pretty(configuration, packageCwd, formatUtils.Type.PATH)}) doesn't seem to be part of the project declared in ${formatUtils.pretty(configuration, project.cwd, formatUtils.Type.PATH)}. + +${[ + unintendedProjectLog, + missingWorkspaceLog, + decorrelatedProjectLog + ].join(` +`)}`); + } + constructor(projectCwd, { configuration }) { + this.resolutionAliases = /* @__PURE__ */ new Map(); + this.workspaces = []; + this.workspacesByCwd = /* @__PURE__ */ new Map(); + this.workspacesByIdent = /* @__PURE__ */ new Map(); + this.storedResolutions = /* @__PURE__ */ new Map(); + this.storedDescriptors = /* @__PURE__ */ new Map(); + this.storedPackages = /* @__PURE__ */ new Map(); + this.storedChecksums = /* @__PURE__ */ new Map(); + this.storedBuildState = /* @__PURE__ */ new Map(); + this.accessibleLocators = /* @__PURE__ */ new Set(); + this.conditionalLocators = /* @__PURE__ */ new Set(); + this.disabledLocators = /* @__PURE__ */ new Set(); + this.originalPackages = /* @__PURE__ */ new Map(); + this.optionalBuilds = /* @__PURE__ */ new Set(); + this.lockfileNeedsRefresh = false; + this.peerRequirements = /* @__PURE__ */ new Map(); + this.linkersCustomData = /* @__PURE__ */ new Map(); + this.lockFileChecksum = null; + this.installStateChecksum = null; + this.configuration = configuration; + this.cwd = projectCwd; + } + async setupResolutions() { + var _a; + this.storedResolutions = /* @__PURE__ */ new Map(); + this.storedDescriptors = /* @__PURE__ */ new Map(); + this.storedPackages = /* @__PURE__ */ new Map(); + this.lockFileChecksum = null; + const lockfilePath = fslib_2.ppath.join(this.cwd, this.configuration.get(`lockfileFilename`)); + const defaultLanguageName = this.configuration.get(`defaultLanguageName`); + if (fslib_2.xfs.existsSync(lockfilePath)) { + const content = await fslib_2.xfs.readFilePromise(lockfilePath, `utf8`); + this.lockFileChecksum = makeLockfileChecksum(content); + const parsed = (0, parsers_1.parseSyml)(content); + if (parsed.__metadata) { + const lockfileVersion = parsed.__metadata.version; + const cacheKey = parsed.__metadata.cacheKey; + this.lockfileNeedsRefresh = lockfileVersion < LOCKFILE_VERSION; + for (const key of Object.keys(parsed)) { + if (key === `__metadata`) + continue; + const data = parsed[key]; + if (typeof data.resolution === `undefined`) + throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${key})`); + const locator = structUtils.parseLocator(data.resolution, true); + const manifest = new Manifest_1.Manifest(); + manifest.load(data, { yamlCompatibilityMode: true }); + const version2 = manifest.version; + const languageName = manifest.languageName || defaultLanguageName; + const linkType = data.linkType.toUpperCase(); + const conditions = (_a = data.conditions) !== null && _a !== void 0 ? _a : null; + const dependencies = manifest.dependencies; + const peerDependencies = manifest.peerDependencies; + const dependenciesMeta = manifest.dependenciesMeta; + const peerDependenciesMeta = manifest.peerDependenciesMeta; + const bin = manifest.bin; + if (data.checksum != null) { + const checksum = typeof cacheKey !== `undefined` && !data.checksum.includes(`/`) ? `${cacheKey}/${data.checksum}` : data.checksum; + this.storedChecksums.set(locator.locatorHash, checksum); + } + const pkg = { ...locator, version: version2, languageName, linkType, conditions, dependencies, peerDependencies, dependenciesMeta, peerDependenciesMeta, bin }; + this.originalPackages.set(pkg.locatorHash, pkg); + for (const entry of key.split(MULTIPLE_KEYS_REGEXP)) { + let descriptor = structUtils.parseDescriptor(entry); + if (lockfileVersion <= 6) { + descriptor = this.configuration.normalizeDependency(descriptor); + descriptor = structUtils.makeDescriptor(descriptor, descriptor.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/, `$1npm%3A`)); + } + this.storedDescriptors.set(descriptor.descriptorHash, descriptor); + this.storedResolutions.set(descriptor.descriptorHash, locator.locatorHash); + } + } } } - return function(id, v) { - return exports3[id] = previous ? previous(id, v) : v; - }; } - })(function(exporter) { - var extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d, b) { - d.__proto__ = b; - } || function(d, b) { - for (var p in b) - if (b.hasOwnProperty(p)) - d[p] = b[p]; - }; - __extends = function(d, b) { - extendStatics(d, b); - function __() { - this.constructor = d; + async setupWorkspaces() { + this.workspaces = []; + this.workspacesByCwd = /* @__PURE__ */ new Map(); + this.workspacesByIdent = /* @__PURE__ */ new Map(); + const pathsChecked = /* @__PURE__ */ new Set(); + const limitSetup = (0, p_limit_12.default)(4); + const loadWorkspaceReducer = async (previousTask, workspaceCwd) => { + if (pathsChecked.has(workspaceCwd)) + return previousTask; + pathsChecked.add(workspaceCwd); + const workspace = new Workspace_1.Workspace(workspaceCwd, { project: this }); + await limitSetup(() => workspace.setup()); + const nextTask = previousTask.then(() => { + this.addWorkspace(workspace); + }); + return Array.from(workspace.workspacesCwds).reduce(loadWorkspaceReducer, nextTask); + }; + await loadWorkspaceReducer(Promise.resolve(), this.cwd); + } + addWorkspace(workspace) { + const dup = this.workspacesByIdent.get(workspace.locator.identHash); + if (typeof dup !== `undefined`) + throw new Error(`Duplicate workspace name ${structUtils.prettyIdent(this.configuration, workspace.locator)}: ${fslib_12.npath.fromPortablePath(workspace.cwd)} conflicts with ${fslib_12.npath.fromPortablePath(dup.cwd)}`); + this.workspaces.push(workspace); + this.workspacesByCwd.set(workspace.cwd, workspace); + this.workspacesByIdent.set(workspace.locator.identHash, workspace); + } + get topLevelWorkspace() { + return this.getWorkspaceByCwd(this.cwd); + } + tryWorkspaceByCwd(workspaceCwd) { + if (!fslib_2.ppath.isAbsolute(workspaceCwd)) + workspaceCwd = fslib_2.ppath.resolve(this.cwd, workspaceCwd); + workspaceCwd = fslib_2.ppath.normalize(workspaceCwd).replace(/\/+$/, ``); + const workspace = this.workspacesByCwd.get(workspaceCwd); + if (!workspace) + return null; + return workspace; + } + getWorkspaceByCwd(workspaceCwd) { + const workspace = this.tryWorkspaceByCwd(workspaceCwd); + if (!workspace) + throw new Error(`Workspace not found (${workspaceCwd})`); + return workspace; + } + tryWorkspaceByFilePath(filePath) { + let bestWorkspace = null; + for (const workspace of this.workspaces) { + const rel = fslib_2.ppath.relative(workspace.cwd, filePath); + if (rel.startsWith(`../`)) + continue; + if (bestWorkspace && bestWorkspace.cwd.length >= workspace.cwd.length) + continue; + bestWorkspace = workspace; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - __assign = Object.assign || function(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; + if (!bestWorkspace) + return null; + return bestWorkspace; + } + getWorkspaceByFilePath(filePath) { + const workspace = this.tryWorkspaceByFilePath(filePath); + if (!workspace) + throw new Error(`Workspace not found (${filePath})`); + return workspace; + } + tryWorkspaceByIdent(ident) { + const workspace = this.workspacesByIdent.get(ident.identHash); + if (typeof workspace === `undefined`) + return null; + return workspace; + } + getWorkspaceByIdent(ident) { + const workspace = this.tryWorkspaceByIdent(ident); + if (!workspace) + throw new Error(`Workspace not found (${structUtils.prettyIdent(this.configuration, ident)})`); + return workspace; + } + tryWorkspaceByDescriptor(descriptor) { + if (descriptor.range.startsWith(WorkspaceResolver_1.WorkspaceResolver.protocol)) { + const specifier = descriptor.range.slice(WorkspaceResolver_1.WorkspaceResolver.protocol.length); + if (specifier !== `^` && specifier !== `~` && specifier !== `*` && !semverUtils.validRange(specifier)) { + return this.tryWorkspaceByCwd(specifier); + } } - return t; - }; - __rest = function(s, e) { - var t = {}; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; + const workspace = this.tryWorkspaceByIdent(descriptor); + if (workspace === null) + return null; + if (structUtils.isVirtualDescriptor(descriptor)) + descriptor = structUtils.devirtualizeDescriptor(descriptor); + if (!workspace.accepts(descriptor.range)) + return null; + return workspace; + } + getWorkspaceByDescriptor(descriptor) { + const workspace = this.tryWorkspaceByDescriptor(descriptor); + if (workspace === null) + throw new Error(`Workspace not found (${structUtils.prettyDescriptor(this.configuration, descriptor)})`); + return workspace; + } + tryWorkspaceByLocator(locator) { + const workspace = this.tryWorkspaceByIdent(locator); + if (workspace === null) + return null; + if (structUtils.isVirtualLocator(locator)) + locator = structUtils.devirtualizeLocator(locator); + if (workspace.locator.locatorHash !== locator.locatorHash && workspace.anchoredLocator.locatorHash !== locator.locatorHash) + return null; + return workspace; + } + getWorkspaceByLocator(locator) { + const workspace = this.tryWorkspaceByLocator(locator); + if (!workspace) + throw new Error(`Workspace not found (${structUtils.prettyLocator(this.configuration, locator)})`); + return workspace; + } + deleteDescriptor(descriptorHash) { + this.storedResolutions.delete(descriptorHash); + this.storedDescriptors.delete(descriptorHash); + } + deleteLocator(locatorHash) { + this.originalPackages.delete(locatorHash); + this.storedPackages.delete(locatorHash); + this.accessibleLocators.delete(locatorHash); + } + forgetResolution(dataStructure) { + if (`descriptorHash` in dataStructure) { + const locatorHash = this.storedResolutions.get(dataStructure.descriptorHash); + this.deleteDescriptor(dataStructure.descriptorHash); + const remainingResolutions = new Set(this.storedResolutions.values()); + if (typeof locatorHash !== `undefined` && !remainingResolutions.has(locatorHash)) { + this.deleteLocator(locatorHash); } - return t; - }; - __decorate = function(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") - r = Reflect.decorate(decorators, target, key, desc); - else - for (var i = decorators.length - 1; i >= 0; i--) - if (d = decorators[i]) - r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - }; - __param = function(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; - }; - __metadata = function(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") - return Reflect.metadata(metadataKey, metadataValue); - }; - __awaiter = function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); + if (`locatorHash` in dataStructure) { + this.deleteLocator(dataStructure.locatorHash); + for (const [descriptorHash, locatorHash] of this.storedResolutions) { + if (locatorHash === dataStructure.locatorHash) { + this.deleteDescriptor(descriptorHash); } } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); + } + } + forgetTransientResolutions() { + const resolver = this.configuration.makeResolver(); + const reverseLookup = /* @__PURE__ */ new Map(); + for (const [descriptorHash, locatorHash] of this.storedResolutions.entries()) { + let descriptorHashes = reverseLookup.get(locatorHash); + if (!descriptorHashes) + reverseLookup.set(locatorHash, descriptorHashes = /* @__PURE__ */ new Set()); + descriptorHashes.add(descriptorHash); + } + for (const pkg of this.originalPackages.values()) { + let shouldPersistResolution; + try { + shouldPersistResolution = resolver.shouldPersistResolution(pkg, { project: this, resolver }); + } catch { + shouldPersistResolution = false; + } + if (!shouldPersistResolution) { + this.deleteLocator(pkg.locatorHash); + const descriptors = reverseLookup.get(pkg.locatorHash); + if (descriptors) { + reverseLookup.delete(pkg.locatorHash); + for (const descriptorHash of descriptors) { + this.deleteDescriptor(descriptorHash); + } + } + } + } + } + forgetVirtualResolutions() { + for (const pkg of this.storedPackages.values()) { + for (const [dependencyHash, dependency] of pkg.dependencies) { + if (structUtils.isVirtualDescriptor(dependency)) { + pkg.dependencies.set(dependencyHash, structUtils.devirtualizeDescriptor(dependency)); + } + } + } + } + getDependencyMeta(ident, version2) { + const dependencyMeta = {}; + const dependenciesMeta = this.topLevelWorkspace.manifest.dependenciesMeta; + const dependencyMetaSet = dependenciesMeta.get(structUtils.stringifyIdent(ident)); + if (!dependencyMetaSet) + return dependencyMeta; + const defaultMeta = dependencyMetaSet.get(null); + if (defaultMeta) + Object.assign(dependencyMeta, defaultMeta); + if (version2 === null || !semver_12.default.valid(version2)) + return dependencyMeta; + for (const [range, meta] of dependencyMetaSet) + if (range !== null && range === version2) + Object.assign(dependencyMeta, meta); + return dependencyMeta; + } + async findLocatorForLocation(cwd, { strict = false } = {}) { + const report = new ThrowReport_1.ThrowReport(); + const linkers = this.configuration.getLinkers(); + const linkerOptions = { project: this, report }; + for (const linker of linkers) { + const locator = await linker.findPackageLocator(cwd, linkerOptions); + if (locator) { + if (strict) { + const location = await linker.findPackageLocation(locator, linkerOptions); + if (location.replace(TRAILING_SLASH_REGEXP, ``) !== cwd.replace(TRAILING_SLASH_REGEXP, ``)) { + continue; + } } + return locator; + } + } + return null; + } + async loadUserConfig() { + const configPath = fslib_2.ppath.join(this.cwd, `yarn.config.js`); + if (!await fslib_2.xfs.existsPromise(configPath)) + return null; + return miscUtils.dynamicRequire(configPath); + } + async preparePackage(originalPkg, { resolver, resolveOptions }) { + const pkg = this.configuration.normalizePackage(originalPkg); + for (const [identHash, descriptor] of pkg.dependencies) { + const dependency = await this.configuration.reduceHook((hooks) => { + return hooks.reduceDependency; + }, descriptor, this, pkg, descriptor, { + resolver, + resolveOptions + }); + if (!structUtils.areIdentsEqual(descriptor, dependency)) + throw new Error(`Assertion failed: The descriptor ident cannot be changed through aliases`); + const bound = resolver.bindDescriptor(dependency, pkg, resolveOptions); + pkg.dependencies.set(identHash, bound); + } + return pkg; + } + async resolveEverything(opts) { + if (!this.workspacesByCwd || !this.workspacesByIdent) + throw new Error(`Workspaces must have been setup before calling this function`); + this.forgetVirtualResolutions(); + if (!opts.lockfileOnly) + this.forgetTransientResolutions(); + const realResolver = opts.resolver || this.configuration.makeResolver(); + const legacyMigrationResolver = new LegacyMigrationResolver_1.LegacyMigrationResolver(realResolver); + await legacyMigrationResolver.setup(this, { report: opts.report }); + const resolverChain = opts.lockfileOnly ? [new RunInstallPleaseResolver_1.RunInstallPleaseResolver(realResolver)] : [legacyMigrationResolver, realResolver]; + const resolver = new MultiResolver_1.MultiResolver([ + new LockfileResolver_1.LockfileResolver(realResolver), + ...resolverChain + ]); + const noLockfileResolver = new MultiResolver_1.MultiResolver([ + ...resolverChain + ]); + const fetcher = this.configuration.makeFetcher(); + const resolveOptions = opts.lockfileOnly ? { project: this, report: opts.report, resolver } : { project: this, report: opts.report, resolver, fetchOptions: { project: this, cache: opts.cache, checksums: this.storedChecksums, report: opts.report, fetcher, cacheOptions: { mirrorWriteOnly: true } } }; + const allDescriptors = /* @__PURE__ */ new Map(); + const allPackages = /* @__PURE__ */ new Map(); + const allResolutions = /* @__PURE__ */ new Map(); + const originalPackages = /* @__PURE__ */ new Map(); + const packageResolutionPromises = /* @__PURE__ */ new Map(); + const descriptorResolutionPromises = /* @__PURE__ */ new Map(); + const dependencyResolutionLocator = this.topLevelWorkspace.anchoredLocator; + const resolutionDependencies = /* @__PURE__ */ new Set(); + const resolutionQueue = []; + const currentArchitecture = nodeUtils.getArchitectureSet(); + const supportedArchitectures = this.configuration.getSupportedArchitectures(); + await opts.report.startProgressPromise(Report_1.Report.progressViaTitle(), async (progress) => { + const startPackageResolution = async (locator) => { + const originalPkg = await miscUtils.prettifyAsyncErrors(async () => { + return await resolver.resolve(locator, resolveOptions); + }, (message2) => { + return `${structUtils.prettyLocator(this.configuration, locator)}: ${message2}`; + }); + if (!structUtils.areLocatorsEqual(locator, originalPkg)) + throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${structUtils.prettyLocator(this.configuration, locator)} to ${structUtils.prettyLocator(this.configuration, originalPkg)})`); + originalPackages.set(originalPkg.locatorHash, originalPkg); + const pkg = await this.preparePackage(originalPkg, { resolver, resolveOptions }); + const dependencyResolutions = miscUtils.allSettledSafe([...pkg.dependencies.values()].map((descriptor) => { + return scheduleDescriptorResolution(descriptor); + })); + resolutionQueue.push(dependencyResolutions); + dependencyResolutions.catch(() => { + }); + allPackages.set(pkg.locatorHash, pkg); + return pkg; + }; + const schedulePackageResolution = async (locator) => { + const promise = packageResolutionPromises.get(locator.locatorHash); + if (typeof promise !== `undefined`) + return promise; + const newPromise = Promise.resolve().then(() => startPackageResolution(locator)); + packageResolutionPromises.set(locator.locatorHash, newPromise); + return newPromise; + }; + const startDescriptorAliasing = async (descriptor, alias) => { + const resolution = await scheduleDescriptorResolution(alias); + allDescriptors.set(descriptor.descriptorHash, descriptor); + allResolutions.set(descriptor.descriptorHash, resolution.locatorHash); + return resolution; + }; + const startDescriptorResolution = async (descriptor) => { + progress.setTitle(structUtils.prettyDescriptor(this.configuration, descriptor)); + const alias = this.resolutionAliases.get(descriptor.descriptorHash); + if (typeof alias !== `undefined`) + return startDescriptorAliasing(descriptor, this.storedDescriptors.get(alias)); + const resolutionDependenciesList = resolver.getResolutionDependencies(descriptor, resolveOptions); + const resolvedDependencies = Object.fromEntries(await miscUtils.allSettledSafe(Object.entries(resolutionDependenciesList).map(async ([dependencyName, dependency]) => { + const bound = resolver.bindDescriptor(dependency, dependencyResolutionLocator, resolveOptions); + const resolvedPackage = await scheduleDescriptorResolution(bound); + resolutionDependencies.add(resolvedPackage.locatorHash); + return [dependencyName, resolvedPackage]; + }))); + const candidateResolutions = await miscUtils.prettifyAsyncErrors(async () => { + return await resolver.getCandidates(descriptor, resolvedDependencies, resolveOptions); + }, (message2) => { + return `${structUtils.prettyDescriptor(this.configuration, descriptor)}: ${message2}`; + }); + const finalResolution = candidateResolutions[0]; + if (typeof finalResolution === `undefined`) + throw new Report_1.ReportError(MessageName_1.MessageName.RESOLUTION_FAILED, `${structUtils.prettyDescriptor(this.configuration, descriptor)}: No candidates found`); + if (opts.checkResolutions) { + const { locators } = await noLockfileResolver.getSatisfying(descriptor, resolvedDependencies, [finalResolution], { ...resolveOptions, resolver: noLockfileResolver }); + if (!locators.find((locator) => locator.locatorHash === finalResolution.locatorHash)) { + throw new Report_1.ReportError(MessageName_1.MessageName.RESOLUTION_MISMATCH, `Invalid resolution ${structUtils.prettyResolution(this.configuration, descriptor, finalResolution)}`); + } + } + allDescriptors.set(descriptor.descriptorHash, descriptor); + allResolutions.set(descriptor.descriptorHash, finalResolution.locatorHash); + return schedulePackageResolution(finalResolution); + }; + const scheduleDescriptorResolution = (descriptor) => { + const promise = descriptorResolutionPromises.get(descriptor.descriptorHash); + if (typeof promise !== `undefined`) + return promise; + allDescriptors.set(descriptor.descriptorHash, descriptor); + const newPromise = Promise.resolve().then(() => startDescriptorResolution(descriptor)); + descriptorResolutionPromises.set(descriptor.descriptorHash, newPromise); + return newPromise; + }; + for (const workspace of this.workspaces) { + const workspaceDescriptor = workspace.anchoredDescriptor; + resolutionQueue.push(scheduleDescriptorResolution(workspaceDescriptor)); } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + while (resolutionQueue.length > 0) { + const copy = [...resolutionQueue]; + resolutionQueue.length = 0; + await miscUtils.allSettledSafe(copy); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); }); - }; - __generator = function(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; + const volatileDescriptors = new Set(this.resolutionAliases.values()); + const optionalBuilds = new Set(allPackages.keys()); + const accessibleLocators = /* @__PURE__ */ new Set(); + const peerRequirements = /* @__PURE__ */ new Map(); + applyVirtualResolutionMutations({ + project: this, + report: opts.report, + accessibleLocators, + volatileDescriptors, + optionalBuilds, + peerRequirements, + allDescriptors, + allResolutions, + allPackages + }); + for (const locatorHash of resolutionDependencies) + optionalBuilds.delete(locatorHash); + for (const descriptorHash of volatileDescriptors) { + allDescriptors.delete(descriptorHash); + allResolutions.delete(descriptorHash); + } + const conditionalLocators = /* @__PURE__ */ new Set(); + const disabledLocators = /* @__PURE__ */ new Set(); + for (const pkg of allPackages.values()) { + if (pkg.conditions == null) + continue; + if (!optionalBuilds.has(pkg.locatorHash)) + continue; + if (!structUtils.isPackageCompatible(pkg, supportedArchitectures)) { + if (structUtils.isPackageCompatible(pkg, currentArchitecture)) { + opts.report.reportWarningOnce(MessageName_1.MessageName.GHOST_ARCHITECTURE, `${structUtils.prettyLocator(this.configuration, pkg)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${formatUtils.pretty(this.configuration, `supportedArchitectures`, formatUtils.Type.SETTING)} setting`); + } + disabledLocators.add(pkg.locatorHash); + } + conditionalLocators.add(pkg.locatorHash); + } + this.storedResolutions = allResolutions; + this.storedDescriptors = allDescriptors; + this.storedPackages = allPackages; + this.accessibleLocators = accessibleLocators; + this.conditionalLocators = conditionalLocators; + this.disabledLocators = disabledLocators; + this.originalPackages = originalPackages; + this.optionalBuilds = optionalBuilds; + this.peerRequirements = peerRequirements; + } + async fetchEverything({ cache, report, fetcher: userFetcher, mode }) { + const cacheOptions = { + mockedPackages: this.disabledLocators, + unstablePackages: this.conditionalLocators + }; + const fetcher = userFetcher || this.configuration.makeFetcher(); + const fetcherOptions = { checksums: this.storedChecksums, project: this, cache, fetcher, report, cacheOptions }; + let locatorHashes = Array.from(new Set(miscUtils.sortMap(this.storedResolutions.values(), [ + (locatorHash) => { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The locator should have been registered`); + return structUtils.stringifyLocator(pkg); + } + ]))); + if (mode === InstallMode.UpdateLockfile) + locatorHashes = locatorHashes.filter((locatorHash) => !this.storedChecksums.has(locatorHash)); + let firstError = false; + const progress = Report_1.Report.progressViaCounter(locatorHashes.length); + await report.reportProgress(progress); + const limit = (0, p_limit_12.default)(FETCHER_CONCURRENCY); + await report.startCacheReport(async () => { + await miscUtils.allSettledSafe(locatorHashes.map((locatorHash) => limit(async () => { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The locator should have been registered`); + if (structUtils.isVirtualLocator(pkg)) + return; + let fetchResult; + try { + fetchResult = await fetcher.fetch(pkg, fetcherOptions); + } catch (error) { + error.message = `${structUtils.prettyLocator(this.configuration, pkg)}: ${error.message}`; + report.reportExceptionOnce(error); + firstError = error; + return; + } + if (fetchResult.checksum != null) + this.storedChecksums.set(pkg.locatorHash, fetchResult.checksum); + else + this.storedChecksums.delete(pkg.locatorHash); + if (fetchResult.releaseFs) { + fetchResult.releaseFs(); + } + }).finally(() => { + progress.tick(); + }))); + }); + if (firstError) { + throw firstError; } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) + } + async linkEverything({ cache, report, fetcher: optFetcher, mode }) { + var _a, _b, _c; + const cacheOptions = { + mockedPackages: this.disabledLocators, + unstablePackages: this.conditionalLocators, + skipIntegrityCheck: true + }; + const fetcher = optFetcher || this.configuration.makeFetcher(); + const fetcherOptions = { checksums: this.storedChecksums, project: this, cache, fetcher, report, cacheOptions }; + const linkers = this.configuration.getLinkers(); + const linkerOptions = { project: this, report }; + const installers = new Map(linkers.map((linker) => { + const installer = linker.makeInstaller(linkerOptions); + const customDataKey = linker.getCustomDataKey(); + const customData = this.linkersCustomData.get(customDataKey); + if (typeof customData !== `undefined`) + installer.attachCustomData(customData); + return [linker, installer]; + })); + const packageLinkers = /* @__PURE__ */ new Map(); + const packageLocations = /* @__PURE__ */ new Map(); + const packageBuildDirectives = /* @__PURE__ */ new Map(); + const fetchResultsPerPackage = new Map(await miscUtils.allSettledSafe([...this.accessibleLocators].map(async (locatorHash) => { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The locator should have been registered`); + return [locatorHash, await fetcher.fetch(pkg, fetcherOptions)]; + }))); + const pendingPromises = []; + for (const locatorHash of this.accessibleLocators) { + const pkg = this.storedPackages.get(locatorHash); + if (typeof pkg === `undefined`) + throw new Error(`Assertion failed: The locator should have been registered`); + const fetchResult = fetchResultsPerPackage.get(pkg.locatorHash); + if (typeof fetchResult === `undefined`) + throw new Error(`Assertion failed: The fetch result should have been registered`); + const holdPromises = []; + const holdFetchResult = (promise) => { + holdPromises.push(promise); + }; + const workspace = this.tryWorkspaceByLocator(pkg); + if (workspace !== null) { + const buildScripts = []; + const { scripts } = workspace.manifest; + for (const scriptName of [`preinstall`, `install`, `postinstall`]) + if (scripts.has(scriptName)) + buildScripts.push([Installer_1.BuildType.SCRIPT, scriptName]); try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; + for (const [linker, installer] of installers) { + if (linker.supportsPackage(pkg, linkerOptions)) { + const result2 = await installer.installPackage(pkg, fetchResult, { holdFetchResult }); + if (result2.buildDirective !== null) { + throw new Error(`Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core`); } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; + } + } + } finally { + if (holdPromises.length === 0) { + (_a = fetchResult.releaseFs) === null || _a === void 0 ? void 0 : _a.call(fetchResult); + } else { + pendingPromises.push(miscUtils.allSettledSafe(holdPromises).catch(() => { + }).then(() => { + var _a2; + (_a2 = fetchResult.releaseFs) === null || _a2 === void 0 ? void 0 : _a2.call(fetchResult); + })); + } + } + const location = fslib_2.ppath.join(fetchResult.packageFs.getRealPath(), fetchResult.prefixPath); + packageLocations.set(pkg.locatorHash, location); + if (!structUtils.isVirtualLocator(pkg) && buildScripts.length > 0) { + packageBuildDirectives.set(pkg.locatorHash, { + directives: buildScripts, + buildLocations: [location] + }); + } + } else { + const linker = linkers.find((linker2) => linker2.supportsPackage(pkg, linkerOptions)); + if (!linker) + throw new Report_1.ReportError(MessageName_1.MessageName.LINKER_NOT_FOUND, `${structUtils.prettyLocator(this.configuration, pkg)} isn't supported by any available linker`); + const installer = installers.get(linker); + if (!installer) + throw new Error(`Assertion failed: The installer should have been registered`); + let installStatus; + try { + installStatus = await installer.installPackage(pkg, fetchResult, { holdFetchResult }); + } finally { + if (holdPromises.length === 0) { + (_b = fetchResult.releaseFs) === null || _b === void 0 ? void 0 : _b.call(fetchResult); + } else { + pendingPromises.push(miscUtils.allSettledSafe(holdPromises).then(() => { + }).then(() => { + var _a2; + (_a2 = fetchResult.releaseFs) === null || _a2 === void 0 ? void 0 : _a2.call(fetchResult); + })); + } + } + packageLinkers.set(pkg.locatorHash, linker); + packageLocations.set(pkg.locatorHash, installStatus.packageLocation); + if (installStatus.buildDirective && installStatus.buildDirective.length > 0 && installStatus.packageLocation) { + packageBuildDirectives.set(pkg.locatorHash, { + directives: installStatus.buildDirective, + buildLocations: [installStatus.packageLocation] + }); + } + } + } + const externalDependents = /* @__PURE__ */ new Map(); + for (const locatorHash of this.accessibleLocators) { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The locator should have been registered`); + const isWorkspace = this.tryWorkspaceByLocator(pkg) !== null; + const linkPackage = async (packageLinker, installer) => { + const packageLocation = packageLocations.get(pkg.locatorHash); + if (typeof packageLocation === `undefined`) + throw new Error(`Assertion failed: The package (${structUtils.prettyLocator(this.configuration, pkg)}) should have been registered`); + const internalDependencies = []; + for (const descriptor of pkg.dependencies.values()) { + const resolution = this.storedResolutions.get(descriptor.descriptorHash); + if (typeof resolution === `undefined`) + throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(this.configuration, descriptor)}, from ${structUtils.prettyLocator(this.configuration, pkg)})should have been registered`); + const dependency = this.storedPackages.get(resolution); + if (typeof dependency === `undefined`) + throw new Error(`Assertion failed: The package (${resolution}, resolved from ${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); + const dependencyLinker = this.tryWorkspaceByLocator(dependency) === null ? packageLinkers.get(resolution) : null; + if (typeof dependencyLinker === `undefined`) + throw new Error(`Assertion failed: The package (${resolution}, resolved from ${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); + const isWorkspaceDependency = dependencyLinker === null; + if (dependencyLinker === packageLinker || isWorkspaceDependency) { + if (packageLocations.get(dependency.locatorHash) !== null) { + internalDependencies.push([descriptor, dependency]); + } + } else if (!isWorkspace && packageLocation !== null) { + const externalEntry = miscUtils.getArrayWithDefault(externalDependents, resolution); + externalEntry.push(packageLocation); + } + } + if (packageLocation !== null) { + await installer.attachInternalDependencies(pkg, internalDependencies); + } + }; + if (isWorkspace) { + for (const [packageLinker, installer] of installers) { + if (packageLinker.supportsPackage(pkg, linkerOptions)) { + await linkPackage(packageLinker, installer); + } + } + } else { + const packageLinker = packageLinkers.get(pkg.locatorHash); + if (!packageLinker) + throw new Error(`Assertion failed: The linker should have been found`); + const installer = installers.get(packageLinker); + if (!installer) + throw new Error(`Assertion failed: The installer should have been registered`); + await linkPackage(packageLinker, installer); + } + } + for (const [locatorHash, dependentPaths] of externalDependents) { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The package should have been registered`); + const packageLinker = packageLinkers.get(pkg.locatorHash); + if (!packageLinker) + throw new Error(`Assertion failed: The linker should have been found`); + const installer = installers.get(packageLinker); + if (!installer) + throw new Error(`Assertion failed: The installer should have been registered`); + await installer.attachExternalDependents(pkg, dependentPaths); + } + const linkersCustomData = /* @__PURE__ */ new Map(); + for (const [linker, installer] of installers) { + const finalizeInstallData = await installer.finalizeInstall(); + for (const installStatus of (_c = finalizeInstallData === null || finalizeInstallData === void 0 ? void 0 : finalizeInstallData.records) !== null && _c !== void 0 ? _c : []) { + packageBuildDirectives.set(installStatus.locatorHash, { + directives: installStatus.buildDirective, + buildLocations: installStatus.buildLocations + }); + } + if (typeof (finalizeInstallData === null || finalizeInstallData === void 0 ? void 0 : finalizeInstallData.customData) !== `undefined`) { + linkersCustomData.set(linker.getCustomDataKey(), finalizeInstallData.customData); + } + } + this.linkersCustomData = linkersCustomData; + await miscUtils.allSettledSafe(pendingPromises); + if (mode === InstallMode.SkipBuild) + return; + const readyPackages = new Set(this.storedPackages.keys()); + const buildablePackages = new Set(packageBuildDirectives.keys()); + for (const locatorHash of buildablePackages) + readyPackages.delete(locatorHash); + const globalHashGenerator = (0, crypto_1.createHash)(`sha512`); + globalHashGenerator.update(process.versions.node); + await this.configuration.triggerHook((hooks) => { + return hooks.globalHashGeneration; + }, this, (data) => { + globalHashGenerator.update(`\0`); + globalHashGenerator.update(data); + }); + const globalHash = globalHashGenerator.digest(`hex`); + const packageHashMap = /* @__PURE__ */ new Map(); + const getBaseHash = (locator) => { + let hash = packageHashMap.get(locator.locatorHash); + if (typeof hash !== `undefined`) + return hash; + const pkg = this.storedPackages.get(locator.locatorHash); + if (typeof pkg === `undefined`) + throw new Error(`Assertion failed: The package should have been registered`); + const builder = (0, crypto_1.createHash)(`sha512`); + builder.update(locator.locatorHash); + packageHashMap.set(locator.locatorHash, ``); + for (const descriptor of pkg.dependencies.values()) { + const resolution = this.storedResolutions.get(descriptor.descriptorHash); + if (typeof resolution === `undefined`) + throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(this.configuration, descriptor)}) should have been registered`); + const dependency = this.storedPackages.get(resolution); + if (typeof dependency === `undefined`) + throw new Error(`Assertion failed: The package should have been registered`); + builder.update(getBaseHash(dependency)); + } + hash = builder.digest(`hex`); + packageHashMap.set(locator.locatorHash, hash); + return hash; + }; + const getBuildHash = (locator, buildLocations) => { + const builder = (0, crypto_1.createHash)(`sha512`); + builder.update(globalHash); + builder.update(getBaseHash(locator)); + for (const location of buildLocations) + builder.update(location); + return builder.digest(`hex`); + }; + const nextBState = /* @__PURE__ */ new Map(); + let isInstallStatePersisted = false; + const isLocatorBuildable = (locator) => { + const hashesToCheck = /* @__PURE__ */ new Set([locator.locatorHash]); + for (const locatorHash of hashesToCheck) { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The package should have been registered`); + for (const dependency of pkg.dependencies.values()) { + const resolution = this.storedResolutions.get(dependency.descriptorHash); + if (!resolution) + throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(this.configuration, dependency)}) should have been registered`); + if (resolution !== locator.locatorHash && buildablePackages.has(resolution)) + return false; + const dependencyPkg = this.storedPackages.get(resolution); + if (!dependencyPkg) + throw new Error(`Assertion failed: The package should have been registered`); + const workspace = this.tryWorkspaceByLocator(dependencyPkg); + if (workspace) { + if (workspace.anchoredLocator.locatorHash !== locator.locatorHash && buildablePackages.has(workspace.anchoredLocator.locatorHash)) + return false; + hashesToCheck.add(workspace.anchoredLocator.locatorHash); + } + hashesToCheck.add(resolution); + } + } + return true; + }; + while (buildablePackages.size > 0) { + const savedSize = buildablePackages.size; + const buildPromises = []; + for (const locatorHash of buildablePackages) { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The package should have been registered`); + if (!isLocatorBuildable(pkg)) + continue; + const buildInfo = packageBuildDirectives.get(pkg.locatorHash); + if (!buildInfo) + throw new Error(`Assertion failed: The build directive should have been registered`); + const buildHash = getBuildHash(pkg, buildInfo.buildLocations); + if (this.storedBuildState.get(pkg.locatorHash) === buildHash) { + nextBState.set(pkg.locatorHash, buildHash); + buildablePackages.delete(locatorHash); + continue; + } + if (!isInstallStatePersisted) { + await this.persistInstallStateFile(); + isInstallStatePersisted = true; + } + if (this.storedBuildState.has(pkg.locatorHash)) + report.reportInfo(MessageName_1.MessageName.MUST_REBUILD, `${structUtils.prettyLocator(this.configuration, pkg)} must be rebuilt because its dependency tree changed`); + else + report.reportInfo(MessageName_1.MessageName.MUST_BUILD, `${structUtils.prettyLocator(this.configuration, pkg)} must be built because it never has been before or the last one failed`); + const pkgBuilds = buildInfo.buildLocations.map(async (location) => { + if (!fslib_2.ppath.isAbsolute(location)) + throw new Error(`Assertion failed: Expected the build location to be absolute (not ${location})`); + for (const [buildType, scriptName] of buildInfo.directives) { + let header = `# This file contains the result of Yarn building a package (${structUtils.stringifyLocator(pkg)}) +`; + switch (buildType) { + case Installer_1.BuildType.SCRIPT: + { + header += `# Script name: ${scriptName} +`; + } break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; + case Installer_1.BuildType.SHELLCODE: + { + header += `# Script code: ${scriptName} +`; + } break; + } + const stdin = null; + const wasBuildSuccessful = await fslib_2.xfs.mktempPromise(async (logDir) => { + const logFile = fslib_2.ppath.join(logDir, `build.log`); + const { stdout, stderr } = this.configuration.getSubprocessStreams(logFile, { + header, + prefix: structUtils.prettyLocator(this.configuration, pkg), + report + }); + let exitCode; + try { + switch (buildType) { + case Installer_1.BuildType.SCRIPT: + { + exitCode = await scriptUtils.executePackageScript(pkg, scriptName, [], { cwd: location, project: this, stdin, stdout, stderr }); + } + break; + case Installer_1.BuildType.SHELLCODE: + { + exitCode = await scriptUtils.executePackageShellcode(pkg, scriptName, [], { cwd: location, project: this, stdin, stdout, stderr }); + } + break; + } + } catch (error) { + stderr.write(error.stack); + exitCode = 1; } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; + stdout.end(); + stderr.end(); + if (exitCode === 0) + return true; + fslib_2.xfs.detachTemp(logDir); + const buildMessage = `${structUtils.prettyLocator(this.configuration, pkg)} couldn't be built successfully (exit code ${formatUtils.pretty(this.configuration, exitCode, formatUtils.Type.NUMBER)}, logs can be found here: ${formatUtils.pretty(this.configuration, logFile, formatUtils.Type.PATH)})`; + if (this.optionalBuilds.has(pkg.locatorHash)) { + report.reportInfo(MessageName_1.MessageName.BUILD_FAILED, buildMessage); + return true; + } else { + report.reportError(MessageName_1.MessageName.BUILD_FAILED, buildMessage); + return false; } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; + }); + if (!wasBuildSuccessful) { + return false; + } } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; + return true; + }); + buildPromises.push(...pkgBuilds, Promise.allSettled(pkgBuilds).then((results) => { + buildablePackages.delete(locatorHash); + if (results.every((result2) => result2.status === `fulfilled` && result2.value === true)) { + nextBState.set(pkg.locatorHash, buildHash); + } + })); + } + await miscUtils.allSettledSafe(buildPromises); + if (savedSize === buildablePackages.size) { + const prettyLocators = Array.from(buildablePackages).map((locatorHash) => { + const pkg = this.storedPackages.get(locatorHash); + if (!pkg) + throw new Error(`Assertion failed: The package should have been registered`); + return structUtils.prettyLocator(this.configuration, pkg); + }).join(`, `); + report.reportError(MessageName_1.MessageName.CYCLIC_DEPENDENCIES, `Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${prettyLocators})`); + break; + } + } + this.storedBuildState = nextBState; + } + async install(opts) { + var _a, _b; + const nodeLinker = this.configuration.get(`nodeLinker`); + (_a = Configuration_1.Configuration.telemetry) === null || _a === void 0 ? void 0 : _a.reportInstall(nodeLinker); + let hasPreErrors = false; + await opts.report.startTimerPromise(`Project validation`, { + skipIfEmpty: true + }, async () => { + await this.configuration.triggerHook((hooks) => { + return hooks.validateProject; + }, this, { + reportWarning: (name, text) => { + opts.report.reportWarning(name, text); + }, + reportError: (name, text) => { + opts.report.reportError(name, text); + hasPreErrors = true; + } + }); + }); + if (hasPreErrors) + return; + for (const extensionsByIdent of this.configuration.packageExtensions.values()) + for (const [, extensionsByRange] of extensionsByIdent) + for (const extension of extensionsByRange) + extension.status = types_2.PackageExtensionStatus.Inactive; + const lockfilePath = fslib_2.ppath.join(this.cwd, this.configuration.get(`lockfileFilename`)); + let initialLockfile = null; + if (opts.immutable) { + try { + initialLockfile = await fslib_2.xfs.readFilePromise(lockfilePath, `utf8`); + } catch (error) { + if (error.code === `ENOENT`) { + throw new Report_1.ReportError(MessageName_1.MessageName.FROZEN_LOCKFILE_EXCEPTION, `The lockfile would have been created by this install, which is explicitly forbidden.`); + } else { + throw error; } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; + } } - }; - __createBinding2 = function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }; - __exportStar = function(m, exports3) { - for (var p in m) - if (p !== "default" && !exports3.hasOwnProperty(p)) - exports3[p] = m[p]; - }; - __values = function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) - return m.call(o); - if (o && typeof o.length === "number") - return { - next: function() { - if (o && i >= o.length) - o = void 0; - return { value: o && o[i++], done: !o }; + await opts.report.startTimerPromise(`Resolution step`, async () => { + await this.resolveEverything(opts); + }); + await opts.report.startTimerPromise(`Post-resolution validation`, { + skipIfEmpty: true + }, async () => { + for (const [, extensionsPerRange] of this.configuration.packageExtensions) { + for (const [, extensions] of extensionsPerRange) { + for (const extension of extensions) { + if (extension.userProvided) { + const prettyPackageExtension = formatUtils.pretty(this.configuration, extension, formatUtils.Type.PACKAGE_EXTENSION); + switch (extension.status) { + case types_2.PackageExtensionStatus.Inactive: + { + opts.report.reportWarning(MessageName_1.MessageName.UNUSED_PACKAGE_EXTENSION, `${prettyPackageExtension}: No matching package in the dependency tree; you may not need this rule anymore.`); + } + break; + case types_2.PackageExtensionStatus.Redundant: + { + opts.report.reportWarning(MessageName_1.MessageName.REDUNDANT_PACKAGE_EXTENSION, `${prettyPackageExtension}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`); + } + break; + } + } + } + } + } + if (initialLockfile !== null) { + const newLockfile = (0, fslib_2.normalizeLineEndings)(initialLockfile, this.generateLockfile()); + if (newLockfile !== initialLockfile) { + const diff = (0, diff_1.structuredPatch)(lockfilePath, lockfilePath, initialLockfile, newLockfile, void 0, void 0, { maxEditLength: 100 }); + if (diff) { + opts.report.reportSeparator(); + for (const hunk of diff.hunks) { + opts.report.reportInfo(null, `@@ -${hunk.oldStart},${hunk.oldLines} +${hunk.newStart},${hunk.newLines} @@`); + for (const line of hunk.lines) { + if (line.startsWith(`+`)) { + opts.report.reportError(MessageName_1.MessageName.FROZEN_LOCKFILE_EXCEPTION, formatUtils.pretty(this.configuration, line, formatUtils.Type.ADDED)); + } else if (line.startsWith(`-`)) { + opts.report.reportError(MessageName_1.MessageName.FROZEN_LOCKFILE_EXCEPTION, formatUtils.pretty(this.configuration, line, formatUtils.Type.REMOVED)); + } else { + opts.report.reportInfo(null, formatUtils.pretty(this.configuration, line, `grey`)); + } + } + } + opts.report.reportSeparator(); + } + throw new Report_1.ReportError(MessageName_1.MessageName.FROZEN_LOCKFILE_EXCEPTION, `The lockfile would have been modified by this install, which is explicitly forbidden.`); + } + } + }); + for (const extensionsByIdent of this.configuration.packageExtensions.values()) + for (const [, extensionsByRange] of extensionsByIdent) + for (const extension of extensionsByRange) + if (extension.userProvided && extension.status === types_2.PackageExtensionStatus.Active) + (_b = Configuration_1.Configuration.telemetry) === null || _b === void 0 ? void 0 : _b.reportPackageExtension(formatUtils.json(extension, formatUtils.Type.PACKAGE_EXTENSION)); + await opts.report.startTimerPromise(`Fetch step`, async () => { + await this.fetchEverything(opts); + if ((typeof opts.persistProject === `undefined` || opts.persistProject) && opts.mode !== InstallMode.UpdateLockfile) { + await this.cacheCleanup(opts); + } + }); + const immutablePatterns = opts.immutable ? [...new Set(this.configuration.get(`immutablePatterns`))].sort() : []; + const before = await Promise.all(immutablePatterns.map(async (pattern) => { + return hashUtils.checksumPattern(pattern, { cwd: this.cwd }); + })); + if (typeof opts.persistProject === `undefined` || opts.persistProject) + await this.persist(); + await opts.report.startTimerPromise(`Link step`, async () => { + if (opts.mode === InstallMode.UpdateLockfile) { + opts.report.reportWarning(MessageName_1.MessageName.UPDATE_LOCKFILE_ONLY_SKIP_LINK, `Skipped due to ${formatUtils.pretty(this.configuration, `mode=update-lockfile`, formatUtils.Type.CODE)}`); + return; + } + await this.linkEverything(opts); + const after = await Promise.all(immutablePatterns.map(async (pattern) => { + return hashUtils.checksumPattern(pattern, { cwd: this.cwd }); + })); + for (let t = 0; t < immutablePatterns.length; ++t) { + if (before[t] !== after[t]) { + opts.report.reportError(MessageName_1.MessageName.FROZEN_ARTIFACT_EXCEPTION, `The checksum for ${immutablePatterns[t]} has been modified by this install, which is explicitly forbidden.`); + } + } + }); + await this.persistInstallStateFile(); + let hasPostErrors = false; + await opts.report.startTimerPromise(`Post-install validation`, { + skipIfEmpty: true + }, async () => { + await this.configuration.triggerHook((hooks) => { + return hooks.validateProjectAfterInstall; + }, this, { + reportWarning: (name, text) => { + opts.report.reportWarning(name, text); + }, + reportError: (name, text) => { + opts.report.reportError(name, text); + hasPostErrors = true; + } + }); + }); + if (hasPostErrors) + return; + await this.configuration.triggerHook((hooks) => { + return hooks.afterAllInstalled; + }, this, opts); + } + generateLockfile() { + const reverseLookup = /* @__PURE__ */ new Map(); + for (const [descriptorHash, locatorHash] of this.storedResolutions.entries()) { + let descriptorHashes = reverseLookup.get(locatorHash); + if (!descriptorHashes) + reverseLookup.set(locatorHash, descriptorHashes = /* @__PURE__ */ new Set()); + descriptorHashes.add(descriptorHash); + } + const optimizedLockfile = {}; + optimizedLockfile.__metadata = { + version: LOCKFILE_VERSION, + cacheKey: void 0 + }; + for (const [locatorHash, descriptorHashes] of reverseLookup.entries()) { + const pkg = this.originalPackages.get(locatorHash); + if (!pkg) + continue; + const descriptors = []; + for (const descriptorHash of descriptorHashes) { + const descriptor = this.storedDescriptors.get(descriptorHash); + if (!descriptor) + throw new Error(`Assertion failed: The descriptor should have been registered`); + descriptors.push(descriptor); + } + const key = descriptors.map((descriptor) => { + return structUtils.stringifyDescriptor(descriptor); + }).sort().join(`, `); + const manifest = new Manifest_1.Manifest(); + manifest.version = pkg.linkType === types_1.LinkType.HARD ? pkg.version : `0.0.0-use.local`; + manifest.languageName = pkg.languageName; + manifest.dependencies = new Map(pkg.dependencies); + manifest.peerDependencies = new Map(pkg.peerDependencies); + manifest.dependenciesMeta = new Map(pkg.dependenciesMeta); + manifest.peerDependenciesMeta = new Map(pkg.peerDependenciesMeta); + manifest.bin = new Map(pkg.bin); + let entryChecksum; + const checksum = this.storedChecksums.get(pkg.locatorHash); + if (typeof checksum !== `undefined`) { + const cacheKeyIndex = checksum.indexOf(`/`); + if (cacheKeyIndex === -1) + throw new Error(`Assertion failed: Expected the checksum to reference its cache key`); + const cacheKey = checksum.slice(0, cacheKeyIndex); + const hash = checksum.slice(cacheKeyIndex + 1); + if (typeof optimizedLockfile.__metadata.cacheKey === `undefined`) + optimizedLockfile.__metadata.cacheKey = cacheKey; + if (cacheKey === optimizedLockfile.__metadata.cacheKey) { + entryChecksum = hash; + } else { + entryChecksum = checksum; } + } + optimizedLockfile[key] = { + ...manifest.exportTo({}, { + compatibilityMode: false + }), + linkType: pkg.linkType.toLowerCase(), + resolution: structUtils.stringifyLocator(pkg), + checksum: entryChecksum, + conditions: pkg.conditions || void 0 }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - }; - __read = function(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) - return o; - var i = m.call(o), r, ar = [], e; + } + const header = `${[ + `# This file is generated by running "yarn install" inside your project. +`, + `# Manual changes might be lost - proceed with caution! +` + ].join(``)} +`; + return header + (0, parsers_1.stringifySyml)(optimizedLockfile); + } + async persistLockfile() { + const lockfilePath = fslib_2.ppath.join(this.cwd, this.configuration.get(`lockfileFilename`)); + let currentContent = ``; try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) - ar.push(r.value); + currentContent = await fslib_2.xfs.readFilePromise(lockfilePath, `utf8`); } catch (error) { - e = { error }; - } finally { - try { - if (r && !r.done && (m = i["return"])) - m.call(i); - } finally { - if (e) - throw e.error; - } - } - return ar; - }; - __spread = function() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; - }; - __spreadArrays = function() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) - s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; - }; - __await = function(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); - }; - __asyncGenerator = function(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i; - function verb(n) { - if (g[n]) - i[n] = function(v) { - return new Promise(function(a, b) { - q.push([n, v, a, b]) > 1 || resume(n, v); - }); - }; } - function resume(n, v) { - try { - step(g[n](v)); - } catch (e) { - settle(q[0][3], e); - } + const newContent = this.generateLockfile(); + const normalizedContent = (0, fslib_2.normalizeLineEndings)(currentContent, newContent); + if (normalizedContent === currentContent) + return; + await fslib_2.xfs.writeFilePromise(lockfilePath, normalizedContent); + this.lockFileChecksum = makeLockfileChecksum(normalizedContent); + this.lockfileNeedsRefresh = false; + } + async persistInstallStateFile() { + const fields = []; + for (const category of Object.values(INSTALL_STATE_FIELDS)) + fields.push(...category); + const installState = (0, pick_1.default)(this, fields); + const serializedState = v8_1.default.serialize(installState); + const newInstallStateChecksum = hashUtils.makeHash(serializedState); + if (this.installStateChecksum === newInstallStateChecksum) + return; + const installStatePath = this.configuration.get(`installStatePath`); + await fslib_2.xfs.mkdirPromise(fslib_2.ppath.dirname(installStatePath), { recursive: true }); + await fslib_2.xfs.writeFilePromise(installStatePath, await gzip(serializedState)); + this.installStateChecksum = newInstallStateChecksum; + } + async restoreInstallState({ restoreLinkersCustomData = true, restoreResolutions = true, restoreBuildState = true } = {}) { + const installStatePath = this.configuration.get(`installStatePath`); + let installState; + try { + const installStateBuffer = await gunzip(await fslib_2.xfs.readFilePromise(installStatePath)); + installState = v8_1.default.deserialize(installStateBuffer); + this.installStateChecksum = hashUtils.makeHash(installStateBuffer); + } catch { + if (restoreResolutions) + await this.applyLightResolution(); + return; } - function step(r) { - r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + if (restoreLinkersCustomData) { + if (typeof installState.linkersCustomData !== `undefined`) + this.linkersCustomData = installState.linkersCustomData; } - function fulfill(value) { - resume("next", value); + if (restoreBuildState) + Object.assign(this, (0, pick_1.default)(installState, INSTALL_STATE_FIELDS.restoreBuildState)); + if (restoreResolutions) { + if (installState.lockFileChecksum === this.lockFileChecksum) { + Object.assign(this, (0, pick_1.default)(installState, INSTALL_STATE_FIELDS.restoreResolutions)); + } else { + await this.applyLightResolution(); + } } - function reject(value) { - resume("throw", value); + } + async applyLightResolution() { + await this.resolveEverything({ + lockfileOnly: true, + report: new ThrowReport_1.ThrowReport() + }); + await this.persistInstallStateFile(); + } + async persist() { + const limit = (0, p_limit_12.default)(4); + await Promise.all([ + this.persistLockfile(), + ...this.workspaces.map((workspace) => { + return limit(() => workspace.persistManifest()); + }) + ]); + } + async cacheCleanup({ cache, report }) { + if (this.configuration.get(`enableGlobalCache`)) + return; + const PRESERVED_FILES = /* @__PURE__ */ new Set([ + `.gitignore` + ]); + if (!(0, folderUtils_1.isFolderInside)(cache.cwd, this.cwd)) + return; + if (!await fslib_2.xfs.existsPromise(cache.cwd)) + return; + const preferAggregateCacheInfo = this.configuration.get(`preferAggregateCacheInfo`); + let entriesRemoved = 0; + let lastEntryRemoved = null; + for (const entry of await fslib_2.xfs.readdirPromise(cache.cwd)) { + if (PRESERVED_FILES.has(entry)) + continue; + const entryPath = fslib_2.ppath.resolve(cache.cwd, entry); + if (cache.markedFiles.has(entryPath)) + continue; + lastEntryRemoved = entry; + if (cache.immutable) { + report.reportError(MessageName_1.MessageName.IMMUTABLE_CACHE, `${formatUtils.pretty(this.configuration, fslib_2.ppath.basename(entryPath), `magenta`)} appears to be unused and would be marked for deletion, but the cache is immutable`); + } else { + if (preferAggregateCacheInfo) + entriesRemoved += 1; + else + report.reportInfo(MessageName_1.MessageName.UNUSED_CACHE_ENTRY, `${formatUtils.pretty(this.configuration, fslib_2.ppath.basename(entryPath), `magenta`)} appears to be unused - removing`); + await fslib_2.xfs.removePromise(entryPath); + } } - function settle(f, v) { - if (f(v), q.shift(), q.length) - resume(q[0][0], q[0][1]); + if (preferAggregateCacheInfo && entriesRemoved !== 0) { + report.reportInfo(MessageName_1.MessageName.UNUSED_CACHE_ENTRY, entriesRemoved > 1 ? `${entriesRemoved} packages appeared to be unused and were removed` : `${lastEntryRemoved} appeared to be unused and was removed`); } + } + }; + exports2.Project = Project; + function applyVirtualResolutionMutations({ project, allDescriptors, allResolutions, allPackages, accessibleLocators = /* @__PURE__ */ new Set(), optionalBuilds = /* @__PURE__ */ new Set(), peerRequirements = /* @__PURE__ */ new Map(), volatileDescriptors = /* @__PURE__ */ new Set(), report }) { + var _a; + const virtualStack = /* @__PURE__ */ new Map(); + const resolutionStack = []; + const allIdents = /* @__PURE__ */ new Map(); + const allVirtualInstances = /* @__PURE__ */ new Map(); + const allVirtualDependents = /* @__PURE__ */ new Map(); + const peerDependencyLinks = /* @__PURE__ */ new Map(); + const peerDependencyDependents = /* @__PURE__ */ new Map(); + const originalWorkspaceDefinitions = new Map(project.workspaces.map((workspace) => { + const locatorHash = workspace.anchoredLocator.locatorHash; + const pkg = allPackages.get(locatorHash); + if (typeof pkg === `undefined`) + throw new Error(`Assertion failed: The workspace should have an associated package`); + return [locatorHash, structUtils.copyPackage(pkg)]; + })); + const reportStackOverflow = () => { + const logDir = fslib_2.xfs.mktempSync(); + const logFile = fslib_2.ppath.join(logDir, `stacktrace.log`); + const maxSize = String(resolutionStack.length + 1).length; + const content = resolutionStack.map((locator, index) => { + const prefix = `${index + 1}.`.padStart(maxSize, ` `); + return `${prefix} ${structUtils.stringifyLocator(locator)} +`; + }).join(``); + fslib_2.xfs.writeFileSync(logFile, content); + fslib_2.xfs.detachTemp(logDir); + throw new Report_1.ReportError(MessageName_1.MessageName.STACK_OVERFLOW_RESOLUTION, `Encountered a stack overflow when resolving peer dependencies; cf ${fslib_12.npath.fromPortablePath(logFile)}`); + }; + const getPackageFromDescriptor = (descriptor) => { + const resolution = allResolutions.get(descriptor.descriptorHash); + if (typeof resolution === `undefined`) + throw new Error(`Assertion failed: The resolution should have been registered`); + const pkg = allPackages.get(resolution); + if (!pkg) + throw new Error(`Assertion failed: The package could not be found`); + return pkg; }; - __asyncDelegator = function(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function(e) { - throw e; - }), verb("return"), i[Symbol.iterator] = function() { - return this; - }, i; - function verb(n, f) { - i[n] = o[n] ? function(v) { - return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; - } : f; - } - }; - __asyncValues = function(o) { - if (!Symbol.asyncIterator) - throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { - return this; - }, i); - function verb(n) { - i[n] = o[n] && function(v) { - return new Promise(function(resolve, reject) { - v = o[n](v), settle(resolve, reject, v.done, v.value); + const resolvePeerDependencies = (parentDescriptor, parentLocator, peerSlots, { top, optional }) => { + if (resolutionStack.length > 1e3) + reportStackOverflow(); + resolutionStack.push(parentLocator); + const result2 = resolvePeerDependenciesImpl(parentDescriptor, parentLocator, peerSlots, { top, optional }); + resolutionStack.pop(); + return result2; + }; + const resolvePeerDependenciesImpl = (parentDescriptor, parentLocator, peerSlots, { top, optional }) => { + if (accessibleLocators.has(parentLocator.locatorHash)) + return; + accessibleLocators.add(parentLocator.locatorHash); + if (!optional) + optionalBuilds.delete(parentLocator.locatorHash); + const parentPackage = allPackages.get(parentLocator.locatorHash); + if (!parentPackage) + throw new Error(`Assertion failed: The package (${structUtils.prettyLocator(project.configuration, parentLocator)}) should have been registered`); + const newVirtualInstances = []; + const firstPass = []; + const secondPass = []; + const thirdPass = []; + const fourthPass = []; + for (const descriptor of Array.from(parentPackage.dependencies.values())) { + if (parentPackage.peerDependencies.has(descriptor.identHash) && parentPackage.locatorHash !== top) + continue; + if (structUtils.isVirtualDescriptor(descriptor)) + throw new Error(`Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch`); + volatileDescriptors.delete(descriptor.descriptorHash); + let isOptional = optional; + if (!isOptional) { + const dependencyMetaSet = parentPackage.dependenciesMeta.get(structUtils.stringifyIdent(descriptor)); + if (typeof dependencyMetaSet !== `undefined`) { + const dependencyMeta = dependencyMetaSet.get(null); + if (typeof dependencyMeta !== `undefined` && dependencyMeta.optional) { + isOptional = true; + } + } + } + const resolution = allResolutions.get(descriptor.descriptorHash); + if (!resolution) + throw new Error(`Assertion failed: The resolution (${structUtils.prettyDescriptor(project.configuration, descriptor)}) should have been registered`); + const pkg = originalWorkspaceDefinitions.get(resolution) || allPackages.get(resolution); + if (!pkg) + throw new Error(`Assertion failed: The package (${resolution}, resolved from ${structUtils.prettyDescriptor(project.configuration, descriptor)}) should have been registered`); + if (pkg.peerDependencies.size === 0) { + resolvePeerDependencies(descriptor, pkg, /* @__PURE__ */ new Map(), { top, optional: isOptional }); + continue; + } + let virtualizedDescriptor; + let virtualizedPackage; + const missingPeerDependencies = /* @__PURE__ */ new Set(); + let nextPeerSlots; + firstPass.push(() => { + virtualizedDescriptor = structUtils.virtualizeDescriptor(descriptor, parentLocator.locatorHash); + virtualizedPackage = structUtils.virtualizePackage(pkg, parentLocator.locatorHash); + parentPackage.dependencies.delete(descriptor.identHash); + parentPackage.dependencies.set(virtualizedDescriptor.identHash, virtualizedDescriptor); + allResolutions.set(virtualizedDescriptor.descriptorHash, virtualizedPackage.locatorHash); + allDescriptors.set(virtualizedDescriptor.descriptorHash, virtualizedDescriptor); + allPackages.set(virtualizedPackage.locatorHash, virtualizedPackage); + newVirtualInstances.push([pkg, virtualizedDescriptor, virtualizedPackage]); + }); + secondPass.push(() => { + var _a2; + nextPeerSlots = /* @__PURE__ */ new Map(); + for (const peerRequest of virtualizedPackage.peerDependencies.values()) { + let peerDescriptor = parentPackage.dependencies.get(peerRequest.identHash); + if (!peerDescriptor && structUtils.areIdentsEqual(parentLocator, peerRequest)) { + if (parentDescriptor.identHash === parentLocator.identHash) { + peerDescriptor = parentDescriptor; + } else { + peerDescriptor = structUtils.makeDescriptor(parentLocator, parentDescriptor.range); + allDescriptors.set(peerDescriptor.descriptorHash, peerDescriptor); + allResolutions.set(peerDescriptor.descriptorHash, parentLocator.locatorHash); + volatileDescriptors.delete(peerDescriptor.descriptorHash); + } + } + if ((!peerDescriptor || peerDescriptor.range === `missing:`) && virtualizedPackage.dependencies.has(peerRequest.identHash)) { + virtualizedPackage.peerDependencies.delete(peerRequest.identHash); + continue; + } + if (!peerDescriptor) + peerDescriptor = structUtils.makeDescriptor(peerRequest, `missing:`); + virtualizedPackage.dependencies.set(peerDescriptor.identHash, peerDescriptor); + if (structUtils.isVirtualDescriptor(peerDescriptor)) { + const dependents = miscUtils.getSetWithDefault(allVirtualDependents, peerDescriptor.descriptorHash); + dependents.add(virtualizedPackage.locatorHash); + } + allIdents.set(peerDescriptor.identHash, peerDescriptor); + if (peerDescriptor.range === `missing:`) + missingPeerDependencies.add(peerDescriptor.identHash); + nextPeerSlots.set(peerRequest.identHash, (_a2 = peerSlots.get(peerRequest.identHash)) !== null && _a2 !== void 0 ? _a2 : virtualizedPackage.locatorHash); + } + virtualizedPackage.dependencies = new Map(miscUtils.sortMap(virtualizedPackage.dependencies, ([identHash, descriptor2]) => { + return structUtils.stringifyIdent(descriptor2); + })); + }); + thirdPass.push(() => { + if (!allPackages.has(virtualizedPackage.locatorHash)) + return; + const stackDepth = virtualStack.get(pkg.locatorHash); + if (typeof stackDepth === `number` && stackDepth >= 2) + reportStackOverflow(); + const current = virtualStack.get(pkg.locatorHash); + const next = typeof current !== `undefined` ? current + 1 : 1; + virtualStack.set(pkg.locatorHash, next); + resolvePeerDependencies(virtualizedDescriptor, virtualizedPackage, nextPeerSlots, { top, optional: isOptional }); + virtualStack.set(pkg.locatorHash, next - 1); + }); + fourthPass.push(() => { + const finalDescriptor = parentPackage.dependencies.get(descriptor.identHash); + if (typeof finalDescriptor === `undefined`) + throw new Error(`Assertion failed: Expected the peer dependency to have been turned into a dependency`); + const finalResolution = allResolutions.get(finalDescriptor.descriptorHash); + if (typeof finalResolution === `undefined`) + throw new Error(`Assertion failed: Expected the descriptor to be registered`); + miscUtils.getSetWithDefault(peerDependencyDependents, finalResolution).add(parentLocator.locatorHash); + if (!allPackages.has(virtualizedPackage.locatorHash)) + return; + for (const descriptor2 of virtualizedPackage.peerDependencies.values()) { + const root = nextPeerSlots.get(descriptor2.identHash); + if (typeof root === `undefined`) + throw new Error(`Assertion failed: Expected the peer dependency ident to be registered`); + miscUtils.getArrayWithDefault(miscUtils.getMapWithDefault(peerDependencyLinks, root), structUtils.stringifyIdent(descriptor2)).push(virtualizedPackage.locatorHash); + } + for (const missingPeerDependency of missingPeerDependencies) { + virtualizedPackage.dependencies.delete(missingPeerDependency); + } + }); + } + for (const fn2 of [...firstPass, ...secondPass]) + fn2(); + let stable; + do { + stable = true; + for (const [physicalLocator, virtualDescriptor, virtualPackage] of newVirtualInstances) { + const otherVirtualInstances = miscUtils.getMapWithDefault(allVirtualInstances, physicalLocator.locatorHash); + const dependencyHash = hashUtils.makeHash( + ...[...virtualPackage.dependencies.values()].map((descriptor) => { + const resolution = descriptor.range !== `missing:` ? allResolutions.get(descriptor.descriptorHash) : `missing:`; + if (typeof resolution === `undefined`) + throw new Error(`Assertion failed: Expected the resolution for ${structUtils.prettyDescriptor(project.configuration, descriptor)} to have been registered`); + return resolution === top ? `${resolution} (top)` : resolution; + }), + // We use the identHash to disambiguate between virtual descriptors + // with different base idents being resolved to the same virtual package. + // Note: We don't use the descriptorHash because the whole point of duplicate + // virtual descriptors is that they have different `virtual:` ranges. + // This causes the virtual descriptors with different base idents + // to be preserved, while the virtual package they resolve to gets deduped. + virtualDescriptor.identHash + ); + const masterDescriptor = otherVirtualInstances.get(dependencyHash); + if (typeof masterDescriptor === `undefined`) { + otherVirtualInstances.set(dependencyHash, virtualDescriptor); + continue; + } + if (masterDescriptor === virtualDescriptor) + continue; + allPackages.delete(virtualPackage.locatorHash); + allDescriptors.delete(virtualDescriptor.descriptorHash); + allResolutions.delete(virtualDescriptor.descriptorHash); + accessibleLocators.delete(virtualPackage.locatorHash); + const dependents = allVirtualDependents.get(virtualDescriptor.descriptorHash) || []; + const allDependents = [parentPackage.locatorHash, ...dependents]; + allVirtualDependents.delete(virtualDescriptor.descriptorHash); + for (const dependent of allDependents) { + const pkg = allPackages.get(dependent); + if (typeof pkg === `undefined`) + continue; + if (pkg.dependencies.get(virtualDescriptor.identHash).descriptorHash !== masterDescriptor.descriptorHash) + stable = false; + pkg.dependencies.set(virtualDescriptor.identHash, masterDescriptor); + } + } + } while (!stable); + for (const fn2 of [...thirdPass, ...fourthPass]) { + fn2(); + } + }; + for (const workspace of project.workspaces) { + const locator = workspace.anchoredLocator; + volatileDescriptors.delete(workspace.anchoredDescriptor.descriptorHash); + resolvePeerDependencies(workspace.anchoredDescriptor, locator, /* @__PURE__ */ new Map(), { top: locator.locatorHash, optional: false }); + } + let WarningType; + (function(WarningType2) { + WarningType2[WarningType2["NotProvided"] = 0] = "NotProvided"; + WarningType2[WarningType2["NotCompatible"] = 1] = "NotCompatible"; + })(WarningType || (WarningType = {})); + const warnings = []; + for (const [rootHash, dependents] of peerDependencyDependents) { + const root = allPackages.get(rootHash); + if (typeof root === `undefined`) + throw new Error(`Assertion failed: Expected the root to be registered`); + const rootLinks = peerDependencyLinks.get(rootHash); + if (typeof rootLinks === `undefined`) + continue; + for (const dependentHash of dependents) { + const dependent = allPackages.get(dependentHash); + if (typeof dependent === `undefined`) + continue; + for (const [identStr, linkHashes] of rootLinks) { + const ident = structUtils.parseIdent(identStr); + if (dependent.peerDependencies.has(ident.identHash)) + continue; + const hash = `p${hashUtils.makeHash(dependentHash, identStr, rootHash).slice(0, 5)}`; + peerRequirements.set(hash, { + subject: dependentHash, + requested: ident, + rootRequester: rootHash, + allRequesters: linkHashes }); - }; + const resolvedDescriptor = root.dependencies.get(ident.identHash); + if (typeof resolvedDescriptor !== `undefined`) { + const peerResolution = getPackageFromDescriptor(resolvedDescriptor); + const peerVersion = (_a = peerResolution.version) !== null && _a !== void 0 ? _a : `0.0.0`; + const ranges = /* @__PURE__ */ new Set(); + for (const linkHash of linkHashes) { + const link = allPackages.get(linkHash); + if (typeof link === `undefined`) + throw new Error(`Assertion failed: Expected the link to be registered`); + const peerDependency = link.peerDependencies.get(ident.identHash); + if (typeof peerDependency === `undefined`) + throw new Error(`Assertion failed: Expected the ident to be registered`); + ranges.add(peerDependency.range); + } + const satisfiesAll = [...ranges].every((range) => { + if (range.startsWith(WorkspaceResolver_1.WorkspaceResolver.protocol)) { + if (!project.tryWorkspaceByLocator(peerResolution)) + return false; + range = range.slice(WorkspaceResolver_1.WorkspaceResolver.protocol.length); + if (range === `^` || range === `~`) { + range = `*`; + } + } + return semverUtils.satisfiesWithPrereleases(peerVersion, range); + }); + if (!satisfiesAll) { + warnings.push({ + type: WarningType.NotCompatible, + subject: dependent, + requested: ident, + requester: root, + version: peerVersion, + hash, + requirementCount: linkHashes.length + }); + } + } else { + const peerDependencyMeta = root.peerDependenciesMeta.get(identStr); + if (!(peerDependencyMeta === null || peerDependencyMeta === void 0 ? void 0 : peerDependencyMeta.optional)) { + warnings.push({ + type: WarningType.NotProvided, + subject: dependent, + requested: ident, + requester: root, + hash + }); + } + } + } } - function settle(resolve, reject, d, v) { - Promise.resolve(v).then(function(v2) { - resolve({ value: v2, done: d }); - }, reject); + } + const warningSortCriterias = [ + (warning) => structUtils.prettyLocatorNoColors(warning.subject), + (warning) => structUtils.stringifyIdent(warning.requested), + (warning) => `${warning.type}` + ]; + report === null || report === void 0 ? void 0 : report.startSectionSync({ + reportFooter: () => { + report.reportWarning(MessageName_1.MessageName.UNNAMED, `Some peer dependencies are incorrectly met; run ${formatUtils.pretty(project.configuration, `yarn explain peer-requirements `, formatUtils.Type.CODE)} for details, where ${formatUtils.pretty(project.configuration, ``, formatUtils.Type.CODE)} is the six-letter p-prefixed code`); + }, + skipIfEmpty: true + }, () => { + for (const warning of miscUtils.sortMap(warnings, warningSortCriterias)) { + switch (warning.type) { + case WarningType.NotProvided: + { + report.reportWarning(MessageName_1.MessageName.MISSING_PEER_DEPENDENCY, `${structUtils.prettyLocator(project.configuration, warning.subject)} doesn't provide ${structUtils.prettyIdent(project.configuration, warning.requested)} (${formatUtils.pretty(project.configuration, warning.hash, formatUtils.Type.CODE)}), requested by ${structUtils.prettyIdent(project.configuration, warning.requester)}`); + } + break; + case WarningType.NotCompatible: + { + const andDescendants = warning.requirementCount > 1 ? `and some of its descendants request` : `requests`; + report.reportWarning(MessageName_1.MessageName.INCOMPATIBLE_PEER_DEPENDENCY, `${structUtils.prettyLocator(project.configuration, warning.subject)} provides ${structUtils.prettyIdent(project.configuration, warning.requested)} (${formatUtils.pretty(project.configuration, warning.hash, formatUtils.Type.CODE)}) with version ${structUtils.prettyReference(project.configuration, warning.version)}, which doesn't satisfy what ${structUtils.prettyIdent(project.configuration, warning.requester)} ${andDescendants}`); + } + break; + } } - }; - __makeTemplateObject = function(cooked, raw) { - if (Object.defineProperty) { - Object.defineProperty(cooked, "raw", { value: raw }); - } else { - cooked.raw = raw; + }); + } + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/TelemetryManager.js +var require_TelemetryManager = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/TelemetryManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TelemetryManager = exports2.MetricName = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fslib_12 = require_lib50(); + var hashUtils = tslib_12.__importStar(require_hashUtils()); + var httpUtils = tslib_12.__importStar(require_httpUtils()); + var miscUtils = tslib_12.__importStar(require_miscUtils()); + var MetricName; + (function(MetricName2) { + MetricName2["VERSION"] = "version"; + MetricName2["COMMAND_NAME"] = "commandName"; + MetricName2["PLUGIN_NAME"] = "pluginName"; + MetricName2["INSTALL_COUNT"] = "installCount"; + MetricName2["PROJECT_COUNT"] = "projectCount"; + MetricName2["WORKSPACE_COUNT"] = "workspaceCount"; + MetricName2["DEPENDENCY_COUNT"] = "dependencyCount"; + MetricName2["EXTENSION"] = "packageExtension"; + })(MetricName || (exports2.MetricName = MetricName = {})); + var TelemetryManager = class { + constructor(configuration, accountId) { + this.values = /* @__PURE__ */ new Map(); + this.hits = /* @__PURE__ */ new Map(); + this.enumerators = /* @__PURE__ */ new Map(); + this.configuration = configuration; + const registryFile = this.getRegistryPath(); + this.isNew = !fslib_12.xfs.existsSync(registryFile); + this.sendReport(accountId); + this.startBuffer(); + } + reportVersion(value) { + this.reportValue(MetricName.VERSION, value.replace(/-git\..*/, `-git`)); + } + reportCommandName(value) { + this.reportValue(MetricName.COMMAND_NAME, value || ``); + } + reportPluginName(value) { + this.reportValue(MetricName.PLUGIN_NAME, value); + } + reportProject(cwd) { + this.reportEnumerator(MetricName.PROJECT_COUNT, cwd); + } + reportInstall(nodeLinker) { + this.reportHit(MetricName.INSTALL_COUNT, nodeLinker); + } + reportPackageExtension(value) { + this.reportValue(MetricName.EXTENSION, value); + } + reportWorkspaceCount(count) { + this.reportValue(MetricName.WORKSPACE_COUNT, String(count)); + } + reportDependencyCount(count) { + this.reportValue(MetricName.DEPENDENCY_COUNT, String(count)); + } + reportValue(metric, value) { + miscUtils.getSetWithDefault(this.values, metric).add(value); + } + reportEnumerator(metric, value) { + miscUtils.getSetWithDefault(this.enumerators, metric).add(hashUtils.makeHash(value)); + } + reportHit(metric, extra = `*`) { + const ns = miscUtils.getMapWithDefault(this.hits, metric); + const current = miscUtils.getFactoryWithDefault(ns, extra, () => 0); + ns.set(extra, current + 1); + } + getRegistryPath() { + const registryFile = this.configuration.get(`globalFolder`); + return fslib_12.ppath.join(registryFile, `telemetry.json`); + } + sendReport(accountId) { + var _a, _b, _c; + const registryFile = this.getRegistryPath(); + let content; + try { + content = fslib_12.xfs.readJsonSync(registryFile); + } catch { + content = {}; } - return cooked; - }; - __importStar2 = function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (Object.hasOwnProperty.call(mod, k)) - result[k] = mod[k]; + const now = Date.now(); + const interval = this.configuration.get(`telemetryInterval`) * 24 * 60 * 60 * 1e3; + const lastUpdate = (_a = content.lastUpdate) !== null && _a !== void 0 ? _a : now + interval + Math.floor(interval * Math.random()); + const nextUpdate = lastUpdate + interval; + if (nextUpdate > now && content.lastUpdate != null) + return; + try { + fslib_12.xfs.mkdirSync(fslib_12.ppath.dirname(registryFile), { recursive: true }); + fslib_12.xfs.writeJsonSync(registryFile, { lastUpdate: now }); + } catch { + return; } - result["default"] = mod; - return result; - }; - __importDefault = function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - __classPrivateFieldGet = function(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); + if (nextUpdate > now) + return; + if (!content.blocks) + return; + const rawUrl = `https://browser-http-intake.logs.datadoghq.eu/v1/input/${accountId}?ddsource=yarn`; + const sendPayload = (payload) => httpUtils.post(rawUrl, payload, { + configuration: this.configuration + }).catch(() => { + }); + for (const [userId, block] of Object.entries((_b = content.blocks) !== null && _b !== void 0 ? _b : {})) { + if (Object.keys(block).length === 0) + continue; + const upload = block; + upload.userId = userId; + upload.reportType = `primary`; + for (const key of Object.keys((_c = upload.enumerators) !== null && _c !== void 0 ? _c : {})) + upload.enumerators[key] = upload.enumerators[key].length; + sendPayload(upload); + const toSend = /* @__PURE__ */ new Map(); + const maxValues = 20; + for (const [metricName, values] of Object.entries(upload.values)) + if (values.length > 0) + toSend.set(metricName, values.slice(0, maxValues)); + while (toSend.size > 0) { + const upload2 = {}; + upload2.userId = userId; + upload2.reportType = `secondary`; + upload2.metrics = {}; + for (const [metricName, values] of toSend) { + upload2.metrics[metricName] = values.shift(); + if (values.length === 0) { + toSend.delete(metricName); + } + } + sendPayload(upload2); + } + } + } + applyChanges() { + var _a, _b, _c, _d, _e, _f, _g, _h, _j; + const registryFile = this.getRegistryPath(); + let content; + try { + content = fslib_12.xfs.readJsonSync(registryFile); + } catch { + content = {}; } - return privateMap.get(receiver); - }; - __classPrivateFieldSet = function(receiver, privateMap, value) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); + const userId = (_a = this.configuration.get(`telemetryUserId`)) !== null && _a !== void 0 ? _a : `*`; + const blocks = content.blocks = (_b = content.blocks) !== null && _b !== void 0 ? _b : {}; + const block = blocks[userId] = (_c = blocks[userId]) !== null && _c !== void 0 ? _c : {}; + for (const key of this.hits.keys()) { + const store = block.hits = (_d = block.hits) !== null && _d !== void 0 ? _d : {}; + const ns = store[key] = (_e = store[key]) !== null && _e !== void 0 ? _e : {}; + for (const [extra, value] of this.hits.get(key)) { + ns[extra] = ((_f = ns[extra]) !== null && _f !== void 0 ? _f : 0) + value; + } } - privateMap.set(receiver, value); - return value; - }; - exporter("__extends", __extends); - exporter("__assign", __assign); - exporter("__rest", __rest); - exporter("__decorate", __decorate); - exporter("__param", __param); - exporter("__metadata", __metadata); - exporter("__awaiter", __awaiter); - exporter("__generator", __generator); - exporter("__exportStar", __exportStar); - exporter("__createBinding", __createBinding2); - exporter("__values", __values); - exporter("__read", __read); - exporter("__spread", __spread); - exporter("__spreadArrays", __spreadArrays); - exporter("__await", __await); - exporter("__asyncGenerator", __asyncGenerator); - exporter("__asyncDelegator", __asyncDelegator); - exporter("__asyncValues", __asyncValues); - exporter("__makeTemplateObject", __makeTemplateObject); - exporter("__importStar", __importStar2); - exporter("__importDefault", __importDefault); - exporter("__classPrivateFieldGet", __classPrivateFieldGet); - exporter("__classPrivateFieldSet", __classPrivateFieldSet); - }); - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/constants.js -var require_constants10 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/constants.js"(exports2) { + for (const field of [`values`, `enumerators`]) { + for (const key of this[field].keys()) { + const store = block[field] = (_g = block[field]) !== null && _g !== void 0 ? _g : {}; + store[key] = [.../* @__PURE__ */ new Set([ + ...(_h = store[key]) !== null && _h !== void 0 ? _h : [], + ...(_j = this[field].get(key)) !== null && _j !== void 0 ? _j : [] + ])]; + } + } + fslib_12.xfs.mkdirSync(fslib_12.ppath.dirname(registryFile), { recursive: true }); + fslib_12.xfs.writeJsonSync(registryFile, content); + } + startBuffer() { + process.on(`exit`, () => { + try { + this.applyChanges(); + } catch { + } + }); + } + }; + exports2.TelemetryManager = TelemetryManager; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/index.js +var require_lib126 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+core@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/core/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.treeUtils = exports2.tgzUtils = exports2.structUtils = exports2.semverUtils = exports2.scriptUtils = exports2.nodeUtils = exports2.miscUtils = exports2.formatUtils = exports2.folderUtils = exports2.execUtils = exports2.httpUtils = exports2.hashUtils = exports2.PackageExtensionStatus = exports2.PackageExtensionType = exports2.LinkType = exports2.YarnVersion = exports2.Workspace = exports2.WorkspaceResolver = exports2.WorkspaceFetcher = exports2.VirtualFetcher = exports2.ThrowReport = exports2.TelemetryManager = exports2.StreamReport = exports2.Report = exports2.ReportError = exports2.InstallMode = exports2.Project = exports2.MultiFetcher = exports2.stringifyMessageName = exports2.parseMessageName = exports2.MessageName = exports2.Manifest = exports2.LockfileResolver = exports2.LightReport = exports2.LegacyMigrationResolver = exports2.BuildType = exports2.WindowsLinkType = exports2.SettingsType = exports2.ProjectLookup = exports2.FormatType = exports2.Configuration = exports2.TAG_REGEXP = exports2.LEGACY_PLUGINS = exports2.DEFAULT_LOCK_FILENAME = exports2.DEFAULT_RC_FILENAME = exports2.Cache = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var execUtils = tslib_12.__importStar(require_execUtils()); + exports2.execUtils = execUtils; + var folderUtils = tslib_12.__importStar(require_folderUtils()); + exports2.folderUtils = folderUtils; + var formatUtils = tslib_12.__importStar(require_formatUtils()); + exports2.formatUtils = formatUtils; + var hashUtils = tslib_12.__importStar(require_hashUtils()); + exports2.hashUtils = hashUtils; + var httpUtils = tslib_12.__importStar(require_httpUtils()); + exports2.httpUtils = httpUtils; + var miscUtils = tslib_12.__importStar(require_miscUtils()); + exports2.miscUtils = miscUtils; + var nodeUtils = tslib_12.__importStar(require_nodeUtils()); + exports2.nodeUtils = nodeUtils; + var scriptUtils = tslib_12.__importStar(require_scriptUtils()); + exports2.scriptUtils = scriptUtils; + var semverUtils = tslib_12.__importStar(require_semverUtils()); + exports2.semverUtils = semverUtils; + var structUtils = tslib_12.__importStar(require_structUtils()); + exports2.structUtils = structUtils; + var tgzUtils = tslib_12.__importStar(require_tgzUtils()); + exports2.tgzUtils = tgzUtils; + var treeUtils = tslib_12.__importStar(require_treeUtils()); + exports2.treeUtils = treeUtils; + var Cache_1 = require_Cache(); + Object.defineProperty(exports2, "Cache", { enumerable: true, get: function() { + return Cache_1.Cache; + } }); + var Configuration_1 = require_Configuration(); + Object.defineProperty(exports2, "DEFAULT_RC_FILENAME", { enumerable: true, get: function() { + return Configuration_1.DEFAULT_RC_FILENAME; + } }); + Object.defineProperty(exports2, "DEFAULT_LOCK_FILENAME", { enumerable: true, get: function() { + return Configuration_1.DEFAULT_LOCK_FILENAME; + } }); + Object.defineProperty(exports2, "LEGACY_PLUGINS", { enumerable: true, get: function() { + return Configuration_1.LEGACY_PLUGINS; + } }); + Object.defineProperty(exports2, "TAG_REGEXP", { enumerable: true, get: function() { + return Configuration_1.TAG_REGEXP; + } }); + var Configuration_2 = require_Configuration(); + Object.defineProperty(exports2, "Configuration", { enumerable: true, get: function() { + return Configuration_2.Configuration; + } }); + Object.defineProperty(exports2, "FormatType", { enumerable: true, get: function() { + return Configuration_2.FormatType; + } }); + Object.defineProperty(exports2, "ProjectLookup", { enumerable: true, get: function() { + return Configuration_2.ProjectLookup; + } }); + Object.defineProperty(exports2, "SettingsType", { enumerable: true, get: function() { + return Configuration_2.SettingsType; + } }); + Object.defineProperty(exports2, "WindowsLinkType", { enumerable: true, get: function() { + return Configuration_2.WindowsLinkType; + } }); + var Installer_1 = require_Installer(); + Object.defineProperty(exports2, "BuildType", { enumerable: true, get: function() { + return Installer_1.BuildType; + } }); + var LegacyMigrationResolver_1 = require_LegacyMigrationResolver(); + Object.defineProperty(exports2, "LegacyMigrationResolver", { enumerable: true, get: function() { + return LegacyMigrationResolver_1.LegacyMigrationResolver; + } }); + var LightReport_1 = require_LightReport(); + Object.defineProperty(exports2, "LightReport", { enumerable: true, get: function() { + return LightReport_1.LightReport; + } }); + var LockfileResolver_1 = require_LockfileResolver(); + Object.defineProperty(exports2, "LockfileResolver", { enumerable: true, get: function() { + return LockfileResolver_1.LockfileResolver; + } }); + var Manifest_1 = require_Manifest(); + Object.defineProperty(exports2, "Manifest", { enumerable: true, get: function() { + return Manifest_1.Manifest; + } }); + var MessageName_1 = require_MessageName(); + Object.defineProperty(exports2, "MessageName", { enumerable: true, get: function() { + return MessageName_1.MessageName; + } }); + Object.defineProperty(exports2, "parseMessageName", { enumerable: true, get: function() { + return MessageName_1.parseMessageName; + } }); + Object.defineProperty(exports2, "stringifyMessageName", { enumerable: true, get: function() { + return MessageName_1.stringifyMessageName; + } }); + var MultiFetcher_1 = require_MultiFetcher(); + Object.defineProperty(exports2, "MultiFetcher", { enumerable: true, get: function() { + return MultiFetcher_1.MultiFetcher; + } }); + var Project_1 = require_Project(); + Object.defineProperty(exports2, "Project", { enumerable: true, get: function() { + return Project_1.Project; + } }); + Object.defineProperty(exports2, "InstallMode", { enumerable: true, get: function() { + return Project_1.InstallMode; + } }); + var Report_1 = require_Report(); + Object.defineProperty(exports2, "ReportError", { enumerable: true, get: function() { + return Report_1.ReportError; + } }); + Object.defineProperty(exports2, "Report", { enumerable: true, get: function() { + return Report_1.Report; + } }); + var StreamReport_1 = require_StreamReport(); + Object.defineProperty(exports2, "StreamReport", { enumerable: true, get: function() { + return StreamReport_1.StreamReport; + } }); + var TelemetryManager_1 = require_TelemetryManager(); + Object.defineProperty(exports2, "TelemetryManager", { enumerable: true, get: function() { + return TelemetryManager_1.TelemetryManager; + } }); + var ThrowReport_1 = require_ThrowReport(); + Object.defineProperty(exports2, "ThrowReport", { enumerable: true, get: function() { + return ThrowReport_1.ThrowReport; + } }); + var VirtualFetcher_1 = require_VirtualFetcher(); + Object.defineProperty(exports2, "VirtualFetcher", { enumerable: true, get: function() { + return VirtualFetcher_1.VirtualFetcher; + } }); + var WorkspaceFetcher_1 = require_WorkspaceFetcher(); + Object.defineProperty(exports2, "WorkspaceFetcher", { enumerable: true, get: function() { + return WorkspaceFetcher_1.WorkspaceFetcher; + } }); + var WorkspaceResolver_1 = require_WorkspaceResolver(); + Object.defineProperty(exports2, "WorkspaceResolver", { enumerable: true, get: function() { + return WorkspaceResolver_1.WorkspaceResolver; + } }); + var Workspace_1 = require_Workspace(); + Object.defineProperty(exports2, "Workspace", { enumerable: true, get: function() { + return Workspace_1.Workspace; + } }); + var YarnVersion_1 = require_YarnVersion(); + Object.defineProperty(exports2, "YarnVersion", { enumerable: true, get: function() { + return YarnVersion_1.YarnVersion; + } }); + var types_1 = require_types5(); + Object.defineProperty(exports2, "LinkType", { enumerable: true, get: function() { + return types_1.LinkType; + } }); + Object.defineProperty(exports2, "PackageExtensionType", { enumerable: true, get: function() { + return types_1.PackageExtensionType; + } }); + Object.defineProperty(exports2, "PackageExtensionStatus", { enumerable: true, get: function() { + return types_1.PackageExtensionStatus; + } }); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/constants.js +var require_constants13 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.S_IFLNK = exports2.S_IFREG = exports2.S_IFDIR = exports2.S_IFMT = void 0; + exports2.SAFE_TIME = exports2.S_IFLNK = exports2.S_IFREG = exports2.S_IFDIR = exports2.S_IFMT = void 0; exports2.S_IFMT = 61440; exports2.S_IFDIR = 16384; exports2.S_IFREG = 32768; exports2.S_IFLNK = 40960; + exports2.SAFE_TIME = 456789e3; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/errors.js +var require_errors9 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/errors.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ERR_DIR_CLOSED = exports2.EOPNOTSUPP = exports2.ENOTEMPTY = exports2.EROFS = exports2.EEXIST = exports2.EISDIR = exports2.ENOTDIR = exports2.ENOENT = exports2.EBADF = exports2.EINVAL = exports2.ENOSYS = exports2.EBUSY = void 0; + function makeError(code, message2) { + return Object.assign(new Error(`${code}: ${message2}`), { code }); + } + function EBUSY(message2) { + return makeError(`EBUSY`, message2); + } + exports2.EBUSY = EBUSY; + function ENOSYS(message2, reason) { + return makeError(`ENOSYS`, `${message2}, ${reason}`); + } + exports2.ENOSYS = ENOSYS; + function EINVAL(reason) { + return makeError(`EINVAL`, `invalid argument, ${reason}`); + } + exports2.EINVAL = EINVAL; + function EBADF(reason) { + return makeError(`EBADF`, `bad file descriptor, ${reason}`); + } + exports2.EBADF = EBADF; + function ENOENT(reason) { + return makeError(`ENOENT`, `no such file or directory, ${reason}`); + } + exports2.ENOENT = ENOENT; + function ENOTDIR(reason) { + return makeError(`ENOTDIR`, `not a directory, ${reason}`); + } + exports2.ENOTDIR = ENOTDIR; + function EISDIR(reason) { + return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); + } + exports2.EISDIR = EISDIR; + function EEXIST(reason) { + return makeError(`EEXIST`, `file already exists, ${reason}`); + } + exports2.EEXIST = EEXIST; + function EROFS(reason) { + return makeError(`EROFS`, `read-only filesystem, ${reason}`); + } + exports2.EROFS = EROFS; + function ENOTEMPTY(reason) { + return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); + } + exports2.ENOTEMPTY = ENOTEMPTY; + function EOPNOTSUPP(reason) { + return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); + } + exports2.EOPNOTSUPP = EOPNOTSUPP; + function ERR_DIR_CLOSED() { + return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); + } + exports2.ERR_DIR_CLOSED = ERR_DIR_CLOSED; } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/statUtils.js -var require_statUtils = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/statUtils.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/statUtils.js +var require_statUtils2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/statUtils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.areStatsEqual = exports2.convertToBigIntStats = exports2.clearStats = exports2.makeEmptyStats = exports2.makeDefaultStats = exports2.BigIntStatsEntry = exports2.StatEntry = exports2.DirEntry = void 0; - var tslib_1 = require_tslib(); - var nodeUtils = (0, tslib_1.__importStar)(require("util")); - var constants_1 = require_constants10(); + exports2.areStatsEqual = exports2.convertToBigIntStats = exports2.clearStats = exports2.makeEmptyStats = exports2.makeDefaultStats = exports2.BigIntStatsEntry = exports2.StatEntry = exports2.DirEntry = exports2.DEFAULT_MODE = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var nodeUtils = tslib_12.__importStar(require("util")); + var constants_1 = require_constants13(); + exports2.DEFAULT_MODE = constants_1.S_IFREG | 420; var DirEntry = class { constructor() { this.name = ``; @@ -93391,13 +177033,13 @@ var require_statUtils = __commonJS({ this.mtimeMs = 0; this.ctimeMs = 0; this.birthtimeMs = 0; - this.atime = new Date(0); - this.mtime = new Date(0); - this.ctime = new Date(0); - this.birthtime = new Date(0); + this.atime = /* @__PURE__ */ new Date(0); + this.mtime = /* @__PURE__ */ new Date(0); + this.ctime = /* @__PURE__ */ new Date(0); + this.birthtime = /* @__PURE__ */ new Date(0); this.dev = 0; this.ino = 0; - this.mode = constants_1.S_IFREG | 420; + this.mode = exports2.DEFAULT_MODE; this.nlink = 1; this.rdev = 0; this.blocks = 1; @@ -93439,13 +177081,13 @@ var require_statUtils = __commonJS({ this.mtimeNs = BigInt(0); this.ctimeNs = BigInt(0); this.birthtimeNs = BigInt(0); - this.atime = new Date(0); - this.mtime = new Date(0); - this.ctime = new Date(0); - this.birthtime = new Date(0); + this.atime = /* @__PURE__ */ new Date(0); + this.mtime = /* @__PURE__ */ new Date(0); + this.ctime = /* @__PURE__ */ new Date(0); + this.birthtime = /* @__PURE__ */ new Date(0); this.dev = BigInt(0); this.ino = BigInt(0); - this.mode = BigInt(constants_1.S_IFREG | 420); + this.mode = BigInt(exports2.DEFAULT_MODE); this.nlink = BigInt(1); this.rdev = BigInt(0); this.blocks = BigInt(1); @@ -93490,7 +177132,7 @@ var require_statUtils = __commonJS({ } else if (typeof element === `bigint`) { stats[key] = BigInt(0); } else if (nodeUtils.types.isDate(element)) { - stats[key] = new Date(0); + stats[key] = /* @__PURE__ */ new Date(0); } } } @@ -93575,14 +177217,14 @@ var require_statUtils = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/path.js -var require_path4 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/path.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/path.js +var require_path7 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/path.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.toFilename = exports2.convertPath = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = void 0; - var tslib_1 = require_tslib(); - var path_1 = (0, tslib_1.__importDefault)(require("path")); + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var path_1 = tslib_12.__importDefault(require("path")); var PathType; (function(PathType2) { PathType2[PathType2["File"] = 0] = "File"; @@ -93591,15 +177233,22 @@ var require_path4 = __commonJS({ })(PathType || (PathType = {})); exports2.PortablePath = { root: `/`, - dot: `.` + dot: `.`, + parent: `..` }; exports2.Filename = { + home: `~`, nodeModules: `node_modules`, manifest: `package.json`, lockfile: `yarn.lock`, virtual: `__virtual__`, + /** + * @deprecated + */ pnpJs: `.pnp.js`, pnpCjs: `.pnp.cjs`, + pnpData: `.pnp.data.json`, + pnpEsmLoader: `.pnp.loader.mjs`, rc: `.yarnrc.yml` }; exports2.npath = Object.create(path_1.default); @@ -93631,16 +177280,17 @@ var require_path4 = __commonJS({ exports2.npath.contains = (from, to) => contains(exports2.npath, from, to); exports2.ppath.contains = (from, to) => contains(exports2.ppath, from, to); var WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; - var UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/; + var UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/; var PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; var UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; function fromPortablePath(p) { if (process.platform !== `win32`) return p; - if (p.match(PORTABLE_PATH_REGEXP)) - p = p.replace(PORTABLE_PATH_REGEXP, `$1`); - else if (p.match(UNC_PORTABLE_PATH_REGEXP)) - p = p.replace(UNC_PORTABLE_PATH_REGEXP, (match, p1, p2) => `\\\\${p1 ? `.\\` : ``}${p2}`); + let portablePathMatch, uncPortablePathMatch; + if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP)) + p = portablePathMatch[1]; + else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP)) + p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`; else return p; return p.replace(/\//g, `\\`); @@ -93648,11 +177298,13 @@ var require_path4 = __commonJS({ function toPortablePath(p) { if (process.platform !== `win32`) return p; - if (p.match(WINDOWS_PATH_REGEXP)) - p = p.replace(WINDOWS_PATH_REGEXP, `/$1`); - else if (p.match(UNC_WINDOWS_PATH_REGEXP)) - p = p.replace(UNC_WINDOWS_PATH_REGEXP, (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`); - return p.replace(/\\/g, `/`); + p = p.replace(/\\/g, `/`); + let windowsPathMatch, uncWindowsPathMatch; + if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP)) + p = `/${windowsPathMatch[1]}`; + else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP)) + p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; + return p; } function convertPath(targetPathUtils, sourcePath) { return targetPathUtils === exports2.npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); @@ -93667,29 +177319,36 @@ var require_path4 = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js -var require_copyPromise = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.copyPromise = exports2.LinkStrategy = void 0; - var tslib_1 = require_tslib(); - var fs_1 = (0, tslib_1.__importDefault)(require("fs")); - var path_1 = require_path4(); - var defaultTime = new Date(315532800 * 1e3); - var LinkStrategy; - (function(LinkStrategy2) { - LinkStrategy2["Allow"] = "allow"; - LinkStrategy2["ReadOnly"] = "readOnly"; - })(LinkStrategy = exports2.LinkStrategy || (exports2.LinkStrategy = {})); +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js +var require_copyPromise2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.copyPromise = exports2.setupCopyIndex = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var constants = tslib_12.__importStar(require_constants13()); + var path_1 = require_path7(); + var defaultTime = new Date(constants.SAFE_TIME * 1e3); + var defaultTimeMs = defaultTime.getTime(); + async function setupCopyIndex(destinationFs, linkStrategy) { + const hexCharacters = `0123456789abcdef`; + await destinationFs.mkdirPromise(linkStrategy.indexPath, { recursive: true }); + const promises = []; + for (const l1 of hexCharacters) + for (const l2 of hexCharacters) + promises.push(destinationFs.mkdirPromise(destinationFs.pathUtils.join(linkStrategy.indexPath, `${l1}${l2}`), { recursive: true })); + await Promise.all(promises); + return linkStrategy.indexPath; + } + exports2.setupCopyIndex = setupCopyIndex; async function copyPromise(destinationFs, destination, sourceFs, source, opts) { const normalizedDestination = destinationFs.pathUtils.normalize(destination); const normalizedSource = sourceFs.pathUtils.normalize(source); const prelayout = []; const postlayout = []; - await destinationFs.mkdirPromise(destinationFs.pathUtils.dirname(destination), { recursive: true }); - const updateTime = typeof destinationFs.lutimesPromise === `function` ? destinationFs.lutimesPromise.bind(destinationFs) : destinationFs.utimesPromise.bind(destinationFs); - await copyImpl(prelayout, postlayout, updateTime, destinationFs, normalizedDestination, sourceFs, normalizedSource, opts); + const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : await sourceFs.lstatPromise(normalizedSource); + await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] }); + await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts, didParentExist: true }); for (const operation of prelayout) await operation(); await Promise.all(postlayout.map((operation) => { @@ -93697,26 +177356,26 @@ var require_copyPromise = __commonJS({ })); } exports2.copyPromise = copyPromise; - async function copyImpl(prelayout, postlayout, updateTime, destinationFs, destination, sourceFs, source, opts) { - var _a, _b; - const destinationStat = await maybeLStat(destinationFs, destination); + async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) { + var _a, _b, _c; + const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null; const sourceStat = await sourceFs.lstatPromise(source); - const referenceTime = opts.stableTime ? { mtime: defaultTime, atime: defaultTime } : sourceStat; + const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat; let updated; switch (true) { case sourceStat.isDirectory(): { - updated = await copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); } break; case sourceStat.isFile(): { - updated = await copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); } break; case sourceStat.isSymbolicLink(): { - updated = await copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); } break; default: @@ -93725,13 +177384,15 @@ var require_copyPromise = __commonJS({ } break; } - if (updated || ((_a = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _a === void 0 ? void 0 : _a.getTime()) !== referenceTime.mtime.getTime() || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _b === void 0 ? void 0 : _b.getTime()) !== referenceTime.atime.getTime()) { - postlayout.push(() => updateTime(destination, referenceTime.atime, referenceTime.mtime)); - updated = true; - } - if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) { - postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511)); - updated = true; + if (((_a = opts.linkStrategy) === null || _a === void 0 ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) { + if (updated || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _b === void 0 ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _c === void 0 ? void 0 : _c.getTime()) !== atime.getTime()) { + postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime)); + updated = true; + } + if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) { + postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511)); + updated = true; + } } return updated; } @@ -93742,7 +177403,7 @@ var require_copyPromise = __commonJS({ return null; } } - async function copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { if (destinationStat !== null && !destinationStat.isDirectory()) { if (opts.overwrite) { prelayout.push(async () => destinationFs.removePromise(destination)); @@ -93753,19 +177414,28 @@ var require_copyPromise = __commonJS({ } let updated = false; if (destinationStat === null) { - prelayout.push(async () => destinationFs.mkdirPromise(destination, { mode: sourceStat.mode })); + prelayout.push(async () => { + try { + await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode }); + } catch (err) { + if (err.code !== `EEXIST`) { + throw err; + } + } + }); updated = true; } const entries = await sourceFs.readdirPromise(source); + const nextOpts = opts.didParentExist && !destinationStat ? { ...opts, didParentExist: false } : opts; if (opts.stableSort) { for (const entry of entries.sort()) { - if (await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts)) { + if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) { updated = true; } } } else { const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { - await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts); + await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts); })); if (entriesUpdateStatus.some((status) => status)) { updated = true; @@ -93773,42 +177443,73 @@ var require_copyPromise = __commonJS({ } return updated; } - var isCloneSupportedCache = new WeakMap(); - function makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy) { - return async () => { - await opFs.linkPromise(source, destination); - if (linkStrategy === LinkStrategy.ReadOnly) { - sourceStat.mode &= ~146; - await opFs.chmodPromise(destination, sourceStat.mode); + async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, linkStrategy) { + const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` }); + const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${sourceHash}.dat`); + let AtomicBehavior; + (function(AtomicBehavior2) { + AtomicBehavior2[AtomicBehavior2["Lock"] = 0] = "Lock"; + AtomicBehavior2[AtomicBehavior2["Rename"] = 1] = "Rename"; + })(AtomicBehavior || (AtomicBehavior = {})); + let atomicBehavior = AtomicBehavior.Rename; + let indexStat = await maybeLStat(destinationFs, indexPath); + if (destinationStat) { + const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino; + const isIndexModified = (indexStat === null || indexStat === void 0 ? void 0 : indexStat.mtimeMs) !== defaultTimeMs; + if (isDestinationHardlinkedFromIndex) { + if (isIndexModified && linkStrategy.autoRepair) { + atomicBehavior = AtomicBehavior.Lock; + indexStat = null; + } + } + if (!isDestinationHardlinkedFromIndex) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } } - }; - } - function makeCloneLinkOperation(opFs, destination, source, sourceStat, linkStrategy) { - const isCloneSupported = isCloneSupportedCache.get(opFs); - if (typeof isCloneSupported === `undefined`) { - return async () => { - try { - await opFs.copyFilePromise(source, destination, fs_1.default.constants.COPYFILE_FICLONE_FORCE); - isCloneSupportedCache.set(opFs, true); - } catch (err) { - if (err.code === `ENOSYS` || err.code === `ENOTSUP`) { - isCloneSupportedCache.set(opFs, false); - await makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy)(); - } else { - throw err; + } + const tempPath = !indexStat && atomicBehavior === AtomicBehavior.Rename ? `${indexPath}.${Math.floor(Math.random() * 4294967296).toString(16).padStart(8, `0`)}` : null; + let tempPathCleaned = false; + prelayout.push(async () => { + if (!indexStat) { + if (atomicBehavior === AtomicBehavior.Lock) { + await destinationFs.lockPromise(indexPath, async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(indexPath, content); + }); + } + if (atomicBehavior === AtomicBehavior.Rename && tempPath) { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(tempPath, content); + try { + await destinationFs.linkPromise(tempPath, indexPath); + } catch (err) { + if (err.code === `EEXIST`) { + tempPathCleaned = true; + await destinationFs.unlinkPromise(tempPath); + } else { + throw err; + } } } - }; - } else { - if (isCloneSupported) { - return async () => opFs.copyFilePromise(source, destination, fs_1.default.constants.COPYFILE_FICLONE_FORCE); - } else { - return makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy); } - } + if (!destinationStat) { + await destinationFs.linkPromise(indexPath, destination); + } + }); + postlayout.push(async () => { + if (!indexStat) + await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime); + if (tempPath && !tempPathCleaned) { + await destinationFs.unlinkPromise(tempPath); + } + }); + return false; } - async function copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - var _a; + async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { if (destinationStat !== null) { if (opts.overwrite) { prelayout.push(async () => destinationFs.removePromise(destination)); @@ -93817,12 +177518,21 @@ var require_copyPromise = __commonJS({ return false; } } - const linkStrategy = (_a = opts.linkStrategy) !== null && _a !== void 0 ? _a : null; - const op = destinationFs === sourceFs ? linkStrategy !== null ? makeCloneLinkOperation(destinationFs, destination, source, sourceStat, linkStrategy) : async () => destinationFs.copyFilePromise(source, destination, fs_1.default.constants.COPYFILE_FICLONE) : linkStrategy !== null ? makeLinkOperation(destinationFs, destination, source, sourceStat, linkStrategy) : async () => destinationFs.writeFilePromise(destination, await sourceFs.readFilePromise(source)); - prelayout.push(async () => op()); + prelayout.push(async () => { + const content = await sourceFs.readFilePromise(source); + await destinationFs.writeFilePromise(destination, content); + }); return true; } - async function copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + var _a; + if (((_a = opts.linkStrategy) === null || _a === void 0 ? void 0 : _a.type) === `HardlinkFromIndex`) { + return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy); + } else { + return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + } + async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { if (destinationStat !== null) { if (opts.overwrite) { prelayout.push(async () => destinationFs.removePromise(destination)); @@ -93839,85 +177549,17 @@ var require_copyPromise = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/errors.js -var require_errors4 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/errors.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LibzipError = exports2.ERR_DIR_CLOSED = exports2.EOPNOTSUPP = exports2.ENOTEMPTY = exports2.EROFS = exports2.EEXIST = exports2.EISDIR = exports2.ENOTDIR = exports2.ENOENT = exports2.EBADF = exports2.EINVAL = exports2.ENOSYS = exports2.EBUSY = void 0; - function makeError(code, message2) { - return Object.assign(new Error(`${code}: ${message2}`), { code }); - } - function EBUSY(message2) { - return makeError(`EBUSY`, message2); - } - exports2.EBUSY = EBUSY; - function ENOSYS(message2, reason) { - return makeError(`ENOSYS`, `${message2}, ${reason}`); - } - exports2.ENOSYS = ENOSYS; - function EINVAL(reason) { - return makeError(`EINVAL`, `invalid argument, ${reason}`); - } - exports2.EINVAL = EINVAL; - function EBADF(reason) { - return makeError(`EBADF`, `bad file descriptor, ${reason}`); - } - exports2.EBADF = EBADF; - function ENOENT(reason) { - return makeError(`ENOENT`, `no such file or directory, ${reason}`); - } - exports2.ENOENT = ENOENT; - function ENOTDIR(reason) { - return makeError(`ENOTDIR`, `not a directory, ${reason}`); - } - exports2.ENOTDIR = ENOTDIR; - function EISDIR(reason) { - return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); - } - exports2.EISDIR = EISDIR; - function EEXIST(reason) { - return makeError(`EEXIST`, `file already exists, ${reason}`); - } - exports2.EEXIST = EEXIST; - function EROFS(reason) { - return makeError(`EROFS`, `read-only filesystem, ${reason}`); - } - exports2.EROFS = EROFS; - function ENOTEMPTY(reason) { - return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); - } - exports2.ENOTEMPTY = ENOTEMPTY; - function EOPNOTSUPP(reason) { - return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); - } - exports2.EOPNOTSUPP = EOPNOTSUPP; - function ERR_DIR_CLOSED() { - return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); - } - exports2.ERR_DIR_CLOSED = ERR_DIR_CLOSED; - var LibzipError = class extends Error { - constructor(message2, code) { - super(message2); - this.name = `Libzip Error`; - this.code = code; - } - }; - exports2.LibzipError = LibzipError; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js -var require_opendir = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js +var require_opendir2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.opendir = exports2.CustomDir = void 0; - var tslib_1 = require_tslib(); - var errors = (0, tslib_1.__importStar)(require_errors4()); + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var errors = tslib_12.__importStar(require_errors9()); var CustomDir = class { - constructor(path, nextDirent, opts = {}) { - this.path = path; + constructor(path2, nextDirent, opts = {}) { + this.path = path2; this.nextDirent = nextDirent; this.opts = opts; this.closed = false; @@ -93961,30 +177603,239 @@ var require_opendir = __commonJS({ } }; exports2.CustomDir = CustomDir; - function opendir(fakeFs, path, entries, opts) { + function opendir(fakeFs, path2, entries, opts) { const nextDirent = () => { const filename = entries.shift(); if (typeof filename === `undefined`) return null; - return Object.assign(fakeFs.statSync(fakeFs.pathUtils.join(path, filename)), { + return Object.assign(fakeFs.statSync(fakeFs.pathUtils.join(path2, filename)), { name: filename }); }; - return new CustomDir(path, nextDirent, opts); + return new CustomDir(path2, nextDirent, opts); } exports2.opendir = opendir; } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/FakeFS.js -var require_FakeFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/FakeFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js +var require_CustomStatWatcher2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CustomStatWatcher = exports2.assertStatus = exports2.Status = exports2.Event = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var events_1 = require("events"); + var statUtils = tslib_12.__importStar(require_statUtils2()); + var Event; + (function(Event2) { + Event2["Change"] = "change"; + Event2["Stop"] = "stop"; + })(Event || (exports2.Event = Event = {})); + var Status; + (function(Status2) { + Status2["Ready"] = "ready"; + Status2["Running"] = "running"; + Status2["Stopped"] = "stopped"; + })(Status || (exports2.Status = Status = {})); + function assertStatus(current, expected) { + if (current !== expected) { + throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); + } + } + exports2.assertStatus = assertStatus; + var CustomStatWatcher = class extends events_1.EventEmitter { + static create(fakeFs, path2, opts) { + const statWatcher = new CustomStatWatcher(fakeFs, path2, opts); + statWatcher.start(); + return statWatcher; + } + constructor(fakeFs, path2, { bigint = false } = {}) { + super(); + this.status = Status.Ready; + this.changeListeners = /* @__PURE__ */ new Map(); + this.startTimeout = null; + this.fakeFs = fakeFs; + this.path = path2; + this.bigint = bigint; + this.lastStats = this.stat(); + } + start() { + assertStatus(this.status, Status.Ready); + this.status = Status.Running; + this.startTimeout = setTimeout(() => { + this.startTimeout = null; + if (!this.fakeFs.existsSync(this.path)) { + this.emit(Event.Change, this.lastStats, this.lastStats); + } + }, 3); + } + stop() { + assertStatus(this.status, Status.Running); + this.status = Status.Stopped; + if (this.startTimeout !== null) { + clearTimeout(this.startTimeout); + this.startTimeout = null; + } + this.emit(Event.Stop); + } + stat() { + try { + return this.fakeFs.statSync(this.path, { bigint: this.bigint }); + } catch (error) { + const statInstance = this.bigint ? new statUtils.BigIntStatsEntry() : new statUtils.StatEntry(); + return statUtils.clearStats(statInstance); + } + } + /** + * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes. + * + * @param opts.persistent Decides whether the interval should be immediately unref-ed. + */ + makeInterval(opts) { + const interval = setInterval(() => { + const currentStats = this.stat(); + const previousStats = this.lastStats; + if (statUtils.areStatsEqual(currentStats, previousStats)) + return; + this.lastStats = currentStats; + this.emit(Event.Change, currentStats, previousStats); + }, opts.interval); + return opts.persistent ? interval : interval.unref(); + } + /** + * Registers a listener and assigns it an interval. + */ + registerChangeListener(listener, opts) { + this.addListener(Event.Change, listener); + this.changeListeners.set(listener, this.makeInterval(opts)); + } + /** + * Unregisters the listener and clears the assigned interval. + */ + unregisterChangeListener(listener) { + this.removeListener(Event.Change, listener); + const interval = this.changeListeners.get(listener); + if (typeof interval !== `undefined`) + clearInterval(interval); + this.changeListeners.delete(listener); + } + /** + * Unregisters all listeners and clears all assigned intervals. + */ + unregisterAllChangeListeners() { + for (const listener of this.changeListeners.keys()) { + this.unregisterChangeListener(listener); + } + } + hasChangeListeners() { + return this.changeListeners.size > 0; + } + /** + * Refs all stored intervals. + */ + ref() { + for (const interval of this.changeListeners.values()) + interval.ref(); + return this; + } + /** + * Unrefs all stored intervals. + */ + unref() { + for (const interval of this.changeListeners.values()) + interval.unref(); + return this; + } + }; + exports2.CustomStatWatcher = CustomStatWatcher; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js +var require_watchFile2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = void 0; + var CustomStatWatcher_1 = require_CustomStatWatcher2(); + var statWatchersByFakeFS = /* @__PURE__ */ new WeakMap(); + function watchFile(fakeFs, path2, a, b) { + let bigint; + let persistent; + let interval; + let listener; + switch (typeof a) { + case `function`: + { + bigint = false; + persistent = true; + interval = 5007; + listener = a; + } + break; + default: + { + ({ + bigint = false, + persistent = true, + interval = 5007 + } = a); + listener = b; + } + break; + } + let statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + statWatchersByFakeFS.set(fakeFs, statWatchers = /* @__PURE__ */ new Map()); + let statWatcher = statWatchers.get(path2); + if (typeof statWatcher === `undefined`) { + statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path2, { bigint }); + statWatchers.set(path2, statWatcher); + } + statWatcher.registerChangeListener(listener, { persistent, interval }); + return statWatcher; + } + exports2.watchFile = watchFile; + function unwatchFile(fakeFs, path2, cb) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + const statWatcher = statWatchers.get(path2); + if (typeof statWatcher === `undefined`) + return; + if (typeof cb === `undefined`) + statWatcher.unregisterAllChangeListeners(); + else + statWatcher.unregisterChangeListener(cb); + if (!statWatcher.hasChangeListeners()) { + statWatcher.stop(); + statWatchers.delete(path2); + } + } + exports2.unwatchFile = unwatchFile; + function unwatchAllFiles(fakeFs) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) + return; + for (const path2 of statWatchers.keys()) { + unwatchFile(fakeFs, path2); + } + } + exports2.unwatchAllFiles = unwatchAllFiles; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/FakeFS.js +var require_FakeFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/FakeFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.normalizeLineEndings = exports2.BasePortableFakeFS = exports2.FakeFS = void 0; + var crypto_1 = require("crypto"); var os_1 = require("os"); - var copyPromise_1 = require_copyPromise(); - var path_1 = require_path4(); + var copyPromise_1 = require_copyPromise2(); + var path_1 = require_path7(); var FakeFS = class { constructor(pathUtils) { this.pathUtils = pathUtils; @@ -94008,6 +177859,20 @@ var require_FakeFS = __commonJS({ } } } + async checksumFilePromise(path2, { algorithm = `sha512` } = {}) { + const fd = await this.openPromise(path2, `r`); + try { + const CHUNK_SIZE = 65536; + const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE); + const hash = (0, crypto_1.createHash)(algorithm); + let bytesRead = 0; + while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0) + hash.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead)); + return hash.digest(`hex`); + } finally { + await this.closePromise(fd); + } + } async removePromise(p, { recursive = true, maxRetries = 5 } = {}) { let stat; try { @@ -94026,24 +177891,18 @@ var require_FakeFS = __commonJS({ return this.removePromise(this.pathUtils.resolve(p, entry)); })); } - let t = 0; - do { + for (let t = 0; t <= maxRetries; t++) { try { await this.rmdirPromise(p); break; } catch (error) { - if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { - if (maxRetries === 0) { - break; - } else { - await new Promise((resolve) => setTimeout(resolve, t * 100)); - continue; - } - } else { + if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) { throw error; + } else if (t < maxRetries) { + await new Promise((resolve) => setTimeout(resolve, t * 100)); } } - } while (t++ < maxRetries); + } } else { await this.unlinkPromise(p); } @@ -94071,8 +177930,9 @@ var require_FakeFS = __commonJS({ async mkdirpPromise(p, { chmod, utimes } = {}) { p = this.resolve(p); if (p === this.pathUtils.dirname(p)) - return; + return void 0; const parts = p.split(this.pathUtils.sep); + let createdDirectory; for (let u = 2; u <= parts.length; ++u) { const subPath = parts.slice(0, u).join(this.pathUtils.sep); if (!this.existsSync(subPath)) { @@ -94085,6 +177945,7 @@ var require_FakeFS = __commonJS({ throw error; } } + createdDirectory !== null && createdDirectory !== void 0 ? createdDirectory : createdDirectory = subPath; if (chmod != null) await this.chmodPromise(subPath, chmod); if (utimes != null) { @@ -94095,12 +177956,14 @@ var require_FakeFS = __commonJS({ } } } + return createdDirectory; } mkdirpSync(p, { chmod, utimes } = {}) { p = this.resolve(p); if (p === this.pathUtils.dirname(p)) - return; + return void 0; const parts = p.split(this.pathUtils.sep); + let createdDirectory; for (let u = 2; u <= parts.length; ++u) { const subPath = parts.slice(0, u).join(this.pathUtils.sep); if (!this.existsSync(subPath)) { @@ -94113,6 +177976,7 @@ var require_FakeFS = __commonJS({ throw error; } } + createdDirectory !== null && createdDirectory !== void 0 ? createdDirectory : createdDirectory = subPath; if (chmod != null) this.chmodSync(subPath, chmod); if (utimes != null) { @@ -94123,6 +177987,7 @@ var require_FakeFS = __commonJS({ } } } + return createdDirectory; } async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) { return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy }); @@ -94158,12 +178023,12 @@ var require_FakeFS = __commonJS({ } async changeFilePromise(p, content, opts = {}) { if (Buffer.isBuffer(content)) { - return this.changeFileBufferPromise(p, content); + return this.changeFileBufferPromise(p, content, opts); } else { return this.changeFileTextPromise(p, content, opts); } } - async changeFileBufferPromise(p, content) { + async changeFileBufferPromise(p, content, { mode } = {}) { let current = Buffer.alloc(0); try { current = await this.readFilePromise(p); @@ -94171,9 +178036,9 @@ var require_FakeFS = __commonJS({ } if (Buffer.compare(current, content) === 0) return; - await this.writeFilePromise(p, content); + await this.writeFilePromise(p, content, { mode }); } - async changeFileTextPromise(p, content, { automaticNewlines } = {}) { + async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) { let current = ``; try { current = await this.readFilePromise(p, `utf8`); @@ -94182,16 +178047,16 @@ var require_FakeFS = __commonJS({ const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; if (current === normalizedContent) return; - await this.writeFilePromise(p, normalizedContent); + await this.writeFilePromise(p, normalizedContent, { mode }); } changeFileSync(p, content, opts = {}) { if (Buffer.isBuffer(content)) { - return this.changeFileBufferSync(p, content); + return this.changeFileBufferSync(p, content, opts); } else { return this.changeFileTextSync(p, content, opts); } } - changeFileBufferSync(p, content) { + changeFileBufferSync(p, content, { mode } = {}) { let current = Buffer.alloc(0); try { current = this.readFileSync(p); @@ -94199,9 +178064,9 @@ var require_FakeFS = __commonJS({ } if (Buffer.compare(current, content) === 0) return; - this.writeFileSync(p, content); + this.writeFileSync(p, content, { mode }); } - changeFileTextSync(p, content, { automaticNewlines = false } = {}) { + changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) { let current = ``; try { current = this.readFileSync(p, `utf8`); @@ -94210,7 +178075,7 @@ var require_FakeFS = __commonJS({ const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; if (current === normalizedContent) return; - this.writeFileSync(p, normalizedContent); + this.writeFileSync(p, normalizedContent, { mode }); } async movePromise(fromP, toP) { try { @@ -94271,2007 +178136,782 @@ var require_FakeFS = __commonJS({ await new Promise((resolve) => setTimeout(resolve, interval)); } else { throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); - } - } else { - throw error; - } - } - } - await this.writePromise(fd, JSON.stringify([process.pid])); - try { - return await callback(); - } finally { - try { - await this.closePromise(fd); - await this.unlinkPromise(lockPath); - } catch (error) { - } - } - } - async readJsonPromise(p) { - const content = await this.readFilePromise(p, `utf8`); - try { - return JSON.parse(content); - } catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - readJsonSync(p) { - const content = this.readFileSync(p, `utf8`); - try { - return JSON.parse(content); - } catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - async writeJsonPromise(p, data) { - return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)} -`); - } - writeJsonSync(p, data) { - return this.writeFileSync(p, `${JSON.stringify(data, null, 2)} -`); - } - async preserveTimePromise(p, cb) { - const stat = await this.lstatPromise(p); - const result = await cb(); - if (typeof result !== `undefined`) - p = result; - if (this.lutimesPromise) { - await this.lutimesPromise(p, stat.atime, stat.mtime); - } else if (!stat.isSymbolicLink()) { - await this.utimesPromise(p, stat.atime, stat.mtime); - } - } - async preserveTimeSync(p, cb) { - const stat = this.lstatSync(p); - const result = cb(); - if (typeof result !== `undefined`) - p = result; - if (this.lutimesSync) { - this.lutimesSync(p, stat.atime, stat.mtime); - } else if (!stat.isSymbolicLink()) { - this.utimesSync(p, stat.atime, stat.mtime); - } - } - }; - exports2.FakeFS = FakeFS; - FakeFS.DEFAULT_TIME = 315532800; - var BasePortableFakeFS = class extends FakeFS { - constructor() { - super(path_1.ppath); - } - }; - exports2.BasePortableFakeFS = BasePortableFakeFS; - function getEndOfLine(content) { - const matches = content.match(/\r?\n/g); - if (matches === null) - return os_1.EOL; - const crlf = matches.filter((nl) => nl === `\r -`).length; - const lf = matches.length - crlf; - return crlf > lf ? `\r -` : ` -`; - } - function normalizeLineEndings(originalContent, newContent) { - return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); - } - exports2.normalizeLineEndings = normalizeLineEndings; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/NodeFS.js -var require_NodeFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/NodeFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NodeFS = void 0; - var tslib_1 = require_tslib(); - var fs_1 = (0, tslib_1.__importDefault)(require("fs")); - var FakeFS_1 = require_FakeFS(); - var errors_1 = require_errors4(); - var path_1 = require_path4(); - var NodeFS = class extends FakeFS_1.BasePortableFakeFS { - constructor(realFs = fs_1.default) { - super(); - this.realFs = realFs; - if (typeof this.realFs.lutimes !== `undefined`) { - this.lutimesPromise = this.lutimesPromiseImpl; - this.lutimesSync = this.lutimesSyncImpl; - } - } - getExtractHint() { - return false; - } - getRealPath() { - return path_1.PortablePath.root; - } - resolve(p) { - return path_1.ppath.resolve(p); - } - async openPromise(p, flags, mode) { - return await new Promise((resolve, reject) => { - this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); - }); - } - openSync(p, flags, mode) { - return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode); - } - async opendirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (typeof opts !== `undefined`) { - this.realFs.opendir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }).then((dir) => { - return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); - }); - } - opendirSync(p, opts) { - const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts) : this.realFs.opendirSync(path_1.npath.fromPortablePath(p)); - return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); - } - async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { - return await new Promise((resolve, reject) => { - this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { - if (error) { - reject(error); - } else { - resolve(bytesRead); - } - }); - }); - } - readSync(fd, buffer, offset, length, position) { - return this.realFs.readSync(fd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - return await new Promise((resolve, reject) => { - if (typeof buffer === `string`) { - return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); - } else { - return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); - } - }); - } - writeSync(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return this.realFs.writeSync(fd, buffer, offset); - } else { - return this.realFs.writeSync(fd, buffer, offset, length, position); - } - } - async closePromise(fd) { - await new Promise((resolve, reject) => { - this.realFs.close(fd, this.makeCallback(resolve, reject)); - }); - } - closeSync(fd) { - this.realFs.closeSync(fd); - } - createReadStream(p, opts) { - const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; - return this.realFs.createReadStream(realPath, opts); - } - createWriteStream(p, opts) { - const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; - return this.realFs.createWriteStream(realPath, opts); - } - async realpathPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); - }).then((path) => { - return path_1.npath.toPortablePath(path); - }); - } - realpathSync(p) { - return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {})); - } - async existsPromise(p) { - return await new Promise((resolve) => { - this.realFs.exists(path_1.npath.fromPortablePath(p), resolve); - }); - } - accessSync(p, mode) { - return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode); - } - async accessPromise(p, mode) { - return await new Promise((resolve, reject) => { - this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); - }); - } - existsSync(p) { - return this.realFs.existsSync(path_1.npath.fromPortablePath(p)); - } - async statPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.stat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - statSync(p, opts) { - if (opts) { - return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts); - } else { - return this.realFs.statSync(path_1.npath.fromPortablePath(p)); - } - } - async fstatPromise(fd, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.fstat(fd, this.makeCallback(resolve, reject)); - } - }); - } - fstatSync(fd, opts) { - if (opts) { - return this.realFs.fstatSync(fd, opts); - } else { - return this.realFs.fstatSync(fd); - } - } - async lstatPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.lstat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - lstatSync(p, opts) { - if (opts) { - return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts); - } else { - return this.realFs.lstatSync(path_1.npath.fromPortablePath(p)); - } - } - async chmodPromise(p, mask) { - return await new Promise((resolve, reject) => { - this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); - }); - } - chmodSync(p, mask) { - return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask); - } - async chownPromise(p, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); - }); - } - chownSync(p, uid, gid) { - return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid); - } - async renamePromise(oldP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - renameSync(oldP, newP) { - return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP)); - } - async copyFilePromise(sourceP, destP, flags = 0) { - return await new Promise((resolve, reject) => { - this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); - }); - } - copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags); - } - async appendFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); - } - appendFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFileSync(fsNativePath, content, opts); - } else { - this.realFs.appendFileSync(fsNativePath, content); - } - } - async writeFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); - } - }); - } - writeFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFileSync(fsNativePath, content, opts); - } else { - this.realFs.writeFileSync(fsNativePath, content); - } - } - async unlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); - } - unlinkSync(p) { - return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p)); - } - async utimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - utimesSync(p, atime, mtime) { - this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime); - } - async lutimesPromiseImpl(p, atime, mtime) { - const lutimes = this.realFs.lutimes; - if (typeof lutimes === `undefined`) - throw (0, errors_1.ENOSYS)(`unavailable Node binding`, `lutimes '${p}'`); - return await new Promise((resolve, reject) => { - lutimes.call(this.realFs, path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - lutimesSyncImpl(p, atime, mtime) { - const lutimesSync = this.realFs.lutimesSync; - if (typeof lutimesSync === `undefined`) - throw (0, errors_1.ENOSYS)(`unavailable Node binding`, `lutimes '${p}'`); - lutimesSync.call(this.realFs, path_1.npath.fromPortablePath(p), atime, mtime); - } - async mkdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - }); - } - mkdirSync(p, opts) { - return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts); - } - async rmdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }); - } - rmdirSync(p, opts) { - return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts); - } - async linkPromise(existingP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - linkSync(existingP, newP) { - return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP)); - } - async symlinkPromise(target, p, type) { - return await new Promise((resolve, reject) => { - this.realFs.symlink(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); - }); - } - symlinkSync(target, p, type) { - return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type); - } - async readFilePromise(p, encoding) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); - }); - } - readFileSync(p, encoding) { - const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; - return this.realFs.readFileSync(fsNativePath, encoding); - } - async readdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { - this.realFs.readdir(path_1.npath.fromPortablePath(p), { withFileTypes: true }, this.makeCallback(resolve, reject)); - } else { - this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject)); - } - }); - } - readdirSync(p, opts) { - if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), { withFileTypes: true }); - } else { - return this.realFs.readdirSync(path_1.npath.fromPortablePath(p)); - } - } - async readlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }).then((path) => { - return path_1.npath.toPortablePath(path); - }); - } - readlinkSync(p) { - return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p))); - } - async truncatePromise(p, len) { - return await new Promise((resolve, reject) => { - this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); - }); - } - truncateSync(p, len) { - return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len); - } - watch(p, a, b) { - return this.realFs.watch(path_1.npath.fromPortablePath(p), a, b); - } - watchFile(p, a, b) { - return this.realFs.watchFile(path_1.npath.fromPortablePath(p), a, b); - } - unwatchFile(p, cb) { - return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb); - } - makeCallback(resolve, reject) { - return (err, result) => { - if (err) { - reject(err); - } else { - resolve(result); - } - }; - } - }; - exports2.NodeFS = NodeFS; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js -var require_CustomStatWatcher = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.CustomStatWatcher = exports2.assertStatus = exports2.Status = exports2.Event = void 0; - var tslib_1 = require_tslib(); - var events_1 = require("events"); - var statUtils = (0, tslib_1.__importStar)(require_statUtils()); - var Event; - (function(Event2) { - Event2["Change"] = "change"; - Event2["Stop"] = "stop"; - })(Event = exports2.Event || (exports2.Event = {})); - var Status; - (function(Status2) { - Status2["Ready"] = "ready"; - Status2["Running"] = "running"; - Status2["Stopped"] = "stopped"; - })(Status = exports2.Status || (exports2.Status = {})); - function assertStatus(current, expected) { - if (current !== expected) { - throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); - } - } - exports2.assertStatus = assertStatus; - var CustomStatWatcher = class extends events_1.EventEmitter { - constructor(fakeFs, path, { bigint = false } = {}) { - super(); - this.status = Status.Ready; - this.changeListeners = new Map(); - this.startTimeout = null; - this.fakeFs = fakeFs; - this.path = path; - this.bigint = bigint; - this.lastStats = this.stat(); - } - static create(fakeFs, path, opts) { - const statWatcher = new CustomStatWatcher(fakeFs, path, opts); - statWatcher.start(); - return statWatcher; - } - start() { - assertStatus(this.status, Status.Ready); - this.status = Status.Running; - this.startTimeout = setTimeout(() => { - this.startTimeout = null; - if (!this.fakeFs.existsSync(this.path)) { - this.emit(Event.Change, this.lastStats, this.lastStats); - } - }, 3); - } - stop() { - assertStatus(this.status, Status.Running); - this.status = Status.Stopped; - if (this.startTimeout !== null) { - clearTimeout(this.startTimeout); - this.startTimeout = null; - } - this.emit(Event.Stop); - } - stat() { - try { - return this.fakeFs.statSync(this.path, { bigint: this.bigint }); - } catch (error) { - if (error.code === `ENOENT`) { - const statInstance = this.bigint ? new statUtils.BigIntStatsEntry() : new statUtils.StatEntry(); - return statUtils.clearStats(statInstance); - } else { - throw error; - } - } - } - makeInterval(opts) { - const interval = setInterval(() => { - const currentStats = this.stat(); - const previousStats = this.lastStats; - if (statUtils.areStatsEqual(currentStats, previousStats)) - return; - this.lastStats = currentStats; - this.emit(Event.Change, currentStats, previousStats); - }, opts.interval); - return opts.persistent ? interval : interval.unref(); - } - registerChangeListener(listener, opts) { - this.addListener(Event.Change, listener); - this.changeListeners.set(listener, this.makeInterval(opts)); - } - unregisterChangeListener(listener) { - this.removeListener(Event.Change, listener); - const interval = this.changeListeners.get(listener); - if (typeof interval !== `undefined`) - clearInterval(interval); - this.changeListeners.delete(listener); - } - unregisterAllChangeListeners() { - for (const listener of this.changeListeners.keys()) { - this.unregisterChangeListener(listener); - } - } - hasChangeListeners() { - return this.changeListeners.size > 0; - } - ref() { - for (const interval of this.changeListeners.values()) - interval.ref(); - return this; - } - unref() { - for (const interval of this.changeListeners.values()) - interval.unref(); - return this; - } - }; - exports2.CustomStatWatcher = CustomStatWatcher; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js -var require_watchFile = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = void 0; - var CustomStatWatcher_1 = require_CustomStatWatcher(); - var statWatchersByFakeFS = new WeakMap(); - function watchFile(fakeFs, path, a, b) { - let bigint; - let persistent; - let interval; - let listener; - switch (typeof a) { - case `function`: - { - bigint = false; - persistent = true; - interval = 5007; - listener = a; - } - break; - default: - { - ({ - bigint = false, - persistent = true, - interval = 5007 - } = a); - listener = b; - } - break; - } - let statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - statWatchersByFakeFS.set(fakeFs, statWatchers = new Map()); - let statWatcher = statWatchers.get(path); - if (typeof statWatcher === `undefined`) { - statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path, { bigint }); - statWatchers.set(path, statWatcher); - } - statWatcher.registerChangeListener(listener, { persistent, interval }); - return statWatcher; - } - exports2.watchFile = watchFile; - function unwatchFile(fakeFs, path, cb) { - const statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - return; - const statWatcher = statWatchers.get(path); - if (typeof statWatcher === `undefined`) - return; - if (typeof cb === `undefined`) - statWatcher.unregisterAllChangeListeners(); - else - statWatcher.unregisterChangeListener(cb); - if (!statWatcher.hasChangeListeners()) { - statWatcher.stop(); - statWatchers.delete(path); - } - } - exports2.unwatchFile = unwatchFile; - function unwatchAllFiles(fakeFs) { - const statWatchers = statWatchersByFakeFS.get(fakeFs); - if (typeof statWatchers === `undefined`) - return; - for (const path of statWatchers.keys()) { - unwatchFile(fakeFs, path); - } - } - exports2.unwatchAllFiles = unwatchAllFiles; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ZipFS.js -var require_ZipFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ZipFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ZipFS = exports2.DEFAULT_COMPRESSION_LEVEL = void 0; - var tslib_1 = require_tslib(); - var fs_1 = require("fs"); - var stream_1 = require("stream"); - var util_1 = require("util"); - var zlib_1 = (0, tslib_1.__importDefault)(require("zlib")); - var FakeFS_1 = require_FakeFS(); - var NodeFS_1 = require_NodeFS(); - var opendir_1 = require_opendir(); - var watchFile_1 = require_watchFile(); - var constants_1 = require_constants10(); - var errors = (0, tslib_1.__importStar)(require_errors4()); - var path_1 = require_path4(); - var statUtils = (0, tslib_1.__importStar)(require_statUtils()); - exports2.DEFAULT_COMPRESSION_LEVEL = `mixed`; - function toUnixTimestamp(time) { - if (typeof time === `string` && String(+time) === time) - return +time; - if (Number.isFinite(time)) { - if (time < 0) { - return Date.now() / 1e3; - } else { - return time; - } - } - if ((0, util_1.isDate)(time)) - return time.getTime() / 1e3; - throw new Error(`Invalid time`); - } - var ZipFS = class extends FakeFS_1.BasePortableFakeFS { - constructor(source, opts) { - super(); - this.lzSource = null; - this.listings = new Map(); - this.entries = new Map(); - this.fileSources = new Map(); - this.fds = new Map(); - this.nextFd = 0; - this.ready = false; - this.readOnly = false; - this.libzip = opts.libzip; - const pathOptions = opts; - this.level = typeof pathOptions.level !== `undefined` ? pathOptions.level : exports2.DEFAULT_COMPRESSION_LEVEL; - if (source === null) { - source = Buffer.from([ - 80, - 75, - 5, - 6, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ]); - } - if (typeof source === `string`) { - const { baseFs = new NodeFS_1.NodeFS() } = pathOptions; - this.baseFs = baseFs; - this.path = source; - } else { - this.path = null; - this.baseFs = null; - } - if (opts.stats) { - this.stats = opts.stats; - } else { - if (typeof source === `string`) { - try { - this.stats = this.baseFs.statSync(source); - } catch (error) { - if (error.code === `ENOENT` && pathOptions.create) { - this.stats = statUtils.makeDefaultStats(); - } else { - throw error; - } - } - } else { - this.stats = statUtils.makeDefaultStats(); - } - } - const errPtr = this.libzip.malloc(4); - try { - let flags = 0; - if (typeof source === `string` && pathOptions.create) - flags |= this.libzip.ZIP_CREATE | this.libzip.ZIP_TRUNCATE; - if (opts.readOnly) { - flags |= this.libzip.ZIP_RDONLY; - this.readOnly = true; - } - if (typeof source === `string`) { - this.zip = this.libzip.open(path_1.npath.fromPortablePath(source), flags, errPtr); - } else { - const lzSource = this.allocateUnattachedSource(source); - try { - this.zip = this.libzip.openFromSource(lzSource, flags, errPtr); - this.lzSource = lzSource; - } catch (error) { - this.libzip.source.free(lzSource); - throw error; - } - } - if (this.zip === 0) { - const error = this.libzip.struct.errorS(); - this.libzip.error.initWithCode(error, this.libzip.getValue(errPtr, `i32`)); - throw this.makeLibzipError(error); - } - } finally { - this.libzip.free(errPtr); - } - this.listings.set(path_1.PortablePath.root, new Set()); - const entryCount = this.libzip.getNumEntries(this.zip, 0); - for (let t = 0; t < entryCount; ++t) { - const raw = this.libzip.getName(this.zip, t, 0); - if (path_1.ppath.isAbsolute(raw)) - continue; - const p = path_1.ppath.resolve(path_1.PortablePath.root, raw); - this.registerEntry(p, t); - if (raw.endsWith(`/`)) { - this.registerListing(p); - } - } - this.symlinkCount = this.libzip.ext.countSymlinks(this.zip); - if (this.symlinkCount === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - this.ready = true; - } - makeLibzipError(error) { - const errorCode = this.libzip.struct.errorCodeZip(error); - const strerror = this.libzip.error.strerror(error); - const libzipError = new errors.LibzipError(strerror, this.libzip.errors[errorCode]); - if (errorCode === this.libzip.errors.ZIP_ER_CHANGED) - throw new Error(`Assertion failed: Unexpected libzip error: ${libzipError.message}`); - return libzipError; - } - getExtractHint(hints) { - for (const fileName of this.entries.keys()) { - const ext = this.pathUtils.extname(fileName); - if (hints.relevantExtensions.has(ext)) { - return true; + } + } else { + throw error; + } } } - return false; - } - getAllFiles() { - return Array.from(this.entries.keys()); - } - getRealPath() { - if (!this.path) - throw new Error(`ZipFS don't have real paths when loaded from a buffer`); - return this.path; - } - getBufferAndClose() { - this.prepareClose(); - if (!this.lzSource) - throw new Error(`ZipFS was not created from a Buffer`); + await this.writePromise(fd, JSON.stringify([process.pid])); try { - this.libzip.source.keep(this.lzSource); - if (this.libzip.close(this.zip) === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - if (this.libzip.source.open(this.lzSource) === -1) - throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); - if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_END) === -1) - throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); - const size = this.libzip.source.tell(this.lzSource); - if (size === -1) - throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); - if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_SET) === -1) - throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); - const buffer = this.libzip.malloc(size); - if (!buffer) - throw new Error(`Couldn't allocate enough memory`); + return await callback(); + } finally { try { - const rc = this.libzip.source.read(this.lzSource, buffer, size); - if (rc === -1) - throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); - else if (rc < size) - throw new Error(`Incomplete read`); - else if (rc > size) - throw new Error(`Overread`); - const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); - return Buffer.from(memory); - } finally { - this.libzip.free(buffer); + await this.closePromise(fd); + await this.unlinkPromise(lockPath); + } catch (error) { } - } finally { - this.libzip.source.close(this.lzSource); - this.libzip.source.free(this.lzSource); - this.ready = false; } } - prepareClose() { - if (!this.ready) - throw errors.EBUSY(`archive closed, close`); - (0, watchFile_1.unwatchAllFiles)(this); + async readJsonPromise(p) { + const content = await this.readFilePromise(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; + } } - saveAndClose() { - if (!this.path || !this.baseFs) - throw new Error(`ZipFS cannot be saved and must be discarded when loaded from a buffer`); - this.prepareClose(); - if (this.readOnly) { - this.discardAndClose(); - return; + readJsonSync(p) { + const content = this.readFileSync(p, `utf8`); + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; } - const previousMod = this.baseFs.existsSync(this.path) ? this.baseFs.statSync(this.path).mode & 511 : null; - const rc = this.libzip.close(this.zip); - if (rc === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - if (previousMod === null) - this.baseFs.chmodSync(this.path, this.stats.mode); - else if (previousMod !== (this.baseFs.statSync(this.path).mode & 511)) - this.baseFs.chmodSync(this.path, previousMod); - this.ready = false; } - discardAndClose() { - this.prepareClose(); - this.libzip.discard(this.zip); - this.ready = false; + async writeJsonPromise(p, data) { + return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)} +`); } - resolve(p) { - return path_1.ppath.resolve(path_1.PortablePath.root, p); + writeJsonSync(p, data) { + return this.writeFileSync(p, `${JSON.stringify(data, null, 2)} +`); + } + async preserveTimePromise(p, cb) { + const stat = await this.lstatPromise(p); + const result2 = await cb(); + if (typeof result2 !== `undefined`) + p = result2; + await this.lutimesPromise(p, stat.atime, stat.mtime); + } + async preserveTimeSync(p, cb) { + const stat = this.lstatSync(p); + const result2 = cb(); + if (typeof result2 !== `undefined`) + p = result2; + this.lutimesSync(p, stat.atime, stat.mtime); + } + }; + exports2.FakeFS = FakeFS; + var BasePortableFakeFS = class extends FakeFS { + constructor() { + super(path_1.ppath); + } + }; + exports2.BasePortableFakeFS = BasePortableFakeFS; + function getEndOfLine(content) { + const matches = content.match(/\r?\n/g); + if (matches === null) + return os_1.EOL; + const crlf = matches.filter((nl) => nl === `\r +`).length; + const lf = matches.length - crlf; + return crlf > lf ? `\r +` : ` +`; + } + function normalizeLineEndings(originalContent, newContent) { + return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); + } + exports2.normalizeLineEndings = normalizeLineEndings; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js +var require_ProxiedFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ProxiedFS = void 0; + var FakeFS_1 = require_FakeFS2(); + var ProxiedFS = class extends FakeFS_1.FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + resolve(path2) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path2))); + } + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); } async openPromise(p, flags, mode) { - return this.openSync(p, flags, mode); + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); } openSync(p, flags, mode) { - const fd = this.nextFd++; - this.fds.set(fd, { cursor: 0, p }); - return fd; - } - hasOpenFileHandles() { - return !!this.fds.size; + return this.baseFs.openSync(this.mapToBase(p), flags, mode); } async opendirPromise(p, opts) { - return this.opendirSync(p, opts); + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); } - opendirSync(p, opts = {}) { - const resolvedP = this.resolveFilename(`opendir '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`opendir '${p}'`); - const directoryListing = this.listings.get(resolvedP); - if (!directoryListing) - throw errors.ENOTDIR(`opendir '${p}'`); - const entries = [...directoryListing]; - const fd = this.openSync(resolvedP, `r`); - const onClose = () => { - this.closeSync(fd); - }; - return (0, opendir_1.opendir)(this, resolvedP, entries, { onClose }); + opendirSync(p, opts) { + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); } async readPromise(fd, buffer, offset, length, position) { - return this.readSync(fd, buffer, offset, length, position); + return await this.baseFs.readPromise(fd, buffer, offset, length, position); } - readSync(fd, buffer, offset = 0, length = 0, position = -1) { - const entry = this.fds.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`read`); - let realPosition; - if (position === -1 || position === null) - realPosition = entry.cursor; - else - realPosition = position; - const source = this.readFileSync(entry.p); - source.copy(buffer, offset, realPosition, realPosition + length); - const bytesRead = Math.max(0, Math.min(source.length - realPosition, length)); - if (position === -1 || position === null) - entry.cursor += bytesRead; - return bytesRead; + readSync(fd, buffer, offset, length, position) { + return this.baseFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.writeSync(fd, buffer, position); + return await this.baseFs.writePromise(fd, buffer, offset); } else { - return this.writeSync(fd, buffer, offset, length, position); + return await this.baseFs.writePromise(fd, buffer, offset, length, position); } } writeSync(fd, buffer, offset, length, position) { - const entry = this.fds.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`read`); - throw new Error(`Unimplemented`); + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } } async closePromise(fd) { - return this.closeSync(fd); + return this.baseFs.closePromise(fd); } closeSync(fd) { - const entry = this.fds.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`read`); - this.fds.delete(fd); + this.baseFs.closeSync(fd); } - createReadStream(p, { encoding } = {}) { - if (p === null) - throw new Error(`Unimplemented`); - const fd = this.openSync(p, `r`); - const stream = Object.assign(new stream_1.PassThrough({ - emitClose: true, - autoDestroy: true, - destroy: (error, callback) => { - clearImmediate(immediate); - this.closeSync(fd); - callback(error); - } - }), { - close() { - stream.destroy(); - }, - bytesRead: 0, - path: p - }); - const immediate = setImmediate(async () => { - try { - const data = await this.readFilePromise(p, encoding); - stream.bytesRead = data.length; - stream.end(data); - } catch (error) { - stream.destroy(error); - } - }); - return stream; + createReadStream(p, opts) { + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); } - createWriteStream(p, { encoding } = {}) { - if (this.readOnly) - throw errors.EROFS(`open '${p}'`); - if (p === null) - throw new Error(`Unimplemented`); - const chunks = []; - const fd = this.openSync(p, `w`); - const stream = Object.assign(new stream_1.PassThrough({ - autoDestroy: true, - emitClose: true, - destroy: (error, callback) => { - try { - if (error) { - callback(error); - } else { - this.writeFileSync(p, Buffer.concat(chunks), encoding); - callback(null); - } - } catch (err) { - callback(err); - } finally { - this.closeSync(fd); - } - } - }), { - bytesWritten: 0, - path: p, - close() { - stream.destroy(); - } - }); - stream.on(`data`, (chunk) => { - const chunkBuffer = Buffer.from(chunk); - stream.bytesWritten += chunkBuffer.length; - chunks.push(chunkBuffer); - }); - return stream; + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); } async realpathPromise(p) { - return this.realpathSync(p); + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); } realpathSync(p) { - const resolvedP = this.resolveFilename(`lstat '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`lstat '${p}'`); - return resolvedP; + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); } async existsPromise(p) { - return this.existsSync(p); + return this.baseFs.existsPromise(this.mapToBase(p)); } existsSync(p) { - if (!this.ready) - throw errors.EBUSY(`archive closed, existsSync '${p}'`); - if (this.symlinkCount === 0) { - const resolvedP2 = path_1.ppath.resolve(path_1.PortablePath.root, p); - return this.entries.has(resolvedP2) || this.listings.has(resolvedP2); - } - let resolvedP; - try { - resolvedP = this.resolveFilename(`stat '${p}'`, p); - } catch (error) { - return false; - } - return this.entries.has(resolvedP) || this.listings.has(resolvedP); + return this.baseFs.existsSync(this.mapToBase(p)); } - async accessPromise(p, mode) { - return this.accessSync(p, mode); + accessSync(p, mode) { + return this.baseFs.accessSync(this.mapToBase(p), mode); } - accessSync(p, mode = fs_1.constants.F_OK) { - const resolvedP = this.resolveFilename(`access '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`access '${p}'`); - if (this.readOnly && mode & fs_1.constants.W_OK) { - throw errors.EROFS(`access '${p}'`); - } + async accessPromise(p, mode) { + return this.baseFs.accessPromise(this.mapToBase(p), mode); } async statPromise(p, opts) { - return this.statSync(p, opts); + return this.baseFs.statPromise(this.mapToBase(p), opts); } statSync(p, opts) { - const resolvedP = this.resolveFilename(`stat '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`stat '${p}'`); - if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) - throw errors.ENOTDIR(`stat '${p}'`); - return this.statImpl(`stat '${p}'`, resolvedP, opts); + return this.baseFs.statSync(this.mapToBase(p), opts); } async fstatPromise(fd, opts) { - return this.fstatSync(fd, opts); + return this.baseFs.fstatPromise(fd, opts); } fstatSync(fd, opts) { - const entry = this.fds.get(fd); - if (typeof entry === `undefined`) - throw errors.EBADF(`fstatSync`); - const { p } = entry; - const resolvedP = this.resolveFilename(`stat '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`stat '${p}'`); - if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) - throw errors.ENOTDIR(`stat '${p}'`); - return this.statImpl(`fstat '${p}'`, resolvedP, opts); + return this.baseFs.fstatSync(fd, opts); } - async lstatPromise(p, opts) { - return this.lstatSync(p, opts); + lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); } lstatSync(p, opts) { - const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`lstat '${p}'`); - if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) - throw errors.ENOTDIR(`lstat '${p}'`); - return this.statImpl(`lstat '${p}'`, resolvedP, opts); - } - statImpl(reason, p, opts = {}) { - const entry = this.entries.get(p); - if (typeof entry !== `undefined`) { - const stat = this.libzip.struct.statS(); - const rc = this.libzip.statIndex(this.zip, entry, 0, 0, stat); - if (rc === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - const uid = this.stats.uid; - const gid = this.stats.gid; - const size = this.libzip.struct.statSize(stat) >>> 0; - const blksize = 512; - const blocks = Math.ceil(size / blksize); - const mtimeMs = (this.libzip.struct.statMtime(stat) >>> 0) * 1e3; - const atimeMs = mtimeMs; - const birthtimeMs = mtimeMs; - const ctimeMs = mtimeMs; - const atime = new Date(atimeMs); - const birthtime = new Date(birthtimeMs); - const ctime = new Date(ctimeMs); - const mtime = new Date(mtimeMs); - const type = this.listings.has(p) ? constants_1.S_IFDIR : this.isSymbolicLink(entry) ? constants_1.S_IFLNK : constants_1.S_IFREG; - const defaultMode = type === constants_1.S_IFDIR ? 493 : 420; - const mode = type | this.getUnixMode(entry, defaultMode) & 511; - const crc = this.libzip.struct.statCrc(stat); - const statInstance = Object.assign(new statUtils.StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode, crc }); - return opts.bigint === true ? statUtils.convertToBigIntStats(statInstance) : statInstance; - } - if (this.listings.has(p)) { - const uid = this.stats.uid; - const gid = this.stats.gid; - const size = 0; - const blksize = 512; - const blocks = 0; - const atimeMs = this.stats.mtimeMs; - const birthtimeMs = this.stats.mtimeMs; - const ctimeMs = this.stats.mtimeMs; - const mtimeMs = this.stats.mtimeMs; - const atime = new Date(atimeMs); - const birthtime = new Date(birthtimeMs); - const ctime = new Date(ctimeMs); - const mtime = new Date(mtimeMs); - const mode = constants_1.S_IFDIR | 493; - const crc = 0; - const statInstance = Object.assign(new statUtils.StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode, crc }); - return opts.bigint === true ? statUtils.convertToBigIntStats(statInstance) : statInstance; - } - throw new Error(`Unreachable`); - } - getUnixMode(index, defaultMode) { - const rc = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); - if (rc === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; - if (opsys !== this.libzip.ZIP_OPSYS_UNIX) - return defaultMode; - return this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; - } - registerListing(p) { - let listing = this.listings.get(p); - if (listing) - return listing; - const parentListing = this.registerListing(path_1.ppath.dirname(p)); - listing = new Set(); - parentListing.add(path_1.ppath.basename(p)); - this.listings.set(p, listing); - return listing; - } - registerEntry(p, index) { - const parentListing = this.registerListing(path_1.ppath.dirname(p)); - parentListing.add(path_1.ppath.basename(p)); - this.entries.set(p, index); - } - unregisterListing(p) { - this.listings.delete(p); - const parentListing = this.listings.get(path_1.ppath.dirname(p)); - parentListing === null || parentListing === void 0 ? void 0 : parentListing.delete(path_1.ppath.basename(p)); - } - unregisterEntry(p) { - this.unregisterListing(p); - const entry = this.entries.get(p); - this.entries.delete(p); - if (typeof entry === `undefined`) - return; - this.fileSources.delete(entry); - if (this.isSymbolicLink(entry)) { - this.symlinkCount--; - } - } - deleteEntry(p, index) { - this.unregisterEntry(p); - const rc = this.libzip.delete(this.zip, index); - if (rc === -1) { - throw this.makeLibzipError(this.libzip.getError(this.zip)); - } - } - resolveFilename(reason, p, resolveLastComponent = true) { - if (!this.ready) - throw errors.EBUSY(`archive closed, ${reason}`); - let resolvedP = path_1.ppath.resolve(path_1.PortablePath.root, p); - if (resolvedP === `/`) - return path_1.PortablePath.root; - const fileIndex = this.entries.get(resolvedP); - if (resolveLastComponent && fileIndex !== void 0) { - if (this.symlinkCount !== 0 && this.isSymbolicLink(fileIndex)) { - const target = this.getFileSource(fileIndex).toString(); - return this.resolveFilename(reason, path_1.ppath.resolve(path_1.ppath.dirname(resolvedP), target), true); - } else { - return resolvedP; - } - } - while (true) { - const parentP = this.resolveFilename(reason, path_1.ppath.dirname(resolvedP), true); - const isDir = this.listings.has(parentP); - const doesExist = this.entries.has(parentP); - if (!isDir && !doesExist) - throw errors.ENOENT(reason); - if (!isDir) - throw errors.ENOTDIR(reason); - resolvedP = path_1.ppath.resolve(parentP, path_1.ppath.basename(resolvedP)); - if (!resolveLastComponent || this.symlinkCount === 0) - break; - const index = this.libzip.name.locate(this.zip, resolvedP.slice(1)); - if (index === -1) - break; - if (this.isSymbolicLink(index)) { - const target = this.getFileSource(index).toString(); - resolvedP = path_1.ppath.resolve(path_1.ppath.dirname(resolvedP), target); - } else { - break; - } - } - return resolvedP; - } - allocateBuffer(content) { - if (!Buffer.isBuffer(content)) - content = Buffer.from(content); - const buffer = this.libzip.malloc(content.byteLength); - if (!buffer) - throw new Error(`Couldn't allocate enough memory`); - const heap = new Uint8Array(this.libzip.HEAPU8.buffer, buffer, content.byteLength); - heap.set(content); - return { buffer, byteLength: content.byteLength }; - } - allocateUnattachedSource(content) { - const error = this.libzip.struct.errorS(); - const { buffer, byteLength } = this.allocateBuffer(content); - const source = this.libzip.source.fromUnattachedBuffer(buffer, byteLength, 0, true, error); - if (source === 0) { - this.libzip.free(error); - throw this.makeLibzipError(error); - } - return source; - } - allocateSource(content) { - const { buffer, byteLength } = this.allocateBuffer(content); - const source = this.libzip.source.fromBuffer(this.zip, buffer, byteLength, 0, true); - if (source === 0) { - this.libzip.free(buffer); - throw this.makeLibzipError(this.libzip.getError(this.zip)); - } - return source; - } - setFileSource(p, content) { - const buffer = Buffer.isBuffer(content) ? content : Buffer.from(content); - const target = path_1.ppath.relative(path_1.PortablePath.root, p); - const lzSource = this.allocateSource(content); - try { - const newIndex = this.libzip.file.add(this.zip, target, lzSource, this.libzip.ZIP_FL_OVERWRITE); - if (newIndex === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - if (this.level !== `mixed`) { - let method; - if (this.level === 0) - method = this.libzip.ZIP_CM_STORE; - else - method = this.libzip.ZIP_CM_DEFLATE; - const rc = this.libzip.file.setCompression(this.zip, newIndex, 0, method, this.level); - if (rc === -1) { - throw this.makeLibzipError(this.libzip.getError(this.zip)); - } - } - this.fileSources.set(newIndex, buffer); - return newIndex; - } catch (error) { - this.libzip.source.free(lzSource); - throw error; - } + return this.baseFs.lstatSync(this.mapToBase(p), opts); } - isSymbolicLink(index) { - if (this.symlinkCount === 0) - return false; - const attrs = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); - if (attrs === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; - if (opsys !== this.libzip.ZIP_OPSYS_UNIX) - return false; - const attributes = this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; - return (attributes & constants_1.S_IFMT) === constants_1.S_IFLNK; + async fchmodPromise(fd, mask) { + return this.baseFs.fchmodPromise(fd, mask); } - getFileSource(index, opts = { asyncDecompress: false }) { - const cachedFileSource = this.fileSources.get(index); - if (typeof cachedFileSource !== `undefined`) - return cachedFileSource; - const stat = this.libzip.struct.statS(); - const rc = this.libzip.statIndex(this.zip, index, 0, 0, stat); - if (rc === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - const size = this.libzip.struct.statCompSize(stat); - const compressionMethod = this.libzip.struct.statCompMethod(stat); - const buffer = this.libzip.malloc(size); - try { - const file = this.libzip.fopenIndex(this.zip, index, 0, this.libzip.ZIP_FL_COMPRESSED); - if (file === 0) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - try { - const rc2 = this.libzip.fread(file, buffer, size, 0); - if (rc2 === -1) - throw this.makeLibzipError(this.libzip.file.getError(file)); - else if (rc2 < size) - throw new Error(`Incomplete read`); - else if (rc2 > size) - throw new Error(`Overread`); - const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); - const data = Buffer.from(memory); - if (compressionMethod === 0) { - this.fileSources.set(index, data); - return data; - } else if (opts.asyncDecompress) { - return new Promise((resolve, reject) => { - zlib_1.default.inflateRaw(data, (error, result) => { - if (error) { - reject(error); - } else { - this.fileSources.set(index, result); - resolve(result); - } - }); - }); - } else { - const decompressedData = zlib_1.default.inflateRawSync(data); - this.fileSources.set(index, decompressedData); - return decompressedData; - } - } finally { - this.libzip.fclose(file); - } - } finally { - this.libzip.free(buffer); - } + fchmodSync(fd, mask) { + return this.baseFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return this.chmodSync(p, mask); + return this.baseFs.chmodPromise(this.mapToBase(p), mask); } chmodSync(p, mask) { - if (this.readOnly) - throw errors.EROFS(`chmod '${p}'`); - mask &= 493; - const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false); - const entry = this.entries.get(resolvedP); - if (typeof entry === `undefined`) - throw new Error(`Assertion failed: The entry should have been registered (${resolvedP})`); - const oldMod = this.getUnixMode(entry, constants_1.S_IFREG | 0); - const newMod = oldMod & ~511 | mask; - const rc = this.libzip.file.setExternalAttributes(this.zip, entry, 0, 0, this.libzip.ZIP_OPSYS_UNIX, newMod << 16); - if (rc === -1) { - throw this.makeLibzipError(this.libzip.getError(this.zip)); - } + return this.baseFs.chmodSync(this.mapToBase(p), mask); + } + async fchownPromise(fd, uid, gid) { + return this.baseFs.fchownPromise(fd, uid, gid); + } + fchownSync(fd, uid, gid) { + return this.baseFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return this.chownSync(p, uid, gid); + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); } chownSync(p, uid, gid) { - throw new Error(`Unimplemented`); + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); } async renamePromise(oldP, newP) { - return this.renameSync(oldP, newP); + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); } renameSync(oldP, newP) { - throw new Error(`Unimplemented`); + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); } - async copyFilePromise(sourceP, destP, flags) { - const { indexSource, indexDest, resolvedDestP } = this.prepareCopyFile(sourceP, destP, flags); - const source = await this.getFileSource(indexSource, { asyncDecompress: true }); - const newIndex = this.setFileSource(resolvedDestP, source); - if (newIndex !== indexDest) { - this.registerEntry(resolvedDestP, newIndex); - } + async copyFilePromise(sourceP, destP, flags = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); } copyFileSync(sourceP, destP, flags = 0) { - const { indexSource, indexDest, resolvedDestP } = this.prepareCopyFile(sourceP, destP, flags); - const source = this.getFileSource(indexSource); - const newIndex = this.setFileSource(resolvedDestP, source); - if (newIndex !== indexDest) { - this.registerEntry(resolvedDestP, newIndex); - } - } - prepareCopyFile(sourceP, destP, flags = 0) { - if (this.readOnly) - throw errors.EROFS(`copyfile '${sourceP} -> '${destP}'`); - if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0) - throw errors.ENOSYS(`unsupported clone operation`, `copyfile '${sourceP}' -> ${destP}'`); - const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP); - const indexSource = this.entries.get(resolvedSourceP); - if (typeof indexSource === `undefined`) - throw errors.EINVAL(`copyfile '${sourceP}' -> '${destP}'`); - const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP); - const indexDest = this.entries.get(resolvedDestP); - if ((flags & (fs_1.constants.COPYFILE_EXCL | fs_1.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`) - throw errors.EEXIST(`copyfile '${sourceP}' -> '${destP}'`); - return { - indexSource, - resolvedDestP, - indexDest - }; + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); } async appendFilePromise(p, content, opts) { - if (this.readOnly) - throw errors.EROFS(`open '${p}'`); - if (typeof opts === `undefined`) - opts = { flag: `a` }; - else if (typeof opts === `string`) - opts = { flag: `a`, encoding: opts }; - else if (typeof opts.flag === `undefined`) - opts = { flag: `a`, ...opts }; - return this.writeFilePromise(p, content, opts); + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); } - appendFileSync(p, content, opts = {}) { - if (this.readOnly) - throw errors.EROFS(`open '${p}'`); - if (typeof opts === `undefined`) - opts = { flag: `a` }; - else if (typeof opts === `string`) - opts = { flag: `a`, encoding: opts }; - else if (typeof opts.flag === `undefined`) - opts = { flag: `a`, ...opts }; - return this.writeFileSync(p, content, opts); + appendFileSync(p, content, opts) { + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); } async writeFilePromise(p, content, opts) { - const { encoding, index, resolvedP } = this.prepareWriteFile(p, opts); - if (index !== void 0 && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) - content = Buffer.concat([await this.getFileSource(index, { asyncDecompress: true }), Buffer.from(content)]); - if (encoding !== null) - content = content.toString(encoding); - const newIndex = this.setFileSource(resolvedP, content); - if (newIndex !== index) { - this.registerEntry(resolvedP, newIndex); - } + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); } writeFileSync(p, content, opts) { - const { encoding, index, resolvedP } = this.prepareWriteFile(p, opts); - if (index !== void 0 && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) - content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]); - if (encoding !== null) - content = content.toString(encoding); - const newIndex = this.setFileSource(resolvedP, content); - if (newIndex !== index) { - this.registerEntry(resolvedP, newIndex); - } - } - prepareWriteFile(p, opts) { - if (typeof p !== `string`) - throw errors.EBADF(`read`); - if (this.readOnly) - throw errors.EROFS(`open '${p}'`); - const resolvedP = this.resolveFilename(`open '${p}'`, p); - if (this.listings.has(resolvedP)) - throw errors.EISDIR(`open '${p}'`); - let encoding = null; - if (typeof opts === `string`) - encoding = opts; - else if (typeof opts === `object` && opts.encoding) - encoding = opts.encoding; - const index = this.entries.get(resolvedP); - return { - encoding, - resolvedP, - index - }; + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); } async unlinkPromise(p) { - return this.unlinkSync(p); + return this.baseFs.unlinkPromise(this.mapToBase(p)); } unlinkSync(p) { - if (this.readOnly) - throw errors.EROFS(`unlink '${p}'`); - const resolvedP = this.resolveFilename(`unlink '${p}'`, p); - if (this.listings.has(resolvedP)) - throw errors.EISDIR(`unlink '${p}'`); - const index = this.entries.get(resolvedP); - if (typeof index === `undefined`) - throw errors.EINVAL(`unlink '${p}'`); - this.deleteEntry(resolvedP, index); + return this.baseFs.unlinkSync(this.mapToBase(p)); } async utimesPromise(p, atime, mtime) { - return this.utimesSync(p, atime, mtime); + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); } utimesSync(p, atime, mtime) { - if (this.readOnly) - throw errors.EROFS(`utimes '${p}'`); - const resolvedP = this.resolveFilename(`utimes '${p}'`, p); - this.utimesImpl(resolvedP, mtime); + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); } async lutimesPromise(p, atime, mtime) { - return this.lutimesSync(p, atime, mtime); + return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime); } lutimesSync(p, atime, mtime) { - if (this.readOnly) - throw errors.EROFS(`lutimes '${p}'`); - const resolvedP = this.resolveFilename(`utimes '${p}'`, p, false); - this.utimesImpl(resolvedP, mtime); - } - utimesImpl(resolvedP, mtime) { - if (this.listings.has(resolvedP)) { - if (!this.entries.has(resolvedP)) - this.hydrateDirectory(resolvedP); - } - const entry = this.entries.get(resolvedP); - if (entry === void 0) - throw new Error(`Unreachable`); - const rc = this.libzip.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0); - if (rc === -1) { - throw this.makeLibzipError(this.libzip.getError(this.zip)); - } + return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime); } async mkdirPromise(p, opts) { - return this.mkdirSync(p, opts); + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); } - mkdirSync(p, { mode = 493, recursive = false } = {}) { - if (recursive) { - this.mkdirpSync(p, { chmod: mode }); - return; - } - if (this.readOnly) - throw errors.EROFS(`mkdir '${p}'`); - const resolvedP = this.resolveFilename(`mkdir '${p}'`, p); - if (this.entries.has(resolvedP) || this.listings.has(resolvedP)) - throw errors.EEXIST(`mkdir '${p}'`); - this.hydrateDirectory(resolvedP); - this.chmodSync(resolvedP, mode); + mkdirSync(p, opts) { + return this.baseFs.mkdirSync(this.mapToBase(p), opts); } async rmdirPromise(p, opts) { - return this.rmdirSync(p, opts); - } - rmdirSync(p, { recursive = false } = {}) { - if (this.readOnly) - throw errors.EROFS(`rmdir '${p}'`); - if (recursive) { - this.removeSync(p); - return; - } - const resolvedP = this.resolveFilename(`rmdir '${p}'`, p); - const directoryListing = this.listings.get(resolvedP); - if (!directoryListing) - throw errors.ENOTDIR(`rmdir '${p}'`); - if (directoryListing.size > 0) - throw errors.ENOTEMPTY(`rmdir '${p}'`); - const index = this.entries.get(resolvedP); - if (typeof index === `undefined`) - throw errors.EINVAL(`rmdir '${p}'`); - this.deleteEntry(p, index); + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); } - hydrateDirectory(resolvedP) { - const index = this.libzip.dir.add(this.zip, path_1.ppath.relative(path_1.PortablePath.root, resolvedP)); - if (index === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - this.registerListing(resolvedP); - this.registerEntry(resolvedP, index); - return index; + rmdirSync(p, opts) { + return this.baseFs.rmdirSync(this.mapToBase(p), opts); } async linkPromise(existingP, newP) { - return this.linkSync(existingP, newP); + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); } linkSync(existingP, newP) { - throw errors.EOPNOTSUPP(`link '${existingP}' -> '${newP}'`); + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); } - async symlinkPromise(target, p) { - return this.symlinkSync(target, p); + async symlinkPromise(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); } - symlinkSync(target, p) { - if (this.readOnly) - throw errors.EROFS(`symlink '${target}' -> '${p}'`); - const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p); - if (this.listings.has(resolvedP)) - throw errors.EISDIR(`symlink '${target}' -> '${p}'`); - if (this.entries.has(resolvedP)) - throw errors.EEXIST(`symlink '${target}' -> '${p}'`); - const index = this.setFileSource(resolvedP, target); - this.registerEntry(resolvedP, index); - const rc = this.libzip.file.setExternalAttributes(this.zip, index, 0, 0, this.libzip.ZIP_OPSYS_UNIX, (constants_1.S_IFLNK | 511) << 16); - if (rc === -1) - throw this.makeLibzipError(this.libzip.getError(this.zip)); - this.symlinkCount += 1; + symlinkSync(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) + return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); } async readFilePromise(p, encoding) { - if (typeof encoding === `object`) - encoding = encoding ? encoding.encoding : void 0; - const data = await this.readFileBuffer(p, { asyncDecompress: true }); - return encoding ? data.toString(encoding) : data; + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); } readFileSync(p, encoding) { - if (typeof encoding === `object`) - encoding = encoding ? encoding.encoding : void 0; - const data = this.readFileBuffer(p); - return encoding ? data.toString(encoding) : data; - } - readFileBuffer(p, opts = { asyncDecompress: false }) { - const resolvedP = this.resolveFilename(`open '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`open '${p}'`); - if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) - throw errors.ENOTDIR(`open '${p}'`); - if (this.listings.has(resolvedP)) - throw errors.EISDIR(`read`); - const entry = this.entries.get(resolvedP); - if (entry === void 0) - throw new Error(`Unreachable`); - return this.getFileSource(entry, opts); + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); } async readdirPromise(p, opts) { - return this.readdirSync(p, opts); + return this.baseFs.readdirPromise(this.mapToBase(p), opts); } readdirSync(p, opts) { - const resolvedP = this.resolveFilename(`scandir '${p}'`, p); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`scandir '${p}'`); - const directoryListing = this.listings.get(resolvedP); - if (!directoryListing) - throw errors.ENOTDIR(`scandir '${p}'`); - const entries = [...directoryListing]; - if (!(opts === null || opts === void 0 ? void 0 : opts.withFileTypes)) - return entries; - return entries.map((name) => { - return Object.assign(this.statImpl(`lstat`, path_1.ppath.join(p, name)), { - name - }); - }); + return this.baseFs.readdirSync(this.mapToBase(p), opts); } async readlinkPromise(p) { - const entry = this.prepareReadlink(p); - return (await this.getFileSource(entry, { asyncDecompress: true })).toString(); + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); } readlinkSync(p) { - const entry = this.prepareReadlink(p); - return this.getFileSource(entry).toString(); + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); } - prepareReadlink(p) { - const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false); - if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) - throw errors.ENOENT(`readlink '${p}'`); - if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) - throw errors.ENOTDIR(`open '${p}'`); - if (this.listings.has(resolvedP)) - throw errors.EINVAL(`readlink '${p}'`); - const entry = this.entries.get(resolvedP); - if (entry === void 0) - throw new Error(`Unreachable`); - if (!this.isSymbolicLink(entry)) - throw errors.EINVAL(`readlink '${p}'`); - return entry; + async truncatePromise(p, len) { + return this.baseFs.truncatePromise(this.mapToBase(p), len); } - async truncatePromise(p, len = 0) { - const resolvedP = this.resolveFilename(`open '${p}'`, p); - const index = this.entries.get(resolvedP); - if (typeof index === `undefined`) - throw errors.EINVAL(`open '${p}'`); - const source = await this.getFileSource(index, { asyncDecompress: true }); - const truncated = Buffer.alloc(len, 0); - source.copy(truncated); - return await this.writeFilePromise(p, truncated); + truncateSync(p, len) { + return this.baseFs.truncateSync(this.mapToBase(p), len); } - truncateSync(p, len = 0) { - const resolvedP = this.resolveFilename(`open '${p}'`, p); - const index = this.entries.get(resolvedP); - if (typeof index === `undefined`) - throw errors.EINVAL(`open '${p}'`); - const source = this.getFileSource(index); - const truncated = Buffer.alloc(len, 0); - source.copy(truncated); - return this.writeFileSync(p, truncated); + async ftruncatePromise(fd, len) { + return this.baseFs.ftruncatePromise(fd, len); + } + ftruncateSync(fd, len) { + return this.baseFs.ftruncateSync(fd, len); } watch(p, a, b) { - let persistent; - switch (typeof a) { - case `function`: - case `string`: - case `undefined`: - { - persistent = true; - } - break; - default: - { - ({ persistent = true } = a); - } - break; - } - if (!persistent) - return { on: () => { - }, close: () => { - } }; - const interval = setInterval(() => { - }, 24 * 60 * 60 * 1e3); - return { on: () => { - }, close: () => { - clearInterval(interval); - } }; + return this.baseFs.watch( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); } watchFile(p, a, b) { - const resolvedP = this.resolveFilename(`open '${p}'`, p); - return (0, watchFile_1.watchFile)(this, resolvedP, a, b); + return this.baseFs.watchFile( + this.mapToBase(p), + // @ts-expect-error + a, + b + ); } unwatchFile(p, cb) { - const resolvedP = this.resolveFilename(`open '${p}'`, p); - return (0, watchFile_1.unwatchFile)(this, resolvedP, cb); + return this.baseFs.unwatchFile(this.mapToBase(p), cb); + } + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); + } } }; - exports2.ZipFS = ZipFS; + exports2.ProxiedFS = ProxiedFS; } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js -var require_ProxiedFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/AliasFS.js +var require_AliasFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/AliasFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ProxiedFS = void 0; - var FakeFS_1 = require_FakeFS(); - var ProxiedFS = class extends FakeFS_1.FakeFS { - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); + exports2.AliasFS = void 0; + var ProxiedFS_1 = require_ProxiedFS2(); + var AliasFS = class extends ProxiedFS_1.ProxiedFS { + constructor(target, { baseFs, pathUtils }) { + super(pathUtils); + this.target = target; + this.baseFs = baseFs; + } + getRealPath() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapFromBase(p) { + return p; + } + mapToBase(p) { + return p; + } + }; + exports2.AliasFS = AliasFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NodeFS.js +var require_NodeFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NodeFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodeFS = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var fs_1 = tslib_12.__importDefault(require("fs")); + var FakeFS_1 = require_FakeFS2(); + var path_1 = require_path7(); + var NodeFS = class extends FakeFS_1.BasePortableFakeFS { + constructor(realFs = fs_1.default) { + super(); + this.realFs = realFs; } - resolve(path) { - return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); + getExtractHint() { + return false; } getRealPath() { - return this.mapFromBase(this.baseFs.getRealPath()); + return path_1.PortablePath.root; + } + resolve(p) { + return path_1.ppath.resolve(p); } async openPromise(p, flags, mode) { - return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + return await new Promise((resolve, reject) => { + this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); } openSync(p, flags, mode) { - return this.baseFs.openSync(this.mapToBase(p), flags, mode); + return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode); } async opendirPromise(p, opts) { - return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { path: p }); + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then((dir) => { + return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); + }); } opendirSync(p, opts) { - return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { path: p }); + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts) : this.realFs.opendirSync(path_1.npath.fromPortablePath(p)); + return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true }); } - async readPromise(fd, buffer, offset, length, position) { - return await this.baseFs.readPromise(fd, buffer, offset, length, position); + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); } readSync(fd, buffer, offset, length, position) { - return this.baseFs.readSync(fd, buffer, offset, length, position); + return this.realFs.readSync(fd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); } writeSync(fd, buffer, offset, length, position) { if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); + return this.realFs.writeSync(fd, buffer, offset); } else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); + return this.realFs.writeSync(fd, buffer, offset, length, position); } } async closePromise(fd) { - return this.baseFs.closePromise(fd); + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); } closeSync(fd) { - this.baseFs.closeSync(fd); + this.realFs.closeSync(fd); } createReadStream(p, opts) { - return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); } createWriteStream(p, opts) { - return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); } async realpathPromise(p) { - return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then((path2) => { + return path_1.npath.toPortablePath(path2); + }); } realpathSync(p) { - return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {})); } async existsPromise(p) { - return this.baseFs.existsPromise(this.mapToBase(p)); - } - existsSync(p) { - return this.baseFs.existsSync(this.mapToBase(p)); + return await new Promise((resolve) => { + this.realFs.exists(path_1.npath.fromPortablePath(p), resolve); + }); } accessSync(p, mode) { - return this.baseFs.accessSync(this.mapToBase(p), mode); + return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode); } async accessPromise(p, mode) { - return this.baseFs.accessPromise(this.mapToBase(p), mode); + return await new Promise((resolve, reject) => { + this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + existsSync(p) { + return this.realFs.existsSync(path_1.npath.fromPortablePath(p)); } async statPromise(p, opts) { - return this.baseFs.statPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } statSync(p, opts) { - return this.baseFs.statSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts); + } else { + return this.realFs.statSync(path_1.npath.fromPortablePath(p)); + } } async fstatPromise(fd, opts) { - return this.baseFs.fstatPromise(fd, opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); } fstatSync(fd, opts) { - return this.baseFs.fstatSync(fd, opts); + if (opts) { + return this.realFs.fstatSync(fd, opts); + } else { + return this.realFs.fstatSync(fd); + } } async lstatPromise(p, opts) { - return this.baseFs.lstatPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.lstat(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } lstatSync(p, opts) { - return this.baseFs.lstatSync(this.mapToBase(p), opts); + if (opts) { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts); + } else { + return this.realFs.lstatSync(path_1.npath.fromPortablePath(p)); + } + } + async fchmodPromise(fd, mask) { + return await new Promise((resolve, reject) => { + this.realFs.fchmod(fd, mask, this.makeCallback(resolve, reject)); + }); + } + fchmodSync(fd, mask) { + return this.realFs.fchmodSync(fd, mask); } async chmodPromise(p, mask) { - return this.baseFs.chmodPromise(this.mapToBase(p), mask); + return await new Promise((resolve, reject) => { + this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); } chmodSync(p, mask) { - return this.baseFs.chmodSync(this.mapToBase(p), mask); + return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask); + } + async fchownPromise(fd, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve, reject)); + }); + } + fchownSync(fd, uid, gid) { + return this.realFs.fchownSync(fd, uid, gid); } async chownPromise(p, uid, gid) { - return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + return await new Promise((resolve, reject) => { + this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); } chownSync(p, uid, gid) { - return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid); } async renamePromise(oldP, newP) { - return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } renameSync(oldP, newP) { - return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP)); } async copyFilePromise(sourceP, destP, flags = 0) { - return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return await new Promise((resolve, reject) => { + this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); } copyFileSync(sourceP, destP, flags = 0) { - return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags); } async appendFilePromise(p, content, opts) { - return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } appendFileSync(p, content, opts) { - return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); + } } async writeFilePromise(p, content, opts) { - return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); } writeFileSync(p, content, opts) { - return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); + } } async unlinkPromise(p) { - return this.baseFs.unlinkPromise(this.mapToBase(p)); + return await new Promise((resolve, reject) => { + this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); } unlinkSync(p) { - return this.baseFs.unlinkSync(this.mapToBase(p)); + return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p)); } async utimesPromise(p, atime, mtime) { - return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + return await new Promise((resolve, reject) => { + this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); } utimesSync(p, atime, mtime) { - return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime); + } + async lutimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + lutimesSync(p, atime, mtime) { + this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime); } async mkdirPromise(p, opts) { - return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); } mkdirSync(p, opts) { - return this.baseFs.mkdirSync(this.mapToBase(p), opts); + return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts); } async rmdirPromise(p, opts) { - return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); } rmdirSync(p, opts) { - return this.baseFs.rmdirSync(this.mapToBase(p), opts); + return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts); } async linkPromise(existingP, newP) { - return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + return await new Promise((resolve, reject) => { + this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); } linkSync(existingP, newP) { - return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP)); } async symlinkPromise(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + return await new Promise((resolve, reject) => { + this.realFs.symlink(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); } symlinkSync(target, p, type) { - const mappedP = this.mapToBase(p); - if (this.pathUtils.isAbsolute(target)) - return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); - const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); - const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); - return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type); } async readFilePromise(p, encoding) { - if (encoding === `utf8`) { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); - } else { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); - } + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); } readFileSync(p, encoding) { - if (encoding === `utf8`) { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); - } else { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); - } + const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); } async readdirPromise(p, opts) { - return this.baseFs.readdirPromise(this.mapToBase(p), opts); + return await new Promise((resolve, reject) => { + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + this.realFs.readdir(path_1.npath.fromPortablePath(p), { withFileTypes: true }, this.makeCallback(resolve, reject)); + } else { + this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject)); + } + }); } readdirSync(p, opts) { - return this.baseFs.readdirSync(this.mapToBase(p), opts); + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), { withFileTypes: true }); + } else { + return this.realFs.readdirSync(path_1.npath.fromPortablePath(p)); + } } async readlinkPromise(p) { - return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + return await new Promise((resolve, reject) => { + this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then((path2) => { + return path_1.npath.toPortablePath(path2); + }); } readlinkSync(p) { - return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p))); } async truncatePromise(p, len) { - return this.baseFs.truncatePromise(this.mapToBase(p), len); + return await new Promise((resolve, reject) => { + this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); } truncateSync(p, len) { - return this.baseFs.truncateSync(this.mapToBase(p), len); + return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len); + } + async ftruncatePromise(fd, len) { + return await new Promise((resolve, reject) => { + this.realFs.ftruncate(fd, len, this.makeCallback(resolve, reject)); + }); + } + ftruncateSync(fd, len) { + return this.realFs.ftruncateSync(fd, len); } watch(p, a, b) { - return this.baseFs.watch(this.mapToBase(p), a, b); + return this.realFs.watch( + path_1.npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); } watchFile(p, a, b) { - return this.baseFs.watchFile(this.mapToBase(p), a, b); + return this.realFs.watchFile( + path_1.npath.fromPortablePath(p), + // @ts-expect-error + a, + b + ); } unwatchFile(p, cb) { - return this.baseFs.unwatchFile(this.mapToBase(p), cb); - } - fsMapToBase(p) { - if (typeof p === `number`) { - return p; - } else { - return this.mapToBase(p); - } - } - }; - exports2.ProxiedFS = ProxiedFS; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/AliasFS.js -var require_AliasFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/AliasFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AliasFS = void 0; - var ProxiedFS_1 = require_ProxiedFS(); - var AliasFS = class extends ProxiedFS_1.ProxiedFS { - constructor(target, { baseFs, pathUtils }) { - super(pathUtils); - this.target = target; - this.baseFs = baseFs; - } - getRealPath() { - return this.target; - } - getBaseFs() { - return this.baseFs; - } - mapFromBase(p) { - return p; + return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb); } - mapToBase(p) { - return p; + makeCallback(resolve, reject) { + return (err, result2) => { + if (err) { + reject(err); + } else { + resolve(result2); + } + }; } }; - exports2.AliasFS = AliasFS; + exports2.NodeFS = NodeFS; } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/CwdFS.js -var require_CwdFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/CwdFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/CwdFS.js +var require_CwdFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/CwdFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CwdFS = void 0; - var NodeFS_1 = require_NodeFS(); - var ProxiedFS_1 = require_ProxiedFS(); - var path_1 = require_path4(); + var NodeFS_1 = require_NodeFS2(); + var ProxiedFS_1 = require_ProxiedFS2(); + var path_1 = require_path7(); var CwdFS = class extends ProxiedFS_1.ProxiedFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { super(path_1.ppath); @@ -96288,14 +178928,14 @@ var require_CwdFS = __commonJS({ return this.baseFs.resolve(path_1.ppath.join(this.target, p)); } } - mapFromBase(path) { - return path; + mapFromBase(path2) { + return path2; } - mapToBase(path) { - if (this.pathUtils.isAbsolute(path)) { - return path; + mapToBase(path2) { + if (this.pathUtils.isAbsolute(path2)) { + return path2; } else { - return this.pathUtils.join(this.target, path); + return this.pathUtils.join(this.target, path2); } } }; @@ -96303,15 +178943,15 @@ var require_CwdFS = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/JailFS.js -var require_JailFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/JailFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/JailFS.js +var require_JailFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/JailFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JailFS = void 0; - var NodeFS_1 = require_NodeFS(); - var ProxiedFS_1 = require_ProxiedFS(); - var path_1 = require_path4(); + var NodeFS_1 = require_NodeFS2(); + var ProxiedFS_1 = require_ProxiedFS2(); + var path_1 = require_path7(); var JAIL_ROOT = path_1.PortablePath.root; var JailFS = class extends ProxiedFS_1.ProxiedFS { constructor(target, { baseFs = new NodeFS_1.NodeFS() } = {}) { @@ -96344,13 +178984,13 @@ var require_JailFS = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/LazyFS.js -var require_LazyFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/LazyFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/LazyFS.js +var require_LazyFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/LazyFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LazyFS = void 0; - var ProxiedFS_1 = require_ProxiedFS(); + var ProxiedFS_1 = require_ProxiedFS2(); var LazyFS = class extends ProxiedFS_1.ProxiedFS { constructor(factory, pathUtils) { super(pathUtils); @@ -96376,383 +179016,41 @@ var require_LazyFS = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/NoFS.js -var require_NoFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/NoFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NoFS = void 0; - var FakeFS_1 = require_FakeFS(); - var path_1 = require_path4(); - var makeError = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` }); - var NoFS = class extends FakeFS_1.FakeFS { - constructor() { - super(path_1.ppath); - } - getExtractHint() { - throw makeError(); - } - getRealPath() { - throw makeError(); - } - resolve() { - throw makeError(); - } - async openPromise() { - throw makeError(); - } - openSync() { - throw makeError(); - } - async opendirPromise() { - throw makeError(); - } - opendirSync() { - throw makeError(); - } - async readPromise() { - throw makeError(); - } - readSync() { - throw makeError(); - } - async writePromise() { - throw makeError(); - } - writeSync() { - throw makeError(); - } - async closePromise() { - throw makeError(); - } - closeSync() { - throw makeError(); - } - createWriteStream() { - throw makeError(); - } - createReadStream() { - throw makeError(); - } - async realpathPromise() { - throw makeError(); - } - realpathSync() { - throw makeError(); - } - async readdirPromise() { - throw makeError(); - } - readdirSync() { - throw makeError(); - } - async existsPromise(p) { - throw makeError(); - } - existsSync(p) { - throw makeError(); - } - async accessPromise() { - throw makeError(); - } - accessSync() { - throw makeError(); - } - async statPromise() { - throw makeError(); - } - statSync() { - throw makeError(); - } - async fstatPromise(fd) { - throw makeError(); - } - fstatSync(fd) { - throw makeError(); - } - async lstatPromise(p) { - throw makeError(); - } - lstatSync(p) { - throw makeError(); - } - async chmodPromise() { - throw makeError(); - } - chmodSync() { - throw makeError(); - } - async chownPromise() { - throw makeError(); - } - chownSync() { - throw makeError(); - } - async mkdirPromise() { - throw makeError(); - } - mkdirSync() { - throw makeError(); - } - async rmdirPromise() { - throw makeError(); - } - rmdirSync() { - throw makeError(); - } - async linkPromise() { - throw makeError(); - } - linkSync() { - throw makeError(); - } - async symlinkPromise() { - throw makeError(); - } - symlinkSync() { - throw makeError(); - } - async renamePromise() { - throw makeError(); - } - renameSync() { - throw makeError(); - } - async copyFilePromise() { - throw makeError(); - } - copyFileSync() { - throw makeError(); - } - async appendFilePromise() { - throw makeError(); - } - appendFileSync() { - throw makeError(); - } - async writeFilePromise() { - throw makeError(); - } - writeFileSync() { - throw makeError(); - } - async unlinkPromise() { - throw makeError(); - } - unlinkSync() { - throw makeError(); - } - async utimesPromise() { - throw makeError(); - } - utimesSync() { - throw makeError(); - } - async readFilePromise() { - throw makeError(); - } - readFileSync() { - throw makeError(); - } - async readlinkPromise() { - throw makeError(); - } - readlinkSync() { - throw makeError(); - } - async truncatePromise() { - throw makeError(); - } - truncateSync() { - throw makeError(); - } - watch() { - throw makeError(); - } - watchFile() { - throw makeError(); - } - unwatchFile() { - throw makeError(); - } - }; - exports2.NoFS = NoFS; - NoFS.instance = new NoFS(); - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/PosixFS.js -var require_PosixFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/PosixFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PosixFS = void 0; - var ProxiedFS_1 = require_ProxiedFS(); - var path_1 = require_path4(); - var PosixFS = class extends ProxiedFS_1.ProxiedFS { - constructor(baseFs) { - super(path_1.npath); - this.baseFs = baseFs; - } - mapFromBase(path) { - return path_1.npath.fromPortablePath(path); - } - mapToBase(path) { - return path_1.npath.toPortablePath(path); - } - }; - exports2.PosixFS = PosixFS; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/VirtualFS.js -var require_VirtualFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/VirtualFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.VirtualFS = void 0; - var NodeFS_1 = require_NodeFS(); - var ProxiedFS_1 = require_ProxiedFS(); - var path_1 = require_path4(); - var NUMBER_REGEXP = /^[0-9]+$/; - var VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; - var VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; - var VirtualFS = class extends ProxiedFS_1.ProxiedFS { - constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) { - super(path_1.ppath); - this.baseFs = baseFs; - } - static makeVirtualPath(base, component, to) { - if (path_1.ppath.basename(base) !== `__virtual__`) - throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); - if (!path_1.ppath.basename(component).match(VALID_COMPONENT)) - throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); - const target = path_1.ppath.relative(path_1.ppath.dirname(base), to); - const segments = target.split(`/`); - let depth = 0; - while (depth < segments.length && segments[depth] === `..`) - depth += 1; - const finalSegments = segments.slice(depth); - const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments); - return fullVirtualPath; - } - static resolveVirtual(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match || !match[3] && match[5]) - return p; - const target = path_1.ppath.dirname(match[1]); - if (!match[3] || !match[4]) - return target; - const isnum = NUMBER_REGEXP.test(match[4]); - if (!isnum) - return p; - const depth = Number(match[4]); - const backstep = `../`.repeat(depth); - const subpath = match[5] || `.`; - return VirtualFS.resolveVirtual(path_1.ppath.join(target, backstep, subpath)); - } - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - getRealPath() { - return this.baseFs.getRealPath(); - } - realpathSync(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return this.baseFs.realpathSync(p); - if (!match[5]) - return p; - const realpath = this.baseFs.realpathSync(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); - } - async realpathPromise(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return await this.baseFs.realpathPromise(p); - if (!match[5]) - return p; - const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); - } - mapToBase(p) { - if (this.pathUtils.isAbsolute(p)) - return VirtualFS.resolveVirtual(p); - const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot)); - const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); - return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot; - } - mapFromBase(p) { - return p; - } - }; - exports2.VirtualFS = VirtualFS; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ZipOpenFS.js -var require_ZipOpenFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/ZipOpenFS.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/MountFS.js +var require_MountFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/MountFS.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ZipOpenFS = exports2.getArchivePart = void 0; - var tslib_1 = require_tslib(); + exports2.MountFS = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); var fs_1 = require("fs"); - var FakeFS_1 = require_FakeFS(); - var NodeFS_1 = require_NodeFS(); - var ZipFS_1 = require_ZipFS(); - var watchFile_1 = require_watchFile(); - var errors = (0, tslib_1.__importStar)(require_errors4()); - var path_1 = require_path4(); - var ZIP_FD = 2147483648; - var DOT_ZIP = `.zip`; - var getArchivePart = (path) => { - let idx = path.indexOf(DOT_ZIP); - if (idx <= 0) - return null; - let nextCharIdx = idx; - while (idx >= 0) { - nextCharIdx = idx + DOT_ZIP.length; - if (path[nextCharIdx] === path_1.ppath.sep) - break; - if (path[idx - 1] === path_1.ppath.sep) - return null; - idx = path.indexOf(DOT_ZIP, nextCharIdx); - } - if (path.length > nextCharIdx && path[nextCharIdx] !== path_1.ppath.sep) - return null; - return path.slice(0, nextCharIdx); - }; - exports2.getArchivePart = getArchivePart; - var ZipOpenFS = class extends FakeFS_1.BasePortableFakeFS { - constructor({ libzip, baseFs = new NodeFS_1.NodeFS(), filter = null, maxOpenFiles = Infinity, readOnlyArchives = false, useCache = true, maxAge = 5e3 }) { + var FakeFS_1 = require_FakeFS2(); + var NodeFS_1 = require_NodeFS2(); + var watchFile_1 = require_watchFile2(); + var errors = tslib_12.__importStar(require_errors9()); + var path_1 = require_path7(); + var MOUNT_MASK = 4278190080; + var MountFS = class extends FakeFS_1.BasePortableFakeFS { + constructor({ baseFs = new NodeFS_1.NodeFS(), filter = null, magicByte = 42, maxOpenFiles = Infinity, useCache = true, maxAge = 5e3, typeCheck = fs_1.constants.S_IFREG, getMountPoint, factoryPromise, factorySync }) { + if (Math.floor(magicByte) !== magicByte || !(magicByte > 1 && magicByte <= 127)) + throw new Error(`The magic byte must be set to a round value between 1 and 127 included`); super(); - this.fdMap = new Map(); + this.fdMap = /* @__PURE__ */ new Map(); this.nextFd = 3; - this.isZip = new Set(); - this.notZip = new Set(); - this.realPaths = new Map(); + this.isMount = /* @__PURE__ */ new Set(); + this.notMount = /* @__PURE__ */ new Set(); + this.realPaths = /* @__PURE__ */ new Map(); this.limitOpenFilesTimeout = null; - this.libzipFactory = typeof libzip !== `function` ? () => libzip : libzip; this.baseFs = baseFs; - this.zipInstances = useCache ? new Map() : null; + this.mountInstances = useCache ? /* @__PURE__ */ new Map() : null; + this.factoryPromise = factoryPromise; + this.factorySync = factorySync; this.filter = filter; - this.maxOpenFiles = maxOpenFiles; - this.readOnlyArchives = readOnlyArchives; + this.getMountPoint = getMountPoint; + this.magic = magicByte << 24; this.maxAge = maxAge; - } - static async openPromise(fn2, opts) { - const zipOpenFs = new ZipOpenFS(opts); - try { - return await fn2(zipOpenFs); - } finally { - zipOpenFs.saveAndClose(); - } - } - get libzip() { - if (typeof this.libzipInstance === `undefined`) - this.libzipInstance = this.libzipFactory(); - return this.libzipInstance; + this.maxOpenFiles = maxOpenFiles; + this.typeCheck = typeCheck; } getExtractHint(hints) { return this.baseFs.getExtractHint(hints); @@ -96761,50 +179059,52 @@ var require_ZipOpenFS = __commonJS({ return this.baseFs.getRealPath(); } saveAndClose() { + var _a; (0, watchFile_1.unwatchAllFiles)(this); - if (this.zipInstances) { - for (const [path, { zipFs }] of this.zipInstances.entries()) { - zipFs.saveAndClose(); - this.zipInstances.delete(path); + if (this.mountInstances) { + for (const [path2, { childFs }] of this.mountInstances.entries()) { + (_a = childFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + this.mountInstances.delete(path2); } } } discardAndClose() { + var _a; (0, watchFile_1.unwatchAllFiles)(this); - if (this.zipInstances) { - for (const [path, { zipFs }] of this.zipInstances.entries()) { - zipFs.discardAndClose(); - this.zipInstances.delete(path); + if (this.mountInstances) { + for (const [path2, { childFs }] of this.mountInstances.entries()) { + (_a = childFs.discardAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + this.mountInstances.delete(path2); } } } resolve(p) { return this.baseFs.resolve(p); } - remapFd(zipFs, fd) { - const remappedFd = this.nextFd++ | ZIP_FD; - this.fdMap.set(remappedFd, [zipFs, fd]); + remapFd(mountFs, fd) { + const remappedFd = this.nextFd++ | this.magic; + this.fdMap.set(remappedFd, [mountFs, fd]); return remappedFd; } async openPromise(p, flags, mode) { return await this.makeCallPromise(p, async () => { return await this.baseFs.openPromise(p, flags, mode); - }, async (zipFs, { subPath }) => { - return this.remapFd(zipFs, await zipFs.openPromise(subPath, flags, mode)); + }, async (mountFs, { subPath }) => { + return this.remapFd(mountFs, await mountFs.openPromise(subPath, flags, mode)); }); } openSync(p, flags, mode) { return this.makeCallSync(p, () => { return this.baseFs.openSync(p, flags, mode); - }, (zipFs, { subPath }) => { - return this.remapFd(zipFs, zipFs.openSync(subPath, flags, mode)); + }, (mountFs, { subPath }) => { + return this.remapFd(mountFs, mountFs.openSync(subPath, flags, mode)); }); } async opendirPromise(p, opts) { return await this.makeCallPromise(p, async () => { return await this.baseFs.opendirPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.opendirPromise(subPath, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.opendirPromise(subPath, opts); }, { requireSubpath: false }); @@ -96812,32 +179112,32 @@ var require_ZipOpenFS = __commonJS({ opendirSync(p, opts) { return this.makeCallSync(p, () => { return this.baseFs.opendirSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.opendirSync(subPath, opts); + }, (mountFs, { subPath }) => { + return mountFs.opendirSync(subPath, opts); }, { requireSubpath: false }); } async readPromise(fd, buffer, offset, length, position) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return await this.baseFs.readPromise(fd, buffer, offset, length, position); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`read`); - const [zipFs, realFd] = entry; - return await zipFs.readPromise(realFd, buffer, offset, length, position); + const [mountFs, realFd] = entry; + return await mountFs.readPromise(realFd, buffer, offset, length, position); } readSync(fd, buffer, offset, length, position) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return this.baseFs.readSync(fd, buffer, offset, length, position); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`readSync`); - const [zipFs, realFd] = entry; - return zipFs.readSync(realFd, buffer, offset, length, position); + const [mountFs, realFd] = entry; + return mountFs.readSync(realFd, buffer, offset, length, position); } async writePromise(fd, buffer, offset, length, position) { - if ((fd & ZIP_FD) === 0) { + if ((fd & MOUNT_MASK) !== this.magic) { if (typeof buffer === `string`) { return await this.baseFs.writePromise(fd, buffer, offset); } else { @@ -96847,15 +179147,15 @@ var require_ZipOpenFS = __commonJS({ const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`write`); - const [zipFs, realFd] = entry; + const [mountFs, realFd] = entry; if (typeof buffer === `string`) { - return await zipFs.writePromise(realFd, buffer, offset); + return await mountFs.writePromise(realFd, buffer, offset); } else { - return await zipFs.writePromise(realFd, buffer, offset, length, position); + return await mountFs.writePromise(realFd, buffer, offset, length, position); } } writeSync(fd, buffer, offset, length, position) { - if ((fd & ZIP_FD) === 0) { + if ((fd & MOUNT_MASK) !== this.magic) { if (typeof buffer === `string`) { return this.baseFs.writeSync(fd, buffer, offset); } else { @@ -96865,40 +179165,42 @@ var require_ZipOpenFS = __commonJS({ const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`writeSync`); - const [zipFs, realFd] = entry; + const [mountFs, realFd] = entry; if (typeof buffer === `string`) { - return zipFs.writeSync(realFd, buffer, offset); + return mountFs.writeSync(realFd, buffer, offset); } else { - return zipFs.writeSync(realFd, buffer, offset, length, position); + return mountFs.writeSync(realFd, buffer, offset, length, position); } } async closePromise(fd) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return await this.baseFs.closePromise(fd); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`close`); this.fdMap.delete(fd); - const [zipFs, realFd] = entry; - return await zipFs.closePromise(realFd); + const [mountFs, realFd] = entry; + return await mountFs.closePromise(realFd); } closeSync(fd) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return this.baseFs.closeSync(fd); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`closeSync`); this.fdMap.delete(fd); - const [zipFs, realFd] = entry; - return zipFs.closeSync(realFd); + const [mountFs, realFd] = entry; + return mountFs.closeSync(realFd); } createReadStream(p, opts) { if (p === null) return this.baseFs.createReadStream(p, opts); return this.makeCallSync(p, () => { return this.baseFs.createReadStream(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.createReadStream(subPath, opts); + }, (mountFs, { archivePath, subPath }) => { + const stream = mountFs.createReadStream(subPath, opts); + stream.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath)); + return stream; }); } createWriteStream(p, opts) { @@ -96906,134 +179208,170 @@ var require_ZipOpenFS = __commonJS({ return this.baseFs.createWriteStream(p, opts); return this.makeCallSync(p, () => { return this.baseFs.createWriteStream(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.createWriteStream(subPath, opts); + }, (mountFs, { subPath }) => { + return mountFs.createWriteStream(subPath, opts); }); } async realpathPromise(p) { return await this.makeCallPromise(p, async () => { return await this.baseFs.realpathPromise(p); - }, async (zipFs, { archivePath, subPath }) => { + }, async (mountFs, { archivePath, subPath }) => { let realArchivePath = this.realPaths.get(archivePath); if (typeof realArchivePath === `undefined`) { realArchivePath = await this.baseFs.realpathPromise(archivePath); this.realPaths.set(archivePath, realArchivePath); } - return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await zipFs.realpathPromise(subPath))); + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await mountFs.realpathPromise(subPath))); }); } realpathSync(p) { return this.makeCallSync(p, () => { return this.baseFs.realpathSync(p); - }, (zipFs, { archivePath, subPath }) => { + }, (mountFs, { archivePath, subPath }) => { let realArchivePath = this.realPaths.get(archivePath); if (typeof realArchivePath === `undefined`) { realArchivePath = this.baseFs.realpathSync(archivePath); this.realPaths.set(archivePath, realArchivePath); } - return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, zipFs.realpathSync(subPath))); + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, mountFs.realpathSync(subPath))); }); } async existsPromise(p) { return await this.makeCallPromise(p, async () => { return await this.baseFs.existsPromise(p); - }, async (zipFs, { subPath }) => { - return await zipFs.existsPromise(subPath); + }, async (mountFs, { subPath }) => { + return await mountFs.existsPromise(subPath); }); } existsSync(p) { return this.makeCallSync(p, () => { return this.baseFs.existsSync(p); - }, (zipFs, { subPath }) => { - return zipFs.existsSync(subPath); + }, (mountFs, { subPath }) => { + return mountFs.existsSync(subPath); }); } async accessPromise(p, mode) { return await this.makeCallPromise(p, async () => { return await this.baseFs.accessPromise(p, mode); - }, async (zipFs, { subPath }) => { - return await zipFs.accessPromise(subPath, mode); + }, async (mountFs, { subPath }) => { + return await mountFs.accessPromise(subPath, mode); }); } accessSync(p, mode) { return this.makeCallSync(p, () => { return this.baseFs.accessSync(p, mode); - }, (zipFs, { subPath }) => { - return zipFs.accessSync(subPath, mode); + }, (mountFs, { subPath }) => { + return mountFs.accessSync(subPath, mode); }); } async statPromise(p, opts) { return await this.makeCallPromise(p, async () => { return await this.baseFs.statPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.statPromise(subPath, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.statPromise(subPath, opts); }); } statSync(p, opts) { return this.makeCallSync(p, () => { return this.baseFs.statSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.statSync(subPath, opts); + }, (mountFs, { subPath }) => { + return mountFs.statSync(subPath, opts); }); } async fstatPromise(fd, opts) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return this.baseFs.fstatPromise(fd, opts); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`fstat`); - const [zipFs, realFd] = entry; - return zipFs.fstatPromise(realFd, opts); + const [mountFs, realFd] = entry; + return mountFs.fstatPromise(realFd, opts); } fstatSync(fd, opts) { - if ((fd & ZIP_FD) === 0) + if ((fd & MOUNT_MASK) !== this.magic) return this.baseFs.fstatSync(fd, opts); const entry = this.fdMap.get(fd); if (typeof entry === `undefined`) throw errors.EBADF(`fstatSync`); - const [zipFs, realFd] = entry; - return zipFs.fstatSync(realFd, opts); + const [mountFs, realFd] = entry; + return mountFs.fstatSync(realFd, opts); } async lstatPromise(p, opts) { return await this.makeCallPromise(p, async () => { return await this.baseFs.lstatPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.lstatPromise(subPath, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.lstatPromise(subPath, opts); }); } lstatSync(p, opts) { return this.makeCallSync(p, () => { return this.baseFs.lstatSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.lstatSync(subPath, opts); + }, (mountFs, { subPath }) => { + return mountFs.lstatSync(subPath, opts); }); } + async fchmodPromise(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodPromise(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmod`); + const [mountFs, realFd] = entry; + return mountFs.fchmodPromise(realFd, mask); + } + fchmodSync(fd, mask) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchmodSync(fd, mask); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchmodSync`); + const [mountFs, realFd] = entry; + return mountFs.fchmodSync(realFd, mask); + } async chmodPromise(p, mask) { return await this.makeCallPromise(p, async () => { return await this.baseFs.chmodPromise(p, mask); - }, async (zipFs, { subPath }) => { - return await zipFs.chmodPromise(subPath, mask); + }, async (mountFs, { subPath }) => { + return await mountFs.chmodPromise(subPath, mask); }); } chmodSync(p, mask) { return this.makeCallSync(p, () => { return this.baseFs.chmodSync(p, mask); - }, (zipFs, { subPath }) => { - return zipFs.chmodSync(subPath, mask); + }, (mountFs, { subPath }) => { + return mountFs.chmodSync(subPath, mask); }); } + async fchownPromise(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownPromise(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchown`); + const [zipFs, realFd] = entry; + return zipFs.fchownPromise(realFd, uid, gid); + } + fchownSync(fd, uid, gid) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.fchownSync(fd, uid, gid); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`fchownSync`); + const [zipFs, realFd] = entry; + return zipFs.fchownSync(realFd, uid, gid); + } async chownPromise(p, uid, gid) { return await this.makeCallPromise(p, async () => { return await this.baseFs.chownPromise(p, uid, gid); - }, async (zipFs, { subPath }) => { - return await zipFs.chownPromise(subPath, uid, gid); + }, async (mountFs, { subPath }) => { + return await mountFs.chownPromise(subPath, uid, gid); }); } chownSync(p, uid, gid) { return this.makeCallSync(p, () => { return this.baseFs.chownSync(p, uid, gid); - }, (zipFs, { subPath }) => { - return zipFs.chownSync(subPath, uid, gid); + }, (mountFs, { subPath }) => { + return mountFs.chownSync(subPath, uid, gid); }); } async renamePromise(oldP, newP) { @@ -97043,14 +179381,14 @@ var require_ZipOpenFS = __commonJS({ }, async () => { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); }); - }, async (zipFsO, { subPath: subPathO }) => { + }, async (mountFsO, { subPath: subPathO }) => { return await this.makeCallPromise(newP, async () => { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }, async (zipFsN, { subPath: subPathN }) => { - if (zipFsO !== zipFsN) { + }, async (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); } else { - return await zipFsO.renamePromise(subPathO, subPathN); + return await mountFsO.renamePromise(subPathO, subPathN); } }); }); @@ -97059,17 +179397,17 @@ var require_ZipOpenFS = __commonJS({ return this.makeCallSync(oldP, () => { return this.makeCallSync(newP, () => { return this.baseFs.renameSync(oldP, newP); - }, async () => { + }, () => { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); }); - }, (zipFsO, { subPath: subPathO }) => { + }, (mountFsO, { subPath: subPathO }) => { return this.makeCallSync(newP, () => { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); - }, (zipFsN, { subPath: subPathN }) => { - if (zipFsO !== zipFsN) { + }, (mountFsN, { subPath: subPathN }) => { + if (mountFsO !== mountFsN) { throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` }); } else { - return zipFsO.renameSync(subPathO, subPathN); + return mountFsO.renameSync(subPathO, subPathN); } }); }); @@ -97091,17 +179429,17 @@ var require_ZipOpenFS = __commonJS({ return await this.makeCallPromise(sourceP, async () => { return await this.makeCallPromise(destP, async () => { return await this.baseFs.copyFilePromise(sourceP, destP, flags); - }, async (zipFsD, { subPath: subPathD }) => { - return await fallback(this.baseFs, sourceP, zipFsD, subPathD); + }, async (mountFsD, { subPath: subPathD }) => { + return await fallback(this.baseFs, sourceP, mountFsD, subPathD); }); - }, async (zipFsS, { subPath: subPathS }) => { + }, async (mountFsS, { subPath: subPathS }) => { return await this.makeCallPromise(destP, async () => { - return await fallback(zipFsS, subPathS, this.baseFs, destP); - }, async (zipFsD, { subPath: subPathD }) => { - if (zipFsS !== zipFsD) { - return await fallback(zipFsS, subPathS, zipFsD, subPathD); + return await fallback(mountFsS, subPathS, this.baseFs, destP); + }, async (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return await fallback(mountFsS, subPathS, mountFsD, subPathD); } else { - return await zipFsS.copyFilePromise(subPathS, subPathD, flags); + return await mountFsS.copyFilePromise(subPathS, subPathD, flags); } }); }); @@ -97123,17 +179461,17 @@ var require_ZipOpenFS = __commonJS({ return this.makeCallSync(sourceP, () => { return this.makeCallSync(destP, () => { return this.baseFs.copyFileSync(sourceP, destP, flags); - }, (zipFsD, { subPath: subPathD }) => { - return fallback(this.baseFs, sourceP, zipFsD, subPathD); + }, (mountFsD, { subPath: subPathD }) => { + return fallback(this.baseFs, sourceP, mountFsD, subPathD); }); - }, (zipFsS, { subPath: subPathS }) => { + }, (mountFsS, { subPath: subPathS }) => { return this.makeCallSync(destP, () => { - return fallback(zipFsS, subPathS, this.baseFs, destP); - }, (zipFsD, { subPath: subPathD }) => { - if (zipFsS !== zipFsD) { - return fallback(zipFsS, subPathS, zipFsD, subPathD); + return fallback(mountFsS, subPathS, this.baseFs, destP); + }, (mountFsD, { subPath: subPathD }) => { + if (mountFsS !== mountFsD) { + return fallback(mountFsS, subPathS, mountFsD, subPathD); } else { - return zipFsS.copyFileSync(subPathS, subPathD, flags); + return mountFsS.copyFileSync(subPathS, subPathD, flags); } }); }); @@ -97141,400 +179479,1021 @@ var require_ZipOpenFS = __commonJS({ async appendFilePromise(p, content, opts) { return await this.makeCallPromise(p, async () => { return await this.baseFs.appendFilePromise(p, content, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.appendFilePromise(subPath, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.appendFilePromise(subPath, content, opts); }); } appendFileSync(p, content, opts) { return this.makeCallSync(p, () => { return this.baseFs.appendFileSync(p, content, opts); - }, (zipFs, { subPath }) => { - return zipFs.appendFileSync(subPath, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.appendFileSync(subPath, content, opts); }); } async writeFilePromise(p, content, opts) { return await this.makeCallPromise(p, async () => { return await this.baseFs.writeFilePromise(p, content, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.writeFilePromise(subPath, content, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.writeFilePromise(subPath, content, opts); + }); + } + writeFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.writeFileSync(p, content, opts); + }, (mountFs, { subPath }) => { + return mountFs.writeFileSync(subPath, content, opts); + }); + } + async unlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.unlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.unlinkPromise(subPath); + }); + } + unlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.unlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.unlinkSync(subPath); + }); + } + async utimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.utimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.utimesPromise(subPath, atime, mtime); + }); + } + utimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.utimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.utimesSync(subPath, atime, mtime); + }); + } + async lutimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lutimesPromise(p, atime, mtime); + }, async (mountFs, { subPath }) => { + return await mountFs.lutimesPromise(subPath, atime, mtime); + }); + } + lutimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.lutimesSync(p, atime, mtime); + }, (mountFs, { subPath }) => { + return mountFs.lutimesSync(subPath, atime, mtime); + }); + } + async mkdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.mkdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.mkdirPromise(subPath, opts); + }); + } + mkdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.mkdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.mkdirSync(subPath, opts); + }); + } + async rmdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.rmdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.rmdirPromise(subPath, opts); + }); + } + rmdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.rmdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.rmdirSync(subPath, opts); + }); + } + async linkPromise(existingP, newP) { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.linkPromise(existingP, newP); + }, async (mountFs, { subPath }) => { + return await mountFs.linkPromise(existingP, subPath); + }); + } + linkSync(existingP, newP) { + return this.makeCallSync(newP, () => { + return this.baseFs.linkSync(existingP, newP); + }, (mountFs, { subPath }) => { + return mountFs.linkSync(existingP, subPath); + }); + } + async symlinkPromise(target, p, type) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.symlinkPromise(target, p, type); + }, async (mountFs, { subPath }) => { + return await mountFs.symlinkPromise(target, subPath); + }); + } + symlinkSync(target, p, type) { + return this.makeCallSync(p, () => { + return this.baseFs.symlinkSync(target, p, type); + }, (mountFs, { subPath }) => { + return mountFs.symlinkSync(target, subPath); + }); + } + async readFilePromise(p, encoding) { + return this.makeCallPromise(p, async () => { + return await this.baseFs.readFilePromise(p, encoding); + }, async (mountFs, { subPath }) => { + return await mountFs.readFilePromise(subPath, encoding); + }); + } + readFileSync(p, encoding) { + return this.makeCallSync(p, () => { + return this.baseFs.readFileSync(p, encoding); + }, (mountFs, { subPath }) => { + return mountFs.readFileSync(subPath, encoding); + }); + } + async readdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readdirPromise(p, opts); + }, async (mountFs, { subPath }) => { + return await mountFs.readdirPromise(subPath, opts); + }, { + requireSubpath: false + }); + } + readdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.readdirSync(p, opts); + }, (mountFs, { subPath }) => { + return mountFs.readdirSync(subPath, opts); + }, { + requireSubpath: false + }); + } + async readlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readlinkPromise(p); + }, async (mountFs, { subPath }) => { + return await mountFs.readlinkPromise(subPath); }); } - writeFileSync(p, content, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.writeFileSync(p, content, opts); - }, (zipFs, { subPath }) => { - return zipFs.writeFileSync(subPath, content, opts); - }); + readlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.readlinkSync(p); + }, (mountFs, { subPath }) => { + return mountFs.readlinkSync(subPath); + }); + } + async truncatePromise(p, len) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.truncatePromise(p, len); + }, async (mountFs, { subPath }) => { + return await mountFs.truncatePromise(subPath, len); + }); + } + truncateSync(p, len) { + return this.makeCallSync(p, () => { + return this.baseFs.truncateSync(p, len); + }, (mountFs, { subPath }) => { + return mountFs.truncateSync(subPath, len); + }); + } + async ftruncatePromise(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncatePromise(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncate`); + const [mountFs, realFd] = entry; + return mountFs.ftruncatePromise(realFd, len); + } + ftruncateSync(fd, len) { + if ((fd & MOUNT_MASK) !== this.magic) + return this.baseFs.ftruncateSync(fd, len); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) + throw errors.EBADF(`ftruncateSync`); + const [mountFs, realFd] = entry; + return mountFs.ftruncateSync(realFd, len); + } + watch(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watch( + p, + // @ts-expect-error + a, + b + ); + }, (mountFs, { subPath }) => { + return mountFs.watch( + subPath, + // @ts-expect-error + a, + b + ); + }); + } + watchFile(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watchFile( + p, + // @ts-expect-error + a, + b + ); + }, () => { + return (0, watchFile_1.watchFile)(this, p, a, b); + }); + } + unwatchFile(p, cb) { + return this.makeCallSync(p, () => { + return this.baseFs.unwatchFile(p, cb); + }, () => { + return (0, watchFile_1.unwatchFile)(this, p, cb); + }); + } + async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return await discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return await discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return await discard(); + return await this.getMountPromise(mountInfo.archivePath, async (mountFs) => await accept(mountFs, mountInfo)); + } + makeCallSync(p, discard, accept, { requireSubpath = true } = {}) { + if (typeof p !== `string`) + return discard(); + const normalizedP = this.resolve(p); + const mountInfo = this.findMount(normalizedP); + if (!mountInfo) + return discard(); + if (requireSubpath && mountInfo.subPath === `/`) + return discard(); + return this.getMountSync(mountInfo.archivePath, (mountFs) => accept(mountFs, mountInfo)); + } + findMount(p) { + if (this.filter && !this.filter.test(p)) + return null; + let filePath = ``; + while (true) { + const pathPartWithArchive = p.substring(filePath.length); + const mountPoint = this.getMountPoint(pathPartWithArchive, filePath); + if (!mountPoint) + return null; + filePath = this.pathUtils.join(filePath, mountPoint); + if (!this.isMount.has(filePath)) { + if (this.notMount.has(filePath)) + continue; + try { + if (this.typeCheck !== null && (this.baseFs.lstatSync(filePath).mode & fs_1.constants.S_IFMT) !== this.typeCheck) { + this.notMount.add(filePath); + continue; + } + } catch { + return null; + } + this.isMount.add(filePath); + } + return { + archivePath: filePath, + subPath: this.pathUtils.join(path_1.PortablePath.root, p.substring(filePath.length)) + }; + } + } + limitOpenFiles(max) { + var _a, _b, _c; + if (this.mountInstances === null) + return; + const now = Date.now(); + let nextExpiresAt = now + this.maxAge; + let closeCount = max === null ? 0 : this.mountInstances.size - max; + for (const [path2, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) { + if (refCount !== 0 || ((_a = childFs.hasOpenFileHandles) === null || _a === void 0 ? void 0 : _a.call(childFs))) { + continue; + } else if (now >= expiresAt) { + (_b = childFs.saveAndClose) === null || _b === void 0 ? void 0 : _b.call(childFs); + this.mountInstances.delete(path2); + closeCount -= 1; + continue; + } else if (max === null || closeCount <= 0) { + nextExpiresAt = expiresAt; + break; + } + (_c = childFs.saveAndClose) === null || _c === void 0 ? void 0 : _c.call(childFs); + this.mountInstances.delete(path2); + closeCount -= 1; + } + if (this.limitOpenFilesTimeout === null && (max === null && this.mountInstances.size > 0 || max !== null) && isFinite(nextExpiresAt)) { + this.limitOpenFilesTimeout = setTimeout(() => { + this.limitOpenFilesTimeout = null; + this.limitOpenFiles(null); + }, nextExpiresAt - now).unref(); + } + } + async getMountPromise(p, accept) { + var _a; + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + const createFsInstance = await this.factoryPromise(this.baseFs, p); + cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: createFsInstance(), + expiresAt: 0, + refCount: 0 + }; + } + } + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + cachedMountFs.refCount += 1; + try { + return await accept(cachedMountFs.childFs); + } finally { + cachedMountFs.refCount -= 1; + } + } else { + const mountFs = (await this.factoryPromise(this.baseFs, p))(); + try { + return await accept(mountFs); + } finally { + (_a = mountFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(mountFs); + } + } + } + getMountSync(p, accept) { + var _a; + if (this.mountInstances) { + let cachedMountFs = this.mountInstances.get(p); + if (!cachedMountFs) { + cachedMountFs = { + childFs: this.factorySync(this.baseFs, p), + expiresAt: 0, + refCount: 0 + }; + } + this.mountInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.mountInstances.set(p, cachedMountFs); + cachedMountFs.expiresAt = Date.now() + this.maxAge; + return accept(cachedMountFs.childFs); + } else { + const childFs = this.factorySync(this.baseFs, p); + try { + return accept(childFs); + } finally { + (_a = childFs.saveAndClose) === null || _a === void 0 ? void 0 : _a.call(childFs); + } + } + } + }; + exports2.MountFS = MountFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NoFS.js +var require_NoFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NoFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoFS = void 0; + var FakeFS_1 = require_FakeFS2(); + var path_1 = require_path7(); + var makeError = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` }); + var NoFS = class extends FakeFS_1.FakeFS { + constructor() { + super(path_1.ppath); + } + getExtractHint() { + throw makeError(); + } + getRealPath() { + throw makeError(); + } + resolve() { + throw makeError(); + } + async openPromise() { + throw makeError(); + } + openSync() { + throw makeError(); + } + async opendirPromise() { + throw makeError(); + } + opendirSync() { + throw makeError(); + } + async readPromise() { + throw makeError(); + } + readSync() { + throw makeError(); + } + async writePromise() { + throw makeError(); + } + writeSync() { + throw makeError(); + } + async closePromise() { + throw makeError(); + } + closeSync() { + throw makeError(); + } + createWriteStream() { + throw makeError(); + } + createReadStream() { + throw makeError(); + } + async realpathPromise() { + throw makeError(); + } + realpathSync() { + throw makeError(); + } + async readdirPromise() { + throw makeError(); + } + readdirSync() { + throw makeError(); + } + async existsPromise(p) { + throw makeError(); + } + existsSync(p) { + throw makeError(); + } + async accessPromise() { + throw makeError(); + } + accessSync() { + throw makeError(); + } + async statPromise() { + throw makeError(); + } + statSync() { + throw makeError(); + } + async fstatPromise(fd) { + throw makeError(); + } + fstatSync(fd) { + throw makeError(); + } + async lstatPromise(p) { + throw makeError(); + } + lstatSync(p) { + throw makeError(); + } + async fchmodPromise() { + throw makeError(); + } + fchmodSync() { + throw makeError(); + } + async chmodPromise() { + throw makeError(); + } + chmodSync() { + throw makeError(); + } + async fchownPromise() { + throw makeError(); + } + fchownSync() { + throw makeError(); + } + async chownPromise() { + throw makeError(); + } + chownSync() { + throw makeError(); + } + async mkdirPromise() { + throw makeError(); + } + mkdirSync() { + throw makeError(); + } + async rmdirPromise() { + throw makeError(); + } + rmdirSync() { + throw makeError(); + } + async linkPromise() { + throw makeError(); + } + linkSync() { + throw makeError(); + } + async symlinkPromise() { + throw makeError(); + } + symlinkSync() { + throw makeError(); + } + async renamePromise() { + throw makeError(); + } + renameSync() { + throw makeError(); + } + async copyFilePromise() { + throw makeError(); + } + copyFileSync() { + throw makeError(); + } + async appendFilePromise() { + throw makeError(); + } + appendFileSync() { + throw makeError(); + } + async writeFilePromise() { + throw makeError(); + } + writeFileSync() { + throw makeError(); + } + async unlinkPromise() { + throw makeError(); + } + unlinkSync() { + throw makeError(); + } + async utimesPromise() { + throw makeError(); + } + utimesSync() { + throw makeError(); + } + async lutimesPromise() { + throw makeError(); + } + lutimesSync() { + throw makeError(); + } + async readFilePromise() { + throw makeError(); + } + readFileSync() { + throw makeError(); + } + async readlinkPromise() { + throw makeError(); + } + readlinkSync() { + throw makeError(); + } + async truncatePromise() { + throw makeError(); + } + truncateSync() { + throw makeError(); + } + async ftruncatePromise(fd, len) { + throw makeError(); + } + ftruncateSync(fd, len) { + throw makeError(); + } + watch() { + throw makeError(); + } + watchFile() { + throw makeError(); + } + unwatchFile() { + throw makeError(); + } + }; + exports2.NoFS = NoFS; + NoFS.instance = new NoFS(); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/PosixFS.js +var require_PosixFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/PosixFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PosixFS = void 0; + var ProxiedFS_1 = require_ProxiedFS2(); + var path_1 = require_path7(); + var PosixFS = class extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; + } + mapFromBase(path2) { + return path_1.npath.fromPortablePath(path2); + } + mapToBase(path2) { + return path_1.npath.toPortablePath(path2); + } + }; + exports2.PosixFS = PosixFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/VirtualFS.js +var require_VirtualFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/VirtualFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualFS = void 0; + var NodeFS_1 = require_NodeFS2(); + var ProxiedFS_1 = require_ProxiedFS2(); + var path_1 = require_path7(); + var NUMBER_REGEXP = /^[0-9]+$/; + var VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; + var VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; + var VirtualFS = class extends ProxiedFS_1.ProxiedFS { + static makeVirtualPath(base, component, to) { + if (path_1.ppath.basename(base) !== `__virtual__`) + throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); + if (!path_1.ppath.basename(component).match(VALID_COMPONENT)) + throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); + const target = path_1.ppath.relative(path_1.ppath.dirname(base), to); + const segments = target.split(`/`); + let depth = 0; + while (depth < segments.length && segments[depth] === `..`) + depth += 1; + const finalSegments = segments.slice(depth); + const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments); + return fullVirtualPath; + } + static resolveVirtual(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match || !match[3] && match[5]) + return p; + const target = path_1.ppath.dirname(match[1]); + if (!match[3] || !match[4]) + return target; + const isnum = NUMBER_REGEXP.test(match[4]); + if (!isnum) + return p; + const depth = Number(match[4]); + const backstep = `../`.repeat(depth); + const subpath = match[5] || `.`; + return VirtualFS.resolveVirtual(path_1.ppath.join(target, backstep, subpath)); + } + constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) { + super(path_1.ppath); + this.baseFs = baseFs; } - async unlinkPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.unlinkPromise(p); - }, async (zipFs, { subPath }) => { - return await zipFs.unlinkPromise(subPath); - }); + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); } - unlinkSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.unlinkSync(p); - }, (zipFs, { subPath }) => { - return zipFs.unlinkSync(subPath); - }); + getRealPath() { + return this.baseFs.getRealPath(); } - async utimesPromise(p, atime, mtime) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.utimesPromise(p, atime, mtime); - }, async (zipFs, { subPath }) => { - return await zipFs.utimesPromise(subPath, atime, mtime); - }); + realpathSync(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return this.baseFs.realpathSync(p); + if (!match[5]) + return p; + const realpath = this.baseFs.realpathSync(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); } - utimesSync(p, atime, mtime) { - return this.makeCallSync(p, () => { - return this.baseFs.utimesSync(p, atime, mtime); - }, (zipFs, { subPath }) => { - return zipFs.utimesSync(subPath, atime, mtime); - }); + async realpathPromise(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) + return await this.baseFs.realpathPromise(p); + if (!match[5]) + return p; + const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); } - async mkdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.mkdirPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.mkdirPromise(subPath, opts); - }); + mapToBase(p) { + if (p === ``) + return p; + if (this.pathUtils.isAbsolute(p)) + return VirtualFS.resolveVirtual(p); + const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot)); + const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); + return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot; } - mkdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.mkdirSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.mkdirSync(subPath, opts); - }); + mapFromBase(p) { + return p; } - async rmdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.rmdirPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.rmdirPromise(subPath, opts); - }); + }; + exports2.VirtualFS = VirtualFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NodePathFS.js +var require_NodePathFS2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/NodePathFS.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodePathFS = void 0; + var url_1 = require("url"); + var util_1 = require("util"); + var ProxiedFS_1 = require_ProxiedFS2(); + var path_1 = require_path7(); + var NodePathFS = class extends ProxiedFS_1.ProxiedFS { + constructor(baseFs) { + super(path_1.npath); + this.baseFs = baseFs; } - rmdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.rmdirSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.rmdirSync(subPath, opts); - }); + mapFromBase(path2) { + return path2; + } + mapToBase(path2) { + if (typeof path2 === `string`) + return path2; + if (path2 instanceof url_1.URL) + return (0, url_1.fileURLToPath)(path2); + if (Buffer.isBuffer(path2)) { + const str = path2.toString(); + if (Buffer.byteLength(str) !== path2.byteLength) + throw new Error(`Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942`); + return str; + } + throw new Error(`Unsupported path type: ${(0, util_1.inspect)(path2)}`); } - async linkPromise(existingP, newP) { - return await this.makeCallPromise(newP, async () => { - return await this.baseFs.linkPromise(existingP, newP); - }, async (zipFs, { subPath }) => { - return await zipFs.linkPromise(existingP, subPath); - }); + }; + exports2.NodePathFS = NodePathFS; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js +var require_FileHandle2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js"(exports2) { + "use strict"; + var _a; + var _b; + var _c; + var _d; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.FileHandle = void 0; + var readline_1 = require("readline"); + var kBaseFs = Symbol(`kBaseFs`); + var kFd = Symbol(`kFd`); + var kClosePromise = Symbol(`kClosePromise`); + var kCloseResolve = Symbol(`kCloseResolve`); + var kCloseReject = Symbol(`kCloseReject`); + var kRefs = Symbol(`kRefs`); + var kRef = Symbol(`kRef`); + var kUnref = Symbol(`kUnref`); + var FileHandle = class { + constructor(fd, baseFs) { + this[_a] = 1; + this[_b] = void 0; + this[_c] = void 0; + this[_d] = void 0; + this[kBaseFs] = baseFs; + this[kFd] = fd; } - linkSync(existingP, newP) { - return this.makeCallSync(newP, () => { - return this.baseFs.linkSync(existingP, newP); - }, (zipFs, { subPath }) => { - return zipFs.linkSync(existingP, subPath); - }); + get fd() { + return this[kFd]; } - async symlinkPromise(target, p, type) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.symlinkPromise(target, p, type); - }, async (zipFs, { subPath }) => { - return await zipFs.symlinkPromise(target, subPath); - }); + async appendFile(data, options) { + var _e; + try { + this[kRef](this.appendFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + return await this[kBaseFs].appendFilePromise(this.fd, data, encoding ? { encoding } : void 0); + } finally { + this[kUnref](); + } } - symlinkSync(target, p, type) { - return this.makeCallSync(p, () => { - return this.baseFs.symlinkSync(target, p, type); - }, (zipFs, { subPath }) => { - return zipFs.symlinkSync(target, subPath); - }); + async chown(uid, gid) { + try { + this[kRef](this.chown); + return await this[kBaseFs].fchownPromise(this.fd, uid, gid); + } finally { + this[kUnref](); + } } - async readFilePromise(p, encoding) { - return this.makeCallPromise(p, async () => { - switch (encoding) { - case `utf8`: - return await this.baseFs.readFilePromise(p, encoding); - default: - return await this.baseFs.readFilePromise(p, encoding); - } - }, async (zipFs, { subPath }) => { - return await zipFs.readFilePromise(subPath, encoding); - }); + async chmod(mode) { + try { + this[kRef](this.chmod); + return await this[kBaseFs].fchmodPromise(this.fd, mode); + } finally { + this[kUnref](); + } } - readFileSync(p, encoding) { - return this.makeCallSync(p, () => { - switch (encoding) { - case `utf8`: - return this.baseFs.readFileSync(p, encoding); - default: - return this.baseFs.readFileSync(p, encoding); - } - }, (zipFs, { subPath }) => { - return zipFs.readFileSync(subPath, encoding); - }); + createReadStream(options) { + return this[kBaseFs].createReadStream(null, { ...options, fd: this.fd }); } - async readdirPromise(p, opts) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.readdirPromise(p, opts); - }, async (zipFs, { subPath }) => { - return await zipFs.readdirPromise(subPath, opts); - }, { - requireSubpath: false - }); + createWriteStream(options) { + return this[kBaseFs].createWriteStream(null, { ...options, fd: this.fd }); } - readdirSync(p, opts) { - return this.makeCallSync(p, () => { - return this.baseFs.readdirSync(p, opts); - }, (zipFs, { subPath }) => { - return zipFs.readdirSync(subPath, opts); - }, { - requireSubpath: false - }); + // FIXME: Missing FakeFS version + datasync() { + throw new Error(`Method not implemented.`); } - async readlinkPromise(p) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.readlinkPromise(p); - }, async (zipFs, { subPath }) => { - return await zipFs.readlinkPromise(subPath); - }); + // FIXME: Missing FakeFS version + sync() { + throw new Error(`Method not implemented.`); } - readlinkSync(p) { - return this.makeCallSync(p, () => { - return this.baseFs.readlinkSync(p); - }, (zipFs, { subPath }) => { - return zipFs.readlinkSync(subPath); - }); + async read(bufferOrOptions, offset, length, position) { + var _e, _f, _g; + try { + this[kRef](this.read); + let buffer; + if (!Buffer.isBuffer(bufferOrOptions)) { + bufferOrOptions !== null && bufferOrOptions !== void 0 ? bufferOrOptions : bufferOrOptions = {}; + buffer = (_e = bufferOrOptions.buffer) !== null && _e !== void 0 ? _e : Buffer.alloc(16384); + offset = bufferOrOptions.offset || 0; + length = (_f = bufferOrOptions.length) !== null && _f !== void 0 ? _f : buffer.byteLength; + position = (_g = bufferOrOptions.position) !== null && _g !== void 0 ? _g : null; + } else { + buffer = bufferOrOptions; + } + offset !== null && offset !== void 0 ? offset : offset = 0; + length !== null && length !== void 0 ? length : length = 0; + if (length === 0) { + return { + bytesRead: length, + buffer + }; + } + const bytesRead = await this[kBaseFs].readPromise(this.fd, buffer, offset, length, position); + return { + bytesRead, + buffer + }; + } finally { + this[kUnref](); + } } - async truncatePromise(p, len) { - return await this.makeCallPromise(p, async () => { - return await this.baseFs.truncatePromise(p, len); - }, async (zipFs, { subPath }) => { - return await zipFs.truncatePromise(subPath, len); - }); + async readFile(options) { + var _e; + try { + this[kRef](this.readFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + return await this[kBaseFs].readFilePromise(this.fd, encoding); + } finally { + this[kUnref](); + } } - truncateSync(p, len) { - return this.makeCallSync(p, () => { - return this.baseFs.truncateSync(p, len); - }, (zipFs, { subPath }) => { - return zipFs.truncateSync(subPath, len); + readLines(options) { + return (0, readline_1.createInterface)({ + input: this.createReadStream(options), + crlfDelay: Infinity }); } - watch(p, a, b) { - return this.makeCallSync(p, () => { - return this.baseFs.watch(p, a, b); - }, (zipFs, { subPath }) => { - return zipFs.watch(subPath, a, b); - }); + async stat(opts) { + try { + this[kRef](this.stat); + return await this[kBaseFs].fstatPromise(this.fd, opts); + } finally { + this[kUnref](); + } } - watchFile(p, a, b) { - return this.makeCallSync(p, () => { - return this.baseFs.watchFile(p, a, b); - }, () => { - return (0, watchFile_1.watchFile)(this, p, a, b); - }); + async truncate(len) { + try { + this[kRef](this.truncate); + return await this[kBaseFs].ftruncatePromise(this.fd, len); + } finally { + this[kUnref](); + } } - unwatchFile(p, cb) { - return this.makeCallSync(p, () => { - return this.baseFs.unwatchFile(p, cb); - }, () => { - return (0, watchFile_1.unwatchFile)(this, p, cb); - }); + // FIXME: Missing FakeFS version + utimes(atime, mtime) { + throw new Error(`Method not implemented.`); } - async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) { - if (typeof p !== `string`) - return await discard(); - const normalizedP = this.resolve(p); - const zipInfo = this.findZip(normalizedP); - if (!zipInfo) - return await discard(); - if (requireSubpath && zipInfo.subPath === `/`) - return await discard(); - return await this.getZipPromise(zipInfo.archivePath, async (zipFs) => await accept(zipFs, zipInfo)); + async writeFile(data, options) { + var _e; + try { + this[kRef](this.writeFile); + const encoding = (_e = typeof options === `string` ? options : options === null || options === void 0 ? void 0 : options.encoding) !== null && _e !== void 0 ? _e : void 0; + await this[kBaseFs].writeFilePromise(this.fd, data, encoding); + } finally { + this[kUnref](); + } } - makeCallSync(p, discard, accept, { requireSubpath = true } = {}) { - if (typeof p !== `string`) - return discard(); - const normalizedP = this.resolve(p); - const zipInfo = this.findZip(normalizedP); - if (!zipInfo) - return discard(); - if (requireSubpath && zipInfo.subPath === `/`) - return discard(); - return this.getZipSync(zipInfo.archivePath, (zipFs) => accept(zipFs, zipInfo)); + async write(...args2) { + try { + this[kRef](this.write); + if (ArrayBuffer.isView(args2[0])) { + const [buffer, offset, length, position] = args2; + const bytesWritten = await this[kBaseFs].writePromise(this.fd, buffer, offset !== null && offset !== void 0 ? offset : void 0, length !== null && length !== void 0 ? length : void 0, position !== null && position !== void 0 ? position : void 0); + return { bytesWritten, buffer }; + } else { + const [data, position, encoding] = args2; + const bytesWritten = await this[kBaseFs].writePromise(this.fd, data, position, encoding); + return { bytesWritten, buffer: data }; + } + } finally { + this[kUnref](); + } } - findZip(p) { - if (this.filter && !this.filter.test(p)) - return null; - let filePath = ``; - while (true) { - const archivePart = (0, exports2.getArchivePart)(p.substr(filePath.length)); - if (!archivePart) - return null; - filePath = this.pathUtils.join(filePath, archivePart); - if (this.isZip.has(filePath) === false) { - if (this.notZip.has(filePath)) - continue; - try { - if (!this.baseFs.lstatSync(filePath).isFile()) { - this.notZip.add(filePath); - continue; - } - } catch (_a) { - return null; + // TODO: Use writev from FakeFS when that is implemented + async writev(buffers, position) { + try { + this[kRef](this.writev); + let bytesWritten = 0; + if (typeof position !== `undefined`) { + for (const buffer of buffers) { + const writeResult = await this.write(buffer, void 0, void 0, position); + bytesWritten += writeResult.bytesWritten; + position += writeResult.bytesWritten; + } + } else { + for (const buffer of buffers) { + const writeResult = await this.write(buffer); + bytesWritten += writeResult.bytesWritten; } - this.isZip.add(filePath); } return { - archivePath: filePath, - subPath: this.pathUtils.join(path_1.PortablePath.root, p.substr(filePath.length)) + buffers, + bytesWritten }; + } finally { + this[kUnref](); } } - limitOpenFiles(max) { - if (this.zipInstances === null) - return; - const now = Date.now(); - let nextExpiresAt = now + this.maxAge; - let closeCount = max === null ? 0 : this.zipInstances.size - max; - for (const [path, { zipFs, expiresAt, refCount }] of this.zipInstances.entries()) { - if (refCount !== 0 || zipFs.hasOpenFileHandles()) { - continue; - } else if (now >= expiresAt) { - zipFs.saveAndClose(); - this.zipInstances.delete(path); - closeCount -= 1; - continue; - } else if (max === null || closeCount <= 0) { - nextExpiresAt = expiresAt; - break; - } - zipFs.saveAndClose(); - this.zipInstances.delete(path); - closeCount -= 1; - } - if (this.limitOpenFilesTimeout === null && (max === null && this.zipInstances.size > 0 || max !== null)) { - this.limitOpenFilesTimeout = setTimeout(() => { - this.limitOpenFilesTimeout = null; - this.limitOpenFiles(null); - }, nextExpiresAt - now).unref(); - } + // FIXME: Missing FakeFS version + readv(buffers, position) { + throw new Error(`Method not implemented.`); } - async getZipPromise(p, accept) { - const getZipOptions = async () => ({ - baseFs: this.baseFs, - libzip: this.libzip, - readOnly: this.readOnlyArchives, - stats: await this.baseFs.statPromise(p) - }); - if (this.zipInstances) { - let cachedZipFs = this.zipInstances.get(p); - if (!cachedZipFs) { - const zipOptions = await getZipOptions(); - cachedZipFs = this.zipInstances.get(p); - if (!cachedZipFs) { - cachedZipFs = { - zipFs: new ZipFS_1.ZipFS(p, zipOptions), - expiresAt: 0, - refCount: 0 - }; - } - } - this.zipInstances.delete(p); - this.limitOpenFiles(this.maxOpenFiles - 1); - this.zipInstances.set(p, cachedZipFs); - cachedZipFs.expiresAt = Date.now() + this.maxAge; - cachedZipFs.refCount += 1; - try { - return await accept(cachedZipFs.zipFs); - } finally { - cachedZipFs.refCount -= 1; - } + close() { + if (this[kFd] === -1) + return Promise.resolve(); + if (this[kClosePromise]) + return this[kClosePromise]; + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kClosePromise] = this[kBaseFs].closePromise(fd).finally(() => { + this[kClosePromise] = void 0; + }); } else { - const zipFs = new ZipFS_1.ZipFS(p, await getZipOptions()); - try { - return await accept(zipFs); - } finally { - zipFs.saveAndClose(); - } + this[kClosePromise] = new Promise((resolve, reject) => { + this[kCloseResolve] = resolve; + this[kCloseReject] = reject; + }).finally(() => { + this[kClosePromise] = void 0; + this[kCloseReject] = void 0; + this[kCloseResolve] = void 0; + }); } + return this[kClosePromise]; } - getZipSync(p, accept) { - const getZipOptions = () => ({ - baseFs: this.baseFs, - libzip: this.libzip, - readOnly: this.readOnlyArchives, - stats: this.baseFs.statSync(p) - }); - if (this.zipInstances) { - let cachedZipFs = this.zipInstances.get(p); - if (!cachedZipFs) { - cachedZipFs = { - zipFs: new ZipFS_1.ZipFS(p, getZipOptions()), - expiresAt: 0, - refCount: 0 - }; - } - this.zipInstances.delete(p); - this.limitOpenFiles(this.maxOpenFiles - 1); - this.zipInstances.set(p, cachedZipFs); - cachedZipFs.expiresAt = Date.now() + this.maxAge; - return accept(cachedZipFs.zipFs); - } else { - const zipFs = new ZipFS_1.ZipFS(p, getZipOptions()); - try { - return accept(zipFs); - } finally { - zipFs.saveAndClose(); - } + [(_a = kRefs, _b = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) { + if (this[kFd] === -1) { + const err = new Error(`file closed`); + err.code = `EBADF`; + err.syscall = caller.name; + throw err; } + this[kRefs]++; } - }; - exports2.ZipOpenFS = ZipOpenFS; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/URLFS.js -var require_URLFS = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/URLFS.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.URLFS = void 0; - var url_1 = require("url"); - var ProxiedFS_1 = require_ProxiedFS(); - var path_1 = require_path4(); - var URLFS = class extends ProxiedFS_1.ProxiedFS { - constructor(baseFs) { - super(path_1.npath); - this.baseFs = baseFs; - } - mapFromBase(path) { - return path; - } - mapToBase(path) { - if (path instanceof url_1.URL) - return (0, url_1.fileURLToPath)(path); - return path; + [kUnref]() { + this[kRefs]--; + if (this[kRefs] === 0) { + const fd = this[kFd]; + this[kFd] = -1; + this[kBaseFs].closePromise(fd).then(this[kCloseResolve], this[kCloseReject]); + } } }; - exports2.URLFS = URLFS; + exports2.FileHandle = FileHandle; } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/patchFs.js -var require_patchFs = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/patchFs.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js +var require_patchFs3 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.extendFs = exports2.patchFs = void 0; var util_1 = require("util"); - var URLFS_1 = require_URLFS(); - var SYNC_IMPLEMENTATIONS = new Set([ + var NodePathFS_1 = require_NodePathFS2(); + var FileHandle_1 = require_FileHandle2(); + var SYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([ `accessSync`, `appendFileSync`, `createReadStream`, + `createWriteStream`, `chmodSync`, + `fchmodSync`, `chownSync`, + `fchownSync`, `closeSync`, `copyFileSync`, `linkSync`, @@ -97544,7 +180503,6 @@ var require_patchFs = __commonJS({ `mkdirSync`, `openSync`, `opendirSync`, - `readSync`, `readlinkSync`, `readFileSync`, `readdirSync`, @@ -97555,6 +180513,7 @@ var require_patchFs = __commonJS({ `statSync`, `symlinkSync`, `truncateSync`, + `ftruncateSync`, `unlinkSync`, `unwatchFile`, `utimesSync`, @@ -97563,10 +180522,12 @@ var require_patchFs = __commonJS({ `writeFileSync`, `writeSync` ]); - var ASYNC_IMPLEMENTATIONS = new Set([ + var ASYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([ `accessPromise`, `appendFilePromise`, + `fchmodPromise`, `chmodPromise`, + `fchownPromise`, `chownPromise`, `closePromise`, `copyFilePromise`, @@ -97587,26 +180548,14 @@ var require_patchFs = __commonJS({ `statPromise`, `symlinkPromise`, `truncatePromise`, + `ftruncatePromise`, `unlinkPromise`, `utimesPromise`, `writeFilePromise`, `writeSync` ]); - var FILEHANDLE_IMPLEMENTATIONS = new Set([ - `appendFilePromise`, - `chmodPromise`, - `chownPromise`, - `closePromise`, - `readPromise`, - `readFilePromise`, - `statPromise`, - `truncatePromise`, - `utimesPromise`, - `writePromise`, - `writeFilePromise` - ]); function patchFs(patchedFs, fakeFs) { - fakeFs = new URLFS_1.URLFS(fakeFs); + fakeFs = new NodePathFS_1.NodePathFS(fakeFs); const setupFn = (target, name, replacement) => { const orig = target[name]; target[name] = replacement; @@ -97627,12 +180576,36 @@ var require_patchFs = __commonJS({ }); }); }); - setupFn(patchedFs, `read`, (p, buffer, ...args2) => { - const hasCallback = typeof args2[args2.length - 1] === `function`; - const callback = hasCallback ? args2.pop() : () => { - }; + setupFn(patchedFs, `read`, (...args2) => { + let [fd, buffer, offset, length, position, callback] = args2; + if (args2.length <= 3) { + let options = {}; + if (args2.length < 3) { + callback = args2[1]; + } else { + options = args2[1]; + callback = args2[2]; + } + ({ + buffer = Buffer.alloc(16384), + offset = 0, + length = buffer.byteLength, + position + } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) { + process.nextTick(() => { + callback(null, 0, buffer); + }); + return; + } + if (position == null) + position = -1; process.nextTick(() => { - fakeFs.readPromise(p, buffer, ...args2).then((bytesRead) => { + fakeFs.readPromise(fd, buffer, offset, length, position).then((bytesRead) => { callback(null, bytesRead, buffer); }, (error) => { callback(error, 0, buffer); @@ -97651,8 +180624,8 @@ var require_patchFs = __commonJS({ const callback = hasCallback ? args2.pop() : () => { }; process.nextTick(() => { - fakeImpl.apply(fakeFs, args2).then((result) => { - callback(null, result); + fakeImpl.apply(fakeFs, args2).then((result2) => { + callback(null, result2); }, (error) => { callback(error); }); @@ -97670,6 +180643,21 @@ var require_patchFs = __commonJS({ return false; } }); + setupFn(patchedFs, `readSync`, (...args2) => { + let [fd, buffer, offset, length, position] = args2; + if (args2.length <= 3) { + const options = args2[2] || {}; + ({ offset = 0, length = buffer.byteLength, position } = options); + } + if (offset == null) + offset = 0; + length |= 0; + if (length === 0) + return 0; + if (position == null) + position = -1; + return fakeFs.readSync(fd, buffer, offset, length, position); + }); for (const fnName of SYNC_IMPLEMENTATIONS) { const origName = fnName; if (typeof patchedFs[origName] === `undefined`) @@ -97682,52 +180670,38 @@ var require_patchFs = __commonJS({ patchedFs.realpathSync.native = patchedFs.realpathSync; } { - const origEmitWarning = process.emitWarning; - process.emitWarning = () => { - }; - let patchedFsPromises; - try { - patchedFsPromises = patchedFs.promises; - } finally { - process.emitWarning = origEmitWarning; - } - if (typeof patchedFsPromises !== `undefined`) { - for (const fnName of ASYNC_IMPLEMENTATIONS) { - const origName = fnName.replace(/Promise$/, ``); - if (typeof patchedFsPromises[origName] === `undefined`) - continue; - const fakeImpl = fakeFs[fnName]; - if (typeof fakeImpl === `undefined`) - continue; - if (fnName === `open`) - continue; - setupFn(patchedFsPromises, origName, fakeImpl.bind(fakeFs)); - } - class FileHandle { - constructor(fd) { - this.fd = fd; + const patchedFsPromises = patchedFs.promises; + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFsPromises[origName] === `undefined`) + continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) + continue; + if (fnName === `open`) + continue; + setupFn(patchedFsPromises, origName, (pathLike, ...args2) => { + if (pathLike instanceof FileHandle_1.FileHandle) { + return pathLike[origName].apply(pathLike, args2); + } else { + return fakeImpl.call(fakeFs, pathLike, ...args2); } - } - for (const fnName of FILEHANDLE_IMPLEMENTATIONS) { - const origName = fnName.replace(/Promise$/, ``); - const fakeImpl = fakeFs[fnName]; - if (typeof fakeImpl === `undefined`) - continue; - setupFn(FileHandle.prototype, origName, function(...args2) { - return fakeImpl.call(fakeFs, this.fd, ...args2); - }); - } - setupFn(patchedFsPromises, `open`, async (...args2) => { - const fd = await fakeFs.openPromise(...args2); - return new FileHandle(fd); }); } + setupFn(patchedFsPromises, `open`, async (...args2) => { + const fd = await fakeFs.openPromise(...args2); + return new FileHandle_1.FileHandle(fd, fakeFs); + }); } { - patchedFs.read[util_1.promisify.custom] = async (p, buffer, ...args2) => { - const res = fakeFs.readPromise(p, buffer, ...args2); + patchedFs.read[util_1.promisify.custom] = async (fd, buffer, ...args2) => { + const res = fakeFs.readPromise(fd, buffer, ...args2); return { bytesRead: await res, buffer }; }; + patchedFs.write[util_1.promisify.custom] = async (fd, buffer, ...args2) => { + const res = fakeFs.writePromise(fd, buffer, ...args2); + return { bytesWritten: await res, buffer }; + }; } } exports2.patchFs = patchFs; @@ -97740,41 +180714,45 @@ var require_patchFs = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/xfs.js -var require_xfs = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/xfs.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/xfs.js +var require_xfs2 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/xfs.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.xfs = void 0; - var tslib_1 = require_tslib(); - var os_1 = (0, tslib_1.__importDefault)(require("os")); - var NodeFS_1 = require_NodeFS(); - var path_1 = require_path4(); + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var os_1 = tslib_12.__importDefault(require("os")); + var NodeFS_1 = require_NodeFS2(); + var path_1 = require_path7(); function getTempName(prefix) { - const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir()); const hash = Math.ceil(Math.random() * 4294967296).toString(16).padStart(8, `0`); - return path_1.ppath.join(tmpdir, `${prefix}${hash}`); + return `${prefix}${hash}`; } - var tmpdirs = new Set(); - var cleanExitRegistered = false; - function registerCleanExit() { - if (cleanExitRegistered) - return; - cleanExitRegistered = true; + var tmpdirs = /* @__PURE__ */ new Set(); + var tmpEnv = null; + function initTmpEnv() { + if (tmpEnv) + return tmpEnv; + const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir()); + const realTmpdir = exports2.xfs.realpathSync(tmpdir); process.once(`exit`, () => { exports2.xfs.rmtempSync(); }); + return tmpEnv = { + tmpdir, + realTmpdir + }; } exports2.xfs = Object.assign(new NodeFS_1.NodeFS(), { detachTemp(p) { tmpdirs.delete(p); }, mktempSync(cb) { - registerCleanExit(); + const { tmpdir, realTmpdir } = initTmpEnv(); while (true) { - const p = getTempName(`xfs-`); + const name = getTempName(`xfs-`); try { - this.mkdirSync(p); + this.mkdirSync(path_1.ppath.join(tmpdir, name)); } catch (error) { if (error.code === `EEXIST`) { continue; @@ -97782,31 +180760,29 @@ var require_xfs = __commonJS({ throw error; } } - const realP = this.realpathSync(p); + const realP = path_1.ppath.join(realTmpdir, name); tmpdirs.add(realP); - if (typeof cb !== `undefined`) { - try { - return cb(realP); - } finally { - if (tmpdirs.has(realP)) { - tmpdirs.delete(realP); - try { - this.removeSync(realP); - } catch (_a) { - } + if (typeof cb === `undefined`) + return realP; + try { + return cb(realP); + } finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + this.removeSync(realP); + } catch { } } - } else { - return realP; } } }, async mktempPromise(cb) { - registerCleanExit(); + const { tmpdir, realTmpdir } = initTmpEnv(); while (true) { - const p = getTempName(`xfs-`); + const name = getTempName(`xfs-`); try { - await this.mkdirPromise(p); + await this.mkdirPromise(path_1.ppath.join(tmpdir, name)); } catch (error) { if (error.code === `EEXIST`) { continue; @@ -97814,22 +180790,20 @@ var require_xfs = __commonJS({ throw error; } } - const realP = await this.realpathPromise(p); + const realP = path_1.ppath.join(realTmpdir, name); tmpdirs.add(realP); - if (typeof cb !== `undefined`) { - try { - return await cb(realP); - } finally { - if (tmpdirs.has(realP)) { - tmpdirs.delete(realP); - try { - await this.removePromise(realP); - } catch (_a) { - } + if (typeof cb === `undefined`) + return realP; + try { + return await cb(realP); + } finally { + if (tmpdirs.has(realP)) { + tmpdirs.delete(realP); + try { + await this.removePromise(realP); + } catch { } } - } else { - return realP; } } }, @@ -97838,7 +180812,7 @@ var require_xfs = __commonJS({ try { await exports2.xfs.removePromise(p, { maxRetries: 0 }); tmpdirs.delete(p); - } catch (_a) { + } catch { } })); }, @@ -97847,7 +180821,7 @@ var require_xfs = __commonJS({ try { exports2.xfs.removeSync(p); tmpdirs.delete(p); - } catch (_a) { + } catch { } } } @@ -97855,39 +180829,52 @@ var require_xfs = __commonJS({ } }); -// ../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/index.js -var require_lib76 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+fslib@2.5.2/node_modules/@yarnpkg/fslib/lib/index.js"(exports2) { +// ../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/index.js +var require_lib127 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+fslib@3.0.0-rc.45/node_modules/@yarnpkg/fslib/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.xfs = exports2.extendFs = exports2.patchFs = exports2.ZipOpenFS = exports2.ZipFS = exports2.VirtualFS = exports2.ProxiedFS = exports2.PosixFS = exports2.NodeFS = exports2.NoFS = exports2.LazyFS = exports2.JailFS = exports2.CwdFS = exports2.FakeFS = exports2.AliasFS = exports2.toFilename = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = exports2.DEFAULT_COMPRESSION_LEVEL = exports2.normalizeLineEndings = exports2.statUtils = exports2.opendir = exports2.LinkStrategy = void 0; - var tslib_1 = require_tslib(); - var statUtils = (0, tslib_1.__importStar)(require_statUtils()); + exports2.xfs = exports2.extendFs = exports2.patchFs = exports2.VirtualFS = exports2.ProxiedFS = exports2.PosixFS = exports2.NodeFS = exports2.NoFS = exports2.MountFS = exports2.LazyFS = exports2.JailFS = exports2.CwdFS = exports2.BasePortableFakeFS = exports2.FakeFS = exports2.AliasFS = exports2.toFilename = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = exports2.normalizeLineEndings = exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = exports2.CustomDir = exports2.opendir = exports2.setupCopyIndex = exports2.statUtils = exports2.errors = exports2.constants = void 0; + var tslib_12 = (init_tslib_es63(), __toCommonJS(tslib_es6_exports3)); + var constants = tslib_12.__importStar(require_constants13()); + exports2.constants = constants; + var errors = tslib_12.__importStar(require_errors9()); + exports2.errors = errors; + var statUtils = tslib_12.__importStar(require_statUtils2()); exports2.statUtils = statUtils; - var copyPromise_1 = require_copyPromise(); - Object.defineProperty(exports2, "LinkStrategy", { enumerable: true, get: function() { - return copyPromise_1.LinkStrategy; + var copyPromise_1 = require_copyPromise2(); + Object.defineProperty(exports2, "setupCopyIndex", { enumerable: true, get: function() { + return copyPromise_1.setupCopyIndex; } }); - var opendir_1 = require_opendir(); + var opendir_1 = require_opendir2(); Object.defineProperty(exports2, "opendir", { enumerable: true, get: function() { return opendir_1.opendir; } }); - var FakeFS_1 = require_FakeFS(); + Object.defineProperty(exports2, "CustomDir", { enumerable: true, get: function() { + return opendir_1.CustomDir; + } }); + var watchFile_1 = require_watchFile2(); + Object.defineProperty(exports2, "watchFile", { enumerable: true, get: function() { + return watchFile_1.watchFile; + } }); + Object.defineProperty(exports2, "unwatchFile", { enumerable: true, get: function() { + return watchFile_1.unwatchFile; + } }); + Object.defineProperty(exports2, "unwatchAllFiles", { enumerable: true, get: function() { + return watchFile_1.unwatchAllFiles; + } }); + var FakeFS_1 = require_FakeFS2(); Object.defineProperty(exports2, "normalizeLineEndings", { enumerable: true, get: function() { return FakeFS_1.normalizeLineEndings; } }); - var ZipFS_1 = require_ZipFS(); - Object.defineProperty(exports2, "DEFAULT_COMPRESSION_LEVEL", { enumerable: true, get: function() { - return ZipFS_1.DEFAULT_COMPRESSION_LEVEL; - } }); - var path_1 = require_path4(); + var path_1 = require_path7(); Object.defineProperty(exports2, "PortablePath", { enumerable: true, get: function() { return path_1.PortablePath; } }); Object.defineProperty(exports2, "Filename", { enumerable: true, get: function() { return path_1.Filename; } }); - var path_2 = require_path4(); + var path_2 = require_path7(); Object.defineProperty(exports2, "npath", { enumerable: true, get: function() { return path_2.npath; } }); @@ -97897,23914 +180884,28590 @@ var require_lib76 = __commonJS({ Object.defineProperty(exports2, "toFilename", { enumerable: true, get: function() { return path_2.toFilename; } }); - var AliasFS_1 = require_AliasFS(); + var AliasFS_1 = require_AliasFS2(); Object.defineProperty(exports2, "AliasFS", { enumerable: true, get: function() { return AliasFS_1.AliasFS; } }); - var FakeFS_2 = require_FakeFS(); + var FakeFS_2 = require_FakeFS2(); Object.defineProperty(exports2, "FakeFS", { enumerable: true, get: function() { return FakeFS_2.FakeFS; } }); - var CwdFS_1 = require_CwdFS(); + Object.defineProperty(exports2, "BasePortableFakeFS", { enumerable: true, get: function() { + return FakeFS_2.BasePortableFakeFS; + } }); + var CwdFS_1 = require_CwdFS2(); Object.defineProperty(exports2, "CwdFS", { enumerable: true, get: function() { return CwdFS_1.CwdFS; } }); - var JailFS_1 = require_JailFS(); + var JailFS_1 = require_JailFS2(); Object.defineProperty(exports2, "JailFS", { enumerable: true, get: function() { return JailFS_1.JailFS; } }); - var LazyFS_1 = require_LazyFS(); + var LazyFS_1 = require_LazyFS2(); Object.defineProperty(exports2, "LazyFS", { enumerable: true, get: function() { return LazyFS_1.LazyFS; } }); - var NoFS_1 = require_NoFS(); + var MountFS_1 = require_MountFS2(); + Object.defineProperty(exports2, "MountFS", { enumerable: true, get: function() { + return MountFS_1.MountFS; + } }); + var NoFS_1 = require_NoFS2(); Object.defineProperty(exports2, "NoFS", { enumerable: true, get: function() { return NoFS_1.NoFS; } }); - var NodeFS_1 = require_NodeFS(); + var NodeFS_1 = require_NodeFS2(); Object.defineProperty(exports2, "NodeFS", { enumerable: true, get: function() { return NodeFS_1.NodeFS; } }); - var PosixFS_1 = require_PosixFS(); + var PosixFS_1 = require_PosixFS2(); Object.defineProperty(exports2, "PosixFS", { enumerable: true, get: function() { return PosixFS_1.PosixFS; } }); - var ProxiedFS_1 = require_ProxiedFS(); + var ProxiedFS_1 = require_ProxiedFS2(); Object.defineProperty(exports2, "ProxiedFS", { enumerable: true, get: function() { return ProxiedFS_1.ProxiedFS; } }); - var VirtualFS_1 = require_VirtualFS(); + var VirtualFS_1 = require_VirtualFS2(); Object.defineProperty(exports2, "VirtualFS", { enumerable: true, get: function() { return VirtualFS_1.VirtualFS; } }); - var ZipFS_2 = require_ZipFS(); - Object.defineProperty(exports2, "ZipFS", { enumerable: true, get: function() { - return ZipFS_2.ZipFS; - } }); - var ZipOpenFS_1 = require_ZipOpenFS(); - Object.defineProperty(exports2, "ZipOpenFS", { enumerable: true, get: function() { - return ZipOpenFS_1.ZipOpenFS; - } }); - var patchFs_1 = require_patchFs(); + var patchFs_1 = require_patchFs3(); Object.defineProperty(exports2, "patchFs", { enumerable: true, get: function() { return patchFs_1.patchFs; } }); Object.defineProperty(exports2, "extendFs", { enumerable: true, get: function() { return patchFs_1.extendFs; } }); - var xfs_1 = require_xfs(); + var xfs_1 = require_xfs2(); Object.defineProperty(exports2, "xfs", { enumerable: true, get: function() { return xfs_1.xfs; } }); } }); -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/shell.js -var require_shell = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/shell.js"(exports2, module2) { +// ../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/hoist.js +var require_hoist = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/hoist.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hoist = exports2.HoisterDependencyKind = void 0; + var HoisterDependencyKind; + (function(HoisterDependencyKind2) { + HoisterDependencyKind2[HoisterDependencyKind2["REGULAR"] = 0] = "REGULAR"; + HoisterDependencyKind2[HoisterDependencyKind2["WORKSPACE"] = 1] = "WORKSPACE"; + HoisterDependencyKind2[HoisterDependencyKind2["EXTERNAL_SOFT_LINK"] = 2] = "EXTERNAL_SOFT_LINK"; + })(HoisterDependencyKind || (exports2.HoisterDependencyKind = HoisterDependencyKind = {})); + var Hoistable; + (function(Hoistable2) { + Hoistable2[Hoistable2["YES"] = 0] = "YES"; + Hoistable2[Hoistable2["NO"] = 1] = "NO"; + Hoistable2[Hoistable2["DEPENDS"] = 2] = "DEPENDS"; + })(Hoistable || (Hoistable = {})); + var makeLocator = (name, reference) => `${name}@${reference}`; + var makeIdent = (name, reference) => { + const hashIdx = reference.indexOf(`#`); + const realReference = hashIdx >= 0 ? reference.substring(hashIdx + 1) : reference; + return makeLocator(name, realReference); + }; + var DebugLevel; + (function(DebugLevel2) { + DebugLevel2[DebugLevel2["NONE"] = -1] = "NONE"; + DebugLevel2[DebugLevel2["PERF"] = 0] = "PERF"; + DebugLevel2[DebugLevel2["CHECK"] = 1] = "CHECK"; + DebugLevel2[DebugLevel2["REASONS"] = 2] = "REASONS"; + DebugLevel2[DebugLevel2["INTENSIVE_CHECK"] = 9] = "INTENSIVE_CHECK"; + })(DebugLevel || (DebugLevel = {})); + var hoist = (tree, opts = {}) => { + const debugLevel = opts.debugLevel || Number(process.env.NM_DEBUG_LEVEL || DebugLevel.NONE); + const check = opts.check || debugLevel >= DebugLevel.INTENSIVE_CHECK; + const hoistingLimits = opts.hoistingLimits || /* @__PURE__ */ new Map(); + const options = { check, debugLevel, hoistingLimits, fastLookupPossible: true }; + let startTime; + if (options.debugLevel >= DebugLevel.PERF) + startTime = Date.now(); + const treeCopy = cloneTree(tree, options); + let anotherRoundNeeded = false; + let round = 0; + do { + anotherRoundNeeded = hoistTo(treeCopy, [treeCopy], /* @__PURE__ */ new Set([treeCopy.locator]), /* @__PURE__ */ new Map(), options).anotherRoundNeeded; + options.fastLookupPossible = false; + round++; + } while (anotherRoundNeeded); + if (options.debugLevel >= DebugLevel.PERF) + console.log(`hoist time: ${Date.now() - startTime}ms, rounds: ${round}`); + if (options.debugLevel >= DebugLevel.CHECK) { + const prevTreeDump = dumpDepTree(treeCopy); + const isGraphChanged = hoistTo(treeCopy, [treeCopy], /* @__PURE__ */ new Set([treeCopy.locator]), /* @__PURE__ */ new Map(), options).isGraphChanged; + if (isGraphChanged) + throw new Error(`The hoisting result is not terminal, prev tree: +${prevTreeDump}, next tree: +${dumpDepTree(treeCopy)}`); + const checkLog = selfCheck(treeCopy); + if (checkLog) { + throw new Error(`${checkLog}, after hoisting finished: +${dumpDepTree(treeCopy)}`); + } + } + if (options.debugLevel >= DebugLevel.REASONS) + console.log(dumpDepTree(treeCopy)); + return shrinkTree(treeCopy); + }; + exports2.hoist = hoist; + var getZeroRoundUsedDependencies = (rootNodePath) => { + const rootNode = rootNodePath[rootNodePath.length - 1]; + const usedDependencies = /* @__PURE__ */ new Map(); + const seenNodes = /* @__PURE__ */ new Set(); + const addUsedDependencies = (node) => { + if (seenNodes.has(node)) + return; + seenNodes.add(node); + for (const dep of node.hoistedDependencies.values()) + usedDependencies.set(dep.name, dep); + for (const dep of node.dependencies.values()) { + if (!node.peerNames.has(dep.name)) { + addUsedDependencies(dep); + } + } + }; + addUsedDependencies(rootNode); + return usedDependencies; + }; + var getUsedDependencies = (rootNodePath) => { + const rootNode = rootNodePath[rootNodePath.length - 1]; + const usedDependencies = /* @__PURE__ */ new Map(); + const seenNodes = /* @__PURE__ */ new Set(); + const hiddenDependencies = /* @__PURE__ */ new Set(); + const addUsedDependencies = (node, hiddenDependencies2) => { + if (seenNodes.has(node)) + return; + seenNodes.add(node); + for (const dep of node.hoistedDependencies.values()) { + if (!hiddenDependencies2.has(dep.name)) { + let reachableDependency; + for (const node2 of rootNodePath) { + reachableDependency = node2.dependencies.get(dep.name); + if (reachableDependency) { + usedDependencies.set(reachableDependency.name, reachableDependency); + } + } + } + } + const childrenHiddenDependencies = /* @__PURE__ */ new Set(); + for (const dep of node.dependencies.values()) + childrenHiddenDependencies.add(dep.name); + for (const dep of node.dependencies.values()) { + if (!node.peerNames.has(dep.name)) { + addUsedDependencies(dep, childrenHiddenDependencies); + } + } + }; + addUsedDependencies(rootNode, hiddenDependencies); + return usedDependencies; + }; + var decoupleGraphNode = (parent, node) => { + if (node.decoupled) + return node; + const { name, references, ident, locator, dependencies, originalDependencies, hoistedDependencies, peerNames, reasons, isHoistBorder, hoistPriority, dependencyKind, hoistedFrom, hoistedTo } = node; + const clone = { + name, + references: new Set(references), + ident, + locator, + dependencies: new Map(dependencies), + originalDependencies: new Map(originalDependencies), + hoistedDependencies: new Map(hoistedDependencies), + peerNames: new Set(peerNames), + reasons: new Map(reasons), + decoupled: true, + isHoistBorder, + hoistPriority, + dependencyKind, + hoistedFrom: new Map(hoistedFrom), + hoistedTo: new Map(hoistedTo) + }; + const selfDep = clone.dependencies.get(name); + if (selfDep && selfDep.ident == clone.ident) + clone.dependencies.set(name, clone); + parent.dependencies.set(clone.name, clone); + return clone; + }; + var getHoistIdentMap = (rootNode, preferenceMap) => { + const identMap = /* @__PURE__ */ new Map([[rootNode.name, [rootNode.ident]]]); + for (const dep of rootNode.dependencies.values()) { + if (!rootNode.peerNames.has(dep.name)) { + identMap.set(dep.name, [dep.ident]); + } + } + const keyList = Array.from(preferenceMap.keys()); + keyList.sort((key1, key2) => { + const entry1 = preferenceMap.get(key1); + const entry2 = preferenceMap.get(key2); + if (entry2.hoistPriority !== entry1.hoistPriority) { + return entry2.hoistPriority - entry1.hoistPriority; + } else if (entry2.peerDependents.size !== entry1.peerDependents.size) { + return entry2.peerDependents.size - entry1.peerDependents.size; + } else { + return entry2.dependents.size - entry1.dependents.size; + } + }); + for (const key of keyList) { + const name = key.substring(0, key.indexOf(`@`, 1)); + const ident = key.substring(name.length + 1); + if (!rootNode.peerNames.has(name)) { + let idents = identMap.get(name); + if (!idents) { + idents = []; + identMap.set(name, idents); + } + if (idents.indexOf(ident) < 0) { + idents.push(ident); + } + } + } + return identMap; + }; + var getSortedRegularDependencies = (node) => { + const dependencies = /* @__PURE__ */ new Set(); + const addDep = (dep, seenDeps = /* @__PURE__ */ new Set()) => { + if (seenDeps.has(dep)) + return; + seenDeps.add(dep); + for (const peerName of dep.peerNames) { + if (!node.peerNames.has(peerName)) { + const peerDep = node.dependencies.get(peerName); + if (peerDep && !dependencies.has(peerDep)) { + addDep(peerDep, seenDeps); + } + } + } + dependencies.add(dep); + }; + for (const dep of node.dependencies.values()) { + if (!node.peerNames.has(dep.name)) { + addDep(dep); + } + } + return dependencies; + }; + var hoistTo = (tree, rootNodePath, rootNodePathLocators, parentShadowedNodes, options, seenNodes = /* @__PURE__ */ new Set()) => { + const rootNode = rootNodePath[rootNodePath.length - 1]; + if (seenNodes.has(rootNode)) + return { anotherRoundNeeded: false, isGraphChanged: false }; + seenNodes.add(rootNode); + const preferenceMap = buildPreferenceMap(rootNode); + const hoistIdentMap = getHoistIdentMap(rootNode, preferenceMap); + const usedDependencies = tree == rootNode ? /* @__PURE__ */ new Map() : options.fastLookupPossible ? getZeroRoundUsedDependencies(rootNodePath) : getUsedDependencies(rootNodePath); + let wasStateChanged; + let anotherRoundNeeded = false; + let isGraphChanged = false; + const hoistIdents = new Map(Array.from(hoistIdentMap.entries()).map(([k, v]) => [k, v[0]])); + const shadowedNodes = /* @__PURE__ */ new Map(); + do { + const result2 = hoistGraph(tree, rootNodePath, rootNodePathLocators, usedDependencies, hoistIdents, hoistIdentMap, parentShadowedNodes, shadowedNodes, options); + if (result2.isGraphChanged) + isGraphChanged = true; + if (result2.anotherRoundNeeded) + anotherRoundNeeded = true; + wasStateChanged = false; + for (const [name, idents] of hoistIdentMap) { + if (idents.length > 1 && !rootNode.dependencies.has(name)) { + hoistIdents.delete(name); + idents.shift(); + hoistIdents.set(name, idents[0]); + wasStateChanged = true; + } + } + } while (wasStateChanged); + for (const dependency of rootNode.dependencies.values()) { + if (!rootNode.peerNames.has(dependency.name) && !rootNodePathLocators.has(dependency.locator)) { + rootNodePathLocators.add(dependency.locator); + const result2 = hoistTo(tree, [...rootNodePath, dependency], rootNodePathLocators, shadowedNodes, options); + if (result2.isGraphChanged) + isGraphChanged = true; + if (result2.anotherRoundNeeded) + anotherRoundNeeded = true; + rootNodePathLocators.delete(dependency.locator); + } + } + return { anotherRoundNeeded, isGraphChanged }; + }; + var hasUnhoistedDependencies = (node) => { + for (const [subName, subDependency] of node.dependencies) { + if (!node.peerNames.has(subName) && subDependency.ident !== node.ident) { + return true; + } + } + return false; + }; + var getNodeHoistInfo = (rootNode, rootNodePathLocators, nodePath, node, usedDependencies, hoistIdents, hoistIdentMap, shadowedNodes, { outputReason, fastLookupPossible }) => { + let reasonRoot; + let reason = null; + let dependsOn = /* @__PURE__ */ new Set(); + if (outputReason) + reasonRoot = `${Array.from(rootNodePathLocators).map((x) => prettyPrintLocator(x)).join(`\u2192`)}`; + const parentNode = nodePath[nodePath.length - 1]; + const isSelfReference = node.ident === parentNode.ident; + let isHoistable = !isSelfReference; + if (outputReason && !isHoistable) + reason = `- self-reference`; + if (isHoistable) { + isHoistable = node.dependencyKind !== HoisterDependencyKind.WORKSPACE; + if (outputReason && !isHoistable) { + reason = `- workspace`; + } + } + if (isHoistable && node.dependencyKind === HoisterDependencyKind.EXTERNAL_SOFT_LINK) { + isHoistable = !hasUnhoistedDependencies(node); + if (outputReason && !isHoistable) { + reason = `- external soft link with unhoisted dependencies`; + } + } + if (isHoistable) { + isHoistable = parentNode.dependencyKind !== HoisterDependencyKind.WORKSPACE || parentNode.hoistedFrom.has(node.name) || rootNodePathLocators.size === 1; + if (outputReason && !isHoistable) { + reason = parentNode.reasons.get(node.name); + } + } + if (isHoistable) { + isHoistable = !rootNode.peerNames.has(node.name); + if (outputReason && !isHoistable) { + reason = `- cannot shadow peer: ${prettyPrintLocator(rootNode.originalDependencies.get(node.name).locator)} at ${reasonRoot}`; + } + } + if (isHoistable) { + let isNameAvailable = false; + const usedDep = usedDependencies.get(node.name); + isNameAvailable = !usedDep || usedDep.ident === node.ident; + if (outputReason && !isNameAvailable) + reason = `- filled by: ${prettyPrintLocator(usedDep.locator)} at ${reasonRoot}`; + if (isNameAvailable) { + for (let idx = nodePath.length - 1; idx >= 1; idx--) { + const parent = nodePath[idx]; + const parentDep = parent.dependencies.get(node.name); + if (parentDep && parentDep.ident !== node.ident) { + isNameAvailable = false; + let shadowedNames = shadowedNodes.get(parentNode); + if (!shadowedNames) { + shadowedNames = /* @__PURE__ */ new Set(); + shadowedNodes.set(parentNode, shadowedNames); + } + shadowedNames.add(node.name); + if (outputReason) + reason = `- filled by ${prettyPrintLocator(parentDep.locator)} at ${nodePath.slice(0, idx).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}`; + break; + } + } + } + isHoistable = isNameAvailable; + } + if (isHoistable) { + const hoistedIdent = hoistIdents.get(node.name); + isHoistable = hoistedIdent === node.ident; + if (outputReason && !isHoistable) { + reason = `- filled by: ${prettyPrintLocator(hoistIdentMap.get(node.name)[0])} at ${reasonRoot}`; + } + } + if (isHoistable) { + let arePeerDepsSatisfied = true; + const checkList = new Set(node.peerNames); + for (let idx = nodePath.length - 1; idx >= 1; idx--) { + const parent = nodePath[idx]; + for (const name of checkList) { + if (parent.peerNames.has(name) && parent.originalDependencies.has(name)) + continue; + const parentDepNode = parent.dependencies.get(name); + if (parentDepNode && rootNode.dependencies.get(name) !== parentDepNode) { + if (idx === nodePath.length - 1) { + dependsOn.add(parentDepNode); + } else { + dependsOn = null; + arePeerDepsSatisfied = false; + if (outputReason) { + reason = `- peer dependency ${prettyPrintLocator(parentDepNode.locator)} from parent ${prettyPrintLocator(parent.locator)} was not hoisted to ${reasonRoot}`; + } + } + } + checkList.delete(name); + } + if (!arePeerDepsSatisfied) { + break; + } + } + isHoistable = arePeerDepsSatisfied; + } + if (isHoistable && !fastLookupPossible) { + for (const origDep of node.hoistedDependencies.values()) { + const usedDep = usedDependencies.get(origDep.name) || rootNode.dependencies.get(origDep.name); + if (!usedDep || origDep.ident !== usedDep.ident) { + isHoistable = false; + if (outputReason) + reason = `- previously hoisted dependency mismatch, needed: ${prettyPrintLocator(origDep.locator)}, available: ${prettyPrintLocator(usedDep === null || usedDep === void 0 ? void 0 : usedDep.locator)}`; + break; + } + } + } + if (dependsOn !== null && dependsOn.size > 0) { + return { isHoistable: Hoistable.DEPENDS, dependsOn, reason }; + } else { + return { isHoistable: isHoistable ? Hoistable.YES : Hoistable.NO, reason }; + } + }; + var getAliasedLocator = (node) => `${node.name}@${node.locator}`; + var hoistGraph = (tree, rootNodePath, rootNodePathLocators, usedDependencies, hoistIdents, hoistIdentMap, parentShadowedNodes, shadowedNodes, options) => { + const rootNode = rootNodePath[rootNodePath.length - 1]; + const seenNodes = /* @__PURE__ */ new Set(); + let anotherRoundNeeded = false; + let isGraphChanged = false; + const hoistNodeDependencies = (nodePath, locatorPath, aliasedLocatorPath, parentNode, newNodes2) => { + if (seenNodes.has(parentNode)) + return; + const nextLocatorPath = [...locatorPath, getAliasedLocator(parentNode)]; + const nextAliasedLocatorPath = [...aliasedLocatorPath, getAliasedLocator(parentNode)]; + const dependantTree = /* @__PURE__ */ new Map(); + const hoistInfos = /* @__PURE__ */ new Map(); + for (const subDependency of getSortedRegularDependencies(parentNode)) { + const hoistInfo = getNodeHoistInfo(rootNode, rootNodePathLocators, [rootNode, ...nodePath, parentNode], subDependency, usedDependencies, hoistIdents, hoistIdentMap, shadowedNodes, { outputReason: options.debugLevel >= DebugLevel.REASONS, fastLookupPossible: options.fastLookupPossible }); + hoistInfos.set(subDependency, hoistInfo); + if (hoistInfo.isHoistable === Hoistable.DEPENDS) { + for (const node of hoistInfo.dependsOn) { + const nodeDependants = dependantTree.get(node.name) || /* @__PURE__ */ new Set(); + nodeDependants.add(subDependency.name); + dependantTree.set(node.name, nodeDependants); + } + } + } + const unhoistableNodes = /* @__PURE__ */ new Set(); + const addUnhoistableNode = (node, hoistInfo, reason) => { + if (!unhoistableNodes.has(node)) { + unhoistableNodes.add(node); + hoistInfos.set(node, { isHoistable: Hoistable.NO, reason }); + for (const dependantName of dependantTree.get(node.name) || []) { + addUnhoistableNode(parentNode.dependencies.get(dependantName), hoistInfo, options.debugLevel >= DebugLevel.REASONS ? `- peer dependency ${prettyPrintLocator(node.locator)} from parent ${prettyPrintLocator(parentNode.locator)} was not hoisted` : ``); + } + } + }; + for (const [node, hoistInfo] of hoistInfos) + if (hoistInfo.isHoistable === Hoistable.NO) + addUnhoistableNode(node, hoistInfo, hoistInfo.reason); + let wereNodesHoisted = false; + for (const node of hoistInfos.keys()) { + if (!unhoistableNodes.has(node)) { + isGraphChanged = true; + const shadowedNames = parentShadowedNodes.get(parentNode); + if (shadowedNames && shadowedNames.has(node.name)) + anotherRoundNeeded = true; + wereNodesHoisted = true; + parentNode.dependencies.delete(node.name); + parentNode.hoistedDependencies.set(node.name, node); + parentNode.reasons.delete(node.name); + const hoistedNode = rootNode.dependencies.get(node.name); + if (options.debugLevel >= DebugLevel.REASONS) { + const hoistedFrom = Array.from(locatorPath).concat([parentNode.locator]).map((x) => prettyPrintLocator(x)).join(`\u2192`); + let hoistedFromArray = rootNode.hoistedFrom.get(node.name); + if (!hoistedFromArray) { + hoistedFromArray = []; + rootNode.hoistedFrom.set(node.name, hoistedFromArray); + } + hoistedFromArray.push(hoistedFrom); + parentNode.hoistedTo.set(node.name, Array.from(rootNodePath).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)); + } + if (!hoistedNode) { + if (rootNode.ident !== node.ident) { + rootNode.dependencies.set(node.name, node); + newNodes2.add(node); + } + } else { + for (const reference of node.references) { + hoistedNode.references.add(reference); + } + } + } + } + if (parentNode.dependencyKind === HoisterDependencyKind.EXTERNAL_SOFT_LINK && wereNodesHoisted) + anotherRoundNeeded = true; + if (options.check) { + const checkLog = selfCheck(tree); + if (checkLog) { + throw new Error(`${checkLog}, after hoisting dependencies of ${[rootNode, ...nodePath, parentNode].map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}: +${dumpDepTree(tree)}`); + } + } + const children = getSortedRegularDependencies(parentNode); + for (const node of children) { + if (unhoistableNodes.has(node)) { + const hoistInfo = hoistInfos.get(node); + const hoistableIdent = hoistIdents.get(node.name); + if ((hoistableIdent === node.ident || !parentNode.reasons.has(node.name)) && hoistInfo.isHoistable !== Hoistable.YES) + parentNode.reasons.set(node.name, hoistInfo.reason); + if (!node.isHoistBorder && nextAliasedLocatorPath.indexOf(getAliasedLocator(node)) < 0) { + seenNodes.add(parentNode); + const decoupledNode = decoupleGraphNode(parentNode, node); + hoistNodeDependencies([...nodePath, parentNode], nextLocatorPath, nextAliasedLocatorPath, decoupledNode, nextNewNodes); + seenNodes.delete(parentNode); + } + } + } + }; + let newNodes; + let nextNewNodes = new Set(getSortedRegularDependencies(rootNode)); + const aliasedRootNodePathLocators = Array.from(rootNodePath).map((x) => getAliasedLocator(x)); + do { + newNodes = nextNewNodes; + nextNewNodes = /* @__PURE__ */ new Set(); + for (const dep of newNodes) { + if (dep.locator === rootNode.locator || dep.isHoistBorder) + continue; + const decoupledDependency = decoupleGraphNode(rootNode, dep); + hoistNodeDependencies([], Array.from(rootNodePathLocators), aliasedRootNodePathLocators, decoupledDependency, nextNewNodes); + } + } while (nextNewNodes.size > 0); + return { anotherRoundNeeded, isGraphChanged }; + }; + var selfCheck = (tree) => { + const log2 = []; + const seenNodes = /* @__PURE__ */ new Set(); + const parents = /* @__PURE__ */ new Set(); + const checkNode = (node, parentDeps, parent) => { + if (seenNodes.has(node)) + return; + seenNodes.add(node); + if (parents.has(node)) + return; + const dependencies = new Map(parentDeps); + for (const dep of node.dependencies.values()) + if (!node.peerNames.has(dep.name)) + dependencies.set(dep.name, dep); + for (const origDep of node.originalDependencies.values()) { + const dep = dependencies.get(origDep.name); + const prettyPrintTreePath = () => `${Array.from(parents).concat([node]).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}`; + if (node.peerNames.has(origDep.name)) { + const parentDep = parentDeps.get(origDep.name); + if (parentDep !== dep || !parentDep || parentDep.ident !== origDep.ident) { + log2.push(`${prettyPrintTreePath()} - broken peer promise: expected ${origDep.ident} but found ${parentDep ? parentDep.ident : parentDep}`); + } + } else { + const hoistedFrom = parent.hoistedFrom.get(node.name); + const originalHoistedTo = node.hoistedTo.get(origDep.name); + const prettyHoistedFrom = `${hoistedFrom ? ` hoisted from ${hoistedFrom.join(`, `)}` : ``}`; + const prettyOriginalHoistedTo = `${originalHoistedTo ? ` hoisted to ${originalHoistedTo}` : ``}`; + const prettyNodePath = `${prettyPrintTreePath()}${prettyHoistedFrom}`; + if (!dep) { + log2.push(`${prettyNodePath} - broken require promise: no required dependency ${origDep.name}${prettyOriginalHoistedTo} found`); + } else if (dep.ident !== origDep.ident) { + log2.push(`${prettyNodePath} - broken require promise for ${origDep.name}${prettyOriginalHoistedTo}: expected ${origDep.ident}, but found: ${dep.ident}`); + } + } + } + parents.add(node); + for (const dep of node.dependencies.values()) { + if (!node.peerNames.has(dep.name)) { + checkNode(dep, dependencies, node); + } + } + parents.delete(node); + }; + checkNode(tree, tree.dependencies, tree); + return log2.join(` +`); + }; + var cloneTree = (tree, options) => { + const { identName, name, reference, peerNames } = tree; + const treeCopy = { + name, + references: /* @__PURE__ */ new Set([reference]), + locator: makeLocator(identName, reference), + ident: makeIdent(identName, reference), + dependencies: /* @__PURE__ */ new Map(), + originalDependencies: /* @__PURE__ */ new Map(), + hoistedDependencies: /* @__PURE__ */ new Map(), + peerNames: new Set(peerNames), + reasons: /* @__PURE__ */ new Map(), + decoupled: true, + isHoistBorder: true, + hoistPriority: 0, + dependencyKind: HoisterDependencyKind.WORKSPACE, + hoistedFrom: /* @__PURE__ */ new Map(), + hoistedTo: /* @__PURE__ */ new Map() + }; + const seenNodes = /* @__PURE__ */ new Map([[tree, treeCopy]]); + const addNode = (node, parentNode) => { + let workNode = seenNodes.get(node); + const isSeen = !!workNode; + if (!workNode) { + const { name: name2, identName: identName2, reference: reference2, peerNames: peerNames2, hoistPriority, dependencyKind } = node; + const dependenciesNmHoistingLimits = options.hoistingLimits.get(parentNode.locator); + workNode = { + name: name2, + references: /* @__PURE__ */ new Set([reference2]), + locator: makeLocator(identName2, reference2), + ident: makeIdent(identName2, reference2), + dependencies: /* @__PURE__ */ new Map(), + originalDependencies: /* @__PURE__ */ new Map(), + hoistedDependencies: /* @__PURE__ */ new Map(), + peerNames: new Set(peerNames2), + reasons: /* @__PURE__ */ new Map(), + decoupled: true, + isHoistBorder: dependenciesNmHoistingLimits ? dependenciesNmHoistingLimits.has(name2) : false, + hoistPriority: hoistPriority || 0, + dependencyKind: dependencyKind || HoisterDependencyKind.REGULAR, + hoistedFrom: /* @__PURE__ */ new Map(), + hoistedTo: /* @__PURE__ */ new Map() + }; + seenNodes.set(node, workNode); + } + parentNode.dependencies.set(node.name, workNode); + parentNode.originalDependencies.set(node.name, workNode); + if (!isSeen) { + for (const dep of node.dependencies) { + addNode(dep, workNode); + } + } else { + const seenCoupledNodes = /* @__PURE__ */ new Set(); + const markNodeCoupled = (node2) => { + if (seenCoupledNodes.has(node2)) + return; + seenCoupledNodes.add(node2); + node2.decoupled = false; + for (const dep of node2.dependencies.values()) { + if (!node2.peerNames.has(dep.name)) { + markNodeCoupled(dep); + } + } + }; + markNodeCoupled(workNode); + } + }; + for (const dep of tree.dependencies) + addNode(dep, treeCopy); + return treeCopy; + }; + var getIdentName = (locator) => locator.substring(0, locator.indexOf(`@`, 1)); + var shrinkTree = (tree) => { + const treeCopy = { + name: tree.name, + identName: getIdentName(tree.locator), + references: new Set(tree.references), + dependencies: /* @__PURE__ */ new Set() + }; + const seenNodes = /* @__PURE__ */ new Set([tree]); + const addNode = (node, parentWorkNode, parentNode) => { + const isSeen = seenNodes.has(node); + let resultNode; + if (parentWorkNode === node) { + resultNode = parentNode; + } else { + const { name, references, locator } = node; + resultNode = { + name, + identName: getIdentName(locator), + references, + dependencies: /* @__PURE__ */ new Set() + }; + } + parentNode.dependencies.add(resultNode); + if (!isSeen) { + seenNodes.add(node); + for (const dep of node.dependencies.values()) { + if (!node.peerNames.has(dep.name)) { + addNode(dep, node, resultNode); + } + } + seenNodes.delete(node); + } + }; + for (const dep of tree.dependencies.values()) + addNode(dep, tree, treeCopy); + return treeCopy; + }; + var buildPreferenceMap = (rootNode) => { + const preferenceMap = /* @__PURE__ */ new Map(); + const seenNodes = /* @__PURE__ */ new Set([rootNode]); + const getPreferenceKey = (node) => `${node.name}@${node.ident}`; + const getOrCreatePreferenceEntry = (node) => { + const key = getPreferenceKey(node); + let entry = preferenceMap.get(key); + if (!entry) { + entry = { dependents: /* @__PURE__ */ new Set(), peerDependents: /* @__PURE__ */ new Set(), hoistPriority: 0 }; + preferenceMap.set(key, entry); + } + return entry; + }; + const addDependent = (dependent, node) => { + const isSeen = !!seenNodes.has(node); + const entry = getOrCreatePreferenceEntry(node); + entry.dependents.add(dependent.ident); + if (!isSeen) { + seenNodes.add(node); + for (const dep of node.dependencies.values()) { + const entry2 = getOrCreatePreferenceEntry(dep); + entry2.hoistPriority = Math.max(entry2.hoistPriority, dep.hoistPriority); + if (node.peerNames.has(dep.name)) { + entry2.peerDependents.add(node.ident); + } else { + addDependent(node, dep); + } + } + } + }; + for (const dep of rootNode.dependencies.values()) + if (!rootNode.peerNames.has(dep.name)) + addDependent(rootNode, dep); + return preferenceMap; + }; + var prettyPrintLocator = (locator) => { + if (!locator) + return `none`; + const idx = locator.indexOf(`@`, 1); + let name = locator.substring(0, idx); + if (name.endsWith(`$wsroot$`)) + name = `wh:${name.replace(`$wsroot$`, ``)}`; + const reference = locator.substring(idx + 1); + if (reference === `workspace:.`) { + return `.`; + } else if (!reference) { + return `${name}`; + } else { + let version2 = (reference.indexOf(`#`) > 0 ? reference.split(`#`)[1] : reference).replace(`npm:`, ``); + if (reference.startsWith(`virtual`)) + name = `v:${name}`; + if (version2.startsWith(`workspace`)) { + name = `w:${name}`; + version2 = ``; + } + return `${name}${version2 ? `@${version2}` : ``}`; + } + }; + var MAX_NODES_TO_DUMP = 5e4; + var dumpDepTree = (tree) => { + let nodeCount = 0; + const dumpPackage = (pkg, parents, prefix = ``) => { + if (nodeCount > MAX_NODES_TO_DUMP || parents.has(pkg)) + return ``; + nodeCount++; + const dependencies = Array.from(pkg.dependencies.values()).sort((n1, n2) => { + if (n1.name === n2.name) { + return 0; + } else { + return n1.name > n2.name ? 1 : -1; + } + }); + let str = ``; + parents.add(pkg); + for (let idx = 0; idx < dependencies.length; idx++) { + const dep = dependencies[idx]; + if (!pkg.peerNames.has(dep.name) && dep !== pkg) { + const reason = pkg.reasons.get(dep.name); + const identName = getIdentName(dep.locator); + str += `${prefix}${idx < dependencies.length - 1 ? `\u251C\u2500` : `\u2514\u2500`}${(parents.has(dep) ? `>` : ``) + (identName !== dep.name ? `a:${dep.name}:` : ``) + prettyPrintLocator(dep.locator) + (reason ? ` ${reason}` : ``)} +`; + str += dumpPackage(dep, parents, `${prefix}${idx < dependencies.length - 1 ? `\u2502 ` : ` `}`); + } + } + parents.delete(pkg); + return str; + }; + const treeDump = dumpPackage(tree, /* @__PURE__ */ new Set()); + return treeDump + (nodeCount > MAX_NODES_TO_DUMP ? ` +Tree is too large, part of the tree has been dunped +` : ``); + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/buildNodeModulesTree.js +var require_buildNodeModulesTree = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/buildNodeModulesTree.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildLocatorMap = exports2.buildNodeModulesTree = exports2.getArchivePath = exports2.NodeModulesHoistingLimits = exports2.LinkType = void 0; + var core_1 = require_lib126(); + var fslib_12 = require_lib127(); + var fslib_2 = require_lib127(); + var hoist_1 = require_hoist(); + var LinkType; + (function(LinkType2) { + LinkType2["HARD"] = "HARD"; + LinkType2["SOFT"] = "SOFT"; + })(LinkType || (exports2.LinkType = LinkType = {})); + var NodeModulesHoistingLimits; + (function(NodeModulesHoistingLimits2) { + NodeModulesHoistingLimits2["WORKSPACES"] = "workspaces"; + NodeModulesHoistingLimits2["DEPENDENCIES"] = "dependencies"; + NodeModulesHoistingLimits2["NONE"] = "none"; + })(NodeModulesHoistingLimits || (exports2.NodeModulesHoistingLimits = NodeModulesHoistingLimits = {})); + var NODE_MODULES = `node_modules`; + var WORKSPACE_NAME_SUFFIX = `$wsroot$`; + var getArchivePath = (packagePath) => packagePath.indexOf(`.zip/${NODE_MODULES}/`) >= 0 ? fslib_12.npath.toPortablePath(packagePath.split(`/${NODE_MODULES}/`)[0]) : null; + exports2.getArchivePath = getArchivePath; + var buildNodeModulesTree = (pnp, options) => { + const { packageTree, hoistingLimits, errors, preserveSymlinksRequired } = buildPackageTree(pnp, options); + let tree = null; + if (errors.length === 0) { + const hoistedTree = (0, hoist_1.hoist)(packageTree, { hoistingLimits }); + tree = populateNodeModulesTree(pnp, hoistedTree, options); + } + return { tree, errors, preserveSymlinksRequired }; + }; + exports2.buildNodeModulesTree = buildNodeModulesTree; + var stringifyLocator = (locator) => `${locator.name}@${locator.reference}`; + var buildLocatorMap = (nodeModulesTree) => { + const map = /* @__PURE__ */ new Map(); + for (const [location, val] of nodeModulesTree.entries()) { + if (!val.dirList) { + let entry = map.get(val.locator); + if (!entry) { + entry = { target: val.target, linkType: val.linkType, locations: [], aliases: val.aliases }; + map.set(val.locator, entry); + } + entry.locations.push(location); + } + } + for (const val of map.values()) { + val.locations = val.locations.sort((loc1, loc2) => { + const len1 = loc1.split(fslib_12.ppath.delimiter).length; + const len2 = loc2.split(fslib_12.ppath.delimiter).length; + if (loc2 === loc1) { + return 0; + } else if (len1 !== len2) { + return len2 - len1; + } else { + return loc2 > loc1 ? 1 : -1; + } + }); + } + return map; + }; + exports2.buildLocatorMap = buildLocatorMap; + var areRealLocatorsEqual = (a, b) => { + const realA = core_1.structUtils.isVirtualLocator(a) ? core_1.structUtils.devirtualizeLocator(a) : a; + const realB = core_1.structUtils.isVirtualLocator(b) ? core_1.structUtils.devirtualizeLocator(b) : b; + return core_1.structUtils.areLocatorsEqual(realA, realB); + }; + var isExternalSoftLink = (pkg, locator, pnp, topPkgPortableLocation) => { + if (pkg.linkType !== LinkType.SOFT) + return false; + const realSoftLinkPath = fslib_12.npath.toPortablePath(pnp.resolveVirtual && locator.reference && locator.reference.startsWith(`virtual:`) ? pnp.resolveVirtual(pkg.packageLocation) : pkg.packageLocation); + return fslib_12.ppath.contains(topPkgPortableLocation, realSoftLinkPath) === null; + }; + var buildWorkspaceMap = (pnp) => { + const topPkg = pnp.getPackageInformation(pnp.topLevel); + if (topPkg === null) + throw new Error(`Assertion failed: Expected the top-level package to have been registered`); + const topLocator = pnp.findPackageLocator(topPkg.packageLocation); + if (topLocator === null) + throw new Error(`Assertion failed: Expected the top-level package to have a physical locator`); + const topPkgPortableLocation = fslib_12.npath.toPortablePath(topPkg.packageLocation.slice(0, -1)); + const workspaceMap = /* @__PURE__ */ new Map(); + const workspaceTree = { children: /* @__PURE__ */ new Map() }; + const pnpRoots = pnp.getDependencyTreeRoots(); + const workspaceLikeLocators = /* @__PURE__ */ new Map(); + const seen = /* @__PURE__ */ new Set(); + const visit = (locator, parentLocator) => { + const locatorKey = stringifyLocator(locator); + if (seen.has(locatorKey)) + return; + seen.add(locatorKey); + const pkg = pnp.getPackageInformation(locator); + if (pkg) { + const parentLocatorKey = parentLocator ? stringifyLocator(parentLocator) : ``; + if (stringifyLocator(locator) !== parentLocatorKey && pkg.linkType === LinkType.SOFT && !isExternalSoftLink(pkg, locator, pnp, topPkgPortableLocation)) { + const location = getRealPackageLocation(pkg, locator, pnp); + const prevLocator = workspaceLikeLocators.get(location); + if (!prevLocator || locator.reference.startsWith(`workspace:`)) { + workspaceLikeLocators.set(location, locator); + } + } + for (const [name, referencish] of pkg.packageDependencies) { + if (referencish !== null) { + if (!pkg.packagePeers.has(name)) { + visit(pnp.getLocator(name, referencish), locator); + } + } + } + } + }; + for (const locator of pnpRoots) + visit(locator, null); + const cwdSegments = topPkgPortableLocation.split(fslib_12.ppath.sep); + for (const locator of workspaceLikeLocators.values()) { + const pkg = pnp.getPackageInformation(locator); + const location = fslib_12.npath.toPortablePath(pkg.packageLocation.slice(0, -1)); + const segments = location.split(fslib_12.ppath.sep).slice(cwdSegments.length); + let node = workspaceTree; + for (const segment of segments) { + let nextNode = node.children.get(segment); + if (!nextNode) { + nextNode = { children: /* @__PURE__ */ new Map() }; + node.children.set(segment, nextNode); + } + node = nextNode; + } + node.workspaceLocator = locator; + } + const addWorkspace = (node, parentWorkspaceLocator) => { + if (node.workspaceLocator) { + const parentLocatorKey = stringifyLocator(parentWorkspaceLocator); + let dependencies = workspaceMap.get(parentLocatorKey); + if (!dependencies) { + dependencies = /* @__PURE__ */ new Set(); + workspaceMap.set(parentLocatorKey, dependencies); + } + dependencies.add(node.workspaceLocator); + } + for (const child of node.children.values()) { + addWorkspace(child, node.workspaceLocator || parentWorkspaceLocator); + } + }; + for (const child of workspaceTree.children.values()) + addWorkspace(child, workspaceTree.workspaceLocator); + return workspaceMap; + }; + var buildPackageTree = (pnp, options) => { + const errors = []; + let preserveSymlinksRequired = false; + const hoistingLimits = /* @__PURE__ */ new Map(); + const workspaceMap = buildWorkspaceMap(pnp); + const topPkg = pnp.getPackageInformation(pnp.topLevel); + if (topPkg === null) + throw new Error(`Assertion failed: Expected the top-level package to have been registered`); + const topLocator = pnp.findPackageLocator(topPkg.packageLocation); + if (topLocator === null) + throw new Error(`Assertion failed: Expected the top-level package to have a physical locator`); + const topPkgPortableLocation = fslib_12.npath.toPortablePath(topPkg.packageLocation.slice(0, -1)); + const packageTree = { + name: topLocator.name, + identName: topLocator.name, + reference: topLocator.reference, + peerNames: topPkg.packagePeers, + dependencies: /* @__PURE__ */ new Set(), + dependencyKind: hoist_1.HoisterDependencyKind.WORKSPACE + }; + const nodes = /* @__PURE__ */ new Map(); + const getNodeKey = (name, locator) => `${stringifyLocator(locator)}:${name}`; + const addPackageToTree = (name, pkg, locator, parent, parentPkg, parentDependencies, parentRelativeCwd, isHoistBorder) => { + var _a, _b; + const nodeKey = getNodeKey(name, locator); + let node = nodes.get(nodeKey); + const isSeen = !!node; + if (!isSeen && locator.name === topLocator.name && locator.reference === topLocator.reference) { + node = packageTree; + nodes.set(nodeKey, packageTree); + } + const isExternalSoftLinkPackage = isExternalSoftLink(pkg, locator, pnp, topPkgPortableLocation); + if (!node) { + let dependencyKind = hoist_1.HoisterDependencyKind.REGULAR; + if (isExternalSoftLinkPackage) + dependencyKind = hoist_1.HoisterDependencyKind.EXTERNAL_SOFT_LINK; + else if (pkg.linkType === LinkType.SOFT && locator.name.endsWith(WORKSPACE_NAME_SUFFIX)) + dependencyKind = hoist_1.HoisterDependencyKind.WORKSPACE; + node = { + name, + identName: locator.name, + reference: locator.reference, + dependencies: /* @__PURE__ */ new Set(), + // View peer dependencies as regular dependencies for workspaces + // (meeting workspace peer dependency constraints is sometimes hard, sometimes impossible for the nm linker) + peerNames: dependencyKind === hoist_1.HoisterDependencyKind.WORKSPACE ? /* @__PURE__ */ new Set() : pkg.packagePeers, + dependencyKind + }; + nodes.set(nodeKey, node); + } + let hoistPriority; + if (isExternalSoftLinkPackage) + hoistPriority = 2; + else if (parentPkg.linkType === LinkType.SOFT) + hoistPriority = 1; + else + hoistPriority = 0; + node.hoistPriority = Math.max(node.hoistPriority || 0, hoistPriority); + if (isHoistBorder && !isExternalSoftLinkPackage) { + const parentLocatorKey = stringifyLocator({ name: parent.identName, reference: parent.reference }); + const dependencyBorders = hoistingLimits.get(parentLocatorKey) || /* @__PURE__ */ new Set(); + hoistingLimits.set(parentLocatorKey, dependencyBorders); + dependencyBorders.add(node.name); + } + const allDependencies = new Map(pkg.packageDependencies); + if (options.project) { + const workspace = options.project.workspacesByCwd.get(fslib_12.npath.toPortablePath(pkg.packageLocation.slice(0, -1))); + if (workspace) { + const peerCandidates = /* @__PURE__ */ new Set([ + ...Array.from(workspace.manifest.peerDependencies.values(), (x) => core_1.structUtils.stringifyIdent(x)), + ...Array.from(workspace.manifest.peerDependenciesMeta.keys()) + ]); + for (const peerName of peerCandidates) { + if (!allDependencies.has(peerName)) { + allDependencies.set(peerName, parentDependencies.get(peerName) || null); + node.peerNames.add(peerName); + } + } + } + } + const locatorKey = stringifyLocator({ name: locator.name.replace(WORKSPACE_NAME_SUFFIX, ``), reference: locator.reference }); + const innerWorkspaces = workspaceMap.get(locatorKey); + if (innerWorkspaces) { + for (const workspaceLocator of innerWorkspaces) { + allDependencies.set(`${workspaceLocator.name}${WORKSPACE_NAME_SUFFIX}`, workspaceLocator.reference); + } + } + if (pkg !== parentPkg || pkg.linkType !== LinkType.SOFT || !isExternalSoftLinkPackage && (!options.selfReferencesByCwd || options.selfReferencesByCwd.get(parentRelativeCwd))) + parent.dependencies.add(node); + const isWorkspaceDependency = locator !== topLocator && pkg.linkType === LinkType.SOFT && !locator.name.endsWith(WORKSPACE_NAME_SUFFIX) && !isExternalSoftLinkPackage; + if (!isSeen && !isWorkspaceDependency) { + const siblingPortalDependencyMap = /* @__PURE__ */ new Map(); + for (const [depName, referencish] of allDependencies) { + if (referencish !== null) { + const depLocator = pnp.getLocator(depName, referencish); + const pkgLocator = pnp.getLocator(depName.replace(WORKSPACE_NAME_SUFFIX, ``), referencish); + const depPkg = pnp.getPackageInformation(pkgLocator); + if (depPkg === null) + throw new Error(`Assertion failed: Expected the package to have been registered`); + const isExternalSoftLinkDep = isExternalSoftLink(depPkg, depLocator, pnp, topPkgPortableLocation); + if (options.validateExternalSoftLinks && options.project && isExternalSoftLinkDep) { + if (depPkg.packageDependencies.size > 0) + preserveSymlinksRequired = true; + for (const [name2, referencish2] of depPkg.packageDependencies) { + if (referencish2 !== null) { + const portalDependencyLocator = core_1.structUtils.parseLocator(Array.isArray(referencish2) ? `${referencish2[0]}@${referencish2[1]}` : `${name2}@${referencish2}`); + if (stringifyLocator(portalDependencyLocator) !== stringifyLocator(depLocator)) { + const parentDependencyReferencish = allDependencies.get(name2); + if (parentDependencyReferencish) { + const parentDependencyLocator = core_1.structUtils.parseLocator(Array.isArray(parentDependencyReferencish) ? `${parentDependencyReferencish[0]}@${parentDependencyReferencish[1]}` : `${name2}@${parentDependencyReferencish}`); + if (!areRealLocatorsEqual(parentDependencyLocator, portalDependencyLocator)) { + errors.push({ + messageName: core_1.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK, + text: `Cannot link ${core_1.structUtils.prettyIdent(options.project.configuration, core_1.structUtils.parseIdent(depLocator.name))} into ${core_1.structUtils.prettyLocator(options.project.configuration, core_1.structUtils.parseLocator(`${locator.name}@${locator.reference}`))} dependency ${core_1.structUtils.prettyLocator(options.project.configuration, portalDependencyLocator)} conflicts with parent dependency ${core_1.structUtils.prettyLocator(options.project.configuration, parentDependencyLocator)}` + }); + } + } else { + const siblingPortalDependency = siblingPortalDependencyMap.get(name2); + if (siblingPortalDependency) { + const siblingReferncish = siblingPortalDependency.target; + const siblingPortalDependencyLocator = core_1.structUtils.parseLocator(Array.isArray(siblingReferncish) ? `${siblingReferncish[0]}@${siblingReferncish[1]}` : `${name2}@${siblingReferncish}`); + if (!areRealLocatorsEqual(siblingPortalDependencyLocator, portalDependencyLocator)) { + errors.push({ + messageName: core_1.MessageName.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK, + text: `Cannot link ${core_1.structUtils.prettyIdent(options.project.configuration, core_1.structUtils.parseIdent(depLocator.name))} into ${core_1.structUtils.prettyLocator(options.project.configuration, core_1.structUtils.parseLocator(`${locator.name}@${locator.reference}`))} dependency ${core_1.structUtils.prettyLocator(options.project.configuration, portalDependencyLocator)} conflicts with dependency ${core_1.structUtils.prettyLocator(options.project.configuration, siblingPortalDependencyLocator)} from sibling portal ${core_1.structUtils.prettyIdent(options.project.configuration, core_1.structUtils.parseIdent(siblingPortalDependency.portal.name))}` + }); + } + } else { + siblingPortalDependencyMap.set(name2, { target: portalDependencyLocator.reference, portal: depLocator }); + } + } + } + } + } + } + const parentHoistingLimits = (_a = options.hoistingLimitsByCwd) === null || _a === void 0 ? void 0 : _a.get(parentRelativeCwd); + const relativeDepCwd = isExternalSoftLinkDep ? parentRelativeCwd : fslib_12.ppath.relative(topPkgPortableLocation, fslib_12.npath.toPortablePath(depPkg.packageLocation)) || fslib_2.PortablePath.dot; + const depHoistingLimits = (_b = options.hoistingLimitsByCwd) === null || _b === void 0 ? void 0 : _b.get(relativeDepCwd); + const isHoistBorder2 = parentHoistingLimits === NodeModulesHoistingLimits.DEPENDENCIES || depHoistingLimits === NodeModulesHoistingLimits.DEPENDENCIES || depHoistingLimits === NodeModulesHoistingLimits.WORKSPACES; + addPackageToTree(depName, depPkg, depLocator, node, pkg, allDependencies, relativeDepCwd, isHoistBorder2); + } + } + } + }; + addPackageToTree(topLocator.name, topPkg, topLocator, packageTree, topPkg, topPkg.packageDependencies, fslib_2.PortablePath.dot, false); + return { packageTree, hoistingLimits, errors, preserveSymlinksRequired }; + }; + function getRealPackageLocation(pkg, locator, pnp) { + const realPath = pnp.resolveVirtual && locator.reference && locator.reference.startsWith(`virtual:`) ? pnp.resolveVirtual(pkg.packageLocation) : pkg.packageLocation; + return fslib_12.npath.toPortablePath(realPath || pkg.packageLocation); + } + function getTargetLocatorPath(locator, pnp, options) { + const pkgLocator = pnp.getLocator(locator.name.replace(WORKSPACE_NAME_SUFFIX, ``), locator.reference); + const info = pnp.getPackageInformation(pkgLocator); + if (info === null) + throw new Error(`Assertion failed: Expected the package to be registered`); + return options.pnpifyFs ? { linkType: LinkType.SOFT, target: fslib_12.npath.toPortablePath(info.packageLocation) } : { linkType: info.linkType, target: getRealPackageLocation(info, locator, pnp) }; + } + var populateNodeModulesTree = (pnp, hoistedTree, options) => { + const tree = /* @__PURE__ */ new Map(); + const makeLeafNode = (locator, nodePath, aliases) => { + const { linkType, target } = getTargetLocatorPath(locator, pnp, options); + return { + locator: stringifyLocator(locator), + nodePath, + target, + linkType, + aliases + }; + }; + const getPackageName = (identName) => { + const [nameOrScope, name] = identName.split(`/`); + return name ? { + scope: (0, fslib_12.toFilename)(nameOrScope), + name: (0, fslib_12.toFilename)(name) + } : { + scope: null, + name: (0, fslib_12.toFilename)(nameOrScope) + }; + }; + const seenNodes = /* @__PURE__ */ new Set(); + const buildTree = (pkg, locationPrefix, parentNodePath) => { + if (seenNodes.has(pkg)) + return; + seenNodes.add(pkg); + const pkgReferences = Array.from(pkg.references).sort().join(`#`); + for (const dep of pkg.dependencies) { + const depReferences = Array.from(dep.references).sort().join(`#`); + if (dep.identName === pkg.identName && depReferences === pkgReferences) + continue; + const references = Array.from(dep.references).sort(); + const locator = { name: dep.identName, reference: references[0] }; + const { name, scope } = getPackageName(dep.name); + const packageNameParts = scope ? [scope, name] : [name]; + const nodeModulesDirPath = fslib_12.ppath.join(locationPrefix, NODE_MODULES); + const nodeModulesLocation = fslib_12.ppath.join(nodeModulesDirPath, ...packageNameParts); + const nodePath = `${parentNodePath}/${locator.name}`; + const leafNode = makeLeafNode(locator, parentNodePath, references.slice(1)); + let isAnonymousWorkspace = false; + if (leafNode.linkType === LinkType.SOFT && options.project) { + const workspace = options.project.workspacesByCwd.get(leafNode.target.slice(0, -1)); + isAnonymousWorkspace = !!(workspace && !workspace.manifest.name); + } + const isCircularSymlink = leafNode.linkType === LinkType.SOFT && nodeModulesLocation.startsWith(leafNode.target); + if (!dep.name.endsWith(WORKSPACE_NAME_SUFFIX) && !isAnonymousWorkspace && !isCircularSymlink) { + const prevNode = tree.get(nodeModulesLocation); + if (prevNode) { + if (prevNode.dirList) { + throw new Error(`Assertion failed: ${nodeModulesLocation} cannot merge dir node with leaf node`); + } else { + const locator1 = core_1.structUtils.parseLocator(prevNode.locator); + const locator2 = core_1.structUtils.parseLocator(leafNode.locator); + if (prevNode.linkType !== leafNode.linkType) + throw new Error(`Assertion failed: ${nodeModulesLocation} cannot merge nodes with different link types ${prevNode.nodePath}/${core_1.structUtils.stringifyLocator(locator1)} and ${parentNodePath}/${core_1.structUtils.stringifyLocator(locator2)}`); + else if (locator1.identHash !== locator2.identHash) + throw new Error(`Assertion failed: ${nodeModulesLocation} cannot merge nodes with different idents ${prevNode.nodePath}/${core_1.structUtils.stringifyLocator(locator1)} and ${parentNodePath}/s${core_1.structUtils.stringifyLocator(locator2)}`); + leafNode.aliases = [...leafNode.aliases, ...prevNode.aliases, core_1.structUtils.parseLocator(prevNode.locator).reference]; + } + } + tree.set(nodeModulesLocation, leafNode); + const segments = nodeModulesLocation.split(`/`); + const nodeModulesIdx = segments.indexOf(NODE_MODULES); + for (let segCount = segments.length - 1; nodeModulesIdx >= 0 && segCount > nodeModulesIdx; segCount--) { + const dirPath = fslib_12.npath.toPortablePath(segments.slice(0, segCount).join(fslib_12.ppath.sep)); + const targetDir = (0, fslib_12.toFilename)(segments[segCount]); + const subdirs = tree.get(dirPath); + if (!subdirs) { + tree.set(dirPath, { dirList: /* @__PURE__ */ new Set([targetDir]) }); + } else if (subdirs.dirList) { + if (subdirs.dirList.has(targetDir)) { + break; + } else { + subdirs.dirList.add(targetDir); + } + } + } + } + buildTree(dep, leafNode.linkType === LinkType.SOFT ? leafNode.target : nodeModulesLocation, nodePath); + } + }; + const rootNode = makeLeafNode({ name: hoistedTree.name, reference: Array.from(hoistedTree.references)[0] }, ``, []); + const rootPath = rootNode.target; + tree.set(rootPath, rootNode); + buildTree(hoistedTree, rootPath, ``); + return tree; + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/index.js +var require_lib128 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+nm@4.0.0-rc.45(typanion@3.12.1)/node_modules/@yarnpkg/nm/lib/index.js"(exports2) { "use strict"; - function peg$subclass(child, parent) { - function ctor() { - this.constructor = child; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.HoisterDependencyKind = exports2.hoist = exports2.getArchivePath = exports2.buildLocatorMap = exports2.buildNodeModulesTree = exports2.NodeModulesHoistingLimits = void 0; + var buildNodeModulesTree_1 = require_buildNodeModulesTree(); + Object.defineProperty(exports2, "getArchivePath", { enumerable: true, get: function() { + return buildNodeModulesTree_1.getArchivePath; + } }); + var buildNodeModulesTree_2 = require_buildNodeModulesTree(); + Object.defineProperty(exports2, "buildNodeModulesTree", { enumerable: true, get: function() { + return buildNodeModulesTree_2.buildNodeModulesTree; + } }); + Object.defineProperty(exports2, "buildLocatorMap", { enumerable: true, get: function() { + return buildNodeModulesTree_2.buildLocatorMap; + } }); + var buildNodeModulesTree_3 = require_buildNodeModulesTree(); + Object.defineProperty(exports2, "NodeModulesHoistingLimits", { enumerable: true, get: function() { + return buildNodeModulesTree_3.NodeModulesHoistingLimits; + } }); + var hoist_1 = require_hoist(); + Object.defineProperty(exports2, "hoist", { enumerable: true, get: function() { + return hoist_1.hoist; + } }); + Object.defineProperty(exports2, "HoisterDependencyKind", { enumerable: true, get: function() { + return hoist_1.HoisterDependencyKind; + } }); + } +}); + +// ../pkg-manager/real-hoist/lib/index.js +var require_lib129 = __commonJS({ + "../pkg-manager/real-hoist/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - ctor.prototype = parent.prototype; - child.prototype = new ctor(); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hoist = void 0; + var error_1 = require_lib8(); + var lockfile_utils_1 = require_lib84(); + var dp = __importStar5(require_lib81()); + var nm_1 = require_lib128(); + function hoist(lockfile, opts) { + const nodes = /* @__PURE__ */ new Map(); + const node = { + name: ".", + identName: ".", + reference: "", + peerNames: /* @__PURE__ */ new Set([]), + dependencyKind: nm_1.HoisterDependencyKind.WORKSPACE, + dependencies: toTree(nodes, lockfile, { + ...lockfile.importers["."]?.dependencies, + ...lockfile.importers["."]?.devDependencies, + ...lockfile.importers["."]?.optionalDependencies, + ...Array.from(opts?.externalDependencies ?? []).reduce((acc, dep) => { + acc[dep] = "link:"; + return acc; + }, {}) + }, opts?.autoInstallPeers) + }; + for (const [importerId, importer] of Object.entries(lockfile.importers)) { + if (importerId === ".") + continue; + const importerNode = { + name: encodeURIComponent(importerId), + identName: encodeURIComponent(importerId), + reference: `workspace:${importerId}`, + peerNames: /* @__PURE__ */ new Set([]), + dependencyKind: nm_1.HoisterDependencyKind.WORKSPACE, + dependencies: toTree(nodes, lockfile, { + ...importer.dependencies, + ...importer.devDependencies, + ...importer.optionalDependencies + }, opts?.autoInstallPeers) + }; + node.dependencies.add(importerNode); + } + const hoisterResult = (0, nm_1.hoist)(node, opts); + if (opts?.externalDependencies) { + for (const hoistedDep of hoisterResult.dependencies.values()) { + if (opts.externalDependencies.has(hoistedDep.name)) { + hoisterResult.dependencies.delete(hoistedDep); + } + } + } + return hoisterResult; + } + exports2.hoist = hoist; + function toTree(nodes, lockfile, deps, autoInstallPeers) { + return new Set(Object.entries(deps).map(([alias, ref]) => { + const depPath = dp.refToRelative(ref, alias); + if (!depPath) { + const key2 = `${alias}:${ref}`; + let node2 = nodes.get(key2); + if (!node2) { + node2 = { + name: alias, + identName: alias, + reference: ref, + dependencyKind: nm_1.HoisterDependencyKind.REGULAR, + dependencies: /* @__PURE__ */ new Set(), + peerNames: /* @__PURE__ */ new Set() + }; + nodes.set(key2, node2); + } + return node2; + } + const key = `${alias}:${depPath}`; + let node = nodes.get(key); + if (!node) { + const pkgSnapshot = lockfile.packages[depPath]; + if (!pkgSnapshot) { + throw new error_1.LockfileMissingDependencyError(depPath); + } + const pkgName = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot).name; + node = { + name: alias, + identName: pkgName, + reference: depPath, + dependencyKind: nm_1.HoisterDependencyKind.REGULAR, + dependencies: /* @__PURE__ */ new Set(), + peerNames: new Set(autoInstallPeers ? [] : [ + ...Object.keys(pkgSnapshot.peerDependencies ?? {}), + ...pkgSnapshot.transitivePeerDependencies ?? [] + ]) + }; + nodes.set(key, node); + node.dependencies = toTree(nodes, lockfile, { ...pkgSnapshot.dependencies, ...pkgSnapshot.optionalDependencies }); + } + return node; + })); } - function peg$SyntaxError(message2, expected, found, location) { - this.message = message2; - this.expected = expected; - this.found = found; - this.location = location; - this.name = "SyntaxError"; - if (typeof Error.captureStackTrace === "function") { - Error.captureStackTrace(this, peg$SyntaxError); + } +}); + +// ../pkg-manager/headless/lib/lockfileToHoistedDepGraph.js +var require_lockfileToHoistedDepGraph = __commonJS({ + "../pkg-manager/headless/lib/lockfileToHoistedDepGraph.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lockfileToHoistedDepGraph = void 0; + var path_exists_1 = __importDefault4(require_path_exists()); + var path_1 = __importDefault4(require("path")); + var lockfile_utils_1 = require_lib84(); + var package_is_installable_1 = require_lib24(); + var real_hoist_1 = require_lib129(); + var dp = __importStar5(require_lib81()); + async function lockfileToHoistedDepGraph(lockfile, currentLockfile, opts) { + let prevGraph; + if (currentLockfile?.packages != null) { + prevGraph = (await _lockfileToHoistedDepGraph(currentLockfile, opts)).graph; + } else { + prevGraph = {}; } + return { + ...await _lockfileToHoistedDepGraph(lockfile, opts), + prevGraph + }; } - peg$subclass(peg$SyntaxError, Error); - peg$SyntaxError.buildMessage = function(expected, found) { - var DESCRIBE_EXPECTATION_FNS = { - literal: function(expectation) { - return '"' + literalEscape(expectation.text) + '"'; - }, - "class": function(expectation) { - var escapedParts = "", i; - for (i = 0; i < expectation.parts.length; i++) { - escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); + exports2.lockfileToHoistedDepGraph = lockfileToHoistedDepGraph; + async function _lockfileToHoistedDepGraph(lockfile, opts) { + const tree = (0, real_hoist_1.hoist)(lockfile, { + hoistingLimits: opts.hoistingLimits, + externalDependencies: opts.externalDependencies, + autoInstallPeers: opts.autoInstallPeers + }); + const graph = {}; + const modulesDir = path_1.default.join(opts.lockfileDir, "node_modules"); + const fetchDepsOpts = { + ...opts, + lockfile, + graph, + pkgLocationsByDepPath: {}, + hoistedLocations: {} + }; + const hierarchy = { + [opts.lockfileDir]: await fetchDeps(fetchDepsOpts, modulesDir, tree.dependencies) + }; + const directDependenciesByImporterId = { + ".": directDepsMap(Object.keys(hierarchy[opts.lockfileDir]), graph) + }; + const symlinkedDirectDependenciesByImporterId = { ".": {} }; + for (const rootDep of Array.from(tree.dependencies)) { + const reference = Array.from(rootDep.references)[0]; + if (reference.startsWith("workspace:")) { + const importerId = reference.replace("workspace:", ""); + const projectDir = path_1.default.join(opts.lockfileDir, importerId); + const modulesDir2 = path_1.default.join(projectDir, "node_modules"); + const nextHierarchy = await fetchDeps(fetchDepsOpts, modulesDir2, rootDep.dependencies); + hierarchy[projectDir] = nextHierarchy; + const importer = lockfile.importers[importerId]; + const importerDir = path_1.default.join(opts.lockfileDir, importerId); + symlinkedDirectDependenciesByImporterId[importerId] = pickLinkedDirectDeps(importer, importerDir, opts.include); + directDependenciesByImporterId[importerId] = directDepsMap(Object.keys(nextHierarchy), graph); + } + } + return { + directDependenciesByImporterId, + graph, + hierarchy, + pkgLocationsByDepPath: fetchDepsOpts.pkgLocationsByDepPath, + symlinkedDirectDependenciesByImporterId, + hoistedLocations: fetchDepsOpts.hoistedLocations + }; + } + function directDepsMap(directDepDirs, graph) { + return directDepDirs.reduce((acc, dir) => { + acc[graph[dir].alias] = dir; + return acc; + }, {}); + } + function pickLinkedDirectDeps(importer, importerDir, include) { + const rootDeps = { + ...include.devDependencies ? importer.devDependencies : {}, + ...include.dependencies ? importer.dependencies : {}, + ...include.optionalDependencies ? importer.optionalDependencies : {} + }; + return Object.entries(rootDeps).reduce((directDeps, [alias, ref]) => { + if (ref.startsWith("link:")) { + directDeps[alias] = path_1.default.resolve(importerDir, ref.slice(5)); + } + return directDeps; + }, {}); + } + async function fetchDeps(opts, modules, deps) { + const depHierarchy = {}; + await Promise.all(Array.from(deps).map(async (dep) => { + const depPath = Array.from(dep.references)[0]; + if (opts.skipped.has(depPath) || depPath.startsWith("workspace:")) + return; + const pkgSnapshot = opts.lockfile.packages[depPath]; + if (!pkgSnapshot) { + return; + } + const { name: pkgName, version: pkgVersion } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const packageId = (0, lockfile_utils_1.packageIdFromSnapshot)(depPath, pkgSnapshot, opts.registries); + const pkg = { + name: pkgName, + version: pkgVersion, + engines: pkgSnapshot.engines, + cpu: pkgSnapshot.cpu, + os: pkgSnapshot.os, + libc: pkgSnapshot.libc + }; + if (!opts.force && (0, package_is_installable_1.packageIsInstallable)(packageId, pkg, { + engineStrict: opts.engineStrict, + lockfileDir: opts.lockfileDir, + nodeVersion: opts.nodeVersion, + optional: pkgSnapshot.optional === true, + pnpmVersion: opts.pnpmVersion + }) === false) { + opts.skipped.add(depPath); + return; + } + const dir = path_1.default.join(modules, dep.name); + const depLocation = path_1.default.relative(opts.lockfileDir, dir); + const resolution = (0, lockfile_utils_1.pkgSnapshotToResolution)(depPath, pkgSnapshot, opts.registries); + let fetchResponse; + const skipFetch = opts.currentHoistedLocations?.[depPath]?.includes(depLocation) && await (0, path_exists_1.default)(path_1.default.join(opts.lockfileDir, depLocation)); + const pkgResolution = { + id: packageId, + resolution + }; + if (skipFetch) { + const { filesIndexFile } = opts.storeController.getFilesIndexFilePath({ + ignoreScripts: opts.ignoreScripts, + pkg: pkgResolution + }); + fetchResponse = { filesIndexFile }; + } else { + try { + fetchResponse = opts.storeController.fetchPackage({ + force: false, + lockfileDir: opts.lockfileDir, + ignoreScripts: opts.ignoreScripts, + pkg: pkgResolution, + expectedPkg: { + name: pkgName, + version: pkgVersion + } + }); + if (fetchResponse instanceof Promise) + fetchResponse = await fetchResponse; + } catch (err) { + if (pkgSnapshot.optional) + return; + throw err; } - return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; - }, - any: function(expectation) { - return "any character"; - }, - end: function(expectation) { - return "end of input"; - }, - other: function(expectation) { - return expectation.description; } + opts.graph[dir] = { + alias: dep.name, + children: {}, + depPath, + dir, + fetchingFiles: fetchResponse.files, + filesIndexFile: fetchResponse.filesIndexFile, + finishing: fetchResponse.finishing, + hasBin: pkgSnapshot.hasBin === true, + hasBundledDependencies: pkgSnapshot.bundledDependencies != null, + modules, + name: pkgName, + optional: !!pkgSnapshot.optional, + optionalDependencies: new Set(Object.keys(pkgSnapshot.optionalDependencies ?? {})), + prepare: pkgSnapshot.prepare === true, + requiresBuild: pkgSnapshot.requiresBuild === true, + patchFile: opts.patchedDependencies?.[`${pkgName}@${pkgVersion}`] + }; + if (!opts.pkgLocationsByDepPath[depPath]) { + opts.pkgLocationsByDepPath[depPath] = []; + } + opts.pkgLocationsByDepPath[depPath].push(dir); + depHierarchy[dir] = await fetchDeps(opts, path_1.default.join(dir, "node_modules"), dep.dependencies); + if (!opts.hoistedLocations[depPath]) { + opts.hoistedLocations[depPath] = []; + } + opts.hoistedLocations[depPath].push(depLocation); + opts.graph[dir].children = getChildren(pkgSnapshot, opts.pkgLocationsByDepPath, opts); + })); + return depHierarchy; + } + function getChildren(pkgSnapshot, pkgLocationsByDepPath, opts) { + const allDeps = { + ...pkgSnapshot.dependencies, + ...opts.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {} }; - function hex(ch) { - return ch.charCodeAt(0).toString(16).toUpperCase(); + const children = {}; + for (const [childName, childRef] of Object.entries(allDeps)) { + const childDepPath = dp.refToRelative(childRef, childName); + if (childDepPath && pkgLocationsByDepPath[childDepPath]) { + children[childName] = pkgLocationsByDepPath[childDepPath][0]; + } } - function literalEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return "\\x0" + hex(ch); - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return "\\x" + hex(ch); - }); + return children; + } + } +}); + +// ../pkg-manager/direct-dep-linker/lib/linkDirectDeps.js +var require_linkDirectDeps = __commonJS({ + "../pkg-manager/direct-dep-linker/lib/linkDirectDeps.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.linkDirectDeps = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var symlink_dependency_1 = require_lib121(); + var omit_1 = __importDefault4(require_omit()); + var read_modules_dir_1 = require_lib53(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var resolve_link_target_1 = __importDefault4(require_resolve_link_target()); + async function linkDirectDeps(projects, opts) { + if (opts.dedupe && projects["."] && Object.keys(projects).length > 1) { + return linkDirectDepsAndDedupe(projects["."], (0, omit_1.default)(["."], projects)); + } + await Promise.all(Object.values(projects).map(linkDirectDepsOfProject)); + } + exports2.linkDirectDeps = linkDirectDeps; + async function linkDirectDepsAndDedupe(rootProject, projects) { + await linkDirectDepsOfProject(rootProject); + const pkgsLinkedToRoot = await readLinkedDeps(rootProject.modulesDir); + await Promise.all(Object.values(projects).map(async (project) => { + const deletedAll = await deletePkgsPresentInRoot(project.modulesDir, pkgsLinkedToRoot); + const dependencies = omitDepsFromRoot(project.dependencies, pkgsLinkedToRoot); + if (dependencies.length > 0) { + await linkDirectDepsOfProject({ + ...project, + dependencies + }); + return; + } + if (deletedAll) { + await (0, rimraf_1.default)(project.modulesDir); + } + })); + } + function omitDepsFromRoot(deps, pkgsLinkedToRoot) { + return deps.filter(({ dir }) => !pkgsLinkedToRoot.some(pathsEqual.bind(null, dir))); + } + function pathsEqual(path1, path2) { + return path_1.default.relative(path1, path2) === ""; + } + async function readLinkedDeps(modulesDir) { + const deps = await (0, read_modules_dir_1.readModulesDir)(modulesDir) ?? []; + return Promise.all(deps.map((alias) => resolveLinkTargetOrFile(path_1.default.join(modulesDir, alias)))); + } + async function deletePkgsPresentInRoot(modulesDir, pkgsLinkedToRoot) { + const pkgsLinkedToCurrentProject = await readLinkedDepsWithRealLocations(modulesDir); + const pkgsToDelete = pkgsLinkedToCurrentProject.filter(({ linkedFrom }) => pkgsLinkedToRoot.some(pathsEqual.bind(null, linkedFrom))); + await Promise.all(pkgsToDelete.map(({ linkedTo }) => fs_1.default.promises.unlink(linkedTo))); + return pkgsToDelete.length === pkgsLinkedToCurrentProject.length; + } + async function readLinkedDepsWithRealLocations(modulesDir) { + const deps = await (0, read_modules_dir_1.readModulesDir)(modulesDir) ?? []; + return Promise.all(deps.map(async (alias) => { + const linkedTo = path_1.default.join(modulesDir, alias); + return { + linkedTo, + linkedFrom: await resolveLinkTargetOrFile(linkedTo) + }; + })); + } + async function resolveLinkTargetOrFile(filePath) { + try { + return await (0, resolve_link_target_1.default)(filePath); + } catch (err) { + if (err.code !== "EINVAL" && err.code !== "UNKNOWN") + throw err; + return filePath; } - function classEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return "\\x0" + hex(ch); - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return "\\x" + hex(ch); + } + async function linkDirectDepsOfProject(project) { + await Promise.all(project.dependencies.map(async (dep) => { + if (dep.isExternalLink) { + await (0, symlink_dependency_1.symlinkDirectRootDependency)(dep.dir, project.modulesDir, dep.alias, { + fromDependenciesField: dep.dependencyType === "dev" && "devDependencies" || dep.dependencyType === "optional" && "optionalDependencies" || "dependencies", + linkedPackage: { + name: dep.name, + version: dep.version + }, + prefix: project.dir + }); + return; + } + if ((await (0, symlink_dependency_1.symlinkDependency)(dep.dir, project.modulesDir, dep.alias)).reused) { + return; + } + core_loggers_1.rootLogger.debug({ + added: { + dependencyType: dep.dependencyType, + id: dep.id, + latest: dep.latest, + name: dep.alias, + realName: dep.name, + version: dep.version + }, + prefix: project.dir }); + })); + } + } +}); + +// ../pkg-manager/direct-dep-linker/lib/index.js +var require_lib130 = __commonJS({ + "../pkg-manager/direct-dep-linker/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - function describeExpectation(expectation) { - return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar4(require_linkDirectDeps(), exports2); + } +}); + +// ../pkg-manager/headless/lib/index.js +var require_lib131 = __commonJS({ + "../pkg-manager/headless/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - function describeExpected(expected2) { - var descriptions = new Array(expected2.length), i, j; - for (i = 0; i < expected2.length; i++) { - descriptions[i] = describeExpectation(expected2[i]); - } - descriptions.sort(); - if (descriptions.length > 0) { - for (i = 1, j = 1; i < descriptions.length; i++) { - if (descriptions[i - 1] !== descriptions[i]) { - descriptions[j] = descriptions[i]; - j++; - } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.headlessInstall = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var build_modules_1 = require_lib115(); + var calc_dep_state_1 = require_lib112(); + var constants_1 = require_lib7(); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var filter_lockfile_1 = require_lib116(); + var hoist_1 = require_lib117(); + var lifecycle_1 = require_lib61(); + var link_bins_1 = require_lib54(); + var lockfile_file_1 = require_lib87(); + var lockfile_to_pnp_1 = require_lib119(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var modules_cleaner_1 = require_lib120(); + var modules_yaml_1 = require_lib88(); + var read_package_json_1 = require_lib41(); + var read_project_manifest_1 = require_lib16(); + var symlink_dependency_1 = require_lib121(); + var dp = __importStar5(require_lib81()); + var p_limit_12 = __importDefault4(require_p_limit()); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var equals_1 = __importDefault4(require_equals2()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var omit_1 = __importDefault4(require_omit()); + var pick_1 = __importDefault4(require_pick()); + var pickBy_1 = __importDefault4(require_pickBy()); + var props_1 = __importDefault4(require_props()); + var union_1 = __importDefault4(require_union()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var linkHoistedModules_1 = require_linkHoistedModules(); + var lockfileToDepGraph_1 = require_lockfileToDepGraph(); + var lockfileToHoistedDepGraph_1 = require_lockfileToHoistedDepGraph(); + var pkg_manager_direct_dep_linker_1 = require_lib130(); + async function headlessInstall(opts) { + const reporter = opts.reporter; + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.on("data", reporter); + } + const lockfileDir = opts.lockfileDir; + const wantedLockfile = opts.wantedLockfile ?? await (0, lockfile_file_1.readWantedLockfile)(lockfileDir, { + ignoreIncompatible: false, + useGitBranchLockfile: opts.useGitBranchLockfile, + // mergeGitBranchLockfiles is intentionally not supported in headless + mergeGitBranchLockfiles: false + }); + if (wantedLockfile == null) { + throw new Error(`Headless installation requires a ${constants_1.WANTED_LOCKFILE} file`); + } + const depsStateCache = {}; + const relativeModulesDir = opts.modulesDir ?? "node_modules"; + const rootModulesDir = await (0, realpath_missing_1.default)(path_1.default.join(lockfileDir, relativeModulesDir)); + const virtualStoreDir = (0, path_absolute_1.default)(opts.virtualStoreDir ?? path_1.default.join(relativeModulesDir, ".pnpm"), lockfileDir); + const currentLockfile = opts.currentLockfile ?? await (0, lockfile_file_1.readCurrentLockfile)(virtualStoreDir, { ignoreIncompatible: false }); + const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); + const publicHoistedModulesDir = rootModulesDir; + const selectedProjects = Object.values((0, pick_1.default)(opts.selectedProjectDirs, opts.allProjects)); + if (!opts.ignorePackageManifest) { + for (const { id, manifest, rootDir } of selectedProjects) { + if (!(0, lockfile_utils_1.satisfiesPackageManifest)(wantedLockfile, manifest, id, { autoInstallPeers: opts.autoInstallPeers })) { + throw new error_1.PnpmError("OUTDATED_LOCKFILE", `Cannot install with "frozen-lockfile" because ${constants_1.WANTED_LOCKFILE} is not up to date with ` + path_1.default.relative(lockfileDir, path_1.default.join(rootDir, "package.json")), { + hint: 'Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile"' + }); } - descriptions.length = j; } - switch (descriptions.length) { - case 1: - return descriptions[0]; - case 2: - return descriptions[0] + " or " + descriptions[1]; - default: - return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + const scriptsOpts = { + optional: false, + extraBinPaths: opts.extraBinPaths, + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + extraEnv: opts.extraEnv, + rawConfig: opts.rawConfig, + resolveSymlinksInInjectedDirs: opts.resolveSymlinksInInjectedDirs, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + stdio: opts.ownLifecycleHooksStdio ?? "inherit", + storeController: opts.storeController, + unsafePerm: opts.unsafePerm || false + }; + const skipped = opts.skipped || /* @__PURE__ */ new Set(); + if (opts.nodeLinker !== "hoisted") { + if (currentLockfile != null && !opts.ignorePackageManifest) { + await (0, modules_cleaner_1.prune)(selectedProjects, { + currentLockfile, + dryRun: false, + hoistedDependencies: opts.hoistedDependencies, + hoistedModulesDir: opts.hoistPattern == null ? void 0 : hoistedModulesDir, + include: opts.include, + lockfileDir, + pruneStore: opts.pruneStore, + pruneVirtualStore: opts.pruneVirtualStore, + publicHoistedModulesDir: opts.publicHoistPattern == null ? void 0 : publicHoistedModulesDir, + registries: opts.registries, + skipped, + storeController: opts.storeController, + virtualStoreDir, + wantedLockfile + }); + } else { + core_loggers_1.statsLogger.debug({ + prefix: lockfileDir, + removed: 0 + }); } } - function describeFound(found2) { - return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + core_loggers_1.stageLogger.debug({ + prefix: lockfileDir, + stage: "importing_started" + }); + const filterOpts = { + include: opts.include, + registries: opts.registries, + skipped + }; + const initialImporterIds = opts.ignorePackageManifest === true || opts.nodeLinker === "hoisted" ? Object.keys(wantedLockfile.importers) : selectedProjects.map(({ id }) => id); + const { lockfile: filteredLockfile, selectedImporterIds: importerIds } = (0, filter_lockfile_1.filterLockfileByImportersAndEngine)(wantedLockfile, initialImporterIds, { + ...filterOpts, + currentEngine: opts.currentEngine, + engineStrict: opts.engineStrict, + failOnMissingDependencies: true, + includeIncompatiblePackages: opts.force, + lockfileDir + }); + const initialImporterIdSet = new Set(initialImporterIds); + const missingIds = importerIds.filter((importerId) => !initialImporterIdSet.has(importerId)); + if (missingIds.length > 0) { + for (const project of Object.values(opts.allProjects)) { + if (missingIds.includes(project.id)) { + selectedProjects.push(project); + } + } } - return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; - }; - function peg$parse(input, options) { - options = options !== void 0 ? options : {}; - var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(line) { - return line ? line : []; - }, peg$c1 = function(command, type, then) { - return [command].concat(then || []); - }, peg$c2 = function(command, type) { - return [command]; - }, peg$c3 = function(then) { - return then; - }, peg$c4 = ";", peg$c5 = peg$literalExpectation(";", false), peg$c6 = function(chain, then) { - return then ? { chain, then } : { chain }; - }, peg$c7 = function(type, then) { - return { type, line: then }; - }, peg$c8 = "&&", peg$c9 = peg$literalExpectation("&&", false), peg$c10 = "||", peg$c11 = peg$literalExpectation("||", false), peg$c12 = function(main, then) { - return then ? { ...main, then } : main; - }, peg$c13 = function(type, then) { - return { type, chain: then }; - }, peg$c14 = "|&", peg$c15 = peg$literalExpectation("|&", false), peg$c16 = "|", peg$c17 = peg$literalExpectation("|", false), peg$c18 = "=", peg$c19 = peg$literalExpectation("=", false), peg$c20 = function(name, arg) { - return { name, args: [arg] }; - }, peg$c21 = function(name) { - return { name, args: [] }; - }, peg$c22 = "(", peg$c23 = peg$literalExpectation("(", false), peg$c24 = ")", peg$c25 = peg$literalExpectation(")", false), peg$c26 = function(subshell, args2) { - return { type: `subshell`, subshell, args: args2 }; - }, peg$c27 = "{", peg$c28 = peg$literalExpectation("{", false), peg$c29 = "}", peg$c30 = peg$literalExpectation("}", false), peg$c31 = function(group, args2) { - return { type: `group`, group, args: args2 }; - }, peg$c32 = function(envs, args2) { - return { type: `command`, args: args2, envs }; - }, peg$c33 = function(envs) { - return { type: `envs`, envs }; - }, peg$c34 = function(args2) { - return args2; - }, peg$c35 = function(arg) { - return arg; - }, peg$c36 = function(redirect, arg) { - return { type: `redirection`, subtype: redirect, args: [arg] }; - }, peg$c37 = ">>", peg$c38 = peg$literalExpectation(">>", false), peg$c39 = ">&", peg$c40 = peg$literalExpectation(">&", false), peg$c41 = ">", peg$c42 = peg$literalExpectation(">", false), peg$c43 = "<<<", peg$c44 = peg$literalExpectation("<<<", false), peg$c45 = "<&", peg$c46 = peg$literalExpectation("<&", false), peg$c47 = "<", peg$c48 = peg$literalExpectation("<", false), peg$c49 = function(segments) { - return { type: `argument`, segments: [].concat(...segments) }; - }, peg$c50 = function(string) { - return string; - }, peg$c51 = "'", peg$c52 = peg$literalExpectation("'", false), peg$c53 = function(text2) { - return [{ type: `text`, text: text2 }]; - }, peg$c54 = '"', peg$c55 = peg$literalExpectation('"', false), peg$c56 = function(segments) { - return segments; - }, peg$c57 = function(arithmetic) { - return { type: `arithmetic`, arithmetic, quoted: true }; - }, peg$c58 = function(shell) { - return { type: `shell`, shell, quoted: true }; - }, peg$c59 = function(variable) { - return { type: `variable`, ...variable, quoted: true }; - }, peg$c60 = function(text2) { - return { type: `text`, text: text2 }; - }, peg$c61 = function(arithmetic) { - return { type: `arithmetic`, arithmetic, quoted: false }; - }, peg$c62 = function(shell) { - return { type: `shell`, shell, quoted: false }; - }, peg$c63 = function(variable) { - return { type: `variable`, ...variable, quoted: false }; - }, peg$c64 = function(pattern) { - return { type: `glob`, pattern }; - }, peg$c65 = "\\", peg$c66 = peg$literalExpectation("\\", false), peg$c67 = peg$anyExpectation(), peg$c68 = function(c) { - return c; - }, peg$c69 = /^[^']/, peg$c70 = peg$classExpectation(["'"], true, false), peg$c71 = function(chars) { - return chars.join(``); - }, peg$c72 = /^[^$"]/, peg$c73 = peg$classExpectation(["$", '"'], true, false), peg$c74 = "-", peg$c75 = peg$literalExpectation("-", false), peg$c76 = "+", peg$c77 = peg$literalExpectation("+", false), peg$c78 = /^[0-9]/, peg$c79 = peg$classExpectation([["0", "9"]], false, false), peg$c80 = ".", peg$c81 = peg$literalExpectation(".", false), peg$c82 = function(sign, left, right) { - return { type: `number`, value: (sign === "-" ? -1 : 1) * parseFloat(left.join(``) + `.` + right.join(``)) }; - }, peg$c83 = function(sign, value) { - return { type: `number`, value: (sign === "-" ? -1 : 1) * parseInt(value.join(``)) }; - }, peg$c84 = function(variable) { - return { type: `variable`, ...variable }; - }, peg$c85 = function(name) { - return { type: `variable`, name }; - }, peg$c86 = function(value) { - return value; - }, peg$c87 = "*", peg$c88 = peg$literalExpectation("*", false), peg$c89 = function(left, right) { - return { type: `multiplication`, left, right }; - }, peg$c90 = "/", peg$c91 = peg$literalExpectation("/", false), peg$c92 = function(left, right) { - return { type: `division`, left, right }; - }, peg$c93 = function(left, right) { - return { type: `addition`, left, right }; - }, peg$c94 = function(left, right) { - return { type: `subtraction`, left, right }; - }, peg$c95 = "$((", peg$c96 = peg$literalExpectation("$((", false), peg$c97 = "))", peg$c98 = peg$literalExpectation("))", false), peg$c99 = function(arithmetic) { - return arithmetic; - }, peg$c100 = "$(", peg$c101 = peg$literalExpectation("$(", false), peg$c102 = function(command) { - return command; - }, peg$c103 = "${", peg$c104 = peg$literalExpectation("${", false), peg$c105 = ":-", peg$c106 = peg$literalExpectation(":-", false), peg$c107 = function(name, arg) { - return { name, defaultValue: arg }; - }, peg$c108 = ":-}", peg$c109 = peg$literalExpectation(":-}", false), peg$c110 = function(name) { - return { name, defaultValue: [] }; - }, peg$c111 = function(name) { - return { name }; - }, peg$c112 = "$", peg$c113 = peg$literalExpectation("$", false), peg$c114 = function(pattern) { - return options.isGlobPattern(pattern); - }, peg$c115 = function(pattern) { - return pattern; - }, peg$c116 = /^[a-zA-Z0-9_]/, peg$c117 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false), peg$c118 = function() { - return text(); - }, peg$c119 = /^[$@*?#a-zA-Z0-9_\-]/, peg$c120 = peg$classExpectation(["$", "@", "*", "?", "#", ["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c121 = /^[(){}<>$|&; \t"']/, peg$c122 = peg$classExpectation(["(", ")", "{", "}", "<", ">", "$", "|", "&", ";", " ", " ", '"', "'"], false, false), peg$c123 = /^[<>&; \t"']/, peg$c124 = peg$classExpectation(["<", ">", "&", ";", " ", " ", '"', "'"], false, false), peg$c125 = /^[ \t]/, peg$c126 = peg$classExpectation([" ", " "], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; - if ("startRule" in options) { - if (!(options.startRule in peg$startRuleFunctions)) { - throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + const lockfileToDepGraphOpts = { + ...opts, + importerIds, + lockfileDir, + skipped, + virtualStoreDir, + nodeVersion: opts.currentEngine.nodeVersion, + pnpmVersion: opts.currentEngine.pnpmVersion + }; + const { directDependenciesByImporterId, graph, hierarchy, hoistedLocations, pkgLocationsByDepPath, prevGraph, symlinkedDirectDependenciesByImporterId } = await (opts.nodeLinker === "hoisted" ? (0, lockfileToHoistedDepGraph_1.lockfileToHoistedDepGraph)(filteredLockfile, currentLockfile, lockfileToDepGraphOpts) : (0, lockfileToDepGraph_1.lockfileToDepGraph)(filteredLockfile, opts.force ? null : currentLockfile, lockfileToDepGraphOpts)); + if (opts.enablePnp) { + const importerNames = Object.fromEntries(selectedProjects.map(({ manifest, id }) => [id, manifest.name ?? id])); + await (0, lockfile_to_pnp_1.writePnpFile)(filteredLockfile, { + importerNames, + lockfileDir, + virtualStoreDir, + registries: opts.registries + }); + } + const depNodes = Object.values(graph); + core_loggers_1.statsLogger.debug({ + added: depNodes.length, + prefix: lockfileDir + }); + function warn(message2) { + logger_1.logger.info({ + message: message2, + prefix: lockfileDir + }); + } + let newHoistedDependencies; + if (opts.nodeLinker === "hoisted" && hierarchy && prevGraph) { + await (0, linkHoistedModules_1.linkHoistedModules)(opts.storeController, graph, prevGraph, hierarchy, { + depsStateCache, + force: opts.force, + ignoreScripts: opts.ignoreScripts, + lockfileDir: opts.lockfileDir, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + sideEffectsCacheRead: opts.sideEffectsCacheRead + }); + core_loggers_1.stageLogger.debug({ + prefix: lockfileDir, + stage: "importing_done" + }); + await symlinkDirectDependencies({ + directDependenciesByImporterId: symlinkedDirectDependenciesByImporterId, + dedupe: Boolean(opts.dedupeDirectDeps), + filteredLockfile, + lockfileDir, + projects: selectedProjects, + registries: opts.registries, + symlink: opts.symlink + }); + } else if (opts.enableModulesDir !== false) { + await Promise.all(depNodes.map(async (depNode) => fs_1.promises.mkdir(depNode.modules, { recursive: true }))); + await Promise.all([ + opts.symlink === false ? Promise.resolve() : linkAllModules(depNodes, { + lockfileDir, + optional: opts.include.optionalDependencies + }), + linkAllPkgs(opts.storeController, depNodes, { + force: opts.force, + depGraph: graph, + depsStateCache, + ignoreScripts: opts.ignoreScripts, + lockfileDir: opts.lockfileDir, + sideEffectsCacheRead: opts.sideEffectsCacheRead + }) + ]); + core_loggers_1.stageLogger.debug({ + prefix: lockfileDir, + stage: "importing_done" + }); + if (opts.ignorePackageManifest !== true && (opts.hoistPattern != null || opts.publicHoistPattern != null)) { + const hoistLockfile = { + ...filteredLockfile, + packages: (0, omit_1.default)(Array.from(skipped), filteredLockfile.packages) + }; + newHoistedDependencies = await (0, hoist_1.hoist)({ + extraNodePath: opts.extraNodePaths, + lockfile: hoistLockfile, + importerIds, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + privateHoistedModulesDir: hoistedModulesDir, + privateHoistPattern: opts.hoistPattern ?? [], + publicHoistedModulesDir, + publicHoistPattern: opts.publicHoistPattern ?? [], + virtualStoreDir + }); + } else { + newHoistedDependencies = {}; + } + await linkAllBins(graph, { + extraNodePaths: opts.extraNodePaths, + optional: opts.include.optionalDependencies, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn + }); + if (currentLockfile != null && !(0, equals_1.default)(importerIds.sort(), Object.keys(filteredLockfile.importers).sort())) { + Object.assign(filteredLockfile.packages, currentLockfile.packages); + } + if (!opts.ignorePackageManifest) { + await symlinkDirectDependencies({ + dedupe: Boolean(opts.dedupeDirectDeps), + directDependenciesByImporterId, + filteredLockfile, + lockfileDir, + projects: selectedProjects, + registries: opts.registries, + symlink: opts.symlink + }); } - peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; - } - function text() { - return input.substring(peg$savedPos, peg$currPos); - } - function location() { - return peg$computeLocation(peg$savedPos, peg$currPos); - } - function expected(description, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildStructuredError([peg$otherExpectation(description)], input.substring(peg$savedPos, peg$currPos), location2); - } - function error(message2, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildSimpleError(message2, location2); - } - function peg$literalExpectation(text2, ignoreCase) { - return { type: "literal", text: text2, ignoreCase }; - } - function peg$classExpectation(parts, inverted, ignoreCase) { - return { type: "class", parts, inverted, ignoreCase }; - } - function peg$anyExpectation() { - return { type: "any" }; - } - function peg$endExpectation() { - return { type: "end" }; - } - function peg$otherExpectation(description) { - return { type: "other", description }; } - function peg$computePosDetails(pos) { - var details = peg$posDetailsCache[pos], p; - if (details) { - return details; - } else { - p = pos - 1; - while (!peg$posDetailsCache[p]) { - p--; + if (opts.ignoreScripts) { + for (const { id, manifest } of selectedProjects) { + if (opts.ignoreScripts && manifest?.scripts != null && (manifest.scripts.preinstall ?? manifest.scripts.prepublish ?? manifest.scripts.install ?? manifest.scripts.postinstall ?? manifest.scripts.prepare)) { + opts.pendingBuilds.push(id); } - details = peg$posDetailsCache[p]; - details = { - line: details.line, - column: details.column + } + opts.pendingBuilds = opts.pendingBuilds.concat(depNodes.filter(({ requiresBuild }) => requiresBuild).map(({ depPath }) => depPath)); + } + if (!opts.ignoreScripts || Object.keys(opts.patchedDependencies ?? {}).length > 0) { + const directNodes = /* @__PURE__ */ new Set(); + for (const id of (0, union_1.default)(importerIds, ["."])) { + Object.values(directDependenciesByImporterId[id] ?? {}).filter((loc) => graph[loc]).forEach((loc) => { + directNodes.add(loc); + }); + } + const extraBinPaths = [...opts.extraBinPaths ?? []]; + if (opts.hoistPattern != null) { + extraBinPaths.unshift(path_1.default.join(virtualStoreDir, "node_modules/.bin")); + } + let extraEnv = opts.extraEnv; + if (opts.enablePnp) { + extraEnv = { + ...extraEnv, + ...(0, lifecycle_1.makeNodeRequireOption)(path_1.default.join(opts.lockfileDir, ".pnp.cjs")) }; - while (p < pos) { - if (input.charCodeAt(p) === 10) { - details.line++; - details.column = 1; + } + await (0, build_modules_1.buildModules)(graph, Array.from(directNodes), { + childConcurrency: opts.childConcurrency, + extraBinPaths, + extraEnv, + depsStateCache, + ignoreScripts: opts.ignoreScripts || opts.ignoreDepScripts, + hoistedLocations, + lockfileDir, + optional: opts.include.optionalDependencies, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + rawConfig: opts.rawConfig, + rootModulesDir: virtualStoreDir, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + sideEffectsCacheWrite: opts.sideEffectsCacheWrite, + storeController: opts.storeController, + unsafePerm: opts.unsafePerm, + userAgent: opts.userAgent + }); + } + const projectsToBeBuilt = (0, lockfile_utils_1.extendProjectsWithTargetDirs)(selectedProjects, wantedLockfile, { + pkgLocationsByDepPath, + virtualStoreDir + }); + if (opts.enableModulesDir !== false) { + if (!opts.ignorePackageManifest) { + await Promise.all(selectedProjects.map(async (project) => { + if (opts.nodeLinker === "hoisted" || opts.publicHoistPattern?.length && path_1.default.relative(opts.lockfileDir, project.rootDir) === "") { + await linkBinsOfImporter(project, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); } else { - details.column++; + const directPkgDirs = Object.values(directDependenciesByImporterId[project.id]); + await (0, link_bins_1.linkBinsOfPackages)((await Promise.all(directPkgDirs.map(async (dir) => ({ + location: dir, + manifest: await (0, read_project_manifest_1.safeReadProjectManifestOnly)(dir) + })))).filter(({ manifest }) => manifest != null), project.binsDir, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); } - p++; - } - peg$posDetailsCache[pos] = details; - return details; + })); } - } - function peg$computeLocation(startPos, endPos) { - var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); - return { - start: { - offset: startPos, - line: startPosDetails.line, - column: startPosDetails.column - }, - end: { - offset: endPos, - line: endPosDetails.line, - column: endPosDetails.column + const injectedDeps = {}; + for (const project of projectsToBeBuilt) { + if (project.targetDirs.length > 0) { + injectedDeps[project.id] = project.targetDirs.map((targetDir) => path_1.default.relative(opts.lockfileDir, targetDir)); } - }; - } - function peg$fail(expected2) { - if (peg$currPos < peg$maxFailPos) { - return; } - if (peg$currPos > peg$maxFailPos) { - peg$maxFailPos = peg$currPos; - peg$maxFailExpected = []; + await (0, modules_yaml_1.writeModulesManifest)(rootModulesDir, { + hoistedDependencies: newHoistedDependencies, + hoistPattern: opts.hoistPattern, + included: opts.include, + injectedDeps, + layoutVersion: constants_1.LAYOUT_VERSION, + hoistedLocations, + nodeLinker: opts.nodeLinker, + packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, + pendingBuilds: opts.pendingBuilds, + publicHoistPattern: opts.publicHoistPattern, + prunedAt: opts.pruneVirtualStore === true || opts.prunedAt == null ? (/* @__PURE__ */ new Date()).toUTCString() : opts.prunedAt, + registries: opts.registries, + skipped: Array.from(skipped), + storeDir: opts.storeDir, + virtualStoreDir + }); + if (opts.useLockfile) { + await (0, lockfile_file_1.writeLockfiles)({ + wantedLockfileDir: opts.lockfileDir, + currentLockfileDir: virtualStoreDir, + wantedLockfile, + currentLockfile: filteredLockfile + }); + } else { + await (0, lockfile_file_1.writeCurrentLockfile)(virtualStoreDir, filteredLockfile); } - peg$maxFailExpected.push(expected2); } - function peg$buildSimpleError(message2, location2) { - return new peg$SyntaxError(message2, null, null, location2); + await Promise.all(depNodes.map(({ finishing }) => finishing)); + core_loggers_1.summaryLogger.debug({ prefix: lockfileDir }); + await opts.storeController.close(); + if (!opts.ignoreScripts && !opts.ignorePackageManifest) { + await (0, lifecycle_1.runLifecycleHooksConcurrently)(["preinstall", "install", "postinstall", "prepare"], projectsToBeBuilt, opts.childConcurrency ?? 5, scriptsOpts); } - function peg$buildStructuredError(expected2, found, location2) { - return new peg$SyntaxError(peg$SyntaxError.buildMessage(expected2, found), expected2, found, location2); + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.removeListener("data", reporter); } - function peg$parseStart() { - var s0, s1; - s0 = peg$currPos; - s1 = peg$parseShellLine(); - if (s1 === peg$FAILED) { - s1 = null; - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c0(s1); + } + exports2.headlessInstall = headlessInstall; + async function symlinkDirectDependencies({ filteredLockfile, dedupe, directDependenciesByImporterId, lockfileDir, projects, registries, symlink }) { + projects.forEach(({ rootDir, manifest }) => { + core_loggers_1.packageManifestLogger.debug({ + prefix: rootDir, + updated: manifest + }); + }); + if (symlink !== false) { + const importerManifestsByImporterId = {}; + for (const { id, manifest } of projects) { + importerManifestsByImporterId[id] = manifest; } - s0 = s1; - return s0; + const projectsToLink = Object.fromEntries(await Promise.all(projects.map(async ({ rootDir, id, modulesDir }) => [id, { + dir: rootDir, + modulesDir, + dependencies: await getRootPackagesToLink(filteredLockfile, { + importerId: id, + importerModulesDir: modulesDir, + lockfileDir, + projectDir: rootDir, + importerManifestsByImporterId, + registries, + rootDependencies: directDependenciesByImporterId[id] + }) + }]))); + await (0, pkg_manager_direct_dep_linker_1.linkDirectDeps)(projectsToLink, { dedupe: Boolean(dedupe) }); } - function peg$parseShellLine() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = peg$parseCommandLine(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - s3 = peg$parseShellLineType(); - if (s3 !== peg$FAILED) { - s4 = peg$parseShellLineThen(); - if (s4 === peg$FAILED) { - s4 = null; - } - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c1(s1, s3, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseCommandLine(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); + } + async function linkBinsOfImporter({ manifest, modulesDir, binsDir, rootDir }, { extraNodePaths, preferSymlinkedExecutables } = {}) { + const warn = (message2) => { + logger_1.logger.info({ message: message2, prefix: rootDir }); + }; + return (0, link_bins_1.linkBins)(modulesDir, binsDir, { + extraNodePaths, + allowExoticManifests: true, + preferSymlinkedExecutables, + projectManifest: manifest, + warn + }); + } + async function getRootPackagesToLink(lockfile, opts) { + const projectSnapshot = lockfile.importers[opts.importerId]; + const allDeps = { + ...projectSnapshot.devDependencies, + ...projectSnapshot.dependencies, + ...projectSnapshot.optionalDependencies + }; + return (await Promise.all(Object.entries(allDeps).map(async ([alias, ref]) => { + if (ref.startsWith("link:")) { + const isDev2 = Boolean(projectSnapshot.devDependencies?.[alias]); + const isOptional2 = Boolean(projectSnapshot.optionalDependencies?.[alias]); + const packageDir = path_1.default.join(opts.projectDir, ref.slice(5)); + const linkedPackage = await (async () => { + const importerId = (0, lockfile_file_1.getLockfileImporterId)(opts.lockfileDir, packageDir); + if (opts.importerManifestsByImporterId[importerId]) { + return opts.importerManifestsByImporterId[importerId]; } - if (s2 !== peg$FAILED) { - s3 = peg$parseShellLineType(); - if (s3 === peg$FAILED) { - s3 = null; - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c2(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + try { + return await (0, read_project_manifest_1.readProjectManifestOnly)(packageDir); + } catch (err) { + if (err["code"] !== "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") + throw err; + return { name: alias, version: "0.0.0" }; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + })(); + return { + alias, + name: linkedPackage.name, + version: linkedPackage.version, + dir: packageDir, + id: ref, + isExternalLink: true, + dependencyType: isDev2 && "dev" || isOptional2 && "optional" || "prod" + }; } - return s0; - } - function peg$parseShellLineThen() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + const dir = opts.rootDependencies[alias]; + if (!dir) { + return; } - if (s1 !== peg$FAILED) { - s2 = peg$parseShellLine(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c3(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + const isDev = Boolean(projectSnapshot.devDependencies?.[alias]); + const isOptional = Boolean(projectSnapshot.optionalDependencies?.[alias]); + const depPath = dp.refToRelative(ref, alias); + if (depPath === null) + return; + const pkgSnapshot = lockfile.packages?.[depPath]; + if (pkgSnapshot == null) + return; + const pkgId = pkgSnapshot.id ?? dp.refToAbsolute(ref, alias, opts.registries) ?? void 0; + const pkgInfo = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + return { + alias, + isExternalLink: false, + name: pkgInfo.name, + version: pkgInfo.version, + dependencyType: isDev && "dev" || isOptional && "optional" || "prod", + dir, + id: pkgId + }; + }))).filter(Boolean); + } + var limitLinking = (0, p_limit_12.default)(16); + async function linkAllPkgs(storeController, depNodes, opts) { + return Promise.all(depNodes.map(async (depNode) => { + let filesResponse; + try { + filesResponse = await depNode.fetchingFiles(); + } catch (err) { + if (depNode.optional) + return; + throw err; } - return s0; - } - function peg$parseShellLineType() { - var s0; - if (input.charCodeAt(peg$currPos) === 59) { - s0 = peg$c4; - peg$currPos++; + let sideEffectsCacheKey; + if (opts.sideEffectsCacheRead && filesResponse.sideEffects && !(0, isEmpty_1.default)(filesResponse.sideEffects)) { + sideEffectsCacheKey = (0, calc_dep_state_1.calcDepState)(opts.depGraph, opts.depsStateCache, depNode.dir, { + isBuilt: !opts.ignoreScripts && depNode.requiresBuild, + patchFileHash: depNode.patchFile?.hash + }); + } + const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, { + filesResponse, + force: opts.force, + requiresBuild: depNode.requiresBuild || depNode.patchFile != null, + sideEffectsCacheKey + }); + if (importMethod) { + core_loggers_1.progressLogger.debug({ + method: importMethod, + requester: opts.lockfileDir, + status: "imported", + to: depNode.dir + }); + } + depNode.isBuilt = isBuilt; + const selfDep = depNode.children[depNode.name]; + if (selfDep) { + const pkg = opts.depGraph[selfDep]; + if (!pkg) + return; + const targetModulesDir = path_1.default.join(depNode.modules, depNode.name, "node_modules"); + await limitLinking(async () => (0, symlink_dependency_1.symlinkDependency)(pkg.dir, targetModulesDir, depNode.name)); + } + })); + } + async function linkAllBins(depGraph, opts) { + return Promise.all(Object.values(depGraph).map(async (depNode) => limitLinking(async () => { + const childrenToLink = opts.optional ? depNode.children : (0, pickBy_1.default)((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children); + const binPath = path_1.default.join(depNode.dir, "node_modules/.bin"); + const pkgSnapshots = (0, props_1.default)(Object.values(childrenToLink), depGraph); + if (pkgSnapshots.includes(void 0)) { + await (0, link_bins_1.linkBins)(depNode.modules, binPath, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn: opts.warn + }); } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c5); - } + const pkgs = await Promise.all(pkgSnapshots.filter(({ hasBin }) => hasBin).map(async ({ dir }) => ({ + location: dir, + manifest: await (0, read_package_json_1.readPackageJsonFromDir)(dir) + }))); + await (0, link_bins_1.linkBinsOfPackages)(pkgs, binPath, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); } - return s0; - } - function peg$parseCommandLine() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = peg$parseCommandChain(); - if (s1 !== peg$FAILED) { - s2 = peg$parseCommandLineThen(); - if (s2 === peg$FAILED) { - s2 = null; + if (depNode.hasBundledDependencies) { + const bundledModules = path_1.default.join(depNode.dir, "node_modules"); + await (0, link_bins_1.linkBins)(bundledModules, binPath, { + extraNodePaths: opts.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + warn: opts.warn + }); + } + }))); + } + async function linkAllModules(depNodes, opts) { + await Promise.all(depNodes.map(async (depNode) => { + const childrenToLink = opts.optional ? depNode.children : (0, pickBy_1.default)((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children); + await Promise.all(Object.entries(childrenToLink).map(async ([alias, pkgDir]) => { + if (alias === depNode.name) { + return; } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c6(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + await limitLinking(() => (0, symlink_dependency_1.symlinkDependency)(pkgDir, depNode.modules, alias)); + })); + })); + } + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zipWith.js +var require_zipWith2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zipWith.js"(exports2, module2) { + var _curry3 = require_curry3(); + var zipWith = /* @__PURE__ */ _curry3(function zipWith2(fn2, a, b) { + var rv = []; + var idx = 0; + var len = Math.min(a.length, b.length); + while (idx < len) { + rv[idx] = fn2(a[idx], b[idx]); + idx += 1; + } + return rv; + }); + module2.exports = zipWith; + } +}); + +// ../node_modules/.pnpm/semver-utils@1.1.4/node_modules/semver-utils/semver-utils.js +var require_semver_utils = __commonJS({ + "../node_modules/.pnpm/semver-utils@1.1.4/node_modules/semver-utils/semver-utils.js"(exports2, module2) { + (function() { + "use strict"; + var reSemver = /^v?((\d+)\.(\d+)\.(\d+))(?:-([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?(?:\+([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?$/, reSemverRange = /\s*((\|\||\-)|(((?:(?:~?[<>]?)|\^?)=?)\s*(v)?([0-9]+)(\.(x|\*|[0-9]+))?(\.(x|\*|[0-9]+))?(([\-+])([a-zA-Z0-9\.-]+))?))\s*/g; + function pruned(obj) { + var o = {}; + for (var key in obj) { + if ("undefined" !== typeof obj[key]) { + o[key] = obj[key]; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; + return o; } - function peg$parseCommandLineThen() { - var s0, s1, s2, s3, s4, s5, s6; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + function stringifySemver(obj) { + var str = ""; + str += obj.major || "0"; + str += "."; + str += obj.minor || "0"; + str += "."; + str += obj.patch || "0"; + if (obj.release) { + str += "-" + obj.release; } - if (s1 !== peg$FAILED) { - s2 = peg$parseCommandLineType(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - s4 = peg$parseCommandLine(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseS(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseS(); - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c7(s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (obj.build) { + str += "+" + obj.build; } - return s0; + return str; } - function peg$parseCommandLineType() { - var s0; - if (input.substr(peg$currPos, 2) === peg$c8) { - s0 = peg$c8; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c9); + function stringifySemverRange(arr) { + var str = ""; + function stringify2(ver) { + if (ver.operator) { + str += ver.operator + " "; } - } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c10) { - s0 = peg$c10; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c11); - } + if (ver.major) { + str += ver.toString() + " "; } } - return s0; + arr.forEach(stringify2); + return str.trim(); } - function peg$parseCommandChain() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = peg$parseCommand(); - if (s1 !== peg$FAILED) { - s2 = peg$parseCommandChainThen(); - if (s2 === peg$FAILED) { - s2 = null; - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c12(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + function SemVer(obj) { + if (!obj) { + return; } - return s0; + var me = this; + Object.keys(obj).forEach(function(key) { + me[key] = obj[key]; + }); } - function peg$parseCommandChainThen() { - var s0, s1, s2, s3, s4, s5, s6; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + SemVer.prototype.toString = function() { + return stringifySemver(this); + }; + function parseSemver(version2) { + var m = reSemver.exec(version2) || [], ver = new SemVer(pruned({ + semver: m[0], + version: m[1], + major: m[2], + minor: m[3], + patch: m[4], + release: m[5], + build: m[6] + })); + if (0 === m.length) { + ver = null; } - if (s1 !== peg$FAILED) { - s2 = peg$parseCommandChainType(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - s4 = peg$parseCommandChain(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseS(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseS(); - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c13(s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + return ver; + } + function parseSemverRange(str) { + var m, arr = [], obj; + while (m = reSemverRange.exec(str)) { + obj = { + semver: m[3], + operator: m[4] || m[2], + major: m[6], + minor: m[8], + patch: m[10] + }; + if ("+" === m[12]) { + obj.build = m[13]; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if ("-" === m[12]) { + obj.release = m[13]; + } + arr.push(new SemVer(pruned(obj))); } - return s0; + return arr; } - function peg$parseCommandChainType() { - var s0; - if (input.substr(peg$currPos, 2) === peg$c14) { - s0 = peg$c14; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c15); - } + module2.exports.parse = parseSemver; + module2.exports.stringify = stringifySemver; + module2.exports.parseRange = parseSemverRange; + module2.exports.stringifyRange = stringifySemverRange; + })(); + } +}); + +// ../packages/which-version-is-pinned/lib/index.js +var require_lib132 = __commonJS({ + "../packages/which-version-is-pinned/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.whichVersionIsPinned = void 0; + var semver_utils_1 = require_semver_utils(); + function whichVersionIsPinned(spec) { + const isWorkspaceProtocol = spec.startsWith("workspace:"); + if (isWorkspaceProtocol) + spec = spec.slice("workspace:".length); + if (spec === "*") + return isWorkspaceProtocol ? "patch" : "none"; + if (spec.startsWith("npm:")) { + const index = spec.lastIndexOf("@"); + spec = spec.slice(index + 1); + } + const parsedRange = (0, semver_utils_1.parseRange)(spec); + if (parsedRange.length !== 1) + return void 0; + const versionObject = parsedRange[0]; + switch (versionObject.operator) { + case "~": + return "minor"; + case "^": + return "major"; + case void 0: + if (versionObject.patch) + return "patch"; + if (versionObject.minor) + return "minor"; + } + return void 0; + } + exports2.whichVersionIsPinned = whichVersionIsPinned; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/getWantedDependencies.js +var require_getWantedDependencies = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/getWantedDependencies.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getWantedDependencies = void 0; + var manifest_utils_1 = require_lib26(); + var which_version_is_pinned_1 = require_lib132(); + function getWantedDependencies(pkg, opts) { + let depsToInstall = (0, manifest_utils_1.filterDependenciesByType)(pkg, opts?.includeDirect ?? { + dependencies: true, + devDependencies: true, + optionalDependencies: true + }); + if (opts?.autoInstallPeers) { + depsToInstall = { + ...pkg.peerDependencies, + ...depsToInstall + }; + } + return getWantedDependenciesFromGivenSet(depsToInstall, { + dependencies: pkg.dependencies ?? {}, + devDependencies: pkg.devDependencies ?? {}, + optionalDependencies: pkg.optionalDependencies ?? {}, + dependenciesMeta: pkg.dependenciesMeta ?? {}, + peerDependencies: pkg.peerDependencies ?? {}, + updatePref: opts?.updateWorkspaceDependencies === true ? updateWorkspacePref : (pref) => pref + }); + } + exports2.getWantedDependencies = getWantedDependencies; + function updateWorkspacePref(pref) { + return pref.startsWith("workspace:") ? "workspace:*" : pref; + } + function getWantedDependenciesFromGivenSet(deps, opts) { + if (!deps) + return []; + return Object.entries(deps).map(([alias, pref]) => { + const updatedPref = opts.updatePref(pref); + let depType; + if (opts.optionalDependencies[alias] != null) + depType = "optional"; + else if (opts.dependencies[alias] != null) + depType = "prod"; + else if (opts.devDependencies[alias] != null) + depType = "dev"; + else if (opts.peerDependencies[alias] != null) + depType = "prod"; + return { + alias, + dev: depType === "dev", + injected: opts.dependenciesMeta[alias]?.injected, + optional: depType === "optional", + nodeExecPath: opts.nodeExecPath ?? opts.dependenciesMeta[alias]?.node, + pinnedVersion: (0, which_version_is_pinned_1.whichVersionIsPinned)(pref), + pref: updatedPref, + raw: `${alias}@${pref}` + }; + }); + } + } +}); + +// ../pkg-manager/resolve-dependencies/lib/depPathToRef.js +var require_depPathToRef = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/depPathToRef.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.depPathToRef = void 0; + var dependency_path_1 = require_lib81(); + var encode_registry_1 = __importDefault4(require_encode_registry()); + function depPathToRef(depPath, opts) { + if (opts.resolution.type) + return depPath; + const registryName = (0, encode_registry_1.default)((0, dependency_path_1.getRegistryByPackageName)(opts.registries, opts.realName)); + if (depPath.startsWith(`${registryName}/`)) { + depPath = depPath.replace(`${registryName}/`, "/"); + } + if (depPath[0] === "/" && opts.alias === opts.realName) { + const ref = depPath.replace(`/${opts.realName}/`, ""); + if (!ref.includes("/") || !ref.replace(/(\([^)]+\))+$/, "").includes("/")) + return ref; + } + return depPath; + } + exports2.depPathToRef = depPathToRef; + } +}); + +// ../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/shams.js +var require_shams = __commonJS({ + "../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/shams.js"(exports2, module2) { + "use strict"; + module2.exports = function hasSymbols() { + if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { + return false; + } + if (typeof Symbol.iterator === "symbol") { + return true; + } + var obj = {}; + var sym = Symbol("test"); + var symObj = Object(sym); + if (typeof sym === "string") { + return false; + } + if (Object.prototype.toString.call(sym) !== "[object Symbol]") { + return false; + } + if (Object.prototype.toString.call(symObj) !== "[object Symbol]") { + return false; + } + var symVal = 42; + obj[sym] = symVal; + for (sym in obj) { + return false; + } + if (typeof Object.keys === "function" && Object.keys(obj).length !== 0) { + return false; + } + if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj).length !== 0) { + return false; + } + var syms = Object.getOwnPropertySymbols(obj); + if (syms.length !== 1 || syms[0] !== sym) { + return false; + } + if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { + return false; + } + if (typeof Object.getOwnPropertyDescriptor === "function") { + var descriptor = Object.getOwnPropertyDescriptor(obj, sym); + if (descriptor.value !== symVal || descriptor.enumerable !== true) { + return false; } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 124) { - s0 = peg$c16; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c17); - } - } + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/index.js +var require_has_symbols = __commonJS({ + "../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/index.js"(exports2, module2) { + "use strict"; + var origSymbol = typeof Symbol !== "undefined" && Symbol; + var hasSymbolSham = require_shams(); + module2.exports = function hasNativeSymbols() { + if (typeof origSymbol !== "function") { + return false; + } + if (typeof Symbol !== "function") { + return false; + } + if (typeof origSymbol("foo") !== "symbol") { + return false; + } + if (typeof Symbol("bar") !== "symbol") { + return false; + } + return hasSymbolSham(); + }; + } +}); + +// ../node_modules/.pnpm/get-intrinsic@1.2.0/node_modules/get-intrinsic/index.js +var require_get_intrinsic = __commonJS({ + "../node_modules/.pnpm/get-intrinsic@1.2.0/node_modules/get-intrinsic/index.js"(exports2, module2) { + "use strict"; + var undefined2; + var $SyntaxError = SyntaxError; + var $Function = Function; + var $TypeError = TypeError; + var getEvalledConstructor = function(expressionSyntax) { + try { + return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")(); + } catch (e) { + } + }; + var $gOPD = Object.getOwnPropertyDescriptor; + if ($gOPD) { + try { + $gOPD({}, ""); + } catch (e) { + $gOPD = null; + } + } + var throwTypeError = function() { + throw new $TypeError(); + }; + var ThrowTypeError = $gOPD ? function() { + try { + arguments.callee; + return throwTypeError; + } catch (calleeThrows) { + try { + return $gOPD(arguments, "callee").get; + } catch (gOPDthrows) { + return throwTypeError; } - return s0; } - function peg$parseVariableAssignment() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - s1 = peg$parseEnvVariable(); - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 61) { - s2 = peg$c18; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c19); - } - } - if (s2 !== peg$FAILED) { - s3 = peg$parseStrictValueArgument(); - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c20(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }() : throwTypeError; + var hasSymbols = require_has_symbols()(); + var getProto = Object.getPrototypeOf || function(x) { + return x.__proto__; + }; + var needsEval = {}; + var TypedArray = typeof Uint8Array === "undefined" ? undefined2 : getProto(Uint8Array); + var INTRINSICS = { + "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError, + "%Array%": Array, + "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer, + "%ArrayIteratorPrototype%": hasSymbols ? getProto([][Symbol.iterator]()) : undefined2, + "%AsyncFromSyncIteratorPrototype%": undefined2, + "%AsyncFunction%": needsEval, + "%AsyncGenerator%": needsEval, + "%AsyncGeneratorFunction%": needsEval, + "%AsyncIteratorPrototype%": needsEval, + "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics, + "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt, + "%BigInt64Array%": typeof BigInt64Array === "undefined" ? undefined2 : BigInt64Array, + "%BigUint64Array%": typeof BigUint64Array === "undefined" ? undefined2 : BigUint64Array, + "%Boolean%": Boolean, + "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView, + "%Date%": Date, + "%decodeURI%": decodeURI, + "%decodeURIComponent%": decodeURIComponent, + "%encodeURI%": encodeURI, + "%encodeURIComponent%": encodeURIComponent, + "%Error%": Error, + "%eval%": eval, + // eslint-disable-line no-eval + "%EvalError%": EvalError, + "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, + "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, + "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, + "%Function%": $Function, + "%GeneratorFunction%": needsEval, + "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array, + "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array, + "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array, + "%isFinite%": isFinite, + "%isNaN%": isNaN, + "%IteratorPrototype%": hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined2, + "%JSON%": typeof JSON === "object" ? JSON : undefined2, + "%Map%": typeof Map === "undefined" ? undefined2 : Map, + "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()), + "%Math%": Math, + "%Number%": Number, + "%Object%": Object, + "%parseFloat%": parseFloat, + "%parseInt%": parseInt, + "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, + "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy, + "%RangeError%": RangeError, + "%ReferenceError%": ReferenceError, + "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect, + "%RegExp%": RegExp, + "%Set%": typeof Set === "undefined" ? undefined2 : Set, + "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols ? undefined2 : getProto((/* @__PURE__ */ new Set())[Symbol.iterator]()), + "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer, + "%String%": String, + "%StringIteratorPrototype%": hasSymbols ? getProto(""[Symbol.iterator]()) : undefined2, + "%Symbol%": hasSymbols ? Symbol : undefined2, + "%SyntaxError%": $SyntaxError, + "%ThrowTypeError%": ThrowTypeError, + "%TypedArray%": TypedArray, + "%TypeError%": $TypeError, + "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array, + "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray, + "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array, + "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array, + "%URIError%": URIError, + "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, + "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, + "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet + }; + try { + null.error; + } catch (e) { + errorProto = getProto(getProto(e)); + INTRINSICS["%Error.prototype%"] = errorProto; + } + var errorProto; + var doEval = function doEval2(name) { + var value; + if (name === "%AsyncFunction%") { + value = getEvalledConstructor("async function () {}"); + } else if (name === "%GeneratorFunction%") { + value = getEvalledConstructor("function* () {}"); + } else if (name === "%AsyncGeneratorFunction%") { + value = getEvalledConstructor("async function* () {}"); + } else if (name === "%AsyncGenerator%") { + var fn2 = doEval2("%AsyncGeneratorFunction%"); + if (fn2) { + value = fn2.prototype; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseEnvVariable(); - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 61) { - s2 = peg$c18; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c19); - } - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c21(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + } else if (name === "%AsyncIteratorPrototype%") { + var gen = doEval2("%AsyncGenerator%"); + if (gen) { + value = getProto(gen.prototype); } - return s0; } - function peg$parseCommand() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); - } - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 40) { - s2 = peg$c22; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c23); - } - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - s4 = peg$parseShellLine(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseS(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseS(); - } - if (s5 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 41) { - s6 = peg$c24; - peg$currPos++; - } else { - s6 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c25); - } - } - if (s6 !== peg$FAILED) { - s7 = []; - s8 = peg$parseS(); - while (s8 !== peg$FAILED) { - s7.push(s8); - s8 = peg$parseS(); - } - if (s7 !== peg$FAILED) { - s8 = []; - s9 = peg$parseRedirectArgument(); - while (s9 !== peg$FAILED) { - s8.push(s9); - s9 = peg$parseRedirectArgument(); - } - if (s8 !== peg$FAILED) { - s9 = []; - s10 = peg$parseS(); - while (s10 !== peg$FAILED) { - s9.push(s10); - s10 = peg$parseS(); - } - if (s9 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c26(s4, s8); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + INTRINSICS[name] = value; + return value; + }; + var LEGACY_ALIASES = { + "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], + "%ArrayPrototype%": ["Array", "prototype"], + "%ArrayProto_entries%": ["Array", "prototype", "entries"], + "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], + "%ArrayProto_keys%": ["Array", "prototype", "keys"], + "%ArrayProto_values%": ["Array", "prototype", "values"], + "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], + "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], + "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], + "%BooleanPrototype%": ["Boolean", "prototype"], + "%DataViewPrototype%": ["DataView", "prototype"], + "%DatePrototype%": ["Date", "prototype"], + "%ErrorPrototype%": ["Error", "prototype"], + "%EvalErrorPrototype%": ["EvalError", "prototype"], + "%Float32ArrayPrototype%": ["Float32Array", "prototype"], + "%Float64ArrayPrototype%": ["Float64Array", "prototype"], + "%FunctionPrototype%": ["Function", "prototype"], + "%Generator%": ["GeneratorFunction", "prototype"], + "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], + "%Int8ArrayPrototype%": ["Int8Array", "prototype"], + "%Int16ArrayPrototype%": ["Int16Array", "prototype"], + "%Int32ArrayPrototype%": ["Int32Array", "prototype"], + "%JSONParse%": ["JSON", "parse"], + "%JSONStringify%": ["JSON", "stringify"], + "%MapPrototype%": ["Map", "prototype"], + "%NumberPrototype%": ["Number", "prototype"], + "%ObjectPrototype%": ["Object", "prototype"], + "%ObjProto_toString%": ["Object", "prototype", "toString"], + "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], + "%PromisePrototype%": ["Promise", "prototype"], + "%PromiseProto_then%": ["Promise", "prototype", "then"], + "%Promise_all%": ["Promise", "all"], + "%Promise_reject%": ["Promise", "reject"], + "%Promise_resolve%": ["Promise", "resolve"], + "%RangeErrorPrototype%": ["RangeError", "prototype"], + "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], + "%RegExpPrototype%": ["RegExp", "prototype"], + "%SetPrototype%": ["Set", "prototype"], + "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], + "%StringPrototype%": ["String", "prototype"], + "%SymbolPrototype%": ["Symbol", "prototype"], + "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], + "%TypedArrayPrototype%": ["TypedArray", "prototype"], + "%TypeErrorPrototype%": ["TypeError", "prototype"], + "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], + "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], + "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], + "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], + "%URIErrorPrototype%": ["URIError", "prototype"], + "%WeakMapPrototype%": ["WeakMap", "prototype"], + "%WeakSetPrototype%": ["WeakSet", "prototype"] + }; + var bind = require_function_bind(); + var hasOwn = require_src5(); + var $concat = bind.call(Function.call, Array.prototype.concat); + var $spliceApply = bind.call(Function.apply, Array.prototype.splice); + var $replace = bind.call(Function.call, String.prototype.replace); + var $strSlice = bind.call(Function.call, String.prototype.slice); + var $exec = bind.call(Function.call, RegExp.prototype.exec); + var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; + var reEscapeChar = /\\(\\)?/g; + var stringToPath = function stringToPath2(string) { + var first = $strSlice(string, 0, 1); + var last = $strSlice(string, -1); + if (first === "%" && last !== "%") { + throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`"); + } else if (last === "%" && first !== "%") { + throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`"); + } + var result2 = []; + $replace(string, rePropName, function(match, number, quote, subString) { + result2[result2.length] = quote ? $replace(subString, reEscapeChar, "$1") : number || match; + }); + return result2; + }; + var getBaseIntrinsic = function getBaseIntrinsic2(name, allowMissing) { + var intrinsicName = name; + var alias; + if (hasOwn(LEGACY_ALIASES, intrinsicName)) { + alias = LEGACY_ALIASES[intrinsicName]; + intrinsicName = "%" + alias[0] + "%"; + } + if (hasOwn(INTRINSICS, intrinsicName)) { + var value = INTRINSICS[intrinsicName]; + if (value === needsEval) { + value = doEval(intrinsicName); } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); - } - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 123) { - s2 = peg$c27; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c28); - } - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - s4 = peg$parseShellLine(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseS(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseS(); - } - if (s5 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s6 = peg$c29; - peg$currPos++; - } else { - s6 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c30); - } - } - if (s6 !== peg$FAILED) { - s7 = []; - s8 = peg$parseS(); - while (s8 !== peg$FAILED) { - s7.push(s8); - s8 = peg$parseS(); - } - if (s7 !== peg$FAILED) { - s8 = []; - s9 = peg$parseRedirectArgument(); - while (s9 !== peg$FAILED) { - s8.push(s9); - s9 = peg$parseRedirectArgument(); - } - if (s8 !== peg$FAILED) { - s9 = []; - s10 = peg$parseS(); - while (s10 !== peg$FAILED) { - s9.push(s10); - s10 = peg$parseS(); - } - if (s9 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c31(s4, s8); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseVariableAssignment(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseVariableAssignment(); - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseArgument(); - if (s5 !== peg$FAILED) { - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseArgument(); - } - } else { - s4 = peg$FAILED; - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseS(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseS(); - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c32(s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseVariableAssignment(); - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseVariableAssignment(); - } - } else { - s2 = peg$FAILED; - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c33(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } - } + if (typeof value === "undefined" && !allowMissing) { + throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!"); } - return s0; + return { + alias, + name: intrinsicName, + value + }; } - function peg$parseCommandString() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + throw new $SyntaxError("intrinsic " + name + " does not exist!"); + }; + module2.exports = function GetIntrinsic(name, allowMissing) { + if (typeof name !== "string" || name.length === 0) { + throw new $TypeError("intrinsic name must be a non-empty string"); + } + if (arguments.length > 1 && typeof allowMissing !== "boolean") { + throw new $TypeError('"allowMissing" argument must be a boolean'); + } + if ($exec(/^%?[^%]*%?$/, name) === null) { + throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); + } + var parts = stringToPath(name); + var intrinsicBaseName = parts.length > 0 ? parts[0] : ""; + var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing); + var intrinsicRealName = intrinsic.name; + var value = intrinsic.value; + var skipFurtherCaching = false; + var alias = intrinsic.alias; + if (alias) { + intrinsicBaseName = alias[0]; + $spliceApply(parts, $concat([0, 1], alias)); + } + for (var i = 1, isOwn = true; i < parts.length; i += 1) { + var part = parts[i]; + var first = $strSlice(part, 0, 1); + var last = $strSlice(part, -1); + if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) { + throw new $SyntaxError("property names with quotes must have matching quotes"); } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseValueArgument(); - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseValueArgument(); + if (part === "constructor" || !isOwn) { + skipFurtherCaching = true; + } + intrinsicBaseName += "." + part; + intrinsicRealName = "%" + intrinsicBaseName + "%"; + if (hasOwn(INTRINSICS, intrinsicRealName)) { + value = INTRINSICS[intrinsicRealName]; + } else if (value != null) { + if (!(part in value)) { + if (!allowMissing) { + throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available."); } - } else { - s2 = peg$FAILED; + return void 0; } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseS(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseS(); - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c34(s2); - s0 = s1; + if ($gOPD && i + 1 >= parts.length) { + var desc = $gOPD(value, part); + isOwn = !!desc; + if (isOwn && "get" in desc && !("originalValue" in desc.get)) { + value = desc.get; } else { - peg$currPos = s0; - s0 = peg$FAILED; + value = value[part]; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + isOwn = hasOwn(value, part); + value = value[part]; + } + if (isOwn && !skipFurtherCaching) { + INTRINSICS[intrinsicRealName] = value; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; } - function peg$parseArgument() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + return value; + }; + } +}); + +// ../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js +var require_call_bind = __commonJS({ + "../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js"(exports2, module2) { + "use strict"; + var bind = require_function_bind(); + var GetIntrinsic = require_get_intrinsic(); + var $apply = GetIntrinsic("%Function.prototype.apply%"); + var $call = GetIntrinsic("%Function.prototype.call%"); + var $reflectApply = GetIntrinsic("%Reflect.apply%", true) || bind.call($call, $apply); + var $gOPD = GetIntrinsic("%Object.getOwnPropertyDescriptor%", true); + var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); + var $max = GetIntrinsic("%Math.max%"); + if ($defineProperty) { + try { + $defineProperty({}, "a", { value: 1 }); + } catch (e) { + $defineProperty = null; + } + } + module2.exports = function callBind(originalFunction) { + var func = $reflectApply(bind, $call, arguments); + if ($gOPD && $defineProperty) { + var desc = $gOPD(func, "length"); + if (desc.configurable) { + $defineProperty( + func, + "length", + { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) } + ); } - if (s1 !== peg$FAILED) { - s2 = peg$parseRedirectArgument(); - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c35(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } + return func; + }; + var applyBind = function applyBind2() { + return $reflectApply(bind, $apply, arguments); + }; + if ($defineProperty) { + $defineProperty(module2.exports, "apply", { value: applyBind }); + } else { + module2.exports.apply = applyBind; + } + } +}); + +// ../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/isArguments.js +var require_isArguments3 = __commonJS({ + "../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/isArguments.js"(exports2, module2) { + "use strict"; + var toStr = Object.prototype.toString; + module2.exports = function isArguments(value) { + var str = toStr.call(value); + var isArgs = str === "[object Arguments]"; + if (!isArgs) { + isArgs = str !== "[object Array]" && value !== null && typeof value === "object" && typeof value.length === "number" && value.length >= 0 && toStr.call(value.callee) === "[object Function]"; + } + return isArgs; + }; + } +}); + +// ../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/implementation.js +var require_implementation3 = __commonJS({ + "../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/implementation.js"(exports2, module2) { + "use strict"; + var keysShim; + if (!Object.keys) { + has = Object.prototype.hasOwnProperty; + toStr = Object.prototype.toString; + isArgs = require_isArguments3(); + isEnumerable = Object.prototype.propertyIsEnumerable; + hasDontEnumBug = !isEnumerable.call({ toString: null }, "toString"); + hasProtoEnumBug = isEnumerable.call(function() { + }, "prototype"); + dontEnums = [ + "toString", + "toLocaleString", + "valueOf", + "hasOwnProperty", + "isPrototypeOf", + "propertyIsEnumerable", + "constructor" + ]; + equalsConstructorPrototype = function(o) { + var ctor = o.constructor; + return ctor && ctor.prototype === o; + }; + excludedKeys = { + $applicationCache: true, + $console: true, + $external: true, + $frame: true, + $frameElement: true, + $frames: true, + $innerHeight: true, + $innerWidth: true, + $onmozfullscreenchange: true, + $onmozfullscreenerror: true, + $outerHeight: true, + $outerWidth: true, + $pageXOffset: true, + $pageYOffset: true, + $parent: true, + $scrollLeft: true, + $scrollTop: true, + $scrollX: true, + $scrollY: true, + $self: true, + $webkitIndexedDB: true, + $webkitStorageInfo: true, + $window: true + }; + hasAutomationEqualityBug = function() { + if (typeof window === "undefined") { + return false; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); - } - if (s1 !== peg$FAILED) { - s2 = peg$parseValueArgument(); - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c35(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + for (var k in window) { + try { + if (!excludedKeys["$" + k] && has.call(window, k) && window[k] !== null && typeof window[k] === "object") { + try { + equalsConstructorPrototype(window[k]); + } catch (e) { + return true; + } } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } catch (e) { + return true; } } - return s0; - } - function peg$parseRedirectArgument() { - var s0, s1, s2, s3; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + return false; + }(); + equalsConstructorPrototypeIfNotBuggy = function(o) { + if (typeof window === "undefined" || !hasAutomationEqualityBug) { + return equalsConstructorPrototype(o); } - if (s1 !== peg$FAILED) { - s2 = peg$parseRedirectType(); - if (s2 !== peg$FAILED) { - s3 = peg$parseValueArgument(); - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c36(s2, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + try { + return equalsConstructorPrototype(o); + } catch (e) { + return false; + } + }; + keysShim = function keys(object) { + var isObject = object !== null && typeof object === "object"; + var isFunction = toStr.call(object) === "[object Function]"; + var isArguments = isArgs(object); + var isString = isObject && toStr.call(object) === "[object String]"; + var theKeys = []; + if (!isObject && !isFunction && !isArguments) { + throw new TypeError("Object.keys called on a non-object"); + } + var skipProto = hasProtoEnumBug && isFunction; + if (isString && object.length > 0 && !has.call(object, 0)) { + for (var i = 0; i < object.length; ++i) { + theKeys.push(String(i)); } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; - } - function peg$parseRedirectType() { - var s0; - if (input.substr(peg$currPos, 2) === peg$c37) { - s0 = peg$c37; - peg$currPos += 2; + if (isArguments && object.length > 0) { + for (var j = 0; j < object.length; ++j) { + theKeys.push(String(j)); + } } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c38); + for (var name in object) { + if (!(skipProto && name === "prototype") && has.call(object, name)) { + theKeys.push(String(name)); + } } } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c39) { - s0 = peg$c39; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c40); + if (hasDontEnumBug) { + var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); + for (var k = 0; k < dontEnums.length; ++k) { + if (!(skipConstructor && dontEnums[k] === "constructor") && has.call(object, dontEnums[k])) { + theKeys.push(dontEnums[k]); } } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 62) { - s0 = peg$c41; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c42); - } - } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c43) { - s0 = peg$c43; - peg$currPos += 3; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c44); - } - } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c45) { - s0 = peg$c45; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c46); - } - } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 60) { - s0 = peg$c47; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c48); - } - } - } - } + } + return theKeys; + }; + } + var has; + var toStr; + var isArgs; + var isEnumerable; + var hasDontEnumBug; + var hasProtoEnumBug; + var dontEnums; + var equalsConstructorPrototype; + var excludedKeys; + var hasAutomationEqualityBug; + var equalsConstructorPrototypeIfNotBuggy; + module2.exports = keysShim; + } +}); + +// ../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/index.js +var require_object_keys = __commonJS({ + "../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/index.js"(exports2, module2) { + "use strict"; + var slice = Array.prototype.slice; + var isArgs = require_isArguments3(); + var origKeys = Object.keys; + var keysShim = origKeys ? function keys(o) { + return origKeys(o); + } : require_implementation3(); + var originalKeys = Object.keys; + keysShim.shim = function shimObjectKeys() { + if (Object.keys) { + var keysWorksWithArguments = function() { + var args2 = Object.keys(arguments); + return args2 && args2.length === arguments.length; + }(1, 2); + if (!keysWorksWithArguments) { + Object.keys = function keys(object) { + if (isArgs(object)) { + return originalKeys(slice.call(object)); } - } + return originalKeys(object); + }; } - return s0; + } else { + Object.keys = keysShim; } - function peg$parseValueArgument() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseS(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseS(); + return Object.keys || keysShim; + }; + module2.exports = keysShim; + } +}); + +// ../node_modules/.pnpm/has-property-descriptors@1.0.0/node_modules/has-property-descriptors/index.js +var require_has_property_descriptors = __commonJS({ + "../node_modules/.pnpm/has-property-descriptors@1.0.0/node_modules/has-property-descriptors/index.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); + var hasPropertyDescriptors = function hasPropertyDescriptors2() { + if ($defineProperty) { + try { + $defineProperty({}, "a", { value: 1 }); + return true; + } catch (e) { + return false; } - if (s1 !== peg$FAILED) { - s2 = peg$parseStrictValueArgument(); - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c35(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } + return false; + }; + hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() { + if (!hasPropertyDescriptors()) { + return null; + } + try { + return $defineProperty([], "length", { value: 1 }).length !== 1; + } catch (e) { + return true; + } + }; + module2.exports = hasPropertyDescriptors; + } +}); + +// ../node_modules/.pnpm/define-properties@1.2.0/node_modules/define-properties/index.js +var require_define_properties = __commonJS({ + "../node_modules/.pnpm/define-properties@1.2.0/node_modules/define-properties/index.js"(exports2, module2) { + "use strict"; + var keys = require_object_keys(); + var hasSymbols = typeof Symbol === "function" && typeof Symbol("foo") === "symbol"; + var toStr = Object.prototype.toString; + var concat = Array.prototype.concat; + var origDefineProperty = Object.defineProperty; + var isFunction = function(fn2) { + return typeof fn2 === "function" && toStr.call(fn2) === "[object Function]"; + }; + var hasPropertyDescriptors = require_has_property_descriptors()(); + var supportsDescriptors = origDefineProperty && hasPropertyDescriptors; + var defineProperty = function(object, name, value, predicate) { + if (name in object) { + if (predicate === true) { + if (object[name] === value) { + return; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } else if (!isFunction(predicate) || !predicate()) { + return; } - return s0; } - function peg$parseStrictValueArgument() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseArgumentSegment(); - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseArgumentSegment(); + if (supportsDescriptors) { + origDefineProperty(object, name, { + configurable: true, + enumerable: false, + value, + writable: true + }); + } else { + object[name] = value; + } + }; + var defineProperties = function(object, map) { + var predicates = arguments.length > 2 ? arguments[2] : {}; + var props = keys(map); + if (hasSymbols) { + props = concat.call(props, Object.getOwnPropertySymbols(map)); + } + for (var i = 0; i < props.length; i += 1) { + defineProperty(object, props[i], map[props[i]], predicates[props[i]]); + } + }; + defineProperties.supportsDescriptors = !!supportsDescriptors; + module2.exports = defineProperties; + } +}); + +// ../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js +var require_callBound = __commonJS({ + "../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBind = require_call_bind(); + var $indexOf = callBind(GetIntrinsic("String.prototype.indexOf")); + module2.exports = function callBoundIntrinsic(name, allowMissing) { + var intrinsic = GetIntrinsic(name, !!allowMissing); + if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) { + return callBind(intrinsic); + } + return intrinsic; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/IsArray.js +var require_IsArray = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/IsArray.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $Array = GetIntrinsic("%Array%"); + var toStr = !$Array.isArray && require_callBound()("Object.prototype.toString"); + module2.exports = $Array.isArray || function IsArray(argument) { + return toStr(argument) === "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsArray.js +var require_IsArray2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsArray.js"(exports2, module2) { + "use strict"; + module2.exports = require_IsArray(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Call.js +var require_Call = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Call.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsArray = require_IsArray2(); + var $apply = GetIntrinsic("%Reflect.apply%", true) || callBound("Function.prototype.apply"); + module2.exports = function Call(F, V) { + var argumentsList = arguments.length > 2 ? arguments[2] : []; + if (!IsArray(argumentsList)) { + throw new $TypeError("Assertion failed: optional `argumentsList`, if provided, must be a List"); + } + return $apply(F, V, argumentsList); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsPropertyKey.js +var require_IsPropertyKey = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsPropertyKey.js"(exports2, module2) { + "use strict"; + module2.exports = function IsPropertyKey(argument) { + return typeof argument === "string" || typeof argument === "symbol"; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/5/CheckObjectCoercible.js +var require_CheckObjectCoercible = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/5/CheckObjectCoercible.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function CheckObjectCoercible(value, optMessage) { + if (value == null) { + throw new $TypeError(optMessage || "Cannot call method on " + value); + } + return value; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/RequireObjectCoercible.js +var require_RequireObjectCoercible = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/RequireObjectCoercible.js"(exports2, module2) { + "use strict"; + module2.exports = require_CheckObjectCoercible(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/ToObject.js +var require_ToObject = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/ToObject.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $Object = GetIntrinsic("%Object%"); + var RequireObjectCoercible = require_RequireObjectCoercible(); + module2.exports = function ToObject(value) { + RequireObjectCoercible(value); + return $Object(value); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetV.js +var require_GetV = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetV.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsPropertyKey = require_IsPropertyKey(); + var ToObject = require_ToObject(); + module2.exports = function GetV(V, P) { + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var O = ToObject(V); + return O[P]; + }; + } +}); + +// ../node_modules/.pnpm/is-callable@1.2.7/node_modules/is-callable/index.js +var require_is_callable = __commonJS({ + "../node_modules/.pnpm/is-callable@1.2.7/node_modules/is-callable/index.js"(exports2, module2) { + "use strict"; + var fnToStr = Function.prototype.toString; + var reflectApply = typeof Reflect === "object" && Reflect !== null && Reflect.apply; + var badArrayLike; + var isCallableMarker; + if (typeof reflectApply === "function" && typeof Object.defineProperty === "function") { + try { + badArrayLike = Object.defineProperty({}, "length", { + get: function() { + throw isCallableMarker; } - } else { - s1 = peg$FAILED; - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c49(s1); + }); + isCallableMarker = {}; + reflectApply(function() { + throw 42; + }, null, badArrayLike); + } catch (_) { + if (_ !== isCallableMarker) { + reflectApply = null; } - s0 = s1; - return s0; } - function peg$parseArgumentSegment() { - var s0, s1; - s0 = peg$currPos; - s1 = peg$parseSglQuoteString(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c50(s1); + } else { + reflectApply = null; + } + var constructorRegex = /^\s*class\b/; + var isES6ClassFn = function isES6ClassFunction(value) { + try { + var fnStr = fnToStr.call(value); + return constructorRegex.test(fnStr); + } catch (e) { + return false; + } + }; + var tryFunctionObject = function tryFunctionToStr(value) { + try { + if (isES6ClassFn(value)) { + return false; } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseDblQuoteString(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c50(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsePlainString(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c50(s1); + fnToStr.call(value); + return true; + } catch (e) { + return false; + } + }; + var toStr = Object.prototype.toString; + var objectClass = "[object Object]"; + var fnClass = "[object Function]"; + var genClass = "[object GeneratorFunction]"; + var ddaClass = "[object HTMLAllCollection]"; + var ddaClass2 = "[object HTML document.all class]"; + var ddaClass3 = "[object HTMLCollection]"; + var hasToStringTag = typeof Symbol === "function" && !!Symbol.toStringTag; + var isIE68 = !(0 in [,]); + var isDDA = function isDocumentDotAll() { + return false; + }; + if (typeof document === "object") { + all = document.all; + if (toStr.call(all) === toStr.call(document.all)) { + isDDA = function isDocumentDotAll(value) { + if ((isIE68 || !value) && (typeof value === "undefined" || typeof value === "object")) { + try { + var str = toStr.call(value); + return (str === ddaClass || str === ddaClass2 || str === ddaClass3 || str === objectClass) && value("") == null; + } catch (e) { } - s0 = s1; } + return false; + }; + } + } + var all; + module2.exports = reflectApply ? function isCallable(value) { + if (isDDA(value)) { + return true; + } + if (!value) { + return false; + } + if (typeof value !== "function" && typeof value !== "object") { + return false; + } + try { + reflectApply(value, null, badArrayLike); + } catch (e) { + if (e !== isCallableMarker) { + return false; } - return s0; } - function peg$parseSglQuoteString() { - var s0, s1, s2, s3; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 39) { - s1 = peg$c51; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c52); - } + return !isES6ClassFn(value) && tryFunctionObject(value); + } : function isCallable(value) { + if (isDDA(value)) { + return true; + } + if (!value) { + return false; + } + if (typeof value !== "function" && typeof value !== "object") { + return false; + } + if (hasToStringTag) { + return tryFunctionObject(value); + } + if (isES6ClassFn(value)) { + return false; + } + var strClass = toStr.call(value); + if (strClass !== fnClass && strClass !== genClass && !/^\[object HTML/.test(strClass)) { + return false; + } + return tryFunctionObject(value); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsCallable.js +var require_IsCallable = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsCallable.js"(exports2, module2) { + "use strict"; + module2.exports = require_is_callable(); + } +}); + +// ../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/util.inspect.js +var require_util_inspect = __commonJS({ + "../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/util.inspect.js"(exports2, module2) { + module2.exports = require("util").inspect; + } +}); + +// ../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/index.js +var require_object_inspect = __commonJS({ + "../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/index.js"(exports2, module2) { + var hasMap = typeof Map === "function" && Map.prototype; + var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, "size") : null; + var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === "function" ? mapSizeDescriptor.get : null; + var mapForEach = hasMap && Map.prototype.forEach; + var hasSet = typeof Set === "function" && Set.prototype; + var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, "size") : null; + var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === "function" ? setSizeDescriptor.get : null; + var setForEach = hasSet && Set.prototype.forEach; + var hasWeakMap = typeof WeakMap === "function" && WeakMap.prototype; + var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null; + var hasWeakSet = typeof WeakSet === "function" && WeakSet.prototype; + var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null; + var hasWeakRef = typeof WeakRef === "function" && WeakRef.prototype; + var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null; + var booleanValueOf = Boolean.prototype.valueOf; + var objectToString = Object.prototype.toString; + var functionToString = Function.prototype.toString; + var $match = String.prototype.match; + var $slice = String.prototype.slice; + var $replace = String.prototype.replace; + var $toUpperCase = String.prototype.toUpperCase; + var $toLowerCase = String.prototype.toLowerCase; + var $test = RegExp.prototype.test; + var $concat = Array.prototype.concat; + var $join = Array.prototype.join; + var $arrSlice = Array.prototype.slice; + var $floor = Math.floor; + var bigIntValueOf = typeof BigInt === "function" ? BigInt.prototype.valueOf : null; + var gOPS = Object.getOwnPropertySymbols; + var symToString = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? Symbol.prototype.toString : null; + var hasShammedSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "object"; + var toStringTag = typeof Symbol === "function" && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? "object" : "symbol") ? Symbol.toStringTag : null; + var isEnumerable = Object.prototype.propertyIsEnumerable; + var gPO = (typeof Reflect === "function" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(O) { + return O.__proto__; + } : null); + function addNumericSeparator(num, str) { + if (num === Infinity || num === -Infinity || num !== num || num && num > -1e3 && num < 1e3 || $test.call(/e/, str)) { + return str; + } + var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g; + if (typeof num === "number") { + var int = num < 0 ? -$floor(-num) : $floor(num); + if (int !== num) { + var intStr = String(int); + var dec = $slice.call(str, intStr.length + 1); + return $replace.call(intStr, sepRegex, "$&_") + "." + $replace.call($replace.call(dec, /([0-9]{3})/g, "$&_"), /_$/, ""); + } + } + return $replace.call(str, sepRegex, "$&_"); + } + var utilInspect = require_util_inspect(); + var inspectCustom = utilInspect.custom; + var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null; + module2.exports = function inspect_(obj, options, depth, seen) { + var opts = options || {}; + if (has(opts, "quoteStyle") && (opts.quoteStyle !== "single" && opts.quoteStyle !== "double")) { + throw new TypeError('option "quoteStyle" must be "single" or "double"'); + } + if (has(opts, "maxStringLength") && (typeof opts.maxStringLength === "number" ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity : opts.maxStringLength !== null)) { + throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`'); + } + var customInspect = has(opts, "customInspect") ? opts.customInspect : true; + if (typeof customInspect !== "boolean" && customInspect !== "symbol") { + throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`"); + } + if (has(opts, "indent") && opts.indent !== null && opts.indent !== " " && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)) { + throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`'); + } + if (has(opts, "numericSeparator") && typeof opts.numericSeparator !== "boolean") { + throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`'); + } + var numericSeparator = opts.numericSeparator; + if (typeof obj === "undefined") { + return "undefined"; + } + if (obj === null) { + return "null"; + } + if (typeof obj === "boolean") { + return obj ? "true" : "false"; + } + if (typeof obj === "string") { + return inspectString(obj, opts); + } + if (typeof obj === "number") { + if (obj === 0) { + return Infinity / obj > 0 ? "0" : "-0"; + } + var str = String(obj); + return numericSeparator ? addNumericSeparator(obj, str) : str; + } + if (typeof obj === "bigint") { + var bigIntStr = String(obj) + "n"; + return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr; + } + var maxDepth = typeof opts.depth === "undefined" ? 5 : opts.depth; + if (typeof depth === "undefined") { + depth = 0; + } + if (depth >= maxDepth && maxDepth > 0 && typeof obj === "object") { + return isArray(obj) ? "[Array]" : "[Object]"; + } + var indent = getIndent(opts, depth); + if (typeof seen === "undefined") { + seen = []; + } else if (indexOf(seen, obj) >= 0) { + return "[Circular]"; + } + function inspect(value, from, noIndent) { + if (from) { + seen = $arrSlice.call(seen); + seen.push(from); } - if (s1 !== peg$FAILED) { - s2 = peg$parseSglQuoteStringText(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 39) { - s3 = peg$c51; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c52); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c53(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (noIndent) { + var newOpts = { + depth: opts.depth + }; + if (has(opts, "quoteStyle")) { + newOpts.quoteStyle = opts.quoteStyle; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + return inspect_(value, newOpts, depth + 1, seen); } - return s0; + return inspect_(value, opts, depth + 1, seen); } - function peg$parseDblQuoteString() { - var s0, s1, s2, s3; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 34) { - s1 = peg$c54; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c55); - } + if (typeof obj === "function" && !isRegExp(obj)) { + var name = nameOf(obj); + var keys = arrObjKeys(obj, inspect); + return "[Function" + (name ? ": " + name : " (anonymous)") + "]" + (keys.length > 0 ? " { " + $join.call(keys, ", ") + " }" : ""); + } + if (isSymbol(obj)) { + var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\(.*\))_[^)]*$/, "$1") : symToString.call(obj); + return typeof obj === "object" && !hasShammedSymbols ? markBoxed(symString) : symString; + } + if (isElement(obj)) { + var s = "<" + $toLowerCase.call(String(obj.nodeName)); + var attrs = obj.attributes || []; + for (var i = 0; i < attrs.length; i++) { + s += " " + attrs[i].name + "=" + wrapQuotes(quote(attrs[i].value), "double", opts); } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseDblQuoteStringSegment(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseDblQuoteStringSegment(); - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 34) { - s3 = peg$c54; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c55); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c56(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + s += ">"; + if (obj.childNodes && obj.childNodes.length) { + s += "..."; } - return s0; + s += ""; + return s; } - function peg$parsePlainString() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parsePlainStringSegment(); - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsePlainStringSegment(); - } - } else { - s1 = peg$FAILED; + if (isArray(obj)) { + if (obj.length === 0) { + return "[]"; } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c56(s1); + var xs = arrObjKeys(obj, inspect); + if (indent && !singleLineValues(xs)) { + return "[" + indentedJoin(xs, indent) + "]"; } - s0 = s1; - return s0; + return "[ " + $join.call(xs, ", ") + " ]"; } - function peg$parseDblQuoteStringSegment() { - var s0, s1; - s0 = peg$currPos; - s1 = peg$parseArithmetic(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c57(s1); + if (isError(obj)) { + var parts = arrObjKeys(obj, inspect); + if (!("cause" in Error.prototype) && "cause" in obj && !isEnumerable.call(obj, "cause")) { + return "{ [" + String(obj) + "] " + $join.call($concat.call("[cause]: " + inspect(obj.cause), parts), ", ") + " }"; } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSubshell(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c58(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseVariable(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c59(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseDblQuoteStringText(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c60(s1); - } - s0 = s1; - } - } + if (parts.length === 0) { + return "[" + String(obj) + "]"; } - return s0; + return "{ [" + String(obj) + "] " + $join.call(parts, ", ") + " }"; } - function peg$parsePlainStringSegment() { - var s0, s1; - s0 = peg$currPos; - s1 = peg$parseArithmetic(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c61(s1); + if (typeof obj === "object" && customInspect) { + if (inspectSymbol && typeof obj[inspectSymbol] === "function" && utilInspect) { + return utilInspect(obj, { depth: maxDepth - depth }); + } else if (customInspect !== "symbol" && typeof obj.inspect === "function") { + return obj.inspect(); } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSubshell(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c62(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseVariable(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c63(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseGlob(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c64(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsePlainStringText(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c60(s1); - } - s0 = s1; - } - } - } + } + if (isMap(obj)) { + var mapParts = []; + if (mapForEach) { + mapForEach.call(obj, function(value, key) { + mapParts.push(inspect(key, obj, true) + " => " + inspect(value, obj)); + }); } - return s0; + return collectionOf("Map", mapSize.call(obj), mapParts, indent); } - function peg$parseSglQuoteStringText() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } + if (isSet(obj)) { + var setParts = []; + if (setForEach) { + setForEach.call(obj, function(value) { + setParts.push(inspect(value, obj)); + }); } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; + return collectionOf("Set", setSize.call(obj), setParts, indent); + } + if (isWeakMap(obj)) { + return weakCollectionOf("WeakMap"); + } + if (isWeakSet(obj)) { + return weakCollectionOf("WeakSet"); + } + if (isWeakRef(obj)) { + return weakCollectionOf("WeakRef"); + } + if (isNumber(obj)) { + return markBoxed(inspect(Number(obj))); + } + if (isBigInt(obj)) { + return markBoxed(inspect(bigIntValueOf.call(obj))); + } + if (isBoolean(obj)) { + return markBoxed(booleanValueOf.call(obj)); + } + if (isString(obj)) { + return markBoxed(inspect(String(obj))); + } + if (!isDate(obj) && !isRegExp(obj)) { + var ys = arrObjKeys(obj, inspect); + var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object; + var protoTag = obj instanceof Object ? "" : "null prototype"; + var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? "Object" : ""; + var constructorTag = isPlainObject || typeof obj.constructor !== "function" ? "" : obj.constructor.name ? obj.constructor.name + " " : ""; + var tag = constructorTag + (stringTag || protoTag ? "[" + $join.call($concat.call([], stringTag || [], protoTag || []), ": ") + "] " : ""); + if (ys.length === 0) { + return tag + "{}"; } - if (s2 === peg$FAILED) { - if (peg$c69.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c70); - } - } + if (indent) { + return tag + "{" + indentedJoin(ys, indent) + "}"; } - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - if (s2 === peg$FAILED) { - if (peg$c69.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c70); - } - } - } + return tag + "{ " + $join.call(ys, ", ") + " }"; + } + return String(obj); + }; + function wrapQuotes(s, defaultStyle, opts) { + var quoteChar = (opts.quoteStyle || defaultStyle) === "double" ? '"' : "'"; + return quoteChar + s + quoteChar; + } + function quote(s) { + return $replace.call(String(s), /"/g, """); + } + function isArray(obj) { + return toStr(obj) === "[object Array]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isDate(obj) { + return toStr(obj) === "[object Date]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isRegExp(obj) { + return toStr(obj) === "[object RegExp]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isError(obj) { + return toStr(obj) === "[object Error]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isString(obj) { + return toStr(obj) === "[object String]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isNumber(obj) { + return toStr(obj) === "[object Number]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isBoolean(obj) { + return toStr(obj) === "[object Boolean]" && (!toStringTag || !(typeof obj === "object" && toStringTag in obj)); + } + function isSymbol(obj) { + if (hasShammedSymbols) { + return obj && typeof obj === "object" && obj instanceof Symbol; + } + if (typeof obj === "symbol") { + return true; + } + if (!obj || typeof obj !== "object" || !symToString) { + return false; + } + try { + symToString.call(obj); + return true; + } catch (e) { + } + return false; + } + function isBigInt(obj) { + if (!obj || typeof obj !== "object" || !bigIntValueOf) { + return false; + } + try { + bigIntValueOf.call(obj); + return true; + } catch (e) { + } + return false; + } + var hasOwn = Object.prototype.hasOwnProperty || function(key) { + return key in this; + }; + function has(obj, key) { + return hasOwn.call(obj, key); + } + function toStr(obj) { + return objectToString.call(obj); + } + function nameOf(f) { + if (f.name) { + return f.name; + } + var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/); + if (m) { + return m[1]; + } + return null; + } + function indexOf(xs, x) { + if (xs.indexOf) { + return xs.indexOf(x); + } + for (var i = 0, l = xs.length; i < l; i++) { + if (xs[i] === x) { + return i; } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c71(s1); + } + return -1; + } + function isMap(x) { + if (!mapSize || !x || typeof x !== "object") { + return false; + } + try { + mapSize.call(x); + try { + setSize.call(x); + } catch (s) { + return true; } - s0 = s1; - return s0; + return x instanceof Map; + } catch (e) { } - function peg$parseDblQuoteStringText() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } + return false; + } + function isWeakMap(x) { + if (!weakMapHas || !x || typeof x !== "object") { + return false; + } + try { + weakMapHas.call(x, weakMapHas); + try { + weakSetHas.call(x, weakSetHas); + } catch (s) { + return true; } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; + return x instanceof WeakMap; + } catch (e) { + } + return false; + } + function isWeakRef(x) { + if (!weakRefDeref || !x || typeof x !== "object") { + return false; + } + try { + weakRefDeref.call(x); + return true; + } catch (e) { + } + return false; + } + function isSet(x) { + if (!setSize || !x || typeof x !== "object") { + return false; + } + try { + setSize.call(x); + try { + mapSize.call(x); + } catch (m) { + return true; } - if (s2 === peg$FAILED) { - if (peg$c72.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c73); - } - } + return x instanceof Set; + } catch (e) { + } + return false; + } + function isWeakSet(x) { + if (!weakSetHas || !x || typeof x !== "object") { + return false; + } + try { + weakSetHas.call(x, weakSetHas); + try { + weakMapHas.call(x, weakMapHas); + } catch (s) { + return true; } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - if (s2 === peg$FAILED) { - if (peg$c72.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c73); - } - } - } - } - } else { - s1 = peg$FAILED; + return x instanceof WeakSet; + } catch (e) { + } + return false; + } + function isElement(x) { + if (!x || typeof x !== "object") { + return false; + } + if (typeof HTMLElement !== "undefined" && x instanceof HTMLElement) { + return true; + } + return typeof x.nodeName === "string" && typeof x.getAttribute === "function"; + } + function inspectString(str, opts) { + if (str.length > opts.maxStringLength) { + var remaining = str.length - opts.maxStringLength; + var trailer = "... " + remaining + " more character" + (remaining > 1 ? "s" : ""); + return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer; + } + var s = $replace.call($replace.call(str, /(['\\])/g, "\\$1"), /[\x00-\x1f]/g, lowbyte); + return wrapQuotes(s, "single", opts); + } + function lowbyte(c) { + var n = c.charCodeAt(0); + var x = { + 8: "b", + 9: "t", + 10: "n", + 12: "f", + 13: "r" + }[n]; + if (x) { + return "\\" + x; + } + return "\\x" + (n < 16 ? "0" : "") + $toUpperCase.call(n.toString(16)); + } + function markBoxed(str) { + return "Object(" + str + ")"; + } + function weakCollectionOf(type) { + return type + " { ? }"; + } + function collectionOf(type, size, entries, indent) { + var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ", "); + return type + " (" + size + ") {" + joinedEntries + "}"; + } + function singleLineValues(xs) { + for (var i = 0; i < xs.length; i++) { + if (indexOf(xs[i], "\n") >= 0) { + return false; } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c71(s1); + } + return true; + } + function getIndent(opts, depth) { + var baseIndent; + if (opts.indent === " ") { + baseIndent = " "; + } else if (typeof opts.indent === "number" && opts.indent > 0) { + baseIndent = $join.call(Array(opts.indent + 1), " "); + } else { + return null; + } + return { + base: baseIndent, + prev: $join.call(Array(depth + 1), baseIndent) + }; + } + function indentedJoin(xs, indent) { + if (xs.length === 0) { + return ""; + } + var lineJoiner = "\n" + indent.prev + indent.base; + return lineJoiner + $join.call(xs, "," + lineJoiner) + "\n" + indent.prev; + } + function arrObjKeys(obj, inspect) { + var isArr = isArray(obj); + var xs = []; + if (isArr) { + xs.length = obj.length; + for (var i = 0; i < obj.length; i++) { + xs[i] = has(obj, i) ? inspect(obj[i], obj) : ""; } - s0 = s1; - return s0; } - function peg$parsePlainStringText() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } + var syms = typeof gOPS === "function" ? gOPS(obj) : []; + var symMap; + if (hasShammedSymbols) { + symMap = {}; + for (var k = 0; k < syms.length; k++) { + symMap["$" + syms[k]] = syms[k]; } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; + } + for (var key in obj) { + if (!has(obj, key)) { + continue; } - if (s2 === peg$FAILED) { - s2 = peg$currPos; - s3 = peg$currPos; - peg$silentFails++; - s4 = peg$parseSpecialShellChars(); - peg$silentFails--; - if (s4 === peg$FAILED) { - s3 = void 0; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } + if (isArr && String(Number(key)) === key && key < obj.length) { + continue; } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 92) { - s3 = peg$c65; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c66); - } - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - if (s2 === peg$FAILED) { - s2 = peg$currPos; - s3 = peg$currPos; - peg$silentFails++; - s4 = peg$parseSpecialShellChars(); - peg$silentFails--; - if (s4 === peg$FAILED) { - s3 = void 0; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } - } + if (hasShammedSymbols && symMap["$" + key] instanceof Symbol) { + continue; + } else if ($test.call(/[^\w$]/, key)) { + xs.push(inspect(key, obj) + ": " + inspect(obj[key], obj)); } else { - s1 = peg$FAILED; - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c71(s1); + xs.push(key + ": " + inspect(obj[key], obj)); } - s0 = s1; - return s0; } - function peg$parseArithmeticPrimary() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 45) { - s1 = peg$c74; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c75); - } - } - if (s1 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 43) { - s1 = peg$c76; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c77); - } + if (typeof gOPS === "function") { + for (var j = 0; j < syms.length; j++) { + if (isEnumerable.call(obj, syms[j])) { + xs.push("[" + inspect(syms[j]) + "]: " + inspect(obj[syms[j]], obj)); } } - if (s1 === peg$FAILED) { - s1 = null; + } + return xs; + } + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetMethod.js +var require_GetMethod = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetMethod.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var GetV = require_GetV(); + var IsCallable = require_IsCallable(); + var IsPropertyKey = require_IsPropertyKey(); + var inspect = require_object_inspect(); + module2.exports = function GetMethod(O, P) { + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var func = GetV(O, P); + if (func == null) { + return void 0; + } + if (!IsCallable(func)) { + throw new $TypeError(inspect(P) + " is not a function: " + inspect(func)); + } + return func; + }; + } +}); + +// ../node_modules/.pnpm/has-tostringtag@1.0.0/node_modules/has-tostringtag/shams.js +var require_shams2 = __commonJS({ + "../node_modules/.pnpm/has-tostringtag@1.0.0/node_modules/has-tostringtag/shams.js"(exports2, module2) { + "use strict"; + var hasSymbols = require_shams(); + module2.exports = function hasToStringTagShams() { + return hasSymbols() && !!Symbol.toStringTag; + }; + } +}); + +// ../node_modules/.pnpm/is-regex@1.1.4/node_modules/is-regex/index.js +var require_is_regex = __commonJS({ + "../node_modules/.pnpm/is-regex@1.1.4/node_modules/is-regex/index.js"(exports2, module2) { + "use strict"; + var callBound = require_callBound(); + var hasToStringTag = require_shams2()(); + var has; + var $exec; + var isRegexMarker; + var badStringifier; + if (hasToStringTag) { + has = callBound("Object.prototype.hasOwnProperty"); + $exec = callBound("RegExp.prototype.exec"); + isRegexMarker = {}; + throwRegexMarker = function() { + throw isRegexMarker; + }; + badStringifier = { + toString: throwRegexMarker, + valueOf: throwRegexMarker + }; + if (typeof Symbol.toPrimitive === "symbol") { + badStringifier[Symbol.toPrimitive] = throwRegexMarker; + } + } + var throwRegexMarker; + var $toString = callBound("Object.prototype.toString"); + var gOPD = Object.getOwnPropertyDescriptor; + var regexClass = "[object RegExp]"; + module2.exports = hasToStringTag ? function isRegex(value) { + if (!value || typeof value !== "object") { + return false; + } + var descriptor = gOPD(value, "lastIndex"); + var hasLastIndexDataProperty = descriptor && has(descriptor, "value"); + if (!hasLastIndexDataProperty) { + return false; + } + try { + $exec(value, badStringifier); + } catch (e) { + return e === isRegexMarker; + } + } : function isRegex(value) { + if (!value || typeof value !== "object" && typeof value !== "function") { + return false; + } + return $toString(value) === regexClass; + }; + } +}); + +// ../node_modules/.pnpm/safe-regex-test@1.0.0/node_modules/safe-regex-test/index.js +var require_safe_regex_test = __commonJS({ + "../node_modules/.pnpm/safe-regex-test@1.0.0/node_modules/safe-regex-test/index.js"(exports2, module2) { + "use strict"; + var callBound = require_callBound(); + var GetIntrinsic = require_get_intrinsic(); + var isRegex = require_is_regex(); + var $exec = callBound("RegExp.prototype.exec"); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function regexTester(regex) { + if (!isRegex(regex)) { + throw new $TypeError("`regex` must be a RegExp"); + } + return function test(s) { + return $exec(regex, s) !== null; + }; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/every.js +var require_every2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/every.js"(exports2, module2) { + "use strict"; + module2.exports = function every(array, predicate) { + for (var i = 0; i < array.length; i += 1) { + if (!predicate(array[i], i, array)) { + return false; } - if (s1 !== peg$FAILED) { - s2 = []; - if (peg$c78.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } - } - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - if (peg$c78.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } - } - } + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/5/Type.js +var require_Type = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/5/Type.js"(exports2, module2) { + "use strict"; + module2.exports = function Type(x) { + if (x === null) { + return "Null"; + } + if (typeof x === "undefined") { + return "Undefined"; + } + if (typeof x === "function" || typeof x === "object") { + return "Object"; + } + if (typeof x === "number") { + return "Number"; + } + if (typeof x === "boolean") { + return "Boolean"; + } + if (typeof x === "string") { + return "String"; + } + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Type.js +var require_Type2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Type.js"(exports2, module2) { + "use strict"; + var ES5Type = require_Type(); + module2.exports = function Type(x) { + if (typeof x === "symbol") { + return "Symbol"; + } + if (typeof x === "bigint") { + return "BigInt"; + } + return ES5Type(x); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Get.js +var require_Get = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/Get.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var inspect = require_object_inspect(); + var IsPropertyKey = require_IsPropertyKey(); + var Type = require_Type2(); + module2.exports = function Get(O, P) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: Type(O) is not Object"); + } + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true, got " + inspect(P)); + } + return O[P]; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/abs.js +var require_abs = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/abs.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $abs = GetIntrinsic("%Math.abs%"); + module2.exports = function abs(x) { + return $abs(x); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/floor.js +var require_floor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/floor.js"(exports2, module2) { + "use strict"; + var Type = require_Type2(); + var $floor = Math.floor; + module2.exports = function floor(x) { + if (Type(x) === "BigInt") { + return x; + } + return $floor(x); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isNaN.js +var require_isNaN = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isNaN.js"(exports2, module2) { + "use strict"; + module2.exports = Number.isNaN || function isNaN2(a) { + return a !== a; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isFinite.js +var require_isFinite = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isFinite.js"(exports2, module2) { + "use strict"; + var $isNaN = require_isNaN(); + module2.exports = function(x) { + return (typeof x === "number" || typeof x === "bigint") && !$isNaN(x) && x !== Infinity && x !== -Infinity; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsIntegralNumber.js +var require_IsIntegralNumber = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/IsIntegralNumber.js"(exports2, module2) { + "use strict"; + var abs = require_abs(); + var floor = require_floor(); + var Type = require_Type2(); + var $isNaN = require_isNaN(); + var $isFinite = require_isFinite(); + module2.exports = function IsIntegralNumber(argument) { + if (Type(argument) !== "Number" || $isNaN(argument) || !$isFinite(argument)) { + return false; + } + var absValue = abs(argument); + return floor(absValue) === absValue; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/ToString.js +var require_ToString = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/ToString.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $String = GetIntrinsic("%String%"); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function ToString(argument) { + if (typeof argument === "symbol") { + throw new $TypeError("Cannot convert a Symbol value to a string"); + } + return $String(argument); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetSubstitution.js +var require_GetSubstitution = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/GetSubstitution.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var callBound = require_callBound(); + var regexTester = require_safe_regex_test(); + var every = require_every2(); + var $charAt = callBound("String.prototype.charAt"); + var $strSlice = callBound("String.prototype.slice"); + var $indexOf = callBound("String.prototype.indexOf"); + var $parseInt = parseInt; + var isDigit = regexTester(/^[0-9]$/); + var inspect = require_object_inspect(); + var Get = require_Get(); + var IsArray = require_IsArray2(); + var IsIntegralNumber = require_IsIntegralNumber(); + var ToObject = require_ToObject(); + var ToString = require_ToString(); + var Type = require_Type2(); + var canDistinguishSparseFromUndefined = 0 in [void 0]; + var isStringOrHole = function(capture, index, arr) { + return Type(capture) === "String" || (canDistinguishSparseFromUndefined ? !(index in arr) : Type(capture) === "Undefined"); + }; + module2.exports = function GetSubstitution(matched, str, position, captures, namedCaptures, replacement) { + if (Type(matched) !== "String") { + throw new $TypeError("Assertion failed: `matched` must be a String"); + } + var matchLength = matched.length; + if (Type(str) !== "String") { + throw new $TypeError("Assertion failed: `str` must be a String"); + } + var stringLength = str.length; + if (!IsIntegralNumber(position) || position < 0 || position > stringLength) { + throw new $TypeError("Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got " + inspect(position)); + } + if (!IsArray(captures) || !every(captures, isStringOrHole)) { + throw new $TypeError("Assertion failed: `captures` must be a possibly-empty List of Strings, got " + inspect(captures)); + } + if (Type(replacement) !== "String") { + throw new $TypeError("Assertion failed: `replacement` must be a String"); + } + var tailPos = position + matchLength; + var m = captures.length; + if (Type(namedCaptures) !== "Undefined") { + namedCaptures = ToObject(namedCaptures); + } + var result2 = ""; + for (var i = 0; i < replacement.length; i += 1) { + var current = $charAt(replacement, i); + var isLast = i + 1 >= replacement.length; + var nextIsLast = i + 2 >= replacement.length; + if (current === "$" && !isLast) { + var next = $charAt(replacement, i + 1); + if (next === "$") { + result2 += "$"; + i += 1; + } else if (next === "&") { + result2 += matched; + i += 1; + } else if (next === "`") { + result2 += position === 0 ? "" : $strSlice(str, 0, position - 1); + i += 1; + } else if (next === "'") { + result2 += tailPos >= stringLength ? "" : $strSlice(str, tailPos); + i += 1; } else { - s2 = peg$FAILED; - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 46) { - s3 = peg$c80; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c81); - } - } - if (s3 !== peg$FAILED) { - s4 = []; - if (peg$c78.test(input.charAt(peg$currPos))) { - s5 = input.charAt(peg$currPos); - peg$currPos++; + var nextNext = nextIsLast ? null : $charAt(replacement, i + 2); + if (isDigit(next) && next !== "0" && (nextIsLast || !isDigit(nextNext))) { + var n = $parseInt(next, 10); + result2 += n <= m && Type(captures[n - 1]) === "Undefined" ? "" : captures[n - 1]; + i += 1; + } else if (isDigit(next) && (nextIsLast || isDigit(nextNext))) { + var nn = next + nextNext; + var nnI = $parseInt(nn, 10) - 1; + result2 += nn <= m && Type(captures[nnI]) === "Undefined" ? "" : captures[nnI]; + i += 2; + } else if (next === "<") { + if (Type(namedCaptures) === "Undefined") { + result2 += "$<"; + i += 2; } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } - } - if (s5 !== peg$FAILED) { - while (s5 !== peg$FAILED) { - s4.push(s5); - if (peg$c78.test(input.charAt(peg$currPos))) { - s5 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } + var endIndex = $indexOf(replacement, ">", i); + if (endIndex > -1) { + var groupName = $strSlice(replacement, i + "$<".length, endIndex); + var capture = Get(namedCaptures, groupName); + if (Type(capture) !== "Undefined") { + result2 += ToString(capture); } + i += ("<" + groupName + ">").length; } - } else { - s4 = peg$FAILED; - } - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c82(s1, s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + result2 += "$"; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + result2 += $charAt(replacement, i); } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 45) { - s1 = peg$c74; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c75); - } - } - if (s1 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 43) { - s1 = peg$c76; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c77); - } - } - } - if (s1 === peg$FAILED) { - s1 = null; - } - if (s1 !== peg$FAILED) { - s2 = []; - if (peg$c78.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } - } - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - if (peg$c78.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c79); - } - } - } - } else { - s2 = peg$FAILED; - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c83(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } + return result2; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/StringIndexOf.js +var require_StringIndexOf = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2022/StringIndexOf.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsIntegralNumber = require_IsIntegralNumber(); + var Type = require_Type2(); + var $slice = callBound("String.prototype.slice"); + module2.exports = function StringIndexOf(string, searchValue, fromIndex) { + if (Type(string) !== "String") { + throw new $TypeError("Assertion failed: `string` must be a String"); + } + if (Type(searchValue) !== "String") { + throw new $TypeError("Assertion failed: `searchValue` must be a String"); + } + if (!IsIntegralNumber(fromIndex) || fromIndex < 0) { + throw new $TypeError("Assertion failed: `fromIndex` must be a non-negative integer"); + } + var len = string.length; + if (searchValue === "" && fromIndex <= len) { + return fromIndex; + } + var searchLen = searchValue.length; + for (var i = fromIndex; i <= len - searchLen; i += 1) { + var candidate = $slice(string, i, i + searchLen); + if (candidate === searchValue) { + return i; + } + } + return -1; + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/implementation.js +var require_implementation4 = __commonJS({ + "../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/implementation.js"(exports2, module2) { + "use strict"; + var Call = require_Call(); + var GetMethod = require_GetMethod(); + var GetSubstitution = require_GetSubstitution(); + var IsCallable = require_IsCallable(); + var RequireObjectCoercible = require_RequireObjectCoercible(); + var ToString = require_ToString(); + var StringIndexOf = require_StringIndexOf(); + var Type = require_Type2(); + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var hasSymbols = require_has_symbols()(); + var isRegex = require_is_regex(); + var max = GetIntrinsic("%Math.max%"); + var $TypeError = GetIntrinsic("%TypeError%"); + var $push = callBound("Array.prototype.push"); + var $slice = callBound("String.prototype.slice"); + var $indexOf = callBound("String.prototype.indexOf"); + var $replace = callBound("String.prototype.replace"); + module2.exports = function replaceAll(searchValue, replaceValue) { + var O = RequireObjectCoercible(this); + var searchValueIsRegex = isRegex(searchValue); + if (searchValueIsRegex && $indexOf($slice(searchValue, searchValue.source.length + 2), "g") === -1) { + throw new TypeError("use .replace for a non-global regex. NOTE: this may be allowed in the future."); + } + if (hasSymbols && Symbol.replace) { + if (searchValue != null) { + var replacer = GetMethod(searchValue, Symbol.replace); + if (typeof replacer !== "undefined") { + return Call(replacer, searchValue, [O, replaceValue]); + } + } + } else if (searchValueIsRegex) { + return $replace(O, searchValue, replaceValue); + } + var string = ToString(O); + var searchString = ToString(searchValue); + var functionalReplace = IsCallable(replaceValue); + if (!functionalReplace) { + replaceValue = ToString(replaceValue); + } + var searchLength = searchString.length; + var advanceBy = max(1, searchLength); + var matchPositions = []; + var position = StringIndexOf(string, searchString, 0); + while (position !== -1) { + $push(matchPositions, position); + position = StringIndexOf(string, searchString, position + advanceBy); + } + var endOfLastMatch = 0; + var result2 = ""; + for (var i = 0; i < matchPositions.length; i += 1) { + var replacement; + if (functionalReplace) { + replacement = ToString(Call(replaceValue, void 0, [searchString, matchPositions[i], string])); + } else { + if (Type(replaceValue) !== "String") { + throw new $TypeError("Assertion failed: `replaceValue` should be a string at this point"); } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseVariable(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c84(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseIdentifier(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c85(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c22; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c23); - } - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - s3 = peg$parseArithmeticExpression(); - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 41) { - s5 = peg$c24; - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c25); - } - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c86(s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + var captures = []; + replacement = GetSubstitution(searchString, string, matchPositions[i], captures, void 0, replaceValue); + } + var stringSlice = $slice(string, endOfLastMatch, matchPositions[i]); + result2 += stringSlice + replacement; + endOfLastMatch = matchPositions[i] + searchLength; + } + if (endOfLastMatch < string.length) { + result2 += $slice(string, endOfLastMatch); + } + return result2; + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/polyfill.js +var require_polyfill = __commonJS({ + "../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/polyfill.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation4(); + module2.exports = function getPolyfill() { + return String.prototype.replaceAll || implementation; + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/shim.js +var require_shim = __commonJS({ + "../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/shim.js"(exports2, module2) { + "use strict"; + var define2 = require_define_properties(); + var getPolyfill = require_polyfill(); + module2.exports = function shimReplaceAll() { + var polyfill = getPolyfill(); + define2( + String.prototype, + { replaceAll: polyfill }, + { replaceAll: function() { + return String.prototype.replaceAll !== polyfill; + } } + ); + return polyfill; + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/index.js +var require_string_prototype = __commonJS({ + "../node_modules/.pnpm/string.prototype.replaceall@1.0.7/node_modules/string.prototype.replaceall/index.js"(exports2, module2) { + "use strict"; + var callBind = require_call_bind(); + var define2 = require_define_properties(); + var implementation = require_implementation4(); + var getPolyfill = require_polyfill(); + var shim = require_shim(); + var boundReplaceAll = callBind(implementation); + define2(boundReplaceAll, { + getPolyfill, + implementation, + shim + }); + module2.exports = boundReplaceAll; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/encodePkgId.js +var require_encodePkgId = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/encodePkgId.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.encodePkgId = void 0; + var string_prototype_replaceall_1 = __importDefault4(require_string_prototype()); + function encodePkgId(pkgId) { + return (0, string_prototype_replaceall_1.default)((0, string_prototype_replaceall_1.default)(pkgId, "%", "%25"), ">", "%3E"); + } + exports2.encodePkgId = encodePkgId; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/getNonDevWantedDependencies.js +var require_getNonDevWantedDependencies = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/getNonDevWantedDependencies.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNonDevWantedDependencies = void 0; + var pickBy_1 = __importDefault4(require_pickBy()); + function getNonDevWantedDependencies(pkg) { + const bd = pkg.bundleDependencies ?? pkg.bundleDependencies; + const bundledDeps = new Set(Array.isArray(bd) ? bd : []); + const filterDeps = getNotBundledDeps.bind(null, bundledDeps); + return getWantedDependenciesFromGivenSet(filterDeps({ ...pkg.optionalDependencies, ...pkg.dependencies }), { + dependenciesMeta: pkg.dependenciesMeta ?? {}, + devDependencies: {}, + optionalDependencies: pkg.optionalDependencies ?? {} + }); + } + exports2.getNonDevWantedDependencies = getNonDevWantedDependencies; + function getWantedDependenciesFromGivenSet(deps, opts) { + if (!deps) + return []; + return Object.entries(deps).map(([alias, pref]) => ({ + alias, + dev: !!opts.devDependencies[alias], + injected: opts.dependenciesMeta[alias]?.injected, + optional: !!opts.optionalDependencies[alias], + pref + })); + } + function getNotBundledDeps(bundledDeps, deps) { + return (0, pickBy_1.default)((_, depName) => !bundledDeps.has(depName), deps); + } + } +}); + +// ../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/utils.js +var require_utils16 = __commonJS({ + "../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/utils.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var semver_12 = __importDefault4(require_semver2()); + function isNotNull(value) { + return value !== null; + } + exports2.isNotNull = isNotNull; + function uniqueArray(array) { + return [...new Set(array)]; + } + exports2.uniqueArray = uniqueArray; + function isNoIncludeNull(value) { + return value.every(isNotNull); + } + exports2.isNoIncludeNull = isNoIncludeNull; + function isPrerelease(version2) { + if (version2 instanceof semver_12.default.SemVer) { + return version2.prerelease.length !== 0; + } else { + return false; + } + } + exports2.isPrerelease = isPrerelease; + function isValidOperator(comparator, operatorList) { + return operatorList.includes(comparator.operator); + } + exports2.isValidOperator = isValidOperator; + function equalComparator(comparatorA, comparatorB) { + return comparatorA.value === comparatorB.value; + } + exports2.equalComparator = equalComparator; + function comparator2versionStr(comparator) { + const compSemver = comparator.semver; + return compSemver instanceof semver_12.default.SemVer ? compSemver.version : ""; + } + exports2.comparator2versionStr = comparator2versionStr; + function isSameVersionEqualsLikeComparator(comparatorA, comparatorB) { + const compVersionA = comparator2versionStr(comparatorA); + const compVersionB = comparator2versionStr(comparatorB); + return compVersionA !== "" && compVersionB !== "" && compVersionA === compVersionB && /=|^$/.test(comparatorA.operator) && /=|^$/.test(comparatorB.operator); + } + exports2.isSameVersionEqualsLikeComparator = isSameVersionEqualsLikeComparator; + function isEqualsComparator(comparator) { + return comparator.semver instanceof semver_12.default.SemVer && isValidOperator(comparator, ["", "="]); + } + exports2.isEqualsComparator = isEqualsComparator; + function filterUniqueComparator(comparator, index, self2) { + return self2.findIndex((comp) => equalComparator(comparator, comp)) === index; + } + exports2.filterUniqueComparator = filterUniqueComparator; + function filterOperator(operatorList) { + return (comparator) => isValidOperator(comparator, operatorList); + } + exports2.filterOperator = filterOperator; + function isIntersectRanges(semverRangeList) { + return semverRangeList.every((rangeA, index, rangeList) => rangeList.slice(index + 1).every((rangeB) => rangeA.intersects(rangeB))); + } + exports2.isIntersectRanges = isIntersectRanges; + function stripSemVerPrerelease(semverVersion) { + if (!(semverVersion instanceof semver_12.default.SemVer)) { + return ""; + } + if (!semverVersion.prerelease.length) { + return semverVersion.version; + } + const newSemverVersion = new semver_12.default.SemVer(semverVersion.version, semverVersion.options); + newSemverVersion.prerelease = []; + return newSemverVersion.format(); + } + exports2.stripSemVerPrerelease = stripSemVerPrerelease; + function stripComparatorOperator(comparator) { + if (!comparator.operator) { + return comparator; + } + const versionStr = comparator2versionStr(comparator); + return new semver_12.default.Comparator(versionStr, comparator.options); + } + exports2.stripComparatorOperator = stripComparatorOperator; + function getLowerBoundComparator(comparatorList, options = {}) { + const validComparatorList = comparatorList.filter((comparator) => isValidOperator(comparator, [">", ">="]) || !(comparator.semver instanceof semver_12.default.SemVer)); + const leComparatorVersionList = comparatorList.filter(filterOperator(["<="])).map(comparator2versionStr); + if (validComparatorList.length >= 1) { + return validComparatorList.reduce((a, b) => { + const semverA = a.semver; + const semverB = b.semver; + if (!(semverA instanceof semver_12.default.SemVer)) { + if (!options.singleRange && isPrerelease(semverB) && !(b.operator === ">=" && leComparatorVersionList.some((version2) => version2 === String(semverB)))) { + return new semver_12.default.Comparator(`>=${stripSemVerPrerelease(semverB)}`, b.options); + } + return b; + } else if (!(semverB instanceof semver_12.default.SemVer)) { + if (!options.singleRange && isPrerelease(semverA) && !(a.operator === ">=" && leComparatorVersionList.some((version2) => version2 === String(semverA)))) { + return new semver_12.default.Comparator(`>=${stripSemVerPrerelease(semverA)}`, a.options); + } + return a; + } + const semverCmp = semver_12.default.compare(semverA, semverB); + if (a.operator === b.operator || semverCmp !== 0) { + if (!options.singleRange) { + const semverCmpMain = semverA.compareMain(semverB); + if (semverCmpMain !== 0 && semverA.prerelease.length && semverB.prerelease.length) { + if (semverCmpMain > 0) { + return new semver_12.default.Comparator(a.operator + stripSemVerPrerelease(semverA), a.options); } else { - peg$currPos = s0; - s0 = peg$FAILED; + return new semver_12.default.Comparator(b.operator + stripSemVerPrerelease(semverB), b.options); } } } - } - } - return s0; - } - function peg$parseArithmeticTimesExpression() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - s1 = peg$parseArithmeticPrimary(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 42) { - s3 = peg$c87; - peg$currPos++; + if (semverCmp > 0) { + return a; } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c88); - } + return b; } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - s5 = peg$parseArithmeticTimesExpression(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c89(s1, s5); - s0 = s1; + } else { + if (a.operator === ">") { + return a; + } else { + return b; + } + } + }); + } else { + return new semver_12.default.Comparator(""); + } + } + exports2.getLowerBoundComparator = getLowerBoundComparator; + function getUpperBoundComparator(comparatorList, options = {}) { + const validComparatorList = comparatorList.filter((comparator) => isValidOperator(comparator, ["<", "<="]) || !(comparator.semver instanceof semver_12.default.SemVer)); + const geComparatorVersionList = comparatorList.filter(filterOperator([">="])).map(comparator2versionStr); + if (validComparatorList.length >= 1) { + return validComparatorList.reduce((a, b) => { + const semverA = a.semver; + const semverB = b.semver; + if (!(semverA instanceof semver_12.default.SemVer)) { + if (!options.singleRange && isPrerelease(semverB) && !(b.operator === "<=" && geComparatorVersionList.some((version2) => version2 === String(semverB)))) { + return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverB)}`, b.options); + } + return b; + } else if (!(semverB instanceof semver_12.default.SemVer)) { + if (!options.singleRange && isPrerelease(semverA) && !(a.operator === "<=" && geComparatorVersionList.some((version2) => version2 === String(semverA)))) { + return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverA)}`, a.options); + } + return a; + } + const semverCmp = semver_12.default.compare(semverA, semverB); + if (a.operator === b.operator || semverCmp !== 0) { + if (!options.singleRange) { + const semverCmpMain = semverA.compareMain(semverB); + if (semverCmpMain !== 0 && semverA.prerelease.length && semverB.prerelease.length) { + if (semverCmpMain < 0) { + return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverA)}`, a.options); } else { - peg$currPos = s0; - s0 = peg$FAILED; + return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverB)}`, b.options); } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } + } + if (semverCmp < 0) { + return a; } else { - peg$currPos = s0; - s0 = peg$FAILED; + return b; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (a.operator === "<") { + return a; + } else { + return b; + } } + }); + } else { + return new semver_12.default.Comparator(""); + } + } + exports2.getUpperBoundComparator = getUpperBoundComparator; + } +}); + +// ../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/single-range.js +var require_single_range = __commonJS({ + "../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/single-range.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var semver_12 = __importDefault4(require_semver2()); + var utils_1 = require_utils16(); + var SingleVer = class { + constructor(comp) { + this.comp = comp; + } + toString() { + return this.comp.value; + } + intersect(singleRange) { + if (semver_12.default.intersects(String(this), String(singleRange))) { + return this; } else { - peg$currPos = s0; - s0 = peg$FAILED; + return null; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseArithmeticPrimary(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 47) { - s3 = peg$c90; - peg$currPos++; + } + merge(singleRange) { + if (semver_12.default.intersects(String(this), String(singleRange))) { + return singleRange; + } + return null; + } + }; + exports2.SingleVer = SingleVer; + var SingleRange = class { + constructor(lowerBound, upperBound) { + this.lowerBound = lowerBound; + this.upperBound = upperBound; + if (!lowerBound.intersects(upperBound)) { + throw new Error(`Invalid range; version range does not intersect: ${this}`); + } + } + toString() { + return [this.lowerBound.value, this.upperBound.value].filter((v) => v !== "").join(" "); + } + intersect(singleRange) { + if (semver_12.default.intersects(String(this), String(singleRange))) { + if (singleRange instanceof SingleVer) { + return singleRange; + } else { + const lowerBoundComparatorList = [ + this.lowerBound, + singleRange.lowerBound + ]; + const upperBoundComparatorList = [ + this.upperBound, + singleRange.upperBound + ]; + const lowerBound = utils_1.getLowerBoundComparator([ + ...lowerBoundComparatorList, + ...upperBoundComparatorList.filter((comparator) => comparator.semver instanceof semver_12.default.SemVer) + ]); + const upperBound = utils_1.getUpperBoundComparator([ + ...upperBoundComparatorList, + ...lowerBoundComparatorList.filter((comparator) => comparator.semver instanceof semver_12.default.SemVer) + ]); + if (utils_1.isSameVersionEqualsLikeComparator(lowerBound, upperBound)) { + return new SingleVer(utils_1.stripComparatorOperator(lowerBound)); + } + return new SingleRange(lowerBound, upperBound); + } + } else { + return null; + } + } + merge(singleRange) { + if (semver_12.default.intersects(String(this), String(singleRange))) { + if (singleRange instanceof SingleVer) { + return this; + } else { + const lowerBound = ((a, b) => { + const semverA = a.semver; + const semverB = b.semver; + if (!(semverA instanceof semver_12.default.SemVer)) { + if (utils_1.isPrerelease(semverB)) { + return null; + } + return a; + } else if (!(semverB instanceof semver_12.default.SemVer)) { + if (utils_1.isPrerelease(semverA)) { + return null; + } + return b; + } + const cmpMain = semverA.compareMain(semverB); + if (cmpMain < 0 && utils_1.isPrerelease(semverB) || cmpMain > 0 && utils_1.isPrerelease(semverA)) { + return null; + } + const semverCmp = semver_12.default.compare(semverA, semverB); + if (a.operator === b.operator || semverCmp !== 0) { + if (semverCmp < 0) { + return a; + } else { + return b; + } } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c91); + if (a.operator === ">=") { + return a; + } else { + return b; } } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); + })(this.lowerBound, singleRange.lowerBound); + const upperBound = ((a, b) => { + const semverA = a.semver; + const semverB = b.semver; + if (!(semverA instanceof semver_12.default.SemVer)) { + if (utils_1.isPrerelease(semverB)) { + return null; } - if (s4 !== peg$FAILED) { - s5 = peg$parseArithmeticTimesExpression(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c92(s1, s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + return a; + } else if (!(semverB instanceof semver_12.default.SemVer)) { + if (utils_1.isPrerelease(semverA)) { + return null; + } + return b; + } + const cmpMain = semverA.compareMain(semverB); + if (cmpMain > 0 && utils_1.isPrerelease(semverB) || cmpMain < 0 && utils_1.isPrerelease(semverA)) { + return null; + } + const semverCmp = semver_12.default.compare(semverA, semverB); + if (a.operator === b.operator || semverCmp !== 0) { + if (semverCmp > 0) { + return a; } else { - peg$currPos = s0; - s0 = peg$FAILED; + return b; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (a.operator === "<=") { + return a; + } else { + return b; + } } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + })(this.upperBound, singleRange.upperBound); + if (lowerBound && upperBound) { + return new SingleRange(lowerBound, upperBound); } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$parseArithmeticPrimary(); } } - return s0; + return null; } - function peg$parseArithmeticExpression() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - s1 = peg$parseArithmeticTimesExpression(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); + }; + exports2.SingleRange = SingleRange; + function createSingleRange(comparatorList) { + const equalsComparatorList = comparatorList.filter(utils_1.isEqualsComparator).filter(utils_1.filterUniqueComparator); + switch (equalsComparatorList.length) { + case 0: { + const lowerBound = utils_1.getLowerBoundComparator(comparatorList, { + singleRange: true + }); + const upperBound = utils_1.getUpperBoundComparator(comparatorList, { + singleRange: true + }); + if (utils_1.isSameVersionEqualsLikeComparator(lowerBound, upperBound)) { + return new SingleVer(utils_1.stripComparatorOperator(lowerBound)); } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 43) { - s3 = peg$c76; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c77); - } - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - s5 = peg$parseArithmeticExpression(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c93(s1, s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + try { + return new SingleRange(lowerBound, upperBound); + } catch (err) { + return null; + } + } + case 1: + return new SingleVer(equalsComparatorList[0]); + default: + return null; + } + } + exports2.createSingleRange = createSingleRange; + function isSingleRange(value) { + return value instanceof SingleVer || value instanceof SingleRange; + } + exports2.isSingleRange = isSingleRange; + } +}); + +// ../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/multi-range.js +var require_multi_range = __commonJS({ + "../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/multi-range.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var single_range_1 = require_single_range(); + var utils_1 = require_utils16(); + function normalizeSingleRangeList(singleRangeList) { + return singleRangeList.reduce((singleRangeList2, singleRange) => { + if (!singleRange) { + return [...singleRangeList2, singleRange]; + } + let insertFirst = false; + const removeIndexList = []; + const appendSingleRange = singleRangeList2.reduce((appendSingleRange2, insertedSingleRange, index) => { + if (insertedSingleRange && appendSingleRange2) { + const mergedSingleRange = insertedSingleRange.merge(appendSingleRange2); + if (mergedSingleRange) { + if (String(mergedSingleRange) === String(insertedSingleRange)) { + return; } else { - peg$currPos = s0; - s0 = peg$FAILED; + removeIndexList.push(index); + if (insertedSingleRange instanceof single_range_1.SingleRange && appendSingleRange2 instanceof single_range_1.SingleRange) { + insertFirst = true; + } + return mergedSingleRange; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } + } + return appendSingleRange2; + }, singleRange); + const removedSingleRangeList = singleRangeList2.filter((_, index) => !removeIndexList.includes(index)); + if (appendSingleRange) { + if (insertFirst) { + return [appendSingleRange, ...removedSingleRangeList]; } else { - peg$currPos = s0; - s0 = peg$FAILED; + return [...removedSingleRangeList, appendSingleRange]; + } + } + return removedSingleRangeList; + }, []); + } + exports2.normalizeSingleRangeList = normalizeSingleRangeList; + var MultiRange = class { + get valid() { + return this.set.length >= 1; + } + constructor(rangeList) { + if (rangeList) { + const singleRangeList = normalizeSingleRangeList(rangeList.map((singleRangeOrComparatorList) => { + if (single_range_1.isSingleRange(singleRangeOrComparatorList) || !singleRangeOrComparatorList) { + return singleRangeOrComparatorList; + } else { + return single_range_1.createSingleRange(singleRangeOrComparatorList); + } + })); + this.set = singleRangeList.filter(utils_1.isNotNull); + } else { + this.set = []; + } + } + toString() { + if (!this.valid) { + throw new Error("Invalid range"); + } + return utils_1.uniqueArray(this.set.map(String)).join(" || "); + } + intersect(multiRange) { + if (this.valid && multiRange.valid) { + const singleRangeList = this.set.map((singleRangeA) => multiRange.set.map((singleRangeB) => singleRangeA.intersect(singleRangeB))).reduce((a, b) => [...a, ...b]).filter(utils_1.isNotNull); + return new MultiRange(singleRangeList); + } else if (this.valid) { + return this; + } else if (multiRange.valid) { + return multiRange; + } else { + return new MultiRange(null); + } + } + }; + exports2.MultiRange = MultiRange; + } +}); + +// ../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/index.js +var require_dist15 = __commonJS({ + "../node_modules/.pnpm/semver-range-intersect@0.3.1/node_modules/semver-range-intersect/dist/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var semver_12 = __importDefault4(require_semver2()); + var multi_range_1 = require_multi_range(); + var utils_1 = require_utils16(); + function intersect(...ranges) { + const semverRangeList = (() => { + try { + return ranges.map((rangeStr) => new semver_12.default.Range(rangeStr)); + } catch (err) { + return null; + } + })(); + if (!semverRangeList || !utils_1.isIntersectRanges(semverRangeList)) { + return null; + } + const intersectRange = semverRangeList.map((range) => new multi_range_1.MultiRange(range.set)).reduce((multiRangeA, multiRangeB) => multiRangeA.intersect(multiRangeB), new multi_range_1.MultiRange(null)); + return intersectRange.valid ? String(intersectRange) || "*" : null; + } + exports2.intersect = intersect; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/mergePeers.js +var require_mergePeers = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/mergePeers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.safeIntersect = exports2.mergePeers = void 0; + var semver_range_intersect_1 = require_dist15(); + function mergePeers(missingPeers) { + const conflicts = []; + const intersections = {}; + for (const [peerName, ranges] of Object.entries(missingPeers)) { + if (ranges.every(({ optional }) => optional)) + continue; + if (ranges.length === 1) { + intersections[peerName] = ranges[0].wantedRange; + continue; + } + const intersection = safeIntersect(ranges.map(({ wantedRange }) => wantedRange)); + if (intersection === null) { + conflicts.push(peerName); + } else { + intersections[peerName] = intersection; + } + } + return { conflicts, intersections }; + } + exports2.mergePeers = mergePeers; + function safeIntersect(ranges) { + try { + return (0, semver_range_intersect_1.intersect)(...ranges); + } catch { + return null; + } + } + exports2.safeIntersect = safeIntersect; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/nodeIdUtils.js +var require_nodeIdUtils = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/nodeIdUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.splitNodeId = exports2.createNodeId = exports2.nodeIdContainsSequence = exports2.nodeIdContains = void 0; + function nodeIdContains(nodeId, pkgId) { + const pkgIds = splitNodeId(nodeId); + return pkgIds.includes(pkgId); + } + exports2.nodeIdContains = nodeIdContains; + function nodeIdContainsSequence(nodeId, pkgId1, pkgId2) { + const pkgIds = splitNodeId(nodeId); + pkgIds.pop(); + const pkg1Index = pkgIds.indexOf(pkgId1); + if (pkg1Index === -1) + return false; + const pkg2Index = pkgIds.lastIndexOf(pkgId2); + return pkg1Index < pkg2Index; + } + exports2.nodeIdContainsSequence = nodeIdContainsSequence; + function createNodeId(parentNodeId, pkgId) { + return `${parentNodeId}${pkgId}>`; + } + exports2.createNodeId = createNodeId; + function splitNodeId(nodeId) { + return nodeId.slice(1, -1).split(">"); + } + exports2.splitNodeId = splitNodeId; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/wantedDepIsLocallyAvailable.js +var require_wantedDepIsLocallyAvailable = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/wantedDepIsLocallyAvailable.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wantedDepIsLocallyAvailable = void 0; + var npm_resolver_1 = require_lib72(); + var semver_12 = __importDefault4(require_semver2()); + function wantedDepIsLocallyAvailable(workspacePackages, wantedDependency, opts) { + const spec = (0, npm_resolver_1.parsePref)(wantedDependency.pref, wantedDependency.alias, opts.defaultTag || "latest", opts.registry); + if (spec == null || !workspacePackages[spec.name]) + return false; + return pickMatchingLocalVersionOrNull(workspacePackages[spec.name], spec) !== null; + } + exports2.wantedDepIsLocallyAvailable = wantedDepIsLocallyAvailable; + function pickMatchingLocalVersionOrNull(versions, spec) { + const localVersions = Object.keys(versions); + switch (spec.type) { + case "tag": + return semver_12.default.maxSatisfying(localVersions, "*"); + case "version": + return versions[spec.fetchSpec] ? spec.fetchSpec : null; + case "range": + return semver_12.default.maxSatisfying(localVersions, spec.fetchSpec, true); + default: + return null; + } + } + } +}); + +// ../pkg-manager/resolve-dependencies/lib/resolveDependencies.js +var require_resolveDependencies = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/resolveDependencies.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNodeIdForLinkedLocalPkg = exports2.resolveDependencies = exports2.resolveRootDependencies = exports2.nodeIdToParents = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var pick_registry_for_package_1 = require_lib78(); + var resolver_base_1 = require_lib100(); + var dp = __importStar5(require_lib81()); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var path_exists_1 = __importDefault4(require_path_exists()); + var p_defer_1 = __importDefault4(require_p_defer2()); + var promise_share_1 = __importDefault4(require_promise_share()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var pickBy_1 = __importDefault4(require_pickBy()); + var omit_1 = __importDefault4(require_omit()); + var zipWith_1 = __importDefault4(require_zipWith2()); + var semver_12 = __importDefault4(require_semver2()); + var encodePkgId_1 = require_encodePkgId(); + var getNonDevWantedDependencies_1 = require_getNonDevWantedDependencies(); + var mergePeers_1 = require_mergePeers(); + var nodeIdUtils_1 = require_nodeIdUtils(); + var wantedDepIsLocallyAvailable_1 = require_wantedDepIsLocallyAvailable(); + var safe_promise_defer_1 = __importDefault4(require_lib45()); + var dependencyResolvedLogger = (0, logger_1.logger)("_dependency_resolved"); + function nodeIdToParents(nodeId, resolvedPackagesByDepPath) { + return (0, nodeIdUtils_1.splitNodeId)(nodeId).slice(1).map((depPath) => { + const { id, name, version: version2 } = resolvedPackagesByDepPath[depPath]; + return { id, name, version: version2 }; + }); + } + exports2.nodeIdToParents = nodeIdToParents; + async function resolveRootDependencies(ctx, importers) { + const { pkgAddressesByImportersWithoutPeers, publishedBy, time } = await resolveDependenciesOfImporters(ctx, importers); + const pkgAddressesByImporters = await Promise.all((0, zipWith_1.default)(async (importerResolutionResult, { parentPkgAliases, preferredVersions, options }) => { + const pkgAddresses = importerResolutionResult.pkgAddresses; + if (!ctx.autoInstallPeers) + return pkgAddresses; + while (true) { + for (const pkgAddress of importerResolutionResult.pkgAddresses) { + parentPkgAliases[pkgAddress.alias] = true; + } + for (const missingPeerName of Object.keys(importerResolutionResult.missingPeers ?? {})) { + parentPkgAliases[missingPeerName] = true; + } + for (const [resolvedPeerName, resolvedPeerAddress] of Object.entries(importerResolutionResult.resolvedPeers ?? {})) { + if (!parentPkgAliases[resolvedPeerName]) { + pkgAddresses.push(resolvedPeerAddress); + } + } + if (!Object.keys(importerResolutionResult.missingPeers).length) + break; + const wantedDependencies = (0, getNonDevWantedDependencies_1.getNonDevWantedDependencies)({ dependencies: importerResolutionResult.missingPeers }); + const resolveDependenciesResult = await resolveDependencies(ctx, preferredVersions, wantedDependencies, { + ...options, + parentPkgAliases, + publishedBy + }); + importerResolutionResult = { + pkgAddresses: resolveDependenciesResult.pkgAddresses, + ...filterMissingPeers(await resolveDependenciesResult.resolvingPeers, parentPkgAliases) + }; + pkgAddresses.push(...importerResolutionResult.pkgAddresses); + } + return pkgAddresses; + }, pkgAddressesByImportersWithoutPeers, importers)); + return { pkgAddressesByImporters, time }; + } + exports2.resolveRootDependencies = resolveRootDependencies; + async function resolveDependenciesOfImporters(ctx, importers) { + const extendedWantedDepsByImporters = importers.map(({ wantedDependencies, options }) => getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { + preferredDependencies: options.preferredDependencies, + prefix: options.prefix, + proceed: options.proceed || ctx.forceFullResolution, + registries: ctx.registries, + resolvedDependencies: options.resolvedDependencies + })); + const pickLowestVersion = ctx.resolutionMode === "time-based" || ctx.resolutionMode === "lowest-direct"; + const resolveResults = await Promise.all((0, zipWith_1.default)(async (extendedWantedDeps, importer) => { + const postponedResolutionsQueue = []; + const postponedPeersResolutionQueue = []; + const pkgAddresses = []; + (await Promise.all(extendedWantedDeps.map((extendedWantedDep) => resolveDependenciesOfDependency(ctx, importer.preferredVersions, { + ...importer.options, + parentPkgAliases: importer.parentPkgAliases, + pickLowestVersion: pickLowestVersion && !importer.updatePackageManifest + }, extendedWantedDep)))).forEach(({ resolveDependencyResult, postponedPeersResolution, postponedResolution }) => { + if (resolveDependencyResult) { + pkgAddresses.push(resolveDependencyResult); + } + if (postponedResolution) { + postponedResolutionsQueue.push(postponedResolution); + } + if (postponedPeersResolution) { + postponedPeersResolutionQueue.push(postponedPeersResolution); + } + }); + return { pkgAddresses, postponedResolutionsQueue, postponedPeersResolutionQueue }; + }, extendedWantedDepsByImporters, importers)); + let publishedBy; + let time; + if (ctx.resolutionMode === "time-based") { + const result2 = getPublishedByDate(resolveResults.map(({ pkgAddresses }) => pkgAddresses).flat(), ctx.wantedLockfile.time); + if (result2.publishedBy) { + publishedBy = new Date(result2.publishedBy.getTime() + 60 * 60 * 1e3); + time = result2.newTime; + } + } + const pkgAddressesByImportersWithoutPeers = await Promise.all((0, zipWith_1.default)(async (importer, { pkgAddresses, postponedResolutionsQueue, postponedPeersResolutionQueue }) => { + const newPreferredVersions = { ...importer.preferredVersions }; + const currentParentPkgAliases = {}; + for (const pkgAddress of pkgAddresses) { + if (currentParentPkgAliases[pkgAddress.alias] !== true) { + currentParentPkgAliases[pkgAddress.alias] = pkgAddress; + } + if (pkgAddress.updated) { + ctx.updatedSet.add(pkgAddress.alias); + } + const resolvedPackage = ctx.resolvedPackagesByDepPath[pkgAddress.depPath]; + if (!resolvedPackage) + continue; + if (!newPreferredVersions[resolvedPackage.name]) { + newPreferredVersions[resolvedPackage.name] = {}; + } + if (!newPreferredVersions[resolvedPackage.name][resolvedPackage.version]) { + newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = { + selectorType: "version", + weight: resolver_base_1.DIRECT_DEP_SELECTOR_WEIGHT + }; + } + } + const newParentPkgAliases = { ...importer.parentPkgAliases, ...currentParentPkgAliases }; + const postponedResolutionOpts = { + preferredVersions: newPreferredVersions, + parentPkgAliases: newParentPkgAliases, + publishedBy + }; + const childrenResults = await Promise.all(postponedResolutionsQueue.map((postponedResolution) => postponedResolution(postponedResolutionOpts))); + if (!ctx.autoInstallPeers) { + return { + missingPeers: {}, + pkgAddresses, + resolvedPeers: {} + }; + } + const postponedPeersResolution = await Promise.all(postponedPeersResolutionQueue.map((postponedMissingPeers) => postponedMissingPeers(postponedResolutionOpts.parentPkgAliases))); + const resolvedPeers = [...childrenResults, ...postponedPeersResolution].reduce((acc, { resolvedPeers: resolvedPeers2 }) => Object.assign(acc, resolvedPeers2), {}); + const allMissingPeers = mergePkgsDeps([ + ...filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers), + ...childrenResults, + ...postponedPeersResolution + ].map(({ missingPeers }) => missingPeers).filter(Boolean)); + return { + missingPeers: allMissingPeers, + pkgAddresses, + resolvedPeers + }; + }, importers, resolveResults)); + return { + pkgAddressesByImportersWithoutPeers, + publishedBy, + time + }; + } + function filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers) { + return pkgAddresses.map((pkgAddress) => ({ + ...pkgAddress, + missingPeers: (0, pickBy_1.default)((peer, peerName) => { + if (!currentParentPkgAliases[peerName]) + return true; + if (currentParentPkgAliases[peerName] !== true) { + resolvedPeers[peerName] = currentParentPkgAliases[peerName]; + } + return false; + }, pkgAddress.missingPeers ?? {}) + })); + } + function getPublishedByDate(pkgAddresses, timeFromLockfile = {}) { + const newTime = {}; + for (const pkgAddress of pkgAddresses) { + if (pkgAddress.publishedAt) { + newTime[pkgAddress.depPath] = pkgAddress.publishedAt; + } else if (timeFromLockfile[pkgAddress.depPath]) { + newTime[pkgAddress.depPath] = timeFromLockfile[pkgAddress.depPath]; + } + } + const sortedDates = Object.values(newTime).map((publishedAt) => new Date(publishedAt)).sort((d1, d2) => d1.getTime() - d2.getTime()); + return { publishedBy: sortedDates[sortedDates.length - 1], newTime }; + } + async function resolveDependencies(ctx, preferredVersions, wantedDependencies, options) { + const extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { + preferredDependencies: options.preferredDependencies, + prefix: options.prefix, + proceed: options.proceed || ctx.forceFullResolution, + registries: ctx.registries, + resolvedDependencies: options.resolvedDependencies + }); + const postponedResolutionsQueue = []; + const postponedPeersResolutionQueue = []; + const pkgAddresses = []; + (await Promise.all(extendedWantedDeps.map((extendedWantedDep) => resolveDependenciesOfDependency(ctx, preferredVersions, options, extendedWantedDep)))).forEach(({ resolveDependencyResult, postponedResolution, postponedPeersResolution }) => { + if (resolveDependencyResult) { + pkgAddresses.push(resolveDependencyResult); + } + if (postponedResolution) { + postponedResolutionsQueue.push(postponedResolution); + } + if (postponedPeersResolution) { + postponedPeersResolutionQueue.push(postponedPeersResolution); + } + }); + const newPreferredVersions = Object.create(preferredVersions); + const currentParentPkgAliases = {}; + for (const pkgAddress of pkgAddresses) { + if (currentParentPkgAliases[pkgAddress.alias] !== true) { + currentParentPkgAliases[pkgAddress.alias] = pkgAddress; + } + if (pkgAddress.updated) { + ctx.updatedSet.add(pkgAddress.alias); + } + const resolvedPackage = ctx.resolvedPackagesByDepPath[pkgAddress.depPath]; + if (!resolvedPackage) + continue; + if (!Object.prototype.hasOwnProperty.call(newPreferredVersions, resolvedPackage.name)) { + newPreferredVersions[resolvedPackage.name] = { ...preferredVersions[resolvedPackage.name] }; + } + if (!newPreferredVersions[resolvedPackage.name][resolvedPackage.version]) { + newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = "version"; + } + } + const newParentPkgAliases = { + ...options.parentPkgAliases, + ...currentParentPkgAliases + }; + const postponedResolutionOpts = { + preferredVersions: newPreferredVersions, + parentPkgAliases: newParentPkgAliases, + publishedBy: options.publishedBy + }; + const childrenResults = await Promise.all(postponedResolutionsQueue.map((postponedResolution) => postponedResolution(postponedResolutionOpts))); + if (!ctx.autoInstallPeers) { + return { + resolvingPeers: Promise.resolve({ + missingPeers: {}, + resolvedPeers: {} + }), + pkgAddresses + }; + } + return { + pkgAddresses, + resolvingPeers: startResolvingPeers({ + childrenResults, + pkgAddresses, + parentPkgAliases: options.parentPkgAliases, + currentParentPkgAliases, + postponedPeersResolutionQueue + }) + }; + } + exports2.resolveDependencies = resolveDependencies; + async function startResolvingPeers({ childrenResults, currentParentPkgAliases, parentPkgAliases, pkgAddresses, postponedPeersResolutionQueue }) { + const results = await Promise.all(postponedPeersResolutionQueue.map((postponedPeersResolution) => postponedPeersResolution(parentPkgAliases))); + const resolvedPeers = [...childrenResults, ...results].reduce((acc, { resolvedPeers: resolvedPeers2 }) => Object.assign(acc, resolvedPeers2), {}); + const allMissingPeers = mergePkgsDeps([ + ...filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers), + ...childrenResults, + ...results + ].map(({ missingPeers }) => missingPeers).filter(Boolean)); + return { + missingPeers: allMissingPeers, + resolvedPeers + }; + } + function mergePkgsDeps(pkgsDeps) { + const groupedRanges = {}; + for (const deps of pkgsDeps) { + for (const [name, range] of Object.entries(deps)) { + if (!groupedRanges[name]) { + groupedRanges[name] = []; + } + groupedRanges[name].push(range); + } + } + const mergedPkgDeps = {}; + for (const [name, ranges] of Object.entries(groupedRanges)) { + const intersection = (0, mergePeers_1.safeIntersect)(ranges); + if (intersection) { + mergedPkgDeps[name] = intersection; + } + } + return mergedPkgDeps; + } + async function resolveDependenciesOfDependency(ctx, preferredVersions, options, extendedWantedDep) { + const updateDepth = typeof extendedWantedDep.wantedDependency.updateDepth === "number" ? extendedWantedDep.wantedDependency.updateDepth : options.updateDepth; + const updateShouldContinue = options.currentDepth <= updateDepth; + const update = extendedWantedDep.infoFromLockfile?.dependencyLockfile == null || updateShouldContinue && (options.updateMatching == null || options.updateMatching(extendedWantedDep.infoFromLockfile.name)) || Boolean(ctx.workspacePackages != null && ctx.linkWorkspacePackagesDepth !== -1 && (0, wantedDepIsLocallyAvailable_1.wantedDepIsLocallyAvailable)(ctx.workspacePackages, extendedWantedDep.wantedDependency, { defaultTag: ctx.defaultTag, registry: ctx.registries.default })) || ctx.updatedSet.has(extendedWantedDep.infoFromLockfile.name); + const resolveDependencyOpts = { + currentDepth: options.currentDepth, + parentPkg: options.parentPkg, + parentPkgAliases: options.parentPkgAliases, + preferredVersions, + currentPkg: extendedWantedDep.infoFromLockfile ?? void 0, + pickLowestVersion: options.pickLowestVersion, + prefix: options.prefix, + proceed: extendedWantedDep.proceed || updateShouldContinue || ctx.updatedSet.size > 0, + publishedBy: options.publishedBy, + update, + updateDepth, + updateMatching: options.updateMatching + }; + const resolveDependencyResult = await resolveDependency(extendedWantedDep.wantedDependency, ctx, resolveDependencyOpts); + if (resolveDependencyResult == null) + return { resolveDependencyResult: null }; + if (resolveDependencyResult.isLinkedDependency) { + ctx.dependenciesTree[createNodeIdForLinkedLocalPkg(ctx.lockfileDir, resolveDependencyResult.resolution.directory)] = { + children: {}, + depth: -1, + installable: true, + resolvedPackage: { + name: resolveDependencyResult.name, + version: resolveDependencyResult.version + } + }; + return { resolveDependencyResult }; + } + if (!resolveDependencyResult.isNew) { + return { + resolveDependencyResult, + postponedPeersResolution: resolveDependencyResult.missingPeersOfChildren != null ? async (parentPkgAliases) => { + const missingPeers = await resolveDependencyResult.missingPeersOfChildren.get(); + return filterMissingPeers({ missingPeers, resolvedPeers: {} }, parentPkgAliases); + } : void 0 + }; + } + const postponedResolution = resolveChildren.bind(null, ctx, { + parentPkg: resolveDependencyResult, + dependencyLockfile: extendedWantedDep.infoFromLockfile?.dependencyLockfile, + parentDepth: options.currentDepth, + updateDepth, + prefix: options.prefix, + updateMatching: options.updateMatching + }); + return { + resolveDependencyResult, + postponedResolution: async (postponedResolutionOpts) => { + const { missingPeers, resolvedPeers } = await postponedResolution(postponedResolutionOpts); + if (resolveDependencyResult.missingPeersOfChildren) { + resolveDependencyResult.missingPeersOfChildren.resolved = true; + resolveDependencyResult.missingPeersOfChildren.resolve(missingPeers); + } + return filterMissingPeers({ missingPeers, resolvedPeers }, postponedResolutionOpts.parentPkgAliases); + } + }; + } + function createNodeIdForLinkedLocalPkg(lockfileDir, pkgDir) { + return `link:${(0, normalize_path_1.default)(path_1.default.relative(lockfileDir, pkgDir))}`; + } + exports2.createNodeIdForLinkedLocalPkg = createNodeIdForLinkedLocalPkg; + function filterMissingPeers({ missingPeers, resolvedPeers }, parentPkgAliases) { + const newMissing = {}; + for (const [peerName, peerVersion] of Object.entries(missingPeers)) { + if (parentPkgAliases[peerName]) { + if (parentPkgAliases[peerName] !== true) { + resolvedPeers[peerName] = parentPkgAliases[peerName]; } } else { - peg$currPos = s0; - s0 = peg$FAILED; + newMissing[peerName] = peerVersion; + } + } + return { + resolvedPeers, + missingPeers: newMissing + }; + } + async function resolveChildren(ctx, { parentPkg, dependencyLockfile, parentDepth, updateDepth, updateMatching, prefix }, { parentPkgAliases, preferredVersions, publishedBy }) { + const currentResolvedDependencies = dependencyLockfile != null ? { + ...dependencyLockfile.dependencies, + ...dependencyLockfile.optionalDependencies + } : void 0; + const resolvedDependencies = parentPkg.updated ? void 0 : currentResolvedDependencies; + const parentDependsOnPeer = Boolean(Object.keys(dependencyLockfile?.peerDependencies ?? parentPkg.pkg.peerDependencies ?? {}).length); + const wantedDependencies = (0, getNonDevWantedDependencies_1.getNonDevWantedDependencies)(parentPkg.pkg); + const { pkgAddresses, resolvingPeers } = await resolveDependencies(ctx, preferredVersions, wantedDependencies, { + currentDepth: parentDepth + 1, + parentPkg, + parentPkgAliases, + preferredDependencies: currentResolvedDependencies, + prefix, + // If the package is not linked, we should also gather information about its dependencies. + // After linking the package we'll need to symlink its dependencies. + proceed: !parentPkg.depIsLinked || parentDependsOnPeer, + publishedBy, + resolvedDependencies, + updateDepth, + updateMatching + }); + ctx.childrenByParentDepPath[parentPkg.depPath] = pkgAddresses.map((child) => ({ + alias: child.alias, + depPath: child.depPath + })); + ctx.dependenciesTree[parentPkg.nodeId] = { + children: pkgAddresses.reduce((chn, child) => { + chn[child.alias] = child.nodeId ?? child.pkgId; + return chn; + }, {}), + depth: parentDepth, + installable: parentPkg.installable, + resolvedPackage: ctx.resolvedPackagesByDepPath[parentPkg.depPath] + }; + return resolvingPeers; + } + function getDepsToResolve(wantedDependencies, wantedLockfile, options) { + const resolvedDependencies = options.resolvedDependencies ?? {}; + const preferredDependencies = options.preferredDependencies ?? {}; + const extendedWantedDeps = []; + let proceedAll = options.proceed; + const satisfiesWanted2Args = referenceSatisfiesWantedSpec.bind(null, { + lockfile: wantedLockfile, + prefix: options.prefix + }); + for (const wantedDependency of wantedDependencies) { + let reference = void 0; + let proceed = proceedAll; + if (wantedDependency.alias) { + const satisfiesWanted = satisfiesWanted2Args.bind(null, wantedDependency); + if (resolvedDependencies[wantedDependency.alias] && satisfiesWanted(resolvedDependencies[wantedDependency.alias])) { + reference = resolvedDependencies[wantedDependency.alias]; + } else if ( + // If dependencies that were used by the previous version of the package + // satisfy the newer version's requirements, then pnpm tries to keep + // the previous dependency. + // So for example, if foo@1.0.0 had bar@1.0.0 as a dependency + // and foo was updated to 1.1.0 which depends on bar ^1.0.0 + // then bar@1.0.0 can be reused for foo@1.1.0 + semver_12.default.validRange(wantedDependency.pref) !== null && preferredDependencies[wantedDependency.alias] && satisfiesWanted(preferredDependencies[wantedDependency.alias]) + ) { + proceed = true; + reference = preferredDependencies[wantedDependency.alias]; + } + } + const infoFromLockfile = getInfoFromLockfile(wantedLockfile, options.registries, reference, wantedDependency.alias); + if (!proceedAll && (infoFromLockfile == null || infoFromLockfile.dependencyLockfile != null && (infoFromLockfile.dependencyLockfile.peerDependencies != null || infoFromLockfile.dependencyLockfile.transitivePeerDependencies?.length))) { + proceed = true; + proceedAll = true; + for (const extendedWantedDep of extendedWantedDeps) { + if (!extendedWantedDep.proceed) { + extendedWantedDep.proceed = true; + } + } + } + extendedWantedDeps.push({ + infoFromLockfile, + proceed, + wantedDependency + }); + } + return extendedWantedDeps; + } + function referenceSatisfiesWantedSpec(opts, wantedDep, preferredRef) { + const depPath = dp.refToRelative(preferredRef, wantedDep.alias); + if (depPath === null) + return false; + const pkgSnapshot = opts.lockfile.packages?.[depPath]; + if (pkgSnapshot == null) { + logger_1.logger.warn({ + message: `Could not find preferred package ${depPath} in lockfile`, + prefix: opts.prefix + }); + return false; + } + const { version: version2 } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + return semver_12.default.satisfies(version2, wantedDep.pref, true); + } + function getInfoFromLockfile(lockfile, registries, reference, alias) { + if (!reference || !alias) { + return void 0; + } + const depPath = dp.refToRelative(reference, alias); + if (!depPath) { + return void 0; + } + let dependencyLockfile = lockfile.packages?.[depPath]; + if (dependencyLockfile != null) { + if (dependencyLockfile.peerDependencies != null && dependencyLockfile.dependencies != null) { + const dependencies = {}; + for (const [depName, ref] of Object.entries(dependencyLockfile.dependencies ?? {})) { + if (dependencyLockfile.peerDependencies[depName]) + continue; + dependencies[depName] = ref; + } + dependencyLockfile = { + ...dependencyLockfile, + dependencies + }; + } + return { + ...(0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, dependencyLockfile), + dependencyLockfile, + depPath, + pkgId: (0, lockfile_utils_1.packageIdFromSnapshot)(depPath, dependencyLockfile, registries), + // resolution may not exist if lockfile is broken, and an unexpected error will be thrown + // if resolution does not exist, return undefined so it can be autofixed later + resolution: dependencyLockfile.resolution && (0, lockfile_utils_1.pkgSnapshotToResolution)(depPath, dependencyLockfile, registries) + }; + } else { + return { + depPath, + pkgId: dp.tryGetPackageId(registries, depPath) ?? depPath + // Does it make sense to set pkgId when we're not sure? + }; + } + } + async function resolveDependency(wantedDependency, ctx, options) { + const currentPkg = options.currentPkg ?? {}; + const currentLockfileContainsTheDep = currentPkg.depPath ? Boolean(ctx.currentLockfile.packages?.[currentPkg.depPath]) : void 0; + const depIsLinked = Boolean( + // if package is not in `node_modules/.pnpm-lock.yaml` + // we can safely assume that it doesn't exist in `node_modules` + currentLockfileContainsTheDep && currentPkg.depPath && currentPkg.dependencyLockfile && await (0, path_exists_1.default)(path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(currentPkg.depPath), "node_modules", currentPkg.name, "package.json")) + ); + if (!options.update && !options.proceed && currentPkg.resolution != null && depIsLinked) { + return null; + } + let pkgResponse; + if (!options.parentPkg.installable) { + wantedDependency = { + ...wantedDependency, + optional: true + }; + } + try { + pkgResponse = await ctx.storeController.requestPackage(wantedDependency, { + alwaysTryWorkspacePackages: ctx.linkWorkspacePackagesDepth >= options.currentDepth, + currentPkg: currentPkg ? { + id: currentPkg.pkgId, + resolution: currentPkg.resolution + } : void 0, + expectedPkg: currentPkg, + defaultTag: ctx.defaultTag, + ignoreScripts: ctx.ignoreScripts, + publishedBy: options.publishedBy, + pickLowestVersion: options.pickLowestVersion, + downloadPriority: -options.currentDepth, + lockfileDir: ctx.lockfileDir, + preferredVersions: options.preferredVersions, + preferWorkspacePackages: ctx.preferWorkspacePackages, + projectDir: options.currentDepth > 0 && !wantedDependency.pref.startsWith("file:") ? ctx.lockfileDir : options.parentPkg.rootDir, + registry: wantedDependency.alias && (0, pick_registry_for_package_1.pickRegistryForPackage)(ctx.registries, wantedDependency.alias, wantedDependency.pref) || ctx.registries.default, + // Unfortunately, even when run with --lockfile-only, we need the *real* package.json + // so fetching of the tarball cannot be ever avoided. Related issue: https://github.com/pnpm/pnpm/issues/1176 + skipFetch: false, + update: options.update, + workspacePackages: ctx.workspacePackages + }); + } catch (err) { + if (wantedDependency.optional) { + core_loggers_1.skippedOptionalDependencyLogger.debug({ + details: err.toString(), + package: { + name: wantedDependency.alias, + pref: wantedDependency.pref, + version: wantedDependency.alias ? wantedDependency.pref : void 0 + }, + parents: nodeIdToParents(options.parentPkg.nodeId, ctx.resolvedPackagesByDepPath), + prefix: options.prefix, + reason: "resolution_failure" + }); + return null; + } + err.prefix = options.prefix; + err.pkgsStack = nodeIdToParents(options.parentPkg.nodeId, ctx.resolvedPackagesByDepPath); + throw err; + } + dependencyResolvedLogger.debug({ + resolution: pkgResponse.body.id, + wanted: { + dependentId: options.parentPkg.depPath, + name: wantedDependency.alias, + rawSpec: wantedDependency.pref + } + }); + pkgResponse.body.id = (0, encodePkgId_1.encodePkgId)(pkgResponse.body.id); + if (!pkgResponse.body.updated && options.currentDepth === Math.max(0, options.updateDepth) && depIsLinked && !ctx.force && !options.proceed) { + return null; + } + if (pkgResponse.body.isLocal) { + const manifest = pkgResponse.body.manifest ?? await pkgResponse.bundledManifest(); + if (!manifest) { + throw new error_1.PnpmError("MISSING_PACKAGE_JSON", `Can't install ${wantedDependency.pref}: Missing package.json file`); + } + return { + alias: wantedDependency.alias || manifest.name, + depPath: pkgResponse.body.id, + dev: wantedDependency.dev, + isLinkedDependency: true, + name: manifest.name, + normalizedPref: pkgResponse.body.normalizedPref, + optional: wantedDependency.optional, + pkgId: pkgResponse.body.id, + resolution: pkgResponse.body.resolution, + version: manifest.version + }; + } + let prepare; + let hasBin; + let pkg = await getManifestFromResponse(pkgResponse, wantedDependency); + if (!pkg.dependencies) { + pkg.dependencies = {}; + } + if (ctx.readPackageHook != null) { + pkg = await ctx.readPackageHook(pkg); + } + if (pkg.peerDependencies && pkg.dependencies) { + if (ctx.autoInstallPeers) { + pkg = { + ...pkg, + dependencies: (0, omit_1.default)(Object.keys(pkg.peerDependencies), pkg.dependencies) + }; + } else { + pkg = { + ...pkg, + dependencies: (0, omit_1.default)(Object.keys(pkg.peerDependencies).filter((peerDep) => options.parentPkgAliases[peerDep]), pkg.dependencies) + }; + } + } + if (!pkg.name) { + throw new error_1.PnpmError("MISSING_PACKAGE_NAME", `Can't install ${wantedDependency.pref}: Missing package name`); + } + let depPath = dp.relative(ctx.registries, pkg.name, pkgResponse.body.id); + const nameAndVersion = `${pkg.name}@${pkg.version}`; + const patchFile = ctx.patchedDependencies?.[nameAndVersion]; + if (patchFile) { + ctx.appliedPatches.add(nameAndVersion); + depPath += ctx.useLockfileV6 ? `(patch_hash=${patchFile.hash})` : `_${patchFile.hash}`; + } + if ((0, nodeIdUtils_1.nodeIdContainsSequence)(options.parentPkg.nodeId, options.parentPkg.depPath, depPath) || depPath === options.parentPkg.depPath) { + return null; + } + if (!options.update && currentPkg.dependencyLockfile != null && currentPkg.depPath && !pkgResponse.body.updated && // peerDependencies field is also used for transitive peer dependencies which should not be linked + // That's why we cannot omit reading package.json of such dependencies. + // This can be removed if we implement something like peerDependenciesMeta.transitive: true + currentPkg.dependencyLockfile.peerDependencies == null) { + prepare = currentPkg.dependencyLockfile.prepare === true; + hasBin = currentPkg.dependencyLockfile.hasBin === true; + pkg = { + ...(0, lockfile_utils_1.nameVerFromPkgSnapshot)(currentPkg.depPath, currentPkg.dependencyLockfile), + ...currentPkg.dependencyLockfile, + ...pkg + }; + } else { + prepare = Boolean(pkgResponse.body.resolvedVia === "git-repository" && typeof pkg.scripts?.prepare === "string"); + if (currentPkg.dependencyLockfile?.deprecated && !pkgResponse.body.updated && !pkg.deprecated) { + pkg.deprecated = currentPkg.dependencyLockfile.deprecated; + } + hasBin = Boolean((pkg.bin && !(0, isEmpty_1.default)(pkg.bin)) ?? pkg.directories?.bin); + } + if (options.currentDepth === 0 && pkgResponse.body.latest && pkgResponse.body.latest !== pkg.version) { + ctx.outdatedDependencies[pkgResponse.body.id] = pkgResponse.body.latest; + } + const nodeId = pkgIsLeaf(pkg) ? pkgResponse.body.id : (0, nodeIdUtils_1.createNodeId)(options.parentPkg.nodeId, depPath); + const parentIsInstallable = options.parentPkg.installable === void 0 || options.parentPkg.installable; + const installable = parentIsInstallable && pkgResponse.body.isInstallable !== false; + const isNew = !ctx.resolvedPackagesByDepPath[depPath]; + const parentImporterId = options.parentPkg.nodeId.substring(0, options.parentPkg.nodeId.indexOf(">", 1) + 1); + let resolveChildren2 = false; + if (isNew) { + if (pkg.deprecated && (!ctx.allowedDeprecatedVersions[pkg.name] || !semver_12.default.satisfies(pkg.version, ctx.allowedDeprecatedVersions[pkg.name]))) { + core_loggers_1.deprecationLogger.debug({ + deprecated: pkg.deprecated, + depth: options.currentDepth, + pkgId: pkgResponse.body.id, + pkgName: pkg.name, + pkgVersion: pkg.version, + prefix: options.prefix + }); + } + if (pkgResponse.body.isInstallable === false || !parentIsInstallable) { + ctx.skipped.add(pkgResponse.body.id); + } + core_loggers_1.progressLogger.debug({ + packageId: pkgResponse.body.id, + requester: ctx.lockfileDir, + status: "resolved" + }); + ctx.resolvedPackagesByDepPath[depPath] = getResolvedPackage({ + allowBuild: ctx.allowBuild, + dependencyLockfile: currentPkg.dependencyLockfile, + depPath, + force: ctx.force, + hasBin, + patchFile, + pkg, + pkgResponse, + prepare, + wantedDependency, + parentImporterId + }); + } else { + ctx.resolvedPackagesByDepPath[depPath].prod = ctx.resolvedPackagesByDepPath[depPath].prod || !wantedDependency.dev && !wantedDependency.optional; + ctx.resolvedPackagesByDepPath[depPath].dev = ctx.resolvedPackagesByDepPath[depPath].dev || wantedDependency.dev; + ctx.resolvedPackagesByDepPath[depPath].optional = ctx.resolvedPackagesByDepPath[depPath].optional && wantedDependency.optional; + if (ctx.autoInstallPeers) { + resolveChildren2 = !ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].missingPeersOfChildren.resolved && !ctx.resolvedPackagesByDepPath[depPath].parentImporterIds.has(parentImporterId); + ctx.resolvedPackagesByDepPath[depPath].parentImporterIds.add(parentImporterId); + } + if (ctx.resolvedPackagesByDepPath[depPath].fetchingFiles == null && pkgResponse.files != null) { + ctx.resolvedPackagesByDepPath[depPath].fetchingFiles = pkgResponse.files; + ctx.resolvedPackagesByDepPath[depPath].filesIndexFile = pkgResponse.filesIndexFile; + ctx.resolvedPackagesByDepPath[depPath].finishing = pkgResponse.finishing; + ctx.resolvedPackagesByDepPath[depPath].fetchingBundledManifest = pkgResponse.bundledManifest; + } + if (ctx.dependenciesTree[nodeId]) { + ctx.dependenciesTree[nodeId].depth = Math.min(ctx.dependenciesTree[nodeId].depth, options.currentDepth); + } else { + ctx.pendingNodes.push({ + alias: wantedDependency.alias || pkg.name, + depth: options.currentDepth, + installable, + nodeId, + resolvedPackage: ctx.resolvedPackagesByDepPath[depPath] + }); + } + } + const rootDir = pkgResponse.body.resolution.type === "directory" ? path_1.default.resolve(ctx.lockfileDir, pkgResponse.body.resolution.directory) : options.prefix; + let missingPeersOfChildren; + if (ctx.autoInstallPeers && !(0, nodeIdUtils_1.nodeIdContains)(options.parentPkg.nodeId, depPath)) { + if (ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id]) { + if (!options.parentPkg.nodeId.startsWith(ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].parentImporterId)) { + missingPeersOfChildren = ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].missingPeersOfChildren; + } + } else { + const p = (0, p_defer_1.default)(); + missingPeersOfChildren = { + resolve: p.resolve, + reject: p.reject, + get: (0, promise_share_1.default)(p.promise) + }; + ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id] = { + parentImporterId, + missingPeersOfChildren + }; + } + } + return { + alias: wantedDependency.alias || pkg.name, + depIsLinked, + depPath, + isNew: isNew || resolveChildren2, + nodeId, + normalizedPref: options.currentDepth === 0 ? pkgResponse.body.normalizedPref : void 0, + missingPeersOfChildren, + pkgId: pkgResponse.body.id, + rootDir, + missingPeers: getMissingPeers(pkg), + // Next fields are actually only needed when isNew = true + installable, + isLinkedDependency: void 0, + pkg, + updated: pkgResponse.body.updated, + publishedAt: pkgResponse.body.publishedAt + }; + } + async function getManifestFromResponse(pkgResponse, wantedDependency) { + const pkg = pkgResponse.body.manifest ?? await pkgResponse.bundledManifest(); + if (pkg) + return pkg; + return { + name: wantedDependency.pref.split("/").pop(), + version: "0.0.0" + }; + } + function getMissingPeers(pkg) { + const missingPeers = {}; + for (const [peerName, peerVersion] of Object.entries(pkg.peerDependencies ?? {})) { + if (!pkg.peerDependenciesMeta?.[peerName]?.optional) { + missingPeers[peerName] = peerVersion; + } + } + return missingPeers; + } + function pkgIsLeaf(pkg) { + return (0, isEmpty_1.default)(pkg.dependencies ?? {}) && (0, isEmpty_1.default)(pkg.optionalDependencies ?? {}) && (0, isEmpty_1.default)(pkg.peerDependencies ?? {}) && // Package manifests can declare peerDependenciesMeta without declaring + // peerDependencies. peerDependenciesMeta implies the later. + (0, isEmpty_1.default)(pkg.peerDependenciesMeta ?? {}); + } + function getResolvedPackage(options) { + const peerDependencies = peerDependenciesWithoutOwn(options.pkg); + const requiresBuild = options.allowBuild == null || options.allowBuild(options.pkg.name) ? options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : (0, safe_promise_defer_1.default)() : false; + return { + additionalInfo: { + bundledDependencies: options.pkg.bundledDependencies, + bundleDependencies: options.pkg.bundleDependencies, + cpu: options.pkg.cpu, + deprecated: options.pkg.deprecated, + engines: options.pkg.engines, + os: options.pkg.os, + libc: options.pkg.libc + }, + parentImporterIds: /* @__PURE__ */ new Set([options.parentImporterId]), + depPath: options.depPath, + dev: options.wantedDependency.dev, + fetchingBundledManifest: options.pkgResponse.bundledManifest, + fetchingFiles: options.pkgResponse.files, + filesIndexFile: options.pkgResponse.filesIndexFile, + finishing: options.pkgResponse.finishing, + hasBin: options.hasBin, + hasBundledDependencies: !((options.pkg.bundledDependencies ?? options.pkg.bundleDependencies) == null), + id: options.pkgResponse.body.id, + name: options.pkg.name, + optional: options.wantedDependency.optional, + optionalDependencies: new Set(Object.keys(options.pkg.optionalDependencies ?? {})), + patchFile: options.patchFile, + peerDependencies: peerDependencies ?? {}, + peerDependenciesMeta: options.pkg.peerDependenciesMeta, + prepare: options.prepare, + prod: !options.wantedDependency.dev && !options.wantedDependency.optional, + requiresBuild, + resolution: options.pkgResponse.body.resolution, + version: options.pkg.version + }; + } + function peerDependenciesWithoutOwn(pkg) { + if (pkg.peerDependencies == null && pkg.peerDependenciesMeta == null) + return pkg.peerDependencies; + const ownDeps = /* @__PURE__ */ new Set([ + ...Object.keys(pkg.dependencies ?? {}), + ...Object.keys(pkg.optionalDependencies ?? {}) + ]); + const result2 = {}; + if (pkg.peerDependencies != null) { + for (const [peerName, peerRange] of Object.entries(pkg.peerDependencies)) { + if (ownDeps.has(peerName)) + continue; + result2[peerName] = peerRange; + } + } + if (pkg.peerDependenciesMeta != null) { + for (const [peerName, peerMeta] of Object.entries(pkg.peerDependenciesMeta)) { + if (ownDeps.has(peerName) || result2[peerName] || peerMeta.optional !== true) + continue; + result2[peerName] = "*"; + } + } + if ((0, isEmpty_1.default)(result2)) + return void 0; + return result2; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zipObj.js +var require_zipObj = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zipObj.js"(exports2, module2) { + var _curry2 = require_curry2(); + var zipObj = /* @__PURE__ */ _curry2(function zipObj2(keys, values) { + var idx = 0; + var len = Math.min(keys.length, values.length); + var out = {}; + while (idx < len) { + out[keys[idx]] = values[idx]; + idx += 1; + } + return out; + }); + module2.exports = zipObj; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/resolveDependencyTree.js +var require_resolveDependencyTree = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/resolveDependencyTree.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveDependencyTree = void 0; + var partition_1 = __importDefault4(require_partition4()); + var zipObj_1 = __importDefault4(require_zipObj()); + var nodeIdUtils_1 = require_nodeIdUtils(); + var resolveDependencies_1 = require_resolveDependencies(); + __exportStar4(require_nodeIdUtils(), exports2); + async function resolveDependencyTree(importers, opts) { + const wantedToBeSkippedPackageIds = /* @__PURE__ */ new Set(); + const ctx = { + autoInstallPeers: opts.autoInstallPeers === true, + allowBuild: opts.allowBuild, + allowedDeprecatedVersions: opts.allowedDeprecatedVersions, + childrenByParentDepPath: {}, + currentLockfile: opts.currentLockfile, + defaultTag: opts.tag, + dependenciesTree: {}, + dryRun: opts.dryRun, + engineStrict: opts.engineStrict, + force: opts.force, + forceFullResolution: opts.forceFullResolution, + ignoreScripts: opts.ignoreScripts, + linkWorkspacePackagesDepth: opts.linkWorkspacePackagesDepth ?? -1, + lockfileDir: opts.lockfileDir, + nodeVersion: opts.nodeVersion, + outdatedDependencies: {}, + patchedDependencies: opts.patchedDependencies, + pendingNodes: [], + pnpmVersion: opts.pnpmVersion, + preferWorkspacePackages: opts.preferWorkspacePackages, + readPackageHook: opts.hooks.readPackage, + registries: opts.registries, + resolvedPackagesByDepPath: {}, + resolutionMode: opts.resolutionMode, + skipped: wantedToBeSkippedPackageIds, + storeController: opts.storeController, + virtualStoreDir: opts.virtualStoreDir, + wantedLockfile: opts.wantedLockfile, + appliedPatches: /* @__PURE__ */ new Set(), + updatedSet: /* @__PURE__ */ new Set(), + workspacePackages: opts.workspacePackages, + missingPeersOfChildrenByPkgId: {}, + useLockfileV6: opts.useLockfileV6 + }; + const resolveArgs = importers.map((importer) => { + const projectSnapshot = opts.wantedLockfile.importers[importer.id]; + const proceed = importer.id === "." || importer.hasRemovedDependencies === true || importer.wantedDependencies.some((wantedDep) => wantedDep.isNew); + const resolveOpts = { + currentDepth: 0, + parentPkg: { + installable: true, + nodeId: `>${importer.id}>`, + optional: false, + depPath: importer.id, + rootDir: importer.rootDir + }, + proceed, + resolvedDependencies: { + ...projectSnapshot.dependencies, + ...projectSnapshot.devDependencies, + ...projectSnapshot.optionalDependencies + }, + updateDepth: -1, + updateMatching: importer.updateMatching, + prefix: importer.rootDir + }; + return { + updatePackageManifest: importer.updatePackageManifest, + parentPkgAliases: Object.fromEntries(importer.wantedDependencies.filter(({ alias }) => alias).map(({ alias }) => [alias, true])), + preferredVersions: importer.preferredVersions ?? {}, + wantedDependencies: importer.wantedDependencies, + options: resolveOpts + }; + }); + const { pkgAddressesByImporters, time } = await (0, resolveDependencies_1.resolveRootDependencies)(ctx, resolveArgs); + const directDepsByImporterId = (0, zipObj_1.default)(importers.map(({ id }) => id), pkgAddressesByImporters); + ctx.pendingNodes.forEach((pendingNode) => { + ctx.dependenciesTree[pendingNode.nodeId] = { + children: () => buildTree(ctx, pendingNode.nodeId, pendingNode.resolvedPackage.id, ctx.childrenByParentDepPath[pendingNode.resolvedPackage.depPath], pendingNode.depth + 1, pendingNode.installable), + depth: pendingNode.depth, + installable: pendingNode.installable, + resolvedPackage: pendingNode.resolvedPackage + }; + }); + const resolvedImporters = {}; + for (const { id } of importers) { + const directDeps = directDepsByImporterId[id]; + const [linkedDependencies, directNonLinkedDeps] = (0, partition_1.default)((dep) => dep.isLinkedDependency === true, directDeps); + resolvedImporters[id] = { + directDependencies: directDeps.map((dep) => { + if (dep.isLinkedDependency === true) { + return dep; + } + const resolvedPackage = ctx.dependenciesTree[dep.nodeId].resolvedPackage; + return { + alias: dep.alias, + dev: resolvedPackage.dev, + name: resolvedPackage.name, + normalizedPref: dep.normalizedPref, + optional: resolvedPackage.optional, + pkgId: resolvedPackage.id, + resolution: resolvedPackage.resolution, + version: resolvedPackage.version + }; + }), + directNodeIdsByAlias: directNonLinkedDeps.reduce((acc, { alias, nodeId }) => { + acc[alias] = nodeId; + return acc; + }, {}), + linkedDependencies + }; + } + return { + dependenciesTree: ctx.dependenciesTree, + outdatedDependencies: ctx.outdatedDependencies, + resolvedImporters, + resolvedPackagesByDepPath: ctx.resolvedPackagesByDepPath, + wantedToBeSkippedPackageIds, + appliedPatches: ctx.appliedPatches, + time + }; + } + exports2.resolveDependencyTree = resolveDependencyTree; + function buildTree(ctx, parentNodeId, parentId, children, depth, installable) { + const childrenNodeIds = {}; + for (const child of children) { + if (child.depPath.startsWith("link:")) { + childrenNodeIds[child.alias] = child.depPath; + continue; + } + if ((0, nodeIdUtils_1.nodeIdContainsSequence)(parentNodeId, parentId, child.depPath) || parentId === child.depPath) { + continue; + } + const childNodeId = (0, nodeIdUtils_1.createNodeId)(parentNodeId, child.depPath); + childrenNodeIds[child.alias] = childNodeId; + installable = installable && !ctx.skipped.has(child.depPath); + ctx.dependenciesTree[childNodeId] = { + children: () => buildTree(ctx, childNodeId, child.depPath, ctx.childrenByParentDepPath[child.depPath], depth + 1, installable), + depth, + installable, + resolvedPackage: ctx.resolvedPackagesByDepPath[child.depPath] + }; + } + return childrenNodeIds; + } + } +}); + +// ../node_modules/.pnpm/trim-repeated@1.0.0/node_modules/trim-repeated/index.js +var require_trim_repeated = __commonJS({ + "../node_modules/.pnpm/trim-repeated@1.0.0/node_modules/trim-repeated/index.js"(exports2, module2) { + "use strict"; + var escapeStringRegexp = require_escape_string_regexp(); + module2.exports = function(str, target) { + if (typeof str !== "string" || typeof target !== "string") { + throw new TypeError("Expected a string"); + } + return str.replace(new RegExp("(?:" + escapeStringRegexp(target) + "){2,}", "g"), target); + }; + } +}); + +// ../node_modules/.pnpm/filename-reserved-regex@2.0.0/node_modules/filename-reserved-regex/index.js +var require_filename_reserved_regex = __commonJS({ + "../node_modules/.pnpm/filename-reserved-regex@2.0.0/node_modules/filename-reserved-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = () => /[<>:"\/\\|?*\x00-\x1F]/g; + module2.exports.windowsNames = () => /^(con|prn|aux|nul|com[0-9]|lpt[0-9])$/i; + } +}); + +// ../node_modules/.pnpm/strip-outer@1.0.1/node_modules/strip-outer/index.js +var require_strip_outer = __commonJS({ + "../node_modules/.pnpm/strip-outer@1.0.1/node_modules/strip-outer/index.js"(exports2, module2) { + "use strict"; + var escapeStringRegexp = require_escape_string_regexp(); + module2.exports = function(str, sub) { + if (typeof str !== "string" || typeof sub !== "string") { + throw new TypeError(); + } + sub = escapeStringRegexp(sub); + return str.replace(new RegExp("^" + sub + "|" + sub + "$", "g"), ""); + }; + } +}); + +// ../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/filenamify.js +var require_filenamify = __commonJS({ + "../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/filenamify.js"(exports2, module2) { + "use strict"; + var trimRepeated = require_trim_repeated(); + var filenameReservedRegex = require_filename_reserved_regex(); + var stripOuter = require_strip_outer(); + var MAX_FILENAME_LENGTH = 100; + var reControlChars = /[\u0000-\u001f\u0080-\u009f]/g; + var reRelativePath = /^\.+/; + var reTrailingPeriods = /\.+$/; + var filenamify = (string, options = {}) => { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); + } + const replacement = options.replacement === void 0 ? "!" : options.replacement; + if (filenameReservedRegex().test(replacement) && reControlChars.test(replacement)) { + throw new Error("Replacement string cannot contain reserved filename characters"); + } + string = string.replace(filenameReservedRegex(), replacement); + string = string.replace(reControlChars, replacement); + string = string.replace(reRelativePath, replacement); + string = string.replace(reTrailingPeriods, ""); + if (replacement.length > 0) { + string = trimRepeated(string, replacement); + string = string.length > 1 ? stripOuter(string, replacement) : string; + } + string = filenameReservedRegex.windowsNames().test(string) ? string + replacement : string; + string = string.slice(0, typeof options.maxLength === "number" ? options.maxLength : MAX_FILENAME_LENGTH); + return string; + }; + module2.exports = filenamify; + } +}); + +// ../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/filenamify-path.js +var require_filenamify_path = __commonJS({ + "../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/filenamify-path.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var filenamify = require_filenamify(); + var filenamifyPath = (filePath, options) => { + filePath = path2.resolve(filePath); + return path2.join(path2.dirname(filePath), filenamify(path2.basename(filePath), options)); + }; + module2.exports = filenamifyPath; + } +}); + +// ../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/index.js +var require_filenamify2 = __commonJS({ + "../node_modules/.pnpm/filenamify@4.3.0/node_modules/filenamify/index.js"(exports2, module2) { + "use strict"; + var filenamify = require_filenamify(); + var filenamifyPath = require_filenamify_path(); + var filenamifyCombined = filenamify; + filenamifyCombined.path = filenamifyPath; + module2.exports = filenamify; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/scan.js +var require_scan4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/scan.js"(exports2, module2) { + var _curry3 = require_curry3(); + var scan = /* @__PURE__ */ _curry3(function scan2(fn2, acc, list) { + var idx = 0; + var len = list.length; + var result2 = [acc]; + while (idx < len) { + acc = fn2(acc, list[idx]); + result2[idx + 1] = acc; + idx += 1; + } + return result2; + }); + module2.exports = scan; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/resolvePeers.js +var require_resolvePeers = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/resolvePeers.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolvePeers = void 0; + var filenamify_1 = __importDefault4(require_filenamify2()); + var path_1 = __importDefault4(require("path")); + var semver_12 = __importDefault4(require_semver2()); + var core_1 = require_lib126(); + var dependency_path_1 = require_lib81(); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var map_1 = __importDefault4(require_map4()); + var pick_1 = __importDefault4(require_pick()); + var pickBy_1 = __importDefault4(require_pickBy()); + var scan_1 = __importDefault4(require_scan4()); + var mergePeers_1 = require_mergePeers(); + var nodeIdUtils_1 = require_nodeIdUtils(); + function resolvePeers(opts) { + const depGraph = {}; + const pathsByNodeId = {}; + const depPathsByPkgId = {}; + const _createPkgsByName = createPkgsByName.bind(null, opts.dependenciesTree); + const rootPkgsByName = opts.resolvePeersFromWorkspaceRoot ? getRootPkgsByName(opts.dependenciesTree, opts.projects) : {}; + const peerDependencyIssuesByProjects = {}; + for (const { directNodeIdsByAlias, topParents, rootDir, id } of opts.projects) { + const peerDependencyIssues = { bad: {}, missing: {} }; + const pkgsByName = { + ...rootPkgsByName, + ..._createPkgsByName({ directNodeIdsByAlias, topParents }) + }; + resolvePeersOfChildren(directNodeIdsByAlias, pkgsByName, { + dependenciesTree: opts.dependenciesTree, + depGraph, + lockfileDir: opts.lockfileDir, + pathsByNodeId, + depPathsByPkgId, + peersCache: /* @__PURE__ */ new Map(), + peerDependencyIssues, + purePkgs: /* @__PURE__ */ new Set(), + rootDir, + virtualStoreDir: opts.virtualStoreDir, + useLockfileV6: opts.useLockfileV6 + }); + if (!(0, isEmpty_1.default)(peerDependencyIssues.bad) || !(0, isEmpty_1.default)(peerDependencyIssues.missing)) { + peerDependencyIssuesByProjects[id] = { + ...peerDependencyIssues, + ...(0, mergePeers_1.mergePeers)(peerDependencyIssues.missing) + }; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseArithmeticTimesExpression(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 45) { - s3 = peg$c74; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c75); - } - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - s5 = peg$parseArithmeticExpression(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c94(s1, s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + } + Object.values(depGraph).forEach((node) => { + node.children = (0, map_1.default)((childNodeId) => pathsByNodeId[childNodeId] ?? childNodeId, node.children); + }); + const dependenciesByProjectId = {}; + for (const { directNodeIdsByAlias, id } of opts.projects) { + dependenciesByProjectId[id] = (0, map_1.default)((nodeId) => pathsByNodeId[nodeId], directNodeIdsByAlias); + } + if (opts.dedupePeerDependents) { + const duplicates = Object.values(depPathsByPkgId).filter((item) => item.length > 1); + const allDepPathsMap = deduplicateAll(depGraph, duplicates); + for (const { id } of opts.projects) { + dependenciesByProjectId[id] = (0, map_1.default)((depPath) => allDepPathsMap[depPath] ?? depPath, dependenciesByProjectId[id]); + } + } + return { + dependenciesGraph: depGraph, + dependenciesByProjectId, + peerDependencyIssuesByProjects + }; + } + exports2.resolvePeers = resolvePeers; + function nodeDepsCount(node) { + return Object.keys(node.children).length + node.resolvedPeerNames.length; + } + function deduplicateAll(depGraph, duplicates) { + const { depPathsMap, remainingDuplicates } = deduplicateDepPaths(duplicates, depGraph); + if (remainingDuplicates.length === duplicates.length) { + return depPathsMap; + } + Object.values(depGraph).forEach((node) => { + node.children = (0, map_1.default)((childDepPath) => depPathsMap[childDepPath] ?? childDepPath, node.children); + }); + if (Object.keys(depPathsMap).length > 0) { + return { + ...depPathsMap, + ...deduplicateAll(depGraph, remainingDuplicates) + }; + } + return depPathsMap; + } + function deduplicateDepPaths(duplicates, depGraph) { + const depCountSorter = (depPath1, depPath2) => nodeDepsCount(depGraph[depPath1]) - nodeDepsCount(depGraph[depPath2]); + const depPathsMap = {}; + const remainingDuplicates = []; + for (const depPaths of duplicates) { + const unresolvedDepPaths = new Set(depPaths); + let currentDepPaths = depPaths.sort(depCountSorter); + while (currentDepPaths.length) { + const depPath1 = currentDepPaths.pop(); + const nextDepPaths = []; + while (currentDepPaths.length) { + const depPath2 = currentDepPaths.pop(); + if (isCompatibleAndHasMoreDeps(depGraph, depPath1, depPath2)) { + depPathsMap[depPath2] = depPath1; + unresolvedDepPaths.delete(depPath1); + unresolvedDepPaths.delete(depPath2); } else { - peg$currPos = s0; - s0 = peg$FAILED; + nextDepPaths.push(depPath2); } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$parseArithmeticTimesExpression(); } + nextDepPaths.push(...currentDepPaths); + currentDepPaths = nextDepPaths.sort(depCountSorter); + } + if (unresolvedDepPaths.size) { + remainingDuplicates.push([...unresolvedDepPaths]); } - return s0; } - function peg$parseArithmetic() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c95) { - s1 = peg$c95; - peg$currPos += 3; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c96); - } + return { + depPathsMap, + remainingDuplicates + }; + } + function isCompatibleAndHasMoreDeps(depGraph, depPath1, depPath2) { + const node1 = depGraph[depPath1]; + const node2 = depGraph[depPath2]; + const node1DepPaths = Object.values(node1.children); + const node2DepPaths = Object.values(node2.children); + return nodeDepsCount(node1) > nodeDepsCount(node2) && node2DepPaths.every((depPath) => node1DepPaths.includes(depPath)) && node2.resolvedPeerNames.every((depPath) => node1.resolvedPeerNames.includes(depPath)); + } + function getRootPkgsByName(dependenciesTree, projects) { + const rootProject = projects.length > 1 ? projects.find(({ id }) => id === ".") : null; + return rootProject == null ? {} : createPkgsByName(dependenciesTree, rootProject); + } + function createPkgsByName(dependenciesTree, { directNodeIdsByAlias, topParents }) { + const parentRefs = toPkgByName(Object.keys(directNodeIdsByAlias).map((alias) => ({ + alias, + node: dependenciesTree[directNodeIdsByAlias[alias]], + nodeId: directNodeIdsByAlias[alias] + }))); + const _updateParentRefs = updateParentRefs.bind(null, parentRefs); + for (const { name, version: version2, alias, linkedDir } of topParents) { + const pkg = { + alias, + depth: 0, + version: version2, + nodeId: linkedDir + }; + _updateParentRefs(name, pkg); + if (alias && alias !== name) { + _updateParentRefs(alias, pkg); } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseS(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseS(); - } - if (s2 !== peg$FAILED) { - s3 = peg$parseArithmeticExpression(); - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parseS(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parseS(); - } - if (s4 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c97) { - s5 = peg$c97; - peg$currPos += 2; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c98); - } - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c99(s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } + return parentRefs; + } + function resolvePeersOfNode(nodeId, parentParentPkgs, ctx) { + const node = ctx.dependenciesTree[nodeId]; + if (node.depth === -1) + return { resolvedPeers: {}, missingPeers: [] }; + const resolvedPackage = node.resolvedPackage; + if (ctx.purePkgs.has(resolvedPackage.depPath) && ctx.depGraph[resolvedPackage.depPath].depth <= node.depth && (0, isEmpty_1.default)(resolvedPackage.peerDependencies)) { + ctx.pathsByNodeId[nodeId] = resolvedPackage.depPath; + return { resolvedPeers: {}, missingPeers: [] }; + } + if (typeof node.children === "function") { + node.children = node.children(); + } + const children = node.children; + const parentPkgs = (0, isEmpty_1.default)(children) ? parentParentPkgs : Object.assign(Object.create(parentParentPkgs), toPkgByName(Object.entries(children).map(([alias, nodeId2]) => ({ + alias, + node: ctx.dependenciesTree[nodeId2], + nodeId: nodeId2 + })))); + const hit = ctx.peersCache.get(resolvedPackage.depPath)?.find((cache) => cache.resolvedPeers.every(([name, cachedNodeId]) => { + const parentPkgNodeId = parentPkgs[name]?.nodeId; + if (!parentPkgNodeId || !cachedNodeId) + return false; + if (parentPkgNodeId === cachedNodeId) + return true; + if (ctx.pathsByNodeId[cachedNodeId] && ctx.pathsByNodeId[cachedNodeId] === ctx.pathsByNodeId[parentPkgNodeId]) + return true; + const parentDepPath = ctx.dependenciesTree[parentPkgNodeId].resolvedPackage.depPath; + if (!ctx.purePkgs.has(parentDepPath)) + return false; + const cachedDepPath = ctx.dependenciesTree[cachedNodeId].resolvedPackage.depPath; + return parentDepPath === cachedDepPath; + }) && cache.missingPeers.every((missingPeer) => !parentPkgs[missingPeer])); + if (hit != null) { + ctx.pathsByNodeId[nodeId] = hit.depPath; + ctx.depGraph[hit.depPath].depth = Math.min(ctx.depGraph[hit.depPath].depth, node.depth); + return { + missingPeers: hit.missingPeers, + resolvedPeers: Object.fromEntries(hit.resolvedPeers) + }; + } + const { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: missingPeersOfChildren } = resolvePeersOfChildren(children, parentPkgs, ctx); + const { resolvedPeers, missingPeers } = (0, isEmpty_1.default)(resolvedPackage.peerDependencies) ? { resolvedPeers: {}, missingPeers: [] } : _resolvePeers({ + currentDepth: node.depth, + dependenciesTree: ctx.dependenciesTree, + lockfileDir: ctx.lockfileDir, + nodeId, + parentPkgs, + peerDependencyIssues: ctx.peerDependencyIssues, + resolvedPackage, + rootDir: ctx.rootDir + }); + const allResolvedPeers = Object.assign(unknownResolvedPeersOfChildren, resolvedPeers); + delete allResolvedPeers[node.resolvedPackage.name]; + const allMissingPeers = Array.from(/* @__PURE__ */ new Set([...missingPeersOfChildren, ...missingPeers])); + let depPath; + if ((0, isEmpty_1.default)(allResolvedPeers)) { + depPath = resolvedPackage.depPath; + } else { + const peersFolderSuffix = (ctx.useLockfileV6 ? dependency_path_1.createPeersFolderSuffixNewFormat : dependency_path_1.createPeersFolderSuffix)(Object.entries(allResolvedPeers).map(([alias, nodeId2]) => { + if (nodeId2.startsWith("link:")) { + const linkedDir = nodeId2.slice(5); + return { + name: alias, + version: (0, filenamify_1.default)(linkedDir, { replacement: "+" }) + }; } + const { name, version: version2 } = ctx.dependenciesTree[nodeId2].resolvedPackage; + return { name, version: version2 }; + })); + depPath = `${resolvedPackage.depPath}${peersFolderSuffix}`; + } + const localLocation = path_1.default.join(ctx.virtualStoreDir, (0, dependency_path_1.depPathToFilename)(depPath)); + const modules = path_1.default.join(localLocation, "node_modules"); + const isPure = (0, isEmpty_1.default)(allResolvedPeers) && allMissingPeers.length === 0; + if (isPure) { + ctx.purePkgs.add(resolvedPackage.depPath); + } else { + const cache = { + missingPeers: allMissingPeers, + depPath, + resolvedPeers: Object.entries(allResolvedPeers) + }; + if (ctx.peersCache.has(resolvedPackage.depPath)) { + ctx.peersCache.get(resolvedPackage.depPath).push(cache); } else { - peg$currPos = s0; - s0 = peg$FAILED; + ctx.peersCache.set(resolvedPackage.depPath, [cache]); } - return s0; } - function peg$parseSubshell() { - var s0, s1, s2, s3; - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c100) { - s1 = peg$c100; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c101); - } + ctx.pathsByNodeId[nodeId] = depPath; + if (ctx.depPathsByPkgId != null) { + if (!ctx.depPathsByPkgId[resolvedPackage.depPath]) { + ctx.depPathsByPkgId[resolvedPackage.depPath] = []; } - if (s1 !== peg$FAILED) { - s2 = peg$parseShellLine(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 41) { - s3 = peg$c24; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c25); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c102(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (!ctx.depPathsByPkgId[resolvedPackage.depPath].includes(depPath)) { + ctx.depPathsByPkgId[resolvedPackage.depPath].push(depPath); + } + } + const peerDependencies = { ...resolvedPackage.peerDependencies }; + if (!ctx.depGraph[depPath] || ctx.depGraph[depPath].depth > node.depth) { + const dir = path_1.default.join(modules, resolvedPackage.name); + const transitivePeerDependencies = /* @__PURE__ */ new Set(); + const unknownPeers = [ + ...Object.keys(unknownResolvedPeersOfChildren), + ...missingPeersOfChildren + ]; + if (unknownPeers.length > 0) { + for (const unknownPeer of unknownPeers) { + if (!peerDependencies[unknownPeer]) { + transitivePeerDependencies.add(unknownPeer); } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; + ctx.depGraph[depPath] = { + ...node.resolvedPackage, + children: Object.assign(getPreviouslyResolvedChildren(nodeId, ctx.dependenciesTree), children, resolvedPeers), + depPath, + depth: node.depth, + dir, + installable: node.installable, + isPure, + modules, + peerDependencies, + transitivePeerDependencies, + resolvedPeerNames: Object.keys(allResolvedPeers) + }; } - function peg$parseVariable() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c103) { - s1 = peg$c103; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c104); - } + return { resolvedPeers: allResolvedPeers, missingPeers: allMissingPeers }; + } + function getPreviouslyResolvedChildren(nodeId, dependenciesTree) { + const parentIds = (0, nodeIdUtils_1.splitNodeId)(nodeId); + const ownId = parentIds.pop(); + const allChildren = {}; + if (!ownId || !parentIds.includes(ownId)) + return allChildren; + const nodeIdChunks = parentIds.join(">").split(`>${ownId}>`); + nodeIdChunks.pop(); + nodeIdChunks.reduce((accNodeId, part) => { + accNodeId += `>${part}>${ownId}`; + const parentNode = dependenciesTree[`${accNodeId}>`]; + if (typeof parentNode.children === "function") { + parentNode.children = parentNode.children(); } - if (s1 !== peg$FAILED) { - s2 = peg$parseIdentifier(); - if (s2 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c105) { - s3 = peg$c105; - peg$currPos += 2; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c106); - } - } - if (s3 !== peg$FAILED) { - s4 = peg$parseCommandString(); - if (s4 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s5 = peg$c29; - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c30); - } - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c107(s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + Object.assign(allChildren, parentNode.children); + return accNodeId; + }, ""); + return allChildren; + } + function resolvePeersOfChildren(children, parentPkgs, ctx) { + const allResolvedPeers = {}; + const allMissingPeers = /* @__PURE__ */ new Set(); + for (const childNodeId of Object.values(children)) { + const { resolvedPeers, missingPeers } = resolvePeersOfNode(childNodeId, parentPkgs, ctx); + Object.assign(allResolvedPeers, resolvedPeers); + missingPeers.forEach((missingPeer) => allMissingPeers.add(missingPeer)); + } + const unknownResolvedPeersOfChildren = (0, pickBy_1.default)((_, alias) => !children[alias], allResolvedPeers); + return { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: Array.from(allMissingPeers) }; + } + function _resolvePeers(ctx) { + const resolvedPeers = {}; + const missingPeers = []; + for (const peerName in ctx.resolvedPackage.peerDependencies) { + const peerVersionRange = ctx.resolvedPackage.peerDependencies[peerName].replace(/^workspace:/, ""); + const resolved = ctx.parentPkgs[peerName]; + const optionalPeer = ctx.resolvedPackage.peerDependenciesMeta?.[peerName]?.optional === true; + if (!resolved) { + missingPeers.push(peerName); + const location = getLocationFromNodeIdAndPkg({ + dependenciesTree: ctx.dependenciesTree, + nodeId: ctx.nodeId, + pkg: ctx.resolvedPackage + }); + if (!ctx.peerDependencyIssues.missing[peerName]) { + ctx.peerDependencyIssues.missing[peerName] = []; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + ctx.peerDependencyIssues.missing[peerName].push({ + parents: location.parents, + optional: optionalPeer, + wantedRange: peerVersionRange + }); + continue; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c103) { - s1 = peg$c103; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c104); - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseIdentifier(); - if (s2 !== peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c108) { - s3 = peg$c108; - peg$currPos += 3; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c109); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c110(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (!core_1.semverUtils.satisfiesWithPrereleases(resolved.version, peerVersionRange, true)) { + const location = getLocationFromNodeIdAndPkg({ + dependenciesTree: ctx.dependenciesTree, + nodeId: ctx.nodeId, + pkg: ctx.resolvedPackage + }); + if (!ctx.peerDependencyIssues.bad[peerName]) { + ctx.peerDependencyIssues.bad[peerName] = []; + } + const peerLocation = resolved.nodeId == null ? [] : getLocationFromNodeId({ + dependenciesTree: ctx.dependenciesTree, + nodeId: resolved.nodeId + }).parents; + ctx.peerDependencyIssues.bad[peerName].push({ + foundVersion: resolved.version, + resolvedFrom: peerLocation, + parents: location.parents, + optional: optionalPeer, + wantedRange: peerVersionRange + }); + } + if (resolved?.nodeId) + resolvedPeers[peerName] = resolved.nodeId; + } + return { resolvedPeers, missingPeers }; + } + function getLocationFromNodeIdAndPkg({ dependenciesTree, nodeId, pkg }) { + const { projectId, parents } = getLocationFromNodeId({ dependenciesTree, nodeId }); + parents.push({ name: pkg.name, version: pkg.version }); + return { + projectId, + parents + }; + } + function getLocationFromNodeId({ dependenciesTree, nodeId }) { + const parts = (0, nodeIdUtils_1.splitNodeId)(nodeId).slice(0, -1); + const parents = (0, scan_1.default)((prevNodeId, pkgId) => (0, nodeIdUtils_1.createNodeId)(prevNodeId, pkgId), ">", parts).slice(2).map((nid) => (0, pick_1.default)(["name", "version"], dependenciesTree[nid].resolvedPackage)); + return { + projectId: parts[0], + parents + }; + } + function toPkgByName(nodes) { + const pkgsByName = {}; + const _updateParentRefs = updateParentRefs.bind(null, pkgsByName); + for (const { alias, node, nodeId } of nodes) { + const pkg = { + alias, + depth: node.depth, + nodeId, + version: node.resolvedPackage.version + }; + _updateParentRefs(alias, pkg); + if (alias !== node.resolvedPackage.name) { + _updateParentRefs(node.resolvedPackage.name, pkg); + } + } + return pkgsByName; + } + function updateParentRefs(parentRefs, newAlias, pkg) { + const existing = parentRefs[newAlias]; + if (existing) { + const existingHasAlias = existing.alias != null && existing.alias !== newAlias; + if (!existingHasAlias) + return; + const newHasAlias = pkg.alias != null && pkg.alias !== newAlias; + if (newHasAlias && semver_12.default.gte(existing.version, pkg.version)) + return; + } + parentRefs[newAlias] = pkg; + } + } +}); + +// ../node_modules/.pnpm/is-inner-link@4.0.0/node_modules/is-inner-link/index.js +var require_is_inner_link = __commonJS({ + "../node_modules/.pnpm/is-inner-link@4.0.0/node_modules/is-inner-link/index.js"(exports2, module2) { + "use strict"; + var path2 = require("path"); + var isSubdir = require_is_subdir(); + var resolveLinkTarget = require_resolve_link_target(); + module2.exports = async function(parent, relativePathToLink) { + const linkPath = path2.resolve(parent, relativePathToLink); + const target = await resolveLinkTarget(linkPath); + return { + isInner: isSubdir(parent, target), + target + }; + }; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/safeIsInnerLink.js +var require_safeIsInnerLink = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/safeIsInnerLink.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.safeIsInnerLink = void 0; + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var is_inner_link_1 = __importDefault4(require_is_inner_link()); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var rename_overwrite_1 = __importDefault4(require_rename_overwrite()); + async function safeIsInnerLink(projectModulesDir, depName, opts) { + try { + const link = await (0, is_inner_link_1.default)(projectModulesDir, depName); + if (link.isInner) + return true; + if ((0, is_subdir_1.default)(opts.virtualStoreDir, link.target)) + return true; + return link.target; + } catch (err) { + if (err.code === "ENOENT") + return true; + if (opts.hideAlienModules) { + logger_1.logger.warn({ + message: `Moving ${depName} that was installed by a different package manager to "node_modules/.ignored`, + prefix: opts.projectDir + }); + const ignoredDir = path_1.default.join(projectModulesDir, ".ignored", depName); + await (0, rename_overwrite_1.default)(path_1.default.join(projectModulesDir, depName), ignoredDir); + } + return true; + } + } + exports2.safeIsInnerLink = safeIsInnerLink; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/toResolveImporter.js +var require_toResolveImporter = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/toResolveImporter.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toResolveImporter = void 0; + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + var getWantedDependencies_1 = require_getWantedDependencies(); + var safeIsInnerLink_1 = require_safeIsInnerLink(); + async function toResolveImporter(opts, project) { + const allDeps = (0, getWantedDependencies_1.getWantedDependencies)(project.manifest); + const nonLinkedDependencies = await partitionLinkedPackages(allDeps, { + lockfileOnly: opts.lockfileOnly, + modulesDir: project.modulesDir, + projectDir: project.rootDir, + virtualStoreDir: opts.virtualStoreDir, + workspacePackages: opts.workspacePackages + }); + const defaultUpdateDepth = project.update === true || project.updateMatching != null ? opts.defaultUpdateDepth : -1; + const existingDeps = nonLinkedDependencies.filter(({ alias }) => !project.wantedDependencies.some((wantedDep) => wantedDep.alias === alias)); + let wantedDependencies; + if (!project.manifest) { + wantedDependencies = [ + ...project.wantedDependencies, + ...existingDeps + ].map((dep) => ({ + ...dep, + updateDepth: defaultUpdateDepth + })); + } else { + const updateLocalTarballs = (dep) => ({ + ...dep, + updateDepth: project.updateMatching != null ? defaultUpdateDepth : prefIsLocalTarball(dep.pref) ? 0 : -1 + }); + wantedDependencies = [ + ...project.wantedDependencies.map(defaultUpdateDepth < 0 ? updateLocalTarballs : (dep) => ({ ...dep, updateDepth: defaultUpdateDepth })), + ...existingDeps.map(updateLocalTarballs) + ]; + } + return { + ...project, + hasRemovedDependencies: Boolean(project.removePackages?.length), + preferredVersions: opts.preferredVersions ?? (project.manifest && getPreferredVersionsFromPackage(project.manifest)) ?? {}, + wantedDependencies + }; + } + exports2.toResolveImporter = toResolveImporter; + function prefIsLocalTarball(pref) { + return pref.startsWith("file:") && pref.endsWith(".tgz"); + } + async function partitionLinkedPackages(dependencies, opts) { + const nonLinkedDependencies = []; + const linkedAliases = /* @__PURE__ */ new Set(); + for (const dependency of dependencies) { + if (!dependency.alias || opts.workspacePackages?.[dependency.alias] != null || dependency.pref.startsWith("workspace:")) { + nonLinkedDependencies.push(dependency); + continue; + } + const isInnerLink = await (0, safeIsInnerLink_1.safeIsInnerLink)(opts.modulesDir, dependency.alias, { + hideAlienModules: !opts.lockfileOnly, + projectDir: opts.projectDir, + virtualStoreDir: opts.virtualStoreDir + }); + if (isInnerLink === true) { + nonLinkedDependencies.push(dependency); + continue; + } + if (!dependency.pref.startsWith("link:")) { + logger_1.logger.info({ + message: `${dependency.alias} is linked to ${opts.modulesDir} from ${isInnerLink}`, + prefix: opts.projectDir + }); + } + linkedAliases.add(dependency.alias); + } + return nonLinkedDependencies; + } + function getPreferredVersionsFromPackage(pkg) { + return getVersionSpecsByRealNames((0, manifest_utils_1.getAllDependenciesFromManifest)(pkg)); + } + function getVersionSpecsByRealNames(deps) { + return Object.entries(deps).reduce((acc, [depName, currentPref]) => { + if (currentPref.startsWith("npm:")) { + const pref = currentPref.slice(4); + const index = pref.lastIndexOf("@"); + const spec = pref.slice(index + 1); + const selector = (0, version_selector_type_1.default)(spec); + if (selector != null) { + const pkgName = pref.substring(0, index); + acc[pkgName] = acc[pkgName] || {}; + acc[pkgName][selector.normalized] = selector.type; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c103) { - s1 = peg$c103; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c104); - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseIdentifier(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s3 = peg$c29; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c30); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c111(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 36) { - s1 = peg$c112; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c113); - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseIdentifier(); - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c111(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } + } else if (!currentPref.includes(":")) { + const selector = (0, version_selector_type_1.default)(currentPref); + if (selector != null) { + acc[depName] = acc[depName] || {}; + acc[depName][selector.normalized] = selector.type; } } - return s0; + return acc; + }, {}); + } + } +}); + +// ../lockfile/prune-lockfile/lib/index.js +var require_lib133 = __commonJS({ + "../lockfile/prune-lockfile/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - function peg$parseGlob() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = peg$parseGlobText(); - if (s1 !== peg$FAILED) { - peg$savedPos = peg$currPos; - s2 = peg$c114(s1); - if (s2) { - s2 = void 0; - } else { - s2 = peg$FAILED; - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c115(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pruneLockfile = exports2.pruneSharedLockfile = void 0; + var constants_1 = require_lib7(); + var dependency_path_1 = require_lib81(); + var difference_1 = __importDefault4(require_difference()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var unnest_1 = __importDefault4(require_unnest()); + __exportStar4(require_lib83(), exports2); + function pruneSharedLockfile(lockfile, opts) { + const copiedPackages = lockfile.packages == null ? {} : copyPackageSnapshots(lockfile.packages, { + devDepPaths: (0, unnest_1.default)(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.devDependencies ?? {}))), + optionalDepPaths: (0, unnest_1.default)(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.optionalDependencies ?? {}))), + prodDepPaths: (0, unnest_1.default)(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.dependencies ?? {}))), + warn: opts?.warn ?? ((msg) => void 0) + }); + const prunedLockfile = { + ...lockfile, + packages: copiedPackages + }; + if ((0, isEmpty_1.default)(prunedLockfile.packages)) { + delete prunedLockfile.packages; + } + return prunedLockfile; + } + exports2.pruneSharedLockfile = pruneSharedLockfile; + function pruneLockfile(lockfile, pkg, importerId, opts) { + const packages = {}; + const importer = lockfile.importers[importerId]; + const lockfileSpecs = importer.specifiers ?? {}; + const optionalDependencies = Object.keys(pkg.optionalDependencies ?? {}); + const dependencies = (0, difference_1.default)(Object.keys(pkg.dependencies ?? {}), optionalDependencies); + const devDependencies = (0, difference_1.default)((0, difference_1.default)(Object.keys(pkg.devDependencies ?? {}), optionalDependencies), dependencies); + const allDeps = /* @__PURE__ */ new Set([ + ...optionalDependencies, + ...devDependencies, + ...dependencies + ]); + const specifiers = {}; + const lockfileDependencies = {}; + const lockfileOptionalDependencies = {}; + const lockfileDevDependencies = {}; + Object.entries(lockfileSpecs).forEach(([depName, spec]) => { + if (!allDeps.has(depName)) + return; + specifiers[depName] = spec; + if (importer.dependencies?.[depName]) { + lockfileDependencies[depName] = importer.dependencies[depName]; + } else if (importer.optionalDependencies?.[depName]) { + lockfileOptionalDependencies[depName] = importer.optionalDependencies[depName]; + } else if (importer.devDependencies?.[depName]) { + lockfileDevDependencies[depName] = importer.devDependencies[depName]; + } + }); + if (importer.dependencies != null) { + for (const [alias, dep] of Object.entries(importer.dependencies)) { + if (!lockfileDependencies[alias] && dep.startsWith("link:") && // If the linked dependency was removed from package.json + // then it is removed from pnpm-lock.yaml as well + !(lockfileSpecs[alias] && !allDeps.has(alias))) { + lockfileDependencies[alias] = dep; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; } - function peg$parseGlobText() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = []; - s2 = peg$currPos; - s3 = peg$currPos; - peg$silentFails++; - s4 = peg$parseGlobSpecialShellChars(); - peg$silentFails--; - if (s4 === peg$FAILED) { - s3 = void 0; + const updatedImporter = { + specifiers + }; + const prunnedLockfile = { + importers: { + ...lockfile.importers, + [importerId]: updatedImporter + }, + lockfileVersion: lockfile.lockfileVersion || constants_1.LOCKFILE_VERSION, + packages: lockfile.packages + }; + if (!(0, isEmpty_1.default)(packages)) { + prunnedLockfile.packages = packages; + } + if (!(0, isEmpty_1.default)(lockfileDependencies)) { + updatedImporter.dependencies = lockfileDependencies; + } + if (!(0, isEmpty_1.default)(lockfileOptionalDependencies)) { + updatedImporter.optionalDependencies = lockfileOptionalDependencies; + } + if (!(0, isEmpty_1.default)(lockfileDevDependencies)) { + updatedImporter.devDependencies = lockfileDevDependencies; + } + return pruneSharedLockfile(prunnedLockfile, opts); + } + exports2.pruneLockfile = pruneLockfile; + function copyPackageSnapshots(originalPackages, opts) { + const copiedSnapshots = {}; + const ctx = { + copiedSnapshots, + nonOptional: /* @__PURE__ */ new Set(), + notProdOnly: /* @__PURE__ */ new Set(), + originalPackages, + walked: /* @__PURE__ */ new Set(), + warn: opts.warn + }; + copyDependencySubGraph(ctx, opts.devDepPaths, { + dev: true, + optional: false + }); + copyDependencySubGraph(ctx, opts.optionalDepPaths, { + dev: false, + optional: true + }); + copyDependencySubGraph(ctx, opts.prodDepPaths, { + dev: false, + optional: false + }); + return copiedSnapshots; + } + function resolvedDepsToDepPaths(deps) { + return Object.entries(deps).map(([alias, ref]) => (0, dependency_path_1.refToRelative)(ref, alias)).filter((depPath) => depPath !== null); + } + function copyDependencySubGraph(ctx, depPaths, opts) { + for (const depPath of depPaths) { + const key = `${depPath}:${opts.optional.toString()}:${opts.dev.toString()}`; + if (ctx.walked.has(key)) + continue; + ctx.walked.add(key); + if (!ctx.originalPackages[depPath]) { + if (depPath.startsWith("link:") || depPath.startsWith("file:") && !depPath.endsWith(".tar.gz")) + continue; + ctx.warn(`Cannot find resolution of ${depPath} in lockfile`); + continue; + } + const depLockfile = ctx.originalPackages[depPath]; + ctx.copiedSnapshots[depPath] = depLockfile; + if (opts.optional && !ctx.nonOptional.has(depPath)) { + depLockfile.optional = true; } else { - peg$currPos = s3; - s3 = peg$FAILED; + ctx.nonOptional.add(depPath); + delete depLockfile.optional; } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; + if (opts.dev) { + ctx.notProdOnly.add(depPath); + depLockfile.dev = true; + } else if (depLockfile.dev === true) { + delete depLockfile.dev; + } else if (depLockfile.dev === void 0 && !ctx.notProdOnly.has(depPath)) { + depLockfile.dev = false; + } + const newDependencies = resolvedDepsToDepPaths(depLockfile.dependencies ?? {}); + copyDependencySubGraph(ctx, newDependencies, opts); + const newOptionalDependencies = resolvedDepsToDepPaths(depLockfile.optionalDependencies ?? {}); + copyDependencySubGraph(ctx, newOptionalDependencies, { dev: opts.dev, optional: true }); + } + } + } +}); + +// ../pkg-manager/resolve-dependencies/lib/updateLockfile.js +var require_updateLockfile = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/updateLockfile.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.relativeTarball = exports2.updateLockfile = void 0; + var logger_1 = require_lib6(); + var prune_lockfile_1 = require_lib133(); + var dp = __importStar5(require_lib81()); + var get_npm_tarball_url_1 = __importDefault4(require_lib82()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var mergeRight_1 = __importDefault4(require_mergeRight()); + var partition_1 = __importDefault4(require_partition4()); + var depPathToRef_1 = require_depPathToRef(); + function updateLockfile({ dependenciesGraph, lockfile, prefix, registries, lockfileIncludeTarballUrl }) { + lockfile.packages = lockfile.packages ?? {}; + const pendingRequiresBuilds = []; + for (const [depPath, depNode] of Object.entries(dependenciesGraph)) { + const [updatedOptionalDeps, updatedDeps] = (0, partition_1.default)((child) => depNode.optionalDependencies.has(child.alias), Object.entries(depNode.children).map(([alias, depPath2]) => ({ alias, depPath: depPath2 }))); + lockfile.packages[depPath] = toLockfileDependency(pendingRequiresBuilds, depNode, { + depGraph: dependenciesGraph, + depPath, + prevSnapshot: lockfile.packages[depPath], + registries, + registry: dp.getRegistryByPackageName(registries, depNode.name), + updatedDeps, + updatedOptionalDeps, + lockfileIncludeTarballUrl + }); + } + const warn = (message2) => { + logger_1.logger.warn({ message: message2, prefix }); + }; + return { + newLockfile: (0, prune_lockfile_1.pruneSharedLockfile)(lockfile, { warn }), + pendingRequiresBuilds + }; + } + exports2.updateLockfile = updateLockfile; + function toLockfileDependency(pendingRequiresBuilds, pkg, opts) { + const lockfileResolution = toLockfileResolution({ id: pkg.id, name: pkg.name, version: pkg.version }, opts.depPath, pkg.resolution, opts.registry, opts.lockfileIncludeTarballUrl); + const newResolvedDeps = updateResolvedDeps(opts.prevSnapshot?.dependencies ?? {}, opts.updatedDeps, opts.registries, opts.depGraph); + const newResolvedOptionalDeps = updateResolvedDeps(opts.prevSnapshot?.optionalDependencies ?? {}, opts.updatedOptionalDeps, opts.registries, opts.depGraph); + const result2 = { + resolution: lockfileResolution + }; + if (dp.isAbsolute(opts.depPath)) { + result2["name"] = pkg.name; + if (pkg.version) { + result2["version"] = pkg.version; + } + } + if (!(0, isEmpty_1.default)(newResolvedDeps)) { + result2["dependencies"] = newResolvedDeps; + } + if (!(0, isEmpty_1.default)(newResolvedOptionalDeps)) { + result2["optionalDependencies"] = newResolvedOptionalDeps; + } + if (pkg.dev && !pkg.prod) { + result2["dev"] = true; + } else if (pkg.prod && !pkg.dev) { + result2["dev"] = false; + } + if (pkg.optional) { + result2["optional"] = true; + } + if (opts.depPath[0] !== "/" && !pkg.id.endsWith(opts.depPath)) { + result2["id"] = pkg.id; + } + if (!(0, isEmpty_1.default)(pkg.peerDependencies ?? {})) { + result2["peerDependencies"] = pkg.peerDependencies; + } + if (pkg.transitivePeerDependencies.size) { + result2["transitivePeerDependencies"] = Array.from(pkg.transitivePeerDependencies).sort(); + } + if (pkg.peerDependenciesMeta != null) { + const normalizedPeerDependenciesMeta = {}; + for (const [peer, { optional }] of Object.entries(pkg.peerDependenciesMeta)) { + if (optional) { + normalizedPeerDependenciesMeta[peer] = { optional: true }; } + } + if (Object.keys(normalizedPeerDependenciesMeta).length > 0) { + result2["peerDependenciesMeta"] = normalizedPeerDependenciesMeta; + } + } + if (pkg.additionalInfo.engines != null) { + for (const [engine, version2] of Object.entries(pkg.additionalInfo.engines)) { + if (version2 === "*") + continue; + result2.engines = result2.engines ?? {}; + result2.engines[engine] = version2; + } + } + if (pkg.additionalInfo.cpu != null) { + result2["cpu"] = pkg.additionalInfo.cpu; + } + if (pkg.additionalInfo.os != null) { + result2["os"] = pkg.additionalInfo.os; + } + if (pkg.additionalInfo.libc != null) { + result2["libc"] = pkg.additionalInfo.libc; + } + if (Array.isArray(pkg.additionalInfo.bundledDependencies) || Array.isArray(pkg.additionalInfo.bundleDependencies)) { + result2["bundledDependencies"] = pkg.additionalInfo.bundledDependencies ?? pkg.additionalInfo.bundleDependencies; + } + if (pkg.additionalInfo.deprecated) { + result2["deprecated"] = pkg.additionalInfo.deprecated; + } + if (pkg.hasBin) { + result2["hasBin"] = true; + } + if (pkg.patchFile) { + result2["patched"] = true; + } + const requiresBuildIsKnown = typeof pkg.requiresBuild === "boolean"; + let pending = false; + if (requiresBuildIsKnown) { + if (pkg.requiresBuild) { + result2["requiresBuild"] = true; + } + } else if (opts.prevSnapshot != null) { + if (opts.prevSnapshot.requiresBuild) { + result2["requiresBuild"] = opts.prevSnapshot.requiresBuild; + } + if (opts.prevSnapshot.prepare) { + result2["prepare"] = opts.prevSnapshot.prepare; + } + } else if (pkg.prepare) { + result2["prepare"] = true; + result2["requiresBuild"] = true; + } else { + pendingRequiresBuilds.push(opts.depPath); + pending = true; + } + if (!requiresBuildIsKnown && !pending) { + pkg.requiresBuild.resolve(result2.requiresBuild ?? false); + } + return result2; + } + function updateResolvedDeps(prevResolvedDeps, updatedDeps, registries, depGraph) { + const newResolvedDeps = Object.fromEntries(updatedDeps.map(({ alias, depPath }) => { + if (depPath.startsWith("link:")) { + return [alias, depPath]; + } + const depNode = depGraph[depPath]; + return [ + alias, + (0, depPathToRef_1.depPathToRef)(depNode.depPath, { + alias, + realName: depNode.name, + registries, + resolution: depNode.resolution + }) + ]; + })); + return (0, mergeRight_1.default)(prevResolvedDeps, newResolvedDeps); + } + function toLockfileResolution(pkg, depPath, resolution, registry, lockfileIncludeTarballUrl) { + if (dp.isAbsolute(depPath) || resolution.type !== void 0 || !resolution["integrity"]) { + return resolution; + } + const base = registry !== resolution["registry"] ? { registry: resolution["registry"] } : {}; + if (lockfileIncludeTarballUrl) { + return { + ...base, + integrity: resolution["integrity"], + tarball: resolution["tarball"] + }; + } + const expectedTarball = (0, get_npm_tarball_url_1.default)(pkg.name, pkg.version, { registry }); + const actualTarball = resolution["tarball"].replace("%2f", "/"); + if (removeProtocol(expectedTarball) !== removeProtocol(actualTarball)) { + return { + ...base, + integrity: resolution["integrity"], + tarball: relativeTarball(resolution["tarball"], registry) + }; + } + return { + ...base, + integrity: resolution["integrity"] + }; + } + function removeProtocol(url) { + return url.split("://")[1]; + } + function relativeTarball(tarball, registry) { + if (tarball.slice(0, registry.length) !== registry) { + return tarball; + } + const relative2 = tarball.slice(registry.length); + if (relative2[0] === "/") + return relative2.substring(1); + return relative2; + } + exports2.relativeTarball = relativeTarball; + } +}); + +// ../pkg-manager/resolve-dependencies/lib/updateProjectManifest.js +var require_updateProjectManifest = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/updateProjectManifest.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.updateProjectManifest = void 0; + var manifest_utils_1 = require_lib26(); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + var semver_12 = __importDefault4(require_semver2()); + async function updateProjectManifest(importer, opts) { + if (!importer.manifest) { + throw new Error("Cannot save because no package.json found"); + } + const specsToUpsert = opts.directDependencies.filter((rdd, index) => importer.wantedDependencies[index]?.updateSpec).map((rdd, index) => { + const wantedDep = importer.wantedDependencies[index]; + return resolvedDirectDepToSpecObject({ ...rdd, isNew: wantedDep.isNew, specRaw: wantedDep.raw, preserveNonSemverVersionSpec: wantedDep.preserveNonSemverVersionSpec }, importer, { + nodeExecPath: wantedDep.nodeExecPath, + pinnedVersion: wantedDep.pinnedVersion ?? importer.pinnedVersion ?? "major", + preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, + saveWorkspaceProtocol: opts.saveWorkspaceProtocol + }); + }); + for (const pkgToInstall of importer.wantedDependencies) { + if (pkgToInstall.updateSpec && pkgToInstall.alias && !specsToUpsert.some(({ alias }) => alias === pkgToInstall.alias)) { + specsToUpsert.push({ + alias: pkgToInstall.alias, + nodeExecPath: pkgToInstall.nodeExecPath, + peer: importer.peer, + saveType: importer.targetDependenciesField + }); + } + } + const hookedManifest = await (0, manifest_utils_1.updateProjectManifestObject)(importer.rootDir, importer.manifest, specsToUpsert); + const originalManifest = importer.originalManifest != null ? await (0, manifest_utils_1.updateProjectManifestObject)(importer.rootDir, importer.originalManifest, specsToUpsert) : void 0; + return [hookedManifest, originalManifest]; + } + exports2.updateProjectManifest = updateProjectManifest; + function resolvedDirectDepToSpecObject({ alias, isNew, name, normalizedPref, resolution, specRaw, version: version2, preserveNonSemverVersionSpec }, importer, opts) { + let pref; + if (normalizedPref) { + pref = normalizedPref; + } else { + const shouldUseWorkspaceProtocol = resolution.type === "directory" && (Boolean(opts.saveWorkspaceProtocol) || opts.preserveWorkspaceProtocol && specRaw.includes("@workspace:")) && opts.pinnedVersion !== "none"; + if (isNew === true) { + pref = getPrefPreferSpecifiedSpec({ + alias, + name, + pinnedVersion: opts.pinnedVersion, + specRaw, + version: version2, + rolling: shouldUseWorkspaceProtocol && opts.saveWorkspaceProtocol === "rolling" + }); } else { - peg$currPos = s2; - s2 = peg$FAILED; + pref = getPrefPreferSpecifiedExoticSpec({ + alias, + name, + pinnedVersion: opts.pinnedVersion, + specRaw, + version: version2, + rolling: shouldUseWorkspaceProtocol && opts.saveWorkspaceProtocol === "rolling", + preserveNonSemverVersionSpec + }); } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$currPos; - s3 = peg$currPos; - peg$silentFails++; - s4 = peg$parseGlobSpecialShellChars(); - peg$silentFails--; - if (s4 === peg$FAILED) { - s3 = void 0; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - if (s3 !== peg$FAILED) { - if (input.length > peg$currPos) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c67); - } - } - if (s4 !== peg$FAILED) { - peg$savedPos = s2; - s3 = peg$c68(s4); - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } + if (shouldUseWorkspaceProtocol && !pref.startsWith("workspace:")) { + pref = `workspace:${pref}`; + } + } + return { + alias, + nodeExecPath: opts.nodeExecPath, + peer: importer["peer"], + pref, + saveType: importer["targetDependenciesField"] + }; + } + function getPrefPreferSpecifiedSpec(opts) { + const prefix = (0, manifest_utils_1.getPrefix)(opts.alias, opts.name); + if (opts.specRaw?.startsWith(`${opts.alias}@${prefix}`)) { + const range = opts.specRaw.slice(`${opts.alias}@${prefix}`.length); + if (range) { + const selector = (0, version_selector_type_1.default)(range); + if (selector != null && (selector.type === "version" || selector.type === "range")) { + return opts.specRaw.slice(opts.alias.length + 1); } - } else { - s1 = peg$FAILED; } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c71(s1); + } + if (semver_12.default.parse(opts.version)?.prerelease.length) { + return `${prefix}${opts.version}`; + } + return `${prefix}${(0, manifest_utils_1.createVersionSpec)(opts.version, { pinnedVersion: opts.pinnedVersion, rolling: opts.rolling })}`; + } + function getPrefPreferSpecifiedExoticSpec(opts) { + const prefix = (0, manifest_utils_1.getPrefix)(opts.alias, opts.name); + if (opts.specRaw?.startsWith(`${opts.alias}@${prefix}`)) { + let specWithoutName = opts.specRaw.slice(`${opts.alias}@${prefix}`.length); + if (specWithoutName.startsWith("workspace:")) { + specWithoutName = specWithoutName.slice(10); + if (specWithoutName === "*" || specWithoutName === "^" || specWithoutName === "~") { + return specWithoutName; + } + } + const selector = (0, version_selector_type_1.default)(specWithoutName); + if ((selector == null || selector.type !== "version" && selector.type !== "range") && opts.preserveNonSemverVersionSpec) { + return opts.specRaw.slice(opts.alias.length + 1); } - s0 = s1; - return s0; } - function peg$parseEnvVariable() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - if (peg$c116.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; + if (semver_12.default.parse(opts.version)?.prerelease.length) { + return `${prefix}${opts.version}`; + } + return `${prefix}${(0, manifest_utils_1.createVersionSpec)(opts.version, { pinnedVersion: opts.pinnedVersion, rolling: opts.rolling })}`; + } + } +}); + +// ../pkg-manager/resolve-dependencies/lib/index.js +var require_lib134 = __commonJS({ + "../pkg-manager/resolve-dependencies/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.resolveDependencies = exports2.getWantedDependencies = void 0; + var path_1 = __importDefault4(require("path")); + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var core_loggers_1 = require_lib9(); + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var read_package_json_1 = require_lib41(); + var types_1 = require_lib25(); + var promise_share_1 = __importDefault4(require_promise_share()); + var difference_1 = __importDefault4(require_difference()); + var zipWith_1 = __importDefault4(require_zipWith2()); + var getWantedDependencies_1 = require_getWantedDependencies(); + Object.defineProperty(exports2, "getWantedDependencies", { enumerable: true, get: function() { + return getWantedDependencies_1.getWantedDependencies; + } }); + var depPathToRef_1 = require_depPathToRef(); + var resolveDependencies_1 = require_resolveDependencies(); + var resolveDependencyTree_1 = require_resolveDependencyTree(); + var resolvePeers_1 = require_resolvePeers(); + var toResolveImporter_1 = require_toResolveImporter(); + var updateLockfile_1 = require_updateLockfile(); + var updateProjectManifest_1 = require_updateProjectManifest(); + async function resolveDependencies(importers, opts) { + const _toResolveImporter = toResolveImporter_1.toResolveImporter.bind(null, { + defaultUpdateDepth: opts.defaultUpdateDepth, + lockfileOnly: opts.dryRun, + preferredVersions: opts.preferredVersions, + virtualStoreDir: opts.virtualStoreDir, + workspacePackages: opts.workspacePackages + }); + const projectsToResolve = await Promise.all(importers.map(async (project) => _toResolveImporter(project))); + const { dependenciesTree, outdatedDependencies, resolvedImporters, resolvedPackagesByDepPath, wantedToBeSkippedPackageIds, appliedPatches, time } = await (0, resolveDependencyTree_1.resolveDependencyTree)(projectsToResolve, opts); + if (opts.patchedDependencies && (opts.forceFullResolution || !Object.keys(opts.wantedLockfile.packages ?? {})?.length) && Object.keys(opts.wantedLockfile.importers).length === importers.length) { + verifyPatches({ + patchedDependencies: Object.keys(opts.patchedDependencies), + appliedPatches, + allowNonAppliedPatches: opts.allowNonAppliedPatches + }); + } + const linkedDependenciesByProjectId = {}; + const projectsToLink = await Promise.all(projectsToResolve.map(async (project, index) => { + const resolvedImporter = resolvedImporters[project.id]; + linkedDependenciesByProjectId[project.id] = resolvedImporter.linkedDependencies; + let updatedManifest = project.manifest; + let updatedOriginalManifest = project.originalManifest; + if (project.updatePackageManifest) { + const manifests = await (0, updateProjectManifest_1.updateProjectManifest)(project, { + directDependencies: resolvedImporter.directDependencies, + preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, + saveWorkspaceProtocol: opts.saveWorkspaceProtocol + }); + updatedManifest = manifests[0]; + updatedOriginalManifest = manifests[1]; } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c117); - } + core_loggers_1.packageManifestLogger.debug({ + prefix: project.rootDir, + updated: project.manifest + }); } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c116.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c117); + if (updatedManifest != null) { + if (opts.autoInstallPeers) { + if (updatedManifest.peerDependencies) { + const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(updatedManifest); + for (const [peerName, peerRange] of Object.entries(updatedManifest.peerDependencies)) { + if (allDeps[peerName]) + continue; + updatedManifest.dependencies ?? (updatedManifest.dependencies = {}); + updatedManifest.dependencies[peerName] = peerRange; } } } - } else { - s1 = peg$FAILED; + const projectSnapshot = opts.wantedLockfile.importers[project.id]; + opts.wantedLockfile.importers[project.id] = addDirectDependenciesToLockfile(updatedManifest, projectSnapshot, resolvedImporter.linkedDependencies, resolvedImporter.directDependencies, opts.registries, opts.autoInstallPeers); + } + const topParents = project.manifest ? await getTopParents((0, difference_1.default)(Object.keys((0, manifest_utils_1.getAllDependenciesFromManifest)(project.manifest)), resolvedImporter.directDependencies.map(({ alias }) => alias) || []), project.modulesDir) : []; + resolvedImporter.linkedDependencies.forEach((linkedDependency) => { + topParents.push({ + name: linkedDependency.alias, + version: linkedDependency.version, + linkedDir: (0, resolveDependencies_1.createNodeIdForLinkedLocalPkg)(opts.lockfileDir, linkedDependency.resolution.directory) + }); + }); + const manifest = updatedOriginalManifest ?? project.originalManifest ?? project.manifest; + importers[index].manifest = manifest; + return { + binsDir: project.binsDir, + directNodeIdsByAlias: resolvedImporter.directNodeIdsByAlias, + id: project.id, + linkedDependencies: resolvedImporter.linkedDependencies, + manifest: project.manifest, + modulesDir: project.modulesDir, + rootDir: project.rootDir, + topParents + }; + })); + const { dependenciesGraph, dependenciesByProjectId, peerDependencyIssuesByProjects } = (0, resolvePeers_1.resolvePeers)({ + dependenciesTree, + dedupePeerDependents: opts.dedupePeerDependents, + lockfileDir: opts.lockfileDir, + projects: projectsToLink, + virtualStoreDir: opts.virtualStoreDir, + resolvePeersFromWorkspaceRoot: Boolean(opts.resolvePeersFromWorkspaceRoot), + useLockfileV6: Boolean(opts.useLockfileV6) + }); + for (const { id, manifest } of projectsToLink) { + for (const [alias, depPath] of Object.entries(dependenciesByProjectId[id])) { + const projectSnapshot = opts.wantedLockfile.importers[id]; + if (manifest.dependenciesMeta != null) { + projectSnapshot.dependenciesMeta = manifest.dependenciesMeta; + } + const depNode = dependenciesGraph[depPath]; + const ref = (0, depPathToRef_1.depPathToRef)(depPath, { + alias, + realName: depNode.name, + registries: opts.registries, + resolution: depNode.resolution + }); + if (projectSnapshot.dependencies?.[alias]) { + projectSnapshot.dependencies[alias] = ref; + } else if (projectSnapshot.devDependencies?.[alias]) { + projectSnapshot.devDependencies[alias] = ref; + } else if (projectSnapshot.optionalDependencies?.[alias]) { + projectSnapshot.optionalDependencies[alias] = ref; + } } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c118(); + } + const { newLockfile, pendingRequiresBuilds } = (0, updateLockfile_1.updateLockfile)({ + dependenciesGraph, + lockfile: opts.wantedLockfile, + prefix: opts.virtualStoreDir, + registries: opts.registries, + lockfileIncludeTarballUrl: opts.lockfileIncludeTarballUrl + }); + if (time) { + newLockfile.time = { + ...opts.wantedLockfile.time, + ...time + }; + } + if (opts.forceFullResolution && opts.wantedLockfile != null) { + for (const [depPath, pkg] of Object.entries(dependenciesGraph)) { + if (opts.allowBuild != null && !opts.allowBuild(pkg.name) || opts.wantedLockfile.packages?.[depPath] == null || pkg.requiresBuild === true) + continue; + pendingRequiresBuilds.push(depPath); } - s0 = s1; - return s0; } - function peg$parseIdentifier() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - if (peg$c119.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; + const waitTillAllFetchingsFinish = async () => Promise.all(Object.values(resolvedPackagesByDepPath).map(async ({ finishing }) => finishing?.())); + return { + dependenciesByProjectId, + dependenciesGraph, + finishLockfileUpdates: (0, promise_share_1.default)(finishLockfileUpdates(dependenciesGraph, pendingRequiresBuilds, newLockfile)), + outdatedDependencies, + linkedDependenciesByProjectId, + newLockfile, + peerDependencyIssuesByProjects, + waitTillAllFetchingsFinish, + wantedToBeSkippedPackageIds + }; + } + exports2.resolveDependencies = resolveDependencies; + function verifyPatches({ patchedDependencies, appliedPatches, allowNonAppliedPatches }) { + const nonAppliedPatches = patchedDependencies.filter((patchKey) => !appliedPatches.has(patchKey)); + if (!nonAppliedPatches.length) + return; + const message2 = `The following patches were not applied: ${nonAppliedPatches.join(", ")}`; + if (allowNonAppliedPatches) { + (0, logger_1.globalWarn)(message2); + return; + } + throw new error_1.PnpmError("PATCH_NOT_APPLIED", message2, { + hint: 'Either remove them from "patchedDependencies" or update them to match packages in your dependencies.' + }); + } + async function finishLockfileUpdates(dependenciesGraph, pendingRequiresBuilds, newLockfile) { + return Promise.all(pendingRequiresBuilds.map(async (depPath) => { + const depNode = dependenciesGraph[depPath]; + let requiresBuild; + if (depNode.optional) { + requiresBuild = true; + } else if (depNode.fetchingBundledManifest != null) { + const filesResponse = await depNode.fetchingFiles(); + const pkgJson = await depNode.fetchingBundledManifest(); + requiresBuild = Boolean( + pkgJson?.scripts != null && (Boolean(pkgJson.scripts.preinstall) || Boolean(pkgJson.scripts.install) || Boolean(pkgJson.scripts.postinstall)) || filesResponse.filesIndex["binding.gyp"] || Object.keys(filesResponse.filesIndex).some((filename) => !(filename.match(/^[.]hooks[\\/]/) == null)) + // TODO: optimize this + ); } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c120); - } + throw new Error(`Cannot create ${constants_1.WANTED_LOCKFILE} because raw manifest (aka package.json) wasn't fetched for "${depPath}"`); } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c119.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c120); - } - } - } - } else { - s1 = peg$FAILED; + if (typeof depNode.requiresBuild === "function") { + depNode.requiresBuild["resolve"](requiresBuild); } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c118(); + if (requiresBuild && newLockfile.packages?.[depPath]) { + newLockfile.packages[depPath].requiresBuild = true; } - s0 = s1; - return s0; + })); + } + function addDirectDependenciesToLockfile(newManifest, projectSnapshot, linkedPackages, directDependencies, registries, autoInstallPeers) { + const newProjectSnapshot = { + dependencies: {}, + devDependencies: {}, + optionalDependencies: {}, + specifiers: {} + }; + if (newManifest.publishConfig?.directory) { + newProjectSnapshot.publishDirectory = newManifest.publishConfig.directory; } - function peg$parseSpecialShellChars() { - var s0; - if (peg$c121.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c122); + linkedPackages.forEach((linkedPkg) => { + newProjectSnapshot.specifiers[linkedPkg.alias] = (0, manifest_utils_1.getSpecFromPackageManifest)(newManifest, linkedPkg.alias); + }); + const directDependenciesByAlias = directDependencies.reduce((acc, directDependency) => { + acc[directDependency.alias] = directDependency; + return acc; + }, {}); + const allDeps = Array.from(new Set(Object.keys((0, manifest_utils_1.getAllDependenciesFromManifest)(newManifest)))); + for (const alias of allDeps) { + if (directDependenciesByAlias[alias]) { + const dep = directDependenciesByAlias[alias]; + const ref = (0, depPathToRef_1.depPathToRef)(dep.pkgId, { + alias: dep.alias, + realName: dep.name, + registries, + resolution: dep.resolution + }); + if (dep.dev) { + newProjectSnapshot.devDependencies[dep.alias] = ref; + } else if (dep.optional) { + newProjectSnapshot.optionalDependencies[dep.alias] = ref; + } else { + newProjectSnapshot.dependencies[dep.alias] = ref; } - } - return s0; - } - function peg$parseGlobSpecialShellChars() { - var s0; - if (peg$c123.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c124); + newProjectSnapshot.specifiers[dep.alias] = (0, manifest_utils_1.getSpecFromPackageManifest)(newManifest, dep.alias); + } else if (projectSnapshot.specifiers[alias]) { + newProjectSnapshot.specifiers[alias] = projectSnapshot.specifiers[alias]; + if (projectSnapshot.dependencies?.[alias]) { + newProjectSnapshot.dependencies[alias] = projectSnapshot.dependencies[alias]; + } else if (projectSnapshot.optionalDependencies?.[alias]) { + newProjectSnapshot.optionalDependencies[alias] = projectSnapshot.optionalDependencies[alias]; + } else if (projectSnapshot.devDependencies?.[alias]) { + newProjectSnapshot.devDependencies[alias] = projectSnapshot.devDependencies[alias]; } } - return s0; } - function peg$parseS() { - var s0, s1; - s0 = []; - if (peg$c125.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c126); - } - } - if (s1 !== peg$FAILED) { - while (s1 !== peg$FAILED) { - s0.push(s1); - if (peg$c125.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c126); - } - } - } - } else { - s0 = peg$FAILED; + alignDependencyTypes(newManifest, newProjectSnapshot); + return newProjectSnapshot; + } + function alignDependencyTypes(manifest, projectSnapshot) { + const depTypesOfAliases = getAliasToDependencyTypeMap(manifest); + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if (projectSnapshot[depType] == null) + continue; + for (const [alias, ref] of Object.entries(projectSnapshot[depType] ?? {})) { + if (depType === depTypesOfAliases[alias] || !depTypesOfAliases[alias]) + continue; + projectSnapshot[depTypesOfAliases[alias]][alias] = ref; + delete projectSnapshot[depType][alias]; } - return s0; } - peg$result = peg$startRuleFunction(); - if (peg$result !== peg$FAILED && peg$currPos === input.length) { - return peg$result; - } else { - if (peg$result !== peg$FAILED && peg$currPos < input.length) { - peg$fail(peg$endExpectation()); + } + function getAliasToDependencyTypeMap(manifest) { + const depTypesOfAliases = {}; + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if (manifest[depType] == null) + continue; + for (const alias of Object.keys(manifest[depType] ?? {})) { + if (!depTypesOfAliases[alias]) { + depTypesOfAliases[alias] = depType; + } } - throw peg$buildStructuredError(peg$maxFailExpected, peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)); } + return depTypesOfAliases; + } + async function getTopParents(pkgAliases, modulesDir) { + const pkgs = await Promise.all(pkgAliases.map((alias) => path_1.default.join(modulesDir, alias)).map(read_package_json_1.safeReadPackageJsonFromDir)); + return (0, zipWith_1.default)((manifest, alias) => { + if (!manifest) + return null; + return { + alias, + name: manifest.name, + version: manifest.version + }; + }, pkgs, pkgAliases).filter(Boolean); } - module2.exports = { - SyntaxError: peg$SyntaxError, - parse: peg$parse - }; } }); -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/shell.js -var require_shell2 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/shell.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseShell = void 0; - var shell_1 = require_shell(); - function parseShell(source, options = { isGlobPattern: () => false }) { - try { - return shell_1.parse(source, options); - } catch (error) { - if (error.location) - error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); - throw error; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/flatten.js +var require_flatten2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/flatten.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _makeFlat = require_makeFlat(); + var flatten = /* @__PURE__ */ _curry1( + /* @__PURE__ */ _makeFlat(true) + ); + module2.exports = flatten; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/head.js +var require_head = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/head.js"(exports2, module2) { + var nth = require_nth(); + var head = /* @__PURE__ */ nth(0); + module2.exports = head; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pipeWith.js +var require_pipeWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pipeWith.js"(exports2, module2) { + var _arity = require_arity(); + var _curry2 = require_curry2(); + var head = require_head(); + var _reduce = require_reduce2(); + var tail = require_tail(); + var identity = require_identity3(); + var pipeWith = /* @__PURE__ */ _curry2(function pipeWith2(xf, list) { + if (list.length <= 0) { + return identity; } - } - exports2.parseShell = parseShell; + var headList = head(list); + var tailList = tail(list); + return _arity(headList.length, function() { + return _reduce(function(result2, f) { + return xf.call(this, f, result2); + }, headList.apply(this, arguments), tailList); + }); + }); + module2.exports = pipeWith; } }); -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js -var require_resolution = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js"(exports2, module2) { +// ../node_modules/.pnpm/validate-npm-package-name@5.0.0/node_modules/validate-npm-package-name/lib/index.js +var require_lib135 = __commonJS({ + "../node_modules/.pnpm/validate-npm-package-name@5.0.0/node_modules/validate-npm-package-name/lib/index.js"(exports2, module2) { "use strict"; - function peg$subclass(child, parent) { - function ctor() { - this.constructor = child; + var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$"); + var builtins = require_builtins(); + var blacklist = [ + "node_modules", + "favicon.ico" + ]; + function validate2(name) { + var warnings = []; + var errors = []; + if (name === null) { + errors.push("name cannot be null"); + return done(warnings, errors); } - ctor.prototype = parent.prototype; - child.prototype = new ctor(); - } - function peg$SyntaxError(message2, expected, found, location) { - this.message = message2; - this.expected = expected; - this.found = found; - this.location = location; - this.name = "SyntaxError"; - if (typeof Error.captureStackTrace === "function") { - Error.captureStackTrace(this, peg$SyntaxError); + if (name === void 0) { + errors.push("name cannot be undefined"); + return done(warnings, errors); } - } - peg$subclass(peg$SyntaxError, Error); - peg$SyntaxError.buildMessage = function(expected, found) { - var DESCRIBE_EXPECTATION_FNS = { - literal: function(expectation) { - return `"${literalEscape(expectation.text)}"`; - }, - "class": function(expectation) { - var escapedParts = "", i; - for (i = 0; i < expectation.parts.length; i++) - escapedParts += expectation.parts[i] instanceof Array ? `${classEscape(expectation.parts[i][0])}-${classEscape(expectation.parts[i][1])}` : classEscape(expectation.parts[i]); - return `[${expectation.inverted ? "^" : ""}${escapedParts}]`; - }, - any: function(expectation) { - return "any character"; - }, - end: function(expectation) { - return "end of input"; - }, - other: function(expectation) { - return expectation.description; - } - }; - function hex(ch) { - return ch.charCodeAt(0).toString(16).toUpperCase(); + if (typeof name !== "string") { + errors.push("name must be a string"); + return done(warnings, errors); } - function literalEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return `\\x0${hex(ch)}`; - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return `\\x${hex(ch)}`; - }); + if (!name.length) { + errors.push("name length must be greater than zero"); } - function classEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return `\\x0${hex(ch)}`; - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return `\\x${hex(ch)}`; - }); + if (name.match(/^\./)) { + errors.push("name cannot start with a period"); } - function describeExpectation(expectation) { - return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + if (name.match(/^_/)) { + errors.push("name cannot start with an underscore"); } - function describeExpected(expected2) { - var descriptions = new Array(expected2.length), i, j; - for (i = 0; i < expected2.length; i++) - descriptions[i] = describeExpectation(expected2[i]); - descriptions.sort(); - if (descriptions.length > 0) { - for (i = 1, j = 1; i < descriptions.length; i++) { - if (descriptions[i - 1] !== descriptions[i]) { - descriptions[j] = descriptions[i]; - j++; - } - } - descriptions.length = j; + if (name.trim() !== name) { + errors.push("name cannot contain leading or trailing spaces"); + } + blacklist.forEach(function(blacklistedName) { + if (name.toLowerCase() === blacklistedName) { + errors.push(blacklistedName + " is a blacklisted name"); } - switch (descriptions.length) { - case 1: - return descriptions[0]; - case 2: - return `${descriptions[0]} or ${descriptions[1]}`; - default: - return `${descriptions.slice(0, -1).join(", ")}, or ${descriptions[descriptions.length - 1]}`; + }); + builtins({ version: "*" }).forEach(function(builtin) { + if (name.toLowerCase() === builtin) { + warnings.push(builtin + " is a core module name"); } + }); + if (name.length > 214) { + warnings.push("name can no longer contain more than 214 characters"); } - function describeFound(found2) { - return found2 ? `"${literalEscape(found2)}"` : "end of input"; - } - return `Expected ${describeExpected(expected)} but ${describeFound(found)} found.`; - }; - function peg$parse(input, options) { - options = options !== void 0 ? options : {}; - var peg$FAILED = {}, peg$startRuleFunctions = { resolution: peg$parseresolution }, peg$startRuleFunction = peg$parseresolution, peg$c0 = "/", peg$c1 = peg$literalExpectation("/", false), peg$c2 = function(from, descriptor) { - return { from, descriptor }; - }, peg$c3 = function(descriptor) { - return { descriptor }; - }, peg$c4 = "@", peg$c5 = peg$literalExpectation("@", false), peg$c6 = function(fullName, description) { - return { fullName, description }; - }, peg$c7 = function(fullName) { - return { fullName }; - }, peg$c8 = function() { - return text(); - }, peg$c9 = /^[^\/@]/, peg$c10 = peg$classExpectation(["/", "@"], true, false), peg$c11 = /^[^\/]/, peg$c12 = peg$classExpectation(["/"], true, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; - if ("startRule" in options) { - if (!(options.startRule in peg$startRuleFunctions)) - throw new Error(`Can't start parsing from rule "${options.startRule}".`); - peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; - } - function text() { - return input.substring(peg$savedPos, peg$currPos); - } - function location() { - return peg$computeLocation(peg$savedPos, peg$currPos); - } - function expected(description, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildStructuredError([peg$otherExpectation(description)], input.substring(peg$savedPos, peg$currPos), location2); - } - function error(message2, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildSimpleError(message2, location2); - } - function peg$literalExpectation(text2, ignoreCase) { - return { type: "literal", text: text2, ignoreCase }; + if (name.toLowerCase() !== name) { + warnings.push("name can no longer contain capital letters"); } - function peg$classExpectation(parts, inverted, ignoreCase) { - return { type: "class", parts, inverted, ignoreCase }; + if (/[~'!()*]/.test(name.split("/").slice(-1)[0])) { + warnings.push(`name can no longer contain special characters ("~'!()*")`); } - function peg$anyExpectation() { - return { type: "any" }; + if (encodeURIComponent(name) !== name) { + var nameMatch = name.match(scopedPackagePattern); + if (nameMatch) { + var user = nameMatch[1]; + var pkg = nameMatch[2]; + if (encodeURIComponent(user) === user && encodeURIComponent(pkg) === pkg) { + return done(warnings, errors); + } + } + errors.push("name can only contain URL-friendly characters"); } - function peg$endExpectation() { - return { type: "end" }; + return done(warnings, errors); + } + var done = function(warnings, errors) { + var result2 = { + validForNewPackages: errors.length === 0 && warnings.length === 0, + validForOldPackages: errors.length === 0, + warnings, + errors + }; + if (!result2.warnings.length) { + delete result2.warnings; } - function peg$otherExpectation(description) { - return { type: "other", description }; + if (!result2.errors.length) { + delete result2.errors; } - function peg$computePosDetails(pos) { - var details = peg$posDetailsCache[pos], p; - if (details) { - return details; - } else { - p = pos - 1; - while (!peg$posDetailsCache[p]) - p--; - details = peg$posDetailsCache[p]; - details = { - line: details.line, - column: details.column + return result2; + }; + module2.exports = validate2; + } +}); + +// ../packages/parse-wanted-dependency/lib/index.js +var require_lib136 = __commonJS({ + "../packages/parse-wanted-dependency/lib/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseWantedDependency = void 0; + var validate_npm_package_name_1 = __importDefault4(require_lib135()); + function parseWantedDependency(rawWantedDependency) { + const versionDelimiter = rawWantedDependency.indexOf("@", 1); + if (versionDelimiter !== -1) { + const alias = rawWantedDependency.slice(0, versionDelimiter); + if ((0, validate_npm_package_name_1.default)(alias).validForOldPackages) { + return { + alias, + pref: rawWantedDependency.slice(versionDelimiter + 1) }; - while (p < pos) { - if (input.charCodeAt(p) === 10) { - details.line++; - details.column = 1; - } else { - details.column++; - } - p++; - } - peg$posDetailsCache[pos] = details; - return details; } + return { + pref: rawWantedDependency + }; } - function peg$computeLocation(startPos, endPos) { - var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + if ((0, validate_npm_package_name_1.default)(rawWantedDependency).validForOldPackages) { return { - start: { - offset: startPos, - line: startPosDetails.line, - column: startPosDetails.column - }, - end: { - offset: endPos, - line: endPosDetails.line, - column: endPosDetails.column + alias: rawWantedDependency + }; + } + return { + pref: rawWantedDependency + }; + } + exports2.parseWantedDependency = parseWantedDependency; + } +}); + +// ../pkg-manager/core/lib/parseWantedDependencies.js +var require_parseWantedDependencies = __commonJS({ + "../pkg-manager/core/lib/parseWantedDependencies.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseWantedDependencies = void 0; + var parse_wanted_dependency_1 = require_lib136(); + var which_version_is_pinned_1 = require_lib132(); + function parseWantedDependencies(rawWantedDependencies, opts) { + return rawWantedDependencies.map((rawWantedDependency) => { + const parsed = (0, parse_wanted_dependency_1.parseWantedDependency)(rawWantedDependency); + const alias = parsed["alias"]; + let pref = parsed["pref"]; + let pinnedVersion; + if (!opts.allowNew && (!alias || !opts.currentPrefs[alias])) { + return null; + } + if (alias && opts.currentPrefs[alias]) { + if (!pref) { + pref = opts.currentPrefs[alias].startsWith("workspace:") && opts.updateWorkspaceDependencies === true ? "workspace:*" : opts.currentPrefs[alias]; } + pinnedVersion = (0, which_version_is_pinned_1.whichVersionIsPinned)(opts.currentPrefs[alias]); + } + const result2 = { + alias, + dev: Boolean(opts.dev || alias && !!opts.devDependencies[alias]), + optional: Boolean(opts.optional || alias && !!opts.optionalDependencies[alias]), + pinnedVersion, + raw: alias && opts.currentPrefs?.[alias]?.startsWith("workspace:") ? `${alias}@${opts.currentPrefs[alias]}` : rawWantedDependency + }; + if (pref) { + return { + ...result2, + pref + }; + } + if (alias && opts.preferredSpecs?.[alias]) { + return { + ...result2, + pref: opts.preferredSpecs[alias], + raw: `${rawWantedDependency}@${opts.preferredSpecs[alias]}` + }; + } + if (alias && opts.overrides?.[alias]) { + return { + ...result2, + pref: opts.overrides[alias], + raw: `${alias}@${opts.overrides[alias]}` + }; + } + return { + ...result2, + pref: opts.defaultTag }; + }).filter((wd) => wd !== null); + } + exports2.parseWantedDependencies = parseWantedDependencies; + } +}); + +// ../pkg-manager/core/lib/uninstall/removeDeps.js +var require_removeDeps = __commonJS({ + "../pkg-manager/core/lib/uninstall/removeDeps.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.removeDeps = void 0; + var core_loggers_1 = require_lib9(); + var types_1 = require_lib25(); + async function removeDeps(packageManifest, removedPackages, opts) { + if (opts.saveType) { + if (packageManifest[opts.saveType] == null) + return packageManifest; + removedPackages.forEach((dependency) => { + delete packageManifest[opts.saveType][dependency]; + }); + } else { + types_1.DEPENDENCIES_FIELDS.filter((depField) => packageManifest[depField]).forEach((depField) => { + removedPackages.forEach((dependency) => { + delete packageManifest[depField][dependency]; + }); + }); } - function peg$fail(expected2) { - if (peg$currPos < peg$maxFailPos) - return; - if (peg$currPos > peg$maxFailPos) { - peg$maxFailPos = peg$currPos; - peg$maxFailExpected = []; + if (packageManifest.peerDependencies != null) { + for (const removedDependency of removedPackages) { + delete packageManifest.peerDependencies[removedDependency]; } - peg$maxFailExpected.push(expected2); } - function peg$buildSimpleError(message2, location2) { - return new peg$SyntaxError(message2, null, null, location2); + if (packageManifest.dependenciesMeta != null) { + for (const removedDependency of removedPackages) { + delete packageManifest.dependenciesMeta[removedDependency]; + } } - function peg$buildStructuredError(expected2, found, location2) { - return new peg$SyntaxError(peg$SyntaxError.buildMessage(expected2, found), expected2, found, location2); + core_loggers_1.packageManifestLogger.debug({ + prefix: opts.prefix, + updated: packageManifest + }); + return packageManifest; + } + exports2.removeDeps = removeDeps; + } +}); + +// ../node_modules/.pnpm/p-every@2.0.0/node_modules/p-every/index.js +var require_p_every = __commonJS({ + "../node_modules/.pnpm/p-every@2.0.0/node_modules/p-every/index.js"(exports2, module2) { + "use strict"; + var pMap = require_p_map(); + var EndError = class extends Error { + }; + var test = (testFunction) => async (element, index) => { + const result2 = await testFunction(element, index); + if (!result2) { + throw new EndError(); } - function peg$parseresolution() { - var s0, s1, s2, s3; - s0 = peg$currPos; - s1 = peg$parsespecifier(); - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 47) { - s2 = peg$c0; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c1); - } - } - if (s2 !== peg$FAILED) { - s3 = peg$parsespecifier(); - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c2(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsespecifier(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c3(s1); - } - s0 = s1; + return result2; + }; + var pEvery = async (iterable, testFunction, opts) => { + try { + await pMap(iterable, test(testFunction), opts); + return true; + } catch (error) { + if (error instanceof EndError) { + return false; } - return s0; + throw error; } - function peg$parsespecifier() { - var s0, s1, s2, s3; - s0 = peg$currPos; - s1 = peg$parsefullName(); - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 64) { - s2 = peg$c4; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c5); - } - } - if (s2 !== peg$FAILED) { - s3 = peg$parsedescription(); - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c6(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }; + module2.exports = pEvery; + module2.exports.default = pEvery; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_reduced.js +var require_reduced = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_reduced.js"(exports2, module2) { + function _reduced(x) { + return x && x["@@transducer/reduced"] ? x : { + "@@transducer/value": x, + "@@transducer/reduced": true + }; + } + module2.exports = _reduced; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xany.js +var require_xany = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xany.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XAny = /* @__PURE__ */ function() { + function XAny2(f, xf) { + this.xf = xf; + this.f = f; + this.any = false; + } + XAny2.prototype["@@transducer/init"] = _xfBase.init; + XAny2.prototype["@@transducer/result"] = function(result2) { + if (!this.any) { + result2 = this.xf["@@transducer/step"](result2, false); + } + return this.xf["@@transducer/result"](result2); + }; + XAny2.prototype["@@transducer/step"] = function(result2, input) { + if (this.f(input)) { + this.any = true; + result2 = _reduced(this.xf["@@transducer/step"](result2, true)); + } + return result2; + }; + return XAny2; + }(); + var _xany = /* @__PURE__ */ _curry2(function _xany2(f, xf) { + return new XAny(f, xf); + }); + module2.exports = _xany; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/any.js +var require_any = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/any.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xany = require_xany(); + var any = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["any"], _xany, function any2(fn2, list) { + var idx = 0; + while (idx < list.length) { + if (fn2(list[idx])) { + return true; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + idx += 1; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsefullName(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c7(s1); + return false; + }) + ); + module2.exports = any; + } +}); + +// ../pkg-manager/core/lib/install/allProjectsAreUpToDate.js +var require_allProjectsAreUpToDate = __commonJS({ + "../pkg-manager/core/lib/install/allProjectsAreUpToDate.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.allProjectsAreUpToDate = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_utils_1 = require_lib84(); + var read_package_json_1 = require_lib41(); + var types_1 = require_lib25(); + var p_every_1 = __importDefault4(require_p_every()); + var any_1 = __importDefault4(require_any()); + var semver_12 = __importDefault4(require_semver2()); + async function allProjectsAreUpToDate(projects, opts) { + const manifestsByDir = opts.workspacePackages ? getWorkspacePackagesByDirectory(opts.workspacePackages) : {}; + const _satisfiesPackageManifest = lockfile_utils_1.satisfiesPackageManifest.bind(null, opts.wantedLockfile); + const _linkedPackagesAreUpToDate = linkedPackagesAreUpToDate.bind(null, { + linkWorkspacePackages: opts.linkWorkspacePackages, + manifestsByDir, + workspacePackages: opts.workspacePackages + }); + return (0, p_every_1.default)(projects, (project) => { + const importer = opts.wantedLockfile.importers[project.id]; + return !hasLocalTarballDepsInRoot(importer) && _satisfiesPackageManifest(project.manifest, project.id, { autoInstallPeers: opts.autoInstallPeers }) && _linkedPackagesAreUpToDate({ + dir: project.rootDir, + manifest: project.manifest, + snapshot: importer + }); + }); + } + exports2.allProjectsAreUpToDate = allProjectsAreUpToDate; + function getWorkspacePackagesByDirectory(workspacePackages) { + const workspacePackagesByDirectory = {}; + Object.keys(workspacePackages || {}).forEach((pkgName) => { + Object.keys(workspacePackages[pkgName] || {}).forEach((pkgVersion) => { + workspacePackagesByDirectory[workspacePackages[pkgName][pkgVersion].dir] = workspacePackages[pkgName][pkgVersion].manifest; + }); + }); + return workspacePackagesByDirectory; + } + async function linkedPackagesAreUpToDate({ linkWorkspacePackages, manifestsByDir, workspacePackages }, project) { + for (const depField of types_1.DEPENDENCIES_FIELDS) { + const lockfileDeps = project.snapshot[depField]; + const manifestDeps = project.manifest[depField]; + if (lockfileDeps == null || manifestDeps == null) + continue; + const depNames = Object.keys(lockfileDeps); + for (const depName of depNames) { + const currentSpec = manifestDeps[depName]; + if (!currentSpec) + continue; + const lockfileRef = lockfileDeps[depName]; + const isLinked = lockfileRef.startsWith("link:"); + if (isLinked && (currentSpec.startsWith("link:") || currentSpec.startsWith("file:") || currentSpec.startsWith("workspace:."))) { + continue; } - s0 = s1; + const linkedDir = isLinked ? path_1.default.join(project.dir, lockfileRef.slice(5)) : workspacePackages?.[depName]?.[lockfileRef]?.dir; + if (!linkedDir) + continue; + if (!linkWorkspacePackages && !currentSpec.startsWith("workspace:")) { + continue; + } + const linkedPkg = manifestsByDir[linkedDir] ?? await (0, read_package_json_1.safeReadPackageJsonFromDir)(linkedDir); + const availableRange = getVersionRange(currentSpec); + const localPackageSatisfiesRange = availableRange === "*" || availableRange === "^" || availableRange === "~" || linkedPkg && semver_12.default.satisfies(linkedPkg.version, availableRange, { loose: true }); + if (isLinked !== localPackageSatisfiesRange) + return false; } - return s0; } - function peg$parsefullName() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 64) { - s1 = peg$c4; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c5); - } + return true; + } + function getVersionRange(spec) { + if (spec.startsWith("workspace:")) + return spec.slice(10); + if (spec.startsWith("npm:")) { + spec = spec.slice(4); + const index = spec.indexOf("@", 1); + if (index === -1) + return "*"; + return spec.slice(index + 1) || "*"; + } + return spec; + } + function hasLocalTarballDepsInRoot(importer) { + return (0, any_1.default)(refIsLocalTarball, Object.values(importer.dependencies ?? {})) || (0, any_1.default)(refIsLocalTarball, Object.values(importer.devDependencies ?? {})) || (0, any_1.default)(refIsLocalTarball, Object.values(importer.optionalDependencies ?? {})); + } + function refIsLocalTarball(ref) { + return ref.startsWith("file:") && (ref.endsWith(".tgz") || ref.endsWith(".tar.gz") || ref.endsWith(".tar")); + } + } +}); + +// ../node_modules/.pnpm/@yarnpkg+extensions@2.0.0-rc.22(@yarnpkg+core@4.0.0-rc.45)/node_modules/@yarnpkg/extensions/lib/index.js +var require_lib137 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+extensions@2.0.0-rc.22(@yarnpkg+core@4.0.0-rc.45)/node_modules/@yarnpkg/extensions/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.packageExtensions = void 0; + var optionalPeerDep = { + optional: true + }; + exports2.packageExtensions = [ + // https://github.com/tailwindlabs/tailwindcss-aspect-ratio/pull/14 + [`@tailwindcss/aspect-ratio@<0.2.1`, { + peerDependencies: { + [`tailwindcss`]: `^2.0.2` } - if (s1 !== peg$FAILED) { - s2 = peg$parseident(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 47) { - s3 = peg$c0; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c1); - } - } - if (s3 !== peg$FAILED) { - s4 = peg$parseident(); - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c8(); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }], + // https://github.com/tailwindlabs/tailwindcss-line-clamp/pull/6 + [`@tailwindcss/line-clamp@<0.2.1`, { + peerDependencies: { + [`tailwindcss`]: `^2.0.2` + } + }], + // https://github.com/FullHuman/purgecss/commit/24116f394dc54c913e4fd254cf2d78c03db971f2 + [`@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0`, { + peerDependencies: { + [`postcss`]: `^8.0.0` + } + }], + // https://github.com/SamVerschueren/stream-to-observable/pull/5 + [`@samverschueren/stream-to-observable@<0.3.1`, { + peerDependenciesMeta: { + [`rxjs`]: optionalPeerDep, + [`zenObservable`]: optionalPeerDep + } + }], + // https://github.com/sindresorhus/any-observable/pull/25 + [`any-observable@<0.5.1`, { + peerDependenciesMeta: { + [`rxjs`]: optionalPeerDep, + [`zenObservable`]: optionalPeerDep + } + }], + // https://github.com/keymetrics/pm2-io-agent/pull/125 + [`@pm2/agent@<1.0.4`, { + dependencies: { + [`debug`]: `*` + } + }], + // https://github.com/visionmedia/debug/pull/727 + [`debug@<4.2.0`, { + peerDependenciesMeta: { + [`supports-color`]: optionalPeerDep + } + }], + // https://github.com/sindresorhus/got/pull/1125 + [`got@<11`, { + dependencies: { + [`@types/responselike`]: `^1.0.0`, + [`@types/keyv`]: `^3.1.1` + } + }], + // https://github.com/szmarczak/cacheable-lookup/pull/12 + [`cacheable-lookup@<4.1.2`, { + dependencies: { + [`@types/keyv`]: `^3.1.1` + } + }], + // https://github.com/prisma-labs/http-link-dataloader/pull/22 + [`http-link-dataloader@*`, { + peerDependencies: { + [`graphql`]: `^0.13.1 || ^14.0.0` + } + }], + // https://github.com/theia-ide/typescript-language-server/issues/144 + [`typescript-language-server@*`, { + dependencies: { + [`vscode-jsonrpc`]: `^5.0.1`, + [`vscode-languageserver-protocol`]: `^3.15.0` + } + }], + // https://github.com/gucong3000/postcss-syntax/pull/46 + [`postcss-syntax@*`, { + peerDependenciesMeta: { + [`postcss-html`]: optionalPeerDep, + [`postcss-jsx`]: optionalPeerDep, + [`postcss-less`]: optionalPeerDep, + [`postcss-markdown`]: optionalPeerDep, + [`postcss-scss`]: optionalPeerDep + } + }], + // https://github.com/cssinjs/jss/pull/1315 + [`jss-plugin-rule-value-function@<=10.1.1`, { + dependencies: { + [`tiny-warning`]: `^1.0.2` + } + }], + // https://github.com/vadimdemedes/ink-select-input/pull/26 + [`ink-select-input@<4.1.0`, { + peerDependencies: { + react: `^16.8.2` + } + }], + // https://github.com/xz64/license-webpack-plugin/pull/100 + [`license-webpack-plugin@<2.3.18`, { + peerDependenciesMeta: { + [`webpack`]: optionalPeerDep + } + }], + // https://github.com/snowpackjs/snowpack/issues/3158 + [`snowpack@>=3.3.0`, { + dependencies: { + [`node-gyp`]: `^7.1.0` + } + }], + // https://github.com/iarna/promise-inflight/pull/4 + [`promise-inflight@*`, { + peerDependenciesMeta: { + [`bluebird`]: optionalPeerDep + } + }], + // https://github.com/casesandberg/reactcss/pull/153 + [`reactcss@*`, { + peerDependencies: { + react: `*` + } + }], + // https://github.com/casesandberg/react-color/pull/746 + [`react-color@<=2.19.0`, { + peerDependencies: { + react: `*` + } + }], + // https://github.com/angeloocana/gatsby-plugin-i18n/pull/145 + [`gatsby-plugin-i18n@*`, { + dependencies: { + ramda: `^0.24.1` + } + }], + // https://github.com/3rd-Eden/useragent/pull/159 + [`useragent@^2.0.0`, { + dependencies: { + request: `^2.88.0`, + yamlparser: `0.0.x`, + semver: `5.5.x` + } + }], + // https://github.com/apollographql/apollo-tooling/pull/2049 + [`@apollographql/apollo-tools@<=0.5.2`, { + peerDependencies: { + graphql: `^14.2.1 || ^15.0.0` + } + }], + // https://github.com/mbrn/material-table/pull/2374 + [`material-table@^2.0.0`, { + dependencies: { + "@babel/runtime": `^7.11.2` + } + }], + // https://github.com/babel/babel/pull/11118 + [`@babel/parser@*`, { + dependencies: { + "@babel/types": `^7.8.3` + } + }], + // https://github.com/TypeStrong/fork-ts-checker-webpack-plugin/pull/507 + [`fork-ts-checker-webpack-plugin@<=6.3.4`, { + peerDependencies: { + eslint: `>= 6`, + typescript: `>= 2.7`, + webpack: `>= 4`, + "vue-template-compiler": `*` + }, + peerDependenciesMeta: { + eslint: optionalPeerDep, + "vue-template-compiler": optionalPeerDep + } + }], + // https://github.com/react-component/animate/pull/116 + [`rc-animate@<=3.1.1`, { + peerDependencies: { + react: `>=16.9.0`, + "react-dom": `>=16.9.0` + } + }], + // https://github.com/react-bootstrap-table/react-bootstrap-table2/pull/1491 + [`react-bootstrap-table2-paginator@*`, { + dependencies: { + classnames: `^2.2.6` + } + }], + // https://github.com/STRML/react-draggable/pull/525 + [`react-draggable@<=4.4.3`, { + peerDependencies: { + react: `>= 16.3.0`, + "react-dom": `>= 16.3.0` + } + }], + // https://github.com/jaydenseric/apollo-upload-client/commit/336691cec6698661ab404649e4e8435750255803 + [`apollo-upload-client@<14`, { + peerDependencies: { + graphql: `14 - 15` + } + }], + // https://github.com/algolia/react-instantsearch/pull/2975 + [`react-instantsearch-core@<=6.7.0`, { + peerDependencies: { + algoliasearch: `>= 3.1 < 5` + } + }], + // https://github.com/algolia/react-instantsearch/pull/2975 + [`react-instantsearch-dom@<=6.7.0`, { + dependencies: { + "react-fast-compare": `^3.0.0` + } + }], + // https://github.com/websockets/ws/pull/1626 + [`ws@<7.2.1`, { + peerDependencies: { + bufferutil: `^4.0.1`, + "utf-8-validate": `^5.0.2` + }, + peerDependenciesMeta: { + bufferutil: optionalPeerDep, + "utf-8-validate": optionalPeerDep + } + }], + // https://github.com/tajo/react-portal/pull/233 + // https://github.com/tajo/react-portal/commit/daf85792c2fce25a3481b6f9132ef61a110f3d78 + [`react-portal@<4.2.2`, { + peerDependencies: { + "react-dom": `^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0` + } + }], + // https://github.com/facebook/create-react-app/pull/9872 + [`react-scripts@<=4.0.1`, { + peerDependencies: { + [`react`]: `*` + } + }], + // https://github.com/DevExpress/testcafe/pull/5872 + [`testcafe@<=1.10.1`, { + dependencies: { + "@babel/plugin-transform-for-of": `^7.12.1`, + "@babel/runtime": `^7.12.5` + } + }], + // https://github.com/DevExpress/testcafe-legacy-api/pull/51 + [`testcafe-legacy-api@<=4.2.0`, { + dependencies: { + "testcafe-hammerhead": `^17.0.1`, + "read-file-relative": `^1.2.0` + } + }], + // https://github.com/googleapis/nodejs-firestore/pull/1425 + [`@google-cloud/firestore@<=4.9.3`, { + dependencies: { + protobufjs: `^6.8.6` + } + }], + // https://github.com/thinhle-agilityio/gatsby-source-apiserver/pull/58 + [`gatsby-source-apiserver@*`, { + dependencies: { + [`babel-polyfill`]: `^6.26.0` + } + }], + // https://github.com/webpack/webpack-cli/pull/2097 + [`@webpack-cli/package-utils@<=1.0.1-alpha.4`, { + dependencies: { + [`cross-spawn`]: `^7.0.3` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/20156 + [`gatsby-remark-prismjs@<3.3.28`, { + dependencies: { + [`lodash`]: `^4` + } + }], + // https://github.com/Creatiwity/gatsby-plugin-favicon/pull/65 + [`gatsby-plugin-favicon@*`, { + peerDependencies: { + [`webpack`]: `*` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/28759 + [`gatsby-plugin-sharp@<=4.6.0-next.3`, { + dependencies: { + [`debug`]: `^4.3.1` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/28759 + [`gatsby-react-router-scroll@<=5.6.0-next.0`, { + dependencies: { + [`prop-types`]: `^15.7.2` + } + }], + // https://github.com/rebassjs/rebass/pull/934 + [`@rebass/forms@*`, { + dependencies: { + [`@styled-system/should-forward-prop`]: `^5.0.0` + }, + peerDependencies: { + react: `^16.8.6` + } + }], + // https://github.com/rebassjs/rebass/pull/934 + [`rebass@*`, { + peerDependencies: { + react: `^16.8.6` + } + }], + // https://github.com/ant-design/react-slick/pull/95 + [`@ant-design/react-slick@<=0.28.3`, { + peerDependencies: { + react: `>=16.0.0` + } + }], + // https://github.com/mqttjs/MQTT.js/pull/1266 + [`mqtt@<4.2.7`, { + dependencies: { + duplexify: `^4.1.1` + } + }], + // https://github.com/vuetifyjs/vue-cli-plugins/pull/155 + [`vue-cli-plugin-vuetify@<=2.0.3`, { + dependencies: { + semver: `^6.3.0` + }, + peerDependenciesMeta: { + "sass-loader": optionalPeerDep, + "vuetify-loader": optionalPeerDep + } + }], + // https://github.com/vuetifyjs/vue-cli-plugins/pull/152 + [`vue-cli-plugin-vuetify@<=2.0.4`, { + dependencies: { + "null-loader": `^3.0.0` + } + }], + // https://github.com/vuetifyjs/vue-cli-plugins/pull/324 + [`vue-cli-plugin-vuetify@>=2.4.3`, { + peerDependencies: { + vue: `*` + } + }], + // https://github.com/vuetifyjs/vue-cli-plugins/pull/155 + [`@vuetify/cli-plugin-utils@<=0.0.4`, { + dependencies: { + semver: `^6.3.0` + }, + peerDependenciesMeta: { + "sass-loader": optionalPeerDep + } + }], + // https://github.com/vuejs/vue-cli/pull/6060/files#diff-857cfb6f3e9a676b0de4a00c2c712297068c038a7d5820c133b8d6aa8cceb146R28 + [`@vue/cli-plugin-typescript@<=5.0.0-alpha.0`, { + dependencies: { + "babel-loader": `^8.1.0` + } + }], + // https://github.com/vuejs/vue-cli/pull/6456 + [`@vue/cli-plugin-typescript@<=5.0.0-beta.0`, { + dependencies: { + "@babel/core": `^7.12.16` + }, + peerDependencies: { + "vue-template-compiler": `^2.0.0` + }, + peerDependenciesMeta: { + "vue-template-compiler": optionalPeerDep + } + }], + // https://github.com/apache/cordova-ios/pull/1105 + [`cordova-ios@<=6.3.0`, { + dependencies: { + underscore: `^1.9.2` + } + }], + // https://github.com/apache/cordova-lib/pull/871 + [`cordova-lib@<=10.0.1`, { + dependencies: { + underscore: `^1.9.2` + } + }], + // https://github.com/creationix/git-node-fs/pull/8 + [`git-node-fs@*`, { + peerDependencies: { + "js-git": `^0.7.8` + }, + peerDependenciesMeta: { + "js-git": optionalPeerDep + } + }], + // https://github.com/tj/consolidate.js/pull/339 + // https://github.com/tj/consolidate.js/commit/6068c17fd443897e540d69b1786db07a0d64b53b + [`consolidate@<0.16.0`, { + peerDependencies: { + mustache: `^3.0.0` + }, + peerDependenciesMeta: { + mustache: optionalPeerDep + } + }], + // https://github.com/tj/consolidate.js/pull/339 + [`consolidate@<=0.16.0`, { + peerDependencies: { + velocityjs: `^2.0.1`, + tinyliquid: `^0.2.34`, + "liquid-node": `^3.0.1`, + jade: `^1.11.0`, + "then-jade": `*`, + dust: `^0.3.0`, + "dustjs-helpers": `^1.7.4`, + "dustjs-linkedin": `^2.7.5`, + swig: `^1.4.2`, + "swig-templates": `^2.0.3`, + "razor-tmpl": `^1.3.1`, + atpl: `>=0.7.6`, + liquor: `^0.0.5`, + twig: `^1.15.2`, + ejs: `^3.1.5`, + eco: `^1.1.0-rc-3`, + jazz: `^0.0.18`, + jqtpl: `~1.1.0`, + hamljs: `^0.6.2`, + hamlet: `^0.3.3`, + whiskers: `^0.4.0`, + "haml-coffee": `^1.14.1`, + "hogan.js": `^3.0.2`, + templayed: `>=0.2.3`, + handlebars: `^4.7.6`, + underscore: `^1.11.0`, + lodash: `^4.17.20`, + pug: `^3.0.0`, + "then-pug": `*`, + qejs: `^3.0.5`, + walrus: `^0.10.1`, + mustache: `^4.0.1`, + just: `^0.1.8`, + ect: `^0.5.9`, + mote: `^0.2.0`, + toffee: `^0.3.6`, + dot: `^1.1.3`, + "bracket-template": `^1.1.5`, + ractive: `^1.3.12`, + nunjucks: `^3.2.2`, + htmling: `^0.0.8`, + "babel-core": `^6.26.3`, + plates: `~0.4.11`, + "react-dom": `^16.13.1`, + react: `^16.13.1`, + "arc-templates": `^0.5.3`, + vash: `^0.13.0`, + slm: `^2.0.0`, + marko: `^3.14.4`, + teacup: `^2.0.0`, + "coffee-script": `^1.12.7`, + squirrelly: `^5.1.0`, + twing: `^5.0.2` + }, + peerDependenciesMeta: { + velocityjs: optionalPeerDep, + tinyliquid: optionalPeerDep, + "liquid-node": optionalPeerDep, + jade: optionalPeerDep, + "then-jade": optionalPeerDep, + dust: optionalPeerDep, + "dustjs-helpers": optionalPeerDep, + "dustjs-linkedin": optionalPeerDep, + swig: optionalPeerDep, + "swig-templates": optionalPeerDep, + "razor-tmpl": optionalPeerDep, + atpl: optionalPeerDep, + liquor: optionalPeerDep, + twig: optionalPeerDep, + ejs: optionalPeerDep, + eco: optionalPeerDep, + jazz: optionalPeerDep, + jqtpl: optionalPeerDep, + hamljs: optionalPeerDep, + hamlet: optionalPeerDep, + whiskers: optionalPeerDep, + "haml-coffee": optionalPeerDep, + "hogan.js": optionalPeerDep, + templayed: optionalPeerDep, + handlebars: optionalPeerDep, + underscore: optionalPeerDep, + lodash: optionalPeerDep, + pug: optionalPeerDep, + "then-pug": optionalPeerDep, + qejs: optionalPeerDep, + walrus: optionalPeerDep, + mustache: optionalPeerDep, + just: optionalPeerDep, + ect: optionalPeerDep, + mote: optionalPeerDep, + toffee: optionalPeerDep, + dot: optionalPeerDep, + "bracket-template": optionalPeerDep, + ractive: optionalPeerDep, + nunjucks: optionalPeerDep, + htmling: optionalPeerDep, + "babel-core": optionalPeerDep, + plates: optionalPeerDep, + "react-dom": optionalPeerDep, + react: optionalPeerDep, + "arc-templates": optionalPeerDep, + vash: optionalPeerDep, + slm: optionalPeerDep, + marko: optionalPeerDep, + teacup: optionalPeerDep, + "coffee-script": optionalPeerDep, + squirrelly: optionalPeerDep, + twing: optionalPeerDep + } + }], + // https://github.com/vuejs/vue-loader/pull/1853 + // https://github.com/vuejs/vue-loader/commit/089473af97077b8e14b3feff48d32d2733ad792c + [`vue-loader@<=16.3.3`, { + peerDependencies: { + "@vue/compiler-sfc": `^3.0.8`, + webpack: `^4.1.0 || ^5.0.0-0` + }, + peerDependenciesMeta: { + "@vue/compiler-sfc": optionalPeerDep + } + }], + // https://github.com/vuejs/vue-loader/pull/1944 + [`vue-loader@^16.7.0`, { + peerDependencies: { + "@vue/compiler-sfc": `^3.0.8`, + vue: `^3.2.13` + }, + peerDependenciesMeta: { + "@vue/compiler-sfc": optionalPeerDep, + vue: optionalPeerDep + } + }], + // https://github.com/salesforce-ux/scss-parser/pull/43 + [`scss-parser@<=1.0.5`, { + dependencies: { + lodash: `^4.17.21` + } + }], + // https://github.com/salesforce-ux/query-ast/pull/25 + [`query-ast@<1.0.5`, { + dependencies: { + lodash: `^4.17.21` + } + }], + // https://github.com/reduxjs/redux-thunk/pull/251 + [`redux-thunk@<=2.3.0`, { + peerDependencies: { + redux: `^4.0.0` + } + }], + // https://github.com/snowpackjs/snowpack/pull/3556 + [`skypack@<=0.3.2`, { + dependencies: { + tar: `^6.1.0` + } + }], + // https://github.com/npm/metavuln-calculator/pull/8 + [`@npmcli/metavuln-calculator@<2.0.0`, { + dependencies: { + "json-parse-even-better-errors": `^2.3.1` + } + }], + // https://github.com/npm/bin-links/pull/17 + [`bin-links@<2.3.0`, { + dependencies: { + "mkdirp-infer-owner": `^1.0.2` + } + }], + // https://github.com/snowpackjs/rollup-plugin-polyfill-node/pull/30 + [`rollup-plugin-polyfill-node@<=0.8.0`, { + peerDependencies: { + rollup: `^1.20.0 || ^2.0.0` + } + }], + // https://github.com/snowpackjs/snowpack/pull/3673 + [`snowpack@<3.8.6`, { + dependencies: { + "magic-string": `^0.25.7` + } + }], + // https://github.com/elm-community/elm-webpack-loader/pull/202 + [`elm-webpack-loader@*`, { + dependencies: { + temp: `^0.9.4` + } + }], + // https://github.com/winstonjs/winston-transport/pull/58 + [`winston-transport@<=4.4.0`, { + dependencies: { + logform: `^2.2.0` + } + }], + // https://github.com/vire/jest-vue-preprocessor/pull/177 + [`jest-vue-preprocessor@*`, { + dependencies: { + "@babel/core": `7.8.7`, + "@babel/template": `7.8.6` + }, + peerDependencies: { + pug: `^2.0.4` + }, + peerDependenciesMeta: { + pug: optionalPeerDep + } + }], + // https://github.com/rt2zz/redux-persist/pull/1336 + [`redux-persist@*`, { + peerDependencies: { + react: `>=16` + }, + peerDependenciesMeta: { + react: optionalPeerDep + } + }], + // https://github.com/paixaop/node-sodium/pull/159 + [`sodium@>=3`, { + dependencies: { + "node-gyp": `^3.8.0` + } + }], + // https://github.com/gajus/babel-plugin-graphql-tag/pull/63 + [`babel-plugin-graphql-tag@<=3.1.0`, { + peerDependencies: { + graphql: `^14.0.0 || ^15.0.0` + } + }], + // https://github.com/microsoft/playwright/pull/8501 + [`@playwright/test@<=1.14.1`, { + dependencies: { + "jest-matcher-utils": `^26.4.2` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/32954 + ...[ + `babel-plugin-remove-graphql-queries@<3.14.0-next.1`, + `babel-preset-gatsby-package@<1.14.0-next.1`, + `create-gatsby@<1.14.0-next.1`, + `gatsby-admin@<0.24.0-next.1`, + `gatsby-cli@<3.14.0-next.1`, + `gatsby-core-utils@<2.14.0-next.1`, + `gatsby-design-tokens@<3.14.0-next.1`, + `gatsby-legacy-polyfills@<1.14.0-next.1`, + `gatsby-plugin-benchmark-reporting@<1.14.0-next.1`, + `gatsby-plugin-graphql-config@<0.23.0-next.1`, + `gatsby-plugin-image@<1.14.0-next.1`, + `gatsby-plugin-mdx@<2.14.0-next.1`, + `gatsby-plugin-netlify-cms@<5.14.0-next.1`, + `gatsby-plugin-no-sourcemaps@<3.14.0-next.1`, + `gatsby-plugin-page-creator@<3.14.0-next.1`, + `gatsby-plugin-preact@<5.14.0-next.1`, + `gatsby-plugin-preload-fonts@<2.14.0-next.1`, + `gatsby-plugin-schema-snapshot@<2.14.0-next.1`, + `gatsby-plugin-styletron@<6.14.0-next.1`, + `gatsby-plugin-subfont@<3.14.0-next.1`, + `gatsby-plugin-utils@<1.14.0-next.1`, + `gatsby-recipes@<0.25.0-next.1`, + `gatsby-source-shopify@<5.6.0-next.1`, + `gatsby-source-wikipedia@<3.14.0-next.1`, + `gatsby-transformer-screenshot@<3.14.0-next.1`, + `gatsby-worker@<0.5.0-next.1` + ].map((descriptorString) => [ + descriptorString, + { + dependencies: { + "@babel/runtime": `^7.14.8` } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseident(); - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c8(); - } - s0 = s1; + ]), + // Originally fixed in https://github.com/gatsbyjs/gatsby/pull/31837 (https://github.com/gatsbyjs/gatsby/commit/6378692d7ec1eb902520720e27aca97e8eb42c21) + // Version updated and added in https://github.com/gatsbyjs/gatsby/pull/32928 + [`gatsby-core-utils@<2.14.0-next.1`, { + dependencies: { + got: `8.3.2` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/32861 + [`gatsby-plugin-gatsby-cloud@<=3.1.0-next.0`, { + dependencies: { + "gatsby-core-utils": `^2.13.0-next.0` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/31837 + [`gatsby-plugin-gatsby-cloud@<=3.2.0-next.1`, { + peerDependencies: { + webpack: `*` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/31837 + [`babel-plugin-remove-graphql-queries@<=3.14.0-next.1`, { + dependencies: { + "gatsby-core-utils": `^2.8.0-next.1` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/32861 + [`gatsby-plugin-netlify@3.13.0-next.1`, { + dependencies: { + "gatsby-core-utils": `^2.13.0-next.0` + } + }], + // https://github.com/paul-soporan/clipanion-v3-codemod/pull/1 + [`clipanion-v3-codemod@<=0.2.0`, { + peerDependencies: { + jscodeshift: `^0.11.0` + } + }], + // https://github.com/FormidableLabs/react-live/pull/180 + [`react-live@*`, { + peerDependencies: { + "react-dom": `*`, + react: `*` + } + }], + // https://github.com/webpack/webpack/pull/11190 + [`webpack@<4.44.1`, { + peerDependenciesMeta: { + "webpack-cli": optionalPeerDep, + "webpack-command": optionalPeerDep + } + }], + // https://github.com/webpack/webpack/pull/11189 + [`webpack@<5.0.0-beta.23`, { + peerDependenciesMeta: { + "webpack-cli": optionalPeerDep + } + }], + // https://github.com/webpack/webpack-dev-server/pull/2396 + [`webpack-dev-server@<3.10.2`, { + peerDependenciesMeta: { + "webpack-cli": optionalPeerDep + } + }], + // https://github.com/slorber/responsive-loader/pull/1/files + [`@docusaurus/responsive-loader@<1.5.0`, { + peerDependenciesMeta: { + sharp: optionalPeerDep, + jimp: optionalPeerDep + } + }], + // https://github.com/import-js/eslint-plugin-import/pull/2283 + [`eslint-module-utils@*`, { + peerDependenciesMeta: { + "eslint-import-resolver-node": optionalPeerDep, + "eslint-import-resolver-typescript": optionalPeerDep, + "eslint-import-resolver-webpack": optionalPeerDep, + "@typescript-eslint/parser": optionalPeerDep + } + }], + // https://github.com/import-js/eslint-plugin-import/pull/2283 + [`eslint-plugin-import@*`, { + peerDependenciesMeta: { + "@typescript-eslint/parser": optionalPeerDep + } + }], + // https://github.com/GoogleChromeLabs/critters/pull/91 + [`critters-webpack-plugin@<3.0.2`, { + peerDependenciesMeta: { + "html-webpack-plugin": optionalPeerDep + } + }], + // https://github.com/terser/terser/commit/05b23eeb682d732484ad51b19bf528258fd5dc2a + [`terser@<=5.10.0`, { + dependencies: { + acorn: `^8.5.0` + } + }], + // https://github.com/facebook/create-react-app/pull/11751 + [`babel-preset-react-app@10.0.x`, { + dependencies: { + "@babel/plugin-proposal-private-property-in-object": `^7.16.0` } - return s0; - } - function peg$parseident() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - if (peg$c9.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c10); - } + }], + // https://github.com/facebook/create-react-app/pull/11751 + [`eslint-config-react-app@*`, { + peerDependenciesMeta: { + typescript: optionalPeerDep } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c9.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c10); - } - } - } - } else { - s1 = peg$FAILED; + }], + // https://github.com/vuejs/eslint-config-typescript/pull/39 + [`@vue/eslint-config-typescript@<11.0.0`, { + peerDependenciesMeta: { + typescript: optionalPeerDep } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c8(); + }], + // https://github.com/antfu/unplugin-vue2-script-setup/pull/100 + [`unplugin-vue2-script-setup@<0.9.1`, { + peerDependencies: { + "@vue/composition-api": `^1.4.3`, + "@vue/runtime-dom": `^3.2.26` } - s0 = s1; - return s0; - } - function peg$parsedescription() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - if (peg$c11.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c12); - } + }], + // https://github.com/cypress-io/snapshot/pull/159 + [`@cypress/snapshot@*`, { + dependencies: { + debug: `^3.2.7` } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c11.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c12); - } - } - } - } else { - s1 = peg$FAILED; + }], + // https://github.com/wemaintain/auto-relay/pull/95 + [`auto-relay@<=0.14.0`, { + peerDependencies: { + "reflect-metadata": `^0.1.13` } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c8(); + }], + // https://github.com/JuniorTour/vue-template-babel-compiler/pull/40 + [`vue-template-babel-compiler@<1.2.0`, { + peerDependencies: { + [`vue-template-compiler`]: `^2.6.0` } - s0 = s1; - return s0; - } - peg$result = peg$startRuleFunction(); - if (peg$result !== peg$FAILED && peg$currPos === input.length) { - return peg$result; - } else { - if (peg$result !== peg$FAILED && peg$currPos < input.length) - peg$fail(peg$endExpectation()); - throw peg$buildStructuredError(peg$maxFailExpected, peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)); - } - } - module2.exports = { - SyntaxError: peg$SyntaxError, - parse: peg$parse - }; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/resolution.js -var require_resolution2 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/resolution.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.stringifyResolution = exports2.parseResolution = void 0; - var resolution_1 = require_resolution(); - function parseResolution(source) { - const legacyResolution = source.match(/^\*{1,2}\/(.*)/); - if (legacyResolution) - throw new Error(`The override for '${source}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${legacyResolution[1]}' instead.`); - try { - return resolution_1.parse(source); - } catch (error) { - if (error.location) - error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); - throw error; - } - } - exports2.parseResolution = parseResolution; - function stringifyResolution(resolution) { - let str = ``; - if (resolution.from) { - str += resolution.from.fullName; - if (resolution.from.description) - str += `@${resolution.from.description}`; - str += `/`; - } - str += resolution.descriptor.fullName; - if (resolution.descriptor.description) - str += `@${resolution.descriptor.description}`; - return str; - } - exports2.stringifyResolution = stringifyResolution; - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/syml.js -var require_syml = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/grammars/syml.js"(exports2, module2) { - "use strict"; - function peg$subclass(child, parent) { - function ctor() { - this.constructor = child; - } - ctor.prototype = parent.prototype; - child.prototype = new ctor(); - } - function peg$SyntaxError(message2, expected, found, location) { - this.message = message2; - this.expected = expected; - this.found = found; - this.location = location; - this.name = "SyntaxError"; - if (typeof Error.captureStackTrace === "function") { - Error.captureStackTrace(this, peg$SyntaxError); - } - } - peg$subclass(peg$SyntaxError, Error); - peg$SyntaxError.buildMessage = function(expected, found) { - var DESCRIBE_EXPECTATION_FNS = { - literal: function(expectation) { - return `"${literalEscape(expectation.text)}"`; - }, - "class": function(expectation) { - var escapedParts = "", i; - for (i = 0; i < expectation.parts.length; i++) - escapedParts += expectation.parts[i] instanceof Array ? `${classEscape(expectation.parts[i][0])}-${classEscape(expectation.parts[i][1])}` : classEscape(expectation.parts[i]); - return `[${expectation.inverted ? "^" : ""}${escapedParts}]`; - }, - any: function(expectation) { - return "any character"; - }, - end: function(expectation) { - return "end of input"; - }, - other: function(expectation) { - return expectation.description; + }], + // https://github.com/parcel-bundler/parcel/pull/7977 + [`@parcel/transformer-image@<2.5.0`, { + peerDependencies: { + [`@parcel/core`]: `*` } - }; - function hex(ch) { - return ch.charCodeAt(0).toString(16).toUpperCase(); - } - function literalEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return `\\x0${hex(ch)}`; - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return `\\x${hex(ch)}`; - }); - } - function classEscape(s) { - return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { - return `\\x0${hex(ch)}`; - }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { - return `\\x${hex(ch)}`; - }); - } - function describeExpectation(expectation) { - return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); - } - function describeExpected(expected2) { - var descriptions = new Array(expected2.length), i, j; - for (i = 0; i < expected2.length; i++) - descriptions[i] = describeExpectation(expected2[i]); - descriptions.sort(); - if (descriptions.length > 0) { - for (i = 1, j = 1; i < descriptions.length; i++) { - if (descriptions[i - 1] !== descriptions[i]) { - descriptions[j] = descriptions[i]; - j++; - } - } - descriptions.length = j; + }], + // https://github.com/parcel-bundler/parcel/pull/7977 + [`@parcel/transformer-js@<2.5.0`, { + peerDependencies: { + [`@parcel/core`]: `*` } - switch (descriptions.length) { - case 1: - return descriptions[0]; - case 2: - return `${descriptions[0]} or ${descriptions[1]}`; - default: - return `${descriptions.slice(0, -1).join(", ")}, or ${descriptions[descriptions.length - 1]}`; + }], + // Experiment to unblock the usage of Parcel in E2E tests + [`parcel@*`, { + peerDependenciesMeta: { + [`@parcel/core`]: optionalPeerDep } - } - function describeFound(found2) { - return found2 ? `"${literalEscape(found2)}"` : "end of input"; - } - return `Expected ${describeExpected(expected)} but ${describeFound(found)} found.`; - }; - function peg$parse(input, options) { - options = options !== void 0 ? options : {}; - var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(statements) { - return [].concat(...statements); - }, peg$c1 = "-", peg$c2 = peg$literalExpectation("-", false), peg$c3 = function(value) { - return value; - }, peg$c4 = function(statements) { - return Object.assign({}, ...statements); - }, peg$c5 = "#", peg$c6 = peg$literalExpectation("#", false), peg$c7 = peg$anyExpectation(), peg$c8 = function() { - return {}; - }, peg$c9 = ":", peg$c10 = peg$literalExpectation(":", false), peg$c11 = function(property, value) { - return { [property]: value }; - }, peg$c12 = ",", peg$c13 = peg$literalExpectation(",", false), peg$c14 = function(property, other) { - return other; - }, peg$c15 = function(property, others, value) { - return Object.assign({}, ...[property].concat(others).map((property2) => ({ [property2]: value }))); - }, peg$c16 = function(statements) { - return statements; - }, peg$c17 = function(expression) { - return expression; - }, peg$c18 = peg$otherExpectation("correct indentation"), peg$c19 = " ", peg$c20 = peg$literalExpectation(" ", false), peg$c21 = function(spaces) { - return spaces.length === indentLevel * INDENT_STEP; - }, peg$c22 = function(spaces) { - return spaces.length === (indentLevel + 1) * INDENT_STEP; - }, peg$c23 = function() { - indentLevel++; - return true; - }, peg$c24 = function() { - indentLevel--; - return true; - }, peg$c25 = function() { - return text(); - }, peg$c26 = peg$otherExpectation("pseudostring"), peg$c27 = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, peg$c28 = peg$classExpectation(["\r", "\n", " ", " ", "?", ":", ",", "]", "[", "{", "}", "#", "&", "*", "!", "|", ">", "'", '"', "%", "@", "`", "-"], true, false), peg$c29 = /^[^\r\n\t ,\][{}:#"']/, peg$c30 = peg$classExpectation(["\r", "\n", " ", " ", ",", "]", "[", "{", "}", ":", "#", '"', "'"], true, false), peg$c31 = function() { - return text().replace(/^ *| *$/g, ""); - }, peg$c32 = "--", peg$c33 = peg$literalExpectation("--", false), peg$c34 = /^[a-zA-Z\/0-9]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], "/", ["0", "9"]], false, false), peg$c36 = /^[^\r\n\t :,]/, peg$c37 = peg$classExpectation(["\r", "\n", " ", " ", ":", ","], true, false), peg$c38 = "null", peg$c39 = peg$literalExpectation("null", false), peg$c40 = function() { - return null; - }, peg$c41 = "true", peg$c42 = peg$literalExpectation("true", false), peg$c43 = function() { - return true; - }, peg$c44 = "false", peg$c45 = peg$literalExpectation("false", false), peg$c46 = function() { - return false; - }, peg$c47 = peg$otherExpectation("string"), peg$c48 = '"', peg$c49 = peg$literalExpectation('"', false), peg$c50 = function() { - return ""; - }, peg$c51 = function(chars) { - return chars; - }, peg$c52 = function(chars) { - return chars.join(``); - }, peg$c53 = /^[^"\\\0-\x1F\x7F]/, peg$c54 = peg$classExpectation(['"', "\\", ["\0", ""], "\x7F"], true, false), peg$c55 = '\\"', peg$c56 = peg$literalExpectation('\\"', false), peg$c57 = function() { - return `"`; - }, peg$c58 = "\\\\", peg$c59 = peg$literalExpectation("\\\\", false), peg$c60 = function() { - return `\\`; - }, peg$c61 = "\\/", peg$c62 = peg$literalExpectation("\\/", false), peg$c63 = function() { - return `/`; - }, peg$c64 = "\\b", peg$c65 = peg$literalExpectation("\\b", false), peg$c66 = function() { - return `\b`; - }, peg$c67 = "\\f", peg$c68 = peg$literalExpectation("\\f", false), peg$c69 = function() { - return `\f`; - }, peg$c70 = "\\n", peg$c71 = peg$literalExpectation("\\n", false), peg$c72 = function() { - return ` -`; - }, peg$c73 = "\\r", peg$c74 = peg$literalExpectation("\\r", false), peg$c75 = function() { - return `\r`; - }, peg$c76 = "\\t", peg$c77 = peg$literalExpectation("\\t", false), peg$c78 = function() { - return ` `; - }, peg$c79 = "\\u", peg$c80 = peg$literalExpectation("\\u", false), peg$c81 = function(h1, h2, h3, h4) { - return String.fromCharCode(parseInt(`0x${h1}${h2}${h3}${h4}`)); - }, peg$c82 = /^[0-9a-fA-F]/, peg$c83 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "F"]], false, false), peg$c84 = peg$otherExpectation("blank space"), peg$c85 = /^[ \t]/, peg$c86 = peg$classExpectation([" ", " "], false, false), peg$c87 = peg$otherExpectation("white space"), peg$c88 = /^[ \t\n\r]/, peg$c89 = peg$classExpectation([" ", " ", "\n", "\r"], false, false), peg$c90 = "\r\n", peg$c91 = peg$literalExpectation("\r\n", false), peg$c92 = "\n", peg$c93 = peg$literalExpectation("\n", false), peg$c94 = "\r", peg$c95 = peg$literalExpectation("\r", false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; - if ("startRule" in options) { - if (!(options.startRule in peg$startRuleFunctions)) - throw new Error(`Can't start parsing from rule "${options.startRule}".`); - peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; - } - function text() { - return input.substring(peg$savedPos, peg$currPos); - } - function location() { - return peg$computeLocation(peg$savedPos, peg$currPos); - } - function expected(description, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildStructuredError([peg$otherExpectation(description)], input.substring(peg$savedPos, peg$currPos), location2); - } - function error(message2, location2) { - location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); - throw peg$buildSimpleError(message2, location2); - } - function peg$literalExpectation(text2, ignoreCase) { - return { type: "literal", text: text2, ignoreCase }; - } - function peg$classExpectation(parts, inverted, ignoreCase) { - return { type: "class", parts, inverted, ignoreCase }; - } - function peg$anyExpectation() { - return { type: "any" }; - } - function peg$endExpectation() { - return { type: "end" }; - } - function peg$otherExpectation(description) { - return { type: "other", description }; - } - function peg$computePosDetails(pos) { - var details = peg$posDetailsCache[pos], p; - if (details) { - return details; - } else { - p = pos - 1; - while (!peg$posDetailsCache[p]) - p--; - details = peg$posDetailsCache[p]; - details = { - line: details.line, - column: details.column - }; - while (p < pos) { - if (input.charCodeAt(p) === 10) { - details.line++; - details.column = 1; - } else { - details.column++; - } - p++; - } - peg$posDetailsCache[pos] = details; - return details; + }], + // This doesn't have an upstream PR. + // The auto types causes two instances of eslint-config-react-app, + // one that has access to @types/eslint and one that doesn't. + // ESLint doesn't allow the same plugin to show up multiple times so it throws. + // As a temporary workaround until create-react-app fixes their ESLint + // setup we make eslint a peer dependency /w fallback. + // TODO: Lock the range when create-react-app fixes their ESLint setup + [`react-scripts@*`, { + peerDependencies: { + [`eslint`]: `*` } - } - function peg$computeLocation(startPos, endPos) { - var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); - return { - start: { - offset: startPos, - line: startPosDetails.line, - column: startPosDetails.column - }, - end: { - offset: endPos, - line: endPosDetails.line, - column: endPosDetails.column - } - }; - } - function peg$fail(expected2) { - if (peg$currPos < peg$maxFailPos) - return; - if (peg$currPos > peg$maxFailPos) { - peg$maxFailPos = peg$currPos; - peg$maxFailExpected = []; + }], + // https://github.com/focus-trap/focus-trap-react/pull/691 + [`focus-trap-react@^8.0.0`, { + dependencies: { + tabbable: `^5.3.2` } - peg$maxFailExpected.push(expected2); - } - function peg$buildSimpleError(message2, location2) { - return new peg$SyntaxError(message2, null, null, location2); - } - function peg$buildStructuredError(expected2, found, location2) { - return new peg$SyntaxError(peg$SyntaxError.buildMessage(expected2, found), expected2, found, location2); - } - function peg$parseStart() { - var s0; - s0 = peg$parsePropertyStatements(); - return s0; - } - function peg$parseItemStatements() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parseItemStatement(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parseItemStatement(); + }], + // https://github.com/bokuweb/react-rnd/pull/864 + [`react-rnd@<10.3.7`, { + peerDependencies: { + react: `>=16.3.0`, + "react-dom": `>=16.3.0` } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c0(s1); + }], + // https://github.com/jdesboeufs/connect-mongo/pull/458 + [`connect-mongo@*`, { + peerDependencies: { + "express-session": `^1.17.1` } - s0 = s1; - return s0; - } - function peg$parseItemStatement() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - s1 = peg$parseSamedent(); - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 45) { - s2 = peg$c1; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c2); - } - } - if (s2 !== peg$FAILED) { - s3 = peg$parseB(); - if (s3 !== peg$FAILED) { - s4 = peg$parseExpression(); - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c3(s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }], + // https://github.com/intlify/vue-i18n-next/commit/ed932b9e575807dc27c30573b280ad8ae48e98c9 + [`vue-i18n@<9`, { + peerDependencies: { + vue: `^2` } - return s0; - } - function peg$parsePropertyStatements() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parsePropertyStatement(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsePropertyStatement(); + }], + // https://github.com/vuejs/router/commit/c2305083a8fcb42d1bb1f3f0d92f09930124b530 + [`vue-router@<4`, { + peerDependencies: { + vue: `^2` } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c4(s1); + }], + // https://github.com/unifiedjs/unified/pull/146 + [`unified@<10`, { + dependencies: { + "@types/unist": `^2.0.0` } - s0 = s1; - return s0; - } - function peg$parsePropertyStatement() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8; - s0 = peg$currPos; - s1 = peg$parseB(); - if (s1 === peg$FAILED) - s1 = null; - if (s1 !== peg$FAILED) { - s2 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 35) { - s3 = peg$c5; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c6); - } - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$currPos; - s6 = peg$currPos; - peg$silentFails++; - s7 = peg$parseEOL(); - peg$silentFails--; - if (s7 === peg$FAILED) { - s6 = void 0; - } else { - peg$currPos = s6; - s6 = peg$FAILED; - } - if (s6 !== peg$FAILED) { - if (input.length > peg$currPos) { - s7 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c7); - } - } - if (s7 !== peg$FAILED) { - s6 = [s6, s7]; - s5 = s6; - } else { - peg$currPos = s5; - s5 = peg$FAILED; - } - } else { - peg$currPos = s5; - s5 = peg$FAILED; - } - if (s5 !== peg$FAILED) { - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$currPos; - s6 = peg$currPos; - peg$silentFails++; - s7 = peg$parseEOL(); - peg$silentFails--; - if (s7 === peg$FAILED) { - s6 = void 0; - } else { - peg$currPos = s6; - s6 = peg$FAILED; - } - if (s6 !== peg$FAILED) { - if (input.length > peg$currPos) { - s7 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c7); - } - } - if (s7 !== peg$FAILED) { - s6 = [s6, s7]; - s5 = s6; - } else { - peg$currPos = s5; - s5 = peg$FAILED; - } - } else { - peg$currPos = s5; - s5 = peg$FAILED; - } - } - } else { - s4 = peg$FAILED; - } - if (s4 !== peg$FAILED) { - s3 = [s3, s4]; - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - if (s2 === peg$FAILED) - s2 = null; - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseEOL_ANY(); - if (s4 !== peg$FAILED) { - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseEOL_ANY(); - } - } else { - s3 = peg$FAILED; - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c8(); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }], + // https://github.com/ntkme/react-github-btn/pull/23 + [`react-github-btn@<=1.3.0`, { + peerDependencies: { + react: `>=16.3.0` } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSamedent(); - if (s1 !== peg$FAILED) { - s2 = peg$parseName(); - if (s2 !== peg$FAILED) { - s3 = peg$parseB(); - if (s3 === peg$FAILED) - s3 = null; - if (s3 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 58) { - s4 = peg$c9; - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c10); - } - } - if (s4 !== peg$FAILED) { - s5 = peg$parseB(); - if (s5 === peg$FAILED) - s5 = null; - if (s5 !== peg$FAILED) { - s6 = peg$parseExpression(); - if (s6 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c11(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSamedent(); - if (s1 !== peg$FAILED) { - s2 = peg$parseLegacyName(); - if (s2 !== peg$FAILED) { - s3 = peg$parseB(); - if (s3 === peg$FAILED) - s3 = null; - if (s3 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 58) { - s4 = peg$c9; - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c10); - } - } - if (s4 !== peg$FAILED) { - s5 = peg$parseB(); - if (s5 === peg$FAILED) - s5 = null; - if (s5 !== peg$FAILED) { - s6 = peg$parseExpression(); - if (s6 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c11(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSamedent(); - if (s1 !== peg$FAILED) { - s2 = peg$parseLegacyName(); - if (s2 !== peg$FAILED) { - s3 = peg$parseB(); - if (s3 !== peg$FAILED) { - s4 = peg$parseLegacyLiteral(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseEOL_ANY(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseEOL_ANY(); - } - } else { - s5 = peg$FAILED; - } - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c11(s2, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseSamedent(); - if (s1 !== peg$FAILED) { - s2 = peg$parseLegacyName(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$currPos; - s5 = peg$parseB(); - if (s5 === peg$FAILED) - s5 = null; - if (s5 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 44) { - s6 = peg$c12; - peg$currPos++; - } else { - s6 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c13); - } - } - if (s6 !== peg$FAILED) { - s7 = peg$parseB(); - if (s7 === peg$FAILED) - s7 = null; - if (s7 !== peg$FAILED) { - s8 = peg$parseLegacyName(); - if (s8 !== peg$FAILED) { - peg$savedPos = s4; - s5 = peg$c14(s2, s8); - s4 = s5; - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - if (s4 !== peg$FAILED) { - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$currPos; - s5 = peg$parseB(); - if (s5 === peg$FAILED) - s5 = null; - if (s5 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 44) { - s6 = peg$c12; - peg$currPos++; - } else { - s6 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c13); - } - } - if (s6 !== peg$FAILED) { - s7 = peg$parseB(); - if (s7 === peg$FAILED) - s7 = null; - if (s7 !== peg$FAILED) { - s8 = peg$parseLegacyName(); - if (s8 !== peg$FAILED) { - peg$savedPos = s4; - s5 = peg$c14(s2, s8); - s4 = s5; - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } else { - peg$currPos = s4; - s4 = peg$FAILED; - } - } - } else { - s3 = peg$FAILED; - } - if (s3 !== peg$FAILED) { - s4 = peg$parseB(); - if (s4 === peg$FAILED) - s4 = null; - if (s4 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 58) { - s5 = peg$c9; - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c10); - } - } - if (s5 !== peg$FAILED) { - s6 = peg$parseB(); - if (s6 === peg$FAILED) - s6 = null; - if (s6 !== peg$FAILED) { - s7 = peg$parseExpression(); - if (s7 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c15(s2, s3, s7); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } - } - } + }], + // There are two candidates upstream, clean this up when either is merged. + // - https://github.com/facebook/create-react-app/pull/11526 + // - https://github.com/facebook/create-react-app/pull/11716 + [`react-dev-utils@*`, { + peerDependencies: { + typescript: `>=2.7`, + webpack: `>=4` + }, + peerDependenciesMeta: { + typescript: optionalPeerDep } - return s0; - } - function peg$parseExpression() { - var s0, s1, s2, s3, s4, s5, s6; - s0 = peg$currPos; - s1 = peg$currPos; - peg$silentFails++; - s2 = peg$currPos; - s3 = peg$parseEOL(); - if (s3 !== peg$FAILED) { - s4 = peg$parseExtradent(); - if (s4 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 45) { - s5 = peg$c1; - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c2); - } - } - if (s5 !== peg$FAILED) { - s6 = peg$parseB(); - if (s6 !== peg$FAILED) { - s3 = [s3, s4, s5, s6]; - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; - } - } else { - peg$currPos = s2; - s2 = peg$FAILED; + }], + // https://github.com/asyncapi/asyncapi-react/pull/614 + [`@asyncapi/react-component@<=1.0.0-next.39`, { + peerDependencies: { + react: `>=16.8.0`, + "react-dom": `>=16.8.0` } - peg$silentFails--; - if (s2 !== peg$FAILED) { - peg$currPos = s1; - s1 = void 0; - } else { - s1 = peg$FAILED; + }], + // https://github.com/xojs/xo/pull/678 + [`xo@*`, { + peerDependencies: { + webpack: `>=1.11.0` + }, + peerDependenciesMeta: { + webpack: optionalPeerDep } - if (s1 !== peg$FAILED) { - s2 = peg$parseEOL_ANY(); - if (s2 !== peg$FAILED) { - s3 = peg$parseIndent(); - if (s3 !== peg$FAILED) { - s4 = peg$parseItemStatements(); - if (s4 !== peg$FAILED) { - s5 = peg$parseDedent(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c16(s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + }], + // https://github.com/gatsbyjs/gatsby/pull/36230 + [`babel-plugin-remove-graphql-queries@<=4.20.0-next.0`, { + dependencies: { + "@babel/types": `^7.15.4` } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseEOL(); - if (s1 !== peg$FAILED) { - s2 = peg$parseIndent(); - if (s2 !== peg$FAILED) { - s3 = peg$parsePropertyStatements(); - if (s3 !== peg$FAILED) { - s4 = peg$parseDedent(); - if (s4 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c16(s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseLiteral(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseEOL_ANY(); - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseEOL_ANY(); - } - } else { - s2 = peg$FAILED; - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c17(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } + }], + // https://github.com/gatsbyjs/gatsby/pull/36230 + [`gatsby-plugin-page-creator@<=4.20.0-next.1`, { + dependencies: { + "fs-extra": `^10.1.0` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/36230 + [`gatsby-plugin-utils@<=3.14.0-next.1`, { + dependencies: { + fastq: `^1.13.0` + }, + peerDependencies: { + graphql: `^15.0.0` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/33724 + [`gatsby-plugin-mdx@<3.1.0-next.1`, { + dependencies: { + mkdirp: `^1.0.4` + } + }], + // https://github.com/gatsbyjs/gatsby/pull/33170 + [`gatsby-plugin-mdx@^2`, { + peerDependencies: { + gatsby: `^3.0.0-next` + } + }], + // https://github.com/thecodrr/fdir/pull/76 + // https://github.com/thecodrr/fdir/pull/80 + [`fdir@<=5.2.0`, { + peerDependencies: { + picomatch: `2.x` + }, + peerDependenciesMeta: { + picomatch: optionalPeerDep + } + }], + // https://github.com/leonardfactory/babel-plugin-transform-typescript-metadata/pull/61 + [`babel-plugin-transform-typescript-metadata@<=0.3.2`, { + peerDependencies: { + "@babel/core": `^7`, + "@babel/traverse": `^7` + }, + peerDependenciesMeta: { + "@babel/traverse": optionalPeerDep + } + }], + // https://github.com/graphql-compose/graphql-compose/pull/398 + [`graphql-compose@>=9.0.10`, { + peerDependencies: { + graphql: `^14.2.0 || ^15.0.0 || ^16.0.0` + } + }] + ]; + } +}); + +// ../hooks/read-package-hook/lib/createPackageExtender.js +var require_createPackageExtender = __commonJS({ + "../hooks/read-package-hook/lib/createPackageExtender.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPackageExtender = void 0; + var parse_wanted_dependency_1 = require_lib136(); + var semver_12 = __importDefault4(require_semver2()); + function createPackageExtender(packageExtensions) { + const extensionsByPkgName = /* @__PURE__ */ new Map(); + Object.entries(packageExtensions).forEach(([selector, packageExtension]) => { + const { alias, pref } = (0, parse_wanted_dependency_1.parseWantedDependency)(selector); + if (!extensionsByPkgName.has(alias)) { + extensionsByPkgName.set(alias, []); + } + extensionsByPkgName.get(alias).push({ packageExtension, range: pref }); + }); + return extendPkgHook.bind(null, extensionsByPkgName); + } + exports2.createPackageExtender = createPackageExtender; + function extendPkgHook(extensionsByPkgName, manifest) { + const extensions = extensionsByPkgName.get(manifest.name); + if (extensions == null) + return manifest; + extendPkg(manifest, extensions); + return manifest; + } + function extendPkg(manifest, extensions) { + for (const { range, packageExtension } of extensions) { + if (range != null && !semver_12.default.satisfies(manifest.version, range)) + continue; + for (const field of ["dependencies", "optionalDependencies", "peerDependencies", "peerDependenciesMeta"]) { + if (!packageExtension[field]) + continue; + manifest[field] = { + ...packageExtension[field], + ...manifest[field] + }; } - return s0; } - function peg$parseSamedent() { - var s0, s1, s2; - peg$silentFails++; - s0 = peg$currPos; - s1 = []; - if (input.charCodeAt(peg$currPos) === 32) { - s2 = peg$c19; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c20); - } + } + } +}); + +// ../config/parse-overrides/lib/index.js +var require_lib138 = __commonJS({ + "../config/parse-overrides/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseOverrides = void 0; + var error_1 = require_lib8(); + var parse_wanted_dependency_1 = require_lib136(); + var DELIMITER_REGEX = /[^ |@]>/; + function parseOverrides(overrides) { + return Object.entries(overrides).map(([selector, newPref]) => { + let delimiterIndex = selector.search(DELIMITER_REGEX); + if (delimiterIndex !== -1) { + delimiterIndex++; + const parentSelector = selector.substring(0, delimiterIndex); + const childSelector = selector.substring(delimiterIndex + 1); + return { + newPref, + parentPkg: parsePkgSelector(parentSelector), + targetPkg: parsePkgSelector(childSelector) + }; } - while (s2 !== peg$FAILED) { - s1.push(s2); - if (input.charCodeAt(peg$currPos) === 32) { - s2 = peg$c19; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c20); - } - } + return { + newPref, + targetPkg: parsePkgSelector(selector) + }; + }); + } + exports2.parseOverrides = parseOverrides; + function parsePkgSelector(selector) { + const wantedDep = (0, parse_wanted_dependency_1.parseWantedDependency)(selector); + if (!wantedDep.alias) { + throw new error_1.PnpmError("INVALID_SELECTOR", `Cannot parse the "${selector}" selector`); + } + return { + name: wantedDep.alias, + pref: wantedDep.pref + }; + } + } +}); + +// ../hooks/read-package-hook/lib/isSubRange.js +var require_isSubRange = __commonJS({ + "../hooks/read-package-hook/lib/isSubRange.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isSubRange = void 0; + var semver_12 = __importDefault4(require_semver2()); + function isSubRange(superRange, subRange) { + return !superRange || subRange === superRange || semver_12.default.validRange(subRange) != null && semver_12.default.validRange(superRange) != null && semver_12.default.subset(subRange, superRange); + } + exports2.isSubRange = isSubRange; + } +}); + +// ../hooks/read-package-hook/lib/createVersionsOverrider.js +var require_createVersionsOverrider = __commonJS({ + "../hooks/read-package-hook/lib/createVersionsOverrider.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createVersionsOverrider = void 0; + var path_1 = __importDefault4(require("path")); + var semver_12 = __importDefault4(require_semver2()); + var partition_1 = __importDefault4(require_partition4()); + var error_1 = require_lib8(); + var parse_overrides_1 = require_lib138(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var isSubRange_1 = require_isSubRange(); + function createVersionsOverrider(overrides, rootDir) { + const parsedOverrides = tryParseOverrides(overrides); + const [versionOverrides, genericVersionOverrides] = (0, partition_1.default)(({ parentPkg }) => parentPkg != null, parsedOverrides.map((override) => { + let linkTarget; + if (override.newPref.startsWith("link:")) { + linkTarget = path_1.default.join(rootDir, override.newPref.substring(5)); } - if (s1 !== peg$FAILED) { - peg$savedPos = peg$currPos; - s2 = peg$c21(s1); - if (s2) - s2 = void 0; - else - s2 = peg$FAILED; - if (s2 !== peg$FAILED) { - s1 = [s1, s2]; - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + let linkFileTarget; + if (override.newPref.startsWith("file:")) { + const pkgPath = override.newPref.substring(5); + linkFileTarget = path_1.default.isAbsolute(pkgPath) ? pkgPath : path_1.default.join(rootDir, pkgPath); } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c18); - } + return { + ...override, + linkTarget, + linkFileTarget + }; + })); + return (manifest, dir) => { + const versionOverridesWithParent = versionOverrides.filter(({ parentPkg }) => { + return parentPkg.name === manifest.name && (!parentPkg.pref || semver_12.default.satisfies(manifest.version, parentPkg.pref)); + }); + overrideDepsOfPkg({ manifest, dir }, versionOverridesWithParent, genericVersionOverrides); + return manifest; + }; + } + exports2.createVersionsOverrider = createVersionsOverrider; + function tryParseOverrides(overrides) { + try { + return (0, parse_overrides_1.parseOverrides)(overrides); + } catch (e) { + throw new error_1.PnpmError("INVALID_OVERRIDES_SELECTOR", `${e.message} in pnpm.overrides`); + } + } + function overrideDepsOfPkg({ manifest, dir }, versionOverrides, genericVersionOverrides) { + if (manifest.dependencies != null) + overrideDeps(versionOverrides, genericVersionOverrides, manifest.dependencies, dir); + if (manifest.optionalDependencies != null) + overrideDeps(versionOverrides, genericVersionOverrides, manifest.optionalDependencies, dir); + if (manifest.devDependencies != null) + overrideDeps(versionOverrides, genericVersionOverrides, manifest.devDependencies, dir); + } + function overrideDeps(versionOverrides, genericVersionOverrides, deps, dir) { + for (const [name, pref] of Object.entries(deps)) { + const versionOverride = pickMostSpecificVersionOverride(versionOverrides.filter(({ targetPkg }) => targetPkg.name === name && (0, isSubRange_1.isSubRange)(targetPkg.pref, pref))) ?? pickMostSpecificVersionOverride(genericVersionOverrides.filter(({ targetPkg }) => targetPkg.name === name && (0, isSubRange_1.isSubRange)(targetPkg.pref, pref))); + if (!versionOverride) + continue; + if (versionOverride.linkTarget && dir) { + deps[versionOverride.targetPkg.name] = `link:${(0, normalize_path_1.default)(path_1.default.relative(dir, versionOverride.linkTarget))}`; + continue; } - return s0; + if (versionOverride.linkFileTarget) { + deps[versionOverride.targetPkg.name] = `file:${versionOverride.linkFileTarget}`; + continue; + } + deps[versionOverride.targetPkg.name] = versionOverride.newPref; } - function peg$parseExtradent() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - if (input.charCodeAt(peg$currPos) === 32) { - s2 = peg$c19; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c20); + } + function pickMostSpecificVersionOverride(versionOverrides) { + return versionOverrides.sort((a, b) => (0, isSubRange_1.isSubRange)(b.targetPkg.pref ?? "", a.targetPkg.pref ?? "") ? -1 : 1)[0]; + } + } +}); + +// ../hooks/read-package-hook/lib/createPeerDependencyPatcher.js +var require_createPeerDependencyPatcher = __commonJS({ + "../hooks/read-package-hook/lib/createPeerDependencyPatcher.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createPeerDependencyPatcher = void 0; + var semver_12 = __importDefault4(require_semver2()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var error_1 = require_lib8(); + var parse_overrides_1 = require_lib138(); + var matcher_1 = require_lib19(); + var isSubRange_1 = require_isSubRange(); + function createPeerDependencyPatcher(peerDependencyRules) { + const ignoreMissingPatterns = [...new Set(peerDependencyRules.ignoreMissing ?? [])]; + const ignoreMissingMatcher = (0, matcher_1.createMatcher)(ignoreMissingPatterns); + const allowAnyPatterns = [...new Set(peerDependencyRules.allowAny ?? [])]; + const allowAnyMatcher = (0, matcher_1.createMatcher)(allowAnyPatterns); + const { allowedVersionsMatchAll, allowedVersionsByParentPkgName } = parseAllowedVersions(peerDependencyRules.allowedVersions ?? {}); + const _getAllowedVersionsByParentPkg = getAllowedVersionsByParentPkg.bind(null, allowedVersionsByParentPkgName); + return (pkg) => { + if ((0, isEmpty_1.default)(pkg.peerDependencies)) + return pkg; + const allowedVersions = { + ...allowedVersionsMatchAll, + ..._getAllowedVersionsByParentPkg(pkg) + }; + for (const [peerName, peerVersion] of Object.entries(pkg.peerDependencies ?? {})) { + if (ignoreMissingMatcher(peerName) && !pkg.peerDependenciesMeta?.[peerName]?.optional) { + pkg.peerDependenciesMeta = pkg.peerDependenciesMeta ?? {}; + pkg.peerDependenciesMeta[peerName] = { + optional: true + }; } - } - while (s2 !== peg$FAILED) { - s1.push(s2); - if (input.charCodeAt(peg$currPos) === 32) { - s2 = peg$c19; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c20); - } + if (allowAnyMatcher(peerName)) { + pkg.peerDependencies[peerName] = "*"; + continue; } - } - if (s1 !== peg$FAILED) { - peg$savedPos = peg$currPos; - s2 = peg$c22(s1); - if (s2) - s2 = void 0; - else - s2 = peg$FAILED; - if (s2 !== peg$FAILED) { - s1 = [s1, s2]; - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (!allowedVersions?.[peerName] || peerVersion === "*") { + continue; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (allowedVersions?.[peerName].includes("*")) { + pkg.peerDependencies[peerName] = "*"; + continue; + } + const currentVersions = parseVersions(pkg.peerDependencies[peerName]); + allowedVersions[peerName].forEach((allowedVersion) => { + if (!currentVersions.includes(allowedVersion)) { + currentVersions.push(allowedVersion); + } + }); + pkg.peerDependencies[peerName] = currentVersions.join(" || "); } - return s0; + return pkg; + }; + } + exports2.createPeerDependencyPatcher = createPeerDependencyPatcher; + function parseAllowedVersions(allowedVersions) { + const overrides = tryParseAllowedVersions(allowedVersions); + const allowedVersionsMatchAll = {}; + const allowedVersionsByParentPkgName = {}; + for (const { parentPkg, targetPkg, newPref } of overrides) { + const ranges = parseVersions(newPref); + if (!parentPkg) { + allowedVersionsMatchAll[targetPkg.name] = ranges; + continue; + } + if (!allowedVersionsByParentPkgName[parentPkg.name]) { + allowedVersionsByParentPkgName[parentPkg.name] = []; + } + allowedVersionsByParentPkgName[parentPkg.name].push({ + parentPkg, + targetPkg, + ranges + }); } - function peg$parseIndent() { - var s0; - peg$savedPos = peg$currPos; - s0 = peg$c23(); - if (s0) - s0 = void 0; - else - s0 = peg$FAILED; - return s0; + return { + allowedVersionsMatchAll, + allowedVersionsByParentPkgName + }; + } + function tryParseAllowedVersions(allowedVersions) { + try { + return (0, parse_overrides_1.parseOverrides)(allowedVersions ?? {}); + } catch (err) { + throw new error_1.PnpmError("INVALID_ALLOWED_VERSION_SELECTOR", `${err.message} in pnpm.peerDependencyRules.allowedVersions`); } - function peg$parseDedent() { - var s0; - peg$savedPos = peg$currPos; - s0 = peg$c24(); - if (s0) - s0 = void 0; - else - s0 = peg$FAILED; - return s0; + } + function getAllowedVersionsByParentPkg(allowedVersionsByParentPkgName, pkg) { + if (!pkg.name || !allowedVersionsByParentPkgName[pkg.name]) + return {}; + return allowedVersionsByParentPkgName[pkg.name].reduce((acc, { targetPkg, parentPkg, ranges }) => { + if (!pkg.peerDependencies[targetPkg.name]) + return acc; + if (!parentPkg.pref || pkg.version && ((0, isSubRange_1.isSubRange)(parentPkg.pref, pkg.version) || semver_12.default.satisfies(pkg.version, parentPkg.pref))) { + acc[targetPkg.name] = ranges; + } + return acc; + }, {}); + } + function parseVersions(versions) { + return versions.split("||").map((v) => v.trim()); + } + } +}); + +// ../hooks/read-package-hook/lib/createReadPackageHook.js +var require_createReadPackageHook = __commonJS({ + "../hooks/read-package-hook/lib/createReadPackageHook.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createReadPackageHook = void 0; + var extensions_1 = require_lib137(); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var pipeWith_1 = __importDefault4(require_pipeWith()); + var createPackageExtender_1 = require_createPackageExtender(); + var createVersionsOverrider_1 = require_createVersionsOverrider(); + var createPeerDependencyPatcher_1 = require_createPeerDependencyPatcher(); + function createReadPackageHook({ ignoreCompatibilityDb, lockfileDir, overrides, packageExtensions, peerDependencyRules, readPackageHook }) { + const hooks = []; + if (!ignoreCompatibilityDb) { + hooks.push((0, createPackageExtender_1.createPackageExtender)(Object.fromEntries(extensions_1.packageExtensions))); } - function peg$parseName() { - var s0; - s0 = peg$parsestring(); - if (s0 === peg$FAILED) - s0 = peg$parsepseudostring(); - return s0; + if (!(0, isEmpty_1.default)(packageExtensions ?? {})) { + hooks.push((0, createPackageExtender_1.createPackageExtender)(packageExtensions)); } - function peg$parseLegacyName() { - var s0, s1, s2; - s0 = peg$parsestring(); - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parsepseudostringLegacy(); - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsepseudostringLegacy(); - } - } else { - s1 = peg$FAILED; - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c25(); - } - s0 = s1; - } - return s0; + if (Array.isArray(readPackageHook)) { + hooks.push(...readPackageHook); + } else if (readPackageHook) { + hooks.push(readPackageHook); } - function peg$parseLiteral() { - var s0; - s0 = peg$parsenull(); - if (s0 === peg$FAILED) { - s0 = peg$parseboolean(); - if (s0 === peg$FAILED) { - s0 = peg$parsestring(); - if (s0 === peg$FAILED) { - s0 = peg$parsepseudostring(); - } + if (!(0, isEmpty_1.default)(overrides ?? {})) { + hooks.push((0, createVersionsOverrider_1.createVersionsOverrider)(overrides, lockfileDir)); + } + if (peerDependencyRules != null && (!(0, isEmpty_1.default)(peerDependencyRules.ignoreMissing) || !(0, isEmpty_1.default)(peerDependencyRules.allowedVersions) || !(0, isEmpty_1.default)(peerDependencyRules.allowAny))) { + hooks.push((0, createPeerDependencyPatcher_1.createPeerDependencyPatcher)(peerDependencyRules)); + } + if (hooks.length === 0) { + return void 0; + } + const readPackageAndExtend = hooks.length === 1 ? hooks[0] : (pkg, dir) => (0, pipeWith_1.default)(async (f, res) => f(await res, dir), hooks)(pkg, dir); + return readPackageAndExtend; + } + exports2.createReadPackageHook = createReadPackageHook; + } +}); + +// ../hooks/read-package-hook/lib/index.js +var require_lib139 = __commonJS({ + "../hooks/read-package-hook/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createReadPackageHook = void 0; + var createReadPackageHook_1 = require_createReadPackageHook(); + Object.defineProperty(exports2, "createReadPackageHook", { enumerable: true, get: function() { + return createReadPackageHook_1.createReadPackageHook; + } }); + } +}); + +// ../pkg-manager/core/lib/pnpmPkgJson.js +var require_pnpmPkgJson = __commonJS({ + "../pkg-manager/core/lib/pnpmPkgJson.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pnpmPkgJson = void 0; + var path_1 = __importDefault4(require("path")); + var load_json_file_1 = require_load_json_file(); + var pnpmPkgJson; + exports2.pnpmPkgJson = pnpmPkgJson; + try { + exports2.pnpmPkgJson = pnpmPkgJson = (0, load_json_file_1.sync)(path_1.default.resolve(__dirname, "../package.json")); + } catch (err) { + exports2.pnpmPkgJson = pnpmPkgJson = { + name: "pnpm", + version: "0.0.0" + }; + } + } +}); + +// ../pkg-manager/core/lib/install/extendInstallOptions.js +var require_extendInstallOptions = __commonJS({ + "../pkg-manager/core/lib/install/extendInstallOptions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extendOptions = void 0; + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var hooks_read_package_hook_1 = require_lib139(); + var normalize_registries_1 = require_lib89(); + var pnpmPkgJson_1 = require_pnpmPkgJson(); + var defaults = async (opts) => { + const packageManager = opts.packageManager ?? { + name: pnpmPkgJson_1.pnpmPkgJson.name, + version: pnpmPkgJson_1.pnpmPkgJson.version + }; + return { + allowedDeprecatedVersions: {}, + allowNonAppliedPatches: false, + autoInstallPeers: false, + childConcurrency: 5, + depth: 0, + enablePnp: false, + engineStrict: false, + force: false, + forceSharedLockfile: false, + frozenLockfile: false, + hoistPattern: void 0, + publicHoistPattern: void 0, + hooks: {}, + ignoreCurrentPrefs: false, + ignoreDepScripts: false, + ignoreScripts: false, + include: { + dependencies: true, + devDependencies: true, + optionalDependencies: true + }, + includeDirect: { + dependencies: true, + devDependencies: true, + optionalDependencies: true + }, + lockfileDir: opts.lockfileDir ?? opts.dir ?? process.cwd(), + lockfileOnly: false, + nodeVersion: process.version, + nodeLinker: "isolated", + overrides: {}, + ownLifecycleHooksStdio: "inherit", + ignoreCompatibilityDb: false, + ignorePackageManifest: false, + packageExtensions: {}, + packageManager, + preferFrozenLockfile: true, + preferWorkspacePackages: false, + preserveWorkspaceProtocol: true, + pruneLockfileImporters: false, + pruneStore: false, + rawConfig: {}, + registries: normalize_registries_1.DEFAULT_REGISTRIES, + resolutionMode: "highest", + saveWorkspaceProtocol: true, + lockfileIncludeTarballUrl: false, + scriptsPrependNodePath: false, + shamefullyHoist: false, + shellEmulator: false, + sideEffectsCacheRead: false, + sideEffectsCacheWrite: false, + symlink: true, + storeController: opts.storeController, + storeDir: opts.storeDir, + strictPeerDependencies: true, + tag: "latest", + unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid() !== 0, + useLockfile: true, + saveLockfile: true, + useGitBranchLockfile: false, + useInlineSpecifiersLockfileFormat: false, + mergeGitBranchLockfiles: false, + userAgent: `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}`, + verifyStoreIntegrity: true, + workspacePackages: {}, + enableModulesDir: true, + modulesCacheMaxAge: 7 * 24 * 60, + resolveSymlinksInInjectedDirs: false, + dedupeDirectDeps: false, + dedupePeerDependents: false, + resolvePeersFromWorkspaceRoot: false, + extendNodePath: true, + ignoreWorkspaceCycles: false + }; + }; + async function extendOptions(opts) { + if (opts) { + for (const key in opts) { + if (opts[key] === void 0) { + delete opts[key]; } } - return s0; } - function peg$parseLegacyLiteral() { - var s0; - s0 = peg$parsenull(); - if (s0 === peg$FAILED) { - s0 = peg$parsestring(); - if (s0 === peg$FAILED) { - s0 = peg$parsepseudostringLegacy(); - } + if (opts.onlyBuiltDependencies && opts.neverBuiltDependencies) { + throw new error_1.PnpmError("CONFIG_CONFLICT_BUILT_DEPENDENCIES", "Cannot have both neverBuiltDependencies and onlyBuiltDependencies"); + } + const defaultOpts = await defaults(opts); + const extendedOpts = { + ...defaultOpts, + ...opts, + storeDir: defaultOpts.storeDir + }; + extendedOpts.readPackageHook = (0, hooks_read_package_hook_1.createReadPackageHook)({ + ignoreCompatibilityDb: extendedOpts.ignoreCompatibilityDb, + readPackageHook: extendedOpts.hooks?.readPackage, + overrides: extendedOpts.overrides, + lockfileDir: extendedOpts.lockfileDir, + packageExtensions: extendedOpts.packageExtensions, + peerDependencyRules: extendedOpts.peerDependencyRules + }); + if (extendedOpts.lockfileOnly) { + extendedOpts.ignoreScripts = true; + if (!extendedOpts.useLockfile) { + throw new error_1.PnpmError("CONFIG_CONFLICT_LOCKFILE_ONLY_WITH_NO_LOCKFILE", `Cannot generate a ${constants_1.WANTED_LOCKFILE} because lockfile is set to false`); } - return s0; } - function peg$parsepseudostring() { - var s0, s1, s2, s3, s4, s5; - peg$silentFails++; - s0 = peg$currPos; - if (peg$c27.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c28); + if (extendedOpts.userAgent.startsWith("npm/")) { + extendedOpts.userAgent = `${extendedOpts.packageManager.name}/${extendedOpts.packageManager.version} ${extendedOpts.userAgent}`; + } + extendedOpts.registries = (0, normalize_registries_1.normalizeRegistries)(extendedOpts.registries); + extendedOpts.rawConfig["registry"] = extendedOpts.registries.default; + return extendedOpts; + } + exports2.extendOptions = extendOptions; + } +}); + +// ../pkg-manager/core/lib/install/getPreferredVersions.js +var require_getPreferredVersions = __commonJS({ + "../pkg-manager/core/lib/install/getPreferredVersions.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPreferredVersionsFromLockfileAndManifests = exports2.getAllUniqueSpecs = void 0; + var lockfile_utils_1 = require_lib84(); + var manifest_utils_1 = require_lib26(); + var resolver_base_1 = require_lib100(); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + function getAllUniqueSpecs(manifests) { + const allSpecs = {}; + const ignored = /* @__PURE__ */ new Set(); + for (const manifest of manifests) { + const specs = (0, manifest_utils_1.getAllDependenciesFromManifest)(manifest); + for (const [name, spec] of Object.entries(specs)) { + if (ignored.has(name)) + continue; + if (allSpecs[name] != null && allSpecs[name] !== spec || spec.includes(":")) { + ignored.add(name); + delete allSpecs[name]; + continue; } + allSpecs[name] = spec; } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$currPos; - s4 = peg$parseB(); - if (s4 === peg$FAILED) - s4 = null; - if (s4 !== peg$FAILED) { - if (peg$c29.test(input.charAt(peg$currPos))) { - s5 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c30); - } - } - if (s5 !== peg$FAILED) { - s4 = [s4, s5]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$currPos; - s4 = peg$parseB(); - if (s4 === peg$FAILED) - s4 = null; - if (s4 !== peg$FAILED) { - if (peg$c29.test(input.charAt(peg$currPos))) { - s5 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s5 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c30); - } - } - if (s5 !== peg$FAILED) { - s4 = [s4, s5]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c31(); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + } + return allSpecs; + } + exports2.getAllUniqueSpecs = getAllUniqueSpecs; + function getPreferredVersionsFromLockfileAndManifests(snapshots, manifests) { + const preferredVersions = {}; + for (const manifest of manifests) { + const specs = (0, manifest_utils_1.getAllDependenciesFromManifest)(manifest); + for (const [name, spec] of Object.entries(specs)) { + const selector = (0, version_selector_type_1.default)(spec); + if (!selector) + continue; + preferredVersions[name] = preferredVersions[name] ?? {}; + preferredVersions[name][spec] = { + selectorType: selector.type, + weight: resolver_base_1.DIRECT_DEP_SELECTOR_WEIGHT + }; } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c26); - } + } + if (!snapshots) + return preferredVersions; + addPreferredVersionsFromLockfile(snapshots, preferredVersions); + return preferredVersions; + } + exports2.getPreferredVersionsFromLockfileAndManifests = getPreferredVersionsFromLockfileAndManifests; + function addPreferredVersionsFromLockfile(snapshots, preferredVersions) { + for (const [depPath, snapshot] of Object.entries(snapshots)) { + const { name, version: version2 } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, snapshot); + if (!preferredVersions[name]) { + preferredVersions[name] = { [version2]: "version" }; + } else if (!preferredVersions[name][version2]) { + preferredVersions[name][version2] = "version"; } - return s0; } - function peg$parsepseudostringLegacy() { - var s0, s1, s2, s3, s4; - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c32) { - s1 = peg$c32; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c33); - } + } + } +}); + +// ../pkg-manager/core/lib/install/link.js +var require_link3 = __commonJS({ + "../pkg-manager/core/lib/install/link.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.linkPackages = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var calc_dep_state_1 = require_lib112(); + var core_loggers_1 = require_lib9(); + var filter_lockfile_1 = require_lib116(); + var pkg_manager_direct_dep_linker_1 = require_lib130(); + var hoist_1 = require_lib117(); + var logger_1 = require_lib6(); + var modules_cleaner_1 = require_lib120(); + var symlink_dependency_1 = require_lib121(); + var p_limit_12 = __importDefault4(require_p_limit()); + var path_exists_1 = __importDefault4(require_path_exists()); + var equals_1 = __importDefault4(require_equals2()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var difference_1 = __importDefault4(require_difference()); + var omit_1 = __importDefault4(require_omit()); + var pick_1 = __importDefault4(require_pick()); + var pickBy_1 = __importDefault4(require_pickBy()); + var props_1 = __importDefault4(require_props()); + var brokenModulesLogger = (0, logger_1.logger)("_broken_node_modules"); + async function linkPackages(projects, depGraph, opts) { + let depNodes = Object.values(depGraph).filter(({ depPath, id }) => { + if (opts.wantedLockfile.packages?.[depPath] != null && !opts.wantedLockfile.packages[depPath].optional) { + opts.skipped.delete(depPath); + return true; } - if (s1 === peg$FAILED) - s1 = null; - if (s1 !== peg$FAILED) { - if (peg$c34.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c35); - } - } - if (s2 !== peg$FAILED) { - s3 = []; - if (peg$c36.test(input.charAt(peg$currPos))) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c37); - } - } - while (s4 !== peg$FAILED) { - s3.push(s4); - if (peg$c36.test(input.charAt(peg$currPos))) { - s4 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c37); - } - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c31(); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + if (opts.wantedToBeSkippedPackageIds.has(id)) { + opts.skipped.add(depPath); + return false; + } + opts.skipped.delete(depPath); + return true; + }); + if (!opts.include.dependencies) { + depNodes = depNodes.filter(({ dev, optional }) => dev || optional); + } + if (!opts.include.devDependencies) { + depNodes = depNodes.filter(({ optional, prod }) => prod || optional); + } + if (!opts.include.optionalDependencies) { + depNodes = depNodes.filter(({ optional }) => !optional); + } + depGraph = Object.fromEntries(depNodes.map((depNode) => [depNode.depPath, depNode])); + const removedDepPaths = await (0, modules_cleaner_1.prune)(projects, { + currentLockfile: opts.currentLockfile, + hoistedDependencies: opts.hoistedDependencies, + hoistedModulesDir: opts.hoistPattern != null ? opts.hoistedModulesDir : void 0, + include: opts.include, + lockfileDir: opts.lockfileDir, + pruneStore: opts.pruneStore, + pruneVirtualStore: opts.pruneVirtualStore, + publicHoistedModulesDir: opts.publicHoistPattern != null ? opts.rootModulesDir : void 0, + registries: opts.registries, + skipped: opts.skipped, + storeController: opts.storeController, + virtualStoreDir: opts.virtualStoreDir, + wantedLockfile: opts.wantedLockfile + }); + core_loggers_1.stageLogger.debug({ + prefix: opts.lockfileDir, + stage: "importing_started" + }); + const projectIds = projects.map(({ id }) => id); + const filterOpts = { + include: opts.include, + registries: opts.registries, + skipped: opts.skipped + }; + const newCurrentLockfile = (0, filter_lockfile_1.filterLockfileByImporters)(opts.wantedLockfile, projectIds, { + ...filterOpts, + failOnMissingDependencies: true, + skipped: /* @__PURE__ */ new Set() + }); + const newDepPaths = await linkNewPackages((0, filter_lockfile_1.filterLockfileByImporters)(opts.currentLockfile, projectIds, { + ...filterOpts, + failOnMissingDependencies: false + }), newCurrentLockfile, depGraph, { + force: opts.force, + depsStateCache: opts.depsStateCache, + ignoreScripts: opts.ignoreScripts, + lockfileDir: opts.lockfileDir, + optional: opts.include.optionalDependencies, + sideEffectsCacheRead: opts.sideEffectsCacheRead, + symlink: opts.symlink, + skipped: opts.skipped, + storeController: opts.storeController, + virtualStoreDir: opts.virtualStoreDir + }); + core_loggers_1.stageLogger.debug({ + prefix: opts.lockfileDir, + stage: "importing_done" + }); + let currentLockfile; + const allImportersIncluded = (0, equals_1.default)(projectIds.sort(), Object.keys(opts.wantedLockfile.importers).sort()); + if (opts.makePartialCurrentLockfile || !allImportersIncluded) { + const packages = opts.currentLockfile.packages ?? {}; + if (opts.wantedLockfile.packages != null) { + for (const depPath in opts.wantedLockfile.packages) { + if (depGraph[depPath]) { + packages[depPath] = opts.wantedLockfile.packages[depPath]; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; } - return s0; + const projects2 = { + ...opts.currentLockfile.importers, + ...(0, pick_1.default)(projectIds, opts.wantedLockfile.importers) + }; + currentLockfile = (0, filter_lockfile_1.filterLockfileByImporters)({ + ...opts.wantedLockfile, + importers: projects2, + packages + }, Object.keys(projects2), { + ...filterOpts, + failOnMissingDependencies: false, + skipped: /* @__PURE__ */ new Set() + }); + } else if (opts.include.dependencies && opts.include.devDependencies && opts.include.optionalDependencies && opts.skipped.size === 0) { + currentLockfile = opts.wantedLockfile; + } else { + currentLockfile = newCurrentLockfile; } - function peg$parsenull() { - var s0, s1; - s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c38) { - s1 = peg$c38; - peg$currPos += 4; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c39); + let newHoistedDependencies; + if (opts.hoistPattern == null && opts.publicHoistPattern == null) { + newHoistedDependencies = {}; + } else if (newDepPaths.length > 0 || removedDepPaths.size > 0) { + const hoistLockfile = { + ...currentLockfile, + packages: (0, omit_1.default)(Array.from(opts.skipped), currentLockfile.packages) + }; + newHoistedDependencies = await (0, hoist_1.hoist)({ + extraNodePath: opts.extraNodePaths, + lockfile: hoistLockfile, + importerIds: projectIds, + privateHoistedModulesDir: opts.hoistedModulesDir, + privateHoistPattern: opts.hoistPattern ?? [], + publicHoistedModulesDir: opts.rootModulesDir, + publicHoistPattern: opts.publicHoistPattern ?? [], + virtualStoreDir: opts.virtualStoreDir + }); + } else { + newHoistedDependencies = opts.hoistedDependencies; + } + if (opts.symlink) { + const projectsToLink = Object.fromEntries(await Promise.all(projects.map(async ({ id, manifest, modulesDir, rootDir }) => { + const deps = opts.dependenciesByProjectId[id]; + const importerFromLockfile = newCurrentLockfile.importers[id]; + return [id, { + dir: rootDir, + modulesDir, + dependencies: await Promise.all([ + ...Object.entries(deps).filter(([rootAlias]) => importerFromLockfile.specifiers[rootAlias]).map(([rootAlias, depPath]) => ({ rootAlias, depGraphNode: depGraph[depPath] })).filter(({ depGraphNode }) => depGraphNode).map(async ({ rootAlias, depGraphNode }) => { + const isDev = Boolean(manifest.devDependencies?.[depGraphNode.name]); + const isOptional = Boolean(manifest.optionalDependencies?.[depGraphNode.name]); + return { + alias: rootAlias, + name: depGraphNode.name, + version: depGraphNode.version, + dir: depGraphNode.dir, + id: depGraphNode.id, + dependencyType: isDev && "dev" || isOptional && "optional" || "prod", + latest: opts.outdatedDependencies[depGraphNode.id], + isExternalLink: false + }; + }), + ...opts.linkedDependenciesByProjectId[id].map(async (linkedDependency) => { + const dir = resolvePath(rootDir, linkedDependency.resolution.directory); + return { + alias: linkedDependency.alias, + name: linkedDependency.name, + version: linkedDependency.version, + dir, + id: linkedDependency.resolution.directory, + dependencyType: linkedDependency.dev && "dev" || linkedDependency.optional && "optional" || "prod", + isExternalLink: true + }; + }) + ]) + }]; + }))); + await (0, pkg_manager_direct_dep_linker_1.linkDirectDeps)(projectsToLink, { dedupe: opts.dedupeDirectDeps }); + } + return { + currentLockfile, + newDepPaths, + newHoistedDependencies, + removedDepPaths + }; + } + exports2.linkPackages = linkPackages; + var isAbsolutePath = /^[/]|^[A-Za-z]:/; + function resolvePath(where, spec) { + if (isAbsolutePath.test(spec)) + return spec; + return path_1.default.resolve(where, spec); + } + async function linkNewPackages(currentLockfile, wantedLockfile, depGraph, opts) { + const wantedRelDepPaths = (0, difference_1.default)(Object.keys(wantedLockfile.packages ?? {}), Array.from(opts.skipped)); + let newDepPathsSet; + if (opts.force) { + newDepPathsSet = new Set(wantedRelDepPaths.filter((depPath) => depGraph[depPath])); + } else { + newDepPathsSet = await selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph); + } + core_loggers_1.statsLogger.debug({ + added: newDepPathsSet.size, + prefix: opts.lockfileDir + }); + const existingWithUpdatedDeps = []; + if (!opts.force && currentLockfile.packages != null && wantedLockfile.packages != null) { + for (const depPath of wantedRelDepPaths) { + if (currentLockfile.packages[depPath] && (!(0, equals_1.default)(currentLockfile.packages[depPath].dependencies, wantedLockfile.packages[depPath].dependencies) || !(0, equals_1.default)(currentLockfile.packages[depPath].optionalDependencies, wantedLockfile.packages[depPath].optionalDependencies))) { + if (depGraph[depPath] && !newDepPathsSet.has(depPath)) { + existingWithUpdatedDeps.push(depGraph[depPath]); + } } } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c40(); - } - s0 = s1; - return s0; } - function peg$parseboolean() { - var s0, s1; - s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c41) { - s1 = peg$c41; - peg$currPos += 4; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c42); + if (!newDepPathsSet.size && existingWithUpdatedDeps.length === 0) + return []; + const newDepPaths = Array.from(newDepPathsSet); + const newPkgs = (0, props_1.default)(newDepPaths, depGraph); + await Promise.all(newPkgs.map(async (depNode) => fs_1.promises.mkdir(depNode.modules, { recursive: true }))); + await Promise.all([ + !opts.symlink ? Promise.resolve() : linkAllModules([...newPkgs, ...existingWithUpdatedDeps], depGraph, { + lockfileDir: opts.lockfileDir, + optional: opts.optional + }), + linkAllPkgs(opts.storeController, newPkgs, { + depGraph, + depsStateCache: opts.depsStateCache, + force: opts.force, + ignoreScripts: opts.ignoreScripts, + lockfileDir: opts.lockfileDir, + sideEffectsCacheRead: opts.sideEffectsCacheRead + }) + ]); + return newDepPaths; + } + async function selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph) { + const newDeps = /* @__PURE__ */ new Set(); + const prevDeps = currentLockfile.packages ?? {}; + await Promise.all(wantedRelDepPaths.map(async (depPath) => { + const depNode = depGraph[depPath]; + if (!depNode) + return; + const prevDep = prevDeps[depPath]; + if (prevDep && depNode.resolution.integrity === prevDep.resolution.integrity) { + if (await (0, path_exists_1.default)(depNode.dir)) { + return; } + brokenModulesLogger.debug({ + missing: depNode.dir + }); } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c43(); + newDeps.add(depPath); + })); + return newDeps; + } + var limitLinking = (0, p_limit_12.default)(16); + async function linkAllPkgs(storeController, depNodes, opts) { + return Promise.all(depNodes.map(async (depNode) => { + const filesResponse = await depNode.fetchingFiles(); + if (typeof depNode.requiresBuild === "function") { + depNode.requiresBuild = await depNode.requiresBuild(); + } + let sideEffectsCacheKey; + if (opts.sideEffectsCacheRead && filesResponse.sideEffects && !(0, isEmpty_1.default)(filesResponse.sideEffects)) { + sideEffectsCacheKey = (0, calc_dep_state_1.calcDepState)(opts.depGraph, opts.depsStateCache, depNode.depPath, { + isBuilt: !opts.ignoreScripts && depNode.requiresBuild, + patchFileHash: depNode.patchFile?.hash + }); } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c44) { - s1 = peg$c44; - peg$currPos += 5; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c45); - } - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c46(); - } - s0 = s1; + const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, { + filesResponse, + force: opts.force, + sideEffectsCacheKey, + requiresBuild: depNode.requiresBuild || depNode.patchFile != null + }); + if (importMethod) { + core_loggers_1.progressLogger.debug({ + method: importMethod, + requester: opts.lockfileDir, + status: "imported", + to: depNode.dir + }); } - return s0; - } - function peg$parsestring() { - var s0, s1, s2, s3; - peg$silentFails++; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 34) { - s1 = peg$c48; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c49); - } + depNode.isBuilt = isBuilt; + const selfDep = depNode.children[depNode.name]; + if (selfDep) { + const pkg = opts.depGraph[selfDep]; + if (!pkg || !pkg.installable && pkg.optional) + return; + const targetModulesDir = path_1.default.join(depNode.modules, depNode.name, "node_modules"); + await limitLinking(async () => (0, symlink_dependency_1.symlinkDependency)(pkg.dir, targetModulesDir, depNode.name)); } - if (s1 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 34) { - s2 = peg$c48; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c49); - } - } - if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c50(); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; + })); + } + async function linkAllModules(depNodes, depGraph, opts) { + await Promise.all(depNodes.map(async ({ children, optionalDependencies, name, modules }) => { + const childrenToLink = opts.optional ? children : (0, pickBy_1.default)((_, childAlias) => !optionalDependencies.has(childAlias), children); + await Promise.all(Object.entries(childrenToLink).map(async ([childAlias, childDepPath]) => { + if (childDepPath.startsWith("link:")) { + await limitLinking(() => (0, symlink_dependency_1.symlinkDependency)(path_1.default.resolve(opts.lockfileDir, childDepPath.slice(5)), modules, childAlias)); + return; } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + const pkg = depGraph[childDepPath]; + if (!pkg || !pkg.installable && pkg.optional || childAlias === name) + return; + await limitLinking(() => (0, symlink_dependency_1.symlinkDependency)(pkg.dir, modules, childAlias)); + })); + })); + } + } +}); + +// ../pkg-manager/core/lib/install/reportPeerDependencyIssues.js +var require_reportPeerDependencyIssues2 = __commonJS({ + "../pkg-manager/core/lib/install/reportPeerDependencyIssues.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PeerDependencyIssuesError = exports2.reportPeerDependencyIssues = void 0; + var error_1 = require_lib8(); + var core_loggers_1 = require_lib9(); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + function reportPeerDependencyIssues(peerDependencyIssuesByProjects, opts) { + if (Object.values(peerDependencyIssuesByProjects).every((peerIssuesOfProject) => (0, isEmpty_1.default)(peerIssuesOfProject.bad) && ((0, isEmpty_1.default)(peerIssuesOfProject.missing) || peerIssuesOfProject.conflicts.length === 0 && Object.keys(peerIssuesOfProject.intersections).length === 0))) + return; + if (opts.strictPeerDependencies) { + throw new PeerDependencyIssuesError(peerDependencyIssuesByProjects); + } + core_loggers_1.peerDependencyIssuesLogger.debug({ + issuesByProjects: peerDependencyIssuesByProjects + }); + } + exports2.reportPeerDependencyIssues = reportPeerDependencyIssues; + var PeerDependencyIssuesError = class extends error_1.PnpmError { + constructor(issues) { + super("PEER_DEP_ISSUES", "Unmet peer dependencies"); + this.issuesByProjects = issues; + } + }; + exports2.PeerDependencyIssuesError = PeerDependencyIssuesError; + } +}); + +// ../pkg-manager/core/lib/install/index.js +var require_install = __commonJS({ + "../pkg-manager/core/lib/install/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addDependenciesToPackage = exports2.createObjectChecksum = exports2.mutateModules = exports2.mutateModulesInSingleProject = exports2.install = void 0; + var crypto_1 = __importDefault4(require("crypto")); + var path_1 = __importDefault4(require("path")); + var build_modules_1 = require_lib115(); + var constants_1 = require_lib7(); + var core_loggers_1 = require_lib9(); + var crypto_base32_hash_1 = require_lib80(); + var error_1 = require_lib8(); + var get_context_1 = require_lib108(); + var headless_1 = require_lib131(); + var lifecycle_1 = require_lib61(); + var link_bins_1 = require_lib54(); + var lockfile_file_1 = require_lib87(); + var lockfile_to_pnp_1 = require_lib119(); + var lockfile_utils_1 = require_lib84(); + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var modules_yaml_1 = require_lib88(); + var read_modules_dir_1 = require_lib53(); + var read_project_manifest_1 = require_lib16(); + var remove_bins_1 = require_lib42(); + var resolve_dependencies_1 = require_lib134(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var is_inner_link_1 = __importDefault4(require_is_inner_link()); + var p_filter_1 = __importDefault4(require_p_filter()); + var p_limit_12 = __importDefault4(require_p_limit()); + var p_map_values_1 = __importDefault4(require_lib63()); + var flatten_1 = __importDefault4(require_flatten2()); + var map_1 = __importDefault4(require_map4()); + var equals_1 = __importDefault4(require_equals2()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var pickBy_1 = __importDefault4(require_pickBy()); + var pipeWith_1 = __importDefault4(require_pipeWith()); + var props_1 = __importDefault4(require_props()); + var unnest_1 = __importDefault4(require_unnest()); + var parseWantedDependencies_1 = require_parseWantedDependencies(); + var removeDeps_1 = require_removeDeps(); + var allProjectsAreUpToDate_1 = require_allProjectsAreUpToDate(); + var extendInstallOptions_1 = require_extendInstallOptions(); + var getPreferredVersions_1 = require_getPreferredVersions(); + var link_1 = require_link3(); + var reportPeerDependencyIssues_1 = require_reportPeerDependencyIssues2(); + var LockfileConfigMismatchError = class extends error_1.PnpmError { + constructor(outdatedLockfileSettingName) { + super("LOCKFILE_CONFIG_MISMATCH", `Cannot proceed with the frozen installation. The current "${outdatedLockfileSettingName}" configuration doesn't match the value found in the lockfile`, { + hint: 'Update your lockfile using "pnpm install --no-frozen-lockfile"' + }); + } + }; + var BROKEN_LOCKFILE_INTEGRITY_ERRORS = /* @__PURE__ */ new Set([ + "ERR_PNPM_UNEXPECTED_PKG_CONTENT_IN_STORE", + "ERR_PNPM_TARBALL_INTEGRITY" + ]); + var DEV_PREINSTALL = "pnpm:devPreinstall"; + async function install(manifest, opts) { + const rootDir = opts.dir ?? process.cwd(); + const projects = await mutateModules([ + { + mutation: "install", + pruneDirectDependencies: opts.pruneDirectDependencies, + rootDir, + update: opts.update, + updateMatching: opts.updateMatching, + updatePackageManifest: opts.updatePackageManifest } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 34) { - s1 = peg$c48; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c49); - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parsechars(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 34) { - s3 = peg$c48; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c49); - } - } - if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c51(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } + ], { + ...opts, + allProjects: [{ + buildIndex: 0, + manifest, + rootDir + }] + }); + return projects[0].manifest; + } + exports2.install = install; + async function mutateModulesInSingleProject(project, maybeOpts) { + const [updatedProject] = await mutateModules([ + { + ...project, + update: maybeOpts.update, + updateMatching: maybeOpts.updateMatching, + updatePackageManifest: maybeOpts.updatePackageManifest } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c47); + ], { + ...maybeOpts, + allProjects: [{ + buildIndex: 0, + ...project + }] + }); + return updatedProject; + } + exports2.mutateModulesInSingleProject = mutateModulesInSingleProject; + async function mutateModules(projects, maybeOpts) { + const reporter = maybeOpts?.reporter; + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.on("data", reporter); + } + const opts = await (0, extendInstallOptions_1.extendOptions)(maybeOpts); + if (!opts.include.dependencies && opts.include.optionalDependencies) { + throw new error_1.PnpmError("OPTIONAL_DEPS_REQUIRE_PROD_DEPS", "Optional dependencies cannot be installed without production dependencies"); + } + const installsOnly = projects.every((project) => project.mutation === "install" && !project.update && !project.updateMatching); + if (!installsOnly) + opts.strictPeerDependencies = false; + opts["forceNewModules"] = installsOnly; + const rootProjectManifest = opts.allProjects.find(({ rootDir }) => rootDir === opts.lockfileDir)?.manifest ?? // When running install/update on a subset of projects, the root project might not be included, + // so reading its manifest explicitly here. + await (0, read_project_manifest_1.safeReadProjectManifestOnly)(opts.lockfileDir); + const ctx = await (0, get_context_1.getContext)(opts); + if (opts.hooks.preResolution) { + await opts.hooks.preResolution({ + currentLockfile: ctx.currentLockfile, + wantedLockfile: ctx.wantedLockfile, + existsCurrentLockfile: ctx.existsCurrentLockfile, + existsWantedLockfile: ctx.existsWantedLockfile, + lockfileDir: ctx.lockfileDir, + storeDir: ctx.storeDir, + registries: ctx.registries + }); + } + const pruneVirtualStore = ctx.modulesFile?.prunedAt && opts.modulesCacheMaxAge > 0 ? cacheExpired(ctx.modulesFile.prunedAt, opts.modulesCacheMaxAge) : true; + if (!maybeOpts.ignorePackageManifest) { + for (const { manifest, rootDir } of Object.values(ctx.projects)) { + if (!manifest) { + throw new Error(`No package.json found in "${rootDir}"`); } } - return s0; } - function peg$parsechars() { - var s0, s1, s2; - s0 = peg$currPos; - s1 = []; - s2 = peg$parsechar(); - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsechar(); - } - } else { - s1 = peg$FAILED; + const result2 = await _install(); + if (global["verifiedFileIntegrity"] > 1e3) { + (0, logger_1.globalInfo)(`The integrity of ${global["verifiedFileIntegrity"]} files was checked. This might have caused installation to take longer.`); + } + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.removeListener("data", reporter); + } + if (opts.mergeGitBranchLockfiles) { + await (0, lockfile_file_1.cleanGitBranchLockfiles)(ctx.lockfileDir); + } + return result2; + async function _install() { + const scriptsOpts = { + extraBinPaths: opts.extraBinPaths, + extraNodePaths: ctx.extraNodePaths, + extraEnv: opts.extraEnv, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + rawConfig: opts.rawConfig, + resolveSymlinksInInjectedDirs: opts.resolveSymlinksInInjectedDirs, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + stdio: opts.ownLifecycleHooksStdio, + storeController: opts.storeController, + unsafePerm: opts.unsafePerm || false + }; + if (!opts.ignoreScripts && !opts.ignorePackageManifest && rootProjectManifest?.scripts?.[DEV_PREINSTALL]) { + await (0, lifecycle_1.runLifecycleHook)(DEV_PREINSTALL, rootProjectManifest, { + ...scriptsOpts, + depPath: opts.lockfileDir, + pkgRoot: opts.lockfileDir, + rootModulesDir: ctx.rootModulesDir + }); } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c52(s1); + const packageExtensionsChecksum = (0, isEmpty_1.default)(opts.packageExtensions ?? {}) ? void 0 : createObjectChecksum(opts.packageExtensions); + const patchedDependencies = opts.ignorePackageManifest ? ctx.wantedLockfile.patchedDependencies : opts.patchedDependencies ? await calcPatchHashes(opts.patchedDependencies, opts.lockfileDir) : {}; + const patchedDependenciesWithResolvedPath = patchedDependencies ? (0, map_1.default)((patchFile) => ({ + hash: patchFile.hash, + path: path_1.default.join(opts.lockfileDir, patchFile.path) + }), patchedDependencies) : void 0; + if (opts.useLockfileV6 == null) { + opts.useLockfileV6 = ctx.wantedLockfile.lockfileVersion.toString().startsWith("6."); } - s0 = s1; - return s0; - } - function peg$parsechar() { - var s0, s1, s2, s3, s4, s5; - if (peg$c53.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c54); + const frozenLockfile = opts.frozenLockfile || opts.frozenLockfileIfExists && ctx.existsWantedLockfile; + let outdatedLockfileSettings = false; + if (!opts.ignorePackageManifest) { + const outdatedLockfileSettingName = getOutdatedLockfileSetting(ctx.wantedLockfile, { + autoInstallPeers: opts.autoInstallPeers, + overrides: opts.overrides, + neverBuiltDependencies: opts.neverBuiltDependencies, + onlyBuiltDependencies: opts.onlyBuiltDependencies, + packageExtensionsChecksum, + patchedDependencies + }); + outdatedLockfileSettings = outdatedLockfileSettingName != null; + if (frozenLockfile && outdatedLockfileSettings) { + throw new LockfileConfigMismatchError(outdatedLockfileSettingName); } } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c55) { - s1 = peg$c55; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c56); - } + let needsFullResolution = outdatedLockfileSettings || opts.fixLockfile || opts.useLockfileV6 && !ctx.wantedLockfile.lockfileVersion.toString().startsWith("6."); + if (needsFullResolution) { + ctx.wantedLockfile.settings = { + autoInstallPeers: opts.autoInstallPeers, + excludeLinksFromLockfile: false + }; + ctx.wantedLockfile.overrides = opts.overrides; + ctx.wantedLockfile.neverBuiltDependencies = opts.neverBuiltDependencies; + ctx.wantedLockfile.onlyBuiltDependencies = opts.onlyBuiltDependencies; + ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum; + ctx.wantedLockfile.patchedDependencies = patchedDependencies; + } else if (!frozenLockfile) { + ctx.wantedLockfile.settings = { + autoInstallPeers: opts.autoInstallPeers, + excludeLinksFromLockfile: false + }; + } + if (!ctx.lockfileHadConflicts && !opts.fixLockfile && !opts.dedupe && installsOnly && (frozenLockfile && !opts.lockfileOnly || opts.ignorePackageManifest || !needsFullResolution && opts.preferFrozenLockfile && (!opts.pruneLockfileImporters || Object.keys(ctx.wantedLockfile.importers).length === Object.keys(ctx.projects).length) && ctx.existsWantedLockfile && (ctx.wantedLockfile.lockfileVersion === constants_1.LOCKFILE_VERSION || ctx.wantedLockfile.lockfileVersion === constants_1.LOCKFILE_VERSION_V6 || ctx.wantedLockfile.lockfileVersion === "6.1") && await (0, allProjectsAreUpToDate_1.allProjectsAreUpToDate)(Object.values(ctx.projects), { + autoInstallPeers: opts.autoInstallPeers, + linkWorkspacePackages: opts.linkWorkspacePackagesDepth >= 0, + wantedLockfile: ctx.wantedLockfile, + workspacePackages: opts.workspacePackages + }))) { + if (needsFullResolution) { + throw new error_1.PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", "Cannot perform a frozen installation because the lockfile needs updates", { + hint: 'Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile"' + }); } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c57(); + if (opts.lockfileOnly) { + await (0, lockfile_file_1.writeWantedLockfile)(ctx.lockfileDir, ctx.wantedLockfile); + return projects.map((mutatedProject) => ctx.projects[mutatedProject.rootDir]); } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c58) { - s1 = peg$c58; - peg$currPos += 2; + if (!ctx.existsWantedLockfile) { + if (Object.values(ctx.projects).some((project) => pkgHasDependencies(project.manifest))) { + throw new Error(`Headless installation requires a ${constants_1.WANTED_LOCKFILE} file`); + } + } else { + if (maybeOpts.ignorePackageManifest) { + logger_1.logger.info({ message: "Importing packages to virtual store", prefix: opts.lockfileDir }); } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c59); + logger_1.logger.info({ message: "Lockfile is up to date, resolution step is skipped", prefix: opts.lockfileDir }); + } + try { + await (0, headless_1.headlessInstall)({ + ...ctx, + ...opts, + currentEngine: { + nodeVersion: opts.nodeVersion, + pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "" + }, + currentHoistedLocations: ctx.modulesFile?.hoistedLocations, + patchedDependencies: patchedDependenciesWithResolvedPath, + selectedProjectDirs: projects.map((project) => project.rootDir), + allProjects: ctx.projects, + prunedAt: ctx.modulesFile?.prunedAt, + pruneVirtualStore, + wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile, + useLockfile: opts.useLockfile && ctx.wantedLockfileIsModified + }); + if (opts.useLockfile && opts.saveLockfile && opts.mergeGitBranchLockfiles) { + await (0, lockfile_file_1.writeLockfiles)({ + currentLockfile: ctx.currentLockfile, + currentLockfileDir: ctx.virtualStoreDir, + wantedLockfile: ctx.wantedLockfile, + wantedLockfileDir: ctx.lockfileDir, + forceSharedFormat: opts.forceSharedLockfile, + useInlineSpecifiersFormat: opts.useInlineSpecifiersLockfileFormat || opts.useLockfileV6, + useGitBranchLockfile: opts.useGitBranchLockfile, + mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles + }); + } + return projects.map((mutatedProject) => { + const project = ctx.projects[mutatedProject.rootDir]; + return { + ...project, + manifest: project.originalManifest ?? project.manifest + }; + }); + } catch (error) { + if (frozenLockfile || error.code !== "ERR_PNPM_LOCKFILE_MISSING_DEPENDENCY" && !BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code) || !ctx.existsWantedLockfile && !ctx.existsCurrentLockfile) + throw error; + if (BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code)) { + needsFullResolution = true; + for (const project of projects) { + project.update = true; + } } + logger_1.logger.warn({ + error, + message: error.message, + prefix: ctx.lockfileDir + }); + logger_1.logger.error(new error_1.PnpmError(error.code, "The lockfile is broken! Resolution step will be performed to fix it.")); } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c60(); + } + } + const projectsToInstall = []; + let preferredSpecs = null; + for (const project of projects) { + const projectOpts = { + ...project, + ...ctx.projects[project.rootDir] + }; + switch (project.mutation) { + case "uninstallSome": + projectsToInstall.push({ + pruneDirectDependencies: false, + ...projectOpts, + removePackages: project.dependencyNames, + updatePackageManifest: true, + wantedDependencies: [] + }); + break; + case "install": { + await installCase({ + ...projectOpts, + updatePackageManifest: projectOpts.updatePackageManifest ?? projectOpts.update + }); + break; } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c61) { - s1 = peg$c61; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c62); + case "installSome": { + await installSome({ + ...projectOpts, + updatePackageManifest: projectOpts.updatePackageManifest !== false + }); + break; + } + case "unlink": { + const packageDirs = await (0, read_modules_dir_1.readModulesDir)(projectOpts.modulesDir); + const externalPackages = await (0, p_filter_1.default)(packageDirs, async (packageDir) => isExternalLink(ctx.storeDir, projectOpts.modulesDir, packageDir)); + const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(projectOpts.manifest); + const packagesToInstall = []; + for (const pkgName of externalPackages) { + await (0, rimraf_1.default)(path_1.default.join(projectOpts.modulesDir, pkgName)); + if (allDeps[pkgName]) { + packagesToInstall.push(pkgName); } } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c63(); + if (packagesToInstall.length === 0) { + return projects.map((mutatedProject) => ctx.projects[mutatedProject.rootDir]); } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c64) { - s1 = peg$c64; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c65); + await installCase({ ...projectOpts, mutation: "install" }); + break; + } + case "unlinkSome": { + if (projectOpts.manifest?.name && opts.globalBin) { + await (0, remove_bins_1.removeBin)(path_1.default.join(opts.globalBin, projectOpts.manifest?.name)); + } + const packagesToInstall = []; + const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(projectOpts.manifest); + for (const depName of project.dependencyNames) { + try { + if (!await isExternalLink(ctx.storeDir, projectOpts.modulesDir, depName)) { + logger_1.logger.warn({ + message: `${depName} is not an external link`, + prefix: project.rootDir + }); + continue; } + } catch (err) { + if (err["code"] !== "ENOENT") + throw err; } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c66(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c67) { - s1 = peg$c67; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c68); - } - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c69(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c70) { - s1 = peg$c70; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c71); - } - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c72(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c73) { - s1 = peg$c73; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c74); - } - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c75(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c76) { - s1 = peg$c76; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c77); - } - } - if (s1 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c78(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c79) { - s1 = peg$c79; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c80); - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parsehexDigit(); - if (s2 !== peg$FAILED) { - s3 = peg$parsehexDigit(); - if (s3 !== peg$FAILED) { - s4 = peg$parsehexDigit(); - if (s4 !== peg$FAILED) { - s5 = peg$parsehexDigit(); - if (s5 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c81(s2, s3, s4, s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } - } - } - } + await (0, rimraf_1.default)(path_1.default.join(projectOpts.modulesDir, depName)); + if (allDeps[depName]) { + packagesToInstall.push(depName); } } + if (packagesToInstall.length === 0) { + return projects.map((mutatedProject) => ctx.projects[mutatedProject.rootDir]); + } + await installSome({ + ...projectOpts, + dependencySelectors: packagesToInstall, + mutation: "installSome", + updatePackageManifest: false + }); + break; } } } - return s0; - } - function peg$parsehexDigit() { - var s0; - if (peg$c82.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c83); + async function installCase(project) { + const wantedDependencies = (0, resolve_dependencies_1.getWantedDependencies)(project.manifest, { + autoInstallPeers: opts.autoInstallPeers, + includeDirect: opts.includeDirect, + updateWorkspaceDependencies: project.update, + nodeExecPath: opts.nodeExecPath + }).map((wantedDependency) => ({ ...wantedDependency, updateSpec: true, preserveNonSemverVersionSpec: true })); + if (ctx.wantedLockfile?.importers) { + forgetResolutionsOfPrevWantedDeps(ctx.wantedLockfile.importers[project.id], wantedDependencies); } - } - return s0; - } - function peg$parseB() { - var s0, s1; - peg$silentFails++; - s0 = []; - if (peg$c85.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c86); + if (opts.ignoreScripts && project.manifest?.scripts && (project.manifest.scripts.preinstall || project.manifest.scripts.install || project.manifest.scripts.postinstall || project.manifest.scripts.prepare)) { + ctx.pendingBuilds.push(project.id); } + projectsToInstall.push({ + pruneDirectDependencies: false, + ...project, + wantedDependencies + }); } - if (s1 !== peg$FAILED) { - while (s1 !== peg$FAILED) { - s0.push(s1); - if (peg$c85.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c86); - } - } + async function installSome(project) { + const currentPrefs = opts.ignoreCurrentPrefs ? {} : (0, manifest_utils_1.getAllDependenciesFromManifest)(project.manifest); + const optionalDependencies = project.targetDependenciesField ? {} : project.manifest.optionalDependencies || {}; + const devDependencies = project.targetDependenciesField ? {} : project.manifest.devDependencies || {}; + if (preferredSpecs == null) { + preferredSpecs = (0, getPreferredVersions_1.getAllUniqueSpecs)((0, flatten_1.default)(Object.values(opts.workspacePackages).map((obj) => Object.values(obj))).map(({ manifest }) => manifest)); } - } else { - s0 = peg$FAILED; + const wantedDeps = (0, parseWantedDependencies_1.parseWantedDependencies)(project.dependencySelectors, { + allowNew: project.allowNew !== false, + currentPrefs, + defaultTag: opts.tag, + dev: project.targetDependenciesField === "devDependencies", + devDependencies, + optional: project.targetDependenciesField === "optionalDependencies", + optionalDependencies, + updateWorkspaceDependencies: project.update, + preferredSpecs, + overrides: opts.overrides + }); + projectsToInstall.push({ + pruneDirectDependencies: false, + ...project, + wantedDependencies: wantedDeps.map((wantedDep) => ({ ...wantedDep, isNew: !currentPrefs[wantedDep.alias], updateSpec: true, nodeExecPath: opts.nodeExecPath })) + }); } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c84); + const makePartialCurrentLockfile = !installsOnly && (ctx.existsWantedLockfile && !ctx.existsCurrentLockfile || !ctx.currentLockfileIsUpToDate); + const result3 = await installInContext(projectsToInstall, ctx, { + ...opts, + currentLockfileIsUpToDate: !ctx.existsWantedLockfile || ctx.currentLockfileIsUpToDate, + makePartialCurrentLockfile, + needsFullResolution, + pruneVirtualStore, + scriptsOpts, + updateLockfileMinorVersion: true, + patchedDependencies: patchedDependenciesWithResolvedPath + }); + return result3.projects; + } + } + exports2.mutateModules = mutateModules; + async function calcPatchHashes(patches, lockfileDir) { + return (0, p_map_values_1.default)(async (patchFileRelativePath) => { + const patchFilePath = path_1.default.join(lockfileDir, patchFileRelativePath); + return { + hash: await (0, crypto_base32_hash_1.createBase32HashFromFile)(patchFilePath), + path: patchFileRelativePath + }; + }, patches); + } + function getOutdatedLockfileSetting(lockfile, { neverBuiltDependencies, onlyBuiltDependencies, overrides, packageExtensionsChecksum, patchedDependencies, autoInstallPeers }) { + if (!(0, equals_1.default)(lockfile.overrides ?? {}, overrides ?? {})) { + return "overrides"; + } + if (!(0, equals_1.default)((lockfile.neverBuiltDependencies ?? []).sort(), (neverBuiltDependencies ?? []).sort())) { + return "neverBuiltDependencies"; + } + if (!(0, equals_1.default)(onlyBuiltDependencies?.sort(), lockfile.onlyBuiltDependencies)) { + return "onlyBuiltDependencies"; + } + if (lockfile.packageExtensionsChecksum !== packageExtensionsChecksum) { + return "packageExtensionsChecksum"; + } + if (!(0, equals_1.default)(lockfile.patchedDependencies ?? {}, patchedDependencies ?? {})) { + return "patchedDependencies"; + } + if (lockfile.settings?.autoInstallPeers != null && lockfile.settings.autoInstallPeers !== autoInstallPeers) { + return "settings.autoInstallPeers"; + } + if (lockfile.settings?.excludeLinksFromLockfile) { + return "settings.excludeLinksFromLockfile"; + } + return null; + } + function createObjectChecksum(obj) { + const s = JSON.stringify(obj); + return crypto_1.default.createHash("md5").update(s).digest("hex"); + } + exports2.createObjectChecksum = createObjectChecksum; + function cacheExpired(prunedAt, maxAgeInMinutes) { + return (Date.now() - new Date(prunedAt).valueOf()) / (1e3 * 60) > maxAgeInMinutes; + } + async function isExternalLink(storeDir, modules, pkgName) { + const link = await (0, is_inner_link_1.default)(modules, pkgName); + return !link.isInner; + } + function pkgHasDependencies(manifest) { + return Boolean(Object.keys(manifest.dependencies ?? {}).length > 0 || Object.keys(manifest.devDependencies ?? {}).length || Object.keys(manifest.optionalDependencies ?? {}).length); + } + function forgetResolutionsOfPrevWantedDeps(importer, wantedDeps) { + if (!importer.specifiers) + return; + importer.dependencies = importer.dependencies ?? {}; + importer.devDependencies = importer.devDependencies ?? {}; + importer.optionalDependencies = importer.optionalDependencies ?? {}; + for (const { alias, pref } of wantedDeps) { + if (alias && importer.specifiers[alias] !== pref) { + if (!importer.dependencies[alias]?.startsWith("link:")) { + delete importer.dependencies[alias]; } + delete importer.devDependencies[alias]; + delete importer.optionalDependencies[alias]; } - return s0; } - function peg$parseS() { - var s0, s1; - peg$silentFails++; - s0 = []; - if (peg$c88.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c89); - } + } + function forgetResolutionsOfAllPrevWantedDeps(wantedLockfile) { + if (wantedLockfile.importers != null && !(0, isEmpty_1.default)(wantedLockfile.importers)) { + wantedLockfile.importers = (0, map_1.default)(({ dependencies, devDependencies, optionalDependencies, ...rest }) => rest, wantedLockfile.importers); + } + if (wantedLockfile.packages != null && !(0, isEmpty_1.default)(wantedLockfile.packages)) { + wantedLockfile.packages = (0, map_1.default)(({ dependencies, optionalDependencies, ...rest }) => rest, wantedLockfile.packages); + } + } + async function addDependenciesToPackage(manifest, dependencySelectors, opts) { + const rootDir = opts.dir ?? process.cwd(); + const projects = await mutateModules([ + { + allowNew: opts.allowNew, + dependencySelectors, + mutation: "installSome", + peer: opts.peer, + pinnedVersion: opts.pinnedVersion, + rootDir, + targetDependenciesField: opts.targetDependenciesField, + update: opts.update, + updateMatching: opts.updateMatching, + updatePackageManifest: opts.updatePackageManifest } - if (s1 !== peg$FAILED) { - while (s1 !== peg$FAILED) { - s0.push(s1); - if (peg$c88.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c89); - } - } + ], { + ...opts, + lockfileDir: opts.lockfileDir ?? opts.dir, + allProjects: [ + { + buildIndex: 0, + binsDir: opts.bin, + manifest, + rootDir } - } else { - s0 = peg$FAILED; + ] + }); + return projects[0].manifest; + } + exports2.addDependenciesToPackage = addDependenciesToPackage; + var _installInContext = async (projects, ctx, opts) => { + if (opts.lockfileOnly && ctx.existsCurrentLockfile) { + logger_1.logger.warn({ + message: "`node_modules` is present. Lockfile only installation will make it out-of-date", + prefix: ctx.lockfileDir + }); + } + ctx.wantedLockfile.importers = ctx.wantedLockfile.importers || {}; + for (const { id } of projects) { + if (!ctx.wantedLockfile.importers[id]) { + ctx.wantedLockfile.importers[id] = { specifiers: {} }; } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c87); + } + if (opts.pruneLockfileImporters) { + const projectIds = new Set(projects.map(({ id }) => id)); + for (const wantedImporter of Object.keys(ctx.wantedLockfile.importers)) { + if (!projectIds.has(wantedImporter)) { + delete ctx.wantedLockfile.importers[wantedImporter]; } } - return s0; } - function peg$parseEOL_ANY() { - var s0, s1, s2, s3, s4, s5; - s0 = peg$currPos; - s1 = peg$parseEOL(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$currPos; - s4 = peg$parseB(); - if (s4 === peg$FAILED) - s4 = null; - if (s4 !== peg$FAILED) { - s5 = peg$parseEOL(); - if (s5 !== peg$FAILED) { - s4 = [s4, s5]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$currPos; - s4 = peg$parseB(); - if (s4 === peg$FAILED) - s4 = null; - if (s4 !== peg$FAILED) { - s5 = peg$parseEOL(); - if (s5 !== peg$FAILED) { - s4 = [s4, s5]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } else { - peg$currPos = s3; - s3 = peg$FAILED; - } - } - if (s2 !== peg$FAILED) { - s1 = [s1, s2]; - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$FAILED; - } - } else { - peg$currPos = s0; - s0 = peg$FAILED; + await Promise.all(projects.map(async (project) => { + if (project.mutation !== "uninstallSome") + return; + const _removeDeps = async (manifest) => (0, removeDeps_1.removeDeps)(manifest, project.dependencyNames, { prefix: project.rootDir, saveType: project.targetDependenciesField }); + project.manifest = await _removeDeps(project.manifest); + if (project.originalManifest != null) { + project.originalManifest = await _removeDeps(project.originalManifest); } - return s0; + })); + core_loggers_1.stageLogger.debug({ + prefix: ctx.lockfileDir, + stage: "resolution_started" + }); + const update = projects.some((project) => project.update); + const preferredVersions = opts.preferredVersions ?? (!update ? (0, getPreferredVersions_1.getPreferredVersionsFromLockfileAndManifests)(ctx.wantedLockfile.packages, Object.values(ctx.projects).map(({ manifest }) => manifest)) : void 0); + const forceFullResolution = ctx.wantedLockfile.lockfileVersion !== constants_1.LOCKFILE_VERSION || !opts.currentLockfileIsUpToDate || opts.force || opts.needsFullResolution || ctx.lockfileHadConflicts || opts.dedupePeerDependents; + if (opts.fixLockfile && ctx.wantedLockfile.packages != null && !(0, isEmpty_1.default)(ctx.wantedLockfile.packages)) { + ctx.wantedLockfile.packages = (0, map_1.default)(({ dependencies, optionalDependencies, resolution }) => ({ + // These fields are needed to avoid losing information of the locked dependencies if these fields are not broken + // If these fields are broken, they will also be regenerated + dependencies, + optionalDependencies, + resolution + }), ctx.wantedLockfile.packages); } - function peg$parseEOL() { - var s0; - if (input.substr(peg$currPos, 2) === peg$c90) { - s0 = peg$c90; - peg$currPos += 2; + if (opts.dedupe) { + forgetResolutionsOfAllPrevWantedDeps(ctx.wantedLockfile); + } + let { dependenciesGraph, dependenciesByProjectId, finishLockfileUpdates, linkedDependenciesByProjectId, newLockfile, outdatedDependencies, peerDependencyIssuesByProjects, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish } = await (0, resolve_dependencies_1.resolveDependencies)(projects, { + allowBuild: createAllowBuildFunction(opts), + allowedDeprecatedVersions: opts.allowedDeprecatedVersions, + allowNonAppliedPatches: opts.allowNonAppliedPatches, + autoInstallPeers: opts.autoInstallPeers, + currentLockfile: ctx.currentLockfile, + defaultUpdateDepth: opts.depth, + dedupePeerDependents: opts.dedupePeerDependents, + dryRun: opts.lockfileOnly, + engineStrict: opts.engineStrict, + force: opts.force, + forceFullResolution, + ignoreScripts: opts.ignoreScripts, + hooks: { + readPackage: opts.readPackageHook + }, + linkWorkspacePackagesDepth: opts.linkWorkspacePackagesDepth ?? (opts.saveWorkspaceProtocol ? 0 : -1), + lockfileDir: opts.lockfileDir, + nodeVersion: opts.nodeVersion, + pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "", + preferWorkspacePackages: opts.preferWorkspacePackages, + preferredVersions, + preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, + registries: ctx.registries, + resolutionMode: opts.resolutionMode, + saveWorkspaceProtocol: opts.saveWorkspaceProtocol, + storeController: opts.storeController, + tag: opts.tag, + virtualStoreDir: ctx.virtualStoreDir, + wantedLockfile: ctx.wantedLockfile, + workspacePackages: opts.workspacePackages, + patchedDependencies: opts.patchedDependencies, + lockfileIncludeTarballUrl: opts.lockfileIncludeTarballUrl, + resolvePeersFromWorkspaceRoot: opts.resolvePeersFromWorkspaceRoot, + useLockfileV6: opts.useLockfileV6 + }); + if (!opts.include.optionalDependencies || !opts.include.devDependencies || !opts.include.dependencies) { + linkedDependenciesByProjectId = (0, map_1.default)((linkedDeps) => linkedDeps.filter((linkedDep) => !(linkedDep.dev && !opts.include.devDependencies || linkedDep.optional && !opts.include.optionalDependencies || !linkedDep.dev && !linkedDep.optional && !opts.include.dependencies)), linkedDependenciesByProjectId ?? {}); + for (const { id, manifest } of projects) { + dependenciesByProjectId[id] = (0, pickBy_1.default)((depPath) => { + const dep = dependenciesGraph[depPath]; + if (!dep) + return false; + const isDev = Boolean(manifest.devDependencies?.[dep.name]); + const isOptional = Boolean(manifest.optionalDependencies?.[dep.name]); + return !(isDev && !opts.include.devDependencies || isOptional && !opts.include.optionalDependencies || !isDev && !isOptional && !opts.include.dependencies); + }, dependenciesByProjectId[id]); + } + } + core_loggers_1.stageLogger.debug({ + prefix: ctx.lockfileDir, + stage: "resolution_done" + }); + newLockfile = opts.hooks?.afterAllResolved != null ? await (0, pipeWith_1.default)(async (f, res) => f(await res), opts.hooks.afterAllResolved)(newLockfile) : newLockfile; + if (opts.updateLockfileMinorVersion) { + if (opts.useLockfileV6) { + newLockfile.lockfileVersion = constants_1.LOCKFILE_VERSION_V6; } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c91); + newLockfile.lockfileVersion = constants_1.LOCKFILE_VERSION; + } + } + const depsStateCache = {}; + const lockfileOpts = { + forceSharedFormat: opts.forceSharedLockfile, + useInlineSpecifiersFormat: opts.useInlineSpecifiersLockfileFormat || opts.useLockfileV6, + useGitBranchLockfile: opts.useGitBranchLockfile, + mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles + }; + if (!opts.lockfileOnly && opts.enableModulesDir) { + const result2 = await (0, link_1.linkPackages)(projects, dependenciesGraph, { + currentLockfile: ctx.currentLockfile, + dedupeDirectDeps: opts.dedupeDirectDeps, + dependenciesByProjectId, + depsStateCache, + extraNodePaths: ctx.extraNodePaths, + force: opts.force, + hoistedDependencies: ctx.hoistedDependencies, + hoistedModulesDir: ctx.hoistedModulesDir, + hoistPattern: ctx.hoistPattern, + ignoreScripts: opts.ignoreScripts, + include: opts.include, + linkedDependenciesByProjectId, + lockfileDir: opts.lockfileDir, + makePartialCurrentLockfile: opts.makePartialCurrentLockfile, + outdatedDependencies, + pruneStore: opts.pruneStore, + pruneVirtualStore: opts.pruneVirtualStore, + publicHoistPattern: ctx.publicHoistPattern, + registries: ctx.registries, + rootModulesDir: ctx.rootModulesDir, + sideEffectsCacheRead: opts.sideEffectsCacheRead, + symlink: opts.symlink, + skipped: ctx.skipped, + storeController: opts.storeController, + virtualStoreDir: ctx.virtualStoreDir, + wantedLockfile: newLockfile, + wantedToBeSkippedPackageIds + }); + await finishLockfileUpdates(); + if (opts.enablePnp) { + const importerNames = Object.fromEntries(projects.map(({ manifest, id }) => [id, manifest.name ?? id])); + await (0, lockfile_to_pnp_1.writePnpFile)(result2.currentLockfile, { + importerNames, + lockfileDir: ctx.lockfileDir, + virtualStoreDir: ctx.virtualStoreDir, + registries: ctx.registries + }); + } + ctx.pendingBuilds = ctx.pendingBuilds.filter((relDepPath) => !result2.removedDepPaths.has(relDepPath)); + if (result2.newDepPaths?.length) { + if (opts.ignoreScripts) { + ctx.pendingBuilds = ctx.pendingBuilds.concat(await (0, p_filter_1.default)(result2.newDepPaths, (depPath) => { + const requiresBuild = dependenciesGraph[depPath].requiresBuild; + if (typeof requiresBuild === "function") + return requiresBuild(); + return requiresBuild; + })); + } + if (!opts.ignoreScripts || Object.keys(opts.patchedDependencies ?? {}).length > 0) { + const depPaths = Object.keys(dependenciesGraph); + const rootNodes = depPaths.filter((depPath) => dependenciesGraph[depPath].depth === 0); + let extraEnv = opts.scriptsOpts.extraEnv; + if (opts.enablePnp) { + extraEnv = { + ...extraEnv, + ...(0, lifecycle_1.makeNodeRequireOption)(path_1.default.join(opts.lockfileDir, ".pnp.cjs")) + }; + } + await (0, build_modules_1.buildModules)(dependenciesGraph, rootNodes, { + childConcurrency: opts.childConcurrency, + depsStateCache, + depsToBuild: new Set(result2.newDepPaths), + extraBinPaths: ctx.extraBinPaths, + extraNodePaths: ctx.extraNodePaths, + extraEnv, + ignoreScripts: opts.ignoreScripts || opts.ignoreDepScripts, + lockfileDir: ctx.lockfileDir, + optional: opts.include.optionalDependencies, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + rawConfig: opts.rawConfig, + rootModulesDir: ctx.virtualStoreDir, + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + sideEffectsCacheWrite: opts.sideEffectsCacheWrite, + storeController: opts.storeController, + unsafePerm: opts.unsafePerm, + userAgent: opts.userAgent + }); } } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 10) { - s0 = peg$c92; - peg$currPos++; + const binWarn = (prefix, message2) => { + logger_1.logger.info({ message: message2, prefix }); + }; + if (result2.newDepPaths?.length) { + const newPkgs = (0, props_1.default)(result2.newDepPaths, dependenciesGraph); + await linkAllBins(newPkgs, dependenciesGraph, { + extraNodePaths: ctx.extraNodePaths, + optional: opts.include.optionalDependencies, + warn: binWarn.bind(null, opts.lockfileDir) + }); + } + await Promise.all(projects.map(async (project, index) => { + let linkedPackages; + if (ctx.publicHoistPattern?.length && path_1.default.relative(project.rootDir, opts.lockfileDir) === "") { + const nodeExecPathByAlias = Object.entries(project.manifest.dependenciesMeta ?? {}).reduce((prev, [alias, { node }]) => { + if (node) { + prev[alias] = node; + } + return prev; + }, {}); + linkedPackages = await (0, link_bins_1.linkBins)(project.modulesDir, project.binsDir, { + allowExoticManifests: true, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables, + projectManifest: project.manifest, + nodeExecPathByAlias, + extraNodePaths: ctx.extraNodePaths, + warn: binWarn.bind(null, project.rootDir) + }); } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c93); - } + const directPkgs = [ + ...(0, props_1.default)(Object.values(dependenciesByProjectId[project.id]).filter((depPath) => !ctx.skipped.has(depPath)), dependenciesGraph), + ...linkedDependenciesByProjectId[project.id].map(({ pkgId }) => ({ + dir: path_1.default.join(project.rootDir, pkgId.substring(5)), + fetchingBundledManifest: void 0 + })) + ]; + linkedPackages = await (0, link_bins_1.linkBinsOfPackages)((await Promise.all(directPkgs.map(async (dep) => { + const manifest = await dep.fetchingBundledManifest?.() ?? await (0, read_project_manifest_1.safeReadProjectManifestOnly)(dep.dir); + let nodeExecPath; + if (manifest?.name) { + nodeExecPath = project.manifest.dependenciesMeta?.[manifest.name]?.node; + } + return { + location: dep.dir, + manifest, + nodeExecPath + }; + }))).filter(({ manifest }) => manifest != null), project.binsDir, { + extraNodePaths: ctx.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 13) { - s0 = peg$c94; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { - peg$fail(peg$c95); + const projectToInstall = projects[index]; + if (opts.global && projectToInstall.mutation.includes("install")) { + projectToInstall.wantedDependencies.forEach((pkg) => { + if (!linkedPackages?.includes(pkg.alias)) { + logger_1.logger.warn({ message: `${pkg.alias ?? pkg.pref} has no binaries`, prefix: opts.lockfileDir }); + } + }); + } + })); + const projectsWithTargetDirs = (0, lockfile_utils_1.extendProjectsWithTargetDirs)(projects, newLockfile, ctx); + await Promise.all([ + opts.useLockfile && opts.saveLockfile ? (0, lockfile_file_1.writeLockfiles)({ + currentLockfile: result2.currentLockfile, + currentLockfileDir: ctx.virtualStoreDir, + wantedLockfile: newLockfile, + wantedLockfileDir: ctx.lockfileDir, + ...lockfileOpts + }) : (0, lockfile_file_1.writeCurrentLockfile)(ctx.virtualStoreDir, result2.currentLockfile, lockfileOpts), + (async () => { + if (result2.currentLockfile.packages === void 0 && result2.removedDepPaths.size === 0) { + return Promise.resolve(); + } + const injectedDeps = {}; + for (const project of projectsWithTargetDirs) { + if (project.targetDirs.length > 0) { + injectedDeps[project.id] = project.targetDirs.map((targetDir) => path_1.default.relative(opts.lockfileDir, targetDir)); } } + return (0, modules_yaml_1.writeModulesManifest)(ctx.rootModulesDir, { + ...ctx.modulesFile, + hoistedDependencies: result2.newHoistedDependencies, + hoistPattern: ctx.hoistPattern, + included: ctx.include, + injectedDeps, + layoutVersion: constants_1.LAYOUT_VERSION, + nodeLinker: opts.nodeLinker, + packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, + pendingBuilds: ctx.pendingBuilds, + publicHoistPattern: ctx.publicHoistPattern, + prunedAt: opts.pruneVirtualStore || ctx.modulesFile == null ? (/* @__PURE__ */ new Date()).toUTCString() : ctx.modulesFile.prunedAt, + registries: ctx.registries, + skipped: Array.from(ctx.skipped), + storeDir: ctx.storeDir, + virtualStoreDir: ctx.virtualStoreDir + }); + })() + ]); + if (!opts.ignoreScripts) { + if (opts.enablePnp) { + opts.scriptsOpts.extraEnv = { + ...opts.scriptsOpts.extraEnv, + ...(0, lifecycle_1.makeNodeRequireOption)(path_1.default.join(opts.lockfileDir, ".pnp.cjs")) + }; } + const projectsToBeBuilt = projectsWithTargetDirs.filter(({ mutation }) => mutation === "install"); + await (0, lifecycle_1.runLifecycleHooksConcurrently)(["preinstall", "install", "postinstall", "prepare"], projectsToBeBuilt, opts.childConcurrency, opts.scriptsOpts); } - return s0; - } - const INDENT_STEP = 2; - let indentLevel = 0; - peg$result = peg$startRuleFunction(); - if (peg$result !== peg$FAILED && peg$currPos === input.length) { - return peg$result; } else { - if (peg$result !== peg$FAILED && peg$currPos < input.length) - peg$fail(peg$endExpectation()); - throw peg$buildStructuredError(peg$maxFailExpected, peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)); + await finishLockfileUpdates(); + if (opts.useLockfile) { + await (0, lockfile_file_1.writeWantedLockfile)(ctx.lockfileDir, newLockfile, lockfileOpts); + } + if (opts.nodeLinker !== "hoisted") { + core_loggers_1.stageLogger.debug({ + prefix: opts.lockfileDir, + stage: "importing_done" + }); + } + } + await waitTillAllFetchingsFinish(); + core_loggers_1.summaryLogger.debug({ prefix: opts.lockfileDir }); + await opts.storeController.close(); + (0, reportPeerDependencyIssues_1.reportPeerDependencyIssues)(peerDependencyIssuesByProjects, { + lockfileDir: opts.lockfileDir, + strictPeerDependencies: opts.strictPeerDependencies + }); + return { + newLockfile, + projects: projects.map(({ id, manifest, rootDir }) => ({ + manifest, + peerDependencyIssues: peerDependencyIssuesByProjects[id], + rootDir + })) + }; + }; + function createAllowBuildFunction(opts) { + if (opts.neverBuiltDependencies != null && opts.neverBuiltDependencies.length > 0) { + const neverBuiltDependencies = new Set(opts.neverBuiltDependencies); + return (pkgName) => !neverBuiltDependencies.has(pkgName); + } else if (opts.onlyBuiltDependencies != null) { + const onlyBuiltDependencies = new Set(opts.onlyBuiltDependencies); + return (pkgName) => onlyBuiltDependencies.has(pkgName); } + return void 0; } - module2.exports = { - SyntaxError: peg$SyntaxError, - parse: peg$parse + var installInContext = async (projects, ctx, opts) => { + try { + if (opts.nodeLinker === "hoisted" && !opts.lockfileOnly) { + const result2 = await _installInContext(projects, ctx, { + ...opts, + lockfileOnly: true + }); + await (0, headless_1.headlessInstall)({ + ...ctx, + ...opts, + currentEngine: { + nodeVersion: opts.nodeVersion, + pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "" + }, + currentHoistedLocations: ctx.modulesFile?.hoistedLocations, + selectedProjectDirs: projects.map((project) => project.rootDir), + allProjects: ctx.projects, + prunedAt: ctx.modulesFile?.prunedAt, + wantedLockfile: result2.newLockfile, + useLockfile: opts.useLockfile && ctx.wantedLockfileIsModified + }); + return result2; + } + return await _installInContext(projects, ctx, opts); + } catch (error) { + if (!BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code) || !ctx.existsWantedLockfile && !ctx.existsCurrentLockfile) + throw error; + opts.needsFullResolution = true; + for (const project of projects) { + project.update = true; + } + logger_1.logger.warn({ + error, + message: error.message, + prefix: ctx.lockfileDir + }); + logger_1.logger.error(new error_1.PnpmError(error.code, "The lockfile is broken! A full installation will be performed in an attempt to fix it.")); + return _installInContext(projects, ctx, opts); + } }; + var limitLinking = (0, p_limit_12.default)(16); + async function linkAllBins(depNodes, depGraph, opts) { + return (0, unnest_1.default)(await Promise.all(depNodes.map(async (depNode) => limitLinking(async () => (0, build_modules_1.linkBinsOfDependencies)(depNode, depGraph, opts))))); + } } }); -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/syml.js -var require_syml2 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/syml.js"(exports2) { +// ../pkg-manager/core/lib/link/options.js +var require_options3 = __commonJS({ + "../pkg-manager/core/lib/link/options.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseSyml = exports2.stringifySyml = exports2.PreserveOrdering = void 0; - var js_yaml_1 = require_js_yaml3(); - var syml_1 = require_syml(); - var simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/; - var specialObjectKeys = [`__metadata`, `version`, `resolution`, `dependencies`, `peerDependencies`, `dependenciesMeta`, `peerDependenciesMeta`, `binaries`]; - var PreserveOrdering = class { - constructor(data) { - this.data = data; - } + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - exports2.PreserveOrdering = PreserveOrdering; - function stringifyString(value) { - if (value.match(simpleStringPattern)) { - return value; - } else { - return JSON.stringify(value); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extendOptions = void 0; + var path_1 = __importDefault4(require("path")); + var normalize_registries_1 = require_lib89(); + async function extendOptions(opts) { + if (opts) { + for (const key in opts) { + if (opts[key] === void 0) { + delete opts[key]; + } + } } + const defaultOpts = await defaults(opts); + const extendedOpts = { ...defaultOpts, ...opts, storeDir: defaultOpts.storeDir }; + extendedOpts.registries = (0, normalize_registries_1.normalizeRegistries)(extendedOpts.registries); + return extendedOpts; } - function isRemovableField(value) { - if (typeof value === `undefined`) - return true; - if (typeof value === `object` && value !== null) - return Object.keys(value).every((key) => isRemovableField(value[key])); - return false; + exports2.extendOptions = extendOptions; + async function defaults(opts) { + const dir = opts.dir ?? process.cwd(); + return { + binsDir: path_1.default.join(dir, "node_modules", ".bin"), + dir, + force: false, + forceSharedLockfile: false, + hoistPattern: void 0, + lockfileDir: opts.lockfileDir ?? dir, + nodeLinker: "isolated", + registries: normalize_registries_1.DEFAULT_REGISTRIES, + storeController: opts.storeController, + storeDir: opts.storeDir, + useLockfile: true + }; } - function stringifyValue(value, indentLevel, newLineIfObject) { - if (value === null) - return `null -`; - if (typeof value === `number` || typeof value === `boolean`) - return `${value.toString()} -`; - if (typeof value === `string`) - return `${stringifyString(value)} -`; - if (Array.isArray(value)) { - if (value.length === 0) - return `[] -`; - const indent = ` `.repeat(indentLevel); - const serialized = value.map((sub) => { - return `${indent}- ${stringifyValue(sub, indentLevel + 1, false)}`; - }).join(``); - return ` -${serialized}`; + } +}); + +// ../pkg-manager/core/lib/link/index.js +var require_link4 = __commonJS({ + "../pkg-manager/core/lib/link/index.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.link = void 0; + var path_1 = __importDefault4(require("path")); + var core_loggers_1 = require_lib9(); + var error_1 = require_lib8(); + var get_context_1 = require_lib108(); + var link_bins_1 = require_lib54(); + var lockfile_file_1 = require_lib87(); + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var prune_lockfile_1 = require_lib133(); + var read_project_manifest_1 = require_lib16(); + var symlink_dependency_1 = require_lib121(); + var types_1 = require_lib25(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var options_1 = require_options3(); + async function link(linkFromPkgs, destModules, maybeOpts) { + const reporter = maybeOpts?.reporter; + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.on("data", reporter); } - if (typeof value === `object` && value) { - let data; - let sort; - if (value instanceof PreserveOrdering) { - data = value.data; - sort = false; + const opts = await (0, options_1.extendOptions)(maybeOpts); + const ctx = await (0, get_context_1.getContextForSingleImporter)(opts.manifest, { + ...opts, + extraBinPaths: [] + // ctx.extraBinPaths is not needed, so this is fine + }, true); + const importerId = (0, lockfile_file_1.getLockfileImporterId)(ctx.lockfileDir, opts.dir); + const linkedPkgs = []; + const specsToUpsert = []; + for (const linkFrom of linkFromPkgs) { + let linkFromPath; + let linkFromAlias; + if (typeof linkFrom === "string") { + linkFromPath = linkFrom; } else { - data = value; - sort = true; + linkFromPath = linkFrom.path; + linkFromAlias = linkFrom.alias; } - const indent = ` `.repeat(indentLevel); - const keys = Object.keys(data); - if (sort) { - keys.sort((a, b) => { - const aIndex = specialObjectKeys.indexOf(a); - const bIndex = specialObjectKeys.indexOf(b); - if (aIndex === -1 && bIndex === -1) - return a < b ? -1 : a > b ? 1 : 0; - if (aIndex !== -1 && bIndex === -1) - return -1; - if (aIndex === -1 && bIndex !== -1) - return 1; - return aIndex - bIndex; - }); + const { manifest } = await (0, read_project_manifest_1.readProjectManifest)(linkFromPath); + if (typeof linkFrom === "string" && manifest.name === void 0) { + throw new error_1.PnpmError("INVALID_PACKAGE_NAME", `Package in ${linkFromPath} must have a name field to be linked`); } - const fields = keys.filter((key) => { - return !isRemovableField(data[key]); - }).map((key, index) => { - const value2 = data[key]; - const stringifiedKey = stringifyString(key); - const stringifiedValue = stringifyValue(value2, indentLevel + 1, true); - const recordIndentation = index > 0 || newLineIfObject ? indent : ``; - if (stringifiedValue.startsWith(` -`)) { - return `${recordIndentation}${stringifiedKey}:${stringifiedValue}`; - } else { - return `${recordIndentation}${stringifiedKey}: ${stringifiedValue}`; - } - }).join(indentLevel === 0 ? ` -` : ``) || ` -`; - if (!newLineIfObject) { - return `${fields}`; - } else { - return ` -${fields}`; + const targetDependencyType = (0, manifest_utils_1.getDependencyTypeFromManifest)(opts.manifest, manifest.name) ?? opts.targetDependenciesField; + specsToUpsert.push({ + alias: manifest.name, + pref: (0, manifest_utils_1.getPref)(manifest.name, manifest.name, manifest.version, { + pinnedVersion: opts.pinnedVersion + }), + saveType: targetDependencyType ?? (ctx.manifest && (0, manifest_utils_1.guessDependencyType)(manifest.name, ctx.manifest)) + }); + const packagePath = (0, normalize_path_1.default)(path_1.default.relative(opts.dir, linkFromPath)); + const addLinkOpts = { + linkedPkgName: linkFromAlias ?? manifest.name, + manifest: ctx.manifest, + packagePath + }; + addLinkToLockfile(ctx.currentLockfile.importers[importerId], addLinkOpts); + addLinkToLockfile(ctx.wantedLockfile.importers[importerId], addLinkOpts); + linkedPkgs.push({ + alias: linkFromAlias ?? manifest.name, + manifest, + path: linkFromPath + }); + } + const updatedCurrentLockfile = (0, prune_lockfile_1.pruneSharedLockfile)(ctx.currentLockfile); + const warn = (message2) => { + logger_1.logger.warn({ message: message2, prefix: opts.dir }); + }; + const updatedWantedLockfile = (0, prune_lockfile_1.pruneSharedLockfile)(ctx.wantedLockfile, { warn }); + for (const { alias, manifest, path: path2 } of linkedPkgs) { + const stu = specsToUpsert.find((s) => s.alias === manifest.name); + const targetDependencyType = (0, manifest_utils_1.getDependencyTypeFromManifest)(opts.manifest, manifest.name) ?? opts.targetDependenciesField; + await (0, symlink_dependency_1.symlinkDirectRootDependency)(path2, destModules, alias, { + fromDependenciesField: stu?.saveType ?? targetDependencyType, + linkedPackage: manifest, + prefix: opts.dir + }); + } + const linkToBin = maybeOpts?.linkToBin ?? path_1.default.join(destModules, ".bin"); + await (0, link_bins_1.linkBinsOfPackages)(linkedPkgs.map((p) => ({ manifest: p.manifest, location: p.path })), linkToBin, { + extraNodePaths: ctx.extraNodePaths, + preferSymlinkedExecutables: opts.preferSymlinkedExecutables + }); + let newPkg; + if (opts.targetDependenciesField) { + newPkg = await (0, manifest_utils_1.updateProjectManifestObject)(opts.dir, opts.manifest, specsToUpsert); + for (const { alias } of specsToUpsert) { + updatedWantedLockfile.importers[importerId].specifiers[alias] = (0, manifest_utils_1.getSpecFromPackageManifest)(newPkg, alias); } + } else { + newPkg = opts.manifest; } - throw new Error(`Unsupported value type (${value})`); - } - function stringifySyml(value) { - try { - const stringified = stringifyValue(value, 0, false); - return stringified !== ` -` ? stringified : ``; - } catch (error) { - if (error.location) - error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); - throw error; + const lockfileOpts = { forceSharedFormat: opts.forceSharedLockfile, useGitBranchLockfile: opts.useGitBranchLockfile, mergeGitBranchLockfiles: opts.mergeGitBranchLockfiles }; + if (opts.useLockfile) { + await (0, lockfile_file_1.writeLockfiles)({ + currentLockfile: updatedCurrentLockfile, + currentLockfileDir: ctx.virtualStoreDir, + wantedLockfile: updatedWantedLockfile, + wantedLockfileDir: ctx.lockfileDir, + ...lockfileOpts + }); + } else { + await (0, lockfile_file_1.writeCurrentLockfile)(ctx.virtualStoreDir, updatedCurrentLockfile, lockfileOpts); + } + core_loggers_1.summaryLogger.debug({ prefix: opts.dir }); + if (reporter != null && typeof reporter === "function") { + logger_1.streamParser.removeListener("data", reporter); } + return newPkg; } - exports2.stringifySyml = stringifySyml; - stringifySyml.PreserveOrdering = PreserveOrdering; - function parseViaPeg(source) { - if (!source.endsWith(` -`)) - source += ` -`; - return syml_1.parse(source); + exports2.link = link; + function addLinkToLockfile(projectSnapshot, opts) { + const id = `link:${opts.packagePath}`; + let addedTo; + for (const depType of types_1.DEPENDENCIES_FIELDS) { + if (!addedTo && opts.manifest?.[depType]?.[opts.linkedPkgName]) { + addedTo = depType; + projectSnapshot[depType] = projectSnapshot[depType] ?? {}; + projectSnapshot[depType][opts.linkedPkgName] = id; + } else if (projectSnapshot[depType] != null) { + delete projectSnapshot[depType][opts.linkedPkgName]; + } + } + if (opts.manifest == null) + return; + const availableSpec = (0, manifest_utils_1.getSpecFromPackageManifest)(opts.manifest, opts.linkedPkgName); + if (availableSpec) { + projectSnapshot.specifiers[opts.linkedPkgName] = availableSpec; + } else { + delete projectSnapshot.specifiers[opts.linkedPkgName]; + } } - var LEGACY_REGEXP = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i; - function parseViaJsYaml(source) { - if (LEGACY_REGEXP.test(source)) - return parseViaPeg(source); - const value = js_yaml_1.safeLoad(source, { - schema: js_yaml_1.FAILSAFE_SCHEMA + } +}); + +// ../pkg-manager/core/lib/getPeerDependencyIssues.js +var require_getPeerDependencyIssues = __commonJS({ + "../pkg-manager/core/lib/getPeerDependencyIssues.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPeerDependencyIssues = void 0; + var resolve_dependencies_1 = require_lib134(); + var get_context_1 = require_lib108(); + var hooks_read_package_hook_1 = require_lib139(); + var getPreferredVersions_1 = require_getPreferredVersions(); + var normalize_registries_1 = require_lib89(); + async function getPeerDependencyIssues(projects, opts) { + const lockfileDir = opts.lockfileDir ?? process.cwd(); + const ctx = await (0, get_context_1.getContext)({ + force: false, + forceSharedLockfile: false, + extraBinPaths: [], + lockfileDir, + nodeLinker: opts.nodeLinker ?? "isolated", + registries: normalize_registries_1.DEFAULT_REGISTRIES, + useLockfile: true, + allProjects: projects, + ...opts }); - if (value === void 0 || value === null) - return {}; - if (typeof value !== `object`) - throw new Error(`Expected an indexed object, got a ${typeof value} instead. Does your file follow Yaml's rules?`); - if (Array.isArray(value)) - throw new Error(`Expected an indexed object, got an array instead. Does your file follow Yaml's rules?`); - return value; - } - function parseSyml(source) { - return parseViaJsYaml(source); + const projectsToResolve = Object.values(ctx.projects).map((project) => ({ + ...project, + updatePackageManifest: false, + wantedDependencies: (0, resolve_dependencies_1.getWantedDependencies)(project.manifest) + })); + const preferredVersions = (0, getPreferredVersions_1.getPreferredVersionsFromLockfileAndManifests)(ctx.wantedLockfile.packages, Object.values(ctx.projects).map(({ manifest }) => manifest)); + const { peerDependencyIssuesByProjects, waitTillAllFetchingsFinish } = await (0, resolve_dependencies_1.resolveDependencies)(projectsToResolve, { + currentLockfile: ctx.currentLockfile, + allowedDeprecatedVersions: {}, + allowNonAppliedPatches: false, + defaultUpdateDepth: -1, + dryRun: true, + engineStrict: false, + force: false, + forceFullResolution: true, + hooks: { + readPackage: (0, hooks_read_package_hook_1.createReadPackageHook)({ + ignoreCompatibilityDb: opts.ignoreCompatibilityDb, + lockfileDir, + overrides: opts.overrides, + packageExtensions: opts.packageExtensions, + readPackageHook: opts.hooks?.readPackage + }) + }, + linkWorkspacePackagesDepth: opts.linkWorkspacePackagesDepth ?? (opts.saveWorkspaceProtocol ? 0 : -1), + lockfileDir, + nodeVersion: opts.nodeVersion ?? process.version, + pnpmVersion: "", + preferWorkspacePackages: opts.preferWorkspacePackages, + preferredVersions, + preserveWorkspaceProtocol: false, + registries: ctx.registries, + saveWorkspaceProtocol: false, + storeController: opts.storeController, + tag: "latest", + virtualStoreDir: ctx.virtualStoreDir, + wantedLockfile: ctx.wantedLockfile, + workspacePackages: opts.workspacePackages ?? {} + }); + await waitTillAllFetchingsFinish(); + return peerDependencyIssuesByProjects; } - exports2.parseSyml = parseSyml; + exports2.getPeerDependencyIssues = getPeerDependencyIssues; } }); -// ../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/index.js -var require_lib77 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+parsers@2.3.0/node_modules/@yarnpkg/parsers/lib/index.js"(exports2) { +// ../pkg-manager/core/lib/api.js +var require_api3 = __commonJS({ + "../pkg-manager/core/lib/api.js"(exports2) { "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.stringifySyml = exports2.parseSyml = exports2.stringifyResolution = exports2.parseResolution = exports2.parseShell = void 0; - var shell_1 = require_shell2(); - Object.defineProperty(exports2, "parseShell", { enumerable: true, get: function() { - return shell_1.parseShell; - } }); - var resolution_1 = require_resolution2(); - Object.defineProperty(exports2, "parseResolution", { enumerable: true, get: function() { - return resolution_1.parseResolution; - } }); - Object.defineProperty(exports2, "stringifyResolution", { enumerable: true, get: function() { - return resolution_1.stringifyResolution; - } }); - var syml_1 = require_syml2(); - Object.defineProperty(exports2, "parseSyml", { enumerable: true, get: function() { - return syml_1.parseSyml; - } }); - Object.defineProperty(exports2, "stringifySyml", { enumerable: true, get: function() { - return syml_1.stringifySyml; + exports2.PeerDependencyIssuesError = void 0; + __exportStar4(require_install(), exports2); + var reportPeerDependencyIssues_1 = require_reportPeerDependencyIssues2(); + Object.defineProperty(exports2, "PeerDependencyIssuesError", { enumerable: true, get: function() { + return reportPeerDependencyIssues_1.PeerDependencyIssuesError; } }); + __exportStar4(require_link4(), exports2); + __exportStar4(require_getPeerDependencyIssues(), exports2); } }); -// ../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/errors.js -var require_errors5 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/errors.js"(exports2) { +// ../pkg-manager/core/lib/install/hooks.js +var require_hooks = __commonJS({ + "../pkg-manager/core/lib/install/hooks.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ShellError = void 0; - var ShellError = class extends Error { - constructor(message2) { - super(message2); - this.name = `ShellError`; + } +}); + +// ../pkg-manager/core/lib/index.js +var require_lib140 = __commonJS({ + "../pkg-manager/core/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); }; - exports2.ShellError = ShellError; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UnexpectedVirtualStoreDirError = exports2.UnexpectedStoreError = void 0; + __exportStar4(require_api3(), exports2); + __exportStar4(require_hooks(), exports2); + var get_context_1 = require_lib108(); + Object.defineProperty(exports2, "UnexpectedStoreError", { enumerable: true, get: function() { + return get_context_1.UnexpectedStoreError; + } }); + Object.defineProperty(exports2, "UnexpectedVirtualStoreDirError", { enumerable: true, get: function() { + return get_context_1.UnexpectedVirtualStoreDirError; + } }); } }); -// ../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/globUtils.js -var require_globUtils = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/globUtils.js"(exports2) { +// ../pkg-manager/plugin-commands-installation/lib/getOptionsFromRootManifest.js +var require_getOptionsFromRootManifest = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/getOptionsFromRootManifest.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isBraceExpansion = exports2.match = exports2.isGlobPattern = exports2.fastGlobOptions = exports2.micromatchOptions = void 0; - var tslib_1 = require_tslib(); - var fslib_1 = require_lib76(); - var fast_glob_1 = tslib_1.__importDefault(require_out4()); - var fs_1 = tslib_1.__importDefault(require("fs")); - var micromatch_1 = tslib_1.__importDefault(require_micromatch()); - exports2.micromatchOptions = { - strictBrackets: true - }; - exports2.fastGlobOptions = { - onlyDirectories: false, - onlyFiles: false + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - function isGlobPattern(pattern) { - if (!micromatch_1.default.scan(pattern, exports2.micromatchOptions).isGlob) - return false; - try { - micromatch_1.default.parse(pattern, exports2.micromatchOptions); - } catch (_a) { - return false; - } - return true; - } - exports2.isGlobPattern = isGlobPattern; - function match(pattern, { cwd, baseFs }) { - return fast_glob_1.default(pattern, { - ...exports2.fastGlobOptions, - cwd: fslib_1.npath.fromPortablePath(cwd), - fs: fslib_1.extendFs(fs_1.default, new fslib_1.PosixFS(baseFs)) - }); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getOptionsFromRootManifest = void 0; + var error_1 = require_lib8(); + var map_1 = __importDefault4(require_map4()); + function getOptionsFromRootManifest(manifest) { + const overrides = (0, map_1.default)(createVersionReferencesReplacer(manifest), manifest.pnpm?.overrides ?? manifest.resolutions ?? {}); + const neverBuiltDependencies = manifest.pnpm?.neverBuiltDependencies; + const onlyBuiltDependencies = manifest.pnpm?.onlyBuiltDependencies; + const packageExtensions = manifest.pnpm?.packageExtensions; + const peerDependencyRules = manifest.pnpm?.peerDependencyRules; + const allowedDeprecatedVersions = manifest.pnpm?.allowedDeprecatedVersions; + const allowNonAppliedPatches = manifest.pnpm?.allowNonAppliedPatches; + const patchedDependencies = manifest.pnpm?.patchedDependencies; + const settings = { + allowedDeprecatedVersions, + allowNonAppliedPatches, + overrides, + neverBuiltDependencies, + packageExtensions, + peerDependencyRules, + patchedDependencies + }; + if (onlyBuiltDependencies) { + settings["onlyBuiltDependencies"] = onlyBuiltDependencies; + } + return settings; } - exports2.match = match; - function isBraceExpansion(pattern) { - return micromatch_1.default.scan(pattern, exports2.micromatchOptions).isBrace; + exports2.getOptionsFromRootManifest = getOptionsFromRootManifest; + function createVersionReferencesReplacer(manifest) { + const allDeps = { + ...manifest.devDependencies, + ...manifest.dependencies, + ...manifest.optionalDependencies + }; + return replaceVersionReferences.bind(null, allDeps); + } + function replaceVersionReferences(dep, spec) { + if (!spec.startsWith("$")) + return spec; + const dependencyName = spec.slice(1); + const newSpec = dep[dependencyName]; + if (newSpec) + return newSpec; + throw new error_1.PnpmError("CANNOT_RESOLVE_OVERRIDE_VERSION", `Cannot resolve version ${spec} in overrides. The direct dependencies don't have dependency "${dependencyName}".`); } - exports2.isBraceExpansion = isBraceExpansion; } }); -// ../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/pipe.js -var require_pipe4 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/pipe.js"(exports2) { +// ../pkg-manager/plugin-commands-installation/lib/getPinnedVersion.js +var require_getPinnedVersion = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/getPinnedVersion.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.start = exports2.Handle = exports2.ProtectedStream = exports2.makeBuiltin = exports2.makeProcess = exports2.Pipe = void 0; - var tslib_1 = require_tslib(); - var cross_spawn_1 = tslib_1.__importDefault(require_cross_spawn()); - var stream_1 = require("stream"); - var Pipe; - (function(Pipe2) { - Pipe2[Pipe2["STDIN"] = 0] = "STDIN"; - Pipe2[Pipe2["STDOUT"] = 1] = "STDOUT"; - Pipe2[Pipe2["STDERR"] = 2] = "STDERR"; - })(Pipe = exports2.Pipe || (exports2.Pipe = {})); - function sigintHandler() { - } - var sigintRefCount = 0; - function makeProcess(name, args2, opts, spawnOpts) { - return (stdio) => { - const stdin = stdio[0] instanceof stream_1.Transform ? `pipe` : stdio[0]; - const stdout = stdio[1] instanceof stream_1.Transform ? `pipe` : stdio[1]; - const stderr = stdio[2] instanceof stream_1.Transform ? `pipe` : stdio[2]; - const child = cross_spawn_1.default(name, args2, { ...spawnOpts, stdio: [ - stdin, - stdout, - stderr - ] }); - if (sigintRefCount++ === 0) - process.on(`SIGINT`, sigintHandler); - if (stdio[0] instanceof stream_1.Transform) - stdio[0].pipe(child.stdin); - if (stdio[1] instanceof stream_1.Transform) - child.stdout.pipe(stdio[1], { end: false }); - if (stdio[2] instanceof stream_1.Transform) - child.stderr.pipe(stdio[2], { end: false }); - return { - stdin: child.stdin, - promise: new Promise((resolve) => { - child.on(`error`, (error) => { - if (--sigintRefCount === 0) - process.off(`SIGINT`, sigintHandler); - switch (error.code) { - case `ENOENT`: - { - stdio[2].write(`command not found: ${name} -`); - resolve(127); - } - break; - case `EACCES`: - { - stdio[2].write(`permission denied: ${name} -`); - resolve(128); - } - break; - default: - { - stdio[2].write(`uncaught error: ${error.message} -`); - resolve(1); - } - break; - } - }); - child.on(`exit`, (code) => { - if (--sigintRefCount === 0) - process.off(`SIGINT`, sigintHandler); - if (code !== null) { - resolve(code); - } else { - resolve(129); - } - }); - }) - }; - }; + exports2.getPinnedVersion = void 0; + function getPinnedVersion(opts) { + if (opts.saveExact === true || opts.savePrefix === "") + return "patch"; + return opts.savePrefix === "~" ? "minor" : "major"; } - exports2.makeProcess = makeProcess; - function makeBuiltin(builtin) { - return (stdio) => { - const stdin = stdio[0] === `pipe` ? new stream_1.PassThrough() : stdio[0]; - return { - stdin, - promise: Promise.resolve().then(() => builtin({ - stdin, - stdout: stdio[1], - stderr: stdio[2] - })) - }; - }; + exports2.getPinnedVersion = getPinnedVersion; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/getSaveType.js +var require_getSaveType = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/getSaveType.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSaveType = void 0; + function getSaveType(opts) { + if (opts.saveDev === true || opts.savePeer) + return "devDependencies"; + if (opts.saveOptional) + return "optionalDependencies"; + if (opts.saveProd) + return "dependencies"; + return void 0; } - exports2.makeBuiltin = makeBuiltin; - var ProtectedStream = class { - constructor(stream) { - this.stream = stream; - } - close() { - } - get() { - return this.stream; + exports2.getSaveType = getSaveType; + } +}); + +// ../node_modules/.pnpm/@pnpm+which@3.0.1/node_modules/@pnpm/which/lib/index.js +var require_lib141 = __commonJS({ + "../node_modules/.pnpm/@pnpm+which@3.0.1/node_modules/@pnpm/which/lib/index.js"(exports2, module2) { + var isexe = require_isexe(); + var { join, delimiter, sep, posix } = require("path"); + var isWindows = process.platform === "win32"; + var rSlash = new RegExp(`[${posix.sep}${sep === posix.sep ? "" : sep}]`.replace(/(\\)/g, "\\$1")); + var rRel = new RegExp(`^\\.${rSlash.source}`); + var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" }); + var getPathInfo = (cmd, { + path: optPath = process.env.PATH, + pathExt: optPathExt = process.env.PATHEXT, + delimiter: optDelimiter = delimiter + }) => { + const pathEnv = cmd.match(rSlash) ? [""] : (optPath || /* istanbul ignore next: very unusual */ + "").split(optDelimiter); + if (isWindows) { + const pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter); + const pathExt = pathExtExe.split(optDelimiter).reduce((acc, item) => { + acc.push(item); + acc.push(item.toLowerCase()); + return acc; + }, []); + if (cmd.includes(".") && pathExt[0] !== "") { + pathExt.unshift(""); + } + return { pathEnv, pathExt, pathExtExe }; } + return { pathEnv, pathExt: [""] }; }; - exports2.ProtectedStream = ProtectedStream; - var PipeStream = class { - constructor() { - this.stream = null; - } - close() { - if (this.stream === null) { - throw new Error(`Assertion failed: No stream attached`); - } else { - this.stream.end(); + var getPathPart = (raw, cmd) => { + const pathPart = /^".*"$/.test(raw) ? raw.slice(1, -1) : raw; + const prefix = !pathPart && rRel.test(cmd) ? cmd.slice(0, 2) : ""; + return prefix + join(pathPart, cmd); + }; + var which = async (cmd, opt = {}) => { + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (const envPart of pathEnv) { + const p = getPathPart(envPart, cmd); + for (const ext of pathExt) { + const withExt = p + ext; + const is = await isexe(withExt, { pathExt: pathExtExe, ignoreErrors: true }); + if (is) { + if (!opt.all) { + return withExt; + } + found.push(withExt); + } } } - attach(stream) { - this.stream = stream; + if (opt.all && found.length) { + return found; } - get() { - if (this.stream === null) { - throw new Error(`Assertion failed: No stream attached`); - } else { - return this.stream; - } + if (opt.nothrow) { + return null; } + throw getNotFoundError(cmd); }; - var Handle = class { - constructor(ancestor, implementation) { - this.stdin = null; - this.stdout = null; - this.stderr = null; - this.pipe = null; - this.ancestor = ancestor; - this.implementation = implementation; - } - static start(implementation, { stdin, stdout, stderr }) { - const chain = new Handle(null, implementation); - chain.stdin = stdin; - chain.stdout = stdout; - chain.stderr = stderr; - return chain; - } - pipeTo(implementation, source = Pipe.STDOUT) { - const next = new Handle(this, implementation); - const pipe = new PipeStream(); - next.pipe = pipe; - next.stdout = this.stdout; - next.stderr = this.stderr; - if ((source & Pipe.STDOUT) === Pipe.STDOUT) - this.stdout = pipe; - else if (this.ancestor !== null) - this.stderr = this.ancestor.stdout; - if ((source & Pipe.STDERR) === Pipe.STDERR) - this.stderr = pipe; - else if (this.ancestor !== null) - this.stderr = this.ancestor.stderr; - return next; - } - async exec() { - const stdio = [ - `ignore`, - `ignore`, - `ignore` - ]; - if (this.pipe) { - stdio[0] = `pipe`; - } else { - if (this.stdin === null) { - throw new Error(`Assertion failed: No input stream registered`); - } else { - stdio[0] = this.stdin.get(); + var whichSync = (cmd, opt = {}) => { + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt); + const found = []; + for (const pathEnvPart of pathEnv) { + const p = getPathPart(pathEnvPart, cmd); + for (const ext of pathExt) { + const withExt = p + ext; + const is = isexe.sync(withExt, { pathExt: pathExtExe, ignoreErrors: true }); + if (is) { + if (!opt.all) { + return withExt; + } + found.push(withExt); } } - let stdoutLock; - if (this.stdout === null) { - throw new Error(`Assertion failed: No output stream registered`); - } else { - stdoutLock = this.stdout; - stdio[1] = stdoutLock.get(); - } - let stderrLock; - if (this.stderr === null) { - throw new Error(`Assertion failed: No error stream registered`); - } else { - stderrLock = this.stderr; - stdio[2] = stderrLock.get(); - } - const child = this.implementation(stdio); - if (this.pipe) - this.pipe.attach(child.stdin); - return await child.promise.then((code) => { - stdoutLock.close(); - stderrLock.close(); - return code; - }); } - async run() { - const promises = []; - for (let handle = this; handle; handle = handle.ancestor) - promises.push(handle.exec()); - const exitCodes = await Promise.all(promises); - return exitCodes[0]; + if (opt.all && found.length) { + return found; + } + if (opt.nothrow) { + return null; } + throw getNotFoundError(cmd); }; - exports2.Handle = Handle; - function start(p, opts) { - return Handle.start(p, opts); - } - exports2.start = start; + module2.exports = which; + which.sync = whichSync; } }); -// ../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/index.js -var require_lib78 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+shell@2.4.1/node_modules/@yarnpkg/shell/lib/index.js"(exports2) { +// ../pkg-manager/plugin-commands-installation/lib/nodeExecPath.js +var require_nodeExecPath = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/nodeExecPath.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.execute = exports2.ShellError = exports2.globUtils = void 0; - var tslib_1 = require_tslib(); - var fslib_1 = require_lib76(); - var parsers_1 = require_lib77(); - var os_1 = require("os"); - var stream_1 = require("stream"); - var errors_1 = require_errors5(); - Object.defineProperty(exports2, "ShellError", { enumerable: true, get: function() { - return errors_1.ShellError; - } }); - var globUtils = tslib_1.__importStar(require_globUtils()); - exports2.globUtils = globUtils; - var pipe_1 = require_pipe4(); - var pipe_2 = require_pipe4(); - var StreamType; - (function(StreamType2) { - StreamType2[StreamType2["Readable"] = 1] = "Readable"; - StreamType2[StreamType2["Writable"] = 2] = "Writable"; - })(StreamType || (StreamType = {})); - function getFileDescriptorStream(fd, type, state) { - const stream = new stream_1.PassThrough({ autoDestroy: true }); - switch (fd) { - case pipe_2.Pipe.STDIN: - { - if ((type & StreamType.Readable) === StreamType.Readable) - state.stdin.pipe(stream, { end: false }); - if ((type & StreamType.Writable) === StreamType.Writable && state.stdin instanceof stream_1.Writable) { - stream.pipe(state.stdin, { end: false }); - } - } - break; - case pipe_2.Pipe.STDOUT: - { - if ((type & StreamType.Readable) === StreamType.Readable) - state.stdout.pipe(stream, { end: false }); - if ((type & StreamType.Writable) === StreamType.Writable) { - stream.pipe(state.stdout, { end: false }); - } - } - break; - case pipe_2.Pipe.STDERR: - { - if ((type & StreamType.Readable) === StreamType.Readable) - state.stderr.pipe(stream, { end: false }); - if ((type & StreamType.Writable) === StreamType.Writable) { - stream.pipe(state.stderr, { end: false }); - } - } - break; - default: { - throw new errors_1.ShellError(`Bad file descriptor: "${fd}"`); - } + exports2.getNodeExecPath = void 0; + var fs_1 = require("fs"); + var which_1 = __importDefault4(require_lib141()); + async function getNodeExecPath() { + try { + const nodeExecPath = await (0, which_1.default)("node"); + return fs_1.promises.realpath(nodeExecPath); + } catch (err) { + if (err["code"] !== "ENOENT") + throw err; + return process.env.NODE ?? process.execPath; } - return stream; } - function cloneState(state, mergeWith = {}) { - const newState = { ...state, ...mergeWith }; - newState.environment = { ...state.environment, ...mergeWith.environment }; - newState.variables = { ...state.variables, ...mergeWith.variables }; - return newState; - } - var BUILTINS = new Map([ - [`cd`, async ([target = os_1.homedir(), ...rest], opts, state) => { - const resolvedTarget = fslib_1.ppath.resolve(state.cwd, fslib_1.npath.toPortablePath(target)); - const stat = await opts.baseFs.statPromise(resolvedTarget); - if (!stat.isDirectory()) { - state.stderr.write(`cd: not a directory -`); - return 1; - } else { - state.cwd = resolvedTarget; - return 0; - } - }], - [`pwd`, async (args2, opts, state) => { - state.stdout.write(`${fslib_1.npath.fromPortablePath(state.cwd)} -`); - return 0; - }], - [`:`, async (args2, opts, state) => { - return 0; - }], - [`true`, async (args2, opts, state) => { - return 0; - }], - [`false`, async (args2, opts, state) => { - return 1; - }], - [`exit`, async ([code, ...rest], opts, state) => { - return state.exitCode = parseInt(code !== null && code !== void 0 ? code : state.variables[`?`], 10); - }], - [`echo`, async (args2, opts, state) => { - state.stdout.write(`${args2.join(` `)} -`); - return 0; - }], - [`__ysh_run_procedure`, async (args2, opts, state) => { - const procedure = state.procedures[args2[0]]; - const exitCode = await pipe_2.start(procedure, { - stdin: new pipe_2.ProtectedStream(state.stdin), - stdout: new pipe_2.ProtectedStream(state.stdout), - stderr: new pipe_2.ProtectedStream(state.stderr) - }).run(); - return exitCode; - }], - [`__ysh_set_redirects`, async (args2, opts, state) => { - let stdin = state.stdin; - let stdout = state.stdout; - const stderr = state.stderr; - const inputs = []; - const outputs = []; - let t = 0; - while (args2[t] !== `--`) { - const type = args2[t++]; - const count = Number(args2[t++]); - const last = t + count; - for (let u = t; u < last; ++t, ++u) { - switch (type) { - case `<`: - { - inputs.push(() => { - return opts.baseFs.createReadStream(fslib_1.ppath.resolve(state.cwd, fslib_1.npath.toPortablePath(args2[u]))); - }); - } - break; - case `<<<`: - { - inputs.push(() => { - const input = new stream_1.PassThrough(); - process.nextTick(() => { - input.write(`${args2[u]} -`); - input.end(); - }); - return input; - }); - } - break; - case `<&`: - { - inputs.push(() => getFileDescriptorStream(Number(args2[u]), StreamType.Readable, state)); - } - break; - case `>`: - case `>>`: - { - const outputPath = fslib_1.ppath.resolve(state.cwd, fslib_1.npath.toPortablePath(args2[u])); - if (outputPath === `/dev/null`) { - outputs.push(new stream_1.Writable({ - autoDestroy: true, - emitClose: true, - write(chunk, encoding, callback) { - setImmediate(callback); - } - })); - } else { - outputs.push(opts.baseFs.createWriteStream(outputPath, type === `>>` ? { flags: `a` } : void 0)); - } - } - break; - case `>&`: - { - outputs.push(getFileDescriptorStream(Number(args2[u]), StreamType.Writable, state)); - } - break; - default: { - throw new Error(`Assertion failed: Unsupported redirection type: "${type}"`); - } - } - } - } - if (inputs.length > 0) { - const pipe = new stream_1.PassThrough(); - stdin = pipe; - const bindInput = (n) => { - if (n === inputs.length) { - pipe.end(); - } else { - const input = inputs[n](); - input.pipe(pipe, { end: false }); - input.on(`end`, () => { - bindInput(n + 1); - }); - } - }; - bindInput(0); - } - if (outputs.length > 0) { - const pipe = new stream_1.PassThrough(); - stdout = pipe; - for (const output of outputs) { - pipe.pipe(output); - } + exports2.getNodeExecPath = getNodeExecPath; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/updateWorkspaceDependencies.js +var require_updateWorkspaceDependencies = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/updateWorkspaceDependencies.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createWorkspaceSpecs = exports2.updateToWorkspacePackagesFromManifest = void 0; + var error_1 = require_lib8(); + var parse_wanted_dependency_1 = require_lib136(); + function updateToWorkspacePackagesFromManifest(manifest, include, workspacePackages) { + const allDeps = { + ...include.devDependencies ? manifest.devDependencies : {}, + ...include.dependencies ? manifest.dependencies : {}, + ...include.optionalDependencies ? manifest.optionalDependencies : {} + }; + const updateSpecs = Object.keys(allDeps).reduce((acc, depName) => { + if (workspacePackages[depName]) { + acc.push(`${depName}@workspace:*`); } - const exitCode = await pipe_2.start(makeCommandAction(args2.slice(t + 1), opts, state), { - stdin: new pipe_2.ProtectedStream(stdin), - stdout: new pipe_2.ProtectedStream(stdout), - stderr: new pipe_2.ProtectedStream(stderr) - }).run(); - await Promise.all(outputs.map((output) => { - return new Promise((resolve) => { - output.on(`close`, () => { - resolve(); - }); - output.end(); - }); - })); - return exitCode; - }] - ]); - async function executeBufferedSubshell(ast, opts, state) { - const chunks = []; - const stdout = new stream_1.PassThrough(); - stdout.on(`data`, (chunk) => chunks.push(chunk)); - await executeShellLine(ast, opts, cloneState(state, { stdout })); - return Buffer.concat(chunks).toString().replace(/[\r\n]+$/, ``); + return acc; + }, []); + return updateSpecs; } - async function applyEnvVariables(environmentSegments, opts, state) { - const envPromises = environmentSegments.map(async (envSegment) => { - const interpolatedArgs = await interpolateArguments(envSegment.args, opts, state); - return { - name: envSegment.name, - value: interpolatedArgs.join(` `) - }; + exports2.updateToWorkspacePackagesFromManifest = updateToWorkspacePackagesFromManifest; + function createWorkspaceSpecs(specs, workspacePackages) { + return specs.map((spec) => { + const parsed = (0, parse_wanted_dependency_1.parseWantedDependency)(spec); + if (!parsed.alias) + throw new error_1.PnpmError("NO_PKG_NAME_IN_SPEC", `Cannot update/install from workspace through "${spec}"`); + if (!workspacePackages[parsed.alias]) + throw new error_1.PnpmError("WORKSPACE_PACKAGE_NOT_FOUND", `"${parsed.alias}" not found in the workspace`); + if (!parsed.pref) + return `${parsed.alias}@workspace:>=0.0.0`; + if (parsed.pref.startsWith("workspace:")) + return spec; + return `${parsed.alias}@workspace:${parsed.pref}`; }); - const interpolatedEnvs = await Promise.all(envPromises); - return interpolatedEnvs.reduce((envs, env) => { - envs[env.name] = env.value; - return envs; - }, {}); - } - function split(raw) { - return raw.match(/[^ \r\n\t]+/g) || []; - } - async function evaluateVariable(segment, opts, state, push, pushAndClose = push) { - switch (segment.name) { - case `$`: - { - push(String(process.pid)); - } - break; - case `#`: - { - push(String(opts.args.length)); - } - break; - case `@`: - { - if (segment.quoted) { - for (const raw of opts.args) { - pushAndClose(raw); - } - } else { - for (const raw of opts.args) { - const parts = split(raw); - for (let t = 0; t < parts.length - 1; ++t) - pushAndClose(parts[t]); - push(parts[parts.length - 1]); - } - } - } - break; - case `*`: - { - const raw = opts.args.join(` `); - if (segment.quoted) { - push(raw); - } else { - for (const part of split(raw)) { - pushAndClose(part); - } - } - } - break; - case `PPID`: - { - push(String(process.ppid)); - } - break; - case `RANDOM`: - { - push(String(Math.floor(Math.random() * 32768))); - } - break; - default: - { - const argIndex = parseInt(segment.name, 10); - if (Number.isFinite(argIndex)) { - if (argIndex >= 0 && argIndex < opts.args.length) { - push(opts.args[argIndex]); - } else if (segment.defaultValue) { - push((await interpolateArguments(segment.defaultValue, opts, state)).join(` `)); - } else { - throw new errors_1.ShellError(`Unbound argument #${argIndex}`); - } - } else { - if (Object.prototype.hasOwnProperty.call(state.variables, segment.name)) { - push(state.variables[segment.name]); - } else if (Object.prototype.hasOwnProperty.call(state.environment, segment.name)) { - push(state.environment[segment.name]); - } else if (segment.defaultValue) { - push((await interpolateArguments(segment.defaultValue, opts, state)).join(` `)); - } else { - throw new errors_1.ShellError(`Unbound variable "${segment.name}"`); - } - } - } - break; - } } - var operators = { - addition: (left, right) => left + right, - subtraction: (left, right) => left - right, - multiplication: (left, right) => left * right, - division: (left, right) => Math.trunc(left / right) + exports2.createWorkspaceSpecs = createWorkspaceSpecs; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/updateToLatestSpecsFromManifest.js +var require_updateToLatestSpecsFromManifest = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/updateToLatestSpecsFromManifest.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - async function evaluateArithmetic(arithmetic, opts, state) { - if (arithmetic.type === `number`) { - if (!Number.isInteger(arithmetic.value)) { - throw new Error(`Invalid number: "${arithmetic.value}", only integers are allowed`); - } else { - return arithmetic.value; - } - } else if (arithmetic.type === `variable`) { - const parts = []; - await evaluateVariable({ ...arithmetic, quoted: true }, opts, state, (result) => parts.push(result)); - const number = Number(parts.join(` `)); - if (Number.isNaN(number)) { - return evaluateArithmetic({ type: `variable`, name: parts.join(` `) }, opts, state); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createLatestSpecs = exports2.updateToLatestSpecsFromManifest = void 0; + var manifest_utils_1 = require_lib26(); + var version_selector_type_1 = __importDefault4(require_version_selector_type()); + function updateToLatestSpecsFromManifest(manifest, include) { + const allDeps = (0, manifest_utils_1.filterDependenciesByType)(manifest, include); + const updateSpecs = []; + for (const [depName, depVersion] of Object.entries(allDeps)) { + if (depVersion.startsWith("npm:")) { + updateSpecs.push(`${depName}@${removeVersionFromSpec(depVersion)}@latest`); } else { - return evaluateArithmetic({ type: `number`, value: number }, opts, state); + const selector = (0, version_selector_type_1.default)(depVersion); + if (selector == null) + continue; + updateSpecs.push(`${depName}@latest`); } - } else { - return operators[arithmetic.type](await evaluateArithmetic(arithmetic.left, opts, state), await evaluateArithmetic(arithmetic.right, opts, state)); } + return updateSpecs; } - async function interpolateArguments(commandArgs, opts, state) { - const redirections = new Map(); - const interpolated = []; - let interpolatedSegments = []; - const push = (segment) => { - interpolatedSegments.push(segment); - }; - const close = () => { - if (interpolatedSegments.length > 0) - interpolated.push(interpolatedSegments.join(``)); - interpolatedSegments = []; - }; - const pushAndClose = (segment) => { - push(segment); - close(); - }; - const redirect = (type, target) => { - let targets = redirections.get(type); - if (typeof targets === `undefined`) - redirections.set(type, targets = []); - targets.push(target); - }; - for (const commandArg of commandArgs) { - let isGlob = false; - switch (commandArg.type) { - case `redirection`: - { - const interpolatedArgs = await interpolateArguments(commandArg.args, opts, state); - for (const interpolatedArg of interpolatedArgs) { - redirect(commandArg.subtype, interpolatedArg); - } - } - break; - case `argument`: - { - for (const segment of commandArg.segments) { - switch (segment.type) { - case `text`: - { - push(segment.text); - } - break; - case `glob`: - { - push(segment.pattern); - isGlob = true; - } - break; - case `shell`: - { - const raw = await executeBufferedSubshell(segment.shell, opts, state); - if (segment.quoted) { - push(raw); - } else { - const parts = split(raw); - for (let t = 0; t < parts.length - 1; ++t) - pushAndClose(parts[t]); - push(parts[parts.length - 1]); - } - } - break; - case `variable`: - { - await evaluateVariable(segment, opts, state, push, pushAndClose); - } - break; - case `arithmetic`: - { - push(String(await evaluateArithmetic(segment.arithmetic, opts, state))); - } - break; - } - } - } - break; + exports2.updateToLatestSpecsFromManifest = updateToLatestSpecsFromManifest; + function createLatestSpecs(specs, manifest) { + const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(manifest); + return specs.filter((selector) => selector.includes("@", 1) ? allDeps[selector.slice(0, selector.indexOf("@", 1))] : allDeps[selector]).map((selector) => { + if (selector.includes("@", 1)) { + return selector; } - close(); - if (isGlob) { - const pattern = interpolated.pop(); - if (typeof pattern === `undefined`) - throw new Error(`Assertion failed: Expected a glob pattern to have been set`); - const matches = await opts.glob.match(pattern, { cwd: state.cwd, baseFs: opts.baseFs }); - if (matches.length === 0) { - const braceExpansionNotice = globUtils.isBraceExpansion(pattern) ? `. Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22` : ``; - throw new errors_1.ShellError(`No matches found: "${pattern}"${braceExpansionNotice}`); - } - for (const match of matches.sort()) { - pushAndClose(match); - } + if (allDeps[selector].startsWith("npm:")) { + return `${selector}@${removeVersionFromSpec(allDeps[selector])}@latest`; } - } - if (redirections.size > 0) { - const redirectionArgs = []; - for (const [subtype, targets] of redirections.entries()) - redirectionArgs.splice(redirectionArgs.length, 0, subtype, String(targets.length), ...targets); - interpolated.splice(0, 0, `__ysh_set_redirects`, ...redirectionArgs, `--`); - } - return interpolated; - } - function makeCommandAction(args2, opts, state) { - if (!opts.builtins.has(args2[0])) - args2 = [`command`, ...args2]; - const nativeCwd = fslib_1.npath.fromPortablePath(state.cwd); - let env = state.environment; - if (typeof env.PWD !== `undefined`) - env = { ...env, PWD: nativeCwd }; - const [name, ...rest] = args2; - if (name === `command`) { - return pipe_1.makeProcess(rest[0], rest.slice(1), opts, { - cwd: nativeCwd, - env - }); - } - const builtin = opts.builtins.get(name); - if (typeof builtin === `undefined`) - throw new Error(`Assertion failed: A builtin should exist for "${name}"`); - return pipe_1.makeBuiltin(async ({ stdin, stdout, stderr }) => { - state.stdin = stdin; - state.stdout = stdout; - state.stderr = stderr; - return await builtin(rest, opts, state); + if ((0, version_selector_type_1.default)(allDeps[selector]) == null) { + return selector; + } + return `${selector}@latest`; }); } - function makeSubshellAction(ast, opts, state) { - return (stdio) => { - const stdin = new stream_1.PassThrough(); - const promise = executeShellLine(ast, opts, cloneState(state, { stdin })); - return { stdin, promise }; - }; + exports2.createLatestSpecs = createLatestSpecs; + function removeVersionFromSpec(spec) { + return spec.substring(0, spec.lastIndexOf("@")); } - function makeGroupAction(ast, opts, state) { - return (stdio) => { - const stdin = new stream_1.PassThrough(); - const promise = executeShellLine(ast, opts, state); - return { stdin, promise }; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/recursive.js +var require_recursive2 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/recursive.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.makeIgnorePatterns = exports2.createMatcher = exports2.matchDependencies = exports2.recursive = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var find_workspace_packages_1 = require_lib29(); + var logger_1 = require_lib6(); + var manifest_utils_1 = require_lib26(); + var matcher_1 = require_lib19(); + var plugin_commands_rebuild_1 = require_lib111(); + var pnpmfile_1 = require_lib10(); + var sort_packages_1 = require_lib110(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var mem_1 = __importDefault4(require_dist4()); + var p_filter_1 = __importDefault4(require_p_filter()); + var p_limit_12 = __importDefault4(require_p_limit()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var updateWorkspaceDependencies_1 = require_updateWorkspaceDependencies(); + var updateToLatestSpecsFromManifest_1 = require_updateToLatestSpecsFromManifest(); + var getSaveType_1 = require_getSaveType(); + var getPinnedVersion_1 = require_getPinnedVersion(); + async function recursive(allProjects, params, opts, cmdFullName) { + if (allProjects.length === 0) { + return false; + } + const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); + if (pkgs.length === 0) { + return false; + } + const manifestsByPath = getManifestsByPath(allProjects); + const throwOnFail = cli_utils_1.throwOnCommandFail.bind(null, `pnpm recursive ${cmdFullName}`); + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const workspacePackages = cmdFullName !== "unlink" ? (0, find_workspace_packages_1.arrayOfWorkspacePackagesToMap)(allProjects) : {}; + const targetDependenciesField = (0, getSaveType_1.getSaveType)(opts); + const installOpts = Object.assign(opts, { + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(manifestsByPath[opts.lockfileDir ?? opts.dir]?.manifest ?? {}), + allProjects: getAllProjects(manifestsByPath, opts.allProjectsGraph, opts.sort), + linkWorkspacePackagesDepth: opts.linkWorkspacePackages === "deep" ? Infinity : opts.linkWorkspacePackages ? 0 : -1, + ownLifecycleHooksStdio: "pipe", + peer: opts.savePeer, + pruneLockfileImporters: (opts.ignoredPackages == null || opts.ignoredPackages.size === 0) && pkgs.length === allProjects.length, + storeController: store.ctrl, + storeDir: store.dir, + targetDependenciesField, + workspacePackages, + forceHoistPattern: typeof opts.rawLocalConfig?.["hoist-pattern"] !== "undefined" || typeof opts.rawLocalConfig?.["hoist"] !== "undefined", + forceShamefullyHoist: typeof opts.rawLocalConfig?.["shamefully-hoist"] !== "undefined" + }); + const result2 = {}; + const memReadLocalConfig = (0, mem_1.default)(config_1.readLocalConfig); + const updateToLatest = opts.update && opts.latest; + const includeDirect = opts.includeDirect ?? { + dependencies: true, + devDependencies: true, + optionalDependencies: true }; - } - function makeActionFromProcedure(procedure, args2, opts, activeState) { - if (args2.length === 0) { - return procedure; + let updateMatch; + if (cmdFullName === "update") { + if (params.length === 0) { + const ignoreDeps = manifestsByPath[opts.workspaceDir]?.manifest?.pnpm?.updateConfig?.ignoreDependencies; + if (ignoreDeps?.length) { + params = makeIgnorePatterns(ignoreDeps); + } + } + updateMatch = params.length ? createMatcher(params) : null; } else { - let key; - do { - key = String(Math.random()); - } while (Object.prototype.hasOwnProperty.call(activeState.procedures, key)); - activeState.procedures = { ...activeState.procedures }; - activeState.procedures[key] = procedure; - return makeCommandAction([...args2, `__ysh_run_procedure`, key], opts, activeState); + updateMatch = null; } - } - async function executeCommandChain(node, opts, state) { - let current = node; - let pipeType = null; - let execution = null; - while (current) { - const activeState = current.then ? { ...state } : state; - let action; - switch (current.type) { - case `command`: - { - const args2 = await interpolateArguments(current.args, opts, state); - const environment = await applyEnvVariables(current.envs, opts, state); - action = current.envs.length ? makeCommandAction(args2, opts, cloneState(activeState, { environment })) : makeCommandAction(args2, opts, activeState); - } - break; - case `subshell`: - { - const args2 = await interpolateArguments(current.args, opts, state); - const procedure = makeSubshellAction(current.subshell, opts, activeState); - action = makeActionFromProcedure(procedure, args2, opts, activeState); - } + if (opts.lockfileDir && ["add", "install", "remove", "update", "import"].includes(cmdFullName)) { + let importers = getImporters(opts); + const calculatedRepositoryRoot = await fs_1.promises.realpath(calculateRepositoryRoot(opts.workspaceDir, importers.map((x) => x.rootDir))); + const isFromWorkspace = is_subdir_1.default.bind(null, calculatedRepositoryRoot); + importers = await (0, p_filter_1.default)(importers, async ({ rootDir }) => isFromWorkspace(await fs_1.promises.realpath(rootDir))); + if (importers.length === 0) + return true; + let mutation; + switch (cmdFullName) { + case "remove": + mutation = "uninstallSome"; break; - case `group`: - { - const args2 = await interpolateArguments(current.args, opts, state); - const procedure = makeGroupAction(current.group, opts, activeState); - action = makeActionFromProcedure(procedure, args2, opts, activeState); - } + case "import": + mutation = "install"; break; - case `envs`: - { - const environment = await applyEnvVariables(current.envs, opts, state); - activeState.environment = { ...activeState.environment, ...environment }; - action = makeCommandAction([`true`], opts, activeState); - } + default: + mutation = params.length === 0 && !updateToLatest ? "install" : "installSome"; break; } - if (typeof action === `undefined`) - throw new Error(`Assertion failed: An action should have been generated`); - if (pipeType === null) { - execution = pipe_2.start(action, { - stdin: new pipe_2.ProtectedStream(activeState.stdin), - stdout: new pipe_2.ProtectedStream(activeState.stdout), - stderr: new pipe_2.ProtectedStream(activeState.stderr) - }); - } else { - if (execution === null) - throw new Error(`Assertion failed: The execution pipeline should have been setup`); - switch (pipeType) { - case `|`: - { - execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT); - } - break; - case `|&`: - { - execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT | pipe_2.Pipe.STDERR); + const writeProjectManifests = []; + const mutatedImporters = []; + await Promise.all(importers.map(async ({ rootDir }) => { + const localConfig = await memReadLocalConfig(rootDir); + const modulesDir = localConfig.modulesDir ?? opts.modulesDir; + const { manifest, writeProjectManifest } = manifestsByPath[rootDir]; + let currentInput = [...params]; + if (updateMatch != null) { + currentInput = matchDependencies(updateMatch, manifest, includeDirect); + if (currentInput.length === 0 && (typeof opts.depth === "undefined" || opts.depth <= 0)) { + installOpts.pruneLockfileImporters = false; + return; + } + } + if (updateToLatest) { + if (!params || params.length === 0) { + currentInput = (0, updateToLatestSpecsFromManifest_1.updateToLatestSpecsFromManifest)(manifest, includeDirect); + } else { + currentInput = (0, updateToLatestSpecsFromManifest_1.createLatestSpecs)(currentInput, manifest); + if (currentInput.length === 0) { + installOpts.pruneLockfileImporters = false; + return; } - break; + } + } + if (opts.workspace) { + if (!currentInput || currentInput.length === 0) { + currentInput = (0, updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest)(manifest, includeDirect, workspacePackages); + } else { + currentInput = (0, updateWorkspaceDependencies_1.createWorkspaceSpecs)(currentInput, workspacePackages); + } + } + writeProjectManifests.push(writeProjectManifest); + switch (mutation) { + case "uninstallSome": + mutatedImporters.push({ + dependencyNames: currentInput, + modulesDir, + mutation, + rootDir, + targetDependenciesField + }); + return; + case "installSome": + mutatedImporters.push({ + allowNew: cmdFullName === "install" || cmdFullName === "add", + dependencySelectors: currentInput, + modulesDir, + mutation, + peer: opts.savePeer, + pinnedVersion: (0, getPinnedVersion_1.getPinnedVersion)({ + saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts.saveExact, + savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts.savePrefix + }), + rootDir, + targetDependenciesField, + update: opts.update, + updateMatching: opts.updateMatching, + updatePackageManifest: opts.updatePackageManifest + }); + return; + case "install": + mutatedImporters.push({ + modulesDir, + mutation, + pruneDirectDependencies: opts.pruneDirectDependencies, + rootDir, + update: opts.update, + updateMatching: opts.updateMatching, + updatePackageManifest: opts.updatePackageManifest + }); } + })); + if (!opts.selectedProjectsGraph[opts.workspaceDir] && manifestsByPath[opts.workspaceDir] != null) { + const { writeProjectManifest } = manifestsByPath[opts.workspaceDir]; + writeProjectManifests.push(writeProjectManifest); + mutatedImporters.push({ + mutation: "install", + rootDir: opts.workspaceDir + }); } - if (current.then) { - pipeType = current.then.type; - current = current.then.chain; - } else { - current = null; + if (opts.dedupePeerDependents) { + for (const rootDir of Object.keys(opts.allProjectsGraph)) { + if (opts.selectedProjectsGraph[rootDir] || rootDir === opts.workspaceDir) + continue; + const { writeProjectManifest } = manifestsByPath[rootDir]; + writeProjectManifests.push(writeProjectManifest); + mutatedImporters.push({ + mutation: "install", + rootDir + }); + } } - } - if (execution === null) - throw new Error(`Assertion failed: The execution pipeline should have been setup`); - return await execution.run(); - } - async function executeCommandLine(node, opts, state) { - let code; - const setCode = (newCode) => { - code = newCode; - state.variables[`?`] = String(newCode); - }; - const executeChain = async (chain) => { - try { - return await executeCommandChain(chain, opts, state); - } catch (error) { - if (!(error instanceof errors_1.ShellError)) - throw error; - state.stderr.write(`${error.message} -`); - return 1; + if (mutatedImporters.length === 0 && cmdFullName === "update" && opts.depth === 0) { + throw new error_1.PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects."); } - }; - setCode(await executeChain(node.chain)); - while (node.then) { - if (state.exitCode !== null) - return state.exitCode; - switch (node.then.type) { - case `&&`: - { - if (code === 0) { - setCode(await executeChain(node.then.line.chain)); - } - } - break; - case `||`: - { - if (code !== 0) { - setCode(await executeChain(node.then.line.chain)); - } - } - break; - default: - { - throw new Error(`Assertion failed: Unsupported command type: "${node.then.type}"`); - } - break; + const mutatedPkgs = await (0, core_1.mutateModules)(mutatedImporters, { + ...installOpts, + storeController: store.ctrl + }); + if (opts.save !== false) { + await Promise.all(mutatedPkgs.map(async ({ originalManifest, manifest }, index) => writeProjectManifests[index](originalManifest ?? manifest))); } - node = node.then.line; - } - return code; - } - async function executeShellLine(node, opts, state) { - let rightMostExitCode = 0; - for (const command of node) { - rightMostExitCode = await executeCommandLine(command, opts, state); - if (state.exitCode !== null) - return state.exitCode; - state.variables[`?`] = String(rightMostExitCode); + return true; } - return rightMostExitCode; - } - function locateArgsVariableInSegment(segment) { - switch (segment.type) { - case `variable`: - { - return segment.name === `@` || segment.name === `#` || segment.name === `*` || Number.isFinite(parseInt(segment.name, 10)) || `defaultValue` in segment && !!segment.defaultValue && segment.defaultValue.some((arg) => locateArgsVariableInArgument(arg)); - } - break; - case `arithmetic`: - { - return locateArgsVariableInArithmetic(segment.arithmetic); + const pkgPaths = Object.keys(opts.selectedProjectsGraph).sort(); + const limitInstallation = (0, p_limit_12.default)(opts.workspaceConcurrency ?? 4); + await Promise.all(pkgPaths.map(async (rootDir) => limitInstallation(async () => { + const hooks = opts.ignorePnpmfile ? {} : (() => { + const pnpmfileHooks = (0, pnpmfile_1.requireHooks)(rootDir, opts); + return { + ...opts.hooks, + ...pnpmfileHooks, + afterAllResolved: [...pnpmfileHooks.afterAllResolved ?? [], ...opts.hooks?.afterAllResolved ?? []], + readPackage: [...pnpmfileHooks.readPackage ?? [], ...opts.hooks?.readPackage ?? []] + }; + })(); + try { + if (opts.ignoredPackages?.has(rootDir)) { + return; } - break; - case `shell`: - { - return locateArgsVariable(segment.shell); + result2[rootDir] = { status: "running" }; + const { manifest, writeProjectManifest } = manifestsByPath[rootDir]; + let currentInput = [...params]; + if (updateMatch != null) { + currentInput = matchDependencies(updateMatch, manifest, includeDirect); + if (currentInput.length === 0) + return; } - break; - default: - { - return false; + if (updateToLatest) { + if (!params || params.length === 0) { + currentInput = (0, updateToLatestSpecsFromManifest_1.updateToLatestSpecsFromManifest)(manifest, includeDirect); + } else { + currentInput = (0, updateToLatestSpecsFromManifest_1.createLatestSpecs)(currentInput, manifest); + if (currentInput.length === 0) + return; + } } - break; - } - } - function locateArgsVariableInArgument(arg) { - switch (arg.type) { - case `redirection`: - { - return arg.args.some((arg2) => locateArgsVariableInArgument(arg2)); + if (opts.workspace) { + if (!currentInput || currentInput.length === 0) { + currentInput = (0, updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest)(manifest, includeDirect, workspacePackages); + } else { + currentInput = (0, updateWorkspaceDependencies_1.createWorkspaceSpecs)(currentInput, workspacePackages); + } } - break; - case `argument`: - { - return arg.segments.some((segment) => locateArgsVariableInSegment(segment)); + let action; + switch (cmdFullName) { + case "unlink": + action = currentInput.length === 0 ? unlink : unlinkPkgs.bind(null, currentInput); + break; + case "remove": + action = async (manifest2, opts2) => { + const [{ manifest: newManifest2 }] = await (0, core_1.mutateModules)([ + { + dependencyNames: currentInput, + mutation: "uninstallSome", + rootDir + } + ], opts2); + return newManifest2; + }; + break; + default: + action = currentInput.length === 0 ? core_1.install : async (manifest2, opts2) => (0, core_1.addDependenciesToPackage)(manifest2, currentInput, opts2); + break; } - break; - default: - throw new Error(`Assertion failed: Unsupported argument type: "${arg.type}"`); - } - } - function locateArgsVariableInArithmetic(arg) { - switch (arg.type) { - case `variable`: - { - return locateArgsVariableInSegment(arg); + const localConfig = await memReadLocalConfig(rootDir); + const newManifest = await action(manifest, { + ...installOpts, + ...localConfig, + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(manifest), + bin: path_1.default.join(rootDir, "node_modules", ".bin"), + dir: rootDir, + hooks, + ignoreScripts: true, + pinnedVersion: (0, getPinnedVersion_1.getPinnedVersion)({ + saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts.saveExact, + savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts.savePrefix + }), + rawConfig: { + ...installOpts.rawConfig, + ...localConfig + }, + storeController: store.ctrl + }); + if (opts.save !== false) { + await writeProjectManifest(newManifest); } - break; - case `number`: - { - return false; + result2[rootDir].status = "passed"; + } catch (err) { + logger_1.logger.info(err); + if (!opts.bail) { + result2[rootDir] = { + status: "failure", + error: err, + message: err.message, + prefix: rootDir + }; + return; } - break; - default: - return locateArgsVariableInArithmetic(arg.left) || locateArgsVariableInArithmetic(arg.right); + err["prefix"] = rootDir; + throw err; + } + }))); + if (!opts.lockfileOnly && !opts.ignoreScripts && (cmdFullName === "add" || cmdFullName === "install" || cmdFullName === "update" || cmdFullName === "unlink")) { + await plugin_commands_rebuild_1.rebuild.handler({ + ...opts, + pending: opts.pending === true + }, []); + } + throwOnFail(result2); + if (!Object.values(result2).filter(({ status }) => status === "passed").length && cmdFullName === "update" && opts.depth === 0) { + throw new error_1.PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects."); } + return true; } - function locateArgsVariable(node) { - return node.some((command) => { - while (command) { - let chain = command.chain; - while (chain) { - let hasArgs; - switch (chain.type) { - case `subshell`: - { - hasArgs = locateArgsVariable(chain.subshell); - } - break; - case `command`: - { - hasArgs = chain.envs.some((env) => env.args.some((arg) => { - return locateArgsVariableInArgument(arg); - })) || chain.args.some((arg) => { - return locateArgsVariableInArgument(arg); - }); - } - break; - } - if (hasArgs) - return true; - if (!chain.then) - break; - chain = chain.then.chain; - } - if (!command.then) - break; - command = command.then.line; + exports2.recursive = recursive; + async function unlink(manifest, opts) { + return (0, core_1.mutateModules)([ + { + mutation: "unlink", + rootDir: opts.dir } - return false; - }); + ], opts); } - async function execute(command, args2 = [], { baseFs = new fslib_1.NodeFS(), builtins = {}, cwd = fslib_1.npath.toPortablePath(process.cwd()), env = process.env, stdin = process.stdin, stdout = process.stdout, stderr = process.stderr, variables = {}, glob = globUtils } = {}) { - const normalizedEnv = {}; - for (const [key, value] of Object.entries(env)) - if (typeof value !== `undefined`) - normalizedEnv[key] = value; - const normalizedBuiltins = new Map(BUILTINS); - for (const [key, builtin] of Object.entries(builtins)) - normalizedBuiltins.set(key, builtin); - if (stdin === null) { - stdin = new stream_1.PassThrough(); - stdin.end(); - } - const ast = parsers_1.parseShell(command, glob); - if (!locateArgsVariable(ast) && ast.length > 0 && args2.length > 0) { - let command2 = ast[ast.length - 1]; - while (command2.then) - command2 = command2.then.line; - let chain = command2.chain; - while (chain.then) - chain = chain.then.chain; - if (chain.type === `command`) { - chain.args = chain.args.concat(args2.map((arg) => { - return { - type: `argument`, - segments: [{ - type: `text`, - text: arg - }] - }; - })); + async function unlinkPkgs(dependencyNames, manifest, opts) { + return (0, core_1.mutateModules)([ + { + dependencyNames, + mutation: "unlinkSome", + rootDir: opts.dir } - } - return await executeShellLine(ast, { - args: args2, - baseFs, - builtins: normalizedBuiltins, - initialStdin: stdin, - initialStdout: stdout, - initialStderr: stderr, - glob - }, { - cwd, - environment: normalizedEnv, - exitCode: null, - procedures: {}, - stdin, - stdout, - stderr, - variables: Object.assign({}, variables, { - [`?`]: 0 - }) - }); + ], opts); } - exports2.execute = execute; - } -}); - -// ../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/async-map.js -var require_async_map = __commonJS({ - "../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/async-map.js"(exports2, module2) { - module2.exports = asyncMap; - function asyncMap() { - var steps = Array.prototype.slice.call(arguments), list = steps.shift() || [], cb_ = steps.pop(); - if (typeof cb_ !== "function") - throw new Error("No callback provided to asyncMap"); - if (!list) - return cb_(null, []); - if (!Array.isArray(list)) - list = [list]; - var n = steps.length, data = [], errState = null, l = list.length, a = l * n; - if (!a) - return cb_(null, []); - function cb(er) { - if (er && !errState) - errState = er; - var argLen = arguments.length; - for (var i = 1; i < argLen; i++) - if (arguments[i] !== void 0) { - data[i - 1] = (data[i - 1] || []).concat(arguments[i]); + function calculateRepositoryRoot(workspaceDir, projectDirs) { + let relativeRepoRoot = "."; + for (const rootDir of projectDirs) { + const relativePartRegExp = new RegExp(`^(\\.\\.\\${path_1.default.sep})+`); + const relativePartMatch = relativePartRegExp.exec(path_1.default.relative(workspaceDir, rootDir)); + if (relativePartMatch != null) { + const relativePart = relativePartMatch[0]; + if (relativePart.length > relativeRepoRoot.length) { + relativeRepoRoot = relativePart; } - if (list.length > l) { - var newList = list.slice(l); - a += (list.length - l) * n; - l = list.length; - process.nextTick(function() { - newList.forEach(function(ar) { - steps.forEach(function(fn2) { - fn2(ar, cb); - }); - }); - }); } - if (--a === 0) - cb_.apply(null, [errState].concat(data)); } - list.forEach(function(ar) { - steps.forEach(function(fn2) { - fn2(ar, cb); - }); - }); + return path_1.default.resolve(workspaceDir, relativeRepoRoot); } - } -}); - -// ../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/bind-actor.js -var require_bind_actor = __commonJS({ - "../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/bind-actor.js"(exports2, module2) { - module2.exports = bindActor; - function bindActor() { - var args2 = Array.prototype.slice.call(arguments), obj = null, fn2; - if (typeof args2[0] === "object") { - obj = args2.shift(); - fn2 = args2.shift(); - if (typeof fn2 === "string") - fn2 = obj[fn2]; - } else - fn2 = args2.shift(); - return function(cb) { - fn2.apply(obj, args2.concat(cb)); + function matchDependencies(match, manifest, include) { + const deps = Object.keys((0, manifest_utils_1.filterDependenciesByType)(manifest, include)); + const matchedDeps = []; + for (const dep of deps) { + const spec = match(dep); + if (spec === null) + continue; + matchedDeps.push(spec ? `${dep}@${spec}` : dep); + } + return matchedDeps; + } + exports2.matchDependencies = matchDependencies; + function createMatcher(params) { + const patterns = []; + const specs = []; + for (const param of params) { + const atIndex = param.indexOf("@", param[0] === "!" ? 2 : 1); + if (atIndex === -1) { + patterns.push(param); + specs.push(""); + } else { + patterns.push(param.slice(0, atIndex)); + specs.push(param.slice(atIndex + 1)); + } + } + const matcher = (0, matcher_1.createMatcherWithIndex)(patterns); + return (depName) => { + const index = matcher(depName); + if (index === -1) + return null; + return specs[index]; }; } - } -}); - -// ../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/chain.js -var require_chain2 = __commonJS({ - "../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/chain.js"(exports2, module2) { - module2.exports = chain; - var bindActor = require_bind_actor(); - chain.first = {}; - chain.last = {}; - function chain(things, cb) { - var res = []; - (function LOOP(i, len) { - if (i >= len) - return cb(null, res); - if (Array.isArray(things[i])) - things[i] = bindActor.apply(null, things[i].map(function(i2) { - return i2 === chain.first ? res[0] : i2 === chain.last ? res[res.length - 1] : i2; - })); - if (!things[i]) - return LOOP(i + 1, len); - things[i](function(er, data) { - if (er) - return cb(er, res); - if (data !== void 0) - res = res.concat(data); - LOOP(i + 1, len); - }); - })(0, things.length); + exports2.createMatcher = createMatcher; + function makeIgnorePatterns(ignoredDependencies) { + return ignoredDependencies.map((depName) => `!${depName}`); + } + exports2.makeIgnorePatterns = makeIgnorePatterns; + function getAllProjects(manifestsByPath, allProjectsGraph, sort) { + const chunks = sort !== false ? (0, sort_packages_1.sortPackages)(allProjectsGraph) : [Object.keys(allProjectsGraph).sort()]; + return chunks.map((prefixes, buildIndex) => prefixes.map((rootDir) => ({ + buildIndex, + manifest: manifestsByPath[rootDir].manifest, + rootDir + }))).flat(); + } + function getManifestsByPath(projects) { + return projects.reduce((manifestsByPath, { dir, manifest, writeProjectManifest }) => { + manifestsByPath[dir] = { manifest, writeProjectManifest }; + return manifestsByPath; + }, {}); + } + function getImporters(opts) { + let rootDirs = Object.keys(opts.selectedProjectsGraph); + if (opts.ignoredPackages != null) { + rootDirs = rootDirs.filter((rootDir) => !opts.ignoredPackages.has(rootDir)); + } + return rootDirs.map((rootDir) => ({ rootDir })); } } }); -// ../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/slide.js -var require_slide = __commonJS({ - "../../node_modules/.pnpm/slide@1.1.6/node_modules/slide/lib/slide.js"(exports2) { - exports2.asyncMap = require_async_map(); - exports2.bindActor = require_bind_actor(); - exports2.chain = require_chain2(); - } -}); - -// ../../node_modules/.pnpm/uid-number@0.0.6/node_modules/uid-number/uid-number.js -var require_uid_number = __commonJS({ - "../../node_modules/.pnpm/uid-number@0.0.6/node_modules/uid-number/uid-number.js"(exports2, module2) { - module2.exports = uidNumber; - var child_process = require("child_process"); - var path = require("path"); - var uidSupport = process.getuid && process.setuid; - var uidCache = {}; - var gidCache = {}; - function uidNumber(uid, gid, cb) { - if (!uidSupport) - return cb(); - if (typeof cb !== "function") - cb = gid, gid = null; - if (typeof cb !== "function") - cb = uid, uid = null; - if (gid == null) - gid = process.getgid(); - if (uid == null) - uid = process.getuid(); - if (!isNaN(gid)) - gid = gidCache[gid] = +gid; - if (!isNaN(uid)) - uid = uidCache[uid] = +uid; - if (uidCache.hasOwnProperty(uid)) - uid = uidCache[uid]; - if (gidCache.hasOwnProperty(gid)) - gid = gidCache[gid]; - if (typeof gid === "number" && typeof uid === "number") { - return process.nextTick(cb.bind(null, null, uid, gid)); +// ../pkg-manager/plugin-commands-installation/lib/installDeps.js +var require_installDeps = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/installDeps.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.installDeps = void 0; + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var filter_workspace_packages_1 = require_lib33(); + var find_workspace_packages_1 = require_lib29(); + var plugin_commands_rebuild_1 = require_lib111(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var logger_1 = require_lib6(); + var sort_packages_1 = require_lib110(); + var workspace_pkgs_graph_1 = require_lib32(); + var is_subdir_1 = __importDefault4(require_is_subdir()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var getPinnedVersion_1 = require_getPinnedVersion(); + var getSaveType_1 = require_getSaveType(); + var nodeExecPath_1 = require_nodeExecPath(); + var recursive_1 = require_recursive2(); + var updateToLatestSpecsFromManifest_1 = require_updateToLatestSpecsFromManifest(); + var updateWorkspaceDependencies_1 = require_updateWorkspaceDependencies(); + var OVERWRITE_UPDATE_OPTIONS = { + allowNew: true, + update: false + }; + async function installDeps(opts, params) { + if (opts.workspace) { + if (opts.latest) { + throw new error_1.PnpmError("BAD_OPTIONS", "Cannot use --latest with --workspace simultaneously"); + } + if (!opts.workspaceDir) { + throw new error_1.PnpmError("WORKSPACE_OPTION_OUTSIDE_WORKSPACE", "--workspace can only be used inside a workspace"); + } + if (!opts.linkWorkspacePackages && !opts.saveWorkspaceProtocol) { + if (opts.rawLocalConfig["save-workspace-protocol"] === false) { + throw new error_1.PnpmError("BAD_OPTIONS", "This workspace has link-workspace-packages turned off, so dependencies are linked from the workspace only when the workspace protocol is used. Either set link-workspace-packages to true or don't use the --no-save-workspace-protocol option when running add/update with the --workspace option"); + } else { + opts.saveWorkspaceProtocol = true; + } + } + opts["preserveWorkspaceProtocol"] = !opts.linkWorkspacePackages; } - var getter = require.resolve("./get-uid-gid.js"); - child_process.execFile(process.execPath, [getter, uid, gid], function(code, out, stderr) { - if (code) { - var er = new Error("could not get uid/gid\n" + stderr); - er.code = code; - return cb(er); + const includeDirect = opts.includeDirect ?? { + dependencies: true, + devDependencies: true, + optionalDependencies: true + }; + const forceHoistPattern = typeof opts.rawLocalConfig["hoist-pattern"] !== "undefined" || typeof opts.rawLocalConfig["hoist"] !== "undefined"; + const forcePublicHoistPattern = typeof opts.rawLocalConfig["shamefully-hoist"] !== "undefined" || typeof opts.rawLocalConfig["public-hoist-pattern"] !== "undefined"; + const allProjects = opts.allProjects ?? (opts.workspaceDir ? await (0, find_workspace_packages_1.findWorkspacePackages)(opts.workspaceDir, opts) : []); + if (opts.workspaceDir) { + const selectedProjectsGraph = opts.selectedProjectsGraph ?? selectProjectByDir(allProjects, opts.dir); + if (selectedProjectsGraph != null) { + const sequencedGraph = (0, sort_packages_1.sequenceGraph)(selectedProjectsGraph); + if (!opts.ignoreWorkspaceCycles && !sequencedGraph.safe) { + const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : ""; + logger_1.logger.warn({ + message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`, + prefix: opts.workspaceDir + }); + } + let allProjectsGraph; + if (opts.dedupePeerDependents) { + allProjectsGraph = opts.allProjectsGraph ?? (0, workspace_pkgs_graph_1.createPkgGraph)(allProjects, { + linkWorkspacePackages: Boolean(opts.linkWorkspacePackages) + }).graph; + } else { + allProjectsGraph = selectedProjectsGraph; + if (!allProjectsGraph[opts.workspaceDir]) { + allProjectsGraph = { + ...allProjectsGraph, + ...selectProjectByDir(allProjects, opts.workspaceDir) + }; + } + } + await (0, recursive_1.recursive)(allProjects, params, { + ...opts, + forceHoistPattern, + forcePublicHoistPattern, + allProjectsGraph, + selectedProjectsGraph, + workspaceDir: opts.workspaceDir + }, opts.update ? "update" : params.length === 0 ? "install" : "add"); + return; } - try { - out = JSON.parse(out + ""); - } catch (ex) { - return cb(ex); + } + params = params.filter(Boolean); + const dir = opts.dir || process.cwd(); + let workspacePackages; + if (opts.workspaceDir) { + workspacePackages = (0, find_workspace_packages_1.arrayOfWorkspacePackagesToMap)(allProjects); + } + let { manifest, writeProjectManifest } = await (0, cli_utils_1.tryReadProjectManifest)(opts.dir, opts); + if (manifest === null) { + if (opts.update === true || params.length === 0) { + throw new error_1.PnpmError("NO_PKG_MANIFEST", `No package.json found in ${opts.dir}`); } - if (out.error) { - var er = new Error(out.error); - er.errno = out.errno; - return cb(er); + manifest = {}; + } + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const installOpts = { + ...opts, + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(manifest), + forceHoistPattern, + forcePublicHoistPattern, + // In case installation is done in a multi-package repository + // The dependencies should be built first, + // so ignoring scripts for now + ignoreScripts: !!workspacePackages || opts.ignoreScripts, + linkWorkspacePackagesDepth: opts.linkWorkspacePackages === "deep" ? Infinity : opts.linkWorkspacePackages ? 0 : -1, + sideEffectsCacheRead: opts.sideEffectsCache ?? opts.sideEffectsCacheReadonly, + sideEffectsCacheWrite: opts.sideEffectsCache, + storeController: store.ctrl, + storeDir: store.dir, + workspacePackages + }; + if (opts.global && opts.pnpmHomeDir != null) { + const nodeExecPath = await (0, nodeExecPath_1.getNodeExecPath)(); + if ((0, is_subdir_1.default)(opts.pnpmHomeDir, nodeExecPath)) { + installOpts["nodeExecPath"] = nodeExecPath; } - if (isNaN(out.uid) || isNaN(out.gid)) - return cb(new Error("Could not get uid/gid: " + JSON.stringify(out))); - cb(null, uidCache[uid] = +out.uid, gidCache[gid] = +out.gid); - }); - } - } -}); - -// ../../node_modules/.pnpm/umask@1.1.0/node_modules/umask/index.js -var require_umask = __commonJS({ - "../../node_modules/.pnpm/umask@1.1.0/node_modules/umask/index.js"(exports2) { - "use strict"; - var util = require("util"); - function toString(val) { - val = val.toString(8); - while (val.length < 4) { - val = "0" + val; } - return val; - } - var defaultUmask = 18; - var defaultUmaskString = toString(defaultUmask); - function validate(data, k, val) { - if (typeof val === "number" && !isNaN(val)) { - data[k] = val; - return true; + let updateMatch; + if (opts.update) { + if (params.length === 0) { + const ignoreDeps = manifest.pnpm?.updateConfig?.ignoreDependencies; + if (ignoreDeps?.length) { + params = (0, recursive_1.makeIgnorePatterns)(ignoreDeps); + } + } + updateMatch = params.length ? (0, recursive_1.createMatcher)(params) : null; + } else { + updateMatch = null; } - if (typeof val === "string") { - if (val.charAt(0) !== "0") { - return false; + if (updateMatch != null) { + params = (0, recursive_1.matchDependencies)(updateMatch, manifest, includeDirect); + if (params.length === 0) { + if (opts.latest) + return; + if (opts.depth === 0) { + throw new error_1.PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies."); + } } - data[k] = parseInt(val, 8); - return true; } - return false; - } - function convert_fromString(val, cb) { - if (typeof val === "string") { - if (val.charAt(0) === "0" && /^[0-7]+$/.test(val)) { - val = parseInt(val, 8); - } else if (val.charAt(0) !== "0" && /^[0-9]+$/.test(val)) { - val = parseInt(val, 10); + if (opts.update && opts.latest) { + if (!params || params.length === 0) { + params = (0, updateToLatestSpecsFromManifest_1.updateToLatestSpecsFromManifest)(manifest, includeDirect); } else { - return cb(new Error(util.format("Expected octal string, got %j, defaulting to %j", val, defaultUmaskString)), defaultUmask); + params = (0, updateToLatestSpecsFromManifest_1.createLatestSpecs)(params, manifest); } - } else if (typeof val !== "number") { - return cb(new Error(util.format("Expected number or octal string, got %j, defaulting to %j", val, defaultUmaskString)), defaultUmask); } - val = Math.floor(val); - if (val < 0 || val > 511) { - return cb(new Error(util.format("Must be in range 0..511 (0000..0777), got %j", val)), defaultUmask); + if (opts.workspace) { + if (!params || params.length === 0) { + params = (0, updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest)(manifest, includeDirect, workspacePackages); + } else { + params = (0, updateWorkspaceDependencies_1.createWorkspaceSpecs)(params, workspacePackages); + } + } + if (params?.length) { + const mutatedProject = { + allowNew: opts.allowNew, + binsDir: opts.bin, + dependencySelectors: params, + manifest, + mutation: "installSome", + peer: opts.savePeer, + pinnedVersion: (0, getPinnedVersion_1.getPinnedVersion)(opts), + rootDir: opts.dir, + targetDependenciesField: (0, getSaveType_1.getSaveType)(opts) + }; + const updatedImporter = await (0, core_1.mutateModulesInSingleProject)(mutatedProject, installOpts); + if (opts.save !== false) { + await writeProjectManifest(updatedImporter.manifest); + } + return; + } + const updatedManifest = await (0, core_1.install)(manifest, installOpts); + if (opts.update === true && opts.save !== false) { + await writeProjectManifest(updatedManifest); + } + if (opts.linkWorkspacePackages && opts.workspaceDir) { + const { selectedProjectsGraph } = await (0, filter_workspace_packages_1.filterPkgsBySelectorObjects)(allProjects, [ + { + excludeSelf: true, + includeDependencies: true, + parentDir: dir + } + ], { + workspaceDir: opts.workspaceDir + }); + await (0, recursive_1.recursive)(allProjects, [], { + ...opts, + ...OVERWRITE_UPDATE_OPTIONS, + allProjectsGraph: opts.allProjectsGraph, + selectedProjectsGraph, + workspaceDir: opts.workspaceDir + // Otherwise TypeScript doesn't understand that is not undefined + }, "install"); + if (opts.ignoreScripts) + return; + await (0, plugin_commands_rebuild_1.rebuildProjects)([ + { + buildIndex: 0, + manifest: await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, opts), + rootDir: opts.dir + } + ], { + ...opts, + pending: true, + storeController: store.ctrl, + storeDir: store.dir + }); } - cb(null, val); } - function fromString(val, cb) { - convert_fromString(val, cb || function(err, result) { - val = result; - }); - return val; + exports2.installDeps = installDeps; + function selectProjectByDir(projects, searchedDir) { + const project = projects.find(({ dir }) => path_1.default.relative(dir, searchedDir) === ""); + if (project == null) + return void 0; + return { [searchedDir]: { dependencies: [], package: project } }; } - exports2.toString = toString; - exports2.fromString = fromString; - exports2.validate = validate; } }); -// ../../node_modules/.pnpm/byline@5.0.0/node_modules/byline/lib/byline.js -var require_byline = __commonJS({ - "../../node_modules/.pnpm/byline@5.0.0/node_modules/byline/lib/byline.js"(exports2, module2) { - var stream = require("stream"); - var util = require("util"); - var timers = require("timers"); - module2.exports = function(readStream, options) { - return module2.exports.createStream(readStream, options); - }; - module2.exports.createStream = function(readStream, options) { - if (readStream) { - return createLineStream(readStream, options); - } else { - return new LineStream(options); - } - }; - module2.exports.createLineStream = function(readStream) { - console.log("WARNING: byline#createLineStream is deprecated and will be removed soon"); - return createLineStream(readStream); +// ../pkg-manager/plugin-commands-installation/lib/add.js +var require_add = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/add.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - function createLineStream(readStream, options) { - if (!readStream) { - throw new Error("expected readStream"); - } - if (!readStream.readable) { - throw new Error("readStream must be readable"); - } - var ls = new LineStream(options); - readStream.pipe(ls); - return ls; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var installDeps_1 = require_installDeps(); + function rcOptionsTypes() { + return (0, pick_1.default)([ + "cache-dir", + "child-concurrency", + "engine-strict", + "fetch-retries", + "fetch-retry-factor", + "fetch-retry-maxtimeout", + "fetch-retry-mintimeout", + "fetch-timeout", + "force", + "global-bin-dir", + "global-dir", + "global-pnpmfile", + "global", + "hoist", + "hoist-pattern", + "https-proxy", + "ignore-pnpmfile", + "ignore-scripts", + "ignore-workspace-root-check", + "link-workspace-packages", + "lockfile-dir", + "lockfile-directory", + "lockfile-only", + "lockfile", + "modules-dir", + "network-concurrency", + "node-linker", + "noproxy", + "npmPath", + "package-import-method", + "pnpmfile", + "prefer-offline", + "production", + "proxy", + "public-hoist-pattern", + "registry", + "reporter", + "save-dev", + "save-exact", + "save-optional", + "save-peer", + "save-prefix", + "save-prod", + "save-workspace-protocol", + "shamefully-flatten", + "shamefully-hoist", + "shared-workspace-lockfile", + "side-effects-cache-readonly", + "side-effects-cache", + "store", + "store-dir", + "strict-peer-dependencies", + "unsafe-perm", + "offline", + "only", + "optional", + "use-running-store-server", + "use-store-server", + "verify-store-integrity", + "virtual-store-dir" + ], config_1.types); } - module2.exports.LineStream = LineStream; - function LineStream(options) { - stream.Transform.call(this, options); - options = options || {}; - this._readableState.objectMode = true; - this._lineBuffer = []; - this._keepEmptyLines = options.keepEmptyLines || false; - this._lastChunkEndedWithCR = false; - var self2 = this; - this.on("pipe", function(src) { - if (!self2.encoding) { - if (src instanceof stream.Readable) { - self2.encoding = src._readableState.encoding; - } - } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + ...rcOptionsTypes(), + recursive: Boolean, + save: Boolean, + workspace: Boolean + }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["add"]; + function help() { + return (0, render_help_1.default)({ + description: "Installs a package and any packages that it depends on.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Save package to your `dependencies`. The default behavior", + name: "--save-prod", + shortAlias: "-P" + }, + { + description: "Save package to your `devDependencies`", + name: "--save-dev", + shortAlias: "-D" + }, + { + description: "Save package to your `optionalDependencies`", + name: "--save-optional", + shortAlias: "-O" + }, + { + description: "Save package to your `peerDependencies` and `devDependencies`", + name: "--save-peer" + }, + { + description: "Install exact version", + name: "--[no-]save-exact", + shortAlias: "-E" + }, + { + description: 'Save packages from the workspace with a "workspace:" protocol. True by default', + name: "--[no-]save-workspace-protocol" + }, + { + description: "Install as a global package", + name: "--global", + shortAlias: "-g" + }, + { + description: 'Run installation recursively in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: "Only adds the new dependency if it is found in the workspace", + name: "--workspace" + }, + common_cli_options_help_1.OPTIONS.ignoreScripts, + common_cli_options_help_1.OPTIONS.offline, + common_cli_options_help_1.OPTIONS.preferOffline, + common_cli_options_help_1.OPTIONS.storeDir, + common_cli_options_help_1.OPTIONS.virtualStoreDir, + common_cli_options_help_1.OPTIONS.globalDir, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("add"), + usages: [ + "pnpm add ", + "pnpm add @", + "pnpm add @", + "pnpm add @", + "pnpm add :/", + "pnpm add ", + "pnpm add ", + "pnpm add ", + "pnpm add " + ] }); } - util.inherits(LineStream, stream.Transform); - LineStream.prototype._transform = function(chunk, encoding, done) { - encoding = encoding || "utf8"; - if (Buffer.isBuffer(chunk)) { - if (encoding == "buffer") { - chunk = chunk.toString(); - encoding = "utf8"; - } else { - chunk = chunk.toString(encoding); - } + exports2.help = help; + async function handler(opts, params) { + if (opts.cliOptions["save"] === false) { + throw new error_1.PnpmError("OPTION_NOT_SUPPORTED", 'The "add" command currently does not support the no-save option'); } - this._chunkEncoding = encoding; - var lines = chunk.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g); - if (this._lastChunkEndedWithCR && chunk[0] == "\n") { - lines.shift(); + if (!params || params.length === 0) { + throw new error_1.PnpmError("MISSING_PACKAGE_NAME", "`pnpm add` requires the package name"); } - if (this._lineBuffer.length > 0) { - this._lineBuffer[this._lineBuffer.length - 1] += lines[0]; - lines.shift(); + if (!opts.recursive && opts.workspaceDir === opts.dir && !opts.ignoreWorkspaceRootCheck && !opts.workspaceRoot) { + throw new error_1.PnpmError("ADDING_TO_ROOT", "Running this command will add the dependency to the workspace root, which might not be what you want - if you really meant it, make it explicit by running this command again with the -w flag (or --workspace-root). If you don't want to see this warning anymore, you may set the ignore-workspace-root-check setting to true."); } - this._lastChunkEndedWithCR = chunk[chunk.length - 1] == "\r"; - this._lineBuffer = this._lineBuffer.concat(lines); - this._pushBuffer(encoding, 1, done); - }; - LineStream.prototype._pushBuffer = function(encoding, keep, done) { - while (this._lineBuffer.length > keep) { - var line = this._lineBuffer.shift(); - if (this._keepEmptyLines || line.length > 0) { - if (!this.push(this._reencode(line, encoding))) { - var self2 = this; - timers.setImmediate(function() { - self2._pushBuffer(encoding, keep, done); - }); - return; - } - } + if (opts.global && !opts.bin) { + throw new error_1.PnpmError("NO_GLOBAL_BIN_DIR", "Unable to find the global bin directory", { + hint: 'Run "pnpm setup" to create it automatically, or set the global-bin-dir setting, or the PNPM_HOME env variable. The global bin directory should be in the PATH.' + }); } - done(); - }; - LineStream.prototype._flush = function(done) { - this._pushBuffer(this._chunkEncoding, 0, done); + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + optionalDependencies: opts.optional !== false + }; + return (0, installDeps_1.installDeps)({ + ...opts, + include, + includeDirect: include + }, params); + } + exports2.handler = handler; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/install.js +var require_install2 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/install.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - LineStream.prototype._reencode = function(line, chunkEncoding) { - if (this.encoding && this.encoding != chunkEncoding) { - return new Buffer(line, chunkEncoding).toString(this.encoding); - } else if (this.encoding) { - return line; - } else { - return new Buffer(line, chunkEncoding); - } + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var constants_1 = require_lib7(); + var ci_info_1 = require_ci_info(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var installDeps_1 = require_installDeps(); + function rcOptionsTypes() { + return (0, pick_1.default)([ + "cache-dir", + "child-concurrency", + "dev", + "engine-strict", + "fetch-retries", + "fetch-retry-factor", + "fetch-retry-maxtimeout", + "fetch-retry-mintimeout", + "fetch-timeout", + "frozen-lockfile", + "global-dir", + "global-pnpmfile", + "global", + "hoist", + "hoist-pattern", + "https-proxy", + "ignore-pnpmfile", + "ignore-scripts", + "link-workspace-packages", + "lockfile-dir", + "lockfile-directory", + "lockfile-only", + "lockfile", + "merge-git-branch-lockfiles", + "merge-git-branch-lockfiles-branch-pattern", + "modules-dir", + "network-concurrency", + "node-linker", + "noproxy", + "package-import-method", + "pnpmfile", + "prefer-frozen-lockfile", + "prefer-offline", + "production", + "proxy", + "public-hoist-pattern", + "registry", + "reporter", + "save-workspace-protocol", + "scripts-prepend-node-path", + "shamefully-flatten", + "shamefully-hoist", + "shared-workspace-lockfile", + "side-effects-cache-readonly", + "side-effects-cache", + "store", + "store-dir", + "strict-peer-dependencies", + "offline", + "only", + "optional", + "unsafe-perm", + "use-lockfile-v6", + "use-running-store-server", + "use-store-server", + "verify-store-integrity", + "virtual-store-dir" + ], config_1.types); + } + exports2.rcOptionsTypes = rcOptionsTypes; + var cliOptionsTypes = () => ({ + ...rcOptionsTypes(), + ...(0, pick_1.default)(["force"], config_1.types), + "fix-lockfile": Boolean, + recursive: Boolean + }); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production" }; + exports2.commandNames = ["install", "i"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["i"], + description: "Installs all dependencies of the project in the current working directory. When executed inside a workspace, installs all dependencies of all projects.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Run installation recursively in every package found in subdirectories. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + common_cli_options_help_1.OPTIONS.ignoreScripts, + common_cli_options_help_1.OPTIONS.offline, + common_cli_options_help_1.OPTIONS.preferOffline, + common_cli_options_help_1.OPTIONS.globalDir, + { + description: "Packages in `devDependencies` won't be installed", + name: "--prod", + shortAlias: "-P" + }, + { + description: "Only `devDependencies` are installed regardless of the `NODE_ENV`", + name: "--dev", + shortAlias: "-D" + }, + { + description: "`optionalDependencies` are not installed", + name: "--no-optional" + }, + { + description: `Don't read or generate a \`${constants_1.WANTED_LOCKFILE}\` file`, + name: "--no-lockfile" + }, + { + description: `Dependencies are not downloaded. Only \`${constants_1.WANTED_LOCKFILE}\` is updated`, + name: "--lockfile-only" + }, + { + description: "Don't generate a lockfile and fail if an update is needed. This setting is on by default in CI environments, so use --no-frozen-lockfile if you need to disable it for some reason", + name: "--[no-]frozen-lockfile" + }, + { + description: `If the available \`${constants_1.WANTED_LOCKFILE}\` satisfies the \`package.json\` then perform a headless installation`, + name: "--prefer-frozen-lockfile" + }, + { + description: `The directory in which the ${constants_1.WANTED_LOCKFILE} of the package will be created. Several projects may share a single lockfile.`, + name: "--lockfile-dir " + }, + { + description: "Fix broken lockfile entries automatically", + name: "--fix-lockfile" + }, + { + description: "Merge lockfiles were generated on git branch", + name: "--merge-git-branch-lockfiles" + }, + { + description: "The directory in which dependencies will be installed (instead of node_modules)", + name: "--modules-dir " + }, + { + description: "Dependencies inside the modules directory will have access only to their listed dependencies", + name: "--no-hoist" + }, + { + description: "All the subdeps will be hoisted into the root node_modules. Your code will have access to them", + name: "--shamefully-hoist" + }, + { + description: "Hoist all dependencies matching the pattern to `node_modules/.pnpm/node_modules`. The default pattern is * and matches everything. Hoisted packages can be required by any dependencies, so it is an emulation of a flat node_modules", + name: "--hoist-pattern " + }, + { + description: "Hoist all dependencies matching the pattern to the root of the modules directory", + name: "--public-hoist-pattern " + }, + common_cli_options_help_1.OPTIONS.storeDir, + common_cli_options_help_1.OPTIONS.virtualStoreDir, + { + description: "Maximum number of concurrent network requests", + name: "--network-concurrency " + }, + { + description: "Controls the number of child processes run parallelly to build node modules", + name: "--child-concurrency " + }, + { + description: "Disable pnpm hooks defined in .pnpmfile.cjs", + name: "--ignore-pnpmfile" + }, + { + description: "If false, doesn't check whether packages in the store were mutated", + name: "--[no-]verify-store-integrity" + }, + { + description: "Fail on missing or invalid peer dependencies", + name: "--strict-peer-dependencies" + }, + { + description: "Starts a store server in the background. The store server will keep running after installation is done. To stop the store server, run `pnpm server stop`", + name: "--use-store-server" + }, + { + description: "Only allows installation with a store server. If no store server is running, installation will fail", + name: "--use-running-store-server" + }, + { + description: "Clones/hardlinks or copies packages. The selected method depends from the file system", + name: "--package-import-method auto" + }, + { + description: "Hardlink packages from the store", + name: "--package-import-method hardlink" + }, + { + description: "Copy packages from the store", + name: "--package-import-method copy" + }, + { + description: "Clone (aka copy-on-write) packages from the store", + name: "--package-import-method clone" + }, + { + description: "Force reinstall dependencies: refetch packages modified in store, recreate a lockfile and/or modules directory created by a non-compatible version of pnpm. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch)", + name: "--force" + }, + { + description: "Use or cache the results of (pre/post)install hooks", + name: "--side-effects-cache" + }, + { + description: "Only use the side effects cache if present, do not create it for new packages", + name: "--side-effects-cache-readonly" + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.OUTPUT_OPTIONS, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("install"), + usages: ["pnpm install [options]"] + }); + } + exports2.help = help; + async function handler(opts) { + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + optionalDependencies: opts.optional !== false + }; + return (0, installDeps_1.installDeps)({ + ...opts, + frozenLockfileIfExists: ci_info_1.isCI && !opts.lockfileOnly && typeof opts.rawLocalConfig["frozen-lockfile"] === "undefined" && typeof opts.rawLocalConfig["prefer-frozen-lockfile"] === "undefined", + include, + includeDirect: include + }, []); + } + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/resolve-from@5.0.0/node_modules/resolve-from/index.js -var require_resolve_from = __commonJS({ - "../../node_modules/.pnpm/resolve-from@5.0.0/node_modules/resolve-from/index.js"(exports2, module2) { +// ../pkg-manager/plugin-commands-installation/lib/dedupe.js +var require_dedupe = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/dedupe.js"(exports2) { "use strict"; - var path = require("path"); - var Module = require("module"); - var fs = require("fs"); - var resolveFrom = (fromDirectory, moduleId, silent) => { - if (typeof fromDirectory !== "string") { - throw new TypeError(`Expected \`fromDir\` to be of type \`string\`, got \`${typeof fromDirectory}\``); - } - if (typeof moduleId !== "string") { - throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof moduleId}\``); + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - try { - fromDirectory = fs.realpathSync(fromDirectory); - } catch (error) { - if (error.code === "ENOENT") { - fromDirectory = path.resolve(fromDirectory); - } else if (silent) { - return; - } else { - throw error; - } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - const fromFile = path.join(fromDirectory, "noop.js"); - const resolveFileName = () => Module._resolveFilename(moduleId, { - id: fromFile, - filename: fromFile, - paths: Module._nodeModulePaths(fromDirectory) + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var render_help_1 = __importDefault4(require_lib34()); + var install = __importStar5(require_install2()); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return {}; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["dedupe"]; + function help() { + return (0, render_help_1.default)({ + description: "Perform an install removing older dependencies in the lockfile if a newer version can be used.", + descriptionLists: [ + { + title: "Options", + list: [ + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + } + ], + url: (0, cli_utils_1.docsUrl)("dedupe"), + usages: ["pnpm dedupe"] }); - if (silent) { - try { - return resolveFileName(); - } catch (error) { - return; - } - } - return resolveFileName(); + } + exports2.help = help; + async function handler(opts) { + return install.handler({ + ...opts, + dedupe: true + }); + } + exports2.handler = handler; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/fetch.js +var require_fetch3 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/fetch.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - module2.exports = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId); - module2.exports.silent = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId, true); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var render_help_1 = __importDefault4(require_lib34()); + var install_1 = require_install2(); + Object.defineProperty(exports2, "cliOptionsTypes", { enumerable: true, get: function() { + return install_1.cliOptionsTypes; + } }); + exports2.rcOptionsTypes = install_1.cliOptionsTypes; + exports2.commandNames = ["fetch"]; + function help() { + return (0, render_help_1.default)({ + description: "Fetch packages from a lockfile into virtual store, package manifest is ignored. WARNING! This is an experimental command. Breaking changes may be introduced in non-major versions of the CLI", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Only development packages will be fetched", + name: "--dev" + }, + { + description: "Development packages will not be fetched", + name: "--prod" + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + } + ], + url: (0, cli_utils_1.docsUrl)("fetch"), + usages: ["pnpm fetch [--dev | --prod]"] + }); + } + exports2.help = help; + async function handler(opts) { + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + // when including optional deps, production is also required when perform headless install + optionalDependencies: opts.production !== false + }; + await (0, core_1.mutateModulesInSingleProject)({ + manifest: {}, + mutation: "install", + pruneDirectDependencies: true, + rootDir: process.cwd() + }, { + ...opts, + ignorePackageManifest: true, + include, + modulesCacheMaxAge: 0, + pruneStore: true, + storeController: store.ctrl, + storeDir: store.dir + }); + } + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/@zkochan+npm-lifecycle@5.1.2/node_modules/@zkochan/npm-lifecycle/index.js -var require_npm_lifecycle = __commonJS({ - "../../node_modules/.pnpm/@zkochan+npm-lifecycle@5.1.2/node_modules/@zkochan/npm-lifecycle/index.js"(exports2, module2) { +// ../workspace/find-workspace-dir/lib/index.js +var require_lib142 = __commonJS({ + "../workspace/find-workspace-dir/lib/index.js"(exports2) { "use strict"; - exports2 = module2.exports = lifecycle; - exports2.makeEnv = makeEnv; - exports2._incorrectWorkingDirectory = _incorrectWorkingDirectory; - var spawn = require_spawn(); - var { execute } = require_lib78(); - var path = require("path"); - var Stream = require("stream").Stream; - var fs = require("fs"); - var chain = require_slide().chain; - var uidNumber = require_uid_number(); - var umask = require_umask(); - var which = require_which(); - var byline = require_byline(); - var resolveFrom = require_resolve_from(); - var { PassThrough } = require("stream"); - var DEFAULT_NODE_GYP_PATH; - try { - DEFAULT_NODE_GYP_PATH = resolveFrom(__dirname, "node-gyp/bin/node-gyp"); - } catch (err) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findWorkspaceDir = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var find_up_1 = __importDefault4(require_find_up()); + var WORKSPACE_DIR_ENV_VAR = "NPM_CONFIG_WORKSPACE_DIR"; + var WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml"; + async function findWorkspaceDir(cwd) { + const workspaceManifestDirEnvVar = process.env[WORKSPACE_DIR_ENV_VAR] ?? process.env[WORKSPACE_DIR_ENV_VAR.toLowerCase()]; + const workspaceManifestLocation = workspaceManifestDirEnvVar ? path_1.default.join(workspaceManifestDirEnvVar, "pnpm-workspace.yaml") : await (0, find_up_1.default)([WORKSPACE_MANIFEST_FILENAME, "pnpm-workspace.yml"], { cwd: await getRealPath(cwd) }); + if (workspaceManifestLocation?.endsWith(".yml")) { + throw new error_1.PnpmError("BAD_WORKSPACE_MANIFEST_NAME", `The workspace manifest file should be named "pnpm-workspace.yaml". File found: ${workspaceManifestLocation}`); + } + return workspaceManifestLocation && path_1.default.dirname(workspaceManifestLocation); } - var hookStatCache = new Map(); - var PATH = "PATH"; - if (process.platform === "win32") { - PATH = "Path"; - Object.keys(process.env).forEach((e) => { - if (e.match(/^PATH$/i)) { - PATH = e; - } + exports2.findWorkspaceDir = findWorkspaceDir; + async function getRealPath(path2) { + return new Promise((resolve) => { + fs_1.default.realpath.native(path2, function(err, resolvedPath) { + resolve(err !== null ? path2 : resolvedPath); + }); }); } - function logid(pkg, stage) { - return `${pkg._id}~${stage}:`; - } - function hookStat(dir, stage, cb) { - const hook = path.join(dir, ".hooks", stage); - const cachedStatError = hookStatCache.get(hook); - if (cachedStatError === void 0) { - return fs.stat(hook, (statError) => { - hookStatCache.set(hook, statError); - cb(statError); - }); + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/link.js +var require_link5 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/link.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - return setImmediate(() => cb(cachedStatError)); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var find_workspace_dir_1 = require_lib142(); + var find_workspace_packages_1 = require_lib29(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var p_limit_12 = __importDefault4(require_p_limit()); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var pick_1 = __importDefault4(require_pick()); + var partition_1 = __importDefault4(require_partition4()); + var render_help_1 = __importDefault4(require_lib34()); + var installCommand = __importStar5(require_install2()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var getSaveType_1 = require_getSaveType(); + var isWindows = process.platform === "win32" || global["FAKE_WINDOWS"]; + var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; + var installLimit = (0, p_limit_12.default)(4); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return (0, pick_1.default)([ + "global-dir", + "global", + "only", + "package-import-method", + "production", + "registry", + "reporter", + "save-dev", + "save-exact", + "save-optional", + "save-prefix", + "unsafe-perm" + ], config_1.types); } - function lifecycle(pkg, stage, wd, opts) { - return new Promise((resolve, reject) => { - while (pkg && pkg._data) - pkg = pkg._data; - if (!pkg) - return reject(new Error("Invalid package data")); - opts.log.info("lifecycle", logid(pkg, stage), pkg._id); - if (!pkg.scripts) - pkg.scripts = {}; - if (stage === "prepublish" && opts.ignorePrepublish) { - opts.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-prepublish is set to true", pkg._id); - delete pkg.scripts.prepublish; - } - hookStat(opts.dir, stage, (statError) => { - if (!pkg.scripts[stage] && statError) - return resolve(); - validWd(wd || path.resolve(opts.dir, pkg.name), (er, wd2) => { - if (er) - return reject(er); - if ((wd2.indexOf(opts.dir) !== 0 || _incorrectWorkingDirectory(wd2, pkg)) && !opts.unsafePerm && pkg.scripts[stage]) { - opts.log.warn(`"${stage}" script of "${pkg._id}" inside "${wd2}" is skipped as the working directory seems suspicious. To run this lifecycle script anyway, use "--unsafe-perm".`); - return resolve(); - } - const env = makeEnv(pkg, opts); - env.npm_lifecycle_event = stage; - env.npm_node_execpath = env.NODE = env.NODE || process.execPath; - if (process.pkg != null) { - env.npm_execpath = process.execPath; - } else { - env.npm_execpath = require.main ? require.main.filename : process.cwd(); - } - env.INIT_CWD = process.cwd(); - env.npm_config_node_gyp = env.npm_config_node_gyp || DEFAULT_NODE_GYP_PATH; - if (opts.extraEnv) { - for (const [key, value] of Object.entries(opts.extraEnv)) { - env[key] = value; + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["link", "ln"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["ln"], + descriptionLists: [ + { + title: "Options", + list: [ + ...common_cli_options_help_1.UNIVERSAL_OPTIONS, + { + description: "Link package to/from global node_modules", + name: "--global", + shortAlias: "-g" } - } - if (!opts.unsafePerm) - env.TMPDIR = wd2; - lifecycle_(pkg, stage, wd2, opts, env, (er2) => { - if (er2) - return reject(er2); - return resolve(); - }); - }); - }); + ] + } + ], + url: (0, cli_utils_1.docsUrl)("link"), + usages: [ + "pnpm link ", + "pnpm link --global (in package dir)", + "pnpm link --global " + ] }); } - function _incorrectWorkingDirectory(wd, pkg) { - return wd.lastIndexOf(pkg.name) !== wd.length - pkg.name.length; - } - function lifecycle_(pkg, stage, wd, opts, env, cb) { - const pathArr = [...opts.extraBinPaths || []]; - const p = wd.split(/[\\/]node_modules[\\/]/); - let acc = path.resolve(p.shift()); - p.forEach((pp) => { - pathArr.unshift(path.join(acc, "node_modules", ".bin")); - acc = path.join(acc, "node_modules", pp); - }); - pathArr.unshift(path.join(acc, "node_modules", ".bin")); - pathArr.unshift(path.join(__dirname, "node-gyp-bin")); - if (shouldPrependCurrentNodeDirToPATH(opts)) { - pathArr.push(path.dirname(process.execPath)); - } - if (env[PATH]) - pathArr.push(env[PATH]); - env[PATH] = pathArr.join(process.platform === "win32" ? ";" : ":"); - let packageLifecycle = pkg.scripts && pkg.scripts.hasOwnProperty(stage); - if (opts.ignoreScripts) { - opts.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-scripts is set to true", pkg._id); - packageLifecycle = false; - } else if (packageLifecycle) { - env.npm_lifecycle_script = pkg.scripts[stage]; + exports2.help = help; + async function handler(opts, params) { + const cwd = process.cwd(); + const storeControllerCache = /* @__PURE__ */ new Map(); + let workspacePackagesArr; + let workspacePackages; + if (opts.workspaceDir) { + workspacePackagesArr = await (0, find_workspace_packages_1.findWorkspacePackages)(opts.workspaceDir, opts); + workspacePackages = (0, find_workspace_packages_1.arrayOfWorkspacePackagesToMap)(workspacePackagesArr); } else { - opts.log.silly("lifecycle", logid(pkg, stage), `no script for ${stage}, continuing`); + workspacePackages = {}; } - function done(er) { - if (er) { - if (opts.force) { - opts.log.info("lifecycle", logid(pkg, stage), "forced, continuing", er); - er = null; - } else if (opts.failOk) { - opts.log.warn("lifecycle", logid(pkg, stage), "continuing anyway", er.message); - er = null; + const store = await (0, store_connection_manager_1.createOrConnectStoreControllerCached)(storeControllerCache, opts); + const linkOpts = Object.assign(opts, { + storeController: store.ctrl, + storeDir: store.dir, + targetDependenciesField: (0, getSaveType_1.getSaveType)(opts), + workspacePackages + }); + const linkCwdDir = opts.cliOptions?.dir && opts.cliOptions?.global ? path_1.default.resolve(opts.cliOptions.dir) : cwd; + if (params == null || params.length === 0) { + if (path_1.default.relative(linkOpts.dir, cwd) === "") { + throw new error_1.PnpmError("LINK_BAD_PARAMS", "You must provide a parameter"); + } + const { manifest: manifest2, writeProjectManifest: writeProjectManifest2 } = await (0, cli_utils_1.tryReadProjectManifest)(opts.dir, opts); + const newManifest2 = await (0, core_1.addDependenciesToPackage)(manifest2 ?? {}, [`link:${linkCwdDir}`], linkOpts); + await writeProjectManifest2(newManifest2); + return; + } + const [pkgPaths, pkgNames] = (0, partition_1.default)((inp) => isFilespec.test(inp), params); + await Promise.all(pkgPaths.map(async (dir) => installLimit(async () => { + const s = await (0, store_connection_manager_1.createOrConnectStoreControllerCached)(storeControllerCache, opts); + const config = await (0, cli_utils_1.getConfig)({ ...opts.cliOptions, dir }, { + excludeReporter: true, + rcOptionsTypes: installCommand.rcOptionsTypes(), + workspaceDir: await (0, find_workspace_dir_1.findWorkspaceDir)(dir) + }); + await (0, core_1.install)(await (0, cli_utils_1.readProjectManifestOnly)(dir, opts), { + ...config, + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(config.rootProjectManifest ?? {}), + include: { + dependencies: config.production !== false, + devDependencies: config.dev !== false, + optionalDependencies: config.optional !== false + }, + storeController: s.ctrl, + storeDir: s.dir, + workspacePackages + }); + }))); + if (pkgNames.length > 0) { + let globalPkgNames; + if (opts.workspaceDir) { + workspacePackagesArr = await (0, find_workspace_packages_1.findWorkspacePackages)(opts.workspaceDir, opts); + const pkgsFoundInWorkspace = workspacePackagesArr.filter(({ manifest: manifest2 }) => manifest2.name && pkgNames.includes(manifest2.name)); + pkgsFoundInWorkspace.forEach((pkgFromWorkspace) => pkgPaths.push(pkgFromWorkspace.dir)); + if (pkgsFoundInWorkspace.length > 0 && !linkOpts.targetDependenciesField) { + linkOpts.targetDependenciesField = "dependencies"; } + globalPkgNames = pkgNames.filter((pkgName) => !pkgsFoundInWorkspace.some((pkgFromWorkspace) => pkgFromWorkspace.manifest.name === pkgName)); + } else { + globalPkgNames = pkgNames; } - cb(er); + const globalPkgPath = (0, path_absolute_1.default)(opts.dir); + globalPkgNames.forEach((pkgName) => pkgPaths.push(path_1.default.join(globalPkgPath, "node_modules", pkgName))); + } + const { manifest, writeProjectManifest } = await (0, cli_utils_1.readProjectManifest)(linkCwdDir, opts); + const linkConfig = await (0, cli_utils_1.getConfig)({ ...opts.cliOptions, dir: cwd }, { + excludeReporter: true, + rcOptionsTypes: installCommand.rcOptionsTypes(), + workspaceDir: await (0, find_workspace_dir_1.findWorkspaceDir)(cwd) + }); + const storeL = await (0, store_connection_manager_1.createOrConnectStoreControllerCached)(storeControllerCache, linkConfig); + const newManifest = await (0, core_1.link)(pkgPaths, path_1.default.join(linkCwdDir, "node_modules"), { + ...linkConfig, + targetDependenciesField: linkOpts.targetDependenciesField, + storeController: storeL.ctrl, + storeDir: storeL.dir, + manifest + }); + if (!opts.cliOptions?.global) { + await writeProjectManifest(newManifest); } - chain([ - packageLifecycle && [runPackageLifecycle, pkg, stage, env, wd, opts], - [runHookLifecycle, pkg, stage, env, wd, opts] - ], done); + await Promise.all(Array.from(storeControllerCache.values()).map(async (storeControllerPromise) => { + const storeControllerHolder = await storeControllerPromise; + await storeControllerHolder.ctrl.close(); + })); } - function shouldPrependCurrentNodeDirToPATH(opts) { - const cfgsetting = opts.scriptsPrependNodePath; - if (cfgsetting === false) - return false; - if (cfgsetting === true) - return true; - let isDifferentNodeInPath; - const isWindows = process.platform === "win32"; - let foundExecPath; - try { - foundExecPath = which.sync(path.basename(process.execPath), { pathExt: isWindows ? ";" : ":" }); - isDifferentNodeInPath = fs.realpathSync(process.execPath).toUpperCase() !== fs.realpathSync(foundExecPath).toUpperCase(); - } catch (e) { - isDifferentNodeInPath = true; + exports2.handler = handler; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/prune.js +var require_prune3 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/prune.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (cfgsetting === "warn-only") { - if (isDifferentNodeInPath && !shouldPrependCurrentNodeDirToPATH.hasWarned) { - if (foundExecPath) { - opts.log.warn("lifecycle", "The node binary used for scripts is", foundExecPath, "but npm is using", process.execPath, "itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with."); - } else { - opts.log.warn("lifecycle", "npm is using", process.execPath, "but there is no node binary in the current PATH. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with."); - } - shouldPrependCurrentNodeDirToPATH.hasWarned = true; - } - return false; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - return isDifferentNodeInPath; + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var install = __importStar5(require_install2()); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return (0, pick_1.default)([ + "dev", + "optional", + "production" + ], config_1.types); } - function validWd(d, cb) { - fs.stat(d, (er, st) => { - if (er || !st.isDirectory()) { - const p = path.dirname(d); - if (p === d) { - return cb(new Error("Could not find suitable wd")); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["prune"]; + function help() { + return (0, render_help_1.default)({ + description: "Removes extraneous packages", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Remove the packages specified in `devDependencies`", + name: "--prod" + }, + { + description: "Remove the packages specified in `optionalDependencies`", + name: "--no-optional" + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] } - return validWd(p, cb); - } - return cb(null, d); + ], + url: (0, cli_utils_1.docsUrl)("prune"), + usages: ["pnpm prune [--prod]"] }); } - function runPackageLifecycle(pkg, stage, env, wd, opts, cb) { - const cmd = env.npm_lifecycle_script; - const note = ` -> ${pkg._id} ${stage} ${wd} -> ${cmd} -`; - runCmd(note, cmd, pkg, env, stage, wd, opts, cb); - } - var running = false; - var queue = []; - function dequeue() { - running = false; - if (queue.length) { - const r = queue.shift(); - runCmd.apply(null, r); - } + exports2.help = help; + async function handler(opts) { + return install.handler({ + ...opts, + modulesCacheMaxAge: 0, + pruneDirectDependencies: true, + pruneStore: true + }); } - function runCmd(note, cmd, pkg, env, stage, wd, opts, cb) { - if (opts.runConcurrently !== true) { - if (running) { - queue.push([note, cmd, pkg, env, stage, wd, opts, cb]); + exports2.handler = handler; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/flip.js +var require_flip = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/flip.js"(exports2, module2) { + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var flip = /* @__PURE__ */ _curry1(function flip2(fn2) { + return curryN(fn2.length, function(a, b) { + var args2 = Array.prototype.slice.call(arguments, 0); + args2[0] = b; + args2[1] = a; + return fn2.apply(this, args2); + }); + }); + module2.exports = flip; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/without.js +var require_without = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/without.js"(exports2, module2) { + var _includes = require_includes(); + var _curry2 = require_curry2(); + var flip = require_flip(); + var reject = require_reject(); + var without = /* @__PURE__ */ _curry2(function(xs, list) { + return reject(flip(_includes)(xs), list); + }); + module2.exports = without; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/remove.js +var require_remove3 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/remove.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.completion = exports2.commandNames = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var find_workspace_packages_1 = require_lib29(); + var manifest_utils_1 = require_lib26(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var pick_1 = __importDefault4(require_pick()); + var without_1 = __importDefault4(require_without()); + var render_help_1 = __importDefault4(require_lib34()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var getSaveType_1 = require_getSaveType(); + var recursive_1 = require_recursive2(); + var RemoveMissingDepsError = class extends error_1.PnpmError { + constructor(opts) { + let message2 = "Cannot remove "; + message2 += `${opts.nonMatchedDependencies.map((dep) => `'${dep}'`).join(", ")}: `; + if (opts.availableDependencies.length > 0) { + message2 += `no such ${opts.nonMatchedDependencies.length > 1 ? "dependencies" : "dependency"} `; + message2 += `found${opts.targetDependenciesField ? ` in '${opts.targetDependenciesField}'` : ""}`; + const hint = `Available dependencies: ${opts.availableDependencies.join(", ")}`; + super("CANNOT_REMOVE_MISSING_DEPS", message2, { hint }); return; } - running = true; - } - opts.log.pause(); - let unsafe = opts.unsafePerm; - const user = unsafe ? null : opts.user; - const group = unsafe ? null : opts.group; - if (opts.log.level !== "silent") { - opts.log.clearProgress(); - console.log(note); - opts.log.showProgress(); - } - opts.log.verbose("lifecycle", logid(pkg, stage), "unsafe-perm in lifecycle", unsafe); - if (process.platform === "win32") { - unsafe = true; - } - if (unsafe) { - runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, 0, 0, cb); - } else { - uidNumber(user, group, (er, uid, gid) => { - runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb); - }); + message2 += opts.targetDependenciesField ? `project has no '${opts.targetDependenciesField}'` : "project has no dependencies of any kind"; + super("CANNOT_REMOVE_MISSING_DEPS", message2); } + }; + function rcOptionsTypes() { + return (0, pick_1.default)([ + "cache-dir", + "global-dir", + "global-pnpmfile", + "global", + "lockfile-dir", + "lockfile-directory", + "lockfile-only", + "lockfile", + "node-linker", + "package-import-method", + "pnpmfile", + "reporter", + "save-dev", + "save-optional", + "save-prod", + "shared-workspace-lockfile", + "store", + "store-dir", + "strict-peer-dependencies", + "virtual-store-dir" + ], config_1.types); } - function runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb_) { - function cb(er) { - cb_.apply(null, arguments); - opts.log.resume(); - process.nextTick(dequeue); - } - const conf = { - cwd: wd, - env, - stdio: opts.stdio || [0, 1, 2] + exports2.rcOptionsTypes = rcOptionsTypes; + var cliOptionsTypes = () => ({ + ...rcOptionsTypes(), + ...(0, pick_1.default)(["force"], config_1.types), + recursive: Boolean + }); + exports2.cliOptionsTypes = cliOptionsTypes; + function help() { + return (0, render_help_1.default)({ + aliases: ["rm", "uninstall", "un"], + description: "Removes packages from `node_modules` and from the project's `package.json`.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Remove from every package found in subdirectories or from every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: 'Remove the dependency only from "devDependencies"', + name: "--save-dev", + shortAlias: "-D" + }, + { + description: 'Remove the dependency only from "optionalDependencies"', + name: "--save-optional", + shortAlias: "-O" + }, + { + description: 'Remove the dependency only from "dependencies"', + name: "--save-prod", + shortAlias: "-P" + }, + common_cli_options_help_1.OPTIONS.globalDir, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("remove"), + usages: ["pnpm remove [@]..."] + }); + } + exports2.help = help; + exports2.commandNames = ["remove", "uninstall", "rm", "un", "uni"]; + var completion = async (cliOpts, params) => { + return (0, cli_utils_1.readDepNameCompletions)(cliOpts.dir); + }; + exports2.completion = completion; + async function handler(opts, params) { + if (params.length === 0) + throw new error_1.PnpmError("MUST_REMOVE_SOMETHING", "At least one dependency name should be specified for removal"); + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + optionalDependencies: opts.optional !== false }; - if (!unsafe) { - conf.uid = uid ^ 0; - conf.gid = gid ^ 0; - } - let sh = "sh"; - let shFlag = "-c"; - const customShell = opts.scriptShell; - if (customShell) { - sh = customShell; - } else if (process.platform === "win32") { - sh = process.env.comspec || "cmd"; - shFlag = "/d /s /c"; - conf.windowsVerbatimArguments = true; - } - opts.log.verbose("lifecycle", logid(pkg, stage), "PATH:", env[PATH]); - opts.log.verbose("lifecycle", logid(pkg, stage), "CWD:", wd); - opts.log.silly("lifecycle", logid(pkg, stage), "Args:", [shFlag, cmd]); - if (opts.shellEmulator) { - const execOpts = { cwd: wd, env }; - if (opts.stdio === "pipe") { - const stdout = new PassThrough(); - const stderr = new PassThrough(); - byline(stdout).on("data", (data) => { - opts.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString()); - }); - byline(stderr).on("data", (data) => { - opts.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString()); - }); - execOpts.stdout = stdout; - execOpts.stderr = stderr; - } - execute(cmd, [], execOpts).then((code) => { - opts.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code); - if (code) { - var er = new Error(`Exit status ${code}`); - er.errno = code; - } - procError(er); - }).catch((err) => procError(err)); + if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { + await (0, recursive_1.recursive)(opts.allProjects, params, { + ...opts, + allProjectsGraph: opts.allProjectsGraph, + include, + selectedProjectsGraph: opts.selectedProjectsGraph, + workspaceDir: opts.workspaceDir + }, "remove"); return; } - const proc = spawn(sh, [shFlag, cmd], conf, opts.log); - proc.on("error", procError); - proc.on("close", (code, signal) => { - opts.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code, " signal:", signal); - if (signal) { - process.kill(process.pid, signal); - } else if (code) { - var er = new Error(`Exit status ${code}`); - er.errno = code; - } - procError(er); - }); - byline(proc.stdout).on("data", (data) => { - opts.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString()); - }); - byline(proc.stderr).on("data", (data) => { - opts.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString()); + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const removeOpts = Object.assign(opts, { + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(opts.rootProjectManifest ?? {}), + storeController: store.ctrl, + storeDir: store.dir, + include }); - process.once("SIGTERM", procKill); - process.once("SIGINT", procInterupt); - process.on("exit", procKill); - function procError(er) { - if (er) { - opts.log.info("lifecycle", logid(pkg, stage), `Failed to exec ${stage} script`); - er.message = `${pkg._id} ${stage}: \`${cmd}\` -${er.message}`; - if (er.code !== "EPERM") { - er.code = "ELIFECYCLE"; - } - fs.stat(opts.dir, (statError, d) => { - if (statError && statError.code === "ENOENT" && opts.dir.split(path.sep).slice(-1)[0] === "node_modules") { - opts.log.warn("", "Local package.json exists, but node_modules missing, did you mean to install?"); - } - }); - er.pkgid = pkg._id; - er.stage = stage; - er.script = cmd; - er.pkgname = pkg.name; - } - process.removeListener("SIGTERM", procKill); - process.removeListener("SIGTERM", procInterupt); - process.removeListener("SIGINT", procKill); - return cb(er); - } - let called = false; - function procKill() { - if (called) - return; - called = true; - proc.kill(); - } - function procInterupt() { - proc.kill("SIGINT"); - proc.on("exit", () => { - process.exit(); + removeOpts["workspacePackages"] = opts.workspaceDir ? (0, find_workspace_packages_1.arrayOfWorkspacePackagesToMap)(await (0, find_workspace_packages_1.findWorkspacePackages)(opts.workspaceDir, opts)) : void 0; + const targetDependenciesField = (0, getSaveType_1.getSaveType)(opts); + const { manifest: currentManifest, writeProjectManifest } = await (0, cli_utils_1.readProjectManifest)(opts.dir, opts); + const availableDependencies = Object.keys(targetDependenciesField === void 0 ? (0, manifest_utils_1.getAllDependenciesFromManifest)(currentManifest) : currentManifest[targetDependenciesField] ?? {}); + const nonMatchedDependencies = (0, without_1.default)(availableDependencies, params); + if (nonMatchedDependencies.length !== 0) { + throw new RemoveMissingDepsError({ + availableDependencies, + nonMatchedDependencies, + targetDependenciesField }); - process.once("SIGINT", procKill); } + const mutationResult = await (0, core_1.mutateModulesInSingleProject)({ + binsDir: opts.bin, + dependencyNames: params, + manifest: currentManifest, + mutation: "uninstallSome", + rootDir: opts.dir, + targetDependenciesField + }, removeOpts); + await writeProjectManifest(mutationResult.manifest); } - function runHookLifecycle(pkg, stage, env, wd, opts, cb) { - hookStat(opts.dir, stage, (er) => { - if (er) - return cb(); - const cmd = path.join(opts.dir, ".hooks", stage); - const note = ` -> ${pkg._id} ${stage} ${wd} -> ${cmd}`; - runCmd(note, cmd, pkg, env, stage, wd, opts, cb); + exports2.handler = handler; + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/unlink.js +var require_unlink = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/unlink.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.rcOptionsTypes = exports2.cliOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var store_connection_manager_1 = require_lib106(); + var core_1 = require_lib140(); + var render_help_1 = __importDefault4(require_lib34()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var install_1 = require_install2(); + Object.defineProperty(exports2, "cliOptionsTypes", { enumerable: true, get: function() { + return install_1.cliOptionsTypes; + } }); + Object.defineProperty(exports2, "rcOptionsTypes", { enumerable: true, get: function() { + return install_1.rcOptionsTypes; + } }); + var recursive_1 = require_recursive2(); + exports2.commandNames = ["unlink", "dislink"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["dislink"], + description: "Removes the link created by `pnpm link` and reinstalls package if it is saved in `package.json`", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Unlink in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + } + ], + url: (0, cli_utils_1.docsUrl)("unlink"), + usages: [ + "pnpm unlink (in package dir)", + "pnpm unlink ..." + ] }); } - function makeEnv(data, opts, prefix, env) { - prefix = prefix || "npm_package_"; - if (!env) { - env = {}; - for (var i in process.env) { - if (!i.match(/^npm_/) && (!i.match(/^PATH$/i) || i === PATH)) { - env[i] = process.env[i]; - } - } - if (opts.production) - env.NODE_ENV = "production"; - } else if (!data.hasOwnProperty("_lifecycleEnv")) { - Object.defineProperty(data, "_lifecycleEnv", { - value: env, - enumerable: false - }); - } - if (opts.nodeOptions) - env.NODE_OPTIONS = opts.nodeOptions; - for (i in data) { - if (i.charAt(0) !== "_") { - const envKey = (prefix + i).replace(/[^a-zA-Z0-9_]/g, "_"); - if (i === "readme") { - continue; - } - if (data[i] && typeof data[i] === "object") { - try { - JSON.stringify(data[i]); - makeEnv(data[i], opts, `${envKey}_`, env); - } catch (ex) { - const d = data[i]; - makeEnv({ name: d.name, version: d.version, path: d.path }, opts, `${envKey}_`, env); - } - } else { - env[envKey] = String(data[i]); - env[envKey] = env[envKey].includes("\n") ? JSON.stringify(env[envKey]) : env[envKey]; - } - } + exports2.help = help; + async function handler(opts, params) { + if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { + await (0, recursive_1.recursive)(opts.allProjects, params, { + ...opts, + allProjectsGraph: opts.allProjectsGraph, + selectedProjectsGraph: opts.selectedProjectsGraph, + workspaceDir: opts.workspaceDir + }, "unlink"); + return; } - if (prefix !== "npm_package_") - return env; - prefix = "npm_config_"; - const pkgConfig = {}; - const pkgVerConfig = {}; - const namePref = `${data.name}:`; - const verPref = `${data.name}@${data.version}:`; - Object.keys(opts.config).forEach((i2) => { - if (i2.charAt(0) === "_" && i2.indexOf(`_${namePref}`) !== 0 || i2.match(/:_/)) { - return; - } - let value = opts.config[i2]; - if (value instanceof Stream || Array.isArray(value)) - return; - if (i2.match(/umask/)) - value = umask.toString(value); - if (!value) - value = ""; - else if (typeof value === "number") - value = `${value}`; - else if (typeof value !== "string") - value = JSON.stringify(value); - value = value.includes("\n") ? JSON.stringify(value) : value; - i2 = i2.replace(/^_+/, ""); - let k; - if (i2.indexOf(namePref) === 0) { - k = i2.substr(namePref.length).replace(/[^a-zA-Z0-9_]/g, "_"); - pkgConfig[k] = value; - } else if (i2.indexOf(verPref) === 0) { - k = i2.substr(verPref.length).replace(/[^a-zA-Z0-9_]/g, "_"); - pkgVerConfig[k] = value; - } - const envKey = (prefix + i2).replace(/[^a-zA-Z0-9_]/g, "_"); - env[envKey] = value; - }); - prefix = "npm_package_config_"; - [pkgConfig, pkgVerConfig].forEach((conf) => { - for (const i2 in conf) { - const envKey = prefix + i2; - env[envKey] = conf[i2]; - } + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const unlinkOpts = Object.assign(opts, { + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(opts.rootProjectManifest ?? {}), + globalBin: opts.bin, + storeController: store.ctrl, + storeDir: store.dir }); - return env; + if (!params || params.length === 0) { + await (0, core_1.mutateModulesInSingleProject)({ + dependencyNames: params, + manifest: await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, opts), + mutation: "unlinkSome", + rootDir: opts.dir + }, unlinkOpts); + return; + } + await (0, core_1.mutateModulesInSingleProject)({ + manifest: await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, opts), + mutation: "unlink", + rootDir: opts.dir + }, unlinkOpts); } + exports2.handler = handler; } }); -// ../lifecycle/lib/runLifecycleHook.js -var require_runLifecycleHook = __commonJS({ - "../lifecycle/lib/runLifecycleHook.js"(exports2) { +// ../reviewing/outdated/lib/createManifestGetter.js +var require_createManifestGetter = __commonJS({ + "../reviewing/outdated/lib/createManifestGetter.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var core_loggers_1 = require_lib12(); - var logger_1 = require_lib6(); - var npm_lifecycle_1 = __importDefault(require_npm_lifecycle()); - function noop() { + exports2.getManifest = exports2.createManifestGetter = void 0; + var client_1 = require_lib77(); + var pick_registry_for_package_1 = require_lib78(); + function createManifestGetter(opts) { + const resolve = (0, client_1.createResolver)({ ...opts, authConfig: opts.rawConfig }); + return getManifest.bind(null, resolve, opts); } - async function runLifecycleHook(stage, manifest, opts) { - var _a, _b, _c, _d, _e; - const optional = opts.optional === true; - const m = { _id: getId(manifest), ...manifest }; - m.scripts = { ...m.scripts }; - if (stage === "start" && !m.scripts.start) { - m.scripts.start = "node server.js"; + exports2.createManifestGetter = createManifestGetter; + async function getManifest(resolve, opts, packageName, pref) { + const resolution = await resolve({ alias: packageName, pref }, { + lockfileDir: opts.lockfileDir, + preferredVersions: {}, + projectDir: opts.dir, + registry: (0, pick_registry_for_package_1.pickRegistryForPackage)(opts.registries, packageName, pref) + }); + return resolution?.manifest ?? null; + } + exports2.getManifest = getManifest; + } +}); + +// ../reviewing/outdated/lib/outdated.js +var require_outdated = __commonJS({ + "../reviewing/outdated/lib/outdated.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - if (((_a = opts.args) === null || _a === void 0 ? void 0 : _a.length) && ((_b = m.scripts) === null || _b === void 0 ? void 0 : _b[stage])) { - m.scripts[stage] = `${m.scripts[stage]} ${opts.args.map((arg) => `"${arg}"`).join(" ")}`; + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - if (m.scripts[stage] === "npx only-allow pnpm") - return; - if (opts.stdio !== "inherit") { - core_loggers_1.lifecycleLogger.debug({ - depPath: opts.depPath, - optional, - script: m.scripts[stage], - stage, - wd: opts.pkgRoot - }); + __setModuleDefault4(result2, mod); + return result2; + }; + var __exportStar4 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding5(exports3, m, p); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.outdated = void 0; + var constants_1 = require_lib7(); + var error_1 = require_lib8(); + var lockfile_file_1 = require_lib87(); + var lockfile_utils_1 = require_lib84(); + var manifest_utils_1 = require_lib26(); + var npm_resolver_1 = require_lib72(); + var pick_registry_for_package_1 = require_lib78(); + var types_1 = require_lib25(); + var dp = __importStar5(require_lib81()); + var semver_12 = __importDefault4(require_semver2()); + var matcher_1 = require_lib19(); + __exportStar4(require_createManifestGetter(), exports2); + async function outdated(opts) { + if (packageHasNoDeps(opts.manifest)) + return []; + if (opts.wantedLockfile == null) { + throw new error_1.PnpmError("OUTDATED_NO_LOCKFILE", `No lockfile in directory "${opts.lockfileDir}". Run \`pnpm install\` to generate one.`); } - const logLevel = opts.stdio !== "inherit" || opts.silent ? "silent" : void 0; - await npm_lifecycle_1.default(m, stage, opts.pkgRoot, { - config: opts.rawConfig, - dir: opts.rootModulesDir, - extraBinPaths: (_c = opts.extraBinPaths) !== null && _c !== void 0 ? _c : [], - extraEnv: { - ...opts.extraEnv, - INIT_CWD: (_d = opts.initCwd) !== null && _d !== void 0 ? _d : process.cwd(), - PNPM_SCRIPT_SRC_DIR: opts.pkgRoot - }, - log: { - clearProgress: noop, - info: noop, - level: logLevel, - pause: noop, - resume: noop, - showProgress: noop, - silly: npmLog, - verbose: npmLog, - warn: (...msg) => logger_1.globalWarn(msg.join(" ")) - }, - runConcurrently: true, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - stdio: (_e = opts.stdio) !== null && _e !== void 0 ? _e : "pipe", - unsafePerm: opts.unsafePerm - }); - function npmLog(prefix, logid, stdtype, line) { - switch (stdtype) { - case "stdout": - case "stderr": - core_loggers_1.lifecycleLogger.debug({ - depPath: opts.depPath, - line: line.toString(), - stage, - stdio: stdtype, - wd: opts.pkgRoot - }); + const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(opts.manifest); + const importerId = (0, lockfile_file_1.getLockfileImporterId)(opts.lockfileDir, opts.prefix); + const currentLockfile = opts.currentLockfile ?? { importers: { [importerId]: {} } }; + const outdated2 = []; + const ignoreDependenciesMatcher = opts.ignoreDependencies?.length ? (0, matcher_1.createMatcher)(opts.ignoreDependencies) : void 0; + await Promise.all(types_1.DEPENDENCIES_FIELDS.map(async (depType) => { + if (opts.include?.[depType] === false || opts.wantedLockfile.importers[importerId][depType] == null) + return; + let pkgs = Object.keys(opts.wantedLockfile.importers[importerId][depType]); + if (opts.match != null) { + pkgs = pkgs.filter((pkgName) => opts.match(pkgName)); + } + await Promise.all(pkgs.map(async (alias) => { + if (!allDeps[alias]) return; - case "Returned: code:": { - if (opts.stdio === "inherit") { - return; + const ref = opts.wantedLockfile.importers[importerId][depType][alias]; + if (ref.startsWith("file:") || // ignoring linked packages. (For backward compatibility) + ignoreDependenciesMatcher?.(alias)) { + return; + } + const relativeDepPath = dp.refToRelative(ref, alias); + if (relativeDepPath === null) + return; + const pkgSnapshot = opts.wantedLockfile.packages?.[relativeDepPath]; + if (pkgSnapshot == null) { + throw new Error(`Invalid ${constants_1.WANTED_LOCKFILE} file. ${relativeDepPath} not found in packages field`); + } + const currentRef = currentLockfile.importers[importerId]?.[depType]?.[alias]; + const currentRelative = currentRef && dp.refToRelative(currentRef, alias); + const current = (currentRelative && dp.parse(currentRelative).version) ?? currentRef; + const wanted = dp.parse(relativeDepPath).version ?? ref; + const { name: packageName } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(relativeDepPath, pkgSnapshot); + const name = dp.parse(relativeDepPath).name ?? packageName; + if ((0, npm_resolver_1.parsePref)(allDeps[alias], alias, "latest", (0, pick_registry_for_package_1.pickRegistryForPackage)(opts.registries, name)) == null) { + if (current !== wanted) { + outdated2.push({ + alias, + belongsTo: depType, + current, + latestManifest: void 0, + packageName, + wanted + }); } - const code = arguments[3]; - core_loggers_1.lifecycleLogger.debug({ - depPath: opts.depPath, - exitCode: code, - optional, - stage, - wd: opts.pkgRoot + return; + } + const latestManifest = await opts.getLatestManifest(name, opts.compatible ? allDeps[name] ?? "latest" : "latest"); + if (latestManifest == null) + return; + if (!current) { + outdated2.push({ + alias, + belongsTo: depType, + latestManifest, + packageName, + wanted }); + return; } - } - } + if (current !== wanted || semver_12.default.lt(current, latestManifest.version) || latestManifest.deprecated) { + outdated2.push({ + alias, + belongsTo: depType, + current, + latestManifest, + packageName, + wanted + }); + } + })); + })); + return outdated2.sort((pkg1, pkg2) => pkg1.packageName.localeCompare(pkg2.packageName)); } - exports2.default = runLifecycleHook; - function getId(manifest) { - var _a, _b; - return `${(_a = manifest.name) !== null && _a !== void 0 ? _a : ""}@${(_b = manifest.version) !== null && _b !== void 0 ? _b : ""}`; + exports2.outdated = outdated; + function packageHasNoDeps(manifest) { + return (manifest.dependencies == null || isEmpty(manifest.dependencies)) && (manifest.devDependencies == null || isEmpty(manifest.devDependencies)) && (manifest.optionalDependencies == null || isEmpty(manifest.optionalDependencies)); + } + function isEmpty(obj) { + return Object.keys(obj).length === 0; } } }); -// ../../node_modules/.pnpm/run-groups@3.0.1/node_modules/run-groups/lib/index.js -var require_lib79 = __commonJS({ - "../../node_modules/.pnpm/run-groups@3.0.1/node_modules/run-groups/lib/index.js"(exports2) { +// ../reviewing/outdated/lib/outdatedDepsOfProjects.js +var require_outdatedDepsOfProjects = __commonJS({ + "../reviewing/outdated/lib/outdatedDepsOfProjects.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var pLimit = require_p_limit(); - exports2.default = async (concurrency, groups) => { - const limitRun = pLimit(concurrency); - for (const tasks of groups) { - await Promise.all(tasks.map((task) => limitRun(task))); - } + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.outdatedDepsOfProjects = void 0; + var path_1 = __importDefault4(require("path")); + var lockfile_file_1 = require_lib87(); + var matcher_1 = require_lib19(); + var modules_yaml_1 = require_lib88(); + var unnest_1 = __importDefault4(require_unnest()); + var createManifestGetter_1 = require_createManifestGetter(); + var outdated_1 = require_outdated(); + async function outdatedDepsOfProjects(pkgs, args2, opts) { + if (!opts.lockfileDir) { + return (0, unnest_1.default)(await Promise.all(pkgs.map(async (pkg) => outdatedDepsOfProjects([pkg], args2, { ...opts, lockfileDir: pkg.dir })))); + } + const lockfileDir = opts.lockfileDir ?? opts.dir; + const modules = await (0, modules_yaml_1.readModulesManifest)(path_1.default.join(lockfileDir, "node_modules")); + const virtualStoreDir = modules?.virtualStoreDir ?? path_1.default.join(lockfileDir, "node_modules/.pnpm"); + const currentLockfile = await (0, lockfile_file_1.readCurrentLockfile)(virtualStoreDir, { ignoreIncompatible: false }); + const wantedLockfile = await (0, lockfile_file_1.readWantedLockfile)(lockfileDir, { ignoreIncompatible: false }) ?? currentLockfile; + const getLatestManifest = (0, createManifestGetter_1.createManifestGetter)({ + ...opts, + fullMetadata: opts.fullMetadata === true, + lockfileDir + }); + return Promise.all(pkgs.map(async ({ dir, manifest }) => { + const match = args2.length > 0 && (0, matcher_1.createMatcher)(args2) || void 0; + return (0, outdated_1.outdated)({ + compatible: opts.compatible, + currentLockfile, + getLatestManifest, + ignoreDependencies: opts.ignoreDependencies, + include: opts.include, + lockfileDir, + manifest, + match, + prefix: dir, + registries: opts.registries, + wantedLockfile + }); + })); + } + exports2.outdatedDepsOfProjects = outdatedDepsOfProjects; } }); -// ../lifecycle/lib/runLifecycleHooksConcurrently.js -var require_runLifecycleHooksConcurrently = __commonJS({ - "../lifecycle/lib/runLifecycleHooksConcurrently.js"(exports2) { +// ../reviewing/outdated/lib/index.js +var require_lib143 = __commonJS({ + "../reviewing/outdated/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.outdatedDepsOfProjects = void 0; + var outdatedDepsOfProjects_1 = require_outdatedDepsOfProjects(); + Object.defineProperty(exports2, "outdatedDepsOfProjects", { enumerable: true, get: function() { + return outdatedDepsOfProjects_1.outdatedDepsOfProjects; + } }); + } +}); + +// ../node_modules/.pnpm/@pnpm+colorize-semver-diff@1.0.1/node_modules/@pnpm/colorize-semver-diff/lib/index.js +var require_lib144 = __commonJS({ + "../node_modules/.pnpm/@pnpm+colorize-semver-diff@1.0.1/node_modules/@pnpm/colorize-semver-diff/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var chalk = require_source(); + var DIFF_COLORS = { + feature: chalk.yellowBright.bold, + fix: chalk.greenBright.bold }; + function colorizeSemverDiff(semverDiff) { + var _a; + if (!semverDiff) { + throw new TypeError("semverDiff must be defined"); + } + if (typeof semverDiff.change !== "string") { + throw new TypeError("semverDiff.change must be defined"); + } + const highlight = (_a = DIFF_COLORS[semverDiff.change]) !== null && _a !== void 0 ? _a : chalk.redBright.bold; + const same = joinVersionTuples(semverDiff.diff[0], 0); + const other = highlight(joinVersionTuples(semverDiff.diff[1], semverDiff.diff[0].length)); + if (!same) + return other; + if (!other) { + return same; + } + return semverDiff.diff[0].length === 3 ? `${same}-${other}` : `${same}.${other}`; + } + exports2.default = colorizeSemverDiff; + function joinVersionTuples(versionTuples, startIndex) { + const neededForSemver = 3 - startIndex; + if (versionTuples.length <= neededForSemver || neededForSemver <= 0) { + return versionTuples.join("."); + } + return `${versionTuples.slice(0, neededForSemver).join(".")}-${versionTuples.slice(neededForSemver).join(".")}`; + } + } +}); + +// ../node_modules/.pnpm/@pnpm+semver-diff@1.1.0/node_modules/@pnpm/semver-diff/lib/index.js +var require_lib145 = __commonJS({ + "../node_modules/.pnpm/@pnpm+semver-diff@1.1.0/node_modules/@pnpm/semver-diff/lib/index.js"(exports2) { + "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - var run_groups_1 = __importDefault(require_lib79()); - var runLifecycleHook_1 = __importDefault(require_runLifecycleHook()); - async function runLifecycleHooksConcurrently(stages, importers, childConcurrency, opts) { - const importersByBuildIndex = new Map(); - for (const importer of importers) { - if (!importersByBuildIndex.has(importer.buildIndex)) { - importersByBuildIndex.set(importer.buildIndex, [importer]); - } else { - importersByBuildIndex.get(importer.buildIndex).push(importer); + var SEMVER_CHANGE_BY_TUPLE_NUMBER = ["breaking", "feature", "fix"]; + function semverDiff(version1, version2) { + if (version1 === version2) { + return { + change: null, + diff: [parseVersion(version1), []] + }; + } + const [version1Prefix, version1Semver] = parsePrefix(version1); + const [version2Prefix, version2Semver] = parsePrefix(version2); + if (version1Prefix !== version2Prefix) { + const { change: change2 } = semverDiff(version1Semver, version2Semver); + return { + change: change2, + diff: [[], parseVersion(version2)] + }; + } + const version1Tuples = parseVersion(version1); + const version2Tuples = parseVersion(version2); + const same = []; + let change = "unknown"; + const maxTuples = Math.max(version1Tuples.length, version2Tuples.length); + let unstable = version1Tuples[0] === "0" || version2Tuples[0] === "0" || maxTuples > 3; + for (let i = 0; i < maxTuples; i++) { + if (version1Tuples[i] === version2Tuples[i]) { + same.push(version1Tuples[i]); + continue; + } + if (unstable === false) { + change = SEMVER_CHANGE_BY_TUPLE_NUMBER[i] || "unknown"; } + return { + change, + diff: [same, version2Tuples.slice(i)] + }; + } + return { + change, + diff: [same, []] + }; + } + exports2.default = semverDiff; + function parsePrefix(version2) { + if (version2.startsWith("~") || version2.startsWith("^")) { + return [version2[0], version2.substr(1)]; + } + return ["", version2]; + } + function parseVersion(version2) { + const dashIndex = version2.indexOf("-"); + let normalVersion; + let prereleaseVersion; + if (dashIndex === -1) { + normalVersion = version2; + } else { + normalVersion = version2.substr(0, dashIndex); + prereleaseVersion = version2.substr(dashIndex + 1); } - const sortedBuildIndexes = Array.from(importersByBuildIndex.keys()).sort(); - const groups = sortedBuildIndexes.map((buildIndex) => { - const importers2 = importersByBuildIndex.get(buildIndex); - return importers2.map(({ manifest, modulesDir, rootDir }) => async () => { - const runLifecycleHookOpts = { - ...opts, - depPath: rootDir, - pkgRoot: rootDir, - rootModulesDir: modulesDir - }; - for (const stage of stages) { - if (manifest.scripts == null || !manifest.scripts[stage]) - continue; - await runLifecycleHook_1.default(stage, manifest, runLifecycleHookOpts); - } - }); - }); - await run_groups_1.default(childConcurrency, groups); + return [ + ...normalVersion.split("."), + ...typeof prereleaseVersion !== "undefined" ? prereleaseVersion.split(".") : [] + ]; } - exports2.default = runLifecycleHooksConcurrently; } }); -// ../lifecycle/lib/index.js -var require_lib80 = __commonJS({ - "../lifecycle/lib/index.js"(exports2) { +// ../pkg-manager/plugin-commands-installation/lib/update/getUpdateChoices.js +var require_getUpdateChoices = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/update/getUpdateChoices.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.runPostinstallHooks = exports2.runLifecycleHooksConcurrently = exports2.makeNodeRequireOption = void 0; - var path_1 = __importDefault(require("path")); - var read_package_json_1 = require_lib32(); - var path_exists_1 = __importDefault(require_path_exists()); - var runLifecycleHook_1 = __importDefault(require_runLifecycleHook()); - var runLifecycleHooksConcurrently_1 = __importDefault(require_runLifecycleHooksConcurrently()); - exports2.runLifecycleHooksConcurrently = runLifecycleHooksConcurrently_1.default; - function makeNodeRequireOption(modulePath) { - let { NODE_OPTIONS } = process.env; - NODE_OPTIONS = `${NODE_OPTIONS !== null && NODE_OPTIONS !== void 0 ? NODE_OPTIONS : ""} --require=${modulePath}`.trim(); - return { NODE_OPTIONS }; - } - exports2.makeNodeRequireOption = makeNodeRequireOption; - exports2.default = runLifecycleHook_1.default; - async function runPostinstallHooks(opts) { - const pkg = await read_package_json_1.fromDir(opts.pkgRoot); - if (pkg.scripts == null) { - pkg.scripts = {}; - } - if (!pkg.scripts.install) { - await checkBindingGyp(opts.pkgRoot, pkg.scripts); - } - if (pkg.scripts.preinstall) { - await runLifecycleHook_1.default("preinstall", pkg, opts); - } - if (pkg.scripts.install) { - await runLifecycleHook_1.default("install", pkg, opts); + exports2.getUpdateChoices = void 0; + var colorize_semver_diff_1 = __importDefault4(require_lib144()); + var semver_diff_1 = __importDefault4(require_lib145()); + var table_1 = require_src6(); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var unnest_1 = __importDefault4(require_unnest()); + function getUpdateChoices(outdatedPkgsOfProjects) { + const allOutdatedPkgs = mergeOutdatedPkgs(outdatedPkgsOfProjects); + if ((0, isEmpty_1.default)(allOutdatedPkgs)) { + return []; } - if (pkg.scripts.postinstall) { - await runLifecycleHook_1.default("postinstall", pkg, opts); + const rowsGroupedByPkgs = Object.entries(allOutdatedPkgs).sort(([pkgName1], [pkgName2]) => pkgName1.localeCompare(pkgName2)).map(([pkgName, outdatedPkgs]) => ({ + pkgName, + rows: outdatedPkgsRows(Object.values(outdatedPkgs)) + })); + const renderedTable = alignColumns((0, unnest_1.default)(rowsGroupedByPkgs.map(({ rows }) => rows))); + const choices = []; + let i = 0; + for (const { pkgName, rows } of rowsGroupedByPkgs) { + choices.push({ + message: renderedTable.slice(i, i + rows.length).join("\n "), + name: pkgName + }); + i += rows.length; } - return pkg.scripts.preinstall != null || pkg.scripts.install != null || pkg.scripts.postinstall != null; + return choices; } - exports2.runPostinstallHooks = runPostinstallHooks; - async function checkBindingGyp(root, scripts) { - if (await path_exists_1.default(path_1.default.join(root, "binding.gyp"))) { - scripts["install"] = "node-gyp rebuild"; + exports2.getUpdateChoices = getUpdateChoices; + function mergeOutdatedPkgs(outdatedPkgs) { + const allOutdatedPkgs = {}; + for (const outdatedPkg of outdatedPkgs) { + if (!allOutdatedPkgs[outdatedPkg.packageName]) { + allOutdatedPkgs[outdatedPkg.packageName] = {}; + } + const key = JSON.stringify([ + outdatedPkg.latestManifest?.version, + outdatedPkg.current + ]); + if (!allOutdatedPkgs[outdatedPkg.packageName][key]) { + allOutdatedPkgs[outdatedPkg.packageName][key] = outdatedPkg; + continue; + } + if (allOutdatedPkgs[outdatedPkg.packageName][key].belongsTo === "dependencies") + continue; + if (outdatedPkg.belongsTo !== "devDependencies") { + allOutdatedPkgs[outdatedPkg.packageName][key].belongsTo = outdatedPkg.belongsTo; + } } + return allOutdatedPkgs; + } + function outdatedPkgsRows(outdatedPkgs) { + return outdatedPkgs.map((outdatedPkg) => { + const sdiff = (0, semver_diff_1.default)(outdatedPkg.wanted, outdatedPkg.latestManifest.version); + const nextVersion = sdiff.change === null ? outdatedPkg.latestManifest.version : (0, colorize_semver_diff_1.default)(sdiff); + let label = outdatedPkg.packageName; + switch (outdatedPkg.belongsTo) { + case "devDependencies": { + label += " (dev)"; + break; + } + case "optionalDependencies": { + label += " (optional)"; + break; + } + } + return [label, outdatedPkg.current, "\u276F", nextVersion]; + }); + } + function alignColumns(rows) { + return (0, table_1.table)(rows, { + border: (0, table_1.getBorderCharacters)("void"), + columnDefault: { + paddingLeft: 0, + paddingRight: 1 + }, + columns: { + 1: { alignment: "right" } + }, + drawHorizontalLine: () => false + }).split("\n"); } } }); -// ../../node_modules/.pnpm/array-flatten@2.1.2/node_modules/array-flatten/array-flatten.js -var require_array_flatten = __commonJS({ - "../../node_modules/.pnpm/array-flatten@2.1.2/node_modules/array-flatten/array-flatten.js"(exports2, module2) { +// ../pkg-manager/plugin-commands-installation/lib/update/index.js +var require_update2 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/update/index.js"(exports2) { "use strict"; - module2.exports = flatten; - module2.exports.from = flattenFrom; - module2.exports.depth = flattenDepth; - module2.exports.fromDepth = flattenFromDepth; - function flatten(array) { - if (!Array.isArray(array)) { - throw new TypeError("Expected value to be an array"); - } - return flattenFrom(array); + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.completion = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var logger_1 = require_lib6(); + var matcher_1 = require_lib19(); + var outdated_1 = require_lib143(); + var enquirer_1 = require_enquirer(); + var chalk_1 = __importDefault4(require_source()); + var pick_1 = __importDefault4(require_pick()); + var unnest_1 = __importDefault4(require_unnest()); + var render_help_1 = __importDefault4(require_lib34()); + var installDeps_1 = require_installDeps(); + var getUpdateChoices_1 = require_getUpdateChoices(); + function rcOptionsTypes() { + return (0, pick_1.default)([ + "cache-dir", + "depth", + "dev", + "engine-strict", + "fetch-retries", + "fetch-retry-factor", + "fetch-retry-maxtimeout", + "fetch-retry-mintimeout", + "fetch-timeout", + "force", + "global-dir", + "global-pnpmfile", + "global", + "https-proxy", + "ignore-pnpmfile", + "ignore-scripts", + "lockfile-dir", + "lockfile-directory", + "lockfile-only", + "lockfile", + "lockfile-include-tarball-url", + "network-concurrency", + "noproxy", + "npmPath", + "offline", + "only", + "optional", + "package-import-method", + "pnpmfile", + "prefer-offline", + "production", + "proxy", + "registry", + "reporter", + "save", + "save-exact", + "save-prefix", + "save-workspace-protocol", + "scripts-prepend-node-path", + "shamefully-flatten", + "shamefully-hoist", + "shared-workspace-lockfile", + "side-effects-cache-readonly", + "side-effects-cache", + "store", + "store-dir", + "unsafe-perm", + "use-running-store-server" + ], config_1.types); } - function flattenFrom(array) { - return flattenDown(array, []); + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + ...rcOptionsTypes(), + interactive: Boolean, + latest: Boolean, + recursive: Boolean, + workspace: Boolean + }; } - function flattenDepth(array, depth) { - if (!Array.isArray(array)) { - throw new TypeError("Expected value to be an array"); - } - return flattenFromDepth(array, depth); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production" + }; + exports2.commandNames = ["update", "up", "upgrade"]; + var completion = async (cliOpts) => { + return (0, cli_utils_1.readDepNameCompletions)(cliOpts.dir); + }; + exports2.completion = completion; + function help() { + return (0, render_help_1.default)({ + aliases: ["up", "upgrade"], + description: 'Updates packages to their latest version based on the specified range. You can use "*" in package name to update all packages with the same pattern.', + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Update in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: "Update globally installed packages", + name: "--global", + shortAlias: "-g" + }, + { + description: "How deep should levels of dependencies be inspected. Infinity is default. 0 would mean top-level dependencies only", + name: "--depth " + }, + { + description: "Ignore version ranges in package.json", + name: "--latest", + shortAlias: "-L" + }, + { + description: 'Update packages only in "dependencies" and "optionalDependencies"', + name: "--prod", + shortAlias: "-P" + }, + { + description: 'Update packages only in "devDependencies"', + name: "--dev", + shortAlias: "-D" + }, + { + description: `Don't update packages in "optionalDependencies"`, + name: "--no-optional" + }, + { + description: "Tries to link all packages from the workspace. Versions are updated to match the versions of packages inside the workspace. If specific packages are updated, the command will fail if any of the updated dependencies is not found inside the workspace", + name: "--workspace" + }, + { + description: "Show outdated dependencies and select which ones to update", + name: "--interactive", + shortAlias: "-i" + }, + common_cli_options_help_1.OPTIONS.globalDir, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("update"), + usages: ["pnpm update [-g] [...]"] + }); } - function flattenFromDepth(array, depth) { - if (typeof depth !== "number") { - throw new TypeError("Expected the depth to be a number"); + exports2.help = help; + async function handler(opts, params = []) { + if (opts.interactive) { + return interactiveUpdate(params, opts); } - return flattenDownDepth(array, [], depth); + return update(params, opts); } - function flattenDown(array, result) { - for (var i = 0; i < array.length; i++) { - var value = array[i]; - if (Array.isArray(value)) { - flattenDown(value, result); - } else { - result.push(value); + exports2.handler = handler; + async function interactiveUpdate(input, opts) { + const include = makeIncludeDependenciesFromCLI(opts.cliOptions); + const projects = opts.selectedProjectsGraph != null ? Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package) : [ + { + dir: opts.dir, + manifest: await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, opts) } - } - return result; - } - function flattenDownDepth(array, result, depth) { - depth--; - for (var i = 0; i < array.length; i++) { - var value = array[i]; - if (depth > -1 && Array.isArray(value)) { - flattenDownDepth(value, result, depth); - } else { - result.push(value); + ]; + const rootDir = opts.workspaceDir ?? opts.dir; + const rootProject = projects.find((project) => project.dir === rootDir); + const outdatedPkgsOfProjects = await (0, outdated_1.outdatedDepsOfProjects)(projects, input, { + ...opts, + compatible: opts.latest !== true, + ignoreDependencies: rootProject?.manifest?.pnpm?.updateConfig?.ignoreDependencies, + include, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + timeout: opts.fetchTimeout + }); + const choices = (0, getUpdateChoices_1.getUpdateChoices)((0, unnest_1.default)(outdatedPkgsOfProjects)); + if (choices.length === 0) { + if (opts.latest) { + return "All of your dependencies are already up to date"; } + return "All of your dependencies are already up to date inside the specified ranges. Use the --latest option to update the ranges in package.json"; } - return result; + const { updateDependencies } = await (0, enquirer_1.prompt)({ + choices, + footer: "\nEnter to start updating. Ctrl-c to cancel.", + indicator(state, choice) { + return ` ${choice.enabled ? "\u25CF" : "\u25CB"}`; + }, + message: `Choose which packages to update (Press ${chalk_1.default.cyan("")} to select, ${chalk_1.default.cyan("")} to toggle all, ${chalk_1.default.cyan("")} to invert selection)`, + name: "updateDependencies", + pointer: "\u276F", + styles: { + dark: chalk_1.default.white, + em: chalk_1.default.bgBlack.whiteBright, + success: chalk_1.default.white + }, + type: "multiselect", + validate(value) { + if (value.length === 0) { + return "You must choose at least one package."; + } + return true; + }, + // For Vim users (related: https://github.com/enquirer/enquirer/pull/163) + j() { + return this.down(); + }, + k() { + return this.up(); + }, + cancel() { + (0, logger_1.globalInfo)("Update canceled"); + } + }); + return update(updateDependencies, opts); + } + async function update(dependencies, opts) { + const includeDirect = makeIncludeDependenciesFromCLI(opts.cliOptions); + const include = { + dependencies: opts.rawConfig.production !== false, + devDependencies: opts.rawConfig.dev !== false, + optionalDependencies: opts.rawConfig.optional !== false + }; + const depth = opts.depth ?? Infinity; + return (0, installDeps_1.installDeps)({ + ...opts, + allowNew: false, + depth, + ignoreCurrentPrefs: false, + includeDirect, + include, + update: true, + updateMatching: dependencies.length > 0 && dependencies.every((dep) => !dep.substring(1).includes("@")) && depth > 0 && !opts.latest ? (0, matcher_1.createMatcher)(dependencies) : void 0, + updatePackageManifest: opts.save !== false, + resolutionMode: opts.save === false ? "highest" : opts.resolutionMode + }, dependencies); + } + function makeIncludeDependenciesFromCLI(opts) { + return { + dependencies: opts.production === true || opts.dev !== true && opts.optional !== true, + devDependencies: opts.dev === true || opts.production !== true && opts.optional !== true, + optionalDependencies: opts.optional === true || opts.production !== true && opts.dev !== true + }; } } }); -// ../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/isArguments.js -var require_isArguments3 = __commonJS({ - "../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/isArguments.js"(exports2, module2) { - "use strict"; - var toStr = Object.prototype.toString; - module2.exports = function isArguments(value) { - var str = toStr.call(value); - var isArgs = str === "[object Arguments]"; - if (!isArgs) { - isArgs = str !== "[object Array]" && value !== null && typeof value === "object" && typeof value.length === "number" && value.length >= 0 && toStr.call(value.callee) === "[object Function]"; +// ../node_modules/.pnpm/@yarnpkg+lockfile@1.1.0/node_modules/@yarnpkg/lockfile/index.js +var require_lockfile = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+lockfile@1.1.0/node_modules/@yarnpkg/lockfile/index.js"(exports2, module2) { + module2.exports = /******/ + function(modules) { + var installedModules = {}; + function __webpack_require__(moduleId) { + if (installedModules[moduleId]) { + return installedModules[moduleId].exports; + } + var module3 = installedModules[moduleId] = { + /******/ + i: moduleId, + /******/ + l: false, + /******/ + exports: {} + /******/ + }; + modules[moduleId].call(module3.exports, module3, module3.exports, __webpack_require__); + module3.l = true; + return module3.exports; } - return isArgs; - }; - } -}); - -// ../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/implementation.js -var require_implementation2 = __commonJS({ - "../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/implementation.js"(exports2, module2) { - "use strict"; - var keysShim; - if (!Object.keys) { - has = Object.prototype.hasOwnProperty; - toStr = Object.prototype.toString; - isArgs = require_isArguments3(); - isEnumerable = Object.prototype.propertyIsEnumerable; - hasDontEnumBug = !isEnumerable.call({ toString: null }, "toString"); - hasProtoEnumBug = isEnumerable.call(function() { - }, "prototype"); - dontEnums = [ - "toString", - "toLocaleString", - "valueOf", - "hasOwnProperty", - "isPrototypeOf", - "propertyIsEnumerable", - "constructor" - ]; - equalsConstructorPrototype = function(o) { - var ctor = o.constructor; - return ctor && ctor.prototype === o; + __webpack_require__.m = modules; + __webpack_require__.c = installedModules; + __webpack_require__.i = function(value) { + return value; }; - excludedKeys = { - $applicationCache: true, - $console: true, - $external: true, - $frame: true, - $frameElement: true, - $frames: true, - $innerHeight: true, - $innerWidth: true, - $onmozfullscreenchange: true, - $onmozfullscreenerror: true, - $outerHeight: true, - $outerWidth: true, - $pageXOffset: true, - $pageYOffset: true, - $parent: true, - $scrollLeft: true, - $scrollTop: true, - $scrollX: true, - $scrollY: true, - $self: true, - $webkitIndexedDB: true, - $webkitStorageInfo: true, - $window: true + __webpack_require__.d = function(exports3, name, getter) { + if (!__webpack_require__.o(exports3, name)) { + Object.defineProperty(exports3, name, { + /******/ + configurable: false, + /******/ + enumerable: true, + /******/ + get: getter + /******/ + }); + } }; - hasAutomationEqualityBug = function() { - if (typeof window === "undefined") { - return false; + __webpack_require__.n = function(module3) { + var getter = module3 && module3.__esModule ? ( + /******/ + function getDefault() { + return module3["default"]; + } + ) : ( + /******/ + function getModuleExports() { + return module3; + } + ); + __webpack_require__.d(getter, "a", getter); + return getter; + }; + __webpack_require__.o = function(object, property) { + return Object.prototype.hasOwnProperty.call(object, property); + }; + __webpack_require__.p = ""; + return __webpack_require__(__webpack_require__.s = 14); + }([ + /* 0 */ + /***/ + function(module3, exports3) { + module3.exports = require("path"); + }, + /* 1 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + exports3.__esModule = true; + var _promise = __webpack_require__(173); + var _promise2 = _interopRequireDefault(_promise); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; } - for (var k in window) { - try { - if (!excludedKeys["$" + k] && has.call(window, k) && window[k] !== null && typeof window[k] === "object") { - try { - equalsConstructorPrototype(window[k]); - } catch (e) { - return true; + exports3.default = function(fn2) { + return function() { + var gen = fn2.apply(this, arguments); + return new _promise2.default(function(resolve, reject) { + function step(key, arg) { + try { + var info = gen[key](arg); + var value = info.value; + } catch (error) { + reject(error); + return; + } + if (info.done) { + resolve(value); + } else { + return _promise2.default.resolve(value).then(function(value2) { + step("next", value2); + }, function(err) { + step("throw", err); + }); + } + } + return step("next"); + }); + }; + }; + }, + /* 2 */ + /***/ + function(module3, exports3) { + module3.exports = require("util"); + }, + /* 3 */ + /***/ + function(module3, exports3) { + module3.exports = require("fs"); + }, + /* 4 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + class MessageError extends Error { + constructor(msg, code) { + super(msg); + this.code = code; + } + } + exports3.MessageError = MessageError; + class ProcessSpawnError extends MessageError { + constructor(msg, code, process2) { + super(msg, code); + this.process = process2; + } + } + exports3.ProcessSpawnError = ProcessSpawnError; + class SecurityError extends MessageError { + } + exports3.SecurityError = SecurityError; + class ProcessTermError extends MessageError { + } + exports3.ProcessTermError = ProcessTermError; + class ResponseError extends Error { + constructor(msg, responseCode) { + super(msg); + this.responseCode = responseCode; + } + } + exports3.ResponseError = ResponseError; + }, + /* 5 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.getFirstSuitableFolder = exports3.readFirstAvailableStream = exports3.makeTempDir = exports3.hardlinksWork = exports3.writeFilePreservingEol = exports3.getFileSizeOnDisk = exports3.walk = exports3.symlink = exports3.find = exports3.readJsonAndFile = exports3.readJson = exports3.readFileAny = exports3.hardlinkBulk = exports3.copyBulk = exports3.unlink = exports3.glob = exports3.link = exports3.chmod = exports3.lstat = exports3.exists = exports3.mkdirp = exports3.stat = exports3.access = exports3.rename = exports3.readdir = exports3.realpath = exports3.readlink = exports3.writeFile = exports3.open = exports3.readFileBuffer = exports3.lockQueue = exports3.constants = void 0; + var _asyncToGenerator2; + function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); + } + let buildActionsForCopy = (() => { + var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { + let build = (() => { + var _ref5 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + const src = data.src, dest = data.dest, type = data.type; + const onFresh = data.onFresh || noop; + const onDone = data.onDone || noop; + if (files.has(dest.toLowerCase())) { + reporter.verbose(`The case-insensitive file ${dest} shouldn't be copied twice in one bulk copy`); + } else { + files.add(dest.toLowerCase()); + } + if (type === "symlink") { + yield mkdirp((_path || _load_path()).default.dirname(dest)); + onFresh(); + actions.symlink.push({ + dest, + linkname: src + }); + onDone(); + return; + } + if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { + return; + } + const srcStat = yield lstat(src); + let srcFiles; + if (srcStat.isDirectory()) { + srcFiles = yield readdir(src); + } + let destStat; + try { + destStat = yield lstat(dest); + } catch (e) { + if (e.code !== "ENOENT") { + throw e; + } + } + if (destStat) { + const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); + const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); + const bothFiles = srcStat.isFile() && destStat.isFile(); + if (bothFiles && artifactFiles.has(dest)) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkipArtifact", src)); + return; + } + if (bothFiles && srcStat.size === destStat.size && (0, (_fsNormalized || _load_fsNormalized()).fileDatesEqual)(srcStat.mtime, destStat.mtime)) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkip", src, dest, srcStat.size, +srcStat.mtime)); + return; + } + if (bothSymlinks) { + const srcReallink = yield readlink(src); + if (srcReallink === (yield readlink(dest))) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkipSymlink", src, dest, srcReallink)); + return; + } + } + if (bothFolders) { + const destFiles = yield readdir(dest); + invariant(srcFiles, "src files not initialised"); + for (var _iterator4 = destFiles, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator](); ; ) { + var _ref6; + if (_isArray4) { + if (_i4 >= _iterator4.length) + break; + _ref6 = _iterator4[_i4++]; + } else { + _i4 = _iterator4.next(); + if (_i4.done) + break; + _ref6 = _i4.value; + } + const file = _ref6; + if (srcFiles.indexOf(file) < 0) { + const loc = (_path || _load_path()).default.join(dest, file); + possibleExtraneous.add(loc); + if ((yield lstat(loc)).isDirectory()) { + for (var _iterator5 = yield readdir(loc), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator](); ; ) { + var _ref7; + if (_isArray5) { + if (_i5 >= _iterator5.length) + break; + _ref7 = _iterator5[_i5++]; + } else { + _i5 = _iterator5.next(); + if (_i5.done) + break; + _ref7 = _i5.value; + } + const file2 = _ref7; + possibleExtraneous.add((_path || _load_path()).default.join(loc, file2)); + } + } + } + } + } + } + if (destStat && destStat.isSymbolicLink()) { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); + destStat = null; + } + if (srcStat.isSymbolicLink()) { + onFresh(); + const linkname = yield readlink(src); + actions.symlink.push({ + dest, + linkname + }); + onDone(); + } else if (srcStat.isDirectory()) { + if (!destStat) { + reporter.verbose(reporter.lang("verboseFileFolder", dest)); + yield mkdirp(dest); + } + const destParts = dest.split((_path || _load_path()).default.sep); + while (destParts.length) { + files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); + destParts.pop(); + } + invariant(srcFiles, "src files not initialised"); + let remaining = srcFiles.length; + if (!remaining) { + onDone(); + } + for (var _iterator6 = srcFiles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator](); ; ) { + var _ref8; + if (_isArray6) { + if (_i6 >= _iterator6.length) + break; + _ref8 = _iterator6[_i6++]; + } else { + _i6 = _iterator6.next(); + if (_i6.done) + break; + _ref8 = _i6.value; + } + const file = _ref8; + queue.push({ + dest: (_path || _load_path()).default.join(dest, file), + onFresh, + onDone: function(_onDone) { + function onDone2() { + return _onDone.apply(this, arguments); + } + onDone2.toString = function() { + return _onDone.toString(); + }; + return onDone2; + }(function() { + if (--remaining === 0) { + onDone(); + } + }), + src: (_path || _load_path()).default.join(src, file) + }); + } + } else if (srcStat.isFile()) { + onFresh(); + actions.file.push({ + src, + dest, + atime: srcStat.atime, + mtime: srcStat.mtime, + mode: srcStat.mode + }); + onDone(); + } else { + throw new Error(`unsure how to copy this: ${src}`); + } + }); + return function build2(_x5) { + return _ref5.apply(this, arguments); + }; + })(); + const artifactFiles = new Set(events.artifactFiles || []); + const files = /* @__PURE__ */ new Set(); + for (var _iterator = queue, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { + var _ref2; + if (_isArray) { + if (_i >= _iterator.length) + break; + _ref2 = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) + break; + _ref2 = _i.value; + } + const item = _ref2; + const onDone = item.onDone; + item.onDone = function() { + events.onProgress(item.dest); + if (onDone) { + onDone(); + } + }; + } + events.onStart(queue.length); + const actions = { + file: [], + symlink: [], + link: [] + }; + while (queue.length) { + const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); + yield Promise.all(items.map(build)); + } + for (var _iterator2 = artifactFiles, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) { + var _ref3; + if (_isArray2) { + if (_i2 >= _iterator2.length) + break; + _ref3 = _iterator2[_i2++]; + } else { + _i2 = _iterator2.next(); + if (_i2.done) + break; + _ref3 = _i2.value; + } + const file = _ref3; + if (possibleExtraneous.has(file)) { + reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file)); + possibleExtraneous.delete(file); + } + } + for (var _iterator3 = possibleExtraneous, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator](); ; ) { + var _ref4; + if (_isArray3) { + if (_i3 >= _iterator3.length) + break; + _ref4 = _iterator3[_i3++]; + } else { + _i3 = _iterator3.next(); + if (_i3.done) + break; + _ref4 = _i3.value; + } + const loc = _ref4; + if (files.has(loc.toLowerCase())) { + possibleExtraneous.delete(loc); + } + } + return actions; + }); + return function buildActionsForCopy2(_x, _x2, _x3, _x4) { + return _ref.apply(this, arguments); + }; + })(); + let buildActionsForHardlink = (() => { + var _ref9 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { + let build = (() => { + var _ref13 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + const src = data.src, dest = data.dest; + const onFresh = data.onFresh || noop; + const onDone = data.onDone || noop; + if (files.has(dest.toLowerCase())) { + onDone(); + return; + } + files.add(dest.toLowerCase()); + if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { + return; + } + const srcStat = yield lstat(src); + let srcFiles; + if (srcStat.isDirectory()) { + srcFiles = yield readdir(src); + } + const destExists = yield exists(dest); + if (destExists) { + const destStat = yield lstat(dest); + const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); + const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); + const bothFiles = srcStat.isFile() && destStat.isFile(); + if (srcStat.mode !== destStat.mode) { + try { + yield access(dest, srcStat.mode); + } catch (err) { + reporter.verbose(err); + } + } + if (bothFiles && artifactFiles.has(dest)) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkipArtifact", src)); + return; + } + if (bothFiles && srcStat.ino !== null && srcStat.ino === destStat.ino) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkip", src, dest, srcStat.ino)); + return; + } + if (bothSymlinks) { + const srcReallink = yield readlink(src); + if (srcReallink === (yield readlink(dest))) { + onDone(); + reporter.verbose(reporter.lang("verboseFileSkipSymlink", src, dest, srcReallink)); + return; + } + } + if (bothFolders) { + const destFiles = yield readdir(dest); + invariant(srcFiles, "src files not initialised"); + for (var _iterator10 = destFiles, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator](); ; ) { + var _ref14; + if (_isArray10) { + if (_i10 >= _iterator10.length) + break; + _ref14 = _iterator10[_i10++]; + } else { + _i10 = _iterator10.next(); + if (_i10.done) + break; + _ref14 = _i10.value; + } + const file = _ref14; + if (srcFiles.indexOf(file) < 0) { + const loc = (_path || _load_path()).default.join(dest, file); + possibleExtraneous.add(loc); + if ((yield lstat(loc)).isDirectory()) { + for (var _iterator11 = yield readdir(loc), _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator](); ; ) { + var _ref15; + if (_isArray11) { + if (_i11 >= _iterator11.length) + break; + _ref15 = _iterator11[_i11++]; + } else { + _i11 = _iterator11.next(); + if (_i11.done) + break; + _ref15 = _i11.value; + } + const file2 = _ref15; + possibleExtraneous.add((_path || _load_path()).default.join(loc, file2)); + } + } + } + } + } + } + if (srcStat.isSymbolicLink()) { + onFresh(); + const linkname = yield readlink(src); + actions.symlink.push({ + dest, + linkname + }); + onDone(); + } else if (srcStat.isDirectory()) { + reporter.verbose(reporter.lang("verboseFileFolder", dest)); + yield mkdirp(dest); + const destParts = dest.split((_path || _load_path()).default.sep); + while (destParts.length) { + files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); + destParts.pop(); + } + invariant(srcFiles, "src files not initialised"); + let remaining = srcFiles.length; + if (!remaining) { + onDone(); + } + for (var _iterator12 = srcFiles, _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator](); ; ) { + var _ref16; + if (_isArray12) { + if (_i12 >= _iterator12.length) + break; + _ref16 = _iterator12[_i12++]; + } else { + _i12 = _iterator12.next(); + if (_i12.done) + break; + _ref16 = _i12.value; + } + const file = _ref16; + queue.push({ + onFresh, + src: (_path || _load_path()).default.join(src, file), + dest: (_path || _load_path()).default.join(dest, file), + onDone: function(_onDone2) { + function onDone2() { + return _onDone2.apply(this, arguments); + } + onDone2.toString = function() { + return _onDone2.toString(); + }; + return onDone2; + }(function() { + if (--remaining === 0) { + onDone(); + } + }) + }); + } + } else if (srcStat.isFile()) { + onFresh(); + actions.link.push({ + src, + dest, + removeDest: destExists + }); + onDone(); + } else { + throw new Error(`unsure how to copy this: ${src}`); + } + }); + return function build2(_x10) { + return _ref13.apply(this, arguments); + }; + })(); + const artifactFiles = new Set(events.artifactFiles || []); + const files = /* @__PURE__ */ new Set(); + for (var _iterator7 = queue, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator](); ; ) { + var _ref10; + if (_isArray7) { + if (_i7 >= _iterator7.length) + break; + _ref10 = _iterator7[_i7++]; + } else { + _i7 = _iterator7.next(); + if (_i7.done) + break; + _ref10 = _i7.value; + } + const item = _ref10; + const onDone = item.onDone || noop; + item.onDone = function() { + events.onProgress(item.dest); + onDone(); + }; + } + events.onStart(queue.length); + const actions = { + file: [], + symlink: [], + link: [] + }; + while (queue.length) { + const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); + yield Promise.all(items.map(build)); + } + for (var _iterator8 = artifactFiles, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator](); ; ) { + var _ref11; + if (_isArray8) { + if (_i8 >= _iterator8.length) + break; + _ref11 = _iterator8[_i8++]; + } else { + _i8 = _iterator8.next(); + if (_i8.done) + break; + _ref11 = _i8.value; + } + const file = _ref11; + if (possibleExtraneous.has(file)) { + reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file)); + possibleExtraneous.delete(file); + } + } + for (var _iterator9 = possibleExtraneous, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator](); ; ) { + var _ref12; + if (_isArray9) { + if (_i9 >= _iterator9.length) + break; + _ref12 = _iterator9[_i9++]; + } else { + _i9 = _iterator9.next(); + if (_i9.done) + break; + _ref12 = _i9.value; + } + const loc = _ref12; + if (files.has(loc.toLowerCase())) { + possibleExtraneous.delete(loc); + } + } + return actions; + }); + return function buildActionsForHardlink2(_x6, _x7, _x8, _x9) { + return _ref9.apply(this, arguments); + }; + })(); + let copyBulk = exports3.copyBulk = (() => { + var _ref17 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { + const events = { + onStart: _events && _events.onStart || noop, + onProgress: _events && _events.onProgress || noop, + possibleExtraneous: _events ? _events.possibleExtraneous : /* @__PURE__ */ new Set(), + ignoreBasenames: _events && _events.ignoreBasenames || [], + artifactFiles: _events && _events.artifactFiles || [] + }; + const actions = yield buildActionsForCopy(queue, events, events.possibleExtraneous, reporter); + events.onStart(actions.file.length + actions.symlink.length + actions.link.length); + const fileActions = actions.file; + const currentlyWriting = /* @__PURE__ */ new Map(); + yield (_promise || _load_promise()).queue(fileActions, (() => { + var _ref18 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + let writePromise; + while (writePromise = currentlyWriting.get(data.dest)) { + yield writePromise; + } + reporter.verbose(reporter.lang("verboseFileCopy", data.src, data.dest)); + const copier = (0, (_fsNormalized || _load_fsNormalized()).copyFile)(data, function() { + return currentlyWriting.delete(data.dest); + }); + currentlyWriting.set(data.dest, copier); + events.onProgress(data.dest); + return copier; + }); + return function(_x14) { + return _ref18.apply(this, arguments); + }; + })(), CONCURRENT_QUEUE_ITEMS); + const symlinkActions = actions.symlink; + yield (_promise || _load_promise()).queue(symlinkActions, function(data) { + const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); + reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname)); + return symlink(linkname, data.dest); + }); + }); + return function copyBulk2(_x11, _x12, _x13) { + return _ref17.apply(this, arguments); + }; + })(); + let hardlinkBulk = exports3.hardlinkBulk = (() => { + var _ref19 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { + const events = { + onStart: _events && _events.onStart || noop, + onProgress: _events && _events.onProgress || noop, + possibleExtraneous: _events ? _events.possibleExtraneous : /* @__PURE__ */ new Set(), + artifactFiles: _events && _events.artifactFiles || [], + ignoreBasenames: [] + }; + const actions = yield buildActionsForHardlink(queue, events, events.possibleExtraneous, reporter); + events.onStart(actions.file.length + actions.symlink.length + actions.link.length); + const fileActions = actions.link; + yield (_promise || _load_promise()).queue(fileActions, (() => { + var _ref20 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + reporter.verbose(reporter.lang("verboseFileLink", data.src, data.dest)); + if (data.removeDest) { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(data.dest); + } + yield link(data.src, data.dest); + }); + return function(_x18) { + return _ref20.apply(this, arguments); + }; + })(), CONCURRENT_QUEUE_ITEMS); + const symlinkActions = actions.symlink; + yield (_promise || _load_promise()).queue(symlinkActions, function(data) { + const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); + reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname)); + return symlink(linkname, data.dest); + }); + }); + return function hardlinkBulk2(_x15, _x16, _x17) { + return _ref19.apply(this, arguments); + }; + })(); + let readFileAny = exports3.readFileAny = (() => { + var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (files) { + for (var _iterator13 = files, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator](); ; ) { + var _ref22; + if (_isArray13) { + if (_i13 >= _iterator13.length) + break; + _ref22 = _iterator13[_i13++]; + } else { + _i13 = _iterator13.next(); + if (_i13.done) + break; + _ref22 = _i13.value; + } + const file = _ref22; + if (yield exists(file)) { + return readFile(file); } } - } catch (e) { - return true; - } - } - return false; - }(); - equalsConstructorPrototypeIfNotBuggy = function(o) { - if (typeof window === "undefined" || !hasAutomationEqualityBug) { - return equalsConstructorPrototype(o); - } - try { - return equalsConstructorPrototype(o); - } catch (e) { - return false; - } - }; - keysShim = function keys(object) { - var isObject = object !== null && typeof object === "object"; - var isFunction = toStr.call(object) === "[object Function]"; - var isArguments = isArgs(object); - var isString = isObject && toStr.call(object) === "[object String]"; - var theKeys = []; - if (!isObject && !isFunction && !isArguments) { - throw new TypeError("Object.keys called on a non-object"); - } - var skipProto = hasProtoEnumBug && isFunction; - if (isString && object.length > 0 && !has.call(object, 0)) { - for (var i = 0; i < object.length; ++i) { - theKeys.push(String(i)); - } - } - if (isArguments && object.length > 0) { - for (var j = 0; j < object.length; ++j) { - theKeys.push(String(j)); - } - } else { - for (var name in object) { - if (!(skipProto && name === "prototype") && has.call(object, name)) { - theKeys.push(String(name)); - } - } - } - if (hasDontEnumBug) { - var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); - for (var k = 0; k < dontEnums.length; ++k) { - if (!(skipConstructor && dontEnums[k] === "constructor") && has.call(object, dontEnums[k])) { - theKeys.push(dontEnums[k]); + return null; + }); + return function readFileAny2(_x19) { + return _ref21.apply(this, arguments); + }; + })(); + let readJson = exports3.readJson = (() => { + var _ref23 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + return (yield readJsonAndFile(loc)).object; + }); + return function readJson2(_x20) { + return _ref23.apply(this, arguments); + }; + })(); + let readJsonAndFile = exports3.readJsonAndFile = (() => { + var _ref24 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + const file = yield readFile(loc); + try { + return { + object: (0, (_map || _load_map()).default)(JSON.parse(stripBOM(file))), + content: file + }; + } catch (err) { + err.message = `${loc}: ${err.message}`; + throw err; } - } - } - return theKeys; - }; - } - var has; - var toStr; - var isArgs; - var isEnumerable; - var hasDontEnumBug; - var hasProtoEnumBug; - var dontEnums; - var equalsConstructorPrototype; - var excludedKeys; - var hasAutomationEqualityBug; - var equalsConstructorPrototypeIfNotBuggy; - module2.exports = keysShim; - } -}); - -// ../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/index.js -var require_object_keys = __commonJS({ - "../../node_modules/.pnpm/object-keys@1.1.1/node_modules/object-keys/index.js"(exports2, module2) { - "use strict"; - var slice = Array.prototype.slice; - var isArgs = require_isArguments3(); - var origKeys = Object.keys; - var keysShim = origKeys ? function keys(o) { - return origKeys(o); - } : require_implementation2(); - var originalKeys = Object.keys; - keysShim.shim = function shimObjectKeys() { - if (Object.keys) { - var keysWorksWithArguments = function() { - var args2 = Object.keys(arguments); - return args2 && args2.length === arguments.length; - }(1, 2); - if (!keysWorksWithArguments) { - Object.keys = function keys(object) { - if (isArgs(object)) { - return originalKeys(slice.call(object)); + }); + return function readJsonAndFile2(_x21) { + return _ref24.apply(this, arguments); + }; + })(); + let find = exports3.find = (() => { + var _ref25 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (filename, dir) { + const parts = dir.split((_path || _load_path()).default.sep); + while (parts.length) { + const loc = parts.concat(filename).join((_path || _load_path()).default.sep); + if (yield exists(loc)) { + return loc; + } else { + parts.pop(); + } } - return originalKeys(object); + return false; + }); + return function find2(_x22, _x23) { + return _ref25.apply(this, arguments); }; - } - } else { - Object.keys = keysShim; - } - return Object.keys || keysShim; - }; - module2.exports = keysShim; - } -}); - -// ../../node_modules/.pnpm/define-properties@1.1.3/node_modules/define-properties/index.js -var require_define_properties = __commonJS({ - "../../node_modules/.pnpm/define-properties@1.1.3/node_modules/define-properties/index.js"(exports2, module2) { - "use strict"; - var keys = require_object_keys(); - var hasSymbols = typeof Symbol === "function" && typeof Symbol("foo") === "symbol"; - var toStr = Object.prototype.toString; - var concat = Array.prototype.concat; - var origDefineProperty = Object.defineProperty; - var isFunction = function(fn2) { - return typeof fn2 === "function" && toStr.call(fn2) === "[object Function]"; - }; - var arePropertyDescriptorsSupported = function() { - var obj = {}; - try { - origDefineProperty(obj, "x", { enumerable: false, value: obj }); - for (var _ in obj) { - return false; - } - return obj.x === obj; - } catch (e) { - return false; - } - }; - var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported(); - var defineProperty = function(object, name, value, predicate) { - if (name in object && (!isFunction(predicate) || !predicate())) { - return; - } - if (supportsDescriptors) { - origDefineProperty(object, name, { - configurable: true, - enumerable: false, - value, - writable: true - }); - } else { - object[name] = value; - } - }; - var defineProperties = function(object, map) { - var predicates = arguments.length > 2 ? arguments[2] : {}; - var props = keys(map); - if (hasSymbols) { - props = concat.call(props, Object.getOwnPropertySymbols(map)); - } - for (var i = 0; i < props.length; i += 1) { - defineProperty(object, props[i], map[props[i]], predicates[props[i]]); - } - }; - defineProperties.supportsDescriptors = !!supportsDescriptors; - module2.exports = defineProperties; - } -}); - -// ../../node_modules/.pnpm/has-symbols@1.0.2/node_modules/has-symbols/shams.js -var require_shams = __commonJS({ - "../../node_modules/.pnpm/has-symbols@1.0.2/node_modules/has-symbols/shams.js"(exports2, module2) { - "use strict"; - module2.exports = function hasSymbols() { - if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { - return false; - } - if (typeof Symbol.iterator === "symbol") { - return true; - } - var obj = {}; - var sym = Symbol("test"); - var symObj = Object(sym); - if (typeof sym === "string") { - return false; - } - if (Object.prototype.toString.call(sym) !== "[object Symbol]") { - return false; - } - if (Object.prototype.toString.call(symObj) !== "[object Symbol]") { - return false; - } - var symVal = 42; - obj[sym] = symVal; - for (sym in obj) { - return false; - } - if (typeof Object.keys === "function" && Object.keys(obj).length !== 0) { - return false; - } - if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj).length !== 0) { - return false; - } - var syms = Object.getOwnPropertySymbols(obj); - if (syms.length !== 1 || syms[0] !== sym) { - return false; - } - if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { - return false; - } - if (typeof Object.getOwnPropertyDescriptor === "function") { - var descriptor = Object.getOwnPropertyDescriptor(obj, sym); - if (descriptor.value !== symVal || descriptor.enumerable !== true) { - return false; - } - } - return true; - }; - } -}); - -// ../../node_modules/.pnpm/has-symbols@1.0.2/node_modules/has-symbols/index.js -var require_has_symbols = __commonJS({ - "../../node_modules/.pnpm/has-symbols@1.0.2/node_modules/has-symbols/index.js"(exports2, module2) { - "use strict"; - var origSymbol = typeof Symbol !== "undefined" && Symbol; - var hasSymbolSham = require_shams(); - module2.exports = function hasNativeSymbols() { - if (typeof origSymbol !== "function") { - return false; - } - if (typeof Symbol !== "function") { - return false; - } - if (typeof origSymbol("foo") !== "symbol") { - return false; - } - if (typeof Symbol("bar") !== "symbol") { - return false; - } - return hasSymbolSham(); - }; - } -}); - -// ../../node_modules/.pnpm/get-intrinsic@1.1.1/node_modules/get-intrinsic/index.js -var require_get_intrinsic = __commonJS({ - "../../node_modules/.pnpm/get-intrinsic@1.1.1/node_modules/get-intrinsic/index.js"(exports2, module2) { - "use strict"; - var undefined2; - var $SyntaxError = SyntaxError; - var $Function = Function; - var $TypeError = TypeError; - var getEvalledConstructor = function(expressionSyntax) { - try { - return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")(); - } catch (e) { - } - }; - var $gOPD = Object.getOwnPropertyDescriptor; - if ($gOPD) { - try { - $gOPD({}, ""); - } catch (e) { - $gOPD = null; - } - } - var throwTypeError = function() { - throw new $TypeError(); - }; - var ThrowTypeError = $gOPD ? function() { - try { - arguments.callee; - return throwTypeError; - } catch (calleeThrows) { - try { - return $gOPD(arguments, "callee").get; - } catch (gOPDthrows) { - return throwTypeError; - } - } - }() : throwTypeError; - var hasSymbols = require_has_symbols()(); - var getProto = Object.getPrototypeOf || function(x) { - return x.__proto__; - }; - var needsEval = {}; - var TypedArray = typeof Uint8Array === "undefined" ? undefined2 : getProto(Uint8Array); - var INTRINSICS = { - "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError, - "%Array%": Array, - "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer, - "%ArrayIteratorPrototype%": hasSymbols ? getProto([][Symbol.iterator]()) : undefined2, - "%AsyncFromSyncIteratorPrototype%": undefined2, - "%AsyncFunction%": needsEval, - "%AsyncGenerator%": needsEval, - "%AsyncGeneratorFunction%": needsEval, - "%AsyncIteratorPrototype%": needsEval, - "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics, - "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt, - "%Boolean%": Boolean, - "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView, - "%Date%": Date, - "%decodeURI%": decodeURI, - "%decodeURIComponent%": decodeURIComponent, - "%encodeURI%": encodeURI, - "%encodeURIComponent%": encodeURIComponent, - "%Error%": Error, - "%eval%": eval, - "%EvalError%": EvalError, - "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, - "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, - "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, - "%Function%": $Function, - "%GeneratorFunction%": needsEval, - "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array, - "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array, - "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array, - "%isFinite%": isFinite, - "%isNaN%": isNaN, - "%IteratorPrototype%": hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined2, - "%JSON%": typeof JSON === "object" ? JSON : undefined2, - "%Map%": typeof Map === "undefined" ? undefined2 : Map, - "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols ? undefined2 : getProto(new Map()[Symbol.iterator]()), - "%Math%": Math, - "%Number%": Number, - "%Object%": Object, - "%parseFloat%": parseFloat, - "%parseInt%": parseInt, - "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, - "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy, - "%RangeError%": RangeError, - "%ReferenceError%": ReferenceError, - "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect, - "%RegExp%": RegExp, - "%Set%": typeof Set === "undefined" ? undefined2 : Set, - "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols ? undefined2 : getProto(new Set()[Symbol.iterator]()), - "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer, - "%String%": String, - "%StringIteratorPrototype%": hasSymbols ? getProto(""[Symbol.iterator]()) : undefined2, - "%Symbol%": hasSymbols ? Symbol : undefined2, - "%SyntaxError%": $SyntaxError, - "%ThrowTypeError%": ThrowTypeError, - "%TypedArray%": TypedArray, - "%TypeError%": $TypeError, - "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array, - "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray, - "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array, - "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array, - "%URIError%": URIError, - "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, - "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, - "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet - }; - var doEval = function doEval2(name) { - var value; - if (name === "%AsyncFunction%") { - value = getEvalledConstructor("async function () {}"); - } else if (name === "%GeneratorFunction%") { - value = getEvalledConstructor("function* () {}"); - } else if (name === "%AsyncGeneratorFunction%") { - value = getEvalledConstructor("async function* () {}"); - } else if (name === "%AsyncGenerator%") { - var fn2 = doEval2("%AsyncGeneratorFunction%"); - if (fn2) { - value = fn2.prototype; - } - } else if (name === "%AsyncIteratorPrototype%") { - var gen = doEval2("%AsyncGenerator%"); - if (gen) { - value = getProto(gen.prototype); - } - } - INTRINSICS[name] = value; - return value; - }; - var LEGACY_ALIASES = { - "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], - "%ArrayPrototype%": ["Array", "prototype"], - "%ArrayProto_entries%": ["Array", "prototype", "entries"], - "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], - "%ArrayProto_keys%": ["Array", "prototype", "keys"], - "%ArrayProto_values%": ["Array", "prototype", "values"], - "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], - "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], - "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], - "%BooleanPrototype%": ["Boolean", "prototype"], - "%DataViewPrototype%": ["DataView", "prototype"], - "%DatePrototype%": ["Date", "prototype"], - "%ErrorPrototype%": ["Error", "prototype"], - "%EvalErrorPrototype%": ["EvalError", "prototype"], - "%Float32ArrayPrototype%": ["Float32Array", "prototype"], - "%Float64ArrayPrototype%": ["Float64Array", "prototype"], - "%FunctionPrototype%": ["Function", "prototype"], - "%Generator%": ["GeneratorFunction", "prototype"], - "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], - "%Int8ArrayPrototype%": ["Int8Array", "prototype"], - "%Int16ArrayPrototype%": ["Int16Array", "prototype"], - "%Int32ArrayPrototype%": ["Int32Array", "prototype"], - "%JSONParse%": ["JSON", "parse"], - "%JSONStringify%": ["JSON", "stringify"], - "%MapPrototype%": ["Map", "prototype"], - "%NumberPrototype%": ["Number", "prototype"], - "%ObjectPrototype%": ["Object", "prototype"], - "%ObjProto_toString%": ["Object", "prototype", "toString"], - "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], - "%PromisePrototype%": ["Promise", "prototype"], - "%PromiseProto_then%": ["Promise", "prototype", "then"], - "%Promise_all%": ["Promise", "all"], - "%Promise_reject%": ["Promise", "reject"], - "%Promise_resolve%": ["Promise", "resolve"], - "%RangeErrorPrototype%": ["RangeError", "prototype"], - "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], - "%RegExpPrototype%": ["RegExp", "prototype"], - "%SetPrototype%": ["Set", "prototype"], - "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], - "%StringPrototype%": ["String", "prototype"], - "%SymbolPrototype%": ["Symbol", "prototype"], - "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], - "%TypedArrayPrototype%": ["TypedArray", "prototype"], - "%TypeErrorPrototype%": ["TypeError", "prototype"], - "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], - "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], - "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], - "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], - "%URIErrorPrototype%": ["URIError", "prototype"], - "%WeakMapPrototype%": ["WeakMap", "prototype"], - "%WeakSetPrototype%": ["WeakSet", "prototype"] - }; - var bind = require_function_bind(); - var hasOwn = require_src5(); - var $concat = bind.call(Function.call, Array.prototype.concat); - var $spliceApply = bind.call(Function.apply, Array.prototype.splice); - var $replace = bind.call(Function.call, String.prototype.replace); - var $strSlice = bind.call(Function.call, String.prototype.slice); - var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; - var reEscapeChar = /\\(\\)?/g; - var stringToPath = function stringToPath2(string) { - var first = $strSlice(string, 0, 1); - var last = $strSlice(string, -1); - if (first === "%" && last !== "%") { - throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`"); - } else if (last === "%" && first !== "%") { - throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`"); - } - var result = []; - $replace(string, rePropName, function(match, number, quote, subString) { - result[result.length] = quote ? $replace(subString, reEscapeChar, "$1") : number || match; - }); - return result; - }; - var getBaseIntrinsic = function getBaseIntrinsic2(name, allowMissing) { - var intrinsicName = name; - var alias; - if (hasOwn(LEGACY_ALIASES, intrinsicName)) { - alias = LEGACY_ALIASES[intrinsicName]; - intrinsicName = "%" + alias[0] + "%"; - } - if (hasOwn(INTRINSICS, intrinsicName)) { - var value = INTRINSICS[intrinsicName]; - if (value === needsEval) { - value = doEval(intrinsicName); - } - if (typeof value === "undefined" && !allowMissing) { - throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!"); - } - return { - alias, - name: intrinsicName, - value - }; - } - throw new $SyntaxError("intrinsic " + name + " does not exist!"); - }; - module2.exports = function GetIntrinsic(name, allowMissing) { - if (typeof name !== "string" || name.length === 0) { - throw new $TypeError("intrinsic name must be a non-empty string"); - } - if (arguments.length > 1 && typeof allowMissing !== "boolean") { - throw new $TypeError('"allowMissing" argument must be a boolean'); - } - var parts = stringToPath(name); - var intrinsicBaseName = parts.length > 0 ? parts[0] : ""; - var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing); - var intrinsicRealName = intrinsic.name; - var value = intrinsic.value; - var skipFurtherCaching = false; - var alias = intrinsic.alias; - if (alias) { - intrinsicBaseName = alias[0]; - $spliceApply(parts, $concat([0, 1], alias)); - } - for (var i = 1, isOwn = true; i < parts.length; i += 1) { - var part = parts[i]; - var first = $strSlice(part, 0, 1); - var last = $strSlice(part, -1); - if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) { - throw new $SyntaxError("property names with quotes must have matching quotes"); - } - if (part === "constructor" || !isOwn) { - skipFurtherCaching = true; - } - intrinsicBaseName += "." + part; - intrinsicRealName = "%" + intrinsicBaseName + "%"; - if (hasOwn(INTRINSICS, intrinsicRealName)) { - value = INTRINSICS[intrinsicRealName]; - } else if (value != null) { - if (!(part in value)) { - if (!allowMissing) { - throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available."); + })(); + let symlink = exports3.symlink = (() => { + var _ref26 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest) { + try { + const stats = yield lstat(dest); + if (stats.isSymbolicLink()) { + const resolved = yield realpath(dest); + if (resolved === src) { + return; + } + } + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } } - return void 0; - } - if ($gOPD && i + 1 >= parts.length) { - var desc = $gOPD(value, part); - isOwn = !!desc; - if (isOwn && "get" in desc && !("originalValue" in desc.get)) { - value = desc.get; + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); + if (process.platform === "win32") { + yield fsSymlink(src, dest, "junction"); } else { - value = value[part]; + let relative2; + try { + relative2 = (_path || _load_path()).default.relative((_fs || _load_fs()).default.realpathSync((_path || _load_path()).default.dirname(dest)), (_fs || _load_fs()).default.realpathSync(src)); + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + relative2 = (_path || _load_path()).default.relative((_path || _load_path()).default.dirname(dest), src); + } + yield fsSymlink(relative2 || ".", dest); } - } else { - isOwn = hasOwn(value, part); - value = value[part]; - } - if (isOwn && !skipFurtherCaching) { - INTRINSICS[intrinsicRealName] = value; - } - } - } - return value; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/CheckObjectCoercible.js -var require_CheckObjectCoercible = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/CheckObjectCoercible.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $TypeError = GetIntrinsic("%TypeError%"); - module2.exports = function CheckObjectCoercible(value, optMessage) { - if (value == null) { - throw new $TypeError(optMessage || "Cannot call method on " + value); - } - return value; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/RequireObjectCoercible.js -var require_RequireObjectCoercible = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/RequireObjectCoercible.js"(exports2, module2) { - "use strict"; - module2.exports = require_CheckObjectCoercible(); - } -}); - -// ../../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js -var require_call_bind = __commonJS({ - "../../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js"(exports2, module2) { - "use strict"; - var bind = require_function_bind(); - var GetIntrinsic = require_get_intrinsic(); - var $apply = GetIntrinsic("%Function.prototype.apply%"); - var $call = GetIntrinsic("%Function.prototype.call%"); - var $reflectApply = GetIntrinsic("%Reflect.apply%", true) || bind.call($call, $apply); - var $gOPD = GetIntrinsic("%Object.getOwnPropertyDescriptor%", true); - var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); - var $max = GetIntrinsic("%Math.max%"); - if ($defineProperty) { - try { - $defineProperty({}, "a", { value: 1 }); - } catch (e) { - $defineProperty = null; - } - } - module2.exports = function callBind(originalFunction) { - var func = $reflectApply(bind, $call, arguments); - if ($gOPD && $defineProperty) { - var desc = $gOPD(func, "length"); - if (desc.configurable) { - $defineProperty(func, "length", { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }); - } - } - return func; - }; - var applyBind = function applyBind2() { - return $reflectApply(bind, $apply, arguments); - }; - if ($defineProperty) { - $defineProperty(module2.exports, "apply", { value: applyBind }); - } else { - module2.exports.apply = applyBind; - } - } -}); - -// ../../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js -var require_callBound = __commonJS({ - "../../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var callBind = require_call_bind(); - var $indexOf = callBind(GetIntrinsic("String.prototype.indexOf")); - module2.exports = function callBoundIntrinsic(name, allowMissing) { - var intrinsic = GetIntrinsic(name, !!allowMissing); - if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) { - return callBind(intrinsic); - } - return intrinsic; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/abs.js -var require_abs = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/abs.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $abs = GetIntrinsic("%Math.abs%"); - module2.exports = function abs(x) { - return $abs(x); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/floor.js -var require_floor = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/floor.js"(exports2, module2) { - "use strict"; - var $floor = Math.floor; - module2.exports = function floor(x) { - return $floor(x); - }; - } -}); - -// ../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/helpers/isPrimitive.js -var require_isPrimitive = __commonJS({ - "../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/helpers/isPrimitive.js"(exports2, module2) { - "use strict"; - module2.exports = function isPrimitive(value) { - return value === null || typeof value !== "function" && typeof value !== "object"; - }; - } -}); - -// ../../node_modules/.pnpm/is-callable@1.2.4/node_modules/is-callable/index.js -var require_is_callable = __commonJS({ - "../../node_modules/.pnpm/is-callable@1.2.4/node_modules/is-callable/index.js"(exports2, module2) { - "use strict"; - var fnToStr = Function.prototype.toString; - var reflectApply = typeof Reflect === "object" && Reflect !== null && Reflect.apply; - var badArrayLike; - var isCallableMarker; - if (typeof reflectApply === "function" && typeof Object.defineProperty === "function") { - try { - badArrayLike = Object.defineProperty({}, "length", { - get: function() { - throw isCallableMarker; - } - }); - isCallableMarker = {}; - reflectApply(function() { - throw 42; - }, null, badArrayLike); - } catch (_) { - if (_ !== isCallableMarker) { - reflectApply = null; - } - } - } else { - reflectApply = null; - } - var constructorRegex = /^\s*class\b/; - var isES6ClassFn = function isES6ClassFunction(value) { - try { - var fnStr = fnToStr.call(value); - return constructorRegex.test(fnStr); - } catch (e) { - return false; - } - }; - var tryFunctionObject = function tryFunctionToStr(value) { - try { - if (isES6ClassFn(value)) { - return false; - } - fnToStr.call(value); - return true; - } catch (e) { - return false; - } - }; - var toStr = Object.prototype.toString; - var fnClass = "[object Function]"; - var genClass = "[object GeneratorFunction]"; - var hasToStringTag = typeof Symbol === "function" && !!Symbol.toStringTag; - var documentDotAll = typeof document === "object" && typeof document.all === "undefined" && document.all !== void 0 ? document.all : {}; - module2.exports = reflectApply ? function isCallable(value) { - if (value === documentDotAll) { - return true; - } - if (!value) { - return false; - } - if (typeof value !== "function" && typeof value !== "object") { - return false; - } - if (typeof value === "function" && !value.prototype) { - return true; - } - try { - reflectApply(value, null, badArrayLike); - } catch (e) { - if (e !== isCallableMarker) { - return false; - } - } - return !isES6ClassFn(value); - } : function isCallable(value) { - if (value === documentDotAll) { - return true; - } - if (!value) { - return false; - } - if (typeof value !== "function" && typeof value !== "object") { - return false; - } - if (typeof value === "function" && !value.prototype) { - return true; - } - if (hasToStringTag) { - return tryFunctionObject(value); - } - if (isES6ClassFn(value)) { - return false; - } - var strClass = toStr.call(value); - return strClass === fnClass || strClass === genClass; - }; - } -}); - -// ../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es5.js -var require_es5 = __commonJS({ - "../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es5.js"(exports2, module2) { - "use strict"; - var toStr = Object.prototype.toString; - var isPrimitive = require_isPrimitive(); - var isCallable = require_is_callable(); - var ES5internalSlots = { - "[[DefaultValue]]": function(O) { - var actualHint; - if (arguments.length > 1) { - actualHint = arguments[1]; - } else { - actualHint = toStr.call(O) === "[object Date]" ? String : Number; - } - if (actualHint === String || actualHint === Number) { - var methods = actualHint === String ? ["toString", "valueOf"] : ["valueOf", "toString"]; - var value, i; - for (i = 0; i < methods.length; ++i) { - if (isCallable(O[methods[i]])) { - value = O[methods[i]](); - if (isPrimitive(value)) { - return value; + }); + return function symlink2(_x24, _x25) { + return _ref26.apply(this, arguments); + }; + })(); + let walk = exports3.walk = (() => { + var _ref27 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir, relativeDir, ignoreBasenames = /* @__PURE__ */ new Set()) { + let files = []; + let filenames = yield readdir(dir); + if (ignoreBasenames.size) { + filenames = filenames.filter(function(name) { + return !ignoreBasenames.has(name); + }); + } + for (var _iterator14 = filenames, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator](); ; ) { + var _ref28; + if (_isArray14) { + if (_i14 >= _iterator14.length) + break; + _ref28 = _iterator14[_i14++]; + } else { + _i14 = _iterator14.next(); + if (_i14.done) + break; + _ref28 = _i14.value; + } + const name = _ref28; + const relative2 = relativeDir ? (_path || _load_path()).default.join(relativeDir, name) : name; + const loc = (_path || _load_path()).default.join(dir, name); + const stat2 = yield lstat(loc); + files.push({ + relative: relative2, + basename: name, + absolute: loc, + mtime: +stat2.mtime + }); + if (stat2.isDirectory()) { + files = files.concat(yield walk(loc, relative2, ignoreBasenames)); } } - } - throw new TypeError("No default value"); - } - throw new TypeError("invalid [[DefaultValue]] hint supplied"); - } - }; - module2.exports = function ToPrimitive(input) { - if (isPrimitive(input)) { - return input; - } - if (arguments.length > 1) { - return ES5internalSlots["[[DefaultValue]]"](input, arguments[1]); - } - return ES5internalSlots["[[DefaultValue]]"](input); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToPrimitive.js -var require_ToPrimitive = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToPrimitive.js"(exports2, module2) { - "use strict"; - module2.exports = require_es5(); - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToNumber.js -var require_ToNumber = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToNumber.js"(exports2, module2) { - "use strict"; - var ToPrimitive = require_ToPrimitive(); - module2.exports = function ToNumber(value) { - var prim = ToPrimitive(value, Number); - if (typeof prim !== "string") { - return +prim; - } - var trimmed = prim.replace(/^[ \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u0085]+|[ \t\x0b\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u0085]+$/g, ""); - if (/^0[ob]|^[+-]0x/.test(trimmed)) { - return NaN; - } - return +trimmed; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isNaN.js -var require_isNaN = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isNaN.js"(exports2, module2) { - "use strict"; - module2.exports = Number.isNaN || function isNaN2(a) { - return a !== a; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isFinite.js -var require_isFinite = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isFinite.js"(exports2, module2) { - "use strict"; - var $isNaN = Number.isNaN || function(a) { - return a !== a; - }; - module2.exports = Number.isFinite || function(x) { - return typeof x === "number" && !$isNaN(x) && x !== Infinity && x !== -Infinity; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/sign.js -var require_sign = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/sign.js"(exports2, module2) { - "use strict"; - module2.exports = function sign(number) { - return number >= 0 ? 1 : -1; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToInteger.js -var require_ToInteger = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/5/ToInteger.js"(exports2, module2) { - "use strict"; - var abs = require_abs(); - var floor = require_floor(); - var ToNumber = require_ToNumber(); - var $isNaN = require_isNaN(); - var $isFinite = require_isFinite(); - var $sign = require_sign(); - module2.exports = function ToInteger(value) { - var number = ToNumber(value); - if ($isNaN(number)) { - return 0; - } - if (number === 0 || !$isFinite(number)) { - return number; - } - return $sign(number) * floor(abs(number)); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/regexTester.js -var require_regexTester = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/regexTester.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $test = GetIntrinsic("RegExp.prototype.test"); - var callBind = require_call_bind(); - module2.exports = function regexTester(regex) { - return callBind($test, regex); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isPrimitive.js -var require_isPrimitive2 = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/isPrimitive.js"(exports2, module2) { - "use strict"; - module2.exports = function isPrimitive(value) { - return value === null || typeof value !== "function" && typeof value !== "object"; - }; - } -}); - -// ../../node_modules/.pnpm/has-tostringtag@1.0.0/node_modules/has-tostringtag/shams.js -var require_shams2 = __commonJS({ - "../../node_modules/.pnpm/has-tostringtag@1.0.0/node_modules/has-tostringtag/shams.js"(exports2, module2) { - "use strict"; - var hasSymbols = require_shams(); - module2.exports = function hasToStringTagShams() { - return hasSymbols() && !!Symbol.toStringTag; - }; - } -}); - -// ../../node_modules/.pnpm/is-date-object@1.0.5/node_modules/is-date-object/index.js -var require_is_date_object = __commonJS({ - "../../node_modules/.pnpm/is-date-object@1.0.5/node_modules/is-date-object/index.js"(exports2, module2) { - "use strict"; - var getDay = Date.prototype.getDay; - var tryDateObject = function tryDateGetDayCall(value) { - try { - getDay.call(value); - return true; - } catch (e) { - return false; - } - }; - var toStr = Object.prototype.toString; - var dateClass = "[object Date]"; - var hasToStringTag = require_shams2()(); - module2.exports = function isDateObject(value) { - if (typeof value !== "object" || value === null) { - return false; - } - return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; - }; - } -}); - -// ../../node_modules/.pnpm/is-symbol@1.0.4/node_modules/is-symbol/index.js -var require_is_symbol = __commonJS({ - "../../node_modules/.pnpm/is-symbol@1.0.4/node_modules/is-symbol/index.js"(exports2, module2) { - "use strict"; - var toStr = Object.prototype.toString; - var hasSymbols = require_has_symbols()(); - if (hasSymbols) { - symToStr = Symbol.prototype.toString; - symStringRegex = /^Symbol\(.*\)$/; - isSymbolObject = function isRealSymbolObject(value) { - if (typeof value.valueOf() !== "symbol") { - return false; + return files; + }); + return function walk2(_x26, _x27) { + return _ref27.apply(this, arguments); + }; + })(); + let getFileSizeOnDisk = exports3.getFileSizeOnDisk = (() => { + var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + const stat2 = yield lstat(loc); + const size = stat2.size, blockSize = stat2.blksize; + return Math.ceil(size / blockSize) * blockSize; + }); + return function getFileSizeOnDisk2(_x28) { + return _ref29.apply(this, arguments); + }; + })(); + let getEolFromFile = (() => { + var _ref30 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path2) { + if (!(yield exists(path2))) { + return void 0; + } + const buffer = yield readFileBuffer(path2); + for (let i = 0; i < buffer.length; ++i) { + if (buffer[i] === cr) { + return "\r\n"; + } + if (buffer[i] === lf) { + return "\n"; + } + } + return void 0; + }); + return function getEolFromFile2(_x29) { + return _ref30.apply(this, arguments); + }; + })(); + let writeFilePreservingEol = exports3.writeFilePreservingEol = (() => { + var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path2, data) { + const eol = (yield getEolFromFile(path2)) || (_os || _load_os()).default.EOL; + if (eol !== "\n") { + data = data.replace(/\n/g, eol); + } + yield writeFile(path2, data); + }); + return function writeFilePreservingEol2(_x30, _x31) { + return _ref31.apply(this, arguments); + }; + })(); + let hardlinksWork = exports3.hardlinksWork = (() => { + var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir) { + const filename = "test-file" + Math.random(); + const file = (_path || _load_path()).default.join(dir, filename); + const fileLink = (_path || _load_path()).default.join(dir, filename + "-link"); + try { + yield writeFile(file, "test"); + yield link(file, fileLink); + } catch (err) { + return false; + } finally { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(file); + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(fileLink); + } + return true; + }); + return function hardlinksWork2(_x32) { + return _ref32.apply(this, arguments); + }; + })(); + let makeTempDir = exports3.makeTempDir = (() => { + var _ref33 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (prefix) { + const dir = (_path || _load_path()).default.join((_os || _load_os()).default.tmpdir(), `yarn-${prefix || ""}-${Date.now()}-${Math.random()}`); + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dir); + yield mkdirp(dir); + return dir; + }); + return function makeTempDir2(_x33) { + return _ref33.apply(this, arguments); + }; + })(); + let readFirstAvailableStream = exports3.readFirstAvailableStream = (() => { + var _ref34 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths) { + for (var _iterator15 = paths, _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator](); ; ) { + var _ref35; + if (_isArray15) { + if (_i15 >= _iterator15.length) + break; + _ref35 = _iterator15[_i15++]; + } else { + _i15 = _iterator15.next(); + if (_i15.done) + break; + _ref35 = _i15.value; + } + const path2 = _ref35; + try { + const fd = yield open(path2, "r"); + return (_fs || _load_fs()).default.createReadStream(path2, { fd }); + } catch (err) { + } + } + return null; + }); + return function readFirstAvailableStream2(_x34) { + return _ref34.apply(this, arguments); + }; + })(); + let getFirstSuitableFolder = exports3.getFirstSuitableFolder = (() => { + var _ref36 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths, mode = constants.W_OK | constants.X_OK) { + const result2 = { + skipped: [], + folder: null + }; + for (var _iterator16 = paths, _isArray16 = Array.isArray(_iterator16), _i16 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator](); ; ) { + var _ref37; + if (_isArray16) { + if (_i16 >= _iterator16.length) + break; + _ref37 = _iterator16[_i16++]; + } else { + _i16 = _iterator16.next(); + if (_i16.done) + break; + _ref37 = _i16.value; + } + const folder = _ref37; + try { + yield mkdirp(folder); + yield access(folder, mode); + result2.folder = folder; + return result2; + } catch (error) { + result2.skipped.push({ + error, + folder + }); + } + } + return result2; + }); + return function getFirstSuitableFolder2(_x35) { + return _ref36.apply(this, arguments); + }; + })(); + exports3.copy = copy; + exports3.readFile = readFile; + exports3.readFileRaw = readFileRaw; + exports3.normalizeOS = normalizeOS; + var _fs; + function _load_fs() { + return _fs = _interopRequireDefault(__webpack_require__(3)); } - return symStringRegex.test(symToStr.call(value)); - }; - module2.exports = function isSymbol(value) { - if (typeof value === "symbol") { - return true; + var _glob; + function _load_glob() { + return _glob = _interopRequireDefault(__webpack_require__(75)); } - if (toStr.call(value) !== "[object Symbol]") { - return false; + var _os; + function _load_os() { + return _os = _interopRequireDefault(__webpack_require__(36)); } - try { - return isSymbolObject(value); - } catch (e) { - return false; + var _path; + function _load_path() { + return _path = _interopRequireDefault(__webpack_require__(0)); } - }; - } else { - module2.exports = function isSymbol(value) { - return false; - }; - } - var symToStr; - var symStringRegex; - var isSymbolObject; - } -}); - -// ../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es2015.js -var require_es2015 = __commonJS({ - "../../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es2015.js"(exports2, module2) { - "use strict"; - var hasSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "symbol"; - var isPrimitive = require_isPrimitive(); - var isCallable = require_is_callable(); - var isDate = require_is_date_object(); - var isSymbol = require_is_symbol(); - var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) { - if (typeof O === "undefined" || O === null) { - throw new TypeError("Cannot call method on " + O); - } - if (typeof hint !== "string" || hint !== "number" && hint !== "string") { - throw new TypeError('hint must be "string" or "number"'); - } - var methodNames = hint === "string" ? ["toString", "valueOf"] : ["valueOf", "toString"]; - var method, result, i; - for (i = 0; i < methodNames.length; ++i) { - method = O[methodNames[i]]; - if (isCallable(method)) { - result = method.call(O); - if (isPrimitive(result)) { - return result; - } + var _blockingQueue; + function _load_blockingQueue() { + return _blockingQueue = _interopRequireDefault(__webpack_require__(84)); } - } - throw new TypeError("No default value"); - }; - var GetMethod = function GetMethod2(O, P) { - var func = O[P]; - if (func !== null && typeof func !== "undefined") { - if (!isCallable(func)) { - throw new TypeError(func + " returned for property " + P + " of object " + O + " is not a function"); + var _promise; + function _load_promise() { + return _promise = _interopRequireWildcard(__webpack_require__(40)); } - return func; - } - return void 0; - }; - module2.exports = function ToPrimitive(input) { - if (isPrimitive(input)) { - return input; - } - var hint = "default"; - if (arguments.length > 1) { - if (arguments[1] === String) { - hint = "string"; - } else if (arguments[1] === Number) { - hint = "number"; + var _promise2; + function _load_promise2() { + return _promise2 = __webpack_require__(40); } - } - var exoticToPrim; - if (hasSymbols) { - if (Symbol.toPrimitive) { - exoticToPrim = GetMethod(input, Symbol.toPrimitive); - } else if (isSymbol(input)) { - exoticToPrim = Symbol.prototype.valueOf; + var _map; + function _load_map() { + return _map = _interopRequireDefault(__webpack_require__(20)); } - } - if (typeof exoticToPrim !== "undefined") { - var result = exoticToPrim.call(input, hint); - if (isPrimitive(result)) { - return result; + var _fsNormalized; + function _load_fsNormalized() { + return _fsNormalized = __webpack_require__(164); } - throw new TypeError("unable to convert exotic object to primitive"); - } - if (hint === "default" && (isDate(input) || isSymbol(input))) { - hint = "string"; - } - return ordinaryToPrimitive(input, hint === "default" ? "number" : hint); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToPrimitive.js -var require_ToPrimitive2 = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToPrimitive.js"(exports2, module2) { - "use strict"; - var toPrimitive = require_es2015(); - module2.exports = function ToPrimitive(input) { - if (arguments.length > 1) { - return toPrimitive(input, arguments[1]); - } - return toPrimitive(input); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToNumber.js -var require_ToNumber2 = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToNumber.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $TypeError = GetIntrinsic("%TypeError%"); - var $Number = GetIntrinsic("%Number%"); - var $RegExp = GetIntrinsic("%RegExp%"); - var $parseInteger = GetIntrinsic("%parseInt%"); - var callBound = require_callBound(); - var regexTester = require_regexTester(); - var isPrimitive = require_isPrimitive2(); - var $strSlice = callBound("String.prototype.slice"); - var isBinary = regexTester(/^0b[01]+$/i); - var isOctal = regexTester(/^0o[0-7]+$/i); - var isInvalidHexLiteral = regexTester(/^[-+]0x[0-9a-f]+$/i); - var nonWS = ["\x85", "\u200B", "\uFFFE"].join(""); - var nonWSregex = new $RegExp("[" + nonWS + "]", "g"); - var hasNonWS = regexTester(nonWSregex); - var ws = [ - " \n\v\f\r \xA0\u1680\u180E\u2000\u2001\u2002\u2003", - "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028", - "\u2029\uFEFF" - ].join(""); - var trimRegex = new RegExp("(^[" + ws + "]+)|([" + ws + "]+$)", "g"); - var $replace = callBound("String.prototype.replace"); - var $trim = function(value) { - return $replace(value, trimRegex, ""); - }; - var ToPrimitive = require_ToPrimitive2(); - module2.exports = function ToNumber(argument) { - var value = isPrimitive(argument) ? argument : ToPrimitive(argument, $Number); - if (typeof value === "symbol") { - throw new $TypeError("Cannot convert a Symbol value to a number"); - } - if (typeof value === "bigint") { - throw new $TypeError("Conversion from 'BigInt' to 'number' is not allowed."); - } - if (typeof value === "string") { - if (isBinary(value)) { - return ToNumber($parseInteger($strSlice(value, 2), 2)); - } else if (isOctal(value)) { - return ToNumber($parseInteger($strSlice(value, 2), 8)); - } else if (hasNonWS(value) || isInvalidHexLiteral(value)) { - return NaN; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) + newObj[key] = obj[key]; + } + } + newObj.default = obj; + return newObj; + } } - var trimmed = $trim(value); - if (trimmed !== value) { - return ToNumber(trimmed); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; } - } - return $Number(value); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToInteger.js -var require_ToInteger2 = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToInteger.js"(exports2, module2) { - "use strict"; - var ES5ToInteger = require_ToInteger(); - var ToNumber = require_ToNumber2(); - module2.exports = function ToInteger(value) { - var number = ToNumber(value); - if (number !== 0) { - number = ES5ToInteger(number); - } - return number === 0 ? 0 : number; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/maxSafeInteger.js -var require_maxSafeInteger = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/helpers/maxSafeInteger.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $Math = GetIntrinsic("%Math%"); - var $Number = GetIntrinsic("%Number%"); - module2.exports = $Number.MAX_SAFE_INTEGER || $Math.pow(2, 53) - 1; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToLength.js -var require_ToLength = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToLength.js"(exports2, module2) { - "use strict"; - var MAX_SAFE_INTEGER = require_maxSafeInteger(); - var ToInteger = require_ToInteger2(); - module2.exports = function ToLength(argument) { - var len = ToInteger(argument); - if (len <= 0) { - return 0; - } - if (len > MAX_SAFE_INTEGER) { - return MAX_SAFE_INTEGER; - } - return len; - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToObject.js -var require_ToObject = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/ToObject.js"(exports2, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $Object = GetIntrinsic("%Object%"); - var RequireObjectCoercible = require_RequireObjectCoercible(); - module2.exports = function ToObject(value) { - RequireObjectCoercible(value); - return $Object(value); - }; - } -}); - -// ../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/SameValueZero.js -var require_SameValueZero = __commonJS({ - "../../node_modules/.pnpm/es-abstract@1.18.6/node_modules/es-abstract/2020/SameValueZero.js"(exports2, module2) { - "use strict"; - var $isNaN = require_isNaN(); - module2.exports = function SameValueZero(x, y) { - return x === y || $isNaN(x) && $isNaN(y); - }; - } -}); - -// ../../node_modules/.pnpm/is-string@1.0.7/node_modules/is-string/index.js -var require_is_string = __commonJS({ - "../../node_modules/.pnpm/is-string@1.0.7/node_modules/is-string/index.js"(exports2, module2) { - "use strict"; - var strValue = String.prototype.valueOf; - var tryStringObject = function tryStringObject2(value) { - try { - strValue.call(value); - return true; - } catch (e) { - return false; - } - }; - var toStr = Object.prototype.toString; - var strClass = "[object String]"; - var hasToStringTag = require_shams2()(); - module2.exports = function isString(value) { - if (typeof value === "string") { - return true; - } - if (typeof value !== "object") { - return false; - } - return hasToStringTag ? tryStringObject(value) : toStr.call(value) === strClass; - }; - } -}); - -// ../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/implementation.js -var require_implementation3 = __commonJS({ - "../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/implementation.js"(exports2, module2) { - "use strict"; - var ToInteger = require_ToInteger2(); - var ToLength = require_ToLength(); - var ToObject = require_ToObject(); - var SameValueZero = require_SameValueZero(); - var $isNaN = require_isNaN(); - var $isFinite = require_isFinite(); - var GetIntrinsic = require_get_intrinsic(); - var callBound = require_callBound(); - var isString = require_is_string(); - var $charAt = callBound("String.prototype.charAt"); - var $indexOf = GetIntrinsic("%Array.prototype.indexOf%"); - module2.exports = function includes(searchElement) { - var fromIndex = arguments.length > 1 ? ToInteger(arguments[1]) : 0; - if ($indexOf && !$isNaN(searchElement) && $isFinite(fromIndex) && typeof searchElement !== "undefined") { - return $indexOf.apply(this, arguments) > -1; - } - var O = ToObject(this); - var length = ToLength(O.length); - if (length === 0) { - return false; - } - var k = fromIndex >= 0 ? fromIndex : Math.max(0, length + fromIndex); - while (k < length) { - if (SameValueZero(searchElement, isString(O) ? $charAt(O, k) : O[k])) { - return true; + const constants = exports3.constants = typeof (_fs || _load_fs()).default.constants !== "undefined" ? (_fs || _load_fs()).default.constants : { + R_OK: (_fs || _load_fs()).default.R_OK, + W_OK: (_fs || _load_fs()).default.W_OK, + X_OK: (_fs || _load_fs()).default.X_OK + }; + const lockQueue = exports3.lockQueue = new (_blockingQueue || _load_blockingQueue()).default("fs lock"); + const readFileBuffer = exports3.readFileBuffer = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readFile); + const open = exports3.open = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.open); + const writeFile = exports3.writeFile = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.writeFile); + const readlink = exports3.readlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readlink); + const realpath = exports3.realpath = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.realpath); + const readdir = exports3.readdir = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readdir); + const rename = exports3.rename = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.rename); + const access = exports3.access = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.access); + const stat = exports3.stat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.stat); + const mkdirp = exports3.mkdirp = (0, (_promise2 || _load_promise2()).promisify)(__webpack_require__(116)); + const exists = exports3.exists = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.exists, true); + const lstat = exports3.lstat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.lstat); + const chmod = exports3.chmod = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.chmod); + const link = exports3.link = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.link); + const glob = exports3.glob = (0, (_promise2 || _load_promise2()).promisify)((_glob || _load_glob()).default); + exports3.unlink = (_fsNormalized || _load_fsNormalized()).unlink; + const CONCURRENT_QUEUE_ITEMS = (_fs || _load_fs()).default.copyFile ? 128 : 4; + const fsSymlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.symlink); + const invariant = __webpack_require__(7); + const stripBOM = __webpack_require__(122); + const noop = () => { + }; + function copy(src, dest, reporter) { + return copyBulk([{ src, dest }], reporter); } - k += 1; - } - return false; - }; - } -}); - -// ../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/polyfill.js -var require_polyfill = __commonJS({ - "../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/polyfill.js"(exports2, module2) { - "use strict"; - var implementation = require_implementation3(); - module2.exports = function getPolyfill() { - return Array.prototype.includes || implementation; - }; - } -}); - -// ../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/shim.js -var require_shim = __commonJS({ - "../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/shim.js"(exports2, module2) { - "use strict"; - var define2 = require_define_properties(); - var getPolyfill = require_polyfill(); - module2.exports = function shimArrayPrototypeIncludes() { - var polyfill = getPolyfill(); - define2(Array.prototype, { includes: polyfill }, { includes: function() { - return Array.prototype.includes !== polyfill; - } }); - return polyfill; - }; - } -}); - -// ../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/index.js -var require_array_includes = __commonJS({ - "../../node_modules/.pnpm/array-includes@3.1.3/node_modules/array-includes/index.js"(exports2, module2) { - "use strict"; - var define2 = require_define_properties(); - var RequireObjectCoercible = require_RequireObjectCoercible(); - var callBind = require_call_bind(); - var callBound = require_callBound(); - var implementation = require_implementation3(); - var getPolyfill = require_polyfill(); - var polyfill = callBind.apply(getPolyfill()); - var shim = require_shim(); - var $slice = callBound("Array.prototype.slice"); - var boundShim = function includes(array, searchElement) { - RequireObjectCoercible(array); - return polyfill(array, $slice(arguments, 1)); - }; - define2(boundShim, { - getPolyfill, - implementation, - shim - }); - module2.exports = boundShim; - } -}); - -// ../../node_modules/.pnpm/graph-sequencer@2.0.0/node_modules/graph-sequencer/index.js -var require_graph_sequencer = __commonJS({ - "../../node_modules/.pnpm/graph-sequencer@2.0.0/node_modules/graph-sequencer/index.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var arrayFlatten = require_array_flatten(); - var arrayIncludes = require_array_includes(); - function getCycles(currDepsMap, visited) { - let items = Array.from(currDepsMap.keys()); - let cycles = []; - function visit(item, cycle) { - let visitedDeps = visited.get(item); - if (!visitedDeps) { - visitedDeps = []; - visited.set(item, visitedDeps); + function _readFile(loc, encoding) { + return new Promise((resolve, reject) => { + (_fs || _load_fs()).default.readFile(loc, encoding, function(err, content) { + if (err) { + reject(err); + } else { + resolve(content); + } + }); + }); } - let deps = currDepsMap.get(item); - if (typeof deps === "undefined") - return; - for (let dep of deps) { - if (cycle[0] === dep) { - cycles.push(cycle); + function readFile(loc) { + return _readFile(loc, "utf8").then(normalizeOS); + } + function readFileRaw(loc) { + return _readFile(loc, "binary"); + } + function normalizeOS(body) { + return body.replace(/\r\n/g, "\n"); + } + const cr = "\r".charCodeAt(0); + const lf = "\n".charCodeAt(0); + }, + /* 6 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.getPathKey = getPathKey; + const os = __webpack_require__(36); + const path2 = __webpack_require__(0); + const userHome = __webpack_require__(45).default; + var _require = __webpack_require__(171); + const getCacheDir = _require.getCacheDir, getConfigDir = _require.getConfigDir, getDataDir = _require.getDataDir; + const isWebpackBundle = __webpack_require__(227); + const DEPENDENCY_TYPES = exports3.DEPENDENCY_TYPES = ["devDependencies", "dependencies", "optionalDependencies", "peerDependencies"]; + const RESOLUTIONS = exports3.RESOLUTIONS = "resolutions"; + const MANIFEST_FIELDS = exports3.MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES]; + const SUPPORTED_NODE_VERSIONS = exports3.SUPPORTED_NODE_VERSIONS = "^4.8.0 || ^5.7.0 || ^6.2.2 || >=8.0.0"; + const YARN_REGISTRY = exports3.YARN_REGISTRY = "https://registry.yarnpkg.com"; + const YARN_DOCS = exports3.YARN_DOCS = "https://yarnpkg.com/en/docs/cli/"; + const YARN_INSTALLER_SH = exports3.YARN_INSTALLER_SH = "https://yarnpkg.com/install.sh"; + const YARN_INSTALLER_MSI = exports3.YARN_INSTALLER_MSI = "https://yarnpkg.com/latest.msi"; + const SELF_UPDATE_VERSION_URL = exports3.SELF_UPDATE_VERSION_URL = "https://yarnpkg.com/latest-version"; + const CACHE_VERSION = exports3.CACHE_VERSION = 2; + const LOCKFILE_VERSION = exports3.LOCKFILE_VERSION = 1; + const NETWORK_CONCURRENCY = exports3.NETWORK_CONCURRENCY = 8; + const NETWORK_TIMEOUT = exports3.NETWORK_TIMEOUT = 30 * 1e3; + const CHILD_CONCURRENCY = exports3.CHILD_CONCURRENCY = 5; + const REQUIRED_PACKAGE_KEYS = exports3.REQUIRED_PACKAGE_KEYS = ["name", "version", "_uid"]; + function getPreferredCacheDirectories() { + const preferredCacheDirectories = [getCacheDir()]; + if (process.getuid) { + preferredCacheDirectories.push(path2.join(os.tmpdir(), `.yarn-cache-${process.getuid()}`)); } - if (!arrayIncludes(visitedDeps, dep)) { - visitedDeps.push(dep); - visit(dep, cycle.concat(dep)); + preferredCacheDirectories.push(path2.join(os.tmpdir(), `.yarn-cache`)); + return preferredCacheDirectories; + } + const PREFERRED_MODULE_CACHE_DIRECTORIES = exports3.PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories(); + const CONFIG_DIRECTORY = exports3.CONFIG_DIRECTORY = getConfigDir(); + const DATA_DIRECTORY = exports3.DATA_DIRECTORY = getDataDir(); + const LINK_REGISTRY_DIRECTORY = exports3.LINK_REGISTRY_DIRECTORY = path2.join(DATA_DIRECTORY, "link"); + const GLOBAL_MODULE_DIRECTORY = exports3.GLOBAL_MODULE_DIRECTORY = path2.join(DATA_DIRECTORY, "global"); + const NODE_BIN_PATH = exports3.NODE_BIN_PATH = process.execPath; + const YARN_BIN_PATH = exports3.YARN_BIN_PATH = getYarnBinPath(); + function getYarnBinPath() { + if (isWebpackBundle) { + return __filename; + } else { + return path2.join(__dirname, "..", "bin", "yarn.js"); } } - } - for (let item of items) { - visit(item, [item]); - } - return cycles; - } - function graphSequencer(opts) { - let graph = opts.graph; - let groups = opts.groups; - let graphItems = Array.from(graph.keys()); - assert.deepStrictEqual(graphItems.sort(), arrayFlatten(groups).sort(), "items in graph must be the same as items in groups"); - let chunks = []; - let cycles = []; - let safe = true; - let queue = graphItems; - let chunked = new Set(); - let visited = new Map(); - while (queue.length) { - let nextQueue = []; - let chunk = []; - let currDepsMap = new Map(); - for (let i = 0; i < queue.length; i++) { - let item = queue[i]; - let deps = graph.get(item); - if (typeof deps === "undefined") - continue; - let itemGroup = groups.findIndex((group) => arrayIncludes(group, item)); - let currDeps = deps.filter((dep) => { - let depGroup = groups.findIndex((group) => arrayIncludes(group, dep)); - if (depGroup > itemGroup) { - return false; + const NODE_MODULES_FOLDER = exports3.NODE_MODULES_FOLDER = "node_modules"; + const NODE_PACKAGE_JSON = exports3.NODE_PACKAGE_JSON = "package.json"; + const POSIX_GLOBAL_PREFIX = exports3.POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ""}/usr/local`; + const FALLBACK_GLOBAL_PREFIX = exports3.FALLBACK_GLOBAL_PREFIX = path2.join(userHome, ".yarn"); + const META_FOLDER = exports3.META_FOLDER = ".yarn-meta"; + const INTEGRITY_FILENAME = exports3.INTEGRITY_FILENAME = ".yarn-integrity"; + const LOCKFILE_FILENAME = exports3.LOCKFILE_FILENAME = "yarn.lock"; + const METADATA_FILENAME = exports3.METADATA_FILENAME = ".yarn-metadata.json"; + const TARBALL_FILENAME = exports3.TARBALL_FILENAME = ".yarn-tarball.tgz"; + const CLEAN_FILENAME = exports3.CLEAN_FILENAME = ".yarnclean"; + const NPM_LOCK_FILENAME = exports3.NPM_LOCK_FILENAME = "package-lock.json"; + const NPM_SHRINKWRAP_FILENAME = exports3.NPM_SHRINKWRAP_FILENAME = "npm-shrinkwrap.json"; + const DEFAULT_INDENT = exports3.DEFAULT_INDENT = " "; + const SINGLE_INSTANCE_PORT = exports3.SINGLE_INSTANCE_PORT = 31997; + const SINGLE_INSTANCE_FILENAME = exports3.SINGLE_INSTANCE_FILENAME = ".yarn-single-instance"; + const ENV_PATH_KEY = exports3.ENV_PATH_KEY = getPathKey(process.platform, process.env); + function getPathKey(platform, env) { + let pathKey = "PATH"; + if (platform === "win32") { + pathKey = "Path"; + for (const key in env) { + if (key.toLowerCase() === "path") { + pathKey = key; + } + } + } + return pathKey; + } + const VERSION_COLOR_SCHEME = exports3.VERSION_COLOR_SCHEME = { + major: "red", + premajor: "red", + minor: "yellow", + preminor: "yellow", + patch: "green", + prepatch: "green", + prerelease: "red", + unchanged: "white", + unknown: "red" + }; + }, + /* 7 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var NODE_ENV = process.env.NODE_ENV; + var invariant = function(condition, format, a, b, c, d, e, f) { + if (NODE_ENV !== "production") { + if (format === void 0) { + throw new Error("invariant requires an error message argument"); + } + } + if (!condition) { + var error; + if (format === void 0) { + error = new Error( + "Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings." + ); } else { - return !chunked.has(dep); + var args2 = [a, b, c, d, e, f]; + var argIndex = 0; + error = new Error( + format.replace(/%s/g, function() { + return args2[argIndex++]; + }) + ); + error.name = "Invariant Violation"; + } + error.framesToPop = 1; + throw error; + } + }; + module3.exports = invariant; + }, + , + /* 9 */ + /***/ + function(module3, exports3) { + module3.exports = require("crypto"); + }, + , + /* 11 */ + /***/ + function(module3, exports3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }, + /* 12 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.sortAlpha = sortAlpha; + exports3.entries = entries; + exports3.removePrefix = removePrefix; + exports3.removeSuffix = removeSuffix; + exports3.addSuffix = addSuffix; + exports3.hyphenate = hyphenate; + exports3.camelCase = camelCase; + exports3.compareSortedArrays = compareSortedArrays; + exports3.sleep = sleep; + const _camelCase = __webpack_require__(176); + function sortAlpha(a, b) { + const shortLen = Math.min(a.length, b.length); + for (let i = 0; i < shortLen; i++) { + const aChar = a.charCodeAt(i); + const bChar = b.charCodeAt(i); + if (aChar !== bChar) { + return aChar - bChar; } - }); - currDepsMap.set(item, currDeps); - if (currDeps.length) { - nextQueue.push(item); - } else { - chunk.push(item); } + return a.length - b.length; } - if (!chunk.length) { - cycles = cycles.concat(getCycles(currDepsMap, visited)); - let sorted = queue.sort((a, b) => { - let aDeps = currDepsMap.get(a) || []; - let bDeps = currDepsMap.get(b) || []; - return aDeps.length - bDeps.length; - }); - chunk.push(sorted[0]); - nextQueue = sorted.slice(1); - safe = false; + function entries(obj) { + const entries2 = []; + if (obj) { + for (const key in obj) { + entries2.push([key, obj[key]]); + } + } + return entries2; } - for (let item of chunk) { - chunked.add(item); + function removePrefix(pattern, prefix) { + if (pattern.startsWith(prefix)) { + pattern = pattern.slice(prefix.length); + } + return pattern; } - chunks.push(chunk.sort()); - queue = nextQueue; - } - return { safe, chunks, cycles }; - } - module2.exports = graphSequencer; - } -}); - -// ../build-modules/lib/index.js -var require_lib81 = __commonJS({ - "../build-modules/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.linkBinsOfDependencies = void 0; - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var lifecycle_1 = require_lib80(); - var link_bins_1 = __importStar2(require_lib70()); - var logger_1 = __importDefault(require_lib6()); - var read_package_json_1 = require_lib32(); - var run_groups_1 = __importDefault(require_lib79()); - var graph_sequencer_1 = __importDefault(require_graph_sequencer()); - var filter_1 = __importDefault(require_filter3()); - exports2.default = async (depGraph, rootDepPaths, opts) => { - var _a; - const warn = (message2) => logger_1.default.warn({ message: message2, prefix: opts.lockfileDir }); - const nodesToBuild = new Set(); - getSubgraphToBuild(depGraph, rootDepPaths, nodesToBuild, new Set()); - const onlyFromBuildGraph = filter_1.default((depPath) => nodesToBuild.has(depPath)); - const nodesToBuildArray = Array.from(nodesToBuild); - const graph = new Map(nodesToBuildArray.map((depPath) => [depPath, onlyFromBuildGraph(Object.values(depGraph[depPath].children))])); - const graphSequencerResult = graph_sequencer_1.default({ - graph, - groups: [nodesToBuildArray] - }); - const chunks = graphSequencerResult.chunks; - const buildDepOpts = { ...opts, warn }; - const groups = chunks.map((chunk) => { - chunk = chunk.filter((depPath) => depGraph[depPath].requiresBuild && !depGraph[depPath].isBuilt); - if (opts.depsToBuild != null) { - chunk = chunk.filter((depPath) => opts.depsToBuild.has(depPath)); + function removeSuffix(pattern, suffix) { + if (pattern.endsWith(suffix)) { + return pattern.slice(0, -suffix.length); + } + return pattern; } - return chunk.map((depPath) => async () => buildDependency(depPath, depGraph, buildDepOpts)); - }); - await run_groups_1.default((_a = opts.childConcurrency) !== null && _a !== void 0 ? _a : 4, groups); - }; - async function buildDependency(depPath, depGraph, opts) { - const depNode = depGraph[depPath]; - try { - await linkBinsOfDependencies(depNode, depGraph, opts); - const hasSideEffects = await lifecycle_1.runPostinstallHooks({ - depPath, - extraBinPaths: opts.extraBinPaths, - extraEnv: opts.extraEnv, - initCwd: opts.lockfileDir, - optional: depNode.optional, - pkgRoot: depNode.dir, - rawConfig: opts.rawConfig, - rootModulesDir: opts.rootModulesDir, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - unsafePerm: opts.unsafePerm || false - }); - if (hasSideEffects && opts.sideEffectsCacheWrite) { - try { - await opts.storeController.upload(depNode.dir, { - engine: constants_1.ENGINE_NAME, - filesIndexFile: depNode.filesIndexFile - }); - } catch (err) { - if (err.statusCode === 403) { - logger_1.default.warn({ - message: `The store server disabled upload requests, could not upload ${depNode.dir}`, - prefix: opts.lockfileDir - }); - } else { - logger_1.default.warn({ - error: err, - message: `An error occurred while uploading ${depNode.dir}`, - prefix: opts.lockfileDir - }); - } + function addSuffix(pattern, suffix) { + if (!pattern.endsWith(suffix)) { + return pattern + suffix; } + return pattern; } - } catch (err) { - if (depNode.optional) { - const pkg = await read_package_json_1.fromDir(path_1.default.join(depNode.dir)); - core_loggers_1.skippedOptionalDependencyLogger.debug({ - details: err.toString(), - package: { - id: depNode.dir, - name: pkg.name, - version: pkg.version - }, - prefix: opts.lockfileDir, - reason: "build_failure" + function hyphenate(str) { + return str.replace(/[A-Z]/g, (match) => { + return "-" + match.charAt(0).toLowerCase(); }); - return; - } - throw err; - } - } - function getSubgraphToBuild(graph, entryNodes, nodesToBuild, walked) { - let currentShouldBeBuilt = false; - for (const depPath of entryNodes) { - if (!graph[depPath]) - continue; - if (nodesToBuild.has(depPath)) { - currentShouldBeBuilt = true; - } - if (walked.has(depPath)) - continue; - walked.add(depPath); - const childShouldBeBuilt = getSubgraphToBuild(graph, Object.values(graph[depPath].children), nodesToBuild, walked) || graph[depPath].requiresBuild; - if (childShouldBeBuilt) { - nodesToBuild.add(depPath); - currentShouldBeBuilt = true; } - } - return currentShouldBeBuilt; - } - async function linkBinsOfDependencies(depNode, depGraph, opts) { - const childrenToLink = opts.optional ? depNode.children : Object.keys(depNode.children).reduce((nonOptionalChildren, childAlias) => { - if (!depNode.optionalDependencies.has(childAlias)) { - nonOptionalChildren[childAlias] = depNode.children[childAlias]; + function camelCase(str) { + if (/[A-Z]/.test(str)) { + return null; + } else { + return _camelCase(str); + } } - return nonOptionalChildren; - }, {}); - const binPath = path_1.default.join(depNode.dir, "node_modules/.bin"); - const pkgNodes = [ - ...Object.entries(childrenToLink).map(([alias, childDepPath]) => ({ alias, dep: depGraph[childDepPath] })).filter(({ alias, dep }) => { - if (!dep) { - logger_1.default.debug({ message: `Failed to link bins of "${alias}" to "${binPath}". This is probably not an issue.` }); + function compareSortedArrays(array1, array2) { + if (array1.length !== array2.length) { return false; } - return dep.hasBin && dep.installable !== false; - }).map(({ dep }) => dep), - depNode - ]; - const pkgs = await Promise.all(pkgNodes.map(async (dep) => { - var _a, _b; - return { - location: dep.dir, - manifest: (_b = await ((_a = dep.fetchingBundledManifest) === null || _a === void 0 ? void 0 : _a.call(dep))) !== null && _b !== void 0 ? _b : await read_package_json_1.fromDir(dep.dir) - }; - })); - await link_bins_1.linkBinsOfPackages(pkgs, binPath, { extendNodePath: opts.extendNodePath, warn: opts.warn }); - if (depNode.hasBundledDependencies) { - const bundledModules = path_1.default.join(depNode.dir, "node_modules"); - await link_bins_1.default(bundledModules, binPath, { extendNodePath: opts.extendNodePath, warn: opts.warn }); - } - } - exports2.linkBinsOfDependencies = linkBinsOfDependencies; - } -}); - -// ../hoist/lib/index.js -var require_lib82 = __commonJS({ - "../hoist/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var link_bins_1 = __importDefault(require_lib70()); - var lockfile_utils_1 = require_lib53(); - var lockfile_walker_1 = __importDefault(require_lib54()); - var logger_1 = __importDefault(require_lib6()); - var matcher_1 = __importDefault(require_lib23()); - var symlink_dependency_1 = __importDefault(require_lib75()); - var dp = __importStar2(require_lib33()); - var hoistLogger = logger_1.default("hoist"); - async function hoistByLockfile(opts) { - var _a, _b; - if (opts.lockfile.packages == null) - return {}; - const { directDeps, step } = lockfile_walker_1.default(opts.lockfile, Object.keys(opts.lockfile.importers)); - const deps = [ - { - children: directDeps.reduce((acc, { alias, depPath }) => { - if (!acc[alias]) { - acc[alias] = depPath; + for (let i = 0, len = array1.length; i < len; i++) { + if (array1[i] !== array2[i]) { + return false; } - return acc; - }, {}), - depPath: "", - depth: -1 - }, - ...await getDependencies(step, 0) - ]; - const getAliasHoistType = createGetAliasHoistType(opts.publicHoistPattern, opts.privateHoistPattern); - const hoistedDependencies = await hoistGraph(deps, (_b = (_a = opts.lockfile.importers["."]) === null || _a === void 0 ? void 0 : _a.specifiers) !== null && _b !== void 0 ? _b : {}, { - getAliasHoistType - }); - await symlinkHoistedDependencies(hoistedDependencies, { - lockfile: opts.lockfile, - lockfileDir: opts.lockfileDir, - privateHoistedModulesDir: opts.privateHoistedModulesDir, - publicHoistedModulesDir: opts.publicHoistedModulesDir, - virtualStoreDir: opts.virtualStoreDir - }); - await linkAllBins(opts.privateHoistedModulesDir, { extendNodePath: opts.extendNodePath }); - return hoistedDependencies; - } - exports2.default = hoistByLockfile; - function createGetAliasHoistType(publicHoistPattern, privateHoistPattern) { - const publicMatcher = matcher_1.default(publicHoistPattern); - const privateMatcher = matcher_1.default(privateHoistPattern); - return (alias) => { - if (publicMatcher(alias)) - return "public"; - if (privateMatcher(alias)) - return "private"; - return false; - }; - } - async function linkAllBins(modulesDir, opts) { - const bin = path_1.default.join(modulesDir, ".bin"); - const warn = (message2, code) => { - if (code === "BINARIES_CONFLICT") - return; - logger_1.default.info({ message: message2, prefix: path_1.default.join(modulesDir, "../..") }); - }; - try { - await link_bins_1.default(modulesDir, bin, { allowExoticManifests: true, extendNodePath: opts.extendNodePath, warn }); - } catch (err) { - } - } - async function getDependencies(step, depth) { - const deps = []; - const nextSteps = []; - for (const { pkgSnapshot, depPath, next } of step.dependencies) { - const allDeps = { - ...pkgSnapshot.dependencies, - ...pkgSnapshot.optionalDependencies + } + return true; + } + function sleep(ms) { + return new Promise((resolve) => { + setTimeout(resolve, ms); + }); + } + }, + /* 13 */ + /***/ + function(module3, exports3, __webpack_require__) { + var store = __webpack_require__(107)("wks"); + var uid = __webpack_require__(111); + var Symbol2 = __webpack_require__(11).Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : uid)("Symbol." + name)); }; - deps.push({ - children: Object.entries(allDeps).reduce((children, [alias, ref]) => { - children[alias] = dp.refToRelative(ref, alias); - return children; - }, {}), - depPath, - depth + $exports.store = store; + }, + /* 14 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true }); - nextSteps.push(next()); - } - for (const depPath of step.missing) { - logger_1.default.debug({ message: `No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}` }); - } - return (await Promise.all(nextSteps.map(async (nextStep) => getDependencies(nextStep, depth + 1)))).reduce((acc, deps2) => [...acc, ...deps2], deps); - } - async function hoistGraph(depNodes, currentSpecifiers, opts) { - const hoistedAliases = new Set(Object.keys(currentSpecifiers)); - const hoistedDependencies = {}; - depNodes.sort((a, b) => { - const depthDiff = a.depth - b.depth; - return depthDiff === 0 ? a.depPath.localeCompare(b.depPath) : depthDiff; - }).forEach((depNode) => { - for (const [childAlias, childPath] of Object.entries(depNode.children)) { - const hoist = opts.getAliasHoistType(childAlias); - if (!hoist) - continue; - const childAliasNormalized = childAlias.toLowerCase(); - if (hoistedAliases.has(childAliasNormalized)) { - continue; - } - hoistedAliases.add(childAliasNormalized); - if (!hoistedDependencies[childPath]) { - hoistedDependencies[childPath] = {}; - } - hoistedDependencies[childPath][childAlias] = hoist; + exports3.stringify = exports3.parse = void 0; + var _asyncToGenerator2; + function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); } - }); - return hoistedDependencies; - } - async function symlinkHoistedDependencies(hoistedDependencies, opts) { - await Promise.all(Object.entries(hoistedDependencies).map(async ([depPath, pkgAliases]) => { - const pkgSnapshot = opts.lockfile.packages[depPath]; - if (!pkgSnapshot) { - hoistLogger.debug({ hoistFailedFor: depPath }); - return; + var _parse; + function _load_parse() { + return _parse = __webpack_require__(81); } - const pkgName = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot).name; - const modules = path_1.default.join(opts.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), "node_modules"); - const depLocation = path_1.default.join(modules, pkgName); - await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => { - const targetDir = hoistType === "public" ? opts.publicHoistedModulesDir : opts.privateHoistedModulesDir; - await symlink_dependency_1.default(depLocation, targetDir, pkgAlias); - })); - })); - } - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+pnp@2.3.2/node_modules/@yarnpkg/pnp/lib/index.js -var require_lib83 = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+pnp@2.3.2/node_modules/@yarnpkg/pnp/lib/index.js"(exports2, module2) { - module2.exports = (() => { - var __webpack_modules__ = { - 862: (__unused_webpack_module, __webpack_exports__, __webpack_require__2) => { - "use strict"; - __webpack_require__2.r(__webpack_exports__); - __webpack_require__2.d(__webpack_exports__, { - "LinkType": () => LinkType, - "generateInlinedScript": () => generateInlinedScript, - "generateSplitScript": () => generateSplitScript, - "hydratePnpFile": () => hydratePnpFile, - "hydratePnpSource": () => hydratePnpSource, - "makeRuntimeApi": () => makeRuntimeApi - }); - var LinkType; - (function(LinkType2) { - LinkType2["HARD"] = "HARD"; - LinkType2["SOFT"] = "SOFT"; - })(LinkType || (LinkType = {})); - var PrettyJsonState; - (function(PrettyJsonState2) { - PrettyJsonState2["DEFAULT"] = "DEFAULT"; - PrettyJsonState2["TOP_LEVEL"] = "TOP_LEVEL"; - PrettyJsonState2["FALLBACK_EXCLUSION_LIST"] = "FALLBACK_EXCLUSION_LIST"; - PrettyJsonState2["FALLBACK_EXCLUSION_ENTRIES"] = "FALLBACK_EXCLUSION_ENTRIES"; - PrettyJsonState2["FALLBACK_EXCLUSION_DATA"] = "FALLBACK_EXCLUSION_DATA"; - PrettyJsonState2["PACKAGE_REGISTRY_DATA"] = "PACKAGE_REGISTRY_DATA"; - PrettyJsonState2["PACKAGE_REGISTRY_ENTRIES"] = "PACKAGE_REGISTRY_ENTRIES"; - PrettyJsonState2["PACKAGE_STORE_DATA"] = "PACKAGE_STORE_DATA"; - PrettyJsonState2["PACKAGE_STORE_ENTRIES"] = "PACKAGE_STORE_ENTRIES"; - PrettyJsonState2["PACKAGE_INFORMATION_DATA"] = "PACKAGE_INFORMATION_DATA"; - PrettyJsonState2["PACKAGE_DEPENDENCIES"] = "PACKAGE_DEPENDENCIES"; - PrettyJsonState2["PACKAGE_DEPENDENCY"] = "PACKAGE_DEPENDENCY"; - })(PrettyJsonState || (PrettyJsonState = {})); - const prettyJsonMachine = { - [PrettyJsonState.DEFAULT]: { - collapsed: false, - next: { - [`*`]: PrettyJsonState.DEFAULT - } - }, - [PrettyJsonState.TOP_LEVEL]: { - collapsed: false, - next: { - [`fallbackExclusionList`]: PrettyJsonState.FALLBACK_EXCLUSION_LIST, - [`packageRegistryData`]: PrettyJsonState.PACKAGE_REGISTRY_DATA, - [`*`]: PrettyJsonState.DEFAULT - } - }, - [PrettyJsonState.FALLBACK_EXCLUSION_LIST]: { - collapsed: false, - next: { - [`*`]: PrettyJsonState.FALLBACK_EXCLUSION_ENTRIES - } - }, - [PrettyJsonState.FALLBACK_EXCLUSION_ENTRIES]: { - collapsed: true, - next: { - [`*`]: PrettyJsonState.FALLBACK_EXCLUSION_DATA - } - }, - [PrettyJsonState.FALLBACK_EXCLUSION_DATA]: { - collapsed: true, - next: { - [`*`]: PrettyJsonState.DEFAULT - } - }, - [PrettyJsonState.PACKAGE_REGISTRY_DATA]: { - collapsed: false, - next: { - [`*`]: PrettyJsonState.PACKAGE_REGISTRY_ENTRIES - } - }, - [PrettyJsonState.PACKAGE_REGISTRY_ENTRIES]: { - collapsed: true, - next: { - [`*`]: PrettyJsonState.PACKAGE_STORE_DATA - } - }, - [PrettyJsonState.PACKAGE_STORE_DATA]: { - collapsed: false, - next: { - [`*`]: PrettyJsonState.PACKAGE_STORE_ENTRIES - } - }, - [PrettyJsonState.PACKAGE_STORE_ENTRIES]: { - collapsed: true, - next: { - [`*`]: PrettyJsonState.PACKAGE_INFORMATION_DATA - } - }, - [PrettyJsonState.PACKAGE_INFORMATION_DATA]: { - collapsed: false, - next: { - [`packageDependencies`]: PrettyJsonState.PACKAGE_DEPENDENCIES, - [`*`]: PrettyJsonState.DEFAULT - } - }, - [PrettyJsonState.PACKAGE_DEPENDENCIES]: { - collapsed: false, - next: { - [`*`]: PrettyJsonState.PACKAGE_DEPENDENCY - } - }, - [PrettyJsonState.PACKAGE_DEPENDENCY]: { - collapsed: true, - next: { - [`*`]: PrettyJsonState.DEFAULT - } - } - }; - function generateCollapsedArray(data, state, indent) { - let result = ``; - result += `[`; - for (let t = 0, T = data.length; t < T; ++t) { - result += generateNext(String(t), data[t], state, indent).replace(/^ +/g, ``); - if (t + 1 < T) { - result += `, `; - } - } - result += `]`; - return result; - } - function generateExpandedArray(data, state, indent) { - const nextIndent = `${indent} `; - let result = ``; - result += indent; - result += `[ -`; - for (let t = 0, T = data.length; t < T; ++t) { - result += nextIndent + generateNext(String(t), data[t], state, nextIndent).replace(/^ +/, ``); - if (t + 1 < T) - result += `,`; - result += ` -`; - } - result += indent; - result += `]`; - return result; - } - function generateCollapsedObject(data, state, indent) { - const keys = Object.keys(data); - let result = ``; - result += `{`; - for (let t = 0, T = keys.length; t < T; ++t) { - const key = keys[t]; - const value = data[key]; - if (typeof value === `undefined`) - continue; - result += JSON.stringify(key); - result += `: `; - result += generateNext(key, value, state, indent).replace(/^ +/g, ``); - if (t + 1 < T) { - result += `, `; - } - } - result += `}`; - return result; - } - function generateExpandedObject(data, state, indent) { - const keys = Object.keys(data); - const nextIndent = `${indent} `; - let result = ``; - result += indent; - result += `{ -`; - for (let t = 0, T = keys.length; t < T; ++t) { - const key = keys[t]; - const value = data[key]; - if (typeof value === `undefined`) - continue; - result += nextIndent; - result += JSON.stringify(key); - result += `: `; - result += generateNext(key, value, state, nextIndent).replace(/^ +/g, ``); - if (t + 1 < T) - result += `,`; - result += ` -`; - } - result += indent; - result += `}`; - return result; - } - function generateNext(key, data, state, indent) { - const { - next - } = prettyJsonMachine[state]; - const nextState = next[key] || next[`*`]; - return generate(data, nextState, indent); - } - function generate(data, state, indent) { - const { - collapsed - } = prettyJsonMachine[state]; - if (Array.isArray(data)) { - if (collapsed) { - return generateCollapsedArray(data, state, indent); - } else { - return generateExpandedArray(data, state, indent); - } - } - if (typeof data === `object` && data !== null) { - if (collapsed) { - return generateCollapsedObject(data, state, indent); - } else { - return generateExpandedObject(data, state, indent); - } - } - return JSON.stringify(data); - } - function generatePrettyJson(data) { - return generate(data, PrettyJsonState.TOP_LEVEL, ``); - } - function sortMap(values, mappers) { - const asArray = Array.from(values); - if (!Array.isArray(mappers)) - mappers = [mappers]; - const stringified = []; - for (const mapper of mappers) - stringified.push(asArray.map((value) => mapper(value))); - const indices = asArray.map((_, index) => index); - indices.sort((a, b) => { - for (const layer of stringified) { - const comparison = layer[a] < layer[b] ? -1 : layer[a] > layer[b] ? 1 : 0; - if (comparison !== 0) { - return comparison; - } - } - return 0; - }); - return indices.map((index) => { - return asArray[index]; - }); + Object.defineProperty(exports3, "parse", { + enumerable: true, + get: function get() { + return _interopRequireDefault(_parse || _load_parse()).default; } - function generateFallbackExclusionList(settings) { - const fallbackExclusionList = new Map(); - const sortedData = sortMap(settings.fallbackExclusionList || [], [({ - name, - reference - }) => name, ({ - name, - reference - }) => reference]); - for (const { - name, - reference - } of sortedData) { - let references = fallbackExclusionList.get(name); - if (typeof references === `undefined`) - fallbackExclusionList.set(name, references = new Set()); - references.add(reference); - } - return Array.from(fallbackExclusionList).map(([name, references]) => { - return [name, Array.from(references)]; - }); + }); + var _stringify; + function _load_stringify() { + return _stringify = __webpack_require__(150); + } + Object.defineProperty(exports3, "stringify", { + enumerable: true, + get: function get() { + return _interopRequireDefault(_stringify || _load_stringify()).default; } - function generateFallbackPoolData(settings) { - return sortMap(settings.fallbackPool || [], ([name]) => name); - } - function generatePackageRegistryData(settings) { - const packageRegistryData = []; - for (const [packageName, packageStore] of sortMap(settings.packageRegistry, ([packageName2]) => packageName2 === null ? `0` : `1${packageName2}`)) { - const packageStoreData = []; - packageRegistryData.push([packageName, packageStoreData]); - for (const [packageReference, { - packageLocation, - packageDependencies, - packagePeers, - linkType, - discardFromLookup - }] of sortMap(packageStore, ([packageReference2]) => packageReference2 === null ? `0` : `1${packageReference2}`)) { - const normalizedDependencies = []; - if (packageName !== null && packageReference !== null && !packageDependencies.has(packageName)) - normalizedDependencies.push([packageName, packageReference]); - for (const [dependencyName, dependencyReference] of sortMap(packageDependencies.entries(), ([dependencyName2]) => dependencyName2)) - normalizedDependencies.push([dependencyName, dependencyReference]); - const normalizedPeers = packagePeers && packagePeers.size > 0 ? Array.from(packagePeers) : void 0; - const normalizedDiscardFromLookup = discardFromLookup ? discardFromLookup : void 0; - packageStoreData.push([packageReference, { - packageLocation, - packageDependencies: normalizedDependencies, - packagePeers: normalizedPeers, - linkType, - discardFromLookup: normalizedDiscardFromLookup - }]); + }); + exports3.implodeEntry = implodeEntry; + exports3.explodeEntry = explodeEntry; + var _misc; + function _load_misc() { + return _misc = __webpack_require__(12); + } + var _normalizePattern; + function _load_normalizePattern() { + return _normalizePattern = __webpack_require__(29); + } + var _parse2; + function _load_parse2() { + return _parse2 = _interopRequireDefault(__webpack_require__(81)); + } + var _constants; + function _load_constants() { + return _constants = __webpack_require__(6); + } + var _fs; + function _load_fs() { + return _fs = _interopRequireWildcard(__webpack_require__(5)); + } + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) + newObj[key] = obj[key]; } } - return packageRegistryData; - } - function generateLocationBlacklistData(settings) { - return sortMap(settings.blacklistedLocations || [], (location) => location); - } - function generateSerializedState(settings) { - return { - __info: [`This file is automatically generated. Do not touch it, or risk`, `your modifications being lost. We also recommend you not to read`, `it either without using the @yarnpkg/pnp package, as the data layout`, `is entirely unspecified and WILL change from a version to another.`], - dependencyTreeRoots: settings.dependencyTreeRoots, - enableTopLevelFallback: settings.enableTopLevelFallback || false, - ignorePatternData: settings.ignorePattern || null, - fallbackExclusionList: generateFallbackExclusionList(settings), - fallbackPool: generateFallbackPoolData(settings), - locationBlacklistData: generateLocationBlacklistData(settings), - packageRegistryData: generatePackageRegistryData(settings) - }; - } - var hook = __webpack_require__2(650); - var hook_default = /* @__PURE__ */ __webpack_require__2.n(hook); - function generateLoader(shebang, loader) { - return [shebang ? `${shebang} -` : ``, `/* eslint-disable */ - -`, `try { -`, ` Object.freeze({}).detectStrictMode = true; -`, `} catch (error) { -`, ` throw new Error(\`The whole PnP file got strict-mode-ified, which is known to break (Emscripten libraries aren't strict mode). This usually happens when the file goes through Babel.\`); -`, `} -`, ` -`, `var __non_webpack_module__ = module; -`, ` -`, `function $$SETUP_STATE(hydrateRuntimeState, basePath) { -`, loader.replace(/^/gm, ` `), `} -`, ` -`, hook_default()()].join(``); - } - function generateJsonString(data) { - return JSON.stringify(data, null, 2); - } - function generateInlinedSetup(data) { - return [`return hydrateRuntimeState(${generatePrettyJson(data)}, {basePath: basePath || __dirname}); -`].join(``); - } - function generateSplitSetup(dataLocation) { - return [`var path = require('path'); -`, `var dataLocation = path.resolve(__dirname, ${JSON.stringify(dataLocation)}); -`, `return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)}); -`].join(``); - } - function generateInlinedScript(settings) { - const data = generateSerializedState(settings); - const setup = generateInlinedSetup(data); - const loaderFile = generateLoader(settings.shebang, setup); - return loaderFile; - } - function generateSplitScript(settings) { - const data = generateSerializedState(settings); - const setup = generateSplitSetup(settings.dataLocation); - const loaderFile = generateLoader(settings.shebang, setup); - return { - dataFile: generateJsonString(data), - loaderFile - }; + newObj.default = obj; + return newObj; } - const external_fs_namespaceObject = require("fs"); - ; - var external_fs_default = /* @__PURE__ */ __webpack_require__2.n(external_fs_namespaceObject); - const external_path_namespaceObject = require("path"); - ; - var external_path_default = /* @__PURE__ */ __webpack_require__2.n(external_path_namespaceObject); - const external_util_namespaceObject = require("util"); - ; - var PathType; - (function(PathType2) { - PathType2[PathType2["File"] = 0] = "File"; - PathType2[PathType2["Portable"] = 1] = "Portable"; - PathType2[PathType2["Native"] = 2] = "Native"; - })(PathType || (PathType = {})); - const PortablePath = { - root: `/`, - dot: `.` - }; - const Filename = { - nodeModules: `node_modules`, - manifest: `package.json`, - lockfile: `yarn.lock`, - pnpJs: `.pnp.js`, - rc: `.yarnrc.yml` - }; - const npath = Object.create(external_path_default()); - const ppath = Object.create(external_path_default().posix); - npath.cwd = () => process.cwd(); - ppath.cwd = () => toPortablePath(process.cwd()); - ppath.resolve = (...segments) => { - if (segments.length > 0 && ppath.isAbsolute(segments[0])) { - return external_path_default().posix.resolve(...segments); - } else { - return external_path_default().posix.resolve(ppath.cwd(), ...segments); - } - }; - const contains = function(pathUtils, from, to) { - from = pathUtils.normalize(from); - to = pathUtils.normalize(to); - if (from === to) - return `.`; - if (!from.endsWith(pathUtils.sep)) - from = from + pathUtils.sep; - if (to.startsWith(from)) { - return to.slice(from.length); - } else { - return null; - } + } + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + const invariant = __webpack_require__(7); + const path2 = __webpack_require__(0); + const ssri = __webpack_require__(55); + function getName(pattern) { + return (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern).name; + } + function blankObjectUndefined(obj) { + return obj && Object.keys(obj).length ? obj : void 0; + } + function keyForRemote(remote) { + return remote.resolved || (remote.reference && remote.hash ? `${remote.reference}#${remote.hash}` : null); + } + function serializeIntegrity(integrity) { + return integrity.toString().split(" ").sort().join(" "); + } + function implodeEntry(pattern, obj) { + const inferredName = getName(pattern); + const integrity = obj.integrity ? serializeIntegrity(obj.integrity) : ""; + const imploded = { + name: inferredName === obj.name ? void 0 : obj.name, + version: obj.version, + uid: obj.uid === obj.version ? void 0 : obj.uid, + resolved: obj.resolved, + registry: obj.registry === "npm" ? void 0 : obj.registry, + dependencies: blankObjectUndefined(obj.dependencies), + optionalDependencies: blankObjectUndefined(obj.optionalDependencies), + permissions: blankObjectUndefined(obj.permissions), + prebuiltVariants: blankObjectUndefined(obj.prebuiltVariants) }; - npath.fromPortablePath = fromPortablePath; - npath.toPortablePath = toPortablePath; - npath.contains = (from, to) => contains(npath, from, to); - ppath.contains = (from, to) => contains(ppath, from, to); - const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; - const UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/; - const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; - const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; - function fromPortablePath(p) { - if (process.platform !== `win32`) - return p; - if (p.match(PORTABLE_PATH_REGEXP)) - p = p.replace(PORTABLE_PATH_REGEXP, `$1`); - else if (p.match(UNC_PORTABLE_PATH_REGEXP)) - p = p.replace(UNC_PORTABLE_PATH_REGEXP, (match, p1, p2) => `\\\\${p1 ? `.\\` : ``}${p2}`); - else - return p; - return p.replace(/\//g, `\\`); - } - function toPortablePath(p) { - if (process.platform !== `win32`) - return p; - if (p.match(WINDOWS_PATH_REGEXP)) - p = p.replace(WINDOWS_PATH_REGEXP, `/$1`); - else if (p.match(UNC_WINDOWS_PATH_REGEXP)) - p = p.replace(UNC_WINDOWS_PATH_REGEXP, (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`); - return p.replace(/\\/g, `/`); - } - function convertPath(targetPathUtils, sourcePath) { - return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); - } - function toFilename(filename) { - if (npath.parse(filename).dir !== `` || ppath.parse(filename).dir !== ``) - throw new Error(`Invalid filename: "${filename}"`); - return filename; - } - function hydrateRuntimeState(data, { - basePath: basePath2 - }) { - const portablePath = npath.toPortablePath(basePath2); - const absolutePortablePath = ppath.resolve(portablePath); - const ignorePattern = data.ignorePatternData !== null ? new RegExp(data.ignorePatternData) : null; - const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { - return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { - return [packageReference, { - packageLocation: ppath.join(absolutePortablePath, packageInformationData.packageLocation), - packageDependencies: new Map(packageInformationData.packageDependencies), - packagePeers: new Set(packageInformationData.packagePeers), - linkType: packageInformationData.linkType, - discardFromLookup: packageInformationData.discardFromLookup || false - }]; - }))]; - })); - const packageLocatorsByLocations = new Map(); - const packageLocationLengths = new Set(); - for (const [packageName, storeData] of data.packageRegistryData) { - for (const [packageReference, packageInformationData] of storeData) { - if (packageName === null !== (packageReference === null)) - throw new Error(`Assertion failed: The name and reference should be null, or neither should`); - if (packageInformationData.discardFromLookup) - continue; - const packageLocator = { - name: packageName, - reference: packageReference - }; - packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator); - packageLocationLengths.add(packageInformationData.packageLocation.length); - } - } - for (const location of data.locationBlacklistData) - packageLocatorsByLocations.set(location, null); - const fallbackExclusionList = new Map(data.fallbackExclusionList.map(([packageName, packageReferences]) => { - return [packageName, new Set(packageReferences)]; - })); - const fallbackPool = new Map(data.fallbackPool); - const dependencyTreeRoots = data.dependencyTreeRoots; - const enableTopLevelFallback = data.enableTopLevelFallback; - return { - basePath: portablePath, - dependencyTreeRoots, - enableTopLevelFallback, - fallbackExclusionList, - fallbackPool, - ignorePattern, - packageLocationLengths: [...packageLocationLengths].sort((a, b) => b - a), - packageLocatorsByLocations, - packageRegistry - }; + if (integrity) { + imploded.integrity = integrity; } - const external_os_namespaceObject = require("os"); - ; - const defaultTime = new Date(315532800 * 1e3); - async function copyPromise(destinationFs, destination, sourceFs, source, opts) { - const normalizedDestination = destinationFs.pathUtils.normalize(destination); - const normalizedSource = sourceFs.pathUtils.normalize(source); - const prelayout = []; - const postlayout = []; - await destinationFs.mkdirPromise(destinationFs.pathUtils.dirname(destination), { - recursive: true - }); - const updateTime = typeof destinationFs.lutimesPromise === `function` ? destinationFs.lutimesPromise.bind(destinationFs) : destinationFs.utimesPromise.bind(destinationFs); - await copyImpl(prelayout, postlayout, updateTime, destinationFs, normalizedDestination, sourceFs, normalizedSource, opts); - for (const operation of prelayout) - await operation(); - await Promise.all(postlayout.map((operation) => { - return operation(); - })); + return imploded; + } + function explodeEntry(pattern, obj) { + obj.optionalDependencies = obj.optionalDependencies || {}; + obj.dependencies = obj.dependencies || {}; + obj.uid = obj.uid || obj.version; + obj.permissions = obj.permissions || {}; + obj.registry = obj.registry || "npm"; + obj.name = obj.name || getName(pattern); + const integrity = obj.integrity; + if (integrity && integrity.isIntegrity) { + obj.integrity = ssri.parse(integrity); } - async function copyImpl(prelayout, postlayout, updateTime, destinationFs, destination, sourceFs, source, opts) { - var _a, _b; - const destinationStat = await maybeLStat(destinationFs, destination); - const sourceStat = await sourceFs.lstatPromise(source); - const referenceTime = opts.stableTime ? { - mtime: defaultTime, - atime: defaultTime - } : sourceStat; - let updated; - switch (true) { - case sourceStat.isDirectory(): - { - updated = await copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - case sourceStat.isFile(): - { - updated = await copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - case sourceStat.isSymbolicLink(): - { - updated = await copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); - } - break; - default: - { - throw new Error(`Unsupported file type (${sourceStat.mode})`); - } - break; - } - if (updated || ((_a = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _a === void 0 ? void 0 : _a.getTime()) !== referenceTime.mtime.getTime() || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _b === void 0 ? void 0 : _b.getTime()) !== referenceTime.atime.getTime()) { - postlayout.push(() => updateTime(destination, referenceTime.atime, referenceTime.mtime)); - updated = true; - } - if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) { - postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511)); - updated = true; - } - return updated; + return obj; + } + class Lockfile { + constructor({ cache, source, parseResultType } = {}) { + this.source = source || ""; + this.cache = cache; + this.parseResultType = parseResultType; } - async function maybeLStat(baseFs, p) { - try { - return await baseFs.lstatPromise(p); - } catch (e) { - return null; + // source string if the `cache` was parsed + // if true, we're parsing an old yarn file and need to update integrity fields + hasEntriesExistWithoutIntegrity() { + if (!this.cache) { + return false; } - } - async function copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null && !destinationStat.isDirectory()) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } else { - return false; + for (const key in this.cache) { + if (!/^.*@(file:|http)/.test(key) && this.cache[key] && !this.cache[key].integrity) { + return true; } } - let updated = false; - if (destinationStat === null) { - prelayout.push(async () => destinationFs.mkdirPromise(destination, { - mode: sourceStat.mode - })); - updated = true; - } - const entries = await sourceFs.readdirPromise(source); - if (opts.stableSort) { - for (const entry of entries.sort()) { - if (await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts)) { - updated = true; + return false; + } + static fromDirectory(dir, reporter) { + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const lockfileLoc = path2.join(dir, (_constants || _load_constants()).LOCKFILE_FILENAME); + let lockfile; + let rawLockfile = ""; + let parseResult; + if (yield (_fs || _load_fs()).exists(lockfileLoc)) { + rawLockfile = yield (_fs || _load_fs()).readFile(lockfileLoc); + parseResult = (0, (_parse2 || _load_parse2()).default)(rawLockfile, lockfileLoc); + if (reporter) { + if (parseResult.type === "merge") { + reporter.info(reporter.lang("lockfileMerged")); + } else if (parseResult.type === "conflict") { + reporter.warn(reporter.lang("lockfileConflict")); + } } + lockfile = parseResult.object; + } else if (reporter) { + reporter.info(reporter.lang("noLockfileFound")); } - } else { - const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => { - await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts); - })); - if (entriesUpdateStatus.some((status) => status)) { - updated = true; - } - } - return updated; + return new Lockfile({ cache: lockfile, source: rawLockfile, parseResultType: parseResult && parseResult.type }); + })(); } - async function copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } else { - return false; - } + getLocked(pattern) { + const cache = this.cache; + if (!cache) { + return void 0; } - const op = destinationFs === sourceFs ? async () => destinationFs.copyFilePromise(source, destination, external_fs_default().constants.COPYFILE_FICLONE) : async () => destinationFs.writeFilePromise(destination, await sourceFs.readFilePromise(source)); - prelayout.push(async () => op()); - return true; - } - async function copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { - if (destinationStat !== null) { - if (opts.overwrite) { - prelayout.push(async () => destinationFs.removePromise(destination)); - destinationStat = null; - } else { - return false; - } + const shrunk = pattern in cache && cache[pattern]; + if (typeof shrunk === "string") { + return this.getLocked(shrunk); + } else if (shrunk) { + explodeEntry(pattern, shrunk); + return shrunk; } - prelayout.push(async () => { - await destinationFs.symlinkPromise(convertPath(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); - }); - return true; + return void 0; } - class FakeFS { - constructor(pathUtils) { - this.pathUtils = pathUtils; - } - async *genTraversePromise(init, { - stableSort = false - } = {}) { - const stack2 = [init]; - while (stack2.length > 0) { - const p = stack2.shift(); - const entry = await this.lstatPromise(p); - if (entry.isDirectory()) { - const entries = await this.readdirPromise(p); - if (stableSort) { - for (const entry2 of entries.sort()) { - stack2.push(this.pathUtils.join(p, entry2)); - } - } else { - throw new Error(`Not supported`); - } - } else { - yield p; - } - } - } - async removePromise(p, { - recursive = true, - maxRetries = 5 - } = {}) { - let stat; - try { - stat = await this.lstatPromise(p); - } catch (error) { - if (error.code === `ENOENT`) { - return; - } else { - throw error; - } - } - if (stat.isDirectory()) { - if (recursive) - for (const entry of await this.readdirPromise(p)) - await this.removePromise(this.pathUtils.resolve(p, entry)); - let t = 0; - do { - try { - await this.rmdirPromise(p); - break; - } catch (error) { - if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { - if (maxRetries === 0) { - break; - } else { - await new Promise((resolve) => setTimeout(resolve, t * 100)); - continue; - } - } else { - throw error; - } - } - } while (t++ < maxRetries); - } else { - await this.unlinkPromise(p); - } + removePattern(pattern) { + const cache = this.cache; + if (!cache) { + return; } - removeSync(p, { - recursive = true - } = {}) { - let stat; - try { - stat = this.lstatSync(p); - } catch (error) { - if (error.code === `ENOENT`) { - return; - } else { - throw error; - } - } - if (stat.isDirectory()) { - if (recursive) - for (const entry of this.readdirSync(p)) - this.removeSync(this.pathUtils.resolve(p, entry)); - this.rmdirSync(p); + delete cache[pattern]; + } + getLockfile(patterns) { + const lockfile = {}; + const seen = /* @__PURE__ */ new Map(); + const sortedPatternsKeys = Object.keys(patterns).sort((_misc || _load_misc()).sortAlpha); + for (var _iterator = sortedPatternsKeys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { + var _ref; + if (_isArray) { + if (_i >= _iterator.length) + break; + _ref = _iterator[_i++]; } else { - this.unlinkSync(p); - } - } - async mkdirpPromise(p, { - chmod, - utimes - } = {}) { - p = this.resolve(p); - if (p === this.pathUtils.dirname(p)) - return; - const parts = p.split(this.pathUtils.sep); - for (let u = 2; u <= parts.length; ++u) { - const subPath = parts.slice(0, u).join(this.pathUtils.sep); - if (!this.existsSync(subPath)) { - try { - await this.mkdirPromise(subPath); - } catch (error) { - if (error.code === `EEXIST`) { - continue; - } else { - throw error; - } - } - if (chmod != null) - await this.chmodPromise(subPath, chmod); - if (utimes != null) { - await this.utimesPromise(subPath, utimes[0], utimes[1]); - } else { - const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); - await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); - } - } + _i = _iterator.next(); + if (_i.done) + break; + _ref = _i.value; } - } - mkdirpSync(p, { - chmod, - utimes - } = {}) { - p = this.resolve(p); - if (p === this.pathUtils.dirname(p)) - return; - const parts = p.split(this.pathUtils.sep); - for (let u = 2; u <= parts.length; ++u) { - const subPath = parts.slice(0, u).join(this.pathUtils.sep); - if (!this.existsSync(subPath)) { - try { - this.mkdirSync(subPath); - } catch (error) { - if (error.code === `EEXIST`) { - continue; - } else { - throw error; - } - } - if (chmod != null) - this.chmodSync(subPath, chmod); - if (utimes != null) { - this.utimesSync(subPath, utimes[0], utimes[1]); - } else { - const parentStat = this.statSync(this.pathUtils.dirname(subPath)); - this.utimesSync(subPath, parentStat.atime, parentStat.mtime); - } + const pattern = _ref; + const pkg = patterns[pattern]; + const remote = pkg._remote, ref = pkg._reference; + invariant(ref, "Package is missing a reference"); + invariant(remote, "Package is missing a remote"); + const remoteKey = keyForRemote(remote); + const seenPattern = remoteKey && seen.get(remoteKey); + if (seenPattern) { + lockfile[pattern] = seenPattern; + if (!seenPattern.name && getName(pattern) !== pkg.name) { + seenPattern.name = pkg.name; } + continue; } - } - async copyPromise(destination, source, { - baseFs = this, - overwrite = true, - stableSort = false, - stableTime = false - } = {}) { - return await copyPromise(this, destination, baseFs, source, { - overwrite, - stableSort, - stableTime + const obj = implodeEntry(pattern, { + name: pkg.name, + version: pkg.version, + uid: pkg._uid, + resolved: remote.resolved, + integrity: remote.integrity, + registry: remote.registry, + dependencies: pkg.dependencies, + peerDependencies: pkg.peerDependencies, + optionalDependencies: pkg.optionalDependencies, + permissions: ref.permissions, + prebuiltVariants: pkg.prebuiltVariants }); - } - copySync(destination, source, { - baseFs = this, - overwrite = true - } = {}) { - const stat = baseFs.lstatSync(source); - const exists = this.existsSync(destination); - if (stat.isDirectory()) { - this.mkdirpSync(destination); - const directoryListing = baseFs.readdirSync(source); - for (const entry of directoryListing) { - this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { - baseFs, - overwrite - }); - } - } else if (stat.isFile()) { - if (!exists || overwrite) { - if (exists) - this.removeSync(destination); - const content = baseFs.readFileSync(source); - this.writeFileSync(destination, content); - } - } else if (stat.isSymbolicLink()) { - if (!exists || overwrite) { - if (exists) - this.removeSync(destination); - const target = baseFs.readlinkSync(source); - this.symlinkSync(convertPath(this.pathUtils, target), destination); - } - } else { - throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); - } - const mode = stat.mode & 511; - this.chmodSync(destination, mode); - } - async changeFilePromise(p, content, opts = {}) { - if (Buffer.isBuffer(content)) { - return this.changeFileBufferPromise(p, content); - } else { - return this.changeFileTextPromise(p, content, opts); - } - } - async changeFileBufferPromise(p, content) { - let current = Buffer.alloc(0); - try { - current = await this.readFilePromise(p); - } catch (error) { - } - if (Buffer.compare(current, content) === 0) - return; - await this.writeFilePromise(p, content); - } - async changeFileTextPromise(p, content, { - automaticNewlines - } = {}) { - let current = ``; - try { - current = await this.readFilePromise(p, `utf8`); - } catch (error) { + lockfile[pattern] = obj; + if (remoteKey) { + seen.set(remoteKey, obj); } - const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; - if (current === normalizedContent) - return; - await this.writeFilePromise(p, normalizedContent); } - changeFileSync(p, content, opts = {}) { - if (Buffer.isBuffer(content)) { - return this.changeFileBufferSync(p, content); + return lockfile; + } + } + exports3.default = Lockfile; + }, + , + , + /* 17 */ + /***/ + function(module3, exports3) { + module3.exports = require("stream"); + }, + , + , + /* 20 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.default = nullify; + function nullify(obj = {}) { + if (Array.isArray(obj)) { + for (var _iterator = obj, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { + var _ref; + if (_isArray) { + if (_i >= _iterator.length) + break; + _ref = _iterator[_i++]; } else { - return this.changeFileTextSync(p, content, opts); - } - } - changeFileBufferSync(p, content) { - let current = Buffer.alloc(0); - try { - current = this.readFileSync(p); - } catch (error) { - } - if (Buffer.compare(current, content) === 0) - return; - this.writeFileSync(p, content); - } - changeFileTextSync(p, content, { - automaticNewlines = false - } = {}) { - let current = ``; - try { - current = this.readFileSync(p, `utf8`); - } catch (error) { - } - const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; - if (current === normalizedContent) - return; - this.writeFileSync(p, normalizedContent); - } - async movePromise(fromP, toP) { - try { - await this.renamePromise(fromP, toP); - } catch (error) { - if (error.code === `EXDEV`) { - await this.copyPromise(toP, fromP); - await this.removePromise(fromP); - } else { - throw error; - } - } - } - moveSync(fromP, toP) { - try { - this.renameSync(fromP, toP); - } catch (error) { - if (error.code === `EXDEV`) { - this.copySync(toP, fromP); - this.removeSync(fromP); - } else { - throw error; - } - } - } - async lockPromise(affectedPath, callback) { - const lockPath = `${affectedPath}.flock`; - const interval = 1e3 / 60; - const startTime = Date.now(); - let fd = null; - const isAlive = async () => { - let pid; - try { - [pid] = await this.readJsonPromise(lockPath); - } catch (error) { - return Date.now() - startTime < 500; - } - try { - process.kill(pid, 0); - return true; - } catch (error) { - return false; - } - }; - while (fd === null) { - try { - fd = await this.openPromise(lockPath, `wx`); - } catch (error) { - if (error.code === `EEXIST`) { - if (!await isAlive()) { - try { - await this.unlinkPromise(lockPath); - continue; - } catch (error2) { - } - } - if (Date.now() - startTime < 60 * 1e3) { - await new Promise((resolve) => setTimeout(resolve, interval)); - } else { - throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); - } - } else { - throw error; - } - } - } - await this.writePromise(fd, JSON.stringify([process.pid])); - try { - return await callback(); - } finally { - try { - await this.closePromise(fd); - await this.unlinkPromise(lockPath); - } catch (error) { - } - } - } - async readJsonPromise(p) { - const content = await this.readFilePromise(p, `utf8`); - try { - return JSON.parse(content); - } catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - readJsonSync(p) { - const content = this.readFileSync(p, `utf8`); - try { - return JSON.parse(content); - } catch (error) { - error.message += ` (in ${p})`; - throw error; - } - } - async writeJsonPromise(p, data) { - return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)} -`); - } - writeJsonSync(p, data) { - return this.writeFileSync(p, `${JSON.stringify(data, null, 2)} -`); - } - async preserveTimePromise(p, cb) { - const stat = await this.lstatPromise(p); - const result = await cb(); - if (typeof result !== `undefined`) - p = result; - if (this.lutimesPromise) { - await this.lutimesPromise(p, stat.atime, stat.mtime); - } else if (!stat.isSymbolicLink()) { - await this.utimesPromise(p, stat.atime, stat.mtime); + _i = _iterator.next(); + if (_i.done) + break; + _ref = _i.value; } + const item = _ref; + nullify(item); } - async preserveTimeSync(p, cb) { - const stat = this.lstatSync(p); - const result = cb(); - if (typeof result !== `undefined`) - p = result; - if (this.lutimesSync) { - this.lutimesSync(p, stat.atime, stat.mtime); - } else if (!stat.isSymbolicLink()) { - this.utimesSync(p, stat.atime, stat.mtime); + } else if (obj !== null && typeof obj === "object" || typeof obj === "function") { + Object.setPrototypeOf(obj, null); + if (typeof obj === "object") { + for (const key in obj) { + nullify(obj[key]); } } } - FakeFS.DEFAULT_TIME = 315532800; - class BasePortableFakeFS extends FakeFS { - constructor() { - super(ppath); - } - } - function getEndOfLine(content) { - const matches = content.match(/\r?\n/g); - if (matches === null) - return external_os_namespaceObject.EOL; - const crlf = matches.filter((nl) => nl === `\r -`).length; - const lf = matches.length - crlf; - return crlf > lf ? `\r -` : ` -`; - } - function normalizeLineEndings(originalContent, newContent) { - return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); - } - function makeError(code, message2) { - return Object.assign(new Error(`${code}: ${message2}`), { - code - }); - } - function EBUSY(message2) { - return makeError(`EBUSY`, message2); - } - function ENOSYS(message2, reason) { - return makeError(`ENOSYS`, `${message2}, ${reason}`); - } - function EINVAL(reason) { - return makeError(`EINVAL`, `invalid argument, ${reason}`); - } - function EBADF(reason) { - return makeError(`EBADF`, `bad file descriptor, ${reason}`); - } - function ENOENT(reason) { - return makeError(`ENOENT`, `no such file or directory, ${reason}`); + return obj; + } + }, + , + /* 22 */ + /***/ + function(module3, exports3) { + module3.exports = require("assert"); + }, + /* 23 */ + /***/ + function(module3, exports3) { + var core = module3.exports = { version: "2.5.7" }; + if (typeof __e == "number") + __e = core; + }, + , + , + , + /* 27 */ + /***/ + function(module3, exports3, __webpack_require__) { + var isObject = __webpack_require__(34); + module3.exports = function(it) { + if (!isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + }, + , + /* 29 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.normalizePattern = normalizePattern; + function normalizePattern(pattern) { + let hasVersion = false; + let range = "latest"; + let name = pattern; + let isScoped = false; + if (name[0] === "@") { + isScoped = true; + name = name.slice(1); } - function ENOTDIR(reason) { - return makeError(`ENOTDIR`, `not a directory, ${reason}`); + const parts = name.split("@"); + if (parts.length > 1) { + name = parts.shift(); + range = parts.join("@"); + if (range) { + hasVersion = true; + } else { + range = "*"; + } } - function EISDIR(reason) { - return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); + if (isScoped) { + name = `@${name}`; } - function EEXIST(reason) { - return makeError(`EEXIST`, `file already exists, ${reason}`); + return { name, range, hasVersion }; + } + }, + , + /* 31 */ + /***/ + function(module3, exports3, __webpack_require__) { + var dP = __webpack_require__(50); + var createDesc = __webpack_require__(106); + module3.exports = __webpack_require__(33) ? function(object, key, value) { + return dP.f(object, key, createDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + }, + /* 32 */ + /***/ + function(module3, exports3, __webpack_require__) { + var buffer = __webpack_require__(63); + var Buffer2 = buffer.Buffer; + function copyProps(src, dst) { + for (var key in src) { + dst[key] = src[key]; } - function EROFS(reason) { - return makeError(`EROFS`, `read-only filesystem, ${reason}`); + } + if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { + module3.exports = buffer; + } else { + copyProps(buffer, exports3); + exports3.Buffer = SafeBuffer; + } + function SafeBuffer(arg, encodingOrOffset, length) { + return Buffer2(arg, encodingOrOffset, length); + } + copyProps(Buffer2, SafeBuffer); + SafeBuffer.from = function(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + throw new TypeError("Argument must not be a number"); } - function ENOTEMPTY(reason) { - return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); + return Buffer2(arg, encodingOrOffset, length); + }; + SafeBuffer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); } - function EOPNOTSUPP(reason) { - return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); + var buf = Buffer2(size); + if (fill !== void 0) { + if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + } else { + buf.fill(0); } - function ERR_DIR_CLOSED() { - return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); + return buf; + }; + SafeBuffer.allocUnsafe = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); } - class LibzipError extends Error { - constructor(message2, code) { - super(message2); - this.name = `Libzip Error`; - this.code = code; - } + return Buffer2(size); + }; + SafeBuffer.allocUnsafeSlow = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); } - class NodeFS extends BasePortableFakeFS { - constructor(realFs = external_fs_default()) { - super(); - this.realFs = realFs; - if (typeof this.realFs.lutimes !== `undefined`) { - this.lutimesPromise = this.lutimesPromiseImpl; - this.lutimesSync = this.lutimesSyncImpl; - } - } - getExtractHint() { - return false; - } - getRealPath() { - return PortablePath.root; - } - resolve(p) { - return ppath.resolve(p); - } - async openPromise(p, flags, mode) { - return await new Promise((resolve, reject) => { - this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); - }); - } - openSync(p, flags, mode) { - return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); - } - async opendirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (typeof opts !== `undefined`) { - this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - } - }).then((dir) => { - return Object.defineProperty(dir, `path`, { - value: p, - configurable: true, - writable: true - }); - }); - } - opendirSync(p, opts) { - const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); - return Object.defineProperty(dir, `path`, { - value: p, - configurable: true, - writable: true - }); - } - async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { - return await new Promise((resolve, reject) => { - this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { - if (error) { - reject(error); - } else { - resolve(bytesRead); - } - }); - }); - } - readSync(fd, buffer, offset, length, position) { - return this.realFs.readSync(fd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - return await new Promise((resolve, reject) => { - if (typeof buffer === `string`) { - return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); - } else { - return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); - } - }); - } - writeSync(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return this.realFs.writeSync(fd, buffer, offset); - } else { - return this.realFs.writeSync(fd, buffer, offset, length, position); - } - } - async closePromise(fd) { - await new Promise((resolve, reject) => { - this.realFs.close(fd, this.makeCallback(resolve, reject)); - }); - } - closeSync(fd) { - this.realFs.closeSync(fd); - } - createReadStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createReadStream(realPath, opts); - } - createWriteStream(p, opts) { - const realPath = p !== null ? npath.fromPortablePath(p) : p; - return this.realFs.createWriteStream(realPath, opts); - } - async realpathPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); - } - realpathSync(p) { - return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); - } - async existsPromise(p) { - return await new Promise((resolve) => { - this.realFs.exists(npath.fromPortablePath(p), resolve); - }); - } - accessSync(p, mode) { - return this.realFs.accessSync(npath.fromPortablePath(p), mode); - } - async accessPromise(p, mode) { - return await new Promise((resolve, reject) => { - this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); - }); - } - existsSync(p) { - return this.realFs.existsSync(npath.fromPortablePath(p)); - } - async statPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); - } - statSync(p) { - return this.realFs.statSync(npath.fromPortablePath(p)); - } - async lstatPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); - } - lstatSync(p) { - return this.realFs.lstatSync(npath.fromPortablePath(p)); - } - async chmodPromise(p, mask) { - return await new Promise((resolve, reject) => { - this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); - }); - } - chmodSync(p, mask) { - return this.realFs.chmodSync(npath.fromPortablePath(p), mask); - } - async chownPromise(p, uid, gid) { - return await new Promise((resolve, reject) => { - this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); - }); - } - chownSync(p, uid, gid) { - return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); - } - async renamePromise(oldP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - renameSync(oldP, newP) { - return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); - } - async copyFilePromise(sourceP, destP, flags = 0) { - return await new Promise((resolve, reject) => { - this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); - }); - } - copyFileSync(sourceP, destP, flags = 0) { - return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); - } - async appendFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + return buffer.SlowBuffer(size); + }; + }, + /* 33 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = !__webpack_require__(85)(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + }, + /* 34 */ + /***/ + function(module3, exports3) { + module3.exports = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + }, + /* 35 */ + /***/ + function(module3, exports3) { + module3.exports = {}; + }, + /* 36 */ + /***/ + function(module3, exports3) { + module3.exports = require("os"); + }, + , + , + , + /* 40 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.wait = wait; + exports3.promisify = promisify; + exports3.queue = queue; + function wait(delay) { + return new Promise((resolve) => { + setTimeout(resolve, delay); + }); + } + function promisify(fn2, firstData) { + return function(...args2) { + return new Promise(function(resolve, reject) { + args2.push(function(err, ...result2) { + let res = result2; + if (result2.length <= 1) { + res = result2[0]; } - }); - } - appendFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.appendFileSync(fsNativePath, content, opts); - } else { - this.realFs.appendFileSync(fsNativePath, content); - } - } - async writeFilePromise(p, content, opts) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); - } else { - this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + if (firstData) { + res = err; + err = null; } - }); - } - writeFileSync(p, content, opts) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - if (opts) { - this.realFs.writeFileSync(fsNativePath, content, opts); - } else { - this.realFs.writeFileSync(fsNativePath, content); - } - } - async unlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }); - } - unlinkSync(p) { - return this.realFs.unlinkSync(npath.fromPortablePath(p)); - } - async utimesPromise(p, atime, mtime) { - return await new Promise((resolve, reject) => { - this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - utimesSync(p, atime, mtime) { - this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); - } - async lutimesPromiseImpl(p, atime, mtime) { - const lutimes = this.realFs.lutimes; - if (typeof lutimes === `undefined`) - throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); - return await new Promise((resolve, reject) => { - lutimes.call(this.realFs, npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); - }); - } - lutimesSyncImpl(p, atime, mtime) { - const lutimesSync = this.realFs.lutimesSync; - if (typeof lutimesSync === `undefined`) - throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); - lutimesSync.call(this.realFs, npath.fromPortablePath(p), atime, mtime); - } - async mkdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); - }); - } - mkdirSync(p, opts) { - return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); - } - async rmdirPromise(p, opts) { - return await new Promise((resolve, reject) => { - if (opts) { - this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + if (err) { + reject(err); } else { - this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + resolve(res); } }); + fn2.apply(null, args2); + }); + }; + } + function queue(arr, promiseProducer, concurrency = Infinity) { + concurrency = Math.min(concurrency, arr.length); + arr = arr.slice(); + const results = []; + let total = arr.length; + if (!total) { + return Promise.resolve(results); + } + return new Promise((resolve, reject) => { + for (let i = 0; i < concurrency; i++) { + next(); } - rmdirSync(p, opts) { - return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); - } - async linkPromise(existingP, newP) { - return await new Promise((resolve, reject) => { - this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); - }); - } - linkSync(existingP, newP) { - return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); - } - async symlinkPromise(target, p, type) { - const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); - return await new Promise((resolve, reject) => { - this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType, this.makeCallback(resolve, reject)); - }); - } - symlinkSync(target, p, type) { - const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); - return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType); - } - async readFilePromise(p, encoding) { - return await new Promise((resolve, reject) => { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); - }); - } - readFileSync(p, encoding) { - const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; - return this.realFs.readFileSync(fsNativePath, encoding); - } - async readdirPromise(p, { - withFileTypes - } = {}) { - return await new Promise((resolve, reject) => { - if (withFileTypes) { - this.realFs.readdir(npath.fromPortablePath(p), { - withFileTypes: true - }, this.makeCallback(resolve, reject)); + function next() { + const item = arr.shift(); + const promise = promiseProducer(item); + promise.then(function(result2) { + results.push(result2); + total--; + if (total === 0) { + resolve(results); } else { - this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject)); + if (arr.length) { + next(); + } } - }); - } - readdirSync(p, { - withFileTypes - } = {}) { - if (withFileTypes) { - return this.realFs.readdirSync(npath.fromPortablePath(p), { - withFileTypes: true - }); - } else { - return this.realFs.readdirSync(npath.fromPortablePath(p)); - } - } - async readlinkPromise(p) { - return await new Promise((resolve, reject) => { - this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); - }).then((path) => { - return npath.toPortablePath(path); - }); - } - readlinkSync(p) { - return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); - } - async truncatePromise(p, len) { - return await new Promise((resolve, reject) => { - this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); - }); - } - truncateSync(p, len) { - return this.realFs.truncateSync(npath.fromPortablePath(p), len); - } - watch(p, a, b) { - return this.realFs.watch(npath.fromPortablePath(p), a, b); - } - watchFile(p, a, b) { - return this.realFs.watchFile(npath.fromPortablePath(p), a, b); - } - unwatchFile(p, cb) { - return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); + }, reject); } - makeCallback(resolve, reject) { - return (err, result) => { - if (err) { - reject(err); - } else { - resolve(result); + }); + } + }, + /* 41 */ + /***/ + function(module3, exports3, __webpack_require__) { + var global2 = __webpack_require__(11); + var core = __webpack_require__(23); + var ctx = __webpack_require__(48); + var hide = __webpack_require__(31); + var has = __webpack_require__(49); + var PROTOTYPE = "prototype"; + var $export = function(type, name, source) { + var IS_FORCED = type & $export.F; + var IS_GLOBAL = type & $export.G; + var IS_STATIC = type & $export.S; + var IS_PROTO = type & $export.P; + var IS_BIND = type & $export.B; + var IS_WRAP = type & $export.W; + var exports4 = IS_GLOBAL ? core : core[name] || (core[name] = {}); + var expProto = exports4[PROTOTYPE]; + var target = IS_GLOBAL ? global2 : IS_STATIC ? global2[name] : (global2[name] || {})[PROTOTYPE]; + var key, own, out; + if (IS_GLOBAL) + source = name; + for (key in source) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && has(exports4, key)) + continue; + out = own ? target[key] : source[key]; + exports4[key] = IS_GLOBAL && typeof target[key] != "function" ? source[key] : IS_BIND && own ? ctx(out, global2) : IS_WRAP && target[key] == out ? function(C) { + var F = function(a, b, c) { + if (this instanceof C) { + switch (arguments.length) { + case 0: + return new C(); + case 1: + return new C(a); + case 2: + return new C(a, b); + } + return new C(a, b, c); } + return C.apply(this, arguments); }; + F[PROTOTYPE] = C[PROTOTYPE]; + return F; + }(out) : IS_PROTO && typeof out == "function" ? ctx(Function.call, out) : out; + if (IS_PROTO) { + (exports4.virtual || (exports4.virtual = {}))[key] = out; + if (type & $export.R && expProto && !expProto[key]) + hide(expProto, key, out); } } - class ProxiedFS extends FakeFS { - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - resolve(path) { - return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); - } - getRealPath() { - return this.mapFromBase(this.baseFs.getRealPath()); - } - async openPromise(p, flags, mode) { - return this.baseFs.openPromise(this.mapToBase(p), flags, mode); - } - openSync(p, flags, mode) { - return this.baseFs.openSync(this.mapToBase(p), flags, mode); - } - async opendirPromise(p, opts) { - return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { - path: p - }); - } - opendirSync(p, opts) { - return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { - path: p - }); - } - async readPromise(fd, buffer, offset, length, position) { - return await this.baseFs.readPromise(fd, buffer, offset, length, position); - } - readSync(fd, buffer, offset, length, position) { - return this.baseFs.readSync(fd, buffer, offset, length, position); - } - async writePromise(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return await this.baseFs.writePromise(fd, buffer, offset); - } else { - return await this.baseFs.writePromise(fd, buffer, offset, length, position); - } - } - writeSync(fd, buffer, offset, length, position) { - if (typeof buffer === `string`) { - return this.baseFs.writeSync(fd, buffer, offset); - } else { - return this.baseFs.writeSync(fd, buffer, offset, length, position); - } - } - async closePromise(fd) { - return this.baseFs.closePromise(fd); - } - closeSync(fd) { - this.baseFs.closeSync(fd); - } - createReadStream(p, opts) { - return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); - } - createWriteStream(p, opts) { - return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); - } - async realpathPromise(p) { - return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); - } - realpathSync(p) { - return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); - } - async existsPromise(p) { - return this.baseFs.existsPromise(this.mapToBase(p)); - } - existsSync(p) { - return this.baseFs.existsSync(this.mapToBase(p)); - } - accessSync(p, mode) { - return this.baseFs.accessSync(this.mapToBase(p), mode); - } - async accessPromise(p, mode) { - return this.baseFs.accessPromise(this.mapToBase(p), mode); - } - async statPromise(p) { - return this.baseFs.statPromise(this.mapToBase(p)); - } - statSync(p) { - return this.baseFs.statSync(this.mapToBase(p)); - } - async lstatPromise(p) { - return this.baseFs.lstatPromise(this.mapToBase(p)); - } - lstatSync(p) { - return this.baseFs.lstatSync(this.mapToBase(p)); - } - async chmodPromise(p, mask) { - return this.baseFs.chmodPromise(this.mapToBase(p), mask); - } - chmodSync(p, mask) { - return this.baseFs.chmodSync(this.mapToBase(p), mask); - } - async chownPromise(p, uid, gid) { - return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); - } - chownSync(p, uid, gid) { - return this.baseFs.chownSync(this.mapToBase(p), uid, gid); - } - async renamePromise(oldP, newP) { - return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); - } - renameSync(oldP, newP) { - return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); - } - async copyFilePromise(sourceP, destP, flags = 0) { - return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); - } - copyFileSync(sourceP, destP, flags = 0) { - return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); - } - async appendFilePromise(p, content, opts) { - return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); - } - appendFileSync(p, content, opts) { - return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); - } - async writeFilePromise(p, content, opts) { - return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); - } - writeFileSync(p, content, opts) { - return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); - } - async unlinkPromise(p) { - return this.baseFs.unlinkPromise(this.mapToBase(p)); - } - unlinkSync(p) { - return this.baseFs.unlinkSync(this.mapToBase(p)); - } - async utimesPromise(p, atime, mtime) { - return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); - } - utimesSync(p, atime, mtime) { - return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); - } - async mkdirPromise(p, opts) { - return this.baseFs.mkdirPromise(this.mapToBase(p), opts); - } - mkdirSync(p, opts) { - return this.baseFs.mkdirSync(this.mapToBase(p), opts); - } - async rmdirPromise(p, opts) { - return this.baseFs.rmdirPromise(this.mapToBase(p), opts); - } - rmdirSync(p, opts) { - return this.baseFs.rmdirSync(this.mapToBase(p), opts); - } - async linkPromise(existingP, newP) { - return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); - } - linkSync(existingP, newP) { - return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); - } - async symlinkPromise(target, p, type) { - return this.baseFs.symlinkPromise(this.mapToBase(target), this.mapToBase(p), type); - } - symlinkSync(target, p, type) { - return this.baseFs.symlinkSync(this.mapToBase(target), this.mapToBase(p), type); - } - async readFilePromise(p, encoding) { - if (encoding === `utf8`) { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); - } else { - return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); - } - } - readFileSync(p, encoding) { - if (encoding === `utf8`) { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); - } else { - return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); - } - } - async readdirPromise(p, { - withFileTypes - } = {}) { - return this.baseFs.readdirPromise(this.mapToBase(p), { - withFileTypes - }); - } - readdirSync(p, { - withFileTypes - } = {}) { - return this.baseFs.readdirSync(this.mapToBase(p), { - withFileTypes - }); - } - async readlinkPromise(p) { - return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); - } - readlinkSync(p) { - return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); - } - async truncatePromise(p, len) { - return this.baseFs.truncatePromise(this.mapToBase(p), len); - } - truncateSync(p, len) { - return this.baseFs.truncateSync(this.mapToBase(p), len); - } - watch(p, a, b) { - return this.baseFs.watch(this.mapToBase(p), a, b); - } - watchFile(p, a, b) { - return this.baseFs.watchFile(this.mapToBase(p), a, b); - } - unwatchFile(p, cb) { - return this.baseFs.unwatchFile(this.mapToBase(p), cb); - } - fsMapToBase(p) { - if (typeof p === `number`) { - return p; - } else { - return this.mapToBase(p); - } - } - } - const NUMBER_REGEXP = /^[0-9]+$/; - const VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?\$\$virtual)((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; - const VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; - class VirtualFS extends ProxiedFS { - constructor({ - baseFs = new NodeFS() - } = {}) { - super(ppath); - this.baseFs = baseFs; - } - static makeVirtualPath(base, component, to) { - if (ppath.basename(base) !== `$$virtual`) - throw new Error(`Assertion failed: Virtual folders must be named "$$virtual"`); - if (!ppath.basename(component).match(VALID_COMPONENT)) - throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); - const target = ppath.relative(ppath.dirname(base), to); - const segments = target.split(`/`); - let depth = 0; - while (depth < segments.length && segments[depth] === `..`) - depth += 1; - const finalSegments = segments.slice(depth); - const fullVirtualPath = ppath.join(base, component, String(depth), ...finalSegments); - return fullVirtualPath; - } - static resolveVirtual(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match || !match[3] && match[5]) - return p; - const target = ppath.dirname(match[1]); - if (!match[3] || !match[4]) - return target; - const isnum = NUMBER_REGEXP.test(match[4]); - if (!isnum) - return p; - const depth = Number(match[4]); - const backstep = `../`.repeat(depth); - const subpath = match[5] || `.`; - return VirtualFS.resolveVirtual(ppath.join(target, backstep, subpath)); - } - getExtractHint(hints) { - return this.baseFs.getExtractHint(hints); - } - getRealPath() { - return this.baseFs.getRealPath(); - } - realpathSync(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return this.baseFs.realpathSync(p); - if (!match[5]) - return p; - const realpath = this.baseFs.realpathSync(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); - } - async realpathPromise(p) { - const match = p.match(VIRTUAL_REGEXP); - if (!match) - return await this.baseFs.realpathPromise(p); - if (!match[5]) - return p; - const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); - return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + module3.exports = $export; + }, + /* 42 */ + /***/ + function(module3, exports3, __webpack_require__) { + try { + var util = __webpack_require__(2); + if (typeof util.inherits !== "function") + throw ""; + module3.exports = util.inherits; + } catch (e) { + module3.exports = __webpack_require__(224); + } + }, + , + , + /* 45 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.home = void 0; + var _rootUser; + function _load_rootUser() { + return _rootUser = _interopRequireDefault(__webpack_require__(169)); + } + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + const path2 = __webpack_require__(0); + const home = exports3.home = __webpack_require__(36).homedir(); + const userHomeDir = (_rootUser || _load_rootUser()).default ? path2.resolve("/usr/local/share") : home; + exports3.default = userHomeDir; + }, + /* 46 */ + /***/ + function(module3, exports3) { + module3.exports = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + }, + /* 47 */ + /***/ + function(module3, exports3) { + var toString = {}.toString; + module3.exports = function(it) { + return toString.call(it).slice(8, -1); + }; + }, + /* 48 */ + /***/ + function(module3, exports3, __webpack_require__) { + var aFunction = __webpack_require__(46); + module3.exports = function(fn2, that, length) { + aFunction(fn2); + if (that === void 0) + return fn2; + switch (length) { + case 1: + return function(a) { + return fn2.call(that, a); + }; + case 2: + return function(a, b) { + return fn2.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn2.call(that, a, b, c); + }; + } + return function() { + return fn2.apply(that, arguments); + }; + }; + }, + /* 49 */ + /***/ + function(module3, exports3) { + var hasOwnProperty = {}.hasOwnProperty; + module3.exports = function(it, key) { + return hasOwnProperty.call(it, key); + }; + }, + /* 50 */ + /***/ + function(module3, exports3, __webpack_require__) { + var anObject = __webpack_require__(27); + var IE8_DOM_DEFINE = __webpack_require__(184); + var toPrimitive = __webpack_require__(201); + var dP = Object.defineProperty; + exports3.f = __webpack_require__(33) ? Object.defineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) + try { + return dP(O, P, Attributes); + } catch (e) { } - mapToBase(p) { - return VirtualFS.resolveVirtual(p); + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + }, + , + , + , + /* 54 */ + /***/ + function(module3, exports3) { + module3.exports = require("events"); + }, + /* 55 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + const Buffer2 = __webpack_require__(32).Buffer; + const crypto6 = __webpack_require__(9); + const Transform = __webpack_require__(17).Transform; + const SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"]; + const BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i; + const SRI_REGEX = /^([^-]+)-([^?]+)([?\S*]*)$/; + const STRICT_SRI_REGEX = /^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/; + const VCHAR_REGEX = /^[\x21-\x7E]+$/; + class Hash { + get isHash() { + return true; + } + constructor(hash, opts) { + const strict = !!(opts && opts.strict); + this.source = hash.trim(); + const match = this.source.match( + strict ? STRICT_SRI_REGEX : SRI_REGEX + ); + if (!match) { + return; } - mapFromBase(p) { - return p; + if (strict && !SPEC_ALGORITHMS.some((a) => a === match[1])) { + return; } + this.algorithm = match[1]; + this.digest = match[2]; + const rawOpts = match[3]; + this.options = rawOpts ? rawOpts.slice(1).split("?") : []; } - const external_module_namespaceObject = require("module"); - ; - var ErrorCode; - (function(ErrorCode2) { - ErrorCode2["API_ERROR"] = "API_ERROR"; - ErrorCode2["BLACKLISTED"] = "BLACKLISTED"; - ErrorCode2["BUILTIN_NODE_RESOLUTION_FAILED"] = "BUILTIN_NODE_RESOLUTION_FAILED"; - ErrorCode2["MISSING_DEPENDENCY"] = "MISSING_DEPENDENCY"; - ErrorCode2["MISSING_PEER_DEPENDENCY"] = "MISSING_PEER_DEPENDENCY"; - ErrorCode2["QUALIFIED_PATH_RESOLUTION_FAILED"] = "QUALIFIED_PATH_RESOLUTION_FAILED"; - ErrorCode2["INTERNAL"] = "INTERNAL"; - ErrorCode2["UNDECLARED_DEPENDENCY"] = "UNDECLARED_DEPENDENCY"; - ErrorCode2["UNSUPPORTED"] = "UNSUPPORTED"; - })(ErrorCode || (ErrorCode = {})); - const MODULE_NOT_FOUND_ERRORS = new Set([ErrorCode.BLACKLISTED, ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, ErrorCode.MISSING_DEPENDENCY, ErrorCode.MISSING_PEER_DEPENDENCY, ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, ErrorCode.UNDECLARED_DEPENDENCY]); - function internalTools_makeError(pnpCode, message2, data = {}) { - const code = MODULE_NOT_FOUND_ERRORS.has(pnpCode) ? `MODULE_NOT_FOUND` : pnpCode; - const propertySpec = { - configurable: true, - writable: true, - enumerable: false - }; - return Object.defineProperties(new Error(message2), { - code: { - ...propertySpec, - value: code - }, - pnpCode: { - ...propertySpec, - value: pnpCode - }, - data: { - ...propertySpec, - value: data - } - }); + hexDigest() { + return this.digest && Buffer2.from(this.digest, "base64").toString("hex"); } - function getIssuerModule(parent) { - let issuer = parent; - while (issuer && (issuer.id === `[eval]` || issuer.id === `` || !issuer.filename)) - issuer = issuer.parent; - return issuer || null; - } - function getPathForDisplay(p) { - return npath.normalize(npath.fromPortablePath(p)); - } - function makeApi(runtimeState, opts) { - const alwaysWarnOnFallback = Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK) > 0; - const debugLevel = Number(process.env.PNP_DEBUG_LEVEL); - const builtinModules = new Set(external_module_namespaceObject.Module.builtinModules || Object.keys(process.binding(`natives`))); - const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/; - const isStrictRegExp = /^(\/|\.{1,2}(\/|$))/; - const isDirRegExp = /\/$/; - const topLevelLocator = { - name: null, - reference: null - }; - const fallbackLocators = []; - const emittedWarnings = new Set(); - if (runtimeState.enableTopLevelFallback === true) - fallbackLocators.push(topLevelLocator); - if (opts.compatibilityMode !== false) { - for (const name of [`react-scripts`, `gatsby`]) { - const packageStore = runtimeState.packageRegistry.get(name); - if (packageStore) { - for (const reference of packageStore.keys()) { - if (reference === null) { - throw new Error(`Assertion failed: This reference shouldn't be null`); - } else { - fallbackLocators.push({ - name, - reference - }); - } - } - } - } - } - const { - ignorePattern, - packageRegistry, - packageLocatorsByLocations, - packageLocationLengths - } = runtimeState; - function makeLogEntry(name, args2) { - return { - fn: name, - args: args2, - error: null, - result: null - }; - } - function maybeLog(name, fn2) { - if (opts.allowDebug === false) - return fn2; - if (Number.isFinite(debugLevel)) { - if (debugLevel >= 2) { - return (...args2) => { - const logEntry = makeLogEntry(name, args2); - try { - return logEntry.result = fn2(...args2); - } catch (error) { - throw logEntry.error = error; - } finally { - console.trace(logEntry); - } - }; - } else if (debugLevel >= 1) { - return (...args2) => { - try { - return fn2(...args2); - } catch (error) { - const logEntry = makeLogEntry(name, args2); - logEntry.error = error; - console.trace(logEntry); - throw error; - } - }; - } + toJSON() { + return this.toString(); + } + toString(opts) { + if (opts && opts.strict) { + if (!// The spec has very restricted productions for algorithms. + // https://www.w3.org/TR/CSP2/#source-list-syntax + (SPEC_ALGORITHMS.some((x) => x === this.algorithm) && // Usually, if someone insists on using a "different" base64, we + // leave it as-is, since there's multiple standards, and the + // specified is not a URL-safe variant. + // https://www.w3.org/TR/CSP2/#base64_value + this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars. + // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression + // https://tools.ietf.org/html/rfc5234#appendix-B.1 + (this.options || []).every((opt) => opt.match(VCHAR_REGEX)))) { + return ""; } - return fn2; } - function getPackageInformationSafe(packageLocator) { - const packageInformation = getPackageInformation(packageLocator); - if (!packageInformation) { - throw internalTools_makeError(ErrorCode.INTERNAL, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`); - } - return packageInformation; + const options = this.options && this.options.length ? `?${this.options.join("?")}` : ""; + return `${this.algorithm}-${this.digest}${options}`; + } + } + class Integrity { + get isIntegrity() { + return true; + } + toJSON() { + return this.toString(); + } + toString(opts) { + opts = opts || {}; + let sep = opts.sep || " "; + if (opts.strict) { + sep = sep.replace(/\S+/g, " "); } - function isDependencyTreeRoot(packageLocator) { - if (packageLocator.name === null) - return true; - for (const dependencyTreeRoot of runtimeState.dependencyTreeRoots) - if (dependencyTreeRoot.name === packageLocator.name && dependencyTreeRoot.reference === packageLocator.reference) - return true; - return false; + return Object.keys(this).map((k) => { + return this[k].map((hash) => { + return Hash.prototype.toString.call(hash, opts); + }).filter((x) => x.length).join(sep); + }).filter((x) => x.length).join(sep); + } + concat(integrity, opts) { + const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts); + return parse2(`${this.toString(opts)} ${other}`, opts); + } + hexDigest() { + return parse2(this, { single: true }).hexDigest(); + } + match(integrity, opts) { + const other = parse2(integrity, opts); + const algo = other.pickAlgorithm(opts); + return this[algo] && other[algo] && this[algo].find( + (hash) => other[algo].find( + (otherhash) => hash.digest === otherhash.digest + ) + ) || false; + } + pickAlgorithm(opts) { + const pickAlgorithm = opts && opts.pickAlgorithm || getPrioritizedHash; + const keys = Object.keys(this); + if (!keys.length) { + throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`); } - function applyNodeExtensionResolution(unqualifiedPath, candidates, { - extensions - }) { - let stat; - try { - candidates.push(unqualifiedPath); - stat = opts.fakeFs.statSync(unqualifiedPath); - } catch (error) { - } - if (stat && !stat.isDirectory()) - return opts.fakeFs.realpathSync(unqualifiedPath); - if (stat && stat.isDirectory()) { - let pkgJson; - try { - pkgJson = JSON.parse(opts.fakeFs.readFileSync(ppath.join(unqualifiedPath, `package.json`), `utf8`)); - } catch (error) { - } - let nextUnqualifiedPath; - if (pkgJson && pkgJson.main) - nextUnqualifiedPath = ppath.resolve(unqualifiedPath, pkgJson.main); - if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) { - const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { - extensions - }); - if (resolution !== null) { - return resolution; - } - } - } - for (let i = 0, length = extensions.length; i < length; i++) { - const candidateFile = `${unqualifiedPath}${extensions[i]}`; - candidates.push(candidateFile); - if (opts.fakeFs.existsSync(candidateFile)) { - return candidateFile; - } - } - if (stat && stat.isDirectory()) { - for (let i = 0, length = extensions.length; i < length; i++) { - const candidateFile = ppath.format({ - dir: unqualifiedPath, - name: `index`, - ext: extensions[i] - }); - candidates.push(candidateFile); - if (opts.fakeFs.existsSync(candidateFile)) { - return candidateFile; - } - } + return keys.reduce((acc, algo) => { + return pickAlgorithm(acc, algo) || acc; + }); + } + } + module3.exports.parse = parse2; + function parse2(sri, opts) { + opts = opts || {}; + if (typeof sri === "string") { + return _parse(sri, opts); + } else if (sri.algorithm && sri.digest) { + const fullSri = new Integrity(); + fullSri[sri.algorithm] = [sri]; + return _parse(stringify2(fullSri, opts), opts); + } else { + return _parse(stringify2(sri, opts), opts); + } + } + function _parse(integrity, opts) { + if (opts.single) { + return new Hash(integrity, opts); + } + return integrity.trim().split(/\s+/).reduce((acc, string) => { + const hash = new Hash(string, opts); + if (hash.algorithm && hash.digest) { + const algo = hash.algorithm; + if (!acc[algo]) { + acc[algo] = []; } - return null; - } - function makeFakeModule(path) { - const fakeModule = new external_module_namespaceObject.Module(path, null); - fakeModule.filename = path; - fakeModule.paths = external_module_namespaceObject.Module._nodeModulePaths(path); - return fakeModule; - } - function normalizePath(p) { - return npath.toPortablePath(p); - } - function callNativeResolution(request, issuer) { - if (issuer.endsWith(`/`)) - issuer = ppath.join(issuer, `internal.js`); - return external_module_namespaceObject.Module._resolveFilename(npath.fromPortablePath(request), makeFakeModule(npath.fromPortablePath(issuer)), false, { - plugnplay: false - }); + acc[algo].push(hash); } - function isPathIgnored(path) { - if (ignorePattern === null) - return false; - const subPath = ppath.contains(runtimeState.basePath, path); - if (subPath === null) - return false; - if (ignorePattern.test(subPath.replace(/\/$/, ``))) { - return true; - } else { - return false; + return acc; + }, new Integrity()); + } + module3.exports.stringify = stringify2; + function stringify2(obj, opts) { + if (obj.algorithm && obj.digest) { + return Hash.prototype.toString.call(obj, opts); + } else if (typeof obj === "string") { + return stringify2(parse2(obj, opts), opts); + } else { + return Integrity.prototype.toString.call(obj, opts); + } + } + module3.exports.fromHex = fromHex; + function fromHex(hexDigest, algorithm, opts) { + const optString = opts && opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; + return parse2( + `${algorithm}-${Buffer2.from(hexDigest, "hex").toString("base64")}${optString}`, + opts + ); + } + module3.exports.fromData = fromData; + function fromData(data, opts) { + opts = opts || {}; + const algorithms = opts.algorithms || ["sha512"]; + const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; + return algorithms.reduce((acc, algo) => { + const digest = crypto6.createHash(algo).update(data).digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const algo2 = hash.algorithm; + if (!acc[algo2]) { + acc[algo2] = []; } + acc[algo2].push(hash); } - const VERSIONS = { - std: 3, - resolveVirtual: 1, - getAllLocators: 1 - }; - const topLevel = topLevelLocator; - function getPackageInformation({ - name, - reference - }) { - const packageInformationStore = packageRegistry.get(name); - if (!packageInformationStore) - return null; - const packageInformation = packageInformationStore.get(reference); - if (!packageInformation) - return null; - return packageInformation; - } - function findPackageDependents({ - name, - reference - }) { - const dependents = []; - for (const [dependentName, packageInformationStore] of packageRegistry) { - if (dependentName === null) - continue; - for (const [dependentReference, packageInformation] of packageInformationStore) { - if (dependentReference === null) - continue; - const dependencyReference = packageInformation.packageDependencies.get(name); - if (dependencyReference !== reference) - continue; - if (dependentName === name && dependentReference === reference) - continue; - dependents.push({ - name: dependentName, - reference: dependentReference - }); + return acc; + }, new Integrity()); + } + module3.exports.fromStream = fromStream; + function fromStream(stream, opts) { + opts = opts || {}; + const P = opts.Promise || Promise; + const istream = integrityStream(opts); + return new P((resolve, reject) => { + stream.pipe(istream); + stream.on("error", reject); + istream.on("error", reject); + let sri; + istream.on("integrity", (s) => { + sri = s; + }); + istream.on("end", () => resolve(sri)); + istream.on("data", () => { + }); + }); + } + module3.exports.checkData = checkData; + function checkData(data, sri, opts) { + opts = opts || {}; + sri = parse2(sri, opts); + if (!Object.keys(sri).length) { + if (opts.error) { + throw Object.assign( + new Error("No valid integrity hashes to check against"), + { + code: "EINTEGRITY" } - } - return dependents; + ); + } else { + return false; } - function findBrokenPeerDependencies(dependency, initialPackage) { - const brokenPackages = new Map(); - const alreadyVisited = new Set(); - const traversal = (currentPackage) => { - const identifier = JSON.stringify(currentPackage.name); - if (alreadyVisited.has(identifier)) - return; - alreadyVisited.add(identifier); - const dependents = findPackageDependents(currentPackage); - for (const dependent of dependents) { - const dependentInformation = getPackageInformationSafe(dependent); - if (dependentInformation.packagePeers.has(dependency)) { - traversal(dependent); - } else { - let brokenSet = brokenPackages.get(dependent.name); - if (typeof brokenSet === `undefined`) - brokenPackages.set(dependent.name, brokenSet = new Set()); - brokenSet.add(dependent.reference); - } - } - }; - traversal(initialPackage); - const brokenList = []; - for (const name of [...brokenPackages.keys()].sort()) - for (const reference of [...brokenPackages.get(name)].sort()) - brokenList.push({ - name, - reference - }); - return brokenList; + } + const algorithm = sri.pickAlgorithm(opts); + const digest = crypto6.createHash(algorithm).update(data).digest("base64"); + const newSri = parse2({ algorithm, digest }); + const match = newSri.match(sri, opts); + if (match || !opts.error) { + return match; + } else if (typeof opts.size === "number" && data.length !== opts.size) { + const err = new Error(`data size mismatch when checking ${sri}. + Wanted: ${opts.size} + Found: ${data.length}`); + err.code = "EBADSIZE"; + err.found = data.length; + err.expected = opts.size; + err.sri = sri; + throw err; + } else { + const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = sri; + err.algorithm = algorithm; + err.sri = sri; + throw err; + } + } + module3.exports.checkStream = checkStream; + function checkStream(stream, sri, opts) { + opts = opts || {}; + const P = opts.Promise || Promise; + const checker = integrityStream(Object.assign({}, opts, { + integrity: sri + })); + return new P((resolve, reject) => { + stream.pipe(checker); + stream.on("error", reject); + checker.on("error", reject); + let sri2; + checker.on("verified", (s) => { + sri2 = s; + }); + checker.on("end", () => resolve(sri2)); + checker.on("data", () => { + }); + }); + } + module3.exports.integrityStream = integrityStream; + function integrityStream(opts) { + opts = opts || {}; + const sri = opts.integrity && parse2(opts.integrity, opts); + const goodSri = sri && Object.keys(sri).length; + const algorithm = goodSri && sri.pickAlgorithm(opts); + const digests = goodSri && sri[algorithm]; + const algorithms = Array.from( + new Set( + (opts.algorithms || ["sha512"]).concat(algorithm ? [algorithm] : []) + ) + ); + const hashes = algorithms.map(crypto6.createHash); + let streamSize = 0; + const stream = new Transform({ + transform(chunk, enc, cb) { + streamSize += chunk.length; + hashes.forEach((h) => h.update(chunk, enc)); + cb(null, chunk, enc); } - function findPackageLocator(location) { - if (isPathIgnored(location)) - return null; - let relativeLocation = normalizePath(ppath.relative(runtimeState.basePath, location)); - if (!relativeLocation.match(isStrictRegExp)) - relativeLocation = `./${relativeLocation}`; - if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`)) - relativeLocation = `${relativeLocation}/`; - let from = 0; - while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length) - from += 1; - for (let t = from; t < packageLocationLengths.length; ++t) { - const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t])); - if (typeof locator === `undefined`) - continue; - if (locator === null) { - const locationForDisplay = getPathForDisplay(location); - throw internalTools_makeError(ErrorCode.BLACKLISTED, `A forbidden path has been used in the package resolution process - this is usually caused by one of your tools calling 'fs.realpath' on the return value of 'require.resolve'. Since we need to use symlinks to simultaneously provide valid filesystem paths and disambiguate peer dependencies, they must be passed untransformed to 'require'. - -Forbidden path: ${locationForDisplay}`, { - location: locationForDisplay - }); - } - return locator; - } - return null; + }).on("end", () => { + const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; + const newSri = parse2(hashes.map((h, i) => { + return `${algorithms[i]}-${h.digest("base64")}${optString}`; + }).join(" "), opts); + const match = goodSri && newSri.match(sri, opts); + if (typeof opts.size === "number" && streamSize !== opts.size) { + const err = new Error(`stream size mismatch when checking ${sri}. + Wanted: ${opts.size} + Found: ${streamSize}`); + err.code = "EBADSIZE"; + err.found = streamSize; + err.expected = opts.size; + err.sri = sri; + stream.emit("error", err); + } else if (opts.integrity && !match) { + const err = new Error(`${sri} integrity checksum failed when using ${algorithm}: wanted ${digests} but got ${newSri}. (${streamSize} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = digests; + err.algorithm = algorithm; + err.sri = sri; + stream.emit("error", err); + } else { + stream.emit("size", streamSize); + stream.emit("integrity", newSri); + match && stream.emit("verified", match); } - function resolveToUnqualified(request, issuer, { - considerBuiltins = true - } = {}) { - if (request === `pnpapi`) - return npath.toPortablePath(opts.pnpapiResolution); - if (considerBuiltins && builtinModules.has(request)) - return null; - const requestForDisplay = getPathForDisplay(request); - const issuerForDisplay = issuer && getPathForDisplay(issuer); - if (issuer && isPathIgnored(issuer)) { - if (!ppath.isAbsolute(request) || findPackageLocator(request) === null) { - const result = callNativeResolution(request, issuer); - if (result === false) { - throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp) - -Require request: "${requestForDisplay}" -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay - }); - } - return npath.toPortablePath(result); - } - } - let unqualifiedPath; - const dependencyNameMatch = request.match(pathRegExp); - if (!dependencyNameMatch) { - if (ppath.isAbsolute(request)) { - unqualifiedPath = ppath.normalize(request); - } else { - if (!issuer) { - throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { - request: requestForDisplay, - issuer: issuerForDisplay - }); - } - const absoluteIssuer = ppath.resolve(issuer); - if (issuer.match(isDirRegExp)) { - unqualifiedPath = ppath.normalize(ppath.join(absoluteIssuer, request)); - } else { - unqualifiedPath = ppath.normalize(ppath.join(ppath.dirname(absoluteIssuer), request)); - } - } - findPackageLocator(unqualifiedPath); - } else { - if (!issuer) { - throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { - request: requestForDisplay, - issuer: issuerForDisplay - }); - } - const [, dependencyName, subPath] = dependencyNameMatch; - const issuerLocator = findPackageLocator(issuer); - if (!issuerLocator) { - const result = callNativeResolution(request, issuer); - if (result === false) { - throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree). - -Require path: "${requestForDisplay}" -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay - }); - } - return npath.toPortablePath(result); - } - const issuerInformation = getPackageInformationSafe(issuerLocator); - let dependencyReference = issuerInformation.packageDependencies.get(dependencyName); - let fallbackReference = null; - if (dependencyReference == null) { - if (issuerLocator.name !== null) { - const exclusionEntry = runtimeState.fallbackExclusionList.get(issuerLocator.name); - const canUseFallbacks = !exclusionEntry || !exclusionEntry.has(issuerLocator.reference); - if (canUseFallbacks) { - for (let t = 0, T = fallbackLocators.length; t < T; ++t) { - const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]); - const reference = fallbackInformation.packageDependencies.get(dependencyName); - if (reference == null) - continue; - if (alwaysWarnOnFallback) - fallbackReference = reference; - else - dependencyReference = reference; - break; - } - if (runtimeState.enableTopLevelFallback) { - if (dependencyReference == null && fallbackReference === null) { - const reference = runtimeState.fallbackPool.get(dependencyName); - if (reference != null) { - fallbackReference = reference; - } - } - } - } - } - } - let error = null; - if (dependencyReference === null) { - if (isDependencyTreeRoot(issuerLocator)) { - error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `Your application tried to access ${dependencyName} (a peer dependency); this isn't allowed as there is no ancestor to satisfy the requirement. Use a devDependency if needed. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - dependencyName - }); - } else { - const brokenAncestors = findBrokenPeerDependencies(dependencyName, issuerLocator); - if (brokenAncestors.every((ancestor) => isDependencyTreeRoot(ancestor))) { - error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) -${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference} -`).join(``)} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - issuerLocator: Object.assign({}, issuerLocator), - dependencyName, - brokenAncestors - }); - } else { - error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) -${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference} -`).join(``)} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - issuerLocator: Object.assign({}, issuerLocator), - dependencyName, - brokenAncestors - }); - } - } - } else if (dependencyReference === void 0) { - if (!considerBuiltins && builtinModules.has(request)) { - if (isDependencyTreeRoot(issuerLocator)) { - error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - dependencyName - }); - } else { - error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in ${issuerLocator.name}'s dependencies, this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - issuerLocator: Object.assign({}, issuerLocator), - dependencyName - }); - } - } else { - if (isDependencyTreeRoot(issuerLocator)) { - error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerForDisplay} -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - dependencyName - }); - } else { - error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. - -Required package: ${dependencyName} (via "${requestForDisplay}") -Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - issuerLocator: Object.assign({}, issuerLocator), - dependencyName - }); - } - } - } - if (dependencyReference == null) { - if (fallbackReference === null || error === null) - throw error || new Error(`Assertion failed: Expected an error to have been set`); - dependencyReference = fallbackReference; - const message2 = error.message.replace(/\n.*/g, ``); - error.message = message2; - if (!emittedWarnings.has(message2)) { - emittedWarnings.add(message2); - process.emitWarning(error); + }); + return stream; + } + module3.exports.create = createIntegrity; + function createIntegrity(opts) { + opts = opts || {}; + const algorithms = opts.algorithms || ["sha512"]; + const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; + const hashes = algorithms.map(crypto6.createHash); + return { + update: function(chunk, enc) { + hashes.forEach((h) => h.update(chunk, enc)); + return this; + }, + digest: function(enc) { + const integrity = algorithms.reduce((acc, algo) => { + const digest = hashes.shift().digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const algo2 = hash.algorithm; + if (!acc[algo2]) { + acc[algo2] = []; } + acc[algo2].push(hash); } - const dependencyLocator = Array.isArray(dependencyReference) ? { - name: dependencyReference[0], - reference: dependencyReference[1] - } : { - name: dependencyName, - reference: dependencyReference - }; - const dependencyInformation = getPackageInformationSafe(dependencyLocator); - if (!dependencyInformation.packageLocation) { - throw internalTools_makeError(ErrorCode.MISSING_DEPENDENCY, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod. - -Required package: ${dependencyLocator.name}@${dependencyLocator.reference} (via "${requestForDisplay}") -Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay}) -`, { - request: requestForDisplay, - issuer: issuerForDisplay, - dependencyLocator: Object.assign({}, dependencyLocator) - }); - } - const dependencyLocation = dependencyInformation.packageLocation; - if (subPath) { - unqualifiedPath = ppath.join(dependencyLocation, subPath); - } else { - unqualifiedPath = dependencyLocation; - } - } - return ppath.normalize(unqualifiedPath); - } - function resolveUnqualified(unqualifiedPath, { - extensions = Object.keys(external_module_namespaceObject.Module._extensions) - } = {}) { - const candidates = []; - const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { - extensions - }); - if (qualifiedPath) { - return ppath.normalize(qualifiedPath); - } else { - const unqualifiedPathForDisplay = getPathForDisplay(unqualifiedPath); - throw internalTools_makeError(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `Qualified path resolution failed - none of the candidates can be found on the disk. - -Source path: ${unqualifiedPathForDisplay} -${candidates.map((candidate) => `Rejected candidate: ${getPathForDisplay(candidate)} -`).join(``)}`, { - unqualifiedPath: unqualifiedPathForDisplay - }); - } - } - function resolveRequest(request, issuer, { - considerBuiltins, - extensions - } = {}) { - const unqualifiedPath = resolveToUnqualified(request, issuer, { - considerBuiltins - }); - if (unqualifiedPath === null) - return null; - try { - return resolveUnqualified(unqualifiedPath, { - extensions - }); - } catch (resolutionError) { - if (resolutionError.pnpCode === `QUALIFIED_PATH_RESOLUTION_FAILED`) - Object.assign(resolutionError.data, { - request: getPathForDisplay(request), - issuer: issuer && getPathForDisplay(issuer) - }); - throw resolutionError; - } - } - function resolveVirtual(request) { - const normalized = ppath.normalize(request); - const resolved = VirtualFS.resolveVirtual(normalized); - return resolved !== normalized ? resolved : null; + return acc; + }, new Integrity()); + return integrity; } - return { - VERSIONS, - topLevel, - getLocator: (name, referencish) => { - if (Array.isArray(referencish)) { - return { - name: referencish[0], - reference: referencish[1] - }; - } else { - return { - name, - reference: referencish - }; - } - }, - getDependencyTreeRoots: () => { - return [...runtimeState.dependencyTreeRoots]; - }, - getAllLocators() { - const locators = []; - for (const [name, entry] of packageRegistry) - for (const reference of entry.keys()) - if (name !== null && reference !== null) - locators.push({ - name, - reference - }); - return locators; - }, - getPackageInformation: (locator) => { - const info = getPackageInformation(locator); - if (info === null) - return null; - const packageLocation = npath.fromPortablePath(info.packageLocation); - const nativeInfo = { - ...info, - packageLocation - }; - return nativeInfo; - }, - findPackageLocator: (path) => { - return findPackageLocator(npath.toPortablePath(path)); - }, - resolveToUnqualified: maybeLog(`resolveToUnqualified`, (request, issuer, opts2) => { - const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; - const resolution = resolveToUnqualified(npath.toPortablePath(request), portableIssuer, opts2); - if (resolution === null) - return null; - return npath.fromPortablePath(resolution); - }), - resolveUnqualified: maybeLog(`resolveUnqualified`, (unqualifiedPath, opts2) => { - return npath.fromPortablePath(resolveUnqualified(npath.toPortablePath(unqualifiedPath), opts2)); - }), - resolveRequest: maybeLog(`resolveRequest`, (request, issuer, opts2) => { - const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; - const resolution = resolveRequest(npath.toPortablePath(request), portableIssuer, opts2); - if (resolution === null) - return null; - return npath.fromPortablePath(resolution); - }), - resolveVirtual: maybeLog(`resolveVirtual`, (path) => { - const result = resolveVirtual(npath.toPortablePath(path)); - if (result !== null) { - return npath.fromPortablePath(result); - } else { - return null; - } - }) - }; - } - const readFileP = (0, external_util_namespaceObject.promisify)(external_fs_namespaceObject.readFile); - async function hydratePnpFile(location, { - fakeFs, - pnpapiResolution - }) { - const source = await readFileP(location, `utf8`); - return hydratePnpSource(source, { - basePath: (0, external_path_namespaceObject.dirname)(location), - fakeFs, - pnpapiResolution - }); - } - function hydratePnpSource(source, { - basePath: basePath2, - fakeFs, - pnpapiResolution - }) { - const data = JSON.parse(source); - const runtimeState = hydrateRuntimeState(data, { - basePath: basePath2 - }); - return makeApi(runtimeState, { - compatibilityMode: true, - fakeFs, - pnpapiResolution - }); - } - const makeRuntimeApi = (settings, basePath2, fakeFs) => { - const data = generateSerializedState(settings); - const state = hydrateRuntimeState(data, { - basePath: basePath2 - }); - const pnpapiResolution = npath.join(basePath2, `.pnp.js`); - return makeApi(state, { - fakeFs, - pnpapiResolution - }); }; - }, - 650: (module3, __unused_webpack_exports, __webpack_require__2) => { - let hook; - module3.exports = () => { - if (typeof hook === `undefined`) - hook = __webpack_require__2(761).brotliDecompressSync(Buffer.from("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", "base64")).toString(); - return hook; + } + const NODE_HASHES = new Set(crypto6.getHashes()); + const DEFAULT_PRIORITY = [ + "md5", + "whirlpool", + "sha1", + "sha224", + "sha256", + "sha384", + "sha512", + // TODO - it's unclear _which_ of these Node will actually use as its name + // for the algorithm, so we guesswork it based on the OpenSSL names. + "sha3", + "sha3-256", + "sha3-384", + "sha3-512", + "sha3_256", + "sha3_384", + "sha3_512" + ].filter((algo) => NODE_HASHES.has(algo)); + function getPrioritizedHash(algo1, algo2) { + return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2; + } + }, + , + , + , + , + /* 60 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = minimatch; + minimatch.Minimatch = Minimatch; + var path2 = { sep: "/" }; + try { + path2 = __webpack_require__(0); + } catch (er) { + } + var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; + var expand = __webpack_require__(175); + var plTypes = { + "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, + "?": { open: "(?:", close: ")?" }, + "+": { open: "(?:", close: ")+" }, + "*": { open: "(?:", close: ")*" }, + "@": { open: "(?:", close: ")" } + }; + var qmark = "[^/]"; + var star = qmark + "*?"; + var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; + var reSpecials = charSet("().*{}+?[]^$\\!"); + function charSet(s) { + return s.split("").reduce(function(set, c) { + set[c] = true; + return set; + }, {}); + } + var slashSplit = /\/+/; + minimatch.filter = filter; + function filter(pattern, options) { + options = options || {}; + return function(p, i, list) { + return minimatch(p, pattern, options); }; - }, - 761: (module3) => { - "use strict"; - module3.exports = require("zlib"); - ; } - }; - var __webpack_module_cache__ = {}; - function __webpack_require__(moduleId) { - if (__webpack_module_cache__[moduleId]) { - return __webpack_module_cache__[moduleId].exports; + function ext(a, b) { + a = a || {}; + b = b || {}; + var t = {}; + Object.keys(b).forEach(function(k) { + t[k] = b[k]; + }); + Object.keys(a).forEach(function(k) { + t[k] = a[k]; + }); + return t; } - var module3 = __webpack_module_cache__[moduleId] = { - exports: {} + minimatch.defaults = function(def) { + if (!def || !Object.keys(def).length) + return minimatch; + var orig = minimatch; + var m = function minimatch2(p, pattern, options) { + return orig.minimatch(p, pattern, ext(def, options)); + }; + m.Minimatch = function Minimatch2(pattern, options) { + return new orig.Minimatch(pattern, ext(def, options)); + }; + return m; }; - __webpack_modules__[moduleId](module3, module3.exports, __webpack_require__); - return module3.exports; - } - (() => { - __webpack_require__.n = (module3) => { - var getter = module3 && module3.__esModule ? () => module3["default"] : () => module3; - __webpack_require__.d(getter, { a: getter }); - return getter; + Minimatch.defaults = function(def) { + if (!def || !Object.keys(def).length) + return Minimatch; + return minimatch.defaults(def).Minimatch; }; - })(); - (() => { - __webpack_require__.d = (exports3, definition) => { - for (var key in definition) { - if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports3, key)) { - Object.defineProperty(exports3, key, { enumerable: true, get: definition[key] }); - } + function minimatch(p, pattern, options) { + if (typeof pattern !== "string") { + throw new TypeError("glob pattern string required"); } - }; - })(); - (() => { - __webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop); - })(); - (() => { - __webpack_require__.r = (exports3) => { - if (typeof Symbol !== "undefined" && Symbol.toStringTag) { - Object.defineProperty(exports3, Symbol.toStringTag, { value: "Module" }); + if (!options) + options = {}; + if (!options.nocomment && pattern.charAt(0) === "#") { + return false; } - Object.defineProperty(exports3, "__esModule", { value: true }); - }; - })(); - return __webpack_require__(862); - })(); - } -}); - -// ../lockfile-to-pnp/lib/index.js -var require_lib84 = __commonJS({ - "../lockfile-to-pnp/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.lockfileToPackageRegistry = exports2.writePnpFile = exports2.lockfileToPnp = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var config_1 = __importDefault(require_lib10()); - var lockfile_file_1 = require_lib57(); - var lockfile_utils_1 = require_lib53(); - var read_project_manifest_1 = __importDefault(require_lib19()); - var dependency_path_1 = require_lib33(); - var pnp_1 = require_lib83(); - var normalize_path_1 = __importDefault(require_normalize_path()); - async function lockfileToPnp(lockfileDir) { - const lockfile = await lockfile_file_1.readWantedLockfile(lockfileDir, { ignoreIncompatible: true }); - if (lockfile == null) - throw new Error("Cannot generate a .pnp.cjs without a lockfile"); - const importerNames = {}; - await Promise.all(Object.keys(lockfile.importers).map(async (importerId) => { - const importerDirectory = path_1.default.join(lockfileDir, importerId); - const { manifest } = await read_project_manifest_1.default(importerDirectory); - importerNames[importerId] = manifest.name; - })); - const { config: { registries, virtualStoreDir } } = await config_1.default({ - cliOptions: {}, - packageManager: { name: "pnpm", version: "*" } - }); - await writePnpFile(lockfile, { - importerNames, - lockfileDir, - registries, - virtualStoreDir: virtualStoreDir !== null && virtualStoreDir !== void 0 ? virtualStoreDir : path_1.default.join(lockfileDir, "node_modules/.pnpm") - }); - } - exports2.lockfileToPnp = lockfileToPnp; - async function writePnpFile(lockfile, opts) { - const packageRegistry = lockfileToPackageRegistry(lockfile, opts); - const loaderFile = pnp_1.generateInlinedScript({ - blacklistedLocations: void 0, - dependencyTreeRoots: [], - ignorePattern: void 0, - packageRegistry, - shebang: void 0 - }); - await fs_1.promises.writeFile(path_1.default.join(opts.lockfileDir, ".pnp.cjs"), loaderFile, "utf8"); - } - exports2.writePnpFile = writePnpFile; - function lockfileToPackageRegistry(lockfile, opts) { - var _a; - const packageRegistry = new Map(); - for (const importerId of Object.keys(lockfile.importers)) { - const importer = lockfile.importers[importerId]; - if (importerId === ".") { - const packageStore = new Map([ - [ - null, - { - packageDependencies: new Map([ - ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies) : [], - ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies) : [], - ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies) : [] - ]), - packageLocation: "./" - } - ] - ]); - packageRegistry.set(null, packageStore); - } else { - const name = opts.importerNames[importerId]; - const packageStore = new Map([ - [ - importerId, - { - packageDependencies: new Map([ - [name, importerId], - ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies, importerId) : [], - ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies, importerId) : [], - ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies, importerId) : [] - ]), - packageLocation: `./${importerId}` - } - ] - ]); - packageRegistry.set(name, packageStore); - } - } - for (const [relDepPath, pkgSnapshot] of Object.entries((_a = lockfile.packages) !== null && _a !== void 0 ? _a : {})) { - const { name, version, peersSuffix } = lockfile_utils_1.nameVerFromPkgSnapshot(relDepPath, pkgSnapshot); - const pnpVersion = toPnPVersion(version, peersSuffix); - let packageStore = packageRegistry.get(name); - if (!packageStore) { - packageStore = new Map(); - packageRegistry.set(name, packageStore); - } - let packageLocation = normalize_path_1.default(path_1.default.relative(opts.lockfileDir, path_1.default.join(opts.virtualStoreDir, dependency_path_1.depPathToFilename(relDepPath, opts.lockfileDir), "node_modules", name))); - if (!packageLocation.startsWith("../")) { - packageLocation = `./${packageLocation}`; + if (pattern.trim() === "") + return p === ""; + return new Minimatch(pattern, options).match(p); } - packageStore.set(pnpVersion, { - packageDependencies: new Map([ - [name, pnpVersion], - ...pkgSnapshot.dependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.dependencies) : [], - ...pkgSnapshot.optionalDependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.optionalDependencies) : [] - ]), - packageLocation - }); - } - return packageRegistry; - } - exports2.lockfileToPackageRegistry = lockfileToPackageRegistry; - function toPackageDependenciesMap(lockfile, deps, importerId) { - return Object.entries(deps).map(([depAlias, ref]) => { - if (importerId && ref.startsWith("link:")) { - return [depAlias, path_1.default.join(importerId, ref.substr(5))]; + function Minimatch(pattern, options) { + if (!(this instanceof Minimatch)) { + return new Minimatch(pattern, options); + } + if (typeof pattern !== "string") { + throw new TypeError("glob pattern string required"); + } + if (!options) + options = {}; + pattern = pattern.trim(); + if (path2.sep !== "/") { + pattern = pattern.split(path2.sep).join("/"); + } + this.options = options; + this.set = []; + this.pattern = pattern; + this.regexp = null; + this.negate = false; + this.comment = false; + this.empty = false; + this.make(); } - const relDepPath = dependency_path_1.refToRelative(ref, depAlias); - if (!relDepPath) - return [depAlias, ref]; - const { name, version, peersSuffix } = lockfile_utils_1.nameVerFromPkgSnapshot(relDepPath, lockfile.packages[relDepPath]); - const pnpVersion = toPnPVersion(version, peersSuffix); - if (depAlias === name) { - return [depAlias, pnpVersion]; + Minimatch.prototype.debug = function() { + }; + Minimatch.prototype.make = make; + function make() { + if (this._made) + return; + var pattern = this.pattern; + var options = this.options; + if (!options.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + var set = this.globSet = this.braceExpand(); + if (options.debug) + this.debug = console.error; + this.debug(this.pattern, set); + set = this.globParts = set.map(function(s) { + return s.split(slashSplit); + }); + this.debug(this.pattern, set); + set = set.map(function(s, si, set2) { + return s.map(this.parse, this); + }, this); + this.debug(this.pattern, set); + set = set.filter(function(s) { + return s.indexOf(false) === -1; + }); + this.debug(this.pattern, set); + this.set = set; } - return [depAlias, [name, pnpVersion]]; - }); - } - function toPnPVersion(version, peersSuffix) { - return peersSuffix ? `virtual:${version}_${peersSuffix}#${version}` : version; - } - } -}); - -// ../headless/lib/index.js -var require_lib85 = __commonJS({ - "../headless/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var build_modules_1 = __importDefault(require_lib81()); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var filter_lockfile_1 = require_lib71(); - var hoist_1 = __importDefault(require_lib82()); - var lifecycle_1 = require_lib80(); - var link_bins_1 = __importStar2(require_lib70()); - var lockfile_file_1 = require_lib57(); - var lockfile_to_pnp_1 = require_lib84(); - var lockfile_utils_1 = require_lib53(); - var logger_1 = __importStar2(require_lib6()); - var modules_cleaner_1 = require_lib73(); - var modules_yaml_1 = require_lib64(); - var package_is_installable_1 = __importDefault(require_lib13()); - var read_package_json_1 = require_lib32(); - var read_project_manifest_1 = require_lib19(); - var symlink_dependency_1 = __importStar2(require_lib75()); - var dp = __importStar2(require_lib33()); - var p_limit_1 = __importDefault(require_p_limit()); - var path_absolute_1 = __importDefault(require_path_absolute()); - var path_exists_1 = __importDefault(require_path_exists()); - var equals_1 = __importDefault(require_equals2()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var omit_1 = __importDefault(require_omit()); - var props_1 = __importDefault(require_props()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var brokenModulesLogger = logger_1.default("_broken_node_modules"); - exports2.default = async (opts) => { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o; - const reporter = opts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); - } - const lockfileDir = opts.lockfileDir; - const wantedLockfile = (_a = opts.wantedLockfile) !== null && _a !== void 0 ? _a : await lockfile_file_1.readWantedLockfile(lockfileDir, { ignoreIncompatible: false }); - if (wantedLockfile == null) { - throw new Error(`Headless installation requires a ${constants_1.WANTED_LOCKFILE} file`); - } - const relativeModulesDir = (_b = opts.modulesDir) !== null && _b !== void 0 ? _b : "node_modules"; - const rootModulesDir = await realpath_missing_1.default(path_1.default.join(lockfileDir, relativeModulesDir)); - const virtualStoreDir = path_absolute_1.default((_c = opts.virtualStoreDir) !== null && _c !== void 0 ? _c : path_1.default.join(relativeModulesDir, ".pnpm"), lockfileDir); - const currentLockfile = (_d = opts.currentLockfile) !== null && _d !== void 0 ? _d : await lockfile_file_1.readCurrentLockfile(virtualStoreDir, { ignoreIncompatible: false }); - const hoistedModulesDir = path_1.default.join(virtualStoreDir, "node_modules"); - const publicHoistedModulesDir = rootModulesDir; - if (!opts.ignorePackageManifest) { - for (const { id, manifest, rootDir } of opts.projects) { - if (!lockfile_utils_1.satisfiesPackageManifest(wantedLockfile, manifest, id)) { - throw new error_1.default("OUTDATED_LOCKFILE", `Cannot install with "frozen-lockfile" because ${constants_1.WANTED_LOCKFILE} is not up-to-date with ` + path_1.default.relative(lockfileDir, path_1.default.join(rootDir, "package.json"))); + Minimatch.prototype.parseNegate = parseNegate; + function parseNegate() { + var pattern = this.pattern; + var negate = false; + var options = this.options; + var negateOffset = 0; + if (options.nonegate) + return; + for (var i = 0, l = pattern.length; i < l && pattern.charAt(i) === "!"; i++) { + negate = !negate; + negateOffset++; } + if (negateOffset) + this.pattern = pattern.substr(negateOffset); + this.negate = negate; } - } - const scriptsOpts = { - optional: false, - extraBinPaths: opts.extraBinPaths, - rawConfig: opts.rawConfig, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - stdio: (_e = opts.ownLifecycleHooksStdio) !== null && _e !== void 0 ? _e : "inherit", - unsafePerm: opts.unsafePerm || false - }; - const skipped = opts.skipped || new Set(); - if (currentLockfile != null && !opts.ignorePackageManifest) { - await modules_cleaner_1.prune(opts.projects, { - currentLockfile, - dryRun: false, - hoistedDependencies: opts.hoistedDependencies, - hoistedModulesDir: opts.hoistPattern == null ? void 0 : hoistedModulesDir, - include: opts.include, - lockfileDir, - pruneStore: opts.pruneStore, - pruneVirtualStore: opts.pruneVirtualStore, - publicHoistedModulesDir: opts.publicHoistPattern == null ? void 0 : publicHoistedModulesDir, - registries: opts.registries, - skipped, - storeController: opts.storeController, - virtualStoreDir, - wantedLockfile - }); - } else { - core_loggers_1.statsLogger.debug({ - prefix: lockfileDir, - removed: 0 - }); - } - core_loggers_1.stageLogger.debug({ - prefix: lockfileDir, - stage: "importing_started" - }); - const filterOpts = { - include: opts.include, - registries: opts.registries, - skipped - }; - const importerIds = opts.ignorePackageManifest ? Object.keys(wantedLockfile.importers) : opts.projects.map(({ id }) => id); - const filteredLockfile = filter_lockfile_1.filterLockfileByImportersAndEngine(wantedLockfile, importerIds, { - ...filterOpts, - currentEngine: opts.currentEngine, - engineStrict: opts.engineStrict, - failOnMissingDependencies: true, - includeIncompatiblePackages: opts.force, - lockfileDir - }); - const { directDependenciesByImporterId, graph } = await lockfileToDepGraph(filteredLockfile, opts.force ? null : currentLockfile, { - ...opts, - importerIds, - lockfileDir, - skipped, - virtualStoreDir, - nodeVersion: opts.currentEngine.nodeVersion, - pnpmVersion: opts.currentEngine.pnpmVersion - }); - if (opts.enablePnp) { - const importerNames = fromPairs_1.default(opts.projects.map(({ manifest, id }) => { - var _a2; - return [id, (_a2 = manifest.name) !== null && _a2 !== void 0 ? _a2 : id]; - })); - await lockfile_to_pnp_1.writePnpFile(filteredLockfile, { - importerNames, - lockfileDir, - virtualStoreDir, - registries: opts.registries - }); - } - const depNodes = Object.values(graph); - core_loggers_1.statsLogger.debug({ - added: depNodes.length, - prefix: lockfileDir - }); - function warn(message2) { - logger_1.default.info({ - message: message2, - prefix: lockfileDir - }); - } - if (opts.enableModulesDir !== false) { - await Promise.all(depNodes.map(async (depNode) => fs_1.promises.mkdir(depNode.modules, { recursive: true }))); - await Promise.all([ - opts.symlink === false ? Promise.resolve() : linkAllModules(depNodes, { - lockfileDir, - optional: opts.include.optionalDependencies - }), - linkAllPkgs(opts.storeController, depNodes, { - force: opts.force, - lockfileDir: opts.lockfileDir, - targetEngine: opts.sideEffectsCacheRead && constants_1.ENGINE_NAME || void 0 - }) - ]); - core_loggers_1.stageLogger.debug({ - prefix: lockfileDir, - stage: "importing_done" - }); - let newHoistedDependencies; - if (opts.ignorePackageManifest !== true && (opts.hoistPattern != null || opts.publicHoistPattern != null)) { - const hoistLockfile = { - ...filteredLockfile, - packages: omit_1.default(Array.from(skipped), filteredLockfile.packages) - }; - newHoistedDependencies = await hoist_1.default({ - extendNodePath: opts.extendNodePath, - lockfile: hoistLockfile, - lockfileDir, - privateHoistedModulesDir: hoistedModulesDir, - privateHoistPattern: (_f = opts.hoistPattern) !== null && _f !== void 0 ? _f : [], - publicHoistedModulesDir, - publicHoistPattern: (_g = opts.publicHoistPattern) !== null && _g !== void 0 ? _g : [], - virtualStoreDir - }); - } else { - newHoistedDependencies = {}; + minimatch.braceExpand = function(pattern, options) { + return braceExpand(pattern, options); + }; + Minimatch.prototype.braceExpand = braceExpand; + function braceExpand(pattern, options) { + if (!options) { + if (this instanceof Minimatch) { + options = this.options; + } else { + options = {}; + } + } + pattern = typeof pattern === "undefined" ? this.pattern : pattern; + if (typeof pattern === "undefined") { + throw new TypeError("undefined pattern"); + } + if (options.nobrace || !pattern.match(/\{.*\}/)) { + return [pattern]; + } + return expand(pattern); } - if (opts.ignoreScripts) { - for (const { id, manifest } of opts.projects) { - if (opts.ignoreScripts && (manifest === null || manifest === void 0 ? void 0 : manifest.scripts) != null && ((_l = (_k = (_j = (_h = manifest.scripts.preinstall) !== null && _h !== void 0 ? _h : manifest.scripts.prepublish) !== null && _j !== void 0 ? _j : manifest.scripts.install) !== null && _k !== void 0 ? _k : manifest.scripts.postinstall) !== null && _l !== void 0 ? _l : manifest.scripts.prepare)) { - opts.pendingBuilds.push(id); + Minimatch.prototype.parse = parse2; + var SUBPARSE = {}; + function parse2(pattern, isSub) { + if (pattern.length > 1024 * 64) { + throw new TypeError("pattern is too long"); + } + var options = this.options; + if (!options.noglobstar && pattern === "**") + return GLOBSTAR; + if (pattern === "") + return ""; + var re = ""; + var hasMagic = !!options.nocase; + var escaping = false; + var patternListStack = []; + var negativeLists = []; + var stateChar; + var inClass = false; + var reClassStart = -1; + var classStart = -1; + var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + var self2 = this; + function clearStateChar() { + if (stateChar) { + switch (stateChar) { + case "*": + re += star; + hasMagic = true; + break; + case "?": + re += qmark; + hasMagic = true; + break; + default: + re += "\\" + stateChar; + break; + } + self2.debug("clearStateChar %j %j", stateChar, re); + stateChar = false; + } + } + for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { + this.debug("%s %s %s %j", pattern, i, re, c); + if (escaping && reSpecials[c]) { + re += "\\" + c; + escaping = false; + continue; + } + switch (c) { + case "/": + return false; + case "\\": + clearStateChar(); + escaping = true; + continue; + case "?": + case "*": + case "+": + case "@": + case "!": + this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); + if (inClass) { + this.debug(" in class"); + if (c === "!" && i === classStart + 1) + c = "^"; + re += c; + continue; + } + self2.debug("call clearStateChar %j", stateChar); + clearStateChar(); + stateChar = c; + if (options.noext) + clearStateChar(); + continue; + case "(": + if (inClass) { + re += "("; + continue; + } + if (!stateChar) { + re += "\\("; + continue; + } + patternListStack.push({ + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }); + re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; + this.debug("plType %j %j", stateChar, re); + stateChar = false; + continue; + case ")": + if (inClass || !patternListStack.length) { + re += "\\)"; + continue; + } + clearStateChar(); + hasMagic = true; + var pl = patternListStack.pop(); + re += pl.close; + if (pl.type === "!") { + negativeLists.push(pl); + } + pl.reEnd = re.length; + continue; + case "|": + if (inClass || !patternListStack.length || escaping) { + re += "\\|"; + escaping = false; + continue; + } + clearStateChar(); + re += "|"; + continue; + case "[": + clearStateChar(); + if (inClass) { + re += "\\" + c; + continue; + } + inClass = true; + classStart = i; + reClassStart = re.length; + re += c; + continue; + case "]": + if (i === classStart + 1 || !inClass) { + re += "\\" + c; + escaping = false; + continue; + } + if (inClass) { + var cs = pattern.substring(classStart + 1, i); + try { + RegExp("[" + cs + "]"); + } catch (er) { + var sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; + hasMagic = hasMagic || sp[1]; + inClass = false; + continue; + } + } + hasMagic = true; + inClass = false; + re += c; + continue; + default: + clearStateChar(); + if (escaping) { + escaping = false; + } else if (reSpecials[c] && !(c === "^" && inClass)) { + re += "\\"; + } + re += c; } } - opts.pendingBuilds = opts.pendingBuilds.concat(depNodes.filter(({ requiresBuild }) => requiresBuild).map(({ depPath }) => depPath)); - } else { - const directNodes = new Set(); - for (const id of importerIds) { - Object.values(directDependenciesByImporterId[id]).filter((loc) => graph[loc]).forEach((loc) => { - directNodes.add(loc); + if (inClass) { + cs = pattern.substr(classStart + 1); + sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0]; + hasMagic = hasMagic || sp[1]; + } + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + pl.open.length); + this.debug("setting tail", re, pl); + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) { + if (!$2) { + $2 = "\\"; + } + return $1 + $1 + $2 + "|"; }); + this.debug("tail=%j\n %s", tail, tail, pl, re); + var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; + hasMagic = true; + re = re.slice(0, pl.reStart) + t + "\\(" + tail; } - const extraBinPaths = [...(_m = opts.extraBinPaths) !== null && _m !== void 0 ? _m : []]; - if (opts.hoistPattern != null) { - extraBinPaths.unshift(path_1.default.join(virtualStoreDir, "node_modules/.bin")); + clearStateChar(); + if (escaping) { + re += "\\\\"; } - let extraEnv; - if (opts.enablePnp) { - extraEnv = lifecycle_1.makeNodeRequireOption(path_1.default.join(opts.lockfileDir, ".pnp.cjs")); + var addPatternStart = false; + switch (re.charAt(0)) { + case ".": + case "[": + case "(": + addPatternStart = true; } - await build_modules_1.default(graph, Array.from(directNodes), { - childConcurrency: opts.childConcurrency, - extraBinPaths, - extendNodePath: opts.extendNodePath, - extraEnv, - lockfileDir, - optional: opts.include.optionalDependencies, - rawConfig: opts.rawConfig, - rootModulesDir: virtualStoreDir, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - sideEffectsCacheWrite: opts.sideEffectsCacheWrite, - storeController: opts.storeController, - unsafePerm: opts.unsafePerm, - userAgent: opts.userAgent - }); + for (var n = negativeLists.length - 1; n > -1; n--) { + var nl = negativeLists[n]; + var nlBefore = re.slice(0, nl.reStart); + var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); + var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); + var nlAfter = re.slice(nl.reEnd); + nlLast += nlAfter; + var openParensBefore = nlBefore.split("(").length - 1; + var cleanAfter = nlAfter; + for (i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + } + nlAfter = cleanAfter; + var dollar = ""; + if (nlAfter === "" && isSub !== SUBPARSE) { + dollar = "$"; + } + var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; + re = newRe; + } + if (re !== "" && hasMagic) { + re = "(?=.)" + re; + } + if (addPatternStart) { + re = patternStart + re; + } + if (isSub === SUBPARSE) { + return [re, hasMagic]; + } + if (!hasMagic) { + return globUnescape(pattern); + } + var flags = options.nocase ? "i" : ""; + try { + var regExp = new RegExp("^" + re + "$", flags); + } catch (er) { + return new RegExp("$."); + } + regExp._glob = pattern; + regExp._src = re; + return regExp; } - await modules_yaml_1.write(rootModulesDir, { - hoistedDependencies: newHoistedDependencies, - hoistPattern: opts.hoistPattern, - included: opts.include, - layoutVersion: constants_1.LAYOUT_VERSION, - packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, - pendingBuilds: opts.pendingBuilds, - publicHoistPattern: opts.publicHoistPattern, - prunedAt: opts.pruneVirtualStore === true || opts.prunedAt == null ? new Date().toUTCString() : opts.prunedAt, - registries: opts.registries, - skipped: Array.from(skipped), - storeDir: opts.storeDir, - virtualStoreDir - }); - await linkAllBins(graph, { extendNodePath: opts.extendNodePath, optional: opts.include.optionalDependencies, warn }); - if (currentLockfile != null && !equals_1.default(importerIds.sort(), Object.keys(filteredLockfile.importers).sort())) { - Object.assign(filteredLockfile.packages, currentLockfile.packages); + minimatch.makeRe = function(pattern, options) { + return new Minimatch(pattern, options || {}).makeRe(); + }; + Minimatch.prototype.makeRe = makeRe; + function makeRe() { + if (this.regexp || this.regexp === false) + return this.regexp; + var set = this.set; + if (!set.length) { + this.regexp = false; + return this.regexp; + } + var options = this.options; + var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; + var flags = options.nocase ? "i" : ""; + var re = set.map(function(pattern) { + return pattern.map(function(p) { + return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; + }).join("\\/"); + }).join("|"); + re = "^(?:" + re + ")$"; + if (this.negate) + re = "^(?!" + re + ").*$"; + try { + this.regexp = new RegExp(re, flags); + } catch (ex) { + this.regexp = false; + } + return this.regexp; } - await lockfile_file_1.writeCurrentLockfile(virtualStoreDir, filteredLockfile); - if (!opts.ignorePackageManifest) { - await Promise.all(opts.projects.map(async ({ rootDir, id, manifest, modulesDir }) => { - if (opts.symlink !== false) { - await linkRootPackages(filteredLockfile, { - importerId: id, - importerModulesDir: modulesDir, - lockfileDir, - projectDir: rootDir, - projects: opts.projects, - registries: opts.registries, - rootDependencies: directDependenciesByImporterId[id] - }); + minimatch.match = function(list, pattern, options) { + options = options || {}; + var mm = new Minimatch(pattern, options); + list = list.filter(function(f) { + return mm.match(f); + }); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + Minimatch.prototype.match = match; + function match(f, partial) { + this.debug("match", f, this.pattern); + if (this.comment) + return false; + if (this.empty) + return f === ""; + if (f === "/" && partial) + return true; + var options = this.options; + if (path2.sep !== "/") { + f = f.split(path2.sep).join("/"); + } + f = f.split(slashSplit); + this.debug(this.pattern, "split", f); + var set = this.set; + this.debug(this.pattern, "set", set); + var filename; + var i; + for (i = f.length - 1; i >= 0; i--) { + filename = f[i]; + if (filename) + break; + } + for (i = 0; i < set.length; i++) { + var pattern = set[i]; + var file = f; + if (options.matchBase && pattern.length === 1) { + file = [filename]; } - core_loggers_1.packageManifestLogger.debug({ - prefix: rootDir, - updated: manifest - }); - })); - await Promise.all(opts.projects.map(async (project) => { - var _a2; - if (((_a2 = opts.publicHoistPattern) === null || _a2 === void 0 ? void 0 : _a2.length) && path_1.default.relative(opts.lockfileDir, project.rootDir) === "") { - await linkBinsOfImporter(project, { extendNodePath: opts.extendNodePath }); - } else { - const directPkgDirs = Object.values(directDependenciesByImporterId[project.id]); - await link_bins_1.linkBinsOfPackages((await Promise.all(directPkgDirs.map(async (dir) => ({ - location: dir, - manifest: await read_project_manifest_1.safeReadProjectManifestOnly(dir) - })))).filter(({ manifest }) => manifest != null), project.binsDir, { warn: (message2) => logger_1.default.info({ message: message2, prefix: project.rootDir }) }); + var hit = this.matchOne(file, pattern, partial); + if (hit) { + if (options.flipNegate) + return true; + return !this.negate; } - })); + } + if (options.flipNegate) + return false; + return this.negate; } - } - await Promise.all(depNodes.map(({ finishing }) => finishing)); - core_loggers_1.summaryLogger.debug({ prefix: lockfileDir }); - await opts.storeController.close(); - if (!opts.ignoreScripts && !opts.ignorePackageManifest) { - await lifecycle_1.runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "prepublish", "prepare"], opts.projects, (_o = opts.childConcurrency) !== null && _o !== void 0 ? _o : 5, scriptsOpts); - } - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.removeListener("data", reporter); - } - }; - async function linkBinsOfImporter({ manifest, modulesDir, binsDir, rootDir }, opts) { - const warn = (message2) => logger_1.default.info({ message: message2, prefix: rootDir }); - return link_bins_1.default(modulesDir, binsDir, { - allowExoticManifests: true, - extendNodePath: opts.extendNodePath, - projectManifest: manifest, - warn - }); - } - async function linkRootPackages(lockfile, opts) { - const importerManifestsByImporterId = {}; - for (const { id, manifest } of opts.projects) { - importerManifestsByImporterId[id] = manifest; - } - const projectSnapshot = lockfile.importers[opts.importerId]; - const allDeps = { - ...projectSnapshot.devDependencies, - ...projectSnapshot.dependencies, - ...projectSnapshot.optionalDependencies - }; - return Promise.all(Object.keys(allDeps).map(async (alias) => { - var _a, _b, _c, _d, _e, _f, _g; - if (allDeps[alias].startsWith("link:")) { - const isDev2 = Boolean((_a = projectSnapshot.devDependencies) === null || _a === void 0 ? void 0 : _a[alias]); - const isOptional2 = Boolean((_b = projectSnapshot.optionalDependencies) === null || _b === void 0 ? void 0 : _b[alias]); - const packageDir = path_1.default.join(opts.projectDir, allDeps[alias].substr(5)); - const linkedPackage = await (async () => { - const importerId = lockfile_file_1.getLockfileImporterId(opts.lockfileDir, packageDir); - if (importerManifestsByImporterId[importerId]) { - return importerManifestsByImporterId[importerId]; + Minimatch.prototype.matchOne = function(file, pattern, partial) { + var options = this.options; + this.debug( + "matchOne", + { "this": this, file, pattern } + ); + this.debug("matchOne", file.length, pattern.length); + for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { + this.debug("matchOne loop"); + var p = pattern[pi]; + var f = file[fi]; + this.debug(pattern, p, f); + if (p === false) + return false; + if (p === GLOBSTAR) { + this.debug("GLOBSTAR", [pattern, p, f]); + var fr = fi; + var pr = pi + 1; + if (pr === pl) { + this.debug("** at the end"); + for (; fi < fl; fi++) { + if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") + return false; + } + return true; + } + while (fr < fl) { + var swallowee = file[fr]; + this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug("globstar found match!", fr, fl, swallowee); + return true; + } else { + if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { + this.debug("dot detected!", file, fr, pattern, pr); + break; + } + this.debug("globstar swallow a segment, and continue"); + fr++; + } + } + if (partial) { + this.debug("\n>>> no match, partial?", file, fr, pattern, pr); + if (fr === fl) + return true; + } + return false; } - try { - return await read_project_manifest_1.readProjectManifestOnly(packageDir); - } catch (err) { - if (err["code"] !== "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") - throw err; - return { name: alias, version: "0.0.0" }; + var hit; + if (typeof p === "string") { + if (options.nocase) { + hit = f.toLowerCase() === p.toLowerCase(); + } else { + hit = f === p; + } + this.debug("string match", p, f, hit); + } else { + hit = f.match(p); + this.debug("pattern match", p, f, hit); } - })(); - await symlink_dependency_1.symlinkDirectRootDependency(packageDir, opts.importerModulesDir, alias, { - fromDependenciesField: isDev2 && "devDependencies" || isOptional2 && "optionalDependencies" || "dependencies", - linkedPackage, - prefix: opts.projectDir - }); - return; - } - const dir = opts.rootDependencies[alias]; - if (!dir) { - return; - } - if ((await symlink_dependency_1.default(dir, opts.importerModulesDir, alias)).reused) { - return; - } - const isDev = Boolean((_c = projectSnapshot.devDependencies) === null || _c === void 0 ? void 0 : _c[alias]); - const isOptional = Boolean((_d = projectSnapshot.optionalDependencies) === null || _d === void 0 ? void 0 : _d[alias]); - const depPath = dp.refToRelative(allDeps[alias], alias); - if (depPath === null) - return; - const pkgSnapshot = (_e = lockfile.packages) === null || _e === void 0 ? void 0 : _e[depPath]; - if (pkgSnapshot == null) - return; - const pkgId = (_g = (_f = pkgSnapshot.id) !== null && _f !== void 0 ? _f : dp.refToAbsolute(allDeps[alias], alias, opts.registries)) !== null && _g !== void 0 ? _g : void 0; - const pkgInfo = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - core_loggers_1.rootLogger.debug({ - added: { - dependencyType: isDev && "dev" || isOptional && "optional" || "prod", - id: pkgId, - name: alias, - realName: pkgInfo.name, - version: pkgInfo.version - }, - prefix: opts.projectDir - }); - })); - } - async function lockfileToDepGraph(lockfile, currentLockfile, opts) { - var _a; - const currentPackages = (_a = currentLockfile === null || currentLockfile === void 0 ? void 0 : currentLockfile.packages) !== null && _a !== void 0 ? _a : {}; - const graph = {}; - const directDependenciesByImporterId = {}; - if (lockfile.packages != null) { - const pkgSnapshotByLocation = {}; - await Promise.all(Object.keys(lockfile.packages).map(async (depPath) => { - var _a2; - if (opts.skipped.has(depPath)) - return; - const pkgSnapshot = lockfile.packages[depPath]; - const { name: pkgName, version: pkgVersion } = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - const modules = path_1.default.join(opts.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), "node_modules"); - const packageId = lockfile_utils_1.packageIdFromSnapshot(depPath, pkgSnapshot, opts.registries); - const pkg = { - name: pkgName, - version: pkgVersion, - engines: pkgSnapshot.engines, - cpu: pkgSnapshot.cpu, - os: pkgSnapshot.os - }; - if (!opts.force && package_is_installable_1.default(packageId, pkg, { - engineStrict: opts.engineStrict, - lockfileDir: opts.lockfileDir, - nodeVersion: opts.nodeVersion, - optional: pkgSnapshot.optional === true, - pnpmVersion: opts.pnpmVersion - }) === false) { - opts.skipped.add(depPath); - return; + if (!hit) + return false; } - const dir = path_1.default.join(modules, pkgName); - if (currentPackages[depPath] && equals_1.default(currentPackages[depPath].dependencies, lockfile.packages[depPath].dependencies) && equals_1.default(currentPackages[depPath].optionalDependencies, lockfile.packages[depPath].optionalDependencies)) { - if (await path_exists_1.default(dir)) { - return; - } - brokenModulesLogger.debug({ - missing: dir - }); + if (fi === fl && pi === pl) { + return true; + } else if (fi === fl) { + return partial; + } else if (pi === pl) { + var emptyFileEnd = fi === fl - 1 && file[fi] === ""; + return emptyFileEnd; } - const resolution = lockfile_utils_1.pkgSnapshotToResolution(depPath, pkgSnapshot, opts.registries); - core_loggers_1.progressLogger.debug({ - packageId, - requester: opts.lockfileDir, - status: "resolved" + throw new Error("wtf?"); + }; + function globUnescape(s) { + return s.replace(/\\(.)/g, "$1"); + } + function regExpEscape(s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + } + }, + /* 61 */ + /***/ + function(module3, exports3, __webpack_require__) { + var wrappy = __webpack_require__(123); + module3.exports = wrappy(once); + module3.exports.strict = wrappy(onceStrict); + once.proto = once(function() { + Object.defineProperty(Function.prototype, "once", { + value: function() { + return once(this); + }, + configurable: true }); - let fetchResponse; - try { - fetchResponse = opts.storeController.fetchPackage({ - force: false, - lockfileDir: opts.lockfileDir, - pkg: { - name: pkgName, - version: pkgVersion, - id: packageId, - resolution - } - }); - if (fetchResponse instanceof Promise) - fetchResponse = await fetchResponse; - } catch (err) { - if (pkgSnapshot.optional) - return; - throw err; - } - fetchResponse.files().then(({ fromStore }) => { - core_loggers_1.progressLogger.debug({ - packageId, - requester: opts.lockfileDir, - status: fromStore ? "found_in_store" : "fetched" - }); - }).catch(() => { + Object.defineProperty(Function.prototype, "onceStrict", { + value: function() { + return onceStrict(this); + }, + configurable: true }); - graph[dir] = { - children: {}, - depPath, - dir, - fetchingFiles: fetchResponse.files, - filesIndexFile: fetchResponse.filesIndexFile, - finishing: fetchResponse.finishing, - hasBin: pkgSnapshot.hasBin === true, - hasBundledDependencies: pkgSnapshot.bundledDependencies != null, - modules, - name: pkgName, - optional: !!pkgSnapshot.optional, - optionalDependencies: new Set(Object.keys((_a2 = pkgSnapshot.optionalDependencies) !== null && _a2 !== void 0 ? _a2 : {})), - prepare: pkgSnapshot.prepare === true, - requiresBuild: pkgSnapshot.requiresBuild === true - }; - pkgSnapshotByLocation[dir] = pkgSnapshot; - })); - const ctx = { - force: opts.force, - graph, - lockfileDir: opts.lockfileDir, - pkgSnapshotsByDepPaths: lockfile.packages, - registries: opts.registries, - sideEffectsCacheRead: opts.sideEffectsCacheRead, - skipped: opts.skipped, - storeController: opts.storeController, - storeDir: opts.storeDir, - virtualStoreDir: opts.virtualStoreDir - }; - for (const dir of Object.keys(graph)) { - const pkgSnapshot = pkgSnapshotByLocation[dir]; - const allDeps = { - ...pkgSnapshot.dependencies, - ...opts.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {} + }); + function once(fn2) { + var f = function() { + if (f.called) + return f.value; + f.called = true; + return f.value = fn2.apply(this, arguments); }; - const peerDeps = pkgSnapshot.peerDependencies ? new Set(Object.keys(pkgSnapshot.peerDependencies)) : null; - graph[dir].children = await getChildrenPaths(ctx, allDeps, peerDeps, "."); + f.called = false; + return f; } - for (const importerId of opts.importerIds) { - const projectSnapshot = lockfile.importers[importerId]; - const rootDeps = { - ...opts.include.devDependencies ? projectSnapshot.devDependencies : {}, - ...opts.include.dependencies ? projectSnapshot.dependencies : {}, - ...opts.include.optionalDependencies ? projectSnapshot.optionalDependencies : {} + function onceStrict(fn2) { + var f = function() { + if (f.called) + throw new Error(f.onceError); + f.called = true; + return f.value = fn2.apply(this, arguments); }; - directDependenciesByImporterId[importerId] = await getChildrenPaths(ctx, rootDeps, null, importerId); - } - } - return { graph, directDependenciesByImporterId }; - } - async function getChildrenPaths(ctx, allDeps, peerDeps, importerId) { - const children = {}; - for (const alias of Object.keys(allDeps)) { - const childDepPath = dp.refToAbsolute(allDeps[alias], alias, ctx.registries); - if (childDepPath === null) { - children[alias] = path_1.default.resolve(ctx.lockfileDir, importerId, allDeps[alias].substr(5)); - continue; - } - const childRelDepPath = dp.refToRelative(allDeps[alias], alias); - const childPkgSnapshot = ctx.pkgSnapshotsByDepPaths[childRelDepPath]; - if (ctx.graph[childRelDepPath]) { - children[alias] = ctx.graph[childRelDepPath].dir; - } else if (childPkgSnapshot) { - if (ctx.skipped.has(childRelDepPath)) - continue; - const pkgName = lockfile_utils_1.nameVerFromPkgSnapshot(childRelDepPath, childPkgSnapshot).name; - children[alias] = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(childRelDepPath, ctx.lockfileDir), "node_modules", pkgName); - } else if (allDeps[alias].indexOf("file:") === 0) { - children[alias] = path_1.default.resolve(ctx.lockfileDir, allDeps[alias].substr(5)); - } else if (!ctx.skipped.has(childRelDepPath) && (peerDeps == null || !peerDeps.has(alias))) { - throw new Error(`${childRelDepPath} not found in ${constants_1.WANTED_LOCKFILE}`); - } - } - return children; - } - var limitLinking = p_limit_1.default(16); - async function linkAllPkgs(storeController, depNodes, opts) { - return Promise.all(depNodes.map(async (depNode) => { - let filesResponse; - try { - filesResponse = await depNode.fetchingFiles(); - } catch (err) { - if (depNode.optional) - return; - throw err; + var name = fn2.name || "Function wrapped with `once`"; + f.onceError = name + " shouldn't be called more than once"; + f.called = false; + return f; } - const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, { - filesResponse, - force: opts.force, - targetEngine: opts.targetEngine - }); - if (importMethod) { - core_loggers_1.progressLogger.debug({ - method: importMethod, - requester: opts.lockfileDir, - status: "imported", - to: depNode.dir + }, + , + /* 63 */ + /***/ + function(module3, exports3) { + module3.exports = require("buffer"); + }, + , + , + , + /* 67 */ + /***/ + function(module3, exports3) { + module3.exports = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + }, + /* 68 */ + /***/ + function(module3, exports3, __webpack_require__) { + var isObject = __webpack_require__(34); + var document2 = __webpack_require__(11).document; + var is = isObject(document2) && isObject(document2.createElement); + module3.exports = function(it) { + return is ? document2.createElement(it) : {}; + }; + }, + /* 69 */ + /***/ + function(module3, exports3) { + module3.exports = true; + }, + /* 70 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var aFunction = __webpack_require__(46); + function PromiseCapability(C) { + var resolve, reject; + this.promise = new C(function($$resolve, $$reject) { + if (resolve !== void 0 || reject !== void 0) + throw TypeError("Bad Promise constructor"); + resolve = $$resolve; + reject = $$reject; }); + this.resolve = aFunction(resolve); + this.reject = aFunction(reject); } - depNode.isBuilt = isBuilt; - })); - } - async function linkAllBins(depGraph, opts) { - return Promise.all(Object.values(depGraph).map(async (depNode) => limitLinking(async () => { - const childrenToLink = opts.optional ? depNode.children : Object.keys(depNode.children).reduce((nonOptionalChildren, childAlias) => { - if (!depNode.optionalDependencies.has(childAlias)) { - nonOptionalChildren[childAlias] = depNode.children[childAlias]; + module3.exports.f = function(C) { + return new PromiseCapability(C); + }; + }, + /* 71 */ + /***/ + function(module3, exports3, __webpack_require__) { + var def = __webpack_require__(50).f; + var has = __webpack_require__(49); + var TAG = __webpack_require__(13)("toStringTag"); + module3.exports = function(it, tag, stat) { + if (it && !has(it = stat ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + }, + /* 72 */ + /***/ + function(module3, exports3, __webpack_require__) { + var shared = __webpack_require__(107)("keys"); + var uid = __webpack_require__(111); + module3.exports = function(key) { + return shared[key] || (shared[key] = uid(key)); + }; + }, + /* 73 */ + /***/ + function(module3, exports3) { + var ceil = Math.ceil; + var floor = Math.floor; + module3.exports = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + }, + /* 74 */ + /***/ + function(module3, exports3, __webpack_require__) { + var IObject = __webpack_require__(131); + var defined = __webpack_require__(67); + module3.exports = function(it) { + return IObject(defined(it)); + }; + }, + /* 75 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = glob; + var fs2 = __webpack_require__(3); + var rp = __webpack_require__(114); + var minimatch = __webpack_require__(60); + var Minimatch = minimatch.Minimatch; + var inherits = __webpack_require__(42); + var EE = __webpack_require__(54).EventEmitter; + var path2 = __webpack_require__(0); + var assert = __webpack_require__(22); + var isAbsolute = __webpack_require__(76); + var globSync = __webpack_require__(218); + var common = __webpack_require__(115); + var alphasort = common.alphasort; + var alphasorti = common.alphasorti; + var setopts = common.setopts; + var ownProp = common.ownProp; + var inflight = __webpack_require__(223); + var util = __webpack_require__(2); + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + var once = __webpack_require__(61); + function glob(pattern, options, cb) { + if (typeof options === "function") + cb = options, options = {}; + if (!options) + options = {}; + if (options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return globSync(pattern, options); } - return nonOptionalChildren; - }, {}); - const binPath = path_1.default.join(depNode.dir, "node_modules/.bin"); - const pkgSnapshots = props_1.default(Object.values(childrenToLink), depGraph); - if (pkgSnapshots.includes(void 0)) { - await link_bins_1.default(depNode.modules, binPath, { extendNodePath: opts.extendNodePath, warn: opts.warn }); - } else { - const pkgs = await Promise.all(pkgSnapshots.filter(({ hasBin }) => hasBin).map(async ({ dir }) => ({ - location: dir, - manifest: await read_package_json_1.fromDir(dir) - }))); - await link_bins_1.linkBinsOfPackages(pkgs, binPath, { extendNodePath: opts.extendNodePath, warn: opts.warn }); - } - if (depNode.hasBundledDependencies) { - const bundledModules = path_1.default.join(depNode.dir, "node_modules"); - await link_bins_1.default(bundledModules, binPath, { extendNodePath: opts.extendNodePath, warn: opts.warn }); + return new Glob(pattern, options, cb); } - }))); - } - async function linkAllModules(depNodes, opts) { - await Promise.all(depNodes.map(async (depNode) => { - const childrenToLink = opts.optional ? depNode.children : Object.keys(depNode.children).reduce((nonOptionalChildren, childAlias) => { - if (!depNode.optionalDependencies.has(childAlias)) { - nonOptionalChildren[childAlias] = depNode.children[childAlias]; + glob.sync = globSync; + var GlobSync = glob.GlobSync = globSync.GlobSync; + glob.glob = glob; + function extend(origin, add) { + if (add === null || typeof add !== "object") { + return origin; } - return nonOptionalChildren; - }, {}); - await Promise.all(Object.keys(childrenToLink).map(async (alias) => { - if (alias === depNode.name) { - logger_1.default.warn({ - message: `Cannot link dependency with name ${alias} to ${depNode.modules}. Dependency's name should differ from the parent's name.`, - prefix: opts.lockfileDir - }); - return; + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; } - await limitLinking(async () => symlink_dependency_1.default(childrenToLink[alias], depNode.modules, alias)); - })); - })); - } - } -}); - -// ../resolve-dependencies/lib/depPathToRef.js -var require_depPathToRef = __commonJS({ - "../resolve-dependencies/lib/depPathToRef.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var dependency_path_1 = require_lib33(); - var encode_registry_1 = __importDefault(require_encode_registry()); - function depPathToRef(depPath, opts) { - if (opts.resolution.type) - return depPath; - const registryName = encode_registry_1.default(dependency_path_1.getRegistryByPackageName(opts.registries, opts.realName)); - if (depPath.startsWith(`${registryName}/`)) { - depPath = depPath.replace(`${registryName}/`, "/"); - } - if (depPath[0] === "/" && opts.alias === opts.realName) { - const ref = depPath.replace(`/${opts.realName}/`, ""); - if (!ref.includes("/")) - return ref; - } - return depPath; - } - exports2.default = depPathToRef; - } -}); - -// ../resolve-dependencies/lib/nodeIdUtils.js -var require_nodeIdUtils = __commonJS({ - "../resolve-dependencies/lib/nodeIdUtils.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.splitNodeId = exports2.createNodeId = exports2.nodeIdContainsSequence = void 0; - function nodeIdContainsSequence(nodeId, pkgId1, pkgId2) { - const pkgIds = splitNodeId(nodeId); - pkgIds.pop(); - const pkg1Index = pkgIds.indexOf(pkgId1); - if (pkg1Index === -1) - return false; - const pkg2Index = pkgIds.indexOf(pkgId2); - return pkg2Index > -1 && pkg1Index < pkg2Index; - } - exports2.nodeIdContainsSequence = nodeIdContainsSequence; - function createNodeId(parentNodeId, pkgId) { - return `${parentNodeId}${pkgId}>`; - } - exports2.createNodeId = createNodeId; - function splitNodeId(nodeId) { - return nodeId.substr(1, nodeId.length - 2).split(">"); - } - exports2.splitNodeId = splitNodeId; - } -}); - -// ../../node_modules/.pnpm/replace-string@3.1.0/node_modules/replace-string/index.js -var require_replace_string = __commonJS({ - "../../node_modules/.pnpm/replace-string@3.1.0/node_modules/replace-string/index.js"(exports2, module2) { - "use strict"; - module2.exports = (string, needle, replacement, options = {}) => { - if (typeof string !== "string") { - throw new TypeError(`Expected input to be a string, got ${typeof string}`); - } - if (!(typeof needle === "string" && needle.length > 0) || !(typeof replacement === "string" || typeof replacement === "function")) { - return string; - } - let result = ""; - let matchCount = 0; - let prevIndex = options.fromIndex > 0 ? options.fromIndex : 0; - if (prevIndex > string.length) { - return string; - } - while (true) { - const index = options.caseInsensitive ? string.toLowerCase().indexOf(needle.toLowerCase(), prevIndex) : string.indexOf(needle, prevIndex); - if (index === -1) { - break; - } - matchCount++; - const replaceStr = typeof replacement === "string" ? replacement : replacement(string.slice(index, index + needle.length), matchCount, string, index); - const beginSlice = matchCount === 1 ? 0 : prevIndex; - result += string.slice(beginSlice, index) + replaceStr; - prevIndex = index + needle.length; - } - if (matchCount === 0) { - return string; - } - return result + string.slice(prevIndex); - }; - } -}); - -// ../resolve-dependencies/lib/encodePkgId.js -var require_encodePkgId = __commonJS({ - "../resolve-dependencies/lib/encodePkgId.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var replace_string_1 = __importDefault(require_replace_string()); - function encodePkgId(pkgId) { - return replace_string_1.default(replace_string_1.default(pkgId, "%", "%25"), ">", "%3E"); - } - exports2.default = encodePkgId; - } -}); - -// ../resolve-dependencies/lib/getNonDevWantedDependencies.js -var require_getNonDevWantedDependencies = __commonJS({ - "../resolve-dependencies/lib/getNonDevWantedDependencies.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function getNonDevWantedDependencies(pkg) { - var _a, _b; - const bd = (_a = pkg.bundleDependencies) !== null && _a !== void 0 ? _a : pkg.bundleDependencies; - const bundledDeps = new Set(Array.isArray(bd) ? bd : []); - bundledDeps.add(pkg.name); - const filterDeps = getNotBundledDeps.bind(null, bundledDeps); - return getWantedDependenciesFromGivenSet(filterDeps({ ...pkg.optionalDependencies, ...pkg.dependencies }), { - devDependencies: {}, - optionalDependencies: (_b = pkg.optionalDependencies) !== null && _b !== void 0 ? _b : {} - }); - } - exports2.default = getNonDevWantedDependencies; - function getWantedDependenciesFromGivenSet(deps, opts) { - if (!deps) - return []; - return Object.keys(deps).map((alias) => ({ - alias, - dev: !!opts.devDependencies[alias], - optional: !!opts.optionalDependencies[alias], - pref: deps[alias] - })); - } - function getNotBundledDeps(bundledDeps, deps) { - return Object.keys(deps).filter((depName) => !bundledDeps.has(depName)).reduce((notBundledDeps, depName) => { - notBundledDeps[depName] = deps[depName]; - return notBundledDeps; - }, {}); - } - } -}); - -// ../resolve-dependencies/lib/wantedDepIsLocallyAvailable.js -var require_wantedDepIsLocallyAvailable = __commonJS({ - "../resolve-dependencies/lib/wantedDepIsLocallyAvailable.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var parsePref_1 = __importDefault(require_parsePref3()); - var semver_1 = __importDefault(require_semver2()); - function wantedDepIsLocallyAvailable(workspacePackages, wantedDependency, opts) { - const spec = parsePref_1.default(wantedDependency.pref, wantedDependency.alias, opts.defaultTag || "latest", opts.registry); - if (spec == null || !workspacePackages[spec.name]) - return false; - return pickMatchingLocalVersionOrNull(workspacePackages[spec.name], spec) !== null; - } - exports2.default = wantedDepIsLocallyAvailable; - function pickMatchingLocalVersionOrNull(versions, spec) { - const localVersions = Object.keys(versions); - switch (spec.type) { - case "tag": - return semver_1.default.maxSatisfying(localVersions, "*"); - case "version": - return versions[spec.fetchSpec] ? spec.fetchSpec : null; - case "range": - return semver_1.default.maxSatisfying(localVersions, spec.fetchSpec, true); - default: - return null; - } - } - } -}); - -// ../resolve-dependencies/lib/resolveDependencies.js -var require_resolveDependencies = __commonJS({ - "../resolve-dependencies/lib/resolveDependencies.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.nodeIdToParents = void 0; - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var lockfile_utils_1 = require_lib53(); - var logger_1 = __importDefault(require_lib6()); - var pick_registry_for_package_1 = __importDefault(require_lib50()); - var dp = __importStar2(require_lib33()); - var path_exists_1 = __importDefault(require_path_exists()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var semver_1 = __importDefault(require_semver2()); - var encodePkgId_1 = __importDefault(require_encodePkgId()); - var getNonDevWantedDependencies_1 = __importDefault(require_getNonDevWantedDependencies()); - var nodeIdUtils_1 = require_nodeIdUtils(); - var wantedDepIsLocallyAvailable_1 = __importDefault(require_wantedDepIsLocallyAvailable()); - var dependencyResolvedLogger = logger_1.default("_dependency_resolved"); - function nodeIdToParents(nodeId, resolvedPackagesByDepPath) { - return nodeIdUtils_1.splitNodeId(nodeId).slice(1).map((depPath) => { - const { id, name, version } = resolvedPackagesByDepPath[depPath]; - return { id, name, version }; - }); - } - exports2.nodeIdToParents = nodeIdToParents; - async function resolveDependencies(ctx, preferredVersions, wantedDependencies, options) { - const extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { - preferredDependencies: options.preferredDependencies, - prefix: ctx.prefix, - proceed: options.proceed || ctx.forceFullResolution, - registries: ctx.registries, - resolvedDependencies: options.resolvedDependencies - }); - const postponedResolutionsQueue = []; - const pkgAddresses = (await Promise.all(extendedWantedDeps.map(async (extendedWantedDep) => resolveDependenciesOfDependency(postponedResolutionsQueue, ctx, preferredVersions, options, extendedWantedDep)))).filter(Boolean); - const newPreferredVersions = { ...preferredVersions }; - for (const { depPath } of pkgAddresses) { - const resolvedPackage = ctx.resolvedPackagesByDepPath[depPath]; - if (!resolvedPackage) - continue; - if (!newPreferredVersions[resolvedPackage.name]) { - newPreferredVersions[resolvedPackage.name] = {}; + return origin; } - newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = "version"; - } - await Promise.all(postponedResolutionsQueue.map(async (postponedResolution) => postponedResolution(newPreferredVersions))); - return pkgAddresses; - } - exports2.default = resolveDependencies; - async function resolveDependenciesOfDependency(postponedResolutionsQueue, ctx, preferredVersions, options, extendedWantedDep) { - var _a, _b, _c; - const updateDepth = typeof extendedWantedDep.wantedDependency.updateDepth === "number" ? extendedWantedDep.wantedDependency.updateDepth : options.updateDepth; - const updateShouldContinue = options.currentDepth <= updateDepth; - const update = updateShouldContinue && (ctx.updateMatching == null || ((_a = extendedWantedDep.infoFromLockfile) === null || _a === void 0 ? void 0 : _a.dependencyLockfile) == null || ctx.updateMatching((_b = extendedWantedDep.infoFromLockfile.dependencyLockfile.name) !== null && _b !== void 0 ? _b : extendedWantedDep.wantedDependency.alias)) || Boolean(options.workspacePackages != null && wantedDepIsLocallyAvailable_1.default(options.workspacePackages, extendedWantedDep.wantedDependency, { defaultTag: ctx.defaultTag, registry: ctx.registries.default })); - const resolveDependencyOpts = { - currentDepth: options.currentDepth, - parentPkg: options.parentPkg, - preferredVersions, - workspacePackages: options.workspacePackages, - currentPkg: (_c = extendedWantedDep.infoFromLockfile) !== null && _c !== void 0 ? _c : void 0, - proceed: extendedWantedDep.proceed || updateShouldContinue, - update, - updateDepth - }; - const resolveDependencyResult = await resolveDependency(extendedWantedDep.wantedDependency, ctx, resolveDependencyOpts); - if (resolveDependencyResult == null) - return null; - if (resolveDependencyResult.isLinkedDependency) { - ctx.dependenciesTree[resolveDependencyResult.pkgId] = { - children: {}, - depth: -1, - installable: true, - resolvedPackage: { - name: resolveDependencyResult.name, - version: resolveDependencyResult.version + glob.hasMagic = function(pattern, options_) { + var options = extend({}, options_); + options.noprocess = true; + var g = new Glob(pattern, options); + var set = g.minimatch.set; + if (!pattern) + return false; + if (set.length > 1) + return true; + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== "string") + return true; } + return false; }; - return resolveDependencyResult; - } - if (!resolveDependencyResult.isNew) - return resolveDependencyResult; - postponedResolutionsQueue.push(async (preferredVersions2) => { - var _a2; - return resolveChildren(ctx, resolveDependencyResult, (_a2 = extendedWantedDep.infoFromLockfile) === null || _a2 === void 0 ? void 0 : _a2.dependencyLockfile, options.workspacePackages, options.currentDepth, updateDepth, preferredVersions2); - }); - return resolveDependencyResult; - } - async function resolveChildren(ctx, parentPkg, dependencyLockfile, workspacePackages, parentDepth, updateDepth, preferredVersions) { - var _a, _b; - const currentResolvedDependencies = dependencyLockfile != null ? { - ...dependencyLockfile.dependencies, - ...dependencyLockfile.optionalDependencies - } : void 0; - const resolvedDependencies = parentPkg.updated ? void 0 : currentResolvedDependencies; - const parentDependsOnPeer = Boolean(Object.keys((_b = (_a = dependencyLockfile === null || dependencyLockfile === void 0 ? void 0 : dependencyLockfile.peerDependencies) !== null && _a !== void 0 ? _a : parentPkg.pkg.peerDependencies) !== null && _b !== void 0 ? _b : {}).length); - const wantedDependencies = getNonDevWantedDependencies_1.default(parentPkg.pkg); - const children = await resolveDependencies(ctx, preferredVersions, wantedDependencies, { - currentDepth: parentDepth + 1, - parentPkg, - preferredDependencies: currentResolvedDependencies, - proceed: !parentPkg.depIsLinked || parentDependsOnPeer, - resolvedDependencies, - updateDepth, - workspacePackages - }); - ctx.childrenByParentDepPath[parentPkg.depPath] = children.map((child) => ({ - alias: child.alias, - depPath: child.depPath - })); - ctx.dependenciesTree[parentPkg.nodeId] = { - children: children.reduce((chn, child) => { - var _a2; - chn[child.alias] = (_a2 = child["nodeId"]) !== null && _a2 !== void 0 ? _a2 : child.pkgId; - return chn; - }, {}), - depth: parentDepth, - installable: parentPkg.installable, - resolvedPackage: ctx.resolvedPackagesByDepPath[parentPkg.depPath] - }; - } - function getDepsToResolve(wantedDependencies, wantedLockfile, options) { - var _a, _b, _c; - const resolvedDependencies = (_a = options.resolvedDependencies) !== null && _a !== void 0 ? _a : {}; - const preferredDependencies = (_b = options.preferredDependencies) !== null && _b !== void 0 ? _b : {}; - const extendedWantedDeps = []; - let proceedAll = options.proceed; - const satisfiesWanted2Args = referenceSatisfiesWantedSpec.bind(null, { - lockfile: wantedLockfile, - prefix: options.prefix - }); - for (const wantedDependency of wantedDependencies) { - let reference = void 0; - let proceed = proceedAll; - if (wantedDependency.alias) { - const satisfiesWanted = satisfiesWanted2Args.bind(null, wantedDependency); - if (resolvedDependencies[wantedDependency.alias] && satisfiesWanted(resolvedDependencies[wantedDependency.alias])) { - reference = resolvedDependencies[wantedDependency.alias]; - } else if (semver_1.default.validRange(wantedDependency.pref) !== null && preferredDependencies[wantedDependency.alias] && satisfiesWanted(preferredDependencies[wantedDependency.alias])) { - proceed = true; - reference = preferredDependencies[wantedDependency.alias]; + glob.Glob = Glob; + inherits(Glob, EE); + function Glob(pattern, options, cb) { + if (typeof options === "function") { + cb = options; + options = null; } - } - const infoFromLockfile = getInfoFromLockfile(wantedLockfile, options.registries, reference, wantedDependency.alias); - if (!proceedAll && (infoFromLockfile == null || infoFromLockfile.dependencyLockfile != null && (infoFromLockfile.dependencyLockfile.peerDependencies != null || ((_c = infoFromLockfile.dependencyLockfile.transitivePeerDependencies) === null || _c === void 0 ? void 0 : _c.length)))) { - proceed = true; - proceedAll = true; - for (const extendedWantedDep of extendedWantedDeps) { - if (!extendedWantedDep.proceed) { - extendedWantedDep.proceed = true; - } + if (options && options.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return new GlobSync(pattern, options); } - } - extendedWantedDeps.push({ - infoFromLockfile, - proceed, - wantedDependency - }); - } - return extendedWantedDeps; - } - function referenceSatisfiesWantedSpec(opts, wantedDep, preferredRef) { - var _a; - const depPath = dp.refToRelative(preferredRef, wantedDep.alias); - if (depPath === null) - return false; - const pkgSnapshot = (_a = opts.lockfile.packages) === null || _a === void 0 ? void 0 : _a[depPath]; - if (pkgSnapshot == null) { - logger_1.default.warn({ - message: `Could not find preferred package ${depPath} in lockfile`, - prefix: opts.prefix - }); - return false; - } - const { version } = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - return semver_1.default.satisfies(version, wantedDep.pref, true); - } - function getInfoFromLockfile(lockfile, registries, reference, alias) { - var _a, _b, _c; - if (!reference || !alias) { - return void 0; - } - const depPath = dp.refToRelative(reference, alias); - if (!depPath) { - return void 0; - } - let dependencyLockfile = (_a = lockfile.packages) === null || _a === void 0 ? void 0 : _a[depPath]; - if (dependencyLockfile != null) { - if (dependencyLockfile.peerDependencies != null && dependencyLockfile.dependencies != null) { - const dependencies = {}; - for (const [depName, ref] of Object.entries((_b = dependencyLockfile.dependencies) !== null && _b !== void 0 ? _b : {})) { - if (dependencyLockfile.peerDependencies[depName]) - continue; - dependencies[depName] = ref; + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb); + setopts(this, pattern, options); + this._didRealPath = false; + var n = this.minimatch.set.length; + this.matches = new Array(n); + if (typeof cb === "function") { + cb = once(cb); + this.on("error", cb); + this.on("end", function(matches) { + cb(null, matches); + }); + } + var self2 = this; + this._processing = 0; + this._emitQueue = []; + this._processQueue = []; + this.paused = false; + if (this.noprocess) + return this; + if (n === 0) + return done(); + var sync = true; + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false, done); + } + sync = false; + function done() { + --self2._processing; + if (self2._processing <= 0) { + if (sync) { + process.nextTick(function() { + self2._finish(); + }); + } else { + self2._finish(); + } + } } - dependencyLockfile = { - ...dependencyLockfile, - dependencies - }; } - return { - ...lockfile_utils_1.nameVerFromPkgSnapshot(depPath, dependencyLockfile), - dependencyLockfile, - depPath, - pkgId: lockfile_utils_1.packageIdFromSnapshot(depPath, dependencyLockfile, registries), - resolution: dependencyLockfile.resolution && lockfile_utils_1.pkgSnapshotToResolution(depPath, dependencyLockfile, registries) - }; - } else { - return { - depPath, - pkgId: (_c = dp.tryGetPackageId(registries, depPath)) !== null && _c !== void 0 ? _c : depPath + Glob.prototype._finish = function() { + assert(this instanceof Glob); + if (this.aborted) + return; + if (this.realpath && !this._didRealpath) + return this._realpath(); + common.finish(this); + this.emit("end", this.found); }; - } - } - async function resolveDependency(wantedDependency, ctx, options) { - var _a, _b, _c, _d, _e, _f, _g, _h, _j; - const currentPkg = (_a = options.currentPkg) !== null && _a !== void 0 ? _a : {}; - const currentLockfileContainsTheDep = currentPkg.depPath ? Boolean((_b = ctx.currentLockfile.packages) === null || _b === void 0 ? void 0 : _b[currentPkg.depPath]) : void 0; - const depIsLinked = Boolean(currentLockfileContainsTheDep && currentPkg.depPath && currentPkg.dependencyLockfile && await path_exists_1.default(path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(currentPkg.depPath, ctx.prefix), "node_modules", currentPkg.name, "package.json"))); - if (!options.update && !options.proceed && currentPkg.resolution != null && depIsLinked) { - return null; - } - let pkgResponse; - if (!options.parentPkg.installable) { - wantedDependency = { - ...wantedDependency, - optional: true + Glob.prototype._realpath = function() { + if (this._didRealpath) + return; + this._didRealpath = true; + var n = this.matches.length; + if (n === 0) + return this._finish(); + var self2 = this; + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next); + function next() { + if (--n === 0) + self2._finish(); + } }; - } - try { - pkgResponse = await ctx.storeController.requestPackage(wantedDependency, { - alwaysTryWorkspacePackages: ctx.linkWorkspacePackagesDepth >= options.currentDepth, - currentPkg: currentPkg ? { - name: currentPkg.name, - version: currentPkg.version, - id: currentPkg.pkgId, - resolution: currentPkg.resolution - } : void 0, - defaultTag: ctx.defaultTag, - downloadPriority: -options.currentDepth, - lockfileDir: ctx.lockfileDir, - preferredVersions: options.preferredVersions, - preferWorkspacePackages: ctx.preferWorkspacePackages, - projectDir: options.currentDepth > 0 ? ctx.lockfileDir : ctx.prefix, - registry: wantedDependency.alias && pick_registry_for_package_1.default(ctx.registries, wantedDependency.alias, wantedDependency.pref) || ctx.registries.default, - skipFetch: false, - update: options.update, - workspacePackages: options.workspacePackages - }); - } catch (err) { - if (wantedDependency.optional) { - core_loggers_1.skippedOptionalDependencyLogger.debug({ - details: err.toString(), - package: { - name: wantedDependency.alias, - pref: wantedDependency.pref, - version: wantedDependency.alias ? wantedDependency.pref : void 0 - }, - parents: nodeIdToParents(options.parentPkg.nodeId, ctx.resolvedPackagesByDepPath), - prefix: ctx.prefix, - reason: "resolution_failure" + Glob.prototype._realpathSet = function(index, cb) { + var matchset = this.matches[index]; + if (!matchset) + return cb(); + var found = Object.keys(matchset); + var self2 = this; + var n = found.length; + if (n === 0) + return cb(); + var set = this.matches[index] = /* @__PURE__ */ Object.create(null); + found.forEach(function(p, i) { + p = self2._makeAbs(p); + rp.realpath(p, self2.realpathCache, function(er, real) { + if (!er) + set[real] = true; + else if (er.syscall === "stat") + set[p] = true; + else + self2.emit("error", er); + if (--n === 0) { + self2.matches[index] = set; + cb(); + } + }); }); - return null; - } - err.pkgsStack = nodeIdToParents(options.parentPkg.nodeId, ctx.resolvedPackagesByDepPath); - throw err; - } - dependencyResolvedLogger.debug({ - resolution: pkgResponse.body.id, - wanted: { - dependentId: options.parentPkg.depPath, - name: wantedDependency.alias, - rawSpec: wantedDependency.pref - } - }); - pkgResponse.body.id = encodePkgId_1.default(pkgResponse.body.id); - if (!pkgResponse.body.updated && options.currentDepth === Math.max(0, options.updateDepth) && depIsLinked && !ctx.force && !options.proceed) { - return null; - } - if (pkgResponse.body.isLocal) { - const manifest = (_c = pkgResponse.body.manifest) !== null && _c !== void 0 ? _c : await pkgResponse.bundledManifest(); - return { - alias: wantedDependency.alias || manifest.name, - depPath: pkgResponse.body.id, - dev: wantedDependency.dev, - isLinkedDependency: true, - name: manifest.name, - normalizedPref: pkgResponse.body.normalizedPref, - optional: wantedDependency.optional, - pkgId: pkgResponse.body.id, - resolution: pkgResponse.body.resolution, - version: manifest.version }; - } - let pkg; - let prepare; - let hasBin; - pkg = ctx.readPackageHook != null ? ctx.readPackageHook((_d = pkgResponse.body.manifest) !== null && _d !== void 0 ? _d : await pkgResponse.bundledManifest()) : (_e = pkgResponse.body.manifest) !== null && _e !== void 0 ? _e : await pkgResponse.bundledManifest(); - if (!pkg.name) { - throw new error_1.default("MISSING_PACKAGE_NAME", `Can't install ${wantedDependency.pref}: Missing package name`); - } - const depPath = dp.relative(ctx.registries, pkg.name, pkgResponse.body.id); - if (nodeIdUtils_1.nodeIdContainsSequence(options.parentPkg.nodeId, options.parentPkg.depPath, depPath)) { - return null; - } - if (!options.update && currentPkg.dependencyLockfile != null && currentPkg.depPath && !pkgResponse.body.updated && currentPkg.dependencyLockfile.peerDependencies == null) { - prepare = currentPkg.dependencyLockfile.prepare === true; - hasBin = currentPkg.dependencyLockfile.hasBin === true; - pkg = { - ...lockfile_utils_1.nameVerFromPkgSnapshot(currentPkg.depPath, currentPkg.dependencyLockfile), - ...currentPkg.dependencyLockfile, - ...pkg + Glob.prototype._mark = function(p) { + return common.mark(this, p); }; - } else { - prepare = Boolean(pkgResponse.body.resolvedVia === "git-repository" && typeof ((_f = pkg.scripts) === null || _f === void 0 ? void 0 : _f.prepare) === "string"); - if (((_g = currentPkg.dependencyLockfile) === null || _g === void 0 ? void 0 : _g.deprecated) && !pkgResponse.body.updated && !pkg.deprecated) { - pkg.deprecated = currentPkg.dependencyLockfile.deprecated; - } - hasBin = Boolean((_h = pkg.bin && !isEmpty_1.default(pkg.bin)) !== null && _h !== void 0 ? _h : (_j = pkg.directories) === null || _j === void 0 ? void 0 : _j.bin); - } - if (options.currentDepth === 0 && pkgResponse.body.latest && pkgResponse.body.latest !== pkg.version) { - ctx.outdatedDependencies[pkgResponse.body.id] = pkgResponse.body.latest; - } - if (pkg.deprecated) { - core_loggers_1.deprecationLogger.debug({ - deprecated: pkg.deprecated, - depth: options.currentDepth, - pkgId: pkgResponse.body.id, - pkgName: pkg.name, - pkgVersion: pkg.version, - prefix: ctx.prefix - }); - } - const nodeId = pkgIsLeaf(pkg) ? pkgResponse.body.id : nodeIdUtils_1.createNodeId(options.parentPkg.nodeId, depPath); - const parentIsInstallable = options.parentPkg.installable === void 0 || options.parentPkg.installable; - const installable = parentIsInstallable && pkgResponse.body.isInstallable !== false; - const isNew = !ctx.resolvedPackagesByDepPath[depPath]; - if (isNew) { - if (pkgResponse.body.isInstallable === false || !parentIsInstallable) { - ctx.skipped.add(pkgResponse.body.id); - } - core_loggers_1.progressLogger.debug({ - packageId: pkgResponse.body.id, - requester: ctx.lockfileDir, - status: "resolved" - }); - logFetchResult(pkgResponse, ctx.lockfileDir); - ctx.resolvedPackagesByDepPath[depPath] = getResolvedPackage({ - dependencyLockfile: currentPkg.dependencyLockfile, - depPath, - force: ctx.force, - hasBin, - neverBuiltDependencies: ctx.neverBuiltDependencies, - pkg, - pkgResponse, - prepare, - wantedDependency - }); - } else { - ctx.resolvedPackagesByDepPath[depPath].prod = ctx.resolvedPackagesByDepPath[depPath].prod || !wantedDependency.dev && !wantedDependency.optional; - ctx.resolvedPackagesByDepPath[depPath].dev = ctx.resolvedPackagesByDepPath[depPath].dev || wantedDependency.dev; - ctx.resolvedPackagesByDepPath[depPath].optional = ctx.resolvedPackagesByDepPath[depPath].optional && wantedDependency.optional; - if (ctx.resolvedPackagesByDepPath[depPath].fetchingFiles == null && pkgResponse.files != null) { - logFetchResult(pkgResponse, ctx.lockfileDir); - ctx.resolvedPackagesByDepPath[depPath].fetchingFiles = pkgResponse.files; - ctx.resolvedPackagesByDepPath[depPath].filesIndexFile = pkgResponse.filesIndexFile; - ctx.resolvedPackagesByDepPath[depPath].finishing = pkgResponse.finishing; - ctx.resolvedPackagesByDepPath[depPath].fetchingBundledManifest = pkgResponse.bundledManifest; - } - if (ctx.dependenciesTree[nodeId]) { - ctx.dependenciesTree[nodeId].depth = Math.min(ctx.dependenciesTree[nodeId].depth, options.currentDepth); - } else { - ctx.pendingNodes.push({ - alias: wantedDependency.alias || pkg.name, - depth: options.currentDepth, - installable, - nodeId, - resolvedPackage: ctx.resolvedPackagesByDepPath[depPath] - }); - } - } - return { - alias: wantedDependency.alias || pkg.name, - depIsLinked, - depPath, - isNew, - nodeId, - normalizedPref: options.currentDepth === 0 ? pkgResponse.body.normalizedPref : void 0, - pkgId: pkgResponse.body.id, - installable, - isLinkedDependency: void 0, - pkg, - updated: pkgResponse.body.updated - }; - } - function logFetchResult(pkgResponse, lockfileDir) { - if (pkgResponse.files == null) - return; - pkgResponse.files().then((fetchResult) => { - core_loggers_1.progressLogger.debug({ - packageId: pkgResponse.body.id, - requester: lockfileDir, - status: fetchResult.fromStore ? "found_in_store" : "fetched" - }); - }).catch(() => { - }); - } - function pkgIsLeaf(pkg) { - var _a, _b, _c; - return isEmpty_1.default((_a = pkg.dependencies) !== null && _a !== void 0 ? _a : {}) && isEmpty_1.default((_b = pkg.optionalDependencies) !== null && _b !== void 0 ? _b : {}) && isEmpty_1.default((_c = pkg.peerDependencies) !== null && _c !== void 0 ? _c : {}); - } - function getResolvedPackage(options) { - var _a, _b; - const peerDependencies = peerDependenciesWithoutOwn(options.pkg); - return { - additionalInfo: { - bundledDependencies: options.pkg.bundledDependencies, - bundleDependencies: options.pkg.bundleDependencies, - cpu: options.pkg.cpu, - deprecated: options.pkg.deprecated, - engines: options.pkg.engines, - os: options.pkg.os - }, - depPath: options.depPath, - dev: options.wantedDependency.dev, - fetchingBundledManifest: options.pkgResponse.bundledManifest, - fetchingFiles: options.pkgResponse.files, - filesIndexFile: options.pkgResponse.filesIndexFile, - finishing: options.pkgResponse.finishing, - hasBin: options.hasBin, - hasBundledDependencies: !(((_a = options.pkg.bundledDependencies) !== null && _a !== void 0 ? _a : options.pkg.bundleDependencies) == null), - id: options.pkgResponse.body.id, - name: options.pkg.name, - optional: options.wantedDependency.optional, - optionalDependencies: new Set(Object.keys((_b = options.pkg.optionalDependencies) !== null && _b !== void 0 ? _b : {})), - peerDependencies: peerDependencies !== null && peerDependencies !== void 0 ? peerDependencies : {}, - peerDependenciesMeta: options.pkg.peerDependenciesMeta, - prepare: options.prepare, - prod: !options.wantedDependency.dev && !options.wantedDependency.optional, - requiresBuild: options.neverBuiltDependencies.has(options.pkg.name) ? false : options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : void 0, - resolution: options.pkgResponse.body.resolution, - version: options.pkg.version - }; - } - function peerDependenciesWithoutOwn(pkg) { - var _a, _b; - if (pkg.peerDependencies == null && pkg.peerDependenciesMeta == null) - return pkg.peerDependencies; - const ownDeps = new Set([ - ...Object.keys((_a = pkg.dependencies) !== null && _a !== void 0 ? _a : {}), - ...Object.keys((_b = pkg.optionalDependencies) !== null && _b !== void 0 ? _b : {}) - ]); - const result = {}; - if (pkg.peerDependencies != null) { - for (const [peerName, peerRange] of Object.entries(pkg.peerDependencies)) { - if (ownDeps.has(peerName)) - continue; - result[peerName] = peerRange; - } - } - if (pkg.peerDependenciesMeta != null) { - for (const [peerName, peerMeta] of Object.entries(pkg.peerDependenciesMeta)) { - if (ownDeps.has(peerName) || result[peerName] || peerMeta.optional !== true) - continue; - result[peerName] = "*"; - } - } - if (isEmpty_1.default(result)) - return void 0; - return result; - } - } -}); - -// ../resolve-dependencies/lib/resolveDependencyTree.js -var require_resolveDependencyTree = __commonJS({ - "../resolve-dependencies/lib/resolveDependencyTree.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var partition_1 = __importDefault(require_partition4()); - var nodeIdUtils_1 = require_nodeIdUtils(); - var resolveDependencies_1 = __importDefault(require_resolveDependencies()); - __exportStar(require_nodeIdUtils(), exports2); - async function default_1(importers, opts) { - var _a, _b; - const directDepsByImporterId = {}; - const wantedToBeSkippedPackageIds = new Set(); - const ctx = { - childrenByParentDepPath: {}, - currentLockfile: opts.currentLockfile, - defaultTag: opts.tag, - dependenciesTree: {}, - dryRun: opts.dryRun, - engineStrict: opts.engineStrict, - force: opts.force, - forceFullResolution: opts.forceFullResolution, - linkWorkspacePackagesDepth: (_a = opts.linkWorkspacePackagesDepth) !== null && _a !== void 0 ? _a : -1, - lockfileDir: opts.lockfileDir, - neverBuiltDependencies: (_b = opts.neverBuiltDependencies) !== null && _b !== void 0 ? _b : new Set(), - nodeVersion: opts.nodeVersion, - outdatedDependencies: {}, - pendingNodes: [], - pnpmVersion: opts.pnpmVersion, - preferWorkspacePackages: opts.preferWorkspacePackages, - readPackageHook: opts.hooks.readPackage, - registries: opts.registries, - resolvedPackagesByDepPath: {}, - skipped: wantedToBeSkippedPackageIds, - storeController: opts.storeController, - updateMatching: opts.updateMatching, - virtualStoreDir: opts.virtualStoreDir, - wantedLockfile: opts.wantedLockfile - }; - await Promise.all(importers.map(async (importer) => { - var _a2; - const projectSnapshot = opts.wantedLockfile.importers[importer.id]; - const linkedDependencies = []; - const resolveCtx = { - ...ctx, - linkedDependencies, - modulesDir: importer.modulesDir, - prefix: importer.rootDir + Glob.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); }; - const proceed = importer.id === "." || importer.hasRemovedDependencies === true || importer.wantedDependencies.some((wantedDep) => wantedDep["isNew"]); - const resolveOpts = { - currentDepth: 0, - parentPkg: { - installable: true, - nodeId: `>${importer.id}>`, - optional: false, - depPath: importer.id - }, - proceed, - resolvedDependencies: { - ...projectSnapshot.dependencies, - ...projectSnapshot.devDependencies, - ...projectSnapshot.optionalDependencies - }, - updateDepth: -1, - workspacePackages: opts.workspacePackages + Glob.prototype.abort = function() { + this.aborted = true; + this.emit("abort"); }; - directDepsByImporterId[importer.id] = await resolveDependencies_1.default(resolveCtx, (_a2 = importer.preferredVersions) !== null && _a2 !== void 0 ? _a2 : {}, importer.wantedDependencies, resolveOpts); - })); - ctx.pendingNodes.forEach((pendingNode) => { - ctx.dependenciesTree[pendingNode.nodeId] = { - children: () => buildTree(ctx, pendingNode.nodeId, pendingNode.resolvedPackage.id, ctx.childrenByParentDepPath[pendingNode.resolvedPackage.depPath], pendingNode.depth + 1, pendingNode.installable), - depth: pendingNode.depth, - installable: pendingNode.installable, - resolvedPackage: pendingNode.resolvedPackage + Glob.prototype.pause = function() { + if (!this.paused) { + this.paused = true; + this.emit("pause"); + } }; - }); - const resolvedImporters = {}; - for (const { id } of importers) { - const directDeps = directDepsByImporterId[id]; - const [linkedDependencies, directNonLinkedDeps] = partition_1.default((dep) => dep.isLinkedDependency === true, directDeps); - resolvedImporters[id] = { - directDependencies: directDeps.map((dep) => { - if (dep.isLinkedDependency === true) { - return dep; + Glob.prototype.resume = function() { + if (this.paused) { + this.emit("resume"); + this.paused = false; + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0); + this._emitQueue.length = 0; + for (var i = 0; i < eq.length; i++) { + var e = eq[i]; + this._emitMatch(e[0], e[1]); + } } - const resolvedPackage = ctx.dependenciesTree[dep.nodeId].resolvedPackage; - return { - alias: dep.alias, - dev: resolvedPackage.dev, - name: resolvedPackage.name, - normalizedPref: dep.normalizedPref, - optional: resolvedPackage.optional, - pkgId: resolvedPackage.id, - resolution: resolvedPackage.resolution, - version: resolvedPackage.version - }; - }), - directNodeIdsByAlias: directNonLinkedDeps.reduce((acc, dependency) => { - acc[dependency.alias] = dependency.nodeId; - return acc; - }, {}), - linkedDependencies + if (this._processQueue.length) { + var pq = this._processQueue.slice(0); + this._processQueue.length = 0; + for (var i = 0; i < pq.length; i++) { + var p = pq[i]; + this._processing--; + this._process(p[0], p[1], p[2], p[3]); + } + } + } }; - } - return { - dependenciesTree: ctx.dependenciesTree, - outdatedDependencies: ctx.outdatedDependencies, - resolvedImporters, - resolvedPackagesByDepPath: ctx.resolvedPackagesByDepPath, - wantedToBeSkippedPackageIds - }; - } - exports2.default = default_1; - function buildTree(ctx, parentNodeId, parentId, children, depth, installable) { - const childrenNodeIds = {}; - for (const child of children) { - if (child.depPath.startsWith("link:")) { - childrenNodeIds[child.alias] = child.depPath; - continue; - } - if (nodeIdUtils_1.nodeIdContainsSequence(parentNodeId, parentId, child.depPath)) { - continue; - } - const childNodeId = nodeIdUtils_1.createNodeId(parentNodeId, child.depPath); - childrenNodeIds[child.alias] = childNodeId; - installable = installable && !ctx.skipped.has(child.depPath); - ctx.dependenciesTree[childNodeId] = { - children: () => buildTree(ctx, childNodeId, child.depPath, ctx.childrenByParentDepPath[child.depPath], depth + 1, installable), - depth, - installable, - resolvedPackage: ctx.resolvedPackagesByDepPath[child.depPath] + Glob.prototype._process = function(pattern, index, inGlobStar, cb) { + assert(this instanceof Glob); + assert(typeof cb === "function"); + if (this.aborted) + return; + this._processing++; + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]); + return; + } + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index, cb); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return cb(); + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); }; - } - return childrenNodeIds; - } - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/scan.js -var require_scan4 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/scan.js"(exports2, module2) { - var _curry3 = require_curry3(); - var scan = /* @__PURE__ */ _curry3(function scan2(fn2, acc, list) { - var idx = 0; - var len = list.length; - var result = [acc]; - while (idx < len) { - acc = fn2(acc, list[idx]); - result[idx + 1] = acc; - idx += 1; - } - return result; - }); - module2.exports = scan; - } -}); - -// ../resolve-dependencies/lib/resolvePeers.js -var require_resolvePeers = __commonJS({ - "../resolve-dependencies/lib/resolvePeers.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var crypto_1 = __importDefault(require("crypto")); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var dependency_path_1 = require_lib33(); - var fromPairs_1 = __importDefault(require_fromPairs()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var scan_1 = __importDefault(require_scan4()); - var semver_1 = __importDefault(require_semver2()); - var nodeIdUtils_1 = require_nodeIdUtils(); - function default_1(opts) { - const depGraph = {}; - const pathsByNodeId = {}; - const _createPkgsByName = createPkgsByName.bind(null, opts.dependenciesTree); - const rootProject = opts.projects.length > 1 ? opts.projects.find(({ id }) => id === ".") : null; - const rootPkgsByName = rootProject == null ? {} : _createPkgsByName(rootProject); - for (const { directNodeIdsByAlias, topParents, rootDir } of opts.projects) { - const pkgsByName = { - ...rootPkgsByName, - ..._createPkgsByName({ directNodeIdsByAlias, topParents }) + Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); }; - resolvePeersOfChildren(directNodeIdsByAlias, pkgsByName, { - dependenciesTree: opts.dependenciesTree, - depGraph, - lockfileDir: opts.lockfileDir, - pathsByNodeId, - peersCache: new Map(), - purePkgs: new Set(), - rootDir, - strictPeerDependencies: opts.strictPeerDependencies, - virtualStoreDir: opts.virtualStoreDir - }); - } - Object.values(depGraph).forEach((node) => { - node.children = Object.keys(node.children).reduce((acc, alias) => { - var _a; - acc[alias] = (_a = pathsByNodeId[node.children[alias]]) !== null && _a !== void 0 ? _a : node.children[alias]; - return acc; - }, {}); - }); - const dependenciesByProjectId = {}; - for (const { directNodeIdsByAlias, id } of opts.projects) { - dependenciesByProjectId[id] = Object.keys(directNodeIdsByAlias).reduce((rootPathsByAlias, alias) => { - rootPathsByAlias[alias] = pathsByNodeId[directNodeIdsByAlias[alias]]; - return rootPathsByAlias; - }, {}); - } - return { - dependenciesGraph: depGraph, - dependenciesByProjectId - }; - } - exports2.default = default_1; - function createPkgsByName(dependenciesTree, { directNodeIdsByAlias, topParents }) { - return Object.assign(fromPairs_1.default(topParents.map(({ name, version }) => [ - name, - { - depth: 0, - version - } - ])), toPkgByName(Object.keys(directNodeIdsByAlias).map((alias) => ({ - alias, - node: dependenciesTree[directNodeIdsByAlias[alias]], - nodeId: directNodeIdsByAlias[alias] - })))); - } - function resolvePeersOfNode(nodeId, parentParentPkgs, ctx) { - var _a; - const node = ctx.dependenciesTree[nodeId]; - if (node.depth === -1) - return { resolvedPeers: {}, missingPeers: [] }; - const resolvedPackage = node.resolvedPackage; - if (ctx.purePkgs.has(resolvedPackage.depPath) && ctx.depGraph[resolvedPackage.depPath].depth <= node.depth && isEmpty_1.default(resolvedPackage.peerDependencies)) { - ctx.pathsByNodeId[nodeId] = resolvedPackage.depPath; - return { resolvedPeers: {}, missingPeers: [] }; - } - if (typeof node.children === "function") { - node.children = node.children(); - } - const children = node.children; - const parentPkgs = isEmpty_1.default(children) ? parentParentPkgs : { - ...parentParentPkgs, - ...toPkgByName(Object.keys(children).map((alias) => ({ - alias, - node: ctx.dependenciesTree[children[alias]], - nodeId: children[alias] - }))) - }; - const hit = (_a = ctx.peersCache.get(resolvedPackage.depPath)) === null || _a === void 0 ? void 0 : _a.find((cache) => cache.resolvedPeers.every(([name, cachedNodeId]) => { - var _a2; - const parentPkgNodeId = (_a2 = parentPkgs[name]) === null || _a2 === void 0 ? void 0 : _a2.nodeId; - if (!parentPkgNodeId || !cachedNodeId) - return false; - if (parentPkgs[name].nodeId === cachedNodeId) - return true; - if (ctx.pathsByNodeId[cachedNodeId] && ctx.pathsByNodeId[cachedNodeId] === ctx.pathsByNodeId[parentPkgs[name].nodeId]) - return true; - const parentDepPath = ctx.dependenciesTree[parentPkgNodeId].resolvedPackage.depPath; - if (!ctx.purePkgs.has(parentDepPath)) - return false; - const cachedDepPath = ctx.dependenciesTree[cachedNodeId].resolvedPackage.depPath; - return parentDepPath === cachedDepPath; - }) && cache.missingPeers.every((missingPeer) => !parentPkgs[missingPeer])); - if (hit != null) { - ctx.pathsByNodeId[nodeId] = hit.depPath; - ctx.depGraph[hit.depPath].depth = Math.min(ctx.depGraph[hit.depPath].depth, node.depth); - return { - missingPeers: hit.missingPeers, - resolvedPeers: fromPairs_1.default(hit.resolvedPeers) + Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); + } + } + var len = matchedEntries.length; + if (len === 0) + return cb(); + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); + } + this._emitMatch(index, e); + } + return cb(); + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + this._process([e].concat(remain), index, inGlobStar, cb); + } + cb(); }; - } - const { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: missingPeersOfChildren } = resolvePeersOfChildren(children, parentPkgs, ctx); - const { resolvedPeers, missingPeers } = isEmpty_1.default(resolvedPackage.peerDependencies) ? { resolvedPeers: {}, missingPeers: [] } : resolvePeers({ - currentDepth: node.depth, - dependenciesTree: ctx.dependenciesTree, - lockfileDir: ctx.lockfileDir, - nodeId, - parentPkgs, - resolvedPackage, - rootDir: ctx.rootDir, - strictPeerDependencies: ctx.strictPeerDependencies - }); - const allResolvedPeers = Object.assign(unknownResolvedPeersOfChildren, resolvedPeers); - delete allResolvedPeers[node.resolvedPackage.name]; - const allMissingPeers = Array.from(new Set([...missingPeersOfChildren, ...missingPeers])); - let depPath; - if (isEmpty_1.default(allResolvedPeers)) { - depPath = resolvedPackage.depPath; - } else { - const peersFolderSuffix = createPeersFolderSuffix(Object.keys(allResolvedPeers).map((alias) => ctx.dependenciesTree[allResolvedPeers[alias]].resolvedPackage).map(({ name, version }) => ({ name, version }))); - depPath = `${resolvedPackage.depPath}${peersFolderSuffix}`; - } - const localLocation = path_1.default.join(ctx.virtualStoreDir, dependency_path_1.depPathToFilename(depPath, ctx.lockfileDir)); - const modules = path_1.default.join(localLocation, "node_modules"); - const isPure = isEmpty_1.default(allResolvedPeers) && allMissingPeers.length === 0; - if (isPure) { - ctx.purePkgs.add(resolvedPackage.depPath); - } else { - const cache = { - missingPeers: allMissingPeers, - depPath, - resolvedPeers: Object.entries(allResolvedPeers) + Glob.prototype._emitMatch = function(index, e) { + if (this.aborted) + return; + if (isIgnored(this, e)) + return; + if (this.paused) { + this._emitQueue.push([index, e]); + return; + } + var abs = isAbsolute(e) ? e : this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) + e = abs; + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + var st = this.statCache[abs]; + if (st) + this.emit("stat", e, st); + this.emit("match", e); }; - if (ctx.peersCache.has(resolvedPackage.depPath)) { - ctx.peersCache.get(resolvedPackage.depPath).push(cache); - } else { - ctx.peersCache.set(resolvedPackage.depPath, [cache]); + Glob.prototype._readdirInGlobStar = function(abs, cb) { + if (this.aborted) + return; + if (this.follow) + return this._readdir(abs, false, cb); + var lstatkey = "lstat\0" + abs; + var self2 = this; + var lstatcb = inflight(lstatkey, lstatcb_); + if (lstatcb) + fs2.lstat(abs, lstatcb); + function lstatcb_(er, lstat) { + if (er && er.code === "ENOENT") + return cb(); + var isSym = lstat && lstat.isSymbolicLink(); + self2.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) { + self2.cache[abs] = "FILE"; + cb(); + } else + self2._readdir(abs, false, cb); + } + }; + Glob.prototype._readdir = function(abs, inGlobStar, cb) { + if (this.aborted) + return; + cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); + if (!cb) + return; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return cb(); + if (Array.isArray(c)) + return cb(null, c); + } + var self2 = this; + fs2.readdir(abs, readdirCb(this, abs, cb)); + }; + function readdirCb(self2, abs, cb) { + return function(er, entries) { + if (er) + self2._readdirError(abs, er, cb); + else + self2._readdirEntries(abs, entries, cb); + }; } - } - ctx.pathsByNodeId[nodeId] = depPath; - const peerDependencies = { ...resolvedPackage.peerDependencies }; - if (!ctx.depGraph[depPath] || ctx.depGraph[depPath].depth > node.depth) { - const dir = path_1.default.join(modules, resolvedPackage.name); - const transitivePeerDependencies = new Set(); - const unknownPeers = [ - ...Object.keys(unknownResolvedPeersOfChildren), - ...missingPeersOfChildren - ]; - if (unknownPeers.length > 0) { - for (const unknownPeer of unknownPeers) { - if (!peerDependencies[unknownPeer]) { - transitivePeerDependencies.add(unknownPeer); + Glob.prototype._readdirEntries = function(abs, entries, cb) { + if (this.aborted) + return; + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; } } - } - ctx.depGraph[depPath] = { - ...node.resolvedPackage, - children: Object.assign(getPreviouslyResolvedChildren(nodeId, ctx.dependenciesTree), children, resolvedPeers), - depPath, - depth: node.depth, - dir, - installable: node.installable, - isPure, - modules, - peerDependencies, - transitivePeerDependencies + this.cache[abs] = entries; + return cb(null, entries); }; - } - return { resolvedPeers: allResolvedPeers, missingPeers: allMissingPeers }; - } - function getPreviouslyResolvedChildren(nodeId, dependenciesTree) { - const parentIds = nodeIdUtils_1.splitNodeId(nodeId); - const ownId = parentIds.pop(); - const allChildren = {}; - if (!ownId || !parentIds.includes(ownId)) - return allChildren; - const nodeIdChunks = parentIds.join(">").split(ownId); - nodeIdChunks.pop(); - nodeIdChunks.reduce((accNodeId, part) => { - accNodeId += `${part}${ownId}`; - const parentNode = dependenciesTree[`${accNodeId}>`]; - Object.assign(allChildren, typeof parentNode.children === "function" ? parentNode.children() : parentNode.children); - return accNodeId; - }, ">"); - return allChildren; - } - function resolvePeersOfChildren(children, parentPkgs, ctx) { - const allResolvedPeers = {}; - const allMissingPeers = new Set(); - for (const childNodeId of Object.values(children)) { - const { resolvedPeers, missingPeers } = resolvePeersOfNode(childNodeId, parentPkgs, ctx); - Object.assign(allResolvedPeers, resolvedPeers); - missingPeers.forEach((missingPeer) => allMissingPeers.add(missingPeer)); - } - const unknownResolvedPeersOfChildren = Object.keys(allResolvedPeers).filter((alias) => !children[alias]).reduce((acc, peer) => { - acc[peer] = allResolvedPeers[peer]; - return acc; - }, {}); - return { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: Array.from(allMissingPeers) }; - } - function resolvePeers(ctx) { - var _a, _b; - const resolvedPeers = {}; - const missingPeers = []; - for (const peerName in ctx.resolvedPackage.peerDependencies) { - const peerVersionRange = ctx.resolvedPackage.peerDependencies[peerName]; - const resolved = ctx.parentPkgs[peerName]; - if (!resolved) { - missingPeers.push(peerName); - if (((_b = (_a = ctx.resolvedPackage.peerDependenciesMeta) === null || _a === void 0 ? void 0 : _a[peerName]) === null || _b === void 0 ? void 0 : _b.optional) === true) { - continue; - } - const friendlyPath = nodeIdToFriendlyPath(ctx); - const message2 = `${friendlyPath ? `${friendlyPath}: ` : ""}${packageFriendlyId(ctx.resolvedPackage)} requires a peer of ${peerName}@${peerVersionRange} but none was installed.`; - if (ctx.strictPeerDependencies) { - throw new error_1.default("MISSING_PEER_DEPENDENCY", message2); + Glob.prototype._readdirError = function(f, er, cb) { + if (this.aborted) + return; + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + this.emit("error", error); + this.abort(); + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) { + this.emit("error", er); + this.abort(); + } + if (!this.silent) + console.error("glob error", er); + break; } - logger_1.default.warn({ - message: message2, - prefix: ctx.rootDir + return cb(); + }; + Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); }); - continue; - } - if (!semver_1.default.satisfies(resolved.version, peerVersionRange)) { - const friendlyPath = nodeIdToFriendlyPath(ctx); - const message2 = `${friendlyPath ? `${friendlyPath}: ` : ""}${packageFriendlyId(ctx.resolvedPackage)} requires a peer of ${peerName}@${peerVersionRange} but version ${resolved.version} was installed.`; - if (ctx.strictPeerDependencies) { - throw new error_1.default("INVALID_PEER_DEPENDENCY", message2); + }; + Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false, cb); + var isSym = this.symlinks[abs]; + var len = entries.length; + if (isSym && inGlobStar) + return cb(); + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true, cb); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true, cb); } - logger_1.default.warn({ - message: message2, - prefix: ctx.rootDir + cb(); + }; + Glob.prototype._processSimple = function(prefix, index, cb) { + var self2 = this; + this._stat(prefix, function(er, exists) { + self2._processSimple2(prefix, index, er, exists, cb); }); - } - if (resolved === null || resolved === void 0 ? void 0 : resolved.nodeId) - resolvedPeers[peerName] = resolved.nodeId; - } - return { resolvedPeers, missingPeers }; - } - function packageFriendlyId(manifest) { - return `${manifest.name}@${manifest.version}`; - } - function nodeIdToFriendlyPath({ dependenciesTree, lockfileDir, nodeId, rootDir }) { - const parts = nodeIdUtils_1.splitNodeId(nodeId).slice(0, -1); - const result = scan_1.default((prevNodeId, pkgId) => nodeIdUtils_1.createNodeId(prevNodeId, pkgId), ">", parts).slice(2).map((nid) => dependenciesTree[nid].resolvedPackage.name); - const projectPath = path_1.default.relative(lockfileDir, rootDir); - if (projectPath) { - result.unshift(projectPath); - } - return result.join(" > "); - } - function toPkgByName(nodes) { - const pkgsByName = {}; - for (const { alias, node, nodeId } of nodes) { - pkgsByName[alias] = { - depth: node.depth, - nodeId, - version: node.resolvedPackage.version }; - } - return pkgsByName; - } - function createPeersFolderSuffix(peers) { - const folderName = peers.map(({ name, version }) => `${name.replace("/", "+")}@${version}`).sort().join("+"); - if (folderName.length > 32) { - return `_${crypto_1.default.createHash("md5").update(folderName).digest("hex")}`; - } - return `_${folderName}`; - } - } -}); - -// ../resolve-dependencies/lib/updateLockfile.js -var require_updateLockfile = __commonJS({ - "../resolve-dependencies/lib/updateLockfile.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var logger_1 = __importDefault(require_lib6()); - var prune_lockfile_1 = require_lib74(); - var dp = __importStar2(require_lib33()); - var get_npm_tarball_url_1 = __importDefault(require_lib51()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var merge_1 = __importDefault(require_merge3()); - var partition_1 = __importDefault(require_partition4()); - var depPathToRef_1 = __importDefault(require_depPathToRef()); - function default_1(depGraph, lockfile, prefix, registries) { - var _a; - lockfile.packages = (_a = lockfile.packages) !== null && _a !== void 0 ? _a : {}; - const pendingRequiresBuilds = []; - for (const depPath of Object.keys(depGraph)) { - const depNode = depGraph[depPath]; - const [updatedOptionalDeps, updatedDeps] = partition_1.default((child) => depNode.optionalDependencies.has(child.alias), Object.keys(depNode.children).map((alias) => ({ alias, depPath: depNode.children[alias] }))); - lockfile.packages[depPath] = toLockfileDependency(pendingRequiresBuilds, depNode, { - depGraph, - depPath, - prevSnapshot: lockfile.packages[depPath], - registries, - registry: dp.getRegistryByPackageName(registries, depNode.name), - updatedDeps, - updatedOptionalDeps - }); - } - const warn = (message2) => logger_1.default.warn({ message: message2, prefix }); - return { - newLockfile: prune_lockfile_1.pruneSharedLockfile(lockfile, { warn }), - pendingRequiresBuilds - }; - } - exports2.default = default_1; - function toLockfileDependency(pendingRequiresBuilds, pkg, opts) { - var _a, _b, _c, _d, _e, _f; - const lockfileResolution = toLockfileResolution({ name: pkg.name, version: pkg.version }, opts.depPath, pkg.resolution, opts.registry); - const newResolvedDeps = updateResolvedDeps((_b = (_a = opts.prevSnapshot) === null || _a === void 0 ? void 0 : _a.dependencies) !== null && _b !== void 0 ? _b : {}, opts.updatedDeps, opts.registries, opts.depGraph); - const newResolvedOptionalDeps = updateResolvedDeps((_d = (_c = opts.prevSnapshot) === null || _c === void 0 ? void 0 : _c.optionalDependencies) !== null && _d !== void 0 ? _d : {}, opts.updatedOptionalDeps, opts.registries, opts.depGraph); - const result = { - resolution: lockfileResolution - }; - if (dp.isAbsolute(opts.depPath)) { - result["name"] = pkg.name; - if (pkg.version) { - result["version"] = pkg.version; - } - } - if (!isEmpty_1.default(newResolvedDeps)) { - result["dependencies"] = newResolvedDeps; - } - if (!isEmpty_1.default(newResolvedOptionalDeps)) { - result["optionalDependencies"] = newResolvedOptionalDeps; - } - if (pkg.dev && !pkg.prod) { - result["dev"] = true; - } else if (pkg.prod && !pkg.dev) { - result["dev"] = false; - } - if (pkg.optional) { - result["optional"] = true; - } - if (opts.depPath[0] !== "/" && !pkg.id.endsWith(opts.depPath)) { - result["id"] = pkg.id; - } - if (!isEmpty_1.default((_e = pkg.peerDependencies) !== null && _e !== void 0 ? _e : {})) { - result["peerDependencies"] = pkg.peerDependencies; - } - if (pkg.transitivePeerDependencies.size) { - result["transitivePeerDependencies"] = Array.from(pkg.transitivePeerDependencies).sort(); - } - if (pkg.peerDependenciesMeta != null) { - const normalizedPeerDependenciesMeta = {}; - for (const peer of Object.keys(pkg.peerDependenciesMeta)) { - if (pkg.peerDependenciesMeta[peer].optional) { - normalizedPeerDependenciesMeta[peer] = { optional: true }; + Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return cb(); + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + cb(); + }; + Glob.prototype._stat = function(f, cb) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return cb(); + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return cb(null, c); + if (needDir && c === "FILE") + return cb(); + } + var exists; + var stat = this.statCache[abs]; + if (stat !== void 0) { + if (stat === false) + return cb(null, stat); + else { + var type = stat.isDirectory() ? "DIR" : "FILE"; + if (needDir && type === "FILE") + return cb(); + else + return cb(null, type, stat); + } + } + var self2 = this; + var statcb = inflight("stat\0" + abs, lstatcb_); + if (statcb) + fs2.lstat(abs, statcb); + function lstatcb_(er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + return fs2.stat(abs, function(er2, stat2) { + if (er2) + self2._stat2(f, abs, null, lstat, cb); + else + self2._stat2(f, abs, er2, stat2, cb); + }); + } else { + self2._stat2(f, abs, er, lstat, cb); + } + } + }; + Glob.prototype._stat2 = function(f, abs, er, stat, cb) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return cb(); } + var needDir = f.slice(-1) === "/"; + this.statCache[abs] = stat; + if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) + return cb(null, false, stat); + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return cb(); + return cb(null, c, stat); + }; + }, + /* 76 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + function posix(path2) { + return path2.charAt(0) === "/"; + } + function win32(path2) { + var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + var result2 = splitDeviceRe.exec(path2); + var device = result2[1] || ""; + var isUnc = Boolean(device && device.charAt(1) !== ":"); + return Boolean(result2[2] || isUnc); + } + module3.exports = process.platform === "win32" ? win32 : posix; + module3.exports.posix = posix; + module3.exports.win32 = win32; + }, + , + , + /* 79 */ + /***/ + function(module3, exports3) { + module3.exports = require("tty"); + }, + , + /* 81 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.default = function(str, fileLoc = "lockfile") { + str = (0, (_stripBom || _load_stripBom()).default)(str); + return hasMergeConflicts(str) ? parseWithConflict(str, fileLoc) : { type: "success", object: parse2(str, fileLoc) }; + }; + var _util; + function _load_util() { + return _util = _interopRequireDefault(__webpack_require__(2)); } - if (Object.keys(normalizedPeerDependenciesMeta).length > 0) { - result["peerDependenciesMeta"] = normalizedPeerDependenciesMeta; + var _invariant; + function _load_invariant() { + return _invariant = _interopRequireDefault(__webpack_require__(7)); } - } - if (pkg.additionalInfo.engines != null) { - for (const engine of Object.keys(pkg.additionalInfo.engines)) { - if (pkg.additionalInfo.engines[engine] === "*") - continue; - result["engines"] = result["engines"] || {}; - result["engines"][engine] = pkg.additionalInfo.engines[engine]; + var _stripBom; + function _load_stripBom() { + return _stripBom = _interopRequireDefault(__webpack_require__(122)); } - } - if (pkg.additionalInfo.cpu != null) { - result["cpu"] = pkg.additionalInfo.cpu; - } - if (pkg.additionalInfo.os != null) { - result["os"] = pkg.additionalInfo.os; - } - if (Array.isArray(pkg.additionalInfo.bundledDependencies) || Array.isArray(pkg.additionalInfo.bundleDependencies)) { - result["bundledDependencies"] = (_f = pkg.additionalInfo.bundledDependencies) !== null && _f !== void 0 ? _f : pkg.additionalInfo.bundleDependencies; - } - if (pkg.additionalInfo.deprecated) { - result["deprecated"] = pkg.additionalInfo.deprecated; - } - if (pkg.hasBin) { - result["hasBin"] = true; - } - if (pkg.requiresBuild !== void 0) { - if (pkg.requiresBuild) { - result["requiresBuild"] = true; + var _constants; + function _load_constants() { + return _constants = __webpack_require__(6); } - } else if (opts.prevSnapshot != null) { - if (opts.prevSnapshot.requiresBuild) { - result["requiresBuild"] = opts.prevSnapshot.requiresBuild; + var _errors; + function _load_errors() { + return _errors = __webpack_require__(4); } - if (opts.prevSnapshot.prepare) { - result["prepare"] = opts.prevSnapshot.prepare; + var _map; + function _load_map() { + return _map = _interopRequireDefault(__webpack_require__(20)); } - } else if (pkg.prepare) { - result["prepare"] = true; - result["requiresBuild"] = true; - } else { - pendingRequiresBuilds.push(opts.depPath); - } - pkg.requiresBuild = result["requiresBuild"]; - return result; - } - function updateResolvedDeps(prevResolvedDeps, updatedDeps, registries, depGraph) { - const newResolvedDeps = fromPairs_1.default(updatedDeps.map(({ alias, depPath }) => { - if (depPath.startsWith("link:")) { - return [alias, depPath]; + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; } - const depNode = depGraph[depPath]; - return [ - alias, - depPathToRef_1.default(depNode.depPath, { - alias, - realName: depNode.name, - registries, - resolution: depNode.resolution - }) - ]; - })); - return merge_1.default(prevResolvedDeps, newResolvedDeps); - } - function toLockfileResolution(pkg, depPath, resolution, registry) { - if (dp.isAbsolute(depPath) || resolution.type !== void 0 || !resolution["integrity"]) { - return resolution; - } - const base = registry !== resolution["registry"] ? { registry: resolution["registry"] } : {}; - const expectedTarball = get_npm_tarball_url_1.default(pkg.name, pkg.version, { registry }); - const actualTarball = resolution["tarball"].replace("%2f", "/"); - if (removeProtocol(expectedTarball) !== removeProtocol(actualTarball)) { - return { - ...base, - integrity: resolution["integrity"], - tarball: relativeTarball(resolution["tarball"], registry) + const VERSION_REGEX = /^yarn lockfile v(\d+)$/; + const TOKEN_TYPES = { + boolean: "BOOLEAN", + string: "STRING", + identifier: "IDENTIFIER", + eof: "EOF", + colon: "COLON", + newline: "NEWLINE", + comment: "COMMENT", + indent: "INDENT", + invalid: "INVALID", + number: "NUMBER", + comma: "COMMA" }; - } - return { - ...base, - integrity: resolution["integrity"] - }; - } - function removeProtocol(url) { - return url.split("://")[1]; - } - function relativeTarball(tarball, registry) { - if (tarball.substr(0, registry.length) === registry) { - return tarball.substr(registry.length); - } - return tarball; - } - } -}); - -// ../resolve-dependencies/lib/updateProjectManifest.js -var require_updateProjectManifest = __commonJS({ - "../resolve-dependencies/lib/updateProjectManifest.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var manifest_utils_1 = require_lib15(); - var version_selector_type_1 = __importDefault(require_version_selector_type()); - async function updateProjectManifest(importer, opts) { - if (!importer.manifest) { - throw new Error("Cannot save because no package.json found"); - } - const specsToUpsert = opts.directDependencies.filter((rdd, index) => importer.wantedDependencies[index].updateSpec).map((rdd, index) => { - var _a, _b; - const wantedDep = importer.wantedDependencies[index]; - return resolvedDirectDepToSpecObject({ ...rdd, isNew: wantedDep.isNew, specRaw: wantedDep.raw }, importer, { - nodeExecPath: wantedDep.nodeExecPath, - pinnedVersion: (_b = (_a = wantedDep.pinnedVersion) !== null && _a !== void 0 ? _a : importer["pinnedVersion"]) !== null && _b !== void 0 ? _b : "major", - preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, - saveWorkspaceProtocol: opts.saveWorkspaceProtocol - }); - }); - for (const pkgToInstall of importer.wantedDependencies) { - if (pkgToInstall.updateSpec && pkgToInstall.alias && !specsToUpsert.some(({ alias }) => alias === pkgToInstall.alias)) { - specsToUpsert.push({ - alias: pkgToInstall.alias, - nodeExecPath: pkgToInstall.nodeExecPath, - peer: importer["peer"], - saveType: importer["targetDependenciesField"] - }); - } - } - const hookedManifest = await manifest_utils_1.updateProjectManifestObject(importer.rootDir, importer.manifest, specsToUpsert); - const originalManifest = importer.originalManifest != null ? await manifest_utils_1.updateProjectManifestObject(importer.rootDir, importer.originalManifest, specsToUpsert) : void 0; - return [hookedManifest, originalManifest]; - } - exports2.default = updateProjectManifest; - function resolvedDirectDepToSpecObject({ alias, isNew, name, normalizedPref, resolution, specRaw, version }, importer, opts) { - let pref; - if (normalizedPref) { - pref = normalizedPref; - } else { - if (isNew === true) { - pref = getPrefPreferSpecifiedSpec({ - alias, - name, - pinnedVersion: opts.pinnedVersion, - specRaw, - version - }); - } else { - pref = getPrefPreferSpecifiedExoticSpec({ - alias, - name, - pinnedVersion: opts.pinnedVersion, - specRaw, - version - }); + const VALID_PROP_VALUE_TOKENS = [TOKEN_TYPES.boolean, TOKEN_TYPES.string, TOKEN_TYPES.number]; + function isValidPropValueToken(token) { + return VALID_PROP_VALUE_TOKENS.indexOf(token.type) >= 0; } - if (resolution.type === "directory" && (opts.saveWorkspaceProtocol || opts.preserveWorkspaceProtocol && specRaw.includes("@workspace:")) && !pref.startsWith("workspace:")) { - pref = `workspace:${pref}`; + function* tokenise(input) { + let lastNewline = false; + let line = 1; + let col = 0; + function buildToken(type, value) { + return { line, col, type, value }; + } + while (input.length) { + let chop = 0; + if (input[0] === "\n" || input[0] === "\r") { + chop++; + if (input[1] === "\n") { + chop++; + } + line++; + col = 0; + yield buildToken(TOKEN_TYPES.newline); + } else if (input[0] === "#") { + chop++; + let val = ""; + while (input[chop] !== "\n") { + val += input[chop]; + chop++; + } + yield buildToken(TOKEN_TYPES.comment, val); + } else if (input[0] === " ") { + if (lastNewline) { + let indent = ""; + for (let i = 0; input[i] === " "; i++) { + indent += input[i]; + } + if (indent.length % 2) { + throw new TypeError("Invalid number of spaces"); + } else { + chop = indent.length; + yield buildToken(TOKEN_TYPES.indent, indent.length / 2); + } + } else { + chop++; + } + } else if (input[0] === '"') { + let val = ""; + for (let i = 0; ; i++) { + const currentChar = input[i]; + val += currentChar; + if (i > 0 && currentChar === '"') { + const isEscaped = input[i - 1] === "\\" && input[i - 2] !== "\\"; + if (!isEscaped) { + break; + } + } + } + chop = val.length; + try { + yield buildToken(TOKEN_TYPES.string, JSON.parse(val)); + } catch (err) { + if (err instanceof SyntaxError) { + yield buildToken(TOKEN_TYPES.invalid); + } else { + throw err; + } + } + } else if (/^[0-9]/.test(input)) { + let val = ""; + for (let i = 0; /^[0-9]$/.test(input[i]); i++) { + val += input[i]; + } + chop = val.length; + yield buildToken(TOKEN_TYPES.number, +val); + } else if (/^true/.test(input)) { + yield buildToken(TOKEN_TYPES.boolean, true); + chop = 4; + } else if (/^false/.test(input)) { + yield buildToken(TOKEN_TYPES.boolean, false); + chop = 5; + } else if (input[0] === ":") { + yield buildToken(TOKEN_TYPES.colon); + chop++; + } else if (input[0] === ",") { + yield buildToken(TOKEN_TYPES.comma); + chop++; + } else if (/^[a-zA-Z\/-]/g.test(input)) { + let name = ""; + for (let i = 0; i < input.length; i++) { + const char = input[i]; + if (char === ":" || char === " " || char === "\n" || char === "\r" || char === ",") { + break; + } else { + name += char; + } + } + chop = name.length; + yield buildToken(TOKEN_TYPES.string, name); + } else { + yield buildToken(TOKEN_TYPES.invalid); + } + if (!chop) { + yield buildToken(TOKEN_TYPES.invalid); + } + col += chop; + lastNewline = input[0] === "\n" || input[0] === "\r" && input[1] === "\n"; + input = input.slice(chop); + } + yield buildToken(TOKEN_TYPES.eof); } - } - return { - alias, - nodeExecPath: opts.nodeExecPath, - peer: importer["peer"], - pref, - saveType: isNew === true ? importer["targetDependenciesField"] : void 0 - }; - } - function getPrefPreferSpecifiedSpec(opts) { - var _a; - const prefix = manifest_utils_1.getPrefix(opts.alias, opts.name); - if ((_a = opts.specRaw) === null || _a === void 0 ? void 0 : _a.startsWith(`${opts.alias}@${prefix}`)) { - const range = opts.specRaw.substr(`${opts.alias}@${prefix}`.length); - if (range) { - const selector = version_selector_type_1.default(range); - if (selector != null && (selector.type === "version" || selector.type === "range")) { - return opts.specRaw.substr(opts.alias.length + 1); + class Parser { + constructor(input, fileLoc = "lockfile") { + this.comments = []; + this.tokens = tokenise(input); + this.fileLoc = fileLoc; + } + onComment(token) { + const value = token.value; + (0, (_invariant || _load_invariant()).default)(typeof value === "string", "expected token value to be a string"); + const comment = value.trim(); + const versionMatch = comment.match(VERSION_REGEX); + if (versionMatch) { + const version2 = +versionMatch[1]; + if (version2 > (_constants || _load_constants()).LOCKFILE_VERSION) { + throw new (_errors || _load_errors()).MessageError(`Can't install from a lockfile of version ${version2} as you're on an old yarn version that only supports versions up to ${(_constants || _load_constants()).LOCKFILE_VERSION}. Run \`$ yarn self-update\` to upgrade to the latest version.`); + } + } + this.comments.push(comment); + } + next() { + const item = this.tokens.next(); + (0, (_invariant || _load_invariant()).default)(item, "expected a token"); + const done = item.done, value = item.value; + if (done || !value) { + throw new Error("No more tokens"); + } else if (value.type === TOKEN_TYPES.comment) { + this.onComment(value); + return this.next(); + } else { + return this.token = value; + } + } + unexpected(msg = "Unexpected token") { + throw new SyntaxError(`${msg} ${this.token.line}:${this.token.col} in ${this.fileLoc}`); + } + expect(tokType) { + if (this.token.type === tokType) { + this.next(); + } else { + this.unexpected(); + } + } + eat(tokType) { + if (this.token.type === tokType) { + this.next(); + return true; + } else { + return false; + } + } + parse(indent = 0) { + const obj = (0, (_map || _load_map()).default)(); + while (true) { + const propToken = this.token; + if (propToken.type === TOKEN_TYPES.newline) { + const nextToken = this.next(); + if (!indent) { + continue; + } + if (nextToken.type !== TOKEN_TYPES.indent) { + break; + } + if (nextToken.value === indent) { + this.next(); + } else { + break; + } + } else if (propToken.type === TOKEN_TYPES.indent) { + if (propToken.value === indent) { + this.next(); + } else { + break; + } + } else if (propToken.type === TOKEN_TYPES.eof) { + break; + } else if (propToken.type === TOKEN_TYPES.string) { + const key = propToken.value; + (0, (_invariant || _load_invariant()).default)(key, "Expected a key"); + const keys = [key]; + this.next(); + while (this.token.type === TOKEN_TYPES.comma) { + this.next(); + const keyToken = this.token; + if (keyToken.type !== TOKEN_TYPES.string) { + this.unexpected("Expected string"); + } + const key2 = keyToken.value; + (0, (_invariant || _load_invariant()).default)(key2, "Expected a key"); + keys.push(key2); + this.next(); + } + const valToken = this.token; + if (valToken.type === TOKEN_TYPES.colon) { + this.next(); + const val = this.parse(indent + 1); + for (var _iterator = keys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { + var _ref; + if (_isArray) { + if (_i >= _iterator.length) + break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) + break; + _ref = _i.value; + } + const key2 = _ref; + obj[key2] = val; + } + if (indent && this.token.type !== TOKEN_TYPES.indent) { + break; + } + } else if (isValidPropValueToken(valToken)) { + for (var _iterator2 = keys, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) { + var _ref2; + if (_isArray2) { + if (_i2 >= _iterator2.length) + break; + _ref2 = _iterator2[_i2++]; + } else { + _i2 = _iterator2.next(); + if (_i2.done) + break; + _ref2 = _i2.value; + } + const key2 = _ref2; + obj[key2] = valToken.value; + } + this.next(); + } else { + this.unexpected("Invalid value type"); + } + } else { + this.unexpected(`Unknown token: ${(_util || _load_util()).default.inspect(propToken)}`); + } + } + return obj; } } - } - return `${prefix}${manifest_utils_1.createVersionSpec(opts.version, opts.pinnedVersion)}`; - } - function getPrefPreferSpecifiedExoticSpec(opts) { - var _a; - const prefix = manifest_utils_1.getPrefix(opts.alias, opts.name); - if (((_a = opts.specRaw) === null || _a === void 0 ? void 0 : _a.startsWith(`${opts.alias}@${prefix}`)) && opts.specRaw !== `${opts.alias}@workspace:*`) { - const specWithoutName = opts.specRaw.substr(`${opts.alias}@${prefix}`.length); - const selector = version_selector_type_1.default(specWithoutName); - if (!(selector != null && (selector.type === "version" || selector.type === "range"))) { - return opts.specRaw.substr(opts.alias.length + 1); + const MERGE_CONFLICT_ANCESTOR = "|||||||"; + const MERGE_CONFLICT_END = ">>>>>>>"; + const MERGE_CONFLICT_SEP = "======="; + const MERGE_CONFLICT_START = "<<<<<<<"; + function extractConflictVariants(str) { + const variants = [[], []]; + const lines = str.split(/\r?\n/g); + let skip = false; + while (lines.length) { + const line = lines.shift(); + if (line.startsWith(MERGE_CONFLICT_START)) { + while (lines.length) { + const conflictLine = lines.shift(); + if (conflictLine === MERGE_CONFLICT_SEP) { + skip = false; + break; + } else if (skip || conflictLine.startsWith(MERGE_CONFLICT_ANCESTOR)) { + skip = true; + continue; + } else { + variants[0].push(conflictLine); + } + } + while (lines.length) { + const conflictLine = lines.shift(); + if (conflictLine.startsWith(MERGE_CONFLICT_END)) { + break; + } else { + variants[1].push(conflictLine); + } + } + } else { + variants[0].push(line); + variants[1].push(line); + } + } + return [variants[0].join("\n"), variants[1].join("\n")]; } - } - return `${prefix}${manifest_utils_1.createVersionSpec(opts.version, opts.pinnedVersion)}`; - } - } -}); - -// ../resolve-dependencies/lib/index.js -var require_lib86 = __commonJS({ - "../resolve-dependencies/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var manifest_utils_1 = require_lib15(); - var read_package_json_1 = require_lib32(); - var types_1 = require_lib14(); - var difference_1 = __importDefault(require_difference()); - var depPathToRef_1 = __importDefault(require_depPathToRef()); - var resolveDependencyTree_1 = __importDefault(require_resolveDependencyTree()); - var resolvePeers_1 = __importDefault(require_resolvePeers()); - var updateLockfile_1 = __importDefault(require_updateLockfile()); - var updateProjectManifest_1 = __importDefault(require_updateProjectManifest()); - async function default_1(importers, opts) { - var _a, _b, _c, _d, _e; - const { dependenciesTree, outdatedDependencies, resolvedImporters, resolvedPackagesByDepPath, wantedToBeSkippedPackageIds } = await resolveDependencyTree_1.default(importers, opts); - const linkedDependenciesByProjectId = {}; - const projectsToLink = await Promise.all(importers.map(async (project, index) => { - var _a2; - const resolvedImporter = resolvedImporters[project.id]; - linkedDependenciesByProjectId[project.id] = resolvedImporter.linkedDependencies; - let updatedManifest = project.manifest; - let updatedOriginalManifest = project.originalManifest; - if (project.updatePackageManifest) { - const manifests = await updateProjectManifest_1.default(importers[index], { - directDependencies: resolvedImporter.directDependencies, - preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, - saveWorkspaceProtocol: opts.saveWorkspaceProtocol - }); - updatedManifest = manifests[0]; - updatedOriginalManifest = manifests[1]; - } else { - core_loggers_1.packageManifestLogger.debug({ - prefix: project.rootDir, - updated: project.manifest - }); + function hasMergeConflicts(str) { + return str.includes(MERGE_CONFLICT_START) && str.includes(MERGE_CONFLICT_SEP) && str.includes(MERGE_CONFLICT_END); } - if (updatedManifest != null) { - const projectSnapshot = opts.wantedLockfile.importers[project.id]; - opts.wantedLockfile.importers[project.id] = addDirectDependenciesToLockfile(updatedManifest, projectSnapshot, resolvedImporter.linkedDependencies, resolvedImporter.directDependencies, opts.registries); + function parse2(str, fileLoc) { + const parser = new Parser(str, fileLoc); + parser.next(); + return parser.parse(); } - const topParents = project.manifest ? await getTopParents(difference_1.default(Object.keys(manifest_utils_1.getAllDependenciesFromManifest(project.manifest)), resolvedImporter.directDependencies.filter((dep, index2) => project.wantedDependencies[index2].isNew === true).map(({ alias }) => alias) || []), project.modulesDir) : []; - project.manifest = (_a2 = updatedOriginalManifest !== null && updatedOriginalManifest !== void 0 ? updatedOriginalManifest : project.originalManifest) !== null && _a2 !== void 0 ? _a2 : project.manifest; - return { - binsDir: project.binsDir, - directNodeIdsByAlias: resolvedImporter.directNodeIdsByAlias, - id: project.id, - linkedDependencies: resolvedImporter.linkedDependencies, - manifest: project.manifest, - modulesDir: project.modulesDir, - rootDir: project.rootDir, - topParents - }; - })); - const { dependenciesGraph, dependenciesByProjectId } = resolvePeers_1.default({ - dependenciesTree, - lockfileDir: opts.lockfileDir, - projects: projectsToLink, - strictPeerDependencies: opts.strictPeerDependencies, - virtualStoreDir: opts.virtualStoreDir - }); - for (const { id } of projectsToLink) { - for (const [alias, depPath] of Object.entries(dependenciesByProjectId[id])) { - const depNode = dependenciesGraph[depPath]; - if (depNode.isPure) - continue; - const projectSnapshot = opts.wantedLockfile.importers[id]; - const ref = depPathToRef_1.default(depPath, { - alias, - realName: depNode.name, - registries: opts.registries, - resolution: depNode.resolution - }); - if ((_a = projectSnapshot.dependencies) === null || _a === void 0 ? void 0 : _a[alias]) { - projectSnapshot.dependencies[alias] = ref; - } else if ((_b = projectSnapshot.devDependencies) === null || _b === void 0 ? void 0 : _b[alias]) { - projectSnapshot.devDependencies[alias] = ref; - } else if ((_c = projectSnapshot.optionalDependencies) === null || _c === void 0 ? void 0 : _c[alias]) { - projectSnapshot.optionalDependencies[alias] = ref; + function parseWithConflict(str, fileLoc) { + const variants = extractConflictVariants(str); + try { + return { type: "merge", object: Object.assign({}, parse2(variants[0], fileLoc), parse2(variants[1], fileLoc)) }; + } catch (err) { + if (err instanceof SyntaxError) { + return { type: "conflict", object: {} }; + } else { + throw err; + } } } - } - const { newLockfile, pendingRequiresBuilds } = updateLockfile_1.default(dependenciesGraph, opts.wantedLockfile, opts.virtualStoreDir, opts.registries); - if (opts.forceFullResolution && opts.wantedLockfile != null) { - for (const [depPath, pkg] of Object.entries(dependenciesGraph)) { - if (((_d = opts.neverBuiltDependencies) === null || _d === void 0 ? void 0 : _d.has(pkg.name)) || ((_e = opts.wantedLockfile.packages) === null || _e === void 0 ? void 0 : _e[depPath]) == null || pkg.requiresBuild) - continue; - pendingRequiresBuilds.push(depPath); - } - } - const waitTillAllFetchingsFinish = async () => Promise.all(Object.values(resolvedPackagesByDepPath).map(async ({ finishing }) => finishing === null || finishing === void 0 ? void 0 : finishing())); - return { - dependenciesByProjectId, - dependenciesGraph, - finishLockfileUpdates: finishLockfileUpdates.bind(null, dependenciesGraph, pendingRequiresBuilds, newLockfile), - outdatedDependencies, - linkedDependenciesByProjectId, - newLockfile, - waitTillAllFetchingsFinish, - wantedToBeSkippedPackageIds - }; - } - exports2.default = default_1; - async function finishLockfileUpdates(dependenciesGraph, pendingRequiresBuilds, newLockfile) { - return Promise.all(pendingRequiresBuilds.map(async (depPath) => { - const depNode = dependenciesGraph[depPath]; - if (depNode.optional) { - depNode.requiresBuild = true; - } else if (depNode.fetchingBundledManifest != null) { - const filesResponse = await depNode.fetchingFiles(); - const pkgJson = await depNode.fetchingBundledManifest(); - depNode.requiresBuild = Boolean(pkgJson.scripts != null && (Boolean(pkgJson.scripts.preinstall) || Boolean(pkgJson.scripts.install) || Boolean(pkgJson.scripts.postinstall)) || filesResponse.filesIndex["binding.gyp"] || Object.keys(filesResponse.filesIndex).some((filename) => !(filename.match(/^[.]hooks[\\/]/) == null))); - } else { - throw new Error(`Cannot create ${constants_1.WANTED_LOCKFILE} because raw manifest (aka package.json) wasn't fetched for "${depPath}"`); + }, + , + , + /* 84 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + var _map; + function _load_map() { + return _map = _interopRequireDefault(__webpack_require__(20)); } - if (depNode.requiresBuild && newLockfile.packages[depPath]) { - newLockfile.packages[depPath].requiresBuild = true; + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; } - })); - } - function addDirectDependenciesToLockfile(newManifest, projectSnapshot, linkedPackages, directDependencies, registries) { - var _a, _b, _c; - const newProjectSnapshot = { - dependencies: {}, - devDependencies: {}, - optionalDependencies: {}, - specifiers: {} - }; - linkedPackages.forEach((linkedPkg) => { - newProjectSnapshot.specifiers[linkedPkg.alias] = manifest_utils_1.getSpecFromPackageManifest(newManifest, linkedPkg.alias); - }); - const directDependenciesByAlias = directDependencies.reduce((acc, directDependency) => { - acc[directDependency.alias] = directDependency; - return acc; - }, {}); - const allDeps = Array.from(new Set(Object.keys(manifest_utils_1.getAllDependenciesFromManifest(newManifest)))); - for (const alias of allDeps) { - if (directDependenciesByAlias[alias]) { - const dep = directDependenciesByAlias[alias]; - const ref = depPathToRef_1.default(dep.pkgId, { - alias: dep.alias, - realName: dep.name, - registries, - resolution: dep.resolution - }); - if (dep.dev) { - newProjectSnapshot.devDependencies[dep.alias] = ref; - } else if (dep.optional) { - newProjectSnapshot.optionalDependencies[dep.alias] = ref; - } else { - newProjectSnapshot.dependencies[dep.alias] = ref; + const debug = __webpack_require__(212)("yarn"); + class BlockingQueue { + constructor(alias, maxConcurrency = Infinity) { + this.concurrencyQueue = []; + this.maxConcurrency = maxConcurrency; + this.runningCount = 0; + this.warnedStuck = false; + this.alias = alias; + this.first = true; + this.running = (0, (_map || _load_map()).default)(); + this.queue = (0, (_map || _load_map()).default)(); + this.stuckTick = this.stuckTick.bind(this); } - newProjectSnapshot.specifiers[dep.alias] = manifest_utils_1.getSpecFromPackageManifest(newManifest, dep.alias); - } else if (projectSnapshot.specifiers[alias]) { - newProjectSnapshot.specifiers[alias] = projectSnapshot.specifiers[alias]; - if ((_a = projectSnapshot.dependencies) === null || _a === void 0 ? void 0 : _a[alias]) { - newProjectSnapshot.dependencies[alias] = projectSnapshot.dependencies[alias]; - } else if ((_b = projectSnapshot.optionalDependencies) === null || _b === void 0 ? void 0 : _b[alias]) { - newProjectSnapshot.optionalDependencies[alias] = projectSnapshot.optionalDependencies[alias]; - } else if ((_c = projectSnapshot.devDependencies) === null || _c === void 0 ? void 0 : _c[alias]) { - newProjectSnapshot.devDependencies[alias] = projectSnapshot.devDependencies[alias]; + stillActive() { + if (this.stuckTimer) { + clearTimeout(this.stuckTimer); + } + this.stuckTimer = setTimeout(this.stuckTick, 5e3); + this.stuckTimer.unref && this.stuckTimer.unref(); } - } - } - alignDependencyTypes(newManifest, newProjectSnapshot); - return newProjectSnapshot; - } - function alignDependencyTypes(manifest, projectSnapshot) { - var _a; - const depTypesOfAliases = getAliasToDependencyTypeMap(manifest); - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (projectSnapshot[depType] == null) - continue; - for (const alias of Object.keys((_a = projectSnapshot[depType]) !== null && _a !== void 0 ? _a : {})) { - if (depType === depTypesOfAliases[alias] || !depTypesOfAliases[alias]) - continue; - projectSnapshot[depTypesOfAliases[alias]][alias] = projectSnapshot[depType][alias]; - delete projectSnapshot[depType][alias]; - } - } - } - function getAliasToDependencyTypeMap(manifest) { - var _a; - const depTypesOfAliases = {}; - for (const depType of types_1.DEPENDENCIES_FIELDS) { - if (manifest[depType] == null) - continue; - for (const alias of Object.keys((_a = manifest[depType]) !== null && _a !== void 0 ? _a : {})) { - if (!depTypesOfAliases[alias]) { - depTypesOfAliases[alias] = depType; + stuckTick() { + if (this.runningCount === 1) { + this.warnedStuck = true; + debug(`The ${JSON.stringify(this.alias)} blocking queue may be stuck. 5 seconds without any activity with 1 worker: ${Object.keys(this.running)[0]}`); + } + } + push(key, factory) { + if (this.first) { + this.first = false; + } else { + this.stillActive(); + } + return new Promise((resolve, reject) => { + const queue = this.queue[key] = this.queue[key] || []; + queue.push({ factory, resolve, reject }); + if (!this.running[key]) { + this.shift(key); + } + }); + } + shift(key) { + if (this.running[key]) { + delete this.running[key]; + this.runningCount--; + if (this.stuckTimer) { + clearTimeout(this.stuckTimer); + this.stuckTimer = null; + } + if (this.warnedStuck) { + this.warnedStuck = false; + debug(`${JSON.stringify(this.alias)} blocking queue finally resolved. Nothing to worry about.`); + } + } + const queue = this.queue[key]; + if (!queue) { + return; + } + var _queue$shift = queue.shift(); + const resolve = _queue$shift.resolve, reject = _queue$shift.reject, factory = _queue$shift.factory; + if (!queue.length) { + delete this.queue[key]; + } + const next = () => { + this.shift(key); + this.shiftConcurrencyQueue(); + }; + const run = () => { + this.running[key] = true; + this.runningCount++; + factory().then(function(val) { + resolve(val); + next(); + return null; + }).catch(function(err) { + reject(err); + next(); + }); + }; + this.maybePushConcurrencyQueue(run); + } + maybePushConcurrencyQueue(run) { + if (this.runningCount < this.maxConcurrency) { + run(); + } else { + this.concurrencyQueue.push(run); + } + } + shiftConcurrencyQueue() { + if (this.runningCount < this.maxConcurrency) { + const fn2 = this.concurrencyQueue.shift(); + if (fn2) { + fn2(); + } + } } } - } - return depTypesOfAliases; - } - async function getTopParents(pkgNames, modules) { - const pkgs = await Promise.all(pkgNames.map((pkgName) => path_1.default.join(modules, pkgName)).map(read_package_json_1.safeReadPackageFromDir)); - return pkgs.filter(Boolean).map(({ name, version }) => ({ name, version })); - } - } -}); - -// ../../node_modules/.pnpm/resolve-link-target@2.0.0/node_modules/resolve-link-target/index.js -var require_resolve_link_target = __commonJS({ - "../../node_modules/.pnpm/resolve-link-target@2.0.0/node_modules/resolve-link-target/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var path = require("path"); - module2.exports = getLinkTarget; - module2.exports.sync = getLinkTargetSync; - async function getLinkTarget(linkPath) { - linkPath = path.resolve(linkPath); - const target = await fs.promises.readlink(linkPath); - return _resolveLink(linkPath, target); - } - function getLinkTargetSync(linkPath) { - linkPath = path.resolve(linkPath); - const target = fs.readlinkSync(linkPath); - return _resolveLink(linkPath, target); - } - function _resolveLink(dest, target) { - if (path.isAbsolute(target)) { - return path.resolve(target); - } - return path.join(path.dirname(dest), target); - } - } -}); - -// ../../node_modules/.pnpm/is-inner-link@4.0.0/node_modules/is-inner-link/index.js -var require_is_inner_link = __commonJS({ - "../../node_modules/.pnpm/is-inner-link@4.0.0/node_modules/is-inner-link/index.js"(exports2, module2) { - "use strict"; - var path = require("path"); - var isSubdir = require_is_subdir(); - var resolveLinkTarget = require_resolve_link_target(); - module2.exports = async function(parent, relativePathToLink) { - const linkPath = path.resolve(parent, relativePathToLink); - const target = await resolveLinkTarget(linkPath); - return { - isInner: isSubdir(parent, target), - target - }; - }; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/flatten.js -var require_flatten2 = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/flatten.js"(exports2, module2) { - var _curry1 = require_curry1(); - var _makeFlat = require_makeFlat(); - var flatten = /* @__PURE__ */ _curry1(/* @__PURE__ */ _makeFlat(true)); - module2.exports = flatten; - } -}); - -// ../parse-wanted-dependency/lib/index.js -var require_lib87 = __commonJS({ - "../parse-wanted-dependency/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var validate_npm_package_name_1 = __importDefault(require_validate_npm_package_name()); - function parseWantedDependency(rawWantedDependency) { - const versionDelimiter = rawWantedDependency.indexOf("@", 1); - if (versionDelimiter !== -1) { - const alias = rawWantedDependency.substr(0, versionDelimiter); - if (validate_npm_package_name_1.default(alias).validForOldPackages) { + exports3.default = BlockingQueue; + }, + /* 85 */ + /***/ + function(module3, exports3) { + module3.exports = function(exec) { + try { + return !!exec(); + } catch (e) { + return true; + } + }; + }, + , + , + , + , + , + , + , + , + , + , + , + , + , + , + /* 100 */ + /***/ + function(module3, exports3, __webpack_require__) { + var cof = __webpack_require__(47); + var TAG = __webpack_require__(13)("toStringTag"); + var ARG = cof(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (e) { + } + }; + module3.exports = function(it) { + var O, T, B; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG)) == "string" ? T : ARG ? cof(O) : (B = cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; + }; + }, + /* 101 */ + /***/ + function(module3, exports3) { + module3.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + }, + /* 102 */ + /***/ + function(module3, exports3, __webpack_require__) { + var document2 = __webpack_require__(11).document; + module3.exports = document2 && document2.documentElement; + }, + /* 103 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var LIBRARY = __webpack_require__(69); + var $export = __webpack_require__(41); + var redefine = __webpack_require__(197); + var hide = __webpack_require__(31); + var Iterators = __webpack_require__(35); + var $iterCreate = __webpack_require__(188); + var setToStringTag = __webpack_require__(71); + var getPrototypeOf = __webpack_require__(194); + var ITERATOR = __webpack_require__(13)("iterator"); + var BUGGY = !([].keys && "next" in [].keys()); + var FF_ITERATOR = "@@iterator"; + var KEYS = "keys"; + var VALUES = "values"; + var returnThis = function() { + return this; + }; + module3.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { + $iterCreate(Constructor, NAME, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto) + return proto[kind]; + switch (kind) { + case KEYS: + return function keys() { + return new Constructor(this, kind); + }; + case VALUES: + return function values() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG = NAME + " Iterator"; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto = Base.prototype; + var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; + var $anyNative = NAME == "Array" ? proto.entries || $native : $native; + var methods, key, IteratorPrototype; + if ($anyNative) { + IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); + if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { + setToStringTag(IteratorPrototype, TAG, true); + if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != "function") + hide(IteratorPrototype, ITERATOR, returnThis); + } + } + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { + return $native.call(this); + }; + } + if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { + hide(proto, ITERATOR, $default); + } + Iterators[NAME] = $default; + Iterators[TAG] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) + for (key in methods) { + if (!(key in proto)) + redefine(proto, key, methods[key]); + } + else + $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); + } + return methods; + }; + }, + /* 104 */ + /***/ + function(module3, exports3) { + module3.exports = function(exec) { + try { + return { e: false, v: exec() }; + } catch (e) { + return { e: true, v: e }; + } + }; + }, + /* 105 */ + /***/ + function(module3, exports3, __webpack_require__) { + var anObject = __webpack_require__(27); + var isObject = __webpack_require__(34); + var newPromiseCapability = __webpack_require__(70); + module3.exports = function(C, x) { + anObject(C); + if (isObject(x) && x.constructor === C) + return x; + var promiseCapability = newPromiseCapability.f(C); + var resolve = promiseCapability.resolve; + resolve(x); + return promiseCapability.promise; + }; + }, + /* 106 */ + /***/ + function(module3, exports3) { + module3.exports = function(bitmap, value) { return { - alias, - pref: rawWantedDependency.substr(versionDelimiter + 1) + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + }, + /* 107 */ + /***/ + function(module3, exports3, __webpack_require__) { + var core = __webpack_require__(23); + var global2 = __webpack_require__(11); + var SHARED = "__core-js_shared__"; + var store = global2[SHARED] || (global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: core.version, + mode: __webpack_require__(69) ? "pure" : "global", + copyright: "\xA9 2018 Denis Pushkarev (zloirock.ru)" + }); + }, + /* 108 */ + /***/ + function(module3, exports3, __webpack_require__) { + var anObject = __webpack_require__(27); + var aFunction = __webpack_require__(46); + var SPECIES = __webpack_require__(13)("species"); + module3.exports = function(O, D) { + var C = anObject(O).constructor; + var S; + return C === void 0 || (S = anObject(C)[SPECIES]) == void 0 ? D : aFunction(S); + }; + }, + /* 109 */ + /***/ + function(module3, exports3, __webpack_require__) { + var ctx = __webpack_require__(48); + var invoke = __webpack_require__(185); + var html = __webpack_require__(102); + var cel = __webpack_require__(68); + var global2 = __webpack_require__(11); + var process2 = global2.process; + var setTask = global2.setImmediate; + var clearTask = global2.clearImmediate; + var MessageChannel = global2.MessageChannel; + var Dispatch = global2.Dispatch; + var counter = 0; + var queue = {}; + var ONREADYSTATECHANGE = "onreadystatechange"; + var defer, channel, port; + var run = function() { + var id = +this; + if (queue.hasOwnProperty(id)) { + var fn2 = queue[id]; + delete queue[id]; + fn2(); + } + }; + var listener = function(event) { + run.call(event.data); + }; + if (!setTask || !clearTask) { + setTask = function setImmediate2(fn2) { + var args2 = []; + var i = 1; + while (arguments.length > i) + args2.push(arguments[i++]); + queue[++counter] = function() { + invoke(typeof fn2 == "function" ? fn2 : Function(fn2), args2); + }; + defer(counter); + return counter; + }; + clearTask = function clearImmediate2(id) { + delete queue[id]; }; + if (__webpack_require__(47)(process2) == "process") { + defer = function(id) { + process2.nextTick(ctx(run, id, 1)); + }; + } else if (Dispatch && Dispatch.now) { + defer = function(id) { + Dispatch.now(ctx(run, id, 1)); + }; + } else if (MessageChannel) { + channel = new MessageChannel(); + port = channel.port2; + channel.port1.onmessage = listener; + defer = ctx(port.postMessage, port, 1); + } else if (global2.addEventListener && typeof postMessage == "function" && !global2.importScripts) { + defer = function(id) { + global2.postMessage(id + "", "*"); + }; + global2.addEventListener("message", listener, false); + } else if (ONREADYSTATECHANGE in cel("script")) { + defer = function(id) { + html.appendChild(cel("script"))[ONREADYSTATECHANGE] = function() { + html.removeChild(this); + run.call(id); + }; + }; + } else { + defer = function(id) { + setTimeout(ctx(run, id, 1), 0); + }; + } } - return { - pref: rawWantedDependency + module3.exports = { + set: setTask, + clear: clearTask }; - } - if (validate_npm_package_name_1.default(rawWantedDependency).validForOldPackages) { - return { - alias: rawWantedDependency + }, + /* 110 */ + /***/ + function(module3, exports3, __webpack_require__) { + var toInteger = __webpack_require__(73); + var min = Math.min; + module3.exports = function(it) { + return it > 0 ? min(toInteger(it), 9007199254740991) : 0; }; - } - return { - pref: rawWantedDependency - }; - } - exports2.default = parseWantedDependency; - } -}); - -// ../../node_modules/.pnpm/semver-utils@1.1.4/node_modules/semver-utils/semver-utils.js -var require_semver_utils = __commonJS({ - "../../node_modules/.pnpm/semver-utils@1.1.4/node_modules/semver-utils/semver-utils.js"(exports2, module2) { - (function() { - "use strict"; - var reSemver = /^v?((\d+)\.(\d+)\.(\d+))(?:-([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?(?:\+([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?$/, reSemverRange = /\s*((\|\||\-)|(((?:(?:~?[<>]?)|\^?)=?)\s*(v)?([0-9]+)(\.(x|\*|[0-9]+))?(\.(x|\*|[0-9]+))?(([\-+])([a-zA-Z0-9\.-]+))?))\s*/g; - function pruned(obj) { - var o = {}; - for (var key in obj) { - if (typeof obj[key] !== "undefined") { - o[key] = obj[key]; + }, + /* 111 */ + /***/ + function(module3, exports3) { + var id = 0; + var px = Math.random(); + module3.exports = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + }, + /* 112 */ + /***/ + function(module3, exports3, __webpack_require__) { + exports3 = module3.exports = createDebug.debug = createDebug["default"] = createDebug; + exports3.coerce = coerce; + exports3.disable = disable; + exports3.enable = enable; + exports3.enabled = enabled; + exports3.humanize = __webpack_require__(229); + exports3.instances = []; + exports3.names = []; + exports3.skips = []; + exports3.formatters = {}; + function selectColor(namespace) { + var hash = 0, i; + for (i in namespace) { + hash = (hash << 5) - hash + namespace.charCodeAt(i); + hash |= 0; } + return exports3.colors[Math.abs(hash) % exports3.colors.length]; } - return o; - } - function stringifySemver(obj) { - var str = ""; - str += obj.major || "0"; - str += "."; - str += obj.minor || "0"; - str += "."; - str += obj.patch || "0"; - if (obj.release) { - str += "-" + obj.release; - } - if (obj.build) { - str += "+" + obj.build; - } - return str; - } - function stringifySemverRange(arr) { - var str = ""; - function stringify(ver) { - if (ver.operator) { - str += ver.operator + " "; + function createDebug(namespace) { + var prevTime; + function debug() { + if (!debug.enabled) + return; + var self2 = debug; + var curr = +/* @__PURE__ */ new Date(); + var ms = curr - (prevTime || curr); + self2.diff = ms; + self2.prev = prevTime; + self2.curr = curr; + prevTime = curr; + var args2 = new Array(arguments.length); + for (var i = 0; i < args2.length; i++) { + args2[i] = arguments[i]; + } + args2[0] = exports3.coerce(args2[0]); + if ("string" !== typeof args2[0]) { + args2.unshift("%O"); + } + var index = 0; + args2[0] = args2[0].replace(/%([a-zA-Z%])/g, function(match, format) { + if (match === "%%") + return match; + index++; + var formatter = exports3.formatters[format]; + if ("function" === typeof formatter) { + var val = args2[index]; + match = formatter.call(self2, val); + args2.splice(index, 1); + index--; + } + return match; + }); + exports3.formatArgs.call(self2, args2); + var logFn = debug.log || exports3.log || console.log.bind(console); + logFn.apply(self2, args2); } - if (ver.major) { - str += ver.toString() + " "; + debug.namespace = namespace; + debug.enabled = exports3.enabled(namespace); + debug.useColors = exports3.useColors(); + debug.color = selectColor(namespace); + debug.destroy = destroy; + if ("function" === typeof exports3.init) { + exports3.init(debug); } + exports3.instances.push(debug); + return debug; } - arr.forEach(stringify); - return str.trim(); - } - function SemVer(obj) { - if (!obj) { - return; - } - var me = this; - Object.keys(obj).forEach(function(key) { - me[key] = obj[key]; - }); - } - SemVer.prototype.toString = function() { - return stringifySemver(this); - }; - function parseSemver(version) { - var m = reSemver.exec(version) || [], ver = new SemVer(pruned({ - semver: m[0], - version: m[1], - major: m[2], - minor: m[3], - patch: m[4], - release: m[5], - build: m[6] - })); - if (m.length === 0) { - ver = null; + function destroy() { + var index = exports3.instances.indexOf(this); + if (index !== -1) { + exports3.instances.splice(index, 1); + return true; + } else { + return false; + } } - return ver; - } - function parseSemverRange(str) { - var m, arr = [], obj; - while (m = reSemverRange.exec(str)) { - obj = { - semver: m[3], - operator: m[4] || m[2], - major: m[6], - minor: m[8], - patch: m[10] - }; - if (m[12] === "+") { - obj.build = m[13]; + function enable(namespaces) { + exports3.save(namespaces); + exports3.names = []; + exports3.skips = []; + var i; + var split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); + var len = split.length; + for (i = 0; i < len; i++) { + if (!split[i]) + continue; + namespaces = split[i].replace(/\*/g, ".*?"); + if (namespaces[0] === "-") { + exports3.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + } else { + exports3.names.push(new RegExp("^" + namespaces + "$")); + } } - if (m[12] === "-") { - obj.release = m[13]; + for (i = 0; i < exports3.instances.length; i++) { + var instance = exports3.instances[i]; + instance.enabled = exports3.enabled(instance.namespace); } - arr.push(new SemVer(pruned(obj))); } - return arr; - } - module2.exports.parse = parseSemver; - module2.exports.stringify = stringifySemver; - module2.exports.parseRange = parseSemverRange; - module2.exports.stringifyRange = stringifySemverRange; - })(); - } -}); - -// ../supi/lib/guessPinnedVersionFromExistingSpec.js -var require_guessPinnedVersionFromExistingSpec = __commonJS({ - "../supi/lib/guessPinnedVersionFromExistingSpec.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var semver_utils_1 = require_semver_utils(); - function guessPinnedVersionFromExistingSpec(spec) { - if (spec.startsWith("workspace:")) - spec = spec.substr("workspace:".length); - if (spec === "*") - return "none"; - const parsedRange = semver_utils_1.parseRange(spec); - if (parsedRange.length !== 1) - return void 0; - const versionObject = parsedRange[0]; - switch (versionObject.operator) { - case "~": - return "minor"; - case "^": - return "major"; - case void 0: - if (versionObject.patch) - return "patch"; - if (versionObject.minor) - return "minor"; - } - return void 0; - } - exports2.default = guessPinnedVersionFromExistingSpec; - } -}); - -// ../supi/lib/parseWantedDependencies.js -var require_parseWantedDependencies = __commonJS({ - "../supi/lib/parseWantedDependencies.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var parse_wanted_dependency_1 = __importDefault(require_lib87()); - var guessPinnedVersionFromExistingSpec_1 = __importDefault(require_guessPinnedVersionFromExistingSpec()); - function parseWantedDependencies(rawWantedDependencies, opts) { - return rawWantedDependencies.map((rawWantedDependency) => { - var _a; - const parsed = parse_wanted_dependency_1.default(rawWantedDependency); - const alias = parsed["alias"]; - let pref = parsed["pref"]; - let pinnedVersion; - if (!opts.allowNew && (!alias || !opts.currentPrefs[alias])) { - return null; + function disable() { + exports3.enable(""); } - if (alias && opts.currentPrefs[alias]) { - if (!pref) { - pref = opts.currentPrefs[alias].startsWith("workspace:") && opts.updateWorkspaceDependencies === true ? "workspace:*" : opts.currentPrefs[alias]; + function enabled(name) { + if (name[name.length - 1] === "*") { + return true; + } + var i, len; + for (i = 0, len = exports3.skips.length; i < len; i++) { + if (exports3.skips[i].test(name)) { + return false; + } + } + for (i = 0, len = exports3.names.length; i < len; i++) { + if (exports3.names[i].test(name)) { + return true; + } } - pinnedVersion = guessPinnedVersionFromExistingSpec_1.default(opts.currentPrefs[alias]); - } - const result = { - alias, - dev: Boolean(opts.dev || alias && !!opts.devDependencies[alias]), - optional: Boolean(opts.optional || alias && !!opts.optionalDependencies[alias]), - pinnedVersion, - raw: rawWantedDependency - }; - if (pref) { - return { - ...result, - pref - }; - } - if (alias && ((_a = opts.preferredSpecs) === null || _a === void 0 ? void 0 : _a[alias])) { - return { - ...result, - pref: opts.preferredSpecs[alias], - raw: `${rawWantedDependency}@${opts.preferredSpecs[alias]}` - }; - } - return { - ...result, - pref: opts.defaultTag - }; - }).filter((wd) => wd !== null); - } - exports2.default = parseWantedDependencies; - } -}); - -// ../supi/lib/safeIsInnerLink.js -var require_safeIsInnerLink = __commonJS({ - "../supi/lib/safeIsInnerLink.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var logger_1 = __importDefault(require_lib6()); - var is_inner_link_1 = __importDefault(require_is_inner_link()); - var is_subdir_1 = __importDefault(require_is_subdir()); - async function safeIsInnerLink(projectModulesDir, depName, opts) { - try { - const link = await is_inner_link_1.default(projectModulesDir, depName); - if (link.isInner) - return true; - if (is_subdir_1.default(opts.virtualStoreDir, link.target) || is_subdir_1.default(opts.storeDir, link.target)) - return true; - return link.target; - } catch (err) { - if (err.code === "ENOENT") - return true; - if (opts.hideAlienModules) { - logger_1.default.warn({ - message: `Moving ${depName} that was installed by a different package manager to "node_modules/.ignored`, - prefix: opts.projectDir - }); - const ignoredDir = path_1.default.join(projectModulesDir, ".ignored", depName); - await fs_1.promises.mkdir(path_1.default.dirname(ignoredDir), { recursive: true }); - await fs_1.promises.rename(path_1.default.join(projectModulesDir, depName), ignoredDir); - } - return true; - } - } - exports2.default = safeIsInnerLink; - } -}); - -// ../supi/lib/uninstall/removeDeps.js -var require_removeDeps = __commonJS({ - "../supi/lib/uninstall/removeDeps.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var core_loggers_1 = require_lib12(); - var types_1 = require_lib14(); - async function default_1(packageManifest, removedPackages, opts) { - if (opts.saveType) { - if (packageManifest[opts.saveType] == null) - return packageManifest; - removedPackages.forEach((dependency) => { - delete packageManifest[opts.saveType][dependency]; - }); - } else { - types_1.DEPENDENCIES_FIELDS.filter((depField) => packageManifest[depField]).forEach((depField) => { - removedPackages.forEach((dependency) => { - delete packageManifest[depField][dependency]; - }); - }); - } - if (packageManifest.peerDependencies != null) { - for (const removedDependency of removedPackages) { - delete packageManifest.peerDependencies[removedDependency]; - } - } - if (packageManifest.dependenciesMeta != null) { - for (const removedDependency of removedPackages) { - delete packageManifest.dependenciesMeta[removedDependency]; - } - } - core_loggers_1.packageManifestLogger.debug({ - prefix: opts.prefix, - updated: packageManifest - }); - return packageManifest; - } - exports2.default = default_1; - } -}); - -// ../../node_modules/.pnpm/p-every@2.0.0/node_modules/p-every/index.js -var require_p_every = __commonJS({ - "../../node_modules/.pnpm/p-every@2.0.0/node_modules/p-every/index.js"(exports2, module2) { - "use strict"; - var pMap = require_p_map(); - var EndError = class extends Error { - }; - var test = (testFunction) => async (element, index) => { - const result = await testFunction(element, index); - if (!result) { - throw new EndError(); - } - return result; - }; - var pEvery = async (iterable, testFunction, opts) => { - try { - await pMap(iterable, test(testFunction), opts); - return true; - } catch (error) { - if (error instanceof EndError) { return false; } - throw error; - } - }; - module2.exports = pEvery; - module2.exports.default = pEvery; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_reduced.js -var require_reduced = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_reduced.js"(exports2, module2) { - function _reduced(x) { - return x && x["@@transducer/reduced"] ? x : { - "@@transducer/value": x, - "@@transducer/reduced": true - }; - } - module2.exports = _reduced; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xany.js -var require_xany = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/internal/_xany.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _reduced = require_reduced(); - var _xfBase = require_xfBase(); - var XAny = /* @__PURE__ */ function() { - function XAny2(f, xf) { - this.xf = xf; - this.f = f; - this.any = false; - } - XAny2.prototype["@@transducer/init"] = _xfBase.init; - XAny2.prototype["@@transducer/result"] = function(result) { - if (!this.any) { - result = this.xf["@@transducer/step"](result, false); + function coerce(val) { + if (val instanceof Error) + return val.stack || val.message; + return val; } - return this.xf["@@transducer/result"](result); - }; - XAny2.prototype["@@transducer/step"] = function(result, input) { - if (this.f(input)) { - this.any = true; - result = _reduced(this.xf["@@transducer/step"](result, true)); + }, + , + /* 114 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = realpath; + realpath.realpath = realpath; + realpath.sync = realpathSync; + realpath.realpathSync = realpathSync; + realpath.monkeypatch = monkeypatch; + realpath.unmonkeypatch = unmonkeypatch; + var fs2 = __webpack_require__(3); + var origRealpath = fs2.realpath; + var origRealpathSync = fs2.realpathSync; + var version2 = process.version; + var ok = /^v[0-5]\./.test(version2); + var old = __webpack_require__(217); + function newError(er) { + return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); } - return result; - }; - return XAny2; - }(); - var _xany = /* @__PURE__ */ _curry2(function _xany2(f, xf) { - return new XAny(f, xf); - }); - module2.exports = _xany; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/any.js -var require_any = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/any.js"(exports2, module2) { - var _curry2 = require_curry2(); - var _dispatchable = require_dispatchable(); - var _xany = require_xany(); - var any = /* @__PURE__ */ _curry2(/* @__PURE__ */ _dispatchable(["any"], _xany, function any2(fn2, list) { - var idx = 0; - while (idx < list.length) { - if (fn2(list[idx])) { - return true; + function realpath(p, cache, cb) { + if (ok) { + return origRealpath(p, cache, cb); + } + if (typeof cache === "function") { + cb = cache; + cache = null; + } + origRealpath(p, cache, function(er, result2) { + if (newError(er)) { + old.realpath(p, cache, cb); + } else { + cb(er, result2); + } + }); } - idx += 1; - } - return false; - })); - module2.exports = any; - } -}); - -// ../supi/lib/install/allProjectsAreUpToDate.js -var require_allProjectsAreUpToDate = __commonJS({ - "../supi/lib/install/allProjectsAreUpToDate.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var lockfile_utils_1 = require_lib53(); - var read_package_json_1 = require_lib32(); - var types_1 = require_lib14(); - var p_every_1 = __importDefault(require_p_every()); - var any_1 = __importDefault(require_any()); - var semver_1 = __importDefault(require_semver2()); - async function allProjectsAreUpToDate(projects, opts) { - const manifestsByDir = opts.workspacePackages ? getWorkspacePackagesByDirectory(opts.workspacePackages) : {}; - const _satisfiesPackageManifest = lockfile_utils_1.satisfiesPackageManifest.bind(null, opts.wantedLockfile); - const _linkedPackagesAreUpToDate = linkedPackagesAreUpToDate.bind(null, { - linkWorkspacePackages: opts.linkWorkspacePackages, - manifestsByDir, - workspacePackages: opts.workspacePackages - }); - return p_every_1.default(projects, (project) => { - const importer = opts.wantedLockfile.importers[project.id]; - return !hasLocalTarballDepsInRoot(importer) && _satisfiesPackageManifest(project.manifest, project.id) && _linkedPackagesAreUpToDate({ - dir: project.rootDir, - manifest: project.manifest, - snapshot: importer - }); - }); - } - exports2.default = allProjectsAreUpToDate; - function getWorkspacePackagesByDirectory(workspacePackages) { - const workspacePackagesByDirectory = {}; - Object.keys(workspacePackages || {}).forEach((pkgName) => { - Object.keys(workspacePackages[pkgName] || {}).forEach((pkgVersion) => { - workspacePackagesByDirectory[workspacePackages[pkgName][pkgVersion].dir] = workspacePackages[pkgName][pkgVersion].manifest; - }); - }); - return workspacePackagesByDirectory; - } - async function linkedPackagesAreUpToDate({ linkWorkspacePackages, manifestsByDir, workspacePackages }, project) { - var _a, _b, _c; - for (const depField of types_1.DEPENDENCIES_FIELDS) { - const lockfileDeps = project.snapshot[depField]; - const manifestDeps = project.manifest[depField]; - if (lockfileDeps == null || manifestDeps == null) - continue; - const depNames = Object.keys(lockfileDeps); - for (const depName of depNames) { - const currentSpec = manifestDeps[depName]; - if (!currentSpec) - continue; - const lockfileRef = lockfileDeps[depName]; - const isLinked = lockfileRef.startsWith("link:"); - if (isLinked && (currentSpec.startsWith("link:") || currentSpec.startsWith("file:") || currentSpec.startsWith("workspace:."))) { - continue; + function realpathSync(p, cache) { + if (ok) { + return origRealpathSync(p, cache); } - const linkedDir = isLinked ? path_1.default.join(project.dir, lockfileRef.substr(5)) : (_b = (_a = workspacePackages === null || workspacePackages === void 0 ? void 0 : workspacePackages[depName]) === null || _a === void 0 ? void 0 : _a[lockfileRef]) === null || _b === void 0 ? void 0 : _b.dir; - if (!linkedDir) - continue; - if (!linkWorkspacePackages && !currentSpec.startsWith("workspace:")) { - continue; + try { + return origRealpathSync(p, cache); + } catch (er) { + if (newError(er)) { + return old.realpathSync(p, cache); + } else { + throw er; + } } - const linkedPkg = (_c = manifestsByDir[linkedDir]) !== null && _c !== void 0 ? _c : await read_package_json_1.safeReadPackageFromDir(linkedDir); - const availableRange = getVersionRange(currentSpec); - const localPackageSatisfiesRange = availableRange === "*" || linkedPkg && semver_1.default.satisfies(linkedPkg.version, availableRange, { loose: true }); - if (isLinked !== localPackageSatisfiesRange) - return false; } - } - return true; - } - function getVersionRange(spec) { - if (spec.startsWith("workspace:")) - return spec.substr(10); - if (spec.startsWith("npm:")) { - spec = spec.substr(4); - const index = spec.indexOf("@", 1); - if (index === -1) - return "*"; - return spec.substr(index + 1) || "*"; - } - return spec; - } - function hasLocalTarballDepsInRoot(importer) { - var _a, _b, _c; - return any_1.default(refIsLocalTarball, Object.values((_a = importer.dependencies) !== null && _a !== void 0 ? _a : {})) || any_1.default(refIsLocalTarball, Object.values((_b = importer.devDependencies) !== null && _b !== void 0 ? _b : {})) || any_1.default(refIsLocalTarball, Object.values((_c = importer.optionalDependencies) !== null && _c !== void 0 ? _c : {})); - } - function refIsLocalTarball(ref) { - return ref.startsWith("file:") && (ref.endsWith(".tgz") || ref.endsWith(".tar.gz") || ref.endsWith(".tar")); - } - } -}); - -// ../supi/lib/install/createPackageExtender.js -var require_createPackageExtender = __commonJS({ - "../supi/lib/install/createPackageExtender.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var parse_wanted_dependency_1 = __importDefault(require_lib87()); - var semver_1 = __importDefault(require_semver2()); - function default_1(packageExtensions) { - const extensionsByPkgName = {}; - Object.entries(packageExtensions).forEach(([selector, packageExtension]) => { - const { alias, pref } = parse_wanted_dependency_1.default(selector); - if (!extensionsByPkgName[alias]) { - extensionsByPkgName[alias] = []; + function monkeypatch() { + fs2.realpath = realpath; + fs2.realpathSync = realpathSync; } - extensionsByPkgName[alias].push({ packageExtension, range: pref }); - }); - return extendPkgHook.bind(null, extensionsByPkgName); - } - exports2.default = default_1; - function extendPkgHook(extensionsByPkgName, manifest) { - const extensions = extensionsByPkgName[manifest.name]; - if (extensions == null) - return manifest; - extendPkg(manifest, extensions); - return manifest; - } - function extendPkg(manifest, extensions) { - for (const { range, packageExtension } of extensions) { - if (range != null && !semver_1.default.satisfies(manifest.version, range)) - continue; - for (const field of ["dependencies", "optionalDependencies", "peerDependencies", "peerDependenciesMeta"]) { - if (!packageExtension[field]) - continue; - manifest[field] = { - ...packageExtension[field], - ...manifest[field] - }; + function unmonkeypatch() { + fs2.realpath = origRealpath; + fs2.realpathSync = origRealpathSync; } - } - } - } -}); - -// ../supi/lib/install/createVersionsOverrider.js -var require_createVersionsOverrider = __commonJS({ - "../supi/lib/install/createVersionsOverrider.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var parse_wanted_dependency_1 = __importDefault(require_lib87()); - var normalize_path_1 = __importDefault(require_normalize_path()); - var semver_1 = __importDefault(require_semver2()); - var DELIMITER_REGEX = /[^ |@]>/; - function default_1(overrides, rootDir) { - const genericVersionOverrides = []; - const versionOverrides = []; - Object.entries(overrides).forEach(([selector, newPref]) => { - let linkTarget; - if (newPref.startsWith("link:")) { - linkTarget = path_1.default.join(rootDir, newPref.substring(5)); + }, + /* 115 */ + /***/ + function(module3, exports3, __webpack_require__) { + exports3.alphasort = alphasort; + exports3.alphasorti = alphasorti; + exports3.setopts = setopts; + exports3.ownProp = ownProp; + exports3.makeAbs = makeAbs; + exports3.finish = finish; + exports3.mark = mark; + exports3.isIgnored = isIgnored; + exports3.childrenIgnored = childrenIgnored; + function ownProp(obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field); } - let delimiterIndex = selector.search(DELIMITER_REGEX); - if (delimiterIndex !== -1) { - delimiterIndex++; - const parentSelector = selector.substring(0, delimiterIndex); - const childSelector = selector.substring(delimiterIndex + 1); - versionOverrides.push({ - linkTarget, - newPref, - parentWantedDependency: parse_wanted_dependency_1.default(parentSelector), - wantedDependency: parse_wanted_dependency_1.default(childSelector) - }); - return; + var path2 = __webpack_require__(0); + var minimatch = __webpack_require__(60); + var isAbsolute = __webpack_require__(76); + var Minimatch = minimatch.Minimatch; + function alphasorti(a, b) { + return a.toLowerCase().localeCompare(b.toLowerCase()); } - genericVersionOverrides.push({ - linkTarget, - newPref, - wantedDependency: parse_wanted_dependency_1.default(selector) - }); - }); - return (manifest, dir) => { - overrideDepsOfPkg({ manifest, dir }, versionOverrides.filter(({ parentWantedDependency }) => { - return parentWantedDependency.alias === manifest.name && (!parentWantedDependency.pref || semver_1.default.satisfies(manifest.version, parentWantedDependency.pref)); - })); - overrideDepsOfPkg({ manifest, dir }, genericVersionOverrides); - return manifest; - }; - } - exports2.default = default_1; - function overrideDepsOfPkg({ manifest, dir }, versionOverrides) { - if (manifest.dependencies != null) - overrideDeps(versionOverrides, manifest.dependencies, dir); - if (manifest.optionalDependencies != null) - overrideDeps(versionOverrides, manifest.optionalDependencies, dir); - if (manifest.devDependencies != null) - overrideDeps(versionOverrides, manifest.devDependencies, dir); - return manifest; - } - function overrideDeps(versionOverrides, deps, dir) { - for (const versionOverride of versionOverrides) { - const actual = deps[versionOverride.wantedDependency.alias]; - if (actual == null) - continue; - if (!isSubRange(versionOverride.wantedDependency.pref, actual)) - continue; - if (versionOverride.linkTarget && dir) { - deps[versionOverride.wantedDependency.alias] = `link:${normalize_path_1.default(path_1.default.relative(dir, versionOverride.linkTarget))}`; - continue; + function alphasort(a, b) { + return a.localeCompare(b); } - deps[versionOverride.wantedDependency.alias] = versionOverride.newPref; - } - } - function isSubRange(superRange, subRange) { - return !superRange || subRange === superRange || semver_1.default.validRange(subRange) != null && semver_1.default.validRange(superRange) != null && semver_1.default.subset(subRange, superRange); - } - } -}); - -// ../supi/lib/pnpmPkgJson.js -var require_pnpmPkgJson = __commonJS({ - "../supi/lib/pnpmPkgJson.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var load_json_file_1 = require_load_json_file(); - var pkgJson; - try { - pkgJson = load_json_file_1.sync(path_1.default.resolve(__dirname, "../package.json")); - } catch (err) { - pkgJson = { - name: "pnpm", - version: "0.0.0" - }; - } - exports2.default = pkgJson; - } -}); - -// ../supi/lib/install/extendInstallOptions.js -var require_extendInstallOptions = __commonJS({ - "../supi/lib/install/extendInstallOptions.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var normalize_registries_1 = __importStar2(require_lib65()); - var pnpmPkgJson_1 = __importDefault(require_pnpmPkgJson()); - var defaults = async (opts) => { - var _a, _b, _c; - const packageManager = (_a = opts.packageManager) !== null && _a !== void 0 ? _a : { - name: pnpmPkgJson_1.default.name, - version: pnpmPkgJson_1.default.version - }; - return { - childConcurrency: 5, - depth: 0, - enablePnp: false, - engineStrict: false, - extendNodePath: true, - force: false, - forceSharedLockfile: false, - frozenLockfile: false, - hoistPattern: void 0, - hooks: {}, - ignoreCurrentPrefs: false, - ignoreScripts: false, - include: { - dependencies: true, - devDependencies: true, - optionalDependencies: true - }, - includeDirect: { - dependencies: true, - devDependencies: true, - optionalDependencies: true - }, - lockfileDir: (_c = (_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : opts.dir) !== null && _c !== void 0 ? _c : process.cwd(), - lockfileOnly: false, - nodeVersion: process.version, - ownLifecycleHooksStdio: "inherit", - ignorePackageManifest: false, - packageManager, - preferFrozenLockfile: true, - preferWorkspacePackages: false, - preserveWorkspaceProtocol: true, - pruneLockfileImporters: false, - pruneStore: false, - rawConfig: {}, - registries: normalize_registries_1.DEFAULT_REGISTRIES, - saveWorkspaceProtocol: true, - shamefullyHoist: false, - shellEmulator: false, - sideEffectsCacheRead: false, - sideEffectsCacheWrite: false, - symlink: true, - storeController: opts.storeController, - storeDir: opts.storeDir, - strictPeerDependencies: false, - tag: "latest", - unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid() !== 0, - update: false, - useLockfile: true, - userAgent: `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}`, - verifyStoreIntegrity: true, - workspacePackages: {}, - enableModulesDir: true, - modulesCacheMaxAge: 7 * 24 * 60 - }; - }; - exports2.default = async (opts) => { - if (opts) { - for (const key in opts) { - if (opts[key] === void 0) { - delete opts[key]; + function setupIgnores(self2, options) { + self2.ignore = options.ignore || []; + if (!Array.isArray(self2.ignore)) + self2.ignore = [self2.ignore]; + if (self2.ignore.length) { + self2.ignore = self2.ignore.map(ignoreMap); } } - } - const defaultOpts = await defaults(opts); - const extendedOpts = { - ...defaultOpts, - ...opts, - storeDir: defaultOpts.storeDir - }; - if (extendedOpts.lockfileOnly) { - extendedOpts.ignoreScripts = true; - if (!extendedOpts.useLockfile) { - throw new error_1.default("CONFIG_CONFLICT_LOCKFILE_ONLY_WITH_NO_LOCKFILE", `Cannot generate a ${constants_1.WANTED_LOCKFILE} because lockfile is set to false`); - } - } - if (extendedOpts.userAgent.startsWith("npm/")) { - extendedOpts.userAgent = `${extendedOpts.packageManager.name}/${extendedOpts.packageManager.version} ${extendedOpts.userAgent}`; - } - extendedOpts.registries = normalize_registries_1.default(extendedOpts.registries); - extendedOpts.rawConfig["registry"] = extendedOpts.registries.default; - return extendedOpts; - }; - } -}); - -// ../supi/lib/install/getPreferredVersions.js -var require_getPreferredVersions = __commonJS({ - "../supi/lib/install/getPreferredVersions.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getPreferredVersionsFromLockfile = exports2.getAllUniqueSpecs = void 0; - var lockfile_utils_1 = require_lib53(); - var manifest_utils_1 = require_lib15(); - var version_selector_type_1 = __importDefault(require_version_selector_type()); - function getAllUniqueSpecs(manifests) { - const allSpecs = {}; - const ignored = new Set(); - for (const manifest of manifests) { - const specs = manifest_utils_1.getAllDependenciesFromManifest(manifest); - for (const [name, spec] of Object.entries(specs)) { - if (ignored.has(name)) - continue; - if (allSpecs[name] != null && allSpecs[name] !== spec || spec.includes(":")) { - ignored.add(name); - delete allSpecs[name]; - continue; + function ignoreMap(pattern) { + var gmatcher = null; + if (pattern.slice(-3) === "/**") { + var gpattern = pattern.replace(/(\/\*\*)+$/, ""); + gmatcher = new Minimatch(gpattern, { dot: true }); } - allSpecs[name] = spec; + return { + matcher: new Minimatch(pattern, { dot: true }), + gmatcher + }; } - } - return allSpecs; - } - exports2.getAllUniqueSpecs = getAllUniqueSpecs; - function getPreferredVersionsFromPackage(pkg) { - return getVersionSpecsByRealNames(manifest_utils_1.getAllDependenciesFromManifest(pkg)); - } - exports2.default = getPreferredVersionsFromPackage; - function getVersionSpecsByRealNames(deps) { - return Object.keys(deps).reduce((acc, depName) => { - if (deps[depName].startsWith("npm:")) { - const pref = deps[depName].substr(4); - const index = pref.lastIndexOf("@"); - const spec = pref.substr(index + 1); - const selector = version_selector_type_1.default(spec); - if (selector != null) { - const pkgName = pref.substr(0, index); - acc[pkgName] = acc[pkgName] || {}; - acc[pkgName][selector.normalized] = selector.type; + function setopts(self2, pattern, options) { + if (!options) + options = {}; + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar"); + } + pattern = "**/" + pattern; } - } else if (!deps[depName].includes(":")) { - const selector = version_selector_type_1.default(deps[depName]); - if (selector != null) { - acc[depName] = acc[depName] || {}; - acc[depName][selector.normalized] = selector.type; + self2.silent = !!options.silent; + self2.pattern = pattern; + self2.strict = options.strict !== false; + self2.realpath = !!options.realpath; + self2.realpathCache = options.realpathCache || /* @__PURE__ */ Object.create(null); + self2.follow = !!options.follow; + self2.dot = !!options.dot; + self2.mark = !!options.mark; + self2.nodir = !!options.nodir; + if (self2.nodir) + self2.mark = true; + self2.sync = !!options.sync; + self2.nounique = !!options.nounique; + self2.nonull = !!options.nonull; + self2.nosort = !!options.nosort; + self2.nocase = !!options.nocase; + self2.stat = !!options.stat; + self2.noprocess = !!options.noprocess; + self2.absolute = !!options.absolute; + self2.maxLength = options.maxLength || Infinity; + self2.cache = options.cache || /* @__PURE__ */ Object.create(null); + self2.statCache = options.statCache || /* @__PURE__ */ Object.create(null); + self2.symlinks = options.symlinks || /* @__PURE__ */ Object.create(null); + setupIgnores(self2, options); + self2.changedCwd = false; + var cwd = process.cwd(); + if (!ownProp(options, "cwd")) + self2.cwd = cwd; + else { + self2.cwd = path2.resolve(options.cwd); + self2.changedCwd = self2.cwd !== cwd; } + self2.root = options.root || path2.resolve(self2.cwd, "/"); + self2.root = path2.resolve(self2.root); + if (process.platform === "win32") + self2.root = self2.root.replace(/\\/g, "/"); + self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); + if (process.platform === "win32") + self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); + self2.nomount = !!options.nomount; + options.nonegate = true; + options.nocomment = true; + self2.minimatch = new Minimatch(pattern, options); + self2.options = self2.minimatch.options; } - return acc; - }, {}); - } - function getPreferredVersionsFromLockfile(snapshots) { - const preferredVersions = {}; - for (const [depPath, snapshot] of Object.entries(snapshots)) { - const { name, version } = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, snapshot); - if (!preferredVersions[name]) { - preferredVersions[name] = { [version]: "version" }; - } else { - preferredVersions[name][version] = "version"; - } - } - return preferredVersions; - } - exports2.getPreferredVersionsFromLockfile = getPreferredVersionsFromLockfile; - } -}); - -// ../supi/lib/install/getWantedDependencies.js -var require_getWantedDependencies = __commonJS({ - "../supi/lib/install/getWantedDependencies.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var manifest_utils_1 = require_lib15(); - var guessPinnedVersionFromExistingSpec_1 = __importDefault(require_guessPinnedVersionFromExistingSpec()); - function getWantedDependencies(pkg, opts) { - var _a, _b, _c, _d, _e; - const depsToInstall = manifest_utils_1.filterDependenciesByType(pkg, (_a = opts === null || opts === void 0 ? void 0 : opts.includeDirect) !== null && _a !== void 0 ? _a : { - dependencies: true, - devDependencies: true, - optionalDependencies: true - }); - return getWantedDependenciesFromGivenSet(depsToInstall, { - dependencies: (_b = pkg.dependencies) !== null && _b !== void 0 ? _b : {}, - devDependencies: (_c = pkg.devDependencies) !== null && _c !== void 0 ? _c : {}, - optionalDependencies: (_d = pkg.optionalDependencies) !== null && _d !== void 0 ? _d : {}, - dependenciesMeta: (_e = pkg.dependenciesMeta) !== null && _e !== void 0 ? _e : {}, - updatePref: (opts === null || opts === void 0 ? void 0 : opts.updateWorkspaceDependencies) === true ? updateWorkspacePref : (pref) => pref - }); - } - exports2.default = getWantedDependencies; - function updateWorkspacePref(pref) { - return pref.startsWith("workspace:") ? "workspace:*" : pref; - } - function getWantedDependenciesFromGivenSet(deps, opts) { - if (!deps) - return []; - return Object.keys(deps).map((alias) => { - var _a, _b; - const pref = opts.updatePref(deps[alias]); - let depType; - if (opts.optionalDependencies[alias] != null) - depType = "optional"; - else if (opts.dependencies[alias] != null) - depType = "prod"; - else if (opts.devDependencies[alias] != null) - depType = "dev"; - return { - alias, - dev: depType === "dev", - optional: depType === "optional", - nodeExecPath: (_a = opts.nodeExecPath) !== null && _a !== void 0 ? _a : (_b = opts.dependenciesMeta[alias]) === null || _b === void 0 ? void 0 : _b.node, - pinnedVersion: guessPinnedVersionFromExistingSpec_1.default(deps[alias]), - pref, - raw: `${alias}@${pref}` - }; - }); - } - } -}); - -// ../supi/lib/install/link.js -var require_link2 = __commonJS({ - "../supi/lib/install/link.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var filter_lockfile_1 = require_lib71(); - var hoist_1 = __importDefault(require_lib82()); - var logger_1 = __importDefault(require_lib6()); - var modules_cleaner_1 = require_lib73(); - var symlink_dependency_1 = __importStar2(require_lib75()); - var p_limit_1 = __importDefault(require_p_limit()); - var path_exists_1 = __importDefault(require_path_exists()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var equals_1 = __importDefault(require_equals2()); - var difference_1 = __importDefault(require_difference()); - var omit_1 = __importDefault(require_omit()); - var props_1 = __importDefault(require_props()); - var brokenModulesLogger = logger_1.default("_broken_node_modules"); - async function linkPackages(projects, depGraph, opts) { - var _a, _b, _c; - let depNodes = Object.values(depGraph).filter(({ depPath, id }) => { - var _a2; - if (((_a2 = opts.wantedLockfile.packages) === null || _a2 === void 0 ? void 0 : _a2[depPath]) != null && !opts.wantedLockfile.packages[depPath].optional) { - opts.skipped.delete(depPath); - return true; - } - if (opts.wantedToBeSkippedPackageIds.has(id)) { - opts.skipped.add(depPath); - return false; - } - opts.skipped.delete(depPath); - return true; - }); - if (!opts.include.dependencies) { - depNodes = depNodes.filter(({ dev, optional }) => dev || optional); - } - if (!opts.include.devDependencies) { - depNodes = depNodes.filter(({ optional, prod }) => prod || optional); - } - if (!opts.include.optionalDependencies) { - depNodes = depNodes.filter(({ optional }) => !optional); - } - depGraph = fromPairs_1.default(depNodes.map((depNode) => [depNode.depPath, depNode])); - const removedDepPaths = await modules_cleaner_1.prune(projects, { - currentLockfile: opts.currentLockfile, - hoistedDependencies: opts.hoistedDependencies, - hoistedModulesDir: opts.hoistPattern != null ? opts.hoistedModulesDir : void 0, - include: opts.include, - lockfileDir: opts.lockfileDir, - pruneStore: opts.pruneStore, - pruneVirtualStore: opts.pruneVirtualStore, - publicHoistedModulesDir: opts.publicHoistPattern != null ? opts.rootModulesDir : void 0, - registries: opts.registries, - skipped: opts.skipped, - storeController: opts.storeController, - virtualStoreDir: opts.virtualStoreDir, - wantedLockfile: opts.wantedLockfile - }); - core_loggers_1.stageLogger.debug({ - prefix: opts.lockfileDir, - stage: "importing_started" - }); - const projectIds = projects.map(({ id }) => id); - const filterOpts = { - include: opts.include, - registries: opts.registries, - skipped: opts.skipped - }; - const newCurrentLockfile = filter_lockfile_1.filterLockfileByImporters(opts.wantedLockfile, projectIds, { - ...filterOpts, - failOnMissingDependencies: true, - skipped: new Set() - }); - const newDepPaths = await linkNewPackages(filter_lockfile_1.filterLockfileByImporters(opts.currentLockfile, projectIds, { - ...filterOpts, - failOnMissingDependencies: false - }), newCurrentLockfile, depGraph, { - force: opts.force, - lockfileDir: opts.lockfileDir, - optional: opts.include.optionalDependencies, - sideEffectsCacheRead: opts.sideEffectsCacheRead, - symlink: opts.symlink, - skipped: opts.skipped, - storeController: opts.storeController, - virtualStoreDir: opts.virtualStoreDir - }); - core_loggers_1.stageLogger.debug({ - prefix: opts.lockfileDir, - stage: "importing_done" - }); - if (opts.symlink) { - await Promise.all(projects.map(async ({ id, manifest, modulesDir, rootDir }) => { - const deps = opts.dependenciesByProjectId[id]; - await Promise.all([ - ...Object.entries(deps).map(([rootAlias, depPath]) => ({ rootAlias, depGraphNode: depGraph[depPath] })).filter(({ depGraphNode }) => depGraphNode).map(async ({ rootAlias, depGraphNode }) => { - var _a2, _b2; - const isDev = Boolean((_a2 = manifest.devDependencies) === null || _a2 === void 0 ? void 0 : _a2[depGraphNode.name]); - const isOptional = Boolean((_b2 = manifest.optionalDependencies) === null || _b2 === void 0 ? void 0 : _b2[depGraphNode.name]); - if (isDev && !opts.include.devDependencies || isOptional && !opts.include.optionalDependencies || !isDev && !isOptional && !opts.include.dependencies) - return; - if ((await symlink_dependency_1.default(depGraphNode.dir, modulesDir, rootAlias)).reused) - return; - core_loggers_1.rootLogger.debug({ - added: { - dependencyType: isDev && "dev" || isOptional && "optional" || "prod", - id: depGraphNode.id, - latest: opts.outdatedDependencies[depGraphNode.id], - name: rootAlias, - realName: depGraphNode.name, - version: depGraphNode.version - }, - prefix: rootDir - }); - }), - ...opts.linkedDependenciesByProjectId[id].map(async (linkedDependency) => { - const depLocation = resolvePath(rootDir, linkedDependency.resolution.directory); - return symlink_dependency_1.symlinkDirectRootDependency(depLocation, modulesDir, linkedDependency.alias, { - fromDependenciesField: linkedDependency.dev && "devDependencies" || linkedDependency.optional && "optionalDependencies" || "dependencies", - linkedPackage: linkedDependency, - prefix: rootDir + function finish(self2) { + var nou = self2.nounique; + var all = nou ? [] : /* @__PURE__ */ Object.create(null); + for (var i = 0, l = self2.matches.length; i < l; i++) { + var matches = self2.matches[i]; + if (!matches || Object.keys(matches).length === 0) { + if (self2.nonull) { + var literal = self2.minimatch.globSet[i]; + if (nou) + all.push(literal); + else + all[literal] = true; + } + } else { + var m = Object.keys(matches); + if (nou) + all.push.apply(all, m); + else + m.forEach(function(m2) { + all[m2] = true; + }); + } + } + if (!nou) + all = Object.keys(all); + if (!self2.nosort) + all = all.sort(self2.nocase ? alphasorti : alphasort); + if (self2.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self2._mark(all[i]); + } + if (self2.nodir) { + all = all.filter(function(e) { + var notDir = !/\/$/.test(e); + var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; + if (notDir && c) + notDir = c !== "DIR" && !Array.isArray(c); + return notDir; }); - }) - ]); - })); - } - let currentLockfile; - const allImportersIncluded = equals_1.default(projectIds.sort(), Object.keys(opts.wantedLockfile.importers).sort()); - if (opts.makePartialCurrentLockfile || !allImportersIncluded) { - const packages = (_a = opts.currentLockfile.packages) !== null && _a !== void 0 ? _a : {}; - if (opts.wantedLockfile.packages != null) { - for (const depPath in opts.wantedLockfile.packages) { - if (depGraph[depPath]) { - packages[depPath] = opts.wantedLockfile.packages[depPath]; } } + if (self2.ignore.length) + all = all.filter(function(m2) { + return !isIgnored(self2, m2); + }); + self2.found = all; } - const projects2 = projectIds.reduce((acc, projectId) => { - acc[projectId] = opts.wantedLockfile.importers[projectId]; - return acc; - }, opts.currentLockfile.importers); - currentLockfile = filter_lockfile_1.filterLockfileByImporters({ - ...opts.wantedLockfile, - importers: projects2, - packages - }, Object.keys(projects2), { - ...filterOpts, - failOnMissingDependencies: false, - skipped: new Set() - }); - } else if (opts.include.dependencies && opts.include.devDependencies && opts.include.optionalDependencies && opts.skipped.size === 0) { - currentLockfile = opts.wantedLockfile; - } else { - currentLockfile = newCurrentLockfile; - } - let newHoistedDependencies; - if ((opts.hoistPattern != null || opts.publicHoistPattern != null) && (newDepPaths.length > 0 || removedDepPaths.size > 0)) { - const hoistLockfile = { - ...currentLockfile, - packages: omit_1.default(Array.from(opts.skipped), currentLockfile.packages) - }; - newHoistedDependencies = await hoist_1.default({ - extendNodePath: opts.extendNodePath, - lockfile: hoistLockfile, - lockfileDir: opts.lockfileDir, - privateHoistedModulesDir: opts.hoistedModulesDir, - privateHoistPattern: (_b = opts.hoistPattern) !== null && _b !== void 0 ? _b : [], - publicHoistedModulesDir: opts.rootModulesDir, - publicHoistPattern: (_c = opts.publicHoistPattern) !== null && _c !== void 0 ? _c : [], - virtualStoreDir: opts.virtualStoreDir - }); - } else { - newHoistedDependencies = {}; - } - return { - currentLockfile, - newDepPaths, - newHoistedDependencies, - removedDepPaths - }; - } - exports2.default = linkPackages; - var isAbsolutePath = /^[/]|^[A-Za-z]:/; - function resolvePath(where, spec) { - if (isAbsolutePath.test(spec)) - return spec; - return path_1.default.resolve(where, spec); - } - async function linkNewPackages(currentLockfile, wantedLockfile, depGraph, opts) { - var _a; - const wantedRelDepPaths = difference_1.default(Object.keys((_a = wantedLockfile.packages) !== null && _a !== void 0 ? _a : {}), Array.from(opts.skipped)); - let newDepPathsSet; - if (opts.force) { - newDepPathsSet = new Set(wantedRelDepPaths.filter((depPath) => depGraph[depPath])); - } else { - newDepPathsSet = await selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph); - } - core_loggers_1.statsLogger.debug({ - added: newDepPathsSet.size, - prefix: opts.lockfileDir - }); - const existingWithUpdatedDeps = []; - if (!opts.force && currentLockfile.packages != null && wantedLockfile.packages != null) { - for (const depPath of wantedRelDepPaths) { - if (currentLockfile.packages[depPath] && (!equals_1.default(currentLockfile.packages[depPath].dependencies, wantedLockfile.packages[depPath].dependencies) || !equals_1.default(currentLockfile.packages[depPath].optionalDependencies, wantedLockfile.packages[depPath].optionalDependencies))) { - if (depGraph[depPath] && !newDepPathsSet.has(depPath)) { - existingWithUpdatedDeps.push(depGraph[depPath]); + function mark(self2, p) { + var abs = makeAbs(self2, p); + var c = self2.cache[abs]; + var m = p; + if (c) { + var isDir = c === "DIR" || Array.isArray(c); + var slash = p.slice(-1) === "/"; + if (isDir && !slash) + m += "/"; + else if (!isDir && slash) + m = m.slice(0, -1); + if (m !== p) { + var mabs = makeAbs(self2, m); + self2.statCache[mabs] = self2.statCache[abs]; + self2.cache[mabs] = self2.cache[abs]; } } + return m; } - } - if (!newDepPathsSet.size && existingWithUpdatedDeps.length === 0) - return []; - const newDepPaths = Array.from(newDepPathsSet); - const newPkgs = props_1.default(newDepPaths, depGraph); - await Promise.all(newPkgs.map(async (depNode) => fs_1.promises.mkdir(depNode.modules, { recursive: true }))); - await Promise.all([ - !opts.symlink ? Promise.resolve() : linkAllModules([...newPkgs, ...existingWithUpdatedDeps], depGraph, { - lockfileDir: opts.lockfileDir, - optional: opts.optional - }), - linkAllPkgs(opts.storeController, newPkgs, { - force: opts.force, - lockfileDir: opts.lockfileDir, - targetEngine: opts.sideEffectsCacheRead && constants_1.ENGINE_NAME || void 0 - }) - ]); - return newDepPaths; - } - async function selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph) { - var _a; - const newDeps = new Set(); - const prevDeps = (_a = currentLockfile.packages) !== null && _a !== void 0 ? _a : {}; - await Promise.all(wantedRelDepPaths.map(async (depPath) => { - const depNode = depGraph[depPath]; - if (!depNode) - return; - const prevDep = prevDeps[depPath]; - if (prevDep && depNode.resolution["integrity"] === prevDep.resolution["integrity"]) { - if (await path_exists_1.default(depNode.dir)) { - return; + function makeAbs(self2, f) { + var abs = f; + if (f.charAt(0) === "/") { + abs = path2.join(self2.root, f); + } else if (isAbsolute(f) || f === "") { + abs = f; + } else if (self2.changedCwd) { + abs = path2.resolve(self2.cwd, f); + } else { + abs = path2.resolve(f); } - brokenModulesLogger.debug({ - missing: depNode.dir + if (process.platform === "win32") + abs = abs.replace(/\\/g, "/"); + return abs; + } + function isIgnored(self2, path3) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return item.matcher.match(path3) || !!(item.gmatcher && item.gmatcher.match(path3)); }); } - newDeps.add(depPath); - })); - return newDeps; - } - var limitLinking = p_limit_1.default(16); - async function linkAllPkgs(storeController, depNodes, opts) { - return Promise.all(depNodes.map(async (depNode) => { - const filesResponse = await depNode.fetchingFiles(); - const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, { - filesResponse, - force: opts.force, - targetEngine: opts.targetEngine - }); - if (importMethod) { - core_loggers_1.progressLogger.debug({ - method: importMethod, - requester: opts.lockfileDir, - status: "imported", - to: depNode.dir + function childrenIgnored(self2, path3) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path3)); }); } - depNode.isBuilt = isBuilt; - })); - } - async function linkAllModules(depNodes, depGraph, opts) { - await Promise.all(depNodes.map(async ({ children, optionalDependencies, name, modules }) => { - const childrenToLink = opts.optional ? children : Object.keys(children).reduce((nonOptionalChildren, childAlias) => { - if (!optionalDependencies.has(childAlias)) { - nonOptionalChildren[childAlias] = children[childAlias]; - } - return nonOptionalChildren; - }, {}); - await Promise.all(Object.keys(childrenToLink).map(async (childAlias) => { - if (childrenToLink[childAlias].startsWith("link:")) { - await limitLinking(async () => symlink_dependency_1.default(path_1.default.resolve(opts.lockfileDir, childrenToLink[childAlias].substr(5)), modules, childAlias)); - return; + }, + /* 116 */ + /***/ + function(module3, exports3, __webpack_require__) { + var path2 = __webpack_require__(0); + var fs2 = __webpack_require__(3); + var _0777 = parseInt("0777", 8); + module3.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP; + function mkdirP(p, opts, f, made) { + if (typeof opts === "function") { + f = opts; + opts = {}; + } else if (!opts || typeof opts !== "object") { + opts = { mode: opts }; } - const pkg = depGraph[childrenToLink[childAlias]]; - if (!pkg || !pkg.installable && pkg.optional) - return; - if (childAlias === name) { - logger_1.default.warn({ - message: `Cannot link dependency with name ${childAlias} to ${modules}. Dependency's name should differ from the parent's name.`, - prefix: opts.lockfileDir - }); - return; + var mode = opts.mode; + var xfs = opts.fs || fs2; + if (mode === void 0) { + mode = _0777 & ~process.umask(); } - await limitLinking(async () => symlink_dependency_1.default(pkg.dir, modules, childAlias)); - })); - })); - } - } -}); - -// ../supi/lib/install/index.js -var require_install = __commonJS({ - "../supi/lib/install/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.addDependenciesToPackage = exports2.createObjectChecksum = exports2.mutateModules = exports2.install = void 0; - var crypto_1 = __importDefault(require("crypto")); - var path_1 = __importDefault(require("path")); - var build_modules_1 = __importStar2(require_lib81()); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var error_1 = __importDefault(require_lib8()); - var get_context_1 = __importDefault(require_lib67()); - var headless_1 = __importDefault(require_lib85()); - var lifecycle_1 = require_lib80(); - var link_bins_1 = __importStar2(require_lib70()); - var lockfile_file_1 = require_lib57(); - var lockfile_to_pnp_1 = require_lib84(); - var logger_1 = __importStar2(require_lib6()); - var manifest_utils_1 = require_lib15(); - var modules_yaml_1 = require_lib64(); - var read_modules_dir_1 = __importDefault(require_lib69()); - var read_project_manifest_1 = require_lib19(); - var remove_bins_1 = require_lib72(); - var resolve_dependencies_1 = __importDefault(require_lib86()); - var rimraf_1 = __importDefault(require_rimraf()); - var is_inner_link_1 = __importDefault(require_is_inner_link()); - var p_filter_1 = __importDefault(require_p_filter()); - var p_limit_1 = __importDefault(require_p_limit()); - var flatten_1 = __importDefault(require_flatten2()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var equals_1 = __importDefault(require_equals2()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var pipe_1 = __importDefault(require_pipe3()); - var props_1 = __importDefault(require_props()); - var unnest_1 = __importDefault(require_unnest()); - var parseWantedDependencies_1 = __importDefault(require_parseWantedDependencies()); - var safeIsInnerLink_1 = __importDefault(require_safeIsInnerLink()); - var removeDeps_1 = __importDefault(require_removeDeps()); - var allProjectsAreUpToDate_1 = __importDefault(require_allProjectsAreUpToDate()); - var createPackageExtender_1 = __importDefault(require_createPackageExtender()); - var createVersionsOverrider_1 = __importDefault(require_createVersionsOverrider()); - var extendInstallOptions_1 = __importDefault(require_extendInstallOptions()); - var getPreferredVersions_1 = __importStar2(require_getPreferredVersions()); - var getWantedDependencies_1 = __importDefault(require_getWantedDependencies()); - var link_1 = __importDefault(require_link2()); - var BROKEN_LOCKFILE_INTEGRITY_ERRORS = new Set([ - "ERR_PNPM_UNEXPECTED_PKG_CONTENT_IN_STORE", - "ERR_PNPM_TARBALL_INTEGRITY" - ]); - async function install(manifest, opts) { - var _a; - const projects = await mutateModules([ - { - buildIndex: 0, - manifest, - mutation: "install", - rootDir: (_a = opts.dir) !== null && _a !== void 0 ? _a : process.cwd() + if (!made) + made = null; + var cb = f || function() { + }; + p = path2.resolve(p); + xfs.mkdir(p, mode, function(er) { + if (!er) { + made = made || p; + return cb(null, made); + } + switch (er.code) { + case "ENOENT": + mkdirP(path2.dirname(p), opts, function(er2, made2) { + if (er2) + cb(er2, made2); + else + mkdirP(p, opts, cb, made2); + }); + break; + default: + xfs.stat(p, function(er2, stat) { + if (er2 || !stat.isDirectory()) + cb(er, made); + else + cb(null, made); + }); + break; + } + }); } - ], opts); - return projects[0].manifest; - } - exports2.install = install; - async function mutateModules(projects, maybeOpts) { - var _a, _b, _c, _d, _e, _f, _g, _h; - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); - } - const opts = await extendInstallOptions_1.default(maybeOpts); - if (!opts.include.dependencies && opts.include.optionalDependencies) { - throw new error_1.default("OPTIONAL_DEPS_REQUIRE_PROD_DEPS", "Optional dependencies cannot be installed without production dependencies"); - } - const installsOnly = projects.every((project) => project.mutation === "install"); - opts["forceNewModules"] = installsOnly; - const rootProjectManifest = (_b = (_a = projects.find(({ rootDir }) => rootDir === opts.lockfileDir)) === null || _a === void 0 ? void 0 : _a.manifest) !== null && _b !== void 0 ? _b : await read_project_manifest_1.safeReadProjectManifestOnly(opts.lockfileDir); - const overrides = rootProjectManifest != null ? (_d = (_c = rootProjectManifest.pnpm) === null || _c === void 0 ? void 0 : _c.overrides) !== null && _d !== void 0 ? _d : rootProjectManifest.resolutions : void 0; - const neverBuiltDependencies = (_f = (_e = rootProjectManifest === null || rootProjectManifest === void 0 ? void 0 : rootProjectManifest.pnpm) === null || _e === void 0 ? void 0 : _e.neverBuiltDependencies) !== null && _f !== void 0 ? _f : []; - const packageExtensions = (_g = rootProjectManifest === null || rootProjectManifest === void 0 ? void 0 : rootProjectManifest.pnpm) === null || _g === void 0 ? void 0 : _g.packageExtensions; - opts.hooks.readPackage = createReadPackageHook({ - readPackageHook: opts.hooks.readPackage, - overrides, - lockfileDir: opts.lockfileDir, - packageExtensions - }); - const ctx = await get_context_1.default(projects, opts); - const pruneVirtualStore = ((_h = ctx.modulesFile) === null || _h === void 0 ? void 0 : _h.prunedAt) && opts.modulesCacheMaxAge > 0 ? cacheExpired(ctx.modulesFile.prunedAt, opts.modulesCacheMaxAge) : true; - if (!maybeOpts.ignorePackageManifest) { - for (const { manifest, rootDir } of ctx.projects) { - if (!manifest) { - throw new Error(`No package.json found in "${rootDir}"`); + mkdirP.sync = function sync(p, opts, made) { + if (!opts || typeof opts !== "object") { + opts = { mode: opts }; } - } - } - const result = await _install(); - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.removeListener("data", reporter); - } - return result; - async function _install() { - var _a2, _b2, _c2, _d2, _e2, _f2; - const packageExtensionsChecksum = isEmpty_1.default(packageExtensions !== null && packageExtensions !== void 0 ? packageExtensions : {}) ? void 0 : createObjectChecksum(packageExtensions); - let needsFullResolution = !maybeOpts.ignorePackageManifest && (!equals_1.default((_a2 = ctx.wantedLockfile.overrides) !== null && _a2 !== void 0 ? _a2 : {}, overrides !== null && overrides !== void 0 ? overrides : {}) || !equals_1.default(((_b2 = ctx.wantedLockfile.neverBuiltDependencies) !== null && _b2 !== void 0 ? _b2 : []).sort(), (neverBuiltDependencies !== null && neverBuiltDependencies !== void 0 ? neverBuiltDependencies : []).sort()) || ctx.wantedLockfile.packageExtensionsChecksum !== packageExtensionsChecksum) || opts.fixLockfile; - if (needsFullResolution) { - ctx.wantedLockfile.overrides = overrides; - ctx.wantedLockfile.neverBuiltDependencies = neverBuiltDependencies; - ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum; - } - const frozenLockfile = opts.frozenLockfile || opts.frozenLockfileIfExists && ctx.existsWantedLockfile; - if (!ctx.lockfileHadConflicts && !opts.lockfileOnly && !opts.update && !opts.fixLockfile && installsOnly && (frozenLockfile || opts.ignorePackageManifest || !needsFullResolution && opts.preferFrozenLockfile && (!opts.pruneLockfileImporters || Object.keys(ctx.wantedLockfile.importers).length === ctx.projects.length) && ctx.existsWantedLockfile && ctx.wantedLockfile.lockfileVersion === constants_1.LOCKFILE_VERSION && await allProjectsAreUpToDate_1.default(ctx.projects, { - linkWorkspacePackages: opts.linkWorkspacePackagesDepth >= 0, - wantedLockfile: ctx.wantedLockfile, - workspacePackages: opts.workspacePackages - }))) { - if (needsFullResolution) { - throw new error_1.default("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", "Cannot perform a frozen installation because the lockfile needs updates"); + var mode = opts.mode; + var xfs = opts.fs || fs2; + if (mode === void 0) { + mode = _0777 & ~process.umask(); } - if (!ctx.existsWantedLockfile) { - if (ctx.projects.some((project) => pkgHasDependencies(project.manifest))) { - throw new Error(`Headless installation requires a ${constants_1.WANTED_LOCKFILE} file`); + if (!made) + made = null; + p = path2.resolve(p); + try { + xfs.mkdirSync(p, mode); + made = made || p; + } catch (err0) { + switch (err0.code) { + case "ENOENT": + made = sync(path2.dirname(p), opts, made); + sync(p, opts, made); + break; + default: + var stat; + try { + stat = xfs.statSync(p); + } catch (err1) { + throw err0; + } + if (!stat.isDirectory()) + throw err0; + break; } - } else { - if (maybeOpts.ignorePackageManifest) { - logger_1.default.info({ message: "Importing packages to virtual store", prefix: opts.lockfileDir }); - } else { - logger_1.default.info({ message: "Lockfile is up-to-date, resolution step is skipped", prefix: opts.lockfileDir }); + } + return made; + }; + }, + , + , + , + , + , + /* 122 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + module3.exports = (x) => { + if (typeof x !== "string") { + throw new TypeError("Expected a string, got " + typeof x); + } + if (x.charCodeAt(0) === 65279) { + return x.slice(1); + } + return x; + }; + }, + /* 123 */ + /***/ + function(module3, exports3) { + module3.exports = wrappy; + function wrappy(fn2, cb) { + if (fn2 && cb) + return wrappy(fn2)(cb); + if (typeof fn2 !== "function") + throw new TypeError("need wrapper function"); + Object.keys(fn2).forEach(function(k) { + wrapper[k] = fn2[k]; + }); + return wrapper; + function wrapper() { + var args2 = new Array(arguments.length); + for (var i = 0; i < args2.length; i++) { + args2[i] = arguments[i]; } - try { - await headless_1.default({ - childConcurrency: opts.childConcurrency, - currentEngine: { - nodeVersion: opts.nodeVersion, - pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "" - }, - currentLockfile: ctx.currentLockfile, - enablePnp: opts.enablePnp, - engineStrict: opts.engineStrict, - extendNodePath: opts.extendNodePath, - extraBinPaths: opts.extraBinPaths, - force: opts.force, - hoistedDependencies: ctx.hoistedDependencies, - hoistPattern: ctx.hoistPattern, - ignoreScripts: opts.ignoreScripts, - ignorePackageManifest: opts.ignorePackageManifest, - include: opts.include, - lockfileDir: ctx.lockfileDir, - modulesDir: opts.modulesDir, - ownLifecycleHooksStdio: opts.ownLifecycleHooksStdio, - packageManager: opts.packageManager, - pendingBuilds: ctx.pendingBuilds, - projects: ctx.projects, - pruneStore: opts.pruneStore, - prunedAt: (_c2 = ctx.modulesFile) === null || _c2 === void 0 ? void 0 : _c2.prunedAt, - pruneVirtualStore, - publicHoistPattern: ctx.publicHoistPattern, - rawConfig: opts.rawConfig, - registries: opts.registries, - sideEffectsCacheRead: opts.sideEffectsCacheRead, - sideEffectsCacheWrite: opts.sideEffectsCacheWrite, - symlink: opts.symlink, - skipped: ctx.skipped, - storeController: opts.storeController, - storeDir: opts.storeDir, - unsafePerm: opts.unsafePerm, - userAgent: opts.userAgent, - virtualStoreDir: ctx.virtualStoreDir, - wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile - }); - return projects; - } catch (error) { - if (frozenLockfile || error.code !== "ERR_PNPM_LOCKFILE_MISSING_DEPENDENCY" && !BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code)) - throw error; - if (BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code)) { - needsFullResolution = true; - opts.update = true; - } - logger_1.default.warn({ - error, - message: error.message, - prefix: ctx.lockfileDir + var ret = fn2.apply(this, args2); + var cb2 = args2[args2.length - 1]; + if (typeof ret === "function" && ret !== cb2) { + Object.keys(cb2).forEach(function(k) { + ret[k] = cb2[k]; }); - logger_1.default.error(new error_1.default(error.code, "The lockfile is broken! Resolution step will be performed to fix it.")); } + return ret; } } - const projectsToInstall = []; - const projectsToBeInstalled = ctx.projects.filter(({ mutation }) => mutation === "install"); - const scriptsOpts = { - extraBinPaths: opts.extraBinPaths, - rawConfig: opts.rawConfig, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - stdio: opts.ownLifecycleHooksStdio, - unsafePerm: opts.unsafePerm || false + }, + , + , + , + , + , + , + , + /* 131 */ + /***/ + function(module3, exports3, __webpack_require__) { + var cof = __webpack_require__(47); + module3.exports = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return cof(it) == "String" ? it.split("") : Object(it); }; - let preferredSpecs = null; - for (const project of ctx.projects) { - switch (project.mutation) { - case "uninstallSome": - projectsToInstall.push({ - pruneDirectDependencies: false, - ...project, - removePackages: project.dependencyNames, - updatePackageManifest: true, - wantedDependencies: [] - }); - break; - case "install": { - await installCase({ - ...project, - updatePackageManifest: (_d2 = opts.updatePackageManifest) !== null && _d2 !== void 0 ? _d2 : opts.update - }); - break; - } - case "installSome": { - await installSome({ - ...project, - updatePackageManifest: opts.updatePackageManifest !== false - }); - break; + }, + /* 132 */ + /***/ + function(module3, exports3, __webpack_require__) { + var $keys = __webpack_require__(195); + var enumBugKeys = __webpack_require__(101); + module3.exports = Object.keys || function keys(O) { + return $keys(O, enumBugKeys); + }; + }, + /* 133 */ + /***/ + function(module3, exports3, __webpack_require__) { + var defined = __webpack_require__(67); + module3.exports = function(it) { + return Object(defined(it)); + }; + }, + , + , + , + , + , + , + , + , + , + , + , + /* 145 */ + /***/ + function(module3, exports3) { + module3.exports = { "name": "yarn", "installationMethod": "unknown", "version": "1.10.0-0", "license": "BSD-2-Clause", "preferGlobal": true, "description": "\u{1F4E6}\u{1F408} Fast, reliable, and secure dependency management.", "dependencies": { "@zkochan/cmd-shim": "^2.2.4", "babel-runtime": "^6.26.0", "bytes": "^3.0.0", "camelcase": "^4.0.0", "chalk": "^2.1.0", "commander": "^2.9.0", "death": "^1.0.0", "debug": "^3.0.0", "deep-equal": "^1.0.1", "detect-indent": "^5.0.0", "dnscache": "^1.0.1", "glob": "^7.1.1", "gunzip-maybe": "^1.4.0", "hash-for-dep": "^1.2.3", "imports-loader": "^0.8.0", "ini": "^1.3.4", "inquirer": "^3.0.1", "invariant": "^2.2.0", "is-builtin-module": "^2.0.0", "is-ci": "^1.0.10", "is-webpack-bundle": "^1.0.0", "leven": "^2.0.0", "loud-rejection": "^1.2.0", "micromatch": "^2.3.11", "mkdirp": "^0.5.1", "node-emoji": "^1.6.1", "normalize-url": "^2.0.0", "npm-logical-tree": "^1.2.1", "object-path": "^0.11.2", "proper-lockfile": "^2.0.0", "puka": "^1.0.0", "read": "^1.0.7", "request": "^2.87.0", "request-capture-har": "^1.2.2", "rimraf": "^2.5.0", "semver": "^5.1.0", "ssri": "^5.3.0", "strip-ansi": "^4.0.0", "strip-bom": "^3.0.0", "tar-fs": "^1.16.0", "tar-stream": "^1.6.1", "uuid": "^3.0.1", "v8-compile-cache": "^2.0.0", "validate-npm-package-license": "^3.0.3", "yn": "^2.0.0" }, "devDependencies": { "babel-core": "^6.26.0", "babel-eslint": "^7.2.3", "babel-loader": "^6.2.5", "babel-plugin-array-includes": "^2.0.3", "babel-plugin-transform-builtin-extend": "^1.1.2", "babel-plugin-transform-inline-imports-commonjs": "^1.0.0", "babel-plugin-transform-runtime": "^6.4.3", "babel-preset-env": "^1.6.0", "babel-preset-flow": "^6.23.0", "babel-preset-stage-0": "^6.0.0", "babylon": "^6.5.0", "commitizen": "^2.9.6", "cz-conventional-changelog": "^2.0.0", "eslint": "^4.3.0", "eslint-config-fb-strict": "^22.0.0", "eslint-plugin-babel": "^5.0.0", "eslint-plugin-flowtype": "^2.35.0", "eslint-plugin-jasmine": "^2.6.2", "eslint-plugin-jest": "^21.0.0", "eslint-plugin-jsx-a11y": "^6.0.2", "eslint-plugin-prefer-object-spread": "^1.2.1", "eslint-plugin-prettier": "^2.1.2", "eslint-plugin-react": "^7.1.0", "eslint-plugin-relay": "^0.0.24", "eslint-plugin-yarn-internal": "file:scripts/eslint-rules", "execa": "^0.10.0", "flow-bin": "^0.66.0", "git-release-notes": "^3.0.0", "gulp": "^3.9.0", "gulp-babel": "^7.0.0", "gulp-if": "^2.0.1", "gulp-newer": "^1.0.0", "gulp-plumber": "^1.0.1", "gulp-sourcemaps": "^2.2.0", "gulp-util": "^3.0.7", "gulp-watch": "^5.0.0", "jest": "^22.4.4", "jsinspect": "^0.12.6", "minimatch": "^3.0.4", "mock-stdin": "^0.3.0", "prettier": "^1.5.2", "temp": "^0.8.3", "webpack": "^2.1.0-beta.25", "yargs": "^6.3.0" }, "resolutions": { "sshpk": "^1.14.2" }, "engines": { "node": ">=4.0.0" }, "repository": "yarnpkg/yarn", "bin": { "yarn": "./bin/yarn.js", "yarnpkg": "./bin/yarn.js" }, "scripts": { "build": "gulp build", "build-bundle": "node ./scripts/build-webpack.js", "build-chocolatey": "powershell ./scripts/build-chocolatey.ps1", "build-deb": "./scripts/build-deb.sh", "build-dist": "bash ./scripts/build-dist.sh", "build-win-installer": "scripts\\build-windows-installer.bat", "changelog": "git-release-notes $(git describe --tags --abbrev=0 $(git describe --tags --abbrev=0)^)..$(git describe --tags --abbrev=0) scripts/changelog.md", "dupe-check": "yarn jsinspect ./src", "lint": "eslint . && flow check", "pkg-tests": "yarn --cwd packages/pkg-tests jest yarn.test.js", "prettier": "eslint src __tests__ --fix", "release-branch": "./scripts/release-branch.sh", "test": "yarn lint && yarn test-only", "test-only": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --verbose", "test-only-debug": "node --inspect-brk --max_old_space_size=4096 node_modules/jest/bin/jest.js --runInBand --verbose", "test-coverage": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --coverage --verbose", "watch": "gulp watch", "commit": "git-cz" }, "jest": { "collectCoverageFrom": ["src/**/*.js"], "testEnvironment": "node", "modulePathIgnorePatterns": ["__tests__/fixtures/", "packages/pkg-tests/pkg-tests-fixtures", "dist/"], "testPathIgnorePatterns": ["__tests__/(fixtures|__mocks__)/", "updates/", "_(temp|mock|install|init|helpers).js$", "packages/pkg-tests"] }, "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" } } }; + }, + , + , + , + , + /* 150 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.default = stringify2; + var _misc; + function _load_misc() { + return _misc = __webpack_require__(12); + } + var _constants; + function _load_constants() { + return _constants = __webpack_require__(6); + } + var _package; + function _load_package() { + return _package = __webpack_require__(145); + } + const NODE_VERSION = process.version; + function shouldWrapKey(str) { + return str.indexOf("true") === 0 || str.indexOf("false") === 0 || /[:\s\n\\",\[\]]/g.test(str) || /^[0-9]/g.test(str) || !/^[a-zA-Z]/g.test(str); + } + function maybeWrap(str) { + if (typeof str === "boolean" || typeof str === "number" || shouldWrapKey(str)) { + return JSON.stringify(str); + } else { + return str; + } + } + const priorities = { + name: 1, + version: 2, + uid: 3, + resolved: 4, + integrity: 5, + registry: 6, + dependencies: 7 + }; + function priorityThenAlphaSort(a, b) { + if (priorities[a] || priorities[b]) { + return (priorities[a] || 100) > (priorities[b] || 100) ? 1 : -1; + } else { + return (0, (_misc || _load_misc()).sortAlpha)(a, b); + } + } + function _stringify(obj, options) { + if (typeof obj !== "object") { + throw new TypeError(); + } + const indent = options.indent; + const lines = []; + const keys = Object.keys(obj).sort(priorityThenAlphaSort); + let addedKeys = []; + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + const val = obj[key]; + if (val == null || addedKeys.indexOf(key) >= 0) { + continue; } - case "unlink": { - const packageDirs = await read_modules_dir_1.default(project.modulesDir); - const externalPackages = await p_filter_1.default(packageDirs, async (packageDir) => isExternalLink(ctx.storeDir, project.modulesDir, packageDir)); - const allDeps = manifest_utils_1.getAllDependenciesFromManifest(project.manifest); - const packagesToInstall = []; - for (const pkgName of externalPackages) { - await rimraf_1.default(path_1.default.join(project.modulesDir, pkgName)); - if (allDeps[pkgName]) { - packagesToInstall.push(pkgName); + const valKeys = [key]; + if (typeof val === "object") { + for (let j = i + 1; j < keys.length; j++) { + const key2 = keys[j]; + if (val === obj[key2]) { + valKeys.push(key2); } } - if (packagesToInstall.length === 0) - return projects; - await installCase({ ...project, mutation: "install" }); - break; } - case "unlinkSome": { - if (((_e2 = project.manifest) === null || _e2 === void 0 ? void 0 : _e2.name) && opts.globalBin) { - await remove_bins_1.removeBin(path_1.default.join(opts.globalBin, (_f2 = project.manifest) === null || _f2 === void 0 ? void 0 : _f2.name)); - } - const packagesToInstall = []; - const allDeps = manifest_utils_1.getAllDependenciesFromManifest(project.manifest); - for (const depName of project.dependencyNames) { - try { - if (!await isExternalLink(ctx.storeDir, project.modulesDir, depName)) { - logger_1.default.warn({ - message: `${depName} is not an external link`, - prefix: project.rootDir - }); - continue; - } - } catch (err) { - if (err["code"] !== "ENOENT") - throw err; - } - await rimraf_1.default(path_1.default.join(project.modulesDir, depName)); - if (allDeps[depName]) { - packagesToInstall.push(depName); - } - } - if (packagesToInstall.length === 0) - return projects; - await installSome({ - ...project, - dependencySelectors: packagesToInstall, - mutation: "installSome", - updatePackageManifest: false - }); - break; + const keyLine = valKeys.sort((_misc || _load_misc()).sortAlpha).map(maybeWrap).join(", "); + if (typeof val === "string" || typeof val === "boolean" || typeof val === "number") { + lines.push(`${keyLine} ${maybeWrap(val)}`); + } else if (typeof val === "object") { + lines.push(`${keyLine}: +${_stringify(val, { indent: indent + " " })}` + (options.topLevel ? "\n" : "")); + } else { + throw new TypeError(); } + addedKeys = addedKeys.concat(valKeys); } + return indent + lines.join(` +${indent}`); } - async function installCase(project) { - var _a3, _b3; - const wantedDependencies = getWantedDependencies_1.default(project.manifest, { - includeDirect: opts.includeDirect, - updateWorkspaceDependencies: opts.update, - nodeExecPath: opts.nodeExecPath - }).map((wantedDependency) => ({ ...wantedDependency, updateSpec: true })); - if ((_a3 = ctx.wantedLockfile) === null || _a3 === void 0 ? void 0 : _a3.importers) { - forgetResolutionsOfPrevWantedDeps(ctx.wantedLockfile.importers[project.id], wantedDependencies); + function stringify2(obj, noHeader, enableVersions) { + const val = _stringify(obj, { + indent: "", + topLevel: true + }); + if (noHeader) { + return val; } - if (opts.ignoreScripts && ((_b3 = project.manifest) === null || _b3 === void 0 ? void 0 : _b3.scripts) && (project.manifest.scripts.preinstall || project.manifest.scripts.install || project.manifest.scripts.postinstall || project.manifest.scripts.prepare)) { - ctx.pendingBuilds.push(project.id); + const lines = []; + lines.push("# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY."); + lines.push(`# yarn lockfile v${(_constants || _load_constants()).LOCKFILE_VERSION}`); + if (enableVersions) { + lines.push(`# yarn v${(_package || _load_package()).version}`); + lines.push(`# node ${NODE_VERSION}`); } - projectsToInstall.push({ - pruneDirectDependencies: false, - ...project, - wantedDependencies + lines.push("\n"); + lines.push(val); + return lines.join("\n"); + } + }, + , + , + , + , + , + , + , + , + , + , + , + , + , + /* 164 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true + }); + exports3.fileDatesEqual = exports3.copyFile = exports3.unlink = void 0; + var _asyncToGenerator2; + function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); + } + let fixTimes = (() => { + var _ref3 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (fd, dest, data) { + const doOpen = fd === void 0; + let openfd = fd ? fd : -1; + if (disableTimestampCorrection === void 0) { + const destStat = yield lstat(dest); + disableTimestampCorrection = fileDatesEqual(destStat.mtime, data.mtime); + } + if (disableTimestampCorrection) { + return; + } + if (doOpen) { + try { + openfd = yield open(dest, "a", data.mode); + } catch (er) { + try { + openfd = yield open(dest, "r", data.mode); + } catch (err) { + return; + } + } + } + try { + if (openfd) { + yield futimes(openfd, data.atime, data.mtime); + } + } catch (er) { + } finally { + if (doOpen && openfd) { + yield close(openfd); + } + } }); + return function fixTimes2(_x7, _x8, _x9) { + return _ref3.apply(this, arguments); + }; + })(); + var _fs; + function _load_fs() { + return _fs = _interopRequireDefault(__webpack_require__(3)); } - async function installSome(project) { - const currentPrefs = opts.ignoreCurrentPrefs ? {} : manifest_utils_1.getAllDependenciesFromManifest(project.manifest); - const optionalDependencies = project.targetDependenciesField ? {} : project.manifest.optionalDependencies || {}; - const devDependencies = project.targetDependenciesField ? {} : project.manifest.devDependencies || {}; - if (preferredSpecs == null) { - preferredSpecs = getPreferredVersions_1.getAllUniqueSpecs(flatten_1.default(Object.values(opts.workspacePackages).map((obj) => Object.values(obj))).map(({ manifest }) => manifest)); - } - const wantedDeps = parseWantedDependencies_1.default(project.dependencySelectors, { - allowNew: project.allowNew !== false, - currentPrefs, - defaultTag: opts.tag, - dev: project.targetDependenciesField === "devDependencies", - devDependencies, - optional: project.targetDependenciesField === "optionalDependencies", - optionalDependencies, - updateWorkspaceDependencies: opts.update, - preferredSpecs + var _promise; + function _load_promise() { + return _promise = __webpack_require__(40); + } + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + let disableTimestampCorrection = void 0; + const readFileBuffer = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.readFile); + const close = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.close); + const lstat = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.lstat); + const open = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.open); + const futimes = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.futimes); + const write = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.write); + const unlink = exports3.unlink = (0, (_promise || _load_promise()).promisify)(__webpack_require__(233)); + const copyFile = exports3.copyFile = (() => { + var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data, cleanup) { + try { + yield unlink(data.dest); + yield copyFilePoly(data.src, data.dest, 0, data); + } finally { + if (cleanup) { + cleanup(); + } + } }); - projectsToInstall.push({ - pruneDirectDependencies: false, - ...project, - wantedDependencies: wantedDeps.map((wantedDep) => ({ ...wantedDep, isNew: true, updateSpec: true, nodeExecPath: opts.nodeExecPath })) + return function copyFile2(_x, _x2) { + return _ref.apply(this, arguments); + }; + })(); + const copyFilePoly = (src, dest, flags, data) => { + if ((_fs || _load_fs()).default.copyFile) { + return new Promise((resolve, reject) => (_fs || _load_fs()).default.copyFile(src, dest, flags, (err) => { + if (err) { + reject(err); + } else { + fixTimes(void 0, dest, data).then(() => resolve()).catch((ex) => reject(ex)); + } + })); + } else { + return copyWithBuffer(src, dest, flags, data); + } + }; + const copyWithBuffer = (() => { + var _ref2 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest, flags, data) { + const fd = yield open(dest, "w", data.mode); + try { + const buffer = yield readFileBuffer(src); + yield write(fd, buffer, 0, buffer.length); + yield fixTimes(fd, dest, data); + } finally { + yield close(fd); + } }); - } - const makePartialCurrentLockfile = !installsOnly && (ctx.existsWantedLockfile && !ctx.existsCurrentLockfile || !ctx.currentLockfileIsUpToDate); - const result2 = await installInContext(projectsToInstall, ctx, { - ...opts, - currentLockfileIsUpToDate: !ctx.existsWantedLockfile || ctx.currentLockfileIsUpToDate, - makePartialCurrentLockfile, - needsFullResolution, - neverBuiltDependencies, - overrides, - pruneVirtualStore, - updateLockfileMinorVersion: true + return function copyWithBuffer2(_x3, _x4, _x5, _x6) { + return _ref2.apply(this, arguments); + }; + })(); + const fileDatesEqual = exports3.fileDatesEqual = (a, b) => { + const aTime = a.getTime(); + const bTime = b.getTime(); + if (process.platform !== "win32") { + return aTime === bTime; + } + if (Math.abs(aTime - bTime) <= 1) { + return true; + } + const aTimeSec = Math.floor(aTime / 1e3); + const bTimeSec = Math.floor(bTime / 1e3); + if (aTime - aTimeSec * 1e3 === 0 || bTime - bTimeSec * 1e3 === 0) { + return aTimeSec === bTimeSec; + } + return aTime === bTime; + }; + }, + , + , + , + , + /* 169 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true }); - if (!opts.ignoreScripts) { - if (opts.enablePnp) { - scriptsOpts.extraEnv = lifecycle_1.makeNodeRequireOption(path_1.default.join(opts.lockfileDir, ".pnp.cjs")); + exports3.isFakeRoot = isFakeRoot; + exports3.isRootUser = isRootUser; + function getUid() { + if (process.platform !== "win32" && process.getuid) { + return process.getuid(); } - await lifecycle_1.runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "prepare"], projectsToBeInstalled, opts.childConcurrency, scriptsOpts); + return null; } - return result2; - } - } - exports2.mutateModules = mutateModules; - function createObjectChecksum(obj) { - const s = JSON.stringify(obj); - return crypto_1.default.createHash("md5").update(s).digest("hex"); - } - exports2.createObjectChecksum = createObjectChecksum; - function createReadPackageHook({ lockfileDir, overrides, packageExtensions, readPackageHook }) { - const hooks = []; - if (!isEmpty_1.default(overrides !== null && overrides !== void 0 ? overrides : {})) { - hooks.push(createVersionsOverrider_1.default(overrides, lockfileDir)); - } - if (!isEmpty_1.default(packageExtensions !== null && packageExtensions !== void 0 ? packageExtensions : {})) { - hooks.push(createPackageExtender_1.default(packageExtensions)); - } - if (hooks.length === 0) { - return readPackageHook; - } - const readPackageAndExtend = hooks.length === 1 ? hooks[0] : pipe_1.default(hooks[0], hooks[1]); - if (readPackageHook != null) { - return (manifest, dir) => readPackageAndExtend(readPackageHook(manifest, dir), dir); - } - return readPackageAndExtend; - } - function cacheExpired(prunedAt, maxAgeInMinutes) { - return (Date.now() - new Date(prunedAt).valueOf()) / (1e3 * 60) > maxAgeInMinutes; - } - async function isExternalLink(storeDir, modules, pkgName) { - const link = await is_inner_link_1.default(modules, pkgName); - return !link.isInner; - } - function pkgHasDependencies(manifest) { - var _a, _b, _c; - return Boolean(Object.keys((_a = manifest.dependencies) !== null && _a !== void 0 ? _a : {}).length > 0 || Object.keys((_b = manifest.devDependencies) !== null && _b !== void 0 ? _b : {}).length || Object.keys((_c = manifest.optionalDependencies) !== null && _c !== void 0 ? _c : {}).length); - } - async function partitionLinkedPackages(dependencies, opts) { - var _a; - const nonLinkedDependencies = []; - const linkedAliases = new Set(); - for (const dependency of dependencies) { - if (!dependency.alias || ((_a = opts.workspacePackages) === null || _a === void 0 ? void 0 : _a[dependency.alias]) != null || dependency.pref.startsWith("workspace:")) { - nonLinkedDependencies.push(dependency); - continue; + exports3.default = isRootUser(getUid()) && !isFakeRoot(); + function isFakeRoot() { + return Boolean(process.env.FAKEROOTKEY); } - const isInnerLink = await safeIsInnerLink_1.default(opts.modulesDir, dependency.alias, { - hideAlienModules: !opts.lockfileOnly, - projectDir: opts.projectDir, - storeDir: opts.storeDir, - virtualStoreDir: opts.virtualStoreDir - }); - if (isInnerLink === true) { - nonLinkedDependencies.push(dependency); - continue; + function isRootUser(uid) { + return uid === 0; } - logger_1.default.info({ - message: `${dependency.alias} is linked to ${opts.modulesDir} from ${isInnerLink}`, - prefix: opts.projectDir + }, + , + /* 171 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + Object.defineProperty(exports3, "__esModule", { + value: true }); - linkedAliases.add(dependency.alias); - } - return { - linkedAliases, - nonLinkedDependencies - }; - } - function forgetResolutionsOfPrevWantedDeps(importer, wantedDeps) { - var _a, _b, _c, _d; - if (!importer.specifiers) - return; - importer.dependencies = (_a = importer.dependencies) !== null && _a !== void 0 ? _a : {}; - importer.devDependencies = (_b = importer.devDependencies) !== null && _b !== void 0 ? _b : {}; - importer.optionalDependencies = (_c = importer.optionalDependencies) !== null && _c !== void 0 ? _c : {}; - for (const { alias, pref } of wantedDeps) { - if (alias && importer.specifiers[alias] !== pref) { - if (!((_d = importer.dependencies[alias]) === null || _d === void 0 ? void 0 : _d.startsWith("link:"))) { - delete importer.dependencies[alias]; + exports3.getDataDir = getDataDir; + exports3.getCacheDir = getCacheDir; + exports3.getConfigDir = getConfigDir; + const path2 = __webpack_require__(0); + const userHome = __webpack_require__(45).default; + const FALLBACK_CONFIG_DIR = path2.join(userHome, ".config", "yarn"); + const FALLBACK_CACHE_DIR = path2.join(userHome, ".cache", "yarn"); + function getDataDir() { + if (process.platform === "win32") { + const WIN32_APPDATA_DIR = getLocalAppDataDir(); + return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path2.join(WIN32_APPDATA_DIR, "Data"); + } else if (process.env.XDG_DATA_HOME) { + return path2.join(process.env.XDG_DATA_HOME, "yarn"); + } else { + return FALLBACK_CONFIG_DIR; } - delete importer.devDependencies[alias]; - delete importer.optionalDependencies[alias]; - } - } - } - async function addDependenciesToPackage(manifest, dependencySelectors, opts) { - var _a, _b; - const projects = await mutateModules([ - { - allowNew: opts.allowNew, - dependencySelectors, - manifest, - mutation: "installSome", - peer: opts.peer, - pinnedVersion: opts.pinnedVersion, - rootDir: (_a = opts.dir) !== null && _a !== void 0 ? _a : process.cwd(), - targetDependenciesField: opts.targetDependenciesField } - ], { - ...opts, - lockfileDir: (_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : opts.dir - }); - return projects[0].manifest; - } - exports2.addDependenciesToPackage = addDependenciesToPackage; - var _installInContext = async (projects, ctx, opts) => { - var _a, _b, _c, _d, _e, _f; - if (opts.lockfileOnly && ctx.existsCurrentLockfile) { - logger_1.default.warn({ - message: "`node_modules` is present. Lockfile only installation will make it out-of-date", - prefix: ctx.lockfileDir - }); - } - ctx.wantedLockfile.importers = ctx.wantedLockfile.importers || {}; - for (const { id } of projects) { - if (!ctx.wantedLockfile.importers[id]) { - ctx.wantedLockfile.importers[id] = { specifiers: {} }; + function getCacheDir() { + if (process.platform === "win32") { + return path2.join(getLocalAppDataDir() || path2.join(userHome, "AppData", "Local", "Yarn"), "Cache"); + } else if (process.env.XDG_CACHE_HOME) { + return path2.join(process.env.XDG_CACHE_HOME, "yarn"); + } else if (process.platform === "darwin") { + return path2.join(userHome, "Library", "Caches", "Yarn"); + } else { + return FALLBACK_CACHE_DIR; + } } - } - if (opts.pruneLockfileImporters) { - const projectIds = new Set(projects.map(({ id }) => id)); - for (const wantedImporter of Object.keys(ctx.wantedLockfile.importers)) { - if (!projectIds.has(wantedImporter)) { - delete ctx.wantedLockfile.importers[wantedImporter]; + function getConfigDir() { + if (process.platform === "win32") { + const WIN32_APPDATA_DIR = getLocalAppDataDir(); + return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path2.join(WIN32_APPDATA_DIR, "Config"); + } else if (process.env.XDG_CONFIG_HOME) { + return path2.join(process.env.XDG_CONFIG_HOME, "yarn"); + } else { + return FALLBACK_CONFIG_DIR; } } - } - await Promise.all(projects.map(async (project) => { - if (project.mutation !== "uninstallSome") - return; - const _removeDeps = async (manifest) => removeDeps_1.default(manifest, project.dependencyNames, { prefix: project.rootDir, saveType: project.targetDependenciesField }); - project.manifest = await _removeDeps(project.manifest); - if (project.originalManifest != null) { - project.originalManifest = await _removeDeps(project.originalManifest); + function getLocalAppDataDir() { + return process.env.LOCALAPPDATA ? path2.join(process.env.LOCALAPPDATA, "Yarn") : null; } - })); - core_loggers_1.stageLogger.debug({ - prefix: ctx.lockfileDir, - stage: "resolution_started" - }); - const preferredVersions = (_a = opts.preferredVersions) !== null && _a !== void 0 ? _a : !opts.update && ctx.wantedLockfile.packages != null && !isEmpty_1.default(ctx.wantedLockfile.packages) ? getPreferredVersions_1.getPreferredVersionsFromLockfile(ctx.wantedLockfile.packages) : void 0; - const forceFullResolution = ctx.wantedLockfile.lockfileVersion !== constants_1.LOCKFILE_VERSION || !opts.currentLockfileIsUpToDate || opts.force || opts.needsFullResolution || ctx.lockfileHadConflicts; - const _toResolveImporter = toResolveImporter.bind(null, { - defaultUpdateDepth: opts.update || opts.updateMatching != null ? opts.depth : -1, - lockfileOnly: opts.lockfileOnly, - preferredVersions, - storeDir: ctx.storeDir, - updateAll: Boolean(opts.updateMatching), - virtualStoreDir: ctx.virtualStoreDir, - workspacePackages: opts.workspacePackages - }); - const projectsToResolve = await Promise.all(projects.map(async (project) => _toResolveImporter(project))); - if (opts.fixLockfile && ctx.wantedLockfile.packages != null && !isEmpty_1.default(ctx.wantedLockfile.packages)) { - ctx.wantedLockfile.packages = Object.entries(ctx.wantedLockfile.packages).reduce((pre, [depPath, snapshot]) => ({ - ...pre, - [depPath]: { - dependencies: snapshot.dependencies, - optionalDependencies: snapshot.optionalDependencies, - resolution: snapshot.resolution + }, + , + /* 173 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = { "default": __webpack_require__(179), __esModule: true }; + }, + /* 174 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + module3.exports = balanced; + function balanced(a, b, str) { + if (a instanceof RegExp) + a = maybeMatch(a, str); + if (b instanceof RegExp) + b = maybeMatch(b, str); + var r = range(a, b, str); + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; + } + function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; + } + balanced.range = range; + function range(a, b, str) { + var begs, beg, left, right, result2; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + if (ai >= 0 && bi > 0) { + begs = []; + left = str.length; + while (i >= 0 && !result2) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result2 = [begs.pop(), bi]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + bi = str.indexOf(b, i + 1); + } + i = ai < bi && ai >= 0 ? ai : bi; + } + if (begs.length) { + result2 = [left, right]; + } } - }), {}); - } - let { dependenciesGraph, dependenciesByProjectId, finishLockfileUpdates, linkedDependenciesByProjectId, newLockfile, outdatedDependencies, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish } = await resolve_dependencies_1.default(projectsToResolve, { - currentLockfile: ctx.currentLockfile, - dryRun: opts.lockfileOnly, - engineStrict: opts.engineStrict, - force: opts.force, - forceFullResolution, - hooks: opts.hooks, - linkWorkspacePackagesDepth: (_b = opts.linkWorkspacePackagesDepth) !== null && _b !== void 0 ? _b : opts.saveWorkspaceProtocol ? 0 : -1, - lockfileDir: opts.lockfileDir, - neverBuiltDependencies: new Set(opts.neverBuiltDependencies), - nodeVersion: opts.nodeVersion, - pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "", - preferWorkspacePackages: opts.preferWorkspacePackages, - preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol, - registries: opts.registries, - saveWorkspaceProtocol: opts.saveWorkspaceProtocol, - storeController: opts.storeController, - strictPeerDependencies: opts.strictPeerDependencies, - tag: opts.tag, - updateMatching: opts.updateMatching, - virtualStoreDir: ctx.virtualStoreDir, - wantedLockfile: ctx.wantedLockfile, - workspacePackages: opts.workspacePackages - }); - core_loggers_1.stageLogger.debug({ - prefix: ctx.lockfileDir, - stage: "resolution_done" - }); - newLockfile = ((_c = opts.hooks) === null || _c === void 0 ? void 0 : _c.afterAllResolved) != null ? (_d = opts.hooks) === null || _d === void 0 ? void 0 : _d.afterAllResolved(newLockfile) : newLockfile; - if (opts.updateLockfileMinorVersion) { - newLockfile.lockfileVersion = constants_1.LOCKFILE_VERSION; - } - const lockfileOpts = { forceSharedFormat: opts.forceSharedLockfile }; - if (!opts.lockfileOnly && opts.enableModulesDir) { - const result = await link_1.default(projectsToResolve, dependenciesGraph, { - currentLockfile: ctx.currentLockfile, - dependenciesByProjectId, - force: opts.force, - extendNodePath: opts.extendNodePath, - hoistedDependencies: ctx.hoistedDependencies, - hoistedModulesDir: ctx.hoistedModulesDir, - hoistPattern: ctx.hoistPattern, - include: opts.include, - linkedDependenciesByProjectId, - lockfileDir: opts.lockfileDir, - makePartialCurrentLockfile: opts.makePartialCurrentLockfile, - outdatedDependencies, - pruneStore: opts.pruneStore, - pruneVirtualStore: opts.pruneVirtualStore, - publicHoistPattern: ctx.publicHoistPattern, - registries: ctx.registries, - rootModulesDir: ctx.rootModulesDir, - sideEffectsCacheRead: opts.sideEffectsCacheRead, - symlink: opts.symlink, - skipped: ctx.skipped, - storeController: opts.storeController, - strictPeerDependencies: opts.strictPeerDependencies, - virtualStoreDir: ctx.virtualStoreDir, - wantedLockfile: newLockfile, - wantedToBeSkippedPackageIds - }); - await finishLockfileUpdates(); - if (opts.enablePnp) { - const importerNames = fromPairs_1.default(projects.map(({ manifest, id }) => { - var _a2; - return [id, (_a2 = manifest.name) !== null && _a2 !== void 0 ? _a2 : id]; - })); - await lockfile_to_pnp_1.writePnpFile(result.currentLockfile, { - importerNames, - lockfileDir: ctx.lockfileDir, - virtualStoreDir: ctx.virtualStoreDir, - registries: opts.registries - }); + return result2; + } + }, + /* 175 */ + /***/ + function(module3, exports3, __webpack_require__) { + var concatMap = __webpack_require__(178); + var balanced = __webpack_require__(174); + module3.exports = expandTop; + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + function numeric(str) { + return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + } + function unescapeBraces(str) { + return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + } + function parseCommaParts(str) { + if (!str) + return [""]; + var parts = []; + var m = balanced("{", "}", str); + if (!m) + return str.split(","); + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(","); + p[p.length - 1] += "{" + body + "}"; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length - 1] += postParts.shift(); + p.push.apply(p, postParts); + } + parts.push.apply(parts, p); + return parts; } - ctx.pendingBuilds = ctx.pendingBuilds.filter((relDepPath) => !result.removedDepPaths.has(relDepPath)); - if (opts.ignoreScripts) { - ctx.pendingBuilds = ctx.pendingBuilds.concat(result.newDepPaths.filter((depPath) => dependenciesGraph[depPath].requiresBuild)); - } else if ((_e = result.newDepPaths) === null || _e === void 0 ? void 0 : _e.length) { - const depPaths = Object.keys(dependenciesGraph); - const rootNodes = depPaths.filter((depPath) => dependenciesGraph[depPath].depth === 0); - let extraEnv; - if (opts.enablePnp) { - extraEnv = lifecycle_1.makeNodeRequireOption(path_1.default.join(opts.lockfileDir, ".pnp.cjs")); - } - await build_modules_1.default(dependenciesGraph, rootNodes, { - childConcurrency: opts.childConcurrency, - depsToBuild: new Set(result.newDepPaths), - extendNodePath: opts.extendNodePath, - extraBinPaths: ctx.extraBinPaths, - extraEnv, - lockfileDir: ctx.lockfileDir, - optional: opts.include.optionalDependencies, - rawConfig: opts.rawConfig, - rootModulesDir: ctx.virtualStoreDir, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - sideEffectsCacheWrite: opts.sideEffectsCacheWrite, - storeController: opts.storeController, - unsafePerm: opts.unsafePerm, - userAgent: opts.userAgent - }); + function expandTop(str) { + if (!str) + return []; + if (str.substr(0, 2) === "{}") { + str = "\\{\\}" + str.substr(2); + } + return expand(escapeBraces(str), true).map(unescapeBraces); } - const binWarn = (prefix, message2) => logger_1.default.info({ message: message2, prefix }); - if ((_f = result.newDepPaths) === null || _f === void 0 ? void 0 : _f.length) { - const newPkgs = props_1.default(result.newDepPaths, dependenciesGraph); - await linkAllBins(newPkgs, dependenciesGraph, { - optional: opts.include.optionalDependencies, - warn: binWarn.bind(null, opts.lockfileDir) - }); + function identity(e) { + return e; } - await Promise.all(projectsToResolve.map(async (project, index) => { - var _a2, _b2; - let linkedPackages; - if (((_a2 = ctx.publicHoistPattern) === null || _a2 === void 0 ? void 0 : _a2.length) && path_1.default.relative(project.rootDir, opts.lockfileDir) === "") { - const nodeExecPathByAlias = Object.entries((_b2 = project.manifest.dependenciesMeta) !== null && _b2 !== void 0 ? _b2 : {}).reduce((prev, [alias, { node }]) => { - if (node) { - prev[alias] = node; - } - return prev; - }, {}); - linkedPackages = await link_bins_1.default(project.modulesDir, project.binsDir, { - allowExoticManifests: true, - extendNodePath: opts.extendNodePath, - projectManifest: project.manifest, - nodeExecPathByAlias, - warn: binWarn.bind(null, project.rootDir) - }); + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function expand(str, isTop) { + var expansions = []; + var m = balanced("{", "}", str); + if (!m || /\$$/.test(m.pre)) + return [str]; + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (m.post.match(/,.*\}/)) { + str = m.pre + "{" + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + var n; + if (isSequence) { + n = m.body.split(/\.\./); } else { - const directPkgs = [ - ...props_1.default(Object.values(dependenciesByProjectId[project.id]).filter((depPath) => !ctx.skipped.has(depPath)), dependenciesGraph), - ...linkedDependenciesByProjectId[project.id].map(({ pkgId }) => ({ - dir: path_1.default.join(project.rootDir, pkgId.substring(5)), - fetchingBundledManifest: void 0 - })) - ]; - linkedPackages = await link_bins_1.linkBinsOfPackages((await Promise.all(directPkgs.map(async (dep) => { - var _a3, _b3, _c2, _d2; - const manifest = (_b3 = await ((_a3 = dep.fetchingBundledManifest) === null || _a3 === void 0 ? void 0 : _a3.call(dep))) !== null && _b3 !== void 0 ? _b3 : await read_project_manifest_1.safeReadProjectManifestOnly(dep.dir); - return { - location: dep.dir, - manifest, - nodeExecPath: (_d2 = (_c2 = project.manifest.dependenciesMeta) === null || _c2 === void 0 ? void 0 : _c2[manifest.name]) === null || _d2 === void 0 ? void 0 : _d2.node - }; - }))).filter(({ manifest }) => manifest != null), project.binsDir, { extendNodePath: opts.extendNodePath, warn: binWarn.bind(null, project.rootDir) }); + n = parseCommaParts(m.body); + if (n.length === 1) { + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + var post = m.post.length ? expand(m.post, false) : [""]; + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } } - const projectToInstall = projects[index]; - if (opts.global && projectToInstall.mutation.includes("install")) { - projectToInstall.wantedDependencies.forEach((pkg) => { - if (!(linkedPackages === null || linkedPackages === void 0 ? void 0 : linkedPackages.includes(pkg.alias))) { - logger_1.default.warn({ message: `${pkg.alias} has no binaries`, prefix: opts.lockfileDir }); + var pre = m.pre; + var post = m.post.length ? expand(m.post, false) : [""]; + var N; + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length); + var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + N = []; + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") + c = ""; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join("0"); + if (i < 0) + c = "-" + z + c.slice(1); + else + c = z + c; + } + } } + N.push(c); + } + } else { + N = concatMap(n, function(el) { + return expand(el, false); }); } - })); - await Promise.all([ - opts.useLockfile ? lockfile_file_1.writeLockfiles({ - currentLockfile: result.currentLockfile, - currentLockfileDir: ctx.virtualStoreDir, - wantedLockfile: newLockfile, - wantedLockfileDir: ctx.lockfileDir, - ...lockfileOpts - }) : lockfile_file_1.writeCurrentLockfile(ctx.virtualStoreDir, result.currentLockfile, lockfileOpts), - (async () => { - if (result.currentLockfile.packages === void 0 && result.removedDepPaths.size === 0) { - return Promise.resolve(); + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); } - return modules_yaml_1.write(ctx.rootModulesDir, { - ...ctx.modulesFile, - hoistedDependencies: result.newHoistedDependencies, - hoistPattern: ctx.hoistPattern, - included: ctx.include, - layoutVersion: constants_1.LAYOUT_VERSION, - packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, - pendingBuilds: ctx.pendingBuilds, - publicHoistPattern: ctx.publicHoistPattern, - prunedAt: opts.pruneVirtualStore || ctx.modulesFile == null ? new Date().toUTCString() : ctx.modulesFile.prunedAt, - registries: ctx.registries, - skipped: Array.from(ctx.skipped), - storeDir: ctx.storeDir, - virtualStoreDir: ctx.virtualStoreDir - }); - })() - ]); - } else { - await finishLockfileUpdates(); - await lockfile_file_1.writeWantedLockfile(ctx.lockfileDir, newLockfile, lockfileOpts); - core_loggers_1.stageLogger.debug({ - prefix: opts.lockfileDir, - stage: "importing_done" - }); - } - await waitTillAllFetchingsFinish(); - core_loggers_1.summaryLogger.debug({ prefix: opts.lockfileDir }); - await opts.storeController.close(); - return projectsToResolve.map(({ manifest, rootDir }) => ({ rootDir, manifest })); - }; - var installInContext = async (projects, ctx, opts) => { - try { - return await _installInContext(projects, ctx, opts); - } catch (error) { - if (!BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code)) - throw error; - opts.needsFullResolution = true; - opts.update = true; - logger_1.default.warn({ - error, - message: error.message, - prefix: ctx.lockfileDir + } + return expansions; + } + }, + /* 176 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + function preserveCamelCase(str) { + let isLastCharLower = false; + let isLastCharUpper = false; + let isLastLastCharUpper = false; + for (let i = 0; i < str.length; i++) { + const c = str[i]; + if (isLastCharLower && /[a-zA-Z]/.test(c) && c.toUpperCase() === c) { + str = str.substr(0, i) + "-" + str.substr(i); + isLastCharLower = false; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = true; + i++; + } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(c) && c.toLowerCase() === c) { + str = str.substr(0, i - 1) + "-" + str.substr(i - 1); + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = false; + isLastCharLower = true; + } else { + isLastCharLower = c.toLowerCase() === c; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = c.toUpperCase() === c; + } + } + return str; + } + module3.exports = function(str) { + if (arguments.length > 1) { + str = Array.from(arguments).map((x) => x.trim()).filter((x) => x.length).join("-"); + } else { + str = str.trim(); + } + if (str.length === 0) { + return ""; + } + if (str.length === 1) { + return str.toLowerCase(); + } + if (/^[a-z0-9]+$/.test(str)) { + return str; + } + const hasUpperCase = str !== str.toLowerCase(); + if (hasUpperCase) { + str = preserveCamelCase(str); + } + return str.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, (m, p1) => p1.toUpperCase()); + }; + }, + , + /* 178 */ + /***/ + function(module3, exports3) { + module3.exports = function(xs, fn2) { + var res = []; + for (var i = 0; i < xs.length; i++) { + var x = fn2(xs[i], i); + if (isArray(x)) + res.push.apply(res, x); + else + res.push(x); + } + return res; + }; + var isArray = Array.isArray || function(xs) { + return Object.prototype.toString.call(xs) === "[object Array]"; + }; + }, + /* 179 */ + /***/ + function(module3, exports3, __webpack_require__) { + __webpack_require__(205); + __webpack_require__(207); + __webpack_require__(210); + __webpack_require__(206); + __webpack_require__(208); + __webpack_require__(209); + module3.exports = __webpack_require__(23).Promise; + }, + /* 180 */ + /***/ + function(module3, exports3) { + module3.exports = function() { + }; + }, + /* 181 */ + /***/ + function(module3, exports3) { + module3.exports = function(it, Constructor, name, forbiddenField) { + if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { + throw TypeError(name + ": incorrect invocation!"); + } + return it; + }; + }, + /* 182 */ + /***/ + function(module3, exports3, __webpack_require__) { + var toIObject = __webpack_require__(74); + var toLength = __webpack_require__(110); + var toAbsoluteIndex = __webpack_require__(200); + module3.exports = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = toIObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + }, + /* 183 */ + /***/ + function(module3, exports3, __webpack_require__) { + var ctx = __webpack_require__(48); + var call = __webpack_require__(187); + var isArrayIter = __webpack_require__(186); + var anObject = __webpack_require__(27); + var toLength = __webpack_require__(110); + var getIterFn = __webpack_require__(203); + var BREAK = {}; + var RETURN = {}; + var exports3 = module3.exports = function(iterable, entries, fn2, that, ITERATOR) { + var iterFn = ITERATOR ? function() { + return iterable; + } : getIterFn(iterable); + var f = ctx(fn2, that, entries ? 2 : 1); + var index = 0; + var length, step, iterator, result2; + if (typeof iterFn != "function") + throw TypeError(iterable + " is not iterable!"); + if (isArrayIter(iterFn)) + for (length = toLength(iterable.length); length > index; index++) { + result2 = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); + if (result2 === BREAK || result2 === RETURN) + return result2; + } + else + for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { + result2 = call(iterator, f, step.value, entries); + if (result2 === BREAK || result2 === RETURN) + return result2; + } + }; + exports3.BREAK = BREAK; + exports3.RETURN = RETURN; + }, + /* 184 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = !__webpack_require__(33) && !__webpack_require__(85)(function() { + return Object.defineProperty(__webpack_require__(68)("div"), "a", { get: function() { + return 7; + } }).a != 7; }); - logger_1.default.error(new error_1.default(error.code, "The lockfile is broken! A full installation will be performed in an attempt to fix it.")); - return _installInContext(projects, ctx, opts); - } - }; - async function toResolveImporter(opts, project) { - var _a, _b, _c; - const allDeps = getWantedDependencies_1.default(project.manifest); - const { nonLinkedDependencies } = await partitionLinkedPackages(allDeps, { - lockfileOnly: opts.lockfileOnly, - modulesDir: project.modulesDir, - projectDir: project.rootDir, - storeDir: opts.storeDir, - virtualStoreDir: opts.virtualStoreDir, - workspacePackages: opts.workspacePackages - }); - const existingDeps = nonLinkedDependencies.filter(({ alias }) => !project.wantedDependencies.some((wantedDep) => wantedDep.alias === alias)); - let wantedDependencies; - if (!project.manifest) { - wantedDependencies = [ - ...project.wantedDependencies, - ...existingDeps - ].map((dep) => ({ - ...dep, - updateDepth: opts.defaultUpdateDepth - })); - } else { - const updateLocalTarballs = (dep) => ({ - ...dep, - updateDepth: opts.updateAll ? opts.defaultUpdateDepth : prefIsLocalTarball(dep.pref) ? 0 : -1 + }, + /* 185 */ + /***/ + function(module3, exports3) { + module3.exports = function(fn2, args2, that) { + var un = that === void 0; + switch (args2.length) { + case 0: + return un ? fn2() : fn2.call(that); + case 1: + return un ? fn2(args2[0]) : fn2.call(that, args2[0]); + case 2: + return un ? fn2(args2[0], args2[1]) : fn2.call(that, args2[0], args2[1]); + case 3: + return un ? fn2(args2[0], args2[1], args2[2]) : fn2.call(that, args2[0], args2[1], args2[2]); + case 4: + return un ? fn2(args2[0], args2[1], args2[2], args2[3]) : fn2.call(that, args2[0], args2[1], args2[2], args2[3]); + } + return fn2.apply(that, args2); + }; + }, + /* 186 */ + /***/ + function(module3, exports3, __webpack_require__) { + var Iterators = __webpack_require__(35); + var ITERATOR = __webpack_require__(13)("iterator"); + var ArrayProto = Array.prototype; + module3.exports = function(it) { + return it !== void 0 && (Iterators.Array === it || ArrayProto[ITERATOR] === it); + }; + }, + /* 187 */ + /***/ + function(module3, exports3, __webpack_require__) { + var anObject = __webpack_require__(27); + module3.exports = function(iterator, fn2, value, entries) { + try { + return entries ? fn2(anObject(value)[0], value[1]) : fn2(value); + } catch (e) { + var ret = iterator["return"]; + if (ret !== void 0) + anObject(ret.call(iterator)); + throw e; + } + }; + }, + /* 188 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var create = __webpack_require__(192); + var descriptor = __webpack_require__(106); + var setToStringTag = __webpack_require__(71); + var IteratorPrototype = {}; + __webpack_require__(31)(IteratorPrototype, __webpack_require__(13)("iterator"), function() { + return this; }); - wantedDependencies = [ - ...project.wantedDependencies.map(opts.defaultUpdateDepth < 0 ? updateLocalTarballs : (dep) => ({ ...dep, updateDepth: opts.defaultUpdateDepth })), - ...existingDeps.map(updateLocalTarballs) - ]; - } - return { - ...project, - hasRemovedDependencies: Boolean((_a = project.removePackages) === null || _a === void 0 ? void 0 : _a.length), - preferredVersions: (_c = (_b = opts.preferredVersions) !== null && _b !== void 0 ? _b : project.manifest && getPreferredVersions_1.default(project.manifest)) !== null && _c !== void 0 ? _c : {}, - wantedDependencies - }; - } - function prefIsLocalTarball(pref) { - return pref.startsWith("file:") && pref.endsWith(".tgz"); - } - var limitLinking = p_limit_1.default(16); - async function linkAllBins(depNodes, depGraph, opts) { - return unnest_1.default(await Promise.all(depNodes.map(async (depNode) => limitLinking(async () => build_modules_1.linkBinsOfDependencies(depNode, depGraph, opts))))); - } - } -}); - -// ../supi/lib/api.js -var require_api = __commonJS({ - "../supi/lib/api.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.link = void 0; - var link_1 = __importDefault(require_link()); - exports2.link = link_1.default; - __exportStar(require_install(), exports2); - __exportStar(require_link(), exports2); - } -}); - -// ../supi/lib/index.js -var require_lib88 = __commonJS({ - "../supi/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.UnexpectedVirtualStoreDirError = exports2.UnexpectedStoreError = void 0; - __exportStar(require_api(), exports2); - var get_context_1 = require_lib67(); - Object.defineProperty(exports2, "UnexpectedStoreError", { enumerable: true, get: function() { - return get_context_1.UnexpectedStoreError; - } }); - Object.defineProperty(exports2, "UnexpectedVirtualStoreDirError", { enumerable: true, get: function() { - return get_context_1.UnexpectedVirtualStoreDirError; - } }); - } -}); - -// ../../node_modules/.pnpm/@yarnpkg+lockfile@1.1.0/node_modules/@yarnpkg/lockfile/index.js -var require_lockfile = __commonJS({ - "../../node_modules/.pnpm/@yarnpkg+lockfile@1.1.0/node_modules/@yarnpkg/lockfile/index.js"(exports2, module2) { - module2.exports = function(modules) { - var installedModules = {}; - function __webpack_require__(moduleId) { - if (installedModules[moduleId]) { - return installedModules[moduleId].exports; - } - var module3 = installedModules[moduleId] = { - i: moduleId, - l: false, - exports: {} + module3.exports = function(Constructor, NAME, next) { + Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); + setToStringTag(Constructor, NAME + " Iterator"); }; - modules[moduleId].call(module3.exports, module3, module3.exports, __webpack_require__); - module3.l = true; - return module3.exports; - } - __webpack_require__.m = modules; - __webpack_require__.c = installedModules; - __webpack_require__.i = function(value) { - return value; - }; - __webpack_require__.d = function(exports3, name, getter) { - if (!__webpack_require__.o(exports3, name)) { - Object.defineProperty(exports3, name, { - configurable: false, - enumerable: true, - get: getter + }, + /* 189 */ + /***/ + function(module3, exports3, __webpack_require__) { + var ITERATOR = __webpack_require__(13)("iterator"); + var SAFE_CLOSING = false; + try { + var riter = [7][ITERATOR](); + riter["return"] = function() { + SAFE_CLOSING = true; + }; + Array.from(riter, function() { + throw 2; }); + } catch (e) { } - }; - __webpack_require__.n = function(module3) { - var getter = module3 && module3.__esModule ? function getDefault() { - return module3["default"]; - } : function getModuleExports() { - return module3; + module3.exports = function(exec, skipClosing) { + if (!skipClosing && !SAFE_CLOSING) + return false; + var safe = false; + try { + var arr = [7]; + var iter = arr[ITERATOR](); + iter.next = function() { + return { done: safe = true }; + }; + arr[ITERATOR] = function() { + return iter; + }; + exec(arr); + } catch (e) { + } + return safe; }; - __webpack_require__.d(getter, "a", getter); - return getter; - }; - __webpack_require__.o = function(object, property) { - return Object.prototype.hasOwnProperty.call(object, property); - }; - __webpack_require__.p = ""; - return __webpack_require__(__webpack_require__.s = 14); - }([ + }, + /* 190 */ + /***/ function(module3, exports3) { - module3.exports = require("path"); + module3.exports = function(done, value) { + return { value, done: !!done }; + }; + }, + /* 191 */ + /***/ + function(module3, exports3, __webpack_require__) { + var global2 = __webpack_require__(11); + var macrotask = __webpack_require__(109).set; + var Observer = global2.MutationObserver || global2.WebKitMutationObserver; + var process2 = global2.process; + var Promise2 = global2.Promise; + var isNode = __webpack_require__(47)(process2) == "process"; + module3.exports = function() { + var head, last, notify; + var flush = function() { + var parent, fn2; + if (isNode && (parent = process2.domain)) + parent.exit(); + while (head) { + fn2 = head.fn; + head = head.next; + try { + fn2(); + } catch (e) { + if (head) + notify(); + else + last = void 0; + throw e; + } + } + last = void 0; + if (parent) + parent.enter(); + }; + if (isNode) { + notify = function() { + process2.nextTick(flush); + }; + } else if (Observer && !(global2.navigator && global2.navigator.standalone)) { + var toggle = true; + var node = document.createTextNode(""); + new Observer(flush).observe(node, { characterData: true }); + notify = function() { + node.data = toggle = !toggle; + }; + } else if (Promise2 && Promise2.resolve) { + var promise = Promise2.resolve(void 0); + notify = function() { + promise.then(flush); + }; + } else { + notify = function() { + macrotask.call(global2, flush); + }; + } + return function(fn2) { + var task = { fn: fn2, next: void 0 }; + if (last) + last.next = task; + if (!head) { + head = task; + notify(); + } + last = task; + }; + }; + }, + /* 192 */ + /***/ + function(module3, exports3, __webpack_require__) { + var anObject = __webpack_require__(27); + var dPs = __webpack_require__(193); + var enumBugKeys = __webpack_require__(101); + var IE_PROTO = __webpack_require__(72)("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE = "prototype"; + var createDict = function() { + var iframe = __webpack_require__(68)("iframe"); + var i = enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + __webpack_require__(102).appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i--) + delete createDict[PROTOTYPE][enumBugKeys[i]]; + return createDict(); + }; + module3.exports = Object.create || function create(O, Properties) { + var result2; + if (O !== null) { + Empty[PROTOTYPE] = anObject(O); + result2 = new Empty(); + Empty[PROTOTYPE] = null; + result2[IE_PROTO] = O; + } else + result2 = createDict(); + return Properties === void 0 ? result2 : dPs(result2, Properties); + }; + }, + /* 193 */ + /***/ + function(module3, exports3, __webpack_require__) { + var dP = __webpack_require__(50); + var anObject = __webpack_require__(27); + var getKeys = __webpack_require__(132); + module3.exports = __webpack_require__(33) ? Object.defineProperties : function defineProperties(O, Properties) { + anObject(O); + var keys = getKeys(Properties); + var length = keys.length; + var i = 0; + var P; + while (length > i) + dP.f(O, P = keys[i++], Properties[P]); + return O; + }; + }, + /* 194 */ + /***/ + function(module3, exports3, __webpack_require__) { + var has = __webpack_require__(49); + var toObject = __webpack_require__(133); + var IE_PROTO = __webpack_require__(72)("IE_PROTO"); + var ObjectProto = Object.prototype; + module3.exports = Object.getPrototypeOf || function(O) { + O = toObject(O); + if (has(O, IE_PROTO)) + return O[IE_PROTO]; + if (typeof O.constructor == "function" && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto : null; + }; + }, + /* 195 */ + /***/ + function(module3, exports3, __webpack_require__) { + var has = __webpack_require__(49); + var toIObject = __webpack_require__(74); + var arrayIndexOf = __webpack_require__(182)(false); + var IE_PROTO = __webpack_require__(72)("IE_PROTO"); + module3.exports = function(object, names) { + var O = toIObject(object); + var i = 0; + var result2 = []; + var key; + for (key in O) + if (key != IE_PROTO) + has(O, key) && result2.push(key); + while (names.length > i) + if (has(O, key = names[i++])) { + ~arrayIndexOf(result2, key) || result2.push(key); + } + return result2; + }; + }, + /* 196 */ + /***/ + function(module3, exports3, __webpack_require__) { + var hide = __webpack_require__(31); + module3.exports = function(target, src, safe) { + for (var key in src) { + if (safe && target[key]) + target[key] = src[key]; + else + hide(target, key, src[key]); + } + return target; + }; + }, + /* 197 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = __webpack_require__(31); }, + /* 198 */ + /***/ function(module3, exports3, __webpack_require__) { "use strict"; - exports3.__esModule = true; - var _promise = __webpack_require__(173); - var _promise2 = _interopRequireDefault(_promise); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - exports3.default = function(fn2) { - return function() { - var gen = fn2.apply(this, arguments); - return new _promise2.default(function(resolve, reject) { - function step(key, arg) { - try { - var info = gen[key](arg); - var value = info.value; - } catch (error) { - reject(error); - return; - } - if (info.done) { - resolve(value); - } else { - return _promise2.default.resolve(value).then(function(value2) { - step("next", value2); - }, function(err) { - step("throw", err); - }); - } + var global2 = __webpack_require__(11); + var core = __webpack_require__(23); + var dP = __webpack_require__(50); + var DESCRIPTORS = __webpack_require__(33); + var SPECIES = __webpack_require__(13)("species"); + module3.exports = function(KEY) { + var C = typeof core[KEY] == "function" ? core[KEY] : global2[KEY]; + if (DESCRIPTORS && C && !C[SPECIES]) + dP.f(C, SPECIES, { + configurable: true, + get: function() { + return this; } - return step("next"); }); + }; + }, + /* 199 */ + /***/ + function(module3, exports3, __webpack_require__) { + var toInteger = __webpack_require__(73); + var defined = __webpack_require__(67); + module3.exports = function(TO_STRING) { + return function(that, pos) { + var s = String(defined(that)); + var i = toInteger(pos); + var l = s.length; + var a, b; + if (i < 0 || i >= l) + return TO_STRING ? "" : void 0; + a = s.charCodeAt(i); + return a < 55296 || a > 56319 || i + 1 === l || (b = s.charCodeAt(i + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 55296 << 10) + (b - 56320) + 65536; }; }; }, - function(module3, exports3) { - module3.exports = require("util"); + /* 200 */ + /***/ + function(module3, exports3, __webpack_require__) { + var toInteger = __webpack_require__(73); + var max = Math.max; + var min = Math.min; + module3.exports = function(index, length) { + index = toInteger(index); + return index < 0 ? max(index + length, 0) : min(index, length); + }; }, - function(module3, exports3) { - module3.exports = require("fs"); + /* 201 */ + /***/ + function(module3, exports3, __webpack_require__) { + var isObject = __webpack_require__(34); + module3.exports = function(it, S) { + if (!isObject(it)) + return it; + var fn2, val; + if (S && typeof (fn2 = it.toString) == "function" && !isObject(val = fn2.call(it))) + return val; + if (typeof (fn2 = it.valueOf) == "function" && !isObject(val = fn2.call(it))) + return val; + if (!S && typeof (fn2 = it.toString) == "function" && !isObject(val = fn2.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + }, + /* 202 */ + /***/ + function(module3, exports3, __webpack_require__) { + var global2 = __webpack_require__(11); + var navigator2 = global2.navigator; + module3.exports = navigator2 && navigator2.userAgent || ""; }, + /* 203 */ + /***/ + function(module3, exports3, __webpack_require__) { + var classof = __webpack_require__(100); + var ITERATOR = __webpack_require__(13)("iterator"); + var Iterators = __webpack_require__(35); + module3.exports = __webpack_require__(23).getIteratorMethod = function(it) { + if (it != void 0) + return it[ITERATOR] || it["@@iterator"] || Iterators[classof(it)]; + }; + }, + /* 204 */ + /***/ function(module3, exports3, __webpack_require__) { "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - class MessageError extends Error { - constructor(msg, code) { - super(msg); - this.code = code; - } - } - exports3.MessageError = MessageError; - class ProcessSpawnError extends MessageError { - constructor(msg, code, process2) { - super(msg, code); - this.process = process2; - } - } - exports3.ProcessSpawnError = ProcessSpawnError; - class SecurityError extends MessageError { - } - exports3.SecurityError = SecurityError; - class ProcessTermError extends MessageError { - } - exports3.ProcessTermError = ProcessTermError; - class ResponseError extends Error { - constructor(msg, responseCode) { - super(msg); - this.responseCode = responseCode; + var addToUnscopables = __webpack_require__(180); + var step = __webpack_require__(190); + var Iterators = __webpack_require__(35); + var toIObject = __webpack_require__(74); + module3.exports = __webpack_require__(103)(Array, "Array", function(iterated, kind) { + this._t = toIObject(iterated); + this._i = 0; + this._k = kind; + }, function() { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = void 0; + return step(1); } - } - exports3.ResponseError = ResponseError; + if (kind == "keys") + return step(0, index); + if (kind == "values") + return step(0, O[index]); + return step(0, [index, O[index]]); + }, "values"); + Iterators.Arguments = Iterators.Array; + addToUnscopables("keys"); + addToUnscopables("values"); + addToUnscopables("entries"); + }, + /* 205 */ + /***/ + function(module3, exports3) { }, + /* 206 */ + /***/ function(module3, exports3, __webpack_require__) { "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.getFirstSuitableFolder = exports3.readFirstAvailableStream = exports3.makeTempDir = exports3.hardlinksWork = exports3.writeFilePreservingEol = exports3.getFileSizeOnDisk = exports3.walk = exports3.symlink = exports3.find = exports3.readJsonAndFile = exports3.readJson = exports3.readFileAny = exports3.hardlinkBulk = exports3.copyBulk = exports3.unlink = exports3.glob = exports3.link = exports3.chmod = exports3.lstat = exports3.exists = exports3.mkdirp = exports3.stat = exports3.access = exports3.rename = exports3.readdir = exports3.realpath = exports3.readlink = exports3.writeFile = exports3.open = exports3.readFileBuffer = exports3.lockQueue = exports3.constants = void 0; - var _asyncToGenerator2; - function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); - } - let buildActionsForCopy = (() => { - var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { - let build = (() => { - var _ref5 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - const src = data.src, dest = data.dest, type = data.type; - const onFresh = data.onFresh || noop; - const onDone = data.onDone || noop; - if (files.has(dest.toLowerCase())) { - reporter.verbose(`The case-insensitive file ${dest} shouldn't be copied twice in one bulk copy`); - } else { - files.add(dest.toLowerCase()); - } - if (type === "symlink") { - yield mkdirp((_path || _load_path()).default.dirname(dest)); - onFresh(); - actions.symlink.push({ - dest, - linkname: src - }); - onDone(); - return; - } - if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { - return; - } - const srcStat = yield lstat(src); - let srcFiles; - if (srcStat.isDirectory()) { - srcFiles = yield readdir(src); - } - let destStat; - try { - destStat = yield lstat(dest); - } catch (e) { - if (e.code !== "ENOENT") { - throw e; - } - } - if (destStat) { - const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); - const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); - const bothFiles = srcStat.isFile() && destStat.isFile(); - if (bothFiles && artifactFiles.has(dest)) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkipArtifact", src)); - return; - } - if (bothFiles && srcStat.size === destStat.size && (0, (_fsNormalized || _load_fsNormalized()).fileDatesEqual)(srcStat.mtime, destStat.mtime)) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkip", src, dest, srcStat.size, +srcStat.mtime)); - return; - } - if (bothSymlinks) { - const srcReallink = yield readlink(src); - if (srcReallink === (yield readlink(dest))) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkipSymlink", src, dest, srcReallink)); - return; - } - } - if (bothFolders) { - const destFiles = yield readdir(dest); - invariant(srcFiles, "src files not initialised"); - for (var _iterator4 = destFiles, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator](); ; ) { - var _ref6; - if (_isArray4) { - if (_i4 >= _iterator4.length) - break; - _ref6 = _iterator4[_i4++]; - } else { - _i4 = _iterator4.next(); - if (_i4.done) - break; - _ref6 = _i4.value; - } - const file = _ref6; - if (srcFiles.indexOf(file) < 0) { - const loc = (_path || _load_path()).default.join(dest, file); - possibleExtraneous.add(loc); - if ((yield lstat(loc)).isDirectory()) { - for (var _iterator5 = yield readdir(loc), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator](); ; ) { - var _ref7; - if (_isArray5) { - if (_i5 >= _iterator5.length) - break; - _ref7 = _iterator5[_i5++]; - } else { - _i5 = _iterator5.next(); - if (_i5.done) - break; - _ref7 = _i5.value; - } - const file2 = _ref7; - possibleExtraneous.add((_path || _load_path()).default.join(loc, file2)); - } - } - } - } - } - } - if (destStat && destStat.isSymbolicLink()) { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); - destStat = null; - } - if (srcStat.isSymbolicLink()) { - onFresh(); - const linkname = yield readlink(src); - actions.symlink.push({ - dest, - linkname - }); - onDone(); - } else if (srcStat.isDirectory()) { - if (!destStat) { - reporter.verbose(reporter.lang("verboseFileFolder", dest)); - yield mkdirp(dest); - } - const destParts = dest.split((_path || _load_path()).default.sep); - while (destParts.length) { - files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); - destParts.pop(); - } - invariant(srcFiles, "src files not initialised"); - let remaining = srcFiles.length; - if (!remaining) { - onDone(); + var LIBRARY = __webpack_require__(69); + var global2 = __webpack_require__(11); + var ctx = __webpack_require__(48); + var classof = __webpack_require__(100); + var $export = __webpack_require__(41); + var isObject = __webpack_require__(34); + var aFunction = __webpack_require__(46); + var anInstance = __webpack_require__(181); + var forOf = __webpack_require__(183); + var speciesConstructor = __webpack_require__(108); + var task = __webpack_require__(109).set; + var microtask = __webpack_require__(191)(); + var newPromiseCapabilityModule = __webpack_require__(70); + var perform = __webpack_require__(104); + var userAgent = __webpack_require__(202); + var promiseResolve = __webpack_require__(105); + var PROMISE = "Promise"; + var TypeError2 = global2.TypeError; + var process2 = global2.process; + var versions = process2 && process2.versions; + var v8 = versions && versions.v8 || ""; + var $Promise = global2[PROMISE]; + var isNode = classof(process2) == "process"; + var empty = function() { + }; + var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; + var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; + var USE_NATIVE = !!function() { + try { + var promise = $Promise.resolve(1); + var FakePromise = (promise.constructor = {})[__webpack_require__(13)("species")] = function(exec) { + exec(empty, empty); + }; + return (isNode || typeof PromiseRejectionEvent == "function") && promise.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && userAgent.indexOf("Chrome/66") === -1; + } catch (e) { + } + }(); + var isThenable = function(it) { + var then; + return isObject(it) && typeof (then = it.then) == "function" ? then : false; + }; + var notify = function(promise, isReject) { + if (promise._n) + return; + promise._n = true; + var chain = promise._c; + microtask(function() { + var value = promise._v; + var ok = promise._s == 1; + var i = 0; + var run = function(reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve = reaction.resolve; + var reject = reaction.reject; + var domain = reaction.domain; + var result2, then, exited; + try { + if (handler) { + if (!ok) { + if (promise._h == 2) + onHandleUnhandled(promise); + promise._h = 1; } - for (var _iterator6 = srcFiles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator](); ; ) { - var _ref8; - if (_isArray6) { - if (_i6 >= _iterator6.length) - break; - _ref8 = _iterator6[_i6++]; - } else { - _i6 = _iterator6.next(); - if (_i6.done) - break; - _ref8 = _i6.value; + if (handler === true) + result2 = value; + else { + if (domain) + domain.enter(); + result2 = handler(value); + if (domain) { + domain.exit(); + exited = true; } - const file = _ref8; - queue.push({ - dest: (_path || _load_path()).default.join(dest, file), - onFresh, - onDone: function(_onDone) { - function onDone2() { - return _onDone.apply(this, arguments); - } - onDone2.toString = function() { - return _onDone.toString(); - }; - return onDone2; - }(function() { - if (--remaining === 0) { - onDone(); - } - }), - src: (_path || _load_path()).default.join(src, file) - }); } - } else if (srcStat.isFile()) { - onFresh(); - actions.file.push({ - src, - dest, - atime: srcStat.atime, - mtime: srcStat.mtime, - mode: srcStat.mode - }); - onDone(); - } else { - throw new Error(`unsure how to copy this: ${src}`); - } - }); - return function build2(_x5) { - return _ref5.apply(this, arguments); - }; - })(); - const artifactFiles = new Set(events.artifactFiles || []); - const files = new Set(); - for (var _iterator = queue, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { - var _ref2; - if (_isArray) { - if (_i >= _iterator.length) - break; - _ref2 = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) - break; - _ref2 = _i.value; + if (result2 === reaction.promise) { + reject(TypeError2("Promise-chain cycle")); + } else if (then = isThenable(result2)) { + then.call(result2, resolve, reject); + } else + resolve(result2); + } else + reject(value); + } catch (e) { + if (domain && !exited) + domain.exit(); + reject(e); } - const item = _ref2; - const onDone = item.onDone; - item.onDone = function() { - events.onProgress(item.dest); - if (onDone) { - onDone(); - } - }; - } - events.onStart(queue.length); - const actions = { - file: [], - symlink: [], - link: [] }; - while (queue.length) { - const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); - yield Promise.all(items.map(build)); - } - for (var _iterator2 = artifactFiles, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) { - var _ref3; - if (_isArray2) { - if (_i2 >= _iterator2.length) - break; - _ref3 = _iterator2[_i2++]; - } else { - _i2 = _iterator2.next(); - if (_i2.done) - break; - _ref3 = _i2.value; - } - const file = _ref3; - if (possibleExtraneous.has(file)) { - reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file)); - possibleExtraneous.delete(file); - } + while (chain.length > i) + run(chain[i++]); + promise._c = []; + promise._n = false; + if (isReject && !promise._h) + onUnhandled(promise); + }); + }; + var onUnhandled = function(promise) { + task.call(global2, function() { + var value = promise._v; + var unhandled = isUnhandled(promise); + var result2, handler, console2; + if (unhandled) { + result2 = perform(function() { + if (isNode) { + process2.emit("unhandledRejection", value, promise); + } else if (handler = global2.onunhandledrejection) { + handler({ promise, reason: value }); + } else if ((console2 = global2.console) && console2.error) { + console2.error("Unhandled promise rejection", value); + } + }); + promise._h = isNode || isUnhandled(promise) ? 2 : 1; } - for (var _iterator3 = possibleExtraneous, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator](); ; ) { - var _ref4; - if (_isArray3) { - if (_i3 >= _iterator3.length) - break; - _ref4 = _iterator3[_i3++]; - } else { - _i3 = _iterator3.next(); - if (_i3.done) - break; - _ref4 = _i3.value; - } - const loc = _ref4; - if (files.has(loc.toLowerCase())) { - possibleExtraneous.delete(loc); - } + promise._a = void 0; + if (unhandled && result2.e) + throw result2.v; + }); + }; + var isUnhandled = function(promise) { + return promise._h !== 1 && (promise._a || promise._c).length === 0; + }; + var onHandleUnhandled = function(promise) { + task.call(global2, function() { + var handler; + if (isNode) { + process2.emit("rejectionHandled", promise); + } else if (handler = global2.onrejectionhandled) { + handler({ promise, reason: promise._v }); } - return actions; }); - return function buildActionsForCopy2(_x, _x2, _x3, _x4) { - return _ref.apply(this, arguments); - }; - })(); - let buildActionsForHardlink = (() => { - var _ref9 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { - let build = (() => { - var _ref13 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - const src = data.src, dest = data.dest; - const onFresh = data.onFresh || noop; - const onDone = data.onDone || noop; - if (files.has(dest.toLowerCase())) { - onDone(); - return; - } - files.add(dest.toLowerCase()); - if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { - return; - } - const srcStat = yield lstat(src); - let srcFiles; - if (srcStat.isDirectory()) { - srcFiles = yield readdir(src); - } - const destExists = yield exists(dest); - if (destExists) { - const destStat = yield lstat(dest); - const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); - const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); - const bothFiles = srcStat.isFile() && destStat.isFile(); - if (srcStat.mode !== destStat.mode) { - try { - yield access(dest, srcStat.mode); - } catch (err) { - reporter.verbose(err); - } - } - if (bothFiles && artifactFiles.has(dest)) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkipArtifact", src)); - return; - } - if (bothFiles && srcStat.ino !== null && srcStat.ino === destStat.ino) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkip", src, dest, srcStat.ino)); - return; - } - if (bothSymlinks) { - const srcReallink = yield readlink(src); - if (srcReallink === (yield readlink(dest))) { - onDone(); - reporter.verbose(reporter.lang("verboseFileSkipSymlink", src, dest, srcReallink)); - return; - } - } - if (bothFolders) { - const destFiles = yield readdir(dest); - invariant(srcFiles, "src files not initialised"); - for (var _iterator10 = destFiles, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator](); ; ) { - var _ref14; - if (_isArray10) { - if (_i10 >= _iterator10.length) - break; - _ref14 = _iterator10[_i10++]; - } else { - _i10 = _iterator10.next(); - if (_i10.done) - break; - _ref14 = _i10.value; - } - const file = _ref14; - if (srcFiles.indexOf(file) < 0) { - const loc = (_path || _load_path()).default.join(dest, file); - possibleExtraneous.add(loc); - if ((yield lstat(loc)).isDirectory()) { - for (var _iterator11 = yield readdir(loc), _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator](); ; ) { - var _ref15; - if (_isArray11) { - if (_i11 >= _iterator11.length) - break; - _ref15 = _iterator11[_i11++]; - } else { - _i11 = _iterator11.next(); - if (_i11.done) - break; - _ref15 = _i11.value; - } - const file2 = _ref15; - possibleExtraneous.add((_path || _load_path()).default.join(loc, file2)); - } - } - } - } - } - } - if (srcStat.isSymbolicLink()) { - onFresh(); - const linkname = yield readlink(src); - actions.symlink.push({ - dest, - linkname - }); - onDone(); - } else if (srcStat.isDirectory()) { - reporter.verbose(reporter.lang("verboseFileFolder", dest)); - yield mkdirp(dest); - const destParts = dest.split((_path || _load_path()).default.sep); - while (destParts.length) { - files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); - destParts.pop(); - } - invariant(srcFiles, "src files not initialised"); - let remaining = srcFiles.length; - if (!remaining) { - onDone(); - } - for (var _iterator12 = srcFiles, _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator](); ; ) { - var _ref16; - if (_isArray12) { - if (_i12 >= _iterator12.length) - break; - _ref16 = _iterator12[_i12++]; - } else { - _i12 = _iterator12.next(); - if (_i12.done) - break; - _ref16 = _i12.value; - } - const file = _ref16; - queue.push({ - onFresh, - src: (_path || _load_path()).default.join(src, file), - dest: (_path || _load_path()).default.join(dest, file), - onDone: function(_onDone2) { - function onDone2() { - return _onDone2.apply(this, arguments); - } - onDone2.toString = function() { - return _onDone2.toString(); - }; - return onDone2; - }(function() { - if (--remaining === 0) { - onDone(); - } - }) - }); - } - } else if (srcStat.isFile()) { - onFresh(); - actions.link.push({ - src, - dest, - removeDest: destExists - }); - onDone(); - } else { - throw new Error(`unsure how to copy this: ${src}`); + }; + var $reject = function(value) { + var promise = this; + if (promise._d) + return; + promise._d = true; + promise = promise._w || promise; + promise._v = value; + promise._s = 2; + if (!promise._a) + promise._a = promise._c.slice(); + notify(promise, true); + }; + var $resolve = function(value) { + var promise = this; + var then; + if (promise._d) + return; + promise._d = true; + promise = promise._w || promise; + try { + if (promise === value) + throw TypeError2("Promise can't be resolved itself"); + if (then = isThenable(value)) { + microtask(function() { + var wrapper = { _w: promise, _d: false }; + try { + then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); + } catch (e) { + $reject.call(wrapper, e); } }); - return function build2(_x10) { - return _ref13.apply(this, arguments); - }; - })(); - const artifactFiles = new Set(events.artifactFiles || []); - const files = new Set(); - for (var _iterator7 = queue, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator](); ; ) { - var _ref10; - if (_isArray7) { - if (_i7 >= _iterator7.length) - break; - _ref10 = _iterator7[_i7++]; - } else { - _i7 = _iterator7.next(); - if (_i7.done) - break; - _ref10 = _i7.value; - } - const item = _ref10; - const onDone = item.onDone || noop; - item.onDone = function() { - events.onProgress(item.dest); - onDone(); - }; - } - events.onStart(queue.length); - const actions = { - file: [], - symlink: [], - link: [] - }; - while (queue.length) { - const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); - yield Promise.all(items.map(build)); + } else { + promise._v = value; + promise._s = 1; + notify(promise, false); } - for (var _iterator8 = artifactFiles, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator](); ; ) { - var _ref11; - if (_isArray8) { - if (_i8 >= _iterator8.length) - break; - _ref11 = _iterator8[_i8++]; - } else { - _i8 = _iterator8.next(); - if (_i8.done) - break; - _ref11 = _i8.value; - } - const file = _ref11; - if (possibleExtraneous.has(file)) { - reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file)); - possibleExtraneous.delete(file); - } + } catch (e) { + $reject.call({ _w: promise, _d: false }, e); + } + }; + if (!USE_NATIVE) { + $Promise = function Promise2(executor) { + anInstance(this, $Promise, PROMISE, "_h"); + aFunction(executor); + Internal.call(this); + try { + executor(ctx($resolve, this, 1), ctx($reject, this, 1)); + } catch (err) { + $reject.call(this, err); } - for (var _iterator9 = possibleExtraneous, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator](); ; ) { - var _ref12; - if (_isArray9) { - if (_i9 >= _iterator9.length) - break; - _ref12 = _iterator9[_i9++]; - } else { - _i9 = _iterator9.next(); - if (_i9.done) - break; - _ref12 = _i9.value; - } - const loc = _ref12; - if (files.has(loc.toLowerCase())) { - possibleExtraneous.delete(loc); - } + }; + Internal = function Promise2(executor) { + this._c = []; + this._a = void 0; + this._s = 0; + this._d = false; + this._v = void 0; + this._h = 0; + this._n = false; + }; + Internal.prototype = __webpack_require__(196)($Promise.prototype, { + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) + then: function then(onFulfilled, onRejected) { + var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); + reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; + reaction.fail = typeof onRejected == "function" && onRejected; + reaction.domain = isNode ? process2.domain : void 0; + this._c.push(reaction); + if (this._a) + this._a.push(reaction); + if (this._s) + notify(this, false); + return reaction.promise; + }, + // 25.4.5.1 Promise.prototype.catch(onRejected) + "catch": function(onRejected) { + return this.then(void 0, onRejected); } - return actions; }); - return function buildActionsForHardlink2(_x6, _x7, _x8, _x9) { - return _ref9.apply(this, arguments); + OwnPromiseCapability = function() { + var promise = new Internal(); + this.promise = promise; + this.resolve = ctx($resolve, promise, 1); + this.reject = ctx($reject, promise, 1); }; - })(); - let copyBulk = exports3.copyBulk = (() => { - var _ref17 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { - const events = { - onStart: _events && _events.onStart || noop, - onProgress: _events && _events.onProgress || noop, - possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), - ignoreBasenames: _events && _events.ignoreBasenames || [], - artifactFiles: _events && _events.artifactFiles || [] - }; - const actions = yield buildActionsForCopy(queue, events, events.possibleExtraneous, reporter); - events.onStart(actions.file.length + actions.symlink.length + actions.link.length); - const fileActions = actions.file; - const currentlyWriting = new Map(); - yield (_promise || _load_promise()).queue(fileActions, (() => { - var _ref18 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - let writePromise; - while (writePromise = currentlyWriting.get(data.dest)) { - yield writePromise; - } - reporter.verbose(reporter.lang("verboseFileCopy", data.src, data.dest)); - const copier = (0, (_fsNormalized || _load_fsNormalized()).copyFile)(data, function() { - return currentlyWriting.delete(data.dest); - }); - currentlyWriting.set(data.dest, copier); - events.onProgress(data.dest); - return copier; + newPromiseCapabilityModule.f = newPromiseCapability = function(C) { + return C === $Promise || C === Wrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C); + }; + } + $export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); + __webpack_require__(71)($Promise, PROMISE); + __webpack_require__(198)(PROMISE); + Wrapper = __webpack_require__(23)[PROMISE]; + $export($export.S + $export.F * !USE_NATIVE, PROMISE, { + // 25.4.4.5 Promise.reject(r) + reject: function reject(r) { + var capability = newPromiseCapability(this); + var $$reject = capability.reject; + $$reject(r); + return capability.promise; + } + }); + $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { + // 25.4.4.6 Promise.resolve(x) + resolve: function resolve(x) { + return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); + } + }); + $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(189)(function(iter) { + $Promise.all(iter)["catch"](empty); + })), PROMISE, { + // 25.4.4.1 Promise.all(iterable) + all: function all(iterable) { + var C = this; + var capability = newPromiseCapability(C); + var resolve = capability.resolve; + var reject = capability.reject; + var result2 = perform(function() { + var values = []; + var index = 0; + var remaining = 1; + forOf(iterable, false, function(promise) { + var $index = index++; + var alreadyCalled = false; + values.push(void 0); + remaining++; + C.resolve(promise).then(function(value) { + if (alreadyCalled) + return; + alreadyCalled = true; + values[$index] = value; + --remaining || resolve(values); + }, reject); }); - return function(_x14) { - return _ref18.apply(this, arguments); - }; - })(), CONCURRENT_QUEUE_ITEMS); - const symlinkActions = actions.symlink; - yield (_promise || _load_promise()).queue(symlinkActions, function(data) { - const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); - reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname)); - return symlink(linkname, data.dest); + --remaining || resolve(values); }); - }); - return function copyBulk2(_x11, _x12, _x13) { - return _ref17.apply(this, arguments); - }; - })(); - let hardlinkBulk = exports3.hardlinkBulk = (() => { - var _ref19 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { - const events = { - onStart: _events && _events.onStart || noop, - onProgress: _events && _events.onProgress || noop, - possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), - artifactFiles: _events && _events.artifactFiles || [], - ignoreBasenames: [] - }; - const actions = yield buildActionsForHardlink(queue, events, events.possibleExtraneous, reporter); - events.onStart(actions.file.length + actions.symlink.length + actions.link.length); - const fileActions = actions.link; - yield (_promise || _load_promise()).queue(fileActions, (() => { - var _ref20 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - reporter.verbose(reporter.lang("verboseFileLink", data.src, data.dest)); - if (data.removeDest) { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(data.dest); - } - yield link(data.src, data.dest); + if (result2.e) + reject(result2.v); + return capability.promise; + }, + // 25.4.4.4 Promise.race(iterable) + race: function race(iterable) { + var C = this; + var capability = newPromiseCapability(C); + var reject = capability.reject; + var result2 = perform(function() { + forOf(iterable, false, function(promise) { + C.resolve(promise).then(capability.resolve, reject); }); - return function(_x18) { - return _ref20.apply(this, arguments); - }; - })(), CONCURRENT_QUEUE_ITEMS); - const symlinkActions = actions.symlink; - yield (_promise || _load_promise()).queue(symlinkActions, function(data) { - const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); - reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname)); - return symlink(linkname, data.dest); }); + if (result2.e) + reject(result2.v); + return capability.promise; + } + }); + }, + /* 207 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var $at = __webpack_require__(199)(true); + __webpack_require__(103)(String, "String", function(iterated) { + this._t = String(iterated); + this._i = 0; + }, function() { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) + return { value: void 0, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; + }); + }, + /* 208 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var $export = __webpack_require__(41); + var core = __webpack_require__(23); + var global2 = __webpack_require__(11); + var speciesConstructor = __webpack_require__(108); + var promiseResolve = __webpack_require__(105); + $export($export.P + $export.R, "Promise", { "finally": function(onFinally) { + var C = speciesConstructor(this, core.Promise || global2.Promise); + var isFunction = typeof onFinally == "function"; + return this.then( + isFunction ? function(x) { + return promiseResolve(C, onFinally()).then(function() { + return x; + }); + } : onFinally, + isFunction ? function(e) { + return promiseResolve(C, onFinally()).then(function() { + throw e; + }); + } : onFinally + ); + } }); + }, + /* 209 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + var $export = __webpack_require__(41); + var newPromiseCapability = __webpack_require__(70); + var perform = __webpack_require__(104); + $export($export.S, "Promise", { "try": function(callbackfn) { + var promiseCapability = newPromiseCapability.f(this); + var result2 = perform(callbackfn); + (result2.e ? promiseCapability.reject : promiseCapability.resolve)(result2.v); + return promiseCapability.promise; + } }); + }, + /* 210 */ + /***/ + function(module3, exports3, __webpack_require__) { + __webpack_require__(204); + var global2 = __webpack_require__(11); + var hide = __webpack_require__(31); + var Iterators = __webpack_require__(35); + var TO_STRING_TAG = __webpack_require__(13)("toStringTag"); + var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); + for (var i = 0; i < DOMIterables.length; i++) { + var NAME = DOMIterables[i]; + var Collection = global2[NAME]; + var proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) + hide(proto, TO_STRING_TAG, NAME); + Iterators[NAME] = Iterators.Array; + } + }, + /* 211 */ + /***/ + function(module3, exports3, __webpack_require__) { + exports3 = module3.exports = __webpack_require__(112); + exports3.log = log2; + exports3.formatArgs = formatArgs; + exports3.save = save; + exports3.load = load; + exports3.useColors = useColors; + exports3.storage = "undefined" != typeof chrome && "undefined" != typeof chrome.storage ? chrome.storage.local : localstorage(); + exports3.colors = [ + "#0000CC", + "#0000FF", + "#0033CC", + "#0033FF", + "#0066CC", + "#0066FF", + "#0099CC", + "#0099FF", + "#00CC00", + "#00CC33", + "#00CC66", + "#00CC99", + "#00CCCC", + "#00CCFF", + "#3300CC", + "#3300FF", + "#3333CC", + "#3333FF", + "#3366CC", + "#3366FF", + "#3399CC", + "#3399FF", + "#33CC00", + "#33CC33", + "#33CC66", + "#33CC99", + "#33CCCC", + "#33CCFF", + "#6600CC", + "#6600FF", + "#6633CC", + "#6633FF", + "#66CC00", + "#66CC33", + "#9900CC", + "#9900FF", + "#9933CC", + "#9933FF", + "#99CC00", + "#99CC33", + "#CC0000", + "#CC0033", + "#CC0066", + "#CC0099", + "#CC00CC", + "#CC00FF", + "#CC3300", + "#CC3333", + "#CC3366", + "#CC3399", + "#CC33CC", + "#CC33FF", + "#CC6600", + "#CC6633", + "#CC9900", + "#CC9933", + "#CCCC00", + "#CCCC33", + "#FF0000", + "#FF0033", + "#FF0066", + "#FF0099", + "#FF00CC", + "#FF00FF", + "#FF3300", + "#FF3333", + "#FF3366", + "#FF3399", + "#FF33CC", + "#FF33FF", + "#FF6600", + "#FF6633", + "#FF9900", + "#FF9933", + "#FFCC00", + "#FFCC33" + ]; + function useColors() { + if (typeof window !== "undefined" && window.process && window.process.type === "renderer") { + return true; + } + if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } + return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + } + exports3.formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (err) { + return "[UnexpectedJSONParseError]: " + err.message; + } + }; + function formatArgs(args2) { + var useColors2 = this.useColors; + args2[0] = (useColors2 ? "%c" : "") + this.namespace + (useColors2 ? " %c" : " ") + args2[0] + (useColors2 ? "%c " : " ") + "+" + exports3.humanize(this.diff); + if (!useColors2) + return; + var c = "color: " + this.color; + args2.splice(1, 0, c, "color: inherit"); + var index = 0; + var lastC = 0; + args2[0].replace(/%[a-zA-Z%]/g, function(match) { + if ("%%" === match) + return; + index++; + if ("%c" === match) { + lastC = index; + } }); - return function hardlinkBulk2(_x15, _x16, _x17) { - return _ref19.apply(this, arguments); - }; - })(); - let readFileAny = exports3.readFileAny = (() => { - var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (files) { - for (var _iterator13 = files, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator](); ; ) { - var _ref22; - if (_isArray13) { - if (_i13 >= _iterator13.length) - break; - _ref22 = _iterator13[_i13++]; - } else { - _i13 = _iterator13.next(); - if (_i13.done) - break; - _ref22 = _i13.value; - } - const file = _ref22; - if (yield exists(file)) { - return readFile(file); + args2.splice(lastC, 0, c); + } + function log2() { + return "object" === typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments); + } + function save(namespaces) { + try { + if (null == namespaces) { + exports3.storage.removeItem("debug"); + } else { + exports3.storage.debug = namespaces; + } + } catch (e) { + } + } + function load() { + var r; + try { + r = exports3.storage.debug; + } catch (e) { + } + if (!r && typeof process !== "undefined" && "env" in process) { + r = process.env.DEBUG; + } + return r; + } + exports3.enable(load()); + function localstorage() { + try { + return window.localStorage; + } catch (e) { + } + } + }, + /* 212 */ + /***/ + function(module3, exports3, __webpack_require__) { + if (typeof process === "undefined" || process.type === "renderer") { + module3.exports = __webpack_require__(211); + } else { + module3.exports = __webpack_require__(213); + } + }, + /* 213 */ + /***/ + function(module3, exports3, __webpack_require__) { + var tty = __webpack_require__(79); + var util = __webpack_require__(2); + exports3 = module3.exports = __webpack_require__(112); + exports3.init = init; + exports3.log = log2; + exports3.formatArgs = formatArgs; + exports3.save = save; + exports3.load = load; + exports3.useColors = useColors; + exports3.colors = [6, 2, 3, 4, 5, 1]; + try { + var supportsColor = __webpack_require__(239); + if (supportsColor && supportsColor.level >= 2) { + exports3.colors = [ + 20, + 21, + 26, + 27, + 32, + 33, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 56, + 57, + 62, + 63, + 68, + 69, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 92, + 93, + 98, + 99, + 112, + 113, + 128, + 129, + 134, + 135, + 148, + 149, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 178, + 179, + 184, + 185, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 214, + 215, + 220, + 221 + ]; + } + } catch (err) { + } + exports3.inspectOpts = Object.keys(process.env).filter(function(key) { + return /^debug_/i.test(key); + }).reduce(function(obj, key) { + var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_, k) { + return k.toUpperCase(); + }); + var val = process.env[key]; + if (/^(yes|on|true|enabled)$/i.test(val)) + val = true; + else if (/^(no|off|false|disabled)$/i.test(val)) + val = false; + else if (val === "null") + val = null; + else + val = Number(val); + obj[prop] = val; + return obj; + }, {}); + function useColors() { + return "colors" in exports3.inspectOpts ? Boolean(exports3.inspectOpts.colors) : tty.isatty(process.stderr.fd); + } + exports3.formatters.o = function(v) { + this.inspectOpts.colors = this.useColors; + return util.inspect(v, this.inspectOpts).split("\n").map(function(str) { + return str.trim(); + }).join(" "); + }; + exports3.formatters.O = function(v) { + this.inspectOpts.colors = this.useColors; + return util.inspect(v, this.inspectOpts); + }; + function formatArgs(args2) { + var name = this.namespace; + var useColors2 = this.useColors; + if (useColors2) { + var c = this.color; + var colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); + var prefix = " " + colorCode + ";1m" + name + " \x1B[0m"; + args2[0] = prefix + args2[0].split("\n").join("\n" + prefix); + args2.push(colorCode + "m+" + exports3.humanize(this.diff) + "\x1B[0m"); + } else { + args2[0] = getDate() + name + " " + args2[0]; + } + } + function getDate() { + if (exports3.inspectOpts.hideDate) { + return ""; + } else { + return (/* @__PURE__ */ new Date()).toISOString() + " "; + } + } + function log2() { + return process.stderr.write(util.format.apply(util, arguments) + "\n"); + } + function save(namespaces) { + if (null == namespaces) { + delete process.env.DEBUG; + } else { + process.env.DEBUG = namespaces; + } + } + function load() { + return process.env.DEBUG; + } + function init(debug) { + debug.inspectOpts = {}; + var keys = Object.keys(exports3.inspectOpts); + for (var i = 0; i < keys.length; i++) { + debug.inspectOpts[keys[i]] = exports3.inspectOpts[keys[i]]; + } + } + exports3.enable(load()); + }, + , + , + , + /* 217 */ + /***/ + function(module3, exports3, __webpack_require__) { + var pathModule = __webpack_require__(0); + var isWindows = process.platform === "win32"; + var fs2 = __webpack_require__(3); + var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); + function rethrow() { + var callback; + if (DEBUG) { + var backtrace = new Error(); + callback = debugCallback; + } else + callback = missingCallback; + return callback; + function debugCallback(err) { + if (err) { + backtrace.message = err.message; + err = backtrace; + missingCallback(err); + } + } + function missingCallback(err) { + if (err) { + if (process.throwDeprecation) + throw err; + else if (!process.noDeprecation) { + var msg = "fs: missing callback " + (err.stack || err.message); + if (process.traceDeprecation) + console.trace(msg); + else + console.error(msg); } } - return null; - }); - return function readFileAny2(_x19) { - return _ref21.apply(this, arguments); - }; - })(); - let readJson = exports3.readJson = (() => { - var _ref23 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - return (yield readJsonAndFile(loc)).object; - }); - return function readJson2(_x20) { - return _ref23.apply(this, arguments); - }; - })(); - let readJsonAndFile = exports3.readJsonAndFile = (() => { - var _ref24 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - const file = yield readFile(loc); - try { - return { - object: (0, (_map || _load_map()).default)(JSON.parse(stripBOM(file))), - content: file - }; - } catch (err) { - err.message = `${loc}: ${err.message}`; - throw err; + } + } + function maybeCallback(cb) { + return typeof cb === "function" ? cb : rethrow(); + } + var normalize = pathModule.normalize; + if (isWindows) { + var nextPartRe = /(.*?)(?:[\/\\]+|$)/g; + } else { + var nextPartRe = /(.*?)(?:[\/]+|$)/g; + } + if (isWindows) { + var splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; + } else { + var splitRootRe = /^[\/]*/; + } + exports3.realpathSync = function realpathSync(p, cache) { + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return cache[p]; + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start(); + function start() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs2.lstatSync(base); + knownHard[base] = true; } - }); - return function readJsonAndFile2(_x21) { - return _ref24.apply(this, arguments); - }; - })(); - let find = exports3.find = (() => { - var _ref25 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (filename, dir) { - const parts = dir.split((_path || _load_path()).default.sep); - while (parts.length) { - const loc = parts.concat(filename).join((_path || _load_path()).default.sep); - if (yield exists(loc)) { - return loc; - } else { - parts.pop(); - } + } + while (pos < p.length) { + nextPartRe.lastIndex = pos; + var result2 = nextPartRe.exec(p); + previous = current; + current += result2[0]; + base = previous + result2[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + continue; } - return false; - }); - return function find2(_x22, _x23) { - return _ref25.apply(this, arguments); - }; - })(); - let symlink = exports3.symlink = (() => { - var _ref26 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest) { - try { - const stats = yield lstat(dest); - if (stats.isSymbolicLink()) { - const resolved = yield realpath(dest); - if (resolved === src) { - return; + var resolvedLink; + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + resolvedLink = cache[base]; + } else { + var stat = fs2.lstatSync(base); + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + continue; + } + var linkTarget = null; + if (!isWindows) { + var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + linkTarget = seenLinks[id]; } } - } catch (err) { - if (err.code !== "ENOENT") { - throw err; + if (linkTarget === null) { + fs2.statSync(base); + linkTarget = fs2.readlinkSync(base); } + resolvedLink = pathModule.resolve(previous, linkTarget); + if (cache) + cache[base] = resolvedLink; + if (!isWindows) + seenLinks[id] = linkTarget; } - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); - if (process.platform === "win32") { - yield fsSymlink(src, dest, "junction"); + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } + if (cache) + cache[original] = p; + return p; + }; + exports3.realpath = function realpath(p, cache, cb) { + if (typeof cb !== "function") { + cb = maybeCallback(cache); + cache = null; + } + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return process.nextTick(cb.bind(null, null, cache[p])); + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start(); + function start() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs2.lstat(base, function(err) { + if (err) + return cb(err); + knownHard[base] = true; + LOOP(); + }); } else { - let relative2; - try { - relative2 = (_path || _load_path()).default.relative((_fs || _load_fs()).default.realpathSync((_path || _load_path()).default.dirname(dest)), (_fs || _load_fs()).default.realpathSync(src)); - } catch (err) { - if (err.code !== "ENOENT") { - throw err; - } - relative2 = (_path || _load_path()).default.relative((_path || _load_path()).default.dirname(dest), src); - } - yield fsSymlink(relative2 || ".", dest); + process.nextTick(LOOP); } - }); - return function symlink2(_x24, _x25) { - return _ref26.apply(this, arguments); - }; - })(); - let walk = exports3.walk = (() => { - var _ref27 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir, relativeDir, ignoreBasenames = new Set()) { - let files = []; - let filenames = yield readdir(dir); - if (ignoreBasenames.size) { - filenames = filenames.filter(function(name) { - return !ignoreBasenames.has(name); - }); + } + function LOOP() { + if (pos >= p.length) { + if (cache) + cache[original] = p; + return cb(null, p); } - for (var _iterator14 = filenames, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator](); ; ) { - var _ref28; - if (_isArray14) { - if (_i14 >= _iterator14.length) - break; - _ref28 = _iterator14[_i14++]; - } else { - _i14 = _iterator14.next(); - if (_i14.done) - break; - _ref28 = _i14.value; + nextPartRe.lastIndex = pos; + var result2 = nextPartRe.exec(p); + previous = current; + current += result2[0]; + base = previous + result2[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + return process.nextTick(LOOP); + } + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + return gotResolvedLink(cache[base]); + } + return fs2.lstat(base, gotStat); + } + function gotStat(err, stat) { + if (err) + return cb(err); + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + return process.nextTick(LOOP); + } + if (!isWindows) { + var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + return gotTarget(null, seenLinks[id], base); } - const name = _ref28; - const relative2 = relativeDir ? (_path || _load_path()).default.join(relativeDir, name) : name; - const loc = (_path || _load_path()).default.join(dir, name); - const stat2 = yield lstat(loc); - files.push({ - relative: relative2, - basename: name, - absolute: loc, - mtime: +stat2.mtime + } + fs2.stat(base, function(err2) { + if (err2) + return cb(err2); + fs2.readlink(base, function(err3, target) { + if (!isWindows) + seenLinks[id] = target; + gotTarget(err3, target); }); - if (stat2.isDirectory()) { - files = files.concat(yield walk(loc, relative2, ignoreBasenames)); + }); + } + function gotTarget(err, target, base2) { + if (err) + return cb(err); + var resolvedLink = pathModule.resolve(previous, target); + if (cache) + cache[base2] = resolvedLink; + gotResolvedLink(resolvedLink); + } + function gotResolvedLink(resolvedLink) { + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } + }; + }, + /* 218 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = globSync; + globSync.GlobSync = GlobSync; + var fs2 = __webpack_require__(3); + var rp = __webpack_require__(114); + var minimatch = __webpack_require__(60); + var Minimatch = minimatch.Minimatch; + var Glob = __webpack_require__(75).Glob; + var util = __webpack_require__(2); + var path2 = __webpack_require__(0); + var assert = __webpack_require__(22); + var isAbsolute = __webpack_require__(76); + var common = __webpack_require__(115); + var alphasort = common.alphasort; + var alphasorti = common.alphasorti; + var setopts = common.setopts; + var ownProp = common.ownProp; + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + function globSync(pattern, options) { + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + return new GlobSync(pattern, options).found; + } + function GlobSync(pattern, options) { + if (!pattern) + throw new Error("must provide pattern"); + if (typeof options === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options); + setopts(this, pattern, options); + if (this.noprocess) + return this; + var n = this.minimatch.set.length; + this.matches = new Array(n); + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false); + } + this._finish(); + } + GlobSync.prototype._finish = function() { + assert(this instanceof GlobSync); + if (this.realpath) { + var self2 = this; + this.matches.forEach(function(matchset, index) { + var set = self2.matches[index] = /* @__PURE__ */ Object.create(null); + for (var p in matchset) { + try { + p = self2._makeAbs(p); + var real = rp.realpathSync(p, self2.realpathCache); + set[real] = true; + } catch (er) { + if (er.syscall === "stat") + set[self2._makeAbs(p)] = true; + else + throw er; + } } + }); + } + common.finish(this); + }; + GlobSync.prototype._process = function(pattern, index, inGlobStar) { + assert(this instanceof GlobSync); + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return; + var isGlobStar = remain[0] === minimatch.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar); + }; + GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); } - return files; - }); - return function walk2(_x26, _x27) { - return _ref27.apply(this, arguments); - }; - })(); - let getFileSizeOnDisk = exports3.getFileSizeOnDisk = (() => { - var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - const stat2 = yield lstat(loc); - const size = stat2.size, blockSize = stat2.blksize; - return Math.ceil(size / blockSize) * blockSize; - }); - return function getFileSizeOnDisk2(_x28) { - return _ref29.apply(this, arguments); - }; - })(); - let getEolFromFile = (() => { - var _ref30 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path) { - if (!(yield exists(path))) { - return void 0; - } - const buffer = yield readFileBuffer(path); - for (let i = 0; i < buffer.length; ++i) { - if (buffer[i] === cr) { - return "\r\n"; + } + var len = matchedEntries.length; + if (len === 0) + return; + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix.slice(-1) !== "/") + e = prefix + "/" + e; + else + e = prefix + e; } - if (buffer[i] === lf) { - return "\n"; + if (e.charAt(0) === "/" && !this.nomount) { + e = path2.join(this.root, e); } + this._emitMatch(index, e); } - return void 0; - }); - return function getEolFromFile2(_x29) { - return _ref30.apply(this, arguments); - }; - })(); - let writeFilePreservingEol = exports3.writeFilePreservingEol = (() => { - var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path, data) { - const eol = (yield getEolFromFile(path)) || (_os || _load_os()).default.EOL; - if (eol !== "\n") { - data = data.replace(/\n/g, eol); + return; + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) + newPattern = [prefix, e]; + else + newPattern = [e]; + this._process(newPattern.concat(remain), index, inGlobStar); + } + }; + GlobSync.prototype._emitMatch = function(index, e) { + if (isIgnored(this, e)) + return; + var abs = this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) { + e = abs; + } + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + if (this.stat) + this._stat(e); + }; + GlobSync.prototype._readdirInGlobStar = function(abs) { + if (this.follow) + return this._readdir(abs, false); + var entries; + var lstat; + var stat; + try { + lstat = fs2.lstatSync(abs); + } catch (er) { + if (er.code === "ENOENT") { + return null; } - yield writeFile(path, data); - }); - return function writeFilePreservingEol2(_x30, _x31) { - return _ref31.apply(this, arguments); - }; - })(); - let hardlinksWork = exports3.hardlinksWork = (() => { - var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir) { - const filename = "test-file" + Math.random(); - const file = (_path || _load_path()).default.join(dir, filename); - const fileLink = (_path || _load_path()).default.join(dir, filename + "-link"); - try { - yield writeFile(file, "test"); - yield link(file, fileLink); - } catch (err) { - return false; - } finally { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(file); - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(fileLink); + } + var isSym = lstat && lstat.isSymbolicLink(); + this.symlinks[abs] = isSym; + if (!isSym && lstat && !lstat.isDirectory()) + this.cache[abs] = "FILE"; + else + entries = this._readdir(abs, false); + return entries; + }; + GlobSync.prototype._readdir = function(abs, inGlobStar) { + var entries; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return null; + if (Array.isArray(c)) + return c; + } + try { + return this._readdirEntries(abs, fs2.readdirSync(abs)); + } catch (er) { + this._readdirError(abs, er); + return null; + } + }; + GlobSync.prototype._readdirEntries = function(abs, entries) { + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; } - return true; - }); - return function hardlinksWork2(_x32) { - return _ref32.apply(this, arguments); - }; - })(); - let makeTempDir = exports3.makeTempDir = (() => { - var _ref33 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (prefix) { - const dir = (_path || _load_path()).default.join((_os || _load_os()).default.tmpdir(), `yarn-${prefix || ""}-${Date.now()}-${Math.random()}`); - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dir); - yield mkdirp(dir); - return dir; - }); - return function makeTempDir2(_x33) { - return _ref33.apply(this, arguments); - }; - })(); - let readFirstAvailableStream = exports3.readFirstAvailableStream = (() => { - var _ref34 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths) { - for (var _iterator15 = paths, _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator](); ; ) { - var _ref35; - if (_isArray15) { - if (_i15 >= _iterator15.length) - break; - _ref35 = _iterator15[_i15++]; - } else { - _i15 = _iterator15.next(); - if (_i15.done) - break; - _ref35 = _i15.value; + } + this.cache[abs] = entries; + return entries; + }; + GlobSync.prototype._readdirError = function(f, er) { + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + throw error; + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) + throw er; + if (!this.silent) + console.error("glob error", er); + break; + } + }; + GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false); + var len = entries.length; + var isSym = this.symlinks[abs]; + if (isSym && inGlobStar) + return; + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true); + } + }; + GlobSync.prototype._processSimple = function(prefix, index) { + var exists = this._stat(prefix); + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return; + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path2.join(this.root, prefix); + } else { + prefix = path2.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + }; + GlobSync.prototype._stat = function(f) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return false; + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return c; + if (needDir && c === "FILE") + return false; + } + var exists; + var stat = this.statCache[abs]; + if (!stat) { + var lstat; + try { + lstat = fs2.lstatSync(abs); + } catch (er) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return false; } - const path = _ref35; + } + if (lstat && lstat.isSymbolicLink()) { try { - const fd = yield open(path, "r"); - return (_fs || _load_fs()).default.createReadStream(path, { fd }); - } catch (err) { + stat = fs2.statSync(abs); + } catch (er) { + stat = lstat; } + } else { + stat = lstat; } + } + this.statCache[abs] = stat; + var c = true; + if (stat) + c = stat.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return false; + return c; + }; + GlobSync.prototype._mark = function(p) { + return common.mark(this, p); + }; + GlobSync.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + }, + , + , + /* 221 */ + /***/ + function(module3, exports3, __webpack_require__) { + "use strict"; + module3.exports = function(flag, argv2) { + argv2 = argv2 || process.argv; + var terminatorPos = argv2.indexOf("--"); + var prefix = /^--/.test(flag) ? "" : "--"; + var pos = argv2.indexOf(prefix + flag); + return pos !== -1 && (terminatorPos !== -1 ? pos < terminatorPos : true); + }; + }, + , + /* 223 */ + /***/ + function(module3, exports3, __webpack_require__) { + var wrappy = __webpack_require__(123); + var reqs = /* @__PURE__ */ Object.create(null); + var once = __webpack_require__(61); + module3.exports = wrappy(inflight); + function inflight(key, cb) { + if (reqs[key]) { + reqs[key].push(cb); return null; - }); - return function readFirstAvailableStream2(_x34) { - return _ref34.apply(this, arguments); - }; - })(); - let getFirstSuitableFolder = exports3.getFirstSuitableFolder = (() => { - var _ref36 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths, mode = constants.W_OK | constants.X_OK) { - const result = { - skipped: [], - folder: null - }; - for (var _iterator16 = paths, _isArray16 = Array.isArray(_iterator16), _i16 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator](); ; ) { - var _ref37; - if (_isArray16) { - if (_i16 >= _iterator16.length) - break; - _ref37 = _iterator16[_i16++]; - } else { - _i16 = _iterator16.next(); - if (_i16.done) - break; - _ref37 = _i16.value; + } else { + reqs[key] = [cb]; + return makeres(key); + } + } + function makeres(key) { + return once(function RES() { + var cbs = reqs[key]; + var len = cbs.length; + var args2 = slice(arguments); + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args2); } - const folder = _ref37; - try { - yield mkdirp(folder); - yield access(folder, mode); - result.folder = folder; - return result; - } catch (error) { - result.skipped.push({ - error, - folder + } finally { + if (cbs.length > len) { + cbs.splice(0, len); + process.nextTick(function() { + RES.apply(null, args2); }); + } else { + delete reqs[key]; } } - return result; }); - return function getFirstSuitableFolder2(_x35) { - return _ref36.apply(this, arguments); - }; - })(); - exports3.copy = copy; - exports3.readFile = readFile; - exports3.readFileRaw = readFileRaw; - exports3.normalizeOS = normalizeOS; - var _fs; - function _load_fs() { - return _fs = _interopRequireDefault(__webpack_require__(3)); } - var _glob; - function _load_glob() { - return _glob = _interopRequireDefault(__webpack_require__(75)); - } - var _os; - function _load_os() { - return _os = _interopRequireDefault(__webpack_require__(36)); - } - var _path; - function _load_path() { - return _path = _interopRequireDefault(__webpack_require__(0)); - } - var _blockingQueue; - function _load_blockingQueue() { - return _blockingQueue = _interopRequireDefault(__webpack_require__(84)); + function slice(args2) { + var length = args2.length; + var array = []; + for (var i = 0; i < length; i++) + array[i] = args2[i]; + return array; } - var _promise; - function _load_promise() { - return _promise = _interopRequireWildcard(__webpack_require__(40)); + }, + /* 224 */ + /***/ + function(module3, exports3) { + if (typeof Object.create === "function") { + module3.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }; + } else { + module3.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor; + var TempCtor = function() { + }; + TempCtor.prototype = superCtor.prototype; + ctor.prototype = new TempCtor(); + ctor.prototype.constructor = ctor; + }; } - var _promise2; - function _load_promise2() { - return _promise2 = __webpack_require__(40); + }, + , + , + /* 227 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = typeof __webpack_require__ !== "undefined"; + }, + , + /* 229 */ + /***/ + function(module3, exports3) { + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var y = d * 365.25; + module3.exports = function(val, options) { + options = options || {}; + var type = typeof val; + if (type === "string" && val.length > 0) { + return parse2(val); + } else if (type === "number" && isNaN(val) === false) { + return options.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse2(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec( + str + ); + if (!match) { + return; + } + var n = parseFloat(match[1]); + var type = (match[2] || "ms").toLowerCase(); + switch (type) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } } - var _map; - function _load_map() { - return _map = _interopRequireDefault(__webpack_require__(20)); + function fmtShort(ms) { + if (ms >= d) { + return Math.round(ms / d) + "d"; + } + if (ms >= h) { + return Math.round(ms / h) + "h"; + } + if (ms >= m) { + return Math.round(ms / m) + "m"; + } + if (ms >= s) { + return Math.round(ms / s) + "s"; + } + return ms + "ms"; } - var _fsNormalized; - function _load_fsNormalized() { - return _fsNormalized = __webpack_require__(164); + function fmtLong(ms) { + return plural(ms, d, "day") || plural(ms, h, "hour") || plural(ms, m, "minute") || plural(ms, s, "second") || ms + " ms"; } - function _interopRequireWildcard(obj) { - if (obj && obj.__esModule) { - return obj; - } else { - var newObj = {}; - if (obj != null) { - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) - newObj[key] = obj[key]; - } - } - newObj.default = obj; - return newObj; + function plural(ms, n, name) { + if (ms < n) { + return; } + if (ms < n * 1.5) { + return Math.floor(ms / n) + " " + name; + } + return Math.ceil(ms / n) + " " + name + "s"; } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - const constants = exports3.constants = typeof (_fs || _load_fs()).default.constants !== "undefined" ? (_fs || _load_fs()).default.constants : { - R_OK: (_fs || _load_fs()).default.R_OK, - W_OK: (_fs || _load_fs()).default.W_OK, - X_OK: (_fs || _load_fs()).default.X_OK - }; - const lockQueue = exports3.lockQueue = new (_blockingQueue || _load_blockingQueue()).default("fs lock"); - const readFileBuffer = exports3.readFileBuffer = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readFile); - const open = exports3.open = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.open); - const writeFile = exports3.writeFile = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.writeFile); - const readlink = exports3.readlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readlink); - const realpath = exports3.realpath = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.realpath); - const readdir = exports3.readdir = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readdir); - const rename = exports3.rename = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.rename); - const access = exports3.access = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.access); - const stat = exports3.stat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.stat); - const mkdirp = exports3.mkdirp = (0, (_promise2 || _load_promise2()).promisify)(__webpack_require__(116)); - const exists = exports3.exists = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.exists, true); - const lstat = exports3.lstat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.lstat); - const chmod = exports3.chmod = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.chmod); - const link = exports3.link = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.link); - const glob = exports3.glob = (0, (_promise2 || _load_promise2()).promisify)((_glob || _load_glob()).default); - exports3.unlink = (_fsNormalized || _load_fsNormalized()).unlink; - const CONCURRENT_QUEUE_ITEMS = (_fs || _load_fs()).default.copyFile ? 128 : 4; - const fsSymlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.symlink); - const invariant = __webpack_require__(7); - const stripBOM = __webpack_require__(122); - const noop = () => { + }, + , + , + , + /* 233 */ + /***/ + function(module3, exports3, __webpack_require__) { + module3.exports = rimraf; + rimraf.sync = rimrafSync; + var assert = __webpack_require__(22); + var path2 = __webpack_require__(0); + var fs2 = __webpack_require__(3); + var glob = __webpack_require__(75); + var _0666 = parseInt("666", 8); + var defaultGlobOpts = { + nosort: true, + silent: true }; - function copy(src, dest, reporter) { - return copyBulk([{ src, dest }], reporter); + var timeout = 0; + var isWindows = process.platform === "win32"; + function defaults(options) { + var methods = [ + "unlink", + "chmod", + "stat", + "lstat", + "rmdir", + "readdir" + ]; + methods.forEach(function(m) { + options[m] = options[m] || fs2[m]; + m = m + "Sync"; + options[m] = options[m] || fs2[m]; + }); + options.maxBusyTries = options.maxBusyTries || 3; + options.emfileWait = options.emfileWait || 1e3; + if (options.glob === false) { + options.disableGlob = true; + } + options.disableGlob = options.disableGlob || false; + options.glob = options.glob || defaultGlobOpts; + } + function rimraf(p, options, cb) { + if (typeof options === "function") { + cb = options; + options = {}; + } + assert(p, "rimraf: missing path"); + assert.equal(typeof p, "string", "rimraf: path should be a string"); + assert.equal(typeof cb, "function", "rimraf: callback function required"); + assert(options, "rimraf: invalid options argument provided"); + assert.equal(typeof options, "object", "rimraf: options should be object"); + defaults(options); + var busyTries = 0; + var errState = null; + var n = 0; + if (options.disableGlob || !glob.hasMagic(p)) + return afterGlob(null, [p]); + options.lstat(p, function(er, stat) { + if (!er) + return afterGlob(null, [p]); + glob(p, options.glob, afterGlob); + }); + function next(er) { + errState = errState || er; + if (--n === 0) + cb(errState); + } + function afterGlob(er, results) { + if (er) + return cb(er); + n = results.length; + if (n === 0) + return cb(); + results.forEach(function(p2) { + rimraf_(p2, options, function CB(er2) { + if (er2) { + if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) { + busyTries++; + var time = busyTries * 100; + return setTimeout(function() { + rimraf_(p2, options, CB); + }, time); + } + if (er2.code === "EMFILE" && timeout < options.emfileWait) { + return setTimeout(function() { + rimraf_(p2, options, CB); + }, timeout++); + } + if (er2.code === "ENOENT") + er2 = null; + } + timeout = 0; + next(er2); + }); + }); + } } - function _readFile(loc, encoding) { - return new Promise((resolve, reject) => { - (_fs || _load_fs()).default.readFile(loc, encoding, function(err, content) { - if (err) { - reject(err); - } else { - resolve(content); + function rimraf_(p, options, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.lstat(p, function(er, st) { + if (er && er.code === "ENOENT") + return cb(null); + if (er && er.code === "EPERM" && isWindows) + fixWinEPERM(p, options, er, cb); + if (st && st.isDirectory()) + return rmdir(p, options, er, cb); + options.unlink(p, function(er2) { + if (er2) { + if (er2.code === "ENOENT") + return cb(null); + if (er2.code === "EPERM") + return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); + if (er2.code === "EISDIR") + return rmdir(p, options, er2, cb); } + return cb(er2); }); }); } - function readFile(loc) { - return _readFile(loc, "utf8").then(normalizeOS); + function fixWinEPERM(p, options, er, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + if (er) + assert(er instanceof Error); + options.chmod(p, _0666, function(er2) { + if (er2) + cb(er2.code === "ENOENT" ? null : er); + else + options.stat(p, function(er3, stats) { + if (er3) + cb(er3.code === "ENOENT" ? null : er); + else if (stats.isDirectory()) + rmdir(p, options, er, cb); + else + options.unlink(p, cb); + }); + }); } - function readFileRaw(loc) { - return _readFile(loc, "binary"); + function fixWinEPERMSync(p, options, er) { + assert(p); + assert(options); + if (er) + assert(er instanceof Error); + try { + options.chmodSync(p, _0666); + } catch (er2) { + if (er2.code === "ENOENT") + return; + else + throw er; + } + try { + var stats = options.statSync(p); + } catch (er3) { + if (er3.code === "ENOENT") + return; + else + throw er; + } + if (stats.isDirectory()) + rmdirSync(p, options, er); + else + options.unlinkSync(p); } - function normalizeOS(body) { - return body.replace(/\r\n/g, "\n"); + function rmdir(p, options, originalEr, cb) { + assert(p); + assert(options); + if (originalEr) + assert(originalEr instanceof Error); + assert(typeof cb === "function"); + options.rmdir(p, function(er) { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) + rmkids(p, options, cb); + else if (er && er.code === "ENOTDIR") + cb(originalEr); + else + cb(er); + }); } - const cr = "\r".charCodeAt(0); - const lf = "\n".charCodeAt(0); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.getPathKey = getPathKey; - const os = __webpack_require__(36); - const path = __webpack_require__(0); - const userHome = __webpack_require__(45).default; - var _require = __webpack_require__(171); - const getCacheDir = _require.getCacheDir, getConfigDir = _require.getConfigDir, getDataDir = _require.getDataDir; - const isWebpackBundle = __webpack_require__(227); - const DEPENDENCY_TYPES = exports3.DEPENDENCY_TYPES = ["devDependencies", "dependencies", "optionalDependencies", "peerDependencies"]; - const RESOLUTIONS = exports3.RESOLUTIONS = "resolutions"; - const MANIFEST_FIELDS = exports3.MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES]; - const SUPPORTED_NODE_VERSIONS = exports3.SUPPORTED_NODE_VERSIONS = "^4.8.0 || ^5.7.0 || ^6.2.2 || >=8.0.0"; - const YARN_REGISTRY = exports3.YARN_REGISTRY = "https://registry.yarnpkg.com"; - const YARN_DOCS = exports3.YARN_DOCS = "https://yarnpkg.com/en/docs/cli/"; - const YARN_INSTALLER_SH = exports3.YARN_INSTALLER_SH = "https://yarnpkg.com/install.sh"; - const YARN_INSTALLER_MSI = exports3.YARN_INSTALLER_MSI = "https://yarnpkg.com/latest.msi"; - const SELF_UPDATE_VERSION_URL = exports3.SELF_UPDATE_VERSION_URL = "https://yarnpkg.com/latest-version"; - const CACHE_VERSION = exports3.CACHE_VERSION = 2; - const LOCKFILE_VERSION = exports3.LOCKFILE_VERSION = 1; - const NETWORK_CONCURRENCY = exports3.NETWORK_CONCURRENCY = 8; - const NETWORK_TIMEOUT = exports3.NETWORK_TIMEOUT = 30 * 1e3; - const CHILD_CONCURRENCY = exports3.CHILD_CONCURRENCY = 5; - const REQUIRED_PACKAGE_KEYS = exports3.REQUIRED_PACKAGE_KEYS = ["name", "version", "_uid"]; - function getPreferredCacheDirectories() { - const preferredCacheDirectories = [getCacheDir()]; - if (process.getuid) { - preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache-${process.getuid()}`)); - } - preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache`)); - return preferredCacheDirectories; + function rmkids(p, options, cb) { + assert(p); + assert(options); + assert(typeof cb === "function"); + options.readdir(p, function(er, files) { + if (er) + return cb(er); + var n = files.length; + if (n === 0) + return options.rmdir(p, cb); + var errState; + files.forEach(function(f) { + rimraf(path2.join(p, f), options, function(er2) { + if (errState) + return; + if (er2) + return cb(errState = er2); + if (--n === 0) + options.rmdir(p, cb); + }); + }); + }); } - const PREFERRED_MODULE_CACHE_DIRECTORIES = exports3.PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories(); - const CONFIG_DIRECTORY = exports3.CONFIG_DIRECTORY = getConfigDir(); - const DATA_DIRECTORY = exports3.DATA_DIRECTORY = getDataDir(); - const LINK_REGISTRY_DIRECTORY = exports3.LINK_REGISTRY_DIRECTORY = path.join(DATA_DIRECTORY, "link"); - const GLOBAL_MODULE_DIRECTORY = exports3.GLOBAL_MODULE_DIRECTORY = path.join(DATA_DIRECTORY, "global"); - const NODE_BIN_PATH = exports3.NODE_BIN_PATH = process.execPath; - const YARN_BIN_PATH = exports3.YARN_BIN_PATH = getYarnBinPath(); - function getYarnBinPath() { - if (isWebpackBundle) { - return __filename; + function rimrafSync(p, options) { + options = options || {}; + defaults(options); + assert(p, "rimraf: missing path"); + assert.equal(typeof p, "string", "rimraf: path should be a string"); + assert(options, "rimraf: missing options"); + assert.equal(typeof options, "object", "rimraf: options should be object"); + var results; + if (options.disableGlob || !glob.hasMagic(p)) { + results = [p]; } else { - return path.join(__dirname, "..", "bin", "yarn.js"); + try { + options.lstatSync(p); + results = [p]; + } catch (er) { + results = glob.sync(p, options.glob); + } } - } - const NODE_MODULES_FOLDER = exports3.NODE_MODULES_FOLDER = "node_modules"; - const NODE_PACKAGE_JSON = exports3.NODE_PACKAGE_JSON = "package.json"; - const POSIX_GLOBAL_PREFIX = exports3.POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ""}/usr/local`; - const FALLBACK_GLOBAL_PREFIX = exports3.FALLBACK_GLOBAL_PREFIX = path.join(userHome, ".yarn"); - const META_FOLDER = exports3.META_FOLDER = ".yarn-meta"; - const INTEGRITY_FILENAME = exports3.INTEGRITY_FILENAME = ".yarn-integrity"; - const LOCKFILE_FILENAME = exports3.LOCKFILE_FILENAME = "yarn.lock"; - const METADATA_FILENAME = exports3.METADATA_FILENAME = ".yarn-metadata.json"; - const TARBALL_FILENAME = exports3.TARBALL_FILENAME = ".yarn-tarball.tgz"; - const CLEAN_FILENAME = exports3.CLEAN_FILENAME = ".yarnclean"; - const NPM_LOCK_FILENAME = exports3.NPM_LOCK_FILENAME = "package-lock.json"; - const NPM_SHRINKWRAP_FILENAME = exports3.NPM_SHRINKWRAP_FILENAME = "npm-shrinkwrap.json"; - const DEFAULT_INDENT = exports3.DEFAULT_INDENT = " "; - const SINGLE_INSTANCE_PORT = exports3.SINGLE_INSTANCE_PORT = 31997; - const SINGLE_INSTANCE_FILENAME = exports3.SINGLE_INSTANCE_FILENAME = ".yarn-single-instance"; - const ENV_PATH_KEY = exports3.ENV_PATH_KEY = getPathKey(process.platform, process.env); - function getPathKey(platform, env) { - let pathKey = "PATH"; - if (platform === "win32") { - pathKey = "Path"; - for (const key in env) { - if (key.toLowerCase() === "path") { - pathKey = key; - } + if (!results.length) + return; + for (var i = 0; i < results.length; i++) { + var p = results[i]; + try { + var st = options.lstatSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM" && isWindows) + fixWinEPERMSync(p, options, er); + } + try { + if (st && st.isDirectory()) + rmdirSync(p, options, null); + else + options.unlinkSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM") + return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er); + if (er.code !== "EISDIR") + throw er; + rmdirSync(p, options, er); } } - return pathKey; } - const VERSION_COLOR_SCHEME = exports3.VERSION_COLOR_SCHEME = { - major: "red", - premajor: "red", - minor: "yellow", - preminor: "yellow", - patch: "green", - prepatch: "green", - prerelease: "red", - unchanged: "white", - unknown: "red" - }; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var NODE_ENV = process.env.NODE_ENV; - var invariant = function(condition, format, a, b, c, d, e, f) { - if (NODE_ENV !== "production") { - if (format === void 0) { - throw new Error("invariant requires an error message argument"); - } + function rmdirSync(p, options, originalEr) { + assert(p); + assert(options); + if (originalEr) + assert(originalEr instanceof Error); + try { + options.rmdirSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "ENOTDIR") + throw originalEr; + if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") + rmkidsSync(p, options); } - if (!condition) { - var error; - if (format === void 0) { - error = new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."); - } else { - var args2 = [a, b, c, d, e, f]; - var argIndex = 0; - error = new Error(format.replace(/%s/g, function() { - return args2[argIndex++]; - })); - error.name = "Invariant Violation"; + } + function rmkidsSync(p, options) { + assert(p); + assert(options); + options.readdirSync(p).forEach(function(f) { + rimrafSync(path2.join(p, f), options); + }); + var retries = isWindows ? 100 : 1; + var i = 0; + do { + var threw = true; + try { + var ret = options.rmdirSync(p, options); + threw = false; + return ret; + } finally { + if (++i < retries && threw) + continue; } - error.framesToPop = 1; - throw error; - } - }; - module3.exports = invariant; + } while (true); + } }, , - function(module3, exports3) { - module3.exports = require("crypto"); - }, , - function(module3, exports3) { - var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); - if (typeof __g == "number") - __g = global2; - }, + , + , + , + /* 239 */ + /***/ function(module3, exports3, __webpack_require__) { "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.sortAlpha = sortAlpha; - exports3.entries = entries; - exports3.removePrefix = removePrefix; - exports3.removeSuffix = removeSuffix; - exports3.addSuffix = addSuffix; - exports3.hyphenate = hyphenate; - exports3.camelCase = camelCase; - exports3.compareSortedArrays = compareSortedArrays; - exports3.sleep = sleep; - const _camelCase = __webpack_require__(176); - function sortAlpha(a, b) { - const shortLen = Math.min(a.length, b.length); - for (let i = 0; i < shortLen; i++) { - const aChar = a.charCodeAt(i); - const bChar = b.charCodeAt(i); - if (aChar !== bChar) { - return aChar - bChar; - } + var hasFlag = __webpack_require__(221); + var support = function(level) { + if (level === 0) { + return false; } - return a.length - b.length; - } - function entries(obj) { - const entries2 = []; - if (obj) { - for (const key in obj) { - entries2.push([key, obj[key]]); + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + }; + var supportLevel = function() { + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + return 1; + } + if (process.stdout && !process.stdout.isTTY) { + return 0; + } + if (process.platform === "win32") { + return 1; + } + if ("CI" in process.env) { + if ("TRAVIS" in process.env || process.env.CI === "Travis") { + return 1; } + return 0; } - return entries2; - } - function removePrefix(pattern, prefix) { - if (pattern.startsWith(prefix)) { - pattern = pattern.slice(prefix.length); + if ("TEAMCITY_VERSION" in process.env) { + return process.env.TEAMCITY_VERSION.match(/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/) === null ? 0 : 1; } - return pattern; - } - function removeSuffix(pattern, suffix) { - if (pattern.endsWith(suffix)) { - return pattern.slice(0, -suffix.length); + if (/^(screen|xterm)-256(?:color)?/.test(process.env.TERM)) { + return 2; } - return pattern; + if (/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)) { + return 1; + } + if ("COLORTERM" in process.env) { + return 1; + } + if (process.env.TERM === "dumb") { + return 0; + } + return 0; + }(); + if (supportLevel === 0 && "FORCE_COLOR" in process.env) { + supportLevel = 1; } - function addSuffix(pattern, suffix) { - if (!pattern.endsWith(suffix)) { - return pattern + suffix; + module3.exports = process && support(supportLevel); + } + /******/ + ]); + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/shell.js +var require_shell5 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/shell.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } - return pattern; + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - function hyphenate(str) { - return str.replace(/[A-Z]/g, (match) => { - return "-" + match.charAt(0).toLowerCase(); - }); + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - function camelCase(str) { - if (/[A-Z]/.test(str)) { - return null; - } else { - return _camelCase(str); + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } } + descriptions.length = j; } - function compareSortedArrays(array1, array2) { - if (array1.length !== array2.length) { - return false; + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(line) { + return line ? line : []; + }, peg$c1 = function(command, type, then) { + return [{ command, type }].concat(then || []); + }, peg$c2 = function(command, type) { + return [{ command, type: type || ";" }]; + }, peg$c3 = function(then) { + return then; + }, peg$c4 = ";", peg$c5 = peg$literalExpectation(";", false), peg$c6 = "&", peg$c7 = peg$literalExpectation("&", false), peg$c8 = function(chain, then) { + return then ? { chain, then } : { chain }; + }, peg$c9 = function(type, then) { + return { type, line: then }; + }, peg$c10 = "&&", peg$c11 = peg$literalExpectation("&&", false), peg$c12 = "||", peg$c13 = peg$literalExpectation("||", false), peg$c14 = function(main, then) { + return then ? { ...main, then } : main; + }, peg$c15 = function(type, then) { + return { type, chain: then }; + }, peg$c16 = "|&", peg$c17 = peg$literalExpectation("|&", false), peg$c18 = "|", peg$c19 = peg$literalExpectation("|", false), peg$c20 = "=", peg$c21 = peg$literalExpectation("=", false), peg$c22 = function(name, arg) { + return { name, args: [arg] }; + }, peg$c23 = function(name) { + return { name, args: [] }; + }, peg$c24 = "(", peg$c25 = peg$literalExpectation("(", false), peg$c26 = ")", peg$c27 = peg$literalExpectation(")", false), peg$c28 = function(subshell, args2) { + return { type: `subshell`, subshell, args: args2 }; + }, peg$c29 = "{", peg$c30 = peg$literalExpectation("{", false), peg$c31 = "}", peg$c32 = peg$literalExpectation("}", false), peg$c33 = function(group, args2) { + return { type: `group`, group, args: args2 }; + }, peg$c34 = function(envs, args2) { + return { type: `command`, args: args2, envs }; + }, peg$c35 = function(envs) { + return { type: `envs`, envs }; + }, peg$c36 = function(args2) { + return args2; + }, peg$c37 = function(arg) { + return arg; + }, peg$c38 = /^[0-9]/, peg$c39 = peg$classExpectation([["0", "9"]], false, false), peg$c40 = function(fd, redirect, arg) { + return { type: `redirection`, subtype: redirect, fd: fd !== null ? parseInt(fd) : null, args: [arg] }; + }, peg$c41 = ">>", peg$c42 = peg$literalExpectation(">>", false), peg$c43 = ">&", peg$c44 = peg$literalExpectation(">&", false), peg$c45 = ">", peg$c46 = peg$literalExpectation(">", false), peg$c47 = "<<<", peg$c48 = peg$literalExpectation("<<<", false), peg$c49 = "<&", peg$c50 = peg$literalExpectation("<&", false), peg$c51 = "<", peg$c52 = peg$literalExpectation("<", false), peg$c53 = function(segments) { + return { type: `argument`, segments: [].concat(...segments) }; + }, peg$c54 = function(string) { + return string; + }, peg$c55 = "$'", peg$c56 = peg$literalExpectation("$'", false), peg$c57 = "'", peg$c58 = peg$literalExpectation("'", false), peg$c59 = function(text2) { + return [{ type: `text`, text: text2 }]; + }, peg$c60 = '""', peg$c61 = peg$literalExpectation('""', false), peg$c62 = function() { + return { type: `text`, text: `` }; + }, peg$c63 = '"', peg$c64 = peg$literalExpectation('"', false), peg$c65 = function(segments) { + return segments; + }, peg$c66 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: true }; + }, peg$c67 = function(shell) { + return { type: `shell`, shell, quoted: true }; + }, peg$c68 = function(variable) { + return { type: `variable`, ...variable, quoted: true }; + }, peg$c69 = function(text2) { + return { type: `text`, text: text2 }; + }, peg$c70 = function(arithmetic) { + return { type: `arithmetic`, arithmetic, quoted: false }; + }, peg$c71 = function(shell) { + return { type: `shell`, shell, quoted: false }; + }, peg$c72 = function(variable) { + return { type: `variable`, ...variable, quoted: false }; + }, peg$c73 = function(pattern) { + return { type: `glob`, pattern }; + }, peg$c74 = /^[^']/, peg$c75 = peg$classExpectation(["'"], true, false), peg$c76 = function(chars) { + return chars.join(``); + }, peg$c77 = /^[^$"]/, peg$c78 = peg$classExpectation(["$", '"'], true, false), peg$c79 = "\\\n", peg$c80 = peg$literalExpectation("\\\n", false), peg$c81 = function() { + return ``; + }, peg$c82 = "\\", peg$c83 = peg$literalExpectation("\\", false), peg$c84 = /^[\\$"`]/, peg$c85 = peg$classExpectation(["\\", "$", '"', "`"], false, false), peg$c86 = function(c) { + return c; + }, peg$c87 = "\\a", peg$c88 = peg$literalExpectation("\\a", false), peg$c89 = function() { + return "a"; + }, peg$c90 = "\\b", peg$c91 = peg$literalExpectation("\\b", false), peg$c92 = function() { + return "\b"; + }, peg$c93 = /^[Ee]/, peg$c94 = peg$classExpectation(["E", "e"], false, false), peg$c95 = function() { + return "\x1B"; + }, peg$c96 = "\\f", peg$c97 = peg$literalExpectation("\\f", false), peg$c98 = function() { + return "\f"; + }, peg$c99 = "\\n", peg$c100 = peg$literalExpectation("\\n", false), peg$c101 = function() { + return "\n"; + }, peg$c102 = "\\r", peg$c103 = peg$literalExpectation("\\r", false), peg$c104 = function() { + return "\r"; + }, peg$c105 = "\\t", peg$c106 = peg$literalExpectation("\\t", false), peg$c107 = function() { + return " "; + }, peg$c108 = "\\v", peg$c109 = peg$literalExpectation("\\v", false), peg$c110 = function() { + return "\v"; + }, peg$c111 = /^[\\'"?]/, peg$c112 = peg$classExpectation(["\\", "'", '"', "?"], false, false), peg$c113 = function(c) { + return String.fromCharCode(parseInt(c, 16)); + }, peg$c114 = "\\x", peg$c115 = peg$literalExpectation("\\x", false), peg$c116 = "\\u", peg$c117 = peg$literalExpectation("\\u", false), peg$c118 = "\\U", peg$c119 = peg$literalExpectation("\\U", false), peg$c120 = function(c) { + return String.fromCodePoint(parseInt(c, 16)); + }, peg$c121 = /^[0-7]/, peg$c122 = peg$classExpectation([["0", "7"]], false, false), peg$c123 = /^[0-9a-fA-f]/, peg$c124 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "f"]], false, false), peg$c125 = peg$anyExpectation(), peg$c126 = "{}", peg$c127 = peg$literalExpectation("{}", false), peg$c128 = function() { + return "{}"; + }, peg$c129 = "-", peg$c130 = peg$literalExpectation("-", false), peg$c131 = "+", peg$c132 = peg$literalExpectation("+", false), peg$c133 = ".", peg$c134 = peg$literalExpectation(".", false), peg$c135 = function(sign, left, right) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseFloat(left.join(``) + `.` + right.join(``)) }; + }, peg$c136 = function(sign, value) { + return { type: `number`, value: (sign === "-" ? -1 : 1) * parseInt(value.join(``)) }; + }, peg$c137 = function(variable) { + return { type: `variable`, ...variable }; + }, peg$c138 = function(name) { + return { type: `variable`, name }; + }, peg$c139 = function(value) { + return value; + }, peg$c140 = "*", peg$c141 = peg$literalExpectation("*", false), peg$c142 = "/", peg$c143 = peg$literalExpectation("/", false), peg$c144 = function(left, op, right) { + return { type: op === `*` ? `multiplication` : `division`, right }; + }, peg$c145 = function(left, rest) { + return rest.reduce((left2, right) => ({ left: left2, ...right }), left); + }, peg$c146 = function(left, op, right) { + return { type: op === `+` ? `addition` : `subtraction`, right }; + }, peg$c147 = "$((", peg$c148 = peg$literalExpectation("$((", false), peg$c149 = "))", peg$c150 = peg$literalExpectation("))", false), peg$c151 = function(arithmetic) { + return arithmetic; + }, peg$c152 = "$(", peg$c153 = peg$literalExpectation("$(", false), peg$c154 = function(command) { + return command; + }, peg$c155 = "${", peg$c156 = peg$literalExpectation("${", false), peg$c157 = ":-", peg$c158 = peg$literalExpectation(":-", false), peg$c159 = function(name, arg) { + return { name, defaultValue: arg }; + }, peg$c160 = ":-}", peg$c161 = peg$literalExpectation(":-}", false), peg$c162 = function(name) { + return { name, defaultValue: [] }; + }, peg$c163 = ":+", peg$c164 = peg$literalExpectation(":+", false), peg$c165 = function(name, arg) { + return { name, alternativeValue: arg }; + }, peg$c166 = ":+}", peg$c167 = peg$literalExpectation(":+}", false), peg$c168 = function(name) { + return { name, alternativeValue: [] }; + }, peg$c169 = function(name) { + return { name }; + }, peg$c170 = "$", peg$c171 = peg$literalExpectation("$", false), peg$c172 = function(pattern) { + return options.isGlobPattern(pattern); + }, peg$c173 = function(pattern) { + return pattern; + }, peg$c174 = /^[a-zA-Z0-9_]/, peg$c175 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false), peg$c176 = function() { + return text(); + }, peg$c177 = /^[$@*?#a-zA-Z0-9_\-]/, peg$c178 = peg$classExpectation(["$", "@", "*", "?", "#", ["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c179 = /^[()}<>$|&; \t"']/, peg$c180 = peg$classExpectation(["(", ")", "}", "<", ">", "$", "|", "&", ";", " ", " ", '"', "'"], false, false), peg$c181 = /^[<>&; \t"']/, peg$c182 = peg$classExpectation(["<", ">", "&", ";", " ", " ", '"', "'"], false, false), peg$c183 = /^[ \t]/, peg$c184 = peg$classExpectation([" ", " "], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; } - for (let i = 0, len = array1.length; i < len; i++) { - if (array1[i] !== array2[i]) { - return false; + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; } + p++; } - return true; - } - function sleep(ms) { - return new Promise((resolve) => { - setTimeout(resolve, ms); - }); + peg$posDetailsCache[pos] = details; + return details; } - }, - function(module3, exports3, __webpack_require__) { - var store = __webpack_require__(107)("wks"); - var uid = __webpack_require__(111); - var Symbol2 = __webpack_require__(11).Symbol; - var USE_SYMBOL = typeof Symbol2 == "function"; - var $exports = module3.exports = function(name) { - return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : uid)("Symbol." + name)); + } + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column + } }; - $exports.store = store; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.stringify = exports3.parse = void 0; - var _asyncToGenerator2; - function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; } - var _parse; - function _load_parse() { - return _parse = __webpack_require__(81); + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } - Object.defineProperty(exports3, "parse", { - enumerable: true, - get: function get() { - return _interopRequireDefault(_parse || _load_parse()).default; + peg$maxFailExpected.push(expected2); + } + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); + } + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseStart() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 === peg$FAILED) { + s2 = null; } - }); - var _stringify; - function _load_stringify() { - return _stringify = __webpack_require__(150); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - Object.defineProperty(exports3, "stringify", { - enumerable: true, - get: function get() { - return _interopRequireDefault(_stringify || _load_stringify()).default; + return s0; + } + function peg$parseShellLine() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); } - }); - exports3.implodeEntry = implodeEntry; - exports3.explodeEntry = explodeEntry; - var _misc; - function _load_misc() { - return _misc = __webpack_require__(12); + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLineThen(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c1(s1, s3, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var _normalizePattern; - function _load_normalizePattern() { - return _normalizePattern = __webpack_require__(29); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseCommandLine(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseShellLineType(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - var _parse2; - function _load_parse2() { - return _parse2 = _interopRequireDefault(__webpack_require__(81)); + return s0; + } + function peg$parseShellLineThen() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - var _constants; - function _load_constants() { - return _constants = __webpack_require__(6); + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var _fs; - function _load_fs() { - return _fs = _interopRequireWildcard(__webpack_require__(5)); + return s0; + } + function peg$parseShellLineType() { + var s0; + if (input.charCodeAt(peg$currPos) === 59) { + s0 = peg$c4; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); + } } - function _interopRequireWildcard(obj) { - if (obj && obj.__esModule) { - return obj; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 38) { + s0 = peg$c6; + peg$currPos++; } else { - var newObj = {}; - if (obj != null) { - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) - newObj[key] = obj[key]; - } + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); } - newObj.default = obj; - return newObj; } } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - const invariant = __webpack_require__(7); - const path = __webpack_require__(0); - const ssri = __webpack_require__(55); - function getName(pattern) { - return (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern).name; - } - function blankObjectUndefined(obj) { - return obj && Object.keys(obj).length ? obj : void 0; + return s0; + } + function peg$parseCommandLine() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommandChain(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineThen(); + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function keyForRemote(remote) { - return remote.resolved || (remote.reference && remote.hash ? `${remote.reference}#${remote.hash}` : null); + return s0; + } + function peg$parseCommandLineThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - function serializeIntegrity(integrity) { - return integrity.toString().split(" ").sort().join(" "); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandLineType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c9(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function implodeEntry(pattern, obj) { - const inferredName = getName(pattern); - const integrity = obj.integrity ? serializeIntegrity(obj.integrity) : ""; - const imploded = { - name: inferredName === obj.name ? void 0 : obj.name, - version: obj.version, - uid: obj.uid === obj.version ? void 0 : obj.uid, - resolved: obj.resolved, - registry: obj.registry === "npm" ? void 0 : obj.registry, - dependencies: blankObjectUndefined(obj.dependencies), - optionalDependencies: blankObjectUndefined(obj.optionalDependencies), - permissions: blankObjectUndefined(obj.permissions), - prebuiltVariants: blankObjectUndefined(obj.prebuiltVariants) - }; - if (integrity) { - imploded.integrity = integrity; + return s0; + } + function peg$parseCommandLineType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c10) { + s0 = peg$c10; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c11); } - return imploded; } - function explodeEntry(pattern, obj) { - obj.optionalDependencies = obj.optionalDependencies || {}; - obj.dependencies = obj.dependencies || {}; - obj.uid = obj.uid || obj.version; - obj.permissions = obj.permissions || {}; - obj.registry = obj.registry || "npm"; - obj.name = obj.name || getName(pattern); - const integrity = obj.integrity; - if (integrity && integrity.isIntegrity) { - obj.integrity = ssri.parse(integrity); + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c12) { + s0 = peg$c12; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } } - return obj; } - class Lockfile { - constructor({ cache, source, parseResultType } = {}) { - this.source = source || ""; - this.cache = cache; - this.parseResultType = parseResultType; + return s0; + } + function peg$parseCommandChain() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseCommand(); + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainThen(); + if (s2 === peg$FAILED) { + s2 = null; } - hasEntriesExistWithoutIntegrity() { - if (!this.cache) { - return false; + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c14(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseCommandChainThen() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseCommandChainType(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); } - for (const key in this.cache) { - if (!/^.*@(file:|http)/.test(key) && this.cache[key] && !this.cache[key].integrity) { - return true; + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandChain(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return false; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - static fromDirectory(dir, reporter) { - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const lockfileLoc = path.join(dir, (_constants || _load_constants()).LOCKFILE_FILENAME); - let lockfile; - let rawLockfile = ""; - let parseResult; - if (yield (_fs || _load_fs()).exists(lockfileLoc)) { - rawLockfile = yield (_fs || _load_fs()).readFile(lockfileLoc); - parseResult = (0, (_parse2 || _load_parse2()).default)(rawLockfile, lockfileLoc); - if (reporter) { - if (parseResult.type === "merge") { - reporter.info(reporter.lang("lockfileMerged")); - } else if (parseResult.type === "conflict") { - reporter.warn(reporter.lang("lockfileConflict")); - } - } - lockfile = parseResult.object; - } else if (reporter) { - reporter.info(reporter.lang("noLockfileFound")); - } - return new Lockfile({ cache: lockfile, source: rawLockfile, parseResultType: parseResult && parseResult.type }); - })(); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseCommandChainType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c16) { + s0 = peg$c16; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c17); } - getLocked(pattern) { - const cache = this.cache; - if (!cache) { - return void 0; - } - const shrunk = pattern in cache && cache[pattern]; - if (typeof shrunk === "string") { - return this.getLocked(shrunk); - } else if (shrunk) { - explodeEntry(pattern, shrunk); - return shrunk; + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 124) { + s0 = peg$c18; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c19); } - return void 0; } - removePattern(pattern) { - const cache = this.cache; - if (!cache) { - return; + } + return s0; + } + function peg$parseVariableAssignment() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); } - delete cache[pattern]; } - getLockfile(patterns) { - const lockfile = {}; - const seen = new Map(); - const sortedPatternsKeys = Object.keys(patterns).sort((_misc || _load_misc()).sortAlpha); - for (var _iterator = sortedPatternsKeys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { - var _ref; - if (_isArray) { - if (_i >= _iterator.length) - break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) - break; - _ref = _i.value; - } - const pattern = _ref; - const pkg = patterns[pattern]; - const remote = pkg._remote, ref = pkg._reference; - invariant(ref, "Package is missing a reference"); - invariant(remote, "Package is missing a remote"); - const remoteKey = keyForRemote(remote); - const seenPattern = remoteKey && seen.get(remoteKey); - if (seenPattern) { - lockfile[pattern] = seenPattern; - if (!seenPattern.name && getName(pattern) !== pkg.name) { - seenPattern.name = pkg.name; - } - continue; + if (s2 !== peg$FAILED) { + s3 = peg$parseStrictValueArgument(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - const obj = implodeEntry(pattern, { - name: pkg.name, - version: pkg.version, - uid: pkg._uid, - resolved: remote.resolved, - integrity: remote.integrity, - registry: remote.registry, - dependencies: pkg.dependencies, - peerDependencies: pkg.peerDependencies, - optionalDependencies: pkg.optionalDependencies, - permissions: ref.permissions, - prebuiltVariants: pkg.prebuiltVariants - }); - lockfile[pattern] = obj; - if (remoteKey) { - seen.set(remoteKey, obj); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c22(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return lockfile; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - exports3.default = Lockfile; - }, - , - , - function(module3, exports3) { - module3.exports = require("stream"); - }, - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.default = nullify; - function nullify(obj = {}) { - if (Array.isArray(obj)) { - for (var _iterator = obj, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { - var _ref; - if (_isArray) { - if (_i >= _iterator.length) - break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) - break; - _ref = _i.value; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEnvVariable(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c20; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c21); } - const item = _ref; - nullify(item); } - } else if (obj !== null && typeof obj === "object" || typeof obj === "function") { - Object.setPrototypeOf(obj, null); - if (typeof obj === "object") { - for (const key in obj) { - nullify(obj[key]); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c23(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return obj; } - }, - , - function(module3, exports3) { - module3.exports = require("assert"); - }, - function(module3, exports3) { - var core = module3.exports = { version: "2.5.7" }; - if (typeof __e == "number") - __e = core; - }, - , - , - , - function(module3, exports3, __webpack_require__) { - var isObject = __webpack_require__(34); - module3.exports = function(it) { - if (!isObject(it)) - throw TypeError(it + " is not an object!"); - return it; - }; - }, - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.normalizePattern = normalizePattern; - function normalizePattern(pattern) { - let hasVersion = false; - let range = "latest"; - let name = pattern; - let isScoped = false; - if (name[0] === "@") { - isScoped = true; - name = name.slice(1); + return s0; + } + function peg$parseCommand() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 40) { + s2 = peg$c24; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } } - const parts = name.split("@"); - if (parts.length > 1) { - name = parts.shift(); - range = parts.join("@"); - if (range) { - hasVersion = true; + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s6 = peg$c26; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c28(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - range = "*"; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (isScoped) { - name = `@${name}`; - } - return { name, range, hasVersion }; - } - }, - , - function(module3, exports3, __webpack_require__) { - var dP = __webpack_require__(50); - var createDesc = __webpack_require__(106); - module3.exports = __webpack_require__(33) ? function(object, key, value) { - return dP.f(object, key, createDesc(1, value)); - } : function(object, key, value) { - object[key] = value; - return object; - }; - }, - function(module3, exports3, __webpack_require__) { - var buffer = __webpack_require__(63); - var Buffer2 = buffer.Buffer; - function copyProps(src, dst) { - for (var key in src) { - dst[key] = src[key]; - } - } - if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { - module3.exports = buffer; } else { - copyProps(buffer, exports3); - exports3.Buffer = SafeBuffer; - } - function SafeBuffer(arg, encodingOrOffset, length) { - return Buffer2(arg, encodingOrOffset, length); + peg$currPos = s0; + s0 = peg$FAILED; } - copyProps(Buffer2, SafeBuffer); - SafeBuffer.from = function(arg, encodingOrOffset, length) { - if (typeof arg === "number") { - throw new TypeError("Argument must not be a number"); - } - return Buffer2(arg, encodingOrOffset, length); - }; - SafeBuffer.alloc = function(size, fill, encoding) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - var buf = Buffer2(size); - if (fill !== void 0) { - if (typeof encoding === "string") { - buf.fill(fill, encoding); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 123) { + s2 = peg$c29; + peg$currPos++; } else { - buf.fill(fill); + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + s4 = peg$parseShellLine(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s6 = peg$c31; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s6 !== peg$FAILED) { + s7 = []; + s8 = peg$parseS(); + while (s8 !== peg$FAILED) { + s7.push(s8); + s8 = peg$parseS(); + } + if (s7 !== peg$FAILED) { + s8 = []; + s9 = peg$parseRedirectArgument(); + while (s9 !== peg$FAILED) { + s8.push(s9); + s9 = peg$parseRedirectArgument(); + } + if (s8 !== peg$FAILED) { + s9 = []; + s10 = peg$parseS(); + while (s10 !== peg$FAILED) { + s9.push(s10); + s10 = peg$parseS(); + } + if (s9 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c33(s4, s8); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } else { - buf.fill(0); - } - return buf; - }; - SafeBuffer.allocUnsafe = function(size) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); - } - return Buffer2(size); - }; - SafeBuffer.allocUnsafeSlow = function(size) { - if (typeof size !== "number") { - throw new TypeError("Argument must be a number"); + peg$currPos = s0; + s0 = peg$FAILED; } - return buffer.SlowBuffer(size); - }; - }, - function(module3, exports3, __webpack_require__) { - module3.exports = !__webpack_require__(85)(function() { - return Object.defineProperty({}, "a", { get: function() { - return 7; - } }).a != 7; - }); - }, - function(module3, exports3) { - module3.exports = function(it) { - return typeof it === "object" ? it !== null : typeof it === "function"; - }; - }, - function(module3, exports3) { - module3.exports = {}; - }, - function(module3, exports3) { - module3.exports = require("os"); - }, - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.wait = wait; - exports3.promisify = promisify; - exports3.queue = queue; - function wait(delay) { - return new Promise((resolve) => { - setTimeout(resolve, delay); - }); - } - function promisify(fn2, firstData) { - return function(...args2) { - return new Promise(function(resolve, reject) { - args2.push(function(err, ...result) { - let res = result; - if (result.length <= 1) { - res = result[0]; - } - if (firstData) { - res = err; - err = null; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); } - if (err) { - reject(err); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseArgument(); + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseArgument(); + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseS(); + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseS(); + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c34(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - resolve(res); + peg$currPos = s0; + s0 = peg$FAILED; } - }); - fn2.apply(null, args2); - }); - }; - } - function queue(arr, promiseProducer, concurrency = Infinity) { - concurrency = Math.min(concurrency, arr.length); - arr = arr.slice(); - const results = []; - let total = arr.length; - if (!total) { - return Promise.resolve(results); - } - return new Promise((resolve, reject) => { - for (let i = 0; i < concurrency; i++) { - next(); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function next() { - const item = arr.shift(); - const promise = promiseProducer(item); - promise.then(function(result) { - results.push(result); - total--; - if (total === 0) { - resolve(results); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseVariableAssignment(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseVariableAssignment(); + } } else { - if (arr.length) { - next(); + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c35(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, reject); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - }); + } } - }, - function(module3, exports3, __webpack_require__) { - var global2 = __webpack_require__(11); - var core = __webpack_require__(23); - var ctx = __webpack_require__(48); - var hide = __webpack_require__(31); - var has = __webpack_require__(49); - var PROTOTYPE = "prototype"; - var $export = function(type, name, source) { - var IS_FORCED = type & $export.F; - var IS_GLOBAL = type & $export.G; - var IS_STATIC = type & $export.S; - var IS_PROTO = type & $export.P; - var IS_BIND = type & $export.B; - var IS_WRAP = type & $export.W; - var exports4 = IS_GLOBAL ? core : core[name] || (core[name] = {}); - var expProto = exports4[PROTOTYPE]; - var target = IS_GLOBAL ? global2 : IS_STATIC ? global2[name] : (global2[name] || {})[PROTOTYPE]; - var key, own, out; - if (IS_GLOBAL) - source = name; - for (key in source) { - own = !IS_FORCED && target && target[key] !== void 0; - if (own && has(exports4, key)) - continue; - out = own ? target[key] : source[key]; - exports4[key] = IS_GLOBAL && typeof target[key] != "function" ? source[key] : IS_BIND && own ? ctx(out, global2) : IS_WRAP && target[key] == out ? function(C) { - var F = function(a, b, c) { - if (this instanceof C) { - switch (arguments.length) { - case 0: - return new C(); - case 1: - return new C(a); - case 2: - return new C(a, b); - } - return new C(a, b, c); - } - return C.apply(this, arguments); - }; - F[PROTOTYPE] = C[PROTOTYPE]; - return F; - }(out) : IS_PROTO && typeof out == "function" ? ctx(Function.call, out) : out; - if (IS_PROTO) { - (exports4.virtual || (exports4.virtual = {}))[key] = out; - if (type & $export.R && expProto && !expProto[key]) - hide(expProto, key, out); + return s0; + } + function peg$parseCommandString() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseValueArgument(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseValueArgument(); } + } else { + s2 = peg$FAILED; } - }; - $export.F = 1; - $export.G = 2; - $export.S = 4; - $export.P = 8; - $export.B = 16; - $export.W = 32; - $export.U = 64; - $export.R = 128; - module3.exports = $export; - }, - function(module3, exports3, __webpack_require__) { - try { - var util = __webpack_require__(2); - if (typeof util.inherits !== "function") - throw ""; - module3.exports = util.inherits; - } catch (e) { - module3.exports = __webpack_require__(224); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseS(); + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseS(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c36(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.home = void 0; - var _rootUser; - function _load_rootUser() { - return _rootUser = _interopRequireDefault(__webpack_require__(169)); + return s0; + } + function peg$parseArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; + if (s1 !== peg$FAILED) { + s2 = peg$parseRedirectArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - const path = __webpack_require__(0); - const home = exports3.home = __webpack_require__(36).homedir(); - const userHomeDir = (_rootUser || _load_rootUser()).default ? path.resolve("/usr/local/share") : home; - exports3.default = userHomeDir; - }, - function(module3, exports3) { - module3.exports = function(it) { - if (typeof it != "function") - throw TypeError(it + " is not a function!"); - return it; - }; - }, - function(module3, exports3) { - var toString = {}.toString; - module3.exports = function(it) { - return toString.call(it).slice(8, -1); - }; - }, - function(module3, exports3, __webpack_require__) { - var aFunction = __webpack_require__(46); - module3.exports = function(fn2, that, length) { - aFunction(fn2); - if (that === void 0) - return fn2; - switch (length) { - case 1: - return function(a) { - return fn2.call(that, a); - }; - case 2: - return function(a, b) { - return fn2.call(that, a, b); - }; - case 3: - return function(a, b, c) { - return fn2.call(that, a, b, c); - }; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); } - return function() { - return fn2.apply(that, arguments); - }; - }; - }, - function(module3, exports3) { - var hasOwnProperty = {}.hasOwnProperty; - module3.exports = function(it, key) { - return hasOwnProperty.call(it, key); - }; - }, - function(module3, exports3, __webpack_require__) { - var anObject = __webpack_require__(27); - var IE8_DOM_DEFINE = __webpack_require__(184); - var toPrimitive = __webpack_require__(201); - var dP = Object.defineProperty; - exports3.f = __webpack_require__(33) ? Object.defineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) - try { - return dP(O, P, Attributes); - } catch (e) { + if (s1 !== peg$FAILED) { + s2 = peg$parseValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if ("get" in Attributes || "set" in Attributes) - throw TypeError("Accessors not supported!"); - if ("value" in Attributes) - O[P] = Attributes.value; - return O; - }; - }, - , - , - , - function(module3, exports3) { - module3.exports = require("events"); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - const Buffer2 = __webpack_require__(32).Buffer; - const crypto = __webpack_require__(9); - const Transform = __webpack_require__(17).Transform; - const SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"]; - const BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i; - const SRI_REGEX = /^([^-]+)-([^?]+)([?\S*]*)$/; - const STRICT_SRI_REGEX = /^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/; - const VCHAR_REGEX = /^[\x21-\x7E]+$/; - class Hash { - get isHash() { - return true; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - constructor(hash, opts) { - const strict = !!(opts && opts.strict); - this.source = hash.trim(); - const match = this.source.match(strict ? STRICT_SRI_REGEX : SRI_REGEX); - if (!match) { - return; + } + return s0; + } + function peg$parseRedirectArgument() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + if (peg$c38.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); } - if (strict && !SPEC_ALGORITHMS.some((a) => a === match[1])) { - return; + } + if (s2 === peg$FAILED) { + s2 = null; + } + if (s2 !== peg$FAILED) { + s3 = peg$parseRedirectType(); + if (s3 !== peg$FAILED) { + s4 = peg$parseValueArgument(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(s2, s3, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - this.algorithm = match[1]; - this.digest = match[2]; - const rawOpts = match[3]; - this.options = rawOpts ? rawOpts.slice(1).split("?") : []; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - hexDigest() { - return this.digest && Buffer2.from(this.digest, "base64").toString("hex"); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseRedirectType() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c41) { + s0 = peg$c41; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); } - toJSON() { - return this.toString(); + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c43) { + s0 = peg$c43; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c44); + } } - toString(opts) { - if (opts && opts.strict) { - if (!(SPEC_ALGORITHMS.some((x) => x === this.algorithm) && this.digest.match(BASE64_REGEX) && (this.options || []).every((opt) => opt.match(VCHAR_REGEX)))) { - return ""; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 62) { + s0 = peg$c45; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c46); } } - const options = this.options && this.options.length ? `?${this.options.join("?")}` : ""; - return `${this.algorithm}-${this.digest}${options}`; - } - } - class Integrity { - get isIntegrity() { - return true; - } - toJSON() { - return this.toString(); - } - toString(opts) { - opts = opts || {}; - let sep = opts.sep || " "; - if (opts.strict) { - sep = sep.replace(/\S+/g, " "); + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c47) { + s0 = peg$c47; + peg$currPos += 3; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c48); + } + } + if (s0 === peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c49) { + s0 = peg$c49; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c50); + } + } + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 60) { + s0 = peg$c51; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c52); + } + } + } + } } - return Object.keys(this).map((k) => { - return this[k].map((hash) => { - return Hash.prototype.toString.call(hash, opts); - }).filter((x) => x.length).join(sep); - }).filter((x) => x.length).join(sep); } - concat(integrity, opts) { - const other = typeof integrity === "string" ? integrity : stringify(integrity, opts); - return parse(`${this.toString(opts)} ${other}`, opts); + } + return s0; + } + function peg$parseValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseS(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseS(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseStrictValueArgument(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c37(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - hexDigest() { - return parse(this, { single: true }).hexDigest(); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseStrictValueArgument() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseArgumentSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseArgumentSegment(); } - match(integrity, opts) { - const other = parse(integrity, opts); - const algo = other.pickAlgorithm(opts); - return this[algo] && other[algo] && this[algo].find((hash) => other[algo].find((otherhash) => hash.digest === otherhash.digest)) || false; + } else { + s1 = peg$FAILED; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c53(s1); + } + s0 = s1; + return s0; + } + function peg$parseArgumentSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseCQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSglQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); } - pickAlgorithm(opts) { - const pickAlgorithm = opts && opts.pickAlgorithm || getPrioritizedHash; - const keys = Object.keys(this); - if (!keys.length) { - throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainString(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c54(s1); + } + s0 = s1; } - return keys.reduce((acc, algo) => { - return pickAlgorithm(acc, algo) || acc; - }); } } - module3.exports.parse = parse; - function parse(sri, opts) { - opts = opts || {}; - if (typeof sri === "string") { - return _parse(sri, opts); - } else if (sri.algorithm && sri.digest) { - const fullSri = new Integrity(); - fullSri[sri.algorithm] = [sri]; - return _parse(stringify(fullSri, opts), opts); - } else { - return _parse(stringify(sri, opts), opts); + return s0; + } + function peg$parseCQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); } } - function _parse(integrity, opts) { - if (opts.single) { - return new Hash(integrity, opts); - } - return integrity.trim().split(/\s+/).reduce((acc, string) => { - const hash = new Hash(string, opts); - if (hash.algorithm && hash.digest) { - const algo = hash.algorithm; - if (!acc[algo]) { - acc[algo] = []; + if (s1 !== peg$FAILED) { + s2 = peg$parseCQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); } - acc[algo].push(hash); } - return acc; - }, new Integrity()); - } - module3.exports.stringify = stringify; - function stringify(obj, opts) { - if (obj.algorithm && obj.digest) { - return Hash.prototype.toString.call(obj, opts); - } else if (typeof obj === "string") { - return stringify(parse(obj, opts), opts); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - return Integrity.prototype.toString.call(obj, opts); + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - module3.exports.fromHex = fromHex; - function fromHex(hexDigest, algorithm, opts) { - const optString = opts && opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; - return parse(`${algorithm}-${Buffer2.from(hexDigest, "hex").toString("base64")}${optString}`, opts); + return s0; + } + function peg$parseSglQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 39) { + s1 = peg$c57; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); + } } - module3.exports.fromData = fromData; - function fromData(data, opts) { - opts = opts || {}; - const algorithms = opts.algorithms || ["sha512"]; - const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; - return algorithms.reduce((acc, algo) => { - const digest = crypto.createHash(algo).update(data).digest("base64"); - const hash = new Hash(`${algo}-${digest}${optString}`, opts); - if (hash.algorithm && hash.digest) { - const algo2 = hash.algorithm; - if (!acc[algo2]) { - acc[algo2] = []; + if (s1 !== peg$FAILED) { + s2 = peg$parseSglQuoteStringText(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 39) { + s3 = peg$c57; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c58); } - acc[algo2].push(hash); } - return acc; - }, new Integrity()); - } - module3.exports.fromStream = fromStream; - function fromStream(stream, opts) { - opts = opts || {}; - const P = opts.Promise || Promise; - const istream = integrityStream(opts); - return new P((resolve, reject) => { - stream.pipe(istream); - stream.on("error", reject); - istream.on("error", reject); - let sri; - istream.on("integrity", (s) => { - sri = s; - }); - istream.on("end", () => resolve(sri)); - istream.on("data", () => { - }); - }); - } - module3.exports.checkData = checkData; - function checkData(data, sri, opts) { - opts = opts || {}; - sri = parse(sri, opts); - if (!Object.keys(sri).length) { - if (opts.error) { - throw Object.assign(new Error("No valid integrity hashes to check against"), { - code: "EINTEGRITY" - }); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c59(s2); + s0 = s1; } else { - return false; + peg$currPos = s0; + s0 = peg$FAILED; } - } - const algorithm = sri.pickAlgorithm(opts); - const digest = crypto.createHash(algorithm).update(data).digest("base64"); - const newSri = parse({ algorithm, digest }); - const match = newSri.match(sri, opts); - if (match || !opts.error) { - return match; - } else if (typeof opts.size === "number" && data.length !== opts.size) { - const err = new Error(`data size mismatch when checking ${sri}. - Wanted: ${opts.size} - Found: ${data.length}`); - err.code = "EBADSIZE"; - err.found = data.length; - err.expected = opts.size; - err.sri = sri; - throw err; } else { - const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`); - err.code = "EINTEGRITY"; - err.found = newSri; - err.expected = sri; - err.algorithm = algorithm; - err.sri = sri; - throw err; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - module3.exports.checkStream = checkStream; - function checkStream(stream, sri, opts) { - opts = opts || {}; - const P = opts.Promise || Promise; - const checker = integrityStream(Object.assign({}, opts, { - integrity: sri - })); - return new P((resolve, reject) => { - stream.pipe(checker); - stream.on("error", reject); - checker.on("error", reject); - let sri2; - checker.on("verified", (s) => { - sri2 = s; - }); - checker.on("end", () => resolve(sri2)); - checker.on("data", () => { - }); - }); + return s0; + } + function peg$parseDblQuoteString() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c60) { + s1 = peg$c60; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c61); + } } - module3.exports.integrityStream = integrityStream; - function integrityStream(opts) { - opts = opts || {}; - const sri = opts.integrity && parse(opts.integrity, opts); - const goodSri = sri && Object.keys(sri).length; - const algorithm = goodSri && sri.pickAlgorithm(opts); - const digests = goodSri && sri[algorithm]; - const algorithms = Array.from(new Set((opts.algorithms || ["sha512"]).concat(algorithm ? [algorithm] : []))); - const hashes = algorithms.map(crypto.createHash); - let streamSize = 0; - const stream = new Transform({ - transform(chunk, enc, cb) { - streamSize += chunk.length; - hashes.forEach((h) => h.update(chunk, enc)); - cb(null, chunk, enc); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c62(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c63; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); } - }).on("end", () => { - const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; - const newSri = parse(hashes.map((h, i) => { - return `${algorithms[i]}-${h.digest("base64")}${optString}`; - }).join(" "), opts); - const match = goodSri && newSri.match(sri, opts); - if (typeof opts.size === "number" && streamSize !== opts.size) { - const err = new Error(`stream size mismatch when checking ${sri}. - Wanted: ${opts.size} - Found: ${streamSize}`); - err.code = "EBADSIZE"; - err.found = streamSize; - err.expected = opts.size; - err.sri = sri; - stream.emit("error", err); - } else if (opts.integrity && !match) { - const err = new Error(`${sri} integrity checksum failed when using ${algorithm}: wanted ${digests} but got ${newSri}. (${streamSize} bytes)`); - err.code = "EINTEGRITY"; - err.found = newSri; - err.expected = digests; - err.algorithm = algorithm; - err.sri = sri; - stream.emit("error", err); - } else { - stream.emit("size", streamSize); - stream.emit("integrity", newSri); - match && stream.emit("verified", match); + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseDblQuoteStringSegment(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseDblQuoteStringSegment(); } - }); - return stream; - } - module3.exports.create = createIntegrity; - function createIntegrity(opts) { - opts = opts || {}; - const algorithms = opts.algorithms || ["sha512"]; - const optString = opts.options && opts.options.length ? `?${opts.options.join("?")}` : ""; - const hashes = algorithms.map(crypto.createHash); - return { - update: function(chunk, enc) { - hashes.forEach((h) => h.update(chunk, enc)); - return this; - }, - digest: function(enc) { - const integrity = algorithms.reduce((acc, algo) => { - const digest = hashes.shift().digest("base64"); - const hash = new Hash(`${algo}-${digest}${optString}`, opts); - if (hash.algorithm && hash.digest) { - const algo2 = hash.algorithm; - if (!acc[algo2]) { - acc[algo2] = []; - } - acc[algo2].push(hash); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c63; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c64); } - return acc; - }, new Integrity()); - return integrity; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - const NODE_HASHES = new Set(crypto.getHashes()); - const DEFAULT_PRIORITY = [ - "md5", - "whirlpool", - "sha1", - "sha224", - "sha256", - "sha384", - "sha512", - "sha3", - "sha3-256", - "sha3-384", - "sha3-512", - "sha3_256", - "sha3_384", - "sha3_512" - ].filter((algo) => NODE_HASHES.has(algo)); - function getPrioritizedHash(algo1, algo2) { - return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2; + return s0; + } + function peg$parsePlainString() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePlainStringSegment(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePlainStringSegment(); + } + } else { + s1 = peg$FAILED; } - }, - , - , - , - , - function(module3, exports3, __webpack_require__) { - module3.exports = minimatch; - minimatch.Minimatch = Minimatch; - var path = { sep: "/" }; - try { - path = __webpack_require__(0); - } catch (er) { + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c65(s1); } - var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; - var expand = __webpack_require__(175); - var plTypes = { - "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, - "?": { open: "(?:", close: ")?" }, - "+": { open: "(?:", close: ")+" }, - "*": { open: "(?:", close: ")*" }, - "@": { open: "(?:", close: ")" } - }; - var qmark = "[^/]"; - var star = qmark + "*?"; - var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; - var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; - var reSpecials = charSet("().*{}+?[]^$\\!"); - function charSet(s) { - return s.split("").reduce(function(set, c) { - set[c] = true; - return set; - }, {}); + s0 = s1; + return s0; + } + function peg$parseDblQuoteStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(s1); } - var slashSplit = /\/+/; - minimatch.filter = filter; - function filter(pattern, options) { - options = options || {}; - return function(p, i, list) { - return minimatch(p, pattern, options); - }; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c67(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c68(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseDblQuoteStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } + } } - function ext(a, b) { - a = a || {}; - b = b || {}; - var t = {}; - Object.keys(b).forEach(function(k) { - t[k] = b[k]; - }); - Object.keys(a).forEach(function(k) { - t[k] = a[k]; - }); - return t; + return s0; + } + function peg$parsePlainStringSegment() { + var s0, s1; + s0 = peg$currPos; + s1 = peg$parseArithmetic(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c70(s1); } - minimatch.defaults = function(def) { - if (!def || !Object.keys(def).length) - return minimatch; - var orig = minimatch; - var m = function minimatch2(p, pattern, options) { - return orig.minimatch(p, pattern, ext(def, options)); - }; - m.Minimatch = function Minimatch2(pattern, options) { - return new orig.Minimatch(pattern, ext(def, options)); - }; - return m; - }; - Minimatch.defaults = function(def) { - if (!def || !Object.keys(def).length) - return Minimatch; - return minimatch.defaults(def).Minimatch; - }; - function minimatch(p, pattern, options) { - if (typeof pattern !== "string") { - throw new TypeError("glob pattern string required"); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSubshell(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c71(s1); } - if (!options) - options = {}; - if (!options.nocomment && pattern.charAt(0) === "#") { - return false; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseGlob(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c73(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsePlainStringText(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(s1); + } + s0 = s1; + } + } } - if (pattern.trim() === "") - return p === ""; - return new Minimatch(pattern, options).match(p); } - function Minimatch(pattern, options) { - if (!(this instanceof Minimatch)) { - return new Minimatch(pattern, options); - } - if (typeof pattern !== "string") { - throw new TypeError("glob pattern string required"); + return s0; + } + function peg$parseSglQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); } - if (!options) - options = {}; - pattern = pattern.trim(); - if (path.sep !== "/") { - pattern = pattern.split(path.sep).join("/"); + } + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } } - this.options = options; - this.set = []; - this.pattern = pattern; - this.regexp = null; - this.negate = false; - this.comment = false; - this.empty = false; - this.make(); } - Minimatch.prototype.debug = function() { - }; - Minimatch.prototype.make = make; - function make() { - if (this._made) - return; - var pattern = this.pattern; - var options = this.options; - if (!options.nocomment && pattern.charAt(0) === "#") { - this.comment = true; - return; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); + } + s0 = s1; + return s0; + } + function peg$parseDblQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); + } } - if (!pattern) { - this.empty = true; - return; + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseDblQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c77.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c78); + } + } + } } - this.parseNegate(); - var set = this.globSet = this.braceExpand(); - if (options.debug) - this.debug = console.error; - this.debug(this.pattern, set); - set = this.globParts = set.map(function(s) { - return s.split(slashSplit); - }); - this.debug(this.pattern, set); - set = set.map(function(s, si, set2) { - return s.map(this.parse, this); - }, this); - this.debug(this.pattern, set); - set = set.filter(function(s) { - return s.indexOf(false) === -1; - }); - this.debug(this.pattern, set); - this.set = set; + } else { + s1 = peg$FAILED; } - Minimatch.prototype.parseNegate = parseNegate; - function parseNegate() { - var pattern = this.pattern; - var negate = false; - var options = this.options; - var negateOffset = 0; - if (options.nonegate) - return; - for (var i = 0, l = pattern.length; i < l && pattern.charAt(i) === "!"; i++) { - negate = !negate; - negateOffset++; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); + } + s0 = s1; + return s0; + } + function peg$parseDblQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); } - if (negateOffset) - this.pattern = pattern.substr(negateOffset); - this.negate = negate; } - minimatch.braceExpand = function(pattern, options) { - return braceExpand(pattern, options); - }; - Minimatch.prototype.braceExpand = braceExpand; - function braceExpand(pattern, options) { - if (!options) { - if (this instanceof Minimatch) { - options = this.options; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c84.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; } else { - options = {}; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c85); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - pattern = typeof pattern === "undefined" ? this.pattern : pattern; - if (typeof pattern === "undefined") { - throw new TypeError("undefined pattern"); + } + return s0; + } + function peg$parseCQuoteStringText() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } } - if (options.nobrace || !pattern.match(/\{.*\}/)) { - return [pattern]; + } + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseCQuoteEscapedChar(); + if (s2 === peg$FAILED) { + if (peg$c74.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c75); + } + } } - return expand(pattern); } - Minimatch.prototype.parse = parse; - var SUBPARSE = {}; - function parse(pattern, isSub) { - if (pattern.length > 1024 * 64) { - throw new TypeError("pattern is too long"); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); + } + s0 = s1; + return s0; + } + function peg$parseCQuoteEscapedChar() { + var s0, s1, s2; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c87) { + s1 = peg$c87; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c88); } - var options = this.options; - if (!options.noglobstar && pattern === "**") - return GLOBSTAR; - if (pattern === "") - return ""; - var re = ""; - var hasMagic = !!options.nocase; - var escaping = false; - var patternListStack = []; - var negativeLists = []; - var stateChar; - var inClass = false; - var reClassStart = -1; - var classStart = -1; - var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; - var self2 = this; - function clearStateChar() { - if (stateChar) { - switch (stateChar) { - case "*": - re += star; - hasMagic = true; - break; - case "?": - re += qmark; - hasMagic = true; - break; - default: - re += "\\" + stateChar; - break; - } - self2.debug("clearStateChar %j %j", stateChar, re); - stateChar = false; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c89(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c90) { + s1 = peg$c90; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); } } - for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { - this.debug("%s %s %s %j", pattern, i, re, c); - if (escaping && reSpecials[c]) { - re += "\\" + c; - escaping = false; - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c92(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } } - switch (c) { - case "/": - return false; - case "\\": - clearStateChar(); - escaping = true; - continue; - case "?": - case "*": - case "+": - case "@": - case "!": - this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); - if (inClass) { - this.debug(" in class"); - if (c === "!" && i === classStart + 1) - c = "^"; - re += c; - continue; - } - self2.debug("call clearStateChar %j", stateChar); - clearStateChar(); - stateChar = c; - if (options.noext) - clearStateChar(); - continue; - case "(": - if (inClass) { - re += "("; - continue; - } - if (!stateChar) { - re += "\\("; - continue; - } - patternListStack.push({ - type: stateChar, - start: i - 1, - reStart: re.length, - open: plTypes[stateChar].open, - close: plTypes[stateChar].close - }); - re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; - this.debug("plType %j %j", stateChar, re); - stateChar = false; - continue; - case ")": - if (inClass || !patternListStack.length) { - re += "\\)"; - continue; - } - clearStateChar(); - hasMagic = true; - var pl = patternListStack.pop(); - re += pl.close; - if (pl.type === "!") { - negativeLists.push(pl); + if (s1 !== peg$FAILED) { + if (peg$c93.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c94); } - pl.reEnd = re.length; - continue; - case "|": - if (inClass || !patternListStack.length || escaping) { - re += "\\|"; - escaping = false; - continue; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c95(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c96) { + s1 = peg$c96; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c97); } - clearStateChar(); - re += "|"; - continue; - case "[": - clearStateChar(); - if (inClass) { - re += "\\" + c; - continue; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c98(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c99) { + s1 = peg$c99; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c100); + } } - inClass = true; - classStart = i; - reClassStart = re.length; - re += c; - continue; - case "]": - if (i === classStart + 1 || !inClass) { - re += "\\" + c; - escaping = false; - continue; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c101(); } - if (inClass) { - var cs = pattern.substring(classStart + 1, i); - try { - RegExp("[" + cs + "]"); - } catch (er) { - var sp = this.parse(cs, SUBPARSE); - re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; - hasMagic = hasMagic || sp[1]; - inClass = false; - continue; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c102) { + s1 = peg$c102; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c103); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c104(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c105) { + s1 = peg$c105; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c106); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c107(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c108) { + s1 = peg$c108; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c109); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c110(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); + } + } + if (s1 !== peg$FAILED) { + if (peg$c111.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c112); + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c86(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$parseHexCodeString(); + } + } + } } } - hasMagic = true; - inClass = false; - re += c; - continue; - default: - clearStateChar(); - if (escaping) { - escaping = false; - } else if (reSpecials[c] && !(c === "^" && inClass)) { - re += "\\"; - } - re += c; + } } } - if (inClass) { - cs = pattern.substr(classStart + 1); - sp = this.parse(cs, SUBPARSE); - re = re.substr(0, reClassStart) + "\\[" + sp[0]; - hasMagic = hasMagic || sp[1]; - } - for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { - var tail = re.slice(pl.reStart + pl.open.length); - this.debug("setting tail", re, pl); - tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) { - if (!$2) { - $2 = "\\"; - } - return $1 + $1 + $2 + "|"; - }); - this.debug("tail=%j\n %s", tail, tail, pl, re); - var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; - hasMagic = true; - re = re.slice(0, pl.reStart) + t + "\\(" + tail; + } + return s0; + } + function peg$parseHexCodeString() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s1 = peg$c82; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - clearStateChar(); - if (escaping) { - re += "\\\\"; + } + if (s1 !== peg$FAILED) { + s2 = peg$parseHexCodeChar0(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var addPatternStart = false; - switch (re.charAt(0)) { - case ".": - case "[": - case "(": - addPatternStart = true; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c114) { + s1 = peg$c114; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c115); + } } - for (var n = negativeLists.length - 1; n > -1; n--) { - var nl = negativeLists[n]; - var nlBefore = re.slice(0, nl.reStart); - var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); - var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); - var nlAfter = re.slice(nl.reEnd); - nlLast += nlAfter; - var openParensBefore = nlBefore.split("(").length - 1; - var cleanAfter = nlAfter; - for (i = 0; i < openParensBefore; i++) { - cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar0(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - nlAfter = cleanAfter; - var dollar = ""; - if (nlAfter === "" && isSub !== SUBPARSE) { - dollar = "$"; + if (s3 === peg$FAILED) { + s3 = peg$parseHexCodeChar0(); } - var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; - re = newRe; - } - if (re !== "" && hasMagic) { - re = "(?=.)" + re; + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (addPatternStart) { - re = patternStart + re; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c116) { + s1 = peg$c116; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c117); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c113(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c118) { + s1 = peg$c118; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c119); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexCodeChar(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexCodeChar(); + if (s5 !== peg$FAILED) { + s6 = peg$parseHexCodeChar(); + if (s6 !== peg$FAILED) { + s7 = peg$parseHexCodeChar(); + if (s7 !== peg$FAILED) { + s8 = peg$parseHexCodeChar(); + if (s8 !== peg$FAILED) { + s9 = peg$parseHexCodeChar(); + if (s9 !== peg$FAILED) { + s10 = peg$parseHexCodeChar(); + if (s10 !== peg$FAILED) { + s11 = peg$parseHexCodeChar(); + if (s11 !== peg$FAILED) { + s4 = [s4, s5, s6, s7, s8, s9, s10, s11]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c120(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } } - if (isSub === SUBPARSE) { - return [re, hasMagic]; + } + return s0; + } + function peg$parseHexCodeChar0() { + var s0; + if (peg$c121.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c122); } - if (!hasMagic) { - return globUnescape(pattern); + } + return s0; + } + function peg$parseHexCodeChar() { + var s0; + if (peg$c123.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c124); } - var flags = options.nocase ? "i" : ""; - try { - var regExp = new RegExp("^" + re + "$", flags); - } catch (er) { - return new RegExp("$."); + } + return s0; + } + function peg$parsePlainStringText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - regExp._glob = pattern; - regExp._src = re; - return regExp; } - minimatch.makeRe = function(pattern, options) { - return new Minimatch(pattern, options || {}).makeRe(); - }; - Minimatch.prototype.makeRe = makeRe; - function makeRe() { - if (this.regexp || this.regexp === false) - return this.regexp; - var set = this.set; - if (!set.length) { - this.regexp = false; - return this.regexp; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } } - var options = this.options; - var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; - var flags = options.nocase ? "i" : ""; - var re = set.map(function(pattern) { - return pattern.map(function(p) { - return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; - }).join("\\/"); - }).join("|"); - re = "^(?:" + re + ")$"; - if (this.negate) - re = "^(?!" + re + ").*$"; - try { - this.regexp = new RegExp(re, flags); - } catch (ex) { - this.regexp = false; + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - return this.regexp; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - minimatch.match = function(list, pattern, options) { - options = options || {}; - var mm = new Minimatch(pattern, options); - list = list.filter(function(f) { - return mm.match(f); - }); - if (mm.options.nonull && !list.length) { - list.push(pattern); - } - return list; - }; - Minimatch.prototype.match = match; - function match(f, partial) { - this.debug("match", f, this.pattern); - if (this.comment) - return false; - if (this.empty) - return f === ""; - if (f === "/" && partial) - return true; - var options = this.options; - if (path.sep !== "/") { - f = f.split(path.sep).join("/"); + if (s2 === peg$FAILED) { + s2 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c126) { + s3 = peg$c126; + peg$currPos += 2; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } } - f = f.split(slashSplit); - this.debug(this.pattern, "split", f); - var set = this.set; - this.debug(this.pattern, "set", set); - var filename; - var i; - for (i = f.length - 1; i >= 0; i--) { - filename = f[i]; - if (filename) - break; + if (s3 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c128(); } - for (i = 0; i < set.length; i++) { - var pattern = set[i]; - var file = f; - if (options.matchBase && pattern.length === 1) { - file = [filename]; + s2 = s3; + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - var hit = this.matchOne(file, pattern, partial); - if (hit) { - if (options.flipNegate) - return true; - return !this.negate; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } } - if (options.flipNegate) - return false; - return this.negate; } - Minimatch.prototype.matchOne = function(file, pattern, partial) { - var options = this.options; - this.debug("matchOne", { "this": this, file, pattern }); - this.debug("matchOne", file.length, pattern.length); - for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { - this.debug("matchOne loop"); - var p = pattern[pi]; - var f = file[fi]; - this.debug(pattern, p, f); - if (p === false) - return false; - if (p === GLOBSTAR) { - this.debug("GLOBSTAR", [pattern, p, f]); - var fr = fi; - var pr = pi + 1; - if (pr === pl) { - this.debug("** at the end"); - for (; fi < fl; fi++) { - if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") - return false; - } - return true; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 92) { + s3 = peg$c82; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - while (fr < fl) { - var swallowee = file[fr]; - this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); - if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { - this.debug("globstar found match!", fr, fl, swallowee); - return true; - } else { - if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { - this.debug("dot detected!", file, fr, pattern, pr); - break; - } - this.debug("globstar swallow a segment, and continue"); - fr++; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); } } - if (partial) { - this.debug("\n>>> no match, partial?", file, fr, pattern, pr); - if (fr === fl) - return true; + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - return false; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - var hit; - if (typeof p === "string") { - if (options.nocase) { - hit = f.toLowerCase() === p.toLowerCase(); + if (s2 === peg$FAILED) { + s2 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c126) { + s3 = peg$c126; + peg$currPos += 2; } else { - hit = f === p; + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c127); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c128(); + } + s2 = s3; + if (s2 === peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } + } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } } - this.debug("string match", p, f, hit); - } else { - hit = f.match(p); - this.debug("pattern match", p, f, hit); } - if (!hit) - return false; - } - if (fi === fl && pi === pl) { - return true; - } else if (fi === fl) { - return partial; - } else if (pi === pl) { - var emptyFileEnd = fi === fl - 1 && file[fi] === ""; - return emptyFileEnd; } - throw new Error("wtf?"); - }; - function globUnescape(s) { - return s.replace(/\\(.)/g, "$1"); - } - function regExpEscape(s) { - return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); - } - }, - function(module3, exports3, __webpack_require__) { - var wrappy = __webpack_require__(123); - module3.exports = wrappy(once); - module3.exports.strict = wrappy(onceStrict); - once.proto = once(function() { - Object.defineProperty(Function.prototype, "once", { - value: function() { - return once(this); - }, - configurable: true - }); - Object.defineProperty(Function.prototype, "onceStrict", { - value: function() { - return onceStrict(this); - }, - configurable: true - }); - }); - function once(fn2) { - var f = function() { - if (f.called) - return f.value; - f.called = true; - return f.value = fn2.apply(this, arguments); - }; - f.called = false; - return f; - } - function onceStrict(fn2) { - var f = function() { - if (f.called) - throw new Error(f.onceError); - f.called = true; - return f.value = fn2.apply(this, arguments); - }; - var name = fn2.name || "Function wrapped with `once`"; - f.onceError = name + " shouldn't be called more than once"; - f.called = false; - return f; + } else { + s1 = peg$FAILED; } - }, - , - function(module3, exports3) { - module3.exports = require("buffer"); - }, - , - , - , - function(module3, exports3) { - module3.exports = function(it) { - if (it == void 0) - throw TypeError("Can't call method on " + it); - return it; - }; - }, - function(module3, exports3, __webpack_require__) { - var isObject = __webpack_require__(34); - var document2 = __webpack_require__(11).document; - var is = isObject(document2) && isObject(document2.createElement); - module3.exports = function(it) { - return is ? document2.createElement(it) : {}; - }; - }, - function(module3, exports3) { - module3.exports = true; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var aFunction = __webpack_require__(46); - function PromiseCapability(C) { - var resolve, reject; - this.promise = new C(function($$resolve, $$reject) { - if (resolve !== void 0 || reject !== void 0) - throw TypeError("Bad Promise constructor"); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - module3.exports.f = function(C) { - return new PromiseCapability(C); - }; - }, - function(module3, exports3, __webpack_require__) { - var def = __webpack_require__(50).f; - var has = __webpack_require__(49); - var TAG = __webpack_require__(13)("toStringTag"); - module3.exports = function(it, tag, stat) { - if (it && !has(it = stat ? it : it.prototype, TAG)) - def(it, TAG, { configurable: true, value: tag }); - }; - }, - function(module3, exports3, __webpack_require__) { - var shared = __webpack_require__(107)("keys"); - var uid = __webpack_require__(111); - module3.exports = function(key) { - return shared[key] || (shared[key] = uid(key)); - }; - }, - function(module3, exports3) { - var ceil = Math.ceil; - var floor = Math.floor; - module3.exports = function(it) { - return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); - }; - }, - function(module3, exports3, __webpack_require__) { - var IObject = __webpack_require__(131); - var defined = __webpack_require__(67); - module3.exports = function(it) { - return IObject(defined(it)); - }; - }, - function(module3, exports3, __webpack_require__) { - module3.exports = glob; - var fs = __webpack_require__(3); - var rp = __webpack_require__(114); - var minimatch = __webpack_require__(60); - var Minimatch = minimatch.Minimatch; - var inherits = __webpack_require__(42); - var EE = __webpack_require__(54).EventEmitter; - var path = __webpack_require__(0); - var assert = __webpack_require__(22); - var isAbsolute = __webpack_require__(76); - var globSync = __webpack_require__(218); - var common = __webpack_require__(115); - var alphasort = common.alphasort; - var alphasorti = common.alphasorti; - var setopts = common.setopts; - var ownProp = common.ownProp; - var inflight = __webpack_require__(223); - var util = __webpack_require__(2); - var childrenIgnored = common.childrenIgnored; - var isIgnored = common.isIgnored; - var once = __webpack_require__(61); - function glob(pattern, options, cb) { - if (typeof options === "function") - cb = options, options = {}; - if (!options) - options = {}; - if (options.sync) { - if (cb) - throw new TypeError("callback provided to sync glob"); - return globSync(pattern, options); + s0 = s1; + return s0; + } + function peg$parseArithmeticPrimary() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c129; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); } - return new Glob(pattern, options, cb); } - glob.sync = globSync; - var GlobSync = glob.GlobSync = globSync.GlobSync; - glob.glob = glob; - function extend(origin, add) { - if (add === null || typeof add !== "object") { - return origin; - } - var keys = Object.keys(add); - var i = keys.length; - while (i--) { - origin[keys[i]] = add[keys[i]]; + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c131; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } } - return origin; } - glob.hasMagic = function(pattern, options_) { - var options = extend({}, options_); - options.noprocess = true; - var g = new Glob(pattern, options); - var set = g.minimatch.set; - if (!pattern) - return false; - if (set.length > 1) - return true; - for (var j = 0; j < set[0].length; j++) { - if (typeof set[0][j] !== "string") - return true; - } - return false; - }; - glob.Glob = Glob; - inherits(Glob, EE); - function Glob(pattern, options, cb) { - if (typeof options === "function") { - cb = options; - options = null; - } - if (options && options.sync) { - if (cb) - throw new TypeError("callback provided to sync glob"); - return new GlobSync(pattern, options); - } - if (!(this instanceof Glob)) - return new Glob(pattern, options, cb); - setopts(this, pattern, options); - this._didRealPath = false; - var n = this.minimatch.set.length; - this.matches = new Array(n); - if (typeof cb === "function") { - cb = once(cb); - this.on("error", cb); - this.on("end", function(matches) { - cb(null, matches); - }); - } - var self2 = this; - this._processing = 0; - this._emitQueue = []; - this._processQueue = []; - this.paused = false; - if (this.noprocess) - return this; - if (n === 0) - return done(); - var sync = true; - for (var i = 0; i < n; i++) { - this._process(this.minimatch.set[i], i, false, done); + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } } - sync = false; - function done() { - --self2._processing; - if (self2._processing <= 0) { - if (sync) { - process.nextTick(function() { - self2._finish(); - }); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; } else { - self2._finish(); + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } } } + } else { + s2 = peg$FAILED; } - } - Glob.prototype._finish = function() { - assert(this instanceof Glob); - if (this.aborted) - return; - if (this.realpath && !this._didRealpath) - return this._realpath(); - common.finish(this); - this.emit("end", this.found); - }; - Glob.prototype._realpath = function() { - if (this._didRealpath) - return; - this._didRealpath = true; - var n = this.matches.length; - if (n === 0) - return this._finish(); - var self2 = this; - for (var i = 0; i < this.matches.length; i++) - this._realpathSet(i, next); - function next() { - if (--n === 0) - self2._finish(); - } - }; - Glob.prototype._realpathSet = function(index, cb) { - var matchset = this.matches[index]; - if (!matchset) - return cb(); - var found = Object.keys(matchset); - var self2 = this; - var n = found.length; - if (n === 0) - return cb(); - var set = this.matches[index] = Object.create(null); - found.forEach(function(p, i) { - p = self2._makeAbs(p); - rp.realpath(p, self2.realpathCache, function(er, real) { - if (!er) - set[real] = true; - else if (er.syscall === "stat") - set[p] = true; - else - self2.emit("error", er); - if (--n === 0) { - self2.matches[index] = set; - cb(); - } - }); - }); - }; - Glob.prototype._mark = function(p) { - return common.mark(this, p); - }; - Glob.prototype._makeAbs = function(f) { - return common.makeAbs(this, f); - }; - Glob.prototype.abort = function() { - this.aborted = true; - this.emit("abort"); - }; - Glob.prototype.pause = function() { - if (!this.paused) { - this.paused = true; - this.emit("pause"); - } - }; - Glob.prototype.resume = function() { - if (this.paused) { - this.emit("resume"); - this.paused = false; - if (this._emitQueue.length) { - var eq = this._emitQueue.slice(0); - this._emitQueue.length = 0; - for (var i = 0; i < eq.length; i++) { - var e = eq[i]; - this._emitMatch(e[0], e[1]); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 46) { + s3 = peg$c133; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c134); } } - if (this._processQueue.length) { - var pq = this._processQueue.slice(0); - this._processQueue.length = 0; - for (var i = 0; i < pq.length; i++) { - var p = pq[i]; - this._processing--; - this._process(p[0], p[1], p[2], p[3]); + if (s3 !== peg$FAILED) { + s4 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + if (peg$c38.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + } + } else { + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c135(s1, s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - Glob.prototype._process = function(pattern, index, inGlobStar, cb) { - assert(this instanceof Glob); - assert(typeof cb === "function"); - if (this.aborted) - return; - this._processing++; - if (this.paused) { - this._processQueue.push([pattern, index, inGlobStar, cb]); - return; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 45) { + s1 = peg$c129; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); + } } - var n = 0; - while (typeof pattern[n] === "string") { - n++; + if (s1 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s1 = peg$c131; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } + } } - var prefix; - switch (n) { - case pattern.length: - this._processSimple(pattern.join("/"), index, cb); - return; - case 0: - prefix = null; - break; - default: - prefix = pattern.slice(0, n).join("/"); - break; + if (s1 === peg$FAILED) { + s1 = null; } - var remain = pattern.slice(n); - var read; - if (prefix === null) - read = "."; - else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { - if (!prefix || !isAbsolute(prefix)) - prefix = "/" + prefix; - read = prefix; - } else - read = prefix; - var abs = this._makeAbs(read); - if (childrenIgnored(this, read)) - return cb(); - var isGlobStar = remain[0] === minimatch.GLOBSTAR; - if (isGlobStar) - this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); - else - this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); - }; - Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { - var self2 = this; - this._readdir(abs, inGlobStar, function(er, entries) { - return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); - }); - }; - Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { - if (!entries) - return cb(); - var pn = remain[0]; - var negate = !!this.minimatch.negate; - var rawGlob = pn._glob; - var dotOk = this.dot || rawGlob.charAt(0) === "."; - var matchedEntries = []; - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (e.charAt(0) !== "." || dotOk) { - var m; - if (negate && !prefix) { - m = !e.match(pn); - } else { - m = e.match(pn); + if (s1 !== peg$FAILED) { + s2 = []; + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + if (peg$c38.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); + } + } } - if (m) - matchedEntries.push(e); + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c136(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var len = matchedEntries.length; - if (len === 0) - return cb(); - if (remain.length === 1 && !this.mark && !this.stat) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - if (prefix) { - if (prefix !== "/") - e = prefix + "/" + e; - else - e = prefix + e; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseVariable(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c137(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseIdentifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c138(s1); } - if (e.charAt(0) === "/" && !this.nomount) { - e = path.join(this.root, e); + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 40) { + s1 = peg$c24; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c25); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s5 = peg$c26; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c139(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } - this._emitMatch(index, e); - } - return cb(); - } - remain.shift(); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - var newPattern; - if (prefix) { - if (prefix !== "/") - e = prefix + "/" + e; - else - e = prefix + e; } - this._process([e].concat(remain), index, inGlobStar, cb); - } - cb(); - }; - Glob.prototype._emitMatch = function(index, e) { - if (this.aborted) - return; - if (isIgnored(this, e)) - return; - if (this.paused) { - this._emitQueue.push([index, e]); - return; - } - var abs = isAbsolute(e) ? e : this._makeAbs(e); - if (this.mark) - e = this._mark(e); - if (this.absolute) - e = abs; - if (this.matches[index][e]) - return; - if (this.nodir) { - var c = this.cache[abs]; - if (c === "DIR" || Array.isArray(c)) - return; - } - this.matches[index][e] = true; - var st = this.statCache[abs]; - if (st) - this.emit("stat", e, st); - this.emit("match", e); - }; - Glob.prototype._readdirInGlobStar = function(abs, cb) { - if (this.aborted) - return; - if (this.follow) - return this._readdir(abs, false, cb); - var lstatkey = "lstat\0" + abs; - var self2 = this; - var lstatcb = inflight(lstatkey, lstatcb_); - if (lstatcb) - fs.lstat(abs, lstatcb); - function lstatcb_(er, lstat) { - if (er && er.code === "ENOENT") - return cb(); - var isSym = lstat && lstat.isSymbolicLink(); - self2.symlinks[abs] = isSym; - if (!isSym && lstat && !lstat.isDirectory()) { - self2.cache[abs] = "FILE"; - cb(); - } else - self2._readdir(abs, false, cb); } - }; - Glob.prototype._readdir = function(abs, inGlobStar, cb) { - if (this.aborted) - return; - cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); - if (!cb) - return; - if (inGlobStar && !ownProp(this.symlinks, abs)) - return this._readdirInGlobStar(abs, cb); - if (ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (!c || c === "FILE") - return cb(); - if (Array.isArray(c)) - return cb(null, c); - } - var self2 = this; - fs.readdir(abs, readdirCb(this, abs, cb)); - }; - function readdirCb(self2, abs, cb) { - return function(er, entries) { - if (er) - self2._readdirError(abs, er, cb); - else - self2._readdirEntries(abs, entries, cb); - }; } - Glob.prototype._readdirEntries = function(abs, entries, cb) { - if (this.aborted) - return; - if (!this.mark && !this.stat) { - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (abs === "/") - e = abs + e; - else - e = abs + "/" + e; - this.cache[e] = true; - } + return s0; + } + function peg$parseArithmeticTimesExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticPrimary(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - this.cache[abs] = entries; - return cb(null, entries); - }; - Glob.prototype._readdirError = function(f, er, cb) { - if (this.aborted) - return; - switch (er.code) { - case "ENOTSUP": - case "ENOTDIR": - var abs = this._makeAbs(f); - this.cache[abs] = "FILE"; - if (abs === this.cwdAbs) { - var error = new Error(er.code + " invalid cwd " + this.cwd); - error.path = this.cwd; - error.code = er.code; - this.emit("error", error); - this.abort(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c140; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c141); } - break; - case "ENOENT": - case "ELOOP": - case "ENAMETOOLONG": - case "UNKNOWN": - this.cache[this._makeAbs(f)] = false; - break; - default: - this.cache[this._makeAbs(f)] = false; - if (this.strict) { - this.emit("error", er); - this.abort(); + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c142; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c143); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c144(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - if (!this.silent) - console.error("glob error", er); - break; - } - return cb(); - }; - Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { - var self2 = this; - this._readdir(abs, inGlobStar, function(er, entries) { - self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); - }); - }; - Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { - if (!entries) - return cb(); - var remainWithoutGlobStar = remain.slice(1); - var gspref = prefix ? [prefix] : []; - var noGlobStar = gspref.concat(remainWithoutGlobStar); - this._process(noGlobStar, index, false, cb); - var isSym = this.symlinks[abs]; - var len = entries.length; - if (isSym && inGlobStar) - return cb(); - for (var i = 0; i < len; i++) { - var e = entries[i]; - if (e.charAt(0) === "." && !this.dot) - continue; - var instead = gspref.concat(entries[i], remainWithoutGlobStar); - this._process(instead, index, true, cb); - var below = gspref.concat(entries[i], remain); - this._process(below, index, true, cb); - } - cb(); - }; - Glob.prototype._processSimple = function(prefix, index, cb) { - var self2 = this; - this._stat(prefix, function(er, exists) { - self2._processSimple2(prefix, index, er, exists, cb); - }); - }; - Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - if (!exists) - return cb(); - if (prefix && isAbsolute(prefix) && !this.nomount) { - var trail = /[\/\\]$/.test(prefix); - if (prefix.charAt(0) === "/") { - prefix = path.join(this.root, prefix); } else { - prefix = path.resolve(this.root, prefix); - if (trail) - prefix += "/"; + peg$currPos = s3; + s3 = peg$FAILED; } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - if (process.platform === "win32") - prefix = prefix.replace(/\\/g, "/"); - this._emitMatch(index, prefix); - cb(); - }; - Glob.prototype._stat = function(f, cb) { - var abs = this._makeAbs(f); - var needDir = f.slice(-1) === "/"; - if (f.length > this.maxLength) - return cb(); - if (!this.stat && ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (Array.isArray(c)) - c = "DIR"; - if (!needDir || c === "DIR") - return cb(null, c); - if (needDir && c === "FILE") - return cb(); - } - var exists; - var stat = this.statCache[abs]; - if (stat !== void 0) { - if (stat === false) - return cb(null, stat); - else { - var type = stat.isDirectory() ? "DIR" : "FILE"; - if (needDir && type === "FILE") - return cb(); - else - return cb(null, type, stat); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - } - var self2 = this; - var statcb = inflight("stat\0" + abs, lstatcb_); - if (statcb) - fs.lstat(abs, statcb); - function lstatcb_(er, lstat) { - if (lstat && lstat.isSymbolicLink()) { - return fs.stat(abs, function(er2, stat2) { - if (er2) - self2._stat2(f, abs, null, lstat, cb); - else - self2._stat2(f, abs, er2, stat2, cb); - }); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 42) { + s5 = peg$c140; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c141); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s5 = peg$c142; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c143); + } + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticPrimary(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c144(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { - self2._stat2(f, abs, er, lstat, cb); + peg$currPos = s3; + s3 = peg$FAILED; } } - }; - Glob.prototype._stat2 = function(f, abs, er, stat, cb) { - if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { - this.statCache[abs] = false; - return cb(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c145(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var needDir = f.slice(-1) === "/"; - this.statCache[abs] = stat; - if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) - return cb(null, false, stat); - var c = true; - if (stat) - c = stat.isDirectory() ? "DIR" : "FILE"; - this.cache[abs] = this.cache[abs] || c; - if (needDir && c === "FILE") - return cb(); - return cb(null, c, stat); - }; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - function posix(path) { - return path.charAt(0) === "/"; - } - function win32(path) { - var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; - var result = splitDeviceRe.exec(path); - var device = result[1] || ""; - var isUnc = Boolean(device && device.charAt(1) !== ":"); - return Boolean(result[2] || isUnc); - } - module3.exports = process.platform === "win32" ? win32 : posix; - module3.exports.posix = posix; - module3.exports.win32 = win32; - }, - , - , - function(module3, exports3) { - module3.exports = require("tty"); - }, - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.default = function(str, fileLoc = "lockfile") { - str = (0, (_stripBom || _load_stripBom()).default)(str); - return hasMergeConflicts(str) ? parseWithConflict(str, fileLoc) : { type: "success", object: parse(str, fileLoc) }; - }; - var _util; - function _load_util() { - return _util = _interopRequireDefault(__webpack_require__(2)); - } - var _invariant; - function _load_invariant() { - return _invariant = _interopRequireDefault(__webpack_require__(7)); - } - var _stripBom; - function _load_stripBom() { - return _stripBom = _interopRequireDefault(__webpack_require__(122)); - } - var _constants; - function _load_constants() { - return _constants = __webpack_require__(6); - } - var _errors; - function _load_errors() { - return _errors = __webpack_require__(4); - } - var _map; - function _load_map() { - return _map = _interopRequireDefault(__webpack_require__(20)); - } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; - } - const VERSION_REGEX = /^yarn lockfile v(\d+)$/; - const TOKEN_TYPES = { - boolean: "BOOLEAN", - string: "STRING", - identifier: "IDENTIFIER", - eof: "EOF", - colon: "COLON", - newline: "NEWLINE", - comment: "COMMENT", - indent: "INDENT", - invalid: "INVALID", - number: "NUMBER", - comma: "COMMA" - }; - const VALID_PROP_VALUE_TOKENS = [TOKEN_TYPES.boolean, TOKEN_TYPES.string, TOKEN_TYPES.number]; - function isValidPropValueToken(token) { - return VALID_PROP_VALUE_TOKENS.indexOf(token.type) >= 0; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function* tokenise(input) { - let lastNewline = false; - let line = 1; - let col = 0; - function buildToken(type, value) { - return { line, col, type, value }; + return s0; + } + function peg$parseArithmeticExpression() { + var s0, s1, s2, s3, s4, s5, s6, s7; + s0 = peg$currPos; + s1 = peg$parseArithmeticTimesExpression(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - while (input.length) { - let chop = 0; - if (input[0] === "\n" || input[0] === "\r") { - chop++; - if (input[1] === "\n") { - chop++; - } - line++; - col = 0; - yield buildToken(TOKEN_TYPES.newline); - } else if (input[0] === "#") { - chop++; - let val = ""; - while (input[chop] !== "\n") { - val += input[chop]; - chop++; + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c131; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); } - yield buildToken(TOKEN_TYPES.comment, val); - } else if (input[0] === " ") { - if (lastNewline) { - let indent = ""; - for (let i = 0; input[i] === " "; i++) { - indent += input[i]; + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c129; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); } - if (indent.length % 2) { - throw new TypeError("Invalid number of spaces"); + } + } + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c146(s1, s5, s7); + s3 = s4; } else { - chop = indent.length; - yield buildToken(TOKEN_TYPES.indent, indent.length / 2); + peg$currPos = s3; + s3 = peg$FAILED; } } else { - chop++; + peg$currPos = s3; + s3 = peg$FAILED; } - } else if (input[0] === '"') { - let val = ""; - for (let i = 0; ; i++) { - const currentChar = input[i]; - val += currentChar; - if (i > 0 && currentChar === '"') { - const isEscaped = input[i - 1] === "\\" && input[i - 2] !== "\\"; - if (!isEscaped) { - break; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 43) { + s5 = peg$c131; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c132); + } + } + if (s5 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c129; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c130); } } } - chop = val.length; - try { - yield buildToken(TOKEN_TYPES.string, JSON.parse(val)); - } catch (err) { - if (err instanceof SyntaxError) { - yield buildToken(TOKEN_TYPES.invalid); + if (s5 !== peg$FAILED) { + s6 = []; + s7 = peg$parseS(); + while (s7 !== peg$FAILED) { + s6.push(s7); + s7 = peg$parseS(); + } + if (s6 !== peg$FAILED) { + s7 = peg$parseArithmeticTimesExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c146(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { - throw err; + peg$currPos = s3; + s3 = peg$FAILED; } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - } else if (/^[0-9]/.test(input)) { - let val = ""; - for (let i = 0; /^[0-9]$/.test(input[i]); i++) { - val += input[i]; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c145(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseArithmetic() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 3) === peg$c147) { + s1 = peg$c147; + peg$currPos += 3; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c148); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseS(); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseS(); + } + if (s2 !== peg$FAILED) { + s3 = peg$parseArithmeticExpression(); + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parseS(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parseS(); } - chop = val.length; - yield buildToken(TOKEN_TYPES.number, +val); - } else if (/^true/.test(input)) { - yield buildToken(TOKEN_TYPES.boolean, true); - chop = 4; - } else if (/^false/.test(input)) { - yield buildToken(TOKEN_TYPES.boolean, false); - chop = 5; - } else if (input[0] === ":") { - yield buildToken(TOKEN_TYPES.colon); - chop++; - } else if (input[0] === ",") { - yield buildToken(TOKEN_TYPES.comma); - chop++; - } else if (/^[a-zA-Z\/-]/g.test(input)) { - let name = ""; - for (let i = 0; i < input.length; i++) { - const char = input[i]; - if (char === ":" || char === " " || char === "\n" || char === "\r" || char === ",") { - break; + if (s4 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c149) { + s5 = peg$c149; + peg$currPos += 2; } else { - name += char; + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c150); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c151(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - chop = name.length; - yield buildToken(TOKEN_TYPES.string, name); } else { - yield buildToken(TOKEN_TYPES.invalid); - } - if (!chop) { - yield buildToken(TOKEN_TYPES.invalid); + peg$currPos = s0; + s0 = peg$FAILED; } - col += chop; - lastNewline = input[0] === "\n" || input[0] === "\r" && input[1] === "\n"; - input = input.slice(chop); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - yield buildToken(TOKEN_TYPES.eof); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - class Parser { - constructor(input, fileLoc = "lockfile") { - this.comments = []; - this.tokens = tokenise(input); - this.fileLoc = fileLoc; + return s0; + } + function peg$parseSubshell() { + var s0, s1, s2, s3; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c152) { + s1 = peg$c152; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c153); } - onComment(token) { - const value = token.value; - (0, (_invariant || _load_invariant()).default)(typeof value === "string", "expected token value to be a string"); - const comment = value.trim(); - const versionMatch = comment.match(VERSION_REGEX); - if (versionMatch) { - const version = +versionMatch[1]; - if (version > (_constants || _load_constants()).LOCKFILE_VERSION) { - throw new (_errors || _load_errors()).MessageError(`Can't install from a lockfile of version ${version} as you're on an old yarn version that only supports versions up to ${(_constants || _load_constants()).LOCKFILE_VERSION}. Run \`$ yarn self-update\` to upgrade to the latest version.`); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseShellLine(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s3 = peg$c26; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c27); } } - this.comments.push(comment); - } - next() { - const item = this.tokens.next(); - (0, (_invariant || _load_invariant()).default)(item, "expected a token"); - const done = item.done, value = item.value; - if (done || !value) { - throw new Error("No more tokens"); - } else if (value.type === TOKEN_TYPES.comment) { - this.onComment(value); - return this.next(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c154(s2); + s0 = s1; } else { - return this.token = value; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - unexpected(msg = "Unexpected token") { - throw new SyntaxError(`${msg} ${this.token.line}:${this.token.col} in ${this.fileLoc}`); + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parseVariable() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); } - expect(tokType) { - if (this.token.type === tokType) { - this.next(); + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c157) { + s3 = peg$c157; + peg$currPos += 2; } else { - this.unexpected(); + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c158); + } } - } - eat(tokType) { - if (this.token.type === tokType) { - this.next(); - return true; + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c159(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - return false; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - parse(indent = 0) { - const obj = (0, (_map || _load_map()).default)(); - while (true) { - const propToken = this.token; - if (propToken.type === TOKEN_TYPES.newline) { - const nextToken = this.next(); - if (!indent) { - continue; - } - if (nextToken.type !== TOKEN_TYPES.indent) { - break; - } - if (nextToken.value === indent) { - this.next(); - } else { - break; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c160) { + s3 = peg$c160; + peg$currPos += 3; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c161); } - } else if (propToken.type === TOKEN_TYPES.indent) { - if (propToken.value === indent) { - this.next(); + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c162(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c163) { + s3 = peg$c163; + peg$currPos += 2; } else { - break; - } - } else if (propToken.type === TOKEN_TYPES.eof) { - break; - } else if (propToken.type === TOKEN_TYPES.string) { - const key = propToken.value; - (0, (_invariant || _load_invariant()).default)(key, "Expected a key"); - const keys = [key]; - this.next(); - while (this.token.type === TOKEN_TYPES.comma) { - this.next(); - const keyToken = this.token; - if (keyToken.type !== TOKEN_TYPES.string) { - this.unexpected("Expected string"); + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c164); } - const key2 = keyToken.value; - (0, (_invariant || _load_invariant()).default)(key2, "Expected a key"); - keys.push(key2); - this.next(); } - const valToken = this.token; - if (valToken.type === TOKEN_TYPES.colon) { - this.next(); - const val = this.parse(indent + 1); - for (var _iterator = keys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator](); ; ) { - var _ref; - if (_isArray) { - if (_i >= _iterator.length) - break; - _ref = _iterator[_i++]; + if (s3 !== peg$FAILED) { + s4 = peg$parseCommandString(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s5 = peg$c31; + peg$currPos++; } else { - _i = _iterator.next(); - if (_i.done) - break; - _ref = _i.value; + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } } - const key2 = _ref; - obj[key2] = val; - } - if (indent && this.token.type !== TOKEN_TYPES.indent) { - break; - } - } else if (isValidPropValueToken(valToken)) { - for (var _iterator2 = keys, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) { - var _ref2; - if (_isArray2) { - if (_i2 >= _iterator2.length) - break; - _ref2 = _iterator2[_i2++]; + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c165(s2, s4); + s0 = s1; } else { - _i2 = _iterator2.next(); - if (_i2.done) - break; - _ref2 = _i2.value; + peg$currPos = s0; + s0 = peg$FAILED; } - const key2 = _ref2; - obj[key2] = valToken.value; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - this.next(); } else { - this.unexpected("Invalid value type"); + peg$currPos = s0; + s0 = peg$FAILED; } } else { - this.unexpected(`Unknown token: ${(_util || _load_util()).default.inspect(propToken)}`); + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return obj; - } - } - const MERGE_CONFLICT_ANCESTOR = "|||||||"; - const MERGE_CONFLICT_END = ">>>>>>>"; - const MERGE_CONFLICT_SEP = "======="; - const MERGE_CONFLICT_START = "<<<<<<<"; - function extractConflictVariants(str) { - const variants = [[], []]; - const lines = str.split(/\r?\n/g); - let skip = false; - while (lines.length) { - const line = lines.shift(); - if (line.startsWith(MERGE_CONFLICT_START)) { - while (lines.length) { - const conflictLine = lines.shift(); - if (conflictLine === MERGE_CONFLICT_SEP) { - skip = false; - break; - } else if (skip || conflictLine.startsWith(MERGE_CONFLICT_ANCESTOR)) { - skip = true; - continue; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.substr(peg$currPos, 3) === peg$c166) { + s3 = peg$c166; + peg$currPos += 3; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c167); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c168(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c155) { + s1 = peg$c155; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c156); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s3 = peg$c31; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c32); + } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c169(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - variants[0].push(conflictLine); + peg$currPos = s0; + s0 = peg$FAILED; } - } - while (lines.length) { - const conflictLine = lines.shift(); - if (conflictLine.startsWith(MERGE_CONFLICT_END)) { - break; - } else { - variants[1].push(conflictLine); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 36) { + s1 = peg$c170; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c171); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseIdentifier(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c169(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } } - } else { - variants[0].push(line); - variants[1].push(line); } } - return [variants[0].join("\n"), variants[1].join("\n")]; - } - function hasMergeConflicts(str) { - return str.includes(MERGE_CONFLICT_START) && str.includes(MERGE_CONFLICT_SEP) && str.includes(MERGE_CONFLICT_END); - } - function parse(str, fileLoc) { - const parser = new Parser(str, fileLoc); - parser.next(); - return parser.parse(); } - function parseWithConflict(str, fileLoc) { - const variants = extractConflictVariants(str); - try { - return { type: "merge", object: Object.assign({}, parse(variants[0], fileLoc), parse(variants[1], fileLoc)) }; - } catch (err) { - if (err instanceof SyntaxError) { - return { type: "conflict", object: {} }; - } else { - throw err; - } + return s0; + } + function peg$parseGlob() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = peg$parseGlobText(); + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c172(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c173(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - var _map; - function _load_map() { - return _map = _interopRequireDefault(__webpack_require__(20)); - } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; + return s0; + } + function peg$parseGlobText() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - const debug = __webpack_require__(212)("yarn"); - class BlockingQueue { - constructor(alias, maxConcurrency = Infinity) { - this.concurrencyQueue = []; - this.maxConcurrency = maxConcurrency; - this.runningCount = 0; - this.warnedStuck = false; - this.alias = alias; - this.first = true; - this.running = (0, (_map || _load_map()).default)(); - this.queue = (0, (_map || _load_map()).default)(); - this.stuckTick = this.stuckTick.bind(this); - } - stillActive() { - if (this.stuckTimer) { - clearTimeout(this.stuckTimer); + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); } - this.stuckTimer = setTimeout(this.stuckTick, 5e3); - this.stuckTimer.unref && this.stuckTimer.unref(); } - stuckTick() { - if (this.runningCount === 1) { - this.warnedStuck = true; - debug(`The ${JSON.stringify(this.alias)} blocking queue may be stuck. 5 seconds without any activity with 1 worker: ${Object.keys(this.running)[0]}`); - } + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - push(key, factory) { - if (this.first) { - this.first = false; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + s3 = peg$currPos; + peg$silentFails++; + s4 = peg$parseGlobSpecialShellChars(); + peg$silentFails--; + if (s4 === peg$FAILED) { + s3 = void 0; } else { - this.stillActive(); + peg$currPos = s3; + s3 = peg$FAILED; } - return new Promise((resolve, reject) => { - const queue = this.queue[key] = this.queue[key] || []; - queue.push({ factory, resolve, reject }); - if (!this.running[key]) { - this.shift(key); - } - }); - } - shift(key) { - if (this.running[key]) { - delete this.running[key]; - this.runningCount--; - if (this.stuckTimer) { - clearTimeout(this.stuckTimer); - this.stuckTimer = null; + if (s3 !== peg$FAILED) { + if (input.length > peg$currPos) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c125); + } } - if (this.warnedStuck) { - this.warnedStuck = false; - debug(`${JSON.stringify(this.alias)} blocking queue finally resolved. Nothing to worry about.`); + if (s4 !== peg$FAILED) { + peg$savedPos = s2; + s3 = peg$c86(s4); + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - } - const queue = this.queue[key]; - if (!queue) { - return; - } - var _queue$shift = queue.shift(); - const resolve = _queue$shift.resolve, reject = _queue$shift.reject, factory = _queue$shift.factory; - if (!queue.length) { - delete this.queue[key]; - } - const next = () => { - this.shift(key); - this.shiftConcurrencyQueue(); - }; - const run = () => { - this.running[key] = true; - this.runningCount++; - factory().then(function(val) { - resolve(val); - next(); - return null; - }).catch(function(err) { - reject(err); - next(); - }); - }; - this.maybePushConcurrencyQueue(run); - } - maybePushConcurrencyQueue(run) { - if (this.runningCount < this.maxConcurrency) { - run(); } else { - this.concurrencyQueue.push(run); - } - } - shiftConcurrencyQueue() { - if (this.runningCount < this.maxConcurrency) { - const fn2 = this.concurrencyQueue.shift(); - if (fn2) { - fn2(); - } + peg$currPos = s2; + s2 = peg$FAILED; } } + } else { + s1 = peg$FAILED; } - exports3.default = BlockingQueue; - }, - function(module3, exports3) { - module3.exports = function(exec) { - try { - return !!exec(); - } catch (e) { - return true; - } - }; - }, - , - , - , - , - , - , - , - , - , - , - , - , - , - , - function(module3, exports3, __webpack_require__) { - var cof = __webpack_require__(47); - var TAG = __webpack_require__(13)("toStringTag"); - var ARG = cof(function() { - return arguments; - }()) == "Arguments"; - var tryGet = function(it, key) { - try { - return it[key]; - } catch (e) { - } - }; - module3.exports = function(it) { - var O, T, B; - return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG)) == "string" ? T : ARG ? cof(O) : (B = cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; - }; - }, - function(module3, exports3) { - module3.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); - }, - function(module3, exports3, __webpack_require__) { - var document2 = __webpack_require__(11).document; - module3.exports = document2 && document2.documentElement; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var LIBRARY = __webpack_require__(69); - var $export = __webpack_require__(41); - var redefine = __webpack_require__(197); - var hide = __webpack_require__(31); - var Iterators = __webpack_require__(35); - var $iterCreate = __webpack_require__(188); - var setToStringTag = __webpack_require__(71); - var getPrototypeOf = __webpack_require__(194); - var ITERATOR = __webpack_require__(13)("iterator"); - var BUGGY = !([].keys && "next" in [].keys()); - var FF_ITERATOR = "@@iterator"; - var KEYS = "keys"; - var VALUES = "values"; - var returnThis = function() { - return this; - }; - module3.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { - $iterCreate(Constructor, NAME, next); - var getMethod = function(kind) { - if (!BUGGY && kind in proto) - return proto[kind]; - switch (kind) { - case KEYS: - return function keys() { - return new Constructor(this, kind); - }; - case VALUES: - return function values() { - return new Constructor(this, kind); - }; - } - return function entries() { - return new Constructor(this, kind); - }; - }; - var TAG = NAME + " Iterator"; - var DEF_VALUES = DEFAULT == VALUES; - var VALUES_BUG = false; - var proto = Base.prototype; - var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; - var $default = $native || getMethod(DEFAULT); - var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; - var $anyNative = NAME == "Array" ? proto.entries || $native : $native; - var methods, key, IteratorPrototype; - if ($anyNative) { - IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); - if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { - setToStringTag(IteratorPrototype, TAG, true); - if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != "function") - hide(IteratorPrototype, ITERATOR, returnThis); - } - } - if (DEF_VALUES && $native && $native.name !== VALUES) { - VALUES_BUG = true; - $default = function values() { - return $native.call(this); - }; - } - if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) { - hide(proto, ITERATOR, $default); - } - Iterators[NAME] = $default; - Iterators[TAG] = returnThis; - if (DEFAULT) { - methods = { - values: DEF_VALUES ? $default : getMethod(VALUES), - keys: IS_SET ? $default : getMethod(KEYS), - entries: $entries - }; - if (FORCED) - for (key in methods) { - if (!(key in proto)) - redefine(proto, key, methods[key]); - } - else - $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods); - } - return methods; - }; - }, - function(module3, exports3) { - module3.exports = function(exec) { - try { - return { e: false, v: exec() }; - } catch (e) { - return { e: true, v: e }; - } - }; - }, - function(module3, exports3, __webpack_require__) { - var anObject = __webpack_require__(27); - var isObject = __webpack_require__(34); - var newPromiseCapability = __webpack_require__(70); - module3.exports = function(C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) - return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; - }; - }, - function(module3, exports3) { - module3.exports = function(bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value - }; - }; - }, - function(module3, exports3, __webpack_require__) { - var core = __webpack_require__(23); - var global2 = __webpack_require__(11); - var SHARED = "__core-js_shared__"; - var store = global2[SHARED] || (global2[SHARED] = {}); - (module3.exports = function(key, value) { - return store[key] || (store[key] = value !== void 0 ? value : {}); - })("versions", []).push({ - version: core.version, - mode: __webpack_require__(69) ? "pure" : "global", - copyright: "\xA9 2018 Denis Pushkarev (zloirock.ru)" - }); - }, - function(module3, exports3, __webpack_require__) { - var anObject = __webpack_require__(27); - var aFunction = __webpack_require__(46); - var SPECIES = __webpack_require__(13)("species"); - module3.exports = function(O, D) { - var C = anObject(O).constructor; - var S; - return C === void 0 || (S = anObject(C)[SPECIES]) == void 0 ? D : aFunction(S); - }; - }, - function(module3, exports3, __webpack_require__) { - var ctx = __webpack_require__(48); - var invoke = __webpack_require__(185); - var html = __webpack_require__(102); - var cel = __webpack_require__(68); - var global2 = __webpack_require__(11); - var process2 = global2.process; - var setTask = global2.setImmediate; - var clearTask = global2.clearImmediate; - var MessageChannel2 = global2.MessageChannel; - var Dispatch = global2.Dispatch; - var counter = 0; - var queue = {}; - var ONREADYSTATECHANGE = "onreadystatechange"; - var defer, channel, port; - var run = function() { - var id = +this; - if (queue.hasOwnProperty(id)) { - var fn2 = queue[id]; - delete queue[id]; - fn2(); - } - }; - var listener = function(event) { - run.call(event.data); - }; - if (!setTask || !clearTask) { - setTask = function setImmediate2(fn2) { - var args2 = []; - var i = 1; - while (arguments.length > i) - args2.push(arguments[i++]); - queue[++counter] = function() { - invoke(typeof fn2 == "function" ? fn2 : Function(fn2), args2); - }; - defer(counter); - return counter; - }; - clearTask = function clearImmediate2(id) { - delete queue[id]; - }; - if (__webpack_require__(47)(process2) == "process") { - defer = function(id) { - process2.nextTick(ctx(run, id, 1)); - }; - } else if (Dispatch && Dispatch.now) { - defer = function(id) { - Dispatch.now(ctx(run, id, 1)); - }; - } else if (MessageChannel2) { - channel = new MessageChannel2(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = ctx(port.postMessage, port, 1); - } else if (global2.addEventListener && typeof postMessage == "function" && !global2.importScripts) { - defer = function(id) { - global2.postMessage(id + "", "*"); - }; - global2.addEventListener("message", listener, false); - } else if (ONREADYSTATECHANGE in cel("script")) { - defer = function(id) { - html.appendChild(cel("script"))[ONREADYSTATECHANGE] = function() { - html.removeChild(this); - run.call(id); - }; - }; - } else { - defer = function(id) { - setTimeout(ctx(run, id, 1), 0); - }; - } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c76(s1); } - module3.exports = { - set: setTask, - clear: clearTask - }; - }, - function(module3, exports3, __webpack_require__) { - var toInteger = __webpack_require__(73); - var min = Math.min; - module3.exports = function(it) { - return it > 0 ? min(toInteger(it), 9007199254740991) : 0; - }; - }, - function(module3, exports3) { - var id = 0; - var px = Math.random(); - module3.exports = function(key) { - return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); - }; - }, - function(module3, exports3, __webpack_require__) { - exports3 = module3.exports = createDebug.debug = createDebug["default"] = createDebug; - exports3.coerce = coerce; - exports3.disable = disable; - exports3.enable = enable; - exports3.enabled = enabled; - exports3.humanize = __webpack_require__(229); - exports3.instances = []; - exports3.names = []; - exports3.skips = []; - exports3.formatters = {}; - function selectColor(namespace) { - var hash = 0, i; - for (i in namespace) { - hash = (hash << 5) - hash + namespace.charCodeAt(i); - hash |= 0; + s0 = s1; + return s0; + } + function peg$parseEnvVariable() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); } - return exports3.colors[Math.abs(hash) % exports3.colors.length]; } - function createDebug(namespace) { - var prevTime; - function debug() { - if (!debug.enabled) - return; - var self2 = debug; - var curr = +new Date(); - var ms = curr - (prevTime || curr); - self2.diff = ms; - self2.prev = prevTime; - self2.curr = curr; - prevTime = curr; - var args2 = new Array(arguments.length); - for (var i = 0; i < args2.length; i++) { - args2[i] = arguments[i]; - } - args2[0] = exports3.coerce(args2[0]); - if (typeof args2[0] !== "string") { - args2.unshift("%O"); - } - var index = 0; - args2[0] = args2[0].replace(/%([a-zA-Z%])/g, function(match, format) { - if (match === "%%") - return match; - index++; - var formatter = exports3.formatters[format]; - if (typeof formatter === "function") { - var val = args2[index]; - match = formatter.call(self2, val); - args2.splice(index, 1); - index--; + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c174.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c175); } - return match; - }); - exports3.formatArgs.call(self2, args2); - var logFn = debug.log || exports3.log || console.log.bind(console); - logFn.apply(self2, args2); - } - debug.namespace = namespace; - debug.enabled = exports3.enabled(namespace); - debug.useColors = exports3.useColors(); - debug.color = selectColor(namespace); - debug.destroy = destroy; - if (typeof exports3.init === "function") { - exports3.init(debug); + } } - exports3.instances.push(debug); - return debug; + } else { + s1 = peg$FAILED; } - function destroy() { - var index = exports3.instances.indexOf(this); - if (index !== -1) { - exports3.instances.splice(index, 1); - return true; - } else { - return false; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c176(); + } + s0 = s1; + return s0; + } + function peg$parseIdentifier() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c177.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c178); } } - function enable(namespaces) { - exports3.save(namespaces); - exports3.names = []; - exports3.skips = []; - var i; - var split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); - var len = split.length; - for (i = 0; i < len; i++) { - if (!split[i]) - continue; - namespaces = split[i].replace(/\*/g, ".*?"); - if (namespaces[0] === "-") { - exports3.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c177.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; } else { - exports3.names.push(new RegExp("^" + namespaces + "$")); + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c178); + } } } - for (i = 0; i < exports3.instances.length; i++) { - var instance = exports3.instances[i]; - instance.enabled = exports3.enabled(instance.namespace); - } + } else { + s1 = peg$FAILED; } - function disable() { - exports3.enable(""); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c176(); } - function enabled(name) { - if (name[name.length - 1] === "*") { - return true; - } - var i, len; - for (i = 0, len = exports3.skips.length; i < len; i++) { - if (exports3.skips[i].test(name)) { - return false; - } - } - for (i = 0, len = exports3.names.length; i < len; i++) { - if (exports3.names[i].test(name)) { - return true; - } + s0 = s1; + return s0; + } + function peg$parseSpecialShellChars() { + var s0; + if (peg$c179.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c180); } - return false; } - function coerce(val) { - if (val instanceof Error) - return val.stack || val.message; - return val; - } - }, - , - function(module3, exports3, __webpack_require__) { - module3.exports = realpath; - realpath.realpath = realpath; - realpath.sync = realpathSync; - realpath.realpathSync = realpathSync; - realpath.monkeypatch = monkeypatch; - realpath.unmonkeypatch = unmonkeypatch; - var fs = __webpack_require__(3); - var origRealpath = fs.realpath; - var origRealpathSync = fs.realpathSync; - var version = process.version; - var ok = /^v[0-5]\./.test(version); - var old = __webpack_require__(217); - function newError(er) { - return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); - } - function realpath(p, cache, cb) { - if (ok) { - return origRealpath(p, cache, cb); - } - if (typeof cache === "function") { - cb = cache; - cache = null; + return s0; + } + function peg$parseGlobSpecialShellChars() { + var s0; + if (peg$c181.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c182); } - origRealpath(p, cache, function(er, result) { - if (newError(er)) { - old.realpath(p, cache, cb); - } else { - cb(er, result); - } - }); } - function realpathSync(p, cache) { - if (ok) { - return origRealpathSync(p, cache); + return s0; + } + function peg$parseS() { + var s0, s1; + s0 = []; + if (peg$c183.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c184); } - try { - return origRealpathSync(p, cache); - } catch (er) { - if (newError(er)) { - return old.realpathSync(p, cache); + } + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c183.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; } else { - throw er; + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c184); + } } } + } else { + s0 = peg$FAILED; } - function monkeypatch() { - fs.realpath = realpath; - fs.realpathSync = realpathSync; - } - function unmonkeypatch() { - fs.realpath = origRealpath; - fs.realpathSync = origRealpathSync; - } - }, - function(module3, exports3, __webpack_require__) { - exports3.alphasort = alphasort; - exports3.alphasorti = alphasorti; - exports3.setopts = setopts; - exports3.ownProp = ownProp; - exports3.makeAbs = makeAbs; - exports3.finish = finish; - exports3.mark = mark; - exports3.isIgnored = isIgnored; - exports3.childrenIgnored = childrenIgnored; - function ownProp(obj, field) { - return Object.prototype.hasOwnProperty.call(obj, field); - } - var path = __webpack_require__(0); - var minimatch = __webpack_require__(60); - var isAbsolute = __webpack_require__(76); - var Minimatch = minimatch.Minimatch; - function alphasorti(a, b) { - return a.toLowerCase().localeCompare(b.toLowerCase()); + return s0; + } + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); } - function alphasort(a, b) { - return a.localeCompare(b); + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); + } + } + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/shell.js +var require_shell6 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/shell.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyShell = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyValueArgument = exports2.stringifyRedirectArgument = exports2.stringifyArgument = exports2.stringifyEnvSegment = exports2.stringifyCommand = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyShellLine = exports2.parseShell = void 0; + var shell_1 = require_shell5(); + function parseShell(source, options = { isGlobPattern: () => false }) { + try { + return (0, shell_1.parse)(source, options); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; + } + } + exports2.parseShell = parseShell; + function stringifyShellLine(shellLine, { endSemicolon = false } = {}) { + return shellLine.map(({ command, type }, index) => `${stringifyCommandLine(command)}${type === `;` ? index !== shellLine.length - 1 || endSemicolon ? `;` : `` : ` &`}`).join(` `); + } + exports2.stringifyShellLine = stringifyShellLine; + exports2.stringifyShell = stringifyShellLine; + function stringifyCommandLine(commandLine) { + return `${stringifyCommandChain(commandLine.chain)}${commandLine.then ? ` ${stringifyCommandLineThen(commandLine.then)}` : ``}`; + } + exports2.stringifyCommandLine = stringifyCommandLine; + function stringifyCommandLineThen(commandLineThen) { + return `${commandLineThen.type} ${stringifyCommandLine(commandLineThen.line)}`; + } + exports2.stringifyCommandLineThen = stringifyCommandLineThen; + function stringifyCommandChain(commandChain) { + return `${stringifyCommand(commandChain)}${commandChain.then ? ` ${stringifyCommandChainThen(commandChain.then)}` : ``}`; + } + exports2.stringifyCommandChain = stringifyCommandChain; + function stringifyCommandChainThen(commandChainThen) { + return `${commandChainThen.type} ${stringifyCommandChain(commandChainThen.chain)}`; + } + exports2.stringifyCommandChainThen = stringifyCommandChainThen; + function stringifyCommand(command) { + switch (command.type) { + case `command`: + return `${command.envs.length > 0 ? `${command.envs.map((env) => stringifyEnvSegment(env)).join(` `)} ` : ``}${command.args.map((argument) => stringifyArgument(argument)).join(` `)}`; + case `subshell`: + return `(${stringifyShellLine(command.subshell)})${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `group`: + return `{ ${stringifyShellLine(command.group, { + /* Bash compat */ + endSemicolon: true + })} }${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`; + case `envs`: + return command.envs.map((env) => stringifyEnvSegment(env)).join(` `); + default: + throw new Error(`Unsupported command type: "${command.type}"`); + } + } + exports2.stringifyCommand = stringifyCommand; + function stringifyEnvSegment(envSegment) { + return `${envSegment.name}=${envSegment.args[0] ? stringifyValueArgument(envSegment.args[0]) : ``}`; + } + exports2.stringifyEnvSegment = stringifyEnvSegment; + function stringifyArgument(argument) { + switch (argument.type) { + case `redirection`: + return stringifyRedirectArgument(argument); + case `argument`: + return stringifyValueArgument(argument); + default: + throw new Error(`Unsupported argument type: "${argument.type}"`); + } + } + exports2.stringifyArgument = stringifyArgument; + function stringifyRedirectArgument(argument) { + return `${argument.subtype} ${argument.args.map((argument2) => stringifyValueArgument(argument2)).join(` `)}`; + } + exports2.stringifyRedirectArgument = stringifyRedirectArgument; + function stringifyValueArgument(argument) { + return argument.segments.map((segment) => stringifyArgumentSegment(segment)).join(``); + } + exports2.stringifyValueArgument = stringifyValueArgument; + function stringifyArgumentSegment(argumentSegment) { + const doubleQuoteIfRequested = (string, quote) => quote ? `"${string}"` : string; + const quoteIfNeeded = (text) => { + if (text === ``) + return `""`; + if (!text.match(/[(){}<>$|&; \t"']/)) + return text; + return `$'${text.replace(/\\/g, `\\\\`).replace(/'/g, `\\'`).replace(/\f/g, `\\f`).replace(/\n/g, `\\n`).replace(/\r/g, `\\r`).replace(/\t/g, `\\t`).replace(/\v/g, `\\v`).replace(/\0/g, `\\0`)}'`; + }; + switch (argumentSegment.type) { + case `text`: + return quoteIfNeeded(argumentSegment.text); + case `glob`: + return argumentSegment.pattern; + case `shell`: + return doubleQuoteIfRequested(`\${${stringifyShellLine(argumentSegment.shell)}}`, argumentSegment.quoted); + case `variable`: + return doubleQuoteIfRequested(typeof argumentSegment.defaultValue === `undefined` ? typeof argumentSegment.alternativeValue === `undefined` ? `\${${argumentSegment.name}}` : argumentSegment.alternativeValue.length === 0 ? `\${${argumentSegment.name}:+}` : `\${${argumentSegment.name}:+${argumentSegment.alternativeValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}` : argumentSegment.defaultValue.length === 0 ? `\${${argumentSegment.name}:-}` : `\${${argumentSegment.name}:-${argumentSegment.defaultValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}`, argumentSegment.quoted); + case `arithmetic`: + return `$(( ${stringifyArithmeticExpression(argumentSegment.arithmetic)} ))`; + default: + throw new Error(`Unsupported argument segment type: "${argumentSegment.type}"`); + } + } + exports2.stringifyArgumentSegment = stringifyArgumentSegment; + function stringifyArithmeticExpression(argument) { + const getOperator = (type) => { + switch (type) { + case `addition`: + return `+`; + case `subtraction`: + return `-`; + case `multiplication`: + return `*`; + case `division`: + return `/`; + default: + throw new Error(`Can't extract operator from arithmetic expression of type "${type}"`); } - function setupIgnores(self2, options) { - self2.ignore = options.ignore || []; - if (!Array.isArray(self2.ignore)) - self2.ignore = [self2.ignore]; - if (self2.ignore.length) { - self2.ignore = self2.ignore.map(ignoreMap); + }; + const parenthesizeIfRequested = (string, parenthesize) => parenthesize ? `( ${string} )` : string; + const stringifyAndParenthesizeIfNeeded = (expression) => ( + // Right now we parenthesize all arithmetic operator expressions because it's easier + parenthesizeIfRequested(stringifyArithmeticExpression(expression), ![`number`, `variable`].includes(expression.type)) + ); + switch (argument.type) { + case `number`: + return String(argument.value); + case `variable`: + return argument.name; + default: + return `${stringifyAndParenthesizeIfNeeded(argument.left)} ${getOperator(argument.type)} ${stringifyAndParenthesizeIfNeeded(argument.right)}`; + } + } + exports2.stringifyArithmeticExpression = stringifyArithmeticExpression; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js +var require_resolution5 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - function ignoreMap(pattern) { - var gmatcher = null; - if (pattern.slice(-3) === "/**") { - var gpattern = pattern.replace(/(\/\*\*)+$/, ""); - gmatcher = new Minimatch(gpattern, { dot: true }); - } - return { - matcher: new Minimatch(pattern, { dot: true }), - gmatcher - }; + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - function setopts(self2, pattern, options) { - if (!options) - options = {}; - if (options.matchBase && pattern.indexOf("/") === -1) { - if (options.noglobstar) { - throw new Error("base matching requires globstar"); + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; } - pattern = "**/" + pattern; - } - self2.silent = !!options.silent; - self2.pattern = pattern; - self2.strict = options.strict !== false; - self2.realpath = !!options.realpath; - self2.realpathCache = options.realpathCache || Object.create(null); - self2.follow = !!options.follow; - self2.dot = !!options.dot; - self2.mark = !!options.mark; - self2.nodir = !!options.nodir; - if (self2.nodir) - self2.mark = true; - self2.sync = !!options.sync; - self2.nounique = !!options.nounique; - self2.nonull = !!options.nonull; - self2.nosort = !!options.nosort; - self2.nocase = !!options.nocase; - self2.stat = !!options.stat; - self2.noprocess = !!options.noprocess; - self2.absolute = !!options.absolute; - self2.maxLength = options.maxLength || Infinity; - self2.cache = options.cache || Object.create(null); - self2.statCache = options.statCache || Object.create(null); - self2.symlinks = options.symlinks || Object.create(null); - setupIgnores(self2, options); - self2.changedCwd = false; - var cwd = process.cwd(); - if (!ownProp(options, "cwd")) - self2.cwd = cwd; - else { - self2.cwd = path.resolve(options.cwd); - self2.changedCwd = self2.cwd !== cwd; } - self2.root = options.root || path.resolve(self2.cwd, "/"); - self2.root = path.resolve(self2.root); - if (process.platform === "win32") - self2.root = self2.root.replace(/\\/g, "/"); - self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); - if (process.platform === "win32") - self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); - self2.nomount = !!options.nomount; - options.nonegate = true; - options.nocomment = true; - self2.minimatch = new Minimatch(pattern, options); - self2.options = self2.minimatch.options; + descriptions.length = j; } - function finish(self2) { - var nou = self2.nounique; - var all = nou ? [] : Object.create(null); - for (var i = 0, l = self2.matches.length; i < l; i++) { - var matches = self2.matches[i]; - if (!matches || Object.keys(matches).length === 0) { - if (self2.nonull) { - var literal = self2.minimatch.globSet[i]; - if (nou) - all.push(literal); - else - all[literal] = true; - } + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; + } + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { resolution: peg$parseresolution }, peg$startRuleFunction = peg$parseresolution, peg$c0 = "/", peg$c1 = peg$literalExpectation("/", false), peg$c2 = function(from, descriptor) { + return { from, descriptor }; + }, peg$c3 = function(descriptor) { + return { descriptor }; + }, peg$c4 = "@", peg$c5 = peg$literalExpectation("@", false), peg$c6 = function(fullName, description) { + return { fullName, description }; + }, peg$c7 = function(fullName) { + return { fullName }; + }, peg$c8 = function() { + return text(); + }, peg$c9 = /^[^\/@]/, peg$c10 = peg$classExpectation(["/", "@"], true, false), peg$c11 = /^[^\/]/, peg$c12 = peg$classExpectation(["/"], true, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); + } + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; } else { - var m = Object.keys(matches); - if (nou) - all.push.apply(all, m); - else - m.forEach(function(m2) { - all[m2] = true; - }); + details.column++; } + p++; } - if (!nou) - all = Object.keys(all); - if (!self2.nosort) - all = all.sort(self2.nocase ? alphasorti : alphasort); - if (self2.mark) { - for (var i = 0; i < all.length; i++) { - all[i] = self2._mark(all[i]); - } - if (self2.nodir) { - all = all.filter(function(e) { - var notDir = !/\/$/.test(e); - var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; - if (notDir && c) - notDir = c !== "DIR" && !Array.isArray(c); - return notDir; - }); - } + peg$posDetailsCache[pos] = details; + return details; + } + } + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column } - if (self2.ignore.length) - all = all.filter(function(m2) { - return !isIgnored(self2, m2); - }); - self2.found = all; + }; + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; } - function mark(self2, p) { - var abs = makeAbs(self2, p); - var c = self2.cache[abs]; - var m = p; - if (c) { - var isDir = c === "DIR" || Array.isArray(c); - var slash = p.slice(-1) === "/"; - if (isDir && !slash) - m += "/"; - else if (!isDir && slash) - m = m.slice(0, -1); - if (m !== p) { - var mabs = makeAbs(self2, m); - self2.statCache[mabs] = self2.statCache[abs]; - self2.cache[mabs] = self2.cache[abs]; + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } + peg$maxFailExpected.push(expected2); + } + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); + } + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseresolution() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s2 = peg$c0; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); } } - return m; - } - function makeAbs(self2, f) { - var abs = f; - if (f.charAt(0) === "/") { - abs = path.join(self2.root, f); - } else if (isAbsolute(f) || f === "") { - abs = f; - } else if (self2.changedCwd) { - abs = path.resolve(self2.cwd, f); + if (s2 !== peg$FAILED) { + s3 = peg$parsespecifier(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c2(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - abs = path.resolve(f); + peg$currPos = s0; + s0 = peg$FAILED; } - if (process.platform === "win32") - abs = abs.replace(/\\/g, "/"); - return abs; - } - function isIgnored(self2, path2) { - if (!self2.ignore.length) - return false; - return self2.ignore.some(function(item) { - return item.matcher.match(path2) || !!(item.gmatcher && item.gmatcher.match(path2)); - }); - } - function childrenIgnored(self2, path2) { - if (!self2.ignore.length) - return false; - return self2.ignore.some(function(item) { - return !!(item.gmatcher && item.gmatcher.match(path2)); - }); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }, - function(module3, exports3, __webpack_require__) { - var path = __webpack_require__(0); - var fs = __webpack_require__(3); - var _0777 = parseInt("0777", 8); - module3.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP; - function mkdirP(p, opts, f, made) { - if (typeof opts === "function") { - f = opts; - opts = {}; - } else if (!opts || typeof opts !== "object") { - opts = { mode: opts }; - } - var mode = opts.mode; - var xfs = opts.fs || fs; - if (mode === void 0) { - mode = _0777 & ~process.umask(); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsespecifier(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s1); } - if (!made) - made = null; - var cb = f || function() { - }; - p = path.resolve(p); - xfs.mkdir(p, mode, function(er) { - if (!er) { - made = made || p; - return cb(null, made); - } - switch (er.code) { - case "ENOENT": - mkdirP(path.dirname(p), opts, function(er2, made2) { - if (er2) - cb(er2, made2); - else - mkdirP(p, opts, cb, made2); - }); - break; - default: - xfs.stat(p, function(er2, stat) { - if (er2 || !stat.isDirectory()) - cb(er, made); - else - cb(null, made); - }); - break; - } - }); + s0 = s1; } - mkdirP.sync = function sync(p, opts, made) { - if (!opts || typeof opts !== "object") { - opts = { mode: opts }; - } - var mode = opts.mode; - var xfs = opts.fs || fs; - if (mode === void 0) { - mode = _0777 & ~process.umask(); - } - if (!made) - made = null; - p = path.resolve(p); - try { - xfs.mkdirSync(p, mode); - made = made || p; - } catch (err0) { - switch (err0.code) { - case "ENOENT": - made = sync(path.dirname(p), opts, made); - sync(p, opts, made); - break; - default: - var stat; - try { - stat = xfs.statSync(p); - } catch (err1) { - throw err0; - } - if (!stat.isDirectory()) - throw err0; - break; + return s0; + } + function peg$parsespecifier() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 64) { + s2 = peg$c4; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); } } - return made; - }; - }, - , - , - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - module3.exports = (x) => { - if (typeof x !== "string") { - throw new TypeError("Expected a string, got " + typeof x); - } - if (x.charCodeAt(0) === 65279) { - return x.slice(1); - } - return x; - }; - }, - function(module3, exports3) { - module3.exports = wrappy; - function wrappy(fn2, cb) { - if (fn2 && cb) - return wrappy(fn2)(cb); - if (typeof fn2 !== "function") - throw new TypeError("need wrapper function"); - Object.keys(fn2).forEach(function(k) { - wrapper[k] = fn2[k]; - }); - return wrapper; - function wrapper() { - var args2 = new Array(arguments.length); - for (var i = 0; i < args2.length; i++) { - args2[i] = arguments[i]; - } - var ret = fn2.apply(this, args2); - var cb2 = args2[args2.length - 1]; - if (typeof ret === "function" && ret !== cb2) { - Object.keys(cb2).forEach(function(k) { - ret[k] = cb2[k]; - }); + if (s2 !== peg$FAILED) { + s3 = peg$parsedescription(); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c6(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return ret; - } - } - }, - , - , - , - , - , - , - , - function(module3, exports3, __webpack_require__) { - var cof = __webpack_require__(47); - module3.exports = Object("z").propertyIsEnumerable(0) ? Object : function(it) { - return cof(it) == "String" ? it.split("") : Object(it); - }; - }, - function(module3, exports3, __webpack_require__) { - var $keys = __webpack_require__(195); - var enumBugKeys = __webpack_require__(101); - module3.exports = Object.keys || function keys(O) { - return $keys(O, enumBugKeys); - }; - }, - function(module3, exports3, __webpack_require__) { - var defined = __webpack_require__(67); - module3.exports = function(it) { - return Object(defined(it)); - }; - }, - , - , - , - , - , - , - , - , - , - , - , - function(module3, exports3) { - module3.exports = { "name": "yarn", "installationMethod": "unknown", "version": "1.10.0-0", "license": "BSD-2-Clause", "preferGlobal": true, "description": "\u{1F4E6}\u{1F408} Fast, reliable, and secure dependency management.", "dependencies": { "@zkochan/cmd-shim": "^2.2.4", "babel-runtime": "^6.26.0", "bytes": "^3.0.0", "camelcase": "^4.0.0", "chalk": "^2.1.0", "commander": "^2.9.0", "death": "^1.0.0", "debug": "^3.0.0", "deep-equal": "^1.0.1", "detect-indent": "^5.0.0", "dnscache": "^1.0.1", "glob": "^7.1.1", "gunzip-maybe": "^1.4.0", "hash-for-dep": "^1.2.3", "imports-loader": "^0.8.0", "ini": "^1.3.4", "inquirer": "^3.0.1", "invariant": "^2.2.0", "is-builtin-module": "^2.0.0", "is-ci": "^1.0.10", "is-webpack-bundle": "^1.0.0", "leven": "^2.0.0", "loud-rejection": "^1.2.0", "micromatch": "^2.3.11", "mkdirp": "^0.5.1", "node-emoji": "^1.6.1", "normalize-url": "^2.0.0", "npm-logical-tree": "^1.2.1", "object-path": "^0.11.2", "proper-lockfile": "^2.0.0", "puka": "^1.0.0", "read": "^1.0.7", "request": "^2.87.0", "request-capture-har": "^1.2.2", "rimraf": "^2.5.0", "semver": "^5.1.0", "ssri": "^5.3.0", "strip-ansi": "^4.0.0", "strip-bom": "^3.0.0", "tar-fs": "^1.16.0", "tar-stream": "^1.6.1", "uuid": "^3.0.1", "v8-compile-cache": "^2.0.0", "validate-npm-package-license": "^3.0.3", "yn": "^2.0.0" }, "devDependencies": { "babel-core": "^6.26.0", "babel-eslint": "^7.2.3", "babel-loader": "^6.2.5", "babel-plugin-array-includes": "^2.0.3", "babel-plugin-transform-builtin-extend": "^1.1.2", "babel-plugin-transform-inline-imports-commonjs": "^1.0.0", "babel-plugin-transform-runtime": "^6.4.3", "babel-preset-env": "^1.6.0", "babel-preset-flow": "^6.23.0", "babel-preset-stage-0": "^6.0.0", "babylon": "^6.5.0", "commitizen": "^2.9.6", "cz-conventional-changelog": "^2.0.0", "eslint": "^4.3.0", "eslint-config-fb-strict": "^22.0.0", "eslint-plugin-babel": "^5.0.0", "eslint-plugin-flowtype": "^2.35.0", "eslint-plugin-jasmine": "^2.6.2", "eslint-plugin-jest": "^21.0.0", "eslint-plugin-jsx-a11y": "^6.0.2", "eslint-plugin-prefer-object-spread": "^1.2.1", "eslint-plugin-prettier": "^2.1.2", "eslint-plugin-react": "^7.1.0", "eslint-plugin-relay": "^0.0.24", "eslint-plugin-yarn-internal": "file:scripts/eslint-rules", "execa": "^0.10.0", "flow-bin": "^0.66.0", "git-release-notes": "^3.0.0", "gulp": "^3.9.0", "gulp-babel": "^7.0.0", "gulp-if": "^2.0.1", "gulp-newer": "^1.0.0", "gulp-plumber": "^1.0.1", "gulp-sourcemaps": "^2.2.0", "gulp-util": "^3.0.7", "gulp-watch": "^5.0.0", "jest": "^22.4.4", "jsinspect": "^0.12.6", "minimatch": "^3.0.4", "mock-stdin": "^0.3.0", "prettier": "^1.5.2", "temp": "^0.8.3", "webpack": "^2.1.0-beta.25", "yargs": "^6.3.0" }, "resolutions": { "sshpk": "^1.14.2" }, "engines": { "node": ">=4.0.0" }, "repository": "yarnpkg/yarn", "bin": { "yarn": "./bin/yarn.js", "yarnpkg": "./bin/yarn.js" }, "scripts": { "build": "gulp build", "build-bundle": "node ./scripts/build-webpack.js", "build-chocolatey": "powershell ./scripts/build-chocolatey.ps1", "build-deb": "./scripts/build-deb.sh", "build-dist": "bash ./scripts/build-dist.sh", "build-win-installer": "scripts\\build-windows-installer.bat", "changelog": "git-release-notes $(git describe --tags --abbrev=0 $(git describe --tags --abbrev=0)^)..$(git describe --tags --abbrev=0) scripts/changelog.md", "dupe-check": "yarn jsinspect ./src", "lint": "eslint . && flow check", "pkg-tests": "yarn --cwd packages/pkg-tests jest yarn.test.js", "prettier": "eslint src __tests__ --fix", "release-branch": "./scripts/release-branch.sh", "test": "yarn lint && yarn test-only", "test-only": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --verbose", "test-only-debug": "node --inspect-brk --max_old_space_size=4096 node_modules/jest/bin/jest.js --runInBand --verbose", "test-coverage": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --coverage --verbose", "watch": "gulp watch", "commit": "git-cz" }, "jest": { "collectCoverageFrom": ["src/**/*.js"], "testEnvironment": "node", "modulePathIgnorePatterns": ["__tests__/fixtures/", "packages/pkg-tests/pkg-tests-fixtures", "dist/"], "testPathIgnorePatterns": ["__tests__/(fixtures|__mocks__)/", "updates/", "_(temp|mock|install|init|helpers).js$", "packages/pkg-tests"] }, "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" } } }; - }, - , - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.default = stringify; - var _misc; - function _load_misc() { - return _misc = __webpack_require__(12); - } - var _constants; - function _load_constants() { - return _constants = __webpack_require__(6); - } - var _package; - function _load_package() { - return _package = __webpack_require__(145); - } - const NODE_VERSION = process.version; - function shouldWrapKey(str) { - return str.indexOf("true") === 0 || str.indexOf("false") === 0 || /[:\s\n\\",\[\]]/g.test(str) || /^[0-9]/g.test(str) || !/^[a-zA-Z]/g.test(str); - } - function maybeWrap(str) { - if (typeof str === "boolean" || typeof str === "number" || shouldWrapKey(str)) { - return JSON.stringify(str); } else { - return str; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - const priorities = { - name: 1, - version: 2, - uid: 3, - resolved: 4, - integrity: 5, - registry: 6, - dependencies: 7 - }; - function priorityThenAlphaSort(a, b) { - if (priorities[a] || priorities[b]) { - return (priorities[a] || 100) > (priorities[b] || 100) ? 1 : -1; - } else { - return (0, (_misc || _load_misc()).sortAlpha)(a, b); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsefullName(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c7(s1); } + s0 = s1; } - function _stringify(obj, options) { - if (typeof obj !== "object") { - throw new TypeError(); + return s0; + } + function peg$parsefullName() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 64) { + s1 = peg$c4; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c5); } - const indent = options.indent; - const lines = []; - const keys = Object.keys(obj).sort(priorityThenAlphaSort); - let addedKeys = []; - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - const val = obj[key]; - if (val == null || addedKeys.indexOf(key) >= 0) { - continue; - } - const valKeys = [key]; - if (typeof val === "object") { - for (let j = i + 1; j < keys.length; j++) { - const key2 = keys[j]; - if (val === obj[key2]) { - valKeys.push(key2); - } + } + if (s1 !== peg$FAILED) { + s2 = peg$parseident(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 47) { + s3 = peg$c0; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c1); } } - const keyLine = valKeys.sort((_misc || _load_misc()).sortAlpha).map(maybeWrap).join(", "); - if (typeof val === "string" || typeof val === "boolean" || typeof val === "number") { - lines.push(`${keyLine} ${maybeWrap(val)}`); - } else if (typeof val === "object") { - lines.push(`${keyLine}: -${_stringify(val, { indent: indent + " " })}` + (options.topLevel ? "\n" : "")); + if (s3 !== peg$FAILED) { + s4 = peg$parseident(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - throw new TypeError(); + peg$currPos = s0; + s0 = peg$FAILED; } - addedKeys = addedKeys.concat(valKeys); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return indent + lines.join(` -${indent}`); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function stringify(obj, noHeader, enableVersions) { - const val = _stringify(obj, { - indent: "", - topLevel: true - }); - if (noHeader) { - return val; - } - const lines = []; - lines.push("# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY."); - lines.push(`# yarn lockfile v${(_constants || _load_constants()).LOCKFILE_VERSION}`); - if (enableVersions) { - lines.push(`# yarn v${(_package || _load_package()).version}`); - lines.push(`# node ${NODE_VERSION}`); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseident(); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); } - lines.push("\n"); - lines.push(val); - return lines.join("\n"); + s0 = s1; } - }, - , - , - , - , - , - , - , - , - , - , - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.fileDatesEqual = exports3.copyFile = exports3.unlink = void 0; - var _asyncToGenerator2; - function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(1)); + return s0; + } + function peg$parseident() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } } - let fixTimes = (() => { - var _ref3 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (fd, dest, data) { - const doOpen = fd === void 0; - let openfd = fd ? fd : -1; - if (disableTimestampCorrection === void 0) { - const destStat = yield lstat(dest); - disableTimestampCorrection = fileDatesEqual(destStat.mtime, data.mtime); - } - if (disableTimestampCorrection) { - return; - } - if (doOpen) { - try { - openfd = yield open(dest, "a", data.mode); - } catch (er) { - try { - openfd = yield open(dest, "r", data.mode); - } catch (err) { - return; - } - } - } - try { - if (openfd) { - yield futimes(openfd, data.atime, data.mtime); - } - } catch (er) { - } finally { - if (doOpen && openfd) { - yield close(openfd); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c9.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); } } - }); - return function fixTimes2(_x7, _x8, _x9) { - return _ref3.apply(this, arguments); - }; - })(); - var _fs; - function _load_fs() { - return _fs = _interopRequireDefault(__webpack_require__(3)); + } + } else { + s1 = peg$FAILED; } - var _promise; - function _load_promise() { - return _promise = __webpack_require__(40); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); } - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { default: obj }; + s0 = s1; + return s0; + } + function peg$parsedescription() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); + } } - let disableTimestampCorrection = void 0; - const readFileBuffer = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.readFile); - const close = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.close); - const lstat = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.lstat); - const open = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.open); - const futimes = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.futimes); - const write = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.write); - const unlink = exports3.unlink = (0, (_promise || _load_promise()).promisify)(__webpack_require__(233)); - const copyFile = exports3.copyFile = (() => { - var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data, cleanup) { - try { - yield unlink(data.dest); - yield copyFilePoly(data.src, data.dest, 0, data); - } finally { - if (cleanup) { - cleanup(); - } - } - }); - return function copyFile2(_x, _x2) { - return _ref.apply(this, arguments); - }; - })(); - const copyFilePoly = (src, dest, flags, data) => { - if ((_fs || _load_fs()).default.copyFile) { - return new Promise((resolve, reject) => (_fs || _load_fs()).default.copyFile(src, dest, flags, (err) => { - if (err) { - reject(err); - } else { - fixTimes(void 0, dest, data).then(() => resolve()).catch((ex) => reject(ex)); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c11.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c12); } - })); - } else { - return copyWithBuffer(src, dest, flags, data); - } - }; - const copyWithBuffer = (() => { - var _ref2 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest, flags, data) { - const fd = yield open(dest, "w", data.mode); - try { - const buffer = yield readFileBuffer(src); - yield write(fd, buffer, 0, buffer.length); - yield fixTimes(fd, dest, data); - } finally { - yield close(fd); } - }); - return function copyWithBuffer2(_x3, _x4, _x5, _x6) { - return _ref2.apply(this, arguments); - }; - })(); - const fileDatesEqual = exports3.fileDatesEqual = (a, b) => { - const aTime = a.getTime(); - const bTime = b.getTime(); - if (process.platform !== "win32") { - return aTime === bTime; - } - if (Math.abs(aTime - bTime) <= 1) { - return true; - } - const aTimeSec = Math.floor(aTime / 1e3); - const bTimeSec = Math.floor(bTime / 1e3); - if (aTime - aTimeSec * 1e3 === 0 || bTime - bTimeSec * 1e3 === 0) { - return aTimeSec === bTimeSec; - } - return aTime === bTime; - }; - }, - , - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.isFakeRoot = isFakeRoot; - exports3.isRootUser = isRootUser; - function getUid() { - if (process.platform !== "win32" && process.getuid) { - return process.getuid(); } - return null; + } else { + s1 = peg$FAILED; } - exports3.default = isRootUser(getUid()) && !isFakeRoot(); - function isFakeRoot() { - return Boolean(process.env.FAKEROOTKEY); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); } - function isRootUser(uid) { - return uid === 0; + s0 = s1; + return s0; + } + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); } - }, - , - function(module3, exports3, __webpack_require__) { - "use strict"; - Object.defineProperty(exports3, "__esModule", { - value: true - }); - exports3.getDataDir = getDataDir; - exports3.getCacheDir = getCacheDir; - exports3.getConfigDir = getConfigDir; - const path = __webpack_require__(0); - const userHome = __webpack_require__(45).default; - const FALLBACK_CONFIG_DIR = path.join(userHome, ".config", "yarn"); - const FALLBACK_CACHE_DIR = path.join(userHome, ".cache", "yarn"); - function getDataDir() { - if (process.platform === "win32") { - const WIN32_APPDATA_DIR = getLocalAppDataDir(); - return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path.join(WIN32_APPDATA_DIR, "Data"); - } else if (process.env.XDG_DATA_HOME) { - return path.join(process.env.XDG_DATA_HOME, "yarn"); - } else { - return FALLBACK_CONFIG_DIR; + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); + } + } + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/resolution.js +var require_resolution6 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/resolution.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifyResolution = exports2.parseResolution = void 0; + var resolution_1 = require_resolution5(); + function parseResolution(source) { + const legacyResolution = source.match(/^\*{1,2}\/(.*)/); + if (legacyResolution) + throw new Error(`The override for '${source}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${legacyResolution[1]}' instead.`); + try { + return (0, resolution_1.parse)(source); + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; + } + } + exports2.parseResolution = parseResolution; + function stringifyResolution(resolution) { + let str = ``; + if (resolution.from) { + str += resolution.from.fullName; + if (resolution.from.description) + str += `@${resolution.from.description}`; + str += `/`; + } + str += resolution.descriptor.fullName; + if (resolution.descriptor.description) + str += `@${resolution.descriptor.description}`; + return str; + } + exports2.stringifyResolution = stringifyResolution; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/syml.js +var require_syml5 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/grammars/syml.js"(exports2, module2) { + "use strict"; + function peg$subclass(child, parent) { + function ctor() { + this.constructor = child; + } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + function peg$SyntaxError(message2, expected, found, location) { + this.message = message2; + this.expected = expected; + this.found = found; + this.location = location; + this.name = "SyntaxError"; + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, peg$SyntaxError); + } + } + peg$subclass(peg$SyntaxError, Error); + peg$SyntaxError.buildMessage = function(expected, found) { + var DESCRIBE_EXPECTATION_FNS = { + literal: function(expectation) { + return '"' + literalEscape(expectation.text) + '"'; + }, + "class": function(expectation) { + var escapedParts = "", i; + for (i = 0; i < expectation.parts.length; i++) { + escapedParts += expectation.parts[i] instanceof Array ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1]) : classEscape(expectation.parts[i]); } + return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]"; + }, + any: function(expectation) { + return "any character"; + }, + end: function(expectation) { + return "end of input"; + }, + other: function(expectation) { + return expectation.description; } - function getCacheDir() { - if (process.platform === "win32") { - return path.join(getLocalAppDataDir() || path.join(userHome, "AppData", "Local", "Yarn"), "Cache"); - } else if (process.env.XDG_CACHE_HOME) { - return path.join(process.env.XDG_CACHE_HOME, "yarn"); - } else if (process.platform === "darwin") { - return path.join(userHome, "Library", "Caches", "Yarn"); - } else { - return FALLBACK_CACHE_DIR; - } + }; + function hex(ch) { + return ch.charCodeAt(0).toString(16).toUpperCase(); + } + function literalEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function classEscape(s) { + return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) { + return "\\x0" + hex(ch); + }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) { + return "\\x" + hex(ch); + }); + } + function describeExpectation(expectation) { + return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation); + } + function describeExpected(expected2) { + var descriptions = new Array(expected2.length), i, j; + for (i = 0; i < expected2.length; i++) { + descriptions[i] = describeExpectation(expected2[i]); } - function getConfigDir() { - if (process.platform === "win32") { - const WIN32_APPDATA_DIR = getLocalAppDataDir(); - return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path.join(WIN32_APPDATA_DIR, "Config"); - } else if (process.env.XDG_CONFIG_HOME) { - return path.join(process.env.XDG_CONFIG_HOME, "yarn"); - } else { - return FALLBACK_CONFIG_DIR; + descriptions.sort(); + if (descriptions.length > 0) { + for (i = 1, j = 1; i < descriptions.length; i++) { + if (descriptions[i - 1] !== descriptions[i]) { + descriptions[j] = descriptions[i]; + j++; + } } + descriptions.length = j; } - function getLocalAppDataDir() { - return process.env.LOCALAPPDATA ? path.join(process.env.LOCALAPPDATA, "Yarn") : null; - } - }, - , - function(module3, exports3, __webpack_require__) { - module3.exports = { "default": __webpack_require__(179), __esModule: true }; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - module3.exports = balanced; - function balanced(a, b, str) { - if (a instanceof RegExp) - a = maybeMatch(a, str); - if (b instanceof RegExp) - b = maybeMatch(b, str); - var r = range(a, b, str); - return r && { - start: r[0], - end: r[1], - pre: str.slice(0, r[0]), - body: str.slice(r[0] + a.length, r[1]), - post: str.slice(r[1] + b.length) - }; + switch (descriptions.length) { + case 1: + return descriptions[0]; + case 2: + return descriptions[0] + " or " + descriptions[1]; + default: + return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1]; } - function maybeMatch(reg, str) { - var m = str.match(reg); - return m ? m[0] : null; + } + function describeFound(found2) { + return found2 ? '"' + literalEscape(found2) + '"' : "end of input"; + } + return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found."; + }; + function peg$parse(input, options) { + options = options !== void 0 ? options : {}; + var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(statements) { + return [].concat(...statements); + }, peg$c1 = "-", peg$c2 = peg$literalExpectation("-", false), peg$c3 = function(value) { + return value; + }, peg$c4 = function(statements) { + return Object.assign({}, ...statements); + }, peg$c5 = "#", peg$c6 = peg$literalExpectation("#", false), peg$c7 = peg$anyExpectation(), peg$c8 = function() { + return {}; + }, peg$c9 = ":", peg$c10 = peg$literalExpectation(":", false), peg$c11 = function(property, value) { + return { [property]: value }; + }, peg$c12 = ",", peg$c13 = peg$literalExpectation(",", false), peg$c14 = function(property, other) { + return other; + }, peg$c15 = function(property, others, value) { + return Object.assign({}, ...[property].concat(others).map((property2) => ({ [property2]: value }))); + }, peg$c16 = function(statements) { + return statements; + }, peg$c17 = function(expression) { + return expression; + }, peg$c18 = peg$otherExpectation("correct indentation"), peg$c19 = " ", peg$c20 = peg$literalExpectation(" ", false), peg$c21 = function(spaces) { + return spaces.length === indentLevel * INDENT_STEP; + }, peg$c22 = function(spaces) { + return spaces.length === (indentLevel + 1) * INDENT_STEP; + }, peg$c23 = function() { + indentLevel++; + return true; + }, peg$c24 = function() { + indentLevel--; + return true; + }, peg$c25 = function() { + return text(); + }, peg$c26 = peg$otherExpectation("pseudostring"), peg$c27 = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, peg$c28 = peg$classExpectation(["\r", "\n", " ", " ", "?", ":", ",", "]", "[", "{", "}", "#", "&", "*", "!", "|", ">", "'", '"', "%", "@", "`", "-"], true, false), peg$c29 = /^[^\r\n\t ,\][{}:#"']/, peg$c30 = peg$classExpectation(["\r", "\n", " ", " ", ",", "]", "[", "{", "}", ":", "#", '"', "'"], true, false), peg$c31 = function() { + return text().replace(/^ *| *$/g, ""); + }, peg$c32 = "--", peg$c33 = peg$literalExpectation("--", false), peg$c34 = /^[a-zA-Z\/0-9]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], "/", ["0", "9"]], false, false), peg$c36 = /^[^\r\n\t :,]/, peg$c37 = peg$classExpectation(["\r", "\n", " ", " ", ":", ","], true, false), peg$c38 = "null", peg$c39 = peg$literalExpectation("null", false), peg$c40 = function() { + return null; + }, peg$c41 = "true", peg$c42 = peg$literalExpectation("true", false), peg$c43 = function() { + return true; + }, peg$c44 = "false", peg$c45 = peg$literalExpectation("false", false), peg$c46 = function() { + return false; + }, peg$c47 = peg$otherExpectation("string"), peg$c48 = '"', peg$c49 = peg$literalExpectation('"', false), peg$c50 = function() { + return ""; + }, peg$c51 = function(chars) { + return chars; + }, peg$c52 = function(chars) { + return chars.join(``); + }, peg$c53 = /^[^"\\\0-\x1F\x7F]/, peg$c54 = peg$classExpectation(['"', "\\", ["\0", ""], "\x7F"], true, false), peg$c55 = '\\"', peg$c56 = peg$literalExpectation('\\"', false), peg$c57 = function() { + return `"`; + }, peg$c58 = "\\\\", peg$c59 = peg$literalExpectation("\\\\", false), peg$c60 = function() { + return `\\`; + }, peg$c61 = "\\/", peg$c62 = peg$literalExpectation("\\/", false), peg$c63 = function() { + return `/`; + }, peg$c64 = "\\b", peg$c65 = peg$literalExpectation("\\b", false), peg$c66 = function() { + return `\b`; + }, peg$c67 = "\\f", peg$c68 = peg$literalExpectation("\\f", false), peg$c69 = function() { + return `\f`; + }, peg$c70 = "\\n", peg$c71 = peg$literalExpectation("\\n", false), peg$c72 = function() { + return ` +`; + }, peg$c73 = "\\r", peg$c74 = peg$literalExpectation("\\r", false), peg$c75 = function() { + return `\r`; + }, peg$c76 = "\\t", peg$c77 = peg$literalExpectation("\\t", false), peg$c78 = function() { + return ` `; + }, peg$c79 = "\\u", peg$c80 = peg$literalExpectation("\\u", false), peg$c81 = function(h1, h2, h3, h4) { + return String.fromCharCode(parseInt(`0x${h1}${h2}${h3}${h4}`)); + }, peg$c82 = /^[0-9a-fA-F]/, peg$c83 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "F"]], false, false), peg$c84 = peg$otherExpectation("blank space"), peg$c85 = /^[ \t]/, peg$c86 = peg$classExpectation([" ", " "], false, false), peg$c87 = peg$otherExpectation("white space"), peg$c88 = /^[ \t\n\r]/, peg$c89 = peg$classExpectation([" ", " ", "\n", "\r"], false, false), peg$c90 = "\r\n", peg$c91 = peg$literalExpectation("\r\n", false), peg$c92 = "\n", peg$c93 = peg$literalExpectation("\n", false), peg$c94 = "\r", peg$c95 = peg$literalExpectation("\r", false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result; + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error(`Can't start parsing from rule "` + options.startRule + '".'); } - balanced.range = range; - function range(a, b, str) { - var begs, beg, left, right, result; - var ai = str.indexOf(a); - var bi = str.indexOf(b, ai + 1); - var i = ai; - if (ai >= 0 && bi > 0) { - begs = []; - left = str.length; - while (i >= 0 && !result) { - if (i == ai) { - begs.push(i); - ai = str.indexOf(a, i + 1); - } else if (begs.length == 1) { - result = [begs.pop(), bi]; - } else { - beg = begs.pop(); - if (beg < left) { - left = beg; - right = bi; - } - bi = str.indexOf(b, i + 1); - } - i = ai < bi && ai >= 0 ? ai : bi; - } - if (begs.length) { - result = [left, right]; + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } + function text() { + return input.substring(peg$savedPos, peg$currPos); + } + function location() { + return peg$computeLocation(peg$savedPos, peg$currPos); + } + function expected(description, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildStructuredError( + [peg$otherExpectation(description)], + input.substring(peg$savedPos, peg$currPos), + location2 + ); + } + function error(message2, location2) { + location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos); + throw peg$buildSimpleError(message2, location2); + } + function peg$literalExpectation(text2, ignoreCase) { + return { type: "literal", text: text2, ignoreCase }; + } + function peg$classExpectation(parts, inverted, ignoreCase) { + return { type: "class", parts, inverted, ignoreCase }; + } + function peg$anyExpectation() { + return { type: "any" }; + } + function peg$endExpectation() { + return { type: "end" }; + } + function peg$otherExpectation(description) { + return { type: "other", description }; + } + function peg$computePosDetails(pos) { + var details = peg$posDetailsCache[pos], p; + if (details) { + return details; + } else { + p = pos - 1; + while (!peg$posDetailsCache[p]) { + p--; + } + details = peg$posDetailsCache[p]; + details = { + line: details.line, + column: details.column + }; + while (p < pos) { + if (input.charCodeAt(p) === 10) { + details.line++; + details.column = 1; + } else { + details.column++; } + p++; + } + peg$posDetailsCache[pos] = details; + return details; + } + } + function peg$computeLocation(startPos, endPos) { + var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos); + return { + start: { + offset: startPos, + line: startPosDetails.line, + column: startPosDetails.column + }, + end: { + offset: endPos, + line: endPosDetails.line, + column: endPosDetails.column } - return result; + }; + } + function peg$fail(expected2) { + if (peg$currPos < peg$maxFailPos) { + return; } - }, - function(module3, exports3, __webpack_require__) { - var concatMap = __webpack_require__(178); - var balanced = __webpack_require__(174); - module3.exports = expandTop; - var escSlash = "\0SLASH" + Math.random() + "\0"; - var escOpen = "\0OPEN" + Math.random() + "\0"; - var escClose = "\0CLOSE" + Math.random() + "\0"; - var escComma = "\0COMMA" + Math.random() + "\0"; - var escPeriod = "\0PERIOD" + Math.random() + "\0"; - function numeric(str) { - return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; } - function escapeBraces(str) { - return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + peg$maxFailExpected.push(expected2); + } + function peg$buildSimpleError(message2, location2) { + return new peg$SyntaxError(message2, null, null, location2); + } + function peg$buildStructuredError(expected2, found, location2) { + return new peg$SyntaxError( + peg$SyntaxError.buildMessage(expected2, found), + expected2, + found, + location2 + ); + } + function peg$parseStart() { + var s0; + s0 = peg$parsePropertyStatements(); + return s0; + } + function peg$parseItemStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parseItemStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parseItemStatement(); } - function unescapeBraces(str) { - return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c0(s1); } - function parseCommaParts(str) { - if (!str) - return [""]; - var parts = []; - var m = balanced("{", "}", str); - if (!m) - return str.split(","); - var pre = m.pre; - var body = m.body; - var post = m.post; - var p = pre.split(","); - p[p.length - 1] += "{" + body + "}"; - var postParts = parseCommaParts(post); - if (post.length) { - p[p.length - 1] += postParts.shift(); - p.push.apply(p, postParts); + s0 = s1; + return s0; + } + function peg$parseItemStatement() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s2 = peg$c1; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); + } } - parts.push.apply(parts, p); - return parts; - } - function expandTop(str) { - if (!str) - return []; - if (str.substr(0, 2) === "{}") { - str = "\\{\\}" + str.substr(2); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExpression(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c3(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return expand(escapeBraces(str), true).map(unescapeBraces); - } - function identity(e) { - return e; - } - function embrace(str) { - return "{" + str + "}"; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function isPadded(el) { - return /^-?0\d/.test(el); + return s0; + } + function peg$parsePropertyStatements() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsePropertyStatement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsePropertyStatement(); } - function lte(i, y) { - return i <= y; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c4(s1); } - function gte(i, y) { - return i >= y; + s0 = s1; + return s0; + } + function peg$parsePropertyStatement() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8; + s0 = peg$currPos; + s1 = peg$parseB(); + if (s1 === peg$FAILED) { + s1 = null; } - function expand(str, isTop) { - var expansions = []; - var m = balanced("{", "}", str); - if (!m || /\$$/.test(m.pre)) - return [str]; - var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); - var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); - var isSequence = isNumericSequence || isAlphaSequence; - var isOptions = m.body.indexOf(",") >= 0; - if (!isSequence && !isOptions) { - if (m.post.match(/,.*\}/)) { - str = m.pre + "{" + m.body + escClose + m.post; - return expand(str); - } - return [str]; - } - var n; - if (isSequence) { - n = m.body.split(/\.\./); + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 35) { + s3 = peg$c5; + peg$currPos++; } else { - n = parseCommaParts(m.body); - if (n.length === 1) { - n = expand(n[0], false).map(embrace); - if (n.length === 1) { - var post = m.post.length ? expand(m.post, false) : [""]; - return post.map(function(p) { - return m.pre + n[0] + p; - }); - } + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c6); } } - var pre = m.pre; - var post = m.post.length ? expand(m.post, false) : [""]; - var N; - if (isSequence) { - var x = numeric(n[0]); - var y = numeric(n[1]); - var width = Math.max(n[0].length, n[1].length); - var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; - var test = lte; - var reverse = y < x; - if (reverse) { - incr *= -1; - test = gte; + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; } - var pad = n.some(isPadded); - N = []; - for (var i = x; test(i, y); i += incr) { - var c; - if (isAlphaSequence) { - c = String.fromCharCode(i); - if (c === "\\") - c = ""; + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; } else { - c = String(i); - if (pad) { - var need = width - c.length; - if (need > 0) { - var z = new Array(need + 1).join("0"); - if (i < 0) - c = "-" + z + c.slice(1); - else - c = z + c; - } + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); } } - N.push(c); + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; } - } else { - N = concatMap(n, function(el) { - return expand(el, false); - }); - } - for (var j = 0; j < N.length; j++) { - for (var k = 0; k < post.length; k++) { - var expansion = pre + N[j] + post[k]; - if (!isTop || isSequence || expansion) - expansions.push(expansion); + if (s5 !== peg$FAILED) { + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$currPos; + s6 = peg$currPos; + peg$silentFails++; + s7 = peg$parseEOL(); + peg$silentFails--; + if (s7 === peg$FAILED) { + s6 = void 0; + } else { + peg$currPos = s6; + s6 = peg$FAILED; + } + if (s6 !== peg$FAILED) { + if (input.length > peg$currPos) { + s7 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c7); + } + } + if (s7 !== peg$FAILED) { + s6 = [s6, s7]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } else { + peg$currPos = s5; + s5 = peg$FAILED; + } + } + } else { + s4 = peg$FAILED; } - } - return expansions; - } - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - function preserveCamelCase(str) { - let isLastCharLower = false; - let isLastCharUpper = false; - let isLastLastCharUpper = false; - for (let i = 0; i < str.length; i++) { - const c = str[i]; - if (isLastCharLower && /[a-zA-Z]/.test(c) && c.toUpperCase() === c) { - str = str.substr(0, i) + "-" + str.substr(i); - isLastCharLower = false; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = true; - i++; - } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(c) && c.toLowerCase() === c) { - str = str.substr(0, i - 1) + "-" + str.substr(i - 1); - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = false; - isLastCharLower = true; + if (s4 !== peg$FAILED) { + s3 = [s3, s4]; + s2 = s3; } else { - isLastCharLower = c.toLowerCase() === c; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = c.toUpperCase() === c; + peg$currPos = s2; + s2 = peg$FAILED; } - } - return str; - } - module3.exports = function(str) { - if (arguments.length > 1) { - str = Array.from(arguments).map((x) => x.trim()).filter((x) => x.length).join("-"); } else { - str = str.trim(); - } - if (str.length === 0) { - return ""; - } - if (str.length === 1) { - return str.toLowerCase(); - } - if (/^[a-z0-9]+$/.test(str)) { - return str; - } - const hasUpperCase = str !== str.toLowerCase(); - if (hasUpperCase) { - str = preserveCamelCase(str); - } - return str.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, (m, p1) => p1.toUpperCase()); - }; - }, - , - function(module3, exports3) { - module3.exports = function(xs, fn2) { - var res = []; - for (var i = 0; i < xs.length; i++) { - var x = fn2(xs[i], i); - if (isArray(x)) - res.push.apply(res, x); - else - res.push(x); + peg$currPos = s2; + s2 = peg$FAILED; } - return res; - }; - var isArray = Array.isArray || function(xs) { - return Object.prototype.toString.call(xs) === "[object Array]"; - }; - }, - function(module3, exports3, __webpack_require__) { - __webpack_require__(205); - __webpack_require__(207); - __webpack_require__(210); - __webpack_require__(206); - __webpack_require__(208); - __webpack_require__(209); - module3.exports = __webpack_require__(23).Promise; - }, - function(module3, exports3) { - module3.exports = function() { - }; - }, - function(module3, exports3) { - module3.exports = function(it, Constructor, name, forbiddenField) { - if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { - throw TypeError(name + ": incorrect invocation!"); + if (s2 === peg$FAILED) { + s2 = null; } - return it; - }; - }, - function(module3, exports3, __webpack_require__) { - var toIObject = __webpack_require__(74); - var toLength = __webpack_require__(110); - var toAbsoluteIndex = __webpack_require__(200); - module3.exports = function(IS_INCLUDES) { - return function($this, el, fromIndex) { - var O = toIObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - if (IS_INCLUDES && el != el) - while (length > index) { - value = O[index++]; - if (value != value) - return true; + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseEOL_ANY(); + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseEOL_ANY(); } - else - for (; length > index; index++) - if (IS_INCLUDES || index in O) { - if (O[index] === el) - return IS_INCLUDES || index || 0; - } - return !IS_INCLUDES && -1; - }; - }; - }, - function(module3, exports3, __webpack_require__) { - var ctx = __webpack_require__(48); - var call = __webpack_require__(187); - var isArrayIter = __webpack_require__(186); - var anObject = __webpack_require__(27); - var toLength = __webpack_require__(110); - var getIterFn = __webpack_require__(203); - var BREAK = {}; - var RETURN = {}; - var exports3 = module3.exports = function(iterable, entries, fn2, that, ITERATOR) { - var iterFn = ITERATOR ? function() { - return iterable; - } : getIterFn(iterable); - var f = ctx(fn2, that, entries ? 2 : 1); - var index = 0; - var length, step, iterator, result; - if (typeof iterFn != "function") - throw TypeError(iterable + " is not iterable!"); - if (isArrayIter(iterFn)) - for (length = toLength(iterable.length); length > index; index++) { - result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); - if (result === BREAK || result === RETURN) - return result; + } else { + s3 = peg$FAILED; } - else - for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { - result = call(iterator, f, step.value, entries); - if (result === BREAK || result === RETURN) - return result; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c8(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - exports3.BREAK = BREAK; - exports3.RETURN = RETURN; - }, - function(module3, exports3, __webpack_require__) { - module3.exports = !__webpack_require__(33) && !__webpack_require__(85)(function() { - return Object.defineProperty(__webpack_require__(68)("div"), "a", { get: function() { - return 7; - } }).a != 7; - }); - }, - function(module3, exports3) { - module3.exports = function(fn2, args2, that) { - var un = that === void 0; - switch (args2.length) { - case 0: - return un ? fn2() : fn2.call(that); - case 1: - return un ? fn2(args2[0]) : fn2.call(that, args2[0]); - case 2: - return un ? fn2(args2[0], args2[1]) : fn2.call(that, args2[0], args2[1]); - case 3: - return un ? fn2(args2[0], args2[1], args2[2]) : fn2.call(that, args2[0], args2[1], args2[2]); - case 4: - return un ? fn2(args2[0], args2[1], args2[2], args2[3]) : fn2.call(that, args2[0], args2[1], args2[2], args2[3]); - } - return fn2.apply(that, args2); - }; - }, - function(module3, exports3, __webpack_require__) { - var Iterators = __webpack_require__(35); - var ITERATOR = __webpack_require__(13)("iterator"); - var ArrayProto = Array.prototype; - module3.exports = function(it) { - return it !== void 0 && (Iterators.Array === it || ArrayProto[ITERATOR] === it); - }; - }, - function(module3, exports3, __webpack_require__) { - var anObject = __webpack_require__(27); - module3.exports = function(iterator, fn2, value, entries) { - try { - return entries ? fn2(anObject(value)[0], value[1]) : fn2(value); - } catch (e) { - var ret = iterator["return"]; - if (ret !== void 0) - anObject(ret.call(iterator)); - throw e; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var create = __webpack_require__(192); - var descriptor = __webpack_require__(106); - var setToStringTag = __webpack_require__(71); - var IteratorPrototype = {}; - __webpack_require__(31)(IteratorPrototype, __webpack_require__(13)("iterator"), function() { - return this; - }); - module3.exports = function(Constructor, NAME, next) { - Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); - setToStringTag(Constructor, NAME + " Iterator"); - }; - }, - function(module3, exports3, __webpack_require__) { - var ITERATOR = __webpack_require__(13)("iterator"); - var SAFE_CLOSING = false; - try { - var riter = [7][ITERATOR](); - riter["return"] = function() { - SAFE_CLOSING = true; - }; - Array.from(riter, function() { - throw 2; - }); - } catch (e) { + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - module3.exports = function(exec, skipClosing) { - if (!skipClosing && !SAFE_CLOSING) - return false; - var safe = false; - try { - var arr = [7]; - var iter = arr[ITERATOR](); - iter.next = function() { - return { done: safe = true }; - }; - arr[ITERATOR] = function() { - return iter; - }; - exec(arr); - } catch (e) { - } - return safe; - }; - }, - function(module3, exports3) { - module3.exports = function(done, value) { - return { value, done: !!done }; - }; - }, - function(module3, exports3, __webpack_require__) { - var global2 = __webpack_require__(11); - var macrotask = __webpack_require__(109).set; - var Observer = global2.MutationObserver || global2.WebKitMutationObserver; - var process2 = global2.process; - var Promise2 = global2.Promise; - var isNode = __webpack_require__(47)(process2) == "process"; - module3.exports = function() { - var head, last, notify; - var flush = function() { - var parent, fn2; - if (isNode && (parent = process2.domain)) - parent.exit(); - while (head) { - fn2 = head.fn; - head = head.next; - try { - fn2(); - } catch (e) { - if (head) - notify(); - else - last = void 0; - throw e; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - last = void 0; - if (parent) - parent.enter(); - }; - if (isNode) { - notify = function() { - process2.nextTick(flush); - }; - } else if (Observer && !(global2.navigator && global2.navigator.standalone)) { - var toggle = true; - var node = document.createTextNode(""); - new Observer(flush).observe(node, { characterData: true }); - notify = function() { - node.data = toggle = !toggle; - }; - } else if (Promise2 && Promise2.resolve) { - var promise = Promise2.resolve(void 0); - notify = function() { - promise.then(flush); - }; } else { - notify = function() { - macrotask.call(global2, flush); - }; - } - return function(fn2) { - var task = { fn: fn2, next: void 0 }; - if (last) - last.next = task; - if (!head) { - head = task; - notify(); - } - last = task; - }; - }; - }, - function(module3, exports3, __webpack_require__) { - var anObject = __webpack_require__(27); - var dPs = __webpack_require__(193); - var enumBugKeys = __webpack_require__(101); - var IE_PROTO = __webpack_require__(72)("IE_PROTO"); - var Empty = function() { - }; - var PROTOTYPE = "prototype"; - var createDict = function() { - var iframe = __webpack_require__(68)("iframe"); - var i = enumBugKeys.length; - var lt = "<"; - var gt = ">"; - var iframeDocument; - iframe.style.display = "none"; - __webpack_require__(102).appendChild(iframe); - iframe.src = "javascript:"; - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); - iframeDocument.close(); - createDict = iframeDocument.F; - while (i--) - delete createDict[PROTOTYPE][enumBugKeys[i]]; - return createDict(); - }; - module3.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - Empty[PROTOTYPE] = anObject(O); - result = new Empty(); - Empty[PROTOTYPE] = null; - result[IE_PROTO] = O; - } else - result = createDict(); - return Properties === void 0 ? result : dPs(result, Properties); - }; - }, - function(module3, exports3, __webpack_require__) { - var dP = __webpack_require__(50); - var anObject = __webpack_require__(27); - var getKeys = __webpack_require__(132); - module3.exports = __webpack_require__(33) ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = getKeys(Properties); - var length = keys.length; - var i = 0; - var P; - while (length > i) - dP.f(O, P = keys[i++], Properties[P]); - return O; - }; - }, - function(module3, exports3, __webpack_require__) { - var has = __webpack_require__(49); - var toObject = __webpack_require__(133); - var IE_PROTO = __webpack_require__(72)("IE_PROTO"); - var ObjectProto = Object.prototype; - module3.exports = Object.getPrototypeOf || function(O) { - O = toObject(O); - if (has(O, IE_PROTO)) - return O[IE_PROTO]; - if (typeof O.constructor == "function" && O instanceof O.constructor) { - return O.constructor.prototype; - } - return O instanceof Object ? ObjectProto : null; - }; - }, - function(module3, exports3, __webpack_require__) { - var has = __webpack_require__(49); - var toIObject = __webpack_require__(74); - var arrayIndexOf = __webpack_require__(182)(false); - var IE_PROTO = __webpack_require__(72)("IE_PROTO"); - module3.exports = function(object, names) { - var O = toIObject(object); - var i = 0; - var result = []; - var key; - for (key in O) - if (key != IE_PROTO) - has(O, key) && result.push(key); - while (names.length > i) - if (has(O, key = names[i++])) { - ~arrayIndexOf(result, key) || result.push(key); - } - return result; - }; - }, - function(module3, exports3, __webpack_require__) { - var hide = __webpack_require__(31); - module3.exports = function(target, src, safe) { - for (var key in src) { - if (safe && target[key]) - target[key] = src[key]; - else - hide(target, key, src[key]); + peg$currPos = s0; + s0 = peg$FAILED; } - return target; - }; - }, - function(module3, exports3, __webpack_require__) { - module3.exports = __webpack_require__(31); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var global2 = __webpack_require__(11); - var core = __webpack_require__(23); - var dP = __webpack_require__(50); - var DESCRIPTORS = __webpack_require__(33); - var SPECIES = __webpack_require__(13)("species"); - module3.exports = function(KEY) { - var C = typeof core[KEY] == "function" ? core[KEY] : global2[KEY]; - if (DESCRIPTORS && C && !C[SPECIES]) - dP.f(C, SPECIES, { - configurable: true, - get: function() { - return this; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s4 = peg$c9; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s4 !== peg$FAILED) { + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseExpression(); + if (s6 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - }; - }, - function(module3, exports3, __webpack_require__) { - var toInteger = __webpack_require__(73); - var defined = __webpack_require__(67); - module3.exports = function(TO_STRING) { - return function(that, pos) { - var s = String(defined(that)); - var i = toInteger(pos); - var l = s.length; - var a, b; - if (i < 0 || i >= l) - return TO_STRING ? "" : void 0; - a = s.charCodeAt(i); - return a < 55296 || a > 56319 || i + 1 === l || (b = s.charCodeAt(i + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 55296 << 10) + (b - 56320) + 65536; - }; - }; - }, - function(module3, exports3, __webpack_require__) { - var toInteger = __webpack_require__(73); - var max = Math.max; - var min = Math.min; - module3.exports = function(index, length) { - index = toInteger(index); - return index < 0 ? max(index + length, 0) : min(index, length); - }; - }, - function(module3, exports3, __webpack_require__) { - var isObject = __webpack_require__(34); - module3.exports = function(it, S) { - if (!isObject(it)) - return it; - var fn2, val; - if (S && typeof (fn2 = it.toString) == "function" && !isObject(val = fn2.call(it))) - return val; - if (typeof (fn2 = it.valueOf) == "function" && !isObject(val = fn2.call(it))) - return val; - if (!S && typeof (fn2 = it.toString) == "function" && !isObject(val = fn2.call(it))) - return val; - throw TypeError("Can't convert object to primitive value"); - }; - }, - function(module3, exports3, __webpack_require__) { - var global2 = __webpack_require__(11); - var navigator2 = global2.navigator; - module3.exports = navigator2 && navigator2.userAgent || ""; - }, - function(module3, exports3, __webpack_require__) { - var classof = __webpack_require__(100); - var ITERATOR = __webpack_require__(13)("iterator"); - var Iterators = __webpack_require__(35); - module3.exports = __webpack_require__(23).getIteratorMethod = function(it) { - if (it != void 0) - return it[ITERATOR] || it["@@iterator"] || Iterators[classof(it)]; - }; - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var addToUnscopables = __webpack_require__(180); - var step = __webpack_require__(190); - var Iterators = __webpack_require__(35); - var toIObject = __webpack_require__(74); - module3.exports = __webpack_require__(103)(Array, "Array", function(iterated, kind) { - this._t = toIObject(iterated); - this._i = 0; - this._k = kind; - }, function() { - var O = this._t; - var kind = this._k; - var index = this._i++; - if (!O || index >= O.length) { - this._t = void 0; - return step(1); - } - if (kind == "keys") - return step(0, index); - if (kind == "values") - return step(0, O[index]); - return step(0, [index, O[index]]); - }, "values"); - Iterators.Arguments = Iterators.Array; - addToUnscopables("keys"); - addToUnscopables("values"); - addToUnscopables("entries"); - }, - function(module3, exports3) { - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var LIBRARY = __webpack_require__(69); - var global2 = __webpack_require__(11); - var ctx = __webpack_require__(48); - var classof = __webpack_require__(100); - var $export = __webpack_require__(41); - var isObject = __webpack_require__(34); - var aFunction = __webpack_require__(46); - var anInstance = __webpack_require__(181); - var forOf = __webpack_require__(183); - var speciesConstructor = __webpack_require__(108); - var task = __webpack_require__(109).set; - var microtask = __webpack_require__(191)(); - var newPromiseCapabilityModule = __webpack_require__(70); - var perform = __webpack_require__(104); - var userAgent = __webpack_require__(202); - var promiseResolve = __webpack_require__(105); - var PROMISE = "Promise"; - var TypeError2 = global2.TypeError; - var process2 = global2.process; - var versions = process2 && process2.versions; - var v8 = versions && versions.v8 || ""; - var $Promise = global2[PROMISE]; - var isNode = classof(process2) == "process"; - var empty = function() { - }; - var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper; - var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f; - var USE_NATIVE = !!function() { - try { - var promise = $Promise.resolve(1); - var FakePromise = (promise.constructor = {})[__webpack_require__(13)("species")] = function(exec) { - exec(empty, empty); - }; - return (isNode || typeof PromiseRejectionEvent == "function") && promise.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && userAgent.indexOf("Chrome/66") === -1; - } catch (e) { - } - }(); - var isThenable = function(it) { - var then; - return isObject(it) && typeof (then = it.then) == "function" ? then : false; - }; - var notify = function(promise, isReject) { - if (promise._n) - return; - promise._n = true; - var chain = promise._c; - microtask(function() { - var value = promise._v; - var ok = promise._s == 1; - var i = 0; - var run = function(reaction) { - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (promise._h == 2) - onHandleUnhandled(promise); - promise._h = 1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = peg$parseB(); + if (s3 !== peg$FAILED) { + s4 = peg$parseLegacyLiteral(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseEOL_ANY(); + if (s6 !== peg$FAILED) { + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseEOL_ANY(); + } + } else { + s5 = peg$FAILED; + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c11(s2, s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (handler === true) - result = value; - else { - if (domain) - domain.enter(); - result = handler(value); - if (domain) { - domain.exit(); - exited = true; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseSamedent(); + if (s1 !== peg$FAILED) { + s2 = peg$parseLegacyName(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$currPos; + s5 = peg$parseB(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c12; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c13); + } + } + if (s6 !== peg$FAILED) { + s7 = peg$parseB(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseLegacyName(); + if (s8 !== peg$FAILED) { + peg$savedPos = s4; + s5 = peg$c14(s2, s8); + s4 = s5; + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } else { + peg$currPos = s4; + s4 = peg$FAILED; + } + } + } else { + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 58) { + s5 = peg$c9; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c10); + } + } + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 === peg$FAILED) { + s6 = null; + } + if (s6 !== peg$FAILED) { + s7 = peg$parseExpression(); + if (s7 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c15(s2, s3, s7); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (result === reaction.promise) { - reject(TypeError2("Promise-chain cycle")); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else - resolve(result); - } else - reject(value); - } catch (e) { - if (domain && !exited) - domain.exit(); - reject(e); - } - }; - while (chain.length > i) - run(chain[i++]); - promise._c = []; - promise._n = false; - if (isReject && !promise._h) - onUnhandled(promise); - }); - }; - var onUnhandled = function(promise) { - task.call(global2, function() { - var value = promise._v; - var unhandled = isUnhandled(promise); - var result, handler, console2; - if (unhandled) { - result = perform(function() { - if (isNode) { - process2.emit("unhandledRejection", value, promise); - } else if (handler = global2.onunhandledrejection) { - handler({ promise, reason: value }); - } else if ((console2 = global2.console) && console2.error) { - console2.error("Unhandled promise rejection", value); - } - }); - promise._h = isNode || isUnhandled(promise) ? 2 : 1; - } - promise._a = void 0; - if (unhandled && result.e) - throw result.v; - }); - }; - var isUnhandled = function(promise) { - return promise._h !== 1 && (promise._a || promise._c).length === 0; - }; - var onHandleUnhandled = function(promise) { - task.call(global2, function() { - var handler; - if (isNode) { - process2.emit("rejectionHandled", promise); - } else if (handler = global2.onrejectionhandled) { - handler({ promise, reason: promise._v }); - } - }); - }; - var $reject = function(value) { - var promise = this; - if (promise._d) - return; - promise._d = true; - promise = promise._w || promise; - promise._v = value; - promise._s = 2; - if (!promise._a) - promise._a = promise._c.slice(); - notify(promise, true); - }; - var $resolve = function(value) { - var promise = this; - var then; - if (promise._d) - return; - promise._d = true; - promise = promise._w || promise; - try { - if (promise === value) - throw TypeError2("Promise can't be resolved itself"); - if (then = isThenable(value)) { - microtask(function() { - var wrapper = { _w: promise, _d: false }; - try { - then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1)); - } catch (e) { - $reject.call(wrapper, e); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }); - } else { - promise._v = value; - promise._s = 1; - notify(promise, false); + } } - } catch (e) { - $reject.call({ _w: promise, _d: false }, e); } - }; - if (!USE_NATIVE) { - $Promise = function Promise2(executor) { - anInstance(this, $Promise, PROMISE, "_h"); - aFunction(executor); - Internal.call(this); - try { - executor(ctx($resolve, this, 1), ctx($reject, this, 1)); - } catch (err) { - $reject.call(this, err); + } + return s0; + } + function peg$parseExpression() { + var s0, s1, s2, s3, s4, s5, s6; + s0 = peg$currPos; + s1 = peg$currPos; + peg$silentFails++; + s2 = peg$currPos; + s3 = peg$parseEOL(); + if (s3 !== peg$FAILED) { + s4 = peg$parseExtradent(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 45) { + s5 = peg$c1; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c2); + } } - }; - Internal = function Promise2(executor) { - this._c = []; - this._a = void 0; - this._s = 0; - this._d = false; - this._v = void 0; - this._h = 0; - this._n = false; - }; - Internal.prototype = __webpack_require__(196)($Promise.prototype, { - then: function then(onFulfilled, onRejected) { - var reaction = newPromiseCapability(speciesConstructor(this, $Promise)); - reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; - reaction.fail = typeof onRejected == "function" && onRejected; - reaction.domain = isNode ? process2.domain : void 0; - this._c.push(reaction); - if (this._a) - this._a.push(reaction); - if (this._s) - notify(this, false); - return reaction.promise; - }, - "catch": function(onRejected) { - return this.then(void 0, onRejected); + if (s5 !== peg$FAILED) { + s6 = peg$parseB(); + if (s6 !== peg$FAILED) { + s3 = [s3, s4, s5, s6]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - }); - OwnPromiseCapability = function() { - var promise = new Internal(); - this.promise = promise; - this.resolve = ctx($resolve, promise, 1); - this.reject = ctx($reject, promise, 1); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function(C) { - return C === $Promise || C === Wrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C); - }; - } - $export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise }); - __webpack_require__(71)($Promise, PROMISE); - __webpack_require__(198)(PROMISE); - Wrapper = __webpack_require__(23)[PROMISE]; - $export($export.S + $export.F * !USE_NATIVE, PROMISE, { - reject: function reject(r) { - var capability = newPromiseCapability(this); - var $$reject = capability.reject; - $$reject(r); - return capability.promise; - } - }); - $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, { - resolve: function resolve(x) { - return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x); - } - }); - $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(189)(function(iter) { - $Promise.all(iter)["catch"](empty); - })), PROMISE, { - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function() { - var values = []; - var index = 0; - var remaining = 1; - forOf(iterable, false, function(promise) { - var $index = index++; - var alreadyCalled = false; - values.push(void 0); - remaining++; - C.resolve(promise).then(function(value) { - if (alreadyCalled) - return; - alreadyCalled = true; - values[$index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.e) - reject(result.v); - return capability.promise; - }, - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function() { - forOf(iterable, false, function(promise) { - C.resolve(promise).then(capability.resolve, reject); - }); - }); - if (result.e) - reject(result.v); - return capability.promise; - } - }); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var $at = __webpack_require__(199)(true); - __webpack_require__(103)(String, "String", function(iterated) { - this._t = String(iterated); - this._i = 0; - }, function() { - var O = this._t; - var index = this._i; - var point; - if (index >= O.length) - return { value: void 0, done: true }; - point = $at(O, index); - this._i += point.length; - return { value: point, done: false }; - }); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var $export = __webpack_require__(41); - var core = __webpack_require__(23); - var global2 = __webpack_require__(11); - var speciesConstructor = __webpack_require__(108); - var promiseResolve = __webpack_require__(105); - $export($export.P + $export.R, "Promise", { "finally": function(onFinally) { - var C = speciesConstructor(this, core.Promise || global2.Promise); - var isFunction = typeof onFinally == "function"; - return this.then(isFunction ? function(x) { - return promiseResolve(C, onFinally()).then(function() { - return x; - }); - } : onFinally, isFunction ? function(e) { - return promiseResolve(C, onFinally()).then(function() { - throw e; - }); - } : onFinally); - } }); - }, - function(module3, exports3, __webpack_require__) { - "use strict"; - var $export = __webpack_require__(41); - var newPromiseCapability = __webpack_require__(70); - var perform = __webpack_require__(104); - $export($export.S, "Promise", { "try": function(callbackfn) { - var promiseCapability = newPromiseCapability.f(this); - var result = perform(callbackfn); - (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); - return promiseCapability.promise; - } }); - }, - function(module3, exports3, __webpack_require__) { - __webpack_require__(204); - var global2 = __webpack_require__(11); - var hide = __webpack_require__(31); - var Iterators = __webpack_require__(35); - var TO_STRING_TAG = __webpack_require__(13)("toStringTag"); - var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); - for (var i = 0; i < DOMIterables.length; i++) { - var NAME = DOMIterables[i]; - var Collection = global2[NAME]; - var proto = Collection && Collection.prototype; - if (proto && !proto[TO_STRING_TAG]) - hide(proto, TO_STRING_TAG, NAME); - Iterators[NAME] = Iterators.Array; - } - }, - function(module3, exports3, __webpack_require__) { - exports3 = module3.exports = __webpack_require__(112); - exports3.log = log2; - exports3.formatArgs = formatArgs; - exports3.save = save; - exports3.load = load; - exports3.useColors = useColors; - exports3.storage = typeof chrome != "undefined" && typeof chrome.storage != "undefined" ? chrome.storage.local : localstorage(); - exports3.colors = [ - "#0000CC", - "#0000FF", - "#0033CC", - "#0033FF", - "#0066CC", - "#0066FF", - "#0099CC", - "#0099FF", - "#00CC00", - "#00CC33", - "#00CC66", - "#00CC99", - "#00CCCC", - "#00CCFF", - "#3300CC", - "#3300FF", - "#3333CC", - "#3333FF", - "#3366CC", - "#3366FF", - "#3399CC", - "#3399FF", - "#33CC00", - "#33CC33", - "#33CC66", - "#33CC99", - "#33CCCC", - "#33CCFF", - "#6600CC", - "#6600FF", - "#6633CC", - "#6633FF", - "#66CC00", - "#66CC33", - "#9900CC", - "#9900FF", - "#9933CC", - "#9933FF", - "#99CC00", - "#99CC33", - "#CC0000", - "#CC0033", - "#CC0066", - "#CC0099", - "#CC00CC", - "#CC00FF", - "#CC3300", - "#CC3333", - "#CC3366", - "#CC3399", - "#CC33CC", - "#CC33FF", - "#CC6600", - "#CC6633", - "#CC9900", - "#CC9933", - "#CCCC00", - "#CCCC33", - "#FF0000", - "#FF0033", - "#FF0066", - "#FF0099", - "#FF00CC", - "#FF00FF", - "#FF3300", - "#FF3333", - "#FF3366", - "#FF3399", - "#FF33CC", - "#FF33FF", - "#FF6600", - "#FF6633", - "#FF9900", - "#FF9933", - "#FFCC00", - "#FFCC33" - ]; - function useColors() { - if (typeof window !== "undefined" && window.process && window.process.type === "renderer") { - return true; - } - if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { - return false; - } - return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); - } - exports3.formatters.j = function(v) { - try { - return JSON.stringify(v); - } catch (err) { - return "[UnexpectedJSONParseError]: " + err.message; + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - }; - function formatArgs(args2) { - var useColors2 = this.useColors; - args2[0] = (useColors2 ? "%c" : "") + this.namespace + (useColors2 ? " %c" : " ") + args2[0] + (useColors2 ? "%c " : " ") + "+" + exports3.humanize(this.diff); - if (!useColors2) - return; - var c = "color: " + this.color; - args2.splice(1, 0, c, "color: inherit"); - var index = 0; - var lastC = 0; - args2[0].replace(/%[a-zA-Z%]/g, function(match) { - if (match === "%%") - return; - index++; - if (match === "%c") { - lastC = index; - } - }); - args2.splice(lastC, 0, c); + } else { + peg$currPos = s2; + s2 = peg$FAILED; } - function log2() { - return typeof console === "object" && console.log && Function.prototype.apply.call(console.log, console, arguments); + peg$silentFails--; + if (s2 !== peg$FAILED) { + peg$currPos = s1; + s1 = void 0; + } else { + s1 = peg$FAILED; } - function save(namespaces) { - try { - if (namespaces == null) { - exports3.storage.removeItem("debug"); + if (s1 !== peg$FAILED) { + s2 = peg$parseEOL_ANY(); + if (s2 !== peg$FAILED) { + s3 = peg$parseIndent(); + if (s3 !== peg$FAILED) { + s4 = peg$parseItemStatements(); + if (s4 !== peg$FAILED) { + s5 = peg$parseDedent(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s4); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { - exports3.storage.debug = namespaces; + peg$currPos = s0; + s0 = peg$FAILED; } - } catch (e) { + } else { + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function load() { - var r; - try { - r = exports3.storage.debug; - } catch (e) { - } - if (!r && typeof process !== "undefined" && "env" in process) { - r = process.env.DEBUG; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = peg$parseIndent(); + if (s2 !== peg$FAILED) { + s3 = peg$parsePropertyStatements(); + if (s3 !== peg$FAILED) { + s4 = peg$parseDedent(); + if (s4 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c16(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - return r; - } - exports3.enable(load()); - function localstorage() { - try { - return window.localStorage; - } catch (e) { + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseLiteral(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$parseEOL_ANY(); + if (s3 !== peg$FAILED) { + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$parseEOL_ANY(); + } + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c17(s1); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } } - }, - function(module3, exports3, __webpack_require__) { - if (typeof process === "undefined" || process.type === "renderer") { - module3.exports = __webpack_require__(211); + return s0; + } + function peg$parseSamedent() { + var s0, s1, s2; + peg$silentFails++; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; } else { - module3.exports = __webpack_require__(213); - } - }, - function(module3, exports3, __webpack_require__) { - var tty = __webpack_require__(79); - var util = __webpack_require__(2); - exports3 = module3.exports = __webpack_require__(112); - exports3.init = init; - exports3.log = log2; - exports3.formatArgs = formatArgs; - exports3.save = save; - exports3.load = load; - exports3.useColors = useColors; - exports3.colors = [6, 2, 3, 4, 5, 1]; - try { - var supportsColor = __webpack_require__(239); - if (supportsColor && supportsColor.level >= 2) { - exports3.colors = [ - 20, - 21, - 26, - 27, - 32, - 33, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 56, - 57, - 62, - 63, - 68, - 69, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 92, - 93, - 98, - 99, - 112, - 113, - 128, - 129, - 134, - 135, - 148, - 149, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 178, - 179, - 184, - 185, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 214, - 215, - 220, - 221 - ]; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } - } catch (err) { - } - exports3.inspectOpts = Object.keys(process.env).filter(function(key) { - return /^debug_/i.test(key); - }).reduce(function(obj, key) { - var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_, k) { - return k.toUpperCase(); - }); - var val = process.env[key]; - if (/^(yes|on|true|enabled)$/i.test(val)) - val = true; - else if (/^(no|off|false|disabled)$/i.test(val)) - val = false; - else if (val === "null") - val = null; - else - val = Number(val); - obj[prop] = val; - return obj; - }, {}); - function useColors() { - return "colors" in exports3.inspectOpts ? Boolean(exports3.inspectOpts.colors) : tty.isatty(process.stderr.fd); } - exports3.formatters.o = function(v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts).split("\n").map(function(str) { - return str.trim(); - }).join(" "); - }; - exports3.formatters.O = function(v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts); - }; - function formatArgs(args2) { - var name = this.namespace; - var useColors2 = this.useColors; - if (useColors2) { - var c = this.color; - var colorCode = "[3" + (c < 8 ? c : "8;5;" + c); - var prefix = " " + colorCode + ";1m" + name + " "; - args2[0] = prefix + args2[0].split("\n").join("\n" + prefix); - args2.push(colorCode + "m+" + exports3.humanize(this.diff) + ""); + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; } else { - args2[0] = getDate() + name + " " + args2[0]; + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); + } } } - function getDate() { - if (exports3.inspectOpts.hideDate) { - return ""; + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c21(s1); + if (s2) { + s2 = void 0; } else { - return new Date().toISOString() + " "; + s2 = peg$FAILED; } - } - function log2() { - return process.stderr.write(util.format.apply(util, arguments) + "\n"); - } - function save(namespaces) { - if (namespaces == null) { - delete process.env.DEBUG; + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; } else { - process.env.DEBUG = namespaces; + peg$currPos = s0; + s0 = peg$FAILED; } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function load() { - return process.env.DEBUG; - } - function init(debug) { - debug.inspectOpts = {}; - var keys = Object.keys(exports3.inspectOpts); - for (var i = 0; i < keys.length; i++) { - debug.inspectOpts[keys[i]] = exports3.inspectOpts[keys[i]]; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c18); } } - exports3.enable(load()); - }, - , - , - , - function(module3, exports3, __webpack_require__) { - var pathModule = __webpack_require__(0); - var isWindows = process.platform === "win32"; - var fs = __webpack_require__(3); - var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); - function rethrow() { - var callback; - if (DEBUG) { - var backtrace = new Error(); - callback = debugCallback; - } else - callback = missingCallback; - return callback; - function debugCallback(err) { - if (err) { - backtrace.message = err.message; - err = backtrace; - missingCallback(err); - } + return s0; + } + function peg$parseExtradent() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } - function missingCallback(err) { - if (err) { - if (process.throwDeprecation) - throw err; - else if (!process.noDeprecation) { - var msg = "fs: missing callback " + (err.stack || err.message); - if (process.traceDeprecation) - console.trace(msg); - else - console.error(msg); - } + } + while (s2 !== peg$FAILED) { + s1.push(s2); + if (input.charCodeAt(peg$currPos) === 32) { + s2 = peg$c19; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c20); } } } - function maybeCallback(cb) { - return typeof cb === "function" ? cb : rethrow(); + if (s1 !== peg$FAILED) { + peg$savedPos = peg$currPos; + s2 = peg$c22(s1); + if (s2) { + s2 = void 0; + } else { + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - var normalize = pathModule.normalize; - if (isWindows) { - var nextPartRe = /(.*?)(?:[\/\\]+|$)/g; + return s0; + } + function peg$parseIndent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c23(); + if (s0) { + s0 = void 0; } else { - var nextPartRe = /(.*?)(?:[\/]+|$)/g; + s0 = peg$FAILED; } - if (isWindows) { - var splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; + return s0; + } + function peg$parseDedent() { + var s0; + peg$savedPos = peg$currPos; + s0 = peg$c24(); + if (s0) { + s0 = void 0; } else { - var splitRootRe = /^[\/]*/; + s0 = peg$FAILED; } - exports3.realpathSync = function realpathSync(p, cache) { - p = pathModule.resolve(p); - if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { - return cache[p]; - } - var original = p, seenLinks = {}, knownHard = {}; - var pos; - var current; - var base; - var previous; - start(); - function start() { - var m = splitRootRe.exec(p); - pos = m[0].length; - current = m[0]; - base = m[0]; - previous = ""; - if (isWindows && !knownHard[base]) { - fs.lstatSync(base); - knownHard[base] = true; - } - } - while (pos < p.length) { - nextPartRe.lastIndex = pos; - var result = nextPartRe.exec(p); - previous = current; - current += result[0]; - base = previous + result[1]; - pos = nextPartRe.lastIndex; - if (knownHard[base] || cache && cache[base] === base) { - continue; - } - var resolvedLink; - if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { - resolvedLink = cache[base]; - } else { - var stat = fs.lstatSync(base); - if (!stat.isSymbolicLink()) { - knownHard[base] = true; - if (cache) - cache[base] = base; - continue; - } - var linkTarget = null; - if (!isWindows) { - var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); - if (seenLinks.hasOwnProperty(id)) { - linkTarget = seenLinks[id]; - } - } - if (linkTarget === null) { - fs.statSync(base); - linkTarget = fs.readlinkSync(base); - } - resolvedLink = pathModule.resolve(previous, linkTarget); - if (cache) - cache[base] = resolvedLink; - if (!isWindows) - seenLinks[id] = linkTarget; + return s0; + } + function peg$parseName() { + var s0; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); + } + return s0; + } + function peg$parseLegacyName() { + var s0, s1, s2; + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + s2 = peg$parsepseudostringLegacy(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsepseudostringLegacy(); } - p = pathModule.resolve(resolvedLink, p.slice(pos)); - start(); - } - if (cache) - cache[original] = p; - return p; - }; - exports3.realpath = function realpath(p, cache, cb) { - if (typeof cb !== "function") { - cb = maybeCallback(cache); - cache = null; + } else { + s1 = peg$FAILED; } - p = pathModule.resolve(p); - if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { - return process.nextTick(cb.bind(null, null, cache[p])); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c25(); } - var original = p, seenLinks = {}, knownHard = {}; - var pos; - var current; - var base; - var previous; - start(); - function start() { - var m = splitRootRe.exec(p); - pos = m[0].length; - current = m[0]; - base = m[0]; - previous = ""; - if (isWindows && !knownHard[base]) { - fs.lstat(base, function(err) { - if (err) - return cb(err); - knownHard[base] = true; - LOOP(); - }); - } else { - process.nextTick(LOOP); + s0 = s1; + } + return s0; + } + function peg$parseLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parseboolean(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostring(); } } - function LOOP() { - if (pos >= p.length) { - if (cache) - cache[original] = p; - return cb(null, p); - } - nextPartRe.lastIndex = pos; - var result = nextPartRe.exec(p); - previous = current; - current += result[0]; - base = previous + result[1]; - pos = nextPartRe.lastIndex; - if (knownHard[base] || cache && cache[base] === base) { - return process.nextTick(LOOP); + } + return s0; + } + function peg$parseLegacyLiteral() { + var s0; + s0 = peg$parsenull(); + if (s0 === peg$FAILED) { + s0 = peg$parsestring(); + if (s0 === peg$FAILED) { + s0 = peg$parsepseudostringLegacy(); + } + } + return s0; + } + function peg$parsepseudostring() { + var s0, s1, s2, s3, s4, s5; + peg$silentFails++; + s0 = peg$currPos; + if (peg$c27.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c28); + } + } + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } } - if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { - return gotResolvedLink(cache[base]); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - return fs.lstat(base, gotStat); + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - function gotStat(err, stat) { - if (err) - return cb(err); - if (!stat.isSymbolicLink()) { - knownHard[base] = true; - if (cache) - cache[base] = base; - return process.nextTick(LOOP); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; } - if (!isWindows) { - var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); - if (seenLinks.hasOwnProperty(id)) { - return gotTarget(null, seenLinks[id], base); + if (s4 !== peg$FAILED) { + if (peg$c29.test(input.charAt(peg$currPos))) { + s5 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c30); + } + } + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - fs.stat(base, function(err2) { - if (err2) - return cb(err2); - fs.readlink(base, function(err3, target) { - if (!isWindows) - seenLinks[id] = target; - gotTarget(err3, target); - }); - }); - } - function gotTarget(err, target, base2) { - if (err) - return cb(err); - var resolvedLink = pathModule.resolve(previous, target); - if (cache) - cache[base2] = resolvedLink; - gotResolvedLink(resolvedLink); } - function gotResolvedLink(resolvedLink) { - p = pathModule.resolve(resolvedLink, p.slice(pos)); - start(); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - }, - function(module3, exports3, __webpack_require__) { - module3.exports = globSync; - globSync.GlobSync = GlobSync; - var fs = __webpack_require__(3); - var rp = __webpack_require__(114); - var minimatch = __webpack_require__(60); - var Minimatch = minimatch.Minimatch; - var Glob = __webpack_require__(75).Glob; - var util = __webpack_require__(2); - var path = __webpack_require__(0); - var assert = __webpack_require__(22); - var isAbsolute = __webpack_require__(76); - var common = __webpack_require__(115); - var alphasort = common.alphasort; - var alphasorti = common.alphasorti; - var setopts = common.setopts; - var ownProp = common.ownProp; - var childrenIgnored = common.childrenIgnored; - var isIgnored = common.isIgnored; - function globSync(pattern, options) { - if (typeof options === "function" || arguments.length === 3) - throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); - return new GlobSync(pattern, options).found; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function GlobSync(pattern, options) { - if (!pattern) - throw new Error("must provide pattern"); - if (typeof options === "function" || arguments.length === 3) - throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); - if (!(this instanceof GlobSync)) - return new GlobSync(pattern, options); - setopts(this, pattern, options); - if (this.noprocess) - return this; - var n = this.minimatch.set.length; - this.matches = new Array(n); - for (var i = 0; i < n; i++) { - this._process(this.minimatch.set[i], i, false); + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c26); } - this._finish(); } - GlobSync.prototype._finish = function() { - assert(this instanceof GlobSync); - if (this.realpath) { - var self2 = this; - this.matches.forEach(function(matchset, index) { - var set = self2.matches[index] = Object.create(null); - for (var p in matchset) { - try { - p = self2._makeAbs(p); - var real = rp.realpathSync(p, self2.realpathCache); - set[real] = true; - } catch (er) { - if (er.syscall === "stat") - set[self2._makeAbs(p)] = true; - else - throw er; - } - } - }); - } - common.finish(this); - }; - GlobSync.prototype._process = function(pattern, index, inGlobStar) { - assert(this instanceof GlobSync); - var n = 0; - while (typeof pattern[n] === "string") { - n++; - } - var prefix; - switch (n) { - case pattern.length: - this._processSimple(pattern.join("/"), index); - return; - case 0: - prefix = null; - break; - default: - prefix = pattern.slice(0, n).join("/"); - break; + return s0; + } + function peg$parsepseudostringLegacy() { + var s0, s1, s2, s3, s4; + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c32) { + s1 = peg$c32; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c33); } - var remain = pattern.slice(n); - var read; - if (prefix === null) - read = "."; - else if (isAbsolute(prefix) || isAbsolute(pattern.join("/"))) { - if (!prefix || !isAbsolute(prefix)) - prefix = "/" + prefix; - read = prefix; - } else - read = prefix; - var abs = this._makeAbs(read); - if (childrenIgnored(this, read)) - return; - var isGlobStar = remain[0] === minimatch.GLOBSTAR; - if (isGlobStar) - this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); - else - this._processReaddir(prefix, read, abs, remain, index, inGlobStar); - }; - GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { - var entries = this._readdir(abs, inGlobStar); - if (!entries) - return; - var pn = remain[0]; - var negate = !!this.minimatch.negate; - var rawGlob = pn._glob; - var dotOk = this.dot || rawGlob.charAt(0) === "."; - var matchedEntries = []; - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (e.charAt(0) !== "." || dotOk) { - var m; - if (negate && !prefix) { - m = !e.match(pn); - } else { - m = e.match(pn); - } - if (m) - matchedEntries.push(e); + } + if (s1 === peg$FAILED) { + s1 = null; + } + if (s1 !== peg$FAILED) { + if (peg$c34.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c35); } } - var len = matchedEntries.length; - if (len === 0) - return; - if (remain.length === 1 && !this.mark && !this.stat) { - if (!this.matches[index]) - this.matches[index] = Object.create(null); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - if (prefix) { - if (prefix.slice(-1) !== "/") - e = prefix + "/" + e; - else - e = prefix + e; + if (s2 !== peg$FAILED) { + s3 = []; + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); } - if (e.charAt(0) === "/" && !this.nomount) { - e = path.join(this.root, e); + } + while (s4 !== peg$FAILED) { + s3.push(s4); + if (peg$c36.test(input.charAt(peg$currPos))) { + s4 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c37); + } } - this._emitMatch(index, e); } - return; - } - remain.shift(); - for (var i = 0; i < len; i++) { - var e = matchedEntries[i]; - var newPattern; - if (prefix) - newPattern = [prefix, e]; - else - newPattern = [e]; - this._process(newPattern.concat(remain), index, inGlobStar); + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c31(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - GlobSync.prototype._emitMatch = function(index, e) { - if (isIgnored(this, e)) - return; - var abs = this._makeAbs(e); - if (this.mark) - e = this._mark(e); - if (this.absolute) { - e = abs; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + return s0; + } + function peg$parsenull() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c38) { + s1 = peg$c38; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c39); } - if (this.matches[index][e]) - return; - if (this.nodir) { - var c = this.cache[abs]; - if (c === "DIR" || Array.isArray(c)) - return; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c40(); + } + s0 = s1; + return s0; + } + function peg$parseboolean() { + var s0, s1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 4) === peg$c41) { + s1 = peg$c41; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c42); } - this.matches[index][e] = true; - if (this.stat) - this._stat(e); - }; - GlobSync.prototype._readdirInGlobStar = function(abs) { - if (this.follow) - return this._readdir(abs, false); - var entries; - var lstat; - var stat; - try { - lstat = fs.lstatSync(abs); - } catch (er) { - if (er.code === "ENOENT") { - return null; + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c43(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 5) === peg$c44) { + s1 = peg$c44; + peg$currPos += 5; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c45); } } - var isSym = lstat && lstat.isSymbolicLink(); - this.symlinks[abs] = isSym; - if (!isSym && lstat && !lstat.isDirectory()) - this.cache[abs] = "FILE"; - else - entries = this._readdir(abs, false); - return entries; - }; - GlobSync.prototype._readdir = function(abs, inGlobStar) { - var entries; - if (inGlobStar && !ownProp(this.symlinks, abs)) - return this._readdirInGlobStar(abs); - if (ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (!c || c === "FILE") - return null; - if (Array.isArray(c)) - return c; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c46(); } - try { - return this._readdirEntries(abs, fs.readdirSync(abs)); - } catch (er) { - this._readdirError(abs, er); - return null; + s0 = s1; + } + return s0; + } + function peg$parsestring() { + var s0, s1, s2, s3; + peg$silentFails++; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); } - }; - GlobSync.prototype._readdirEntries = function(abs, entries) { - if (!this.mark && !this.stat) { - for (var i = 0; i < entries.length; i++) { - var e = entries[i]; - if (abs === "/") - e = abs + e; - else - e = abs + "/" + e; - this.cache[e] = true; + } + if (s1 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s2 = peg$c48; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); } } - this.cache[abs] = entries; - return entries; - }; - GlobSync.prototype._readdirError = function(f, er) { - switch (er.code) { - case "ENOTSUP": - case "ENOTDIR": - var abs = this._makeAbs(f); - this.cache[abs] = "FILE"; - if (abs === this.cwdAbs) { - var error = new Error(er.code + " invalid cwd " + this.cwd); - error.path = this.cwd; - error.code = er.code; - throw error; - } - break; - case "ENOENT": - case "ELOOP": - case "ENAMETOOLONG": - case "UNKNOWN": - this.cache[this._makeAbs(f)] = false; - break; - default: - this.cache[this._makeAbs(f)] = false; - if (this.strict) - throw er; - if (!this.silent) - console.error("glob error", er); - break; - } - }; - GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { - var entries = this._readdir(abs, inGlobStar); - if (!entries) - return; - var remainWithoutGlobStar = remain.slice(1); - var gspref = prefix ? [prefix] : []; - var noGlobStar = gspref.concat(remainWithoutGlobStar); - this._process(noGlobStar, index, false); - var len = entries.length; - var isSym = this.symlinks[abs]; - if (isSym && inGlobStar) - return; - for (var i = 0; i < len; i++) { - var e = entries[i]; - if (e.charAt(0) === "." && !this.dot) - continue; - var instead = gspref.concat(entries[i], remainWithoutGlobStar); - this._process(instead, index, true); - var below = gspref.concat(entries[i], remain); - this._process(below, index, true); + if (s2 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c50(); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - }; - GlobSync.prototype._processSimple = function(prefix, index) { - var exists = this._stat(prefix); - if (!this.matches[index]) - this.matches[index] = Object.create(null); - if (!exists) - return; - if (prefix && isAbsolute(prefix) && !this.nomount) { - var trail = /[\/\\]$/.test(prefix); - if (prefix.charAt(0) === "/") { - prefix = path.join(this.root, prefix); - } else { - prefix = path.resolve(this.root, prefix); - if (trail) - prefix += "/"; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 34) { + s1 = peg$c48; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); } } - if (process.platform === "win32") - prefix = prefix.replace(/\\/g, "/"); - this._emitMatch(index, prefix); - }; - GlobSync.prototype._stat = function(f) { - var abs = this._makeAbs(f); - var needDir = f.slice(-1) === "/"; - if (f.length > this.maxLength) - return false; - if (!this.stat && ownProp(this.cache, abs)) { - var c = this.cache[abs]; - if (Array.isArray(c)) - c = "DIR"; - if (!needDir || c === "DIR") - return c; - if (needDir && c === "FILE") - return false; - } - var exists; - var stat = this.statCache[abs]; - if (!stat) { - var lstat; - try { - lstat = fs.lstatSync(abs); - } catch (er) { - if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { - this.statCache[abs] = false; - return false; + if (s1 !== peg$FAILED) { + s2 = peg$parsechars(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 34) { + s3 = peg$c48; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c49); + } } - } - if (lstat && lstat.isSymbolicLink()) { - try { - stat = fs.statSync(abs); - } catch (er) { - stat = lstat; + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c51(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } } else { - stat = lstat; + peg$currPos = s0; + s0 = peg$FAILED; } - } - this.statCache[abs] = stat; - var c = true; - if (stat) - c = stat.isDirectory() ? "DIR" : "FILE"; - this.cache[abs] = this.cache[abs] || c; - if (needDir && c === "FILE") - return false; - return c; - }; - GlobSync.prototype._mark = function(p) { - return common.mark(this, p); - }; - GlobSync.prototype._makeAbs = function(f) { - return common.makeAbs(this, f); - }; - }, - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - module3.exports = function(flag, argv2) { - argv2 = argv2 || process.argv; - var terminatorPos = argv2.indexOf("--"); - var prefix = /^--/.test(flag) ? "" : "--"; - var pos = argv2.indexOf(prefix + flag); - return pos !== -1 && (terminatorPos !== -1 ? pos < terminatorPos : true); - }; - }, - , - function(module3, exports3, __webpack_require__) { - var wrappy = __webpack_require__(123); - var reqs = Object.create(null); - var once = __webpack_require__(61); - module3.exports = wrappy(inflight); - function inflight(key, cb) { - if (reqs[key]) { - reqs[key].push(cb); - return null; } else { - reqs[key] = [cb]; - return makeres(key); + peg$currPos = s0; + s0 = peg$FAILED; } } - function makeres(key) { - return once(function RES() { - var cbs = reqs[key]; - var len = cbs.length; - var args2 = slice(arguments); - try { - for (var i = 0; i < len; i++) { - cbs[i].apply(null, args2); - } - } finally { - if (cbs.length > len) { - cbs.splice(0, len); - process.nextTick(function() { - RES.apply(null, args2); - }); - } else { - delete reqs[key]; - } - } - }); - } - function slice(args2) { - var length = args2.length; - var array = []; - for (var i = 0; i < length; i++) - array[i] = args2[i]; - return array; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c47); + } } - }, - function(module3, exports3) { - if (typeof Object.create === "function") { - module3.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor; - ctor.prototype = Object.create(superCtor.prototype, { - constructor: { - value: ctor, - enumerable: false, - writable: true, - configurable: true - } - }); - }; + return s0; + } + function peg$parsechars() { + var s0, s1, s2; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsechar(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsechar(); + } } else { - module3.exports = function inherits(ctor, superCtor) { - ctor.super_ = superCtor; - var TempCtor = function() { - }; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - }; + s1 = peg$FAILED; } - }, - , - , - function(module3, exports3, __webpack_require__) { - module3.exports = typeof __webpack_require__ !== "undefined"; - }, - , - function(module3, exports3) { - var s = 1e3; - var m = s * 60; - var h = m * 60; - var d = h * 24; - var y = d * 365.25; - module3.exports = function(val, options) { - options = options || {}; - var type = typeof val; - if (type === "string" && val.length > 0) { - return parse(val); - } else if (type === "number" && isNaN(val) === false) { - return options.long ? fmtLong(val) : fmtShort(val); + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c52(s1); + } + s0 = s1; + return s0; + } + function peg$parsechar() { + var s0, s1, s2, s3, s4, s5; + if (peg$c53.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c54); } - throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(val)); - }; - function parse(str) { - str = String(str); - if (str.length > 100) { - return; + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c55) { + s1 = peg$c55; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c56); + } } - var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str); - if (!match) { - return; + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c57(); } - var n = parseFloat(match[1]); - var type = (match[2] || "ms").toLowerCase(); - switch (type) { - case "years": - case "year": - case "yrs": - case "yr": - case "y": - return n * y; - case "days": - case "day": - case "d": - return n * d; - case "hours": - case "hour": - case "hrs": - case "hr": - case "h": - return n * h; - case "minutes": - case "minute": - case "mins": - case "min": - case "m": - return n * m; - case "seconds": - case "second": - case "secs": - case "sec": - case "s": - return n * s; - case "milliseconds": - case "millisecond": - case "msecs": - case "msec": - case "ms": - return n; - default: - return void 0; + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c58) { + s1 = peg$c58; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c59); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c60(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c61) { + s1 = peg$c61; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c62); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c63(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c64) { + s1 = peg$c64; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c65); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c66(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c67) { + s1 = peg$c67; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c68); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c69(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c70) { + s1 = peg$c70; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c71); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c72(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c73) { + s1 = peg$c73; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c74); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c75(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c76) { + s1 = peg$c76; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c77); + } + } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c78(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c79) { + s1 = peg$c79; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c80); + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parsehexDigit(); + if (s2 !== peg$FAILED) { + s3 = peg$parsehexDigit(); + if (s3 !== peg$FAILED) { + s4 = peg$parsehexDigit(); + if (s4 !== peg$FAILED) { + s5 = peg$parsehexDigit(); + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c81(s2, s3, s4, s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } + } + } + } + } + } + } } } - function fmtShort(ms) { - if (ms >= d) { - return Math.round(ms / d) + "d"; - } - if (ms >= h) { - return Math.round(ms / h) + "h"; - } - if (ms >= m) { - return Math.round(ms / m) + "m"; + return s0; + } + function peg$parsehexDigit() { + var s0; + if (peg$c82.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c83); } - if (ms >= s) { - return Math.round(ms / s) + "s"; + } + return s0; + } + function peg$parseB() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); } - return ms + "ms"; } - function fmtLong(ms) { - return plural(ms, d, "day") || plural(ms, h, "hour") || plural(ms, m, "minute") || plural(ms, s, "second") || ms + " ms"; + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c85.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c86); + } + } + } + } else { + s0 = peg$FAILED; } - function plural(ms, n, name) { - if (ms < n) { - return; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c84); } - if (ms < n * 1.5) { - return Math.floor(ms / n) + " " + name; + } + return s0; + } + function peg$parseS() { + var s0, s1; + peg$silentFails++; + s0 = []; + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); } - return Math.ceil(ms / n) + " " + name + "s"; } - }, - , - , - , - function(module3, exports3, __webpack_require__) { - module3.exports = rimraf; - rimraf.sync = rimrafSync; - var assert = __webpack_require__(22); - var path = __webpack_require__(0); - var fs = __webpack_require__(3); - var glob = __webpack_require__(75); - var _0666 = parseInt("666", 8); - var defaultGlobOpts = { - nosort: true, - silent: true - }; - var timeout = 0; - var isWindows = process.platform === "win32"; - function defaults(options) { - var methods = [ - "unlink", - "chmod", - "stat", - "lstat", - "rmdir", - "readdir" - ]; - methods.forEach(function(m) { - options[m] = options[m] || fs[m]; - m = m + "Sync"; - options[m] = options[m] || fs[m]; - }); - options.maxBusyTries = options.maxBusyTries || 3; - options.emfileWait = options.emfileWait || 1e3; - if (options.glob === false) { - options.disableGlob = true; + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c88.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c89); + } + } } - options.disableGlob = options.disableGlob || false; - options.glob = options.glob || defaultGlobOpts; + } else { + s0 = peg$FAILED; } - function rimraf(p, options, cb) { - if (typeof options === "function") { - cb = options; - options = {}; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c87); } - assert(p, "rimraf: missing path"); - assert.equal(typeof p, "string", "rimraf: path should be a string"); - assert.equal(typeof cb, "function", "rimraf: callback function required"); - assert(options, "rimraf: invalid options argument provided"); - assert.equal(typeof options, "object", "rimraf: options should be object"); - defaults(options); - var busyTries = 0; - var errState = null; - var n = 0; - if (options.disableGlob || !glob.hasMagic(p)) - return afterGlob(null, [p]); - options.lstat(p, function(er, stat) { - if (!er) - return afterGlob(null, [p]); - glob(p, options.glob, afterGlob); - }); - function next(er) { - errState = errState || er; - if (--n === 0) - cb(errState); + } + return s0; + } + function peg$parseEOL_ANY() { + var s0, s1, s2, s3, s4, s5; + s0 = peg$currPos; + s1 = peg$parseEOL(); + if (s1 !== peg$FAILED) { + s2 = []; + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; } - function afterGlob(er, results) { - if (er) - return cb(er); - n = results.length; - if (n === 0) - return cb(); - results.forEach(function(p2) { - rimraf_(p2, options, function CB(er2) { - if (er2) { - if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) { - busyTries++; - var time = busyTries * 100; - return setTimeout(function() { - rimraf_(p2, options, CB); - }, time); - } - if (er2.code === "EMFILE" && timeout < options.emfileWait) { - return setTimeout(function() { - rimraf_(p2, options, CB); - }, timeout++); - } - if (er2.code === "ENOENT") - er2 = null; - } - timeout = 0; - next(er2); - }); - }); + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - } - function rimraf_(p, options, cb) { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.lstat(p, function(er, st) { - if (er && er.code === "ENOENT") - return cb(null); - if (er && er.code === "EPERM" && isWindows) - fixWinEPERM(p, options, er, cb); - if (st && st.isDirectory()) - return rmdir(p, options, er, cb); - options.unlink(p, function(er2) { - if (er2) { - if (er2.code === "ENOENT") - return cb(null); - if (er2.code === "EPERM") - return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); - if (er2.code === "EISDIR") - return rmdir(p, options, er2, cb); + while (s3 !== peg$FAILED) { + s2.push(s3); + s3 = peg$currPos; + s4 = peg$parseB(); + if (s4 === peg$FAILED) { + s4 = null; + } + if (s4 !== peg$FAILED) { + s5 = peg$parseEOL(); + if (s5 !== peg$FAILED) { + s4 = [s4, s5]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; } - return cb(er2); - }); - }); - } - function fixWinEPERM(p, options, er, cb) { - assert(p); - assert(options); - assert(typeof cb === "function"); - if (er) - assert(er instanceof Error); - options.chmod(p, _0666, function(er2) { - if (er2) - cb(er2.code === "ENOENT" ? null : er); - else - options.stat(p, function(er3, stats) { - if (er3) - cb(er3.code === "ENOENT" ? null : er); - else if (stats.isDirectory()) - rmdir(p, options, er, cb); - else - options.unlink(p, cb); - }); - }); - } - function fixWinEPERMSync(p, options, er) { - assert(p); - assert(options); - if (er) - assert(er instanceof Error); - try { - options.chmodSync(p, _0666); - } catch (er2) { - if (er2.code === "ENOENT") - return; - else - throw er; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } - try { - var stats = options.statSync(p); - } catch (er3) { - if (er3.code === "ENOENT") - return; - else - throw er; + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - if (stats.isDirectory()) - rmdirSync(p, options, er); - else - options.unlinkSync(p); - } - function rmdir(p, options, originalEr, cb) { - assert(p); - assert(options); - if (originalEr) - assert(originalEr instanceof Error); - assert(typeof cb === "function"); - options.rmdir(p, function(er) { - if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) - rmkids(p, options, cb); - else if (er && er.code === "ENOTDIR") - cb(originalEr); - else - cb(er); - }); + } else { + peg$currPos = s0; + s0 = peg$FAILED; } - function rmkids(p, options, cb) { - assert(p); - assert(options); - assert(typeof cb === "function"); - options.readdir(p, function(er, files) { - if (er) - return cb(er); - var n = files.length; - if (n === 0) - return options.rmdir(p, cb); - var errState; - files.forEach(function(f) { - rimraf(path.join(p, f), options, function(er2) { - if (errState) - return; - if (er2) - return cb(errState = er2); - if (--n === 0) - options.rmdir(p, cb); - }); - }); - }); + return s0; + } + function peg$parseEOL() { + var s0; + if (input.substr(peg$currPos, 2) === peg$c90) { + s0 = peg$c90; + peg$currPos += 2; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c91); + } } - function rimrafSync(p, options) { - options = options || {}; - defaults(options); - assert(p, "rimraf: missing path"); - assert.equal(typeof p, "string", "rimraf: path should be a string"); - assert(options, "rimraf: missing options"); - assert.equal(typeof options, "object", "rimraf: options should be object"); - var results; - if (options.disableGlob || !glob.hasMagic(p)) { - results = [p]; + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 10) { + s0 = peg$c92; + peg$currPos++; } else { - try { - options.lstatSync(p); - results = [p]; - } catch (er) { - results = glob.sync(p, options.glob); + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c93); } } - if (!results.length) - return; - for (var i = 0; i < results.length; i++) { - var p = results[i]; - try { - var st = options.lstatSync(p); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "EPERM" && isWindows) - fixWinEPERMSync(p, options, er); - } - try { - if (st && st.isDirectory()) - rmdirSync(p, options, null); - else - options.unlinkSync(p); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "EPERM") - return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er); - if (er.code !== "EISDIR") - throw er; - rmdirSync(p, options, er); + if (s0 === peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 13) { + s0 = peg$c94; + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { + peg$fail(peg$c95); + } } } } - function rmdirSync(p, options, originalEr) { - assert(p); - assert(options); - if (originalEr) - assert(originalEr instanceof Error); - try { - options.rmdirSync(p); - } catch (er) { - if (er.code === "ENOENT") - return; - if (er.code === "ENOTDIR") - throw originalEr; - if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") - rmkidsSync(p, options); - } + return s0; + } + const INDENT_STEP = 2; + let indentLevel = 0; + peg$result = peg$startRuleFunction(); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail(peg$endExpectation()); } - function rmkidsSync(p, options) { - assert(p); - assert(options); - options.readdirSync(p).forEach(function(f) { - rimrafSync(path.join(p, f), options); + throw peg$buildStructuredError( + peg$maxFailExpected, + peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, + peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos) + ); + } + } + module2.exports = { + SyntaxError: peg$SyntaxError, + parse: peg$parse + }; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/syml.js +var require_syml6 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/syml.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseSyml = exports2.stringifySyml = exports2.PreserveOrdering = void 0; + var js_yaml_1 = require_js_yaml3(); + var syml_1 = require_syml5(); + var simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/; + var specialObjectKeys = [`__metadata`, `version`, `resolution`, `dependencies`, `peerDependencies`, `dependenciesMeta`, `peerDependenciesMeta`, `binaries`]; + var PreserveOrdering = class { + constructor(data) { + this.data = data; + } + }; + exports2.PreserveOrdering = PreserveOrdering; + function stringifyString(value) { + if (value.match(simpleStringPattern)) { + return value; + } else { + return JSON.stringify(value); + } + } + function isRemovableField(value) { + if (typeof value === `undefined`) + return true; + if (typeof value === `object` && value !== null) + return Object.keys(value).every((key) => isRemovableField(value[key])); + return false; + } + function stringifyValue(value, indentLevel, newLineIfObject) { + if (value === null) + return `null +`; + if (typeof value === `number` || typeof value === `boolean`) + return `${value.toString()} +`; + if (typeof value === `string`) + return `${stringifyString(value)} +`; + if (Array.isArray(value)) { + if (value.length === 0) + return `[] +`; + const indent = ` `.repeat(indentLevel); + const serialized = value.map((sub) => { + return `${indent}- ${stringifyValue(sub, indentLevel + 1, false)}`; + }).join(``); + return ` +${serialized}`; + } + if (typeof value === `object` && value) { + const [data, sort] = value instanceof PreserveOrdering ? [value.data, false] : [value, true]; + const indent = ` `.repeat(indentLevel); + const keys = Object.keys(data); + if (sort) { + keys.sort((a, b) => { + const aIndex = specialObjectKeys.indexOf(a); + const bIndex = specialObjectKeys.indexOf(b); + if (aIndex === -1 && bIndex === -1) + return a < b ? -1 : a > b ? 1 : 0; + if (aIndex !== -1 && bIndex === -1) + return -1; + if (aIndex === -1 && bIndex !== -1) + return 1; + return aIndex - bIndex; }); - var retries = isWindows ? 100 : 1; - var i = 0; - do { - var threw = true; - try { - var ret = options.rmdirSync(p, options); - threw = false; - return ret; - } finally { - if (++i < retries && threw) - continue; - } - } while (true); } - }, - , - , - , - , - , - function(module3, exports3, __webpack_require__) { - "use strict"; - var hasFlag = __webpack_require__(221); - var support = function(level) { - if (level === 0) { - return false; - } - return { - level, - hasBasic: true, - has256: level >= 2, - has16m: level >= 3 - }; - }; - var supportLevel = function() { - if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { - return 0; - } - if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { - return 3; - } - if (hasFlag("color=256")) { - return 2; - } - if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { - return 1; - } - if (process.stdout && !process.stdout.isTTY) { - return 0; - } - if (process.platform === "win32") { - return 1; - } - if ("CI" in process.env) { - if ("TRAVIS" in process.env || process.env.CI === "Travis") { - return 1; - } - return 0; - } - if ("TEAMCITY_VERSION" in process.env) { - return process.env.TEAMCITY_VERSION.match(/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/) === null ? 0 : 1; - } - if (/^(screen|xterm)-256(?:color)?/.test(process.env.TERM)) { - return 2; - } - if (/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)) { - return 1; + const fields = keys.filter((key) => { + return !isRemovableField(data[key]); + }).map((key, index) => { + const value2 = data[key]; + const stringifiedKey = stringifyString(key); + const stringifiedValue = stringifyValue(value2, indentLevel + 1, true); + const recordIndentation = index > 0 || newLineIfObject ? indent : ``; + const keyPart = stringifiedKey.length > 1024 ? `? ${stringifiedKey} +${recordIndentation}:` : `${stringifiedKey}:`; + const valuePart = stringifiedValue.startsWith(` +`) ? stringifiedValue : ` ${stringifiedValue}`; + return `${recordIndentation}${keyPart}${valuePart}`; + }).join(indentLevel === 0 ? ` +` : ``) || ` +`; + if (!newLineIfObject) { + return `${fields}`; + } else { + return ` +${fields}`; + } + } + throw new Error(`Unsupported value type (${value})`); + } + function stringifySyml(value) { + try { + const stringified = stringifyValue(value, 0, false); + return stringified !== ` +` ? stringified : ``; + } catch (error) { + if (error.location) + error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`); + throw error; + } + } + exports2.stringifySyml = stringifySyml; + stringifySyml.PreserveOrdering = PreserveOrdering; + function parseViaPeg(source) { + if (!source.endsWith(` +`)) + source += ` +`; + return (0, syml_1.parse)(source); + } + var LEGACY_REGEXP = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i; + function parseViaJsYaml(source) { + if (LEGACY_REGEXP.test(source)) + return parseViaPeg(source); + const value = (0, js_yaml_1.safeLoad)(source, { + schema: js_yaml_1.FAILSAFE_SCHEMA, + json: true + }); + if (value === void 0 || value === null) + return {}; + if (typeof value !== `object`) + throw new Error(`Expected an indexed object, got a ${typeof value} instead. Does your file follow Yaml's rules?`); + if (Array.isArray(value)) + throw new Error(`Expected an indexed object, got an array instead. Does your file follow Yaml's rules?`); + return value; + } + function parseSyml(source) { + return parseViaJsYaml(source); + } + exports2.parseSyml = parseSyml; + } +}); + +// ../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/index.js +var require_lib146 = __commonJS({ + "../node_modules/.pnpm/@yarnpkg+parsers@3.0.0-rc.27/node_modules/@yarnpkg/parsers/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringifySyml = exports2.parseSyml = exports2.stringifyResolution = exports2.parseResolution = exports2.stringifyValueArgument = exports2.stringifyShellLine = exports2.stringifyRedirectArgument = exports2.stringifyEnvSegment = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommand = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyArgument = exports2.stringifyShell = exports2.parseShell = void 0; + var shell_1 = require_shell6(); + Object.defineProperty(exports2, "parseShell", { enumerable: true, get: function() { + return shell_1.parseShell; + } }); + Object.defineProperty(exports2, "stringifyShell", { enumerable: true, get: function() { + return shell_1.stringifyShell; + } }); + Object.defineProperty(exports2, "stringifyArgument", { enumerable: true, get: function() { + return shell_1.stringifyArgument; + } }); + Object.defineProperty(exports2, "stringifyArgumentSegment", { enumerable: true, get: function() { + return shell_1.stringifyArgumentSegment; + } }); + Object.defineProperty(exports2, "stringifyArithmeticExpression", { enumerable: true, get: function() { + return shell_1.stringifyArithmeticExpression; + } }); + Object.defineProperty(exports2, "stringifyCommand", { enumerable: true, get: function() { + return shell_1.stringifyCommand; + } }); + Object.defineProperty(exports2, "stringifyCommandChain", { enumerable: true, get: function() { + return shell_1.stringifyCommandChain; + } }); + Object.defineProperty(exports2, "stringifyCommandChainThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandChainThen; + } }); + Object.defineProperty(exports2, "stringifyCommandLine", { enumerable: true, get: function() { + return shell_1.stringifyCommandLine; + } }); + Object.defineProperty(exports2, "stringifyCommandLineThen", { enumerable: true, get: function() { + return shell_1.stringifyCommandLineThen; + } }); + Object.defineProperty(exports2, "stringifyEnvSegment", { enumerable: true, get: function() { + return shell_1.stringifyEnvSegment; + } }); + Object.defineProperty(exports2, "stringifyRedirectArgument", { enumerable: true, get: function() { + return shell_1.stringifyRedirectArgument; + } }); + Object.defineProperty(exports2, "stringifyShellLine", { enumerable: true, get: function() { + return shell_1.stringifyShellLine; + } }); + Object.defineProperty(exports2, "stringifyValueArgument", { enumerable: true, get: function() { + return shell_1.stringifyValueArgument; + } }); + var resolution_1 = require_resolution6(); + Object.defineProperty(exports2, "parseResolution", { enumerable: true, get: function() { + return resolution_1.parseResolution; + } }); + Object.defineProperty(exports2, "stringifyResolution", { enumerable: true, get: function() { + return resolution_1.stringifyResolution; + } }); + var syml_1 = require_syml6(); + Object.defineProperty(exports2, "parseSyml", { enumerable: true, get: function() { + return syml_1.parseSyml; + } }); + Object.defineProperty(exports2, "stringifySyml", { enumerable: true, get: function() { + return syml_1.stringifySyml; + } }); + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/import/yarnUtil.js +var require_yarnUtil = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/import/yarnUtil.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.yarnLockFileKeyNormalizer = void 0; + var BUILTIN_PLACEHOLDER = "builtin"; + var MULTIPLE_KEYS_REGEXP = / *, */g; + var keyNormalizer = (parseDescriptor, parseRange) => (rawDescriptor) => { + const descriptors = [rawDescriptor]; + const descriptor = parseDescriptor(rawDescriptor); + const name = `${descriptor.scope ? "@" + descriptor.scope + "/" : ""}${descriptor.name}`; + const range = parseRange(descriptor.range); + const protocol = range.protocol; + switch (protocol) { + case "npm:": + case "file:": + descriptors.push(`${name}@${range.selector}`); + descriptors.push(`${name}@${protocol}${range.selector}`); + break; + case "git:": + case "git+ssh:": + case "git+http:": + case "git+https:": + case "github:": + if (range.source) { + descriptors.push(`${name}@${protocol}${range.source}${range.selector ? "#" + range.selector : ""}`); + } else { + descriptors.push(`${name}@${protocol}${range.selector}`); } - if ("COLORTERM" in process.env) { - return 1; + break; + case "patch:": + if (range.source && range.selector.indexOf(BUILTIN_PLACEHOLDER) === 0) { + descriptors.push(range.source); + } else { + descriptors.push( + // eslint-disable-next-line + `${name}@${protocol}${range.source}${range.selector ? "#" + range.selector : ""}` + ); } - if (process.env.TERM === "dumb") { - return 0; + break; + case null: + case void 0: + if (range.source) { + descriptors.push(`${name}@${range.source}#${range.selector}`); + } else { + descriptors.push(`${name}@${range.selector}`); } - return 0; - }(); - if (supportLevel === 0 && "FORCE_COLOR" in process.env) { - supportLevel = 1; - } - module3.exports = process && support(supportLevel); + break; + case "http:": + case "https:": + case "link:": + case "portal:": + case "exec:": + case "workspace:": + case "virtual:": + default: + descriptors.push(`${name}@${protocol}${range.selector}`); + break; } - ]); + return descriptors; + }; + var yarnLockFileKeyNormalizer = (parseDescriptor, parseRange) => (fullDescriptor) => { + const allKeys = fullDescriptor.split(MULTIPLE_KEYS_REGEXP).map(keyNormalizer(parseDescriptor, parseRange)); + return new Set(allKeys.flat(5)); + }; + exports2.yarnLockFileKeyNormalizer = yarnLockFileKeyNormalizer; } }); -// ../plugin-commands-import/lib/import.js +// ../pkg-manager/plugin-commands-installation/lib/import/index.js var require_import = __commonJS({ - "../plugin-commands-import/lib/import.js"(exports2) { + "../pkg-manager/plugin-commands-installation/lib/import/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.commandNames = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var read_project_manifest_1 = require_lib19(); - var store_connection_manager_1 = require_lib63(); - var graceful_fs_1 = __importDefault(require_lib18()); - var supi_1 = require_lib88(); - var rimraf_1 = __importDefault(require_rimraf()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var render_help_1 = __importDefault(require_lib30()); + var error_1 = require_lib8(); + var read_project_manifest_1 = require_lib16(); + var store_connection_manager_1 = require_lib106(); + var graceful_fs_1 = __importDefault4(require_lib15()); + var core_1 = require_lib140(); + var find_workspace_packages_1 = require_lib29(); + var logger_1 = require_lib6(); + var sort_packages_1 = require_lib110(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var map_1 = __importDefault4(require_map4()); + var render_help_1 = __importDefault4(require_lib34()); var lockfile_1 = require_lockfile(); - var path_exists_1 = __importDefault(require_path_exists()); + var yarnCore = __importStar5(require_lib126()); + var parsers_1 = require_lib146(); + var path_exists_1 = __importDefault4(require_path_exists()); + var getOptionsFromRootManifest_1 = require_getOptionsFromRootManifest(); + var recursive_1 = require_recursive2(); + var yarnUtil_1 = require_yarnUtil(); + var YarnLockType; + (function(YarnLockType2) { + YarnLockType2["yarn"] = "yarn"; + YarnLockType2["yarn2"] = "yarn2"; + })(YarnLockType || (YarnLockType = {})); exports2.rcOptionsTypes = cliOptionsTypes; function cliOptionsTypes() { return {}; } exports2.cliOptionsTypes = cliOptionsTypes; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: `Generates ${constants_1.WANTED_LOCKFILE} from an npm package-lock.json (or npm-shrinkwrap.json, yarn.lock) file.`, - url: cli_utils_1.docsUrl("import"), + url: (0, cli_utils_1.docsUrl)("import"), usages: [ "pnpm import" ] @@ -121812,2566 +209475,5758 @@ var require_import = __commonJS({ } exports2.help = help; exports2.commandNames = ["import"]; - async function handler(opts) { - await rimraf_1.default(path_1.default.join(opts.dir, constants_1.WANTED_LOCKFILE)); + async function handler(opts, params) { + await (0, rimraf_1.default)(path_1.default.join(opts.dir, constants_1.WANTED_LOCKFILE)); const versionsByPackageNames = {}; let preferredVersions = {}; - if (await path_exists_1.default(path_1.default.join(opts.dir, "yarn.lock"))) { - const yarnPackgeLockFile = await readYarnLockFile(opts.dir); - getAllVersionsFromYarnLockFile(yarnPackgeLockFile, versionsByPackageNames); - } else if (await path_exists_1.default(path_1.default.join(opts.dir, "package-lock.json")) || await path_exists_1.default(path_1.default.join(opts.dir, "npm-shrinkwrap.json"))) { + if (await (0, path_exists_1.default)(path_1.default.join(opts.dir, "yarn.lock"))) { + const yarnPackageLockFile = await readYarnLockFile(opts.dir); + getAllVersionsFromYarnLockFile(yarnPackageLockFile, versionsByPackageNames); + } else if (await (0, path_exists_1.default)(path_1.default.join(opts.dir, "package-lock.json")) || await (0, path_exists_1.default)(path_1.default.join(opts.dir, "npm-shrinkwrap.json"))) { const npmPackageLock = await readNpmLockfile(opts.dir); getAllVersionsByPackageNames(npmPackageLock, versionsByPackageNames); } else { - throw new error_1.default("LOCKFILE_NOT_FOUND", "No lockfile found"); + throw new error_1.PnpmError("LOCKFILE_NOT_FOUND", "No lockfile found"); } preferredVersions = getPreferredVersions(versionsByPackageNames); - const store = await store_connection_manager_1.createOrConnectStoreController(opts); + if (opts.workspaceDir) { + const allProjects = opts.allProjects ?? await (0, find_workspace_packages_1.findWorkspacePackages)(opts.workspaceDir, opts); + const selectedProjectsGraph = opts.selectedProjectsGraph ?? selectProjectByDir(allProjects, opts.dir); + if (selectedProjectsGraph != null) { + const sequencedGraph = (0, sort_packages_1.sequenceGraph)(selectedProjectsGraph); + if (!opts.ignoreWorkspaceCycles && !sequencedGraph.safe) { + const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : ""; + logger_1.logger.warn({ + message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`, + prefix: opts.workspaceDir + }); + } + await (0, recursive_1.recursive)( + allProjects, + params, + // @ts-expect-error + { + ...opts, + lockfileOnly: true, + selectedProjectsGraph, + preferredVersions, + workspaceDir: opts.workspaceDir + }, + "import" + ); + } + return; + } + const store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + const manifest = await (0, read_project_manifest_1.readProjectManifestOnly)(opts.dir); const installOpts = { ...opts, + ...(0, getOptionsFromRootManifest_1.getOptionsFromRootManifest)(manifest), lockfileOnly: true, preferredVersions, storeController: store.ctrl, storeDir: store.dir }; - await supi_1.install(await read_project_manifest_1.readProjectManifestOnly(opts.dir), installOpts); + await (0, core_1.install)(manifest, installOpts); } exports2.handler = handler; async function readYarnLockFile(dir) { try { const yarnLockFile = await graceful_fs_1.default.readFile(path_1.default.join(dir, "yarn.lock"), "utf8"); - const lockJsonFile = await lockfile_1.parse(yarnLockFile); - if (lockJsonFile.type === "success") { - return lockJsonFile.object; - } else { - throw new error_1.default("GET_YARN_LOCKFILE_ERR", `Failed With ${lockJsonFile.type}`); + let lockJsonFile; + const yarnLockFileType = getYarnLockfileType(yarnLockFile); + if (yarnLockFileType === YarnLockType.yarn) { + lockJsonFile = (0, lockfile_1.parse)(yarnLockFile); + if (lockJsonFile.type === "success") { + return lockJsonFile.object; + } else { + throw new error_1.PnpmError("YARN_LOCKFILE_PARSE_FAILED", `Yarn.lock file was ${lockJsonFile.type}`); + } + } else if (yarnLockFileType === YarnLockType.yarn2) { + lockJsonFile = parseYarn2Lock(yarnLockFile); + if (lockJsonFile.type === YarnLockType.yarn2) { + return lockJsonFile.object; + } } } catch (err) { if (err["code"] !== "ENOENT") throw err; } - throw new error_1.default("YARN_LOCKFILE_NOT_FOUND", "No yarn.lock found"); + throw new error_1.PnpmError("YARN_LOCKFILE_NOT_FOUND", "No yarn.lock found"); + } + function parseYarn2Lock(lockFileContents) { + const parseYarnLock = (0, parsers_1.parseSyml)(lockFileContents); + delete parseYarnLock.__metadata; + const dependencies = {}; + const { structUtils } = yarnCore; + const { parseDescriptor, parseRange } = structUtils; + const keyNormalizer = (0, yarnUtil_1.yarnLockFileKeyNormalizer)(parseDescriptor, parseRange); + Object.entries(parseYarnLock).forEach( + // eslint-disable-next-line + ([fullDescriptor, versionData]) => { + keyNormalizer(fullDescriptor).forEach((descriptor) => { + dependencies[descriptor] = versionData; + }); + } + ); + return { + object: dependencies, + type: YarnLockType.yarn2 + }; } async function readNpmLockfile(dir) { try { - return await load_json_file_1.default(path_1.default.join(dir, "package-lock.json")); + return await (0, load_json_file_1.default)(path_1.default.join(dir, "package-lock.json")); } catch (err) { if (err["code"] !== "ENOENT") throw err; } try { - return await load_json_file_1.default(path_1.default.join(dir, "npm-shrinkwrap.json")); + return await (0, load_json_file_1.default)(path_1.default.join(dir, "npm-shrinkwrap.json")); } catch (err) { if (err["code"] !== "ENOENT") throw err; } - throw new error_1.default("NPM_LOCKFILE_NOT_FOUND", "No package-lock.json or npm-shrinkwrap.json found"); + throw new error_1.PnpmError("NPM_LOCKFILE_NOT_FOUND", "No package-lock.json or npm-shrinkwrap.json found"); } function getPreferredVersions(versionsByPackageNames) { - const preferredVersions = {}; - for (const packageName of Object.keys(versionsByPackageNames)) { - preferredVersions[packageName] = Array.from(versionsByPackageNames[packageName]).reduce((acc, version) => { - acc[version] = "version"; - return acc; - }, {}); - } + const preferredVersions = (0, map_1.default)((versions) => Object.fromEntries(Array.from(versions).map((version2) => [version2, "version"])), versionsByPackageNames); return preferredVersions; } function getAllVersionsByPackageNames(npmPackageLock, versionsByPackageNames) { if (npmPackageLock.dependencies == null) return; - for (const packageName of Object.keys(npmPackageLock.dependencies)) { + for (const [packageName, { version: version2 }] of Object.entries(npmPackageLock.dependencies)) { if (!versionsByPackageNames[packageName]) { - versionsByPackageNames[packageName] = new Set(); + versionsByPackageNames[packageName] = /* @__PURE__ */ new Set(); + } + versionsByPackageNames[packageName].add(version2); + } + for (const dep of Object.values(npmPackageLock.dependencies)) { + getAllVersionsByPackageNames(dep, versionsByPackageNames); + } + } + function getAllVersionsFromYarnLockFile(yarnPackageLock, versionsByPackageNames) { + for (const [packageName, { version: version2 }] of Object.entries(yarnPackageLock)) { + const pkgName = packageName.substring(0, packageName.lastIndexOf("@")); + if (!versionsByPackageNames[pkgName]) { + versionsByPackageNames[pkgName] = /* @__PURE__ */ new Set(); + } + versionsByPackageNames[pkgName].add(version2); + } + } + function selectProjectByDir(projects, searchedDir) { + const project = projects.find(({ dir }) => path_1.default.relative(dir, searchedDir) === ""); + if (project == null) + return void 0; + return { [searchedDir]: { dependencies: [], package: project } }; + } + function getYarnLockfileType(lockFileContents) { + return lockFileContents.includes("__metadata") ? YarnLockType.yarn2 : YarnLockType.yarn; + } + } +}); + +// ../pkg-manager/plugin-commands-installation/lib/index.js +var require_lib147 = __commonJS({ + "../pkg-manager/plugin-commands-installation/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.importCommand = exports2.update = exports2.unlink = exports2.remove = exports2.prune = exports2.link = exports2.install = exports2.fetch = exports2.dedupe = exports2.add = void 0; + var add = __importStar5(require_add()); + exports2.add = add; + var dedupe = __importStar5(require_dedupe()); + exports2.dedupe = dedupe; + var install = __importStar5(require_install2()); + exports2.install = install; + var fetch = __importStar5(require_fetch3()); + exports2.fetch = fetch; + var link = __importStar5(require_link5()); + exports2.link = link; + var prune = __importStar5(require_prune3()); + exports2.prune = prune; + var remove = __importStar5(require_remove3()); + exports2.remove = remove; + var unlink = __importStar5(require_unlink()); + exports2.unlink = unlink; + var update = __importStar5(require_update2()); + exports2.update = update; + var importCommand = __importStar5(require_import()); + exports2.importCommand = importCommand; + } +}); + +// ../releasing/plugin-commands-deploy/lib/deployHook.js +var require_deployHook = __commonJS({ + "../releasing/plugin-commands-deploy/lib/deployHook.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.deployHook = void 0; + var types_1 = require_lib25(); + function deployHook(pkg) { + pkg.dependenciesMeta = pkg.dependenciesMeta || {}; + for (const depField of types_1.DEPENDENCIES_FIELDS) { + for (const [depName, depVersion] of Object.entries(pkg[depField] ?? {})) { + if (depVersion.startsWith("workspace:")) { + pkg.dependenciesMeta[depName] = { + injected: true + }; + } + } + } + return pkg; + } + exports2.deployHook = deployHook; + } +}); + +// ../releasing/plugin-commands-deploy/lib/deploy.js +var require_deploy = __commonJS({ + "../releasing/plugin-commands-deploy/lib/deploy.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.shorthands = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var directory_fetcher_1 = require_lib59(); + var fs_indexed_pkg_importer_1 = require_lib48(); + var plugin_commands_installation_1 = require_lib147(); + var common_cli_options_help_1 = require_lib97(); + var error_1 = require_lib8(); + var rimraf_1 = __importDefault4(require_rimraf2()); + var render_help_1 = __importDefault4(require_lib34()); + var deployHook_1 = require_deployHook(); + exports2.shorthands = plugin_commands_installation_1.install.shorthands; + function rcOptionsTypes() { + return plugin_commands_installation_1.install.rcOptionsTypes(); + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return plugin_commands_installation_1.install.cliOptionsTypes(); + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["deploy"]; + function help() { + return (0, render_help_1.default)({ + description: "Experimental! Deploy a package from a workspace", + url: (0, cli_utils_1.docsUrl)("deploy"), + usages: ["pnpm --filter= deploy "], + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Packages in `devDependencies` won't be installed", + name: "--prod", + shortAlias: "-P" + }, + { + description: "Only `devDependencies` are installed regardless of the `NODE_ENV`", + name: "--dev", + shortAlias: "-D" + }, + { + description: "`optionalDependencies` are not installed", + name: "--no-optional" + } + ] + }, + common_cli_options_help_1.FILTERING + ] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (!opts.workspaceDir) { + throw new error_1.PnpmError("CANNOT_DEPLOY", "A deploy is only possible from inside a workspace"); + } + const selectedDirs = Object.keys(opts.selectedProjectsGraph ?? {}); + if (selectedDirs.length === 0) { + throw new error_1.PnpmError("NOTHING_TO_DEPLOY", "No project was selected for deployment"); + } + if (selectedDirs.length > 1) { + throw new error_1.PnpmError("CANNOT_DEPLOY_MANY", "Cannot deploy more than 1 project"); + } + if (params.length !== 1) { + throw new error_1.PnpmError("INVALID_DEPLOY_TARGET", "This command requires one parameter"); + } + const deployedDir = selectedDirs[0]; + const deployDirParam = params[0]; + const deployDir = path_1.default.isAbsolute(deployDirParam) ? deployDirParam : path_1.default.join(opts.dir, deployDirParam); + await (0, rimraf_1.default)(deployDir); + await fs_1.default.promises.mkdir(deployDir, { recursive: true }); + await copyProject(deployedDir, deployDir); + await plugin_commands_installation_1.install.handler({ + ...opts, + depth: Infinity, + hooks: { + ...opts.hooks, + readPackage: [ + ...opts.hooks?.readPackage ?? [], + deployHook_1.deployHook + ] + }, + frozenLockfile: false, + preferFrozenLockfile: false, + saveLockfile: false, + virtualStoreDir: path_1.default.join(deployDir, "node_modules/.pnpm"), + modulesDir: path_1.default.relative(deployedDir, path_1.default.join(deployDir, "node_modules")), + rawLocalConfig: { + ...opts.rawLocalConfig, + // This is a workaround to prevent frozen install in CI envs. + "frozen-lockfile": false + } + }); + } + exports2.handler = handler; + async function copyProject(src, dest) { + const { filesIndex } = await (0, directory_fetcher_1.fetchFromDir)(src, { includeOnlyPackageFiles: true }); + const importPkg = (0, fs_indexed_pkg_importer_1.createIndexedPkgImporter)("clone-or-copy"); + await importPkg(dest, { filesMap: filesIndex, force: true, fromStore: true }); + } + } +}); + +// ../releasing/plugin-commands-deploy/lib/index.js +var require_lib148 = __commonJS({ + "../releasing/plugin-commands-deploy/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.deploy = void 0; + var deploy = __importStar5(require_deploy()); + exports2.deploy = deploy; + } +}); + +// ../reviewing/plugin-commands-listing/lib/recursive.js +var require_recursive3 = __commonJS({ + "../reviewing/plugin-commands-listing/lib/recursive.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.listRecursive = void 0; + var logger_1 = require_lib6(); + var list_1 = require_list3(); + async function listRecursive(pkgs, params, opts) { + const depth = opts.depth ?? 0; + if (opts.lockfileDir) { + return (0, list_1.render)(pkgs.map((pkg) => pkg.dir), params, { + ...opts, + alwaysPrintRootPackage: depth === -1, + lockfileDir: opts.lockfileDir + }); + } + const outputs = []; + for (const { dir } of pkgs) { + try { + const output = await (0, list_1.render)([dir], params, { + ...opts, + alwaysPrintRootPackage: depth === -1, + lockfileDir: opts.lockfileDir ?? dir + }); + if (!output) + continue; + outputs.push(output); + } catch (err) { + logger_1.logger.info(err); + err["prefix"] = dir; + throw err; } - versionsByPackageNames[packageName].add(npmPackageLock.dependencies[packageName].version); } - for (const packageName of Object.keys(npmPackageLock.dependencies)) { - getAllVersionsByPackageNames(npmPackageLock.dependencies[packageName], versionsByPackageNames); + if (outputs.length === 0) + return ""; + const joiner = typeof depth === "number" && depth > -1 ? "\n\n" : "\n"; + return outputs.join(joiner); + } + exports2.listRecursive = listRecursive; + } +}); + +// ../reviewing/plugin-commands-listing/lib/list.js +var require_list3 = __commonJS({ + "../reviewing/plugin-commands-listing/lib/list.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.render = exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var list_1 = require_lib91(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var recursive_1 = require_recursive3(); + function rcOptionsTypes() { + return (0, pick_1.default)([ + "depth", + "dev", + "global-dir", + "global", + "json", + "long", + "only", + "optional", + "parseable", + "production" + ], config_1.types); + } + exports2.rcOptionsTypes = rcOptionsTypes; + var cliOptionsTypes = () => ({ + ...rcOptionsTypes(), + "only-projects": Boolean, + recursive: Boolean + }); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production" + }; + exports2.commandNames = ["list", "ls"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["list", "ls", "la", "ll"], + description: "When run as ll or la, it shows extended information by default. All dependencies are printed by default. Search by patterns is supported. For example: pnpm ls babel-* eslint-*", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: "Show extended information", + name: "--long" + }, + { + description: "Show parseable output instead of tree view", + name: "--parseable" + }, + { + description: "Show information in JSON format", + name: "--json" + }, + { + description: "List packages in the global install prefix instead of in the current project", + name: "--global", + shortAlias: "-g" + }, + { + description: "Max display depth of the dependency tree", + name: "--depth " + }, + { + description: "Display only direct dependencies", + name: "--depth 0" + }, + { + description: "Display only projects. Useful in a monorepo. `pnpm ls -r --depth -1` lists all projects in a monorepo", + name: "--depth -1" + }, + { + description: "Display only the dependency graph for packages in `dependencies` and `optionalDependencies`", + name: "--prod", + shortAlias: "-P" + }, + { + description: "Display only the dependency graph for packages in `devDependencies`", + name: "--dev", + shortAlias: "-D" + }, + { + description: "Display only dependencies that are also projects within the workspace", + name: "--only-projects" + }, + { + description: "Don't display packages from `optionalDependencies`", + name: "--no-optional" + }, + common_cli_options_help_1.OPTIONS.globalDir, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("list"), + usages: [ + "pnpm ls [ ...]" + ] + }); + } + exports2.help = help; + async function handler(opts, params) { + const include = { + dependencies: opts.production !== false, + devDependencies: opts.dev !== false, + optionalDependencies: opts.optional !== false + }; + const depth = opts.cliOptions?.["depth"] ?? 0; + if (opts.recursive && opts.selectedProjectsGraph != null) { + const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); + return (0, recursive_1.listRecursive)(pkgs, params, { ...opts, depth, include }); } + return render([opts.dir], params, { + ...opts, + depth, + include, + lockfileDir: opts.lockfileDir ?? opts.dir + }); } - function getAllVersionsFromYarnLockFile(yarnPackageLock, versionsByPackageNames) { - for (const packageName of Object.keys(yarnPackageLock)) { - const pkgName = packageName.substring(0, packageName.lastIndexOf("@")); - if (!versionsByPackageNames[pkgName]) { - versionsByPackageNames[pkgName] = new Set(); - } - versionsByPackageNames[pkgName].add(yarnPackageLock[packageName].version); - } + exports2.handler = handler; + async function render(prefixes, params, opts) { + const listOpts = { + alwaysPrintRootPackage: opts.alwaysPrintRootPackage, + depth: opts.depth ?? 0, + include: opts.include, + lockfileDir: opts.lockfileDir, + long: opts.long, + onlyProjects: opts.onlyProjects, + reportAs: opts.parseable ? "parseable" : opts.json ? "json" : "tree", + showExtraneous: false, + modulesDir: opts.modulesDir + }; + return params.length > 0 ? (0, list_1.listForPackages)(params, prefixes, listOpts) : (0, list_1.list)(prefixes, listOpts); } + exports2.render = render; } }); -// ../plugin-commands-import/lib/index.js -var require_lib89 = __commonJS({ - "../plugin-commands-import/lib/index.js"(exports2) { +// ../reviewing/plugin-commands-listing/lib/ll.js +var require_ll = __commonJS({ + "../reviewing/plugin-commands-listing/lib/ll.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.importCommand = void 0; - var importCommand = __importStar2(require_import()); - exports2.importCommand = importCommand; + exports2.handler = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.commandNames = void 0; + var omit_1 = __importDefault4(require_omit()); + var list = __importStar5(require_list3()); + exports2.commandNames = ["ll", "la"]; + exports2.rcOptionsTypes = list.rcOptionsTypes; + function cliOptionsTypes() { + return (0, omit_1.default)(["long"], list.cliOptionsTypes()); + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.help = list.help; + async function handler(opts, params) { + return list.handler({ ...opts, long: true }, params); + } + exports2.handler = handler; } }); -// ../common-cli-options-help/lib/index.js -var require_lib90 = __commonJS({ - "../common-cli-options-help/lib/index.js"(exports2) { +// ../reviewing/plugin-commands-listing/lib/why.js +var require_why = __commonJS({ + "../reviewing/plugin-commands-listing/lib/why.js"(exports2) { "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.FILTERING = exports2.UNIVERSAL_OPTIONS = exports2.OPTIONS = void 0; - exports2.OPTIONS = { - globalDir: { - description: "Specify a custom directory to store global packages", - name: "--global-dir" - }, - ignoreScripts: { - description: "Don't run lifecycle scripts", - name: "--ignore-scripts" - }, - offline: { - description: "Trigger an error if any required dependencies are not available in local store", - name: "--offline" - }, - preferOffline: { - description: "Skip staleness checks for cached data, but request missing data from the server", - name: "--prefer-offline" - }, - storeDir: { - description: "The directory in which all the packages are saved on the disk", - name: "--store-dir " - }, - virtualStoreDir: { - description: "The directory with links to the store (default is node_modules/.pnpm). All direct and indirect dependencies of the project are linked into this directory", - name: "--virtual-store-dir " - } + exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var list_1 = require_list3(); + function rcOptionsTypes() { + return (0, pick_1.default)([ + "dev", + "global-dir", + "global", + "json", + "long", + "only", + "optional", + "parseable", + "production" + ], config_1.types); + } + exports2.rcOptionsTypes = rcOptionsTypes; + var cliOptionsTypes = () => ({ + ...rcOptionsTypes(), + recursive: Boolean + }); + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production" }; - exports2.UNIVERSAL_OPTIONS = [ - { - description: "Controls colors in the output. By default, output is always colored when it goes directly to a terminal", - name: "--[no-]color" - }, - { - description: "Output usage information", - name: "--help", - shortAlias: "-h" - }, - { - description: `Change to directory (default: ${process.cwd()})`, - name: "--dir ", - shortAlias: "-C" - }, - { - description: "Run the command on the root workspace project", - name: "--workspace-root", - shortAlias: "-w" - }, - { - description: 'What level of logs to report. Any logs at or higher than the given level will be shown. Levels (lowest to highest): debug, info, warn, error. Or use "--silent" to turn off all logging.', - name: "--loglevel " - }, - { - description: "Stream output from child processes immediately, prefixed with the originating package directory. This allows output from different packages to be interleaved.", - name: "--stream" - }, - { - description: "Divert all output to stderr", - name: "--use-stderr" + exports2.commandNames = ["why"]; + function help() { + return (0, render_help_1.default)({ + description: `Shows the packages that depend on +For example: pnpm why babel-* eslint-*`, + descriptionLists: [ + { + title: "Options", + list: [ + { + description: 'Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + name: "--recursive", + shortAlias: "-r" + }, + { + description: "Show extended information", + name: "--long" + }, + { + description: "Show parseable output instead of tree view", + name: "--parseable" + }, + { + description: "Show information in JSON format", + name: "--json" + }, + { + description: "List packages in the global install prefix instead of in the current project", + name: "--global", + shortAlias: "-g" + }, + { + description: "Display only the dependency graph for packages in `dependencies` and `optionalDependencies`", + name: "--prod", + shortAlias: "-P" + }, + { + description: "Display only the dependency graph for packages in `devDependencies`", + name: "--dev", + shortAlias: "-D" + }, + { + description: "Don't display packages from `optionalDependencies`", + name: "--no-optional" + }, + common_cli_options_help_1.OPTIONS.globalDir, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("why"), + usages: [ + "pnpm why ..." + ] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (params.length === 0) { + throw new error_1.PnpmError("MISSING_PACKAGE_NAME", "`pnpm why` requires the package name"); } - ]; - exports2.FILTERING = { - list: [ - { - description: 'Restricts the scope to package names matching the given pattern. E.g.: foo, "@bar/*"', - name: "--filter " - }, - { - description: "Includes all direct and indirect dependencies of the matched packages. E.g.: foo...", - name: "--filter ..." - }, - { - description: "Includes only the direct and indirect dependencies of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: foo^... (foo^^... in Command Prompt)", - name: "--filter ^..." - }, - { - description: 'Includes all direct and indirect dependents of the matched packages. E.g.: ...foo, "...@bar/*"', - name: "--filter ..." - }, - { - description: "Includes only the direct and indirect dependents of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: ...^foo (...^^foo in Command Prompt)", - name: "--filter ...^" - }, - { - description: "Includes all packages that are inside a given subdirectory. E.g.: ./components", - name: "--filter ./" - }, - { - description: "Includes all packages that are under the current working directory", - name: "--filter ." - }, - { - description: 'Includes all projects that are under the specified directory. It may be used with "..." to select dependents/dependencies as well. It also may be combined with "[]". For instance, all changed projects inside a directory: "{packages}[origin/master]"', - name: "--filter {}" - }, - { - description: 'Includes all packages changed since the specified commit/branch. E.g.: "[master]", "[HEAD~2]". It may be used together with "...". So, for instance, "...[HEAD~1]" selects all packages changed in the last commit and their dependents', - name: '--filter "[]"' - }, - { - description: 'If a selector starts with ! (or \\! in zsh), it means the packages matching the selector must be excluded. E.g., "pnpm --filter !foo" selects all packages except "foo"', - name: "--filter !" - }, - { - description: 'Defines files related to tests. Useful with the changed since filter. When selecting only changed packages and their dependent packages, the dependent packages will be ignored in case a package has changes only in tests. Usage example: pnpm --filter="...[origin/master]" --test-pattern="test/*" test', - name: "--test-pattern " - }, - { - description: 'Defines files to ignore when filtering for changed projects since the specified commit/branch. Usage example: pnpm --filter="...[origin/master]" --changed-files-ignore-pattern="**/README.md" build', - name: "--changed-files-ignore-pattern " - }, - { - description: "Restricts the scope to package names matching the given pattern similar to --filter, but it ignores devDependencies when searching for dependencies and dependents.", - name: "--filter-prod " + return (0, list_1.handler)({ + ...opts, + cliOptions: { + ...opts.cliOptions ?? {}, + depth: Infinity } - ], - title: "Filtering options (run the command only on packages that satisfy at least one of the selectors)" - }; + }, params); + } + exports2.handler = handler; } }); -// ../plugin-commands-rebuild/lib/implementation/extendRebuildOptions.js -var require_extendRebuildOptions = __commonJS({ - "../plugin-commands-rebuild/lib/implementation/extendRebuildOptions.js"(exports2) { +// ../reviewing/plugin-commands-listing/lib/index.js +var require_lib149 = __commonJS({ + "../reviewing/plugin-commands-listing/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.why = exports2.ll = exports2.list = void 0; + var list = __importStar5(require_list3()); + exports2.list = list; + var ll = __importStar5(require_ll()); + exports2.ll = ll; + var why = __importStar5(require_why()); + exports2.why = why; + } +}); + +// ../reviewing/license-scanner/lib/getPkgInfo.js +var require_getPkgInfo3 = __commonJS({ + "../reviewing/license-scanner/lib/getPkgInfo.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var normalize_registries_1 = __importStar2(require_lib65()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var defaults = async (opts) => { - var _a, _b, _c; - const packageManager = (_a = opts.packageManager) !== null && _a !== void 0 ? _a : await load_json_file_1.default(path_1.default.join(__dirname, "../../package.json")); - const dir = (_b = opts.dir) !== null && _b !== void 0 ? _b : process.cwd(); - const lockfileDir = (_c = opts.lockfileDir) !== null && _c !== void 0 ? _c : dir; - return { - childConcurrency: 5, - development: true, - dir, - force: false, - forceSharedLockfile: false, - lockfileDir, - optional: true, - packageManager, - pending: false, - production: true, - rawConfig: {}, - registries: normalize_registries_1.DEFAULT_REGISTRIES, - shamefullyHoist: false, - shellEmulator: false, - sideEffectsCacheRead: false, - storeDir: opts.storeDir, - unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid() !== 0, - useLockfile: true, - userAgent: `${packageManager.name}/${packageManager.version} npm/? node/${process.version} ${process.platform} ${process.arch}` - }; - }; - exports2.default = async (opts) => { - if (opts) { - for (const key in opts) { - if (opts[key] === void 0) { - delete opts[key]; + exports2.getPkgInfo = exports2.readPackageIndexFile = exports2.readPkg = void 0; + var path_1 = __importDefault4(require("path")); + var path_absolute_1 = __importDefault4(require_path_absolute()); + var promises_1 = require("fs/promises"); + var read_package_json_1 = require_lib41(); + var dependency_path_1 = require_lib81(); + var p_limit_12 = __importDefault4(require_p_limit()); + var cafs_1 = require_lib46(); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var error_1 = require_lib8(); + var lockfile_utils_1 = require_lib84(); + var directory_fetcher_1 = require_lib59(); + var limitPkgReads = (0, p_limit_12.default)(4); + async function readPkg(pkgPath) { + return limitPkgReads(async () => (0, read_package_json_1.readPackageJson)(pkgPath)); + } + exports2.readPkg = readPkg; + var LICENSE_FILES = [ + "LICENSE", + "LICENCE", + "LICENSE.md", + "LICENCE.md", + "LICENSE.txt", + "LICENCE.txt", + "MIT-LICENSE.txt", + "MIT-LICENSE.md", + "MIT-LICENSE" + ]; + function coerceToString(field) { + const string = String(field); + return typeof field === "string" || field === string ? string : null; + } + function parseLicenseManifestField(field) { + if (Array.isArray(field)) { + const licenses = field; + const licenseTypes = licenses.reduce((listOfLicenseTypes, license) => { + const type = coerceToString(license.type) ?? coerceToString(license.name); + if (type) { + listOfLicenseTypes.push(type); + } + return listOfLicenseTypes; + }, []); + if (licenseTypes.length > 1) { + const combinedLicenseTypes = licenseTypes.join(" OR "); + return `(${combinedLicenseTypes})`; + } + return licenseTypes[0] ?? null; + } else { + return field?.type ?? coerceToString(field); + } + } + async function parseLicense(pkg, opts) { + let licenseField = pkg.manifest.license; + if ("licenses" in pkg.manifest) { + licenseField = pkg.manifest.licenses; + } + const license = parseLicenseManifestField(licenseField); + if (!license || /see license/i.test(license)) { + const { files: pkgFileIndex } = pkg.files; + for (const filename of LICENSE_FILES) { + if (!(filename in pkgFileIndex)) { + continue; } + const licensePackageFileInfo = pkgFileIndex[filename]; + let licenseContents; + if (pkg.files.local) { + licenseContents = await (0, promises_1.readFile)(licensePackageFileInfo); + } else { + licenseContents = await readLicenseFileFromCafs(opts.cafsDir, licensePackageFileInfo); + } + return { + name: "Unknown", + licenseFile: licenseContents?.toString("utf-8") + }; } } - const defaultOpts = await defaults(opts); - const extendedOpts = { ...defaultOpts, ...opts, storeDir: defaultOpts.storeDir }; - extendedOpts.registries = normalize_registries_1.default(extendedOpts.registries); - return extendedOpts; - }; + return { name: license ?? "Unknown" }; + } + async function readLicenseFileFromCafs(cafsDir, { integrity, mode }) { + const fileName = (0, cafs_1.getFilePathByModeInCafs)(cafsDir, integrity, mode); + const fileContents = await (0, promises_1.readFile)(fileName); + return fileContents; + } + async function readPackageIndexFile(packageResolution, depPath, opts) { + const isLocalPkg = packageResolution.type === "directory"; + if (isLocalPkg) { + const localInfo = await (0, directory_fetcher_1.fetchFromDir)(path_1.default.join(opts.lockfileDir, packageResolution.directory), {}); + return { + local: true, + files: localInfo.filesIndex + }; + } + const isPackageWithIntegrity = "integrity" in packageResolution; + let pkgIndexFilePath; + if (isPackageWithIntegrity) { + pkgIndexFilePath = (0, cafs_1.getFilePathInCafs)(opts.cafsDir, packageResolution.integrity, "index"); + } else if (!packageResolution.type && packageResolution.tarball) { + const packageDirInStore = (0, dependency_path_1.depPathToFilename)(depPath.split("_")[0]); + pkgIndexFilePath = path_1.default.join(opts.storeDir, packageDirInStore, "integrity.json"); + } else { + throw new error_1.PnpmError("UNSUPPORTED_PACKAGE_TYPE", `Unsupported package resolution type for ${depPath}`); + } + try { + const { files } = await (0, load_json_file_1.default)(pkgIndexFilePath); + return { + local: false, + files + }; + } catch (err) { + if (err.code === "ENOENT") { + throw new error_1.PnpmError("MISSING_PACKAGE_INDEX_FILE", `Failed to find package index file for ${depPath}, please consider running 'pnpm install'`); + } + throw err; + } + } + exports2.readPackageIndexFile = readPackageIndexFile; + async function getPkgInfo(pkg, opts) { + const cafsDir = path_1.default.join(opts.storeDir, "files"); + const packageResolution = (0, lockfile_utils_1.pkgSnapshotToResolution)(pkg.depPath, pkg.snapshot, pkg.registries); + const packageFileIndexInfo = await readPackageIndexFile(packageResolution, pkg.depPath, { + cafsDir, + storeDir: opts.storeDir, + lockfileDir: opts.dir + }); + let packageManifestDir; + if (packageFileIndexInfo.local) { + packageManifestDir = packageFileIndexInfo.files["package.json"]; + } else { + const packageFileIndex = packageFileIndexInfo.files; + const packageManifestFile = packageFileIndex["package.json"]; + packageManifestDir = (0, cafs_1.getFilePathByModeInCafs)(cafsDir, packageManifestFile.integrity, packageManifestFile.mode); + } + let manifest; + try { + manifest = await readPkg(packageManifestDir); + } catch (err) { + if (err.code === "ENOENT") { + throw new error_1.PnpmError("MISSING_PACKAGE_MANIFEST", `Failed to find package manifest file at ${packageManifestDir}`); + } + throw err; + } + const modulesDir = opts.modulesDir ?? "node_modules"; + const virtualStoreDir = (0, path_absolute_1.default)(opts.virtualStoreDir ?? path_1.default.join(modulesDir, ".pnpm"), opts.dir); + const packageModulePath = path_1.default.join(virtualStoreDir, (0, dependency_path_1.depPathToFilename)(pkg.depPath), modulesDir, manifest.name); + const licenseInfo = await parseLicense({ manifest, files: packageFileIndexInfo }, { cafsDir }); + const packageInfo = { + from: manifest.name, + path: packageModulePath, + name: manifest.name, + version: manifest.version, + description: manifest.description, + license: licenseInfo.name, + licenseContents: licenseInfo.licenseFile, + author: (manifest.author && (typeof manifest.author === "string" ? manifest.author : manifest.author.name)) ?? void 0, + homepage: manifest.homepage, + repository: (manifest.repository && (typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url)) ?? void 0 + }; + return packageInfo; + } + exports2.getPkgInfo = getPkgInfo; } }); -// ../plugin-commands-rebuild/lib/implementation/index.js -var require_implementation4 = __commonJS({ - "../plugin-commands-rebuild/lib/implementation/index.js"(exports2) { +// ../reviewing/license-scanner/lib/lockfileToLicenseNodeTree.js +var require_lockfileToLicenseNodeTree = __commonJS({ + "../reviewing/license-scanner/lib/lockfileToLicenseNodeTree.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.rebuild = exports2.rebuildPkgs = void 0; - var path_1 = __importDefault(require("path")); - var constants_1 = require_lib7(); - var core_loggers_1 = require_lib12(); - var get_context_1 = __importDefault(require_lib67()); - var lifecycle_1 = require_lib80(); - var link_bins_1 = __importDefault(require_lib70()); - var lockfile_utils_1 = require_lib53(); - var lockfile_walker_1 = __importDefault(require_lib54()); - var logger_1 = __importStar2(require_lib6()); - var modules_yaml_1 = require_lib64(); - var dp = __importStar2(require_lib33()); - var run_groups_1 = __importDefault(require_lib79()); - var npm_package_arg_1 = __importDefault(require_npa()); - var graph_sequencer_1 = __importDefault(require_graph_sequencer()); - var p_limit_1 = __importDefault(require_p_limit()); - var semver_1 = __importDefault(require_semver2()); - var extendRebuildOptions_1 = __importDefault(require_extendRebuildOptions()); - function findPackages(packages, searched, opts) { - return Object.keys(packages).filter((relativeDepPath) => { - const pkgLockfile = packages[relativeDepPath]; - const pkgInfo = lockfile_utils_1.nameVerFromPkgSnapshot(relativeDepPath, pkgLockfile); - if (!pkgInfo.name) { - logger_1.default.warn({ - message: `Skipping ${relativeDepPath} because cannot get the package name from ${constants_1.WANTED_LOCKFILE}. - Try to run run \`pnpm update --depth 100\` to create a new ${constants_1.WANTED_LOCKFILE} with all the necessary info.`, - prefix: opts.prefix - }); - return false; + exports2.lockfileToLicenseNodeTree = exports2.lockfileToLicenseNode = void 0; + var lockfile_utils_1 = require_lib84(); + var package_is_installable_1 = require_lib24(); + var lockfile_walker_1 = require_lib85(); + var getPkgInfo_1 = require_getPkgInfo3(); + var map_1 = __importDefault4(require_map4()); + async function lockfileToLicenseNode(step, options) { + const dependencies = {}; + for (const dependency of step.dependencies) { + const { depPath, pkgSnapshot, next } = dependency; + const { name, version: version2 } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot); + const packageInstallable = (0, package_is_installable_1.packageIsInstallable)(pkgSnapshot.id ?? depPath, { + name, + version: version2, + cpu: pkgSnapshot.cpu, + os: pkgSnapshot.os, + libc: pkgSnapshot.libc + }, { + optional: pkgSnapshot.optional ?? false, + lockfileDir: options.dir + }); + if (!packageInstallable) { + continue; } - return matches(searched, pkgInfo); - }); - } - function matches(searched, manifest) { - return searched.some((searchedPkg) => { - if (typeof searchedPkg === "string") { - return manifest.name === searchedPkg; + const packageInfo = await (0, getPkgInfo_1.getPkgInfo)({ + name, + version: version2, + depPath, + snapshot: pkgSnapshot, + registries: options.registries + }, { + storeDir: options.storeDir, + virtualStoreDir: options.virtualStoreDir, + dir: options.dir, + modulesDir: options.modulesDir ?? "node_modules" + }); + const subdeps = await lockfileToLicenseNode(next(), options); + const dep = { + name, + dev: pkgSnapshot.dev === true, + integrity: pkgSnapshot.resolution.integrity, + version: version2, + license: packageInfo.license, + licenseContents: packageInfo.licenseContents, + author: packageInfo.author, + homepage: packageInfo.homepage, + description: packageInfo.description, + repository: packageInfo.repository, + dir: packageInfo.path + }; + if (Object.keys(subdeps).length > 0) { + dep.dependencies = subdeps; + dep.requires = toRequires(subdeps); } - return searchedPkg.name === manifest.name && !!manifest.version && semver_1.default.satisfies(manifest.version, searchedPkg.range); + dependencies[name] = dep; + } + return dependencies; + } + exports2.lockfileToLicenseNode = lockfileToLicenseNode; + async function lockfileToLicenseNodeTree(lockfile, opts) { + const importerWalkers = (0, lockfile_walker_1.lockfileWalkerGroupImporterSteps)(lockfile, Object.keys(lockfile.importers), { include: opts?.include }); + const dependencies = {}; + for (const importerWalker of importerWalkers) { + const importerDeps = await lockfileToLicenseNode(importerWalker.step, { + storeDir: opts.storeDir, + virtualStoreDir: opts.virtualStoreDir, + modulesDir: opts.modulesDir, + dir: opts.dir, + registries: opts.registries + }); + const depName = importerWalker.importerId; + dependencies[depName] = { + dependencies: importerDeps, + requires: toRequires(importerDeps), + version: "0.0.0", + license: void 0 + }; + } + const licenseNodeTree = { + name: void 0, + version: void 0, + dependencies, + dev: false, + integrity: void 0, + requires: toRequires(dependencies) + }; + return licenseNodeTree; + } + exports2.lockfileToLicenseNodeTree = lockfileToLicenseNodeTree; + function toRequires(licenseNodesByDepName) { + return (0, map_1.default)((licenseNode) => licenseNode.version, licenseNodesByDepName); + } + } +}); + +// ../reviewing/license-scanner/lib/licenses.js +var require_licenses = __commonJS({ + "../reviewing/license-scanner/lib/licenses.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findDependencyLicenses = void 0; + var error_1 = require_lib8(); + var lockfileToLicenseNodeTree_1 = require_lockfileToLicenseNodeTree(); + function getDependenciesFromLicenseNode(licenseNode) { + if (!licenseNode.dependencies) { + return []; + } + let dependencies = []; + for (const dependencyName in licenseNode.dependencies) { + const dependencyNode = licenseNode.dependencies[dependencyName]; + const dependenciesOfNode = getDependenciesFromLicenseNode(dependencyNode); + dependencies = [ + ...dependencies, + ...dependenciesOfNode, + { + belongsTo: dependencyNode.dev ? "devDependencies" : "dependencies", + version: dependencyNode.version, + name: dependencyName, + license: dependencyNode.license, + licenseContents: dependencyNode.licenseContents, + author: dependencyNode.author, + homepage: dependencyNode.homepage, + description: dependencyNode.description, + repository: dependencyNode.repository, + path: dependencyNode.dir + } + ]; + } + return dependencies; + } + async function findDependencyLicenses(opts) { + if (opts.wantedLockfile == null) { + throw new error_1.PnpmError("LICENSES_NO_LOCKFILE", `No lockfile in directory "${opts.lockfileDir}". Run \`pnpm install\` to generate one.`); + } + const licenseNodeTree = await (0, lockfileToLicenseNodeTree_1.lockfileToLicenseNodeTree)(opts.wantedLockfile, { + dir: opts.lockfileDir, + modulesDir: opts.modulesDir, + storeDir: opts.storeDir, + virtualStoreDir: opts.virtualStoreDir, + include: opts.include, + registries: opts.registries }); + const licensePackages = /* @__PURE__ */ new Map(); + for (const dependencyName in licenseNodeTree.dependencies) { + const licenseNode = licenseNodeTree.dependencies[dependencyName]; + const dependenciesOfNode = getDependenciesFromLicenseNode(licenseNode); + dependenciesOfNode.forEach((dependencyNode) => { + licensePackages.set(dependencyNode.name, dependencyNode); + }); + } + const projectDependencies = Array.from(licensePackages.values()); + return Array.from(projectDependencies).sort((pkg1, pkg2) => pkg1.name.localeCompare(pkg2.name)); } - async function rebuildPkgs(projects, pkgSpecs, maybeOpts) { - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); + exports2.findDependencyLicenses = findDependencyLicenses; + } +}); + +// ../reviewing/license-scanner/lib/index.js +var require_lib150 = __commonJS({ + "../reviewing/license-scanner/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findDependencyLicenses = void 0; + var licenses_1 = require_licenses(); + Object.defineProperty(exports2, "findDependencyLicenses", { enumerable: true, get: function() { + return licenses_1.findDependencyLicenses; + } }); + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/F.js +var require_F = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/F.js"(exports2, module2) { + var F = function() { + return false; + }; + module2.exports = F; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/T.js +var require_T = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/T.js"(exports2, module2) { + var T = function() { + return true; + }; + module2.exports = T; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/__.js +var require__ = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/__.js"(exports2, module2) { + module2.exports = { + "@@functional/placeholder": true + }; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/add.js +var require_add2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/add.js"(exports2, module2) { + var _curry2 = require_curry2(); + var add = /* @__PURE__ */ _curry2(function add2(a, b) { + return Number(a) + Number(b); + }); + module2.exports = add; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/addIndex.js +var require_addIndex = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/addIndex.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var addIndex = /* @__PURE__ */ _curry1(function addIndex2(fn2) { + return curryN(fn2.length, function() { + var idx = 0; + var origFn = arguments[0]; + var list = arguments[arguments.length - 1]; + var args2 = Array.prototype.slice.call(arguments, 0); + args2[0] = function() { + var result2 = origFn.apply(this, _concat(arguments, [idx, list])); + idx += 1; + return result2; + }; + return fn2.apply(this, args2); + }); + }); + module2.exports = addIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/adjust.js +var require_adjust = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/adjust.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry3 = require_curry3(); + var adjust = /* @__PURE__ */ _curry3(function adjust2(idx, fn2, list) { + var len = list.length; + if (idx >= len || idx < -len) { + return list; } - const opts = await extendRebuildOptions_1.default(maybeOpts); - const ctx = await get_context_1.default(projects, opts); - if (!ctx.currentLockfile || ctx.currentLockfile.packages == null) - return; - const packages = ctx.currentLockfile.packages; - const searched = pkgSpecs.map((arg) => { - const { fetchSpec, name, raw, type } = npm_package_arg_1.default(arg); - if (raw === name) { - return name; + var _idx = (len + idx) % len; + var _list = _concat(list); + _list[_idx] = fn2(list[_idx]); + return _list; + }); + module2.exports = adjust; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xall.js +var require_xall = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xall.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XAll = /* @__PURE__ */ function() { + function XAll2(f, xf) { + this.xf = xf; + this.f = f; + this.all = true; + } + XAll2.prototype["@@transducer/init"] = _xfBase.init; + XAll2.prototype["@@transducer/result"] = function(result2) { + if (this.all) { + result2 = this.xf["@@transducer/step"](result2, true); } - if (type !== "version" && type !== "range") { - throw new Error(`Invalid argument - ${arg}. Rebuild can only select by version or range`); + return this.xf["@@transducer/result"](result2); + }; + XAll2.prototype["@@transducer/step"] = function(result2, input) { + if (!this.f(input)) { + this.all = false; + result2 = _reduced(this.xf["@@transducer/step"](result2, false)); } - return { - name, - range: fetchSpec - }; + return result2; + }; + return XAll2; + }(); + var _xall = /* @__PURE__ */ _curry2(function _xall2(f, xf) { + return new XAll(f, xf); + }); + module2.exports = _xall; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/all.js +var require_all2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/all.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xall = require_xall(); + var all = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["all"], _xall, function all2(fn2, list) { + var idx = 0; + while (idx < list.length) { + if (!fn2(list[idx])) { + return false; + } + idx += 1; + } + return true; + }) + ); + module2.exports = all; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/allPass.js +var require_allPass = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/allPass.js"(exports2, module2) { + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var max = require_max2(); + var pluck = require_pluck2(); + var reduce = require_reduce3(); + var allPass = /* @__PURE__ */ _curry1(function allPass2(preds) { + return curryN(reduce(max, 0, pluck("length", preds)), function() { + var idx = 0; + var len = preds.length; + while (idx < len) { + if (!preds[idx].apply(this, arguments)) { + return false; + } + idx += 1; + } + return true; }); - let pkgs = []; - for (const { rootDir } of projects) { - pkgs = [ - ...pkgs, - ...findPackages(packages, searched, { prefix: rootDir }) - ]; + }); + module2.exports = allPass; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/and.js +var require_and = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/and.js"(exports2, module2) { + var _curry2 = require_curry2(); + var and = /* @__PURE__ */ _curry2(function and2(a, b) { + return a && b; + }); + module2.exports = and; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/anyPass.js +var require_anyPass = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/anyPass.js"(exports2, module2) { + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var max = require_max2(); + var pluck = require_pluck2(); + var reduce = require_reduce3(); + var anyPass = /* @__PURE__ */ _curry1(function anyPass2(preds) { + return curryN(reduce(max, 0, pluck("length", preds)), function() { + var idx = 0; + var len = preds.length; + while (idx < len) { + if (preds[idx].apply(this, arguments)) { + return true; + } + idx += 1; + } + return false; + }); + }); + module2.exports = anyPass; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ap.js +var require_ap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ap.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var _reduce = require_reduce2(); + var map = require_map4(); + var ap = /* @__PURE__ */ _curry2(function ap2(applyF, applyX) { + return typeof applyX["fantasy-land/ap"] === "function" ? applyX["fantasy-land/ap"](applyF) : typeof applyF.ap === "function" ? applyF.ap(applyX) : typeof applyF === "function" ? function(x) { + return applyF(x)(applyX(x)); + } : _reduce(function(acc, f) { + return _concat(acc, map(f, applyX)); + }, [], applyF); + }); + module2.exports = ap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_aperture.js +var require_aperture = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_aperture.js"(exports2, module2) { + function _aperture(n, list) { + var idx = 0; + var limit = list.length - (n - 1); + var acc = new Array(limit >= 0 ? limit : 0); + while (idx < limit) { + acc[idx] = Array.prototype.slice.call(list, idx, idx + n); + idx += 1; } - await _rebuild({ - pkgsToRebuild: new Set(pkgs), - ...ctx - }, opts); + return acc; } - exports2.rebuildPkgs = rebuildPkgs; - async function rebuild(projects, maybeOpts) { - var _a; - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; - if (reporter != null && typeof reporter === "function") { - logger_1.streamParser.on("data", reporter); - } - const opts = await extendRebuildOptions_1.default(maybeOpts); - const ctx = await get_context_1.default(projects, opts); - let idsToRebuild = []; - if (opts.pending) { - idsToRebuild = ctx.pendingBuilds; - } else if (((_a = ctx.currentLockfile) === null || _a === void 0 ? void 0 : _a.packages) != null) { - idsToRebuild = Object.keys(ctx.currentLockfile.packages); + module2.exports = _aperture; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xaperture.js +var require_xaperture = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xaperture.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XAperture = /* @__PURE__ */ function() { + function XAperture2(n, xf) { + this.xf = xf; + this.pos = 0; + this.full = false; + this.acc = new Array(n); } - const pkgsThatWereRebuilt = await _rebuild({ - pkgsToRebuild: new Set(idsToRebuild), - ...ctx - }, opts); - ctx.pendingBuilds = ctx.pendingBuilds.filter((depPath) => !pkgsThatWereRebuilt.has(depPath)); - const scriptsOpts = { - extraBinPaths: ctx.extraBinPaths, - rawConfig: opts.rawConfig, - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - unsafePerm: opts.unsafePerm || false + XAperture2.prototype["@@transducer/init"] = _xfBase.init; + XAperture2.prototype["@@transducer/result"] = function(result2) { + this.acc = null; + return this.xf["@@transducer/result"](result2); }; - await lifecycle_1.runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "prepublish", "prepare"], ctx.projects, opts.childConcurrency || 5, scriptsOpts); - for (const { id, manifest } of ctx.projects) { - if ((manifest === null || manifest === void 0 ? void 0 : manifest.scripts) != null && (!opts.pending || ctx.pendingBuilds.includes(id))) { - ctx.pendingBuilds.splice(ctx.pendingBuilds.indexOf(id), 1); + XAperture2.prototype["@@transducer/step"] = function(result2, input) { + this.store(input); + return this.full ? this.xf["@@transducer/step"](result2, this.getCopy()) : result2; + }; + XAperture2.prototype.store = function(input) { + this.acc[this.pos] = input; + this.pos += 1; + if (this.pos === this.acc.length) { + this.pos = 0; + this.full = true; } + }; + XAperture2.prototype.getCopy = function() { + return _concat(Array.prototype.slice.call(this.acc, this.pos), Array.prototype.slice.call(this.acc, 0, this.pos)); + }; + return XAperture2; + }(); + var _xaperture = /* @__PURE__ */ _curry2(function _xaperture2(n, xf) { + return new XAperture(n, xf); + }); + module2.exports = _xaperture; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/aperture.js +var require_aperture2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/aperture.js"(exports2, module2) { + var _aperture = require_aperture(); + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xaperture = require_xaperture(); + var aperture = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xaperture, _aperture) + ); + module2.exports = aperture; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/append.js +var require_append = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/append.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var append = /* @__PURE__ */ _curry2(function append2(el, list) { + return _concat(list, [el]); + }); + module2.exports = append; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/apply.js +var require_apply4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/apply.js"(exports2, module2) { + var _curry2 = require_curry2(); + var apply = /* @__PURE__ */ _curry2(function apply2(fn2, args2) { + return fn2.apply(this, args2); + }); + module2.exports = apply; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/values.js +var require_values = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/values.js"(exports2, module2) { + var _curry1 = require_curry1(); + var keys = require_keys(); + var values = /* @__PURE__ */ _curry1(function values2(obj) { + var props = keys(obj); + var len = props.length; + var vals = []; + var idx = 0; + while (idx < len) { + vals[idx] = obj[props[idx]]; + idx += 1; } - await modules_yaml_1.write(ctx.rootModulesDir, { - prunedAt: new Date().toUTCString(), - ...ctx.modulesFile, - hoistedDependencies: ctx.hoistedDependencies, - hoistPattern: ctx.hoistPattern, - included: ctx.include, - layoutVersion: constants_1.LAYOUT_VERSION, - packageManager: `${opts.packageManager.name}@${opts.packageManager.version}`, - pendingBuilds: ctx.pendingBuilds, - publicHoistPattern: ctx.publicHoistPattern, - registries: ctx.registries, - skipped: Array.from(ctx.skipped), - storeDir: ctx.storeDir, - virtualStoreDir: ctx.virtualStoreDir + return vals; + }); + module2.exports = values; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/applySpec.js +var require_applySpec = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/applySpec.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isArray = require_isArray(); + var apply = require_apply4(); + var curryN = require_curryN2(); + var max = require_max2(); + var pluck = require_pluck2(); + var reduce = require_reduce3(); + var keys = require_keys(); + var values = require_values(); + function mapValues(fn2, obj) { + return _isArray(obj) ? obj.map(fn2) : keys(obj).reduce(function(acc, key) { + acc[key] = fn2(obj[key]); + return acc; + }, {}); + } + var applySpec = /* @__PURE__ */ _curry1(function applySpec2(spec) { + spec = mapValues(function(v) { + return typeof v == "function" ? v : applySpec2(v); + }, spec); + return curryN(reduce(max, 0, pluck("length", values(spec))), function() { + var args2 = arguments; + return mapValues(function(f) { + return apply(f, args2); + }, spec); }); + }); + module2.exports = applySpec; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/applyTo.js +var require_applyTo = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/applyTo.js"(exports2, module2) { + var _curry2 = require_curry2(); + var applyTo = /* @__PURE__ */ _curry2(function applyTo2(x, f) { + return f(x); + }); + module2.exports = applyTo; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ascend.js +var require_ascend = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ascend.js"(exports2, module2) { + var _curry3 = require_curry3(); + var ascend = /* @__PURE__ */ _curry3(function ascend2(fn2, a, b) { + var aa = fn2(a); + var bb = fn2(b); + return aa < bb ? -1 : aa > bb ? 1 : 0; + }); + module2.exports = ascend; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_assoc.js +var require_assoc = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_assoc.js"(exports2, module2) { + var _isArray = require_isArray(); + var _isInteger = require_isInteger(); + function _assoc(prop, val, obj) { + if (_isInteger(prop) && _isArray(obj)) { + var arr = [].concat(obj); + arr[prop] = val; + return arr; + } + var result2 = {}; + for (var p in obj) { + result2[p] = obj[p]; + } + result2[prop] = val; + return result2; } - exports2.rebuild = rebuild; - function getSubgraphToBuild(step, nodesToBuildAndTransitive, opts) { - let currentShouldBeBuilt = false; - for (const { depPath, next } of step.dependencies) { - if (nodesToBuildAndTransitive.has(depPath)) { - currentShouldBeBuilt = true; - } - const childShouldBeBuilt = getSubgraphToBuild(next(), nodesToBuildAndTransitive, opts) || opts.pkgsToRebuild.has(depPath); - if (childShouldBeBuilt) { - nodesToBuildAndTransitive.add(depPath); - currentShouldBeBuilt = true; + module2.exports = _assoc; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/isNil.js +var require_isNil = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/isNil.js"(exports2, module2) { + var _curry1 = require_curry1(); + var isNil = /* @__PURE__ */ _curry1(function isNil2(x) { + return x == null; + }); + module2.exports = isNil; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/assocPath.js +var require_assocPath = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/assocPath.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _has = require_has(); + var _isInteger = require_isInteger(); + var _assoc = require_assoc(); + var isNil = require_isNil(); + var assocPath = /* @__PURE__ */ _curry3(function assocPath2(path2, val, obj) { + if (path2.length === 0) { + return val; + } + var idx = path2[0]; + if (path2.length > 1) { + var nextObj = !isNil(obj) && _has(idx, obj) ? obj[idx] : _isInteger(path2[1]) ? [] : {}; + val = assocPath2(Array.prototype.slice.call(path2, 1), val, nextObj); + } + return _assoc(idx, val, obj); + }); + module2.exports = assocPath; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/assoc.js +var require_assoc2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/assoc.js"(exports2, module2) { + var _curry3 = require_curry3(); + var assocPath = require_assocPath(); + var assoc = /* @__PURE__ */ _curry3(function assoc2(prop, val, obj) { + return assocPath([prop], val, obj); + }); + module2.exports = assoc; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nAry.js +var require_nAry = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nAry.js"(exports2, module2) { + var _curry2 = require_curry2(); + var nAry = /* @__PURE__ */ _curry2(function nAry2(n, fn2) { + switch (n) { + case 0: + return function() { + return fn2.call(this); + }; + case 1: + return function(a0) { + return fn2.call(this, a0); + }; + case 2: + return function(a0, a1) { + return fn2.call(this, a0, a1); + }; + case 3: + return function(a0, a1, a2) { + return fn2.call(this, a0, a1, a2); + }; + case 4: + return function(a0, a1, a2, a3) { + return fn2.call(this, a0, a1, a2, a3); + }; + case 5: + return function(a0, a1, a2, a3, a4) { + return fn2.call(this, a0, a1, a2, a3, a4); + }; + case 6: + return function(a0, a1, a2, a3, a4, a5) { + return fn2.call(this, a0, a1, a2, a3, a4, a5); + }; + case 7: + return function(a0, a1, a2, a3, a4, a5, a6) { + return fn2.call(this, a0, a1, a2, a3, a4, a5, a6); + }; + case 8: + return function(a0, a1, a2, a3, a4, a5, a6, a7) { + return fn2.call(this, a0, a1, a2, a3, a4, a5, a6, a7); + }; + case 9: + return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) { + return fn2.call(this, a0, a1, a2, a3, a4, a5, a6, a7, a8); + }; + case 10: + return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) { + return fn2.call(this, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); + }; + default: + throw new Error("First argument to nAry must be a non-negative integer no greater than ten"); + } + }); + module2.exports = nAry; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/binary.js +var require_binary3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/binary.js"(exports2, module2) { + var _curry1 = require_curry1(); + var nAry = require_nAry(); + var binary = /* @__PURE__ */ _curry1(function binary2(fn2) { + return nAry(2, fn2); + }); + module2.exports = binary; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isFunction.js +var require_isFunction3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isFunction.js"(exports2, module2) { + function _isFunction(x) { + var type = Object.prototype.toString.call(x); + return type === "[object Function]" || type === "[object AsyncFunction]" || type === "[object GeneratorFunction]" || type === "[object AsyncGeneratorFunction]"; + } + module2.exports = _isFunction; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/liftN.js +var require_liftN = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/liftN.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduce = require_reduce2(); + var ap = require_ap(); + var curryN = require_curryN2(); + var map = require_map4(); + var liftN = /* @__PURE__ */ _curry2(function liftN2(arity, fn2) { + var lifted = curryN(arity, fn2); + return curryN(arity, function() { + return _reduce(ap, map(lifted, arguments[0]), Array.prototype.slice.call(arguments, 1)); + }); + }); + module2.exports = liftN; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lift.js +var require_lift2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lift.js"(exports2, module2) { + var _curry1 = require_curry1(); + var liftN = require_liftN(); + var lift = /* @__PURE__ */ _curry1(function lift2(fn2) { + return liftN(fn2.length, fn2); + }); + module2.exports = lift; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/both.js +var require_both = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/both.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isFunction = require_isFunction3(); + var and = require_and(); + var lift = require_lift2(); + var both = /* @__PURE__ */ _curry2(function both2(f, g) { + return _isFunction(f) ? function _both() { + return f.apply(this, arguments) && g.apply(this, arguments); + } : lift(and)(f, g); + }); + module2.exports = both; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/call.js +var require_call = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/call.js"(exports2, module2) { + var _curry1 = require_curry1(); + var call = /* @__PURE__ */ _curry1(function call2(fn2) { + return fn2.apply(this, Array.prototype.slice.call(arguments, 1)); + }); + module2.exports = call; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/clamp.js +var require_clamp = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/clamp.js"(exports2, module2) { + var _curry3 = require_curry3(); + var clamp = /* @__PURE__ */ _curry3(function clamp2(min, max, value) { + if (min > max) { + throw new Error("min must not be greater than max in clamp(min, max, value)"); + } + return value < min ? min : value > max ? max : value; + }); + module2.exports = clamp; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/collectBy.js +var require_collectBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/collectBy.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduce = require_reduce2(); + var collectBy = /* @__PURE__ */ _curry2(function collectBy2(fn2, list) { + var group = _reduce(function(o, x) { + var tag2 = fn2(x); + if (o[tag2] === void 0) { + o[tag2] = []; } + o[tag2].push(x); + return o; + }, {}, list); + var newList = []; + for (var tag in group) { + newList.push(group[tag]); } - for (const depPath of step.missing) { - logger_1.default.debug({ message: `No entry for "${depPath}" in ${constants_1.WANTED_LOCKFILE}` }); + return newList; + }); + module2.exports = collectBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/comparator.js +var require_comparator2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/comparator.js"(exports2, module2) { + var _curry1 = require_curry1(); + var comparator = /* @__PURE__ */ _curry1(function comparator2(pred) { + return function(a, b) { + return pred(a, b) ? -1 : pred(b, a) ? 1 : 0; + }; + }); + module2.exports = comparator; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/not.js +var require_not2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/not.js"(exports2, module2) { + var _curry1 = require_curry1(); + var not = /* @__PURE__ */ _curry1(function not2(a) { + return !a; + }); + module2.exports = not; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/complement.js +var require_complement2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/complement.js"(exports2, module2) { + var lift = require_lift2(); + var not = require_not2(); + var complement = /* @__PURE__ */ lift(not); + module2.exports = complement; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/composeWith.js +var require_composeWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/composeWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var pipeWith = require_pipeWith(); + var reverse = require_reverse2(); + var composeWith = /* @__PURE__ */ _curry2(function composeWith2(xf, list) { + return pipeWith.apply(this, [xf, reverse(list)]); + }); + module2.exports = composeWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_quote.js +var require_quote = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_quote.js"(exports2, module2) { + function _quote(s) { + var escaped = s.replace(/\\/g, "\\\\").replace(/[\b]/g, "\\b").replace(/\f/g, "\\f").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/\t/g, "\\t").replace(/\v/g, "\\v").replace(/\0/g, "\\0"); + return '"' + escaped.replace(/"/g, '\\"') + '"'; + } + module2.exports = _quote; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_toISOString.js +var require_toISOString = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_toISOString.js"(exports2, module2) { + var pad = function pad2(n) { + return (n < 10 ? "0" : "") + n; + }; + var _toISOString = typeof Date.prototype.toISOString === "function" ? function _toISOString2(d) { + return d.toISOString(); + } : function _toISOString2(d) { + return d.getUTCFullYear() + "-" + pad(d.getUTCMonth() + 1) + "-" + pad(d.getUTCDate()) + "T" + pad(d.getUTCHours()) + ":" + pad(d.getUTCMinutes()) + ":" + pad(d.getUTCSeconds()) + "." + (d.getUTCMilliseconds() / 1e3).toFixed(3).slice(2, 5) + "Z"; + }; + module2.exports = _toISOString; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_toString.js +var require_toString2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_toString.js"(exports2, module2) { + var _includes = require_includes(); + var _map = require_map3(); + var _quote = require_quote(); + var _toISOString = require_toISOString(); + var keys = require_keys(); + var reject = require_reject(); + function _toString(x, seen) { + var recur = function recur2(y) { + var xs = seen.concat([x]); + return _includes(y, xs) ? "" : _toString(y, xs); + }; + var mapPairs = function(obj, keys2) { + return _map(function(k) { + return _quote(k) + ": " + recur(obj[k]); + }, keys2.slice().sort()); + }; + switch (Object.prototype.toString.call(x)) { + case "[object Arguments]": + return "(function() { return arguments; }(" + _map(recur, x).join(", ") + "))"; + case "[object Array]": + return "[" + _map(recur, x).concat(mapPairs(x, reject(function(k) { + return /^\d+$/.test(k); + }, keys(x)))).join(", ") + "]"; + case "[object Boolean]": + return typeof x === "object" ? "new Boolean(" + recur(x.valueOf()) + ")" : x.toString(); + case "[object Date]": + return "new Date(" + (isNaN(x.valueOf()) ? recur(NaN) : _quote(_toISOString(x))) + ")"; + case "[object Null]": + return "null"; + case "[object Number]": + return typeof x === "object" ? "new Number(" + recur(x.valueOf()) + ")" : 1 / x === -Infinity ? "-0" : x.toString(10); + case "[object String]": + return typeof x === "object" ? "new String(" + recur(x.valueOf()) + ")" : _quote(x); + case "[object Undefined]": + return "undefined"; + default: + if (typeof x.toString === "function") { + var repr = x.toString(); + if (repr !== "[object Object]") { + return repr; + } + } + return "{" + mapPairs(x, keys(x)).join(", ") + "}"; } - return currentShouldBeBuilt; } - var limitLinking = p_limit_1.default(16); - async function _rebuild(ctx, opts) { - var _a; - const pkgsThatWereRebuilt = new Set(); - const graph = new Map(); - const pkgSnapshots = (_a = ctx.currentLockfile.packages) !== null && _a !== void 0 ? _a : {}; - const nodesToBuildAndTransitive = new Set(); - getSubgraphToBuild(lockfile_walker_1.default(ctx.currentLockfile, ctx.projects.map(({ id }) => id), { - include: { - dependencies: opts.production, - devDependencies: opts.development, - optionalDependencies: opts.optional + module2.exports = _toString; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toString.js +var require_toString3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toString.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _toString = require_toString2(); + var toString = /* @__PURE__ */ _curry1(function toString2(val) { + return _toString(val, []); + }); + module2.exports = toString; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/concat.js +var require_concat4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/concat.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isArray = require_isArray(); + var _isFunction = require_isFunction3(); + var _isString = require_isString(); + var toString = require_toString3(); + var concat = /* @__PURE__ */ _curry2(function concat2(a, b) { + if (_isArray(a)) { + if (_isArray(b)) { + return a.concat(b); } - }).step, nodesToBuildAndTransitive, { pkgsToRebuild: ctx.pkgsToRebuild }); - const nodesToBuildAndTransitiveArray = Array.from(nodesToBuildAndTransitive); - for (const depPath of nodesToBuildAndTransitiveArray) { - const pkgSnapshot = pkgSnapshots[depPath]; - graph.set(depPath, Object.entries({ ...pkgSnapshot.dependencies, ...pkgSnapshot.optionalDependencies }).map(([pkgName, reference]) => dp.refToRelative(reference, pkgName)).filter((childRelDepPath) => childRelDepPath && nodesToBuildAndTransitive.has(childRelDepPath))); + throw new TypeError(toString(b) + " is not an array"); } - const graphSequencerResult = graph_sequencer_1.default({ - graph, - groups: [nodesToBuildAndTransitiveArray] - }); - const chunks = graphSequencerResult.chunks; - const warn = (message2) => logger_1.default.info({ message: message2, prefix: opts.dir }); - const groups = chunks.map((chunk) => chunk.filter((depPath) => ctx.pkgsToRebuild.has(depPath)).map((depPath) => async () => { - var _a2; - const pkgSnapshot = pkgSnapshots[depPath]; - const pkgInfo = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - const pkgRoot = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), "node_modules", pkgInfo.name); - try { - const modules = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), "node_modules"); - const binPath = path_1.default.join(pkgRoot, "node_modules", ".bin"); - await link_bins_1.default(modules, binPath, { warn }); - await lifecycle_1.runPostinstallHooks({ - depPath, - extraBinPaths: ctx.extraBinPaths, - optional: pkgSnapshot.optional === true, - pkgRoot, - rawConfig: opts.rawConfig, - rootModulesDir: ctx.rootModulesDir, - shellEmulator: opts.shellEmulator, - unsafePerm: opts.unsafePerm || false - }); - pkgsThatWereRebuilt.add(depPath); - } catch (err) { - if (pkgSnapshot.optional) { - core_loggers_1.skippedOptionalDependencyLogger.debug({ - details: err.toString(), - package: { - id: (_a2 = pkgSnapshot.id) !== null && _a2 !== void 0 ? _a2 : depPath, - name: pkgInfo.name, - version: pkgInfo.version - }, - prefix: opts.dir, - reason: "build_failure" - }); - return; + if (_isString(a)) { + if (_isString(b)) { + return a + b; + } + throw new TypeError(toString(b) + " is not a string"); + } + if (a != null && _isFunction(a["fantasy-land/concat"])) { + return a["fantasy-land/concat"](b); + } + if (a != null && _isFunction(a.concat)) { + return a.concat(b); + } + throw new TypeError(toString(a) + ' does not have a method named "concat" or "fantasy-land/concat"'); + }); + module2.exports = concat; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/cond.js +var require_cond = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/cond.js"(exports2, module2) { + var _arity = require_arity(); + var _curry1 = require_curry1(); + var map = require_map4(); + var max = require_max2(); + var reduce = require_reduce3(); + var cond = /* @__PURE__ */ _curry1(function cond2(pairs) { + var arity = reduce(max, 0, map(function(pair) { + return pair[0].length; + }, pairs)); + return _arity(arity, function() { + var idx = 0; + while (idx < pairs.length) { + if (pairs[idx][0].apply(this, arguments)) { + return pairs[idx][1].apply(this, arguments); } - throw err; + idx += 1; + } + }); + }); + module2.exports = cond; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/curry.js +var require_curry = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/curry.js"(exports2, module2) { + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var curry = /* @__PURE__ */ _curry1(function curry2(fn2) { + return curryN(fn2.length, fn2); + }); + module2.exports = curry; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/constructN.js +var require_constructN = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/constructN.js"(exports2, module2) { + var _curry2 = require_curry2(); + var curry = require_curry(); + var nAry = require_nAry(); + var constructN = /* @__PURE__ */ _curry2(function constructN2(n, Fn) { + if (n > 10) { + throw new Error("Constructor with greater than ten arguments"); + } + if (n === 0) { + return function() { + return new Fn(); + }; + } + return curry(nAry(n, function($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) { + switch (arguments.length) { + case 1: + return new Fn($0); + case 2: + return new Fn($0, $1); + case 3: + return new Fn($0, $1, $2); + case 4: + return new Fn($0, $1, $2, $3); + case 5: + return new Fn($0, $1, $2, $3, $4); + case 6: + return new Fn($0, $1, $2, $3, $4, $5); + case 7: + return new Fn($0, $1, $2, $3, $4, $5, $6); + case 8: + return new Fn($0, $1, $2, $3, $4, $5, $6, $7); + case 9: + return new Fn($0, $1, $2, $3, $4, $5, $6, $7, $8); + case 10: + return new Fn($0, $1, $2, $3, $4, $5, $6, $7, $8, $9); } })); - await run_groups_1.default(opts.childConcurrency || 5, groups); - await Promise.all(Object.keys(pkgSnapshots).filter((depPath) => !lockfile_utils_1.packageIsIndependent(pkgSnapshots[depPath])).map(async (depPath) => limitLinking(async () => { - const pkgSnapshot = pkgSnapshots[depPath]; - const pkgInfo = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - const modules = path_1.default.join(ctx.virtualStoreDir, dp.depPathToFilename(depPath, opts.lockfileDir), "node_modules"); - const binPath = path_1.default.join(modules, pkgInfo.name, "node_modules", ".bin"); - return link_bins_1.default(modules, binPath, { warn }); - }))); - await Promise.all(ctx.projects.map(async ({ rootDir }) => limitLinking(async () => { - const modules = path_1.default.join(rootDir, "node_modules"); - const binPath = path_1.default.join(modules, ".bin"); - return link_bins_1.default(modules, binPath, { - allowExoticManifests: true, - warn - }); - }))); - return pkgsThatWereRebuilt; - } + }); + module2.exports = constructN; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/construct.js +var require_construct = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/construct.js"(exports2, module2) { + var _curry1 = require_curry1(); + var constructN = require_constructN(); + var construct = /* @__PURE__ */ _curry1(function construct2(Fn) { + return constructN(Fn.length, Fn); + }); + module2.exports = construct; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/count.js +var require_count2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/count.js"(exports2, module2) { + var _reduce = require_reduce2(); + var curry = require_curry(); + var count = /* @__PURE__ */ curry(function(pred, list) { + return _reduce(function(a, e) { + return pred(e) ? a + 1 : a; + }, 0, list); + }); + module2.exports = count; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xreduceBy.js +var require_xreduceBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xreduceBy.js"(exports2, module2) { + var _curryN = require_curryN(); + var _has = require_has(); + var _xfBase = require_xfBase(); + var XReduceBy = /* @__PURE__ */ function() { + function XReduceBy2(valueFn, valueAcc, keyFn, xf) { + this.valueFn = valueFn; + this.valueAcc = valueAcc; + this.keyFn = keyFn; + this.xf = xf; + this.inputs = {}; + } + XReduceBy2.prototype["@@transducer/init"] = _xfBase.init; + XReduceBy2.prototype["@@transducer/result"] = function(result2) { + var key; + for (key in this.inputs) { + if (_has(key, this.inputs)) { + result2 = this.xf["@@transducer/step"](result2, this.inputs[key]); + if (result2["@@transducer/reduced"]) { + result2 = result2["@@transducer/value"]; + break; + } + } + } + this.inputs = null; + return this.xf["@@transducer/result"](result2); + }; + XReduceBy2.prototype["@@transducer/step"] = function(result2, input) { + var key = this.keyFn(input); + this.inputs[key] = this.inputs[key] || [key, this.valueAcc]; + this.inputs[key][1] = this.valueFn(this.inputs[key][1], input); + return result2; + }; + return XReduceBy2; + }(); + var _xreduceBy = /* @__PURE__ */ _curryN(4, [], function _xreduceBy2(valueFn, valueAcc, keyFn, xf) { + return new XReduceBy(valueFn, valueAcc, keyFn, xf); + }); + module2.exports = _xreduceBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceBy.js +var require_reduceBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceBy.js"(exports2, module2) { + var _clone = require_clone3(); + var _curryN = require_curryN(); + var _dispatchable = require_dispatchable(); + var _has = require_has(); + var _reduce = require_reduce2(); + var _reduced = require_reduced(); + var _xreduceBy = require_xreduceBy(); + var reduceBy = /* @__PURE__ */ _curryN( + 4, + [], + /* @__PURE__ */ _dispatchable([], _xreduceBy, function reduceBy2(valueFn, valueAcc, keyFn, list) { + return _reduce(function(acc, elt) { + var key = keyFn(elt); + var value = valueFn(_has(key, acc) ? acc[key] : _clone(valueAcc, [], [], false), elt); + if (value && value["@@transducer/reduced"]) { + return _reduced(acc); + } + acc[key] = value; + return acc; + }, {}, list); + }) + ); + module2.exports = reduceBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/countBy.js +var require_countBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/countBy.js"(exports2, module2) { + var reduceBy = require_reduceBy(); + var countBy = /* @__PURE__ */ reduceBy(function(acc, elem) { + return acc + 1; + }, 0); + module2.exports = countBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dec.js +var require_dec = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dec.js"(exports2, module2) { + var add = require_add2(); + var dec = /* @__PURE__ */ add(-1); + module2.exports = dec; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/defaultTo.js +var require_defaultTo = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/defaultTo.js"(exports2, module2) { + var _curry2 = require_curry2(); + var defaultTo = /* @__PURE__ */ _curry2(function defaultTo2(d, v) { + return v == null || v !== v ? d : v; + }); + module2.exports = defaultTo; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/descend.js +var require_descend = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/descend.js"(exports2, module2) { + var _curry3 = require_curry3(); + var descend = /* @__PURE__ */ _curry3(function descend2(fn2, a, b) { + var aa = fn2(a); + var bb = fn2(b); + return aa > bb ? -1 : aa < bb ? 1 : 0; + }); + module2.exports = descend; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/differenceWith.js +var require_differenceWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/differenceWith.js"(exports2, module2) { + var _includesWith = require_includesWith(); + var _curry3 = require_curry3(); + var differenceWith = /* @__PURE__ */ _curry3(function differenceWith2(pred, first, second) { + var out = []; + var idx = 0; + var firstLen = first.length; + while (idx < firstLen) { + if (!_includesWith(pred, first[idx], second) && !_includesWith(pred, first[idx], out)) { + out.push(first[idx]); + } + idx += 1; + } + return out; + }); + module2.exports = differenceWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/remove.js +var require_remove4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/remove.js"(exports2, module2) { + var _curry3 = require_curry3(); + var remove = /* @__PURE__ */ _curry3(function remove2(start, count, list) { + var result2 = Array.prototype.slice.call(list, 0); + result2.splice(start, count); + return result2; + }); + module2.exports = remove; } }); -// ../pnpmfile/lib/requirePnpmfile.js -var require_requirePnpmfile = __commonJS({ - "../pnpmfile/lib/requirePnpmfile.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BadReadPackageHookError = void 0; - var fs_1 = __importDefault(require("fs")); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var chalk_1 = __importDefault(require_source()); - var BadReadPackageHookError = class extends error_1.default { - constructor(pnpmfile, message2) { - super("BAD_READ_PACKAGE_HOOK_RESULT", `${message2} Hook imported via ${pnpmfile}`); - this.pnpmfile = pnpmfile; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dissoc.js +var require_dissoc = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dissoc.js"(exports2, module2) { + var _isInteger = require_isInteger(); + var _isArray = require_isArray(); + var remove = require_remove4(); + function _dissoc(prop, obj) { + if (obj == null) { + return obj; } - }; - exports2.BadReadPackageHookError = BadReadPackageHookError; - var PnpmFileFailError = class extends error_1.default { - constructor(pnpmfile, originalError) { - super("PNPMFILE_FAIL", `Error during pnpmfile execution. pnpmfile: "${pnpmfile}". Error: "${originalError.message}".`); - this.pnpmfile = pnpmfile; - this.originalError = originalError; + if (_isInteger(prop) && _isArray(obj)) { + return remove(prop, 1, obj); } - }; - exports2.default = (pnpmFilePath, prefix) => { - var _a, _b; - try { - const pnpmfile = require(pnpmFilePath); - logger_1.default.info({ - message: `Using hooks from: ${pnpmFilePath}`, - prefix - }); - if (typeof pnpmfile === "undefined") { - logger_1.default.warn({ - message: `Ignoring the pnpmfile at "${pnpmFilePath}". It exports "undefined".`, - prefix - }); - return void 0; - } - if (((_a = pnpmfile === null || pnpmfile === void 0 ? void 0 : pnpmfile.hooks) === null || _a === void 0 ? void 0 : _a.readPackage) && typeof pnpmfile.hooks.readPackage !== "function") { - throw new TypeError("hooks.readPackage should be a function"); - } - if ((_b = pnpmfile === null || pnpmfile === void 0 ? void 0 : pnpmfile.hooks) === null || _b === void 0 ? void 0 : _b.readPackage) { - const readPackage = pnpmfile.hooks.readPackage; - pnpmfile.hooks.readPackage = function(pkg, ...args2) { - var _a2, _b2, _c, _d; - pkg.dependencies = (_a2 = pkg.dependencies) !== null && _a2 !== void 0 ? _a2 : {}; - pkg.devDependencies = (_b2 = pkg.devDependencies) !== null && _b2 !== void 0 ? _b2 : {}; - pkg.optionalDependencies = (_c = pkg.optionalDependencies) !== null && _c !== void 0 ? _c : {}; - pkg.peerDependencies = (_d = pkg.peerDependencies) !== null && _d !== void 0 ? _d : {}; - const newPkg = readPackage(pkg, ...args2); - if (!newPkg) { - throw new BadReadPackageHookError(pnpmFilePath, "readPackage hook did not return a package manifest object."); - } - const dependencies = ["dependencies", "optionalDependencies", "peerDependencies"]; - for (const dep of dependencies) { - if (newPkg[dep] && typeof newPkg[dep] !== "object") { - throw new BadReadPackageHookError(pnpmFilePath, `readPackage hook returned package manifest object's property '${dep}' must be an object.`); - } - } - return newPkg; - }; - } - pnpmfile.filename = pnpmFilePath; - return pnpmfile; - } catch (err) { - if (err instanceof SyntaxError) { - console.error(chalk_1.default.red("A syntax error in the .pnpmfile.cjs\n")); - console.error(err); - process.exit(1); - } - if (err.code !== "MODULE_NOT_FOUND" || pnpmFileExistsSync(pnpmFilePath)) { - throw new PnpmFileFailError(pnpmFilePath, err); - } - return void 0; + var result2 = {}; + for (var p in obj) { + result2[p] = obj[p]; } - }; - function pnpmFileExistsSync(pnpmFilePath) { - const pnpmFileRealName = pnpmFilePath.endsWith(".cjs") ? pnpmFilePath : `${pnpmFilePath}.cjs`; - return fs_1.default.existsSync(pnpmFileRealName); + delete result2[prop]; + return result2; } + module2.exports = _dissoc; } }); -// ../pnpmfile/lib/requireHooks.js -var require_requireHooks = __commonJS({ - "../pnpmfile/lib/requireHooks.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var core_loggers_1 = require_lib12(); - var logger_1 = __importDefault(require_lib6()); - var path_absolute_1 = __importDefault(require_path_absolute()); - var requirePnpmfile_1 = __importDefault(require_requirePnpmfile()); - function requireHooks(prefix, opts) { - const globalPnpmfile = opts.globalPnpmfile && requirePnpmfile_1.default(path_absolute_1.default(opts.globalPnpmfile, prefix), prefix); - let globalHooks = globalPnpmfile === null || globalPnpmfile === void 0 ? void 0 : globalPnpmfile.hooks; - const pnpmFile = opts.pnpmfile && requirePnpmfile_1.default(path_absolute_1.default(opts.pnpmfile, prefix), prefix) || requirePnpmfile_1.default(path_1.default.join(prefix, ".pnpmfile.cjs"), prefix); - let hooks = pnpmFile === null || pnpmFile === void 0 ? void 0 : pnpmFile.hooks; - if (!globalHooks && !hooks) - return {}; - globalHooks = globalHooks || {}; - hooks = hooks || {}; - const cookedHooks = {}; - if (globalHooks.readPackage || hooks.readPackage) { - logger_1.default.info({ - message: "readPackage hook is declared. Manifests of dependencies might get overridden", - prefix - }); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dissocPath.js +var require_dissocPath = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dissocPath.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dissoc = require_dissoc(); + var _isInteger = require_isInteger(); + var _isArray = require_isArray(); + var assoc = require_assoc2(); + function _shallowCloneObject(prop, obj) { + if (_isInteger(prop) && _isArray(obj)) { + return [].concat(obj); } - for (const hookName of ["readPackage", "afterAllResolved"]) { - if (globalHooks[hookName] && hooks[hookName]) { - const globalHookContext = createReadPackageHookContext(globalPnpmfile.filename, prefix, hookName); - const localHookContext = createReadPackageHookContext(pnpmFile.filename, prefix, hookName); - cookedHooks[hookName] = (arg) => { - return hooks[hookName](globalHooks[hookName](arg, globalHookContext), localHookContext); - }; - } else if (globalHooks[hookName]) { - const globalHook = globalHooks[hookName]; - const context = createReadPackageHookContext(globalPnpmfile.filename, prefix, hookName); - cookedHooks[hookName] = (pkg) => globalHook(pkg, context); - } else if (hooks[hookName]) { - const hook = hooks[hookName]; - const context = createReadPackageHookContext(pnpmFile.filename, prefix, hookName); - cookedHooks[hookName] = (pkg) => hook(pkg, context); - } + var result2 = {}; + for (var p in obj) { + result2[p] = obj[p]; } - return cookedHooks; - } - exports2.default = requireHooks; - function createReadPackageHookContext(calledFrom, prefix, hook) { - return { - log: (message2) => core_loggers_1.hookLogger.debug({ - from: calledFrom, - hook, - message: message2, - prefix - }) - }; + return result2; } + var dissocPath = /* @__PURE__ */ _curry2(function dissocPath2(path2, obj) { + if (obj == null) { + return obj; + } + switch (path2.length) { + case 0: + return obj; + case 1: + return _dissoc(path2[0], obj); + default: + var head = path2[0]; + var tail = Array.prototype.slice.call(path2, 1); + if (obj[head] == null) { + return _shallowCloneObject(head, obj); + } else { + return assoc(head, dissocPath2(tail, obj[head]), obj); + } + } + }); + module2.exports = dissocPath; } }); -// ../pnpmfile/lib/index.js -var require_lib91 = __commonJS({ - "../pnpmfile/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dissoc.js +var require_dissoc2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dissoc.js"(exports2, module2) { + var _curry2 = require_curry2(); + var dissocPath = require_dissocPath(); + var dissoc = /* @__PURE__ */ _curry2(function dissoc2(prop, obj) { + return dissocPath([prop], obj); }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + module2.exports = dissoc; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/divide.js +var require_divide = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/divide.js"(exports2, module2) { + var _curry2 = require_curry2(); + var divide = /* @__PURE__ */ _curry2(function divide2(a, b) { + return a / b; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + module2.exports = divide; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdrop.js +var require_xdrop = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdrop.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XDrop = /* @__PURE__ */ function() { + function XDrop2(n, xf) { + this.xf = xf; + this.n = n; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BadReadPackageHookError = exports2.requirePnpmfile = exports2.requireHooks = void 0; - var requireHooks_1 = __importDefault(require_requireHooks()); - exports2.requireHooks = requireHooks_1.default; - var requirePnpmfile_1 = __importStar2(require_requirePnpmfile()); - exports2.requirePnpmfile = requirePnpmfile_1.default; - Object.defineProperty(exports2, "BadReadPackageHookError", { enumerable: true, get: function() { - return requirePnpmfile_1.BadReadPackageHookError; - } }); + XDrop2.prototype["@@transducer/init"] = _xfBase.init; + XDrop2.prototype["@@transducer/result"] = _xfBase.result; + XDrop2.prototype["@@transducer/step"] = function(result2, input) { + if (this.n > 0) { + this.n -= 1; + return result2; + } + return this.xf["@@transducer/step"](result2, input); + }; + return XDrop2; + }(); + var _xdrop = /* @__PURE__ */ _curry2(function _xdrop2(n, xf) { + return new XDrop(n, xf); + }); + module2.exports = _xdrop; } }); -// ../sort-packages/lib/index.js -var require_lib92 = __commonJS({ - "../sort-packages/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sequenceGraph = void 0; - var graph_sequencer_1 = __importDefault(require_graph_sequencer()); - function sequenceGraph(pkgGraph) { - const keys = Object.keys(pkgGraph); - const setOfKeys = new Set(keys); - const graph = new Map(keys.map((pkgPath) => [ - pkgPath, - pkgGraph[pkgPath].dependencies.filter((d) => d !== pkgPath && setOfKeys.has(d)) - ])); - return graph_sequencer_1.default({ - graph, - groups: [keys] - }); - } - exports2.sequenceGraph = sequenceGraph; - function sortPackages(pkgGraph) { - const graphSequencerResult = sequenceGraph(pkgGraph); - return graphSequencerResult.chunks; - } - exports2.default = sortPackages; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/drop.js +var require_drop = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/drop.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xdrop = require_xdrop(); + var slice = require_slice(); + var drop = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["drop"], _xdrop, function drop2(n, xs) { + return slice(Math.max(0, n), Infinity, xs); + }) + ); + module2.exports = drop; } }); -// ../plugin-commands-installation/lib/getPinnedVersion.js -var require_getPinnedVersion = __commonJS({ - "../plugin-commands-installation/lib/getPinnedVersion.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function getPinnedVersion(opts) { - if (opts.saveExact === true || opts.savePrefix === "") - return "patch"; - return opts.savePrefix === "~" ? "minor" : "major"; - } - exports2.default = getPinnedVersion; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtake.js +var require_xtake = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtake.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XTake = /* @__PURE__ */ function() { + function XTake2(n, xf) { + this.xf = xf; + this.n = n; + this.i = 0; + } + XTake2.prototype["@@transducer/init"] = _xfBase.init; + XTake2.prototype["@@transducer/result"] = _xfBase.result; + XTake2.prototype["@@transducer/step"] = function(result2, input) { + this.i += 1; + var ret = this.n === 0 ? result2 : this.xf["@@transducer/step"](result2, input); + return this.n >= 0 && this.i >= this.n ? _reduced(ret) : ret; + }; + return XTake2; + }(); + var _xtake = /* @__PURE__ */ _curry2(function _xtake2(n, xf) { + return new XTake(n, xf); + }); + module2.exports = _xtake; } }); -// ../plugin-commands-installation/lib/getSaveType.js -var require_getSaveType = __commonJS({ - "../plugin-commands-installation/lib/getSaveType.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - function getSaveType(opts) { - if (opts.saveDev === true || opts.savePeer) - return "devDependencies"; - if (opts.saveOptional) - return "optionalDependencies"; - if (opts.saveProd) - return "dependencies"; - return void 0; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/take.js +var require_take2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/take.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xtake = require_xtake(); + var slice = require_slice(); + var take = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["take"], _xtake, function take2(n, xs) { + return slice(0, n < 0 ? Infinity : n, xs); + }) + ); + module2.exports = take; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dropLast.js +var require_dropLast = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dropLast.js"(exports2, module2) { + var take = require_take2(); + function dropLast(n, xs) { + return take(n < xs.length ? xs.length - n : 0, xs); } - exports2.default = getSaveType; + module2.exports = dropLast; } }); -// ../../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js -var require_map_obj = __commonJS({ - "../../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js"(exports2, module2) { - "use strict"; - var isObject = (value) => typeof value === "object" && value !== null; - var mapObjectSkip = Symbol("skip"); - var isObjectCustom = (value) => isObject(value) && !(value instanceof RegExp) && !(value instanceof Error) && !(value instanceof Date); - var mapObject = (object, mapper, options, isSeen = new WeakMap()) => { - options = { - deep: false, - target: {}, - ...options - }; - if (isSeen.has(object)) { - return isSeen.get(object); - } - isSeen.set(object, options.target); - const { target } = options; - delete options.target; - const mapArray = (array) => array.map((element) => isObjectCustom(element) ? mapObject(element, mapper, options, isSeen) : element); - if (Array.isArray(object)) { - return mapArray(object); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropLast.js +var require_xdropLast = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropLast.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XDropLast = /* @__PURE__ */ function() { + function XDropLast2(n, xf) { + this.xf = xf; + this.pos = 0; + this.full = false; + this.acc = new Array(n); } - for (const [key, value] of Object.entries(object)) { - const mapResult = mapper(key, value, object); - if (mapResult === mapObjectSkip) { - continue; - } - let [newKey, newValue, { shouldRecurse = true } = {}] = mapResult; - if (newKey === "__proto__") { - continue; + XDropLast2.prototype["@@transducer/init"] = _xfBase.init; + XDropLast2.prototype["@@transducer/result"] = function(result2) { + this.acc = null; + return this.xf["@@transducer/result"](result2); + }; + XDropLast2.prototype["@@transducer/step"] = function(result2, input) { + if (this.full) { + result2 = this.xf["@@transducer/step"](result2, this.acc[this.pos]); } - if (options.deep && shouldRecurse && isObjectCustom(newValue)) { - newValue = Array.isArray(newValue) ? mapArray(newValue) : mapObject(newValue, mapper, options, isSeen); + this.store(input); + return result2; + }; + XDropLast2.prototype.store = function(input) { + this.acc[this.pos] = input; + this.pos += 1; + if (this.pos === this.acc.length) { + this.pos = 0; + this.full = true; } - target[newKey] = newValue; + }; + return XDropLast2; + }(); + var _xdropLast = /* @__PURE__ */ _curry2(function _xdropLast2(n, xf) { + return new XDropLast(n, xf); + }); + module2.exports = _xdropLast; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropLast.js +var require_dropLast2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropLast.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _dropLast = require_dropLast(); + var _xdropLast = require_xdropLast(); + var dropLast = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xdropLast, _dropLast) + ); + module2.exports = dropLast; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dropLastWhile.js +var require_dropLastWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_dropLastWhile.js"(exports2, module2) { + var slice = require_slice(); + function dropLastWhile(pred, xs) { + var idx = xs.length - 1; + while (idx >= 0 && pred(xs[idx])) { + idx -= 1; } - return target; - }; - module2.exports = (object, mapper, options) => { - if (!isObject(object)) { - throw new TypeError(`Expected an object, got \`${object}\` (${typeof object})`); + return slice(0, idx + 1, xs); + } + module2.exports = dropLastWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropLastWhile.js +var require_xdropLastWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropLastWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduce = require_reduce2(); + var _xfBase = require_xfBase(); + var XDropLastWhile = /* @__PURE__ */ function() { + function XDropLastWhile2(fn2, xf) { + this.f = fn2; + this.retained = []; + this.xf = xf; } - return mapObject(object, mapper, options); - }; - module2.exports.mapObjectSkip = mapObjectSkip; + XDropLastWhile2.prototype["@@transducer/init"] = _xfBase.init; + XDropLastWhile2.prototype["@@transducer/result"] = function(result2) { + this.retained = null; + return this.xf["@@transducer/result"](result2); + }; + XDropLastWhile2.prototype["@@transducer/step"] = function(result2, input) { + return this.f(input) ? this.retain(result2, input) : this.flush(result2, input); + }; + XDropLastWhile2.prototype.flush = function(result2, input) { + result2 = _reduce(this.xf["@@transducer/step"], result2, this.retained); + this.retained = []; + return this.xf["@@transducer/step"](result2, input); + }; + XDropLastWhile2.prototype.retain = function(result2, input) { + this.retained.push(input); + return result2; + }; + return XDropLastWhile2; + }(); + var _xdropLastWhile = /* @__PURE__ */ _curry2(function _xdropLastWhile2(fn2, xf) { + return new XDropLastWhile(fn2, xf); + }); + module2.exports = _xdropLastWhile; } }); -// ../../node_modules/.pnpm/camelcase@5.3.1/node_modules/camelcase/index.js -var require_camelcase2 = __commonJS({ - "../../node_modules/.pnpm/camelcase@5.3.1/node_modules/camelcase/index.js"(exports2, module2) { - "use strict"; - var preserveCamelCase = (string) => { - let isLastCharLower = false; - let isLastCharUpper = false; - let isLastLastCharUpper = false; - for (let i = 0; i < string.length; i++) { - const character = string[i]; - if (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) { - string = string.slice(0, i) + "-" + string.slice(i); - isLastCharLower = false; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = true; - i++; - } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(character) && character.toLowerCase() === character) { - string = string.slice(0, i - 1) + "-" + string.slice(i - 1); - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = false; - isLastCharLower = true; - } else { - isLastCharLower = character.toLowerCase() === character && character.toUpperCase() !== character; - isLastLastCharUpper = isLastCharUpper; - isLastCharUpper = character.toUpperCase() === character && character.toLowerCase() !== character; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropLastWhile.js +var require_dropLastWhile2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropLastWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _dropLastWhile = require_dropLastWhile(); + var _xdropLastWhile = require_xdropLastWhile(); + var dropLastWhile = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xdropLastWhile, _dropLastWhile) + ); + module2.exports = dropLastWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropRepeatsWith.js +var require_xdropRepeatsWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropRepeatsWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XDropRepeatsWith = /* @__PURE__ */ function() { + function XDropRepeatsWith2(pred, xf) { + this.xf = xf; + this.pred = pred; + this.lastValue = void 0; + this.seenFirstValue = false; + } + XDropRepeatsWith2.prototype["@@transducer/init"] = _xfBase.init; + XDropRepeatsWith2.prototype["@@transducer/result"] = _xfBase.result; + XDropRepeatsWith2.prototype["@@transducer/step"] = function(result2, input) { + var sameAsLast = false; + if (!this.seenFirstValue) { + this.seenFirstValue = true; + } else if (this.pred(this.lastValue, input)) { + sameAsLast = true; + } + this.lastValue = input; + return sameAsLast ? result2 : this.xf["@@transducer/step"](result2, input); + }; + return XDropRepeatsWith2; + }(); + var _xdropRepeatsWith = /* @__PURE__ */ _curry2(function _xdropRepeatsWith2(pred, xf) { + return new XDropRepeatsWith(pred, xf); + }); + module2.exports = _xdropRepeatsWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/last.js +var require_last2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/last.js"(exports2, module2) { + var nth = require_nth(); + var last = /* @__PURE__ */ nth(-1); + module2.exports = last; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropRepeatsWith.js +var require_dropRepeatsWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropRepeatsWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xdropRepeatsWith = require_xdropRepeatsWith(); + var last = require_last2(); + var dropRepeatsWith = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xdropRepeatsWith, function dropRepeatsWith2(pred, list) { + var result2 = []; + var idx = 1; + var len = list.length; + if (len !== 0) { + result2[0] = list[0]; + while (idx < len) { + if (!pred(last(result2), list[idx])) { + result2[result2.length] = list[idx]; + } + idx += 1; + } } + return result2; + }) + ); + module2.exports = dropRepeatsWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropRepeats.js +var require_dropRepeats = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropRepeats.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _dispatchable = require_dispatchable(); + var _xdropRepeatsWith = require_xdropRepeatsWith(); + var dropRepeatsWith = require_dropRepeatsWith(); + var equals = require_equals2(); + var dropRepeats = /* @__PURE__ */ _curry1( + /* @__PURE__ */ _dispatchable( + [], + /* @__PURE__ */ _xdropRepeatsWith(equals), + /* @__PURE__ */ dropRepeatsWith(equals) + ) + ); + module2.exports = dropRepeats; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropWhile.js +var require_xdropWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xdropWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XDropWhile = /* @__PURE__ */ function() { + function XDropWhile2(f, xf) { + this.xf = xf; + this.f = f; } - return string; - }; - var camelCase = (input, options) => { - if (!(typeof input === "string" || Array.isArray(input))) { - throw new TypeError("Expected the input to be `string | string[]`"); - } - options = Object.assign({ - pascalCase: false - }, options); - const postProcess = (x) => options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x; - if (Array.isArray(input)) { - input = input.map((x) => x.trim()).filter((x) => x.length).join("-"); - } else { - input = input.trim(); - } - if (input.length === 0) { - return ""; + XDropWhile2.prototype["@@transducer/init"] = _xfBase.init; + XDropWhile2.prototype["@@transducer/result"] = _xfBase.result; + XDropWhile2.prototype["@@transducer/step"] = function(result2, input) { + if (this.f) { + if (this.f(input)) { + return result2; + } + this.f = null; + } + return this.xf["@@transducer/step"](result2, input); + }; + return XDropWhile2; + }(); + var _xdropWhile = /* @__PURE__ */ _curry2(function _xdropWhile2(f, xf) { + return new XDropWhile(f, xf); + }); + module2.exports = _xdropWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropWhile.js +var require_dropWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/dropWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xdropWhile = require_xdropWhile(); + var slice = require_slice(); + var dropWhile = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["dropWhile"], _xdropWhile, function dropWhile2(pred, xs) { + var idx = 0; + var len = xs.length; + while (idx < len && pred(xs[idx])) { + idx += 1; + } + return slice(idx, Infinity, xs); + }) + ); + module2.exports = dropWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/or.js +var require_or = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/or.js"(exports2, module2) { + var _curry2 = require_curry2(); + var or = /* @__PURE__ */ _curry2(function or2(a, b) { + return a || b; + }); + module2.exports = or; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/either.js +var require_either = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/either.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isFunction = require_isFunction3(); + var lift = require_lift2(); + var or = require_or(); + var either = /* @__PURE__ */ _curry2(function either2(f, g) { + return _isFunction(f) ? function _either() { + return f.apply(this, arguments) || g.apply(this, arguments); + } : lift(or)(f, g); + }); + module2.exports = either; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeLast.js +var require_takeLast2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeLast.js"(exports2, module2) { + var _curry2 = require_curry2(); + var drop = require_drop(); + var takeLast = /* @__PURE__ */ _curry2(function takeLast2(n, xs) { + return drop(n >= 0 ? xs.length - n : 0, xs); + }); + module2.exports = takeLast; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/endsWith.js +var require_endsWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/endsWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var equals = require_equals2(); + var takeLast = require_takeLast2(); + var endsWith = /* @__PURE__ */ _curry2(function(suffix, list) { + return equals(takeLast(suffix.length, list), suffix); + }); + module2.exports = endsWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/eqBy.js +var require_eqBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/eqBy.js"(exports2, module2) { + var _curry3 = require_curry3(); + var equals = require_equals2(); + var eqBy = /* @__PURE__ */ _curry3(function eqBy2(f, x, y) { + return equals(f(x), f(y)); + }); + module2.exports = eqBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/eqProps.js +var require_eqProps = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/eqProps.js"(exports2, module2) { + var _curry3 = require_curry3(); + var equals = require_equals2(); + var eqProps = /* @__PURE__ */ _curry3(function eqProps2(prop, obj1, obj2) { + return equals(obj1[prop], obj2[prop]); + }); + module2.exports = eqProps; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/evolve.js +var require_evolve = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/evolve.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isArray = require_isArray(); + var _isObject = require_isObject(); + var evolve = /* @__PURE__ */ _curry2(function evolve2(transformations, object) { + if (!_isObject(object) && !_isArray(object)) { + return object; } - if (input.length === 1) { - return options.pascalCase ? input.toUpperCase() : input.toLowerCase(); + var result2 = object instanceof Array ? [] : {}; + var transformation, key, type; + for (key in object) { + transformation = transformations[key]; + type = typeof transformation; + result2[key] = type === "function" ? transformation(object[key]) : transformation && type === "object" ? evolve2(transformation, object[key]) : object[key]; } - const hasUpperCase = input !== input.toLowerCase(); - if (hasUpperCase) { - input = preserveCamelCase(input); + return result2; + }); + module2.exports = evolve; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfind.js +var require_xfind = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfind.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XFind = /* @__PURE__ */ function() { + function XFind2(f, xf) { + this.xf = xf; + this.f = f; + this.found = false; } - input = input.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, (_, p1) => p1.toUpperCase()).replace(/\d+(\w|$)/g, (m) => m.toUpperCase()); - return postProcess(input); - }; - module2.exports = camelCase; - module2.exports.default = camelCase; + XFind2.prototype["@@transducer/init"] = _xfBase.init; + XFind2.prototype["@@transducer/result"] = function(result2) { + if (!this.found) { + result2 = this.xf["@@transducer/step"](result2, void 0); + } + return this.xf["@@transducer/result"](result2); + }; + XFind2.prototype["@@transducer/step"] = function(result2, input) { + if (this.f(input)) { + this.found = true; + result2 = _reduced(this.xf["@@transducer/step"](result2, input)); + } + return result2; + }; + return XFind2; + }(); + var _xfind = /* @__PURE__ */ _curry2(function _xfind2(f, xf) { + return new XFind(f, xf); + }); + module2.exports = _xfind; } }); -// ../../node_modules/.pnpm/quick-lru@4.0.1/node_modules/quick-lru/index.js -var require_quick_lru = __commonJS({ - "../../node_modules/.pnpm/quick-lru@4.0.1/node_modules/quick-lru/index.js"(exports2, module2) { - "use strict"; - var QuickLRU = class { - constructor(options = {}) { - if (!(options.maxSize && options.maxSize > 0)) { - throw new TypeError("`maxSize` must be a number greater than 0"); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/find.js +var require_find2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/find.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xfind = require_xfind(); + var find = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["find"], _xfind, function find2(fn2, list) { + var idx = 0; + var len = list.length; + while (idx < len) { + if (fn2(list[idx])) { + return list[idx]; + } + idx += 1; } - this.maxSize = options.maxSize; - this.cache = new Map(); - this.oldCache = new Map(); - this._size = 0; + }) + ); + module2.exports = find; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindIndex.js +var require_xfindIndex = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindIndex.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XFindIndex = /* @__PURE__ */ function() { + function XFindIndex2(f, xf) { + this.xf = xf; + this.f = f; + this.idx = -1; + this.found = false; } - _set(key, value) { - this.cache.set(key, value); - this._size++; - if (this._size >= this.maxSize) { - this._size = 0; - this.oldCache = this.cache; - this.cache = new Map(); + XFindIndex2.prototype["@@transducer/init"] = _xfBase.init; + XFindIndex2.prototype["@@transducer/result"] = function(result2) { + if (!this.found) { + result2 = this.xf["@@transducer/step"](result2, -1); } - } - get(key) { - if (this.cache.has(key)) { - return this.cache.get(key); + return this.xf["@@transducer/result"](result2); + }; + XFindIndex2.prototype["@@transducer/step"] = function(result2, input) { + this.idx += 1; + if (this.f(input)) { + this.found = true; + result2 = _reduced(this.xf["@@transducer/step"](result2, this.idx)); } - if (this.oldCache.has(key)) { - const value = this.oldCache.get(key); - this.oldCache.delete(key); - this._set(key, value); - return value; + return result2; + }; + return XFindIndex2; + }(); + var _xfindIndex = /* @__PURE__ */ _curry2(function _xfindIndex2(f, xf) { + return new XFindIndex(f, xf); + }); + module2.exports = _xfindIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findIndex.js +var require_findIndex2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findIndex.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xfindIndex = require_xfindIndex(); + var findIndex = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xfindIndex, function findIndex2(fn2, list) { + var idx = 0; + var len = list.length; + while (idx < len) { + if (fn2(list[idx])) { + return idx; + } + idx += 1; } + return -1; + }) + ); + module2.exports = findIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindLast.js +var require_xfindLast = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindLast.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XFindLast = /* @__PURE__ */ function() { + function XFindLast2(f, xf) { + this.xf = xf; + this.f = f; } - set(key, value) { - if (this.cache.has(key)) { - this.cache.set(key, value); - } else { - this._set(key, value); + XFindLast2.prototype["@@transducer/init"] = _xfBase.init; + XFindLast2.prototype["@@transducer/result"] = function(result2) { + return this.xf["@@transducer/result"](this.xf["@@transducer/step"](result2, this.last)); + }; + XFindLast2.prototype["@@transducer/step"] = function(result2, input) { + if (this.f(input)) { + this.last = input; } - return this; - } - has(key) { - return this.cache.has(key) || this.oldCache.has(key); + return result2; + }; + return XFindLast2; + }(); + var _xfindLast = /* @__PURE__ */ _curry2(function _xfindLast2(f, xf) { + return new XFindLast(f, xf); + }); + module2.exports = _xfindLast; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findLast.js +var require_findLast = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findLast.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xfindLast = require_xfindLast(); + var findLast = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xfindLast, function findLast2(fn2, list) { + var idx = list.length - 1; + while (idx >= 0) { + if (fn2(list[idx])) { + return list[idx]; + } + idx -= 1; + } + }) + ); + module2.exports = findLast; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindLastIndex.js +var require_xfindLastIndex = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xfindLastIndex.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XFindLastIndex = /* @__PURE__ */ function() { + function XFindLastIndex2(f, xf) { + this.xf = xf; + this.f = f; + this.idx = -1; + this.lastIdx = -1; } - peek(key) { - if (this.cache.has(key)) { - return this.cache.get(key); + XFindLastIndex2.prototype["@@transducer/init"] = _xfBase.init; + XFindLastIndex2.prototype["@@transducer/result"] = function(result2) { + return this.xf["@@transducer/result"](this.xf["@@transducer/step"](result2, this.lastIdx)); + }; + XFindLastIndex2.prototype["@@transducer/step"] = function(result2, input) { + this.idx += 1; + if (this.f(input)) { + this.lastIdx = this.idx; } - if (this.oldCache.has(key)) { - return this.oldCache.get(key); + return result2; + }; + return XFindLastIndex2; + }(); + var _xfindLastIndex = /* @__PURE__ */ _curry2(function _xfindLastIndex2(f, xf) { + return new XFindLastIndex(f, xf); + }); + module2.exports = _xfindLastIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findLastIndex.js +var require_findLastIndex = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/findLastIndex.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xfindLastIndex = require_xfindLastIndex(); + var findLastIndex = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xfindLastIndex, function findLastIndex2(fn2, list) { + var idx = list.length - 1; + while (idx >= 0) { + if (fn2(list[idx])) { + return idx; + } + idx -= 1; } - } - delete(key) { - const deleted = this.cache.delete(key); - if (deleted) { - this._size--; + return -1; + }) + ); + module2.exports = findLastIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/forEach.js +var require_forEach = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/forEach.js"(exports2, module2) { + var _checkForMethod = require_checkForMethod(); + var _curry2 = require_curry2(); + var forEach = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _checkForMethod("forEach", function forEach2(fn2, list) { + var len = list.length; + var idx = 0; + while (idx < len) { + fn2(list[idx]); + idx += 1; } - return this.oldCache.delete(key) || deleted; + return list; + }) + ); + module2.exports = forEach; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/forEachObjIndexed.js +var require_forEachObjIndexed = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/forEachObjIndexed.js"(exports2, module2) { + var _curry2 = require_curry2(); + var keys = require_keys(); + var forEachObjIndexed = /* @__PURE__ */ _curry2(function forEachObjIndexed2(fn2, obj) { + var keyList = keys(obj); + var idx = 0; + while (idx < keyList.length) { + var key = keyList[idx]; + fn2(obj[key], key, obj); + idx += 1; } - clear() { - this.cache.clear(); - this.oldCache.clear(); - this._size = 0; + return obj; + }); + module2.exports = forEachObjIndexed; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/fromPairs.js +var require_fromPairs = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/fromPairs.js"(exports2, module2) { + var _curry1 = require_curry1(); + var fromPairs = /* @__PURE__ */ _curry1(function fromPairs2(pairs) { + var result2 = {}; + var idx = 0; + while (idx < pairs.length) { + result2[pairs[idx][0]] = pairs[idx][1]; + idx += 1; } - *keys() { - for (const [key] of this) { - yield key; + return result2; + }); + module2.exports = fromPairs; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/groupBy.js +var require_groupBy2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/groupBy.js"(exports2, module2) { + var _checkForMethod = require_checkForMethod(); + var _curry2 = require_curry2(); + var reduceBy = require_reduceBy(); + var groupBy = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _checkForMethod( + "groupBy", + /* @__PURE__ */ reduceBy(function(acc, item) { + acc.push(item); + return acc; + }, []) + ) + ); + module2.exports = groupBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/groupWith.js +var require_groupWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/groupWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var groupWith = /* @__PURE__ */ _curry2(function(fn2, list) { + var res = []; + var idx = 0; + var len = list.length; + while (idx < len) { + var nextidx = idx + 1; + while (nextidx < len && fn2(list[nextidx - 1], list[nextidx])) { + nextidx += 1; } + res.push(list.slice(idx, nextidx)); + idx = nextidx; } - *values() { - for (const [, value] of this) { - yield value; - } + return res; + }); + module2.exports = groupWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/gt.js +var require_gt2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/gt.js"(exports2, module2) { + var _curry2 = require_curry2(); + var gt = /* @__PURE__ */ _curry2(function gt2(a, b) { + return a > b; + }); + module2.exports = gt; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/gte.js +var require_gte2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/gte.js"(exports2, module2) { + var _curry2 = require_curry2(); + var gte = /* @__PURE__ */ _curry2(function gte2(a, b) { + return a >= b; + }); + module2.exports = gte; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/hasPath.js +var require_hasPath2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/hasPath.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _has = require_has(); + var isNil = require_isNil(); + var hasPath = /* @__PURE__ */ _curry2(function hasPath2(_path, obj) { + if (_path.length === 0 || isNil(obj)) { + return false; } - *[Symbol.iterator]() { - for (const item of this.cache) { - yield item; - } - for (const item of this.oldCache) { - const [key] = item; - if (!this.cache.has(key)) { - yield item; - } + var val = obj; + var idx = 0; + while (idx < _path.length) { + if (!isNil(val) && _has(_path[idx], val)) { + val = val[_path[idx]]; + idx += 1; + } else { + return false; } } - get size() { - let oldCacheSize = 0; - for (const key of this.oldCache.keys()) { - if (!this.cache.has(key)) { - oldCacheSize++; + return true; + }); + module2.exports = hasPath; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/has.js +var require_has2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/has.js"(exports2, module2) { + var _curry2 = require_curry2(); + var hasPath = require_hasPath2(); + var has = /* @__PURE__ */ _curry2(function has2(prop, obj) { + return hasPath([prop], obj); + }); + module2.exports = has; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/hasIn.js +var require_hasIn2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/hasIn.js"(exports2, module2) { + var _curry2 = require_curry2(); + var isNil = require_isNil(); + var hasIn = /* @__PURE__ */ _curry2(function hasIn2(prop, obj) { + if (isNil(obj)) { + return false; + } + return prop in obj; + }); + module2.exports = hasIn; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/identical.js +var require_identical = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/identical.js"(exports2, module2) { + var _objectIs = require_objectIs(); + var _curry2 = require_curry2(); + var identical = /* @__PURE__ */ _curry2(_objectIs); + module2.exports = identical; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ifElse.js +var require_ifElse = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/ifElse.js"(exports2, module2) { + var _curry3 = require_curry3(); + var curryN = require_curryN2(); + var ifElse = /* @__PURE__ */ _curry3(function ifElse2(condition, onTrue, onFalse) { + return curryN(Math.max(condition.length, onTrue.length, onFalse.length), function _ifElse() { + return condition.apply(this, arguments) ? onTrue.apply(this, arguments) : onFalse.apply(this, arguments); + }); + }); + module2.exports = ifElse; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/inc.js +var require_inc2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/inc.js"(exports2, module2) { + var add = require_add2(); + var inc = /* @__PURE__ */ add(1); + module2.exports = inc; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/includes.js +var require_includes2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/includes.js"(exports2, module2) { + var _includes = require_includes(); + var _curry2 = require_curry2(); + var includes = /* @__PURE__ */ _curry2(_includes); + module2.exports = includes; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/indexBy.js +var require_indexBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/indexBy.js"(exports2, module2) { + var reduceBy = require_reduceBy(); + var indexBy = /* @__PURE__ */ reduceBy(function(acc, elem) { + return elem; + }, null); + module2.exports = indexBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/indexOf.js +var require_indexOf2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/indexOf.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _indexOf = require_indexOf(); + var _isArray = require_isArray(); + var indexOf = /* @__PURE__ */ _curry2(function indexOf2(target, xs) { + return typeof xs.indexOf === "function" && !_isArray(xs) ? xs.indexOf(target) : _indexOf(xs, target, 0); + }); + module2.exports = indexOf; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/init.js +var require_init = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/init.js"(exports2, module2) { + var slice = require_slice(); + var init = /* @__PURE__ */ slice(0, -1); + module2.exports = init; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/innerJoin.js +var require_innerJoin = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/innerJoin.js"(exports2, module2) { + var _includesWith = require_includesWith(); + var _curry3 = require_curry3(); + var _filter = require_filter2(); + var innerJoin = /* @__PURE__ */ _curry3(function innerJoin2(pred, xs, ys) { + return _filter(function(x) { + return _includesWith(pred, x, ys); + }, xs); + }); + module2.exports = innerJoin; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/insert.js +var require_insert = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/insert.js"(exports2, module2) { + var _curry3 = require_curry3(); + var insert = /* @__PURE__ */ _curry3(function insert2(idx, elt, list) { + idx = idx < list.length && idx >= 0 ? idx : list.length; + var result2 = Array.prototype.slice.call(list, 0); + result2.splice(idx, 0, elt); + return result2; + }); + module2.exports = insert; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/insertAll.js +var require_insertAll = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/insertAll.js"(exports2, module2) { + var _curry3 = require_curry3(); + var insertAll = /* @__PURE__ */ _curry3(function insertAll2(idx, elts, list) { + idx = idx < list.length && idx >= 0 ? idx : list.length; + return [].concat(Array.prototype.slice.call(list, 0, idx), elts, Array.prototype.slice.call(list, idx)); + }); + module2.exports = insertAll; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/intersection.js +var require_intersection = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/intersection.js"(exports2, module2) { + var _includes = require_includes(); + var _curry2 = require_curry2(); + var _filter = require_filter2(); + var flip = require_flip(); + var uniq = require_uniq(); + var intersection = /* @__PURE__ */ _curry2(function intersection2(list1, list2) { + var lookupList, filteredList; + if (list1.length > list2.length) { + lookupList = list1; + filteredList = list2; + } else { + lookupList = list2; + filteredList = list1; + } + return uniq(_filter(flip(_includes)(lookupList), filteredList)); + }); + module2.exports = intersection; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/intersperse.js +var require_intersperse = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/intersperse.js"(exports2, module2) { + var _checkForMethod = require_checkForMethod(); + var _curry2 = require_curry2(); + var intersperse = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _checkForMethod("intersperse", function intersperse2(separator, list) { + var out = []; + var idx = 0; + var length = list.length; + while (idx < length) { + if (idx === length - 1) { + out.push(list[idx]); + } else { + out.push(list[idx], separator); } + idx += 1; } - return this._size + oldCacheSize; - } + return out; + }) + ); + module2.exports = intersperse; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/objOf.js +var require_objOf = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/objOf.js"(exports2, module2) { + var _curry2 = require_curry2(); + var objOf = /* @__PURE__ */ _curry2(function objOf2(key, val) { + var obj = {}; + obj[key] = val; + return obj; + }); + module2.exports = objOf; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_stepCat.js +var require_stepCat = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_stepCat.js"(exports2, module2) { + var _objectAssign = require_objectAssign(); + var _identity = require_identity2(); + var _isArrayLike = require_isArrayLike2(); + var _isTransformer = require_isTransformer(); + var objOf = require_objOf(); + var _stepCatArray = { + "@@transducer/init": Array, + "@@transducer/step": function(xs, x) { + xs.push(x); + return xs; + }, + "@@transducer/result": _identity }; - module2.exports = QuickLRU; + var _stepCatString = { + "@@transducer/init": String, + "@@transducer/step": function(a, b) { + return a + b; + }, + "@@transducer/result": _identity + }; + var _stepCatObject = { + "@@transducer/init": Object, + "@@transducer/step": function(result2, input) { + return _objectAssign(result2, _isArrayLike(input) ? objOf(input[0], input[1]) : input); + }, + "@@transducer/result": _identity + }; + function _stepCat(obj) { + if (_isTransformer(obj)) { + return obj; + } + if (_isArrayLike(obj)) { + return _stepCatArray; + } + if (typeof obj === "string") { + return _stepCatString; + } + if (typeof obj === "object") { + return _stepCatObject; + } + throw new Error("Cannot create transformer for " + obj); + } + module2.exports = _stepCat; } }); -// ../../node_modules/.pnpm/camelcase-keys@6.2.2/node_modules/camelcase-keys/index.js -var require_camelcase_keys = __commonJS({ - "../../node_modules/.pnpm/camelcase-keys@6.2.2/node_modules/camelcase-keys/index.js"(exports2, module2) { - "use strict"; - var mapObj = require_map_obj(); - var camelCase = require_camelcase2(); - var QuickLru = require_quick_lru(); - var has = (array, key) => array.some((x) => { - if (typeof x === "string") { - return x === key; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/into.js +var require_into = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/into.js"(exports2, module2) { + var _clone = require_clone3(); + var _curry3 = require_curry3(); + var _isTransformer = require_isTransformer(); + var _reduce = require_reduce2(); + var _stepCat = require_stepCat(); + var into = /* @__PURE__ */ _curry3(function into2(acc, xf, list) { + return _isTransformer(acc) ? _reduce(xf(acc), acc["@@transducer/init"](), list) : _reduce(xf(_stepCat(acc)), _clone(acc, [], [], false), list); + }); + module2.exports = into; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invert.js +var require_invert = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invert.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _has = require_has(); + var keys = require_keys(); + var invert = /* @__PURE__ */ _curry1(function invert2(obj) { + var props = keys(obj); + var len = props.length; + var idx = 0; + var out = {}; + while (idx < len) { + var key = props[idx]; + var val = obj[key]; + var list = _has(val, out) ? out[val] : out[val] = []; + list[list.length] = key; + idx += 1; } - x.lastIndex = 0; - return x.test(key); + return out; }); - var cache = new QuickLru({ maxSize: 1e5 }); - var isObject = (value) => typeof value === "object" && value !== null && !(value instanceof RegExp) && !(value instanceof Error) && !(value instanceof Date); - var camelCaseConvert = (input, options) => { - if (!isObject(input)) { - return input; + module2.exports = invert; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invertObj.js +var require_invertObj = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invertObj.js"(exports2, module2) { + var _curry1 = require_curry1(); + var keys = require_keys(); + var invertObj = /* @__PURE__ */ _curry1(function invertObj2(obj) { + var props = keys(obj); + var len = props.length; + var idx = 0; + var out = {}; + while (idx < len) { + var key = props[idx]; + out[obj[key]] = key; + idx += 1; } - options = { - deep: false, - pascalCase: false, - ...options - }; - const { exclude, pascalCase, stopPaths, deep } = options; - const stopPathsSet = new Set(stopPaths); - const makeMapper = (parentPath) => (key, value) => { - if (deep && isObject(value)) { - const path = parentPath === void 0 ? key : `${parentPath}.${key}`; - if (!stopPathsSet.has(path)) { - value = mapObj(value, makeMapper(path)); - } + return out; + }); + module2.exports = invertObj; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invoker.js +var require_invoker = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/invoker.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isFunction = require_isFunction3(); + var curryN = require_curryN2(); + var toString = require_toString3(); + var invoker = /* @__PURE__ */ _curry2(function invoker2(arity, method) { + return curryN(arity + 1, function() { + var target = arguments[arity]; + if (target != null && _isFunction(target[method])) { + return target[method].apply(target, Array.prototype.slice.call(arguments, 0, arity)); } - if (!(exclude && has(exclude, key))) { - const cacheKey = pascalCase ? `${key}_` : key; - if (cache.has(cacheKey)) { - key = cache.get(cacheKey); - } else { - const ret = camelCase(key, { pascalCase }); - if (key.length < 100) { - cache.set(cacheKey, ret); - } - key = ret; + throw new TypeError(toString(target) + ' does not have a method named "' + method + '"'); + }); + }); + module2.exports = invoker; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/is.js +var require_is = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/is.js"(exports2, module2) { + var _curry2 = require_curry2(); + var is = /* @__PURE__ */ _curry2(function is2(Ctor, val) { + return val instanceof Ctor || val != null && (val.constructor === Ctor || Ctor.name === "Object" && typeof val === "object"); + }); + module2.exports = is; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/join.js +var require_join = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/join.js"(exports2, module2) { + var invoker = require_invoker(); + var join = /* @__PURE__ */ invoker(1, "join"); + module2.exports = join; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/keysIn.js +var require_keysIn2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/keysIn.js"(exports2, module2) { + var _curry1 = require_curry1(); + var keysIn = /* @__PURE__ */ _curry1(function keysIn2(obj) { + var prop; + var ks = []; + for (prop in obj) { + ks[ks.length] = prop; + } + return ks; + }); + module2.exports = keysIn; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lastIndexOf.js +var require_lastIndexOf = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lastIndexOf.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isArray = require_isArray(); + var equals = require_equals2(); + var lastIndexOf = /* @__PURE__ */ _curry2(function lastIndexOf2(target, xs) { + if (typeof xs.lastIndexOf === "function" && !_isArray(xs)) { + return xs.lastIndexOf(target); + } else { + var idx = xs.length - 1; + while (idx >= 0) { + if (equals(xs[idx], target)) { + return idx; } + idx -= 1; } - return [key, value]; - }; - return mapObj(input, makeMapper(void 0)); - }; - module2.exports = (input, options) => { - if (Array.isArray(input)) { - return Object.keys(input).map((key) => camelCaseConvert(input[key], options)); + return -1; } - return camelCaseConvert(input, options); - }; + }); + module2.exports = lastIndexOf; } }); -// ../../node_modules/.pnpm/ini@2.0.0/node_modules/ini/ini.js -var require_ini2 = __commonJS({ - "../../node_modules/.pnpm/ini@2.0.0/node_modules/ini/ini.js"(exports2, module2) { - var { hasOwnProperty } = Object.prototype; - var eol = typeof process !== "undefined" && process.platform === "win32" ? "\r\n" : "\n"; - var encode = (obj, opt) => { - const children = []; - let out = ""; - if (typeof opt === "string") { - opt = { - section: opt, - whitespace: false +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isNumber.js +var require_isNumber = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isNumber.js"(exports2, module2) { + function _isNumber(x) { + return Object.prototype.toString.call(x) === "[object Number]"; + } + module2.exports = _isNumber; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/length.js +var require_length = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/length.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _isNumber = require_isNumber(); + var length = /* @__PURE__ */ _curry1(function length2(list) { + return list != null && _isNumber(list.length) ? list.length : NaN; + }); + module2.exports = length; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lens.js +var require_lens = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lens.js"(exports2, module2) { + var _curry2 = require_curry2(); + var map = require_map4(); + var lens = /* @__PURE__ */ _curry2(function lens2(getter, setter) { + return function(toFunctorFn) { + return function(target) { + return map(function(focus) { + return setter(focus, target); + }, toFunctorFn(getter(target))); }; - } else { - opt = opt || Object.create(null); - opt.whitespace = opt.whitespace === true; + }; + }); + module2.exports = lens; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/update.js +var require_update3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/update.js"(exports2, module2) { + var _curry3 = require_curry3(); + var adjust = require_adjust(); + var always = require_always(); + var update = /* @__PURE__ */ _curry3(function update2(idx, x, list) { + return adjust(idx, always(x), list); + }); + module2.exports = update; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensIndex.js +var require_lensIndex = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensIndex.js"(exports2, module2) { + var _curry1 = require_curry1(); + var lens = require_lens(); + var nth = require_nth(); + var update = require_update3(); + var lensIndex = /* @__PURE__ */ _curry1(function lensIndex2(n) { + return lens(nth(n), update(n)); + }); + module2.exports = lensIndex; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensPath.js +var require_lensPath = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensPath.js"(exports2, module2) { + var _curry1 = require_curry1(); + var assocPath = require_assocPath(); + var lens = require_lens(); + var path2 = require_path5(); + var lensPath = /* @__PURE__ */ _curry1(function lensPath2(p) { + return lens(path2(p), assocPath(p)); + }); + module2.exports = lensPath; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensProp.js +var require_lensProp = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lensProp.js"(exports2, module2) { + var _curry1 = require_curry1(); + var assoc = require_assoc2(); + var lens = require_lens(); + var prop = require_prop(); + var lensProp = /* @__PURE__ */ _curry1(function lensProp2(k) { + return lens(prop(k), assoc(k)); + }); + module2.exports = lensProp; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lt.js +var require_lt2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lt.js"(exports2, module2) { + var _curry2 = require_curry2(); + var lt = /* @__PURE__ */ _curry2(function lt2(a, b) { + return a < b; + }); + module2.exports = lt; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lte.js +var require_lte2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/lte.js"(exports2, module2) { + var _curry2 = require_curry2(); + var lte = /* @__PURE__ */ _curry2(function lte2(a, b) { + return a <= b; + }); + module2.exports = lte; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapAccum.js +var require_mapAccum = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapAccum.js"(exports2, module2) { + var _curry3 = require_curry3(); + var mapAccum = /* @__PURE__ */ _curry3(function mapAccum2(fn2, acc, list) { + var idx = 0; + var len = list.length; + var result2 = []; + var tuple = [acc]; + while (idx < len) { + tuple = fn2(tuple[0], list[idx]); + result2[idx] = tuple[1]; + idx += 1; } - const separator = opt.whitespace ? " = " : "="; - for (const k of Object.keys(obj)) { - const val = obj[k]; - if (val && Array.isArray(val)) { - for (const item of val) - out += safe(k + "[]") + separator + safe(item) + "\n"; - } else if (val && typeof val === "object") - children.push(k); - else - out += safe(k) + separator + safe(val) + eol; + return [tuple[0], result2]; + }); + module2.exports = mapAccum; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapAccumRight.js +var require_mapAccumRight = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mapAccumRight.js"(exports2, module2) { + var _curry3 = require_curry3(); + var mapAccumRight = /* @__PURE__ */ _curry3(function mapAccumRight2(fn2, acc, list) { + var idx = list.length - 1; + var result2 = []; + var tuple = [acc]; + while (idx >= 0) { + tuple = fn2(tuple[0], list[idx]); + result2[idx] = tuple[1]; + idx -= 1; } - if (opt.section && out.length) - out = "[" + safe(opt.section) + "]" + eol + out; - for (const k of children) { - const nk = dotSplit(k).join("\\."); - const section = (opt.section ? opt.section + "." : "") + nk; - const { whitespace } = opt; - const child = encode(obj[k], { - section, - whitespace - }); - if (out.length && child.length) - out += eol; - out += child; + return [tuple[0], result2]; + }); + module2.exports = mapAccumRight; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/match.js +var require_match = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/match.js"(exports2, module2) { + var _curry2 = require_curry2(); + var match = /* @__PURE__ */ _curry2(function match2(rx, str) { + return str.match(rx) || []; + }); + module2.exports = match; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mathMod.js +var require_mathMod = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mathMod.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isInteger = require_isInteger(); + var mathMod = /* @__PURE__ */ _curry2(function mathMod2(m, p) { + if (!_isInteger(m)) { + return NaN; } - return out; - }; - var dotSplit = (str) => str.replace(/\1/g, "LITERAL\\1LITERAL").replace(/\\\./g, "").split(/\./).map((part) => part.replace(/\1/g, "\\.").replace(/\2LITERAL\\1LITERAL\2/g, "")); - var decode = (str) => { - const out = Object.create(null); - let p = out; - let section = null; - const re = /^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i; - const lines = str.split(/[\r\n]+/g); - for (const line of lines) { - if (!line || line.match(/^\s*[;#]/)) - continue; - const match = line.match(re); - if (!match) - continue; - if (match[1] !== void 0) { - section = unsafe(match[1]); - if (section === "__proto__") { - p = Object.create(null); - continue; - } - p = out[section] = out[section] || Object.create(null); - continue; + if (!_isInteger(p) || p < 1) { + return NaN; + } + return (m % p + p) % p; + }); + module2.exports = mathMod; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/maxBy.js +var require_maxBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/maxBy.js"(exports2, module2) { + var _curry3 = require_curry3(); + var maxBy = /* @__PURE__ */ _curry3(function maxBy2(f, a, b) { + return f(b) > f(a) ? b : a; + }); + module2.exports = maxBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sum.js +var require_sum = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sum.js"(exports2, module2) { + var add = require_add2(); + var reduce = require_reduce3(); + var sum = /* @__PURE__ */ reduce(add, 0); + module2.exports = sum; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mean.js +var require_mean = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mean.js"(exports2, module2) { + var _curry1 = require_curry1(); + var sum = require_sum(); + var mean = /* @__PURE__ */ _curry1(function mean2(list) { + return sum(list) / list.length; + }); + module2.exports = mean; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/median.js +var require_median = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/median.js"(exports2, module2) { + var _curry1 = require_curry1(); + var mean = require_mean(); + var median = /* @__PURE__ */ _curry1(function median2(list) { + var len = list.length; + if (len === 0) { + return NaN; + } + var width = 2 - len % 2; + var idx = (len - width) / 2; + return mean(Array.prototype.slice.call(list, 0).sort(function(a, b) { + return a < b ? -1 : a > b ? 1 : 0; + }).slice(idx, idx + width)); + }); + module2.exports = median; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/memoizeWith.js +var require_memoizeWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/memoizeWith.js"(exports2, module2) { + var _arity = require_arity(); + var _curry2 = require_curry2(); + var _has = require_has(); + var memoizeWith = /* @__PURE__ */ _curry2(function memoizeWith2(mFn, fn2) { + var cache = {}; + return _arity(fn2.length, function() { + var key = mFn.apply(this, arguments); + if (!_has(key, cache)) { + cache[key] = fn2.apply(this, arguments); } - const keyRaw = unsafe(match[2]); - const isArray = keyRaw.length > 2 && keyRaw.slice(-2) === "[]"; - const key = isArray ? keyRaw.slice(0, -2) : keyRaw; - if (key === "__proto__") - continue; - const valueRaw = match[3] ? unsafe(match[4]) : true; - const value = valueRaw === "true" || valueRaw === "false" || valueRaw === "null" ? JSON.parse(valueRaw) : valueRaw; - if (isArray) { - if (!hasOwnProperty.call(p, key)) - p[key] = []; - else if (!Array.isArray(p[key])) - p[key] = [p[key]]; + return cache[key]; + }); + }); + module2.exports = memoizeWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeWithKey.js +var require_mergeWithKey = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeWithKey.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _has = require_has(); + var mergeWithKey = /* @__PURE__ */ _curry3(function mergeWithKey2(fn2, l, r) { + var result2 = {}; + var k; + for (k in l) { + if (_has(k, l)) { + result2[k] = _has(k, r) ? fn2(k, l[k], r[k]) : l[k]; } - if (Array.isArray(p[key])) - p[key].push(value); - else - p[key] = value; } - const remove = []; - for (const k of Object.keys(out)) { - if (!hasOwnProperty.call(out, k) || typeof out[k] !== "object" || Array.isArray(out[k])) - continue; - const parts = dotSplit(k); - let p2 = out; - const l = parts.pop(); - const nl = l.replace(/\\\./g, "."); - for (const part of parts) { - if (part === "__proto__") - continue; - if (!hasOwnProperty.call(p2, part) || typeof p2[part] !== "object") - p2[part] = Object.create(null); - p2 = p2[part]; + for (k in r) { + if (_has(k, r) && !_has(k, result2)) { + result2[k] = r[k]; } - if (p2 === out && nl === l) - continue; - p2[nl] = out[k]; - remove.push(k); } - for (const del of remove) - delete out[del]; - return out; - }; - var isQuoted = (val) => val.charAt(0) === '"' && val.slice(-1) === '"' || val.charAt(0) === "'" && val.slice(-1) === "'"; - var safe = (val) => typeof val !== "string" || val.match(/[=\r\n]/) || val.match(/^\[/) || val.length > 1 && isQuoted(val) || val !== val.trim() ? JSON.stringify(val) : val.replace(/;/g, "\\;").replace(/#/g, "\\#"); - var unsafe = (val, doUnesc) => { - val = (val || "").trim(); - if (isQuoted(val)) { - if (val.charAt(0) === "'") - val = val.substr(1, val.length - 2); - try { - val = JSON.parse(val); - } catch (_) { - } - } else { - let esc = false; - let unesc = ""; - for (let i = 0, l = val.length; i < l; i++) { - const c = val.charAt(i); - if (esc) { - if ("\\;#".indexOf(c) !== -1) - unesc += c; - else - unesc += "\\" + c; - esc = false; - } else if (";#".indexOf(c) !== -1) - break; - else if (c === "\\") - esc = true; - else - unesc += c; + return result2; + }); + module2.exports = mergeWithKey; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepWithKey.js +var require_mergeDeepWithKey = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepWithKey.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _isObject = require_isObject(); + var mergeWithKey = require_mergeWithKey(); + var mergeDeepWithKey = /* @__PURE__ */ _curry3(function mergeDeepWithKey2(fn2, lObj, rObj) { + return mergeWithKey(function(k, lVal, rVal) { + if (_isObject(lVal) && _isObject(rVal)) { + return mergeDeepWithKey2(fn2, lVal, rVal); + } else { + return fn2(k, lVal, rVal); } - if (esc) - unesc += "\\"; - return unesc.trim(); - } - return val; - }; - module2.exports = { - parse: decode, - decode, - stringify: encode, - encode, - safe, - unsafe - }; + }, lObj, rObj); + }); + module2.exports = mergeDeepWithKey; } }); -// ../../node_modules/.pnpm/read-ini-file@3.1.0/node_modules/read-ini-file/index.js -var require_read_ini_file = __commonJS({ - "../../node_modules/.pnpm/read-ini-file@3.1.0/node_modules/read-ini-file/index.js"(exports2, module2) { - "use strict"; - var fs = require("fs"); - var stripBom = require_strip_bom(); - var ini = require_ini2(); - var parse = (data) => ini.parse(stripBom(data)); - module2.exports = (fp) => fs.promises.readFile(fp, "utf8").then(parse); - module2.exports.sync = (fp) => parse(fs.readFileSync(fp, "utf8")); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepLeft.js +var require_mergeDeepLeft = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepLeft.js"(exports2, module2) { + var _curry2 = require_curry2(); + var mergeDeepWithKey = require_mergeDeepWithKey(); + var mergeDeepLeft = /* @__PURE__ */ _curry2(function mergeDeepLeft2(lObj, rObj) { + return mergeDeepWithKey(function(k, lVal, rVal) { + return lVal; + }, lObj, rObj); + }); + module2.exports = mergeDeepLeft; } }); -// ../plugin-commands-rebuild/lib/recursive.js -var require_recursive = __commonJS({ - "../plugin-commands-rebuild/lib/recursive.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var find_workspace_packages_1 = require_lib22(); - var logger_1 = __importDefault(require_lib6()); - var sort_packages_1 = __importDefault(require_lib92()); - var store_connection_manager_1 = require_lib63(); - var camelcase_keys_1 = __importDefault(require_camelcase_keys()); - var mem_1 = __importDefault(require_dist8()); - var p_limit_1 = __importDefault(require_p_limit()); - var read_ini_file_1 = __importDefault(require_read_ini_file()); - var implementation_1 = require_implementation4(); - async function recursive(allProjects, params, opts) { - var _a; - if (allProjects.length === 0) { - return; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepRight.js +var require_mergeDeepRight = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepRight.js"(exports2, module2) { + var _curry2 = require_curry2(); + var mergeDeepWithKey = require_mergeDeepWithKey(); + var mergeDeepRight = /* @__PURE__ */ _curry2(function mergeDeepRight2(lObj, rObj) { + return mergeDeepWithKey(function(k, lVal, rVal) { + return rVal; + }, lObj, rObj); + }); + module2.exports = mergeDeepRight; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepWith.js +var require_mergeDeepWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeDeepWith.js"(exports2, module2) { + var _curry3 = require_curry3(); + var mergeDeepWithKey = require_mergeDeepWithKey(); + var mergeDeepWith = /* @__PURE__ */ _curry3(function mergeDeepWith2(fn2, lObj, rObj) { + return mergeDeepWithKey(function(k, lVal, rVal) { + return fn2(lVal, rVal); + }, lObj, rObj); + }); + module2.exports = mergeDeepWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeLeft.js +var require_mergeLeft = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeLeft.js"(exports2, module2) { + var _objectAssign = require_objectAssign(); + var _curry2 = require_curry2(); + var mergeLeft = /* @__PURE__ */ _curry2(function mergeLeft2(l, r) { + return _objectAssign({}, r, l); + }); + module2.exports = mergeLeft; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeWith.js +var require_mergeWith3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/mergeWith.js"(exports2, module2) { + var _curry3 = require_curry3(); + var mergeWithKey = require_mergeWithKey(); + var mergeWith = /* @__PURE__ */ _curry3(function mergeWith2(fn2, l, r) { + return mergeWithKey(function(_, _l, _r) { + return fn2(_l, _r); + }, l, r); + }); + module2.exports = mergeWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/min.js +var require_min2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/min.js"(exports2, module2) { + var _curry2 = require_curry2(); + var min = /* @__PURE__ */ _curry2(function min2(a, b) { + return b < a ? b : a; + }); + module2.exports = min; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/minBy.js +var require_minBy = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/minBy.js"(exports2, module2) { + var _curry3 = require_curry3(); + var minBy = /* @__PURE__ */ _curry3(function minBy2(f, a, b) { + return f(b) < f(a) ? b : a; + }); + module2.exports = minBy; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_modify.js +var require_modify = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_modify.js"(exports2, module2) { + var _isArray = require_isArray(); + var _isInteger = require_isInteger(); + function _modify(prop, fn2, obj) { + if (_isInteger(prop) && _isArray(obj)) { + var arr = [].concat(obj); + arr[prop] = fn2(arr[prop]); + return arr; } - const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); - if (pkgs.length === 0) { - return; + var result2 = {}; + for (var p in obj) { + result2[p] = obj[p]; } - const manifestsByPath = {}; - for (const { dir, manifest, writeProjectManifest } of pkgs) { - manifestsByPath[dir] = { manifest, writeProjectManifest }; + result2[prop] = fn2(result2[prop]); + return result2; + } + module2.exports = _modify; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modifyPath.js +var require_modifyPath = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modifyPath.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _isArray = require_isArray(); + var _isObject = require_isObject(); + var _has = require_has(); + var _assoc = require_assoc(); + var _modify = require_modify(); + var modifyPath = /* @__PURE__ */ _curry3(function modifyPath2(path2, fn2, object) { + if (!_isObject(object) && !_isArray(object) || path2.length === 0) { + return object; } - const throwOnFail = cli_utils_1.throwOnCommandFail.bind(null, "pnpm recursive rebuild"); - const chunks = opts.sort !== false ? sort_packages_1.default(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const workspacePackages = find_workspace_packages_1.arrayOfWorkspacePackagesToMap(allProjects); - const rebuildOpts = Object.assign(opts, { - ownLifecycleHooksStdio: "pipe", - pruneLockfileImporters: (opts.ignoredPackages == null || opts.ignoredPackages.size === 0) && pkgs.length === allProjects.length, - storeController: store.ctrl, - storeDir: store.dir, - workspacePackages - }); - const result = { - fails: [], - passes: 0 - }; - const memReadLocalConfig = mem_1.default(readLocalConfig); - async function getImporters() { - const importers = []; - await Promise.all(chunks.map(async (prefixes, buildIndex) => { - if (opts.ignoredPackages != null) { - prefixes = prefixes.filter((prefix) => !opts.ignoredPackages.has(prefix)); - } - return Promise.all(prefixes.map(async (prefix) => { - importers.push({ - buildIndex, - manifest: manifestsByPath[prefix].manifest, - rootDir: prefix - }); - })); - })); - return importers; + var idx = path2[0]; + if (!_has(idx, object)) { + return object; } - const rebuild = params.length === 0 ? implementation_1.rebuild : (importers, opts2) => implementation_1.rebuildPkgs(importers, params, opts2); - if (opts.lockfileDir) { - const importers = await getImporters(); - await rebuild(importers, { - ...rebuildOpts, - pending: opts.pending === true - }); - return; + if (path2.length === 1) { + return _modify(idx, fn2, object); } - const limitRebuild = p_limit_1.default((_a = opts.workspaceConcurrency) !== null && _a !== void 0 ? _a : 4); - for (const chunk of chunks) { - await Promise.all(chunk.map(async (rootDir) => limitRebuild(async () => { - var _a2; - try { - if ((_a2 = opts.ignoredPackages) === null || _a2 === void 0 ? void 0 : _a2.has(rootDir)) { - return; - } - const localConfig = await memReadLocalConfig(rootDir); - await rebuild([ - { - buildIndex: 0, - manifest: manifestsByPath[rootDir].manifest, - rootDir - } - ], { - ...rebuildOpts, - ...localConfig, - dir: rootDir, - pending: opts.pending === true, - rawConfig: { - ...rebuildOpts.rawConfig, - ...localConfig - } - }); - result.passes++; - } catch (err) { - logger_1.default.info(err); - if (!opts.bail) { - result.fails.push({ - error: err, - message: err.message, - prefix: rootDir - }); - return; - } - err["prefix"] = rootDir; - throw err; - } - }))); + var val = modifyPath2(Array.prototype.slice.call(path2, 1), fn2, object[idx]); + if (val === object[idx]) { + return object; } - throwOnFail(result); + return _assoc(idx, val, object); + }); + module2.exports = modifyPath; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modify.js +var require_modify2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modify.js"(exports2, module2) { + var _curry3 = require_curry3(); + var modifyPath = require_modifyPath(); + var modify = /* @__PURE__ */ _curry3(function modify2(prop, fn2, object) { + return modifyPath([prop], fn2, object); + }); + module2.exports = modify; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modulo.js +var require_modulo = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/modulo.js"(exports2, module2) { + var _curry2 = require_curry2(); + var modulo = /* @__PURE__ */ _curry2(function modulo2(a, b) { + return a % b; + }); + module2.exports = modulo; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/move.js +var require_move5 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/move.js"(exports2, module2) { + var _curry3 = require_curry3(); + var move = /* @__PURE__ */ _curry3(function(from, to, list) { + var length = list.length; + var result2 = list.slice(); + var positiveFrom = from < 0 ? length + from : from; + var positiveTo = to < 0 ? length + to : to; + var item = result2.splice(positiveFrom, 1); + return positiveFrom < 0 || positiveFrom >= list.length || positiveTo < 0 || positiveTo >= list.length ? list : [].concat(result2.slice(0, positiveTo)).concat(item).concat(result2.slice(positiveTo, list.length)); + }); + module2.exports = move; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/multiply.js +var require_multiply = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/multiply.js"(exports2, module2) { + var _curry2 = require_curry2(); + var multiply = /* @__PURE__ */ _curry2(function multiply2(a, b) { + return a * b; + }); + module2.exports = multiply; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partialObject.js +var require_partialObject = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partialObject.js"(exports2, module2) { + var mergeDeepRight = require_mergeDeepRight(); + var _curry2 = require_curry2(); + module2.exports = /* @__PURE__ */ _curry2((f, o) => (props) => f.call(exports2, mergeDeepRight(o, props))); + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/negate.js +var require_negate = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/negate.js"(exports2, module2) { + var _curry1 = require_curry1(); + var negate = /* @__PURE__ */ _curry1(function negate2(n) { + return -n; + }); + module2.exports = negate; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/none.js +var require_none = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/none.js"(exports2, module2) { + var _complement = require_complement(); + var _curry2 = require_curry2(); + var all = require_all2(); + var none = /* @__PURE__ */ _curry2(function none2(fn2, input) { + return all(_complement(fn2), input); + }); + module2.exports = none; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nthArg.js +var require_nthArg = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/nthArg.js"(exports2, module2) { + var _curry1 = require_curry1(); + var curryN = require_curryN2(); + var nth = require_nth(); + var nthArg = /* @__PURE__ */ _curry1(function nthArg2(n) { + var arity = n < 0 ? 1 : n + 1; + return curryN(arity, function() { + return nth(n, arguments); + }); + }); + module2.exports = nthArg; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/o.js +var require_o = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/o.js"(exports2, module2) { + var _curry3 = require_curry3(); + var o = /* @__PURE__ */ _curry3(function o2(f, g, x) { + return f(g(x)); + }); + module2.exports = o; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_of.js +var require_of2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_of.js"(exports2, module2) { + function _of(x) { + return [x]; } - exports2.default = recursive; - async function readLocalConfig(prefix) { - try { - const ini = await read_ini_file_1.default(path_1.default.join(prefix, ".npmrc")); - const config = camelcase_keys_1.default(ini); - if (config.shamefullyFlatten) { - config.hoistPattern = "*"; - } - if (config.hoist === false) { - config.hoistPattern = ""; + module2.exports = _of; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/of.js +var require_of3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/of.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _of = require_of2(); + var of = /* @__PURE__ */ _curry1(_of); + module2.exports = of; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/on.js +var require_on = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/on.js"(exports2, module2) { + var curryN = require_curryN(); + var on = /* @__PURE__ */ curryN(4, [], function on2(f, g, a, b) { + return f(g(a), g(b)); + }); + module2.exports = on; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/once.js +var require_once2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/once.js"(exports2, module2) { + var _arity = require_arity(); + var _curry1 = require_curry1(); + var once = /* @__PURE__ */ _curry1(function once2(fn2) { + var called = false; + var result2; + return _arity(fn2.length, function() { + if (called) { + return result2; } - return config; - } catch (err) { - if (err.code !== "ENOENT") - throw err; - return {}; + called = true; + result2 = fn2.apply(this, arguments); + return result2; + }); + }); + module2.exports = once; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_assertPromise.js +var require_assertPromise = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_assertPromise.js"(exports2, module2) { + var _isFunction = require_isFunction3(); + var _toString = require_toString2(); + function _assertPromise(name, p) { + if (p == null || !_isFunction(p.then)) { + throw new TypeError("`" + name + "` expected a Promise, received " + _toString(p, [])); } } + module2.exports = _assertPromise; } }); -// ../plugin-commands-rebuild/lib/rebuild.js -var require_rebuild = __commonJS({ - "../plugin-commands-rebuild/lib/rebuild.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var store_connection_manager_1 = require_lib63(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var implementation_1 = require_implementation4(); - var recursive_1 = __importDefault(require_recursive()); - function rcOptionsTypes() { - return { - ...pick_1.default([ - "npm-path", - "reporter", - "unsafe-perm" - ], config_1.types) - }; - } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/otherwise.js +var require_otherwise = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/otherwise.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _assertPromise = require_assertPromise(); + var otherwise = /* @__PURE__ */ _curry2(function otherwise2(f, p) { + _assertPromise("otherwise", p); + return p.then(null, f); + }); + module2.exports = otherwise; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/over.js +var require_over = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/over.js"(exports2, module2) { + var _curry3 = require_curry3(); + var Identity = function(x) { return { - ...rcOptionsTypes(), - pending: Boolean, - recursive: Boolean + value: x, + map: function(f) { + return Identity(f(x)); + } }; - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["rebuild", "rb"]; - function help() { - return render_help_1.default({ - aliases: ["rb"], - description: "Rebuild a package.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: 'Rebuild every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - }, - { - description: "Rebuild packages that were not build during installation. Packages are not build when installing with the --ignore-scripts flag", - name: "--pending" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - }, - common_cli_options_help_1.FILTERING - ], - url: cli_utils_1.docsUrl("rebuild"), - usages: ["pnpm rebuild [ ...]"] - }); - } - exports2.help = help; - async function handler(opts, params) { - var _a; - if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { - await recursive_1.default(opts.allProjects, params, { ...opts, selectedProjectsGraph: opts.selectedProjectsGraph, workspaceDir: opts.workspaceDir }); - return; - } - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const rebuildOpts = Object.assign(opts, { - sideEffectsCacheRead: (_a = opts.sideEffectsCache) !== null && _a !== void 0 ? _a : opts.sideEffectsCacheReadonly, - sideEffectsCacheWrite: opts.sideEffectsCache, - storeController: store.ctrl, - storeDir: store.dir + }; + var over = /* @__PURE__ */ _curry3(function over2(lens, f, x) { + return lens(function(y) { + return Identity(f(y)); + })(x).value; + }); + module2.exports = over; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pair.js +var require_pair = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pair.js"(exports2, module2) { + var _curry2 = require_curry2(); + var pair = /* @__PURE__ */ _curry2(function pair2(fst, snd) { + return [fst, snd]; + }); + module2.exports = pair; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_createPartialApplicator.js +var require_createPartialApplicator = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_createPartialApplicator.js"(exports2, module2) { + var _arity = require_arity(); + var _curry2 = require_curry2(); + function _createPartialApplicator(concat) { + return _curry2(function(fn2, args2) { + return _arity(Math.max(0, fn2.length - args2.length), function() { + return fn2.apply(this, concat(args2, arguments)); + }); }); - if (params.length === 0) { - await implementation_1.rebuild([ - { - buildIndex: 0, - manifest: await cli_utils_1.readProjectManifestOnly(rebuildOpts.dir, opts), - rootDir: rebuildOpts.dir - } - ], rebuildOpts); - } - await implementation_1.rebuildPkgs([ - { - manifest: await cli_utils_1.readProjectManifestOnly(rebuildOpts.dir, opts), - rootDir: rebuildOpts.dir - } - ], params, rebuildOpts); } - exports2.handler = handler; + module2.exports = _createPartialApplicator; } }); -// ../plugin-commands-rebuild/lib/index.js -var require_lib93 = __commonJS({ - "../plugin-commands-rebuild/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partial.js +var require_partial2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partial.js"(exports2, module2) { + var _concat = require_concat3(); + var _createPartialApplicator = require_createPartialApplicator(); + var partial = /* @__PURE__ */ _createPartialApplicator(_concat); + module2.exports = partial; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partialRight.js +var require_partialRight = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/partialRight.js"(exports2, module2) { + var _concat = require_concat3(); + var _createPartialApplicator = require_createPartialApplicator(); + var flip = require_flip(); + var partialRight = /* @__PURE__ */ _createPartialApplicator( + /* @__PURE__ */ flip(_concat) + ); + module2.exports = partialRight; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathEq.js +var require_pathEq = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathEq.js"(exports2, module2) { + var _curry3 = require_curry3(); + var equals = require_equals2(); + var path2 = require_path5(); + var pathEq = /* @__PURE__ */ _curry3(function pathEq2(_path, val, obj) { + return equals(path2(_path, obj), val); }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + module2.exports = pathEq; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathOr.js +var require_pathOr = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathOr.js"(exports2, module2) { + var _curry3 = require_curry3(); + var defaultTo = require_defaultTo(); + var path2 = require_path5(); + var pathOr = /* @__PURE__ */ _curry3(function pathOr2(d, p, obj) { + return defaultTo(d, path2(p, obj)); }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.rebuild = void 0; - var rebuild = __importStar2(require_rebuild()); - exports2.rebuild = rebuild; + module2.exports = pathOr; } }); -// ../plugin-commands-installation/lib/updateWorkspaceDependencies.js -var require_updateWorkspaceDependencies = __commonJS({ - "../plugin-commands-installation/lib/updateWorkspaceDependencies.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createWorkspaceSpecs = exports2.updateToWorkspacePackagesFromManifest = void 0; - var error_1 = __importDefault(require_lib8()); - var parse_wanted_dependency_1 = __importDefault(require_lib87()); - function updateToWorkspacePackagesFromManifest(manifest, include, workspacePackages) { - const allDeps = { - ...include.devDependencies ? manifest.devDependencies : {}, - ...include.dependencies ? manifest.dependencies : {}, - ...include.optionalDependencies ? manifest.optionalDependencies : {} - }; - const updateSpecs = []; - for (const depName of Object.keys(allDeps)) { - if (workspacePackages[depName]) { - updateSpecs.push(`${depName}@workspace:*`); +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathSatisfies.js +var require_pathSatisfies = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/pathSatisfies.js"(exports2, module2) { + var _curry3 = require_curry3(); + var path2 = require_path5(); + var pathSatisfies = /* @__PURE__ */ _curry3(function pathSatisfies2(pred, propPath, obj) { + return pred(path2(propPath, obj)); + }); + module2.exports = pathSatisfies; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/prepend.js +var require_prepend = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/prepend.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var prepend = /* @__PURE__ */ _curry2(function prepend2(el, list) { + return _concat([el], list); + }); + module2.exports = prepend; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/product.js +var require_product = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/product.js"(exports2, module2) { + var multiply = require_multiply(); + var reduce = require_reduce3(); + var product = /* @__PURE__ */ reduce(multiply, 1); + module2.exports = product; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/useWith.js +var require_useWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/useWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var curryN = require_curryN2(); + var useWith = /* @__PURE__ */ _curry2(function useWith2(fn2, transformers) { + return curryN(transformers.length, function() { + var args2 = []; + var idx = 0; + while (idx < transformers.length) { + args2.push(transformers[idx].call(this, arguments[idx])); + idx += 1; } - } - return updateSpecs; - } - exports2.updateToWorkspacePackagesFromManifest = updateToWorkspacePackagesFromManifest; - function createWorkspaceSpecs(specs, workspacePackages) { - return specs.map((spec) => { - const parsed = parse_wanted_dependency_1.default(spec); - if (!parsed.alias) - throw new error_1.default("NO_PKG_NAME_IN_SPEC", `Cannot update/install from workspace through "${spec}"`); - if (!workspacePackages[parsed.alias]) - throw new error_1.default("WORKSPACE_PACKAGE_NOT_FOUND", `"${parsed.alias}" not found in the workspace`); - if (!parsed.pref) - return `${parsed.alias}@workspace:*`; - if (parsed.pref.startsWith("workspace:")) - return spec; - return `${parsed.alias}@workspace:${parsed.pref}`; + return fn2.apply(this, args2.concat(Array.prototype.slice.call(arguments, transformers.length))); }); + }); + module2.exports = useWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/project.js +var require_project2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/project.js"(exports2, module2) { + var _map = require_map3(); + var identity = require_identity3(); + var pickAll = require_pickAll(); + var useWith = require_useWith(); + var project = /* @__PURE__ */ useWith(_map, [pickAll, identity]); + module2.exports = project; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_promap.js +var require_promap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_promap.js"(exports2, module2) { + function _promap(f, g, profunctor) { + return function(x) { + return g(profunctor(f(x))); + }; } - exports2.createWorkspaceSpecs = createWorkspaceSpecs; + module2.exports = _promap; } }); -// ../plugin-commands-installation/lib/updateToLatestSpecsFromManifest.js -var require_updateToLatestSpecsFromManifest = __commonJS({ - "../plugin-commands-installation/lib/updateToLatestSpecsFromManifest.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createLatestSpecs = void 0; - var manifest_utils_1 = require_lib15(); - var version_selector_type_1 = __importDefault(require_version_selector_type()); - function updateToLatestSpecsFromManifest(manifest, include) { - const allDeps = manifest_utils_1.filterDependenciesByType(manifest, include); - const updateSpecs = []; - for (const [depName, depVersion] of Object.entries(allDeps)) { - if (depVersion.startsWith("npm:")) { - updateSpecs.push(`${depName}@${removeVersionFromSpec(depVersion)}@latest`); - } else { - const selector = version_selector_type_1.default(depVersion); - if (selector == null) - continue; - updateSpecs.push(`${depName}@latest`); - } +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xpromap.js +var require_xpromap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xpromap.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _xfBase = require_xfBase(); + var _promap = require_promap(); + var XPromap = /* @__PURE__ */ function() { + function XPromap2(f, g, xf) { + this.xf = xf; + this.f = f; + this.g = g; } - return updateSpecs; - } - exports2.default = updateToLatestSpecsFromManifest; - function createLatestSpecs(specs, manifest) { - const allDeps = manifest_utils_1.getAllDependenciesFromManifest(manifest); - return specs.filter((selector) => selector.includes("@", 1) ? allDeps[selector.substr(0, selector.indexOf("@", 1))] : allDeps[selector]).map((selector) => { - if (selector.includes("@", 1)) { - return selector; - } - if (allDeps[selector].startsWith("npm:")) { - return `${selector}@${removeVersionFromSpec(allDeps[selector])}@latest`; + XPromap2.prototype["@@transducer/init"] = _xfBase.init; + XPromap2.prototype["@@transducer/result"] = _xfBase.result; + XPromap2.prototype["@@transducer/step"] = function(result2, input) { + return this.xf["@@transducer/step"](result2, _promap(this.f, this.g, input)); + }; + return XPromap2; + }(); + var _xpromap = /* @__PURE__ */ _curry3(function _xpromap2(f, g, xf) { + return new XPromap(f, g, xf); + }); + module2.exports = _xpromap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/promap.js +var require_promap2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/promap.js"(exports2, module2) { + var _curry3 = require_curry3(); + var _dispatchable = require_dispatchable(); + var _promap = require_promap(); + var _xpromap = require_xpromap(); + var promap = /* @__PURE__ */ _curry3( + /* @__PURE__ */ _dispatchable(["fantasy-land/promap", "promap"], _xpromap, _promap) + ); + module2.exports = promap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propEq.js +var require_propEq = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propEq.js"(exports2, module2) { + var _curry3 = require_curry3(); + var prop = require_prop(); + var equals = require_equals2(); + var propEq = /* @__PURE__ */ _curry3(function propEq2(name, val, obj) { + return equals(val, prop(name, obj)); + }); + module2.exports = propEq; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propIs.js +var require_propIs = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propIs.js"(exports2, module2) { + var _curry3 = require_curry3(); + var prop = require_prop(); + var is = require_is(); + var propIs = /* @__PURE__ */ _curry3(function propIs2(type, name, obj) { + return is(type, prop(name, obj)); + }); + module2.exports = propIs; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propOr.js +var require_propOr = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propOr.js"(exports2, module2) { + var _curry3 = require_curry3(); + var defaultTo = require_defaultTo(); + var prop = require_prop(); + var propOr = /* @__PURE__ */ _curry3(function propOr2(val, p, obj) { + return defaultTo(val, prop(p, obj)); + }); + module2.exports = propOr; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propSatisfies.js +var require_propSatisfies = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/propSatisfies.js"(exports2, module2) { + var _curry3 = require_curry3(); + var prop = require_prop(); + var propSatisfies = /* @__PURE__ */ _curry3(function propSatisfies2(pred, name, obj) { + return pred(prop(name, obj)); + }); + module2.exports = propSatisfies; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/range.js +var require_range3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/range.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isNumber = require_isNumber(); + var range = /* @__PURE__ */ _curry2(function range2(from, to) { + if (!(_isNumber(from) && _isNumber(to))) { + throw new TypeError("Both arguments to range must be numbers"); + } + var result2 = []; + var n = from; + while (n < to) { + result2.push(n); + n += 1; + } + return result2; + }); + module2.exports = range; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceRight.js +var require_reduceRight = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceRight.js"(exports2, module2) { + var _curry3 = require_curry3(); + var reduceRight = /* @__PURE__ */ _curry3(function reduceRight2(fn2, acc, list) { + var idx = list.length - 1; + while (idx >= 0) { + acc = fn2(list[idx], acc); + if (acc && acc["@@transducer/reduced"]) { + acc = acc["@@transducer/value"]; + break; } - if (version_selector_type_1.default(allDeps[selector]) == null) { - return selector; + idx -= 1; + } + return acc; + }); + module2.exports = reduceRight; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceWhile.js +var require_reduceWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduceWhile.js"(exports2, module2) { + var _curryN = require_curryN(); + var _reduce = require_reduce2(); + var _reduced = require_reduced(); + var reduceWhile = /* @__PURE__ */ _curryN(4, [], function _reduceWhile(pred, fn2, a, list) { + return _reduce(function(acc, x) { + return pred(acc, x) ? fn2(acc, x) : _reduced(acc); + }, a, list); + }); + module2.exports = reduceWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduced.js +var require_reduced2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/reduced.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _reduced = require_reduced(); + var reduced = /* @__PURE__ */ _curry1(_reduced); + module2.exports = reduced; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/replace.js +var require_replace2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/replace.js"(exports2, module2) { + var _curry3 = require_curry3(); + var replace = /* @__PURE__ */ _curry3(function replace2(regex, replacement, str) { + return str.replace(regex, replacement); + }); + module2.exports = replace; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sequence.js +var require_sequence = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sequence.js"(exports2, module2) { + var _curry2 = require_curry2(); + var ap = require_ap(); + var map = require_map4(); + var prepend = require_prepend(); + var reduceRight = require_reduceRight(); + var sequence = /* @__PURE__ */ _curry2(function sequence2(of, traversable) { + return typeof traversable.sequence === "function" ? traversable.sequence(of) : reduceRight(function(x, acc) { + return ap(map(prepend, x), acc); + }, of([]), traversable); + }); + module2.exports = sequence; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/set.js +var require_set4 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/set.js"(exports2, module2) { + var _curry3 = require_curry3(); + var always = require_always(); + var over = require_over(); + var set = /* @__PURE__ */ _curry3(function set2(lens, v, x) { + return over(lens, always(v), x); + }); + module2.exports = set; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sort.js +var require_sort3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sort.js"(exports2, module2) { + var _curry2 = require_curry2(); + var sort = /* @__PURE__ */ _curry2(function sort2(comparator, list) { + return Array.prototype.slice.call(list, 0).sort(comparator); + }); + module2.exports = sort; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sortWith.js +var require_sortWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/sortWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var sortWith = /* @__PURE__ */ _curry2(function sortWith2(fns, list) { + return Array.prototype.slice.call(list, 0).sort(function(a, b) { + var result2 = 0; + var i = 0; + while (result2 === 0 && i < fns.length) { + result2 = fns[i](a, b); + i += 1; } - return `${selector}@latest`; + return result2; }); - } - exports2.createLatestSpecs = createLatestSpecs; - function removeVersionFromSpec(spec) { - return spec.substr(0, spec.lastIndexOf("@")); - } + }); + module2.exports = sortWith; } }); -// ../plugin-commands-installation/lib/recursive.js -var require_recursive2 = __commonJS({ - "../plugin-commands-installation/lib/recursive.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/split.js +var require_split = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/split.js"(exports2, module2) { + var invoker = require_invoker(); + var split = /* @__PURE__ */ invoker(1, "split"); + module2.exports = split; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitAt.js +var require_splitAt = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitAt.js"(exports2, module2) { + var _curry2 = require_curry2(); + var length = require_length(); + var slice = require_slice(); + var splitAt = /* @__PURE__ */ _curry2(function splitAt2(index, array) { + return [slice(0, index, array), slice(index, length(array), array)]; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.createMatcher = exports2.matchDependencies = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var error_1 = __importDefault(require_lib8()); - var find_workspace_packages_1 = require_lib22(); - var logger_1 = __importDefault(require_lib6()); - var manifest_utils_1 = require_lib15(); - var matcher_1 = __importDefault(require_lib23()); - var plugin_commands_rebuild_1 = require_lib93(); - var pnpmfile_1 = require_lib91(); - var sort_packages_1 = __importDefault(require_lib92()); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var camelcase_keys_1 = __importDefault(require_camelcase_keys()); - var is_subdir_1 = __importDefault(require_is_subdir()); - var mem_1 = __importDefault(require_dist8()); - var p_filter_1 = __importDefault(require_p_filter()); - var p_limit_1 = __importDefault(require_p_limit()); - var read_ini_file_1 = __importDefault(require_read_ini_file()); - var updateWorkspaceDependencies_1 = require_updateWorkspaceDependencies(); - var updateToLatestSpecsFromManifest_1 = __importStar2(require_updateToLatestSpecsFromManifest()); - var getSaveType_1 = __importDefault(require_getSaveType()); - var getPinnedVersion_1 = __importDefault(require_getPinnedVersion()); - async function recursive(allProjects, params, opts, cmdFullName) { - var _a, _b, _c; - if (allProjects.length === 0) { - return false; - } - const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); - if (pkgs.length === 0) { - return false; + module2.exports = splitAt; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitEvery.js +var require_splitEvery = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitEvery.js"(exports2, module2) { + var _curry2 = require_curry2(); + var slice = require_slice(); + var splitEvery = /* @__PURE__ */ _curry2(function splitEvery2(n, list) { + if (n <= 0) { + throw new Error("First argument to splitEvery must be a positive integer"); } - const manifestsByPath = {}; - for (const { dir, manifest, writeProjectManifest } of allProjects) { - manifestsByPath[dir] = { manifest, writeProjectManifest }; + var result2 = []; + var idx = 0; + while (idx < list.length) { + result2.push(slice(idx, idx += n, list)); } - const throwOnFail = cli_utils_1.throwOnCommandFail.bind(null, `pnpm recursive ${cmdFullName}`); - const chunks = opts.sort !== false ? sort_packages_1.default(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const workspacePackages = cmdFullName !== "unlink" ? find_workspace_packages_1.arrayOfWorkspacePackagesToMap(allProjects) : {}; - const targetDependenciesField = getSaveType_1.default(opts); - const installOpts = Object.assign(opts, { - linkWorkspacePackagesDepth: opts.linkWorkspacePackages === "deep" ? Infinity : opts.linkWorkspacePackages ? 0 : -1, - ownLifecycleHooksStdio: "pipe", - peer: opts.savePeer, - pruneLockfileImporters: (opts.ignoredPackages == null || opts.ignoredPackages.size === 0) && pkgs.length === allProjects.length, - storeController: store.ctrl, - storeDir: store.dir, - targetDependenciesField, - workspacePackages, - forceHoistPattern: typeof opts.rawLocalConfig["hoist-pattern"] !== "undefined" || typeof opts.rawLocalConfig["hoist"] !== "undefined", - forceShamefullyHoist: typeof opts.rawLocalConfig["shamefully-hoist"] !== "undefined" - }); - const result = { - fails: [], - passes: 0 - }; - const memReadLocalConfig = mem_1.default(readLocalConfig); - async function getImporters() { - const importers = []; - await Promise.all(chunks.map(async (prefixes, buildIndex) => { - if (opts.ignoredPackages != null) { - prefixes = prefixes.filter((prefix) => !opts.ignoredPackages.has(prefix)); - } - return Promise.all(prefixes.map(async (prefix) => { - importers.push({ - buildIndex, - manifest: manifestsByPath[prefix].manifest, - rootDir: prefix - }); - })); - })); - return importers; + return result2; + }); + module2.exports = splitEvery; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitWhen.js +var require_splitWhen = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitWhen.js"(exports2, module2) { + var _curry2 = require_curry2(); + var splitWhen = /* @__PURE__ */ _curry2(function splitWhen2(pred, list) { + var idx = 0; + var len = list.length; + var prefix = []; + while (idx < len && !pred(list[idx])) { + prefix.push(list[idx]); + idx += 1; } - const updateToLatest = opts.update && opts.latest; - const includeDirect = (_a = opts.includeDirect) !== null && _a !== void 0 ? _a : { - dependencies: true, - devDependencies: true, - optionalDependencies: true - }; - const updateMatch = cmdFullName === "update" && params.length > 0 ? createMatcher(params) : null; - if (opts.lockfileDir && ["add", "install", "remove", "update"].includes(cmdFullName)) { - let importers = await getImporters(); - const calculatedRepositoryRoot = calculateRepositoryRoot(opts.workspaceDir, importers.map((x) => x.rootDir)); - const isFromWorkspace = is_subdir_1.default.bind(null, calculatedRepositoryRoot); - importers = await p_filter_1.default(importers, async ({ rootDir }) => isFromWorkspace(await fs_1.promises.realpath(rootDir))); - if (importers.length === 0) - return true; - const hooks = opts.ignorePnpmfile ? {} : pnpmfile_1.requireHooks(opts.lockfileDir, opts); - const mutation = cmdFullName === "remove" ? "uninstallSome" : params.length === 0 && !updateToLatest ? "install" : "installSome"; - const writeProjectManifests = []; - const mutatedImporters = []; - await Promise.all(importers.map(async ({ buildIndex, rootDir }) => { - var _a2; - const localConfig = await memReadLocalConfig(rootDir); - const modulesDir = (_a2 = localConfig.modulesDir) !== null && _a2 !== void 0 ? _a2 : opts.modulesDir; - const { manifest, writeProjectManifest } = manifestsByPath[rootDir]; - let currentInput = [...params]; - if (updateMatch != null) { - currentInput = matchDependencies(updateMatch, manifest, includeDirect); - if (currentInput.length === 0 && (typeof opts.depth === "undefined" || opts.depth <= 0)) { - installOpts.pruneLockfileImporters = false; - return; - } - } - if (updateToLatest) { - if (!params || params.length === 0) { - currentInput = updateToLatestSpecsFromManifest_1.default(manifest, includeDirect); - } else { - currentInput = updateToLatestSpecsFromManifest_1.createLatestSpecs(currentInput, manifest); - if (currentInput.length === 0) { - installOpts.pruneLockfileImporters = false; - return; - } - } - } - if (opts.workspace) { - if (!currentInput || currentInput.length === 0) { - currentInput = updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages); - } else { - currentInput = updateWorkspaceDependencies_1.createWorkspaceSpecs(currentInput, workspacePackages); - } - } - writeProjectManifests.push(writeProjectManifest); - switch (mutation) { - case "uninstallSome": - mutatedImporters.push({ - dependencyNames: currentInput, - manifest, - modulesDir, - mutation, - rootDir, - targetDependenciesField - }); - return; - case "installSome": - mutatedImporters.push({ - allowNew: cmdFullName === "install" || cmdFullName === "add", - dependencySelectors: currentInput, - manifest, - modulesDir, - mutation, - peer: opts.savePeer, - pinnedVersion: getPinnedVersion_1.default({ - saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts.saveExact, - savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts.savePrefix - }), - rootDir, - targetDependenciesField - }); - return; - case "install": - mutatedImporters.push({ - buildIndex, - manifest, - modulesDir, - mutation, - rootDir - }); - } - })); - if (!opts.selectedProjectsGraph[opts.workspaceDir] && manifestsByPath[opts.workspaceDir] != null) { - const localConfig = await memReadLocalConfig(opts.workspaceDir); - const modulesDir = (_b = localConfig.modulesDir) !== null && _b !== void 0 ? _b : opts.modulesDir; - const { manifest, writeProjectManifest } = manifestsByPath[opts.workspaceDir]; - writeProjectManifests.push(writeProjectManifest); - mutatedImporters.push({ - buildIndex: 0, - manifest, - modulesDir, - mutation: "install", - rootDir: opts.workspaceDir - }); - } - if (mutatedImporters.length === 0 && cmdFullName === "update") { - throw new error_1.default("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects."); + return [prefix, Array.prototype.slice.call(list, idx)]; + }); + module2.exports = splitWhen; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitWhenever.js +var require_splitWhenever = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/splitWhenever.js"(exports2, module2) { + var _curryN = require_curryN(); + var splitWhenever = /* @__PURE__ */ _curryN(2, [], function splitWhenever2(pred, list) { + var acc = []; + var curr = []; + for (var i = 0; i < list.length; i = i + 1) { + if (!pred(list[i])) { + curr.push(list[i]); } - const mutatedPkgs = await supi_1.mutateModules(mutatedImporters, { - ...installOpts, - hooks, - storeController: store.ctrl - }); - if (opts.save !== false) { - await Promise.all(mutatedPkgs.map(async ({ manifest }, index) => writeProjectManifests[index](manifest))); + if ((i < list.length - 1 && pred(list[i + 1]) || i === list.length - 1) && curr.length > 0) { + acc.push(curr); + curr = []; } - return true; } - const pkgPaths = chunks.length === 0 ? chunks[0] : Object.keys(opts.selectedProjectsGraph).sort(); - const limitInstallation = p_limit_1.default((_c = opts.workspaceConcurrency) !== null && _c !== void 0 ? _c : 4); - await Promise.all(pkgPaths.map(async (rootDir) => limitInstallation(async () => { - var _a2; - const hooks = opts.ignorePnpmfile ? {} : pnpmfile_1.requireHooks(rootDir, opts); - try { - if ((_a2 = opts.ignoredPackages) === null || _a2 === void 0 ? void 0 : _a2.has(rootDir)) { - return; - } - const { manifest, writeProjectManifest } = manifestsByPath[rootDir]; - let currentInput = [...params]; - if (updateMatch != null) { - currentInput = matchDependencies(updateMatch, manifest, includeDirect); - if (currentInput.length === 0) - return; - } - if (updateToLatest) { - if (!params || params.length === 0) { - currentInput = updateToLatestSpecsFromManifest_1.default(manifest, includeDirect); - } else { - currentInput = updateToLatestSpecsFromManifest_1.createLatestSpecs(currentInput, manifest); - if (currentInput.length === 0) - return; - } - } - if (opts.workspace) { - if (!currentInput || currentInput.length === 0) { - currentInput = updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages); - } else { - currentInput = updateWorkspaceDependencies_1.createWorkspaceSpecs(currentInput, workspacePackages); - } - } - let action; - switch (cmdFullName) { - case "unlink": - action = currentInput.length === 0 ? unlink : unlinkPkgs.bind(null, currentInput); - break; - case "remove": - action = async (manifest2, opts2) => { - const [{ manifest: newManifest2 }] = await supi_1.mutateModules([ - { - dependencyNames: currentInput, - manifest: manifest2, - mutation: "uninstallSome", - rootDir - } - ], opts2); - return newManifest2; - }; - break; - default: - action = currentInput.length === 0 ? supi_1.install : async (manifest2, opts2) => supi_1.addDependenciesToPackage(manifest2, currentInput, opts2); - break; - } - const localConfig = await memReadLocalConfig(rootDir); - const newManifest = await action(manifest, { - ...installOpts, - ...localConfig, - bin: path_1.default.join(rootDir, "node_modules", ".bin"), - dir: rootDir, - hooks, - ignoreScripts: true, - pinnedVersion: getPinnedVersion_1.default({ - saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts.saveExact, - savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts.savePrefix - }), - rawConfig: { - ...installOpts.rawConfig, - ...localConfig - }, - storeController: store.ctrl - }); - if (opts.save !== false) { - await writeProjectManifest(newManifest); - } - result.passes++; - } catch (err) { - logger_1.default.info(err); - if (!opts.bail) { - result.fails.push({ - error: err, - message: err.message, - prefix: rootDir - }); - return; - } - err["prefix"] = rootDir; - throw err; - } - }))); - if (!opts.lockfileOnly && !opts.ignoreScripts && (cmdFullName === "add" || cmdFullName === "install" || cmdFullName === "update" || cmdFullName === "unlink")) { - await plugin_commands_rebuild_1.rebuild.handler({ - ...opts, - pending: opts.pending === true - }, []); + return acc; + }); + module2.exports = splitWhenever; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/startsWith.js +var require_startsWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/startsWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var equals = require_equals2(); + var take = require_take2(); + var startsWith = /* @__PURE__ */ _curry2(function(prefix, list) { + return equals(take(prefix.length, list), prefix); + }); + module2.exports = startsWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/subtract.js +var require_subtract = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/subtract.js"(exports2, module2) { + var _curry2 = require_curry2(); + var subtract = /* @__PURE__ */ _curry2(function subtract2(a, b) { + return Number(a) - Number(b); + }); + module2.exports = subtract; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/symmetricDifference.js +var require_symmetricDifference = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/symmetricDifference.js"(exports2, module2) { + var _curry2 = require_curry2(); + var concat = require_concat4(); + var difference = require_difference(); + var symmetricDifference = /* @__PURE__ */ _curry2(function symmetricDifference2(list1, list2) { + return concat(difference(list1, list2), difference(list2, list1)); + }); + module2.exports = symmetricDifference; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/symmetricDifferenceWith.js +var require_symmetricDifferenceWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/symmetricDifferenceWith.js"(exports2, module2) { + var _curry3 = require_curry3(); + var concat = require_concat4(); + var differenceWith = require_differenceWith(); + var symmetricDifferenceWith = /* @__PURE__ */ _curry3(function symmetricDifferenceWith2(pred, list1, list2) { + return concat(differenceWith(pred, list1, list2), differenceWith(pred, list2, list1)); + }); + module2.exports = symmetricDifferenceWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeLastWhile.js +var require_takeLastWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeLastWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var slice = require_slice(); + var takeLastWhile = /* @__PURE__ */ _curry2(function takeLastWhile2(fn2, xs) { + var idx = xs.length - 1; + while (idx >= 0 && fn2(xs[idx])) { + idx -= 1; } - throwOnFail(result); - if (!result.passes && cmdFullName === "update") { - throw new error_1.default("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects."); + return slice(idx + 1, Infinity, xs); + }); + module2.exports = takeLastWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtakeWhile.js +var require_xtakeWhile = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtakeWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _reduced = require_reduced(); + var _xfBase = require_xfBase(); + var XTakeWhile = /* @__PURE__ */ function() { + function XTakeWhile2(f, xf) { + this.xf = xf; + this.f = f; } - return true; - } - exports2.default = recursive; - async function unlink(manifest, opts) { - return supi_1.mutateModules([ - { - manifest, - mutation: "unlink", - rootDir: opts.dir - } - ], opts); - } - async function unlinkPkgs(dependencyNames, manifest, opts) { - return supi_1.mutateModules([ - { - dependencyNames, - manifest, - mutation: "unlinkSome", - rootDir: opts.dir + XTakeWhile2.prototype["@@transducer/init"] = _xfBase.init; + XTakeWhile2.prototype["@@transducer/result"] = _xfBase.result; + XTakeWhile2.prototype["@@transducer/step"] = function(result2, input) { + return this.f(input) ? this.xf["@@transducer/step"](result2, input) : _reduced(result2); + }; + return XTakeWhile2; + }(); + var _xtakeWhile = /* @__PURE__ */ _curry2(function _xtakeWhile2(f, xf) { + return new XTakeWhile(f, xf); + }); + module2.exports = _xtakeWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeWhile.js +var require_takeWhile2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/takeWhile.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xtakeWhile = require_xtakeWhile(); + var slice = require_slice(); + var takeWhile = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable(["takeWhile"], _xtakeWhile, function takeWhile2(fn2, xs) { + var idx = 0; + var len = xs.length; + while (idx < len && fn2(xs[idx])) { + idx += 1; } - ], opts); + return slice(0, idx, xs); + }) + ); + module2.exports = takeWhile; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtap.js +var require_xtap = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xtap.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _xfBase = require_xfBase(); + var XTap = /* @__PURE__ */ function() { + function XTap2(f, xf) { + this.xf = xf; + this.f = f; + } + XTap2.prototype["@@transducer/init"] = _xfBase.init; + XTap2.prototype["@@transducer/result"] = _xfBase.result; + XTap2.prototype["@@transducer/step"] = function(result2, input) { + this.f(input); + return this.xf["@@transducer/step"](result2, input); + }; + return XTap2; + }(); + var _xtap = /* @__PURE__ */ _curry2(function _xtap2(f, xf) { + return new XTap(f, xf); + }); + module2.exports = _xtap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tap.js +var require_tap2 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tap.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _xtap = require_xtap(); + var tap = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xtap, function tap2(fn2, x) { + fn2(x); + return x; + }) + ); + module2.exports = tap; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isRegExp.js +var require_isRegExp = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_isRegExp.js"(exports2, module2) { + function _isRegExp(x) { + return Object.prototype.toString.call(x) === "[object RegExp]"; } - async function readLocalConfig(prefix) { - try { - const ini = await read_ini_file_1.default(path_1.default.join(prefix, ".npmrc")); - const config = camelcase_keys_1.default(ini); - if (config.shamefullyFlatten) { - config.hoistPattern = "*"; - } - if (config.hoist === false) { - config.hoistPattern = ""; + module2.exports = _isRegExp; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/test.js +var require_test = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/test.js"(exports2, module2) { + var _cloneRegExp = require_cloneRegExp(); + var _curry2 = require_curry2(); + var _isRegExp = require_isRegExp(); + var toString = require_toString3(); + var test = /* @__PURE__ */ _curry2(function test2(pattern, str) { + if (!_isRegExp(pattern)) { + throw new TypeError("\u2018test\u2019 requires a value of type RegExp as its first argument; received " + toString(pattern)); + } + return _cloneRegExp(pattern).test(str); + }); + module2.exports = test; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/andThen.js +var require_andThen = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/andThen.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _assertPromise = require_assertPromise(); + var andThen = /* @__PURE__ */ _curry2(function andThen2(f, p) { + _assertPromise("andThen", p); + return p.then(f); + }); + module2.exports = andThen; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toLower.js +var require_toLower = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toLower.js"(exports2, module2) { + var invoker = require_invoker(); + var toLower = /* @__PURE__ */ invoker(0, "toLowerCase"); + module2.exports = toLower; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toPairs.js +var require_toPairs = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toPairs.js"(exports2, module2) { + var _curry1 = require_curry1(); + var _has = require_has(); + var toPairs = /* @__PURE__ */ _curry1(function toPairs2(obj) { + var pairs = []; + for (var prop in obj) { + if (_has(prop, obj)) { + pairs[pairs.length] = [prop, obj[prop]]; } - return config; - } catch (err) { - if (err.code !== "ENOENT") - throw err; - return {}; } - } - function calculateRepositoryRoot(workspaceDir, projectDirs) { - let relativeRepoRoot = "."; - for (const rootDir of projectDirs) { - const relativePartRegExp = new RegExp(`^(\\.\\.\\${path_1.default.sep})+`); - const relativePartMatch = relativePartRegExp.exec(path_1.default.relative(workspaceDir, rootDir)); - if (relativePartMatch != null) { - const relativePart = relativePartMatch[0]; - if (relativePart.length > relativeRepoRoot.length) { - relativeRepoRoot = relativePart; + return pairs; + }); + module2.exports = toPairs; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toPairsIn.js +var require_toPairsIn = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toPairsIn.js"(exports2, module2) { + var _curry1 = require_curry1(); + var toPairsIn = /* @__PURE__ */ _curry1(function toPairsIn2(obj) { + var pairs = []; + for (var prop in obj) { + pairs[pairs.length] = [prop, obj[prop]]; + } + return pairs; + }); + module2.exports = toPairsIn; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toUpper.js +var require_toUpper = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/toUpper.js"(exports2, module2) { + var invoker = require_invoker(); + var toUpper = /* @__PURE__ */ invoker(0, "toUpperCase"); + module2.exports = toUpper; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/transduce.js +var require_transduce = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/transduce.js"(exports2, module2) { + var _reduce = require_reduce2(); + var _xwrap = require_xwrap(); + var curryN = require_curryN2(); + var transduce = /* @__PURE__ */ curryN(4, function transduce2(xf, fn2, acc, list) { + return _reduce(xf(typeof fn2 === "function" ? _xwrap(fn2) : fn2), acc, list); + }); + module2.exports = transduce; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/transpose.js +var require_transpose = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/transpose.js"(exports2, module2) { + var _curry1 = require_curry1(); + var transpose = /* @__PURE__ */ _curry1(function transpose2(outerlist) { + var i = 0; + var result2 = []; + while (i < outerlist.length) { + var innerlist = outerlist[i]; + var j = 0; + while (j < innerlist.length) { + if (typeof result2[j] === "undefined") { + result2[j] = []; } + result2[j].push(innerlist[j]); + j += 1; } + i += 1; } - return path_1.default.resolve(workspaceDir, relativeRepoRoot); - } - function matchDependencies(match, manifest, include) { - const deps = Object.keys(manifest_utils_1.filterDependenciesByType(manifest, include)); - const matchedDeps = []; - for (const dep of deps) { - const spec = match(dep); - if (spec === null) - continue; - matchedDeps.push(spec ? `${dep}@${spec}` : dep); - } - return matchedDeps; - } - exports2.matchDependencies = matchDependencies; - function createMatcher(params) { - const matchers = params.map((param) => { - const atIndex = param.indexOf("@", 1); - let pattern; - let spec; - if (atIndex === -1) { - pattern = param; - spec = ""; - } else { - pattern = param.substr(0, atIndex); - spec = param.substr(atIndex + 1); + return result2; + }); + module2.exports = transpose; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/traverse.js +var require_traverse = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/traverse.js"(exports2, module2) { + var _curry3 = require_curry3(); + var map = require_map4(); + var sequence = require_sequence(); + var traverse = /* @__PURE__ */ _curry3(function traverse2(of, f, traversable) { + return typeof traversable["fantasy-land/traverse"] === "function" ? traversable["fantasy-land/traverse"](f, of) : typeof traversable.traverse === "function" ? traversable.traverse(f, of) : sequence(of, map(f, traversable)); + }); + module2.exports = traverse; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/trim.js +var require_trim = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/trim.js"(exports2, module2) { + var _curry1 = require_curry1(); + var ws = " \n\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF"; + var zeroWidth = "\u200B"; + var hasProtoTrim = typeof String.prototype.trim === "function"; + var trim = !hasProtoTrim || /* @__PURE__ */ ws.trim() || !/* @__PURE__ */ zeroWidth.trim() ? /* @__PURE__ */ _curry1(function trim2(str) { + var beginRx = new RegExp("^[" + ws + "][" + ws + "]*"); + var endRx = new RegExp("[" + ws + "][" + ws + "]*$"); + return str.replace(beginRx, "").replace(endRx, ""); + }) : /* @__PURE__ */ _curry1(function trim2(str) { + return str.trim(); + }); + module2.exports = trim; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tryCatch.js +var require_tryCatch = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/tryCatch.js"(exports2, module2) { + var _arity = require_arity(); + var _concat = require_concat3(); + var _curry2 = require_curry2(); + var tryCatch = /* @__PURE__ */ _curry2(function _tryCatch(tryer, catcher) { + return _arity(tryer.length, function() { + try { + return tryer.apply(this, arguments); + } catch (e) { + return catcher.apply(this, _concat([e], arguments)); } - return { - match: matcher_1.default(pattern), - spec - }; }); - return (depName) => { - for (const { spec, match } of matchers) { - if (match(depName)) - return spec; - } - return null; - }; - } - exports2.createMatcher = createMatcher; + }); + module2.exports = tryCatch; } }); -// ../plugin-commands-installation/lib/installDeps.js -var require_installDeps = __commonJS({ - "../plugin-commands-installation/lib/installDeps.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unapply.js +var require_unapply = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unapply.js"(exports2, module2) { + var _curry1 = require_curry1(); + var unapply = /* @__PURE__ */ _curry1(function unapply2(fn2) { + return function() { + return fn2(Array.prototype.slice.call(arguments, 0)); + }; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; + module2.exports = unapply; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unary.js +var require_unary = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unary.js"(exports2, module2) { + var _curry1 = require_curry1(); + var nAry = require_nAry(); + var unary = /* @__PURE__ */ _curry1(function unary2(fn2) { + return nAry(1, fn2); }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var error_1 = __importDefault(require_lib8()); - var filter_workspace_packages_1 = require_lib27(); - var find_workspace_packages_1 = __importStar2(require_lib22()); - var implementation_1 = require_implementation4(); - var pnpmfile_1 = require_lib91(); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var logger_1 = __importDefault(require_lib6()); - var sort_packages_1 = require_lib92(); - var getPinnedVersion_1 = __importDefault(require_getPinnedVersion()); - var getSaveType_1 = __importDefault(require_getSaveType()); - var recursive_1 = __importStar2(require_recursive2()); - var updateToLatestSpecsFromManifest_1 = __importStar2(require_updateToLatestSpecsFromManifest()); - var updateWorkspaceDependencies_1 = require_updateWorkspaceDependencies(); - var OVERWRITE_UPDATE_OPTIONS = { - allowNew: true, - update: false - }; - async function handler(opts, params) { - var _a, _b, _c, _d, _e, _f; - if (opts.workspace) { - if (opts.latest) { - throw new error_1.default("BAD_OPTIONS", "Cannot use --latest with --workspace simultaneously"); - } - if (!opts.workspaceDir) { - throw new error_1.default("WORKSPACE_OPTION_OUTSIDE_WORKSPACE", "--workspace can only be used inside a workspace"); + module2.exports = unary; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uncurryN.js +var require_uncurryN = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uncurryN.js"(exports2, module2) { + var _curry2 = require_curry2(); + var curryN = require_curryN2(); + var uncurryN = /* @__PURE__ */ _curry2(function uncurryN2(depth, fn2) { + return curryN(depth, function() { + var currentDepth = 1; + var value = fn2; + var idx = 0; + var endIdx; + while (currentDepth <= depth && typeof value === "function") { + endIdx = currentDepth === depth ? arguments.length : idx + value.length; + value = value.apply(this, Array.prototype.slice.call(arguments, idx, endIdx)); + currentDepth += 1; + idx = endIdx; } - if (!opts.linkWorkspacePackages && !opts.saveWorkspaceProtocol) { - if (opts.rawLocalConfig["save-workspace-protocol"] === false) { - throw new error_1.default("BAD_OPTIONS", "This workspace has link-workspace-packages turned off, so dependencies are linked from the workspace only when the workspace protocol is used. Either set link-workspace-packages to true or don't use the --no-save-workspace-protocol option when running add/update with the --workspace option"); - } else { - opts.saveWorkspaceProtocol = true; - } + return value; + }); + }); + module2.exports = uncurryN; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unfold.js +var require_unfold = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unfold.js"(exports2, module2) { + var _curry2 = require_curry2(); + var unfold = /* @__PURE__ */ _curry2(function unfold2(fn2, seed) { + var pair = fn2(seed); + var result2 = []; + while (pair && pair.length) { + result2[result2.length] = pair[0]; + pair = fn2(pair[1]); + } + return result2; + }); + module2.exports = unfold; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xuniqWith.js +var require_xuniqWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/internal/_xuniqWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _includesWith = require_includesWith(); + var _xfBase = require_xfBase(); + var XUniqWith = /* @__PURE__ */ function() { + function XUniqWith2(pred, xf) { + this.xf = xf; + this.pred = pred; + this.items = []; + } + XUniqWith2.prototype["@@transducer/init"] = _xfBase.init; + XUniqWith2.prototype["@@transducer/result"] = _xfBase.result; + XUniqWith2.prototype["@@transducer/step"] = function(result2, input) { + if (_includesWith(this.pred, input, this.items)) { + return result2; + } else { + this.items.push(input); + return this.xf["@@transducer/step"](result2, input); } - opts["preserveWorkspaceProtocol"] = !opts.linkWorkspacePackages; - } - const includeDirect = (_a = opts.includeDirect) !== null && _a !== void 0 ? _a : { - dependencies: true, - devDependencies: true, - optionalDependencies: true }; - const forceHoistPattern = typeof opts.rawLocalConfig["hoist-pattern"] !== "undefined" || typeof opts.rawLocalConfig["hoist"] !== "undefined"; - const forcePublicHoistPattern = typeof opts.rawLocalConfig["shamefully-hoist"] !== "undefined" || typeof opts.rawLocalConfig["public-hoist-pattern"] !== "undefined"; - const allProjects = (_b = opts.allProjects) !== null && _b !== void 0 ? _b : opts.workspaceDir ? await find_workspace_packages_1.default(opts.workspaceDir, opts) : []; - if (opts.workspaceDir) { - const selectedProjectsGraph = (_c = opts.selectedProjectsGraph) !== null && _c !== void 0 ? _c : selectProjectByDir(allProjects, opts.dir); - if (selectedProjectsGraph != null) { - const sequencedGraph = sort_packages_1.sequenceGraph(selectedProjectsGraph); - if (!sequencedGraph.safe) { - const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : ""; - logger_1.default.warn({ - message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`, - prefix: opts.workspaceDir - }); + return XUniqWith2; + }(); + var _xuniqWith = /* @__PURE__ */ _curry2(function _xuniqWith2(pred, xf) { + return new XUniqWith(pred, xf); + }); + module2.exports = _xuniqWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniqWith.js +var require_uniqWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/uniqWith.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _dispatchable = require_dispatchable(); + var _includesWith = require_includesWith(); + var _xuniqWith = require_xuniqWith(); + var uniqWith = /* @__PURE__ */ _curry2( + /* @__PURE__ */ _dispatchable([], _xuniqWith, function(pred, list) { + var idx = 0; + var len = list.length; + var result2 = []; + var item; + while (idx < len) { + item = list[idx]; + if (!_includesWith(pred, item, result2)) { + result2[result2.length] = item; } - await recursive_1.default(allProjects, params, { - ...opts, - forceHoistPattern, - forcePublicHoistPattern, - selectedProjectsGraph, - workspaceDir: opts.workspaceDir - }, opts.update ? "update" : params.length === 0 ? "install" : "add"); - return; + idx += 1; } + return result2; + }) + ); + module2.exports = uniqWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unionWith.js +var require_unionWith = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unionWith.js"(exports2, module2) { + var _concat = require_concat3(); + var _curry3 = require_curry3(); + var uniqWith = require_uniqWith(); + var unionWith = /* @__PURE__ */ _curry3(function unionWith2(pred, list1, list2) { + return uniqWith(pred, _concat(list1, list2)); + }); + module2.exports = unionWith; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unless.js +var require_unless = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unless.js"(exports2, module2) { + var _curry3 = require_curry3(); + var unless = /* @__PURE__ */ _curry3(function unless2(pred, whenFalseFn, x) { + return pred(x) ? x : whenFalseFn(x); + }); + module2.exports = unless; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/until.js +var require_until = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/until.js"(exports2, module2) { + var _curry3 = require_curry3(); + var until = /* @__PURE__ */ _curry3(function until2(pred, fn2, init) { + var val = init; + while (!pred(val)) { + val = fn2(val); } - params = params.filter(Boolean); - const dir = opts.dir || process.cwd(); - let workspacePackages; - if (opts.workspaceDir) { - workspacePackages = find_workspace_packages_1.arrayOfWorkspacePackagesToMap(allProjects); - } - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const installOpts = { - ...opts, - forceHoistPattern, - forcePublicHoistPattern, - ignoreScripts: !!workspacePackages || opts.ignoreScripts, - linkWorkspacePackagesDepth: opts.linkWorkspacePackages === "deep" ? Infinity : opts.linkWorkspacePackages ? 0 : -1, - sideEffectsCacheRead: (_d = opts.sideEffectsCache) !== null && _d !== void 0 ? _d : opts.sideEffectsCacheReadonly, - sideEffectsCacheWrite: opts.sideEffectsCache, - storeController: store.ctrl, - storeDir: store.dir, - workspacePackages - }; - if (!opts.ignorePnpmfile) { - installOpts["hooks"] = pnpmfile_1.requireHooks((_e = opts.lockfileDir) !== null && _e !== void 0 ? _e : dir, opts); - } - if (opts.global) { - installOpts["nodeExecPath"] = (_f = process.env.NODE) !== null && _f !== void 0 ? _f : process.execPath; - } - let { manifest, writeProjectManifest } = await cli_utils_1.tryReadProjectManifest(opts.dir, opts); - if (manifest === null) { - if (opts.update) { - throw new error_1.default("NO_IMPORTER_MANIFEST", "No package.json found"); - } - manifest = {}; + return val; + }); + module2.exports = until; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unwind.js +var require_unwind = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/unwind.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _isArray = require_isArray(); + var _map = require_map3(); + var _assoc = require_assoc(); + var unwind = /* @__PURE__ */ _curry2(function(key, object) { + if (!(key in object && _isArray(object[key]))) { + return [object]; + } + return _map(function(item) { + return _assoc(key, item, object); + }, object[key]); + }); + module2.exports = unwind; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/valuesIn.js +var require_valuesIn = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/valuesIn.js"(exports2, module2) { + var _curry1 = require_curry1(); + var valuesIn = /* @__PURE__ */ _curry1(function valuesIn2(obj) { + var prop; + var vs = []; + for (prop in obj) { + vs[vs.length] = obj[prop]; } - const updateMatch = opts.update && params.length > 0 ? recursive_1.createMatcher(params) : null; - if (updateMatch != null) { - params = recursive_1.matchDependencies(updateMatch, manifest, includeDirect); - if (params.length === 0) { - throw new error_1.default("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies."); + return vs; + }); + module2.exports = valuesIn; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/view.js +var require_view = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/view.js"(exports2, module2) { + var _curry2 = require_curry2(); + var Const = function(x) { + return { + value: x, + "fantasy-land/map": function() { + return this; } - } - if (opts.update && opts.latest) { - if (!params || params.length === 0) { - params = updateToLatestSpecsFromManifest_1.default(manifest, includeDirect); - } else { - params = updateToLatestSpecsFromManifest_1.createLatestSpecs(params, manifest); + }; + }; + var view = /* @__PURE__ */ _curry2(function view2(lens, x) { + return lens(Const)(x).value; + }); + module2.exports = view; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/when.js +var require_when = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/when.js"(exports2, module2) { + var _curry3 = require_curry3(); + var when = /* @__PURE__ */ _curry3(function when2(pred, whenTrueFn, x) { + return pred(x) ? whenTrueFn(x) : x; + }); + module2.exports = when; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/where.js +var require_where = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/where.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _has = require_has(); + var where = /* @__PURE__ */ _curry2(function where2(spec, testObj) { + for (var prop in spec) { + if (_has(prop, spec) && !spec[prop](testObj[prop])) { + return false; } } - if (opts.workspace) { - if (!params || params.length === 0) { - params = updateWorkspaceDependencies_1.updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages); - } else { - params = updateWorkspaceDependencies_1.createWorkspaceSpecs(params, workspacePackages); + return true; + }); + module2.exports = where; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/whereAny.js +var require_whereAny = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/whereAny.js"(exports2, module2) { + var _curry2 = require_curry2(); + var _has = require_has(); + var whereAny = /* @__PURE__ */ _curry2(function whereAny2(spec, testObj) { + for (var prop in spec) { + if (_has(prop, spec) && spec[prop](testObj[prop])) { + return true; } } - if (params === null || params === void 0 ? void 0 : params.length) { - const [updatedImporter] = await supi_1.mutateModules([ - { - allowNew: opts.allowNew, - binsDir: installOpts.bin, - dependencySelectors: params, - manifest, - mutation: "installSome", - peer: opts.savePeer, - pinnedVersion: getPinnedVersion_1.default(opts), - rootDir: installOpts.dir, - targetDependenciesField: getSaveType_1.default(installOpts) - } - ], installOpts); - if (opts.save !== false) { - await writeProjectManifest(updatedImporter.manifest); + return false; + }); + module2.exports = whereAny; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/whereEq.js +var require_whereEq = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/whereEq.js"(exports2, module2) { + var _curry2 = require_curry2(); + var equals = require_equals2(); + var map = require_map4(); + var where = require_where(); + var whereEq = /* @__PURE__ */ _curry2(function whereEq2(spec, testObj) { + return where(map(equals, spec), testObj); + }); + module2.exports = whereEq; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/xor.js +var require_xor = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/xor.js"(exports2, module2) { + var _curry2 = require_curry2(); + var xor = /* @__PURE__ */ _curry2(function xor2(a, b) { + return Boolean(!a ^ !b); + }); + module2.exports = xor; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/xprod.js +var require_xprod = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/xprod.js"(exports2, module2) { + var _curry2 = require_curry2(); + var xprod = /* @__PURE__ */ _curry2(function xprod2(a, b) { + var idx = 0; + var ilen = a.length; + var j; + var jlen = b.length; + var result2 = []; + while (idx < ilen) { + j = 0; + while (j < jlen) { + result2[result2.length] = [a[idx], b[j]]; + j += 1; } - return; - } - const updatedManifest = await supi_1.install(manifest, installOpts); - if (opts.update === true && opts.save !== false) { - await writeProjectManifest(updatedManifest); + idx += 1; } - if (opts.linkWorkspacePackages && opts.workspaceDir) { - const { selectedProjectsGraph } = await filter_workspace_packages_1.filterPkgsBySelectorObjects(allProjects, [ - { - excludeSelf: true, - includeDependencies: true, - parentDir: dir - } - ], { - workspaceDir: opts.workspaceDir - }); - await recursive_1.default(allProjects, [], { - ...opts, - ...OVERWRITE_UPDATE_OPTIONS, - selectedProjectsGraph, - workspaceDir: opts.workspaceDir - }, "install"); - if (opts.ignoreScripts) - return; - await implementation_1.rebuild([ - { - buildIndex: 0, - manifest: await cli_utils_1.readProjectManifestOnly(opts.dir, opts), - rootDir: opts.dir - } - ], { - ...opts, - pending: true, - storeController: store.ctrl, - storeDir: store.dir - }); + return result2; + }); + module2.exports = xprod; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zip.js +var require_zip3 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/zip.js"(exports2, module2) { + var _curry2 = require_curry2(); + var zip = /* @__PURE__ */ _curry2(function zip2(a, b) { + var rv = []; + var idx = 0; + var len = Math.min(a.length, b.length); + while (idx < len) { + rv[idx] = [a[idx], b[idx]]; + idx += 1; } - } - exports2.default = handler; - function selectProjectByDir(projects, searchedDir) { - const project = projects.find(({ dir }) => path_1.default.relative(dir, searchedDir) === ""); - if (project == null) - return void 0; - return { [searchedDir]: { dependencies: [], package: project } }; - } + return rv; + }); + module2.exports = zip; } }); -// ../plugin-commands-installation/lib/add.js -var require_add = __commonJS({ - "../plugin-commands-installation/lib/add.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/thunkify.js +var require_thunkify = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/thunkify.js"(exports2, module2) { + var curryN = require_curryN2(); + var _curry1 = require_curry1(); + var thunkify = /* @__PURE__ */ _curry1(function thunkify2(fn2) { + return curryN(fn2.length, function createThunk() { + var fnArgs = arguments; + return function invokeThunk() { + return fn2.apply(this, fnArgs); + }; + }); + }); + module2.exports = thunkify; + } +}); + +// ../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/index.js +var require_src11 = __commonJS({ + "../node_modules/.pnpm/@pnpm+ramda@0.28.1/node_modules/@pnpm/ramda/src/index.js"(exports2, module2) { + module2.exports = {}; + module2.exports.F = require_F(); + module2.exports.T = require_T(); + module2.exports.__ = require__(); + module2.exports.add = require_add2(); + module2.exports.addIndex = require_addIndex(); + module2.exports.adjust = require_adjust(); + module2.exports.all = require_all2(); + module2.exports.allPass = require_allPass(); + module2.exports.always = require_always(); + module2.exports.and = require_and(); + module2.exports.any = require_any(); + module2.exports.anyPass = require_anyPass(); + module2.exports.ap = require_ap(); + module2.exports.aperture = require_aperture2(); + module2.exports.append = require_append(); + module2.exports.apply = require_apply4(); + module2.exports.applySpec = require_applySpec(); + module2.exports.applyTo = require_applyTo(); + module2.exports.ascend = require_ascend(); + module2.exports.assoc = require_assoc2(); + module2.exports.assocPath = require_assocPath(); + module2.exports.binary = require_binary3(); + module2.exports.bind = require_bind(); + module2.exports.both = require_both(); + module2.exports.call = require_call(); + module2.exports.chain = require_chain2(); + module2.exports.clamp = require_clamp(); + module2.exports.clone = require_clone4(); + module2.exports.collectBy = require_collectBy(); + module2.exports.comparator = require_comparator2(); + module2.exports.complement = require_complement2(); + module2.exports.compose = require_compose(); + module2.exports.composeWith = require_composeWith(); + module2.exports.concat = require_concat4(); + module2.exports.cond = require_cond(); + module2.exports.construct = require_construct(); + module2.exports.constructN = require_constructN(); + module2.exports.converge = require_converge(); + module2.exports.count = require_count2(); + module2.exports.countBy = require_countBy(); + module2.exports.curry = require_curry(); + module2.exports.curryN = require_curryN2(); + module2.exports.dec = require_dec(); + module2.exports.defaultTo = require_defaultTo(); + module2.exports.descend = require_descend(); + module2.exports.difference = require_difference(); + module2.exports.differenceWith = require_differenceWith(); + module2.exports.dissoc = require_dissoc2(); + module2.exports.dissocPath = require_dissocPath(); + module2.exports.divide = require_divide(); + module2.exports.drop = require_drop(); + module2.exports.dropLast = require_dropLast2(); + module2.exports.dropLastWhile = require_dropLastWhile2(); + module2.exports.dropRepeats = require_dropRepeats(); + module2.exports.dropRepeatsWith = require_dropRepeatsWith(); + module2.exports.dropWhile = require_dropWhile(); + module2.exports.either = require_either(); + module2.exports.empty = require_empty3(); + module2.exports.endsWith = require_endsWith(); + module2.exports.eqBy = require_eqBy(); + module2.exports.eqProps = require_eqProps(); + module2.exports.equals = require_equals2(); + module2.exports.evolve = require_evolve(); + module2.exports.filter = require_filter3(); + module2.exports.find = require_find2(); + module2.exports.findIndex = require_findIndex2(); + module2.exports.findLast = require_findLast(); + module2.exports.findLastIndex = require_findLastIndex(); + module2.exports.flatten = require_flatten2(); + module2.exports.flip = require_flip(); + module2.exports.forEach = require_forEach(); + module2.exports.forEachObjIndexed = require_forEachObjIndexed(); + module2.exports.fromPairs = require_fromPairs(); + module2.exports.groupBy = require_groupBy2(); + module2.exports.groupWith = require_groupWith(); + module2.exports.gt = require_gt2(); + module2.exports.gte = require_gte2(); + module2.exports.has = require_has2(); + module2.exports.hasIn = require_hasIn2(); + module2.exports.hasPath = require_hasPath2(); + module2.exports.head = require_head(); + module2.exports.identical = require_identical(); + module2.exports.identity = require_identity3(); + module2.exports.ifElse = require_ifElse(); + module2.exports.inc = require_inc2(); + module2.exports.includes = require_includes2(); + module2.exports.indexBy = require_indexBy(); + module2.exports.indexOf = require_indexOf2(); + module2.exports.init = require_init(); + module2.exports.innerJoin = require_innerJoin(); + module2.exports.insert = require_insert(); + module2.exports.insertAll = require_insertAll(); + module2.exports.intersection = require_intersection(); + module2.exports.intersperse = require_intersperse(); + module2.exports.into = require_into(); + module2.exports.invert = require_invert(); + module2.exports.invertObj = require_invertObj(); + module2.exports.invoker = require_invoker(); + module2.exports.is = require_is(); + module2.exports.isEmpty = require_isEmpty2(); + module2.exports.isNil = require_isNil(); + module2.exports.join = require_join(); + module2.exports.juxt = require_juxt(); + module2.exports.keys = require_keys(); + module2.exports.keysIn = require_keysIn2(); + module2.exports.last = require_last2(); + module2.exports.lastIndexOf = require_lastIndexOf(); + module2.exports.length = require_length(); + module2.exports.lens = require_lens(); + module2.exports.lensIndex = require_lensIndex(); + module2.exports.lensPath = require_lensPath(); + module2.exports.lensProp = require_lensProp(); + module2.exports.lift = require_lift2(); + module2.exports.liftN = require_liftN(); + module2.exports.lt = require_lt2(); + module2.exports.lte = require_lte2(); + module2.exports.map = require_map4(); + module2.exports.mapAccum = require_mapAccum(); + module2.exports.mapAccumRight = require_mapAccumRight(); + module2.exports.mapObjIndexed = require_mapObjIndexed(); + module2.exports.match = require_match(); + module2.exports.mathMod = require_mathMod(); + module2.exports.max = require_max2(); + module2.exports.maxBy = require_maxBy(); + module2.exports.mean = require_mean(); + module2.exports.median = require_median(); + module2.exports.memoizeWith = require_memoizeWith(); + module2.exports.mergeAll = require_mergeAll2(); + module2.exports.mergeDeepLeft = require_mergeDeepLeft(); + module2.exports.mergeDeepRight = require_mergeDeepRight(); + module2.exports.mergeDeepWith = require_mergeDeepWith(); + module2.exports.mergeDeepWithKey = require_mergeDeepWithKey(); + module2.exports.mergeLeft = require_mergeLeft(); + module2.exports.mergeRight = require_mergeRight(); + module2.exports.mergeWith = require_mergeWith3(); + module2.exports.mergeWithKey = require_mergeWithKey(); + module2.exports.min = require_min2(); + module2.exports.minBy = require_minBy(); + module2.exports.modify = require_modify2(); + module2.exports.modifyPath = require_modifyPath(); + module2.exports.modulo = require_modulo(); + module2.exports.move = require_move5(); + module2.exports.multiply = require_multiply(); + module2.exports.nAry = require_nAry(); + module2.exports.partialObject = require_partialObject(); + module2.exports.negate = require_negate(); + module2.exports.none = require_none(); + module2.exports.not = require_not2(); + module2.exports.nth = require_nth(); + module2.exports.nthArg = require_nthArg(); + module2.exports.o = require_o(); + module2.exports.objOf = require_objOf(); + module2.exports.of = require_of3(); + module2.exports.omit = require_omit(); + module2.exports.on = require_on(); + module2.exports.once = require_once2(); + module2.exports.or = require_or(); + module2.exports.otherwise = require_otherwise(); + module2.exports.over = require_over(); + module2.exports.pair = require_pair(); + module2.exports.partial = require_partial2(); + module2.exports.partialRight = require_partialRight(); + module2.exports.partition = require_partition4(); + module2.exports.path = require_path5(); + module2.exports.paths = require_paths(); + module2.exports.pathEq = require_pathEq(); + module2.exports.pathOr = require_pathOr(); + module2.exports.pathSatisfies = require_pathSatisfies(); + module2.exports.pick = require_pick(); + module2.exports.pickAll = require_pickAll(); + module2.exports.pickBy = require_pickBy(); + module2.exports.pipe = require_pipe4(); + module2.exports.pipeWith = require_pipeWith(); + module2.exports.pluck = require_pluck2(); + module2.exports.prepend = require_prepend(); + module2.exports.product = require_product(); + module2.exports.project = require_project2(); + module2.exports.promap = require_promap2(); + module2.exports.prop = require_prop(); + module2.exports.propEq = require_propEq(); + module2.exports.propIs = require_propIs(); + module2.exports.propOr = require_propOr(); + module2.exports.propSatisfies = require_propSatisfies(); + module2.exports.props = require_props(); + module2.exports.range = require_range3(); + module2.exports.reduce = require_reduce3(); + module2.exports.reduceBy = require_reduceBy(); + module2.exports.reduceRight = require_reduceRight(); + module2.exports.reduceWhile = require_reduceWhile(); + module2.exports.reduced = require_reduced2(); + module2.exports.reject = require_reject(); + module2.exports.remove = require_remove4(); + module2.exports.repeat = require_repeat2(); + module2.exports.replace = require_replace2(); + module2.exports.reverse = require_reverse2(); + module2.exports.scan = require_scan4(); + module2.exports.sequence = require_sequence(); + module2.exports.set = require_set4(); + module2.exports.slice = require_slice(); + module2.exports.sort = require_sort3(); + module2.exports.sortBy = require_sortBy(); + module2.exports.sortWith = require_sortWith(); + module2.exports.split = require_split(); + module2.exports.splitAt = require_splitAt(); + module2.exports.splitEvery = require_splitEvery(); + module2.exports.splitWhen = require_splitWhen(); + module2.exports.splitWhenever = require_splitWhenever(); + module2.exports.startsWith = require_startsWith(); + module2.exports.subtract = require_subtract(); + module2.exports.sum = require_sum(); + module2.exports.symmetricDifference = require_symmetricDifference(); + module2.exports.symmetricDifferenceWith = require_symmetricDifferenceWith(); + module2.exports.tail = require_tail(); + module2.exports.take = require_take2(); + module2.exports.takeLast = require_takeLast2(); + module2.exports.takeLastWhile = require_takeLastWhile(); + module2.exports.takeWhile = require_takeWhile2(); + module2.exports.tap = require_tap2(); + module2.exports.test = require_test(); + module2.exports.andThen = require_andThen(); + module2.exports.times = require_times(); + module2.exports.toLower = require_toLower(); + module2.exports.toPairs = require_toPairs(); + module2.exports.toPairsIn = require_toPairsIn(); + module2.exports.toString = require_toString3(); + module2.exports.toUpper = require_toUpper(); + module2.exports.transduce = require_transduce(); + module2.exports.transpose = require_transpose(); + module2.exports.traverse = require_traverse(); + module2.exports.trim = require_trim(); + module2.exports.tryCatch = require_tryCatch(); + module2.exports.type = require_type2(); + module2.exports.unapply = require_unapply(); + module2.exports.unary = require_unary(); + module2.exports.uncurryN = require_uncurryN(); + module2.exports.unfold = require_unfold(); + module2.exports.union = require_union(); + module2.exports.unionWith = require_unionWith(); + module2.exports.uniq = require_uniq(); + module2.exports.uniqBy = require_uniqBy(); + module2.exports.uniqWith = require_uniqWith(); + module2.exports.unless = require_unless(); + module2.exports.unnest = require_unnest(); + module2.exports.until = require_until(); + module2.exports.unwind = require_unwind(); + module2.exports.update = require_update3(); + module2.exports.useWith = require_useWith(); + module2.exports.values = require_values(); + module2.exports.valuesIn = require_valuesIn(); + module2.exports.view = require_view(); + module2.exports.when = require_when(); + module2.exports.where = require_where(); + module2.exports.whereAny = require_whereAny(); + module2.exports.whereEq = require_whereEq(); + module2.exports.without = require_without(); + module2.exports.xor = require_xor(); + module2.exports.xprod = require_xprod(); + module2.exports.zip = require_zip3(); + module2.exports.zipObj = require_zipObj(); + module2.exports.zipWith = require_zipWith2(); + module2.exports.thunkify = require_thunkify(); + } +}); + +// ../reviewing/plugin-commands-licenses/lib/outputRenderer.js +var require_outputRenderer = __commonJS({ + "../reviewing/plugin-commands-licenses/lib/outputRenderer.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var installDeps_1 = __importDefault(require_installDeps()); - function rcOptionsTypes() { - return pick_1.default([ - "child-concurrency", - "engine-strict", - "fetch-retries", - "fetch-retry-factor", - "fetch-retry-maxtimeout", - "fetch-retry-mintimeout", - "fetch-timeout", - "force", - "global-dir", - "global-pnpmfile", - "global", - "hoist", - "hoist-pattern", - "https-proxy", - "ignore-pnpmfile", - "ignore-scripts", - "ignore-workspace-root-check", - "link-workspace-packages", - "lockfile-dir", - "lockfile-directory", - "lockfile-only", - "lockfile", - "modules-dir", - "network-concurrency", - "noproxy", - "npmPath", - "package-import-method", - "pnpmfile", - "prefer-offline", - "production", - "proxy", - "public-hoist-pattern", - "registry", - "reporter", - "save-dev", - "save-exact", - "save-optional", - "save-peer", - "save-prod", - "save-workspace-protocol", - "shamefully-flatten", - "shamefully-hoist", - "shared-workspace-lockfile", - "side-effects-cache-readonly", - "side-effects-cache", - "store", - "store-dir", - "strict-peer-dependencies", - "unsafe-perm", - "offline", - "only", - "optional", - "use-running-store-server", - "use-store-server", - "verify-store-integrity", - "virtual-store-dir" - ], config_1.types); + exports2.renderLicences = void 0; + var cli_utils_1 = require_lib27(); + var chalk_1 = __importDefault4(require_source()); + var table_1 = require_src6(); + var ramda_1 = require_src11(); + function sortLicensesPackages(licensePackages) { + return (0, ramda_1.sortWith)([ + (o1, o2) => o1.license.localeCompare(o2.license) + ], licensePackages); } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { - return { - ...rcOptionsTypes(), - recursive: Boolean, - save: Boolean, - workspace: Boolean - }; + function renderPackageName({ belongsTo, name: packageName }) { + switch (belongsTo) { + case "devDependencies": + return `${packageName} ${chalk_1.default.dim("(dev)")}`; + case "optionalDependencies": + return `${packageName} ${chalk_1.default.dim("(optional)")}`; + default: + return packageName; + } } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["add"]; - function help() { - return render_help_1.default({ - description: "Installs a package and any packages that it depends on.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Save package to your `dependencies`. The default behavior", - name: "--save-prod", - shortAlias: "-P" - }, - { - description: "Save package to your `devDependencies`", - name: "--save-dev", - shortAlias: "-D" - }, - { - description: "Save package to your `optionalDependencies`", - name: "--save-optional", - shortAlias: "-O" - }, - { - description: "Save package to your `peerDependencies` and `devDependencies`", - name: "--save-peer" - }, - { - description: "Install exact version", - name: "--[no-]save-exact", - shortAlias: "-E" - }, - { - description: 'Save packages from the workspace with a "workspace:" protocol. True by default', - name: "--[no-]save-workspace-protocol" - }, - { - description: "Install as a global package", - name: "--global", - shortAlias: "-g" - }, - { - description: 'Run installation recursively in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - }, - { - description: "Only adds the new dependency if it is found in the workspace", - name: "--workspace" - }, - common_cli_options_help_1.OPTIONS.ignoreScripts, - common_cli_options_help_1.OPTIONS.offline, - common_cli_options_help_1.OPTIONS.preferOffline, - common_cli_options_help_1.OPTIONS.storeDir, - common_cli_options_help_1.OPTIONS.virtualStoreDir, - common_cli_options_help_1.OPTIONS.globalDir, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - }, - common_cli_options_help_1.FILTERING - ], - url: cli_utils_1.docsUrl("add"), - usages: [ - "pnpm add ", - "pnpm add @", - "pnpm add @", - "pnpm add @", - "pnpm add :/", - "pnpm add ", - "pnpm add ", - "pnpm add ", - "pnpm add " - ] - }); + function renderPackageLicense({ license }) { + const output = license ?? "Unknown"; + return output; } - exports2.help = help; - async function handler(opts, params) { - if (opts.cliOptions["save"] === false) { - throw new error_1.default("OPTION_NOT_SUPPORTED", 'The "add" command currently does not support the no-save option'); + function renderDetails(licensePackage) { + const outputs = []; + if (licensePackage.author) { + outputs.push(licensePackage.author); } - if (!params || params.length === 0) { - throw new error_1.default("MISSING_PACKAGE_NAME", "`pnpm add` requires the package name"); + if (licensePackage.description) { + outputs.push(licensePackage.description); } - if (!opts.recursive && opts.workspaceDir === opts.dir && !opts.ignoreWorkspaceRootCheck && !opts.workspaceRoot) { - throw new error_1.default("ADDING_TO_ROOT", "Running this command will add the dependency to the workspace root, which might not be what you want - if you really meant it, make it explicit by running this command again with the -w flag (or --workspace-root). If you don't want to see this warning anymore, you may set the ignore-workspace-root-check setting to true."); + if (licensePackage.homepage) { + outputs.push(licensePackage.homepage); + } + return outputs.join("\n"); + } + function renderLicences(licensesMap, opts) { + if (opts.json) { + return { output: renderLicensesJson(licensesMap), exitCode: 0 }; + } + return { output: renderLicensesTable(licensesMap, opts), exitCode: 0 }; + } + exports2.renderLicences = renderLicences; + function renderLicensesJson(licensePackages) { + const data = [ + ...licensePackages.map((licensePkg) => { + return { + name: licensePkg.name, + version: licensePkg.version, + path: licensePkg.path, + license: licensePkg.license, + licenseContents: licensePkg.licenseContents, + author: licensePkg.author, + homepage: licensePkg.homepage, + description: licensePkg.description + }; + }) + ].flat(); + const groupByLicense = (0, ramda_1.groupBy)((item) => item.license); + const groupedByLicense = groupByLicense(data); + return JSON.stringify(groupedByLicense, null, 2); + } + function renderLicensesTable(licensePackages, opts) { + const columnNames = ["Package", "License"]; + const columnFns = [renderPackageName, renderPackageLicense]; + if (opts.long) { + columnNames.push("Details"); + columnFns.push(renderDetails); + } + for (let i = 0; i < columnNames.length; i++) + columnNames[i] = chalk_1.default.blueBright(columnNames[i]); + return (0, table_1.table)([ + columnNames, + ...sortLicensesPackages(licensePackages).map((licensePkg) => { + return columnFns.map((fn2) => fn2(licensePkg)); + }) + ], cli_utils_1.TABLE_OPTIONS); + } + } +}); + +// ../reviewing/plugin-commands-licenses/lib/licensesList.js +var require_licensesList = __commonJS({ + "../reviewing/plugin-commands-licenses/lib/licensesList.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.licensesList = void 0; + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var store_path_1 = require_lib66(); + var constants_1 = require_lib7(); + var lockfile_file_1 = require_lib87(); + var license_scanner_1 = require_lib150(); + var outputRenderer_1 = require_outputRenderer(); + async function licensesList(opts) { + const lockfile = await (0, lockfile_file_1.readWantedLockfile)(opts.lockfileDir ?? opts.dir, { + ignoreIncompatible: true + }); + if (lockfile == null) { + throw new error_1.PnpmError("LICENSES_NO_LOCKFILE", `No ${constants_1.WANTED_LOCKFILE} found: Cannot check a project without a lockfile`); } const include = { dependencies: opts.production !== false, devDependencies: opts.dev !== false, optionalDependencies: opts.optional !== false }; - return installDeps_1.default({ - ...opts, + const manifest = await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, {}); + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + const licensePackages = await (0, license_scanner_1.findDependencyLicenses)({ include, - includeDirect: include - }, params); + lockfileDir: opts.dir, + storeDir, + virtualStoreDir: opts.virtualStoreDir ?? ".", + modulesDir: opts.modulesDir, + registries: opts.registries, + wantedLockfile: lockfile, + manifest + }); + if (licensePackages.length === 0) + return { output: "No licenses in packages found", exitCode: 0 }; + return (0, outputRenderer_1.renderLicences)(licensePackages, opts); } - exports2.handler = handler; + exports2.licensesList = licensesList; } }); -// ../plugin-commands-installation/lib/install.js -var require_install2 = __commonJS({ - "../plugin-commands-installation/lib/install.js"(exports2) { +// ../reviewing/plugin-commands-licenses/lib/licenses.js +var require_licenses2 = __commonJS({ + "../reviewing/plugin-commands-licenses/lib/licenses.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var constants_1 = require_lib7(); - var is_ci_1 = __importDefault(require_is_ci()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var installDeps_1 = __importDefault(require_installDeps()); + exports2.handler = exports2.completion = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var licensesList_1 = require_licensesList(); function rcOptionsTypes() { - return pick_1.default([ - "child-concurrency", - "dev", - "engine-strict", - "fetch-retries", - "fetch-retry-factor", - "fetch-retry-maxtimeout", - "fetch-retry-mintimeout", - "fetch-timeout", - "frozen-lockfile", - "global-dir", - "global-pnpmfile", - "global", - "hoist", - "hoist-pattern", - "https-proxy", - "ignore-pnpmfile", - "ignore-scripts", - "link-workspace-packages", - "lockfile-dir", - "lockfile-directory", - "lockfile-only", - "lockfile", - "modules-dir", - "network-concurrency", - "noproxy", - "package-import-method", - "pnpmfile", - "prefer-frozen-lockfile", - "prefer-offline", - "production", - "proxy", - "public-hoist-pattern", - "registry", - "reporter", - "save-workspace-protocol", - "shamefully-flatten", - "shamefully-hoist", - "shared-workspace-lockfile", - "side-effects-cache-readonly", - "side-effects-cache", - "store", - "store-dir", - "strict-peer-dependencies", - "offline", - "only", - "optional", - "unsafe-perm", - "use-running-store-server", - "use-store-server", - "verify-store-integrity", - "virtual-store-dir" - ], config_1.types); + return { + ...(0, pick_1.default)(["dev", "global-dir", "global", "json", "long", "optional", "production"], config_1.types), + compatible: Boolean, + table: Boolean + }; } exports2.rcOptionsTypes = rcOptionsTypes; var cliOptionsTypes = () => ({ ...rcOptionsTypes(), - ...pick_1.default(["force"], config_1.types), - "fix-lockfile": Boolean, recursive: Boolean }); exports2.cliOptionsTypes = cliOptionsTypes; @@ -124379,710 +215234,402 @@ var require_install2 = __commonJS({ D: "--dev", P: "--production" }; - exports2.commandNames = ["install", "i"]; + exports2.commandNames = ["licenses"]; function help() { - return render_help_1.default({ - aliases: ["i"], - description: "Installs all dependencies of the project in the current working directory. When executed inside a workspace, installs all dependencies of all projects.", + return (0, render_help_1.default)({ + description: "Check the licenses of the installed packages.", descriptionLists: [ { title: "Options", list: [ { - description: 'Run installation recursively in every package found in subdirectories. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" + description: "Show more details (such as a link to the repo) are not displayed. To display the details, pass this option.", + name: "--long" }, - common_cli_options_help_1.OPTIONS.ignoreScripts, - common_cli_options_help_1.OPTIONS.offline, - common_cli_options_help_1.OPTIONS.preferOffline, - common_cli_options_help_1.OPTIONS.globalDir, { - description: "Packages in `devDependencies` won't be installed", + description: "Show information in JSON format", + name: "--json" + }, + { + description: 'Check only "dependencies" and "optionalDependencies"', name: "--prod", shortAlias: "-P" }, { - description: "Only `devDependencies` are installed regardless of the `NODE_ENV`", + description: 'Check only "devDependencies"', name: "--dev", shortAlias: "-D" }, { - description: "`optionalDependencies` are not installed", + description: `Don't check "optionalDependencies"`, name: "--no-optional" - }, - { - description: `Don't read or generate a \`${constants_1.WANTED_LOCKFILE}\` file`, - name: "--no-lockfile" - }, - { - description: `Dependencies are not downloaded. Only \`${constants_1.WANTED_LOCKFILE}\` is updated`, - name: "--lockfile-only" - }, - { - description: "Don't generate a lockfile and fail if an update is needed", - name: "--frozen-lockfile" - }, - { - description: `If the available \`${constants_1.WANTED_LOCKFILE}\` satisfies the \`package.json\` then perform a headless installation`, - name: "--prefer-frozen-lockfile" - }, - { - description: `The directory in which the ${constants_1.WANTED_LOCKFILE} of the package will be created. Several projects may share a single lockfile.`, - name: "--lockfile-dir " - }, - { - description: "Fix broken lockfile entries automatically", - name: "--fix-lockfile" - }, - { - description: "The directory in which dependencies will be installed (instead of node_modules)", - name: "--modules-dir " - }, - { - description: "Dependencies inside the modules directory will have access only to their listed dependencies", - name: "--no-hoist" - }, - { - description: "All the subdeps will be hoisted into the root node_modules. Your code will have access to them", - name: "--shamefully-hoist" - }, - { - description: "Hoist all dependencies matching the pattern to `node_modules/.pnpm/node_modules`. The default pattern is * and matches everything. Hoisted packages can be required by any dependencies, so it is an emulation of a flat node_modules", - name: "--hoist-pattern " - }, - { - description: "Hoist all dependencies matching the pattern to the root of the modules directory", - name: "--public-hoist-pattern " - }, - common_cli_options_help_1.OPTIONS.storeDir, - common_cli_options_help_1.OPTIONS.virtualStoreDir, - { - description: "Maximum number of concurrent network requests", - name: "--network-concurrency " - }, - { - description: "Controls the number of child processes run parallelly to build node modules", - name: "--child-concurrency " - }, - { - description: "Disable pnpm hooks defined in .pnpmfile.cjs", - name: "--ignore-pnpmfile" - }, - { - description: "If false, doesn't check whether packages in the store were mutated", - name: "--[no-]verify-store-integrity" - }, - { - description: "Fail on missing or invalid peer dependencies", - name: "--strict-peer-dependencies" - }, - { - description: "Starts a store server in the background. The store server will keep running after installation is done. To stop the store server, run `pnpm server stop`", - name: "--use-store-server" - }, - { - description: "Only allows installation with a store server. If no store server is running, installation will fail", - name: "--use-running-store-server" - }, - { - description: "Clones/hardlinks or copies packages. The selected method depends from the file system", - name: "--package-import-method auto" - }, - { - description: "Hardlink packages from the store", - name: "--package-import-method hardlink" - }, - { - description: "Copy packages from the store", - name: "--package-import-method copy" - }, - { - description: "Clone (aka copy-on-write) packages from the store", - name: "--package-import-method clone" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - }, - { - title: "Output", - list: [ - { - description: "No output is logged to the console, except fatal errors", - name: "--silent, --reporter silent", - shortAlias: "-s" - }, - { - description: "The default reporter when the stdout is TTY", - name: "--reporter default" - }, - { - description: "The output is always appended to the end. No cursor manipulations are performed", - name: "--reporter append-only" - }, - { - description: "The most verbose reporter. Prints all logs in ndjson format", - name: "--reporter ndjson" - } - ] - }, - common_cli_options_help_1.FILTERING, - { - title: "Experimental options", - list: [ - { - description: "Use or cache the results of (pre/post)install hooks", - name: "--side-effects-cache" - }, - { - description: "Only use the side effects cache if present, do not create it for new packages", - name: "--side-effects-cache-readonly" } ] } ], - url: cli_utils_1.docsUrl("install"), - usages: ["pnpm install [options]"] + url: (0, cli_utils_1.docsUrl)("licenses"), + usages: [ + "pnpm licenses ls", + "pnpm licenses list", + "pnpm licenses list --long" + ] }); } exports2.help = help; - async function handler(opts) { - const include = { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.optional !== false - }; - return installDeps_1.default({ - ...opts, - frozenLockfileIfExists: is_ci_1.default && typeof opts.rawLocalConfig["frozen-lockfile"] === "undefined" && typeof opts.rawLocalConfig["prefer-frozen-lockfile"] === "undefined", - include, - includeDirect: include - }, []); - } - exports2.handler = handler; - } -}); - -// ../plugin-commands-installation/lib/fetch.js -var require_fetch3 = __commonJS({ - "../plugin-commands-installation/lib/fetch.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var completion = async (cliOpts) => { + return (0, cli_utils_1.readDepNameCompletions)(cliOpts.dir); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - exports2.rcOptionsTypes = cliOptionsTypes; - function cliOptionsTypes() { - return pick_1.default([ - "production", - "dev" - ], config_1.types); - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["fetch"]; - function help() { - return render_help_1.default({ - description: "Fetch packages from a lockfile into virtual store, package manifest is ignored. WARNING! This is an experimental command. Breaking changes may be introduced in non-major versions of the CLI", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Only development packages will be fetched", - name: "--dev" - }, - { - description: "Development packages will not be fetched", - name: "--prod" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - } - ], - url: cli_utils_1.docsUrl("fetch"), - usages: ["pnpm fetch [--dev | --prod]"] - }); - } - exports2.help = help; - async function handler(opts) { - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const include = { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.production !== false - }; - return supi_1.mutateModules([ - { - buildIndex: 0, - manifest: {}, - mutation: "install", - pruneDirectDependencies: true, - rootDir: process.cwd() + exports2.completion = completion; + async function handler(opts, params = []) { + if (params.length === 0) { + throw new error_1.PnpmError("LICENCES_NO_SUBCOMMAND", "Please specify the subcommand", { + hint: help() + }); + } + switch (params[0]) { + case "list": + case "ls": + return (0, licensesList_1.licensesList)(opts); + default: { + throw new error_1.PnpmError("LICENSES_UNKNOWN_SUBCOMMAND", "This subcommand is not known"); } - ], { - ...opts, - ignorePackageManifest: true, - include, - modulesCacheMaxAge: 0, - pruneStore: true, - storeController: store.ctrl, - storeDir: store.dir - }); - } - exports2.handler = handler; - } -}); - -// ../find-workspace-dir/lib/index.js -var require_lib94 = __commonJS({ - "../find-workspace-dir/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var find_up_1 = __importDefault(require_find_up()); - var WORKSPACE_DIR_ENV_VAR = "NPM_CONFIG_WORKSPACE_DIR"; - var WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml"; - async function findWorkspaceDir(cwd) { - var _a; - const workspaceManifestDirEnvVar = (_a = process.env[WORKSPACE_DIR_ENV_VAR]) !== null && _a !== void 0 ? _a : process.env[WORKSPACE_DIR_ENV_VAR.toLowerCase()]; - const workspaceManifestLocation = workspaceManifestDirEnvVar ? path_1.default.join(workspaceManifestDirEnvVar, "pnpm-workspace.yaml") : await find_up_1.default([WORKSPACE_MANIFEST_FILENAME, "pnpm-workspace.yml"], { cwd }); - if (workspaceManifestLocation === null || workspaceManifestLocation === void 0 ? void 0 : workspaceManifestLocation.endsWith(".yml")) { - throw new error_1.default("BAD_WORKSPACE_MANIFEST_NAME", `The workspace manifest file should be named "pnpm-workspace.yaml". File found: ${workspaceManifestLocation}`); } - return workspaceManifestLocation && path_1.default.dirname(workspaceManifestLocation); } - exports2.default = findWorkspaceDir; + exports2.handler = handler; } }); -// ../plugin-commands-installation/lib/link.js -var require_link3 = __commonJS({ - "../plugin-commands-installation/lib/link.js"(exports2) { +// ../reviewing/plugin-commands-licenses/lib/index.js +var require_lib151 = __commonJS({ + "../reviewing/plugin-commands-licenses/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var find_workspace_dir_1 = __importDefault(require_lib94()); - var find_workspace_packages_1 = __importStar2(require_lib22()); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var p_limit_1 = __importDefault(require_p_limit()); - var path_absolute_1 = __importDefault(require_path_absolute()); - var pick_1 = __importDefault(require_pick()); - var partition_1 = __importDefault(require_partition4()); - var render_help_1 = __importDefault(require_lib30()); - var installCommand = __importStar2(require_install2()); - var getSaveType_1 = __importDefault(require_getSaveType()); - var isWindows = process.platform === "win32" || global["FAKE_WINDOWS"]; - var isFilespec = isWindows ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/; - var installLimit = p_limit_1.default(4); - exports2.rcOptionsTypes = cliOptionsTypes; - function cliOptionsTypes() { - return pick_1.default([ - "global-dir", - "global", - "only", - "package-import-method", - "production", - "registry", - "reporter", - "save-dev", - "save-exact", - "save-optional", - "unsafe-perm" - ], config_1.types); - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["link", "ln"]; - function help() { - return render_help_1.default({ - aliases: ["ln"], - descriptionLists: [ - { - title: "Options", - list: [ - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - } - ], - url: cli_utils_1.docsUrl("link"), - usages: [ - "pnpm link (in package dir)", - "pnpm link ", - "pnpm link " - ] - }); + exports2.licenses = void 0; + var licenses = __importStar5(require_licenses2()); + exports2.licenses = licenses; + } +}); + +// ../reviewing/plugin-commands-outdated/lib/utils.js +var require_utils17 = __commonJS({ + "../reviewing/plugin-commands-outdated/lib/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sortBySemverChange = exports2.DEFAULT_COMPARATORS = void 0; + exports2.DEFAULT_COMPARATORS = [ + sortBySemverChange, + (o1, o2) => o1.packageName.localeCompare(o2.packageName), + (o1, o2) => o1.current && o2.current ? o1.current.localeCompare(o2.current) : 0 + ]; + function sortBySemverChange(outdated1, outdated2) { + return pkgPriority(outdated1) - pkgPriority(outdated2); } - exports2.help = help; - async function handler(opts, params) { - const cwd = process.cwd(); - const storeControllerCache = new Map(); - let workspacePackagesArr; - let workspacePackages; - if (opts.workspaceDir) { - workspacePackagesArr = await find_workspace_packages_1.default(opts.workspaceDir, opts); - workspacePackages = find_workspace_packages_1.arrayOfWorkspacePackagesToMap(workspacePackagesArr); - } else { - workspacePackages = {}; - } - const store = await store_connection_manager_1.createOrConnectStoreControllerCached(storeControllerCache, opts); - const linkOpts = Object.assign(opts, { - storeController: store.ctrl, - storeDir: store.dir, - targetDependenciesField: getSaveType_1.default(opts), - workspacePackages - }); - if (params == null || params.length === 0) { - if (path_1.default.relative(linkOpts.dir, cwd) === "") { - throw new error_1.default("LINK_BAD_PARAMS", "You must provide a parameter"); - } - const { manifest: manifest2, writeProjectManifest: writeProjectManifest2 } = await cli_utils_1.tryReadProjectManifest(opts.dir, opts); - const newManifest2 = await supi_1.linkToGlobal(cwd, { - ...linkOpts, - dir: cwd, - globalBin: linkOpts.bin, - globalDir: linkOpts.dir, - manifest: manifest2 !== null && manifest2 !== void 0 ? manifest2 : {} - }); - await writeProjectManifest2(newManifest2); - return; - } - const [pkgPaths, pkgNames] = partition_1.default((inp) => isFilespec.test(inp), params); - await Promise.all(pkgPaths.map(async (dir) => installLimit(async () => { - const s = await store_connection_manager_1.createOrConnectStoreControllerCached(storeControllerCache, opts); - const config = await cli_utils_1.getConfig({ ...opts.cliOptions, dir }, { - excludeReporter: true, - rcOptionsTypes: installCommand.rcOptionsTypes(), - workspaceDir: await find_workspace_dir_1.default(dir) - }); - await supi_1.install(await cli_utils_1.readProjectManifestOnly(dir, opts), { - ...config, - include: { - dependencies: config.production !== false, - devDependencies: config.dev !== false, - optionalDependencies: config.optional !== false - }, - storeController: s.ctrl, - storeDir: s.dir, - workspacePackages - }); - }))); - if (pkgNames.length > 0) { - let globalPkgNames; - if (opts.workspaceDir) { - workspacePackagesArr = await find_workspace_packages_1.default(opts.workspaceDir, opts); - const pkgsFoundInWorkspace = workspacePackagesArr.filter(({ manifest: manifest2 }) => manifest2.name && pkgNames.includes(manifest2.name)); - pkgsFoundInWorkspace.forEach((pkgFromWorkspace) => pkgPaths.push(pkgFromWorkspace.dir)); - if (pkgsFoundInWorkspace.length > 0 && !linkOpts.targetDependenciesField) { - linkOpts.targetDependenciesField = "dependencies"; - } - globalPkgNames = pkgNames.filter((pkgName) => !pkgsFoundInWorkspace.some((pkgFromWorkspace) => pkgFromWorkspace.manifest.name === pkgName)); - } else { - globalPkgNames = pkgNames; - } - const globalPkgPath = path_absolute_1.default(opts.dir); - globalPkgNames.forEach((pkgName) => pkgPaths.push(path_1.default.join(globalPkgPath, "node_modules", pkgName))); + exports2.sortBySemverChange = sortBySemverChange; + function pkgPriority(pkg) { + switch (pkg.change) { + case null: + return 0; + case "fix": + return 1; + case "feature": + return 2; + case "breaking": + return 3; + default: + return 4; } - const { manifest, writeProjectManifest } = await cli_utils_1.readProjectManifest(cwd, opts); - const linkConfig = await cli_utils_1.getConfig({ ...opts.cliOptions, dir: cwd }, { - excludeReporter: true, - rcOptionsTypes: installCommand.rcOptionsTypes(), - workspaceDir: await find_workspace_dir_1.default(cwd) - }); - const storeL = await store_connection_manager_1.createOrConnectStoreControllerCached(storeControllerCache, linkConfig); - const newManifest = await supi_1.link(pkgPaths, path_1.default.join(cwd, "node_modules"), { - ...linkConfig, - targetDependenciesField: linkOpts.targetDependenciesField, - storeController: storeL.ctrl, - storeDir: storeL.dir, - manifest - }); - await writeProjectManifest(newManifest); - await Promise.all(Array.from(storeControllerCache.values()).map(async (storeControllerPromise) => { - const storeControllerHolder = await storeControllerPromise; - await storeControllerHolder.ctrl.close(); - })); } - exports2.handler = handler; } }); -// ../plugin-commands-installation/lib/prune.js -var require_prune3 = __commonJS({ - "../plugin-commands-installation/lib/prune.js"(exports2) { +// ../reviewing/plugin-commands-outdated/lib/recursive.js +var require_recursive4 = __commonJS({ + "../reviewing/plugin-commands-outdated/lib/recursive.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - exports2.rcOptionsTypes = cliOptionsTypes; - function cliOptionsTypes() { - return pick_1.default([ - "dev", - "optional", - "production" - ], config_1.types); + exports2.outdatedRecursive = void 0; + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var outdated_1 = require_lib143(); + var table_1 = require_src6(); + var chalk_1 = __importDefault4(require_source()); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var sortWith_1 = __importDefault4(require_sortWith()); + var outdated_2 = require_outdated2(); + var utils_1 = require_utils17(); + var DEP_PRIORITY = { + dependencies: 1, + devDependencies: 2, + optionalDependencies: 0 + }; + var COMPARATORS = [ + ...utils_1.DEFAULT_COMPARATORS, + (o1, o2) => DEP_PRIORITY[o1.belongsTo] - DEP_PRIORITY[o2.belongsTo] + ]; + async function outdatedRecursive(pkgs, params, opts) { + const outdatedMap = {}; + const rootManifest = pkgs.find(({ dir }) => dir === opts.lockfileDir); + const outdatedPackagesByProject = await (0, outdated_1.outdatedDepsOfProjects)(pkgs, params, { + ...opts, + fullMetadata: opts.long, + ignoreDependencies: rootManifest?.manifest?.pnpm?.updateConfig?.ignoreDependencies, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + timeout: opts.fetchTimeout + }); + for (let i = 0; i < outdatedPackagesByProject.length; i++) { + const { dir, manifest } = pkgs[i]; + outdatedPackagesByProject[i].forEach((outdatedPkg) => { + const key = JSON.stringify([outdatedPkg.packageName, outdatedPkg.current, outdatedPkg.belongsTo]); + if (!outdatedMap[key]) { + outdatedMap[key] = { ...outdatedPkg, dependentPkgs: [] }; + } + outdatedMap[key].dependentPkgs.push({ location: dir, manifest }); + }); + } + let output; + switch (opts.format ?? "table") { + case "table": { + output = renderOutdatedTable(outdatedMap, opts); + break; + } + case "list": { + output = renderOutdatedList(outdatedMap, opts); + break; + } + case "json": { + output = renderOutdatedJSON(outdatedMap, opts); + break; + } + default: { + throw new error_1.PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts.format?.toString() ?? "undefined"}`); + } + } + return { + output, + exitCode: (0, isEmpty_1.default)(outdatedMap) ? 0 : 1 + }; } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["prune"]; - function help() { - return render_help_1.default({ - description: "Removes extraneous packages", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Remove the packages specified in `devDependencies`", - name: "--prod" - }, - { - description: "Remove the packages specified in `optionalDependencies`", - name: "--no-optional" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] + exports2.outdatedRecursive = outdatedRecursive; + function renderOutdatedTable(outdatedMap, opts) { + if ((0, isEmpty_1.default)(outdatedMap)) + return ""; + const columnNames = [ + "Package", + "Current", + "Latest", + "Dependents" + ]; + const columnFns = [ + outdated_2.renderPackageName, + outdated_2.renderCurrent, + outdated_2.renderLatest, + dependentPackages + ]; + if (opts.long) { + columnNames.push("Details"); + columnFns.push(outdated_2.renderDetails); + } + for (let i = 0; i < columnNames.length; i++) + columnNames[i] = chalk_1.default.blueBright(columnNames[i]); + const data = [ + columnNames, + ...sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => columnFns.map((fn2) => fn2(outdatedPkg))) + ]; + return (0, table_1.table)(data, { + ...cli_utils_1.TABLE_OPTIONS, + columns: { + ...cli_utils_1.TABLE_OPTIONS.columns, + // Dependents column: + 3: { + width: (0, outdated_2.getCellWidth)(data, 3, 30), + wrapWord: true } - ], - url: cli_utils_1.docsUrl("prune"), - usages: ["pnpm prune [--prod]"] + } }); } - exports2.help = help; - async function handler(opts) { - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - return supi_1.mutateModules([ - { - buildIndex: 0, - manifest: await cli_utils_1.readProjectManifestOnly(process.cwd(), opts), - mutation: "install", - pruneDirectDependencies: true, - rootDir: process.cwd() + function renderOutdatedList(outdatedMap, opts) { + if ((0, isEmpty_1.default)(outdatedMap)) + return ""; + return sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => { + let info = `${chalk_1.default.bold((0, outdated_2.renderPackageName)(outdatedPkg))} +${(0, outdated_2.renderCurrent)(outdatedPkg)} ${chalk_1.default.grey("=>")} ${(0, outdated_2.renderLatest)(outdatedPkg)}`; + const dependents = dependentPackages(outdatedPkg); + if (dependents) { + info += ` +${chalk_1.default.bold(outdatedPkg.dependentPkgs.length > 1 ? "Dependents:" : "Dependent:")} ${dependents}`; } - ], { - ...opts, - include: { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.optional !== false - }, - modulesCacheMaxAge: 0, - pruneStore: true, - storeController: store.ctrl, - storeDir: store.dir - }); + if (opts.long) { + const details = (0, outdated_2.renderDetails)(outdatedPkg); + if (details) { + info += ` +${details}`; + } + } + return info; + }).join("\n\n") + "\n"; + } + function renderOutdatedJSON(outdatedMap, opts) { + const outdatedPackagesJSON = sortOutdatedPackages(Object.values(outdatedMap)).reduce((acc, outdatedPkg) => { + acc[outdatedPkg.packageName] = { + current: outdatedPkg.current, + latest: outdatedPkg.latestManifest?.version, + wanted: outdatedPkg.wanted, + isDeprecated: Boolean(outdatedPkg.latestManifest?.deprecated), + dependencyType: outdatedPkg.belongsTo, + dependentPackages: outdatedPkg.dependentPkgs.map(({ manifest, location }) => ({ name: manifest.name, location })) + }; + if (opts.long) { + acc[outdatedPkg.packageName].latestManifest = outdatedPkg.latestManifest; + } + return acc; + }, {}); + return JSON.stringify(outdatedPackagesJSON, null, 2); + } + function dependentPackages({ dependentPkgs }) { + return dependentPkgs.map(({ manifest, location }) => manifest.name ?? location).sort().join(", "); + } + function sortOutdatedPackages(outdatedPackages) { + return (0, sortWith_1.default)(COMPARATORS, outdatedPackages.map(outdated_2.toOutdatedWithVersionDiff)); } - exports2.handler = handler; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/flip.js -var require_flip = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/flip.js"(exports2, module2) { - var _curry1 = require_curry1(); - var curryN = require_curryN2(); - var flip = /* @__PURE__ */ _curry1(function flip2(fn2) { - return curryN(fn2.length, function(a, b) { - var args2 = Array.prototype.slice.call(arguments, 0); - args2[0] = b; - args2[1] = a; - return fn2.apply(this, args2); - }); - }); - module2.exports = flip; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/without.js -var require_without = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/without.js"(exports2, module2) { - var _includes = require_includes(); - var _curry2 = require_curry2(); - var flip = require_flip(); - var reject = require_reject(); - var without = /* @__PURE__ */ _curry2(function(xs, list) { - return reject(flip(_includes)(xs), list); - }); - module2.exports = without; } }); -// ../plugin-commands-installation/lib/remove.js -var require_remove = __commonJS({ - "../plugin-commands-installation/lib/remove.js"(exports2) { +// ../reviewing/plugin-commands-outdated/lib/outdated.js +var require_outdated2 = __commonJS({ + "../reviewing/plugin-commands-outdated/lib/outdated.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.completion = exports2.commandNames = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var find_workspace_packages_1 = __importStar2(require_lib22()); - var manifest_utils_1 = require_lib15(); - var pnpmfile_1 = require_lib91(); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var pick_1 = __importDefault(require_pick()); - var without_1 = __importDefault(require_without()); - var render_help_1 = __importDefault(require_lib30()); - var getSaveType_1 = __importDefault(require_getSaveType()); - var recursive_1 = __importDefault(require_recursive2()); - var RemoveMissingDepsError = class extends error_1.default { - constructor(opts) { - let message2 = "Cannot remove "; - message2 += `${opts.nonMatchedDependencies.map((dep) => `'${dep}'`).join(", ")}: `; - if (opts.availableDependencies.length > 0) { - message2 += `no such ${opts.nonMatchedDependencies.length > 1 ? "dependencies" : "dependency"} `; - message2 += `found${opts.targetDependenciesField ? ` in '${opts.targetDependenciesField}'` : ""}`; - const hint = `Available dependencies: ${opts.availableDependencies.join(", ")}`; - super("CANNOT_REMOVE_MISSING_DEPS", message2, { hint }); - return; - } - message2 += opts.targetDependenciesField ? `project has no '${opts.targetDependenciesField}'` : "project has no dependencies of any kind"; - super("CANNOT_REMOVE_MISSING_DEPS", message2); - } - }; + exports2.renderDetails = exports2.renderLatest = exports2.renderCurrent = exports2.renderPackageName = exports2.toOutdatedWithVersionDiff = exports2.getCellWidth = exports2.handler = exports2.completion = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var colorize_semver_diff_1 = __importDefault4(require_lib144()); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var outdated_1 = require_lib143(); + var semver_diff_1 = __importDefault4(require_lib145()); + var table_1 = require_src6(); + var chalk_1 = __importDefault4(require_source()); + var pick_1 = __importDefault4(require_pick()); + var sortWith_1 = __importDefault4(require_sortWith()); + var render_help_1 = __importDefault4(require_lib34()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var wrap_ansi_1 = __importDefault4(require_wrap_ansi()); + var utils_1 = require_utils17(); + var recursive_1 = require_recursive4(); function rcOptionsTypes() { - return pick_1.default([ - "global-dir", - "global-pnpmfile", - "global", - "lockfile-dir", - "lockfile-directory", - "lockfile-only", - "lockfile", - "package-import-method", - "pnpmfile", - "reporter", - "save-dev", - "save-optional", - "save-prod", - "shared-workspace-lockfile", - "store", - "store-dir", - "virtual-store-dir" - ], config_1.types); + return { + ...(0, pick_1.default)([ + "depth", + "dev", + "global-dir", + "global", + "long", + "optional", + "production" + ], config_1.types), + compatible: Boolean, + format: ["table", "list", "json"] + }; } exports2.rcOptionsTypes = rcOptionsTypes; var cliOptionsTypes = () => ({ ...rcOptionsTypes(), - ...pick_1.default(["force"], config_1.types), recursive: Boolean }); exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + D: "--dev", + P: "--production", + table: "--format=table", + "no-table": "--format=list", + json: "--format=json" + }; + exports2.commandNames = ["outdated"]; function help() { - return render_help_1.default({ - aliases: ["rm", "uninstall", "un"], - description: "Removes packages from `node_modules` and from the project's `package.json`.", + return (0, render_help_1.default)({ + description: `Check for outdated packages. The check can be limited to a subset of the installed packages by providing arguments (patterns are supported). + +Examples: +pnpm outdated +pnpm outdated --long +pnpm outdated gulp-* @babel/core`, descriptionLists: [ { title: "Options", list: [ { - description: 'Remove from every package found in subdirectories or from every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + description: "Print only versions that satisfy specs in package.json", + name: "--compatible" + }, + { + description: "By default, details about the outdated packages (such as a link to the repo) are not displayed. To display the details, pass this option.", + name: "--long" + }, + { + description: 'Check for outdated dependencies in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', name: "--recursive", shortAlias: "-r" }, { - description: 'Remove the dependency only from "devDependencies"', - name: "--save-dev", - shortAlias: "-D" + description: "Prints the outdated packages in a list. Good for small consoles", + name: "--no-table" }, { - description: 'Remove the dependency only from "optionalDependencies"', - name: "--save-optional", - shortAlias: "-O" + description: 'Check only "dependencies" and "optionalDependencies"', + name: "--prod", + shortAlias: "-P" }, { - description: 'Remove the dependency only from "dependencies"', - name: "--save-prod", - shortAlias: "-P" + description: 'Check only "devDependencies"', + name: "--dev", + shortAlias: "-D" + }, + { + description: `Don't check "optionalDependencies"`, + name: "--no-optional" }, common_cli_options_help_1.OPTIONS.globalDir, ...common_cli_options_help_1.UNIVERSAL_OPTIONS @@ -125090,5655 +215637,6310 @@ var require_remove = __commonJS({ }, common_cli_options_help_1.FILTERING ], - url: cli_utils_1.docsUrl("remove"), - usages: ["pnpm remove [@]..."] + url: (0, cli_utils_1.docsUrl)("outdated"), + usages: ["pnpm outdated [ ...]"] }); } exports2.help = help; - exports2.commandNames = ["remove", "uninstall", "rm", "un"]; - var completion = async (cliOpts, params) => { - return cli_utils_1.readDepNameCompletions(cliOpts.dir); + var completion = async (cliOpts) => { + return (0, cli_utils_1.readDepNameCompletions)(cliOpts.dir); }; exports2.completion = completion; - async function handler(opts, params) { - var _a, _b; - if (params.length === 0) - throw new error_1.default("MUST_REMOVE_SOMETHING", "At least one dependency name should be specified for removal"); + async function handler(opts, params = []) { const include = { dependencies: opts.production !== false, devDependencies: opts.dev !== false, optionalDependencies: opts.optional !== false }; - if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { - await recursive_1.default(opts.allProjects, params, { ...opts, include, selectedProjectsGraph: opts.selectedProjectsGraph, workspaceDir: opts.workspaceDir }, "remove"); - return; - } - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const removeOpts = Object.assign(opts, { - storeController: store.ctrl, - storeDir: store.dir, - include - }); - if (!opts.ignorePnpmfile) { - removeOpts["hooks"] = pnpmfile_1.requireHooks((_a = opts.lockfileDir) !== null && _a !== void 0 ? _a : opts.dir, opts); - } - removeOpts["workspacePackages"] = opts.workspaceDir ? find_workspace_packages_1.arrayOfWorkspacePackagesToMap(await find_workspace_packages_1.default(opts.workspaceDir, opts)) : void 0; - const targetDependenciesField = getSaveType_1.default(opts); - const { manifest: currentManifest, writeProjectManifest } = await cli_utils_1.readProjectManifest(opts.dir, opts); - const availableDependencies = Object.keys(targetDependenciesField === void 0 ? manifest_utils_1.getAllDependenciesFromManifest(currentManifest) : (_b = currentManifest[targetDependenciesField]) !== null && _b !== void 0 ? _b : {}); - const nonMatchedDependencies = without_1.default(availableDependencies, params); - if (nonMatchedDependencies.length !== 0) { - throw new RemoveMissingDepsError({ - availableDependencies, - nonMatchedDependencies, - targetDependenciesField - }); + if (opts.recursive && opts.selectedProjectsGraph != null) { + const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); + return (0, recursive_1.outdatedRecursive)(pkgs, params, { ...opts, include }); } - const [mutationResult] = await supi_1.mutateModules([ + const manifest = await (0, cli_utils_1.readProjectManifestOnly)(opts.dir, opts); + const packages = [ { - binsDir: opts.bin, - dependencyNames: params, - manifest: currentManifest, - mutation: "uninstallSome", - rootDir: opts.dir, - targetDependenciesField + dir: opts.dir, + manifest } - ], removeOpts); - await writeProjectManifest(mutationResult.manifest); + ]; + const [outdatedPackages] = await (0, outdated_1.outdatedDepsOfProjects)(packages, params, { + ...opts, + fullMetadata: opts.long, + ignoreDependencies: manifest?.pnpm?.updateConfig?.ignoreDependencies, + include, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + timeout: opts.fetchTimeout + }); + let output; + switch (opts.format ?? "table") { + case "table": { + output = renderOutdatedTable(outdatedPackages, opts); + break; + } + case "list": { + output = renderOutdatedList(outdatedPackages, opts); + break; + } + case "json": { + output = renderOutdatedJSON(outdatedPackages, opts); + break; + } + default: { + throw new error_1.PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts.format?.toString() ?? "undefined"}`); + } + } + return { + output, + exitCode: outdatedPackages.length === 0 ? 0 : 1 + }; } exports2.handler = handler; - } -}); - -// ../plugin-commands-installation/lib/unlink.js -var require_unlink = __commonJS({ - "../plugin-commands-installation/lib/unlink.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.rcOptionsTypes = exports2.cliOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var store_connection_manager_1 = require_lib63(); - var supi_1 = require_lib88(); - var render_help_1 = __importDefault(require_lib30()); - var install_1 = require_install2(); - Object.defineProperty(exports2, "cliOptionsTypes", { enumerable: true, get: function() { - return install_1.cliOptionsTypes; - } }); - Object.defineProperty(exports2, "rcOptionsTypes", { enumerable: true, get: function() { - return install_1.rcOptionsTypes; - } }); - var recursive_1 = __importDefault(require_recursive2()); - exports2.commandNames = ["unlink", "dislink"]; - function help() { - return render_help_1.default({ - aliases: ["dislink"], - description: "Removes the link created by `pnpm link` and reinstalls package if it is saved in `package.json`", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: 'Unlink in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] + function renderOutdatedTable(outdatedPackages, opts) { + if (outdatedPackages.length === 0) + return ""; + const columnNames = [ + "Package", + "Current", + "Latest" + ]; + const columnFns = [ + renderPackageName, + renderCurrent, + renderLatest + ]; + if (opts.long) { + columnNames.push("Details"); + columnFns.push(renderDetails); + } + for (let i = 0; i < columnNames.length; i++) + columnNames[i] = chalk_1.default.blueBright(columnNames[i]); + return (0, table_1.table)([ + columnNames, + ...sortOutdatedPackages(outdatedPackages).map((outdatedPkg) => columnFns.map((fn2) => fn2(outdatedPkg))) + ], cli_utils_1.TABLE_OPTIONS); + } + function renderOutdatedList(outdatedPackages, opts) { + if (outdatedPackages.length === 0) + return ""; + return sortOutdatedPackages(outdatedPackages).map((outdatedPkg) => { + let info = `${chalk_1.default.bold(renderPackageName(outdatedPkg))} +${renderCurrent(outdatedPkg)} ${chalk_1.default.grey("=>")} ${renderLatest(outdatedPkg)}`; + if (opts.long) { + const details = renderDetails(outdatedPkg); + if (details) { + info += ` +${details}`; } - ], - url: cli_utils_1.docsUrl("unlink"), - usages: [ - "pnpm unlink (in package dir)", - "pnpm unlink ..." - ] - }); + } + return info; + }).join("\n\n") + "\n"; } - exports2.help = help; - async function handler(opts, params) { - if (opts.recursive && opts.allProjects != null && opts.selectedProjectsGraph != null && opts.workspaceDir) { - await recursive_1.default(opts.allProjects, params, { ...opts, selectedProjectsGraph: opts.selectedProjectsGraph, workspaceDir: opts.workspaceDir }, "unlink"); - return; + function renderOutdatedJSON(outdatedPackages, opts) { + const outdatedPackagesJSON = sortOutdatedPackages(outdatedPackages).reduce((acc, outdatedPkg) => { + acc[outdatedPkg.packageName] = { + current: outdatedPkg.current, + latest: outdatedPkg.latestManifest?.version, + wanted: outdatedPkg.wanted, + isDeprecated: Boolean(outdatedPkg.latestManifest?.deprecated), + dependencyType: outdatedPkg.belongsTo + }; + if (opts.long) { + acc[outdatedPkg.packageName].latestManifest = outdatedPkg.latestManifest; + } + return acc; + }, {}); + return JSON.stringify(outdatedPackagesJSON, null, 2); + } + function sortOutdatedPackages(outdatedPackages) { + return (0, sortWith_1.default)(utils_1.DEFAULT_COMPARATORS, outdatedPackages.map(toOutdatedWithVersionDiff)); + } + function getCellWidth(data, columnNumber, maxWidth) { + const maxCellWidth = data.reduce((cellWidth, row) => { + const cellLines = (0, strip_ansi_1.default)(row[columnNumber]).split("\n"); + const currentCellWidth = cellLines.reduce((lineWidth, line) => { + return Math.max(lineWidth, line.length); + }, 0); + return Math.max(cellWidth, currentCellWidth); + }, 0); + return Math.min(maxWidth, maxCellWidth); + } + exports2.getCellWidth = getCellWidth; + function toOutdatedWithVersionDiff(outdated) { + if (outdated.latestManifest != null) { + return { + ...outdated, + ...(0, semver_diff_1.default)(outdated.wanted, outdated.latestManifest.version) + }; } - const store = await store_connection_manager_1.createOrConnectStoreController(opts); - const unlinkOpts = Object.assign(opts, { - globalBin: opts.bin, - storeController: store.ctrl, - storeDir: store.dir - }); - if (!params || params.length === 0) { - return supi_1.mutateModules([ - { - dependencyNames: params, - manifest: await cli_utils_1.readProjectManifestOnly(opts.dir, opts), - mutation: "unlinkSome", - rootDir: opts.dir - } - ], unlinkOpts); + return { + ...outdated, + change: "unknown" + }; + } + exports2.toOutdatedWithVersionDiff = toOutdatedWithVersionDiff; + function renderPackageName({ belongsTo, packageName }) { + switch (belongsTo) { + case "devDependencies": + return `${packageName} ${chalk_1.default.dim("(dev)")}`; + case "optionalDependencies": + return `${packageName} ${chalk_1.default.dim("(optional)")}`; + default: + return packageName; } - return supi_1.mutateModules([ - { - manifest: await cli_utils_1.readProjectManifestOnly(opts.dir, opts), - mutation: "unlink", - rootDir: opts.dir - } - ], unlinkOpts); } - exports2.handler = handler; - } -}); - -// ../outdated/lib/createManifestGetter.js -var require_createManifestGetter = __commonJS({ - "../outdated/lib/createManifestGetter.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getManifest = exports2.createManifestGetter = void 0; - var client_1 = require_lib49(); - var pick_registry_for_package_1 = __importDefault(require_lib50()); - function createManifestGetter(opts) { - const resolve = client_1.createResolver({ ...opts, authConfig: opts.rawConfig }); - return getManifest.bind(null, resolve, opts); + exports2.renderPackageName = renderPackageName; + function renderCurrent({ current, wanted }) { + const output = current ?? "missing"; + if (current === wanted) + return output; + return `${output} (wanted ${wanted})`; } - exports2.createManifestGetter = createManifestGetter; - async function getManifest(resolve, opts, packageName, pref) { - var _a; - const resolution = await resolve({ alias: packageName, pref }, { - lockfileDir: opts.lockfileDir, - preferredVersions: {}, - projectDir: opts.dir, - registry: pick_registry_for_package_1.default(opts.registries, packageName, pref) - }); - return (_a = resolution === null || resolution === void 0 ? void 0 : resolution.manifest) !== null && _a !== void 0 ? _a : null; + exports2.renderCurrent = renderCurrent; + function renderLatest(outdatedPkg) { + const { latestManifest, change, diff } = outdatedPkg; + if (latestManifest == null) + return ""; + if (change === null || diff == null) { + return latestManifest.deprecated ? chalk_1.default.redBright.bold("Deprecated") : latestManifest.version; + } + return (0, colorize_semver_diff_1.default)({ change, diff }); } - exports2.getManifest = getManifest; + exports2.renderLatest = renderLatest; + function renderDetails({ latestManifest }) { + if (latestManifest == null) + return ""; + const outputs = []; + if (latestManifest.deprecated) { + outputs.push((0, wrap_ansi_1.default)(chalk_1.default.redBright(latestManifest.deprecated), 40)); + } + if (latestManifest.homepage) { + outputs.push(chalk_1.default.underline(latestManifest.homepage)); + } + return outputs.join("\n"); + } + exports2.renderDetails = renderDetails; } }); -// ../outdated/lib/outdated.js -var require_outdated = __commonJS({ - "../outdated/lib/outdated.js"(exports2) { +// ../reviewing/plugin-commands-outdated/lib/index.js +var require_lib152 = __commonJS({ + "../reviewing/plugin-commands-outdated/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; - }; - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) - __createBinding2(exports3, m, p); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var constants_1 = require_lib7(); - var error_1 = __importDefault(require_lib8()); - var lockfile_file_1 = require_lib57(); - var lockfile_utils_1 = require_lib53(); - var manifest_utils_1 = require_lib15(); - var types_1 = require_lib14(); - var dp = __importStar2(require_lib33()); - var semver_1 = __importDefault(require_semver2()); - __exportStar(require_createManifestGetter(), exports2); - async function outdated(opts) { - var _a; - if (packageHasNoDeps(opts.manifest)) - return []; - if (opts.wantedLockfile == null) { - throw new error_1.default("OUTDATED_NO_LOCKFILE", "No lockfile in this directory. Run `pnpm install` to generate one."); - } - const allDeps = manifest_utils_1.getAllDependenciesFromManifest(opts.manifest); - const importerId = lockfile_file_1.getLockfileImporterId(opts.lockfileDir, opts.prefix); - const currentLockfile = (_a = opts.currentLockfile) !== null && _a !== void 0 ? _a : { importers: { [importerId]: {} } }; - const outdated2 = []; - await Promise.all(types_1.DEPENDENCIES_FIELDS.map(async (depType) => { - var _a2; - if (((_a2 = opts.include) === null || _a2 === void 0 ? void 0 : _a2[depType]) === false || opts.wantedLockfile.importers[importerId][depType] == null) - return; - let pkgs = Object.keys(opts.wantedLockfile.importers[importerId][depType]); - if (opts.match != null) { - pkgs = pkgs.filter((pkgName) => opts.match(pkgName)); - } - await Promise.all(pkgs.map(async (alias) => { - var _a3, _b, _c, _d, _e, _f, _g; - const ref = opts.wantedLockfile.importers[importerId][depType][alias]; - if (ref.startsWith("file:")) { - return; - } - const relativeDepPath = dp.refToRelative(ref, alias); - if (relativeDepPath === null) - return; - const pkgSnapshot = (_a3 = opts.wantedLockfile.packages) === null || _a3 === void 0 ? void 0 : _a3[relativeDepPath]; - if (pkgSnapshot == null) { - throw new Error(`Invalid ${constants_1.WANTED_LOCKFILE} file. ${relativeDepPath} not found in packages field`); - } - const currentRef = (_c = (_b = currentLockfile.importers[importerId]) === null || _b === void 0 ? void 0 : _b[depType]) === null || _c === void 0 ? void 0 : _c[alias]; - const currentRelative = currentRef && dp.refToRelative(currentRef, alias); - const current = (_d = currentRelative && dp.parse(currentRelative).version) !== null && _d !== void 0 ? _d : currentRef; - const wanted = (_e = dp.parse(relativeDepPath).version) !== null && _e !== void 0 ? _e : ref; - const { name: packageName } = lockfile_utils_1.nameVerFromPkgSnapshot(relativeDepPath, pkgSnapshot); - if (pkgSnapshot.resolution && (pkgSnapshot.resolution["type"] || pkgSnapshot.name)) { - if (current !== wanted) { - outdated2.push({ - alias, - belongsTo: depType, - current, - latestManifest: void 0, - packageName, - wanted - }); - } - return; - } - const name = (_f = dp.parse(relativeDepPath).name) !== null && _f !== void 0 ? _f : packageName; - const latestManifest = await opts.getLatestManifest(name, opts.compatible ? (_g = allDeps[name]) !== null && _g !== void 0 ? _g : "latest" : "latest"); - if (latestManifest == null) - return; - if (!current) { - outdated2.push({ - alias, - belongsTo: depType, - latestManifest, - packageName, - wanted - }); - return; - } - if (current !== wanted || semver_1.default.lt(current, latestManifest.version) || latestManifest.deprecated) { - outdated2.push({ - alias, - belongsTo: depType, - current, - latestManifest, - packageName, - wanted - }); - } - })); - })); - return outdated2.sort((pkg1, pkg2) => pkg1.packageName.localeCompare(pkg2.packageName)); - } - exports2.default = outdated; - function packageHasNoDeps(manifest) { - return (manifest.dependencies == null || isEmpty(manifest.dependencies)) && (manifest.devDependencies == null || isEmpty(manifest.devDependencies)) && (manifest.optionalDependencies == null || isEmpty(manifest.optionalDependencies)); - } - function isEmpty(obj) { - return Object.keys(obj).length === 0; - } + exports2.outdated = void 0; + var outdated = __importStar5(require_outdated2()); + exports2.outdated = outdated; } }); -// ../outdated/lib/outdatedDepsOfProjects.js -var require_outdatedDepsOfProjects = __commonJS({ - "../outdated/lib/outdatedDepsOfProjects.js"(exports2) { +// ../pkg-manifest/exportable-manifest/lib/overridePublishConfig.js +var require_overridePublishConfig = __commonJS({ + "../pkg-manifest/exportable-manifest/lib/overridePublishConfig.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var lockfile_file_1 = require_lib57(); - var matcher_1 = __importDefault(require_lib23()); - var modules_yaml_1 = require_lib64(); - var unnest_1 = __importDefault(require_unnest()); - var createManifestGetter_1 = require_createManifestGetter(); - var outdated_1 = __importDefault(require_outdated()); - async function outdatedDepsOfProjects(pkgs, args2, opts) { - var _a, _b, _c; - if (!opts.lockfileDir) { - return unnest_1.default(await Promise.all(pkgs.map(async (pkg) => outdatedDepsOfProjects([pkg], args2, { ...opts, lockfileDir: pkg.dir })))); - } - const lockfileDir = (_a = opts.lockfileDir) !== null && _a !== void 0 ? _a : opts.dir; - const modules = await modules_yaml_1.read(path_1.default.join(lockfileDir, "node_modules")); - const virtualStoreDir = (_b = modules === null || modules === void 0 ? void 0 : modules.virtualStoreDir) !== null && _b !== void 0 ? _b : path_1.default.join(lockfileDir, "node_modules/.pnpm"); - const currentLockfile = await lockfile_file_1.readCurrentLockfile(virtualStoreDir, { ignoreIncompatible: false }); - const wantedLockfile = (_c = await lockfile_file_1.readWantedLockfile(lockfileDir, { ignoreIncompatible: false })) !== null && _c !== void 0 ? _c : currentLockfile; - const getLatestManifest = createManifestGetter_1.createManifestGetter({ - ...opts, - fullMetadata: opts.fullMetadata === true, - lockfileDir + exports2.overridePublishConfig = void 0; + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var PUBLISH_CONFIG_WHITELIST = /* @__PURE__ */ new Set([ + // manifest fields that may make sense to overwrite + "bin", + "type", + "imports", + // https://github.com/stereobooster/package.json#package-bundlers + "main", + "module", + "typings", + "types", + "exports", + "browser", + "esnext", + "es2015", + "unpkg", + "umd:main", + // These are useful to hide in order to avoid warnings during local development + "os", + "cpu", + "libc", + // https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html#version-selection-with-typesversions + "typesVersions" + ]); + function overridePublishConfig(publishManifest) { + const { publishConfig } = publishManifest; + if (!publishConfig) + return; + Object.entries(publishConfig).filter(([key]) => PUBLISH_CONFIG_WHITELIST.has(key)).forEach(([key, value]) => { + publishManifest[key] = value; + delete publishConfig[key]; }); - return Promise.all(pkgs.map(async ({ dir, manifest }) => { - const match = args2.length > 0 && matcher_1.default(args2) || void 0; - return outdated_1.default({ - compatible: opts.compatible, - currentLockfile, - getLatestManifest, - include: opts.include, - lockfileDir, - manifest, - match, - prefix: dir, - wantedLockfile - }); - })); + if ((0, isEmpty_1.default)(publishConfig)) { + delete publishManifest.publishConfig; + } } - exports2.default = outdatedDepsOfProjects; + exports2.overridePublishConfig = overridePublishConfig; } }); -// ../outdated/lib/index.js -var require_lib95 = __commonJS({ - "../outdated/lib/index.js"(exports2) { +// ../pkg-manifest/exportable-manifest/lib/index.js +var require_lib153 = __commonJS({ + "../pkg-manifest/exportable-manifest/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.outdatedDepsOfProjects = void 0; - var outdatedDepsOfProjects_1 = __importDefault(require_outdatedDepsOfProjects()); - exports2.outdatedDepsOfProjects = outdatedDepsOfProjects_1.default; - } -}); - -// ../../node_modules/.pnpm/@pnpm+colorize-semver-diff@1.0.1/node_modules/@pnpm/colorize-semver-diff/lib/index.js -var require_lib96 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+colorize-semver-diff@1.0.1/node_modules/@pnpm/colorize-semver-diff/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var chalk = require_source(); - var DIFF_COLORS = { - feature: chalk.yellowBright.bold, - fix: chalk.greenBright.bold - }; - function colorizeSemverDiff(semverDiff) { - var _a; - if (!semverDiff) { - throw new TypeError("semverDiff must be defined"); + exports2.createExportableManifest = void 0; + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib8(); + var read_project_manifest_1 = require_lib16(); + var omit_1 = __importDefault4(require_omit()); + var p_map_values_1 = __importDefault4(require_lib63()); + var overridePublishConfig_1 = require_overridePublishConfig(); + var PREPUBLISH_SCRIPTS = [ + "prepublishOnly", + "prepack", + "prepare", + "postpack", + "publish", + "postpublish" + ]; + async function createExportableManifest(dir, originalManifest, opts) { + const publishManifest = (0, omit_1.default)(["pnpm", "scripts"], originalManifest); + if (originalManifest.scripts != null) { + publishManifest.scripts = (0, omit_1.default)(PREPUBLISH_SCRIPTS, originalManifest.scripts); } - if (typeof semverDiff.change !== "string") { - throw new TypeError("semverDiff.change must be defined"); + for (const depsField of ["dependencies", "devDependencies", "optionalDependencies", "peerDependencies"]) { + const deps = await makePublishDependencies(dir, originalManifest[depsField], opts?.modulesDir); + if (deps != null) { + publishManifest[depsField] = deps; + } } - const highlight = (_a = DIFF_COLORS[semverDiff.change]) !== null && _a !== void 0 ? _a : chalk.redBright.bold; - const same = joinVersionTuples(semverDiff.diff[0], 0); - const other = highlight(joinVersionTuples(semverDiff.diff[1], semverDiff.diff[0].length)); - if (!same) - return other; - if (!other) { - return same; + (0, overridePublishConfig_1.overridePublishConfig)(publishManifest); + if (opts?.readmeFile) { + publishManifest.readme ?? (publishManifest.readme = opts.readmeFile); } - return semverDiff.diff[0].length === 3 ? `${same}-${other}` : `${same}.${other}`; + return publishManifest; } - exports2.default = colorizeSemverDiff; - function joinVersionTuples(versionTuples, startIndex) { - const neededForSemver = 3 - startIndex; - if (versionTuples.length <= neededForSemver || neededForSemver <= 0) { - return versionTuples.join("."); - } - return `${versionTuples.slice(0, neededForSemver).join(".")}-${versionTuples.slice(neededForSemver).join(".")}`; + exports2.createExportableManifest = createExportableManifest; + async function makePublishDependencies(dir, dependencies, modulesDir) { + if (dependencies == null) + return dependencies; + const publishDependencies = await (0, p_map_values_1.default)((depSpec, depName) => makePublishDependency(depName, depSpec, dir, modulesDir), dependencies); + return publishDependencies; } - } -}); - -// ../../node_modules/.pnpm/@pnpm+semver-diff@1.0.2/node_modules/@pnpm/semver-diff/lib/index.js -var require_lib97 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+semver-diff@1.0.2/node_modules/@pnpm/semver-diff/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var SEMVER_CHANGE_BY_TUPLE_NUMBER = ["breaking", "feature", "fix"]; - function semverDiff(version1, version2) { - if (version1 === version2) { - return { - change: null, - diff: [parseVersion(version1), []] - }; + async function makePublishDependency(depName, depSpec, dir, modulesDir) { + if (!depSpec.startsWith("workspace:")) { + return depSpec; } - const version1Tuples = parseVersion(version1); - const version2Tuples = parseVersion(version2); - const same = []; - let change = "unknown"; - const maxTuples = Math.max(version1Tuples.length, version2Tuples.length); - let unstable = version1Tuples[0] === "0" || version2Tuples[0] === "0" || maxTuples > 3; - for (let i = 0; i < maxTuples; i++) { - if (version1Tuples[i] === version2Tuples[i]) { - same.push(version1Tuples[i]); - continue; + const versionAliasSpecParts = /^workspace:(.*?)@?([\^~*])$/.exec(depSpec); + if (versionAliasSpecParts != null) { + modulesDir = modulesDir ?? path_1.default.join(dir, "node_modules"); + const { manifest } = await (0, read_project_manifest_1.tryReadProjectManifest)(path_1.default.join(modulesDir, depName)); + if (manifest == null || !manifest.version) { + throw new error_1.PnpmError("CANNOT_RESOLVE_WORKSPACE_PROTOCOL", `Cannot resolve workspace protocol of dependency "${depName}" because this dependency is not installed. Try running "pnpm install".`); } - if (unstable === false) { - change = SEMVER_CHANGE_BY_TUPLE_NUMBER[i] || "unknown"; + const semverRangeToken = versionAliasSpecParts[2] !== "*" ? versionAliasSpecParts[2] : ""; + if (depName !== manifest.name) { + return `npm:${manifest.name}@${semverRangeToken}${manifest.version}`; } - return { - change, - diff: [same, version2Tuples.slice(i)] - }; + return `${semverRangeToken}${manifest.version}`; } - return { - change, - diff: [same, []] - }; - } - exports2.default = semverDiff; - function parseVersion(version) { - const dashIndex = version.indexOf("-"); - let normalVersion; - let prereleaseVersion; - if (dashIndex === -1) { - normalVersion = version; - } else { - normalVersion = version.substr(0, dashIndex); - prereleaseVersion = version.substr(dashIndex + 1); + if (depSpec.startsWith("workspace:./") || depSpec.startsWith("workspace:../")) { + const { manifest } = await (0, read_project_manifest_1.tryReadProjectManifest)(path_1.default.join(dir, depSpec.slice(10))); + if (manifest == null || !manifest.name || !manifest.version) { + throw new error_1.PnpmError("CANNOT_RESOLVE_WORKSPACE_PROTOCOL", `Cannot resolve workspace protocol of dependency "${depName}" because this dependency is not installed. Try running "pnpm install".`); + } + if (manifest.name === depName) + return `${manifest.version}`; + return `npm:${manifest.name}@${manifest.version}`; } - return [ - ...normalVersion.split("."), - ...typeof prereleaseVersion !== "undefined" ? prereleaseVersion.split(".") : [] - ]; + depSpec = depSpec.slice(10); + if (depSpec.includes("@")) { + return `npm:${depSpec}`; + } + return depSpec; } } }); -// ../plugin-commands-installation/lib/update/getUpdateChoices.js -var require_getUpdateChoices = __commonJS({ - "../plugin-commands-installation/lib/update/getUpdateChoices.js"(exports2) { +// ../releasing/plugin-commands-publishing/lib/recursivePublish.js +var require_recursivePublish = __commonJS({ + "../releasing/plugin-commands-publishing/lib/recursivePublish.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var colorize_semver_diff_1 = __importDefault(require_lib96()); - var semver_diff_1 = __importDefault(require_lib97()); - var table_1 = require_dist10(); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var unnest_1 = __importDefault(require_unnest()); - function default_1(outdatedPkgsOfProjects) { - const allOutdatedPkgs = mergeOutdatedPkgs(outdatedPkgsOfProjects); - if (isEmpty_1.default(allOutdatedPkgs)) { - return []; - } - const rowsGroupedByPkgs = Object.entries(allOutdatedPkgs).sort(([pkgName1], [pkgName2]) => pkgName1.localeCompare(pkgName2)).map(([pkgName, outdatedPkgs]) => ({ - pkgName, - rows: outdatedPkgsRows(Object.values(outdatedPkgs)) - })); - const renderedTable = alignColumns(unnest_1.default(rowsGroupedByPkgs.map(({ rows }) => rows))); - const choices = []; - let i = 0; - for (const { pkgName, rows } of rowsGroupedByPkgs) { - choices.push({ - message: renderedTable.slice(i, i + rows.length).join("\n "), - name: pkgName + exports2.recursivePublish = void 0; + var path_1 = __importDefault4(require("path")); + var client_1 = require_lib77(); + var logger_1 = require_lib6(); + var pick_registry_for_package_1 = require_lib78(); + var sort_packages_1 = require_lib110(); + var p_filter_1 = __importDefault4(require_p_filter()); + var pick_1 = __importDefault4(require_pick()); + var write_json_file_1 = __importDefault4(require_write_json_file()); + var publish_1 = require_publish2(); + async function recursivePublish(opts) { + const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); + const resolve = (0, client_1.createResolver)({ + ...opts, + authConfig: opts.rawConfig, + userConfig: opts.userConfig, + retry: { + factor: opts.fetchRetryFactor, + maxTimeout: opts.fetchRetryMaxtimeout, + minTimeout: opts.fetchRetryMintimeout, + retries: opts.fetchRetries + }, + timeout: opts.fetchTimeout + }); + const pkgsToPublish = await (0, p_filter_1.default)(pkgs, async (pkg) => { + if (!pkg.manifest.name || !pkg.manifest.version || pkg.manifest.private) + return false; + if (opts.force) + return true; + return !await isAlreadyPublished({ + dir: pkg.dir, + lockfileDir: opts.lockfileDir ?? pkg.dir, + registries: opts.registries, + resolve + }, pkg.manifest.name, pkg.manifest.version); + }); + const publishedPkgDirs = new Set(pkgsToPublish.map(({ dir }) => dir)); + const publishedPackages = []; + if (publishedPkgDirs.size === 0) { + logger_1.logger.info({ + message: "There are no new packages that should be published", + prefix: opts.dir }); - i += rows.length; - } - return choices; - } - exports2.default = default_1; - function mergeOutdatedPkgs(outdatedPkgs) { - var _a; - const allOutdatedPkgs = {}; - for (const outdatedPkg of outdatedPkgs) { - if (!allOutdatedPkgs[outdatedPkg.packageName]) { - allOutdatedPkgs[outdatedPkg.packageName] = {}; + } else { + const appendedArgs = []; + if (opts.cliOptions["access"]) { + appendedArgs.push(`--access=${opts.cliOptions["access"]}`); } - const key = JSON.stringify([ - (_a = outdatedPkg.latestManifest) === null || _a === void 0 ? void 0 : _a.version, - outdatedPkg.current - ]); - if (!allOutdatedPkgs[outdatedPkg.packageName][key]) { - allOutdatedPkgs[outdatedPkg.packageName][key] = outdatedPkg; - continue; + if (opts.dryRun) { + appendedArgs.push("--dry-run"); } - if (allOutdatedPkgs[outdatedPkg.packageName][key].belongsTo === "dependencies") - continue; - if (outdatedPkg.belongsTo !== "devDependencies") { - allOutdatedPkgs[outdatedPkg.packageName][key].belongsTo = outdatedPkg.belongsTo; + if (opts.cliOptions["otp"]) { + appendedArgs.push(`--otp=${opts.cliOptions["otp"]}`); } - } - return allOutdatedPkgs; - } - function outdatedPkgsRows(outdatedPkgs) { - return outdatedPkgs.map((outdatedPkg) => { - const sdiff = semver_diff_1.default(outdatedPkg.wanted, outdatedPkg.latestManifest.version); - const nextVersion = sdiff.change === null ? outdatedPkg.latestManifest.version : colorize_semver_diff_1.default(sdiff); - let label = outdatedPkg.packageName; - switch (outdatedPkg.belongsTo) { - case "devDependencies": { - label += " (dev)"; - break; - } - case "optionalDependencies": { - label += " (optional)"; - break; + const chunks = (0, sort_packages_1.sortPackages)(opts.selectedProjectsGraph); + const tag = opts.tag ?? "latest"; + for (const chunk of chunks) { + for (const pkgDir of chunk) { + if (!publishedPkgDirs.has(pkgDir)) + continue; + const pkg = opts.selectedProjectsGraph[pkgDir].package; + const registry = pkg.manifest.publishConfig?.registry ?? (0, pick_registry_for_package_1.pickRegistryForPackage)(opts.registries, pkg.manifest.name); + const publishResult = await (0, publish_1.publish)({ + ...opts, + dir: pkg.dir, + argv: { + original: [ + "publish", + "--tag", + tag, + "--registry", + registry, + ...appendedArgs + ] + }, + gitChecks: false, + recursive: false + }, [pkg.dir]); + if (publishResult?.manifest != null) { + publishedPackages.push((0, pick_1.default)(["name", "version"], publishResult.manifest)); + } else if (publishResult?.exitCode) { + return { exitCode: publishResult.exitCode }; + } } } - return [label, outdatedPkg.current, "\u276F", nextVersion]; - }); + } + if (opts.reportSummary) { + await (0, write_json_file_1.default)(path_1.default.join(opts.lockfileDir ?? opts.dir, "pnpm-publish-summary.json"), { publishedPackages }); + } + return { exitCode: 0 }; } - function alignColumns(rows) { - return table_1.table(rows, { - border: table_1.getBorderCharacters("void"), - columnDefault: { - paddingLeft: 0, - paddingRight: 1 - }, - columns: { - 1: { alignment: "right" } - }, - drawHorizontalLine: () => false - }).split("\n"); + exports2.recursivePublish = recursivePublish; + async function isAlreadyPublished(opts, pkgName, pkgVersion) { + try { + await opts.resolve({ alias: pkgName, pref: pkgVersion }, { + lockfileDir: opts.lockfileDir, + preferredVersions: {}, + projectDir: opts.dir, + registry: (0, pick_registry_for_package_1.pickRegistryForPackage)(opts.registries, pkgName, pkgVersion) + }); + return true; + } catch (err) { + return false; + } } } }); -// ../plugin-commands-installation/lib/update/index.js -var require_update = __commonJS({ - "../plugin-commands-installation/lib/update/index.js"(exports2) { +// ../releasing/plugin-commands-publishing/lib/publish.js +var require_publish2 = __commonJS({ + "../releasing/plugin-commands-publishing/lib/publish.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.completion = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var matcher_1 = __importDefault(require_lib23()); - var outdated_1 = require_lib95(); + exports2.runScriptsIfPresent = exports2.publish = exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var fs_1 = require("fs"); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var lifecycle_1 = require_lib61(); + var run_npm_1 = require_lib94(); + var git_utils_1 = require_lib18(); var enquirer_1 = require_enquirer(); - var chalk_1 = __importDefault(require_source()); - var pick_1 = __importDefault(require_pick()); - var unnest_1 = __importDefault(require_unnest()); - var render_help_1 = __importDefault(require_lib30()); - var installDeps_1 = __importDefault(require_installDeps()); - var getUpdateChoices_1 = __importDefault(require_getUpdateChoices()); + var rimraf_1 = __importDefault4(require_rimraf2()); + var pick_1 = __importDefault4(require_pick()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var render_help_1 = __importDefault4(require_lib34()); + var tempy_1 = __importDefault4(require_tempy()); + var pack = __importStar5(require_pack3()); + var recursivePublish_1 = require_recursivePublish(); function rcOptionsTypes() { - return pick_1.default([ - "depth", - "dev", - "engine-strict", - "fetch-retries", - "fetch-retry-factor", - "fetch-retry-maxtimeout", - "fetch-retry-mintimeout", - "fetch-timeout", - "force", - "global-dir", - "global-pnpmfile", - "global", - "https-proxy", - "ignore-pnpmfile", + return (0, pick_1.default)([ + "access", + "git-checks", "ignore-scripts", - "lockfile-dir", - "lockfile-directory", - "lockfile-only", - "lockfile", - "network-concurrency", - "noproxy", - "npmPath", - "offline", - "only", - "optional", - "package-import-method", - "pnpmfile", - "prefer-offline", - "production", - "proxy", + "npm-path", + "otp", + "publish-branch", "registry", - "reporter", - "save", - "save-exact", - "save-workspace-protocol", - "shamefully-flatten", - "shamefully-hoist", - "shared-workspace-lockfile", - "side-effects-cache-readonly", - "side-effects-cache", - "store", - "store-dir", + "tag", "unsafe-perm", - "use-running-store-server" + "embed-readme" ], config_1.types); } exports2.rcOptionsTypes = rcOptionsTypes; function cliOptionsTypes() { return { ...rcOptionsTypes(), - interactive: Boolean, - latest: Boolean, + "dry-run": Boolean, + force: Boolean, + json: Boolean, recursive: Boolean, - workspace: Boolean + "report-summary": Boolean + }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["publish"]; + function help() { + return (0, render_help_1.default)({ + description: "Publishes a package to the npm registry.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Don't check if current branch is your publish branch, clean, and up to date", + name: "--no-git-checks" + }, + { + description: "Sets branch name to publish. Default is master", + name: "--publish-branch" + }, + { + description: "Does everything a publish would do except actually publishing to the registry", + name: "--dry-run" + }, + { + description: "Show information in JSON format", + name: "--json" + }, + { + description: 'Registers the published package with the given tag. By default, the "latest" tag is used.', + name: "--tag " + }, + { + description: "Tells the registry whether this package should be published as public or restricted", + name: "--access " + }, + { + description: "Ignores any publish related lifecycle scripts (prepublishOnly, postpublish, and the like)", + name: "--ignore-scripts" + }, + { + description: 'Packages are proceeded to be published even if their current version is already in the registry. This is useful when a "prepublishOnly" script bumps the version of the package before it is published', + name: "--force" + }, + { + description: 'Save the list of the newly published packages to "pnpm-publish-summary.json". Useful when some other tooling is used to report the list of published packages.', + name: "--report-summary" + }, + { + description: "When publishing packages that require two-factor authentication, this option can specify a one-time password", + name: "--otp" + }, + { + description: "Publish all packages from the workspace", + name: "--recursive", + shortAlias: "-r" + } + ] + }, + common_cli_options_help_1.FILTERING + ], + url: (0, cli_utils_1.docsUrl)("publish"), + usages: ["pnpm publish [|] [--tag ] [--access ] [options]"] + }); + } + exports2.help = help; + var GIT_CHECKS_HINT = 'If you want to disable Git checks on publish, set the "git-checks" setting to "false", or run again with "--no-git-checks".'; + async function handler(opts, params) { + const result2 = await publish(opts, params); + if (result2?.manifest) + return; + return result2; + } + exports2.handler = handler; + async function publish(opts, params) { + if (opts.gitChecks !== false && await (0, git_utils_1.isGitRepo)()) { + if (!await (0, git_utils_1.isWorkingTreeClean)()) { + throw new error_1.PnpmError("GIT_UNCLEAN", "Unclean working tree. Commit or stash changes first.", { + hint: GIT_CHECKS_HINT + }); + } + const branches = opts.publishBranch ? [opts.publishBranch] : ["master", "main"]; + const currentBranch = await (0, git_utils_1.getCurrentBranch)(); + if (currentBranch === null) { + throw new error_1.PnpmError("GIT_UNKNOWN_BRANCH", `The Git HEAD may not attached to any branch, but your "publish-branch" is set to "${branches.join("|")}".`, { + hint: GIT_CHECKS_HINT + }); + } + if (!branches.includes(currentBranch)) { + const { confirm } = await (0, enquirer_1.prompt)({ + message: `You're on branch "${currentBranch}" but your "publish-branch" is set to "${branches.join("|")}". Do you want to continue?`, + name: "confirm", + type: "confirm" + }); + if (!confirm) { + throw new error_1.PnpmError("GIT_NOT_CORRECT_BRANCH", `Branch is not on '${branches.join("|")}'.`, { + hint: GIT_CHECKS_HINT + }); + } + } + if (!await (0, git_utils_1.isRemoteHistoryClean)()) { + throw new error_1.PnpmError("GIT_NOT_LATEST", "Remote history differs. Please pull changes.", { + hint: GIT_CHECKS_HINT + }); + } + } + if (opts.recursive && opts.selectedProjectsGraph != null) { + const { exitCode } = await (0, recursivePublish_1.recursivePublish)({ + ...opts, + selectedProjectsGraph: opts.selectedProjectsGraph, + workspaceDir: opts.workspaceDir ?? process.cwd() + }); + return { exitCode }; + } + if (params.length > 0 && params[0].endsWith(".tgz")) { + const { status: status2 } = (0, run_npm_1.runNpm)(opts.npmPath, ["publish", ...params]); + return { exitCode: status2 ?? 0 }; + } + const dirInParams = params.length > 0 && params[0]; + const dir = dirInParams || opts.dir || process.cwd(); + const _runScriptsIfPresent = runScriptsIfPresent.bind(null, { + depPath: dir, + extraBinPaths: opts.extraBinPaths, + extraEnv: opts.extraEnv, + pkgRoot: dir, + rawConfig: opts.rawConfig, + rootModulesDir: await (0, realpath_missing_1.default)(path_1.default.join(dir, "node_modules")), + stdio: "inherit", + unsafePerm: true + // when running scripts explicitly, assume that they're trusted. + }); + const { manifest } = await (0, cli_utils_1.readProjectManifest)(dir, opts); + let args2 = opts.argv.original.slice(1); + if (dirInParams) { + args2 = args2.filter((arg) => arg !== params[0]); + } + const index = args2.indexOf("--publish-branch"); + if (index !== -1) { + if (args2[index + 1]?.startsWith("-")) { + args2.splice(index, 1); + } else { + args2.splice(index, 2); + } + } + if (!opts.ignoreScripts) { + await _runScriptsIfPresent([ + "prepublishOnly", + "prepublish" + ], manifest); + } + const packDestination = tempy_1.default.directory(); + const tarballName = await pack.handler({ + ...opts, + dir, + packDestination + }); + await copyNpmrc({ dir, workspaceDir: opts.workspaceDir, packDestination }); + const { status } = (0, run_npm_1.runNpm)(opts.npmPath, ["publish", "--ignore-scripts", path_1.default.basename(tarballName), ...args2], { + cwd: packDestination + }); + await (0, rimraf_1.default)(packDestination); + if (status != null && status !== 0) { + return { exitCode: status }; + } + if (!opts.ignoreScripts) { + await _runScriptsIfPresent([ + "publish", + "postpublish" + ], manifest); + } + return { manifest }; + } + exports2.publish = publish; + async function copyNpmrc({ dir, workspaceDir, packDestination }) { + const localNpmrc = path_1.default.join(dir, ".npmrc"); + if ((0, fs_1.existsSync)(localNpmrc)) { + await fs_1.promises.copyFile(localNpmrc, path_1.default.join(packDestination, ".npmrc")); + return; + } + if (!workspaceDir) + return; + const workspaceNpmrc = path_1.default.join(workspaceDir, ".npmrc"); + if ((0, fs_1.existsSync)(workspaceNpmrc)) { + await fs_1.promises.copyFile(workspaceNpmrc, path_1.default.join(packDestination, ".npmrc")); + } + } + async function runScriptsIfPresent(opts, scriptNames, manifest) { + for (const scriptName of scriptNames) { + if (!manifest.scripts?.[scriptName]) + continue; + await (0, lifecycle_1.runLifecycleHook)(scriptName, manifest, opts); + } + } + exports2.runScriptsIfPresent = runScriptsIfPresent; + } +}); + +// ../releasing/plugin-commands-publishing/lib/pack.js +var require_pack3 = __commonJS({ + "../releasing/plugin-commands-publishing/lib/pack.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var zlib_1 = require("zlib"); + var error_1 = require_lib8(); + var config_1 = require_lib21(); + var cli_utils_1 = require_lib27(); + var exportable_manifest_1 = require_lib153(); + var package_bins_1 = require_lib39(); + var fast_glob_1 = __importDefault4(require_out4()); + var pick_1 = __importDefault4(require_pick()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var render_help_1 = __importDefault4(require_lib34()); + var tar_stream_1 = __importDefault4(require_tar_stream()); + var npm_packlist_1 = __importDefault4(require_lib58()); + var publish_1 = require_publish2(); + var LICENSE_GLOB = "LICEN{S,C}E{,.*}"; + var findLicenses = fast_glob_1.default.bind(fast_glob_1.default, [LICENSE_GLOB]); + function rcOptionsTypes() { + return { + ...cliOptionsTypes(), + ...(0, pick_1.default)([ + "npm-path" + ], config_1.types) + }; + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + "pack-destination": String }; } exports2.cliOptionsTypes = cliOptionsTypes; - exports2.shorthands = { - D: "--dev", - P: "--production" - }; - exports2.commandNames = ["update", "up", "upgrade"]; - var completion = async (cliOpts) => { - return cli_utils_1.readDepNameCompletions(cliOpts.dir); - }; - exports2.completion = completion; + exports2.commandNames = ["pack"]; function help() { - return render_help_1.default({ - aliases: ["up", "upgrade"], - description: 'Updates packages to their latest version based on the specified range. You can use "*" in package name to update all packages with the same pattern.', + return (0, render_help_1.default)({ + description: "Create a tarball from a package", + usages: ["pnpm pack"], descriptionLists: [ { title: "Options", list: [ { - description: 'Update in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - }, - { - description: "Update globally installed packages", - name: "--global", - shortAlias: "-g" - }, - { - description: "How deep should levels of dependencies be inspected. Infinity is default. 0 would mean top-level dependencies only", - name: "--depth " - }, - { - description: "Ignore version ranges in package.json", - name: "--latest", - shortAlias: "-L" - }, - { - description: 'Update packages only in "dependencies" and "optionalDependencies"', - name: "--prod", - shortAlias: "-P" - }, - { - description: 'Update packages only in "devDependencies"', - name: "--dev", - shortAlias: "-D" - }, - { - description: `Don't update packages in "optionalDependencies"`, - name: "--no-optional" - }, - { - description: "Tries to link all packages from the workspace. Versions are updated to match the versions of packages inside the workspace. If specific packages are updated, the command will fail if any of the updated dependencies is not found inside the workspace", - name: "--workspace" - }, - { - description: "Show outdated dependencies and select which ones to update", - name: "--interactive", - shortAlias: "-i" - }, - common_cli_options_help_1.OPTIONS.globalDir, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS + description: "Directory in which `pnpm pack` will save tarballs. The default is the current working directory.", + name: "--pack-destination " + } ] - }, - common_cli_options_help_1.FILTERING - ], - url: cli_utils_1.docsUrl("update"), - usages: ["pnpm update [-g] [...]"] + } + ] }); } exports2.help = help; - async function handler(opts, params = []) { - if (opts.interactive) { - return interactiveUpdate(params, opts); + async function handler(opts) { + const { manifest: entryManifest, fileName: manifestFileName } = await (0, cli_utils_1.readProjectManifest)(opts.dir, opts); + const _runScriptsIfPresent = publish_1.runScriptsIfPresent.bind(null, { + depPath: opts.dir, + extraBinPaths: opts.extraBinPaths, + extraEnv: opts.extraEnv, + pkgRoot: opts.dir, + rawConfig: opts.rawConfig, + rootModulesDir: await (0, realpath_missing_1.default)(path_1.default.join(opts.dir, "node_modules")), + stdio: "inherit", + unsafePerm: true + // when running scripts explicitly, assume that they're trusted. + }); + if (!opts.ignoreScripts) { + await _runScriptsIfPresent([ + "prepack", + "prepare" + ], entryManifest); } - return update(params, opts); + const dir = entryManifest.publishConfig?.directory ? path_1.default.join(opts.dir, entryManifest.publishConfig.directory) : opts.dir; + const manifest = opts.dir !== dir ? (await (0, cli_utils_1.readProjectManifest)(dir, opts)).manifest : entryManifest; + if (!manifest.name) { + throw new error_1.PnpmError("PACKAGE_NAME_NOT_FOUND", `Package name is not defined in the ${manifestFileName}.`); + } + if (!manifest.version) { + throw new error_1.PnpmError("PACKAGE_VERSION_NOT_FOUND", `Package version is not defined in the ${manifestFileName}.`); + } + const tarballName = `${manifest.name.replace("@", "").replace("/", "-")}-${manifest.version}.tgz`; + const files = await (0, npm_packlist_1.default)({ path: dir }); + const filesMap = Object.fromEntries(files.map((file) => [`package/${file}`, path_1.default.join(dir, file)])); + if (opts.workspaceDir != null && dir !== opts.workspaceDir && !files.some((file) => /LICEN[CS]E(\..+)?/i.test(file))) { + const licenses = await findLicenses({ cwd: opts.workspaceDir }); + for (const license of licenses) { + filesMap[`package/${license}`] = path_1.default.join(opts.workspaceDir, license); + } + } + const destDir = opts.packDestination ? path_1.default.isAbsolute(opts.packDestination) ? opts.packDestination : path_1.default.join(dir, opts.packDestination ?? ".") : dir; + await fs_1.default.promises.mkdir(destDir, { recursive: true }); + await packPkg({ + destFile: path_1.default.join(destDir, tarballName), + filesMap, + projectDir: dir, + embedReadme: opts.embedReadme, + modulesDir: path_1.default.join(opts.dir, "node_modules") + }); + if (!opts.ignoreScripts) { + await _runScriptsIfPresent(["postpack"], entryManifest); + } + if (opts.dir !== destDir) { + return path_1.default.join(destDir, tarballName); + } + return path_1.default.relative(opts.dir, path_1.default.join(dir, tarballName)); } exports2.handler = handler; - async function interactiveUpdate(input, opts) { - const include = makeIncludeDependenciesFromCLI(opts.cliOptions); - const projects = opts.selectedProjectsGraph != null ? Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package) : [ - { - dir: opts.dir, - manifest: await cli_utils_1.readProjectManifestOnly(opts.dir, opts) - } + async function readReadmeFile(filesMap) { + const readmePath = Object.keys(filesMap).find((name) => /^package\/readme\.md$/i.test(name)); + const readmeFile = readmePath ? await fs_1.default.promises.readFile(filesMap[readmePath], "utf8") : void 0; + return readmeFile; + } + async function packPkg(opts) { + const { destFile, filesMap, projectDir, embedReadme } = opts; + const { manifest } = await (0, cli_utils_1.readProjectManifest)(projectDir, {}); + const bins = [ + ...(await (0, package_bins_1.getBinsFromPackageManifest)(manifest, projectDir)).map(({ path: path2 }) => path2), + ...(manifest.publishConfig?.executableFiles ?? []).map((executableFile) => path_1.default.join(projectDir, executableFile)) ]; - const outdatedPkgsOfProjects = await outdated_1.outdatedDepsOfProjects(projects, input, { - ...opts, - compatible: opts.latest !== true, - include, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - timeout: opts.fetchTimeout - }); - const choices = getUpdateChoices_1.default(unnest_1.default(outdatedPkgsOfProjects)); - if (choices.length === 0) { - if (opts.latest) { - return "All of your dependencies are already up-to-date"; + const mtime = /* @__PURE__ */ new Date("1985-10-26T08:15:00.000Z"); + const pack = tar_stream_1.default.pack(); + for (const [name, source] of Object.entries(filesMap)) { + const isExecutable = bins.some((bin) => path_1.default.relative(bin, source) === ""); + const mode = isExecutable ? 493 : 420; + if (/^package\/package\.(json|json5|yaml)/.test(name)) { + const readmeFile = embedReadme ? await readReadmeFile(filesMap) : void 0; + const publishManifest = await (0, exportable_manifest_1.createExportableManifest)(projectDir, manifest, { readmeFile, modulesDir: opts.modulesDir }); + pack.entry({ mode, mtime, name: "package/package.json" }, JSON.stringify(publishManifest, null, 2)); + continue; } - return "All of your dependencies are already up-to-date inside the specified ranges. Use the --latest option to update the ranges in package.json"; + pack.entry({ mode, mtime, name }, fs_1.default.readFileSync(source)); } - const { updateDependencies } = await enquirer_1.prompt({ - choices, - footer: "\nEnter to start updating. Ctrl-c to cancel.", - indicator(state, choice) { - return ` ${choice.enabled ? "\u25CF" : "\u25CB"}`; - }, - message: `Choose which packages to update (Press ${chalk_1.default.cyan("")} to select, ${chalk_1.default.cyan("")} to toggle all, ${chalk_1.default.cyan("")} to invert selection)`, - name: "updateDependencies", - pointer: "\u276F", - styles: { - dark: chalk_1.default.white, - em: chalk_1.default.bgBlack.whiteBright, - success: chalk_1.default.white - }, - type: "multiselect", - validate(value) { - if (value.length === 0) { - return "You must choose at least one package."; - } - return true; - }, - j() { - return this.down(); - }, - k() { - return this.up(); - } + const tarball = fs_1.default.createWriteStream(destFile); + pack.pipe((0, zlib_1.createGzip)()).pipe(tarball); + pack.finalize(); + return new Promise((resolve, reject) => { + tarball.on("close", () => { + resolve(); + }).on("error", reject); }); - return update(updateDependencies, opts); - } - async function update(dependencies, opts) { - var _a; - const includeDirect = makeIncludeDependenciesFromCLI(opts.cliOptions); - const include = { - dependencies: opts.rawConfig.production !== false, - devDependencies: opts.rawConfig.dev !== false, - optionalDependencies: opts.rawConfig.optional !== false - }; - const depth = (_a = opts.depth) !== null && _a !== void 0 ? _a : Infinity; - return installDeps_1.default({ - ...opts, - allowNew: false, - depth, - includeDirect, - include, - update: true, - updateMatching: dependencies.length > 0 && dependencies.every((dep) => !dep.substring(1).includes("@")) && depth > 0 && !opts.latest ? matcher_1.default(dependencies) : void 0, - updatePackageManifest: opts.save !== false - }, dependencies); - } - function makeIncludeDependenciesFromCLI(opts) { - return { - dependencies: opts.production === true || opts.dev !== true && opts.optional !== true, - devDependencies: opts.dev === true || opts.production !== true && opts.optional !== true, - optionalDependencies: opts.optional === true || opts.production !== true && opts.dev !== true - }; } } }); -// ../plugin-commands-installation/lib/index.js -var require_lib98 = __commonJS({ - "../plugin-commands-installation/lib/index.js"(exports2) { +// ../releasing/plugin-commands-publishing/lib/index.js +var require_lib154 = __commonJS({ + "../releasing/plugin-commands-publishing/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.update = exports2.unlink = exports2.remove = exports2.prune = exports2.link = exports2.install = exports2.fetch = exports2.add = void 0; - var add = __importStar2(require_add()); - exports2.add = add; - var install = __importStar2(require_install2()); - exports2.install = install; - var fetch = __importStar2(require_fetch3()); - exports2.fetch = fetch; - var link = __importStar2(require_link3()); - exports2.link = link; - var prune = __importStar2(require_prune3()); - exports2.prune = prune; - var remove = __importStar2(require_remove()); - exports2.remove = remove; - var unlink = __importStar2(require_unlink()); - exports2.unlink = unlink; - var update = __importStar2(require_update()); - exports2.update = update; + exports2.publish = exports2.pack = void 0; + var pack = __importStar5(require_pack3()); + exports2.pack = pack; + var publish = __importStar5(require_publish2()); + exports2.publish = publish; } }); -// ../dependencies-hierarchy/lib/index.js -var require_lib99 = __commonJS({ - "../dependencies-hierarchy/lib/index.js"(exports2) { +// ../patching/plugin-commands-patching/lib/writePackage.js +var require_writePackage = __commonJS({ + "../patching/plugin-commands-patching/lib/writePackage.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var lockfile_file_1 = require_lib57(); - var lockfile_utils_1 = require_lib53(); - var modules_yaml_1 = require_lib64(); - var normalize_registries_1 = __importDefault(require_lib65()); - var read_modules_dir_1 = __importDefault(require_lib69()); - var read_package_json_1 = require_lib32(); - var types_1 = require_lib14(); - var dependency_path_1 = require_lib33(); - var normalize_path_1 = __importDefault(require_normalize_path()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var resolve_link_target_1 = __importDefault(require_resolve_link_target()); - async function dependenciesHierarchy(projectPaths, maybeOpts) { - var _a, _b, _c; - if (!maybeOpts || !maybeOpts.lockfileDir) { - throw new TypeError("opts.lockfileDir is required"); - } - const modulesDir = await realpath_missing_1.default(path_1.default.join(maybeOpts.lockfileDir, "node_modules")); - const modules = await modules_yaml_1.read(modulesDir); - const registries = normalize_registries_1.default({ - ...maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.registries, - ...modules === null || modules === void 0 ? void 0 : modules.registries + exports2.writePackage = void 0; + var store_connection_manager_1 = require_lib106(); + var pick_registry_for_package_1 = require_lib78(); + async function writePackage(dep, dest, opts) { + const store = await (0, store_connection_manager_1.createOrConnectStoreController)({ + ...opts, + packageImportMethod: "clone-or-copy" }); - const currentLockfile = (_a = (modules === null || modules === void 0 ? void 0 : modules.virtualStoreDir) && await lockfile_file_1.readCurrentLockfile(modules.virtualStoreDir, { ignoreIncompatible: false })) !== null && _a !== void 0 ? _a : null; - const result = {}; - if (!currentLockfile) { - for (const projectPath of projectPaths) { - result[projectPath] = {}; - } - return result; - } - const opts = { - depth: maybeOpts.depth || 0, - include: (_b = maybeOpts.include) !== null && _b !== void 0 ? _b : { - dependencies: true, - devDependencies: true, - optionalDependencies: true - }, - lockfileDir: maybeOpts.lockfileDir, - registries, - search: maybeOpts.search, - skipped: new Set((_c = modules === null || modules === void 0 ? void 0 : modules.skipped) !== null && _c !== void 0 ? _c : []) - }; - (await Promise.all(projectPaths.map(async (projectPath) => { - return [ - projectPath, - await dependenciesHierarchyForPackage(projectPath, currentLockfile, opts) - ]; - }))).forEach(([projectPath, dependenciesHierarchy2]) => { - result[projectPath] = dependenciesHierarchy2; + const pkgResponse = await store.ctrl.requestPackage(dep, { + downloadPriority: 1, + lockfileDir: opts.dir, + preferredVersions: {}, + projectDir: opts.dir, + registry: (dep.alias && (0, pick_registry_for_package_1.pickRegistryForPackage)(opts.registries, dep.alias)) ?? opts.registries.default }); - return result; - } - exports2.default = dependenciesHierarchy; - async function dependenciesHierarchyForPackage(projectPath, currentLockfile, opts) { - var _a, _b, _c, _d, _e; - const importerId = lockfile_file_1.getLockfileImporterId(opts.lockfileDir, projectPath); - if (!currentLockfile.importers[importerId]) - return {}; - const modulesDir = path_1.default.join(projectPath, "node_modules"); - const savedDeps = getAllDirectDependencies(currentLockfile.importers[importerId]); - const allDirectDeps = (_a = await read_modules_dir_1.default(modulesDir)) !== null && _a !== void 0 ? _a : []; - const unsavedDeps = allDirectDeps.filter((directDep) => !savedDeps[directDep]); - const wantedLockfile = (_b = await lockfile_file_1.readWantedLockfile(opts.lockfileDir, { ignoreIncompatible: false })) !== null && _b !== void 0 ? _b : { packages: {} }; - const getChildrenTree = getTree.bind(null, { - currentDepth: 1, - currentPackages: (_c = currentLockfile.packages) !== null && _c !== void 0 ? _c : {}, - includeOptionalDependencies: opts.include.optionalDependencies, - lockfileDir: opts.lockfileDir, - maxDepth: opts.depth, - modulesDir, - registries: opts.registries, - search: opts.search, - skipped: opts.skipped, - wantedPackages: (_d = wantedLockfile.packages) !== null && _d !== void 0 ? _d : {} + const filesResponse = await pkgResponse.files(); + await store.ctrl.importPackage(dest, { + filesResponse, + force: true }); - const result = {}; - for (const dependenciesField of types_1.DEPENDENCIES_FIELDS.sort().filter((dependenciedField) => opts.include[dependenciedField])) { - const topDeps = (_e = currentLockfile.importers[importerId][dependenciesField]) !== null && _e !== void 0 ? _e : {}; - result[dependenciesField] = []; - Object.keys(topDeps).forEach((alias) => { - var _a2, _b2, _c2; - const { packageInfo, packageAbsolutePath } = getPkgInfo({ - alias, - currentPackages: (_a2 = currentLockfile.packages) !== null && _a2 !== void 0 ? _a2 : {}, - lockfileDir: opts.lockfileDir, - modulesDir, - ref: topDeps[alias], - registries: opts.registries, - skipped: opts.skipped, - wantedPackages: (_b2 = wantedLockfile.packages) !== null && _b2 !== void 0 ? _b2 : {} - }); - let newEntry = null; - const matchedSearched = (_c2 = opts.search) === null || _c2 === void 0 ? void 0 : _c2.call(opts, packageInfo); - if (packageAbsolutePath === null) { - if (opts.search != null && !matchedSearched) - return; - newEntry = packageInfo; - } else { - const relativeId = dependency_path_1.refToRelative(topDeps[alias], alias); - if (relativeId) { - const dependencies = getChildrenTree([relativeId], relativeId); - if (dependencies.length > 0) { - newEntry = { - ...packageInfo, - dependencies - }; - } else if (opts.search == null || matchedSearched) { - newEntry = packageInfo; - } - } - } - if (newEntry != null) { - if (matchedSearched) { - newEntry.searched = true; - } - result[dependenciesField].push(newEntry); - } - }); - } - await Promise.all(unsavedDeps.map(async (unsavedDep) => { - var _a2, _b2, _c2; - let pkgPath = path_1.default.join(modulesDir, unsavedDep); - let version; - try { - pkgPath = await resolve_link_target_1.default(pkgPath); - version = `link:${normalize_path_1.default(path_1.default.relative(projectPath, pkgPath))}`; - } catch (err) { - const pkg2 = await read_package_json_1.safeReadPackageFromDir(pkgPath); - version = (_a2 = pkg2 === null || pkg2 === void 0 ? void 0 : pkg2.version) !== null && _a2 !== void 0 ? _a2 : "undefined"; - } - const pkg = { - alias: unsavedDep, - isMissing: false, - isPeer: false, - isSkipped: false, - name: unsavedDep, - path: pkgPath, - version - }; - const matchedSearched = (_b2 = opts.search) === null || _b2 === void 0 ? void 0 : _b2.call(opts, pkg); - if (opts.search != null && !matchedSearched) - return; - const newEntry = pkg; - if (matchedSearched) { - newEntry.searched = true; - } - result.unsavedDependencies = (_c2 = result.unsavedDependencies) !== null && _c2 !== void 0 ? _c2 : []; - result.unsavedDependencies.push(newEntry); - })); - return result; } - function getAllDirectDependencies(projectSnapshot) { + exports2.writePackage = writePackage; + } +}); + +// ../patching/plugin-commands-patching/lib/getPatchedDependency.js +var require_getPatchedDependency = __commonJS({ + "../patching/plugin-commands-patching/lib/getPatchedDependency.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getPatchedDependency = void 0; + var path_1 = __importDefault4(require("path")); + var parse_wanted_dependency_1 = require_lib136(); + var enquirer_1 = require_enquirer(); + var lockfile_file_1 = require_lib87(); + var lockfile_utils_1 = require_lib84(); + var error_1 = require_lib8(); + var constants_1 = require_lib7(); + var modules_yaml_1 = require_lib88(); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var semver_12 = __importDefault4(require_semver2()); + async function getPatchedDependency(rawDependency, opts) { + const dep = (0, parse_wanted_dependency_1.parseWantedDependency)(rawDependency); + const { versions, preferredVersions } = await getVersionsFromLockfile(dep, opts); + if (!preferredVersions.length) { + throw new error_1.PnpmError("PATCH_VERSION_NOT_FOUND", `Can not find ${rawDependency} in project ${opts.lockfileDir}, ${versions.length ? `you can specify currently installed version: ${versions.join(", ")}.` : `did you forget to install ${rawDependency}?`}`); + } + dep.alias = dep.alias ?? rawDependency; + if (preferredVersions.length > 1) { + const { version: version2 } = await (0, enquirer_1.prompt)({ + type: "select", + name: "version", + message: "Choose which version to patch", + choices: versions + }); + dep.pref = version2; + } else { + dep.pref = preferredVersions[0]; + } + return dep; + } + exports2.getPatchedDependency = getPatchedDependency; + async function getVersionsFromLockfile(dep, opts) { + const modulesDir = await (0, realpath_missing_1.default)(path_1.default.join(opts.lockfileDir, opts.modulesDir ?? "node_modules")); + const modules = await (0, modules_yaml_1.readModulesManifest)(modulesDir); + const lockfile = (modules?.virtualStoreDir && await (0, lockfile_file_1.readCurrentLockfile)(modules.virtualStoreDir, { + ignoreIncompatible: true + })) ?? null; + if (!lockfile) { + throw new error_1.PnpmError("PATCH_NO_LOCKFILE", `No ${constants_1.WANTED_LOCKFILE} found: Cannot patch without a lockfile`); + } + const pkgName = dep.alias && dep.pref ? dep.alias : dep.pref ?? dep.alias; + const versions = Object.entries(lockfile.packages ?? {}).map(([depPath, pkgSnapshot]) => (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot)).filter(({ name }) => name === pkgName).map(({ version: version2 }) => version2); return { - ...projectSnapshot.dependencies, - ...projectSnapshot.devDependencies, - ...projectSnapshot.optionalDependencies + versions, + preferredVersions: versions.filter((version2) => dep.alias && dep.pref ? semver_12.default.satisfies(version2, dep.pref) : true) }; } - function getTree(opts, keypath, parentId) { - const dependenciesCache = new Map(); - return getTreeHelper(dependenciesCache, opts, keypath, parentId).dependencies; + } +}); + +// ../patching/plugin-commands-patching/lib/patch.js +var require_patch2 = __commonJS({ + "../patching/plugin-commands-patching/lib/patch.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var patching_apply_patch_1 = require_lib114(); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var tempy_1 = __importDefault4(require_tempy()); + var error_1 = require_lib8(); + var writePackage_1 = require_writePackage(); + var getPatchedDependency_1 = require_getPatchedDependency(); + function rcOptionsTypes() { + return (0, pick_1.default)([], config_1.types); } - function getTreeHelper(dependenciesCache, opts, keypath, parentId) { - var _a; - const result = { dependencies: [] }; - if (opts.currentDepth > opts.maxDepth || !opts.currentPackages || !opts.currentPackages[parentId]) - return result; - const deps = !opts.includeOptionalDependencies ? opts.currentPackages[parentId].dependencies : { - ...opts.currentPackages[parentId].dependencies, - ...opts.currentPackages[parentId].optionalDependencies - }; - if (deps == null) - return result; - const getChildrenTree = getTreeHelper.bind(null, dependenciesCache, { - ...opts, - currentDepth: opts.currentDepth + 1 - }); - const peers = new Set(Object.keys((_a = opts.currentPackages[parentId].peerDependencies) !== null && _a !== void 0 ? _a : {})); - Object.keys(deps).forEach((alias) => { - var _a2; - const { packageInfo, packageAbsolutePath } = getPkgInfo({ - alias, - currentPackages: opts.currentPackages, - lockfileDir: opts.lockfileDir, - modulesDir: opts.modulesDir, - peers, - ref: deps[alias], - registries: opts.registries, - skipped: opts.skipped, - wantedPackages: opts.wantedPackages - }); - let circular; - const matchedSearched = (_a2 = opts.search) === null || _a2 === void 0 ? void 0 : _a2.call(opts, packageInfo); - let newEntry = null; - if (packageAbsolutePath === null) { - circular = false; - if (opts.search == null || matchedSearched) { - newEntry = packageInfo; - } - } else { - let dependencies; - const relativeId = dependency_path_1.refToRelative(deps[alias], alias); - circular = keypath.includes(relativeId); - if (circular) { - dependencies = []; - } else { - dependencies = dependenciesCache.get(packageAbsolutePath); - if (dependencies == null) { - const children = getChildrenTree(keypath.concat([relativeId]), relativeId); - dependencies = children.dependencies; - if (children.circular) { - result.circular = true; - } else { - dependenciesCache.set(packageAbsolutePath, dependencies); - } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { ...rcOptionsTypes(), "edit-dir": String, "ignore-existing": Boolean }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.shorthands = { + d: "--edit-dir" + }; + exports2.commandNames = ["patch"]; + function help() { + return (0, render_help_1.default)({ + description: "Prepare a package for patching", + descriptionLists: [{ + title: "Options", + list: [ + { + description: "The package that needs to be modified will be extracted to this directory", + name: "--edit-dir" + }, + { + description: "Ignore existing patch files when patching", + name: "--ignore-existing" } - } - if (dependencies.length > 0) { - newEntry = { - ...packageInfo, - dependencies - }; - } else if (opts.search == null || matchedSearched) { - newEntry = packageInfo; - } - } - if (newEntry != null) { - if (circular) { - newEntry.circular = true; - result.circular = true; - } - if (matchedSearched) { - newEntry.searched = true; - } - result.dependencies.push(newEntry); - } + ] + }], + url: (0, cli_utils_1.docsUrl)("patch"), + usages: ["pnpm patch @"] }); - return result; } - function getPkgInfo(opts) { - var _a; - let name; - let version; - let resolved; - let dev; - let optional; - let isSkipped = false; - let isMissing = false; - const depPath = dependency_path_1.refToRelative(opts.ref, opts.alias); - if (depPath) { - let pkgSnapshot; - if (opts.currentPackages[depPath]) { - pkgSnapshot = opts.currentPackages[depPath]; - const parsed = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - name = parsed.name; - version = parsed.version; - } else { - pkgSnapshot = opts.wantedPackages[depPath]; - if (pkgSnapshot) { - const parsed = lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot); - name = parsed.name; - version = parsed.version; - } else { - name = opts.alias; - version = opts.ref; - } - isMissing = true; - isSkipped = opts.skipped.has(depPath); - } - resolved = lockfile_utils_1.pkgSnapshotToResolution(depPath, pkgSnapshot, opts.registries)["tarball"]; - dev = pkgSnapshot.dev; - optional = pkgSnapshot.optional; - } else { - name = opts.alias; - version = opts.ref; + exports2.help = help; + async function handler(opts, params) { + if (opts.editDir && fs_1.default.existsSync(opts.editDir) && fs_1.default.readdirSync(opts.editDir).length > 0) { + throw new error_1.PnpmError("PATCH_EDIT_DIR_EXISTS", `The target directory already exists: '${opts.editDir}'`); } - const packageAbsolutePath = dependency_path_1.refToRelative(opts.ref, opts.alias); - const packageInfo = { - alias: opts.alias, - isMissing, - isPeer: Boolean((_a = opts.peers) === null || _a === void 0 ? void 0 : _a.has(opts.alias)), - isSkipped, - name, - path: depPath ? path_1.default.join(opts.modulesDir, ".pnpm", dependency_path_1.depPathToFilename(depPath, opts.lockfileDir)) : path_1.default.join(opts.modulesDir, "..", opts.ref.substr(5)), - version - }; - if (resolved) { - packageInfo["resolved"] = resolved; + if (!params[0]) { + throw new error_1.PnpmError("MISSING_PACKAGE_NAME", "`pnpm patch` requires the package name"); } - if (optional === true) { - packageInfo["optional"] = true; + const editDir = opts.editDir ?? tempy_1.default.directory(); + const lockfileDir = opts.lockfileDir ?? opts.dir ?? process.cwd(); + const patchedDep = await (0, getPatchedDependency_1.getPatchedDependency)(params[0], { + lockfileDir, + modulesDir: opts.modulesDir, + virtualStoreDir: opts.virtualStoreDir + }); + await (0, writePackage_1.writePackage)(patchedDep, editDir, opts); + if (!opts.ignoreExisting && opts.rootProjectManifest?.pnpm?.patchedDependencies) { + tryPatchWithExistingPatchFile({ + patchedDep, + patchedDir: editDir, + patchedDependencies: opts.rootProjectManifest.pnpm.patchedDependencies, + lockfileDir + }); } - if (typeof dev === "boolean") { - packageInfo["dev"] = dev; + return `You can now edit the following folder: ${editDir} + +Once you're done with your changes, run "pnpm patch-commit ${editDir}"`; + } + exports2.handler = handler; + function tryPatchWithExistingPatchFile({ patchedDep, patchedDir, patchedDependencies, lockfileDir }) { + if (!patchedDep.alias || !patchedDep.pref) { + return; } - return { - packageAbsolutePath, - packageInfo - }; + const existingPatchFile = patchedDependencies[`${patchedDep.alias}@${patchedDep.pref}`]; + if (!existingPatchFile) { + return; + } + const existingPatchFilePath = path_1.default.resolve(lockfileDir, existingPatchFile); + if (!fs_1.default.existsSync(existingPatchFilePath)) { + throw new error_1.PnpmError("PATCH_FILE_NOT_FOUND", `Unable to find patch file ${existingPatchFilePath}`); + } + (0, patching_apply_patch_1.applyPatchToDir)({ patchedDir, patchFilePath: existingPatchFilePath }); } } }); -// ../list/lib/createPackagesSearcher.js -var require_createPackagesSearcher = __commonJS({ - "../list/lib/createPackagesSearcher.js"(exports2) { +// ../patching/plugin-commands-patching/lib/patchCommit.js +var require_patchCommit = __commonJS({ + "../patching/plugin-commands-patching/lib/patchCommit.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var matcher_1 = __importDefault(require_lib23()); - var npm_package_arg_1 = __importDefault(require_npa()); - var semver_1 = __importDefault(require_semver2()); - function createPatternSearcher(queries) { - const searchers = queries.map(parseSearchQuery).map((packageSelector) => search.bind(null, packageSelector)); - return (pkg) => searchers.some((search2) => search2(pkg)); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var plugin_commands_installation_1 = require_lib147(); + var read_package_json_1 = require_lib41(); + var read_project_manifest_1 = require_lib16(); + var normalize_path_1 = __importDefault4(require_normalize_path()); + var pick_1 = __importDefault4(require_pick()); + var safe_execa_1 = __importDefault4(require_lib68()); + var escape_string_regexp_1 = __importDefault4(require_escape_string_regexp2()); + var render_help_1 = __importDefault4(require_lib34()); + var tempy_1 = __importDefault4(require_tempy()); + var writePackage_1 = require_writePackage(); + var parse_wanted_dependency_1 = require_lib136(); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return (0, pick_1.default)(["patches-dir"], config_1.types); } - exports2.default = createPatternSearcher; - function search(packageSelector, pkg) { - if (!packageSelector.matchName(pkg.name)) { - return false; + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["patch-commit"]; + function help() { + return (0, render_help_1.default)({ + description: "Generate a patch out of a directory", + descriptionLists: [{ + title: "Options", + list: [ + { + description: "The generated patch file will be saved to this directory", + name: "--patches-dir" + } + ] + }], + url: (0, cli_utils_1.docsUrl)("patch-commit"), + usages: ["pnpm patch-commit "] + }); + } + exports2.help = help; + async function handler(opts, params) { + const userDir = params[0]; + const lockfileDir = opts.lockfileDir ?? opts.dir ?? process.cwd(); + const patchesDirName = (0, normalize_path_1.default)(path_1.default.normalize(opts.patchesDir ?? "patches")); + const patchesDir = path_1.default.join(lockfileDir, patchesDirName); + await fs_1.default.promises.mkdir(patchesDir, { recursive: true }); + const patchedPkgManifest = await (0, read_package_json_1.readPackageJsonFromDir)(userDir); + const pkgNameAndVersion = `${patchedPkgManifest.name}@${patchedPkgManifest.version}`; + const srcDir = tempy_1.default.directory(); + await (0, writePackage_1.writePackage)((0, parse_wanted_dependency_1.parseWantedDependency)(pkgNameAndVersion), srcDir, opts); + const patchContent = await diffFolders(srcDir, userDir); + const patchFileName = pkgNameAndVersion.replace("/", "__"); + await fs_1.default.promises.writeFile(path_1.default.join(patchesDir, `${patchFileName}.patch`), patchContent, "utf8"); + const { writeProjectManifest, manifest } = await (0, read_project_manifest_1.tryReadProjectManifest)(lockfileDir); + const rootProjectManifest = opts.rootProjectManifest ?? manifest ?? {}; + if (!rootProjectManifest.pnpm) { + rootProjectManifest.pnpm = { + patchedDependencies: {} + }; + } else if (!rootProjectManifest.pnpm.patchedDependencies) { + rootProjectManifest.pnpm.patchedDependencies = {}; } - if (packageSelector.matchVersion == null) { - return true; + rootProjectManifest.pnpm.patchedDependencies[pkgNameAndVersion] = `${patchesDirName}/${patchFileName}.patch`; + await writeProjectManifest(rootProjectManifest); + if (opts?.selectedProjectsGraph?.[lockfileDir]) { + opts.selectedProjectsGraph[lockfileDir].package.manifest = rootProjectManifest; } - return !pkg.version.startsWith("link:") && packageSelector.matchVersion(pkg.version); + if (opts?.allProjectsGraph?.[lockfileDir].package.manifest) { + opts.allProjectsGraph[lockfileDir].package.manifest = rootProjectManifest; + } + return plugin_commands_installation_1.install.handler({ + ...opts, + rawLocalConfig: { + ...opts.rawLocalConfig, + "frozen-lockfile": false + } + }); } - function parseSearchQuery(query) { - const parsed = npm_package_arg_1.default(query); - if (parsed.raw === parsed.name) { - return { matchName: matcher_1.default(parsed.name) }; + exports2.handler = handler; + async function diffFolders(folderA, folderB) { + const folderAN = folderA.replace(/\\/g, "/"); + const folderBN = folderB.replace(/\\/g, "/"); + let stdout; + let stderr; + try { + const result2 = await (0, safe_execa_1.default)("git", ["-c", "core.safecrlf=false", "diff", "--src-prefix=a/", "--dst-prefix=b/", "--ignore-cr-at-eol", "--irreversible-delete", "--full-index", "--no-index", "--text", folderAN, folderBN], { + cwd: process.cwd(), + env: { + ...process.env, + // #region Predictable output + // These variables aim to ignore the global git config so we get predictable output + // https://git-scm.com/docs/git#Documentation/git.txt-codeGITCONFIGNOSYSTEMcode + GIT_CONFIG_NOSYSTEM: "1", + HOME: "", + XDG_CONFIG_HOME: "", + USERPROFILE: "" + // #endregion + } + }); + stdout = result2.stdout; + stderr = result2.stderr; + } catch (err) { + stdout = err.stdout; + stderr = err.stderr; } - if (parsed.type !== "version" && parsed.type !== "range") { - throw new Error(`Invalid queryument - ${query}. List can search only by version or range`); + if (stderr.length > 0) + throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH. +The following error was reported by 'git': +${stderr}`); + return stdout.replace(new RegExp(`(a|b)(${(0, escape_string_regexp_1.default)(`/${removeTrailingAndLeadingSlash(folderAN)}/`)})`, "g"), "$1/").replace(new RegExp(`(a|b)${(0, escape_string_regexp_1.default)(`/${removeTrailingAndLeadingSlash(folderBN)}/`)}`, "g"), "$1/").replace(new RegExp((0, escape_string_regexp_1.default)(`${folderAN}/`), "g"), "").replace(new RegExp((0, escape_string_regexp_1.default)(`${folderBN}/`), "g"), "").replace(/\n\\ No newline at end of file$/, ""); + } + function removeTrailingAndLeadingSlash(p) { + if (p.startsWith("/") || p.endsWith("/")) { + return p.replace(/^\/|\/$/g, ""); } - return { - matchName: matcher_1.default(parsed.name), - matchVersion: (version) => semver_1.default.satisfies(version, parsed.fetchSpec) - }; + return p; } } }); -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/sortBy.js -var require_sortBy = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/sortBy.js"(exports2, module2) { - var _curry2 = require_curry2(); - var sortBy = /* @__PURE__ */ _curry2(function sortBy2(fn2, list) { - return Array.prototype.slice.call(list, 0).sort(function(a, b) { - var aa = fn2(a); - var bb = fn2(b); - return aa < bb ? -1 : aa > bb ? 1 : 0; - }); - }); - module2.exports = sortBy; - } -}); - -// ../list/lib/readPkg.js -var require_readPkg = __commonJS({ - "../list/lib/readPkg.js"(exports2) { +// ../patching/plugin-commands-patching/lib/index.js +var require_lib155 = __commonJS({ + "../patching/plugin-commands-patching/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var read_package_json_1 = __importDefault(require_lib32()); - var p_limit_1 = __importDefault(require_p_limit()); - var limitPkgReads = p_limit_1.default(4); - exports2.default = async (pkgPath) => limitPkgReads(async () => read_package_json_1.default(pkgPath)); + exports2.patchCommit = exports2.patch = void 0; + var patch = __importStar5(require_patch2()); + exports2.patch = patch; + var patchCommit = __importStar5(require_patchCommit()); + exports2.patchCommit = patchCommit; } }); -// ../list/lib/getPkgInfo.js -var require_getPkgInfo = __commonJS({ - "../list/lib/getPkgInfo.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/makeEnv.js +var require_makeEnv = __commonJS({ + "../exec/plugin-commands-script-runners/lib/makeEnv.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var readPkg_1 = __importDefault(require_readPkg()); - async function getPkgInfo(pkg) { - var _a; - let manifest; - try { - manifest = await readPkg_1.default(path_1.default.join(pkg.path, "node_modules", pkg.name, "package.json")); - } catch (err) { - manifest = { - description: "[Could not find additional info about this dependency]" - }; + exports2.makeEnv = void 0; + var error_1 = require_lib8(); + var path_1 = __importDefault4(require("path")); + var path_name_1 = __importDefault4(require_path_name()); + function makeEnv(opts) { + for (const prependPath of opts.prependPaths) { + if (prependPath.includes(path_1.default.delimiter)) { + throw new error_1.PnpmError("BAD_PATH_DIR", `Cannot add ${prependPath} to PATH because it contains the path delimiter character (${path_1.default.delimiter})`); + } } return { - alias: pkg.alias, - from: pkg.name, - version: pkg.version, - resolved: pkg.resolved, - description: manifest.description, - homepage: manifest.homepage, - repository: (_a = manifest.repository && (typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url)) !== null && _a !== void 0 ? _a : void 0 + ...process.env, + ...opts.extraEnv, + npm_config_user_agent: opts.userAgent ?? "pnpm", + [path_name_1.default]: [ + ...opts.prependPaths, + process.env[path_name_1.default] + ].join(path_1.default.delimiter) }; } - exports2.default = getPkgInfo; + exports2.makeEnv = makeEnv; } }); -// ../list/lib/renderJson.js -var require_renderJson = __commonJS({ - "../list/lib/renderJson.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/dlx.js +var require_dlx = __commonJS({ + "../exec/plugin-commands-script-runners/lib/dlx.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toJsonResult = void 0; - var types_1 = require_lib14(); - var sortBy_1 = __importDefault(require_sortBy()); - var path_1 = __importDefault(require_path3()); - var getPkgInfo_1 = __importDefault(require_getPkgInfo()); - var sortPackages = sortBy_1.default(path_1.default(["pkg", "alias"])); - async function default_1(pkgs, opts) { - const jsonArr = await Promise.all(pkgs.map(async (pkg) => { - var _a; - const jsonObj = { - name: pkg.name, - version: pkg.version, - path: pkg.path - }; - for (const dependenciesField of [...types_1.DEPENDENCIES_FIELDS.sort(), "unsavedDependencies"]) { - if ((_a = pkg[dependenciesField]) === null || _a === void 0 ? void 0 : _a.length) { - jsonObj[dependenciesField] = await toJsonResult(pkg[dependenciesField], { long: opts.long }); - } - } - return jsonObj; - })); - return JSON.stringify(jsonArr, null, 2); + exports2.handler = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.shorthands = exports2.commandNames = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var plugin_commands_installation_1 = require_lib147(); + var read_package_json_1 = require_lib41(); + var package_bins_1 = require_lib39(); + var store_path_1 = require_lib66(); + var execa_1 = __importDefault4(require_lib17()); + var omit_1 = __importDefault4(require_omit()); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var makeEnv_1 = require_makeEnv(); + exports2.commandNames = ["dlx"]; + exports2.shorthands = { + c: "--shell-mode" + }; + function rcOptionsTypes() { + return { + ...(0, pick_1.default)([ + "use-node-version" + ], config_1.types), + "shell-mode": Boolean + }; } - exports2.default = default_1; - async function toJsonResult(entryNodes, opts) { - const dependencies = {}; - await Promise.all(sortPackages(entryNodes).map(async (node) => { - var _a; - const subDependencies = await toJsonResult((_a = node.dependencies) !== null && _a !== void 0 ? _a : [], opts); - const dep = opts.long ? await getPkgInfo_1.default(node) : { - alias: node.alias, - from: node.name, - version: node.version, - resolved: node.resolved - }; - if (Object.keys(subDependencies).length > 0) { - dep["dependencies"] = subDependencies; - } - if (!dep.resolved) { - delete dep.resolved; + exports2.rcOptionsTypes = rcOptionsTypes; + var cliOptionsTypes = () => ({ + ...rcOptionsTypes(), + package: [String, Array] + }); + exports2.cliOptionsTypes = cliOptionsTypes; + function help() { + return (0, render_help_1.default)({ + description: "Run a package in a temporary environment.", + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "The package to install before running the command", + name: "--package" + }, + { + description: "Runs the script inside of a shell. Uses /bin/sh on UNIX and \\cmd.exe on Windows.", + name: "--shell-mode", + shortAlias: "-c" + } + ] + }, + common_cli_options_help_1.OUTPUT_OPTIONS + ], + url: (0, cli_utils_1.docsUrl)("dlx"), + usages: ["pnpm dlx [args...]"] + }); + } + exports2.help = help; + async function handler(opts, [command, ...args2]) { + const dlxDir = await getDlxDir({ + dir: opts.dir, + pnpmHomeDir: opts.pnpmHomeDir, + storeDir: opts.storeDir + }); + const prefix = path_1.default.join(dlxDir, `dlx-${process.pid.toString()}`); + const modulesDir = path_1.default.join(prefix, "node_modules"); + const binsDir = path_1.default.join(modulesDir, ".bin"); + fs_1.default.mkdirSync(prefix, { recursive: true }); + process.on("exit", () => { + try { + fs_1.default.rmdirSync(prefix, { + recursive: true, + maxRetries: 3 + }); + } catch (err) { } - delete dep.alias; - dependencies[node.alias] = dep; - })); - return dependencies; + }); + const pkgs = opts.package ?? [command]; + const env = (0, makeEnv_1.makeEnv)({ userAgent: opts.userAgent, prependPaths: [binsDir] }); + await plugin_commands_installation_1.add.handler({ + ...(0, omit_1.default)(["workspaceDir"], opts), + bin: binsDir, + dir: prefix, + lockfileDir: prefix + }, pkgs); + const binName = opts.package ? command : await getBinName(modulesDir, await getPkgName(prefix)); + await (0, execa_1.default)(binName, args2, { + cwd: process.cwd(), + env, + stdio: "inherit", + shell: opts.shellMode ?? false + }); + } + exports2.handler = handler; + async function getPkgName(pkgDir) { + const manifest = await (0, read_package_json_1.readPackageJsonFromDir)(pkgDir); + return Object.keys(manifest.dependencies ?? {})[0]; + } + async function getBinName(modulesDir, pkgName) { + const pkgDir = path_1.default.join(modulesDir, pkgName); + const manifest = await (0, read_package_json_1.readPackageJsonFromDir)(pkgDir); + const bins = await (0, package_bins_1.getBinsFromPackageManifest)(manifest, pkgDir); + if (bins.length === 0) { + throw new error_1.PnpmError("DLX_NO_BIN", `No binaries found in ${pkgName}`); + } + if (bins.length === 1) { + return bins[0].name; + } + const scopelessPkgName = scopeless(manifest.name); + const defaultBin = bins.find(({ name }) => name === scopelessPkgName); + if (defaultBin) + return defaultBin.name; + const binNames = bins.map(({ name }) => name); + throw new error_1.PnpmError("DLX_MULTIPLE_BINS", `Could not determine executable to run. ${pkgName} has multiple binaries: ${binNames.join(", ")}`, { + hint: `Try one of the following: +${binNames.map((name) => `pnpm --package=${pkgName} dlx ${name}`).join("\n")} +` + }); + } + function scopeless(pkgName) { + if (pkgName.startsWith("@")) { + return pkgName.split("/")[1]; + } + return pkgName; + } + async function getDlxDir(opts) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + return path_1.default.join(storeDir, "tmp"); } - exports2.toJsonResult = toJsonResult; } }); -// ../list/lib/renderParseable.js -var require_renderParseable = __commonJS({ - "../list/lib/renderParseable.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/create.js +var require_create4 = __commonJS({ + "../exec/plugin-commands-script-runners/lib/create.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var sortBy_1 = __importDefault(require_sortBy()); - var prop_1 = __importDefault(require_prop()); - var sortPackages = sortBy_1.default(prop_1.default("name")); - async function default_1(pkgs, opts) { - return pkgs.map((pkg) => renderParseableForPackage(pkg, opts)).filter((p) => p.length !== 0).join("\n"); + exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.handler = exports2.commandNames = void 0; + var render_help_1 = __importDefault4(require_lib34()); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var pick_1 = __importDefault4(require_pick()); + var dlx = __importStar5(require_dlx()); + exports2.commandNames = ["create"]; + async function handler(_opts, params) { + const [packageName, ...packageArgs] = params; + if (packageName === void 0) { + throw new error_1.PnpmError("MISSING_ARGS", "Missing the template package name.\nThe correct usage is `pnpm create ` with substituted for a package name."); + } + const createPackageName = convertToCreateName(packageName); + return dlx.handler(_opts, [createPackageName, ...packageArgs]); } - exports2.default = default_1; - function renderParseableForPackage(pkg, opts) { - var _a, _b, _c, _d; - const pkgs = sortPackages(flatten([ - ...(_a = pkg.optionalDependencies) !== null && _a !== void 0 ? _a : [], - ...(_b = pkg.dependencies) !== null && _b !== void 0 ? _b : [], - ...(_c = pkg.devDependencies) !== null && _c !== void 0 ? _c : [], - ...(_d = pkg.unsavedDependencies) !== null && _d !== void 0 ? _d : [] - ])); - if (!opts.alwaysPrintRootPackage && pkgs.length === 0) - return ""; - if (opts.long) { - let firstLine = pkg.path; - if (pkg.name) { - firstLine += `:${pkg.name}`; - if (pkg.version) { - firstLine += `@${pkg.version}`; - } + exports2.handler = handler; + function rcOptionsTypes() { + return { + ...(0, pick_1.default)([ + "use-node-version" + ], config_1.types) + }; + } + exports2.rcOptionsTypes = rcOptionsTypes; + function cliOptionsTypes() { + return { + ...rcOptionsTypes() + }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + function help() { + return (0, render_help_1.default)({ + description: "Creates a project from a `create-*` starter kit.", + url: (0, cli_utils_1.docsUrl)("create"), + usages: [ + "pnpm create ", + "pnpm create ", + "pnpm create <@scope>" + ] + }); + } + exports2.help = help; + var CREATE_PREFIX = "create-"; + function convertToCreateName(packageName) { + if (packageName.startsWith("@")) { + const [scope, scopedPackage = ""] = packageName.split("/"); + if (scopedPackage === "") { + return `${scope}/create`; + } else { + return `${scope}/${ensureCreatePrefixed(scopedPackage)}`; } - return [ - firstLine, - ...pkgs.map((pkg2) => `${pkg2.path}:${pkg2.name}@${pkg2.version}`) - ].join("\n"); + } else { + return ensureCreatePrefixed(packageName); } - return [ - pkg.path, - ...pkgs.map((pkg2) => pkg2.path) - ].join("\n"); } - function flatten(nodes) { - var _a; - let packages = []; - for (const node of nodes) { - packages.push(node); - if ((_a = node.dependencies) === null || _a === void 0 ? void 0 : _a.length) { - packages = packages.concat(flatten(node.dependencies)); - } + function ensureCreatePrefixed(packageName) { + if (packageName.startsWith(CREATE_PREFIX)) { + return packageName; + } else { + return `${CREATE_PREFIX}${packageName}`; } - return packages; } } }); -// ../../node_modules/.pnpm/archy@1.0.0/node_modules/archy/index.js -var require_archy = __commonJS({ - "../../node_modules/.pnpm/archy@1.0.0/node_modules/archy/index.js"(exports2, module2) { - module2.exports = function archy(obj, prefix, opts) { - if (prefix === void 0) - prefix = ""; - if (!opts) - opts = {}; - var chr = function(s) { - var chars = { - "\u2502": "|", - "\u2514": "`", - "\u251C": "+", - "\u2500": "-", - "\u252C": "-" - }; - return opts.unicode === false ? chars[s] : s; - }; - if (typeof obj === "string") - obj = { label: obj }; - var nodes = obj.nodes || []; - var lines = (obj.label || "").split("\n"); - var splitter = "\n" + prefix + (nodes.length ? chr("\u2502") : " ") + " "; - return prefix + lines.join(splitter) + "\n" + nodes.map(function(node, ix) { - var last = ix === nodes.length - 1; - var more = node.nodes && node.nodes.length; - var prefix_ = prefix + (last ? " " : chr("\u2502")) + " "; - return prefix + (last ? chr("\u2514") : chr("\u251C")) + chr("\u2500") + (more ? chr("\u252C") : chr("\u2500")) + " " + archy(node, prefix_, opts).slice(prefix.length + 2); - }).join(""); +// ../exec/plugin-commands-script-runners/lib/existsInDir.js +var require_existsInDir = __commonJS({ + "../exec/plugin-commands-script-runners/lib/existsInDir.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.existsInDir = void 0; + var path_1 = __importDefault4(require("path")); + var path_exists_1 = __importDefault4(require_path_exists()); + async function existsInDir(entityName, dir) { + const entityPath = path_1.default.join(dir, entityName); + if (await (0, path_exists_1.default)(entityPath)) + return entityPath; + return void 0; + } + exports2.existsInDir = existsInDir; } }); -// ../../node_modules/.pnpm/strip-ansi@4.0.0/node_modules/strip-ansi/index.js -var require_strip_ansi3 = __commonJS({ - "../../node_modules/.pnpm/strip-ansi@4.0.0/node_modules/strip-ansi/index.js"(exports2, module2) { +// ../exec/plugin-commands-script-runners/lib/regexpCommand.js +var require_regexpCommand = __commonJS({ + "../exec/plugin-commands-script-runners/lib/regexpCommand.js"(exports2) { "use strict"; - var ansiRegex = require_ansi_regex(); - module2.exports = (input) => typeof input === "string" ? input.replace(ansiRegex(), "") : input; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tryBuildRegExpFromCommand = void 0; + var error_1 = require_lib8(); + function tryBuildRegExpFromCommand(command) { + const regExpDetectRegExpScriptCommand = /^\/((?:\\\/|[^/])+)\/([dgimuys]*)$/; + const match = command.match(regExpDetectRegExpScriptCommand); + if (!match) { + return null; + } + if (match[2]) { + throw new error_1.PnpmError("UNSUPPORTED_SCRIPT_COMMAND_FORMAT", "RegExp flags are not supported in script command selector"); + } + try { + return new RegExp(match[1]); + } catch { + return null; + } + } + exports2.tryBuildRegExpFromCommand = tryBuildRegExpFromCommand; } }); -// ../../node_modules/.pnpm/string-width@2.1.1/node_modules/string-width/index.js -var require_string_width3 = __commonJS({ - "../../node_modules/.pnpm/string-width@2.1.1/node_modules/string-width/index.js"(exports2, module2) { +// ../exec/plugin-commands-script-runners/lib/runRecursive.js +var require_runRecursive = __commonJS({ + "../exec/plugin-commands-script-runners/lib/runRecursive.js"(exports2) { "use strict"; - var stripAnsi = require_strip_ansi3(); - var isFullwidthCodePoint = require_is_fullwidth_code_point2(); - module2.exports = (str) => { - if (typeof str !== "string" || str.length === 0) { - return 0; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSpecifiedScripts = exports2.runRecursive = void 0; + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var lifecycle_1 = require_lib61(); + var logger_1 = require_lib6(); + var sort_packages_1 = require_lib110(); + var p_limit_12 = __importDefault4(require_p_limit()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var existsInDir_1 = require_existsInDir(); + var exec_1 = require_exec(); + var run_1 = require_run(); + var regexpCommand_1 = require_regexpCommand(); + async function runRecursive(params, opts) { + const [scriptName, ...passedThruArgs] = params; + if (!scriptName) { + throw new error_1.PnpmError("SCRIPT_NAME_IS_REQUIRED", "You must specify the script you want to run"); } - str = stripAnsi(str); - let width = 0; - for (let i = 0; i < str.length; i++) { - const code = str.codePointAt(i); - if (code <= 31 || code >= 127 && code <= 159) { - continue; - } - if (code >= 768 && code <= 879) { - continue; + let hasCommand = 0; + const sortedPackageChunks = opts.sort ? (0, sort_packages_1.sortPackages)(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; + let packageChunks = opts.reverse ? sortedPackageChunks.reverse() : sortedPackageChunks; + if (opts.resumeFrom) { + packageChunks = (0, exec_1.getResumedPackageChunks)({ + resumeFrom: opts.resumeFrom, + chunks: packageChunks, + selectedProjectsGraph: opts.selectedProjectsGraph + }); + } + const limitRun = (0, p_limit_12.default)(opts.workspaceConcurrency ?? 4); + const stdio = !opts.stream && (opts.workspaceConcurrency === 1 || packageChunks.length === 1 && packageChunks[0].length === 1) ? "inherit" : "pipe"; + const existsPnp = existsInDir_1.existsInDir.bind(null, ".pnp.cjs"); + const workspacePnpPath = opts.workspaceDir && await existsPnp(opts.workspaceDir); + const requiredScripts = opts.rootProjectManifest?.pnpm?.requiredScripts ?? []; + if (requiredScripts.includes(scriptName)) { + const missingScriptPackages = packageChunks.flat().map((prefix) => opts.selectedProjectsGraph[prefix]).filter((pkg) => getSpecifiedScripts(pkg.package.manifest.scripts ?? {}, scriptName).length < 1).map((pkg) => pkg.package.manifest.name ?? pkg.package.dir); + if (missingScriptPackages.length) { + throw new error_1.PnpmError("RECURSIVE_RUN_NO_SCRIPT", `Missing script "${scriptName}" in packages: ${missingScriptPackages.join(", ")}`); } - if (code > 65535) { - i++; + } + const result2 = (0, exec_1.createEmptyRecursiveSummary)(packageChunks); + for (const chunk of packageChunks) { + const selectedScripts = chunk.map((prefix) => { + const pkg = opts.selectedProjectsGraph[prefix]; + const specifiedScripts = getSpecifiedScripts(pkg.package.manifest.scripts ?? {}, scriptName); + if (!specifiedScripts.length) { + result2[prefix].status = "skipped"; + } + return specifiedScripts.map((script) => ({ prefix, scriptName: script })); + }).flat(); + await Promise.all(selectedScripts.map(async ({ prefix, scriptName: scriptName2 }) => limitRun(async () => { + const pkg = opts.selectedProjectsGraph[prefix]; + if (!pkg.package.manifest.scripts?.[scriptName2] || process.env.npm_lifecycle_event === scriptName2 && process.env.PNPM_SCRIPT_SRC_DIR === prefix) { + return; + } + result2[prefix].status = "running"; + const startTime = process.hrtime(); + hasCommand++; + try { + const lifecycleOpts = { + depPath: prefix, + extraBinPaths: opts.extraBinPaths, + extraEnv: opts.extraEnv, + pkgRoot: prefix, + rawConfig: opts.rawConfig, + rootModulesDir: await (0, realpath_missing_1.default)(path_1.default.join(prefix, "node_modules")), + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + shellEmulator: opts.shellEmulator, + stdio, + unsafePerm: true + // when running scripts explicitly, assume that they're trusted. + }; + const pnpPath = workspacePnpPath ?? await existsPnp(prefix); + if (pnpPath) { + lifecycleOpts.extraEnv = { + ...lifecycleOpts.extraEnv, + ...(0, lifecycle_1.makeNodeRequireOption)(pnpPath) + }; + } + const _runScript = run_1.runScript.bind(null, { manifest: pkg.package.manifest, lifecycleOpts, runScriptOptions: { enablePrePostScripts: opts.enablePrePostScripts ?? false }, passedThruArgs }); + await _runScript(scriptName2); + result2[prefix].status = "passed"; + result2[prefix].duration = (0, exec_1.getExecutionDuration)(startTime); + } catch (err) { + logger_1.logger.info(err); + result2[prefix] = { + status: "failure", + duration: (0, exec_1.getExecutionDuration)(startTime), + error: err, + message: err.message, + prefix + }; + if (!opts.bail) { + return; + } + err["code"] = "ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL"; + err["prefix"] = prefix; + opts.reportSummary && await (0, exec_1.writeRecursiveSummary)({ + dir: opts.workspaceDir ?? opts.dir, + summary: result2 + }); + throw err; + } + }))); + } + if (scriptName !== "test" && !hasCommand && !opts.ifPresent) { + const allPackagesAreSelected = Object.keys(opts.selectedProjectsGraph).length === opts.allProjects.length; + if (allPackagesAreSelected) { + throw new error_1.PnpmError("RECURSIVE_RUN_NO_SCRIPT", `None of the packages has a "${scriptName}" script`); + } else { + logger_1.logger.info({ + message: `None of the selected packages has a "${scriptName}" script`, + prefix: opts.workspaceDir + }); } - width += isFullwidthCodePoint(code) ? 2 : 1; } - return width; - }; + opts.reportSummary && await (0, exec_1.writeRecursiveSummary)({ + dir: opts.workspaceDir ?? opts.dir, + summary: result2 + }); + (0, cli_utils_1.throwOnCommandFail)("pnpm recursive run", result2); + } + exports2.runRecursive = runRecursive; + function getSpecifiedScripts(scripts, scriptName) { + if (scripts[scriptName]) { + return [scriptName]; + } + const scriptSelector = (0, regexpCommand_1.tryBuildRegExpFromCommand)(scriptName); + if (scriptSelector) { + const scriptKeys = Object.keys(scripts); + return scriptKeys.filter((script) => script.match(scriptSelector)); + } + return []; + } + exports2.getSpecifiedScripts = getSpecifiedScripts; } }); -// ../../node_modules/.pnpm/ansi-regex@2.1.1/node_modules/ansi-regex/index.js -var require_ansi_regex4 = __commonJS({ - "../../node_modules/.pnpm/ansi-regex@2.1.1/node_modules/ansi-regex/index.js"(exports2, module2) { +// ../node_modules/.pnpm/fastest-levenshtein@1.0.16/node_modules/fastest-levenshtein/mod.js +var require_mod = __commonJS({ + "../node_modules/.pnpm/fastest-levenshtein@1.0.16/node_modules/fastest-levenshtein/mod.js"(exports2) { "use strict"; - module2.exports = function() { - return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]/g; + exports2.__esModule = true; + exports2.distance = exports2.closest = void 0; + var peq = new Uint32Array(65536); + var myers_32 = function(a, b) { + var n = a.length; + var m = b.length; + var lst = 1 << n - 1; + var pv = -1; + var mv = 0; + var sc = n; + var i = n; + while (i--) { + peq[a.charCodeAt(i)] |= 1 << i; + } + for (i = 0; i < m; i++) { + var eq = peq[b.charCodeAt(i)]; + var xv = eq | mv; + eq |= (eq & pv) + pv ^ pv; + mv |= ~(eq | pv); + pv &= eq; + if (mv & lst) { + sc++; + } + if (pv & lst) { + sc--; + } + mv = mv << 1 | 1; + pv = pv << 1 | ~(xv | mv); + mv &= xv; + } + i = n; + while (i--) { + peq[a.charCodeAt(i)] = 0; + } + return sc; }; - } -}); - -// ../../node_modules/.pnpm/strip-ansi@3.0.1/node_modules/strip-ansi/index.js -var require_strip_ansi4 = __commonJS({ - "../../node_modules/.pnpm/strip-ansi@3.0.1/node_modules/strip-ansi/index.js"(exports2, module2) { - "use strict"; - var ansiRegex = require_ansi_regex4()(); - module2.exports = function(str) { - return typeof str === "string" ? str.replace(ansiRegex, "") : str; + var myers_x = function(b, a) { + var n = a.length; + var m = b.length; + var mhc = []; + var phc = []; + var hsize = Math.ceil(n / 32); + var vsize = Math.ceil(m / 32); + for (var i = 0; i < hsize; i++) { + phc[i] = -1; + mhc[i] = 0; + } + var j = 0; + for (; j < vsize - 1; j++) { + var mv_1 = 0; + var pv_1 = -1; + var start_1 = j * 32; + var vlen_1 = Math.min(32, m) + start_1; + for (var k = start_1; k < vlen_1; k++) { + peq[b.charCodeAt(k)] |= 1 << k; + } + for (var i = 0; i < n; i++) { + var eq = peq[a.charCodeAt(i)]; + var pb = phc[i / 32 | 0] >>> i & 1; + var mb = mhc[i / 32 | 0] >>> i & 1; + var xv = eq | mv_1; + var xh = ((eq | mb) & pv_1) + pv_1 ^ pv_1 | eq | mb; + var ph = mv_1 | ~(xh | pv_1); + var mh = pv_1 & xh; + if (ph >>> 31 ^ pb) { + phc[i / 32 | 0] ^= 1 << i; + } + if (mh >>> 31 ^ mb) { + mhc[i / 32 | 0] ^= 1 << i; + } + ph = ph << 1 | pb; + mh = mh << 1 | mb; + pv_1 = mh | ~(xv | ph); + mv_1 = ph & xv; + } + for (var k = start_1; k < vlen_1; k++) { + peq[b.charCodeAt(k)] = 0; + } + } + var mv = 0; + var pv = -1; + var start = j * 32; + var vlen = Math.min(32, m - start) + start; + for (var k = start; k < vlen; k++) { + peq[b.charCodeAt(k)] |= 1 << k; + } + var score = m; + for (var i = 0; i < n; i++) { + var eq = peq[a.charCodeAt(i)]; + var pb = phc[i / 32 | 0] >>> i & 1; + var mb = mhc[i / 32 | 0] >>> i & 1; + var xv = eq | mv; + var xh = ((eq | mb) & pv) + pv ^ pv | eq | mb; + var ph = mv | ~(xh | pv); + var mh = pv & xh; + score += ph >>> m - 1 & 1; + score -= mh >>> m - 1 & 1; + if (ph >>> 31 ^ pb) { + phc[i / 32 | 0] ^= 1 << i; + } + if (mh >>> 31 ^ mb) { + mhc[i / 32 | 0] ^= 1 << i; + } + ph = ph << 1 | pb; + mh = mh << 1 | mb; + pv = mh | ~(xv | ph); + mv = ph & xv; + } + for (var k = start; k < vlen; k++) { + peq[b.charCodeAt(k)] = 0; + } + return score; + }; + var distance = function(a, b) { + if (a.length < b.length) { + var tmp = b; + b = a; + a = tmp; + } + if (b.length === 0) { + return a.length; + } + if (a.length <= 32) { + return myers_32(a, b); + } + return myers_x(a, b); + }; + exports2.distance = distance; + var closest = function(str, arr) { + var min_distance = Infinity; + var min_index = 0; + for (var i = 0; i < arr.length; i++) { + var dist = distance(str, arr[i]); + if (dist < min_distance) { + min_distance = dist; + min_index = i; + } + } + return arr[min_index]; }; + exports2.closest = closest; } }); -// ../../node_modules/.pnpm/cli-columns@3.1.2/node_modules/cli-columns/index.js -var require_cli_columns = __commonJS({ - "../../node_modules/.pnpm/cli-columns@3.1.2/node_modules/cli-columns/index.js"(exports2, module2) { - "use strict"; - var stringWidth = require_string_width3(); - var stripAnsi = require_strip_ansi4(); - var concat = Array.prototype.concat; - var defaults = { - character: " ", - newline: "\n", - padding: 2, - sort: true, - width: 0 +// ../node_modules/.pnpm/lodash.deburr@4.1.0/node_modules/lodash.deburr/index.js +var require_lodash2 = __commonJS({ + "../node_modules/.pnpm/lodash.deburr@4.1.0/node_modules/lodash.deburr/index.js"(exports2, module2) { + var INFINITY = 1 / 0; + var symbolTag = "[object Symbol]"; + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23"; + var rsComboSymbolsRange = "\\u20d0-\\u20f0"; + var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]"; + var reComboMark = RegExp(rsCombo, "g"); + var deburredLetters = { + // Latin-1 Supplement block. + "\xC0": "A", + "\xC1": "A", + "\xC2": "A", + "\xC3": "A", + "\xC4": "A", + "\xC5": "A", + "\xE0": "a", + "\xE1": "a", + "\xE2": "a", + "\xE3": "a", + "\xE4": "a", + "\xE5": "a", + "\xC7": "C", + "\xE7": "c", + "\xD0": "D", + "\xF0": "d", + "\xC8": "E", + "\xC9": "E", + "\xCA": "E", + "\xCB": "E", + "\xE8": "e", + "\xE9": "e", + "\xEA": "e", + "\xEB": "e", + "\xCC": "I", + "\xCD": "I", + "\xCE": "I", + "\xCF": "I", + "\xEC": "i", + "\xED": "i", + "\xEE": "i", + "\xEF": "i", + "\xD1": "N", + "\xF1": "n", + "\xD2": "O", + "\xD3": "O", + "\xD4": "O", + "\xD5": "O", + "\xD6": "O", + "\xD8": "O", + "\xF2": "o", + "\xF3": "o", + "\xF4": "o", + "\xF5": "o", + "\xF6": "o", + "\xF8": "o", + "\xD9": "U", + "\xDA": "U", + "\xDB": "U", + "\xDC": "U", + "\xF9": "u", + "\xFA": "u", + "\xFB": "u", + "\xFC": "u", + "\xDD": "Y", + "\xFD": "y", + "\xFF": "y", + "\xC6": "Ae", + "\xE6": "ae", + "\xDE": "Th", + "\xFE": "th", + "\xDF": "ss", + // Latin Extended-A block. + "\u0100": "A", + "\u0102": "A", + "\u0104": "A", + "\u0101": "a", + "\u0103": "a", + "\u0105": "a", + "\u0106": "C", + "\u0108": "C", + "\u010A": "C", + "\u010C": "C", + "\u0107": "c", + "\u0109": "c", + "\u010B": "c", + "\u010D": "c", + "\u010E": "D", + "\u0110": "D", + "\u010F": "d", + "\u0111": "d", + "\u0112": "E", + "\u0114": "E", + "\u0116": "E", + "\u0118": "E", + "\u011A": "E", + "\u0113": "e", + "\u0115": "e", + "\u0117": "e", + "\u0119": "e", + "\u011B": "e", + "\u011C": "G", + "\u011E": "G", + "\u0120": "G", + "\u0122": "G", + "\u011D": "g", + "\u011F": "g", + "\u0121": "g", + "\u0123": "g", + "\u0124": "H", + "\u0126": "H", + "\u0125": "h", + "\u0127": "h", + "\u0128": "I", + "\u012A": "I", + "\u012C": "I", + "\u012E": "I", + "\u0130": "I", + "\u0129": "i", + "\u012B": "i", + "\u012D": "i", + "\u012F": "i", + "\u0131": "i", + "\u0134": "J", + "\u0135": "j", + "\u0136": "K", + "\u0137": "k", + "\u0138": "k", + "\u0139": "L", + "\u013B": "L", + "\u013D": "L", + "\u013F": "L", + "\u0141": "L", + "\u013A": "l", + "\u013C": "l", + "\u013E": "l", + "\u0140": "l", + "\u0142": "l", + "\u0143": "N", + "\u0145": "N", + "\u0147": "N", + "\u014A": "N", + "\u0144": "n", + "\u0146": "n", + "\u0148": "n", + "\u014B": "n", + "\u014C": "O", + "\u014E": "O", + "\u0150": "O", + "\u014D": "o", + "\u014F": "o", + "\u0151": "o", + "\u0154": "R", + "\u0156": "R", + "\u0158": "R", + "\u0155": "r", + "\u0157": "r", + "\u0159": "r", + "\u015A": "S", + "\u015C": "S", + "\u015E": "S", + "\u0160": "S", + "\u015B": "s", + "\u015D": "s", + "\u015F": "s", + "\u0161": "s", + "\u0162": "T", + "\u0164": "T", + "\u0166": "T", + "\u0163": "t", + "\u0165": "t", + "\u0167": "t", + "\u0168": "U", + "\u016A": "U", + "\u016C": "U", + "\u016E": "U", + "\u0170": "U", + "\u0172": "U", + "\u0169": "u", + "\u016B": "u", + "\u016D": "u", + "\u016F": "u", + "\u0171": "u", + "\u0173": "u", + "\u0174": "W", + "\u0175": "w", + "\u0176": "Y", + "\u0177": "y", + "\u0178": "Y", + "\u0179": "Z", + "\u017B": "Z", + "\u017D": "Z", + "\u017A": "z", + "\u017C": "z", + "\u017E": "z", + "\u0132": "IJ", + "\u0133": "ij", + "\u0152": "Oe", + "\u0153": "oe", + "\u0149": "'n", + "\u017F": "ss" }; - function byPlainText(a, b) { - const plainA = stripAnsi(a); - const plainB = stripAnsi(b); - if (plainA === plainB) { - return 0; + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + function basePropertyOf(object) { + return function(key) { + return object == null ? void 0 : object[key]; + }; + } + var deburrLetter = basePropertyOf(deburredLetters); + var objectProto = Object.prototype; + var objectToString = objectProto.toString; + var Symbol2 = root.Symbol; + var symbolProto = Symbol2 ? Symbol2.prototype : void 0; + var symbolToString = symbolProto ? symbolProto.toString : void 0; + function baseToString(value) { + if (typeof value == "string") { + return value; } - if (plainA > plainB) { - return 1; + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ""; } - return -1; - } - function makeArray() { - return []; - } - function makeList(count) { - return Array.apply(null, Array(count)); + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; } - function padCell(fullWidth, character, value) { - const valueWidth = stringWidth(value); - const filler = makeList(fullWidth - valueWidth + 1); - return value + filler.join(character); + function isObjectLike(value) { + return !!value && typeof value == "object"; } - function toRows(rows, cell, i) { - rows[i % rows.length].push(cell); - return rows; + function isSymbol(value) { + return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } - function toString(arr) { - return arr.join(""); + function toString(value) { + return value == null ? "" : baseToString(value); } - function columns(values, options) { - values = concat.apply([], values); - options = Object.assign({}, defaults, options); - let cells = values.filter(Boolean).map(String); - if (options.sort !== false) { - cells = cells.sort(byPlainText); - } - const termWidth = options.width || process.stdout.columns; - const cellWidth = Math.max.apply(null, cells.map(stringWidth)) + options.padding; - const columnCount = Math.floor(termWidth / cellWidth) || 1; - const rowCount = Math.ceil(cells.length / columnCount) || 1; - if (columnCount === 1) { - return cells.join(options.newline); - } - return cells.map(padCell.bind(null, cellWidth, options.character)).reduce(toRows, makeList(rowCount).map(makeArray)).map(toString).join(options.newline); + function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); } - module2.exports = columns; + module2.exports = deburr; } }); -// ../list/lib/renderTree.js -var require_renderTree = __commonJS({ - "../list/lib/renderTree.js"(exports2) { +// ../node_modules/.pnpm/didyoumean2@5.0.0/node_modules/didyoumean2/dist/index.cjs +var require_dist16 = __commonJS({ + "../node_modules/.pnpm/didyoumean2@5.0.0/node_modules/didyoumean2/dist/index.cjs"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toArchyTree = void 0; - var path_1 = __importDefault(require("path")); - var types_1 = require_lib14(); - var archy_1 = __importDefault(require_archy()); - var chalk_1 = __importDefault(require_source()); - var cli_columns_1 = __importDefault(require_cli_columns()); - var sortBy_1 = __importDefault(require_sortBy()); - var path_2 = __importDefault(require_path3()); - var getPkgInfo_1 = __importDefault(require_getPkgInfo()); - var sortPackages = sortBy_1.default(path_2.default(["name"])); - var DEV_DEP_ONLY_CLR = chalk_1.default.yellow; - var PROD_DEP_CLR = (s) => s; - var OPTIONAL_DEP_CLR = chalk_1.default.blue; - var NOT_SAVED_DEP_CLR = chalk_1.default.red; - var LEGEND = `Legend: ${PROD_DEP_CLR("production dependency")}, ${OPTIONAL_DEP_CLR("optional only")}, ${DEV_DEP_ONLY_CLR("dev only")} - -`; - async function default_1(packages, opts) { - const output = (await Promise.all(packages.map(async (pkg) => renderTreeForPackage(pkg, opts)))).filter(Boolean).join("\n\n"); - return `${opts.depth > -1 && output ? LEGEND : ""}${output}`; + var e = require_mod(); + function t(e2) { + return e2 && "object" == typeof e2 && "default" in e2 ? e2 : { default: e2 }; } - exports2.default = default_1; - async function renderTreeForPackage(pkg, opts) { - var _a, _b, _c, _d, _e; - if (!opts.alwaysPrintRootPackage && !((_a = pkg.dependencies) === null || _a === void 0 ? void 0 : _a.length) && !((_b = pkg.devDependencies) === null || _b === void 0 ? void 0 : _b.length) && !((_c = pkg.optionalDependencies) === null || _c === void 0 ? void 0 : _c.length) && (!opts.showExtraneous || !((_d = pkg.unsavedDependencies) === null || _d === void 0 ? void 0 : _d.length))) - return ""; - let label = ""; - if (pkg.name) { - label += pkg.name; - if (pkg.version) { - label += `@${pkg.version}`; + var s = t(require_lodash2()); + var r; + var o; + exports2.ReturnTypeEnums = void 0, (r = exports2.ReturnTypeEnums || (exports2.ReturnTypeEnums = {})).ALL_CLOSEST_MATCHES = "all-closest-matches", r.ALL_MATCHES = "all-matches", r.ALL_SORTED_MATCHES = "all-sorted-matches", r.FIRST_CLOSEST_MATCH = "first-closest-match", r.FIRST_MATCH = "first-match", exports2.ThresholdTypeEnums = void 0, (o = exports2.ThresholdTypeEnums || (exports2.ThresholdTypeEnums = {})).EDIT_DISTANCE = "edit-distance", o.SIMILARITY = "similarity"; + var n = new Error("unknown returnType"); + var T = new Error("unknown thresholdType"); + var u = (e2, t2) => { + let r2 = e2; + return t2.trimSpaces && (r2 = r2.trim().replace(/\s+/g, " ")), t2.deburr && (r2 = s.default(r2)), t2.caseSensitive || (r2 = r2.toLowerCase()), r2; + }; + var h = (e2, t2) => { + const { matchPath: s2 } = t2, r2 = ((e3, t3) => { + const s3 = t3.length > 0 ? t3.reduce((e4, t4) => null == e4 ? void 0 : e4[t4], e3) : e3; + return "string" != typeof s3 ? "" : s3; + })(e2, s2); + return u(r2, t2); + }; + exports2.default = function(t2, s2, r2) { + const o2 = ((e2) => { + const t3 = { caseSensitive: false, deburr: true, matchPath: [], returnType: exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH, thresholdType: exports2.ThresholdTypeEnums.SIMILARITY, trimSpaces: true, ...e2 }; + switch (t3.thresholdType) { + case exports2.ThresholdTypeEnums.EDIT_DISTANCE: + return { threshold: 20, ...t3 }; + case exports2.ThresholdTypeEnums.SIMILARITY: + return { threshold: 0.4, ...t3 }; + default: + throw T; } - label += " "; - } - label += pkg.path; - let output = `${chalk_1.default.bold.underline(label)} -`; - const useColumns = opts.depth === 0 && !opts.long && !opts.search; - const dependenciesFields = [ - ...types_1.DEPENDENCIES_FIELDS.sort() - ]; - if (opts.showExtraneous) { - dependenciesFields.push("unsavedDependencies"); + })(r2), { returnType: p, threshold: c, thresholdType: a } = o2, l = u(t2, o2); + let E, S; + switch (a) { + case exports2.ThresholdTypeEnums.EDIT_DISTANCE: + E = (e2) => e2 <= c, S = (t3) => e.distance(l, h(t3, o2)); + break; + case exports2.ThresholdTypeEnums.SIMILARITY: + E = (e2) => e2 >= c, S = (t3) => ((t4, s3) => { + if (!t4 || !s3) + return 0; + if (t4 === s3) + return 1; + const r3 = e.distance(t4, s3), o3 = Math.max(t4.length, s3.length); + return (o3 - r3) / o3; + })(l, h(t3, o2)); + break; + default: + throw T; } - for (const dependenciesField of dependenciesFields) { - if ((_e = pkg[dependenciesField]) === null || _e === void 0 ? void 0 : _e.length) { - const depsLabel = chalk_1.default.cyanBright(dependenciesField !== "unsavedDependencies" ? `${dependenciesField}:` : "not saved (you should add these dependencies to package.json if you need them):"); - output += ` -${depsLabel} -`; - const gPkgColor = dependenciesField === "unsavedDependencies" ? () => NOT_SAVED_DEP_CLR : getPkgColor; - if (useColumns && pkg[dependenciesField].length > 10) { - output += cli_columns_1.default(pkg[dependenciesField].map(printLabel.bind(printLabel, gPkgColor))) + "\n"; - continue; + const d = [], i = s2.length; + switch (p) { + case exports2.ReturnTypeEnums.ALL_CLOSEST_MATCHES: + case exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH: { + const e2 = []; + let t3; + switch (a) { + case exports2.ThresholdTypeEnums.EDIT_DISTANCE: + t3 = 1 / 0; + for (let r4 = 0; r4 < i; r4 += 1) { + const o3 = S(s2[r4]); + t3 > o3 && (t3 = o3), e2.push(o3); + } + break; + case exports2.ThresholdTypeEnums.SIMILARITY: + t3 = 0; + for (let r4 = 0; r4 < i; r4 += 1) { + const o3 = S(s2[r4]); + t3 < o3 && (t3 = o3), e2.push(o3); + } + break; + default: + throw T; } - const data = await toArchyTree(gPkgColor, pkg[dependenciesField], { - long: opts.long, - modules: path_1.default.join(pkg.path, "node_modules") - }); - for (const d of data) { - output += archy_1.default(d); + const r3 = e2.length; + for (let s3 = 0; s3 < r3; s3 += 1) { + const r4 = e2[s3]; + E(r4) && r4 === t3 && d.push(s3); } + break; } - } - return output.replace(/\n$/, ""); - } - async function toArchyTree(getPkgColor2, entryNodes, opts) { - return Promise.all(sortPackages(entryNodes).map(async (node) => { - var _a; - const nodes = await toArchyTree(getPkgColor2, (_a = node.dependencies) !== null && _a !== void 0 ? _a : [], opts); - if (opts.long) { - const pkg = await getPkgInfo_1.default(node); - const labelLines = [ - printLabel(getPkgColor2, node), - pkg.description - ]; - if (pkg.repository) { - labelLines.push(pkg.repository); + case exports2.ReturnTypeEnums.ALL_MATCHES: + for (let e2 = 0; e2 < i; e2 += 1) { + E(S(s2[e2])) && d.push(e2); } - if (pkg.homepage) { - labelLines.push(pkg.homepage); + break; + case exports2.ReturnTypeEnums.ALL_SORTED_MATCHES: { + const e2 = []; + for (let t3 = 0; t3 < i; t3 += 1) { + const r3 = S(s2[t3]); + E(r3) && e2.push({ score: r3, index: t3 }); } - return { - label: labelLines.join("\n"), - nodes - }; + switch (a) { + case exports2.ThresholdTypeEnums.EDIT_DISTANCE: + e2.sort((e3, t3) => e3.score - t3.score); + break; + case exports2.ThresholdTypeEnums.SIMILARITY: + e2.sort((e3, t3) => t3.score - e3.score); + break; + default: + throw T; + } + for (const t3 of e2) + d.push(t3.index); + break; } - return { - label: printLabel(getPkgColor2, node), - nodes - }; - })); - } - exports2.toArchyTree = toArchyTree; - function printLabel(getPkgColor2, node) { - const color = getPkgColor2(node); - let txt = `${color(node.name)} ${chalk_1.default.gray(node.version)}`; - if (node.isPeer) { - txt += " peer"; - } - if (node.isSkipped) { - txt += " skipped"; - } - return node.searched ? chalk_1.default.bold(txt) : txt; - } - function getPkgColor(node) { - if (node.dev === true) - return DEV_DEP_ONLY_CLR; - if (node.optional) - return OPTIONAL_DEP_CLR; - return PROD_DEP_CLR; - } - } -}); - -// ../list/lib/index.js -var require_lib100 = __commonJS({ - "../list/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.forPackages = void 0; - var read_project_manifest_1 = require_lib19(); - var dependencies_hierarchy_1 = __importDefault(require_lib99()); - var createPackagesSearcher_1 = __importDefault(require_createPackagesSearcher()); - var renderJson_1 = __importDefault(require_renderJson()); - var renderParseable_1 = __importDefault(require_renderParseable()); - var renderTree_1 = __importDefault(require_renderTree()); - var DEFAULTS = { - alwaysPrintRootPackage: true, - depth: 0, - long: false, - registries: void 0, - reportAs: "tree", - showExtraneous: true - }; - async function forPackages(packages, projectPaths, maybeOpts) { - const opts = { ...DEFAULTS, ...maybeOpts }; - const search = createPackagesSearcher_1.default(packages); - const pkgs = await Promise.all(Object.entries(await dependencies_hierarchy_1.default(projectPaths, { - depth: opts.depth, - include: maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.include, - lockfileDir: maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.lockfileDir, - registries: opts.registries, - search - })).map(async ([projectPath, dependenciesHierarchy]) => { - const entryPkg = await read_project_manifest_1.readProjectManifestOnly(projectPath); - return { - name: entryPkg.name, - version: entryPkg.version, - path: projectPath, - ...dependenciesHierarchy - }; - })); - const print = getPrinter(opts.reportAs); - return print(pkgs, { - alwaysPrintRootPackage: opts.alwaysPrintRootPackage, - depth: opts.depth, - long: opts.long, - search: Boolean(packages.length), - showExtraneous: opts.showExtraneous - }); - } - exports2.forPackages = forPackages; - async function default_1(projectPaths, maybeOpts) { - const opts = { ...DEFAULTS, ...maybeOpts }; - const pkgs = await Promise.all(Object.entries(opts.depth === -1 ? projectPaths.reduce((acc, projectPath) => { - acc[projectPath] = {}; - return acc; - }, {}) : await dependencies_hierarchy_1.default(projectPaths, { - depth: opts.depth, - include: maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.include, - lockfileDir: maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.lockfileDir, - registries: opts.registries - })).map(async ([projectPath, dependenciesHierarchy]) => { - const entryPkg = await read_project_manifest_1.readProjectManifestOnly(projectPath); - return { - name: entryPkg.name, - version: entryPkg.version, - path: projectPath, - ...dependenciesHierarchy - }; - })); - const print = getPrinter(opts.reportAs); - return print(pkgs, { - alwaysPrintRootPackage: opts.alwaysPrintRootPackage, - depth: opts.depth, - long: opts.long, - search: false, - showExtraneous: opts.showExtraneous - }); - } - exports2.default = default_1; - function getPrinter(reportAs) { - switch (reportAs) { - case "parseable": - return renderParseable_1.default; - case "json": - return renderJson_1.default; - case "tree": - return renderTree_1.default; - } - } - } -}); - -// ../plugin-commands-listing/lib/recursive.js -var require_recursive3 = __commonJS({ - "../plugin-commands-listing/lib/recursive.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var logger_1 = __importDefault(require_lib6()); - var list_1 = require_list2(); - exports2.default = async (pkgs, params, opts) => { - var _a, _b; - const depth = (_a = opts.depth) !== null && _a !== void 0 ? _a : 0; - if (opts.lockfileDir) { - return list_1.render(pkgs.map((pkg) => pkg.dir), params, { - ...opts, - alwaysPrintRootPackage: depth === -1, - lockfileDir: opts.lockfileDir - }); + case exports2.ReturnTypeEnums.FIRST_MATCH: + for (let e2 = 0; e2 < i; e2 += 1) { + if (E(S(s2[e2]))) { + d.push(e2); + break; + } + } + break; + default: + throw n; } - const outputs = []; - for (const { dir } of pkgs) { - try { - const output = await list_1.render([dir], params, { - ...opts, - alwaysPrintRootPackage: depth === -1, - lockfileDir: (_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : dir - }); - if (!output) - continue; - outputs.push(output); - } catch (err) { - logger_1.default.info(err); - err["prefix"] = dir; - throw err; + return ((e2, t3, s3) => { + switch (s3) { + case exports2.ReturnTypeEnums.ALL_CLOSEST_MATCHES: + case exports2.ReturnTypeEnums.ALL_MATCHES: + case exports2.ReturnTypeEnums.ALL_SORTED_MATCHES: + return t3.map((t4) => e2[t4]); + case exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH: + case exports2.ReturnTypeEnums.FIRST_MATCH: + return t3.length ? e2[t3[0]] : null; + default: + throw n; } - } - if (outputs.length === 0) - return ""; - const joiner = typeof depth === "number" && depth > -1 ? "\n\n" : "\n"; - return outputs.join(joiner); + })(s2, d, p); }; } }); -// ../plugin-commands-listing/lib/list.js -var require_list2 = __commonJS({ - "../plugin-commands-listing/lib/list.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/buildCommandNotFoundHint.js +var require_buildCommandNotFoundHint = __commonJS({ + "../exec/plugin-commands-script-runners/lib/buildCommandNotFoundHint.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildCommandNotFoundHint = void 0; + var didyoumean2_1 = __importStar5(require_dist16()); + function buildCommandNotFoundHint(scriptName, scripts) { + let hint = `Command "${scriptName}" not found.`; + const nearestCommand = scripts && (0, didyoumean2_1.default)(scriptName, Object.keys(scripts), { + returnType: didyoumean2_1.ReturnTypeEnums.FIRST_CLOSEST_MATCH + }); + if (nearestCommand) { + hint += ` Did you mean "pnpm run ${nearestCommand}"?`; + } + return hint; + } + exports2.buildCommandNotFoundHint = buildCommandNotFoundHint; + } +}); + +// ../exec/plugin-commands-script-runners/lib/run.js +var require_run = __commonJS({ + "../exec/plugin-commands-script-runners/lib/run.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.render = exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var list_1 = __importStar2(require_lib100()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var recursive_1 = __importDefault(require_recursive3()); + exports2.runScript = exports2.handler = exports2.help = exports2.commandNames = exports2.completion = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.shorthands = exports2.REPORT_SUMMARY_OPTION_HELP = exports2.SEQUENTIAL_OPTION_HELP = exports2.RESUME_FROM_OPTION_HELP = exports2.PARALLEL_OPTION_HELP = exports2.IF_PRESENT_OPTION_HELP = exports2.IF_PRESENT_OPTION = void 0; + var path_1 = __importDefault4(require("path")); + var p_limit_12 = __importDefault4(require_p_limit()); + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var lifecycle_1 = require_lib61(); + var pick_1 = __importDefault4(require_pick()); + var realpath_missing_1 = __importDefault4(require_realpath_missing()); + var render_help_1 = __importDefault4(require_lib34()); + var runRecursive_1 = require_runRecursive(); + var existsInDir_1 = require_existsInDir(); + var exec_1 = require_exec(); + var buildCommandNotFoundHint_1 = require_buildCommandNotFoundHint(); + exports2.IF_PRESENT_OPTION = { + "if-present": Boolean + }; + exports2.IF_PRESENT_OPTION_HELP = { + description: "Avoid exiting with a non-zero exit code when the script is undefined", + name: "--if-present" + }; + exports2.PARALLEL_OPTION_HELP = { + description: "Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages with prefixed streaming output. This is the preferred flag for long-running processes such as watch run over many packages.", + name: "--parallel" + }; + exports2.RESUME_FROM_OPTION_HELP = { + description: "Command executed from given package", + name: "--resume-from" + }; + exports2.SEQUENTIAL_OPTION_HELP = { + description: "Run the specified scripts one by one", + name: "--sequential" + }; + exports2.REPORT_SUMMARY_OPTION_HELP = { + description: 'Save the execution results of every package to "pnpm-exec-summary.json". Useful to inspect the execution time and status of each package.', + name: "--report-summary" + }; + exports2.shorthands = { + parallel: [ + "--workspace-concurrency=Infinity", + "--no-sort", + "--stream", + "--recursive" + ], + sequential: [ + "--workspace-concurrency=1" + ] + }; function rcOptionsTypes() { - return pick_1.default([ - "depth", - "dev", - "global-dir", - "global", - "json", - "long", - "only", - "optional", - "parseable", - "production" - ], config_1.types); + return { + ...(0, pick_1.default)([ + "npm-path", + "use-node-version" + ], config_1.types) + }; } exports2.rcOptionsTypes = rcOptionsTypes; - var cliOptionsTypes = () => ({ - ...rcOptionsTypes(), - recursive: Boolean - }); + function cliOptionsTypes() { + return { + ...(0, pick_1.default)([ + "bail", + "sort", + "unsafe-perm", + "use-node-version", + "workspace-concurrency", + "scripts-prepend-node-path" + ], config_1.types), + ...exports2.IF_PRESENT_OPTION, + recursive: Boolean, + reverse: Boolean, + "resume-from": String, + "report-summary": Boolean + }; + } exports2.cliOptionsTypes = cliOptionsTypes; - exports2.shorthands = { - D: "--dev", - P: "--production" + var completion = async (cliOpts, params) => { + if (params.length > 0) { + return []; + } + const manifest = await (0, cli_utils_1.readProjectManifestOnly)(cliOpts.dir ?? process.cwd(), cliOpts); + return Object.keys(manifest.scripts ?? {}).map((name) => ({ name })); }; - exports2.commandNames = ["list", "ls"]; + exports2.completion = completion; + exports2.commandNames = ["run", "run-script"]; function help() { - return render_help_1.default({ - aliases: ["list", "ls", "la", "ll"], - description: "When run as ll or la, it shows extended information by default. All dependencies are printed by default. Search by patterns is supported. For example: pnpm ls babel-* eslint-*", + return (0, render_help_1.default)({ + aliases: ["run-script"], + description: "Runs a defined package script.", descriptionLists: [ { title: "Options", list: [ { - description: 'Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + description: 'Run the defined package script in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', name: "--recursive", shortAlias: "-r" }, { - description: "Show extended information", - name: "--long" - }, - { - description: "Show parseable output instead of tree view", - name: "--parseable" - }, - { - description: "Show information in JSON format", - name: "--json" - }, - { - description: "List packages in the global install prefix instead of in the current project", - name: "--global", - shortAlias: "-g" - }, - { - description: "Max display depth of the dependency tree", - name: "--depth " - }, - { - description: "Display only direct dependencies", - name: "--depth 0" - }, - { - description: "Display only projects. Useful in a monorepo. `pnpm ls -r --depth -1` lists all projects in a monorepo", - name: "--depth -1" - }, - { - description: "Display only the dependency graph for packages in `dependencies` and `optionalDependencies`", - name: "--prod", - shortAlias: "-P" - }, - { - description: "Display only the dependency graph for packages in `devDependencies`", - name: "--dev", - shortAlias: "-D" - }, - { - description: "Don't display packages from `optionalDependencies`", - name: "--no-optional" + description: "The command will exit with a 0 exit code even if the script fails", + name: "--no-bail" }, - common_cli_options_help_1.OPTIONS.globalDir, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS + exports2.IF_PRESENT_OPTION_HELP, + exports2.PARALLEL_OPTION_HELP, + exports2.RESUME_FROM_OPTION_HELP, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS, + exports2.SEQUENTIAL_OPTION_HELP, + exports2.REPORT_SUMMARY_OPTION_HELP ] }, common_cli_options_help_1.FILTERING ], - url: cli_utils_1.docsUrl("list"), - usages: [ - "pnpm ls [ ...]" - ] + url: (0, cli_utils_1.docsUrl)("run"), + usages: ["pnpm run [...]"] }); } exports2.help = help; async function handler(opts, params) { - var _a, _b, _c; - const include = { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.optional !== false + let dir; + const [scriptName, ...passedThruArgs] = params; + if (opts.recursive) { + if (scriptName || Object.keys(opts.selectedProjectsGraph).length > 1) { + return (0, runRecursive_1.runRecursive)(params, opts); + } + dir = Object.keys(opts.selectedProjectsGraph)[0]; + } else { + dir = opts.dir; + } + const manifest = await (0, cli_utils_1.readProjectManifestOnly)(dir, opts); + if (!scriptName) { + const rootManifest = opts.workspaceDir && opts.workspaceDir !== dir ? (await (0, cli_utils_1.tryReadProjectManifest)(opts.workspaceDir, opts)).manifest : void 0; + return printProjectCommands(manifest, rootManifest ?? void 0); + } + const specifiedScripts = getSpecifiedScripts(manifest.scripts ?? {}, scriptName); + if (specifiedScripts.length < 1) { + if (opts.ifPresent) + return; + if (opts.fallbackCommandUsed) { + if (opts.argv == null) + throw new Error("Could not fallback because opts.argv.original was not passed to the script runner"); + return (0, exec_1.handler)({ + selectedProjectsGraph: {}, + ...opts + }, opts.argv.original.slice(1)); + } + if (opts.workspaceDir) { + const { manifest: rootManifest } = await (0, cli_utils_1.tryReadProjectManifest)(opts.workspaceDir, opts); + if (getSpecifiedScripts(rootManifest?.scripts ?? {}, scriptName).length > 0 && specifiedScripts.length < 1) { + throw new error_1.PnpmError("NO_SCRIPT", `Missing script: ${scriptName}`, { + hint: `But script matched with ${scriptName} is present in the root of the workspace, +so you may run "pnpm -w run ${scriptName}"` + }); + } + } + throw new error_1.PnpmError("NO_SCRIPT", `Missing script: ${scriptName}`, { + hint: (0, buildCommandNotFoundHint_1.buildCommandNotFoundHint)(scriptName, manifest.scripts) + }); + } + const lifecycleOpts = { + depPath: dir, + extraBinPaths: opts.extraBinPaths, + extraEnv: opts.extraEnv, + pkgRoot: dir, + rawConfig: opts.rawConfig, + rootModulesDir: await (0, realpath_missing_1.default)(path_1.default.join(dir, "node_modules")), + scriptsPrependNodePath: opts.scriptsPrependNodePath, + scriptShell: opts.scriptShell, + silent: opts.reporter === "silent", + shellEmulator: opts.shellEmulator, + stdio: "inherit", + unsafePerm: true + // when running scripts explicitly, assume that they're trusted. }; - const depth = (_b = (_a = opts.cliOptions) === null || _a === void 0 ? void 0 : _a["depth"]) !== null && _b !== void 0 ? _b : 0; - if (opts.recursive && opts.selectedProjectsGraph != null) { - const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); - return recursive_1.default(pkgs, params, { ...opts, depth, include }); + const existsPnp = existsInDir_1.existsInDir.bind(null, ".pnp.cjs"); + const pnpPath = (opts.workspaceDir && await existsPnp(opts.workspaceDir)) ?? await existsPnp(dir); + if (pnpPath) { + lifecycleOpts.extraEnv = { + ...lifecycleOpts.extraEnv, + ...(0, lifecycle_1.makeNodeRequireOption)(pnpPath) + }; } - return render([opts.dir], params, { - ...opts, - depth, - include, - lockfileDir: (_c = opts.lockfileDir) !== null && _c !== void 0 ? _c : opts.dir - }); + try { + const limitRun = (0, p_limit_12.default)(opts.workspaceConcurrency ?? 4); + const _runScript = exports2.runScript.bind(null, { manifest, lifecycleOpts, runScriptOptions: { enablePrePostScripts: opts.enablePrePostScripts ?? false }, passedThruArgs }); + await Promise.all(specifiedScripts.map((script) => limitRun(() => _runScript(script)))); + } catch (err) { + if (opts.bail !== false) { + throw err; + } + } + return void 0; } exports2.handler = handler; - async function render(prefixes, params, opts) { - var _a; - const listOpts = { - alwaysPrintRootPackage: opts.alwaysPrintRootPackage, - depth: (_a = opts.depth) !== null && _a !== void 0 ? _a : 0, - include: opts.include, - lockfileDir: opts.lockfileDir, - long: opts.long, - reportAs: opts.parseable ? "parseable" : opts.json ? "json" : "tree", - showExtraneous: false - }; - return params.length > 0 ? list_1.forPackages(params, prefixes, listOpts) : list_1.default(prefixes, listOpts); + var ALL_LIFECYCLE_SCRIPTS = /* @__PURE__ */ new Set([ + "prepublish", + "prepare", + "prepublishOnly", + "prepack", + "postpack", + "publish", + "postpublish", + "preinstall", + "install", + "postinstall", + "preuninstall", + "uninstall", + "postuninstall", + "preversion", + "version", + "postversion", + "pretest", + "test", + "posttest", + "prestop", + "stop", + "poststop", + "prestart", + "start", + "poststart", + "prerestart", + "restart", + "postrestart", + "preshrinkwrap", + "shrinkwrap", + "postshrinkwrap" + ]); + function printProjectCommands(manifest, rootManifest) { + const lifecycleScripts = []; + const otherScripts = []; + for (const [scriptName, script] of Object.entries(manifest.scripts ?? {})) { + if (ALL_LIFECYCLE_SCRIPTS.has(scriptName)) { + lifecycleScripts.push([scriptName, script]); + } else { + otherScripts.push([scriptName, script]); + } + } + if (lifecycleScripts.length === 0 && otherScripts.length === 0) { + return "There are no scripts specified."; + } + let output = ""; + if (lifecycleScripts.length > 0) { + output += `Lifecycle scripts: +${renderCommands(lifecycleScripts)}`; + } + if (otherScripts.length > 0) { + if (output !== "") + output += "\n\n"; + output += `Commands available via "pnpm run": +${renderCommands(otherScripts)}`; + } + if (rootManifest?.scripts == null) { + return output; + } + const rootScripts = Object.entries(rootManifest.scripts); + if (rootScripts.length === 0) { + return output; + } + if (output !== "") + output += "\n\n"; + output += `Commands of the root workspace project (to run them, use "pnpm -w run"): +${renderCommands(rootScripts)}`; + return output; } - exports2.render = render; - } -}); - -// ../plugin-commands-listing/lib/ll.js -var require_ll = __commonJS({ - "../plugin-commands-listing/lib/ll.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var runScript = async function(opts, scriptName) { + if (opts.runScriptOptions.enablePrePostScripts && opts.manifest.scripts?.[`pre${scriptName}`] && !opts.manifest.scripts[scriptName].includes(`pre${scriptName}`)) { + await (0, lifecycle_1.runLifecycleHook)(`pre${scriptName}`, opts.manifest, opts.lifecycleOpts); + } + await (0, lifecycle_1.runLifecycleHook)(scriptName, opts.manifest, { ...opts.lifecycleOpts, args: opts.passedThruArgs }); + if (opts.runScriptOptions.enablePrePostScripts && opts.manifest.scripts?.[`post${scriptName}`] && !opts.manifest.scripts[scriptName].includes(`post${scriptName}`)) { + await (0, lifecycle_1.runLifecycleHook)(`post${scriptName}`, opts.manifest, opts.lifecycleOpts); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.commandNames = void 0; - var omit_1 = __importDefault(require_omit()); - var list = __importStar2(require_list2()); - exports2.commandNames = ["ll", "la"]; - exports2.rcOptionsTypes = list.rcOptionsTypes; - function cliOptionsTypes() { - return omit_1.default(["long"], list.cliOptionsTypes()); + exports2.runScript = runScript; + function renderCommands(commands) { + return commands.map(([scriptName, script]) => ` ${scriptName} + ${script}`).join("\n"); } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.help = list.help; - async function handler(opts, params) { - return list.handler({ ...opts, long: true }, params); + function getSpecifiedScripts(scripts, scriptName) { + const specifiedSelector = (0, runRecursive_1.getSpecifiedScripts)(scripts, scriptName); + if (specifiedSelector.length > 0) { + return specifiedSelector; + } + if (scriptName === "start") { + return [scriptName]; + } + return []; } - exports2.handler = handler; } }); -// ../plugin-commands-listing/lib/why.js -var require_why = __commonJS({ - "../plugin-commands-listing/lib/why.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/exec.js +var require_exec = __commonJS({ + "../exec/plugin-commands-script-runners/lib/exec.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var list_1 = require_list2(); + exports2.handler = exports2.getExecutionDuration = exports2.createEmptyRecursiveSummary = exports2.writeRecursiveSummary = exports2.getResumedPackageChunks = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.commandNames = exports2.shorthands = void 0; + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var lifecycle_1 = require_lib61(); + var logger_1 = require_lib6(); + var read_project_manifest_1 = require_lib16(); + var sort_packages_1 = require_lib110(); + var execa_1 = __importDefault4(require_lib17()); + var p_limit_12 = __importDefault4(require_p_limit()); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var existsInDir_1 = require_existsInDir(); + var makeEnv_1 = require_makeEnv(); + var run_1 = require_run(); + var error_1 = require_lib8(); + var which_1 = __importDefault4(require_lib141()); + var write_json_file_1 = __importDefault4(require_write_json_file()); + var buildCommandNotFoundHint_1 = require_buildCommandNotFoundHint(); + exports2.shorthands = { + parallel: run_1.shorthands.parallel, + c: "--shell-mode" + }; + exports2.commandNames = ["exec"]; function rcOptionsTypes() { - return pick_1.default([ - "dev", - "global-dir", - "global", - "json", - "long", - "only", - "optional", - "parseable", - "production" - ], config_1.types); + return { + ...(0, pick_1.default)([ + "bail", + "sort", + "use-node-version", + "unsafe-perm", + "workspace-concurrency" + ], config_1.types), + "shell-mode": Boolean, + "resume-from": String, + "report-summary": Boolean + }; } exports2.rcOptionsTypes = rcOptionsTypes; var cliOptionsTypes = () => ({ ...rcOptionsTypes(), - recursive: Boolean + recursive: Boolean, + reverse: Boolean }); exports2.cliOptionsTypes = cliOptionsTypes; - exports2.shorthands = { - D: "--dev", - P: "--production" - }; - exports2.commandNames = ["why"]; function help() { - return render_help_1.default({ - description: `Shows the packages that depend on -For example: pnpm why babel-* eslint-*`, + return (0, render_help_1.default)({ + description: "Run a shell command in the context of a project.", descriptionLists: [ { title: "Options", list: [ + run_1.PARALLEL_OPTION_HELP, { - description: 'Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + description: 'Run the shell command in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', name: "--recursive", shortAlias: "-r" }, { - description: "Show extended information", - name: "--long" - }, - { - description: "Show parseable output instead of tree view", - name: "--parseable" - }, - { - description: "Show information in JSON format", - name: "--json" - }, - { - description: "List packages in the global install prefix instead of in the current project", - name: "--global", - shortAlias: "-g" - }, - { - description: "Display only the dependency graph for packages in `dependencies` and `optionalDependencies`", - name: "--prod", - shortAlias: "-P" - }, - { - description: "Display only the dependency graph for packages in `devDependencies`", - name: "--dev", - shortAlias: "-D" - }, - { - description: "Don't display packages from `optionalDependencies`", - name: "--no-optional" + description: "If exist, runs file inside of a shell. Uses /bin/sh on UNIX and \\cmd.exe on Windows. The shell should understand the -c switch on UNIX or /d /s /c on Windows.", + name: "--shell-mode", + shortAlias: "-c" }, - common_cli_options_help_1.OPTIONS.globalDir, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS + run_1.RESUME_FROM_OPTION_HELP, + run_1.REPORT_SUMMARY_OPTION_HELP ] - }, - common_cli_options_help_1.FILTERING + } ], - url: cli_utils_1.docsUrl("why"), - usages: [ - "pnpm why ..." - ] + url: (0, cli_utils_1.docsUrl)("exec"), + usages: ["pnpm [-r] [-c] exec [args...]"] }); } exports2.help = help; - async function handler(opts, params) { - var _a; - if (params.length === 0) { - throw new error_1.default("MISSING_PACKAGE_NAME", "`pnpm why` requires the package name"); + function getResumedPackageChunks({ resumeFrom, chunks, selectedProjectsGraph }) { + const resumeFromPackagePrefix = Object.keys(selectedProjectsGraph).find((prefix) => selectedProjectsGraph[prefix]?.package.manifest.name === resumeFrom); + if (!resumeFromPackagePrefix) { + throw new error_1.PnpmError("RESUME_FROM_NOT_FOUND", `Cannot find package ${resumeFrom}. Could not determine where to resume from.`); } - return list_1.handler({ - ...opts, - cliOptions: { - ...(_a = opts.cliOptions) !== null && _a !== void 0 ? _a : {}, - depth: Infinity - } - }, params); + const chunkPosition = chunks.findIndex((chunk) => chunk.includes(resumeFromPackagePrefix)); + return chunks.slice(chunkPosition); } - exports2.handler = handler; - } -}); - -// ../plugin-commands-listing/lib/index.js -var require_lib101 = __commonJS({ - "../plugin-commands-listing/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.why = exports2.ll = exports2.list = void 0; - var list = __importStar2(require_list2()); - exports2.list = list; - var ll = __importStar2(require_ll()); - exports2.ll = ll; - var why = __importStar2(require_why()); - exports2.why = why; - } -}); - -// ../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/sortWith.js -var require_sortWith = __commonJS({ - "../../node_modules/.pnpm/ramda@0.27.1/node_modules/ramda/src/sortWith.js"(exports2, module2) { - var _curry2 = require_curry2(); - var sortWith = /* @__PURE__ */ _curry2(function sortWith2(fns, list) { - return Array.prototype.slice.call(list, 0).sort(function(a, b) { - var result = 0; - var i = 0; - while (result === 0 && i < fns.length) { - result = fns[i](a, b); - i += 1; - } - return result; + exports2.getResumedPackageChunks = getResumedPackageChunks; + async function writeRecursiveSummary(opts) { + await (0, write_json_file_1.default)(path_1.default.join(opts.dir, "pnpm-exec-summary.json"), { + executionStatus: opts.summary }); - }); - module2.exports = sortWith; - } -}); - -// ../plugin-commands-outdated/lib/utils.js -var require_utils9 = __commonJS({ - "../plugin-commands-outdated/lib/utils.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.sortBySemverChange = exports2.DEFAULT_COMPARATORS = void 0; - exports2.DEFAULT_COMPARATORS = [ - sortBySemverChange, - (o1, o2) => o1.packageName.localeCompare(o2.packageName), - (o1, o2) => o1.current && o2.current ? o1.current.localeCompare(o2.current) : 0 - ]; - function sortBySemverChange(outdated1, outdated2) { - return pkgPriority(outdated1) - pkgPriority(outdated2); } - exports2.sortBySemverChange = sortBySemverChange; - function pkgPriority(pkg) { - switch (pkg.change) { - case null: - return 0; - case "fix": - return 1; - case "feature": - return 2; - case "breaking": - return 3; - default: - return 4; - } + exports2.writeRecursiveSummary = writeRecursiveSummary; + function createEmptyRecursiveSummary(chunks) { + return chunks.flat().reduce((acc, prefix) => { + acc[prefix] = { status: "queued" }; + return acc; + }, {}); } - } -}); - -// ../plugin-commands-outdated/lib/recursive.js -var require_recursive4 = __commonJS({ - "../plugin-commands-outdated/lib/recursive.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var cli_utils_1 = require_lib20(); - var outdated_1 = require_lib95(); - var table_1 = require_dist10(); - var chalk_1 = __importDefault(require_source()); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var sortWith_1 = __importDefault(require_sortWith()); - var outdated_2 = require_outdated2(); - var utils_1 = require_utils9(); - var DEP_PRIORITY = { - dependencies: 1, - devDependencies: 2, - optionalDependencies: 0 - }; - var COMPARATORS = [ - ...utils_1.DEFAULT_COMPARATORS, - (o1, o2) => DEP_PRIORITY[o1.belongsTo] - DEP_PRIORITY[o2.belongsTo] - ]; - exports2.default = async (pkgs, params, opts) => { - const outdatedMap = {}; - const outdatedPackagesByProject = await outdated_1.outdatedDepsOfProjects(pkgs, params, { - ...opts, - fullMetadata: opts.long, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - timeout: opts.fetchTimeout - }); - for (let i = 0; i < outdatedPackagesByProject.length; i++) { - const { dir, manifest } = pkgs[i]; - outdatedPackagesByProject[i].forEach((outdatedPkg) => { - const key = JSON.stringify([outdatedPkg.packageName, outdatedPkg.current, outdatedPkg.belongsTo]); - if (!outdatedMap[key]) { - outdatedMap[key] = { ...outdatedPkg, dependentPkgs: [] }; - } - outdatedMap[key].dependentPkgs.push({ location: dir, manifest }); - }); - } - if (isEmpty_1.default(outdatedMap)) - return { output: "", exitCode: 0 }; - if (opts.table !== false) { - return { output: renderOutdatedTable(outdatedMap, opts), exitCode: 1 }; - } - return { output: renderOutdatedList(outdatedMap, opts), exitCode: 1 }; - }; - function renderOutdatedTable(outdatedMap, opts) { - const columnNames = [ - "Package", - "Current", - "Latest", - "Dependents" - ]; - const columnFns = [ - outdated_2.renderPackageName, - outdated_2.renderCurrent, - outdated_2.renderLatest, - dependentPackages - ]; - if (opts.long) { - columnNames.push("Details"); - columnFns.push(outdated_2.renderDetails); + exports2.createEmptyRecursiveSummary = createEmptyRecursiveSummary; + function getExecutionDuration(start) { + const end = process.hrtime(start); + return (end[0] * 1e9 + end[1]) / 1e6; + } + exports2.getExecutionDuration = getExecutionDuration; + async function handler(opts, params) { + if (params[0] === "--") { + params.shift(); } - for (let i = 0; i < columnNames.length; i++) - columnNames[i] = chalk_1.default.blueBright(columnNames[i]); - const data = [ - columnNames, - ...sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => columnFns.map((fn2) => fn2(outdatedPkg))) - ]; - return table_1.table(data, { - ...cli_utils_1.TABLE_OPTIONS, - columns: { - ...cli_utils_1.TABLE_OPTIONS.columns, - 3: { - width: outdated_2.getCellWidth(data, 3, 30), - wrapWord: true - } + const limitRun = (0, p_limit_12.default)(opts.workspaceConcurrency ?? 4); + let chunks; + if (opts.recursive) { + chunks = opts.sort ? (0, sort_packages_1.sortPackages)(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; + if (opts.reverse) { + chunks = chunks.reverse(); } - }); - } - function renderOutdatedList(outdatedMap, opts) { - return sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => { - let info = `${chalk_1.default.bold(outdated_2.renderPackageName(outdatedPkg))} -${outdated_2.renderCurrent(outdatedPkg)} ${chalk_1.default.grey("=>")} ${outdated_2.renderLatest(outdatedPkg)}`; - const dependents = dependentPackages(outdatedPkg); - if (dependents) { - info += ` -${chalk_1.default.bold(outdatedPkg.dependentPkgs.length > 1 ? "Dependents:" : "Dependent:")} ${dependents}`; + } else { + chunks = [[opts.dir]]; + const project = await (0, read_project_manifest_1.tryReadProjectManifest)(opts.dir); + if (project.manifest != null) { + opts.selectedProjectsGraph = { + [opts.dir]: { + dependencies: [], + package: { + ...project, + dir: opts.dir + } + } + }; } - if (opts.long) { - const details = outdated_2.renderDetails(outdatedPkg); - if (details) { - info += ` -${details}`; + } + if (opts.resumeFrom) { + chunks = getResumedPackageChunks({ + resumeFrom: opts.resumeFrom, + chunks, + selectedProjectsGraph: opts.selectedProjectsGraph + }); + } + const result2 = createEmptyRecursiveSummary(chunks); + const existsPnp = existsInDir_1.existsInDir.bind(null, ".pnp.cjs"); + const workspacePnpPath = opts.workspaceDir && await existsPnp(opts.workspaceDir); + let exitCode = 0; + for (const chunk of chunks) { + await Promise.all(chunk.map(async (prefix) => limitRun(async () => { + result2[prefix].status = "running"; + const startTime = process.hrtime(); + try { + const pnpPath = workspacePnpPath ?? await existsPnp(prefix); + const extraEnv = { + ...opts.extraEnv, + ...pnpPath ? (0, lifecycle_1.makeNodeRequireOption)(pnpPath) : {} + }; + const env = (0, makeEnv_1.makeEnv)({ + extraEnv: { + ...extraEnv, + PNPM_PACKAGE_NAME: opts.selectedProjectsGraph[prefix]?.package.manifest.name + }, + prependPaths: [ + "./node_modules/.bin", + ...opts.extraBinPaths + ], + userAgent: opts.userAgent + }); + await (0, execa_1.default)(params[0], params.slice(1), { + cwd: prefix, + env, + stdio: "inherit", + shell: opts.shellMode ?? false + }); + result2[prefix].status = "passed"; + result2[prefix].duration = getExecutionDuration(startTime); + } catch (err) { + if (await isErrorCommandNotFound(params[0], err)) { + err.hint = (0, buildCommandNotFoundHint_1.buildCommandNotFoundHint)(params[0], (await (0, cli_utils_1.readProjectManifestOnly)(opts.dir)).scripts); + } else if (!opts.recursive && typeof err.exitCode === "number") { + exitCode = err.exitCode; + return; + } + logger_1.logger.info(err); + result2[prefix] = { + status: "failure", + duration: getExecutionDuration(startTime), + error: err, + message: err.message, + prefix + }; + if (!opts.bail) { + return; + } + if (!err["code"]?.startsWith("ERR_PNPM_")) { + err["code"] = "ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL"; + } + err["prefix"] = prefix; + opts.reportSummary && await writeRecursiveSummary({ + dir: opts.lockfileDir ?? opts.dir, + summary: result2 + }); + throw err; } - } - return info; - }).join("\n\n") + "\n"; - } - function dependentPackages({ dependentPkgs }) { - return dependentPkgs.map(({ manifest, location }) => { - var _a; - return (_a = manifest.name) !== null && _a !== void 0 ? _a : location; - }).sort().join(", "); + }))); + } + opts.reportSummary && await writeRecursiveSummary({ + dir: opts.lockfileDir ?? opts.dir, + summary: result2 + }); + (0, cli_utils_1.throwOnCommandFail)("pnpm recursive exec", result2); + return { exitCode }; } - function sortOutdatedPackages(outdatedPackages) { - return sortWith_1.default(COMPARATORS, outdatedPackages.map(outdated_2.toOutdatedWithVersionDiff)); + exports2.handler = handler; + async function isErrorCommandNotFound(command, error) { + if (error.originalMessage === `spawn ${command} ENOENT`) { + return true; + } + return error.shortMessage === `Command failed with exit code 1: ${command}` && !await (0, which_1.default)(command, { nothrow: true }); } } }); -// ../plugin-commands-outdated/lib/outdated.js -var require_outdated2 = __commonJS({ - "../plugin-commands-outdated/lib/outdated.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/restart.js +var require_restart = __commonJS({ + "../exec/plugin-commands-script-runners/lib/restart.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.renderDetails = exports2.renderLatest = exports2.renderCurrent = exports2.renderPackageName = exports2.toOutdatedWithVersionDiff = exports2.getCellWidth = exports2.handler = exports2.completion = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var colorize_semver_diff_1 = __importDefault(require_lib96()); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var outdated_1 = require_lib95(); - var semver_diff_1 = __importDefault(require_lib97()); - var table_1 = require_dist10(); - var chalk_1 = __importDefault(require_source()); - var pick_1 = __importDefault(require_pick()); - var sortWith_1 = __importDefault(require_sortWith()); - var render_help_1 = __importDefault(require_lib30()); - var strip_ansi_1 = __importDefault(require_strip_ansi()); - var wrap_ansi_1 = __importDefault(require_wrap_ansi()); - var utils_1 = require_utils9(); - var recursive_1 = __importDefault(require_recursive4()); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var config_1 = require_lib21(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var run_1 = require_run(); function rcOptionsTypes() { return { - ...pick_1.default([ - "depth", - "dev", - "global-dir", - "global", - "long", - "optional", - "production" - ], config_1.types), - compatible: Boolean, - table: Boolean + ...(0, pick_1.default)([ + "npm-path" + ], config_1.types) }; } exports2.rcOptionsTypes = rcOptionsTypes; - var cliOptionsTypes = () => ({ - ...rcOptionsTypes(), - recursive: Boolean - }); + function cliOptionsTypes() { + return run_1.IF_PRESENT_OPTION; + } exports2.cliOptionsTypes = cliOptionsTypes; - exports2.shorthands = { - D: "--dev", - P: "--production" - }; - exports2.commandNames = ["outdated"]; + exports2.commandNames = ["restart"]; function help() { - return render_help_1.default({ - description: `Check for outdated packages. The check can be limited to a subset of the installed packages by providing arguments (patterns are supported). + return (0, render_help_1.default)({ + description: `Restarts a package. Runs a package's "stop", "restart", and "start" scripts, and associated pre- and post- scripts.`, + descriptionLists: [ + { + title: "Options", + list: [ + run_1.IF_PRESENT_OPTION_HELP + ] + } + ], + usages: ["pnpm restart [-- ...]"] + }); + } + exports2.help = help; + async function handler(opts, params) { + await (0, run_1.handler)(opts, ["stop", ...params]); + await (0, run_1.handler)(opts, ["restart", ...params]); + await (0, run_1.handler)(opts, ["start", ...params]); + } + exports2.handler = handler; + } +}); -Examples: -pnpm outdated -pnpm outdated --long -pnpm outdated gulp-* @babel/core`, +// ../exec/plugin-commands-script-runners/lib/test.js +var require_test2 = __commonJS({ + "../exec/plugin-commands-script-runners/lib/test.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var render_help_1 = __importDefault4(require_lib34()); + var run = __importStar5(require_run()); + exports2.commandNames = ["test", "t", "tst"]; + function help() { + return (0, render_help_1.default)({ + aliases: ["t", "tst"], + description: `Runs a package's "test" script, if one was provided.`, descriptionLists: [ { title: "Options", list: [ { - description: "Print only versions that satisfy specs in package.json", - name: "--compatible" - }, - { - description: "By default, details about the outdated packages (such as a link to the repo) are not displayed. To display the details, pass this option.", - name: "--long" - }, - { - description: 'Check for outdated dependencies in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', + description: 'Run the tests in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', name: "--recursive", shortAlias: "-r" - }, - { - description: "Prints the outdated packages in a list. Good for small consoles", - name: "--no-table" - }, - { - description: 'Check only "dependencies" and "optionalDependencies"', - name: "--prod", - shortAlias: "-P" - }, - { - description: 'Check only "devDependencies"', - name: "--dev", - shortAlias: "-D" - }, - { - description: `Don't check "optionalDependencies"`, - name: "--no-optional" - }, - common_cli_options_help_1.OPTIONS.globalDir, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS + } ] }, common_cli_options_help_1.FILTERING ], - url: cli_utils_1.docsUrl("outdated"), - usages: ["pnpm outdated [ ...]"] + url: (0, cli_utils_1.docsUrl)("test"), + usages: ["pnpm test [-- ...]"] }); } exports2.help = help; - var completion = async (cliOpts) => { - return cli_utils_1.readDepNameCompletions(cliOpts.dir); - }; - exports2.completion = completion; async function handler(opts, params = []) { - const include = { - dependencies: opts.production !== false, - devDependencies: opts.dev !== false, - optionalDependencies: opts.optional !== false - }; - if (opts.recursive && opts.selectedProjectsGraph != null) { - const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); - return recursive_1.default(pkgs, params, { ...opts, include }); - } - const packages = [ - { - dir: opts.dir, - manifest: await cli_utils_1.readProjectManifestOnly(opts.dir, opts) - } - ]; - const [outdatedPackages] = await outdated_1.outdatedDepsOfProjects(packages, params, { - ...opts, - fullMetadata: opts.long, - include, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - timeout: opts.fetchTimeout - }); - if (outdatedPackages.length === 0) - return { output: "", exitCode: 0 }; - if (opts.table !== false) { - return { output: renderOutdatedTable(outdatedPackages, opts), exitCode: 1 }; - } else { - return { output: renderOutdatedList(outdatedPackages, opts), exitCode: 1 }; - } + return run.handler(opts, ["test", ...params]); } exports2.handler = handler; - function renderOutdatedTable(outdatedPackages, opts) { - const columnNames = [ - "Package", - "Current", - "Latest" - ]; - const columnFns = [ - renderPackageName, - renderCurrent, - renderLatest - ]; - if (opts.long) { - columnNames.push("Details"); - columnFns.push(renderDetails); - } - for (let i = 0; i < columnNames.length; i++) - columnNames[i] = chalk_1.default.blueBright(columnNames[i]); - return table_1.table([ - columnNames, - ...sortOutdatedPackages(outdatedPackages).map((outdatedPkg) => columnFns.map((fn2) => fn2(outdatedPkg))) - ], cli_utils_1.TABLE_OPTIONS); - } - function renderOutdatedList(outdatedPackages, opts) { - return sortOutdatedPackages(outdatedPackages).map((outdatedPkg) => { - let info = `${chalk_1.default.bold(renderPackageName(outdatedPkg))} -${renderCurrent(outdatedPkg)} ${chalk_1.default.grey("=>")} ${renderLatest(outdatedPkg)}`; - if (opts.long) { - const details = renderDetails(outdatedPkg); - if (details) { - info += ` -${details}`; - } - } - return info; - }).join("\n\n") + "\n"; - } - function sortOutdatedPackages(outdatedPackages) { - return sortWith_1.default(utils_1.DEFAULT_COMPARATORS, outdatedPackages.map(toOutdatedWithVersionDiff)); - } - function getCellWidth(data, columnNumber, maxWidth) { - const maxCellWidth = data.reduce((cellWidth, row) => { - const cellLines = strip_ansi_1.default(row[columnNumber]).split("\n"); - const currentCellWidth = cellLines.reduce((lineWidth, line) => { - return Math.max(lineWidth, line.length); - }, 0); - return Math.max(cellWidth, currentCellWidth); - }, 0); - return Math.min(maxWidth, maxCellWidth); - } - exports2.getCellWidth = getCellWidth; - function toOutdatedWithVersionDiff(outdated) { - if (outdated.latestManifest != null) { - return { - ...outdated, - ...semver_diff_1.default(outdated.wanted, outdated.latestManifest.version) - }; - } - return { - ...outdated, - change: "unknown" - }; - } - exports2.toOutdatedWithVersionDiff = toOutdatedWithVersionDiff; - function renderPackageName({ belongsTo, packageName }) { - switch (belongsTo) { - case "devDependencies": - return `${packageName} ${chalk_1.default.dim("(dev)")}`; - case "optionalDependencies": - return `${packageName} ${chalk_1.default.dim("(optional)")}`; - default: - return packageName; - } - } - exports2.renderPackageName = renderPackageName; - function renderCurrent({ current, wanted }) { - const output = current !== null && current !== void 0 ? current : "missing"; - if (current === wanted) - return output; - return `${output} (wanted ${wanted})`; - } - exports2.renderCurrent = renderCurrent; - function renderLatest(outdatedPkg) { - const { latestManifest, change, diff } = outdatedPkg; - if (latestManifest == null) - return ""; - if (change === null || diff == null) { - return latestManifest.deprecated ? chalk_1.default.redBright.bold("Deprecated") : latestManifest.version; - } - return colorize_semver_diff_1.default({ change, diff }); - } - exports2.renderLatest = renderLatest; - function renderDetails({ latestManifest }) { - if (latestManifest == null) - return ""; - const outputs = []; - if (latestManifest.deprecated) { - outputs.push(wrap_ansi_1.default(chalk_1.default.redBright(latestManifest.deprecated), 40)); - } - if (latestManifest.homepage) { - outputs.push(chalk_1.default.underline(latestManifest.homepage)); - } - return outputs.join("\n"); - } - exports2.renderDetails = renderDetails; } }); -// ../plugin-commands-outdated/lib/index.js -var require_lib102 = __commonJS({ - "../plugin-commands-outdated/lib/index.js"(exports2) { +// ../exec/plugin-commands-script-runners/lib/index.js +var require_lib156 = __commonJS({ + "../exec/plugin-commands-script-runners/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.outdated = void 0; - var outdated = __importStar2(require_outdated2()); - exports2.outdated = outdated; + exports2.test = exports2.run = exports2.restart = exports2.exec = exports2.dlx = exports2.create = void 0; + var create = __importStar5(require_create4()); + exports2.create = create; + var dlx = __importStar5(require_dlx()); + exports2.dlx = dlx; + var exec = __importStar5(require_exec()); + exports2.exec = exec; + var restart = __importStar5(require_restart()); + exports2.restart = restart; + var run = __importStar5(require_run()); + exports2.run = run; + var _test = __importStar5(require_test2()); + var test = { + ...run, + ..._test + }; + exports2.test = test; } }); -// ../exportable-manifest/lib/index.js -var require_lib103 = __commonJS({ - "../exportable-manifest/lib/index.js"(exports2) { +// ../node_modules/.pnpm/get-port@5.1.1/node_modules/get-port/index.js +var require_get_port = __commonJS({ + "../node_modules/.pnpm/get-port@5.1.1/node_modules/get-port/index.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var error_1 = __importDefault(require_lib8()); - var read_project_manifest_1 = require_lib19(); - var fromPairs_1 = __importDefault(require_fromPairs()); - var omit_1 = __importDefault(require_omit()); - var PUBLISH_CONFIG_WHITELIST = new Set([ - "bin", - "type", - "imports", - "main", - "module", - "typings", - "types", - "exports", - "browser", - "esnext", - "es2015", - "unpkg", - "umd:main" - ]); - var PREPUBLISH_SCRIPTS = [ - "prepublishOnly", - "prepack", - "prepare", - "postpack", - "publish", - "postpublish" - ]; - async function makePublishManifest(dir, originalManifest) { - const publishManifest = omit_1.default(["pnpm", "scripts"], originalManifest); - if (originalManifest.scripts != null) { - publishManifest.scripts = omit_1.default(PREPUBLISH_SCRIPTS, originalManifest.scripts); - } - for (const depsField of ["dependencies", "devDependencies", "optionalDependencies", "peerDependencies"]) { - const deps = await makePublishDependencies(dir, originalManifest[depsField]); - if (deps != null) { - publishManifest[depsField] = deps; - } + var net = require("net"); + var Locked = class extends Error { + constructor(port) { + super(`${port} is locked`); } - const { publishConfig } = originalManifest; - if (publishConfig != null) { - Object.keys(publishConfig).filter((key) => PUBLISH_CONFIG_WHITELIST.has(key)).forEach((key) => { - publishManifest[key] = publishConfig[key]; + }; + var lockedPorts = { + old: /* @__PURE__ */ new Set(), + young: /* @__PURE__ */ new Set() + }; + var releaseOldLockedPortsIntervalMs = 1e3 * 15; + var interval; + var getAvailablePort = (options) => new Promise((resolve, reject) => { + const server = net.createServer(); + server.unref(); + server.on("error", reject); + server.listen(options, () => { + const { port } = server.address(); + server.close(() => { + resolve(port); }); + }); + }); + var portCheckSequence = function* (ports) { + if (ports) { + yield* ports; } - return publishManifest; - } - exports2.default = makePublishManifest; - async function makePublishDependencies(dir, dependencies) { - if (dependencies == null) - return dependencies; - const publishDependencies = fromPairs_1.default(await Promise.all(Object.entries(dependencies).map(async ([depName, depSpec]) => [ - depName, - await makePublishDependency(depName, depSpec, dir) - ]))); - return publishDependencies; - } - async function makePublishDependency(depName, depSpec, dir) { - if (!depSpec.startsWith("workspace:")) { - return depSpec; + yield 0; + }; + module2.exports = async (options) => { + let ports; + if (options) { + ports = typeof options.port === "number" ? [options.port] : options.port; } - const versionAliasSpecParts = /^workspace:([^@]+@)?([\^~*])$/.exec(depSpec); - if (versionAliasSpecParts != null) { - const { manifest } = await read_project_manifest_1.tryReadProjectManifest(path_1.default.join(dir, "node_modules", depName)); - if (manifest == null || !manifest.version) { - throw new error_1.default("CANNOT_RESOLVE_WORKSPACE_PROTOCOL", `Cannot resolve workspace protocol of dependency "${depName}" because this dependency is not installed. Try running "pnpm install".`); - } - const semverRangeToken = versionAliasSpecParts[2] !== "*" ? versionAliasSpecParts[2] : ""; - if (depName !== manifest.name) { - return `npm:${manifest.name}@${semverRangeToken}${manifest.version}`; + if (interval === void 0) { + interval = setInterval(() => { + lockedPorts.old = lockedPorts.young; + lockedPorts.young = /* @__PURE__ */ new Set(); + }, releaseOldLockedPortsIntervalMs); + if (interval.unref) { + interval.unref(); } - return `${semverRangeToken}${manifest.version}`; } - if (depSpec.startsWith("workspace:./") || depSpec.startsWith("workspace:../")) { - const { manifest } = await read_project_manifest_1.tryReadProjectManifest(path_1.default.join(dir, depSpec.substr(10))); - if (manifest == null || !manifest.name || !manifest.version) { - throw new error_1.default("CANNOT_RESOLVE_WORKSPACE_PROTOCOL", `Cannot resolve workspace protocol of dependency "${depName}" because this dependency is not installed. Try running "pnpm install".`); + for (const port of portCheckSequence(ports)) { + try { + let availablePort = await getAvailablePort({ ...options, port }); + while (lockedPorts.old.has(availablePort) || lockedPorts.young.has(availablePort)) { + if (port !== 0) { + throw new Locked(port); + } + availablePort = await getAvailablePort({ ...options, port }); + } + lockedPorts.young.add(availablePort); + return availablePort; + } catch (error) { + if (!["EADDRINUSE", "EACCES"].includes(error.code) && !(error instanceof Locked)) { + throw error; + } } - if (manifest.name === depName) - return `${manifest.version}`; - return `npm:${manifest.name}@${manifest.version}`; - } - depSpec = depSpec.substr(10); - if (depSpec.includes("@")) { - return `npm:${depSpec}`; } - return depSpec; - } - } -}); - -// ../../node_modules/.pnpm/npm-normalize-package-bin@1.0.1/node_modules/npm-normalize-package-bin/index.js -var require_npm_normalize_package_bin = __commonJS({ - "../../node_modules/.pnpm/npm-normalize-package-bin@1.0.1/node_modules/npm-normalize-package-bin/index.js"(exports2, module2) { - var { join, basename } = require("path"); - var normalize = (pkg) => !pkg.bin ? removeBin(pkg) : typeof pkg.bin === "string" ? normalizeString(pkg) : Array.isArray(pkg.bin) ? normalizeArray(pkg) : typeof pkg.bin === "object" ? normalizeObject(pkg) : removeBin(pkg); - var normalizeString = (pkg) => { - if (!pkg.name) - return removeBin(pkg); - pkg.bin = { [pkg.name]: pkg.bin }; - return normalizeObject(pkg); - }; - var normalizeArray = (pkg) => { - pkg.bin = pkg.bin.reduce((acc, k) => { - acc[basename(k)] = k; - return acc; - }, {}); - return normalizeObject(pkg); - }; - var removeBin = (pkg) => { - delete pkg.bin; - return pkg; + throw new Error("No available ports found"); }; - var normalizeObject = (pkg) => { - const orig = pkg.bin; - const clean = {}; - let hasBins = false; - Object.keys(orig).forEach((binKey) => { - const base = join("/", basename(binKey.replace(/\\|:/g, "/"))).substr(1); - if (typeof orig[binKey] !== "string" || !base) - return; - const binTarget = join("/", orig[binKey]).replace(/\\/g, "/").substr(1); - if (!binTarget) - return; - clean[base] = binTarget; - hasBins = true; - }); - if (hasBins) - pkg.bin = clean; - else - delete pkg.bin; - return pkg; + module2.exports.makeRange = (from, to) => { + if (!Number.isInteger(from) || !Number.isInteger(to)) { + throw new TypeError("`from` and `to` must be integer numbers"); + } + if (from < 1024 || from > 65535) { + throw new RangeError("`from` must be between 1024 and 65535"); + } + if (to < 1024 || to > 65536) { + throw new RangeError("`to` must be between 1024 and 65536"); + } + if (to < from) { + throw new RangeError("`to` must be greater than or equal to `from`"); + } + const generator = function* (from2, to2) { + for (let port = from2; port <= to2; port++) { + yield port; + } + }; + return generator(from, to); }; - module2.exports = normalize; } }); -// ../../node_modules/.pnpm/npm-bundled@1.1.2/node_modules/npm-bundled/index.js -var require_npm_bundled = __commonJS({ - "../../node_modules/.pnpm/npm-bundled@1.1.2/node_modules/npm-bundled/index.js"(exports2, module2) { +// ../store/plugin-commands-server/lib/start.js +var require_start = __commonJS({ + "../store/plugin-commands-server/lib/start.js"(exports2) { "use strict"; - var fs = require("fs"); - var path = require("path"); - var EE = require("events").EventEmitter; - var normalizePackageBin = require_npm_normalize_package_bin(); - var BundleWalker = class extends EE { - constructor(opt) { - opt = opt || {}; - super(opt); - this.path = path.resolve(opt.path || process.cwd()); - this.parent = opt.parent || null; - if (this.parent) { - this.result = this.parent.result; - if (!this.parent.parent) { - const base = path.basename(this.path); - const scope = path.basename(path.dirname(this.path)); - this.result.add(/^@/.test(scope) ? scope + "/" + base : base); - } - this.root = this.parent.root; - this.packageJsonCache = this.parent.packageJsonCache; - } else { - this.result = new Set(); - this.root = this.path; - this.packageJsonCache = opt.packageJsonCache || new Map(); - } - this.seen = new Set(); - this.didDone = false; - this.children = 0; - this.node_modules = []; - this.package = null; - this.bundle = null; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.start = void 0; + var fs_1 = require("fs"); + var util_1 = require("util"); + var path_1 = __importDefault4(require("path")); + var cli_meta_1 = require_lib4(); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var server_1 = require_lib98(); + var store_connection_manager_1 = require_lib106(); + var store_path_1 = require_lib66(); + var diable_1 = __importDefault4(require_lib105()); + var get_port_1 = __importDefault4(require_get_port()); + var is_windows_1 = __importDefault4(require_is_windows()); + var signal_exit_1 = __importDefault4(require_signal_exit()); + var storeServerLogger = (0, logger_1.logger)("store-server"); + var write = (0, util_1.promisify)(fs_1.write); + var close = (0, util_1.promisify)(fs_1.close); + var open = (0, util_1.promisify)(fs_1.open); + async function start(opts) { + if (opts.protocol === "ipc" && opts.port) { + throw new Error("Port cannot be selected when server communicates via IPC"); } - addListener(ev, fn2) { - return this.on(ev, fn2); + if (opts.background && !diable_1.default.isDaemon()) { + (0, diable_1.default)(); } - on(ev, fn2) { - const ret = super.on(ev, fn2); - if (ev === "done" && this.didDone) { - this.emit("done", this.result); + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + const connectionInfoDir = (0, store_connection_manager_1.serverConnectionInfoDir)(storeDir); + const serverJsonPath = path_1.default.join(connectionInfoDir, "server.json"); + await fs_1.promises.mkdir(connectionInfoDir, { recursive: true }); + let fd; + try { + fd = await open(serverJsonPath, "wx"); + } catch (error) { + if (error.code !== "EEXIST") { + throw error; } - return ret; + throw new error_1.PnpmError("SERVER_MANIFEST_LOCKED", `Canceling startup of server (pid ${process.pid}) because another process got exclusive access to server.json`); } - done() { - if (!this.didDone) { - this.didDone = true; - if (!this.parent) { - const res = Array.from(this.result); - this.result = res; - this.emit("done", res); - } else { - this.emit("done"); + let server = null; + (0, signal_exit_1.default)(() => { + if (server !== null) { + server.close(); + } + if (fd !== null) { + try { + (0, fs_1.closeSync)(fd); + } catch (error) { + storeServerLogger.error(error, "Got error while closing file descriptor of server.json, but the process is already exiting"); } } - } - start() { - const pj = path.resolve(this.path, "package.json"); - if (this.packageJsonCache.has(pj)) - this.onPackage(this.packageJsonCache.get(pj)); - else - this.readPackageJson(pj); - return this; - } - readPackageJson(pj) { - fs.readFile(pj, (er, data) => er ? this.done() : this.onPackageJson(pj, data)); - } - onPackageJson(pj, data) { try { - this.package = normalizePackageBin(JSON.parse(data + "")); - } catch (er) { - return this.done(); + (0, fs_1.unlinkSync)(serverJsonPath); + } catch (error) { + if (error.code !== "ENOENT") { + storeServerLogger.error(error, "Got error unlinking server.json, but the process is already exiting"); + } } - this.packageJsonCache.set(pj, this.package); - this.onPackage(this.package); - } - allDepsBundled(pkg) { - return Object.keys(pkg.dependencies || {}).concat(Object.keys(pkg.optionalDependencies || {})); + }); + const store = await (0, store_connection_manager_1.createNewStoreController)(Object.assign(opts, { + storeDir + })); + const protocol = opts.protocol ?? (opts.port ? "tcp" : "auto"); + const serverOptions = await getServerOptions(connectionInfoDir, { protocol, port: opts.port }); + const connectionOptions = { + remotePrefix: serverOptions.path != null ? `http://unix:${serverOptions.path}:` : `http://${serverOptions.hostname}:${serverOptions.port}` + }; + server = (0, server_1.createServer)(store.ctrl, { + ...serverOptions, + ignoreStopRequests: opts.ignoreStopRequests, + ignoreUploadRequests: opts.ignoreUploadRequests + }); + const serverJson = { + connectionOptions, + pid: process.pid, + pnpmVersion: cli_meta_1.packageManager.version + }; + const serverJsonStr = JSON.stringify(serverJson, void 0, 2); + const serverJsonBuffer = Buffer.from(serverJsonStr, "utf8"); + await write(fd, serverJsonBuffer, 0, serverJsonBuffer.byteLength); + const fdForClose = fd; + fd = null; + await close(fdForClose); + } + exports2.start = start; + async function getServerOptions(connectionInfoDir, opts) { + switch (opts.protocol) { + case "tcp": + return getTcpOptions(); + case "ipc": + if ((0, is_windows_1.default)()) { + throw new Error("IPC protocol is not supported on Windows currently"); + } + return getIpcOptions(); + case "auto": + if ((0, is_windows_1.default)()) { + return getTcpOptions(); + } + return getIpcOptions(); + default: + throw new Error(`Protocol ${opts.protocol} is not supported`); } - onPackage(pkg) { - const bdRaw = this.parent ? this.allDepsBundled(pkg) : pkg.bundleDependencies || pkg.bundledDependencies || []; - const bd = Array.from(new Set(Array.isArray(bdRaw) ? bdRaw : bdRaw === true ? this.allDepsBundled(pkg) : Object.keys(bdRaw))); - if (!bd.length) - return this.done(); - this.bundle = bd; - const nm = this.path + "/node_modules"; - this.readModules(); + async function getTcpOptions() { + return { + hostname: "localhost", + port: opts.port || await (0, get_port_1.default)({ port: 5813 }) + // eslint-disable-line + }; } - readModules() { - readdirNodeModules(this.path + "/node_modules", (er, nm) => er ? this.onReaddir([]) : this.onReaddir(nm)); + function getIpcOptions() { + return { + path: path_1.default.join(connectionInfoDir, "socket") + }; } - onReaddir(nm) { - this.node_modules = nm; - this.bundle.forEach((dep) => this.childDep(dep)); - if (this.children === 0) - this.done(); + } + } +}); + +// ../store/plugin-commands-server/lib/status.js +var require_status = __commonJS({ + "../store/plugin-commands-server/lib/status.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.status = void 0; + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var store_connection_manager_1 = require_lib106(); + var store_path_1 = require_lib66(); + async function status(opts) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); + const connectionInfoDir = (0, store_connection_manager_1.serverConnectionInfoDir)(storeDir); + const serverJson = await (0, store_connection_manager_1.tryLoadServerJson)({ + serverJsonPath: path_1.default.join(connectionInfoDir, "server.json"), + shouldRetryOnNoent: false + }); + if (serverJson === null) { + (0, logger_1.globalInfo)(`No server is running for the store at ${storeDir}`); + return; } - childDep(dep) { - if (this.node_modules.indexOf(dep) !== -1) { - if (!this.seen.has(dep)) { - this.seen.add(dep); - this.child(dep); + console.log(`store: ${storeDir} +process id: ${serverJson.pid} +remote prefix: ${serverJson.connectionOptions.remotePrefix}`); + } + exports2.status = status; + } +}); + +// ../node_modules/.pnpm/ps-list@6.3.0/node_modules/ps-list/index.js +var require_ps_list = __commonJS({ + "../node_modules/.pnpm/ps-list@6.3.0/node_modules/ps-list/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var path2 = require("path"); + var childProcess = require("child_process"); + var TEN_MEGABYTES = 1e3 * 1e3 * 10; + var execFile = util.promisify(childProcess.execFile); + var windows = async () => { + const bin = path2.join(__dirname, "fastlist.exe"); + const { stdout } = await execFile(bin, { maxBuffer: TEN_MEGABYTES }); + return stdout.trim().split("\r\n").map((line) => line.split(" ")).map(([name, pid, ppid]) => ({ + name, + pid: Number.parseInt(pid, 10), + ppid: Number.parseInt(ppid, 10) + })); + }; + var main = async (options = {}) => { + const flags = (options.all === false ? "" : "a") + "wwxo"; + const ret = {}; + await Promise.all(["comm", "args", "ppid", "uid", "%cpu", "%mem"].map(async (cmd) => { + const { stdout } = await execFile("ps", [flags, `pid,${cmd}`], { maxBuffer: TEN_MEGABYTES }); + for (let line of stdout.trim().split("\n").slice(1)) { + line = line.trim(); + const [pid] = line.split(" ", 1); + const val = line.slice(pid.length + 1).trim(); + if (ret[pid] === void 0) { + ret[pid] = {}; } - } else if (this.parent) { - this.parent.childDep(dep); + ret[pid][cmd] = val; } - } - child(dep) { - const p = this.path + "/node_modules/" + dep; - this.children += 1; - const child = new BundleWalker({ - path: p, - parent: this - }); - child.on("done", (_) => { - if (--this.children === 0) - this.done(); - }); - child.start(); - } + })); + return Object.entries(ret).filter(([, value]) => value.comm && value.args && value.ppid && value.uid && value["%cpu"] && value["%mem"]).map(([key, value]) => ({ + pid: Number.parseInt(key, 10), + name: path2.basename(value.comm), + cmd: value.args, + ppid: Number.parseInt(value.ppid, 10), + uid: Number.parseInt(value.uid, 10), + cpu: Number.parseFloat(value["%cpu"]), + memory: Number.parseFloat(value["%mem"]) + })); }; - var BundleWalkerSync = class extends BundleWalker { - constructor(opt) { - super(opt); + module2.exports = process.platform === "win32" ? windows : main; + module2.exports.default = module2.exports; + } +}); + +// ../node_modules/.pnpm/process-exists@4.1.0/node_modules/process-exists/index.js +var require_process_exists = __commonJS({ + "../node_modules/.pnpm/process-exists@4.1.0/node_modules/process-exists/index.js"(exports2, module2) { + "use strict"; + var psList = require_ps_list(); + var linuxProcessMatchesName = (wantedProcessName, process2) => { + if (typeof wantedProcessName === "string") { + return process2.name === wantedProcessName || process2.cmd.split(" ")[0] === wantedProcessName; } - start() { - super.start(); - this.done(); - return this; + return process2.pid === wantedProcessName; + }; + var nonLinuxProcessMatchesName = (wantedProcessName, process2) => { + if (typeof wantedProcessName === "string") { + return process2.name === wantedProcessName; } - readPackageJson(pj) { - try { - this.onPackageJson(pj, fs.readFileSync(pj)); - } catch (er) { - } - return this; + return process2.pid === wantedProcessName; + }; + var processMatchesName = process.platform === "linux" ? linuxProcessMatchesName : nonLinuxProcessMatchesName; + module2.exports = async (processName) => { + const processes = await psList(); + return processes.some((x) => processMatchesName(processName, x)); + }; + module2.exports.all = async (processName) => { + const processes = await psList(); + return new Map(processName.map((x) => [x, processes.some((y) => processMatchesName(x, y))])); + }; + module2.exports.filterExists = async (processNames) => { + const processes = await psList(); + return processNames.filter((x) => processes.some((y) => processMatchesName(x, y))); + }; + } +}); + +// ../node_modules/.pnpm/tree-kill@1.2.2/node_modules/tree-kill/index.js +var require_tree_kill = __commonJS({ + "../node_modules/.pnpm/tree-kill@1.2.2/node_modules/tree-kill/index.js"(exports2, module2) { + "use strict"; + var childProcess = require("child_process"); + var spawn = childProcess.spawn; + var exec = childProcess.exec; + module2.exports = function(pid, signal, callback) { + if (typeof signal === "function" && callback === void 0) { + callback = signal; + signal = void 0; } - readModules() { - try { - this.onReaddir(readdirNodeModulesSync(this.path + "/node_modules")); - } catch (er) { - this.onReaddir([]); + pid = parseInt(pid); + if (Number.isNaN(pid)) { + if (callback) { + return callback(new Error("pid must be a number")); + } else { + throw new Error("pid must be a number"); } } - child(dep) { - new BundleWalkerSync({ - path: this.path + "/node_modules/" + dep, - parent: this - }).start(); + var tree = {}; + var pidsToProcess = {}; + tree[pid] = []; + pidsToProcess[pid] = 1; + switch (process.platform) { + case "win32": + exec("taskkill /pid " + pid + " /T /F", callback); + break; + case "darwin": + buildProcessTree(pid, tree, pidsToProcess, function(parentPid) { + return spawn("pgrep", ["-P", parentPid]); + }, function() { + killAll(tree, signal, callback); + }); + break; + default: + buildProcessTree(pid, tree, pidsToProcess, function(parentPid) { + return spawn("ps", ["-o", "pid", "--no-headers", "--ppid", parentPid]); + }, function() { + killAll(tree, signal, callback); + }); + break; } }; - var readdirNodeModules = (nm, cb) => { - fs.readdir(nm, (er, set) => { - if (er) - cb(er); - else { - const scopes = set.filter((f) => /^@/.test(f)); - if (!scopes.length) - cb(null, set); - else { - const unscoped = set.filter((f) => !/^@/.test(f)); - let count = scopes.length; - scopes.forEach((scope) => { - fs.readdir(nm + "/" + scope, (er2, pkgs) => { - if (er2 || !pkgs.length) - unscoped.push(scope); - else - unscoped.push.apply(unscoped, pkgs.map((p) => scope + "/" + p)); - if (--count === 0) - cb(null, unscoped); - }); - }); + function killAll(tree, signal, callback) { + var killed = {}; + try { + Object.keys(tree).forEach(function(pid) { + tree[pid].forEach(function(pidpid) { + if (!killed[pidpid]) { + killPid(pidpid, signal); + killed[pidpid] = 1; + } + }); + if (!killed[pid]) { + killPid(pid, signal); + killed[pid] = 1; } + }); + } catch (err) { + if (callback) { + return callback(err); + } else { + throw err; } + } + if (callback) { + return callback(); + } + } + function killPid(pid, signal) { + try { + process.kill(parseInt(pid, 10), signal); + } catch (err) { + if (err.code !== "ESRCH") + throw err; + } + } + function buildProcessTree(parentPid, tree, pidsToProcess, spawnChildProcessesList, cb) { + var ps = spawnChildProcessesList(parentPid); + var allData = ""; + ps.stdout.on("data", function(data) { + var data = data.toString("ascii"); + allData += data; }); - }; - var readdirNodeModulesSync = (nm) => { - const set = fs.readdirSync(nm); - const unscoped = set.filter((f) => !/^@/.test(f)); - const scopes = set.filter((f) => /^@/.test(f)).map((scope) => { - try { - const pkgs = fs.readdirSync(nm + "/" + scope); - return pkgs.length ? pkgs.map((p) => scope + "/" + p) : [scope]; - } catch (er) { - return [scope]; + var onClose = function(code) { + delete pidsToProcess[parentPid]; + if (code != 0) { + if (Object.keys(pidsToProcess).length == 0) { + cb(); + } + return; } - }).reduce((a, b) => a.concat(b), []); - return unscoped.concat(scopes); + allData.match(/\d+/g).forEach(function(pid) { + pid = parseInt(pid, 10); + tree[parentPid].push(pid); + tree[pid] = []; + pidsToProcess[pid] = 1; + buildProcessTree(pid, tree, pidsToProcess, spawnChildProcessesList, cb); + }); + }; + ps.on("close", onClose); + } + } +}); + +// ../store/plugin-commands-server/lib/stop.js +var require_stop = __commonJS({ + "../store/plugin-commands-server/lib/stop.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - var walk = (options, callback) => { - const p = new Promise((resolve, reject) => { - new BundleWalker(options).on("done", resolve).on("error", reject).start(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stop = void 0; + var util_1 = require("util"); + var path_1 = __importDefault4(require("path")); + var logger_1 = require_lib6(); + var server_1 = require_lib98(); + var store_connection_manager_1 = require_lib106(); + var store_path_1 = require_lib66(); + var delay_1 = __importDefault4(require_delay2()); + var process_exists_1 = __importDefault4(require_process_exists()); + var tree_kill_1 = __importDefault4(require_tree_kill()); + var kill = (0, util_1.promisify)(tree_kill_1.default); + async function stop(opts) { + const storeDir = await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir }); - return callback ? p.then((res) => callback(null, res), callback) : p; - }; - var walkSync = (options) => { - return new BundleWalkerSync(options).start().result; + const connectionInfoDir = (0, store_connection_manager_1.serverConnectionInfoDir)(storeDir); + const serverJson = await (0, store_connection_manager_1.tryLoadServerJson)({ + serverJsonPath: path_1.default.join(connectionInfoDir, "server.json"), + shouldRetryOnNoent: false + }); + if (serverJson === null) { + (0, logger_1.globalInfo)(`Nothing to stop. No server is running for the store at ${storeDir}`); + return; + } + const storeController = await (0, server_1.connectStoreController)(serverJson.connectionOptions); + await storeController.stop(); + if (await serverGracefullyStops(serverJson.pid)) { + (0, logger_1.globalInfo)("Server gracefully stopped"); + return; + } + (0, logger_1.globalWarn)("Graceful shutdown failed"); + await kill(serverJson.pid, "SIGINT"); + (0, logger_1.globalInfo)("Server process terminated"); + } + exports2.stop = stop; + async function serverGracefullyStops(pid) { + if (!await (0, process_exists_1.default)(pid)) + return true; + await (0, delay_1.default)(5e3); + return !await (0, process_exists_1.default)(pid); + } + } +}); + +// ../store/plugin-commands-server/lib/server.js +var require_server = __commonJS({ + "../store/plugin-commands-server/lib/server.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; }; - module2.exports = walk; - walk.sync = walkSync; - walk.BundleWalker = BundleWalker; - walk.BundleWalkerSync = BundleWalkerSync; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var start_1 = require_start(); + var status_1 = require_status(); + var stop_1 = require_stop(); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return { + ...(0, pick_1.default)([ + "store", + "store-dir" + ], config_1.types), + background: Boolean, + "ignore-stop-requests": Boolean, + "ignore-upload-requests": Boolean, + port: Number, + protocol: ["auto", "tcp", "ipc"] + }; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["server"]; + function help() { + return (0, render_help_1.default)({ + description: "Manage a store server", + descriptionLists: [ + { + title: "Commands", + list: [ + { + description: "Starts a service that does all interactions with the store. Other commands will delegate any store-related tasks to this service", + name: "start" + }, + { + description: "Stops the store server", + name: "stop" + }, + { + description: "Prints information about the running server", + name: "status" + } + ] + }, + { + title: "Start options", + list: [ + { + description: "Runs the server in the background", + name: "--background" + }, + { + description: "The communication protocol used by the server", + name: "--protocol " + }, + { + description: "The port number to use, when TCP is used for communication", + name: "--port " + }, + common_cli_options_help_1.OPTIONS.storeDir, + { + description: "Maximum number of concurrent network requests", + name: "--network-concurrency " + }, + { + description: "If false, doesn't check whether packages in the store were mutated", + name: "--[no-]verify-store-integrity" + }, + { + name: "--[no-]lock" + }, + { + description: "Disallows stopping the server using `pnpm server stop`", + name: "--ignore-stop-requests" + }, + { + description: "Disallows creating new side effect cache during install", + name: "--ignore-upload-requests" + }, + ...common_cli_options_help_1.UNIVERSAL_OPTIONS + ] + } + ], + url: (0, cli_utils_1.docsUrl)("server"), + usages: ["pnpm server "] + }); + } + exports2.help = help; + function handler(opts, params) { + opts.protocol = "tcp"; + switch (params[0]) { + case "start": + return (0, start_1.start)(opts); + case "status": + return (0, status_1.status)(opts); + case "stop": + return (0, stop_1.stop)(opts); + default: + help(); + if (params[0]) { + throw new error_1.PnpmError("INVALID_SERVER_COMMAND", `"server ${params[0]}" is not a pnpm command. See "pnpm help server".`); + } + return void 0; + } + } + exports2.handler = handler; } }); -// ../../node_modules/.pnpm/ignore-walk@3.0.4/node_modules/ignore-walk/index.js -var require_ignore_walk = __commonJS({ - "../../node_modules/.pnpm/ignore-walk@3.0.4/node_modules/ignore-walk/index.js"(exports2, module2) { +// ../store/plugin-commands-server/lib/index.js +var require_lib157 = __commonJS({ + "../store/plugin-commands-server/lib/index.js"(exports2) { "use strict"; - var fs = require("fs"); - var path = require("path"); - var EE = require("events").EventEmitter; - var Minimatch = require_minimatch().Minimatch; - var Walker = class extends EE { - constructor(opts) { - opts = opts || {}; - super(opts); - this.path = opts.path || process.cwd(); - this.basename = path.basename(this.path); - this.ignoreFiles = opts.ignoreFiles || [".ignore"]; - this.ignoreRules = {}; - this.parent = opts.parent || null; - this.includeEmpty = !!opts.includeEmpty; - this.root = this.parent ? this.parent.root : this.path; - this.follow = !!opts.follow; - this.result = this.parent ? this.parent.result : new Set(); - this.entries = null; - this.sawError = false; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; } - sort(a, b) { - return a.localeCompare(b, "en"); + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); } - emit(ev, data) { - let ret = false; - if (!(this.sawError && ev === "error")) { - if (ev === "error") - this.sawError = true; - else if (ev === "done" && !this.parent) { - data = Array.from(data).map((e) => /^@/.test(e) ? `./${e}` : e).sort(this.sort); - this.result = data; + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.server = void 0; + var server = __importStar5(require_server()); + exports2.server = server; + } +}); + +// ../node_modules/.pnpm/@pnpm+os.env.path-extender-posix@0.2.8/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js +var require_path_extender_posix = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender-posix@0.2.8/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js"(exports2) { + "use strict"; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); } - if (ev === "error" && this.parent) - ret = this.parent.emit("error", data); - else - ret = super.emit(ev, data); } - return ret; - } - start() { - fs.readdir(this.path, (er, entries) => er ? this.emit("error", er) : this.onReaddir(entries)); - return this; - } - isIgnoreFile(e) { - return e !== "." && e !== ".." && this.ignoreFiles.indexOf(e) !== -1; + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addDirToPosixEnvPath = void 0; + var fs_1 = __importDefault4(require("fs")); + var os_1 = __importDefault4(require("os")); + var path_1 = __importDefault4(require("path")); + var error_1 = require_lib36(); + var BadShellSectionError = class extends error_1.PnpmError { + constructor(opts) { + super("BAD_SHELL_SECTION", `The config file at "${opts.configFile} already contains a ${opts.configSectionName} section but with other configuration`); + this.current = opts.current; + this.wanted = opts.wanted; } - onReaddir(entries) { - this.entries = entries; - if (entries.length === 0) { - if (this.includeEmpty) - this.result.add(this.path.substr(this.root.length + 1)); - this.emit("done", this.result); + }; + function addDirToPosixEnvPath(dir, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const currentShell = detectCurrentShell(); + return yield updateShell(currentShell, dir, opts); + }); + } + exports2.addDirToPosixEnvPath = addDirToPosixEnvPath; + function detectCurrentShell() { + if (process.env.ZSH_VERSION) + return "zsh"; + if (process.env.BASH_VERSION) + return "bash"; + if (process.env.FISH_VERSION) + return "fish"; + return typeof process.env.SHELL === "string" ? path_1.default.basename(process.env.SHELL) : null; + } + function updateShell(currentShell, pnpmHomeDir, opts) { + return __awaiter4(this, void 0, void 0, function* () { + switch (currentShell) { + case "bash": + case "zsh": + case "ksh": + case "dash": + case "sh": { + return setupShell(currentShell, pnpmHomeDir, opts); + } + case "fish": { + return setupFishShell(pnpmHomeDir, opts); + } + } + if (currentShell == null) + throw new error_1.PnpmError("UNKNOWN_SHELL", "Could not infer shell type."); + throw new error_1.PnpmError("UNSUPPORTED_SHELL", `Can't setup configuration for "${currentShell}" shell. Supported shell languages are bash, zsh, and fish.`); + }); + } + function setupShell(shell, dir, opts) { + var _a; + return __awaiter4(this, void 0, void 0, function* () { + const configFile = getConfigFilePath(shell); + let newSettings; + const _createPathValue = createPathValue.bind(null, (_a = opts.position) !== null && _a !== void 0 ? _a : "start"); + if (opts.proxyVarName) { + newSettings = `export ${opts.proxyVarName}="${dir}" +case ":$PATH:" in + *":$${opts.proxyVarName}:"*) ;; + *) export PATH="${_createPathValue(`$${opts.proxyVarName}`)}" ;; +esac`; } else { - const hasIg = this.entries.some((e) => this.isIgnoreFile(e)); - if (hasIg) - this.addIgnoreFiles(); - else - this.filterEntries(); + newSettings = `case ":$PATH:" in + *":${dir}:"*) ;; + *) export PATH="${_createPathValue(dir)}" ;; +esac`; } - } - addIgnoreFiles() { - const newIg = this.entries.filter((e) => this.isIgnoreFile(e)); - let igCount = newIg.length; - const then = (_) => { - if (--igCount === 0) - this.filterEntries(); - }; - newIg.forEach((e) => this.addIgnoreFile(e, then)); - } - addIgnoreFile(file, then) { - const ig = path.resolve(this.path, file); - fs.readFile(ig, "utf8", (er, data) => er ? this.emit("error", er) : this.onReadIgnoreFile(file, data, then)); - } - onReadIgnoreFile(file, data, then) { - const mmopt = { - matchBase: true, - dot: true, - flipNegate: true, - nocase: true + const content = wrapSettings(opts.configSectionName, newSettings); + const { changeType, oldSettings } = yield updateShellConfig(configFile, content, opts); + return { + configFile: { + path: configFile, + changeType + }, + oldSettings, + newSettings }; - const rules = data.split(/\r?\n/).filter((line) => !/^#|^$/.test(line.trim())).map((r) => new Minimatch(r, mmopt)); - this.ignoreRules[file] = rules; - then(); - } - filterEntries() { - const filtered = this.entries.map((entry) => { - const passFile = this.filterEntry(entry); - const passDir = this.filterEntry(entry, true); - return passFile || passDir ? [entry, passFile, passDir] : false; - }).filter((e) => e); - let entryCount = filtered.length; - if (entryCount === 0) { - this.emit("done", this.result); - } else { - const then = (_) => { - if (--entryCount === 0) - this.emit("done", this.result); - }; - filtered.forEach((filt) => { - const entry = filt[0]; - const file = filt[1]; - const dir = filt[2]; - this.stat(entry, file, dir, then); - }); + }); + } + function getConfigFilePath(shell) { + switch (shell) { + case "zsh": + return path_1.default.join(process.env.ZDOTDIR || os_1.default.homedir(), `.${shell}rc`); + case "dash": + case "sh": { + if (!process.env.ENV) { + throw new error_1.PnpmError("NO_SHELL_CONFIG", `Cannot find a config file for ${shell}. The ENV environment variable is not set.`); + } + return process.env.ENV; } + default: + return path_1.default.join(os_1.default.homedir(), `.${shell}rc`); } - onstat(st, entry, file, dir, then) { - const abs = this.path + "/" + entry; - if (!st.isDirectory()) { - if (file) - this.result.add(abs.substr(this.root.length + 1)); - then(); + } + function createPathValue(position, dir) { + return position === "start" ? `${dir}:$PATH` : `$PATH:${dir}`; + } + function setupFishShell(dir, opts) { + var _a; + return __awaiter4(this, void 0, void 0, function* () { + const configFile = path_1.default.join(os_1.default.homedir(), ".config/fish/config.fish"); + let newSettings; + const _createPathValue = createFishPathValue.bind(null, (_a = opts.position) !== null && _a !== void 0 ? _a : "start"); + if (opts.proxyVarName) { + newSettings = `set -gx ${opts.proxyVarName} "${dir}" +if not string match -q -- $${opts.proxyVarName} $PATH + set -gx PATH ${_createPathValue(`$${opts.proxyVarName}`)} +end`; } else { - if (dir) - this.walker(entry, then); - else - then(); + newSettings = `if not string match -q -- "${dir}" $PATH + set -gx PATH ${_createPathValue(dir)} +end`; } - } - stat(entry, file, dir, then) { - const abs = this.path + "/" + entry; - fs[this.follow ? "stat" : "lstat"](abs, (er, st) => { - if (er) - this.emit("error", er); - else - this.onstat(st, entry, file, dir, then); - }); - } - walkerOpt(entry) { + const content = wrapSettings(opts.configSectionName, newSettings); + const { changeType, oldSettings } = yield updateShellConfig(configFile, content, opts); return { - path: this.path + "/" + entry, - parent: this, - ignoreFiles: this.ignoreFiles, - follow: this.follow, - includeEmpty: this.includeEmpty + configFile: { + path: configFile, + changeType + }, + oldSettings, + newSettings }; - } - walker(entry, then) { - new Walker(this.walkerOpt(entry)).on("done", then).start(); - } - filterEntry(entry, partial) { - let included = true; - if (this.parent && this.parent.filterEntry) { - var pt = this.basename + "/" + entry; - included = this.parent.filterEntry(pt, partial); + }); + } + function wrapSettings(sectionName, settings) { + return `# ${sectionName} +${settings} +# ${sectionName} end`; + } + function createFishPathValue(position, dir) { + return position === "start" ? `"${dir}" $PATH` : `$PATH "${dir}"`; + } + function updateShellConfig(configFile, newContent, opts) { + return __awaiter4(this, void 0, void 0, function* () { + if (!fs_1.default.existsSync(configFile)) { + yield fs_1.default.promises.mkdir(path_1.default.dirname(configFile), { recursive: true }); + yield fs_1.default.promises.writeFile(configFile, newContent, "utf8"); + return { + changeType: "created", + oldSettings: "" + }; } - this.ignoreFiles.forEach((f) => { - if (this.ignoreRules[f]) { - this.ignoreRules[f].forEach((rule) => { - if (rule.negate !== included) { - const match = rule.match("/" + entry) || rule.match(entry) || !!partial && (rule.match("/" + entry + "/") || rule.match(entry + "/")) || !!partial && rule.negate && (rule.match("/" + entry, true) || rule.match(entry, true)); - if (match) - included = rule.negate; - } + const configContent = yield fs_1.default.promises.readFile(configFile, "utf8"); + const match = new RegExp(`# ${opts.configSectionName} +([\\s\\S]*) +# ${opts.configSectionName} end`, "g").exec(configContent); + if (!match) { + yield fs_1.default.promises.appendFile(configFile, ` +${newContent}`, "utf8"); + return { + changeType: "appended", + oldSettings: "" + }; + } + const oldSettings = match[1]; + if (match[0] !== newContent) { + if (!opts.overwrite) { + throw new BadShellSectionError({ + configSectionName: opts.configSectionName, + current: match[0], + wanted: newContent, + configFile }); } - }); - return included; + const newConfigContent = replaceSection(configContent, newContent, opts.configSectionName); + yield fs_1.default.promises.writeFile(configFile, newConfigContent, "utf8"); + return { + changeType: "modified", + oldSettings + }; + } + return { + changeType: "skipped", + oldSettings + }; + }); + } + function replaceSection(originalContent, newSection, sectionName) { + return originalContent.replace(new RegExp(`# ${sectionName}[\\s\\S]*# ${sectionName} end`, "g"), newSection); + } + } +}); + +// ../node_modules/.pnpm/@pnpm+os.env.path-extender-posix@0.2.8/node_modules/@pnpm/os.env.path-extender-posix/dist/index.js +var require_dist17 = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender-posix@0.2.8/node_modules/@pnpm/os.env.path-extender-posix/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addDirToPosixEnvPath = void 0; + var path_extender_posix_1 = require_path_extender_posix(); + Object.defineProperty(exports2, "addDirToPosixEnvPath", { enumerable: true, get: function() { + return path_extender_posix_1.addDirToPosixEnvPath; + } }); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsArray.js +var require_IsArray3 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsArray.js"(exports2, module2) { + "use strict"; + module2.exports = require_IsArray(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Call.js +var require_Call2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Call.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsArray = require_IsArray3(); + var $apply = GetIntrinsic("%Reflect.apply%", true) || callBound("Function.prototype.apply"); + module2.exports = function Call(F, V) { + var argumentsList = arguments.length > 2 ? arguments[2] : []; + if (!IsArray(argumentsList)) { + throw new $TypeError("Assertion failed: optional `argumentsList`, if provided, must be a List"); } + return $apply(F, V, argumentsList); }; - var WalkerSync = class extends Walker { - constructor(opt) { - super(opt); - } - start() { - this.onReaddir(fs.readdirSync(this.path)); - return this; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsPropertyKey.js +var require_IsPropertyKey2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsPropertyKey.js"(exports2, module2) { + "use strict"; + module2.exports = function IsPropertyKey(argument) { + return typeof argument === "string" || typeof argument === "symbol"; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Type.js +var require_Type3 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Type.js"(exports2, module2) { + "use strict"; + var ES5Type = require_Type(); + module2.exports = function Type(x) { + if (typeof x === "symbol") { + return "Symbol"; } - addIgnoreFile(file, then) { - const ig = path.resolve(this.path, file); - this.onReadIgnoreFile(file, fs.readFileSync(ig, "utf8"), then); + if (typeof x === "bigint") { + return "BigInt"; } - stat(entry, file, dir, then) { - const abs = this.path + "/" + entry; - const st = fs[this.follow ? "statSync" : "lstatSync"](abs); - this.onstat(st, entry, file, dir, then); + return ES5Type(x); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Get.js +var require_Get2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Get.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var inspect = require_object_inspect(); + var IsPropertyKey = require_IsPropertyKey2(); + var Type = require_Type3(); + module2.exports = function Get(O, P) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: Type(O) is not Object"); } - walker(entry, then) { - new WalkerSync(this.walkerOpt(entry)).start(); - then(); + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true, got " + inspect(P)); } + return O[P]; }; - var walk = (options, callback) => { - const p = new Promise((resolve, reject) => { - new Walker(options).on("done", resolve).on("error", reject).start(); - }); - return callback ? p.then((res) => callback(null, res), callback) : p; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/RequireObjectCoercible.js +var require_RequireObjectCoercible2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/RequireObjectCoercible.js"(exports2, module2) { + "use strict"; + module2.exports = require_CheckObjectCoercible(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToObject.js +var require_ToObject2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToObject.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $Object = GetIntrinsic("%Object%"); + var RequireObjectCoercible = require_RequireObjectCoercible2(); + module2.exports = function ToObject(value) { + RequireObjectCoercible(value); + return $Object(value); }; - var walkSync = (options) => { - return new WalkerSync(options).start().result; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/GetV.js +var require_GetV2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/GetV.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsPropertyKey = require_IsPropertyKey2(); + var ToObject = require_ToObject2(); + module2.exports = function GetV(V, P) { + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var O = ToObject(V); + return O[P]; }; - module2.exports = walk; - walk.sync = walkSync; - walk.Walker = Walker; - walk.WalkerSync = WalkerSync; } }); -// ../../node_modules/.pnpm/npm-packlist@2.2.2/node_modules/npm-packlist/index.js -var require_npm_packlist = __commonJS({ - "../../node_modules/.pnpm/npm-packlist@2.2.2/node_modules/npm-packlist/index.js"(exports2, module2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsCallable.js +var require_IsCallable2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsCallable.js"(exports2, module2) { "use strict"; - var bundleWalk = require_npm_bundled(); - var BundleWalker = bundleWalk.BundleWalker; - var BundleWalkerSync = bundleWalk.BundleWalkerSync; - var ignoreWalk = require_ignore_walk(); - var IgnoreWalker = ignoreWalk.Walker; - var IgnoreWalkerSync = ignoreWalk.WalkerSync; - var rootBuiltinRules = Symbol("root-builtin-rules"); - var packageNecessaryRules = Symbol("package-necessary-rules"); - var path = require("path"); - var normalizePackageBin = require_npm_normalize_package_bin(); - var packageMustHaveFileNames = "readme|copying|license|licence"; - var packageMustHaves = `@(${packageMustHaveFileNames}){,.*[^~$]}`; - var packageMustHavesRE = new RegExp(`^(${packageMustHaveFileNames})(\\..*[^~$])?$`, "i"); - var fs = require("fs"); - var glob = require_glob(); - var defaultRules = [ - ".npmignore", - ".gitignore", - "**/.git", - "**/.svn", - "**/.hg", - "**/CVS", - "**/.git/**", - "**/.svn/**", - "**/.hg/**", - "**/CVS/**", - "/.lock-wscript", - "/.wafpickle-*", - "/build/config.gypi", - "npm-debug.log", - "**/.npmrc", - ".*.swp", - ".DS_Store", - "**/.DS_Store/**", - "._*", - "**/._*/**", - "*.orig", - "/package-lock.json", - "/yarn.lock", - "/archived-packages/**" - ]; - var nameIsBadForWindows = (file) => /\*/.test(file); - var npmWalker = (Class) => class Walker extends Class { - constructor(opt) { - opt = opt || {}; - opt.ignoreFiles = [ - rootBuiltinRules, - "package.json", - ".npmignore", - ".gitignore", - packageNecessaryRules - ]; - opt.includeEmpty = false; - opt.path = opt.path || process.cwd(); - const followRe = /^(?:\/node_modules\/(?:@[^/]+\/[^/]+|[^/]+)\/)*\/node_modules(?:\/@[^/]+)?$/; - const rootPath = opt.parent ? opt.parent.root : opt.path; - const followTestPath = opt.path.replace(/\\/g, "/").substr(rootPath.length); - opt.follow = followRe.test(followTestPath); - super(opt); - if (!this.parent) { - this.bundled = opt.bundled || []; - this.bundledScopes = Array.from(new Set(this.bundled.filter((f) => /^@/.test(f)).map((f) => f.split("/")[0]))); - const rules = defaultRules.join("\n") + "\n"; - this.packageJsonCache = opt.packageJsonCache || new Map(); - super.onReadIgnoreFile(rootBuiltinRules, rules, (_) => _); - } else { - this.bundled = []; - this.bundledScopes = []; - this.packageJsonCache = this.parent.packageJsonCache; - } + module2.exports = require_is_callable(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/GetMethod.js +var require_GetMethod2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/GetMethod.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var GetV = require_GetV2(); + var IsCallable = require_IsCallable2(); + var IsPropertyKey = require_IsPropertyKey2(); + var inspect = require_object_inspect(); + module2.exports = function GetMethod(O, P) { + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var func = GetV(O, P); + if (func == null) { + return void 0; } - onReaddir(entries) { - if (!this.parent) { - entries = entries.filter((e) => e !== ".git" && !(e === "node_modules" && this.bundled.length === 0)); - } - if (this.parent || !entries.includes("package.json")) - return super.onReaddir(entries); - const ig = path.resolve(this.path, "package.json"); - if (this.packageJsonCache.has(ig)) { - const pkg = this.packageJsonCache.get(ig); - if (!pkg || typeof pkg !== "object") - return this.readPackageJson(entries); - return this.getPackageFiles(entries, JSON.stringify(pkg)); - } - this.readPackageJson(entries); + if (!IsCallable(func)) { + throw new $TypeError(inspect(P) + " is not a function: " + inspect(func)); } - onReadPackageJson(entries, er, pkg) { - if (er) - this.emit("error", er); - else - this.getPackageFiles(entries, pkg); + return func; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToBoolean.js +var require_ToBoolean = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToBoolean.js"(exports2, module2) { + "use strict"; + module2.exports = function ToBoolean(value) { + return !!value; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsRegExp.js +var require_IsRegExp = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsRegExp.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $match = GetIntrinsic("%Symbol.match%", true); + var hasRegExpMatcher = require_is_regex(); + var ToBoolean = require_ToBoolean(); + module2.exports = function IsRegExp(argument) { + if (!argument || typeof argument !== "object") { + return false; } - mustHaveFilesFromPackage(pkg) { - const files = []; - if (pkg.browser) - files.push("/" + pkg.browser); - if (pkg.main) - files.push("/" + pkg.main); - if (pkg.bin) { - for (const key in pkg.bin) - files.push("/" + pkg.bin[key]); + if ($match) { + var isRegExp = argument[$match]; + if (typeof isRegExp !== "undefined") { + return ToBoolean(isRegExp); } - files.push("/package.json", "/npm-shrinkwrap.json", "!/package-lock.json", packageMustHaves); - return files; } - getPackageFiles(entries, pkg) { - try { - pkg = normalizePackageBin(JSON.parse(pkg.toString())); - } catch (er) { - return super.onReaddir(entries); - } - const ig = path.resolve(this.path, "package.json"); - this.packageJsonCache.set(ig, pkg); - if (!Array.isArray(pkg.files)) - return super.onReaddir(entries); - pkg.files.push(...this.mustHaveFilesFromPackage(pkg)); - if ((pkg.bundleDependencies || pkg.bundledDependencies) && entries.includes("node_modules")) - pkg.files.push("node_modules"); - const patterns = Array.from(new Set(pkg.files)).reduce((set2, pattern) => { - const excl = pattern.match(/^!+/); - if (excl) - pattern = pattern.substr(excl[0].length); - pattern = pattern.replace(/^\/+/, ""); - const negate = excl && excl[0].length % 2 === 1; - set2.push({ pattern, negate }); - return set2; - }, []); - let n = patterns.length; - const set = new Set(); - const negates = new Set(); - const results = []; - const then = (pattern, negate, er, fileList, i) => { - if (er) - return this.emit("error", er); - results[i] = { negate, fileList }; - if (--n === 0) - processResults(results); - }; - const processResults = (results2) => { - for (const { negate, fileList } of results2) { - if (negate) { - fileList.forEach((f) => { - f = f.replace(/\/+$/, ""); - set.delete(f); - negates.add(f); - }); - } else { - fileList.forEach((f) => { - f = f.replace(/\/+$/, ""); - set.add(f); - negates.delete(f); - }); - } - } - const list = Array.from(set); - pkg.files = list.concat(Array.from(negates).map((f) => "!" + f)); - const rdResult = Array.from(new Set(list.map((f) => f.replace(/^\/+/, "")))); - super.onReaddir(rdResult); - }; - patterns.forEach(({ pattern, negate }, i) => this.globFiles(pattern, (er, res) => then(pattern, negate, er, res, i))); + return hasRegExpMatcher(argument); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToString.js +var require_ToString2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToString.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $String = GetIntrinsic("%String%"); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function ToString(argument) { + if (typeof argument === "symbol") { + throw new $TypeError("Cannot convert a Symbol value to a string"); } - filterEntry(entry, partial) { - const p = this.path.substr(this.root.length + 1); - const pkgre = /^node_modules\/(@[^/]+\/?[^/]+|[^/]+)(\/.*)?$/; - const isRoot = !this.parent; - const pkg = isRoot && pkgre.test(entry) ? entry.replace(pkgre, "$1") : null; - const rootNM = isRoot && entry === "node_modules"; - const rootPJ = isRoot && entry === "package.json"; - return /^node_modules($|\/)/i.test(p) ? this.parent.filterEntry(this.basename + "/" + entry, partial) : pkg ? this.bundled.indexOf(pkg) !== -1 || this.bundledScopes.indexOf(pkg) !== -1 : rootNM ? !!this.bundled.length : rootPJ ? true : packageMustHavesRE.test(entry) ? true : isRoot && (entry === "npm-shrinkwrap.json" || entry === "package.json") ? true : isRoot && entry === "package-lock.json" ? false : super.filterEntry(entry, partial); + return $String(argument); + }; + } +}); + +// ../node_modules/.pnpm/functions-have-names@1.2.3/node_modules/functions-have-names/index.js +var require_functions_have_names = __commonJS({ + "../node_modules/.pnpm/functions-have-names@1.2.3/node_modules/functions-have-names/index.js"(exports2, module2) { + "use strict"; + var functionsHaveNames = function functionsHaveNames2() { + return typeof function f() { + }.name === "string"; + }; + var gOPD = Object.getOwnPropertyDescriptor; + if (gOPD) { + try { + gOPD([], "length"); + } catch (e) { + gOPD = null; } - filterEntries() { - if (this.ignoreRules[".npmignore"]) - this.ignoreRules[".gitignore"] = null; - this.filterEntries = super.filterEntries; - super.filterEntries(); + } + functionsHaveNames.functionsHaveConfigurableNames = function functionsHaveConfigurableNames() { + if (!functionsHaveNames() || !gOPD) { + return false; } - addIgnoreFile(file, then) { - const ig = path.resolve(this.path, file); - if (file === "package.json" && this.parent) - then(); - else if (this.packageJsonCache.has(ig)) - this.onPackageJson(ig, this.packageJsonCache.get(ig), then); - else - super.addIgnoreFile(file, then); + var desc = gOPD(function() { + }, "name"); + return !!desc && !!desc.configurable; + }; + var $bind = Function.prototype.bind; + functionsHaveNames.boundFunctionsHaveNames = function boundFunctionsHaveNames() { + return functionsHaveNames() && typeof $bind === "function" && function f() { + }.bind().name !== ""; + }; + module2.exports = functionsHaveNames; + } +}); + +// ../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/implementation.js +var require_implementation5 = __commonJS({ + "../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/implementation.js"(exports2, module2) { + "use strict"; + var functionsHaveConfigurableNames = require_functions_have_names().functionsHaveConfigurableNames(); + var $Object = Object; + var $TypeError = TypeError; + module2.exports = function flags() { + if (this != null && this !== $Object(this)) { + throw new $TypeError("RegExp.prototype.flags getter called on non-object"); } - onPackageJson(ig, pkg, then) { - this.packageJsonCache.set(ig, pkg); - if (Array.isArray(pkg.files)) { - super.onReadIgnoreFile("package.json", pkg.files.map((f) => "!" + f).join("\n") + "\n", then); - } else { - const rules = this.mustHaveFilesFromPackage(pkg).map((f) => `!${f}`); - const data = rules.join("\n") + "\n"; - super.onReadIgnoreFile(packageNecessaryRules, data, then); - } + var result2 = ""; + if (this.hasIndices) { + result2 += "d"; } - stat(entry, file, dir, then) { - if (nameIsBadForWindows(entry)) - then(); - else - super.stat(entry, file, dir, then); + if (this.global) { + result2 += "g"; } - onstat(st, entry, file, dir, then) { - if (st.isSymbolicLink()) - then(); - else - super.onstat(st, entry, file, dir, then); + if (this.ignoreCase) { + result2 += "i"; } - onReadIgnoreFile(file, data, then) { - if (file === "package.json") { - try { - const ig = path.resolve(this.path, file); - this.onPackageJson(ig, JSON.parse(data), then); - } catch (er) { - then(); - } - } else - super.onReadIgnoreFile(file, data, then); + if (this.multiline) { + result2 += "m"; } - sort(a, b) { - return sort(a, b); + if (this.dotAll) { + result2 += "s"; } - }; - var Walker = class extends npmWalker(IgnoreWalker) { - globFiles(pattern, cb) { - glob(pattern, { dot: true, cwd: this.path, nocase: true }, cb); + if (this.unicode) { + result2 += "u"; } - readPackageJson(entries) { - fs.readFile(this.path + "/package.json", (er, pkg) => this.onReadPackageJson(entries, er, pkg)); + if (this.unicodeSets) { + result2 += "v"; } - walker(entry, then) { - new Walker(this.walkerOpt(entry)).on("done", then).start(); + if (this.sticky) { + result2 += "y"; } + return result2; }; - var WalkerSync = class extends npmWalker(IgnoreWalkerSync) { - globFiles(pattern, cb) { - cb(null, glob.sync(pattern, { dot: true, cwd: this.path, nocase: true })); - } - readPackageJson(entries) { - const p = this.path + "/package.json"; - try { - this.onReadPackageJson(entries, null, fs.readFileSync(p)); - } catch (er) { - this.onReadPackageJson(entries, er); + if (functionsHaveConfigurableNames && Object.defineProperty) { + Object.defineProperty(module2.exports, "name", { value: "get flags" }); + } + } +}); + +// ../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/polyfill.js +var require_polyfill2 = __commonJS({ + "../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/polyfill.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation5(); + var supportsDescriptors = require_define_properties().supportsDescriptors; + var $gOPD = Object.getOwnPropertyDescriptor; + module2.exports = function getPolyfill() { + if (supportsDescriptors && /a/mig.flags === "gim") { + var descriptor = $gOPD(RegExp.prototype, "flags"); + if (descriptor && typeof descriptor.get === "function" && typeof RegExp.prototype.dotAll === "boolean" && typeof RegExp.prototype.hasIndices === "boolean") { + var calls = ""; + var o = {}; + Object.defineProperty(o, "hasIndices", { + get: function() { + calls += "d"; + } + }); + Object.defineProperty(o, "sticky", { + get: function() { + calls += "y"; + } + }); + if (calls === "dy") { + return descriptor.get; + } } } - walker(entry, then) { - new WalkerSync(this.walkerOpt(entry)).start(); - then(); - } + return implementation; }; - var walk = (options, callback) => { - options = options || {}; - const p = new Promise((resolve, reject) => { - const bw = new BundleWalker(options); - bw.on("done", (bundled) => { - options.bundled = bundled; - options.packageJsonCache = bw.packageJsonCache; - new Walker(options).on("done", resolve).on("error", reject).start(); + } +}); + +// ../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/shim.js +var require_shim2 = __commonJS({ + "../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/shim.js"(exports2, module2) { + "use strict"; + var supportsDescriptors = require_define_properties().supportsDescriptors; + var getPolyfill = require_polyfill2(); + var gOPD = Object.getOwnPropertyDescriptor; + var defineProperty = Object.defineProperty; + var TypeErr = TypeError; + var getProto = Object.getPrototypeOf; + var regex = /a/; + module2.exports = function shimFlags() { + if (!supportsDescriptors || !getProto) { + throw new TypeErr("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors"); + } + var polyfill = getPolyfill(); + var proto = getProto(regex); + var descriptor = gOPD(proto, "flags"); + if (!descriptor || descriptor.get !== polyfill) { + defineProperty(proto, "flags", { + configurable: true, + enumerable: false, + get: polyfill }); - bw.start(); - }); - return callback ? p.then((res) => callback(null, res), callback) : p; + } + return polyfill; }; - var walkSync = (options) => { - options = options || {}; - const bw = new BundleWalkerSync(options).start(); - options.bundled = bw.result; - options.packageJsonCache = bw.packageJsonCache; - const walker = new WalkerSync(options); - walker.start(); - return walker.result; - }; - var sort = (a, b) => { - const exta = path.extname(a).toLowerCase(); - const extb = path.extname(b).toLowerCase(); - const basea = path.basename(a).toLowerCase(); - const baseb = path.basename(b).toLowerCase(); - return exta.localeCompare(extb, "en") || basea.localeCompare(baseb, "en") || a.localeCompare(b, "en"); + } +}); + +// ../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/index.js +var require_regexp_prototype = __commonJS({ + "../node_modules/.pnpm/regexp.prototype.flags@1.5.0/node_modules/regexp.prototype.flags/index.js"(exports2, module2) { + "use strict"; + var define2 = require_define_properties(); + var callBind = require_call_bind(); + var implementation = require_implementation5(); + var getPolyfill = require_polyfill2(); + var shim = require_shim2(); + var flagsBound = callBind(getPolyfill()); + define2(flagsBound, { + getPolyfill, + implementation, + shim + }); + module2.exports = flagsBound; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isLeadingSurrogate.js +var require_isLeadingSurrogate = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isLeadingSurrogate.js"(exports2, module2) { + "use strict"; + module2.exports = function isLeadingSurrogate(charCode) { + return typeof charCode === "number" && charCode >= 55296 && charCode <= 56319; }; - module2.exports = walk; - walk.sync = walkSync; - walk.Walker = Walker; - walk.WalkerSync = WalkerSync; } }); -// ../run-npm/lib/index.js -var require_lib104 = __commonJS({ - "../run-npm/lib/index.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isTrailingSurrogate.js +var require_isTrailingSurrogate = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isTrailingSurrogate.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + module2.exports = function isTrailingSurrogate(charCode) { + return typeof charCode === "number" && charCode >= 56320 && charCode <= 57343; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.runScriptSync = void 0; - var path_1 = __importDefault(require("path")); - var cross_spawn_1 = __importDefault(require_cross_spawn()); - var path_name_1 = __importDefault(require_path_name()); - function runNpm(npmPath, args2, options) { - var _a; - const npm = npmPath !== null && npmPath !== void 0 ? npmPath : "npm"; - return runScriptSync(npm, args2, { - cwd: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd(), - stdio: "inherit", - userAgent: void 0 - }); - } - exports2.default = runNpm; - function runScriptSync(command, args2, opts) { - opts = Object.assign({}, opts); - return cross_spawn_1.default.sync(command, args2, Object.assign({}, opts, { - env: createEnv(opts) - })); - } - exports2.runScriptSync = runScriptSync; - function createEnv(opts) { - const env = Object.create(process.env); - env[path_name_1.default] = [ - path_1.default.join(opts.cwd, "node_modules", ".bin"), - path_1.default.dirname(process.execPath), - process.env[path_name_1.default] - ].join(path_1.default.delimiter); - if (opts.userAgent) { - env.npm_config_user_agent = opts.userAgent; - } - return env; - } } }); -// ../plugin-commands-publishing/lib/recursivePublish.js -var require_recursivePublish = __commonJS({ - "../plugin-commands-publishing/lib/recursivePublish.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/UTF16SurrogatePairToCodePoint.js +var require_UTF16SurrogatePairToCodePoint = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/UTF16SurrogatePairToCodePoint.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var $fromCharCode = GetIntrinsic("%String.fromCharCode%"); + var isLeadingSurrogate = require_isLeadingSurrogate(); + var isTrailingSurrogate = require_isTrailingSurrogate(); + module2.exports = function UTF16SurrogatePairToCodePoint(lead, trail) { + if (!isLeadingSurrogate(lead) || !isTrailingSurrogate(trail)) { + throw new $TypeError("Assertion failed: `lead` must be a leading surrogate char code, and `trail` must be a trailing surrogate char code"); + } + return $fromCharCode(lead) + $fromCharCode(trail); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var client_1 = require_lib49(); - var logger_1 = __importDefault(require_lib6()); - var pick_registry_for_package_1 = __importDefault(require_lib50()); - var sort_packages_1 = __importDefault(require_lib92()); - var p_filter_1 = __importDefault(require_p_filter()); - var pick_1 = __importDefault(require_pick()); - var write_json_file_1 = __importDefault(require_write_json_file()); - var publish_1 = require_publish2(); - async function default_1(opts) { - var _a, _b; - const pkgs = Object.values(opts.selectedProjectsGraph).map((wsPkg) => wsPkg.package); - const resolve = client_1.createResolver({ - ...opts, - authConfig: opts.rawConfig, - retry: { - factor: opts.fetchRetryFactor, - maxTimeout: opts.fetchRetryMaxtimeout, - minTimeout: opts.fetchRetryMintimeout, - retries: opts.fetchRetries - }, - timeout: opts.fetchTimeout - }); - const pkgsToPublish = await p_filter_1.default(pkgs, async (pkg) => { - var _a2; - if (!pkg.manifest.name || !pkg.manifest.version || pkg.manifest.private) - return false; - if (opts.force) - return true; - return !await isAlreadyPublished({ - dir: pkg.dir, - lockfileDir: (_a2 = opts.lockfileDir) !== null && _a2 !== void 0 ? _a2 : pkg.dir, - registries: opts.registries, - resolve - }, pkg.manifest.name, pkg.manifest.version); - }); - const publishedPkgDirs = new Set(pkgsToPublish.map(({ dir }) => dir)); - const publishedPackages = []; - if (publishedPkgDirs.size === 0) { - logger_1.default.info({ - message: "There are no new packages that should be published", - prefix: opts.dir - }); - } else { - const appendedArgs = []; - if (opts.cliOptions["access"]) { - appendedArgs.push(`--access=${opts.cliOptions["access"]}`); - } - if (opts.dryRun) { - appendedArgs.push("--dry-run"); - } - const chunks = sort_packages_1.default(opts.selectedProjectsGraph); - const tag = (_a = opts.tag) !== null && _a !== void 0 ? _a : "latest"; - for (const chunk of chunks) { - for (const pkgDir of chunk) { - if (!publishedPkgDirs.has(pkgDir)) - continue; - const pkg = opts.selectedProjectsGraph[pkgDir].package; - const publishResult = await publish_1.handler({ - ...opts, - dir: pkg.dir, - argv: { - original: [ - "publish", - "--tag", - tag, - "--registry", - pick_registry_for_package_1.default(opts.registries, pkg.manifest.name), - ...appendedArgs - ] - }, - gitChecks: false, - recursive: false - }, [pkg.dir]); - if ((publishResult === null || publishResult === void 0 ? void 0 : publishResult.manifest) != null) { - publishedPackages.push(pick_1.default(["name", "version"], publishResult.manifest)); - } - } - } + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CodePointAt.js +var require_CodePointAt = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CodePointAt.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var callBound = require_callBound(); + var isLeadingSurrogate = require_isLeadingSurrogate(); + var isTrailingSurrogate = require_isTrailingSurrogate(); + var Type = require_Type3(); + var UTF16SurrogatePairToCodePoint = require_UTF16SurrogatePairToCodePoint(); + var $charAt = callBound("String.prototype.charAt"); + var $charCodeAt = callBound("String.prototype.charCodeAt"); + module2.exports = function CodePointAt(string, position) { + if (Type(string) !== "String") { + throw new $TypeError("Assertion failed: `string` must be a String"); + } + var size = string.length; + if (position < 0 || position >= size) { + throw new $TypeError("Assertion failed: `position` must be >= 0, and < the length of `string`"); + } + var first = $charCodeAt(string, position); + var cp = $charAt(string, position); + var firstIsLeading = isLeadingSurrogate(first); + var firstIsTrailing = isTrailingSurrogate(first); + if (!firstIsLeading && !firstIsTrailing) { + return { + "[[CodePoint]]": cp, + "[[CodeUnitCount]]": 1, + "[[IsUnpairedSurrogate]]": false + }; } - if (opts.reportSummary) { - await write_json_file_1.default(path_1.default.join((_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : opts.dir, "pnpm-publish-summary.json"), { publishedPackages }); + if (firstIsTrailing || position + 1 === size) { + return { + "[[CodePoint]]": cp, + "[[CodeUnitCount]]": 1, + "[[IsUnpairedSurrogate]]": true + }; } - } - exports2.default = default_1; - async function isAlreadyPublished(opts, pkgName, pkgVersion) { - try { - await opts.resolve({ alias: pkgName, pref: pkgVersion }, { - lockfileDir: opts.lockfileDir, - preferredVersions: {}, - projectDir: opts.dir, - registry: pick_registry_for_package_1.default(opts.registries, pkgName, pkgVersion) - }); - return true; - } catch (err) { - return false; + var second = $charCodeAt(string, position + 1); + if (!isTrailingSurrogate(second)) { + return { + "[[CodePoint]]": cp, + "[[CodeUnitCount]]": 1, + "[[IsUnpairedSurrogate]]": true + }; } - } + return { + "[[CodePoint]]": UTF16SurrogatePairToCodePoint(first, second), + "[[CodeUnitCount]]": 2, + "[[IsUnpairedSurrogate]]": false + }; + }; } }); -// ../plugin-commands-publishing/lib/gitChecks.js -var require_gitChecks = __commonJS({ - "../plugin-commands-publishing/lib/gitChecks.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/abs.js +var require_abs2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/abs.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var GetIntrinsic = require_get_intrinsic(); + var $abs = GetIntrinsic("%Math.abs%"); + module2.exports = function abs(x) { + return $abs(x); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isRemoteHistoryClean = exports2.isWorkingTreeClean = exports2.getCurrentBranch = exports2.isGitRepo = void 0; - var execa_1 = __importDefault(require_lib26()); - async function isGitRepo() { - try { - await execa_1.default("git", ["rev-parse", "--git-dir"]); - } catch (_) { - return false; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/floor.js +var require_floor2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/floor.js"(exports2, module2) { + "use strict"; + var Type = require_Type3(); + var $floor = Math.floor; + module2.exports = function floor(x) { + if (Type(x) === "BigInt") { + return x; } - return true; - } - exports2.isGitRepo = isGitRepo; - async function getCurrentBranch() { - const { stdout } = await execa_1.default("git", ["symbolic-ref", "--short", "HEAD"]); - return stdout; - } - exports2.getCurrentBranch = getCurrentBranch; - async function isWorkingTreeClean() { - try { - const { stdout: status } = await execa_1.default("git", ["status", "--porcelain"]); - if (status !== "") { - return false; - } - return true; - } catch (_) { + return $floor(x); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsIntegralNumber.js +var require_IsIntegralNumber2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsIntegralNumber.js"(exports2, module2) { + "use strict"; + var abs = require_abs2(); + var floor = require_floor2(); + var Type = require_Type3(); + var $isNaN = require_isNaN(); + var $isFinite = require_isFinite(); + module2.exports = function IsIntegralNumber(argument) { + if (Type(argument) !== "Number" || $isNaN(argument) || !$isFinite(argument)) { return false; } - } - exports2.isWorkingTreeClean = isWorkingTreeClean; - async function isRemoteHistoryClean() { - let history; - try { - const { stdout } = await execa_1.default("git", ["rev-list", "--count", "--left-only", "@{u}...HEAD"]); - history = stdout; - } catch (_) { - history = null; + var absValue = abs(argument); + return floor(absValue) === absValue; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/maxSafeInteger.js +var require_maxSafeInteger = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/maxSafeInteger.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $Math = GetIntrinsic("%Math%"); + var $Number = GetIntrinsic("%Number%"); + module2.exports = $Number.MAX_SAFE_INTEGER || $Math.pow(2, 53) - 1; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/AdvanceStringIndex.js +var require_AdvanceStringIndex = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/AdvanceStringIndex.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var CodePointAt = require_CodePointAt(); + var IsIntegralNumber = require_IsIntegralNumber2(); + var Type = require_Type3(); + var MAX_SAFE_INTEGER = require_maxSafeInteger(); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function AdvanceStringIndex(S, index, unicode) { + if (Type(S) !== "String") { + throw new $TypeError("Assertion failed: `S` must be a String"); } - if (history && history !== "0") { - return false; + if (!IsIntegralNumber(index) || index < 0 || index > MAX_SAFE_INTEGER) { + throw new $TypeError("Assertion failed: `length` must be an integer >= 0 and <= 2**53"); } - return true; - } - exports2.isRemoteHistoryClean = isRemoteHistoryClean; + if (Type(unicode) !== "Boolean") { + throw new $TypeError("Assertion failed: `unicode` must be a Boolean"); + } + if (!unicode) { + return index + 1; + } + var length = S.length; + if (index + 1 >= length) { + return index + 1; + } + var cp = CodePointAt(S, index); + return index + cp["[[CodeUnitCount]]"]; + }; } }); -// ../plugin-commands-publishing/lib/publish.js -var require_publish2 = __commonJS({ - "../plugin-commands-publishing/lib/publish.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateIterResultObject.js +var require_CreateIterResultObject = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateIterResultObject.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var Type = require_Type3(); + module2.exports = function CreateIterResultObject(value, done) { + if (Type(done) !== "Boolean") { + throw new $TypeError("Assertion failed: Type(done) is not Boolean"); } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.runScriptsIfPresent = exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var fs_1 = require("fs"); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var lifecycle_1 = __importDefault(require_lib80()); - var run_npm_1 = __importDefault(require_lib104()); - var enquirer_1 = require_enquirer(); - var rimraf_1 = __importDefault(require_rimraf()); - var pick_1 = __importDefault(require_pick()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var render_help_1 = __importDefault(require_lib30()); - var pack = __importStar2(require_pack2()); - var recursivePublish_1 = __importDefault(require_recursivePublish()); - var gitChecks_1 = require_gitChecks(); - function rcOptionsTypes() { - return pick_1.default([ - "access", - "git-checks", - "ignore-scripts", - "npm-path", - "otp", - "publish-branch", - "registry", - "tag", - "unsafe-perm" - ], config_1.types); - } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { return { - ...rcOptionsTypes(), - "dry-run": Boolean, - force: Boolean, - json: Boolean, - recursive: Boolean, - "report-summary": Boolean + value, + done }; - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["publish"]; - function help() { - return render_help_1.default({ - description: "Publishes a package to the npm registry.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Don't check if current branch is your publish branch, clean, and up-to-date", - name: "--no-git-checks" - }, - { - description: "Sets branch name to publish. Default is master", - name: "--publish-branch" - }, - { - description: "Does everything a publish would do except actually publishing to the registry", - name: "--dry-run" - }, - { - description: 'Registers the published package with the given tag. By default, the "latest" tag is used.', - name: "--tag " - }, - { - description: "Tells the registry whether this package should be published as public or restricted", - name: "--access " - }, - { - description: "Ignores any publish related lifecycle scripts (prepublishOnly, postpublish, and the like)", - name: "--ignore-scripts" - }, - { - description: 'Packages are proceeded to be published even if their current version is already in the registry. This is useful when a "prepublishOnly" script bumps the version of the package before it is published', - name: "--force" - }, - { - description: 'Save the list of the newly published packages to "pnpm-publish-summary.json". Useful when some other tooling is used to report the list of published packages.', - name: "--report-summary" - } - ] - } - ], - url: cli_utils_1.docsUrl("publish"), - usages: ["pnpm publish [|] [--tag ] [--access ] [options]"] - }); - } - exports2.help = help; - var GIT_CHECKS_HINT = 'If you want to disable Git checks on publish, set the "git-checks" setting to "false", or run again with "--no-git-checks".'; - async function handler(opts, params) { - var _a, _b; - if (opts.gitChecks !== false && await gitChecks_1.isGitRepo()) { - if (!await gitChecks_1.isWorkingTreeClean()) { - throw new error_1.default("GIT_NOT_UNCLEAN", "Unclean working tree. Commit or stash changes first.", { - hint: GIT_CHECKS_HINT - }); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/DefineOwnProperty.js +var require_DefineOwnProperty = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/DefineOwnProperty.js"(exports2, module2) { + "use strict"; + var hasPropertyDescriptors = require_has_property_descriptors(); + var GetIntrinsic = require_get_intrinsic(); + var $defineProperty = hasPropertyDescriptors() && GetIntrinsic("%Object.defineProperty%", true); + var hasArrayLengthDefineBug = hasPropertyDescriptors.hasArrayLengthDefineBug(); + var isArray = hasArrayLengthDefineBug && require_IsArray(); + var callBound = require_callBound(); + var $isEnumerable = callBound("Object.prototype.propertyIsEnumerable"); + module2.exports = function DefineOwnProperty(IsDataDescriptor, SameValue, FromPropertyDescriptor, O, P, desc) { + if (!$defineProperty) { + if (!IsDataDescriptor(desc)) { + return false; } - const branches = opts.publishBranch ? [opts.publishBranch] : ["master", "main"]; - const currentBranch = await gitChecks_1.getCurrentBranch(); - if (!branches.includes(currentBranch)) { - const { confirm } = await enquirer_1.prompt({ - message: `You're on branch "${currentBranch}" but your "publish-branch" is set to "${branches.join("|")}". Do you want to continue?`, - name: "confirm", - type: "confirm" - }); - if (!confirm) { - throw new error_1.default("GIT_NOT_CORRECT_BRANCH", `Branch is not on '${branches.join("|")}'.`, { - hint: GIT_CHECKS_HINT - }); + if (!desc["[[Configurable]]"] || !desc["[[Writable]]"]) { + return false; + } + if (P in O && $isEnumerable(O, P) !== !!desc["[[Enumerable]]"]) { + return false; + } + var V = desc["[[Value]]"]; + O[P] = V; + return SameValue(O[P], V); + } + if (hasArrayLengthDefineBug && P === "length" && "[[Value]]" in desc && isArray(O) && O.length !== desc["[[Value]]"]) { + O.length = desc["[[Value]]"]; + return O.length === desc["[[Value]]"]; + } + $defineProperty(O, P, FromPropertyDescriptor(desc)); + return true; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isMatchRecord.js +var require_isMatchRecord = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isMatchRecord.js"(exports2, module2) { + "use strict"; + var has = require_src5(); + module2.exports = function isMatchRecord(record) { + return has(record, "[[StartIndex]]") && has(record, "[[EndIndex]]") && record["[[StartIndex]]"] >= 0 && record["[[EndIndex]]"] >= record["[[StartIndex]]"] && String(parseInt(record["[[StartIndex]]"], 10)) === String(record["[[StartIndex]]"]) && String(parseInt(record["[[EndIndex]]"], 10)) === String(record["[[EndIndex]]"]); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/assertRecord.js +var require_assertRecord = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/assertRecord.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var $SyntaxError = GetIntrinsic("%SyntaxError%"); + var has = require_src5(); + var isMatchRecord = require_isMatchRecord(); + var predicates = { + // https://262.ecma-international.org/6.0/#sec-property-descriptor-specification-type + "Property Descriptor": function isPropertyDescriptor(Desc) { + var allowed = { + "[[Configurable]]": true, + "[[Enumerable]]": true, + "[[Get]]": true, + "[[Set]]": true, + "[[Value]]": true, + "[[Writable]]": true + }; + if (!Desc) { + return false; + } + for (var key in Desc) { + if (has(Desc, key) && !allowed[key]) { + return false; } } - if (!await gitChecks_1.isRemoteHistoryClean()) { - throw new error_1.default("GIT_NOT_LATEST", "Remote history differs. Please pull changes.", { - hint: GIT_CHECKS_HINT - }); + var isData = has(Desc, "[[Value]]"); + var IsAccessor = has(Desc, "[[Get]]") || has(Desc, "[[Set]]"); + if (isData && IsAccessor) { + throw new $TypeError("Property Descriptors may not be both accessor and data descriptors"); } + return true; + }, + // https://262.ecma-international.org/13.0/#sec-match-records + "Match Record": isMatchRecord, + "Iterator Record": function isIteratorRecord(value) { + return has(value, "[[Iterator]]") && has(value, "[[NextMethod]]") && has(value, "[[Done]]"); + }, + "PromiseCapability Record": function isPromiseCapabilityRecord(value) { + return !!value && has(value, "[[Resolve]]") && typeof value["[[Resolve]]"] === "function" && has(value, "[[Reject]]") && typeof value["[[Reject]]"] === "function" && has(value, "[[Promise]]") && value["[[Promise]]"] && typeof value["[[Promise]]"].then === "function"; + }, + "AsyncGeneratorRequest Record": function isAsyncGeneratorRequestRecord(value) { + return !!value && has(value, "[[Completion]]") && has(value, "[[Capability]]") && predicates["PromiseCapability Record"](value["[[Capability]]"]); } - if (opts.recursive && opts.selectedProjectsGraph != null) { - await recursivePublish_1.default({ - ...opts, - selectedProjectsGraph: opts.selectedProjectsGraph, - workspaceDir: (_a = opts.workspaceDir) !== null && _a !== void 0 ? _a : process.cwd() - }); - return; + }; + module2.exports = function assertRecord(Type, recordType, argumentName, value) { + var predicate = predicates[recordType]; + if (typeof predicate !== "function") { + throw new $SyntaxError("unknown record type: " + recordType); } - if (params.length > 0 && params[0].endsWith(".tgz")) { - run_npm_1.default(opts.npmPath, ["publish", ...params]); - return; + if (Type(value) !== "Object" || !predicate(value)) { + throw new $TypeError(argumentName + " must be a " + recordType); } - const dirInParams = params.length > 0 && params[0]; - const dir = dirInParams || opts.dir || process.cwd(); - const _runScriptsIfPresent = runScriptsIfPresent.bind(null, { - depPath: dir, - extraBinPaths: opts.extraBinPaths, - pkgRoot: dir, - rawConfig: opts.rawConfig, - rootModulesDir: await realpath_missing_1.default(path_1.default.join(dir, "node_modules")), - stdio: "inherit", - unsafePerm: true - }); - const { manifest } = await cli_utils_1.readProjectManifest(dir, opts); - let args2 = opts.argv.original.slice(1); - if (dirInParams) { - args2 = args2.filter((arg) => arg !== params[0]); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/fromPropertyDescriptor.js +var require_fromPropertyDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/fromPropertyDescriptor.js"(exports2, module2) { + "use strict"; + module2.exports = function fromPropertyDescriptor(Desc) { + if (typeof Desc === "undefined") { + return Desc; } - const index = args2.indexOf("--publish-branch"); - if (index !== -1) { - if ((_b = args2[index + 1]) === null || _b === void 0 ? void 0 : _b.startsWith("-")) { - args2.splice(index, 1); - } else { - args2.splice(index, 2); - } + var obj = {}; + if ("[[Value]]" in Desc) { + obj.value = Desc["[[Value]]"]; } - const tarballName = await pack.handler({ - ...opts, - dir - }); - const tarballDir = path_1.default.dirname(path_1.default.join(dir, tarballName)); - const localNpmrc = path_1.default.join(tarballDir, ".npmrc"); - const copyNpmrc = !fs_1.existsSync(localNpmrc) && opts.workspaceDir && fs_1.existsSync(path_1.default.join(opts.workspaceDir, ".npmrc")); - if (copyNpmrc && opts.workspaceDir) { - await fs_1.promises.copyFile(path_1.default.join(opts.workspaceDir, ".npmrc"), localNpmrc); + if ("[[Writable]]" in Desc) { + obj.writable = !!Desc["[[Writable]]"]; } - const { status } = run_npm_1.default(opts.npmPath, ["publish", "--ignore-scripts", path_1.default.basename(tarballName), ...args2], { - cwd: tarballDir - }); - await rimraf_1.default(path_1.default.join(dir, tarballName)); - if (copyNpmrc) { - await rimraf_1.default(localNpmrc); + if ("[[Get]]" in Desc) { + obj.get = Desc["[[Get]]"]; } - if (status != null && status !== 0) { - process.exit(status); + if ("[[Set]]" in Desc) { + obj.set = Desc["[[Set]]"]; } - if (!opts.ignoreScripts) { - await _runScriptsIfPresent([ - "publish", - "postpublish" - ], manifest); + if ("[[Enumerable]]" in Desc) { + obj.enumerable = !!Desc["[[Enumerable]]"]; } - return { manifest }; - } - exports2.handler = handler; - async function runScriptsIfPresent(opts, scriptNames, manifest) { - var _a; - for (const scriptName of scriptNames) { - if (!((_a = manifest.scripts) === null || _a === void 0 ? void 0 : _a[scriptName])) - continue; - await lifecycle_1.default(scriptName, manifest, opts); + if ("[[Configurable]]" in Desc) { + obj.configurable = !!Desc["[[Configurable]]"]; } - } - exports2.runScriptsIfPresent = runScriptsIfPresent; + return obj; + }; } }); -// ../plugin-commands-publishing/lib/pack.js -var require_pack2 = __commonJS({ - "../plugin-commands-publishing/lib/pack.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/FromPropertyDescriptor.js +var require_FromPropertyDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/FromPropertyDescriptor.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var assertRecord = require_assertRecord(); + var fromPropertyDescriptor = require_fromPropertyDescriptor(); + var Type = require_Type3(); + module2.exports = function FromPropertyDescriptor(Desc) { + if (typeof Desc !== "undefined") { + assertRecord(Type, "Property Descriptor", "Desc", Desc); + } + return fromPropertyDescriptor(Desc); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var fs_1 = __importDefault(require("fs")); - var path_1 = __importDefault(require("path")); - var zlib_1 = require("zlib"); - var config_1 = require_lib10(); - var cli_utils_1 = require_lib20(); - var exportable_manifest_1 = __importDefault(require_lib103()); - var package_bins_1 = __importDefault(require_lib68()); - var fast_glob_1 = __importDefault(require_out4()); - var pick_1 = __importDefault(require_pick()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var render_help_1 = __importDefault(require_lib30()); - var tar_stream_1 = __importDefault(require_tar_stream()); - var npm_packlist_1 = __importDefault(require_npm_packlist()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var publish_1 = require_publish2(); - var LICENSE_GLOB = "LICEN{S,C}E{,.*}"; - var findLicenses = fast_glob_1.default.bind(fast_glob_1.default, [LICENSE_GLOB]); - function rcOptionsTypes() { - return { - ...cliOptionsTypes(), - ...pick_1.default([ - "npm-path" - ], config_1.types) - }; - } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { - return { - "pack-destination": String + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsDataDescriptor.js +var require_IsDataDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsDataDescriptor.js"(exports2, module2) { + "use strict"; + var has = require_src5(); + var Type = require_Type3(); + var assertRecord = require_assertRecord(); + module2.exports = function IsDataDescriptor(Desc) { + if (typeof Desc === "undefined") { + return false; + } + assertRecord(Type, "Property Descriptor", "Desc", Desc); + if (!has(Desc, "[[Value]]") && !has(Desc, "[[Writable]]")) { + return false; + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/SameValue.js +var require_SameValue = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/SameValue.js"(exports2, module2) { + "use strict"; + var $isNaN = require_isNaN(); + module2.exports = function SameValue(x, y) { + if (x === y) { + if (x === 0) { + return 1 / x === 1 / y; + } + return true; + } + return $isNaN(x) && $isNaN(y); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateMethodProperty.js +var require_CreateMethodProperty = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateMethodProperty.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var DefineOwnProperty = require_DefineOwnProperty(); + var FromPropertyDescriptor = require_FromPropertyDescriptor(); + var IsDataDescriptor = require_IsDataDescriptor(); + var IsPropertyKey = require_IsPropertyKey2(); + var SameValue = require_SameValue(); + var Type = require_Type3(); + module2.exports = function CreateMethodProperty(O, P, V) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: Type(O) is not Object"); + } + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var newDesc = { + "[[Configurable]]": true, + "[[Enumerable]]": false, + "[[Value]]": V, + "[[Writable]]": true }; - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["pack"]; - function help() { - return render_help_1.default({ - description: "Create a tarball from a package", - usages: ["pnpm pack"], - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "Directory in which `pnpm pack` will save tarballs. The default is the current working directory.", - name: "--pack-destination " - } - ] - } - ] - }); - } - exports2.help = help; - async function handler(opts) { - var _a, _b; - const { manifest: entryManifest } = await cli_utils_1.readProjectManifest(opts.dir, opts); - const _runScriptsIfPresent = publish_1.runScriptsIfPresent.bind(null, { - depPath: opts.dir, - extraBinPaths: opts.extraBinPaths, - pkgRoot: opts.dir, - rawConfig: opts.rawConfig, - rootModulesDir: await realpath_missing_1.default(path_1.default.join(opts.dir, "node_modules")), - stdio: "inherit", - unsafePerm: true - }); - if (!opts.ignoreScripts) { - await _runScriptsIfPresent([ - "prepublish", - "prepare", - "prepublishOnly", - "prepack" - ], entryManifest); + return DefineOwnProperty( + IsDataDescriptor, + SameValue, + FromPropertyDescriptor, + O, + P, + newDesc + ); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/forEach.js +var require_forEach2 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/forEach.js"(exports2, module2) { + "use strict"; + module2.exports = function forEach(array, callback) { + for (var i = 0; i < array.length; i += 1) { + callback(array[i], i, array); } - const dir = ((_a = entryManifest.publishConfig) === null || _a === void 0 ? void 0 : _a.directory) ? path_1.default.join(opts.dir, entryManifest.publishConfig.directory) : opts.dir; - const manifest = opts.dir !== dir ? (await cli_utils_1.readProjectManifest(dir, opts)).manifest : entryManifest; - const tarballName = `${manifest.name.replace("@", "").replace("/", "-")}-${manifest.version}.tgz`; - const files = await npm_packlist_1.default({ path: dir }); - const filesMap = fromPairs_1.default(files.map((file) => [`package/${file}`, path_1.default.join(dir, file)])); - if (opts.workspaceDir != null && dir !== opts.workspaceDir && !files.some((file) => /LICEN[CS]E(\..+)?/i.test(file))) { - const licenses = await findLicenses({ cwd: opts.workspaceDir }); - for (const license of licenses) { - filesMap[`package/${license}`] = path_1.default.join(opts.workspaceDir, license); + }; + } +}); + +// ../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js +var require_side_channel = __commonJS({ + "../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var inspect = require_object_inspect(); + var $TypeError = GetIntrinsic("%TypeError%"); + var $WeakMap = GetIntrinsic("%WeakMap%", true); + var $Map = GetIntrinsic("%Map%", true); + var $weakMapGet = callBound("WeakMap.prototype.get", true); + var $weakMapSet = callBound("WeakMap.prototype.set", true); + var $weakMapHas = callBound("WeakMap.prototype.has", true); + var $mapGet = callBound("Map.prototype.get", true); + var $mapSet = callBound("Map.prototype.set", true); + var $mapHas = callBound("Map.prototype.has", true); + var listGetNode = function(list, key) { + for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) { + if (curr.key === key) { + prev.next = curr.next; + curr.next = list.next; + list.next = curr; + return curr; + } + } + }; + var listGet = function(objects, key) { + var node = listGetNode(objects, key); + return node && node.value; + }; + var listSet = function(objects, key, value) { + var node = listGetNode(objects, key); + if (node) { + node.value = value; + } else { + objects.next = { + // eslint-disable-line no-param-reassign + key, + next: objects.next, + value + }; + } + }; + var listHas = function(objects, key) { + return !!listGetNode(objects, key); + }; + module2.exports = function getSideChannel() { + var $wm; + var $m; + var $o; + var channel = { + assert: function(key) { + if (!channel.has(key)) { + throw new $TypeError("Side channel does not contain " + inspect(key)); + } + }, + get: function(key) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if ($wm) { + return $weakMapGet($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapGet($m, key); + } + } else { + if ($o) { + return listGet($o, key); + } + } + }, + has: function(key) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if ($wm) { + return $weakMapHas($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapHas($m, key); + } + } else { + if ($o) { + return listHas($o, key); + } + } + return false; + }, + set: function(key, value) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if (!$wm) { + $wm = new $WeakMap(); + } + $weakMapSet($wm, key, value); + } else if ($Map) { + if (!$m) { + $m = new $Map(); + } + $mapSet($m, key, value); + } else { + if (!$o) { + $o = { key: {}, next: null }; + } + listSet($o, key, value); + } + } + }; + return channel; + }; + } +}); + +// ../node_modules/.pnpm/internal-slot@1.0.5/node_modules/internal-slot/index.js +var require_internal_slot = __commonJS({ + "../node_modules/.pnpm/internal-slot@1.0.5/node_modules/internal-slot/index.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var has = require_src5(); + var channel = require_side_channel()(); + var $TypeError = GetIntrinsic("%TypeError%"); + var SLOT = { + assert: function(O, slot) { + if (!O || typeof O !== "object" && typeof O !== "function") { + throw new $TypeError("`O` is not an object"); + } + if (typeof slot !== "string") { + throw new $TypeError("`slot` must be a string"); + } + channel.assert(O); + if (!SLOT.has(O, slot)) { + throw new $TypeError("`" + slot + "` is not present on `O`"); + } + }, + get: function(O, slot) { + if (!O || typeof O !== "object" && typeof O !== "function") { + throw new $TypeError("`O` is not an object"); + } + if (typeof slot !== "string") { + throw new $TypeError("`slot` must be a string"); + } + var slots = channel.get(O); + return slots && slots["$" + slot]; + }, + has: function(O, slot) { + if (!O || typeof O !== "object" && typeof O !== "function") { + throw new $TypeError("`O` is not an object"); + } + if (typeof slot !== "string") { + throw new $TypeError("`slot` must be a string"); + } + var slots = channel.get(O); + return !!slots && has(slots, "$" + slot); + }, + set: function(O, slot, V) { + if (!O || typeof O !== "object" && typeof O !== "function") { + throw new $TypeError("`O` is not an object"); } - } - const destDir = opts.packDestination ? path_1.default.isAbsolute(opts.packDestination) ? opts.packDestination : path_1.default.join(dir, (_b = opts.packDestination) !== null && _b !== void 0 ? _b : ".") : dir; - await packPkg(path_1.default.join(destDir, tarballName), filesMap, dir); - if (!opts.ignoreScripts) { - await _runScriptsIfPresent(["postpack"], entryManifest); - } - return path_1.default.relative(opts.dir, path_1.default.join(dir, tarballName)); - } - exports2.handler = handler; - var modeIsExecutable = (mode) => (mode & 73) === 73; - async function packPkg(destFile, filesMap, projectDir) { - var _a, _b; - const { manifest } = await cli_utils_1.readProjectManifest(projectDir, {}); - const bins = [ - ...(await package_bins_1.default(manifest, projectDir)).map(({ path }) => path), - ...((_b = (_a = manifest.publishConfig) === null || _a === void 0 ? void 0 : _a.executableFiles) !== null && _b !== void 0 ? _b : []).map((executableFile) => path_1.default.join(projectDir, executableFile)) - ]; - const mtime = new Date("1985-10-26T08:15:00.000Z"); - const pack = tar_stream_1.default.pack(); - for (const [name, source] of Object.entries(filesMap)) { - let isExecutable = bins.some((bin) => path_1.default.relative(bin, source) === ""); - if (!isExecutable) { - const { mode: existingMode } = await fs_1.default.promises.stat(source); - isExecutable = modeIsExecutable(existingMode); + if (typeof slot !== "string") { + throw new $TypeError("`slot` must be a string"); } - const mode = isExecutable ? 493 : 420; - if (/^package\/package\.(json|json5|yaml)/.test(name)) { - const publishManifest = await exportable_manifest_1.default(projectDir, manifest); - pack.entry({ mode, mtime, name: "package/package.json" }, JSON.stringify(publishManifest, null, 2)); - continue; + var slots = channel.get(O); + if (!slots) { + slots = {}; + channel.set(O, slots); } - pack.entry({ mode, mtime, name }, fs_1.default.readFileSync(source)); + slots["$" + slot] = V; } - const tarball = fs_1.default.createWriteStream(destFile); - pack.pipe(zlib_1.createGzip()).pipe(tarball); - pack.finalize(); - return new Promise((resolve, reject) => { - tarball.on("close", () => resolve()).on("error", reject); - }); + }; + if (Object.freeze) { + Object.freeze(SLOT); } + module2.exports = SLOT; } }); -// ../plugin-commands-publishing/lib/index.js -var require_lib105 = __commonJS({ - "../plugin-commands-publishing/lib/index.js"(exports2) { +// ../node_modules/.pnpm/has-proto@1.0.1/node_modules/has-proto/index.js +var require_has_proto = __commonJS({ + "../node_modules/.pnpm/has-proto@1.0.1/node_modules/has-proto/index.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + var test = { + foo: {} + }; + var $Object = Object; + module2.exports = function hasProto() { + return { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.publish = exports2.pack = void 0; - var pack = __importStar2(require_pack2()); - exports2.pack = pack; - var publish = __importStar2(require_publish2()); - exports2.publish = publish; } }); -// ../plugin-commands-script-runners/lib/dlx.js -var require_dlx = __commonJS({ - "../plugin-commands-script-runners/lib/dlx.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/OrdinaryObjectCreate.js +var require_OrdinaryObjectCreate = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/OrdinaryObjectCreate.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.commandNames = void 0; - var fs_1 = __importDefault(require("fs")); - var os_1 = __importDefault(require("os")); - var path_1 = __importDefault(require("path")); - var rimraf_1 = __importDefault(require_rimraf()); - var execa_1 = __importDefault(require_lib26()); - var path_name_1 = __importDefault(require_path_name()); - var render_help_1 = __importDefault(require_lib30()); - exports2.commandNames = ["dlx"]; - function rcOptionsTypes() { - return {}; - } - exports2.rcOptionsTypes = rcOptionsTypes; - var cliOptionsTypes = () => ({ - package: [String, Array] - }); - exports2.cliOptionsTypes = cliOptionsTypes; - function help() { - return render_help_1.default({ - description: "Run a package in a temporary environment.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: "The package to install before running the command", - name: "--package" - } - ] - } - ], - usages: ["pnpm dlx [args...]"] - }); - } - exports2.help = help; - async function handler(opts, params) { - var _a; - const prefix = path_1.default.join(fs_1.default.realpathSync(os_1.default.tmpdir()), `dlx-${process.pid.toString()}`); - const bins = process.platform === "win32" ? prefix : path_1.default.join(prefix, "bin"); - fs_1.default.mkdirSync(prefix, { recursive: true }); - process.on("exit", () => { - try { - fs_1.default.rmdirSync(prefix, { - recursive: true, - maxRetries: 3 - }); - } catch (err) { + var GetIntrinsic = require_get_intrinsic(); + var $ObjectCreate = GetIntrinsic("%Object.create%", true); + var $TypeError = GetIntrinsic("%TypeError%"); + var $SyntaxError = GetIntrinsic("%SyntaxError%"); + var IsArray = require_IsArray3(); + var Type = require_Type3(); + var forEach = require_forEach2(); + var SLOT = require_internal_slot(); + var hasProto = require_has_proto()(); + module2.exports = function OrdinaryObjectCreate(proto) { + if (proto !== null && Type(proto) !== "Object") { + throw new $TypeError("Assertion failed: `proto` must be null or an object"); + } + var additionalInternalSlotsList = arguments.length < 2 ? [] : arguments[1]; + if (!IsArray(additionalInternalSlotsList)) { + throw new $TypeError("Assertion failed: `additionalInternalSlotsList` must be an Array"); + } + var O; + if ($ObjectCreate) { + O = $ObjectCreate(proto); + } else if (hasProto) { + O = { __proto__: proto }; + } else { + if (proto === null) { + throw new $SyntaxError("native Object.create support is required to create null objects"); } - }); - await rimraf_1.default(bins); - const pkgs = (_a = opts.package) !== null && _a !== void 0 ? _a : params.slice(0, 1); - await execa_1.default("pnpm", ["add", ...pkgs, "--global", "--global-dir", prefix, "--dir", prefix], { - stdio: "inherit" - }); - await execa_1.default(params[0], params.slice(1), { - env: { - ...process.env, - [path_name_1.default]: [ - bins, - process.env[path_name_1.default] - ].join(path_1.default.delimiter) - }, - stdio: "inherit" - }); - } - exports2.handler = handler; + var T = function T2() { + }; + T.prototype = proto; + O = new T(); + } + if (additionalInternalSlotsList.length > 0) { + forEach(additionalInternalSlotsList, function(slot) { + SLOT.set(O, slot, void 0); + }); + } + return O; + }; } }); -// ../plugin-commands-script-runners/lib/existsInDir.js -var require_existsInDir = __commonJS({ - "../plugin-commands-script-runners/lib/existsInDir.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/RegExpExec.js +var require_RegExpExec = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/RegExpExec.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var path_exists_1 = __importDefault(require_path_exists()); - exports2.default = async (entityName, dir) => { - const entityPath = path_1.default.join(dir, entityName); - if (await path_exists_1.default(entityPath)) - return entityPath; - return void 0; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var regexExec = require_callBound()("RegExp.prototype.exec"); + var Call = require_Call2(); + var Get = require_Get2(); + var IsCallable = require_IsCallable2(); + var Type = require_Type3(); + module2.exports = function RegExpExec(R, S) { + if (Type(R) !== "Object") { + throw new $TypeError("Assertion failed: `R` must be an Object"); + } + if (Type(S) !== "String") { + throw new $TypeError("Assertion failed: `S` must be a String"); + } + var exec = Get(R, "exec"); + if (IsCallable(exec)) { + var result2 = Call(exec, R, [S]); + if (result2 === null || Type(result2) === "Object") { + return result2; + } + throw new $TypeError('"exec" method must return `null` or an Object'); + } + return regexExec(R, S); }; } }); -// ../plugin-commands-script-runners/lib/runRecursive.js -var require_runRecursive = __commonJS({ - "../plugin-commands-script-runners/lib/runRecursive.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Set.js +var require_Set3 = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/Set.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsPropertyKey = require_IsPropertyKey2(); + var SameValue = require_SameValue(); + var Type = require_Type3(); + var noThrowOnStrictViolation = function() { + try { + delete [].length; + return true; + } catch (e) { + return false; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var error_1 = __importDefault(require_lib8()); - var lifecycle_1 = __importStar2(require_lib80()); - var logger_1 = __importDefault(require_lib6()); - var sort_packages_1 = __importDefault(require_lib92()); - var p_limit_1 = __importDefault(require_p_limit()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var existsInDir_1 = __importDefault(require_existsInDir()); - exports2.default = async (params, opts) => { - var _a; - const [scriptName, ...passedThruArgs] = params; - if (!scriptName) { - throw new error_1.default("SCRIPT_NAME_IS_REQUIRED", "You must specify the script you want to run"); + }(); + module2.exports = function Set2(O, P, V, Throw) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: `O` must be an Object"); } - let hasCommand = 0; - const sortedPackageChunks = opts.sort ? sort_packages_1.default(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; - const packageChunks = opts.reverse ? sortedPackageChunks.reverse() : sortedPackageChunks; - const result = { - fails: [], - passes: 0 - }; - const limitRun = p_limit_1.default((_a = opts.workspaceConcurrency) !== null && _a !== void 0 ? _a : 4); - const stdio = opts.workspaceConcurrency === 1 || packageChunks.length === 1 && packageChunks[0].length === 1 ? "inherit" : "pipe"; - const existsPnp = existsInDir_1.default.bind(null, ".pnp.cjs"); - const workspacePnpPath = opts.workspaceDir && await existsPnp(opts.workspaceDir); - for (const chunk of packageChunks) { - await Promise.all(chunk.map(async (prefix) => limitRun(async () => { - var _a2; - const pkg = opts.selectedProjectsGraph[prefix]; - if (!((_a2 = pkg.package.manifest.scripts) === null || _a2 === void 0 ? void 0 : _a2[scriptName]) || process.env.npm_lifecycle_event === scriptName && process.env.PNPM_SCRIPT_SRC_DIR === prefix) { - return; - } - hasCommand++; - try { - const lifecycleOpts = { - depPath: prefix, - extraBinPaths: opts.extraBinPaths, - pkgRoot: prefix, - rawConfig: opts.rawConfig, - rootModulesDir: await realpath_missing_1.default(path_1.default.join(prefix, "node_modules")), - scriptShell: opts.scriptShell, - shellEmulator: opts.shellEmulator, - stdio, - unsafePerm: true - }; - const pnpPath = workspacePnpPath !== null && workspacePnpPath !== void 0 ? workspacePnpPath : await existsPnp(prefix); - if (pnpPath) { - lifecycleOpts.extraEnv = lifecycle_1.makeNodeRequireOption(pnpPath); - } - if (pkg.package.manifest.scripts[`pre${scriptName}`]) { - await lifecycle_1.default(`pre${scriptName}`, pkg.package.manifest, lifecycleOpts); - } - await lifecycle_1.default(scriptName, pkg.package.manifest, { ...lifecycleOpts, args: passedThruArgs }); - if (pkg.package.manifest.scripts[`post${scriptName}`]) { - await lifecycle_1.default(`post${scriptName}`, pkg.package.manifest, lifecycleOpts); - } - result.passes++; - } catch (err) { - logger_1.default.info(err); - if (!opts.bail) { - result.fails.push({ - error: err, - message: err.message, - prefix - }); - return; - } - err["code"] = "ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL"; - err["prefix"] = prefix; - throw err; - } - }))); + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: `P` must be a Property Key"); } - if (scriptName !== "test" && !hasCommand && !opts.ifPresent) { - const allPackagesAreSelected = Object.keys(opts.selectedProjectsGraph).length === opts.allProjects.length; - if (allPackagesAreSelected) { - throw new error_1.default("RECURSIVE_RUN_NO_SCRIPT", `None of the packages has a "${scriptName}" script`); - } else { - logger_1.default.info({ - message: `None of the selected packages has a "${scriptName}" script`, - prefix: opts.workspaceDir - }); + if (Type(Throw) !== "Boolean") { + throw new $TypeError("Assertion failed: `Throw` must be a Boolean"); + } + if (Throw) { + O[P] = V; + if (noThrowOnStrictViolation && !SameValue(O[P], V)) { + throw new $TypeError("Attempted to assign to readonly property."); } + return true; + } + try { + O[P] = V; + return noThrowOnStrictViolation ? SameValue(O[P], V) : true; + } catch (e) { + return false; } - cli_utils_1.throwOnCommandFail("pnpm recursive run", result); }; } }); -// ../plugin-commands-script-runners/lib/run.js -var require_run = __commonJS({ - "../plugin-commands-script-runners/lib/run.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isPrimitive.js +var require_isPrimitive = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isPrimitive.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; + module2.exports = function isPrimitive(value) { + return value === null || typeof value !== "function" && typeof value !== "object"; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + } +}); + +// ../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/implementation.js +var require_implementation6 = __commonJS({ + "../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/implementation.js"(exports2, module2) { + "use strict"; + var RequireObjectCoercible = require_RequireObjectCoercible(); + var ToString = require_ToString(); + var callBound = require_callBound(); + var $replace = callBound("String.prototype.replace"); + var mvsIsWS = /^\s$/.test("\u180E"); + var leftWhitespace = mvsIsWS ? /^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+/ : /^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+/; + var rightWhitespace = mvsIsWS ? /[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+$/ : /[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+$/; + module2.exports = function trim() { + var S = ToString(RequireObjectCoercible(this)); + return $replace($replace(S, leftWhitespace, ""), rightWhitespace, ""); }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.completion = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.shorthands = exports2.PARALLEL_OPTION_HELP = exports2.IF_PRESENT_OPTION_HELP = exports2.IF_PRESENT_OPTION = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var lifecycle_1 = __importStar2(require_lib80()); - var pick_1 = __importDefault(require_pick()); - var realpath_missing_1 = __importDefault(require_realpath_missing()); - var render_help_1 = __importDefault(require_lib30()); - var runRecursive_1 = __importDefault(require_runRecursive()); - var existsInDir_1 = __importDefault(require_existsInDir()); - var exec_1 = require_exec(); - exports2.IF_PRESENT_OPTION = { - "if-present": Boolean + } +}); + +// ../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/polyfill.js +var require_polyfill3 = __commonJS({ + "../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/polyfill.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation6(); + var zeroWidthSpace = "\u200B"; + var mongolianVowelSeparator = "\u180E"; + module2.exports = function getPolyfill() { + if (String.prototype.trim && zeroWidthSpace.trim() === zeroWidthSpace && mongolianVowelSeparator.trim() === mongolianVowelSeparator && ("_" + mongolianVowelSeparator).trim() === "_" + mongolianVowelSeparator && (mongolianVowelSeparator + "_").trim() === mongolianVowelSeparator + "_") { + return String.prototype.trim; + } + return implementation; }; - exports2.IF_PRESENT_OPTION_HELP = { - description: "Avoid exiting with a non-zero exit code when the script is undefined", - name: "--if-present" + } +}); + +// ../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/shim.js +var require_shim3 = __commonJS({ + "../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/shim.js"(exports2, module2) { + "use strict"; + var define2 = require_define_properties(); + var getPolyfill = require_polyfill3(); + module2.exports = function shimStringTrim() { + var polyfill = getPolyfill(); + define2(String.prototype, { trim: polyfill }, { + trim: function testTrim() { + return String.prototype.trim !== polyfill; + } + }); + return polyfill; }; - exports2.PARALLEL_OPTION_HELP = { - description: "Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages with prefixed streaming output. This is the preferred flag for long-running processes such as watch run over many packages.", - name: "--parallel" + } +}); + +// ../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/index.js +var require_string_prototype2 = __commonJS({ + "../node_modules/.pnpm/string.prototype.trim@1.2.7/node_modules/string.prototype.trim/index.js"(exports2, module2) { + "use strict"; + var callBind = require_call_bind(); + var define2 = require_define_properties(); + var RequireObjectCoercible = require_RequireObjectCoercible(); + var implementation = require_implementation6(); + var getPolyfill = require_polyfill3(); + var shim = require_shim3(); + var bound = callBind(getPolyfill()); + var boundMethod = function trim(receiver) { + RequireObjectCoercible(receiver); + return bound(receiver); + }; + define2(boundMethod, { + getPolyfill, + implementation, + shim + }); + module2.exports = boundMethod; + } +}); + +// ../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/helpers/isPrimitive.js +var require_isPrimitive2 = __commonJS({ + "../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/helpers/isPrimitive.js"(exports2, module2) { + "use strict"; + module2.exports = function isPrimitive(value) { + return value === null || typeof value !== "function" && typeof value !== "object"; }; - exports2.shorthands = { - parallel: [ - "--workspace-concurrency=Infinity", - "--no-sort", - "--stream", - "--recursive" - ] + } +}); + +// ../node_modules/.pnpm/is-date-object@1.0.5/node_modules/is-date-object/index.js +var require_is_date_object = __commonJS({ + "../node_modules/.pnpm/is-date-object@1.0.5/node_modules/is-date-object/index.js"(exports2, module2) { + "use strict"; + var getDay = Date.prototype.getDay; + var tryDateObject = function tryDateGetDayCall(value) { + try { + getDay.call(value); + return true; + } catch (e) { + return false; + } }; - function rcOptionsTypes() { - return { - ...pick_1.default([ - "npm-path" - ], config_1.types) - }; - } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { - return { - ...pick_1.default([ - "bail", - "sort", - "unsafe-perm", - "workspace-concurrency" - ], config_1.types), - ...exports2.IF_PRESENT_OPTION, - recursive: Boolean - }; - } - exports2.cliOptionsTypes = cliOptionsTypes; - var completion = async (cliOpts, params) => { - var _a, _b; - if (params.length > 0) { - return []; + var toStr = Object.prototype.toString; + var dateClass = "[object Date]"; + var hasToStringTag = require_shams2()(); + module2.exports = function isDateObject(value) { + if (typeof value !== "object" || value === null) { + return false; } - const manifest = await cli_utils_1.readProjectManifestOnly((_a = cliOpts.dir) !== null && _a !== void 0 ? _a : process.cwd(), cliOpts); - return Object.keys((_b = manifest.scripts) !== null && _b !== void 0 ? _b : {}).map((name) => ({ name })); + return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; }; - exports2.completion = completion; - exports2.commandNames = ["run", "run-script"]; - function help() { - return render_help_1.default({ - aliases: ["run-script"], - description: "Runs a defined package script.", - descriptionLists: [ - { - title: "Options", - list: [ - { - description: 'Run the defined package script in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - }, - { - description: "The command will exit with a 0 exit code even if the script fails", - name: "--no-bail" - }, - exports2.IF_PRESENT_OPTION_HELP, - exports2.PARALLEL_OPTION_HELP, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - }, - common_cli_options_help_1.FILTERING - ], - url: cli_utils_1.docsUrl("run"), - usages: ["pnpm run [-- ...]"] - }); - } - exports2.help = help; - async function handler(opts, params) { - var _a, _b, _c, _d, _e; - let dir; - const [scriptName, ...passedThruArgs] = params; - if (opts.recursive) { - if (scriptName || Object.keys(opts.selectedProjectsGraph).length > 1) { - await runRecursive_1.default(params, opts); - return; + } +}); + +// ../node_modules/.pnpm/is-symbol@1.0.4/node_modules/is-symbol/index.js +var require_is_symbol = __commonJS({ + "../node_modules/.pnpm/is-symbol@1.0.4/node_modules/is-symbol/index.js"(exports2, module2) { + "use strict"; + var toStr = Object.prototype.toString; + var hasSymbols = require_has_symbols()(); + if (hasSymbols) { + symToStr = Symbol.prototype.toString; + symStringRegex = /^Symbol\(.*\)$/; + isSymbolObject = function isRealSymbolObject(value) { + if (typeof value.valueOf() !== "symbol") { + return false; } - dir = Object.keys(opts.selectedProjectsGraph)[0]; - } else { - dir = opts.dir; - } - const manifest = await cli_utils_1.readProjectManifestOnly(dir, opts); - if (!scriptName) { - const rootManifest = opts.workspaceDir && opts.workspaceDir !== dir ? (await cli_utils_1.tryReadProjectManifest(opts.workspaceDir, opts)).manifest : void 0; - return printProjectCommands(manifest, rootManifest !== null && rootManifest !== void 0 ? rootManifest : void 0); - } - if (scriptName !== "start" && !((_a = manifest.scripts) === null || _a === void 0 ? void 0 : _a[scriptName])) { - if (opts.ifPresent) - return; - if (opts.fallbackCommandUsed) { - if (opts.argv == null) - throw new Error("Could not fallback because opts.argv.original was not passed to the script runner"); - await exec_1.handler({ - selectedProjectsGraph: {}, - ...opts - }, opts.argv.original.slice(1)); - return; + return symStringRegex.test(symToStr.call(value)); + }; + module2.exports = function isSymbol(value) { + if (typeof value === "symbol") { + return true; } - if (opts.workspaceDir) { - const { manifest: rootManifest } = await cli_utils_1.tryReadProjectManifest(opts.workspaceDir, opts); - if ((_b = rootManifest === null || rootManifest === void 0 ? void 0 : rootManifest.scripts) === null || _b === void 0 ? void 0 : _b[scriptName]) { - throw new error_1.default("NO_SCRIPT", `Missing script: ${scriptName}`, { - hint: `But ${scriptName} is present in the root of the workspace, -so you may run "pnpm -w run ${scriptName}"` - }); - } + if (toStr.call(value) !== "[object Symbol]") { + return false; + } + try { + return isSymbolObject(value); + } catch (e) { + return false; } - throw new error_1.default("NO_SCRIPT", `Missing script: ${scriptName}`); - } - const lifecycleOpts = { - depPath: dir, - extraBinPaths: opts.extraBinPaths, - pkgRoot: dir, - rawConfig: opts.rawConfig, - rootModulesDir: await realpath_missing_1.default(path_1.default.join(dir, "node_modules")), - scriptShell: opts.scriptShell, - silent: opts.reporter === "silent", - shellEmulator: opts.shellEmulator, - stdio: "inherit", - unsafePerm: true }; - const existsPnp = existsInDir_1.default.bind(null, ".pnp.cjs"); - const pnpPath = (_c = opts.workspaceDir && await existsPnp(opts.workspaceDir)) !== null && _c !== void 0 ? _c : await existsPnp(dir); - if (pnpPath) { - lifecycleOpts.extraEnv = lifecycle_1.makeNodeRequireOption(pnpPath); + } else { + module2.exports = function isSymbol(value) { + return false; + }; + } + var symToStr; + var symStringRegex; + var isSymbolObject; + } +}); + +// ../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es2015.js +var require_es2015 = __commonJS({ + "../node_modules/.pnpm/es-to-primitive@1.2.1/node_modules/es-to-primitive/es2015.js"(exports2, module2) { + "use strict"; + var hasSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "symbol"; + var isPrimitive = require_isPrimitive2(); + var isCallable = require_is_callable(); + var isDate = require_is_date_object(); + var isSymbol = require_is_symbol(); + var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) { + if (typeof O === "undefined" || O === null) { + throw new TypeError("Cannot call method on " + O); } - try { - if (opts.enablePrePostScripts && ((_d = manifest.scripts) === null || _d === void 0 ? void 0 : _d[`pre${scriptName}`]) && !manifest.scripts[scriptName].includes(`pre${scriptName}`)) { - await lifecycle_1.default(`pre${scriptName}`, manifest, lifecycleOpts); - } - await lifecycle_1.default(scriptName, manifest, { ...lifecycleOpts, args: passedThruArgs }); - if (opts.enablePrePostScripts && ((_e = manifest.scripts) === null || _e === void 0 ? void 0 : _e[`post${scriptName}`]) && !manifest.scripts[scriptName].includes(`post${scriptName}`)) { - await lifecycle_1.default(`post${scriptName}`, manifest, lifecycleOpts); - } - } catch (err) { - if (opts.bail !== false) { - throw err; + if (typeof hint !== "string" || hint !== "number" && hint !== "string") { + throw new TypeError('hint must be "string" or "number"'); + } + var methodNames = hint === "string" ? ["toString", "valueOf"] : ["valueOf", "toString"]; + var method, result2, i; + for (i = 0; i < methodNames.length; ++i) { + method = O[methodNames[i]]; + if (isCallable(method)) { + result2 = method.call(O); + if (isPrimitive(result2)) { + return result2; + } } } - return void 0; - } - exports2.handler = handler; - var ALL_LIFECYCLE_SCRIPTS = new Set([ - "prepublish", - "prepare", - "prepublishOnly", - "prepack", - "postpack", - "publish", - "postpublish", - "preinstall", - "install", - "postinstall", - "preuninstall", - "uninstall", - "postuninstall", - "preversion", - "version", - "postversion", - "pretest", - "test", - "posttest", - "prestop", - "stop", - "poststop", - "prestart", - "start", - "poststart", - "prerestart", - "restart", - "postrestart", - "preshrinkwrap", - "shrinkwrap", - "postshrinkwrap" - ]); - function printProjectCommands(manifest, rootManifest) { - var _a; - const lifecycleScripts = []; - const otherScripts = []; - for (const [scriptName, script] of Object.entries((_a = manifest.scripts) !== null && _a !== void 0 ? _a : {})) { - if (ALL_LIFECYCLE_SCRIPTS.has(scriptName)) { - lifecycleScripts.push([scriptName, script]); - } else { - otherScripts.push([scriptName, script]); + throw new TypeError("No default value"); + }; + var GetMethod = function GetMethod2(O, P) { + var func = O[P]; + if (func !== null && typeof func !== "undefined") { + if (!isCallable(func)) { + throw new TypeError(func + " returned for property " + P + " of object " + O + " is not a function"); } + return func; } - if (lifecycleScripts.length === 0 && otherScripts.length === 0) { - return "There are no scripts specified."; + return void 0; + }; + module2.exports = function ToPrimitive(input) { + if (isPrimitive(input)) { + return input; } - let output = ""; - if (lifecycleScripts.length > 0) { - output += `Lifecycle scripts: -${renderCommands(lifecycleScripts)}`; + var hint = "default"; + if (arguments.length > 1) { + if (arguments[1] === String) { + hint = "string"; + } else if (arguments[1] === Number) { + hint = "number"; + } } - if (otherScripts.length > 0) { - if (output !== "") - output += "\n\n"; - output += `Commands available via "pnpm run": -${renderCommands(otherScripts)}`; + var exoticToPrim; + if (hasSymbols) { + if (Symbol.toPrimitive) { + exoticToPrim = GetMethod(input, Symbol.toPrimitive); + } else if (isSymbol(input)) { + exoticToPrim = Symbol.prototype.valueOf; + } } - if ((rootManifest === null || rootManifest === void 0 ? void 0 : rootManifest.scripts) == null) { - return output; + if (typeof exoticToPrim !== "undefined") { + var result2 = exoticToPrim.call(input, hint); + if (isPrimitive(result2)) { + return result2; + } + throw new TypeError("unable to convert exotic object to primitive"); } - const rootScripts = Object.entries(rootManifest.scripts); - if (rootScripts.length === 0) { - return output; + if (hint === "default" && (isDate(input) || isSymbol(input))) { + hint = "string"; } - if (output !== "") - output += "\n\n"; - output += `Commands of the root workspace project (to run them, use "pnpm -w run"): -${renderCommands(rootScripts)}`; - return output; - } - function renderCommands(commands) { - return commands.map(([scriptName, script]) => ` ${scriptName} - ${script}`).join("\n"); - } + return ordinaryToPrimitive(input, hint === "default" ? "number" : hint); + }; } }); -// ../plugin-commands-script-runners/lib/exec.js -var require_exec = __commonJS({ - "../plugin-commands-script-runners/lib/exec.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToPrimitive.js +var require_ToPrimitive = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToPrimitive.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.cliOptionsTypes = exports2.rcOptionsTypes = exports2.commandNames = exports2.shorthands = void 0; - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var config_1 = require_lib10(); - var lifecycle_1 = require_lib80(); - var logger_1 = __importDefault(require_lib6()); - var read_project_manifest_1 = require_lib19(); - var sort_packages_1 = __importDefault(require_lib92()); - var execa_1 = __importDefault(require_lib26()); - var p_limit_1 = __importDefault(require_p_limit()); - var path_name_1 = __importDefault(require_path_name()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var existsInDir_1 = __importDefault(require_existsInDir()); - var run_1 = require_run(); - exports2.shorthands = { - parallel: run_1.shorthands.parallel + var toPrimitive = require_es2015(); + module2.exports = function ToPrimitive(input) { + if (arguments.length > 1) { + return toPrimitive(input, arguments[1]); + } + return toPrimitive(input); }; - exports2.commandNames = ["exec"]; - function rcOptionsTypes() { - return pick_1.default([ - "bail", - "sort", - "unsafe-perm", - "workspace-concurrency" - ], config_1.types); - } - exports2.rcOptionsTypes = rcOptionsTypes; - var cliOptionsTypes = () => ({ - ...rcOptionsTypes(), - recursive: Boolean - }); - exports2.cliOptionsTypes = cliOptionsTypes; - function help() { - return render_help_1.default({ - description: "Run a shell command in the context of a project.", - descriptionLists: [ - { - title: "Options", - list: [ - run_1.PARALLEL_OPTION_HELP, - { - description: 'Run the shell command in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - } - ] - } - ], - usages: ["pnpm [-r] exec [args...]"] - }); - } - exports2.help = help; - async function handler(opts, params) { - var _a; - if (params[0] === "--") { - params.shift(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToNumber.js +var require_ToNumber = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToNumber.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var $Number = GetIntrinsic("%Number%"); + var $RegExp = GetIntrinsic("%RegExp%"); + var $parseInteger = GetIntrinsic("%parseInt%"); + var callBound = require_callBound(); + var regexTester = require_safe_regex_test(); + var isPrimitive = require_isPrimitive(); + var $strSlice = callBound("String.prototype.slice"); + var isBinary = regexTester(/^0b[01]+$/i); + var isOctal = regexTester(/^0o[0-7]+$/i); + var isInvalidHexLiteral = regexTester(/^[-+]0x[0-9a-f]+$/i); + var nonWS = ["\x85", "\u200B", "\uFFFE"].join(""); + var nonWSregex = new $RegExp("[" + nonWS + "]", "g"); + var hasNonWS = regexTester(nonWSregex); + var $trim = require_string_prototype2(); + var ToPrimitive = require_ToPrimitive(); + module2.exports = function ToNumber(argument) { + var value = isPrimitive(argument) ? argument : ToPrimitive(argument, $Number); + if (typeof value === "symbol") { + throw new $TypeError("Cannot convert a Symbol value to a number"); } - const limitRun = p_limit_1.default((_a = opts.workspaceConcurrency) !== null && _a !== void 0 ? _a : 4); - const result = { - fails: [], - passes: 0 - }; - let chunks; - if (opts.recursive) { - chunks = opts.sort ? sort_packages_1.default(opts.selectedProjectsGraph) : [Object.keys(opts.selectedProjectsGraph).sort()]; - } else { - chunks = [[opts.dir]]; - const project = await read_project_manifest_1.tryReadProjectManifest(opts.dir); - if (project.manifest != null) { - opts.selectedProjectsGraph = { - [opts.dir]: { - dependencies: [], - package: { - ...project, - dir: opts.dir - } - } - }; - } + if (typeof value === "bigint") { + throw new $TypeError("Conversion from 'BigInt' to 'number' is not allowed."); } - const existsPnp = existsInDir_1.default.bind(null, ".pnp.cjs"); - const workspacePnpPath = opts.workspaceDir && await existsPnp(opts.workspaceDir); - for (const chunk of chunks) { - await Promise.all(chunk.map(async (prefix) => limitRun(async () => { - var _a2, _b; - try { - const pnpPath = workspacePnpPath !== null && workspacePnpPath !== void 0 ? workspacePnpPath : await existsPnp(prefix); - const extraEnv = pnpPath ? lifecycle_1.makeNodeRequireOption(pnpPath) : {}; - await execa_1.default(params[0], params.slice(1), { - cwd: prefix, - env: { - ...process.env, - ...extraEnv, - [path_name_1.default]: [ - ...opts.extraBinPaths, - path_1.default.join(opts.dir, "node_modules/.bin"), - process.env[path_name_1.default] - ].join(path_1.default.delimiter), - PNPM_PACKAGE_NAME: (_b = (_a2 = opts.selectedProjectsGraph) === null || _a2 === void 0 ? void 0 : _a2[prefix]) === null || _b === void 0 ? void 0 : _b.package.manifest.name - }, - stdio: "inherit" - }); - result.passes++; - } catch (err) { - if (!opts.recursive && typeof err.exitCode === "number") { - process.exit(err.exitCode); - } - logger_1.default.info(err); - if (!opts.bail) { - result.fails.push({ - error: err, - message: err.message, - prefix - }); - return; - } - err["code"] = "ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL"; - err["prefix"] = prefix; - throw err; - } - }))); + if (typeof value === "string") { + if (isBinary(value)) { + return ToNumber($parseInteger($strSlice(value, 2), 2)); + } else if (isOctal(value)) { + return ToNumber($parseInteger($strSlice(value, 2), 8)); + } else if (hasNonWS(value) || isInvalidHexLiteral(value)) { + return NaN; + } + var trimmed = $trim(value); + if (trimmed !== value) { + return ToNumber(trimmed); + } } - cli_utils_1.throwOnCommandFail("pnpm recursive exec", result); - } - exports2.handler = handler; + return $Number(value); + }; } }); -// ../plugin-commands-script-runners/lib/restart.js -var require_restart = __commonJS({ - "../plugin-commands-script-runners/lib/restart.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/sign.js +var require_sign = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/sign.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + module2.exports = function sign(number) { + return number >= 0 ? 1 : -1; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var config_1 = require_lib10(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var run_1 = require_run(); - function rcOptionsTypes() { - return { - ...pick_1.default([ - "npm-path" - ], config_1.types) - }; - } - exports2.rcOptionsTypes = rcOptionsTypes; - function cliOptionsTypes() { - return run_1.IF_PRESENT_OPTION; - } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["restart"]; - function help() { - return render_help_1.default({ - description: `Restarts a package. Runs a package's "stop", "restart", and "start" scripts, and associated pre- and post- scripts.`, - descriptionLists: [ - { - title: "Options", - list: [ - run_1.IF_PRESENT_OPTION_HELP - ] - } - ], - usages: ["pnpm restart [-- ...]"] - }); - } - exports2.help = help; - async function handler(opts, params) { - await run_1.handler(opts, ["stop", ...params]); - await run_1.handler(opts, ["restart", ...params]); - await run_1.handler(opts, ["start", ...params]); - } - exports2.handler = handler; } }); -// ../plugin-commands-script-runners/lib/test.js -var require_test = __commonJS({ - "../plugin-commands-script-runners/lib/test.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToIntegerOrInfinity.js +var require_ToIntegerOrInfinity = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToIntegerOrInfinity.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var abs = require_abs2(); + var floor = require_floor2(); + var ToNumber = require_ToNumber(); + var $isNaN = require_isNaN(); + var $isFinite = require_isFinite(); + var $sign = require_sign(); + module2.exports = function ToIntegerOrInfinity(value) { + var number = ToNumber(value); + if ($isNaN(number) || number === 0) { + return 0; } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + if (!$isFinite(number)) { + return number; + } + var integer = floor(abs(number)); + if (integer === 0) { + return 0; + } + return $sign(number) * integer; }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var render_help_1 = __importDefault(require_lib30()); - var run = __importStar2(require_run()); - exports2.commandNames = ["test", "t", "tst"]; - function help() { - return render_help_1.default({ - aliases: ["t", "tst"], - description: `Runs a package's "test" script, if one was provided.`, - descriptionLists: [ - { - title: "Options", - list: [ - { - description: 'Run the tests in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"', - name: "--recursive", - shortAlias: "-r" - } - ] - }, - common_cli_options_help_1.FILTERING - ], - url: cli_utils_1.docsUrl("test"), - usages: ["pnpm test [-- ...]"] - }); - } - exports2.help = help; - async function handler(opts, params = []) { - return run.handler(opts, ["test", ...params]); - } - exports2.handler = handler; } }); -// ../plugin-commands-script-runners/lib/index.js -var require_lib106 = __commonJS({ - "../plugin-commands-script-runners/lib/index.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToLength.js +var require_ToLength = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToLength.js"(exports2, module2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + var MAX_SAFE_INTEGER = require_maxSafeInteger(); + var ToIntegerOrInfinity = require_ToIntegerOrInfinity(); + module2.exports = function ToLength(argument) { + var len = ToIntegerOrInfinity(argument); + if (len <= 0) { + return 0; } - __setModuleDefault2(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.test = exports2.run = exports2.restart = exports2.exec = exports2.dlx = void 0; - var dlx = __importStar2(require_dlx()); - exports2.dlx = dlx; - var exec = __importStar2(require_exec()); - exports2.exec = exec; - var restart = __importStar2(require_restart()); - exports2.restart = restart; - var run = __importStar2(require_run()); - exports2.run = run; - var _test = __importStar2(require_test()); - var test = { - ...run, - ..._test + if (len > MAX_SAFE_INTEGER) { + return MAX_SAFE_INTEGER; + } + return len; }; - exports2.test = test; } }); -// ../../node_modules/.pnpm/get-port@5.1.1/node_modules/get-port/index.js -var require_get_port = __commonJS({ - "../../node_modules/.pnpm/get-port@5.1.1/node_modules/get-port/index.js"(exports2, module2) { +// ../node_modules/.pnpm/es-set-tostringtag@2.0.1/node_modules/es-set-tostringtag/index.js +var require_es_set_tostringtag = __commonJS({ + "../node_modules/.pnpm/es-set-tostringtag@2.0.1/node_modules/es-set-tostringtag/index.js"(exports2, module2) { "use strict"; - var net = require("net"); - var Locked = class extends Error { - constructor(port) { - super(`${port} is locked`); + var GetIntrinsic = require_get_intrinsic(); + var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); + var hasToStringTag = require_shams2()(); + var has = require_src5(); + var toStringTag = hasToStringTag ? Symbol.toStringTag : null; + module2.exports = function setToStringTag(object, value) { + var overrideIfSet = arguments.length > 2 && arguments[2] && arguments[2].force; + if (toStringTag && (overrideIfSet || !has(object, toStringTag))) { + if ($defineProperty) { + $defineProperty(object, toStringTag, { + configurable: true, + enumerable: false, + value, + writable: false + }); + } else { + object[toStringTag] = value; + } } }; - var lockedPorts = { - old: new Set(), - young: new Set() + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateRegExpStringIterator.js +var require_CreateRegExpStringIterator = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/CreateRegExpStringIterator.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var hasSymbols = require_has_symbols()(); + var $TypeError = GetIntrinsic("%TypeError%"); + var IteratorPrototype = GetIntrinsic("%IteratorPrototype%", true); + var AdvanceStringIndex = require_AdvanceStringIndex(); + var CreateIterResultObject = require_CreateIterResultObject(); + var CreateMethodProperty = require_CreateMethodProperty(); + var Get = require_Get2(); + var OrdinaryObjectCreate = require_OrdinaryObjectCreate(); + var RegExpExec = require_RegExpExec(); + var Set2 = require_Set3(); + var ToLength = require_ToLength(); + var ToString = require_ToString2(); + var Type = require_Type3(); + var SLOT = require_internal_slot(); + var setToStringTag = require_es_set_tostringtag(); + var RegExpStringIterator = function RegExpStringIterator2(R, S, global2, fullUnicode) { + if (Type(S) !== "String") { + throw new $TypeError("`S` must be a string"); + } + if (Type(global2) !== "Boolean") { + throw new $TypeError("`global` must be a boolean"); + } + if (Type(fullUnicode) !== "Boolean") { + throw new $TypeError("`fullUnicode` must be a boolean"); + } + SLOT.set(this, "[[IteratingRegExp]]", R); + SLOT.set(this, "[[IteratedString]]", S); + SLOT.set(this, "[[Global]]", global2); + SLOT.set(this, "[[Unicode]]", fullUnicode); + SLOT.set(this, "[[Done]]", false); + }; + if (IteratorPrototype) { + RegExpStringIterator.prototype = OrdinaryObjectCreate(IteratorPrototype); + } + var RegExpStringIteratorNext = function next() { + var O = this; + if (Type(O) !== "Object") { + throw new $TypeError("receiver must be an object"); + } + if (!(O instanceof RegExpStringIterator) || !SLOT.has(O, "[[IteratingRegExp]]") || !SLOT.has(O, "[[IteratedString]]") || !SLOT.has(O, "[[Global]]") || !SLOT.has(O, "[[Unicode]]") || !SLOT.has(O, "[[Done]]")) { + throw new $TypeError('"this" value must be a RegExpStringIterator instance'); + } + if (SLOT.get(O, "[[Done]]")) { + return CreateIterResultObject(void 0, true); + } + var R = SLOT.get(O, "[[IteratingRegExp]]"); + var S = SLOT.get(O, "[[IteratedString]]"); + var global2 = SLOT.get(O, "[[Global]]"); + var fullUnicode = SLOT.get(O, "[[Unicode]]"); + var match = RegExpExec(R, S); + if (match === null) { + SLOT.set(O, "[[Done]]", true); + return CreateIterResultObject(void 0, true); + } + if (global2) { + var matchStr = ToString(Get(match, "0")); + if (matchStr === "") { + var thisIndex = ToLength(Get(R, "lastIndex")); + var nextIndex = AdvanceStringIndex(S, thisIndex, fullUnicode); + Set2(R, "lastIndex", nextIndex, true); + } + return CreateIterResultObject(match, false); + } + SLOT.set(O, "[[Done]]", true); + return CreateIterResultObject(match, false); }; - var releaseOldLockedPortsIntervalMs = 1e3 * 15; - var interval; - var getAvailablePort = (options) => new Promise((resolve, reject) => { - const server = net.createServer(); - server.unref(); - server.on("error", reject); - server.listen(options, () => { - const { port } = server.address(); - server.close(() => { - resolve(port); - }); - }); - }); - var portCheckSequence = function* (ports) { - if (ports) { - yield* ports; + CreateMethodProperty(RegExpStringIterator.prototype, "next", RegExpStringIteratorNext); + if (hasSymbols) { + setToStringTag(RegExpStringIterator.prototype, "RegExp String Iterator"); + if (Symbol.iterator && typeof RegExpStringIterator.prototype[Symbol.iterator] !== "function") { + iteratorFn = function SymbolIterator() { + return this; + }; + CreateMethodProperty(RegExpStringIterator.prototype, Symbol.iterator, iteratorFn); } - yield 0; + } + var iteratorFn; + module2.exports = function CreateRegExpStringIterator(R, S, global2, fullUnicode) { + return new RegExpStringIterator(R, S, global2, fullUnicode); }; - module2.exports = async (options) => { - let ports; - if (options) { - ports = typeof options.port === "number" ? [options.port] : options.port; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/GetIntrinsic.js +var require_GetIntrinsic = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/GetIntrinsic.js"(exports2, module2) { + "use strict"; + module2.exports = require_get_intrinsic(); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isPropertyDescriptor.js +var require_isPropertyDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/helpers/isPropertyDescriptor.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var has = require_src5(); + var $TypeError = GetIntrinsic("%TypeError%"); + module2.exports = function IsPropertyDescriptor(ES, Desc) { + if (ES.Type(Desc) !== "Object") { + return false; } - if (interval === void 0) { - interval = setInterval(() => { - lockedPorts.old = lockedPorts.young; - lockedPorts.young = new Set(); - }, releaseOldLockedPortsIntervalMs); - if (interval.unref) { - interval.unref(); + var allowed = { + "[[Configurable]]": true, + "[[Enumerable]]": true, + "[[Get]]": true, + "[[Set]]": true, + "[[Value]]": true, + "[[Writable]]": true + }; + for (var key in Desc) { + if (has(Desc, key) && !allowed[key]) { + return false; } } - for (const port of portCheckSequence(ports)) { - try { - let availablePort = await getAvailablePort({ ...options, port }); - while (lockedPorts.old.has(availablePort) || lockedPorts.young.has(availablePort)) { - if (port !== 0) { - throw new Locked(port); - } - availablePort = await getAvailablePort({ ...options, port }); - } - lockedPorts.young.add(availablePort); - return availablePort; - } catch (error) { - if (!["EADDRINUSE", "EACCES"].includes(error.code) && !(error instanceof Locked)) { - throw error; - } - } + if (ES.IsDataDescriptor(Desc) && ES.IsAccessorDescriptor(Desc)) { + throw new $TypeError("Property Descriptors may not be both accessor and data descriptors"); } - throw new Error("No available ports found"); + return true; }; - module2.exports.makeRange = (from, to) => { - if (!Number.isInteger(from) || !Number.isInteger(to)) { - throw new TypeError("`from` and `to` must be integer numbers"); - } - if (from < 1024 || from > 65535) { - throw new RangeError("`from` must be between 1024 and 65535"); - } - if (to < 1024 || to > 65536) { - throw new RangeError("`to` must be between 1024 and 65536"); + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsAccessorDescriptor.js +var require_IsAccessorDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsAccessorDescriptor.js"(exports2, module2) { + "use strict"; + var has = require_src5(); + var Type = require_Type3(); + var assertRecord = require_assertRecord(); + module2.exports = function IsAccessorDescriptor(Desc) { + if (typeof Desc === "undefined") { + return false; } - if (to < from) { - throw new RangeError("`to` must be greater than or equal to `from`"); + assertRecord(Type, "Property Descriptor", "Desc", Desc); + if (!has(Desc, "[[Get]]") && !has(Desc, "[[Set]]")) { + return false; } - const generator = function* (from2, to2) { - for (let port = from2; port <= to2; port++) { - yield port; - } - }; - return generator(from, to); + return true; }; } }); -// ../plugin-commands-server/lib/start.js -var require_start = __commonJS({ - "../plugin-commands-server/lib/start.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToPropertyDescriptor.js +var require_ToPropertyDescriptor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/ToPropertyDescriptor.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs_1 = require("fs"); - var util_1 = require("util"); - var path_1 = __importDefault(require("path")); - var cli_meta_1 = __importDefault(require_lib4()); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var server_1 = require_lib59(); - var store_connection_manager_1 = require_lib63(); - var store_path_1 = __importDefault(require_lib38()); - var diable_1 = __importDefault(require_lib62()); - var get_port_1 = __importDefault(require_get_port()); - var is_windows_1 = __importDefault(require_is_windows()); - var signal_exit_1 = __importDefault(require_signal_exit()); - var storeServerLogger = logger_1.default("store-server"); - var write = util_1.promisify(fs_1.write); - var close = util_1.promisify(fs_1.close); - var open = util_1.promisify(fs_1.open); - exports2.default = async (opts) => { - var _a; - if (opts.protocol === "ipc" && opts.port) { - throw new Error("Port cannot be selected when server communicates via IPC"); + var has = require_src5(); + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var Type = require_Type3(); + var ToBoolean = require_ToBoolean(); + var IsCallable = require_IsCallable2(); + module2.exports = function ToPropertyDescriptor(Obj) { + if (Type(Obj) !== "Object") { + throw new $TypeError("ToPropertyDescriptor requires an object"); } - if (opts.background && !diable_1.default.isDaemon()) { - diable_1.default(); + var desc = {}; + if (has(Obj, "enumerable")) { + desc["[[Enumerable]]"] = ToBoolean(Obj.enumerable); } - const storeDir = await store_path_1.default(opts.dir, opts.storeDir); - const connectionInfoDir = store_connection_manager_1.serverConnectionInfoDir(storeDir); - const serverJsonPath = path_1.default.join(connectionInfoDir, "server.json"); - await fs_1.promises.mkdir(connectionInfoDir, { recursive: true }); - let fd; - try { - fd = await open(serverJsonPath, "wx"); - } catch (error) { - if (error.code !== "EEXIST") { - throw error; - } - throw new error_1.default("SERVER_MANIFEST_LOCKED", `Canceling startup of server (pid ${process.pid}) because another process got exclusive access to server.json`); + if (has(Obj, "configurable")) { + desc["[[Configurable]]"] = ToBoolean(Obj.configurable); } - let server = null; - signal_exit_1.default(() => { - if (server !== null) { - server.close(); - } - if (fd !== null) { - try { - fs_1.closeSync(fd); - } catch (error) { - storeServerLogger.error(error, "Got error while closing file descriptor of server.json, but the process is already exiting"); - } - } - try { - fs_1.unlinkSync(serverJsonPath); - } catch (error) { - if (error.code !== "ENOENT") { - storeServerLogger.error(error, "Got error unlinking server.json, but the process is already exiting"); - } + if (has(Obj, "value")) { + desc["[[Value]]"] = Obj.value; + } + if (has(Obj, "writable")) { + desc["[[Writable]]"] = ToBoolean(Obj.writable); + } + if (has(Obj, "get")) { + var getter = Obj.get; + if (typeof getter !== "undefined" && !IsCallable(getter)) { + throw new $TypeError("getter must be a function"); } - }); - const store = await store_connection_manager_1.createNewStoreController(Object.assign(opts, { - storeDir - })); - const protocol = (_a = opts.protocol) !== null && _a !== void 0 ? _a : opts.port ? "tcp" : "auto"; - const serverOptions = await getServerOptions(connectionInfoDir, { protocol, port: opts.port }); - const connectionOptions = { - remotePrefix: serverOptions.path != null ? `http://unix:${serverOptions.path}:` : `http://${serverOptions.hostname}:${serverOptions.port}` - }; - server = server_1.createServer(store.ctrl, { - ...serverOptions, - ignoreStopRequests: opts.ignoreStopRequests, - ignoreUploadRequests: opts.ignoreUploadRequests - }); - const serverJson = { - connectionOptions, - pid: process.pid, - pnpmVersion: cli_meta_1.default.version - }; - const serverJsonStr = JSON.stringify(serverJson, void 0, 2); - const serverJsonBuffer = Buffer.from(serverJsonStr, "utf8"); - await write(fd, serverJsonBuffer, 0, serverJsonBuffer.byteLength); - const fdForClose = fd; - fd = null; - await close(fdForClose); - }; - async function getServerOptions(connectionInfoDir, opts) { - switch (opts.protocol) { - case "tcp": - return getTcpOptions(); - case "ipc": - if (is_windows_1.default()) { - throw new Error("IPC protocol is not supported on Windows currently"); - } - return getIpcOptions(); - case "auto": - if (is_windows_1.default()) { - return getTcpOptions(); - } - return getIpcOptions(); - default: - throw new Error(`Protocol ${opts.protocol} is not supported`); + desc["[[Get]]"] = getter; } - async function getTcpOptions() { - return { - hostname: "localhost", - port: opts.port || await get_port_1.default({ port: 5813 }) - }; + if (has(Obj, "set")) { + var setter = Obj.set; + if (typeof setter !== "undefined" && !IsCallable(setter)) { + throw new $TypeError("setter must be a function"); + } + desc["[[Set]]"] = setter; } - function getIpcOptions() { - return { - path: path_1.default.join(connectionInfoDir, "socket") - }; + if ((has(desc, "[[Get]]") || has(desc, "[[Set]]")) && (has(desc, "[[Value]]") || has(desc, "[[Writable]]"))) { + throw new $TypeError("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute"); } + return desc; + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/DefinePropertyOrThrow.js +var require_DefinePropertyOrThrow = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/DefinePropertyOrThrow.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var $TypeError = GetIntrinsic("%TypeError%"); + var isPropertyDescriptor = require_isPropertyDescriptor(); + var DefineOwnProperty = require_DefineOwnProperty(); + var FromPropertyDescriptor = require_FromPropertyDescriptor(); + var IsAccessorDescriptor = require_IsAccessorDescriptor(); + var IsDataDescriptor = require_IsDataDescriptor(); + var IsPropertyKey = require_IsPropertyKey2(); + var SameValue = require_SameValue(); + var ToPropertyDescriptor = require_ToPropertyDescriptor(); + var Type = require_Type3(); + module2.exports = function DefinePropertyOrThrow(O, P, desc) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: Type(O) is not Object"); + } + if (!IsPropertyKey(P)) { + throw new $TypeError("Assertion failed: IsPropertyKey(P) is not true"); + } + var Desc = isPropertyDescriptor({ + Type, + IsDataDescriptor, + IsAccessorDescriptor + }, desc) ? desc : ToPropertyDescriptor(desc); + if (!isPropertyDescriptor({ + Type, + IsDataDescriptor, + IsAccessorDescriptor + }, Desc)) { + throw new $TypeError("Assertion failed: Desc is not a valid Property Descriptor"); + } + return DefineOwnProperty( + IsDataDescriptor, + SameValue, + FromPropertyDescriptor, + O, + P, + Desc + ); + }; + } +}); + +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsConstructor.js +var require_IsConstructor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/IsConstructor.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_GetIntrinsic(); + var $construct = GetIntrinsic("%Reflect.construct%", true); + var DefinePropertyOrThrow = require_DefinePropertyOrThrow(); + try { + DefinePropertyOrThrow({}, "", { "[[Get]]": function() { + } }); + } catch (e) { + DefinePropertyOrThrow = null; + } + if (DefinePropertyOrThrow && $construct) { + isConstructorMarker = {}; + badArrayLike = {}; + DefinePropertyOrThrow(badArrayLike, "length", { + "[[Get]]": function() { + throw isConstructorMarker; + }, + "[[Enumerable]]": true + }); + module2.exports = function IsConstructor(argument) { + try { + $construct(argument, badArrayLike); + } catch (err) { + return err === isConstructorMarker; + } + }; + } else { + module2.exports = function IsConstructor(argument) { + return typeof argument === "function" && !!argument.prototype; + }; } + var isConstructorMarker; + var badArrayLike; } }); -// ../plugin-commands-server/lib/status.js -var require_status = __commonJS({ - "../plugin-commands-server/lib/status.js"(exports2) { +// ../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/SpeciesConstructor.js +var require_SpeciesConstructor = __commonJS({ + "../node_modules/.pnpm/es-abstract@1.21.2/node_modules/es-abstract/2021/SpeciesConstructor.js"(exports2, module2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var logger_1 = require_lib6(); - var store_connection_manager_1 = require_lib63(); - var store_path_1 = __importDefault(require_lib38()); - exports2.default = async (opts) => { - const storeDir = await store_path_1.default(opts.dir, opts.storeDir); - const connectionInfoDir = store_connection_manager_1.serverConnectionInfoDir(storeDir); - const serverJson = await store_connection_manager_1.tryLoadServerJson({ - serverJsonPath: path_1.default.join(connectionInfoDir, "server.json"), - shouldRetryOnNoent: false - }); - if (serverJson === null) { - logger_1.globalInfo(`No server is running for the store at ${storeDir}`); - return; + var GetIntrinsic = require_get_intrinsic(); + var $species = GetIntrinsic("%Symbol.species%", true); + var $TypeError = GetIntrinsic("%TypeError%"); + var IsConstructor = require_IsConstructor(); + var Type = require_Type3(); + module2.exports = function SpeciesConstructor(O, defaultConstructor) { + if (Type(O) !== "Object") { + throw new $TypeError("Assertion failed: Type(O) is not Object"); } - console.log(`store: ${storeDir} -process id: ${serverJson.pid} -remote prefix: ${serverJson.connectionOptions.remotePrefix}`); + var C = O.constructor; + if (typeof C === "undefined") { + return defaultConstructor; + } + if (Type(C) !== "Object") { + throw new $TypeError("O.constructor is not an Object"); + } + var S = $species ? C[$species] : void 0; + if (S == null) { + return defaultConstructor; + } + if (IsConstructor(S)) { + return S; + } + throw new $TypeError("no constructor found"); }; } }); -// ../../node_modules/.pnpm/ps-list@6.3.0/node_modules/ps-list/index.js -var require_ps_list = __commonJS({ - "../../node_modules/.pnpm/ps-list@6.3.0/node_modules/ps-list/index.js"(exports2, module2) { +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/regexp-matchall.js +var require_regexp_matchall = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/regexp-matchall.js"(exports2, module2) { "use strict"; - var util = require("util"); - var path = require("path"); - var childProcess = require("child_process"); - var TEN_MEGABYTES = 1e3 * 1e3 * 10; - var execFile = util.promisify(childProcess.execFile); - var windows = async () => { - const bin = path.join(__dirname, "fastlist.exe"); - const { stdout } = await execFile(bin, { maxBuffer: TEN_MEGABYTES }); - return stdout.trim().split("\r\n").map((line) => line.split(" ")).map(([name, pid, ppid]) => ({ - name, - pid: Number.parseInt(pid, 10), - ppid: Number.parseInt(ppid, 10) - })); + var CreateRegExpStringIterator = require_CreateRegExpStringIterator(); + var Get = require_Get2(); + var Set2 = require_Set3(); + var SpeciesConstructor = require_SpeciesConstructor(); + var ToLength = require_ToLength(); + var ToString = require_ToString2(); + var Type = require_Type3(); + var flagsGetter = require_regexp_prototype(); + var callBound = require_callBound(); + var $indexOf = callBound("String.prototype.indexOf"); + var OrigRegExp = RegExp; + var supportsConstructingWithFlags = "flags" in RegExp.prototype; + var constructRegexWithFlags = function constructRegex(C, R) { + var matcher; + var flags = "flags" in R ? Get(R, "flags") : ToString(flagsGetter(R)); + if (supportsConstructingWithFlags && typeof flags === "string") { + matcher = new C(R, flags); + } else if (C === OrigRegExp) { + matcher = new C(R.source, flags); + } else { + matcher = new C(R, flags); + } + return { flags, matcher }; }; - var main = async (options = {}) => { - const flags = (options.all === false ? "" : "a") + "wwxo"; - const ret = {}; - await Promise.all(["comm", "args", "ppid", "uid", "%cpu", "%mem"].map(async (cmd) => { - const { stdout } = await execFile("ps", [flags, `pid,${cmd}`], { maxBuffer: TEN_MEGABYTES }); - for (let line of stdout.trim().split("\n").slice(1)) { - line = line.trim(); - const [pid] = line.split(" ", 1); - const val = line.slice(pid.length + 1).trim(); - if (ret[pid] === void 0) { - ret[pid] = {}; - } - ret[pid][cmd] = val; - } - })); - return Object.entries(ret).filter(([, value]) => value.comm && value.args && value.ppid && value.uid && value["%cpu"] && value["%mem"]).map(([key, value]) => ({ - pid: Number.parseInt(key, 10), - name: path.basename(value.comm), - cmd: value.args, - ppid: Number.parseInt(value.ppid, 10), - uid: Number.parseInt(value.uid, 10), - cpu: Number.parseFloat(value["%cpu"]), - memory: Number.parseFloat(value["%mem"]) - })); + var regexMatchAll = function SymbolMatchAll(string) { + var R = this; + if (Type(R) !== "Object") { + throw new TypeError('"this" value must be an Object'); + } + var S = ToString(string); + var C = SpeciesConstructor(R, OrigRegExp); + var tmp = constructRegexWithFlags(C, R); + var flags = tmp.flags; + var matcher = tmp.matcher; + var lastIndex = ToLength(Get(R, "lastIndex")); + Set2(matcher, "lastIndex", lastIndex, true); + var global2 = $indexOf(flags, "g") > -1; + var fullUnicode = $indexOf(flags, "u") > -1; + return CreateRegExpStringIterator(matcher, S, global2, fullUnicode); }; - module2.exports = process.platform === "win32" ? windows : main; - module2.exports.default = module2.exports; + var defineP = Object.defineProperty; + var gOPD = Object.getOwnPropertyDescriptor; + if (defineP && gOPD) { + desc = gOPD(regexMatchAll, "name"); + if (desc && desc.configurable) { + defineP(regexMatchAll, "name", { value: "[Symbol.matchAll]" }); + } + } + var desc; + module2.exports = regexMatchAll; } }); -// ../../node_modules/.pnpm/process-exists@4.1.0/node_modules/process-exists/index.js -var require_process_exists = __commonJS({ - "../../node_modules/.pnpm/process-exists@4.1.0/node_modules/process-exists/index.js"(exports2, module2) { +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/polyfill-regexp-matchall.js +var require_polyfill_regexp_matchall = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/polyfill-regexp-matchall.js"(exports2, module2) { "use strict"; - var psList = require_ps_list(); - var linuxProcessMatchesName = (wantedProcessName, process2) => { - if (typeof wantedProcessName === "string") { - return process2.name === wantedProcessName || process2.cmd.split(" ")[0] === wantedProcessName; - } - return process2.pid === wantedProcessName; - }; - var nonLinuxProcessMatchesName = (wantedProcessName, process2) => { - if (typeof wantedProcessName === "string") { - return process2.name === wantedProcessName; + var hasSymbols = require_has_symbols()(); + var regexpMatchAll = require_regexp_matchall(); + module2.exports = function getRegExpMatchAllPolyfill() { + if (!hasSymbols || typeof Symbol.matchAll !== "symbol" || typeof RegExp.prototype[Symbol.matchAll] !== "function") { + return regexpMatchAll; } - return process2.pid === wantedProcessName; - }; - var processMatchesName = process.platform === "linux" ? linuxProcessMatchesName : nonLinuxProcessMatchesName; - module2.exports = async (processName) => { - const processes = await psList(); - return processes.some((x) => processMatchesName(processName, x)); - }; - module2.exports.all = async (processName) => { - const processes = await psList(); - return new Map(processName.map((x) => [x, processes.some((y) => processMatchesName(x, y))])); - }; - module2.exports.filterExists = async (processNames) => { - const processes = await psList(); - return processNames.filter((x) => processes.some((y) => processMatchesName(x, y))); + return RegExp.prototype[Symbol.matchAll]; }; } }); -// ../../node_modules/.pnpm/tree-kill@1.2.2/node_modules/tree-kill/index.js -var require_tree_kill = __commonJS({ - "../../node_modules/.pnpm/tree-kill@1.2.2/node_modules/tree-kill/index.js"(exports2, module2) { +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/implementation.js +var require_implementation7 = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/implementation.js"(exports2, module2) { "use strict"; - var childProcess = require("child_process"); - var spawn = childProcess.spawn; - var exec = childProcess.exec; - module2.exports = function(pid, signal, callback) { - if (typeof signal === "function" && callback === void 0) { - callback = signal; - signal = void 0; - } - pid = parseInt(pid); - if (Number.isNaN(pid)) { - if (callback) { - return callback(new Error("pid must be a number")); - } else { - throw new Error("pid must be a number"); + var Call = require_Call2(); + var Get = require_Get2(); + var GetMethod = require_GetMethod2(); + var IsRegExp = require_IsRegExp(); + var ToString = require_ToString2(); + var RequireObjectCoercible = require_RequireObjectCoercible2(); + var callBound = require_callBound(); + var hasSymbols = require_has_symbols()(); + var flagsGetter = require_regexp_prototype(); + var $indexOf = callBound("String.prototype.indexOf"); + var regexpMatchAllPolyfill = require_polyfill_regexp_matchall(); + var getMatcher = function getMatcher2(regexp) { + var matcherPolyfill = regexpMatchAllPolyfill(); + if (hasSymbols && typeof Symbol.matchAll === "symbol") { + var matcher = GetMethod(regexp, Symbol.matchAll); + if (matcher === RegExp.prototype[Symbol.matchAll] && matcher !== matcherPolyfill) { + return matcherPolyfill; } + return matcher; } - var tree = {}; - var pidsToProcess = {}; - tree[pid] = []; - pidsToProcess[pid] = 1; - switch (process.platform) { - case "win32": - exec("taskkill /pid " + pid + " /T /F", callback); - break; - case "darwin": - buildProcessTree(pid, tree, pidsToProcess, function(parentPid) { - return spawn("pgrep", ["-P", parentPid]); - }, function() { - killAll(tree, signal, callback); - }); - break; - default: - buildProcessTree(pid, tree, pidsToProcess, function(parentPid) { - return spawn("ps", ["-o", "pid", "--no-headers", "--ppid", parentPid]); - }, function() { - killAll(tree, signal, callback); - }); - break; + if (IsRegExp(regexp)) { + return matcherPolyfill; } }; - function killAll(tree, signal, callback) { - var killed = {}; - try { - Object.keys(tree).forEach(function(pid) { - tree[pid].forEach(function(pidpid) { - if (!killed[pidpid]) { - killPid(pidpid, signal); - killed[pidpid] = 1; - } - }); - if (!killed[pid]) { - killPid(pid, signal); - killed[pid] = 1; + module2.exports = function matchAll(regexp) { + var O = RequireObjectCoercible(this); + if (typeof regexp !== "undefined" && regexp !== null) { + var isRegExp = IsRegExp(regexp); + if (isRegExp) { + var flags = "flags" in regexp ? Get(regexp, "flags") : flagsGetter(regexp); + RequireObjectCoercible(flags); + if ($indexOf(ToString(flags), "g") < 0) { + throw new TypeError("matchAll requires a global regular expression"); } - }); - } catch (err) { - if (callback) { - return callback(err); - } else { - throw err; + } + var matcher = getMatcher(regexp); + if (typeof matcher !== "undefined") { + return Call(matcher, regexp, [O]); } } - if (callback) { - return callback(); - } - } - function killPid(pid, signal) { - try { - process.kill(parseInt(pid, 10), signal); - } catch (err) { - if (err.code !== "ESRCH") - throw err; + var S = ToString(O); + var rx = new RegExp(regexp, "g"); + return Call(getMatcher(rx), rx, [S]); + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/polyfill.js +var require_polyfill4 = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/polyfill.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation7(); + module2.exports = function getPolyfill() { + if (String.prototype.matchAll) { + try { + "".matchAll(RegExp.prototype); + } catch (e) { + return String.prototype.matchAll; + } } - } - function buildProcessTree(parentPid, tree, pidsToProcess, spawnChildProcessesList, cb) { - var ps = spawnChildProcessesList(parentPid); - var allData = ""; - ps.stdout.on("data", function(data) { - var data = data.toString("ascii"); - allData += data; - }); - var onClose = function(code) { - delete pidsToProcess[parentPid]; - if (code != 0) { - if (Object.keys(pidsToProcess).length == 0) { - cb(); + return implementation; + }; + } +}); + +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/shim.js +var require_shim4 = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/shim.js"(exports2, module2) { + "use strict"; + var define2 = require_define_properties(); + var hasSymbols = require_has_symbols()(); + var getPolyfill = require_polyfill4(); + var regexpMatchAllPolyfill = require_polyfill_regexp_matchall(); + var defineP = Object.defineProperty; + var gOPD = Object.getOwnPropertyDescriptor; + module2.exports = function shimMatchAll() { + var polyfill = getPolyfill(); + define2( + String.prototype, + { matchAll: polyfill }, + { matchAll: function() { + return String.prototype.matchAll !== polyfill; + } } + ); + if (hasSymbols) { + var symbol = Symbol.matchAll || (Symbol["for"] ? Symbol["for"]("Symbol.matchAll") : Symbol("Symbol.matchAll")); + define2( + Symbol, + { matchAll: symbol }, + { matchAll: function() { + return Symbol.matchAll !== symbol; + } } + ); + if (defineP && gOPD) { + var desc = gOPD(Symbol, symbol); + if (!desc || desc.configurable) { + defineP(Symbol, symbol, { + configurable: false, + enumerable: false, + value: symbol, + writable: false + }); } - return; } - allData.match(/\d+/g).forEach(function(pid) { - pid = parseInt(pid, 10); - tree[parentPid].push(pid); - tree[pid] = []; - pidsToProcess[pid] = 1; - buildProcessTree(pid, tree, pidsToProcess, spawnChildProcessesList, cb); - }); - }; - ps.on("close", onClose); - } + var regexpMatchAll = regexpMatchAllPolyfill(); + var func = {}; + func[symbol] = regexpMatchAll; + var predicate = {}; + predicate[symbol] = function() { + return RegExp.prototype[symbol] !== regexpMatchAll; + }; + define2(RegExp.prototype, func, predicate); + } + return polyfill; + }; } }); -// ../plugin-commands-server/lib/stop.js -var require_stop = __commonJS({ - "../plugin-commands-server/lib/stop.js"(exports2) { +// ../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/index.js +var require_string_prototype3 = __commonJS({ + "../node_modules/.pnpm/string.prototype.matchall@4.0.7/node_modules/string.prototype.matchall/index.js"(exports2, module2) { + "use strict"; + var callBind = require_call_bind(); + var define2 = require_define_properties(); + var implementation = require_implementation7(); + var getPolyfill = require_polyfill4(); + var shim = require_shim4(); + var boundMatchAll = callBind(implementation); + define2(boundMatchAll, { + getPolyfill, + implementation, + shim + }); + module2.exports = boundMatchAll; + } +}); + +// ../node_modules/.pnpm/safe-execa@0.1.1/node_modules/safe-execa/lib/index.js +var require_lib158 = __commonJS({ + "../node_modules/.pnpm/safe-execa@0.1.1/node_modules/safe-execa/lib/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var util_1 = require("util"); - var path_1 = __importDefault(require("path")); - var logger_1 = require_lib6(); - var server_1 = require_lib59(); - var store_connection_manager_1 = require_lib63(); - var store_path_1 = __importDefault(require_lib38()); - var delay_1 = __importDefault(require_delay2()); - var process_exists_1 = __importDefault(require_process_exists()); - var tree_kill_1 = __importDefault(require_tree_kill()); - var kill = util_1.promisify(tree_kill_1.default); - exports2.default = async (opts) => { - const storeDir = await store_path_1.default(opts.dir, opts.storeDir); - const connectionInfoDir = store_connection_manager_1.serverConnectionInfoDir(storeDir); - const serverJson = await store_connection_manager_1.tryLoadServerJson({ - serverJsonPath: path_1.default.join(connectionInfoDir, "server.json"), - shouldRetryOnNoent: false - }); - if (serverJson === null) { - logger_1.globalInfo(`Nothing to stop. No server is running for the store at ${storeDir}`); - return; + exports2.sync = void 0; + var which_1 = __importDefault4(require_which()); + var execa_1 = __importDefault4(require_execa()); + var path_name_1 = __importDefault4(require_path_name()); + var pathCache = /* @__PURE__ */ new Map(); + function sync(file, args2, options) { + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return execa_1.default.sync(fileAbsolutePath, args2, options); + } + exports2.sync = sync; + function getCommandAbsolutePathSync(file, options) { + var _a, _b; + if (file.includes("\\") || file.includes("/")) + return file; + const path2 = (_b = (_a = options === null || options === void 0 ? void 0 : options.env) === null || _a === void 0 ? void 0 : _a[path_name_1.default]) !== null && _b !== void 0 ? _b : process.env[path_name_1.default]; + const key = JSON.stringify([path2, file]); + let fileAbsolutePath = pathCache.get(key); + if (fileAbsolutePath == null) { + fileAbsolutePath = which_1.default.sync(file, { path: path2 }); + pathCache.set(key, fileAbsolutePath); } - const storeController = await server_1.connectStoreController(serverJson.connectionOptions); - await storeController.stop(); - if (await serverGracefullyStops(serverJson.pid)) { - logger_1.globalInfo("Server gracefully stopped"); - return; + if (fileAbsolutePath == null) { + throw new Error(`Couldn't find ${file}`); } - logger_1.globalWarn("Graceful shutdown failed"); - await kill(serverJson.pid, "SIGINT"); - logger_1.globalInfo("Server process terminated"); - }; - async function serverGracefullyStops(pid) { - if (!await process_exists_1.default(pid)) - return true; - await delay_1.default(5e3); - return !await process_exists_1.default(pid); + return fileAbsolutePath; + } + function default_1(file, args2, options) { + const fileAbsolutePath = getCommandAbsolutePathSync(file, options); + return execa_1.default(fileAbsolutePath, args2, options); } + exports2.default = default_1; } }); -// ../plugin-commands-server/lib/server.js -var require_server = __commonJS({ - "../plugin-commands-server/lib/server.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+os.env.path-extender-windows@0.2.4/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js +var require_path_extender_windows = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender-windows@0.2.4/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var start_1 = __importDefault(require_start()); - var status_1 = __importDefault(require_status()); - var stop_1 = __importDefault(require_stop()); - exports2.rcOptionsTypes = cliOptionsTypes; - function cliOptionsTypes() { - return { - ...pick_1.default([ - "store", - "store-dir" - ], config_1.types), - background: Boolean, - "ignore-stop-requests": Boolean, - "ignore-upload-requests": Boolean, - port: Number, - protocol: ["auto", "tcp", "ipc"] - }; + exports2.addDirToWindowsEnvPath = void 0; + var error_1 = require_lib36(); + var string_prototype_matchall_1 = __importDefault4(require_string_prototype3()); + var path_1 = require("path"); + var safe_execa_1 = __importDefault4(require_lib158()); + var BadEnvVariableError = class extends error_1.PnpmError { + constructor({ envName, wantedValue, currentValue }) { + super("BAD_ENV_FOUND", `Currently '${envName}' is set to '${wantedValue}'`); + this.envName = envName; + this.wantedValue = wantedValue; + this.currentValue = currentValue; + } + }; + var REG_KEY = "HKEY_CURRENT_USER\\Environment"; + function addDirToWindowsEnvPath(dir, opts) { + var _a; + return __awaiter4(this, void 0, void 0, function* () { + const chcpResult = yield (0, safe_execa_1.default)("chcp"); + const cpMatch = (_a = /\d+/.exec(chcpResult.stdout)) !== null && _a !== void 0 ? _a : []; + const cpBak = parseInt(cpMatch[0]); + if (chcpResult.failed || !(cpBak > 0)) { + throw new error_1.PnpmError("CHCP", `exec chcp failed: ${cpBak}, ${chcpResult.stderr}`); + } + yield (0, safe_execa_1.default)("chcp", ["65001"]); + try { + const report = yield _addDirToWindowsEnvPath(dir, opts); + yield refreshEnvVars(); + return report; + } finally { + yield (0, safe_execa_1.default)("chcp", [cpBak.toString()]); + } + }); } - exports2.cliOptionsTypes = cliOptionsTypes; - exports2.commandNames = ["server"]; - function help() { - return render_help_1.default({ - description: "Manage a store server", - descriptionLists: [ - { - title: "Commands", - list: [ - { - description: "Starts a service that does all interactions with the store. Other commands will delegate any store-related tasks to this service", - name: "start" - }, - { - description: "Stops the store server", - name: "stop" - }, - { - description: "Prints information about the running server", - name: "status" - } - ] - }, - { - title: "Start options", - list: [ - { - description: "Runs the server in the background", - name: "--background" - }, - { - description: "The communication protocol used by the server", - name: "--protocol " - }, - { - description: "The port number to use, when TCP is used for communication", - name: "--port " - }, - common_cli_options_help_1.OPTIONS.storeDir, - { - description: "Maximum number of concurrent network requests", - name: "--network-concurrency " - }, - { - description: "If false, doesn't check whether packages in the store were mutated", - name: "--[no-]verify-store-integrity" - }, - { - name: "--[no-]lock" - }, - { - description: "Disallows stopping the server using `pnpm server stop`", - name: "--ignore-stop-requests" - }, - { - description: "Disallows creating new side effect cache during install", - name: "--ignore-upload-requests" - }, - ...common_cli_options_help_1.UNIVERSAL_OPTIONS - ] - } - ], - url: cli_utils_1.docsUrl("server"), - usages: ["pnpm server "] + exports2.addDirToWindowsEnvPath = addDirToWindowsEnvPath; + function _addDirToWindowsEnvPath(dir, opts = {}) { + return __awaiter4(this, void 0, void 0, function* () { + const addedDir = path_1.win32.normalize(dir); + const registryOutput = yield getRegistryOutput(); + const changes = []; + if (opts.proxyVarName) { + changes.push(yield updateEnvVariable(registryOutput, opts.proxyVarName, addedDir, { + expandableString: false, + overwrite: opts.overwriteProxyVar + })); + changes.push(yield addToPath(registryOutput, `%${opts.proxyVarName}%`, opts.position)); + } else { + changes.push(yield addToPath(registryOutput, addedDir, opts.position)); + } + return changes; }); } - exports2.help = help; - function handler(opts, params) { - opts.protocol = "tcp"; - switch (params[0]) { - case "start": - return start_1.default(opts); - case "status": - return status_1.default(opts); - case "stop": - return stop_1.default(opts); - default: - help(); - if (params[0]) { - throw new error_1.default("INVALID_SERVER_COMMAND", `"server ${params[0]}" is not a pnpm command. See "pnpm help server".`); + function updateEnvVariable(registryOutput, name, value, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const currentValue = yield getEnvValueFromRegistry(registryOutput, name); + if (currentValue && !opts.overwrite) { + if (currentValue !== value) { + throw new BadEnvVariableError({ envName: name, currentValue, wantedValue: value }); } - return void 0; - } + return { variable: name, action: "skipped", oldValue: currentValue, newValue: value }; + } else { + yield setEnvVarInRegistry(name, value, { expandableString: opts.expandableString }); + return { variable: name, action: "updated", oldValue: currentValue, newValue: value }; + } + }); + } + function addToPath(registryOutput, addedDir, position = "start") { + return __awaiter4(this, void 0, void 0, function* () { + const variable = "Path"; + const pathData = yield getEnvValueFromRegistry(registryOutput, variable); + if (pathData === void 0 || pathData == null || pathData.trim() === "") { + throw new error_1.PnpmError("NO_PATH", '"Path" environment variable is not found in the registry'); + } else if (pathData.split(path_1.win32.delimiter).includes(addedDir)) { + return { action: "skipped", variable, oldValue: pathData, newValue: pathData }; + } else { + const newPathValue = position === "start" ? `${addedDir}${path_1.win32.delimiter}${pathData}` : `${pathData}${path_1.win32.delimiter}${addedDir}`; + yield setEnvVarInRegistry("Path", newPathValue, { expandableString: true }); + return { action: "updated", variable, oldValue: pathData, newValue: newPathValue }; + } + }); + } + var EXEC_OPTS = { windowsHide: false }; + function getRegistryOutput() { + return __awaiter4(this, void 0, void 0, function* () { + try { + const queryResult = yield (0, safe_execa_1.default)("reg", ["query", REG_KEY], EXEC_OPTS); + return queryResult.stdout; + } catch (err) { + throw new error_1.PnpmError("REG_READ", "win32 registry environment values could not be retrieved"); + } + }); + } + function getEnvValueFromRegistry(registryOutput, envVarName) { + return __awaiter4(this, void 0, void 0, function* () { + const regexp = new RegExp(`^ {4}(?${envVarName}) {4}(?\\w+) {4}(?.*)$`, "gim"); + const match = Array.from((0, string_prototype_matchall_1.default)(registryOutput, regexp))[0]; + return match === null || match === void 0 ? void 0 : match.groups.data; + }); + } + function setEnvVarInRegistry(envVarName, envVarValue, opts) { + return __awaiter4(this, void 0, void 0, function* () { + const regType = opts.expandableString ? "REG_EXPAND_SZ" : "REG_SZ"; + try { + yield (0, safe_execa_1.default)("reg", ["add", REG_KEY, "/v", envVarName, "/t", regType, "/d", envVarValue, "/f"], EXEC_OPTS); + } catch (err) { + throw new error_1.PnpmError("FAILED_SET_ENV", `Failed to set "${envVarName}" to "${envVarValue}": ${err.stderr}`); + } + }); + } + function refreshEnvVars() { + return __awaiter4(this, void 0, void 0, function* () { + const TEMP_ENV_VAR = "REFRESH_ENV_VARS"; + yield (0, safe_execa_1.default)("setx", [TEMP_ENV_VAR, "1"], EXEC_OPTS); + yield (0, safe_execa_1.default)("reg", ["delete", REG_KEY, "/v", TEMP_ENV_VAR, "/f"], EXEC_OPTS); + }); } - exports2.handler = handler; } }); -// ../plugin-commands-server/lib/index.js -var require_lib107 = __commonJS({ - "../plugin-commands-server/lib/index.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+os.env.path-extender-windows@0.2.4/node_modules/@pnpm/os.env.path-extender-windows/dist/index.js +var require_dist18 = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender-windows@0.2.4/node_modules/@pnpm/os.env.path-extender-windows/dist/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.server = void 0; - var server = __importStar2(require_server()); - exports2.server = server; + exports2.addDirToWindowsEnvPath = void 0; + var path_extender_windows_1 = require_path_extender_windows(); + Object.defineProperty(exports2, "addDirToWindowsEnvPath", { enumerable: true, get: function() { + return path_extender_windows_1.addDirToWindowsEnvPath; + } }); } }); -// ../plugin-commands-setup/lib/setupOnWindows.js -var require_setupOnWindows = __commonJS({ - "../plugin-commands-setup/lib/setupOnWindows.js"(exports2) { +// ../node_modules/.pnpm/@pnpm+os.env.path-extender@0.2.10/node_modules/@pnpm/os.env.path-extender/dist/path-extender.js +var require_path_extender = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender@0.2.10/node_modules/@pnpm/os.env.path-extender/dist/path-extender.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; + var __awaiter4 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result2) { + result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.setupWindowsEnvironmentPath = void 0; - var path_1 = require("path"); - var execa_1 = __importDefault(require_lib26()); - async function setupWindowsEnvironmentPath(pnpmHomeDir) { - const pathRegex = /^ {4}(?PATH) {4}(?\w+) {4}(?.*)$/gim; - const pnpmHomeRegex = /^ {4}(?PNPM_HOME) {4}(?\w+) {4}(?.*)$/gim; - const regKey = "HKEY_CURRENT_USER\\Environment"; - const queryResult = await execa_1.default("reg", ["query", regKey]); - if (queryResult.failed) { - return "Win32 registry environment values could not be retrieved"; - } - const queryOutput = queryResult.stdout; - const pathValueMatch = [...queryOutput.matchAll(pathRegex)]; - const homeValueMatch = [...queryOutput.matchAll(pnpmHomeRegex)]; - let commitNeeded = false; - let homeDir = pnpmHomeDir; - const logger = []; - if (homeValueMatch.length === 1) { - homeDir = homeValueMatch[0].groups.data; - logger.push(`Currently 'PNPM_HOME' is set to '${homeDir}'`); - } else { - logger.push(`Setting 'PNPM_HOME' to value '${homeDir}'`); - const addResult = await execa_1.default("reg", ["add", regKey, "/v", "PNPM_HOME", "/t", "REG_EXPAND_SZ", "/d", homeDir, "/f"]); - if (addResult.failed) { - logger.push(` ${addResult.stderr}`); - } else { - commitNeeded = true; - logger.push(` ${addResult.stdout}`); + exports2.renderWindowsReport = exports2.addDirToEnvPath = void 0; + var os_env_path_extender_posix_1 = require_dist17(); + var os_env_path_extender_windows_1 = require_dist18(); + function addDirToEnvPath(dir, opts) { + return __awaiter4(this, void 0, void 0, function* () { + if (process.platform === "win32") { + return renderWindowsReport(yield (0, os_env_path_extender_windows_1.addDirToWindowsEnvPath)(dir, { + position: opts.position, + proxyVarName: opts.proxyVarName, + overwriteProxyVar: opts.overwrite + })); } - } - if (pathValueMatch.length === 1) { - const pathData = pathValueMatch[0].groups.data; - if (pathData == null || pathData.trim() === "") { - logger.push("Current PATH is empty. No changes to this environment variable are applied"); - } else { - const homeDirPath = path_1.win32.parse(path_1.win32.normalize(homeDir)); - if (pathData.split(path_1.win32.delimiter).map((p) => path_1.win32.normalize(p)).map((p) => path_1.win32.parse(p)).map((p) => `${p.dir}${path_1.win32.sep}${p.base}`.toUpperCase()).filter((p) => p !== "").includes(`${homeDirPath.dir}${path_1.win32.sep}${homeDirPath.base}`.toUpperCase())) { - logger.push("PATH already contains PNPM_HOME"); - } else { - logger.push("Updating PATH"); - const addResult = await execa_1.default("reg", ["add", regKey, "/v", pathValueMatch[0].groups.name, "/t", "REG_EXPAND_SZ", "/d", `${homeDir}${path_1.win32.delimiter}${pathData}`, "/f"]); - if (addResult.failed) { - logger.push(` ${addResult.stderr}`); - } else { - commitNeeded = true; - logger.push(` ${addResult.stdout}`); - } - } + return (0, os_env_path_extender_posix_1.addDirToPosixEnvPath)(dir, opts); + }); + } + exports2.addDirToEnvPath = addDirToEnvPath; + function renderWindowsReport(changedEnvVariables) { + const oldSettings = []; + const newSettings = []; + for (const changedEnvVariable of changedEnvVariables) { + if (changedEnvVariable.oldValue) { + oldSettings.push(`${changedEnvVariable.variable}=${changedEnvVariable.oldValue}`); + } + if (changedEnvVariable.newValue) { + newSettings.push(`${changedEnvVariable.variable}=${changedEnvVariable.newValue}`); } - } else { - logger.push("Current PATH is not set. No changes to this environment variable are applied"); - } - if (commitNeeded) { - await execa_1.default("setx", ["PNPM_HOME", homeDir]); } - return logger.join("\n"); + return { + oldSettings: oldSettings.join("\n"), + newSettings: newSettings.join("\n") + }; } - exports2.setupWindowsEnvironmentPath = setupWindowsEnvironmentPath; + exports2.renderWindowsReport = renderWindowsReport; + } +}); + +// ../node_modules/.pnpm/@pnpm+os.env.path-extender@0.2.10/node_modules/@pnpm/os.env.path-extender/dist/index.js +var require_dist19 = __commonJS({ + "../node_modules/.pnpm/@pnpm+os.env.path-extender@0.2.10/node_modules/@pnpm/os.env.path-extender/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addDirToEnvPath = void 0; + var path_extender_1 = require_path_extender(); + Object.defineProperty(exports2, "addDirToEnvPath", { enumerable: true, get: function() { + return path_extender_1.addDirToEnvPath; + } }); } }); -// ../plugin-commands-setup/lib/setup.js +// ../packages/plugin-commands-setup/lib/setup.js var require_setup = __commonJS({ - "../plugin-commands-setup/lib/setup.js"(exports2) { + "../packages/plugin-commands-setup/lib/setup.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.shorthands = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var fs_1 = __importDefault(require("fs")); - var os_1 = __importDefault(require("os")); - var path_1 = __importDefault(require("path")); - var cli_utils_1 = require_lib20(); - var logger_1 = __importDefault(require_lib6()); - var render_help_1 = __importDefault(require_lib30()); - var setupOnWindows_1 = require_setupOnWindows(); + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var logger_1 = require_lib6(); + var os_env_path_extender_1 = require_dist19(); + var render_help_1 = __importDefault4(require_lib34()); var rcOptionsTypes = () => ({}); exports2.rcOptionsTypes = rcOptionsTypes; - var cliOptionsTypes = () => ({}); + var cliOptionsTypes = () => ({ + force: Boolean + }); exports2.cliOptionsTypes = cliOptionsTypes; exports2.shorthands = {}; exports2.commandNames = ["setup"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: "Sets up pnpm", - descriptionLists: [], - url: cli_utils_1.docsUrl("setup"), + descriptionLists: [ + { + title: "Options", + list: [ + { + description: "Override the PNPM_HOME env variable in case it already exists", + name: "--force", + shortAlias: "-f" + } + ] + } + ], + url: (0, cli_utils_1.docsUrl)("setup"), usages: ["pnpm setup"] }); } @@ -130753,7 +221955,7 @@ var require_setup = __commonJS({ const newExecPath = path_1.default.join(targetDir, path_1.default.basename(currentLocation)); if (path_1.default.relative(newExecPath, currentLocation) === "") return; - logger_1.default.info({ + logger_1.logger.info({ message: `Copying pnpm CLI from ${currentLocation} to ${newExecPath}`, prefix: process.cwd() }); @@ -130761,193 +221963,165 @@ var require_setup = __commonJS({ fs_1.default.copyFileSync(currentLocation, newExecPath); } async function handler(opts) { - const currentShell = typeof process.env.SHELL === "string" ? path_1.default.basename(process.env.SHELL) : null; const execPath = getExecPath(); if (execPath.match(/\.[cm]?js$/) == null) { copyCli(execPath, opts.pnpmHomeDir); } - const updateOutput = await updateShell(currentShell, opts.pnpmHomeDir); - return `${updateOutput} - -Setup complete. Open a new terminal to start using pnpm.`; - } - exports2.handler = handler; - async function updateShell(currentShell, pnpmHomeDir) { - switch (currentShell) { - case "bash": { - const configFile = path_1.default.join(os_1.default.homedir(), ".bashrc"); - return setupShell(configFile, pnpmHomeDir); - } - case "zsh": { - const configFile = path_1.default.join(os_1.default.homedir(), ".zshrc"); - return setupShell(configFile, pnpmHomeDir); - } - case "fish": { - return setupFishShell(pnpmHomeDir); + try { + const report = await (0, os_env_path_extender_1.addDirToEnvPath)(opts.pnpmHomeDir, { + configSectionName: "pnpm", + proxyVarName: "PNPM_HOME", + overwrite: opts.force, + position: "start" + }); + return renderSetupOutput(report); + } catch (err) { + switch (err.code) { + case "ERR_PNPM_BAD_ENV_FOUND": + err.hint = "If you want to override the existing env variable, use the --force option"; + break; + case "ERR_PNPM_BAD_SHELL_SECTION": + err.hint = "If you want to override the existing configuration section, use the --force option"; + break; } + throw err; } - if (process.platform === "win32") { - return setupOnWindows_1.setupWindowsEnvironmentPath(pnpmHomeDir); - } - return "Could not infer shell type."; } - async function setupShell(configFile, pnpmHomeDir) { - if (!fs_1.default.existsSync(configFile)) - return `Could not setup pnpm. No ${configFile} found`; - const configContent = await fs_1.default.promises.readFile(configFile, "utf8"); - if (configContent.includes("PNPM_HOME")) { - return `PNPM_HOME is already in ${configFile}`; + exports2.handler = handler; + function renderSetupOutput(report) { + if (report.oldSettings === report.newSettings) { + return "No changes to the environment were made. Everything is already up to date."; + } + const output = []; + if (report.configFile) { + output.push(reportConfigChange(report.configFile)); + } + output.push(`Next configuration changes were made: +${report.newSettings}`); + if (report.configFile == null) { + output.push("Setup complete. Open a new terminal to start using pnpm."); + } else if (report.configFile.changeType !== "skipped") { + output.push(`To start using pnpm, run: +source ${report.configFile.path} +`); } - await fs_1.default.promises.writeFile(configFile, `${configContent} -export PNPM_HOME="${pnpmHomeDir}" -export PATH="$PNPM_HOME:$PATH" -`, "utf8"); - return `Updated ${configFile}`; + return output.join("\n\n"); } - async function setupFishShell(pnpmHomeDir) { - const configFile = path_1.default.join(os_1.default.homedir(), ".config/fish/config.fish"); - if (!fs_1.default.existsSync(configFile)) - return `Could not setup pnpm. No ${configFile} found`; - const configContent = await fs_1.default.promises.readFile(configFile, "utf8"); - if (configContent.includes("PNPM_HOME")) { - return `PNPM_HOME is already in ${configFile}`; + function reportConfigChange(configReport) { + switch (configReport.changeType) { + case "created": + return `Created ${configReport.path}`; + case "appended": + return `Appended new lines to ${configReport.path}`; + case "modified": + return `Replaced configuration in ${configReport.path}`; + case "skipped": + return `Configuration already up to date in ${configReport.path}`; } - await fs_1.default.promises.writeFile(configFile, `${configContent} -set -gx PNPM_HOME "${pnpmHomeDir}" -set -gx PATH "$PNPM_HOME" $PATH -`, "utf8"); - return `Updated ${configFile}`; } } }); -// ../plugin-commands-setup/lib/index.js -var require_lib108 = __commonJS({ - "../plugin-commands-setup/lib/index.js"(exports2) { +// ../packages/plugin-commands-setup/lib/index.js +var require_lib159 = __commonJS({ + "../packages/plugin-commands-setup/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.setup = void 0; - var setup = __importStar2(require_setup()); + var setup = __importStar5(require_setup()); exports2.setup = setup; } }); -// ../plugin-commands-store/lib/storeAdd.js +// ../store/plugin-commands-store/lib/storeAdd.js var require_storeAdd = __commonJS({ - "../plugin-commands-store/lib/storeAdd.js"(exports2) { + "../store/plugin-commands-store/lib/storeAdd.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importStar2(require_lib6()); - var parse_wanted_dependency_1 = __importDefault(require_lib87()); - var pick_registry_for_package_1 = __importDefault(require_lib50()); - async function default_1(fuzzyDeps, opts) { - var _a, _b; - const reporter = opts === null || opts === void 0 ? void 0 : opts.reporter; + exports2.storeAdd = void 0; + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var parse_wanted_dependency_1 = require_lib136(); + var pick_registry_for_package_1 = require_lib78(); + async function storeAdd(fuzzyDeps, opts) { + const reporter = opts?.reporter; if (reporter != null && typeof reporter === "function") { logger_1.streamParser.on("data", reporter); } - const deps = fuzzyDeps.map((dep) => parse_wanted_dependency_1.default(dep)); + const deps = fuzzyDeps.map((dep) => (0, parse_wanted_dependency_1.parseWantedDependency)(dep)); let hasFailures = false; - const prefix = (_a = opts.prefix) !== null && _a !== void 0 ? _a : process.cwd(); - const registries = (_b = opts.registries) !== null && _b !== void 0 ? _b : { + const prefix = opts.prefix ?? process.cwd(); + const registries = opts.registries ?? { default: "https://registry.npmjs.org/" }; await Promise.all(deps.map(async (dep) => { - var _a2; try { const pkgResponse = await opts.storeController.requestPackage(dep, { downloadPriority: 1, lockfileDir: prefix, preferredVersions: {}, projectDir: prefix, - registry: (_a2 = dep.alias && pick_registry_for_package_1.default(registries, dep.alias)) !== null && _a2 !== void 0 ? _a2 : registries.default + registry: (dep.alias && (0, pick_registry_for_package_1.pickRegistryForPackage)(registries, dep.alias)) ?? registries.default }); await pkgResponse.files(); - logger_1.globalInfo(`+ ${pkgResponse.body.id}`); + (0, logger_1.globalInfo)(`+ ${pkgResponse.body.id}`); } catch (e) { hasFailures = true; - logger_1.default("store").error(e); + (0, logger_1.logger)("store").error(e); } })); if (reporter != null && typeof reporter === "function") { logger_1.streamParser.removeListener("data", reporter); } if (hasFailures) { - throw new error_1.default("STORE_ADD_FAILURE", "Some packages have not been added correctly"); + throw new error_1.PnpmError("STORE_ADD_FAILURE", "Some packages have not been added correctly"); } } - exports2.default = default_1; + exports2.storeAdd = storeAdd; } }); -// ../plugin-commands-store/lib/storePrune.js +// ../store/plugin-commands-store/lib/storePrune.js var require_storePrune = __commonJS({ - "../plugin-commands-store/lib/storePrune.js"(exports2) { + "../store/plugin-commands-store/lib/storePrune.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.storePrune = void 0; var logger_1 = require_lib6(); - async function default_1(opts) { - const reporter = opts === null || opts === void 0 ? void 0 : opts.reporter; + async function storePrune(opts) { + const reporter = opts?.reporter; if (reporter != null && typeof reporter === "function") { logger_1.streamParser.on("data", reporter); } @@ -130957,17 +222131,443 @@ var require_storePrune = __commonJS({ logger_1.streamParser.removeListener("data", reporter); } } - exports2.default = default_1; + exports2.storePrune = storePrune; + } +}); + +// ../node_modules/.pnpm/ssri@8.0.1/node_modules/ssri/index.js +var require_ssri = __commonJS({ + "../node_modules/.pnpm/ssri@8.0.1/node_modules/ssri/index.js"(exports2, module2) { + "use strict"; + var crypto6 = require("crypto"); + var MiniPass = require_minipass3(); + var SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"]; + var BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i; + var SRI_REGEX = /^([a-z0-9]+)-([^?]+)([?\S*]*)$/; + var STRICT_SRI_REGEX = /^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/; + var VCHAR_REGEX = /^[\x21-\x7E]+$/; + var defaultOpts = { + algorithms: ["sha512"], + error: false, + options: [], + pickAlgorithm: getPrioritizedHash, + sep: " ", + single: false, + strict: false + }; + var ssriOpts = (opts = {}) => ({ ...defaultOpts, ...opts }); + var getOptString = (options) => !options || !options.length ? "" : `?${options.join("?")}`; + var _onEnd = Symbol("_onEnd"); + var _getOptions = Symbol("_getOptions"); + var IntegrityStream = class extends MiniPass { + constructor(opts) { + super(); + this.size = 0; + this.opts = opts; + this[_getOptions](); + const { algorithms = defaultOpts.algorithms } = opts; + this.algorithms = Array.from( + new Set(algorithms.concat(this.algorithm ? [this.algorithm] : [])) + ); + this.hashes = this.algorithms.map(crypto6.createHash); + } + [_getOptions]() { + const { + integrity, + size, + options + } = { ...defaultOpts, ...this.opts }; + this.sri = integrity ? parse2(integrity, this.opts) : null; + this.expectedSize = size; + this.goodSri = this.sri ? !!Object.keys(this.sri).length : false; + this.algorithm = this.goodSri ? this.sri.pickAlgorithm(this.opts) : null; + this.digests = this.goodSri ? this.sri[this.algorithm] : null; + this.optString = getOptString(options); + } + emit(ev, data) { + if (ev === "end") + this[_onEnd](); + return super.emit(ev, data); + } + write(data) { + this.size += data.length; + this.hashes.forEach((h) => h.update(data)); + return super.write(data); + } + [_onEnd]() { + if (!this.goodSri) { + this[_getOptions](); + } + const newSri = parse2(this.hashes.map((h, i) => { + return `${this.algorithms[i]}-${h.digest("base64")}${this.optString}`; + }).join(" "), this.opts); + const match = this.goodSri && newSri.match(this.sri, this.opts); + if (typeof this.expectedSize === "number" && this.size !== this.expectedSize) { + const err = new Error(`stream size mismatch when checking ${this.sri}. + Wanted: ${this.expectedSize} + Found: ${this.size}`); + err.code = "EBADSIZE"; + err.found = this.size; + err.expected = this.expectedSize; + err.sri = this.sri; + this.emit("error", err); + } else if (this.sri && !match) { + const err = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = this.digests; + err.algorithm = this.algorithm; + err.sri = this.sri; + this.emit("error", err); + } else { + this.emit("size", this.size); + this.emit("integrity", newSri); + match && this.emit("verified", match); + } + } + }; + var Hash = class { + get isHash() { + return true; + } + constructor(hash, opts) { + opts = ssriOpts(opts); + const strict = !!opts.strict; + this.source = hash.trim(); + this.digest = ""; + this.algorithm = ""; + this.options = []; + const match = this.source.match( + strict ? STRICT_SRI_REGEX : SRI_REGEX + ); + if (!match) { + return; + } + if (strict && !SPEC_ALGORITHMS.some((a) => a === match[1])) { + return; + } + this.algorithm = match[1]; + this.digest = match[2]; + const rawOpts = match[3]; + if (rawOpts) { + this.options = rawOpts.slice(1).split("?"); + } + } + hexDigest() { + return this.digest && Buffer.from(this.digest, "base64").toString("hex"); + } + toJSON() { + return this.toString(); + } + toString(opts) { + opts = ssriOpts(opts); + if (opts.strict) { + if (!// The spec has very restricted productions for algorithms. + // https://www.w3.org/TR/CSP2/#source-list-syntax + (SPEC_ALGORITHMS.some((x) => x === this.algorithm) && // Usually, if someone insists on using a "different" base64, we + // leave it as-is, since there's multiple standards, and the + // specified is not a URL-safe variant. + // https://www.w3.org/TR/CSP2/#base64_value + this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars. + // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression + // https://tools.ietf.org/html/rfc5234#appendix-B.1 + this.options.every((opt) => opt.match(VCHAR_REGEX)))) { + return ""; + } + } + const options = this.options && this.options.length ? `?${this.options.join("?")}` : ""; + return `${this.algorithm}-${this.digest}${options}`; + } + }; + var Integrity = class { + get isIntegrity() { + return true; + } + toJSON() { + return this.toString(); + } + isEmpty() { + return Object.keys(this).length === 0; + } + toString(opts) { + opts = ssriOpts(opts); + let sep = opts.sep || " "; + if (opts.strict) { + sep = sep.replace(/\S+/g, " "); + } + return Object.keys(this).map((k) => { + return this[k].map((hash) => { + return Hash.prototype.toString.call(hash, opts); + }).filter((x) => x.length).join(sep); + }).filter((x) => x.length).join(sep); + } + concat(integrity, opts) { + opts = ssriOpts(opts); + const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts); + return parse2(`${this.toString(opts)} ${other}`, opts); + } + hexDigest() { + return parse2(this, { single: true }).hexDigest(); + } + // add additional hashes to an integrity value, but prevent + // *changing* an existing integrity hash. + merge(integrity, opts) { + opts = ssriOpts(opts); + const other = parse2(integrity, opts); + for (const algo in other) { + if (this[algo]) { + if (!this[algo].find((hash) => other[algo].find((otherhash) => hash.digest === otherhash.digest))) { + throw new Error("hashes do not match, cannot update integrity"); + } + } else { + this[algo] = other[algo]; + } + } + } + match(integrity, opts) { + opts = ssriOpts(opts); + const other = parse2(integrity, opts); + const algo = other.pickAlgorithm(opts); + return this[algo] && other[algo] && this[algo].find( + (hash) => other[algo].find( + (otherhash) => hash.digest === otherhash.digest + ) + ) || false; + } + pickAlgorithm(opts) { + opts = ssriOpts(opts); + const pickAlgorithm = opts.pickAlgorithm; + const keys = Object.keys(this); + return keys.reduce((acc, algo) => { + return pickAlgorithm(acc, algo) || acc; + }); + } + }; + module2.exports.parse = parse2; + function parse2(sri, opts) { + if (!sri) + return null; + opts = ssriOpts(opts); + if (typeof sri === "string") { + return _parse(sri, opts); + } else if (sri.algorithm && sri.digest) { + const fullSri = new Integrity(); + fullSri[sri.algorithm] = [sri]; + return _parse(stringify2(fullSri, opts), opts); + } else { + return _parse(stringify2(sri, opts), opts); + } + } + function _parse(integrity, opts) { + if (opts.single) { + return new Hash(integrity, opts); + } + const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => { + const hash = new Hash(string, opts); + if (hash.algorithm && hash.digest) { + const algo = hash.algorithm; + if (!acc[algo]) { + acc[algo] = []; + } + acc[algo].push(hash); + } + return acc; + }, new Integrity()); + return hashes.isEmpty() ? null : hashes; + } + module2.exports.stringify = stringify2; + function stringify2(obj, opts) { + opts = ssriOpts(opts); + if (obj.algorithm && obj.digest) { + return Hash.prototype.toString.call(obj, opts); + } else if (typeof obj === "string") { + return stringify2(parse2(obj, opts), opts); + } else { + return Integrity.prototype.toString.call(obj, opts); + } + } + module2.exports.fromHex = fromHex; + function fromHex(hexDigest, algorithm, opts) { + opts = ssriOpts(opts); + const optString = getOptString(opts.options); + return parse2( + `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`, + opts + ); + } + module2.exports.fromData = fromData; + function fromData(data, opts) { + opts = ssriOpts(opts); + const algorithms = opts.algorithms; + const optString = getOptString(opts.options); + return algorithms.reduce((acc, algo) => { + const digest = crypto6.createHash(algo).update(data).digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const algo2 = hash.algorithm; + if (!acc[algo2]) { + acc[algo2] = []; + } + acc[algo2].push(hash); + } + return acc; + }, new Integrity()); + } + module2.exports.fromStream = fromStream; + function fromStream(stream, opts) { + opts = ssriOpts(opts); + const istream = integrityStream(opts); + return new Promise((resolve, reject) => { + stream.pipe(istream); + stream.on("error", reject); + istream.on("error", reject); + let sri; + istream.on("integrity", (s) => { + sri = s; + }); + istream.on("end", () => resolve(sri)); + istream.on("data", () => { + }); + }); + } + module2.exports.checkData = checkData; + function checkData(data, sri, opts) { + opts = ssriOpts(opts); + sri = parse2(sri, opts); + if (!sri || !Object.keys(sri).length) { + if (opts.error) { + throw Object.assign( + new Error("No valid integrity hashes to check against"), + { + code: "EINTEGRITY" + } + ); + } else { + return false; + } + } + const algorithm = sri.pickAlgorithm(opts); + const digest = crypto6.createHash(algorithm).update(data).digest("base64"); + const newSri = parse2({ algorithm, digest }); + const match = newSri.match(sri, opts); + if (match || !opts.error) { + return match; + } else if (typeof opts.size === "number" && data.length !== opts.size) { + const err = new Error(`data size mismatch when checking ${sri}. + Wanted: ${opts.size} + Found: ${data.length}`); + err.code = "EBADSIZE"; + err.found = data.length; + err.expected = opts.size; + err.sri = sri; + throw err; + } else { + const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`); + err.code = "EINTEGRITY"; + err.found = newSri; + err.expected = sri; + err.algorithm = algorithm; + err.sri = sri; + throw err; + } + } + module2.exports.checkStream = checkStream; + function checkStream(stream, sri, opts) { + opts = ssriOpts(opts); + opts.integrity = sri; + sri = parse2(sri, opts); + if (!sri || !Object.keys(sri).length) { + return Promise.reject(Object.assign( + new Error("No valid integrity hashes to check against"), + { + code: "EINTEGRITY" + } + )); + } + const checker = integrityStream(opts); + return new Promise((resolve, reject) => { + stream.pipe(checker); + stream.on("error", reject); + checker.on("error", reject); + let sri2; + checker.on("verified", (s) => { + sri2 = s; + }); + checker.on("end", () => resolve(sri2)); + checker.on("data", () => { + }); + }); + } + module2.exports.integrityStream = integrityStream; + function integrityStream(opts = {}) { + return new IntegrityStream(opts); + } + module2.exports.create = createIntegrity; + function createIntegrity(opts) { + opts = ssriOpts(opts); + const algorithms = opts.algorithms; + const optString = getOptString(opts.options); + const hashes = algorithms.map(crypto6.createHash); + return { + update: function(chunk, enc) { + hashes.forEach((h) => h.update(chunk, enc)); + return this; + }, + digest: function(enc) { + const integrity = algorithms.reduce((acc, algo) => { + const digest = hashes.shift().digest("base64"); + const hash = new Hash( + `${algo}-${digest}${optString}`, + opts + ); + if (hash.algorithm && hash.digest) { + const algo2 = hash.algorithm; + if (!acc[algo2]) { + acc[algo2] = []; + } + acc[algo2].push(hash); + } + return acc; + }, new Integrity()); + return integrity; + } + }; + } + var NODE_HASHES = new Set(crypto6.getHashes()); + var DEFAULT_PRIORITY = [ + "md5", + "whirlpool", + "sha1", + "sha224", + "sha256", + "sha384", + "sha512", + // TODO - it's unclear _which_ of these Node will actually use as its name + // for the algorithm, so we guesswork it based on the OpenSSL names. + "sha3", + "sha3-256", + "sha3-384", + "sha3-512", + "sha3_256", + "sha3_384", + "sha3_512" + ].filter((algo) => NODE_HASHES.has(algo)); + function getPrioritizedHash(algo1, algo2) { + return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2; + } } }); -// ../../node_modules/.pnpm/dint@5.1.0/node_modules/dint/index.js +// ../node_modules/.pnpm/dint@5.1.0/node_modules/dint/index.js var require_dint = __commonJS({ - "../../node_modules/.pnpm/dint@5.1.0/node_modules/dint/index.js"(exports2, module2) { + "../node_modules/.pnpm/dint@5.1.0/node_modules/dint/index.js"(exports2, module2) { "use strict"; - var fs = require("fs"); + var fs2 = require("fs"); var ssri = require_ssri(); - var path = require("path"); + var path2 = require("path"); var pEvery = require_p_every(); var pLimit = require_p_limit(); var limit = pLimit(20); @@ -130977,19 +222577,19 @@ var require_dint = __commonJS({ } async function _retrieveFileIntegrities(rootDir, currDir, index) { try { - const files = await fs.promises.readdir(currDir); + const files = await fs2.promises.readdir(currDir); await Promise.all(files.map(async (file) => { - const fullPath = path.join(currDir, file); - const stat = await fs.promises.stat(fullPath); + const fullPath = path2.join(currDir, file); + const stat = await fs2.promises.stat(fullPath); if (stat.isDirectory()) { return _retrieveFileIntegrities(rootDir, fullPath, index); } if (stat.isFile()) { - const relativePath = path.relative(rootDir, fullPath); + const relativePath = path2.relative(rootDir, fullPath); index[relativePath] = { size: stat.size, generatingIntegrity: limit(() => { - return stat.size < MAX_BULK_SIZE ? fs.promises.readFile(fullPath).then(ssri.fromData) : ssri.fromStream(fs.createReadStream(fullPath)); + return stat.size < MAX_BULK_SIZE ? fs2.promises.readFile(fullPath).then(ssri.fromData) : ssri.fromStream(fs2.createReadStream(fullPath)); }) }; } @@ -131003,15 +222603,15 @@ var require_dint = __commonJS({ } } function check(dirname, dirIntegrity) { - dirname = path.resolve(dirname); + dirname = path2.resolve(dirname); return pEvery(Object.keys(dirIntegrity), async (f) => { const fstat = dirIntegrity[f]; if (!fstat.integrity) return false; - const filename = path.join(dirname, f); + const filename = path2.join(dirname, f); if (fstat.size > MAX_BULK_SIZE) { try { - return await ssri.checkStream(fs.createReadStream(filename), fstat.integrity); + return await ssri.checkStream(fs2.createReadStream(filename), fstat.integrity); } catch (err) { if (err.code === "EINTEGRITY" || err.code === "ENOENT") return false; @@ -131019,7 +222619,7 @@ var require_dint = __commonJS({ } } try { - const data = await fs.promises.readFile(filename); + const data = await fs2.promises.readFile(filename); return ssri.checkData(data, fstat.integrity); } catch (err) { if (err.code === "EINTEGRITY" || err.code === "ENOENT") @@ -131035,61 +222635,34 @@ var require_dint = __commonJS({ } }); -// ../plugin-commands-store/lib/storeStatus/extendStoreStatusOptions.js +// ../store/plugin-commands-store/lib/storeStatus/extendStoreStatusOptions.js var require_extendStoreStatusOptions = __commonJS({ - "../plugin-commands-store/lib/storeStatus/extendStoreStatusOptions.js"(exports2) { + "../store/plugin-commands-store/lib/storeStatus/extendStoreStatusOptions.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var normalize_registries_1 = __importStar2(require_lib65()); + exports2.extendStoreStatusOptions = void 0; + var path_1 = __importDefault4(require("path")); + var normalize_registries_1 = require_lib89(); var defaults = async (opts) => { - var _a, _b; - const dir = (_a = opts.dir) !== null && _a !== void 0 ? _a : process.cwd(); - const lockfileDir = (_b = opts.lockfileDir) !== null && _b !== void 0 ? _b : dir; + const dir = opts.dir ?? process.cwd(); + const lockfileDir = opts.lockfileDir ?? dir; return { binsDir: path_1.default.join(dir, "node_modules", ".bin"), dir, force: false, forceSharedLockfile: false, lockfileDir, + nodeLinker: "isolated", registries: normalize_registries_1.DEFAULT_REGISTRIES, shamefullyHoist: false, storeDir: opts.storeDir, useLockfile: true }; }; - exports2.default = async (opts) => { + async function extendStoreStatusOptions(opts) { if (opts) { for (const key in opts) { if (opts[key] === void 0) { @@ -131099,120 +222672,125 @@ var require_extendStoreStatusOptions = __commonJS({ } const defaultOpts = await defaults(opts); const extendedOpts = { ...defaultOpts, ...opts, storeDir: defaultOpts.storeDir }; - extendedOpts.registries = normalize_registries_1.default(extendedOpts.registries); + extendedOpts.registries = (0, normalize_registries_1.normalizeRegistries)(extendedOpts.registries); return extendedOpts; - }; + } + exports2.extendStoreStatusOptions = extendStoreStatusOptions; } }); -// ../plugin-commands-store/lib/storeStatus/index.js +// ../store/plugin-commands-store/lib/storeStatus/index.js var require_storeStatus = __commonJS({ - "../plugin-commands-store/lib/storeStatus/index.js"(exports2) { + "../store/plugin-commands-store/lib/storeStatus/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var path_1 = __importDefault(require("path")); - var cafs_1 = require_lib31(); - var get_context_1 = require_lib67(); - var lockfile_utils_1 = require_lib53(); + exports2.storeStatus = void 0; + var path_1 = __importDefault4(require("path")); + var cafs_1 = require_lib46(); + var get_context_1 = require_lib108(); + var lockfile_utils_1 = require_lib84(); var logger_1 = require_lib6(); - var dp = __importStar2(require_lib33()); - var dint_1 = __importDefault(require_dint()); - var load_json_file_1 = __importDefault(require_load_json_file()); - var p_filter_1 = __importDefault(require_p_filter()); - var extendStoreStatusOptions_1 = __importDefault(require_extendStoreStatusOptions()); - async function default_1(maybeOpts) { - var _a; - const reporter = maybeOpts === null || maybeOpts === void 0 ? void 0 : maybeOpts.reporter; + var dp = __importStar5(require_lib81()); + var dint_1 = __importDefault4(require_dint()); + var load_json_file_1 = __importDefault4(require_load_json_file()); + var p_filter_1 = __importDefault4(require_p_filter()); + var extendStoreStatusOptions_1 = require_extendStoreStatusOptions(); + async function storeStatus(maybeOpts) { + const reporter = maybeOpts?.reporter; if (reporter != null && typeof reporter === "function") { logger_1.streamParser.on("data", reporter); } - const opts = await extendStoreStatusOptions_1.default(maybeOpts); - const { registries, storeDir, skipped, virtualStoreDir, wantedLockfile } = await get_context_1.getContextForSingleImporter({}, { + const opts = await (0, extendStoreStatusOptions_1.extendStoreStatusOptions)(maybeOpts); + const { registries, storeDir, skipped, virtualStoreDir, wantedLockfile } = await (0, get_context_1.getContextForSingleImporter)({}, { ...opts, extraBinPaths: [] + // ctx.extraBinPaths is not needed, so this is fine }); if (!wantedLockfile) return []; - const pkgs = Object.keys((_a = wantedLockfile.packages) !== null && _a !== void 0 ? _a : {}).filter((depPath) => !skipped.has(depPath)).map((depPath) => { - const pkgSnapshot = wantedLockfile.packages[depPath]; - const id = lockfile_utils_1.packageIdFromSnapshot(depPath, pkgSnapshot, registries); + const pkgs = Object.entries(wantedLockfile.packages ?? {}).filter(([depPath]) => !skipped.has(depPath)).map(([depPath, pkgSnapshot]) => { + const id = (0, lockfile_utils_1.packageIdFromSnapshot)(depPath, pkgSnapshot, registries); return { depPath, id, - integrity: pkgSnapshot.resolution["integrity"], + integrity: pkgSnapshot.resolution.integrity, pkgPath: dp.resolve(registries, depPath), - ...lockfile_utils_1.nameVerFromPkgSnapshot(depPath, pkgSnapshot) + ...(0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, pkgSnapshot) }; }); const cafsDir = path_1.default.join(storeDir, "files"); - const modified = await p_filter_1.default(pkgs, async ({ id, integrity, depPath, name }) => { - const pkgIndexFilePath = integrity ? cafs_1.getFilePathInCafs(cafsDir, integrity, "index") : path_1.default.join(storeDir, dp.depPathToFilename(id, opts.dir), "integrity.json"); - const { files } = await load_json_file_1.default(pkgIndexFilePath); - return await dint_1.default.check(path_1.default.join(virtualStoreDir, dp.depPathToFilename(depPath, opts.dir), "node_modules", name), files) === false; + const modified = await (0, p_filter_1.default)(pkgs, async ({ id, integrity, depPath, name }) => { + const pkgIndexFilePath = integrity ? (0, cafs_1.getFilePathInCafs)(cafsDir, integrity, "index") : path_1.default.join(storeDir, dp.depPathToFilename(id), "integrity.json"); + const { files } = await (0, load_json_file_1.default)(pkgIndexFilePath); + return await dint_1.default.check(path_1.default.join(virtualStoreDir, dp.depPathToFilename(depPath), "node_modules", name), files) === false; }, { concurrency: 8 }); if (reporter != null && typeof reporter === "function") { logger_1.streamParser.removeListener("data", reporter); } return modified.map(({ pkgPath }) => pkgPath); } - exports2.default = default_1; + exports2.storeStatus = storeStatus; } }); -// ../plugin-commands-store/lib/store.js +// ../store/plugin-commands-store/lib/store.js var require_store = __commonJS({ - "../plugin-commands-store/lib/store.js"(exports2) { + "../store/plugin-commands-store/lib/store.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var config_1 = require_lib10(); - var error_1 = __importDefault(require_lib8()); - var logger_1 = __importDefault(require_lib6()); - var store_connection_manager_1 = require_lib63(); - var store_path_1 = __importDefault(require_lib38()); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); - var storeAdd_1 = __importDefault(require_storeAdd()); - var storePrune_1 = __importDefault(require_storePrune()); - var storeStatus_1 = __importDefault(require_storeStatus()); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var error_1 = require_lib8(); + var logger_1 = require_lib6(); + var store_connection_manager_1 = require_lib106(); + var store_path_1 = require_lib66(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); + var storeAdd_1 = require_storeAdd(); + var storePrune_1 = require_storePrune(); + var storeStatus_1 = require_storeStatus(); exports2.rcOptionsTypes = cliOptionsTypes; function cliOptionsTypes() { - return pick_1.default([ + return (0, pick_1.default)([ "registry", "store", "store-dir" @@ -131221,7 +222799,7 @@ var require_store = __commonJS({ exports2.cliOptionsTypes = cliOptionsTypes; exports2.commandNames = ["store"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: "Reads and performs actions on pnpm store that is on the current filesystem.", descriptionLists: [ { @@ -131238,16 +222816,20 @@ var require_store = __commonJS({ { description: "Removes unreferenced (extraneous, orphan) packages from the store. Pruning the store is not harmful, but might slow down future installations. Visit the documentation for more information on unreferenced packages and why they occur", name: "prune" + }, + { + description: "Returns the path to the active store directory.", + name: "path" } ] } ], - url: cli_utils_1.docsUrl("store"), + url: (0, cli_utils_1.docsUrl)("store"), usages: ["pnpm store "] }); } exports2.help = help; - var StoreStatusError = class extends error_1.default { + var StoreStatusError = class extends error_1.PnpmError { constructor(modified) { super("MODIFIED_DEPENDENCY", ""); this.modified = modified; @@ -131259,18 +222841,22 @@ var require_store = __commonJS({ case "status": return statusCmd(opts); case "path": - return store_path_1.default(opts.dir, opts.storeDir); + return (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }); case "prune": { - store = await store_connection_manager_1.createOrConnectStoreController(opts); + store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); const storePruneOptions = Object.assign(opts, { storeController: store.ctrl, storeDir: store.dir }); - return storePrune_1.default(storePruneOptions); + return (0, storePrune_1.storePrune)(storePruneOptions); } case "add": - store = await store_connection_manager_1.createOrConnectStoreController(opts); - return storeAdd_1.default(params.slice(1), { + store = await (0, store_connection_manager_1.createOrConnectStoreController)(opts); + return (0, storeAdd_1.storeAdd)(params.slice(1), { prefix: opts.dir, registries: opts.registries, reporter: opts.reporter, @@ -131283,11 +222869,15 @@ var require_store = __commonJS({ } exports2.handler = handler; async function statusCmd(opts) { - const modifiedPkgs = await storeStatus_1.default(Object.assign(opts, { - storeDir: await store_path_1.default(opts.dir, opts.storeDir) + const modifiedPkgs = await (0, storeStatus_1.storeStatus)(Object.assign(opts, { + storeDir: await (0, store_path_1.getStorePath)({ + pkgRoot: opts.dir, + storePath: opts.storeDir, + pnpmHomeDir: opts.pnpmHomeDir + }) })); if (!modifiedPkgs || modifiedPkgs.length === 0) { - logger_1.default.info({ + logger_1.logger.info({ message: "Packages in the store are untouched", prefix: opts.dir }); @@ -131298,67 +222888,245 @@ var require_store = __commonJS({ } }); -// ../plugin-commands-store/lib/index.js -var require_lib109 = __commonJS({ - "../plugin-commands-store/lib/index.js"(exports2) { +// ../store/plugin-commands-store/lib/index.js +var require_lib160 = __commonJS({ + "../store/plugin-commands-store/lib/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.store = void 0; - var store = __importStar2(require_store()); + var store = __importStar5(require_store()); exports2.store = store; } }); +// ../packages/plugin-commands-init/lib/utils.js +var require_utils18 = __commonJS({ + "../packages/plugin-commands-init/lib/utils.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseRawConfig = exports2.workWithInitConfig = exports2.workWithInitModule = exports2.personToString = void 0; + var path_1 = __importDefault4(require("path")); + var child_process_1 = require("child_process"); + var camelcase_keys_1 = __importDefault4(require_camelcase_keys()); + var fs_1 = __importDefault4(require("fs")); + function personToString(person) { + const name = person.name ?? ""; + const u = person.url ?? person.web; + const url = u ? ` (${u})` : ""; + const e = person.email ?? person.mail; + const email = e ? ` <${e}>` : ""; + return name + email + url; + } + exports2.personToString = personToString; + function workWithInitModule(localConfig) { + const { initModule, ...restConfig } = localConfig; + if (initModule) { + const filePath = path_1.default.resolve(localConfig.initModule); + const isFileExist = fs_1.default.existsSync(filePath); + if ([".js", ".cjs"].includes(path_1.default.extname(filePath)) && isFileExist) { + (0, child_process_1.spawnSync)("node", [filePath], { + stdio: "inherit" + }); + } + } + return restConfig; + } + exports2.workWithInitModule = workWithInitModule; + function workWithInitConfig(localConfig) { + const packageJson = {}; + const authorInfo = {}; + for (const localConfigKey in localConfig) { + if (localConfigKey.startsWith("init")) { + const pureKey = localConfigKey.replace("init", ""); + const value = localConfig[localConfigKey]; + if (pureKey.startsWith("Author")) { + authorInfo[pureKey.replace("Author", "")] = value; + } else { + packageJson[pureKey] = value; + } + } + } + const author = personToString((0, camelcase_keys_1.default)(authorInfo)); + if (author) { + packageJson.author = author; + } + return (0, camelcase_keys_1.default)(packageJson); + } + exports2.workWithInitConfig = workWithInitConfig; + async function parseRawConfig(rawConfig) { + return workWithInitConfig(workWithInitModule((0, camelcase_keys_1.default)(rawConfig))); + } + exports2.parseRawConfig = parseRawConfig; + } +}); + +// ../packages/plugin-commands-init/lib/init.js +var require_init2 = __commonJS({ + "../packages/plugin-commands-init/lib/init.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; + var fs_1 = __importDefault4(require("fs")); + var path_1 = __importDefault4(require("path")); + var cli_utils_1 = require_lib27(); + var error_1 = require_lib8(); + var write_project_manifest_1 = require_lib14(); + var render_help_1 = __importDefault4(require_lib34()); + var utils_1 = require_utils18(); + exports2.rcOptionsTypes = cliOptionsTypes; + function cliOptionsTypes() { + return {}; + } + exports2.cliOptionsTypes = cliOptionsTypes; + exports2.commandNames = ["init"]; + function help() { + return (0, render_help_1.default)({ + description: "Create a package.json file", + descriptionLists: [], + url: (0, cli_utils_1.docsUrl)("init"), + usages: ["pnpm init"] + }); + } + exports2.help = help; + async function handler(opts, params) { + if (params?.length) { + throw new error_1.PnpmError("INIT_ARG", "init command does not accept any arguments", { + hint: `Maybe you wanted to run "pnpm create ${params.join(" ")}"` + }); + } + const manifestPath = path_1.default.join(process.cwd(), "package.json"); + if (fs_1.default.existsSync(manifestPath)) { + throw new error_1.PnpmError("PACKAGE_JSON_EXISTS", "package.json already exists"); + } + const manifest = { + name: path_1.default.basename(process.cwd()), + version: "1.0.0", + description: "", + main: "index.js", + scripts: { + test: 'echo "Error: no test specified" && exit 1' + }, + keywords: [], + author: "", + license: "ISC" + }; + const config = await (0, utils_1.parseRawConfig)(opts.rawConfig); + const packageJson = { ...manifest, ...config }; + await (0, write_project_manifest_1.writeProjectManifest)(manifestPath, packageJson, { + indent: 2 + }); + return `Wrote to ${manifestPath} + +${JSON.stringify(packageJson, null, 2)}`; + } + exports2.handler = handler; + } +}); + +// ../packages/plugin-commands-init/lib/index.js +var require_lib161 = __commonJS({ + "../packages/plugin-commands-init/lib/index.js"(exports2) { + "use strict"; + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar5 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result2 = {}; + if (mod != null) { + for (var k in mod) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) + __createBinding5(result2, mod, k); + } + __setModuleDefault4(result2, mod); + return result2; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.init = void 0; + var init = __importStar5(require_init2()); + exports2.init = init; + } +}); + // lib/cmd/bin.js -var require_bin = __commonJS({ +var require_bin2 = __commonJS({ "lib/cmd/bin.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var config_1 = require_lib10(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); + var cli_utils_1 = require_lib27(); + var config_1 = require_lib21(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); exports2.rcOptionsTypes = cliOptionsTypes; function cliOptionsTypes() { - return pick_1.default([ + return (0, pick_1.default)([ "global" ], config_1.types); } exports2.cliOptionsTypes = cliOptionsTypes; exports2.commandNames = ["bin"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: "Print the directory where pnpm will install executables.", descriptionLists: [ { @@ -131372,6 +223140,7 @@ var require_bin = __commonJS({ ] } ], + url: (0, cli_utils_1.docsUrl)("bin"), usages: ["pnpm bin [-g]"] }); } @@ -131383,9 +223152,9 @@ var require_bin = __commonJS({ } }); -// ../../node_modules/.pnpm/split-cmd@1.0.1/node_modules/split-cmd/index.js +// ../node_modules/.pnpm/split-cmd@1.0.1/node_modules/split-cmd/index.js var require_split_cmd = __commonJS({ - "../../node_modules/.pnpm/split-cmd@1.0.1/node_modules/split-cmd/index.js"(exports2, module2) { + "../node_modules/.pnpm/split-cmd@1.0.1/node_modules/split-cmd/index.js"(exports2, module2) { function split(command) { if (typeof command !== "string") { throw new Error("Command must be a string"); @@ -131417,9 +223186,9 @@ var require_split_cmd = __commonJS({ } }); -// ../../node_modules/.pnpm/abbrev@1.1.1/node_modules/abbrev/abbrev.js +// ../node_modules/.pnpm/abbrev@1.1.1/node_modules/abbrev/abbrev.js var require_abbrev = __commonJS({ - "../../node_modules/.pnpm/abbrev@1.1.1/node_modules/abbrev/abbrev.js"(exports2, module2) { + "../node_modules/.pnpm/abbrev@1.1.1/node_modules/abbrev/abbrev.js"(exports2, module2) { module2.exports = exports2 = abbrev.abbrev = abbrev; abbrev.monkeyPatch = monkeyPatch; function monkeyPatch() { @@ -131480,15 +223249,15 @@ var require_abbrev = __commonJS({ } }); -// ../../node_modules/.pnpm/@pnpm+nopt@0.2.1/node_modules/@pnpm/nopt/lib/nopt.js +// ../node_modules/.pnpm/@pnpm+nopt@0.2.1/node_modules/@pnpm/nopt/lib/nopt.js var require_nopt = __commonJS({ - "../../node_modules/.pnpm/@pnpm+nopt@0.2.1/node_modules/@pnpm/nopt/lib/nopt.js"(exports2, module2) { + "../node_modules/.pnpm/@pnpm+nopt@0.2.1/node_modules/@pnpm/nopt/lib/nopt.js"(exports2, module2) { var debug = process.env.DEBUG_NOPT || process.env.NOPT_DEBUG ? function() { console.error.apply(console, arguments); } : function() { }; var url = require("url"); - var path = require("path"); + var path2 = require("path"); var Stream = require("stream").Stream; var abbrev = require_abbrev(); var os = require("os"); @@ -131499,7 +223268,7 @@ var require_nopt = __commonJS({ Boolean: { type: Boolean, validate: validateBoolean }, url: { type: url, validate: validateUrl }, Number: { type: Number, validate: validateNumber }, - path: { type: path, validate: validatePath }, + path: { type: path2, validate: validatePath }, Stream: { type: Stream, validate: validateStream }, Date: { type: Date, validate: validateDate } }; @@ -131516,7 +223285,7 @@ var require_nopt = __commonJS({ cooked: args2, original: args2.slice(0) }; - parse(args2, data, argv2.remain, types, shorthands, opts); + parse2(args2, data, argv2.remain, types, shorthands, opts); clean(data, types, exports2.typeDefs); data.argv = argv2; Object.defineProperty(data.argv, "toString", { value: function() { @@ -131565,7 +223334,7 @@ var require_nopt = __commonJS({ var d = {}; d[k] = val2; debug("prevalidated val", d, val2, types[k]); - if (!validate(d, k, val2, types[k], typeDefs)) { + if (!validate2(d, k, val2, types[k], typeDefs)) { if (exports2.invalidHandler) { exports2.invalidHandler(k, val2, types[k], data); } else if (exports2.invalidHandler !== false) { @@ -131600,9 +223369,9 @@ var require_nopt = __commonJS({ val = String(val); var isWin = process.platform === "win32", homePattern = isWin ? /^~(\/|\\)/ : /^~\//, home = os.homedir(); if (home && val.match(homePattern)) { - data[k] = path.resolve(home, val.substr(2)); + data[k] = path2.resolve(home, val.substr(2)); } else { - data[k] = path.resolve(val); + data[k] = path2.resolve(val); } return true; } @@ -131644,12 +223413,12 @@ var require_nopt = __commonJS({ return false; data[k] = val; } - function validate(data, k, val, type, typeDefs) { + function validate2(data, k, val, type, typeDefs) { if (Array.isArray(type)) { for (var i = 0, l = type.length; i < l; i++) { if (type[i] === Array) continue; - if (validate(data, k, val, type[i], typeDefs)) + if (validate2(data, k, val, type[i], typeDefs)) return true; } delete data[k]; @@ -131673,7 +223442,7 @@ var require_nopt = __commonJS({ var t = typeDefs[types[i]]; if (t && (type && type.name && t.type && t.type.name ? type.name === t.type.name : type === t.type)) { var d = {}; - ok = t.validate(d, k, val) !== false; + ok = false !== t.validate(d, k, val); val = d[k]; if (ok) { data[k] = val; @@ -131686,7 +223455,7 @@ var require_nopt = __commonJS({ delete data[k]; return ok; } - function parse(args2, data, remain, types, shorthands, opts) { + function parse2(args2, data, remain, types, shorthands, opts) { debug("parse", args2, data, remain); var escapeArgs = new Set(opts && opts.escapeArgs ? opts.escapeArgs : []); var key = null, abbrevs = abbrev(Object.keys(types)), shortAbbr = abbrev(Object.keys(shorthands)); @@ -131840,14 +223609,13 @@ var require_nopt = __commonJS({ var require_getOptionType = __commonJS({ "lib/getOptionType.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.currentTypedWordType = exports2.getLastOption = exports2.getOptionCompletions = void 0; - var nopt_1 = __importDefault(require_nopt()); - var fromPairs_1 = __importDefault(require_fromPairs()); - var omit_1 = __importDefault(require_omit()); + var nopt_1 = __importDefault4(require_nopt()); + var omit_1 = __importDefault4(require_omit()); function getOptionCompletions(optionTypes, shorthands, option) { const optionType = getOptionType(optionTypes, shorthands, option); return optionTypeToCompletion(optionType); @@ -131870,10 +223638,9 @@ var require_getOptionType = __commonJS({ return optionType.filter((ot) => typeof ot === "string"); } function getOptionType(optionTypes, shorthands, option) { - var _a; - const allBools = fromPairs_1.default(Object.keys(optionTypes).map((optionName) => [optionName, Boolean])); - const result = omit_1.default(["argv"], nopt_1.default(allBools, shorthands, [option], 0)); - return optionTypes[(_a = Object.entries(result)[0]) === null || _a === void 0 ? void 0 : _a[0]]; + const allBools = Object.fromEntries(Object.keys(optionTypes).map((optionName) => [optionName, Boolean])); + const result2 = (0, omit_1.default)(["argv"], (0, nopt_1.default)(allBools, shorthands, [option], 0)); + return optionTypes[Object.entries(result2)[0]?.[0]]; } function getLastOption(completionCtx) { if (isOption(completionCtx.prev)) @@ -131897,583 +223664,54 @@ var require_getOptionType = __commonJS({ } }); -// ../../node_modules/.pnpm/fastest-levenshtein@1.0.12/node_modules/fastest-levenshtein/index.js -var require_fastest_levenshtein = __commonJS({ - "../../node_modules/.pnpm/fastest-levenshtein@1.0.12/node_modules/fastest-levenshtein/index.js"(exports2, module2) { - "use strict"; - var peq = new Uint32Array(65536); - var myers_32 = (a, b) => { - const n = a.length; - const m = b.length; - const lst = 1 << n - 1; - let pv = -1; - let mv = 0; - let sc = n; - let i = n; - while (i--) { - peq[a.charCodeAt(i)] |= 1 << i; - } - for (i = 0; i < m; i++) { - let eq = peq[b.charCodeAt(i)]; - const xv = eq | mv; - eq |= (eq & pv) + pv ^ pv; - mv |= ~(eq | pv); - pv &= eq; - if (mv & lst) { - sc++; - } - if (pv & lst) { - sc--; - } - mv = mv << 1 | 1; - pv = pv << 1 | ~(xv | mv); - mv &= xv; - } - i = n; - while (i--) { - peq[a.charCodeAt(i)] = 0; - } - return sc; - }; - var myers_x = (a, b) => { - const n = a.length; - const m = b.length; - const mhc = []; - const phc = []; - const hsize = Math.ceil(n / 32); - const vsize = Math.ceil(m / 32); - let score = m; - for (let i = 0; i < hsize; i++) { - phc[i] = -1; - mhc[i] = 0; - } - let j = 0; - for (; j < vsize - 1; j++) { - let mv2 = 0; - let pv2 = -1; - const start2 = j * 32; - const end2 = Math.min(32, m) + start2; - for (let k = start2; k < end2; k++) { - peq[b.charCodeAt(k)] |= 1 << k; - } - score = m; - for (let i = 0; i < n; i++) { - const eq = peq[a.charCodeAt(i)]; - const pb = phc[i / 32 | 0] >>> i & 1; - const mb = mhc[i / 32 | 0] >>> i & 1; - const xv = eq | mv2; - const xh = ((eq | mb) & pv2) + pv2 ^ pv2 | eq | mb; - let ph = mv2 | ~(xh | pv2); - let mh = pv2 & xh; - if (ph >>> 31 ^ pb) { - phc[i / 32 | 0] ^= 1 << i; - } - if (mh >>> 31 ^ mb) { - mhc[i / 32 | 0] ^= 1 << i; - } - ph = ph << 1 | pb; - mh = mh << 1 | mb; - pv2 = mh | ~(xv | ph); - mv2 = ph & xv; - } - for (let k = start2; k < end2; k++) { - peq[b.charCodeAt(k)] = 0; - } - } - let mv = 0; - let pv = -1; - const start = j * 32; - const end = Math.min(32, m - start) + start; - for (let k = start; k < end; k++) { - peq[b.charCodeAt(k)] |= 1 << k; - } - score = m; - for (let i = 0; i < n; i++) { - const eq = peq[a.charCodeAt(i)]; - const pb = phc[i / 32 | 0] >>> i & 1; - const mb = mhc[i / 32 | 0] >>> i & 1; - const xv = eq | mv; - const xh = ((eq | mb) & pv) + pv ^ pv | eq | mb; - let ph = mv | ~(xh | pv); - let mh = pv & xh; - score += ph >>> m - 1 & 1; - score -= mh >>> m - 1 & 1; - if (ph >>> 31 ^ pb) { - phc[i / 32 | 0] ^= 1 << i; - } - if (mh >>> 31 ^ mb) { - mhc[i / 32 | 0] ^= 1 << i; - } - ph = ph << 1 | pb; - mh = mh << 1 | mb; - pv = mh | ~(xv | ph); - mv = ph & xv; - } - for (let k = start; k < end; k++) { - peq[b.charCodeAt(k)] = 0; - } - return score; - }; - var distance = (a, b) => { - if (a.length > b.length) { - const tmp = b; - b = a; - a = tmp; - } - if (a.length === 0) { - return b.length; - } - if (a.length <= 32) { - return myers_32(a, b); - } - return myers_x(a, b); - }; - var closest = (str, arr) => { - let min_distance = Infinity; - let min_index = 0; - for (let i = 0; i < arr.length; i++) { - const dist = distance(str, arr[i]); - if (dist < min_distance) { - min_distance = dist; - min_index = i; - } - } - return arr[min_index]; - }; - module2.exports = { - closest, - distance - }; - } -}); - -// ../../node_modules/.pnpm/lodash.deburr@4.1.0/node_modules/lodash.deburr/index.js -var require_lodash = __commonJS({ - "../../node_modules/.pnpm/lodash.deburr@4.1.0/node_modules/lodash.deburr/index.js"(exports2, module2) { - var INFINITY = 1 / 0; - var symbolTag = "[object Symbol]"; - var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; - var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23"; - var rsComboSymbolsRange = "\\u20d0-\\u20f0"; - var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]"; - var reComboMark = RegExp(rsCombo, "g"); - var deburredLetters = { - "\xC0": "A", - "\xC1": "A", - "\xC2": "A", - "\xC3": "A", - "\xC4": "A", - "\xC5": "A", - "\xE0": "a", - "\xE1": "a", - "\xE2": "a", - "\xE3": "a", - "\xE4": "a", - "\xE5": "a", - "\xC7": "C", - "\xE7": "c", - "\xD0": "D", - "\xF0": "d", - "\xC8": "E", - "\xC9": "E", - "\xCA": "E", - "\xCB": "E", - "\xE8": "e", - "\xE9": "e", - "\xEA": "e", - "\xEB": "e", - "\xCC": "I", - "\xCD": "I", - "\xCE": "I", - "\xCF": "I", - "\xEC": "i", - "\xED": "i", - "\xEE": "i", - "\xEF": "i", - "\xD1": "N", - "\xF1": "n", - "\xD2": "O", - "\xD3": "O", - "\xD4": "O", - "\xD5": "O", - "\xD6": "O", - "\xD8": "O", - "\xF2": "o", - "\xF3": "o", - "\xF4": "o", - "\xF5": "o", - "\xF6": "o", - "\xF8": "o", - "\xD9": "U", - "\xDA": "U", - "\xDB": "U", - "\xDC": "U", - "\xF9": "u", - "\xFA": "u", - "\xFB": "u", - "\xFC": "u", - "\xDD": "Y", - "\xFD": "y", - "\xFF": "y", - "\xC6": "Ae", - "\xE6": "ae", - "\xDE": "Th", - "\xFE": "th", - "\xDF": "ss", - "\u0100": "A", - "\u0102": "A", - "\u0104": "A", - "\u0101": "a", - "\u0103": "a", - "\u0105": "a", - "\u0106": "C", - "\u0108": "C", - "\u010A": "C", - "\u010C": "C", - "\u0107": "c", - "\u0109": "c", - "\u010B": "c", - "\u010D": "c", - "\u010E": "D", - "\u0110": "D", - "\u010F": "d", - "\u0111": "d", - "\u0112": "E", - "\u0114": "E", - "\u0116": "E", - "\u0118": "E", - "\u011A": "E", - "\u0113": "e", - "\u0115": "e", - "\u0117": "e", - "\u0119": "e", - "\u011B": "e", - "\u011C": "G", - "\u011E": "G", - "\u0120": "G", - "\u0122": "G", - "\u011D": "g", - "\u011F": "g", - "\u0121": "g", - "\u0123": "g", - "\u0124": "H", - "\u0126": "H", - "\u0125": "h", - "\u0127": "h", - "\u0128": "I", - "\u012A": "I", - "\u012C": "I", - "\u012E": "I", - "\u0130": "I", - "\u0129": "i", - "\u012B": "i", - "\u012D": "i", - "\u012F": "i", - "\u0131": "i", - "\u0134": "J", - "\u0135": "j", - "\u0136": "K", - "\u0137": "k", - "\u0138": "k", - "\u0139": "L", - "\u013B": "L", - "\u013D": "L", - "\u013F": "L", - "\u0141": "L", - "\u013A": "l", - "\u013C": "l", - "\u013E": "l", - "\u0140": "l", - "\u0142": "l", - "\u0143": "N", - "\u0145": "N", - "\u0147": "N", - "\u014A": "N", - "\u0144": "n", - "\u0146": "n", - "\u0148": "n", - "\u014B": "n", - "\u014C": "O", - "\u014E": "O", - "\u0150": "O", - "\u014D": "o", - "\u014F": "o", - "\u0151": "o", - "\u0154": "R", - "\u0156": "R", - "\u0158": "R", - "\u0155": "r", - "\u0157": "r", - "\u0159": "r", - "\u015A": "S", - "\u015C": "S", - "\u015E": "S", - "\u0160": "S", - "\u015B": "s", - "\u015D": "s", - "\u015F": "s", - "\u0161": "s", - "\u0162": "T", - "\u0164": "T", - "\u0166": "T", - "\u0163": "t", - "\u0165": "t", - "\u0167": "t", - "\u0168": "U", - "\u016A": "U", - "\u016C": "U", - "\u016E": "U", - "\u0170": "U", - "\u0172": "U", - "\u0169": "u", - "\u016B": "u", - "\u016D": "u", - "\u016F": "u", - "\u0171": "u", - "\u0173": "u", - "\u0174": "W", - "\u0175": "w", - "\u0176": "Y", - "\u0177": "y", - "\u0178": "Y", - "\u0179": "Z", - "\u017B": "Z", - "\u017D": "Z", - "\u017A": "z", - "\u017C": "z", - "\u017E": "z", - "\u0132": "IJ", - "\u0133": "ij", - "\u0152": "Oe", - "\u0153": "oe", - "\u0149": "'n", - "\u017F": "ss" - }; - var freeGlobal = typeof global == "object" && global && global.Object === Object && global; - var freeSelf = typeof self == "object" && self && self.Object === Object && self; - var root = freeGlobal || freeSelf || Function("return this")(); - function basePropertyOf(object) { - return function(key) { - return object == null ? void 0 : object[key]; - }; - } - var deburrLetter = basePropertyOf(deburredLetters); - var objectProto = Object.prototype; - var objectToString = objectProto.toString; - var Symbol2 = root.Symbol; - var symbolProto = Symbol2 ? Symbol2.prototype : void 0; - var symbolToString = symbolProto ? symbolProto.toString : void 0; - function baseToString(value) { - if (typeof value == "string") { - return value; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ""; - } - var result = value + ""; - return result == "0" && 1 / value == -INFINITY ? "-0" : result; - } - function isObjectLike(value) { - return !!value && typeof value == "object"; - } - function isSymbol(value) { - return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; - } - function toString(value) { - return value == null ? "" : baseToString(value); - } - function deburr(string) { - string = toString(string); - return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); - } - module2.exports = deburr; - } -}); - -// ../../node_modules/.pnpm/didyoumean2@5.0.0/node_modules/didyoumean2/dist/index.cjs -var require_dist12 = __commonJS({ - "../../node_modules/.pnpm/didyoumean2@5.0.0/node_modules/didyoumean2/dist/index.cjs"(exports2) { +// ../cli/parse-cli-args/lib/index.js +var require_lib162 = __commonJS({ + "../cli/parse-cli-args/lib/index.js"(exports2) { "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var e = require_fastest_levenshtein(); - function t(e2) { - return e2 && typeof e2 == "object" && "default" in e2 ? e2 : { default: e2 }; - } - var s = t(require_lodash()); - var r; - var o; - exports2.ReturnTypeEnums = void 0, (r = exports2.ReturnTypeEnums || (exports2.ReturnTypeEnums = {})).ALL_CLOSEST_MATCHES = "all-closest-matches", r.ALL_MATCHES = "all-matches", r.ALL_SORTED_MATCHES = "all-sorted-matches", r.FIRST_CLOSEST_MATCH = "first-closest-match", r.FIRST_MATCH = "first-match", exports2.ThresholdTypeEnums = void 0, (o = exports2.ThresholdTypeEnums || (exports2.ThresholdTypeEnums = {})).EDIT_DISTANCE = "edit-distance", o.SIMILARITY = "similarity"; - var n = new Error("unknown returnType"); - var T = new Error("unknown thresholdType"); - var u = (e2, t2) => { - let r2 = e2; - return t2.trimSpaces && (r2 = r2.trim().replace(/\s+/g, " ")), t2.deburr && (r2 = s.default(r2)), t2.caseSensitive || (r2 = r2.toLowerCase()), r2; - }; - var h = (e2, t2) => { - const { matchPath: s2 } = t2, r2 = ((e3, t3) => { - const s3 = t3.length > 0 ? t3.reduce((e4, t4) => e4 == null ? void 0 : e4[t4], e3) : e3; - return typeof s3 != "string" ? "" : s3; - })(e2, s2); - return u(r2, t2); - }; - exports2.default = function(t2, s2, r2) { - const o2 = ((e2) => { - const t3 = { caseSensitive: false, deburr: true, matchPath: [], returnType: exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH, thresholdType: exports2.ThresholdTypeEnums.SIMILARITY, trimSpaces: true, ...e2 }; - switch (t3.thresholdType) { - case exports2.ThresholdTypeEnums.EDIT_DISTANCE: - return { threshold: 20, ...t3 }; - case exports2.ThresholdTypeEnums.SIMILARITY: - return { threshold: 0.4, ...t3 }; - default: - throw T; - } - })(r2), { returnType: p, threshold: c, thresholdType: a } = o2, l = u(t2, o2); - let E, S; - switch (a) { - case exports2.ThresholdTypeEnums.EDIT_DISTANCE: - E = (e2) => e2 <= c, S = (t3) => e.distance(l, h(t3, o2)); - break; - case exports2.ThresholdTypeEnums.SIMILARITY: - E = (e2) => e2 >= c, S = (t3) => ((t4, s3) => { - if (!t4 || !s3) - return 0; - if (t4 === s3) - return 1; - const r3 = e.distance(t4, s3), o3 = Math.max(t4.length, s3.length); - return (o3 - r3) / o3; - })(l, h(t3, o2)); - break; - default: - throw T; - } - const d = [], i = s2.length; - switch (p) { - case exports2.ReturnTypeEnums.ALL_CLOSEST_MATCHES: - case exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH: { - const e2 = []; - let t3; - switch (a) { - case exports2.ThresholdTypeEnums.EDIT_DISTANCE: - t3 = 1 / 0; - for (let r4 = 0; r4 < i; r4 += 1) { - const o3 = S(s2[r4]); - t3 > o3 && (t3 = o3), e2.push(o3); - } - break; - case exports2.ThresholdTypeEnums.SIMILARITY: - t3 = 0; - for (let r4 = 0; r4 < i; r4 += 1) { - const o3 = S(s2[r4]); - t3 < o3 && (t3 = o3), e2.push(o3); - } - break; - default: - throw T; - } - const r3 = e2.length; - for (let s3 = 0; s3 < r3; s3 += 1) { - const r4 = e2[s3]; - E(r4) && r4 === t3 && d.push(s3); - } - break; - } - case exports2.ReturnTypeEnums.ALL_MATCHES: - for (let e2 = 0; e2 < i; e2 += 1) { - E(S(s2[e2])) && d.push(e2); - } - break; - case exports2.ReturnTypeEnums.ALL_SORTED_MATCHES: { - const e2 = []; - for (let t3 = 0; t3 < i; t3 += 1) { - const r3 = S(s2[t3]); - E(r3) && e2.push({ score: r3, index: t3 }); - } - switch (a) { - case exports2.ThresholdTypeEnums.EDIT_DISTANCE: - e2.sort((e3, t3) => e3.score - t3.score); - break; - case exports2.ThresholdTypeEnums.SIMILARITY: - e2.sort((e3, t3) => t3.score - e3.score); - break; - default: - throw T; - } - for (const t3 of e2) - d.push(t3.index); - break; - } - case exports2.ReturnTypeEnums.FIRST_MATCH: - for (let e2 = 0; e2 < i; e2 += 1) { - if (E(S(s2[e2]))) { - d.push(e2); - break; - } - } - break; - default: - throw n; - } - return ((e2, t3, s3) => { - switch (s3) { - case exports2.ReturnTypeEnums.ALL_CLOSEST_MATCHES: - case exports2.ReturnTypeEnums.ALL_MATCHES: - case exports2.ReturnTypeEnums.ALL_SORTED_MATCHES: - return t3.map((t4) => e2[t4]); - case exports2.ReturnTypeEnums.FIRST_CLOSEST_MATCH: - case exports2.ReturnTypeEnums.FIRST_MATCH: - return t3.length ? e2[t3[0]] : null; - default: - throw n; - } - })(s2, d, p); - }; - } -}); - -// ../parse-cli-args/lib/index.js -var require_lib110 = __commonJS({ - "../parse-cli-args/lib/index.js"(exports2) { - "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var error_1 = __importDefault(require_lib8()); - var find_workspace_dir_1 = __importDefault(require_lib94()); - var nopt_1 = __importDefault(require_nopt()); - var didyoumean2_1 = __importStar2(require_dist12()); - var RECURSIVE_CMDS = new Set(["recursive", "multi", "m"]); + exports2.parseCliArgs = void 0; + var error_1 = require_lib8(); + var find_workspace_dir_1 = require_lib142(); + var nopt_1 = __importDefault4(require_nopt()); + var didyoumean2_1 = __importStar5(require_dist16()); + var RECURSIVE_CMDS = /* @__PURE__ */ new Set(["recursive", "multi", "m"]); async function parseCliArgs(opts, inputArgv) { - var _a; - const noptExploratoryResults = nopt_1.default({ + const noptExploratoryResults = (0, nopt_1.default)({ filter: [String], help: Boolean, recursive: Boolean, @@ -132492,13 +223730,16 @@ var require_lib110 = __commonJS({ cmd = opts.fallbackCommand; commandName = opts.fallbackCommand; inputArgv.unshift(opts.fallbackCommand); - } else if (noptExploratoryResults["help"]) { + } else if (cmd !== "run" && noptExploratoryResults["help"]) { + return getParsedArgsForHelp(); + } + function getParsedArgsForHelp() { return { argv: noptExploratoryResults.argv, cmd: "help", options: {}, params: noptExploratoryResults.argv.remain, - unknownOptions: new Map(), + unknownOptions: /* @__PURE__ */ new Map(), fallbackCommandUsed: false }; } @@ -132515,17 +223756,27 @@ var require_lib110 = __commonJS({ } return "add"; } - const { argv: argv2, ...options } = nopt_1.default({ + function getEscapeArgsWithSpecialCaseForRun() { + if (cmd !== "run") { + return opts.escapeArgs; + } + const indexOfRunScriptName = 1 + (recursiveCommandUsed ? 1 : 0) + (fallbackCommandUsed && opts.fallbackCommand === "run" ? -1 : 0); + return [noptExploratoryResults.argv.remain[indexOfRunScriptName]]; + } + const { argv: argv2, ...options } = (0, nopt_1.default)({ recursive: Boolean, ...types }, { ...opts.universalShorthands, ...opts.shorthandsByCommandName[commandName] - }, inputArgv, 0, { escapeArgs: opts.escapeArgs }); + }, inputArgv, 0, { escapeArgs: getEscapeArgsWithSpecialCaseForRun() }); + if (cmd === "run" && options["help"]) { + return getParsedArgsForHelp(); + } if (opts.renamedOptions != null) { - for (const cliOption of Object.keys(options)) { + for (const [cliOption, optionValue] of Object.entries(options)) { if (opts.renamedOptions[cliOption]) { - options[opts.renamedOptions[cliOption]] = options[cliOption]; + options[opts.renamedOptions[cliOption]] = optionValue; delete options[cliOption]; } } @@ -132540,14 +223791,14 @@ var require_lib110 = __commonJS({ cmd = subCmd; } } - const dir = (_a = options["dir"]) !== null && _a !== void 0 ? _a : process.cwd(); - const workspaceDir = options["global"] ? void 0 : await find_workspace_dir_1.default(dir); + const dir = options["dir"] ?? process.cwd(); + const workspaceDir = options["global"] || options["ignore-workspace"] ? void 0 : await (0, find_workspace_dir_1.findWorkspaceDir)(dir); if (options["workspace-root"]) { if (options["global"]) { - throw new error_1.default("OPTIONS_CONFLICT", "--workspace-root may not be used with --global"); + throw new error_1.PnpmError("OPTIONS_CONFLICT", "--workspace-root may not be used with --global"); } if (!workspaceDir) { - throw new error_1.default("NOT_IN_WORKSPACE", "--workspace-root may only be used inside a workspace"); + throw new error_1.PnpmError("NOT_IN_WORKSPACE", "--workspace-root may only be used inside a workspace"); } options["dir"] = workspaceDir; } @@ -132567,7 +223818,7 @@ var require_lib110 = __commonJS({ ...normalizeOptions(options, knownOptions) }; } - exports2.default = parseCliArgs; + exports2.parseCliArgs = parseCliArgs; var CUSTOM_OPTION_PREFIX = "config."; function normalizeOptions(options, knownOptions) { const standardOptionNames = []; @@ -132584,7 +223835,7 @@ var require_lib110 = __commonJS({ return { options: normalizedOptions, unknownOptions }; } function getUnknownOptions(usedOptions, knownOptions) { - const unknownOptions = new Map(); + const unknownOptions = /* @__PURE__ */ new Map(); const closestMatches = getClosestOptionMatches.bind(null, Array.from(knownOptions)); for (const usedOption of usedOptions) { if (knownOptions.has(usedOption) || usedOption.startsWith("//")) @@ -132594,7 +223845,7 @@ var require_lib110 = __commonJS({ return unknownOptions; } function getClosestOptionMatches(knownOptions, option) { - return didyoumean2_1.default(option, knownOptions, { + return (0, didyoumean2_1.default)(option, knownOptions, { returnType: didyoumean2_1.ReturnTypeEnums.ALL_CLOSEST_MATCHES }); } @@ -132606,7 +223857,8 @@ var require_shorthands = __commonJS({ "lib/shorthands.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.default = { + exports2.shorthands = void 0; + exports2.shorthands = { s: "--reporter=silent", d: "--loglevel=info", dd: "--loglevel=verbose", @@ -132636,13 +223888,9 @@ var require_shorthands = __commonJS({ E: "--save-exact", O: "--save-optional", C: "--dir", - "shrinkwrap-only": "--lockfile-only", - "shared-workspace-shrinkwrap": "--shared-workspace-lockfile", - "frozen-shrinkwrap": "--frozen-lockfile", - "prefer-frozen-shrinkwrap": "--prefer-frozen-lockfile", - W: "--ignore-workspace-root-check", w: "--workspace-root", - i: "--interactive" + i: "--interactive", + F: "--filter" }; } }); @@ -132651,13 +223899,11 @@ var require_shorthands = __commonJS({ var require_parseCliArgs = __commonJS({ "lib/parseCliArgs.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var parse_cli_args_1 = __importDefault(require_lib110()); + exports2.parseCliArgs = void 0; + var parse_cli_args_1 = require_lib162(); var cmd_1 = require_cmd(); - var shorthands_1 = __importDefault(require_shorthands()); + var shorthands_1 = require_shorthands(); var RENAMED_OPTIONS = { "lockfile-directory": "lockfile-dir", prefix: "dir", @@ -132665,18 +223911,18 @@ var require_parseCliArgs = __commonJS({ store: "store-dir" }; async function parseCliArgs(inputArgv) { - return parse_cli_args_1.default({ + return (0, parse_cli_args_1.parseCliArgs)({ fallbackCommand: "run", - escapeArgs: ["dlx", "exec"], + escapeArgs: ["create", "dlx", "exec"], getCommandLongName: cmd_1.getCommandFullName, getTypesByCommandName: cmd_1.getCliOptionsTypes, renamedOptions: RENAMED_OPTIONS, shorthandsByCommandName: cmd_1.shorthandsByCommandName, universalOptionsTypes: cmd_1.GLOBAL_OPTIONS, - universalShorthands: shorthands_1.default + universalShorthands: shorthands_1.shorthands }, inputArgv); } - exports2.default = parseCliArgs; + exports2.parseCliArgs = parseCliArgs; } }); @@ -132685,6 +223931,7 @@ var require_optionTypesToCompletions = __commonJS({ "lib/optionTypesToCompletions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.optionTypesToCompletions = void 0; function optionTypesToCompletions(optionTypes) { const completions = []; for (const [name, typeObj] of Object.entries(optionTypes)) { @@ -132697,7 +223944,7 @@ var require_optionTypesToCompletions = __commonJS({ } return completions; } - exports2.default = optionTypesToCompletions; + exports2.optionTypesToCompletions = optionTypesToCompletions; } }); @@ -132705,33 +223952,35 @@ var require_optionTypesToCompletions = __commonJS({ var require_complete = __commonJS({ "lib/cmd/complete.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var find_workspace_dir_1 = __importDefault(require_lib94()); - var find_workspace_packages_1 = __importDefault(require_lib22()); + exports2.complete = void 0; + var find_workspace_dir_1 = require_lib142(); + var find_workspace_packages_1 = require_lib29(); var getOptionType_1 = require_getOptionType(); - var optionTypesToCompletions_1 = __importDefault(require_optionTypesToCompletions()); - var shorthands_1 = __importDefault(require_shorthands()); + var optionTypesToCompletions_1 = require_optionTypesToCompletions(); + var shorthands_1 = require_shorthands(); async function complete(ctx, input) { - var _a, _b, _c, _d; if (input.options.version) return []; const optionTypes = { ...ctx.universalOptionsTypes, - ...(_c = input.cmd && ((_b = (_a = ctx.cliOptionsTypesByCommandName)[input.cmd]) === null || _b === void 0 ? void 0 : _b.call(_a))) !== null && _c !== void 0 ? _c : {} + ...(input.cmd && ctx.cliOptionsTypesByCommandName[input.cmd]?.()) ?? {} }; if (input.currentTypedWordType !== "option") { if (input.lastOption === "--filter") { - const workspaceDir = (_d = await find_workspace_dir_1.default(process.cwd())) !== null && _d !== void 0 ? _d : process.cwd(); - const allProjects = await find_workspace_packages_1.default(workspaceDir, {}); + const workspaceDir = await (0, find_workspace_dir_1.findWorkspaceDir)(process.cwd()) ?? process.cwd(); + const allProjects = await (0, find_workspace_packages_1.findWorkspacePackages)(workspaceDir, {}); return allProjects.filter(({ manifest }) => manifest.name).map(({ manifest }) => ({ name: manifest.name })); } else if (input.lastOption) { - const optionCompletions = getOptionType_1.getOptionCompletions(optionTypes, { - ...shorthands_1.default, - ...input.cmd ? ctx.shorthandsByCommandName[input.cmd] : {} - }, input.lastOption); + const optionCompletions = (0, getOptionType_1.getOptionCompletions)( + optionTypes, + // eslint-disable-line + { + ...shorthands_1.shorthands, + ...input.cmd ? ctx.shorthandsByCommandName[input.cmd] : {} + }, + input.lastOption + ); if (optionCompletions !== void 0) { return optionCompletions.map((name) => ({ name })); } @@ -132754,16 +224003,17 @@ var require_complete = __commonJS({ if (!input.cmd) { return [ ...completions, - ...optionTypesToCompletions_1.default(optionTypes), + ...(0, optionTypesToCompletions_1.optionTypesToCompletions)(optionTypes), { name: "--version" } ]; } return [ ...completions, - ...optionTypesToCompletions_1.default(optionTypes) + ...(0, optionTypesToCompletions_1.optionTypesToCompletions)(optionTypes) + // eslint-disable-line ]; } - exports2.default = complete; + exports2.complete = complete; } }); @@ -132771,49 +224021,51 @@ var require_complete = __commonJS({ var require_completion = __commonJS({ "lib/cmd/completion.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createCompletion = void 0; var split_cmd_1 = require_split_cmd(); - var tabtab_1 = __importDefault(require_lib5()); + var tabtab_1 = __importDefault4(require_lib5()); var getOptionType_1 = require_getOptionType(); - var parseCliArgs_1 = __importDefault(require_parseCliArgs()); - var complete_1 = __importDefault(require_complete()); - function default_1(opts) { + var parseCliArgs_1 = require_parseCliArgs(); + var complete_1 = require_complete(); + function createCompletion(opts) { return async () => { const env = tabtab_1.default.parseEnv(process.env); if (!env.complete) return; - const finishedArgv = env.partial.substr(0, env.partial.length - env.lastPartial.length); - const inputArgv = split_cmd_1.split(finishedArgv).slice(1); + const finishedArgv = env.partial.slice(0, -env.lastPartial.length); + const inputArgv = (0, split_cmd_1.split)(finishedArgv).slice(1); if (inputArgv.includes("--")) return; - const { params, options, cmd } = await parseCliArgs_1.default(inputArgv); - return tabtab_1.default.log(await complete_1.default(opts, { + const { params, options, cmd } = await (0, parseCliArgs_1.parseCliArgs)(inputArgv); + return tabtab_1.default.log(await (0, complete_1.complete)(opts, { cmd, - currentTypedWordType: getOptionType_1.currentTypedWordType(env), - lastOption: getOptionType_1.getLastOption(env), + currentTypedWordType: (0, getOptionType_1.currentTypedWordType)(env), + lastOption: (0, getOptionType_1.getLastOption)(env), options, params })); }; } - exports2.default = default_1; + exports2.createCompletion = createCompletion; } }); // lib/cmd/help.js -var require_help = __commonJS({ +var require_help2 = __commonJS({ "lib/cmd/help.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var cli_meta_1 = __importDefault(require_lib4()); - var render_help_1 = __importDefault(require_lib30()); - function default_1(helpByCommandName) { + exports2.createHelp = void 0; + var cli_meta_1 = require_lib4(); + var render_help_1 = __importDefault4(require_lib34()); + function createHelp(helpByCommandName) { return function(opts, params) { let helpText; if (params.length === 0) { @@ -132823,14 +224075,14 @@ var require_help = __commonJS({ } else { helpText = `No results for "${params[0]}"`; } - return `Version ${cli_meta_1.default.version}${process["pkg"] != null ? ` (compiled to binary; bundled Node.js ${process.version})` : ""} + return `Version ${cli_meta_1.packageManager.version}${process["pkg"] != null ? ` (compiled to binary; bundled Node.js ${process.version})` : ""} ${helpText} `; }; } - exports2.default = default_1; + exports2.createHelp = createHelp; function getHelpText() { - return render_help_1.default({ + return (0, render_help_1.default)({ descriptionLists: [ { title: "Manage your dependencies", @@ -132898,6 +224150,10 @@ ${helpText} { description: "Check for outdated packages", name: "outdated" + }, + { + description: "Check licenses in consumed packages", + name: "licenses" } ] }, @@ -132945,6 +224201,10 @@ ${helpText} description: "Adds new packages to the pnpm store directly. Does not modify any projects or files outside the store", name: "store add" }, + { + description: "Prints the path to the active store directory", + name: "store path" + }, { description: "Removes unreferenced (extraneous, orphan) packages from the store", name: "store prune" @@ -132954,6 +224214,16 @@ ${helpText} name: "store status" } ] + }, + { + title: "Options", + list: [ + { + description: "Run the command for each project in the workspace.", + name: "--recursive", + shortAlias: "-r" + } + ] } ], usages: ["pnpm [command] [flags]", "pnpm [ -h | --help | -v | --version ]"] @@ -132966,23 +224236,23 @@ ${helpText} var require_installTest = __commonJS({ "lib/cmd/installTest.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.rcOptionsTypes = exports2.cliOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var plugin_commands_installation_1 = require_lib98(); - var plugin_commands_script_runners_1 = require_lib106(); - var render_help_1 = __importDefault(require_lib30()); + var cli_utils_1 = require_lib27(); + var plugin_commands_installation_1 = require_lib147(); + var plugin_commands_script_runners_1 = require_lib156(); + var render_help_1 = __importDefault4(require_lib34()); exports2.cliOptionsTypes = plugin_commands_installation_1.install.cliOptionsTypes; exports2.rcOptionsTypes = plugin_commands_installation_1.install.rcOptionsTypes; exports2.commandNames = ["install-test", "it"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ aliases: ["it"], description: "Runs a `pnpm install` followed immediately by a `pnpm test`. It takes exactly the same arguments as `pnpm install`.", - url: cli_utils_1.docsUrl("install-test"), + url: (0, cli_utils_1.docsUrl)("install-test"), usages: ["pnpm install-test"] }); } @@ -132999,22 +224269,22 @@ var require_installTest = __commonJS({ var require_recursive5 = __commonJS({ "lib/cmd/recursive.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var cli_utils_1 = require_lib20(); - var common_cli_options_help_1 = require_lib90(); + var cli_utils_1 = require_lib27(); + var common_cli_options_help_1 = require_lib97(); var constants_1 = require_lib7(); - var render_help_1 = __importDefault(require_lib30()); + var render_help_1 = __importDefault4(require_lib34()); var rcOptionsTypes = () => ({}); exports2.rcOptionsTypes = rcOptionsTypes; var cliOptionsTypes = () => ({}); exports2.cliOptionsTypes = cliOptionsTypes; exports2.commandNames = ["recursive", "multi", "m"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: "Concurrently performs some actions in all subdirectories with a `package.json` (excluding node_modules). A `pnpm-workspace.yaml` file may be used to control what directories are searched for packages.", descriptionLists: [ { @@ -133075,7 +224345,7 @@ var require_recursive5 = __commonJS({ title: "Options", list: [ { - description: "Continues executing other tasks even if a task threw an error.", + description: "Continues executing other tasks even if a task threw an error", name: "--no-bail" }, { @@ -133097,12 +224367,16 @@ var require_recursive5 = __commonJS({ { description: `Creates a single ${constants_1.WANTED_LOCKFILE} file in the root of the workspace. A shared lockfile also means that all dependencies of all projects will be in a single node_modules.`, name: "--shared-workspace-lockfile" + }, + { + description: "When executing commands recursively in a workspace, execute them on the root workspace project as well", + name: "--include-workspace-root" } ] }, common_cli_options_help_1.FILTERING ], - url: cli_utils_1.docsUrl("recursive"), + url: (0, cli_utils_1.docsUrl)("recursive"), usages: [ "pnpm recursive [command] [flags] [--filter ]", "pnpm multi [command] [flags] [--filter ]", @@ -133123,25 +224397,26 @@ var require_recursive5 = __commonJS({ var require_root2 = __commonJS({ "lib/cmd/root.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.handler = exports2.help = exports2.commandNames = exports2.cliOptionsTypes = exports2.rcOptionsTypes = void 0; - var path_1 = __importDefault(require("path")); - var config_1 = require_lib10(); - var pick_1 = __importDefault(require_pick()); - var render_help_1 = __importDefault(require_lib30()); + var path_1 = __importDefault4(require("path")); + var config_1 = require_lib21(); + var cli_utils_1 = require_lib27(); + var pick_1 = __importDefault4(require_pick()); + var render_help_1 = __importDefault4(require_lib34()); exports2.rcOptionsTypes = cliOptionsTypes; function cliOptionsTypes() { - return pick_1.default([ + return (0, pick_1.default)([ "global" ], config_1.types); } exports2.cliOptionsTypes = cliOptionsTypes; exports2.commandNames = ["root"]; function help() { - return render_help_1.default({ + return (0, render_help_1.default)({ description: "Print the effective `node_modules` directory.", descriptionLists: [ { @@ -133155,6 +224430,7 @@ var require_root2 = __commonJS({ ] } ], + url: (0, cli_utils_1.docsUrl)("root"), usages: ["pnpm root [-g]"] }); } @@ -133171,60 +224447,69 @@ var require_root2 = __commonJS({ var require_cmd = __commonJS({ "lib/cmd/index.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + var __createBinding5 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + var __setModuleDefault4 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { + var __importStar5 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); + __createBinding5(result2, mod, k); } - __setModuleDefault2(result, mod); - return result; + __setModuleDefault4(result2, mod); + return result2; }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.rcOptionsTypes = exports2.shorthandsByCommandName = exports2.getCommandFullName = exports2.getCliOptionsTypes = exports2.GLOBAL_OPTIONS = void 0; - var config_1 = require_lib10(); - var plugin_commands_audit_1 = require_lib58(); - var plugin_commands_env_1 = require_lib41(); - var plugin_commands_import_1 = require_lib89(); - var plugin_commands_installation_1 = require_lib98(); - var plugin_commands_listing_1 = require_lib101(); - var plugin_commands_outdated_1 = require_lib102(); - var plugin_commands_publishing_1 = require_lib105(); - var plugin_commands_rebuild_1 = require_lib93(); - var plugin_commands_script_runners_1 = require_lib106(); - var plugin_commands_server_1 = require_lib107(); - var plugin_commands_setup_1 = require_lib108(); - var plugin_commands_store_1 = require_lib109(); - var pick_1 = __importDefault(require_pick()); - var bin = __importStar2(require_bin()); - var completion_1 = __importDefault(require_completion()); - var help_1 = __importDefault(require_help()); - var installTest = __importStar2(require_installTest()); - var recursive = __importStar2(require_recursive5()); - var root = __importStar2(require_root2()); - exports2.GLOBAL_OPTIONS = pick_1.default([ + exports2.rcOptionsTypes = exports2.shorthandsByCommandName = exports2.getCommandFullName = exports2.getCliOptionsTypes = exports2.pnpmCmds = exports2.GLOBAL_OPTIONS = void 0; + var config_1 = require_lib21(); + var plugin_commands_audit_1 = require_lib93(); + var plugin_commands_config_1 = require_lib95(); + var plugin_commands_doctor_1 = require_lib96(); + var plugin_commands_env_1 = require_lib67(); + var plugin_commands_deploy_1 = require_lib148(); + var plugin_commands_installation_1 = require_lib147(); + var plugin_commands_listing_1 = require_lib149(); + var plugin_commands_licenses_1 = require_lib151(); + var plugin_commands_outdated_1 = require_lib152(); + var plugin_commands_publishing_1 = require_lib154(); + var plugin_commands_patching_1 = require_lib155(); + var plugin_commands_rebuild_1 = require_lib111(); + var plugin_commands_script_runners_1 = require_lib156(); + var plugin_commands_server_1 = require_lib157(); + var plugin_commands_setup_1 = require_lib159(); + var plugin_commands_store_1 = require_lib160(); + var plugin_commands_init_1 = require_lib161(); + var pick_1 = __importDefault4(require_pick()); + var bin = __importStar5(require_bin2()); + var completion_1 = require_completion(); + var help_1 = require_help2(); + var installTest = __importStar5(require_installTest()); + var recursive = __importStar5(require_recursive5()); + var root = __importStar5(require_root2()); + exports2.GLOBAL_OPTIONS = (0, pick_1.default)([ "color", "dir", "filter", @@ -133235,28 +224520,42 @@ var require_cmd = __commonJS({ "prefix", "reporter", "stream", + "aggregate-output", "test-pattern", "changed-files-ignore-pattern", "use-stderr", + "ignore-workspace", "workspace-packages", - "workspace-root" + "workspace-root", + "include-workspace-root" ], config_1.types); var commands = [ plugin_commands_installation_1.add, plugin_commands_audit_1.audit, bin, + plugin_commands_config_1.config, + plugin_commands_installation_1.dedupe, + plugin_commands_config_1.getCommand, + plugin_commands_config_1.setCommand, + plugin_commands_script_runners_1.create, + plugin_commands_deploy_1.deploy, plugin_commands_script_runners_1.dlx, + plugin_commands_doctor_1.doctor, plugin_commands_env_1.env, plugin_commands_script_runners_1.exec, plugin_commands_installation_1.fetch, - plugin_commands_import_1.importCommand, + plugin_commands_installation_1.importCommand, + plugin_commands_init_1.init, plugin_commands_installation_1.install, installTest, plugin_commands_installation_1.link, plugin_commands_listing_1.list, plugin_commands_listing_1.ll, + plugin_commands_licenses_1.licenses, plugin_commands_outdated_1.outdated, plugin_commands_publishing_1.pack, + plugin_commands_patching_1.patch, + plugin_commands_patching_1.patchCommit, plugin_commands_installation_1.prune, plugin_commands_publishing_1.publish, plugin_commands_rebuild_1.rebuild, @@ -133276,7 +224575,7 @@ var require_cmd = __commonJS({ var handlerByCommandName = {}; var helpByCommandName = {}; var cliOptionsTypesByCommandName = {}; - var aliasToFullName = new Map(); + var aliasToFullName = /* @__PURE__ */ new Map(); var completionByCommandName = {}; var shorthandsByCommandName = {}; exports2.shorthandsByCommandName = shorthandsByCommandName; @@ -133291,7 +224590,7 @@ var require_cmd = __commonJS({ handlerByCommandName[commandName] = handler; helpByCommandName[commandName] = help; cliOptionsTypesByCommandName[commandName] = cliOptionsTypes; - shorthandsByCommandName[commandName] = shorthands !== null && shorthands !== void 0 ? shorthands : {}; + shorthandsByCommandName[commandName] = shorthands ?? {}; if (completion != null) { completionByCommandName[commandName] = completion; } @@ -133304,8 +224603,8 @@ var require_cmd = __commonJS({ } } } - handlerByCommandName.help = help_1.default(helpByCommandName); - handlerByCommandName.completion = completion_1.default({ + handlerByCommandName.help = (0, help_1.createHelp)(helpByCommandName); + handlerByCommandName.completion = (0, completion_1.createCompletion)({ cliOptionsTypesByCommandName, completionByCommandName, initialCompletion, @@ -133315,15 +224614,13 @@ var require_cmd = __commonJS({ function initialCompletion() { return Object.keys(handlerByCommandName).map((name) => ({ name })); } - exports2.default = handlerByCommandName; + exports2.pnpmCmds = handlerByCommandName; function getCliOptionsTypes(commandName) { - var _a; - return ((_a = cliOptionsTypesByCommandName[commandName]) === null || _a === void 0 ? void 0 : _a.call(cliOptionsTypesByCommandName)) || {}; + return cliOptionsTypesByCommandName[commandName]?.() || {}; } exports2.getCliOptionsTypes = getCliOptionsTypes; function getCommandFullName(commandName) { - var _a; - return (_a = aliasToFullName.get(commandName)) !== null && _a !== void 0 ? _a : handlerByCommandName[commandName] ? commandName : null; + return aliasToFullName.get(commandName) ?? (handlerByCommandName[commandName] ? commandName : null); } exports2.getCommandFullName = getCommandFullName; } @@ -133333,12 +224630,12 @@ var require_cmd = __commonJS({ var require_formatError = __commonJS({ "lib/formatError.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.formatUnknownOptionsError = void 0; - var chalk_1 = __importDefault(require_source()); + var chalk_1 = __importDefault4(require_source()); function formatUnknownOptionsError(unknownOptions) { let output = chalk_1.default.bgRed.black("\u2009ERROR\u2009"); const unknownOptionsArray = Array.from(unknownOptions.keys()); @@ -133348,7 +224645,7 @@ var require_formatError = __commonJS({ const unknownOption = unknownOptionsArray[0]; output += ` ${chalk_1.default.red(`Unknown option: '${unknownOption}'`)}`; const didYouMeanOptions = unknownOptions.get(unknownOption); - if (!(didYouMeanOptions === null || didYouMeanOptions === void 0 ? void 0 : didYouMeanOptions.length)) { + if (!didYouMeanOptions?.length) { return output; } return `${output} @@ -133358,106 +224655,26 @@ Did you mean '${didYouMeanOptions.join("', or '")}'? Use "--config.unknown=value } }); -// ../../node_modules/.pnpm/@pnpm+file-reporter@1.0.1/node_modules/@pnpm/file-reporter/lib/index.js -var require_lib111 = __commonJS({ - "../../node_modules/.pnpm/@pnpm+file-reporter@1.0.1/node_modules/@pnpm/file-reporter/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - var fs = require_graceful_fs(); - var path = require("path"); - var LOG_FILENAME = "node_modules/.pnpm-debug.log"; - function default_1(streamParser) { - const logs = []; - streamParser["on"]("data", function(logObj) { - if (isUsefulLog(logObj)) { - logs.push(logObj); - } - }); - process.on("exit", (code) => { - if (code === 0) { - try { - fs.unlinkSync(LOG_FILENAME); - } catch (err) { - } - return; - } - const prettyLogs = getPrettyLogs(); - const jsonLogs = JSON.stringify(prettyLogs, null, 2); - const dest = fs.existsSync(path.dirname(LOG_FILENAME)) ? LOG_FILENAME : path.basename(LOG_FILENAME); - fs.writeFileSync(dest, jsonLogs, "UTF8"); - }); - function getPrettyLogs() { - const prettyLogs = {}; - logs.forEach((logObj, i) => { - const key = `${i} ${logObj["level"]} ${logObj["name"]}`; - const msgobj = getMessageObj(logObj); - prettyLogs[key] = prettify(msgobj); - }); - return prettyLogs; - } - function getMessageObj(logobj) { - const msgobj = {}; - for (let key in logobj) { - if (["time", "hostname", "pid", "level", "name"].indexOf(key) !== -1) - continue; - msgobj[key] = logobj[key]; - } - return msgobj; - } - function prettify(obj) { - if (obj instanceof Error) { - let logMsg = obj.toString(); - if (obj.stack) { - logMsg += ` -${obj.stack}`; - } - return logMsg; - } - if (Object.keys(obj).length === 1 && obj["message"]) - return obj["message"]; - return obj; - } - } - exports2.default = default_1; - function isUsefulLog(logObj) { - return logObj["name"] !== "pnpm:progress" || logObj["status"] !== "downloading"; - } - } -}); - -// lib/logging/fileLogger.js -var require_fileLogger = __commonJS({ - "lib/logging/fileLogger.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - var file_reporter_1 = __importDefault(require_lib111()); - var logger_1 = require_lib6(); - file_reporter_1.default(logger_1.streamParser); - } -}); - // lib/reporter/silentReporter.js var require_silentReporter = __commonJS({ "lib/reporter/silentReporter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.default = (streamParser) => { + exports2.silentReporter = void 0; + function silentReporter(streamParser) { streamParser.on("data", (obj) => { - var _a, _b, _c, _d; if (obj.level !== "error") return; - if ((_a = obj["err"].code) === null || _a === void 0 ? void 0 : _a.startsWith("ERR_PNPM_")) + if (obj["err"].code?.startsWith("ERR_PNPM_")) return; - console.log((_c = (_b = obj["err"]) === null || _b === void 0 ? void 0 : _b.message) !== null && _c !== void 0 ? _c : obj["message"]); - if ((_d = obj["err"]) === null || _d === void 0 ? void 0 : _d.stack) { + console.log(obj["err"]?.message ?? obj["message"]); + if (obj["err"]?.stack) { console.log(` ${obj["err"].stack}`); } }); - }; + } + exports2.silentReporter = silentReporter; } }); @@ -133465,17 +224682,15 @@ ${obj["err"].stack}`); var require_reporter = __commonJS({ "lib/reporter/index.js"(exports2) { "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; Object.defineProperty(exports2, "__esModule", { value: true }); - var default_reporter_1 = __importDefault(require_lib11()); + exports2.initReporter = void 0; + var default_reporter_1 = require_lib23(); var logger_1 = require_lib6(); - var silentReporter_1 = __importDefault(require_silentReporter()); - exports2.default = (reporterType, opts) => { + var silentReporter_1 = require_silentReporter(); + function initReporter(reporterType, opts) { switch (reporterType) { case "default": - default_reporter_1.default({ + (0, default_reporter_1.initDefaultReporter)({ useStderr: opts.config.useStderr, context: { argv: opts.cmd ? [opts.cmd] : [], @@ -133491,7 +224706,7 @@ var require_reporter = __commonJS({ }); return; case "append-only": - default_reporter_1.default({ + (0, default_reporter_1.initDefaultReporter)({ useStderr: opts.config.useStderr, context: { argv: opts.cmd ? [opts.cmd] : [], @@ -133499,6 +224714,7 @@ var require_reporter = __commonJS({ }, reportingOptions: { appendOnly: true, + aggregateOutput: opts.config.aggregateOutput, logLevel: opts.config.loglevel, throttleProgress: 1e3 }, @@ -133506,12 +224722,13 @@ var require_reporter = __commonJS({ }); return; case "ndjson": - logger_1.writeToConsole(); + (0, logger_1.writeToConsole)(); return; case "silent": - silentReporter_1.default(logger_1.streamParser); + (0, silentReporter_1.silentReporter)(logger_1.streamParser); } - }; + } + exports2.initReporter = initReporter; } }); @@ -133519,79 +224736,54 @@ var require_reporter = __commonJS({ var require_main2 = __commonJS({ "lib/main.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var loud_rejection_1 = __importDefault(require_loud_rejection()); - var cli_meta_1 = __importDefault(require_lib4()); - var cli_utils_1 = require_lib20(); - var core_loggers_1 = require_lib12(); - var filter_workspace_packages_1 = require_lib27(); - var find_workspace_packages_1 = __importDefault(require_lib22()); - var logger_1 = __importDefault(require_lib6()); - var plugin_commands_env_1 = require_lib41(); - var chalk_1 = __importDefault(require_source()); - var checkForUpdates_1 = __importDefault(require_checkForUpdates()); - var cmd_1 = __importStar2(require_cmd()); + exports2.main = exports2.REPORTER_INITIALIZED = void 0; + if (!global["pnpm__startedAt"]) { + global["pnpm__startedAt"] = Date.now(); + } + var loud_rejection_1 = __importDefault4(require_loud_rejection()); + var cli_meta_1 = require_lib4(); + var cli_utils_1 = require_lib27(); + var core_loggers_1 = require_lib9(); + var filter_workspace_packages_1 = require_lib33(); + var logger_1 = require_lib6(); + var plugin_commands_env_1 = require_lib67(); + var chalk_1 = __importDefault4(require_source()); + var checkForUpdates_1 = require_checkForUpdates(); + var cmd_1 = require_cmd(); var formatError_1 = require_formatError(); - require_fileLogger(); - var parseCliArgs_1 = __importDefault(require_parseCliArgs()); - var reporter_1 = __importDefault(require_reporter()); - var is_ci_1 = __importDefault(require_is_ci()); - var path_1 = __importDefault(require("path")); - var isEmpty_1 = __importDefault(require_isEmpty2()); - var strip_ansi_1 = __importDefault(require_strip_ansi()); - var which_1 = __importDefault(require_which()); - process.once("SIGINT", () => process.exit(0)).once("SIGTERM", () => process.exit(0)); - loud_rejection_1.default(); - var DEPRECATED_OPTIONS = new Set([ + var parseCliArgs_1 = require_parseCliArgs(); + var reporter_1 = require_reporter(); + var ci_info_1 = require_ci_info(); + var path_1 = __importDefault4(require("path")); + var isEmpty_1 = __importDefault4(require_isEmpty2()); + var strip_ansi_1 = __importDefault4(require_strip_ansi()); + var which_1 = __importDefault4(require_lib20()); + exports2.REPORTER_INITIALIZED = Symbol("reporterInitialized"); + (0, loud_rejection_1.default)(); + var DEPRECATED_OPTIONS = /* @__PURE__ */ new Set([ "independent-leaves", "lock", "resolution-strategy" ]); delete process.env.PKG_EXECPATH; - async function run(inputArgv) { - var _a, _b; + async function main(inputArgv) { let parsedCliArgs; try { - parsedCliArgs = await parseCliArgs_1.default(inputArgv); + parsedCliArgs = await (0, parseCliArgs_1.parseCliArgs)(inputArgv); } catch (err) { printError(err.message, err["hint"]); - process.exit(1); + process.exitCode = 1; + return; } const { argv: argv2, params: cliParams, options: cliOptions, cmd, fallbackCommandUsed, unknownOptions, workspaceDir } = parsedCliArgs; - if (cmd !== null && !cmd_1.default[cmd]) { + if (cmd !== null && !cmd_1.pnpmCmds[cmd]) { printError(`Unknown command '${cmd}'`, "For help, run: pnpm help"); - process.exit(1); + process.exitCode = 1; + return; } if (unknownOptions.size > 0 && !fallbackCommandUsed) { const unknownOptionsArray = Array.from(unknownOptions.keys()); @@ -133604,59 +224796,80 @@ var require_main2 = __commonJS({ } console.log(deprecationMsg); } else { - printError(formatError_1.formatUnknownOptionsError(unknownOptions), `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`); - process.exit(1); + printError((0, formatError_1.formatUnknownOptionsError)(unknownOptions), `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`); + process.exitCode = 1; + return; } } - process.env["npm_config_argv"] = JSON.stringify(argv2); let config; try { const globalDirShouldAllowWrite = cmd !== "root"; - config = await cli_utils_1.getConfig(cliOptions, { + config = await (0, cli_utils_1.getConfig)(cliOptions, { excludeReporter: false, globalDirShouldAllowWrite, rcOptionsTypes: cmd_1.rcOptionsTypes, workspaceDir, checkUnknownSetting: false }); + if (cmd === "dlx") { + config.useStderr = true; + } config.forceSharedLockfile = typeof config.workspaceDir === "string" && config.sharedWorkspaceLockfile === true; config.argv = argv2; config.fallbackCommandUsed = fallbackCommandUsed; + if (cmd) { + config.extraEnv = { + ...config.extraEnv, + // Follow the behavior of npm by setting it to 'run-script' when running scripts (e.g. pnpm run dev) + // and to the command name otherwise (e.g. pnpm test) + npm_command: cmd === "run" ? "run-script" : cmd + }; + } } catch (err) { const hint = err["hint"] ? err["hint"] : `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`; printError(err.message, hint); - process.exit(1); + process.exitCode = 1; + return; } let write = process.stdout.write.bind(process.stdout); if (config.color === "always") { process.env["FORCE_COLOR"] = "1"; } else if (config.color === "never") { process.env["FORCE_COLOR"] = "0"; - write = (text) => process.stdout.write(strip_ansi_1.default(text)); + write = (text) => process.stdout.write((0, strip_ansi_1.default)(text)); } const reporterType = (() => { if (config.loglevel === "silent") return "silent"; if (config.reporter) return config.reporter; - if (is_ci_1.default || !process.stdout.isTTY) + if (ci_info_1.isCI || !process.stdout.isTTY) return "append-only"; return "default"; })(); - reporter_1.default(reporterType, { - cmd, - config - }); - global["reporterInitialized"] = reporterType; - const selfUpdate = config.global && (cmd === "add" || cmd === "update") && cliParams.includes(cli_meta_1.default.name); + const printLogs = !config["parseable"] && !config["json"]; + if (printLogs) { + (0, reporter_1.initReporter)(reporterType, { + cmd, + config + }); + global[exports2.REPORTER_INITIALIZED] = reporterType; + } + const selfUpdate = config.global && (cmd === "add" || cmd === "update") && cliParams.includes(cli_meta_1.packageManager.name); if (selfUpdate) { - await cmd_1.default.server(config, ["stop"]); + await cmd_1.pnpmCmds.server(config, ["stop"]); try { - config.bin = path_1.default.dirname(which_1.default.sync("pnpm")); + const currentPnpmDir = path_1.default.dirname(which_1.default.sync("pnpm")); + if (path_1.default.relative(currentPnpmDir, config.bin) !== "") { + console.log(`The location of the currently running pnpm differs from the location where pnpm will be installed + Current pnpm location: ${currentPnpmDir} + Target location: ${config.bin} +`); + } } catch (err) { } } - if (cmd === "install" && typeof workspaceDir === "string") { + if ((cmd === "install" || cmd === "import" || cmd === "dedupe" || cmd === "patch-commit" || cmd === "patch") && typeof workspaceDir === "string") { cliOptions["recursive"] = true; config.recursive = true; if (!config.recursiveInstall && !config.filter && !config.filterProd) { @@ -133664,58 +224877,61 @@ var require_main2 = __commonJS({ } } if (cliOptions["recursive"]) { - const wsDir = workspaceDir !== null && workspaceDir !== void 0 ? workspaceDir : process.cwd(); - const allProjects = await find_workspace_packages_1.default(wsDir, { - engineStrict: config.engineStrict, - patterns: cliOptions["workspace-packages"] - }); - if (allProjects.length === 0) { - if (!config["parseable"]) { - console.log(`No projects found in "${wsDir}"`); - } - process.exit(0); - } - config.filter = (_a = config.filter) !== null && _a !== void 0 ? _a : []; - config.filterProd = (_b = config.filterProd) !== null && _b !== void 0 ? _b : []; + const wsDir = workspaceDir ?? process.cwd(); + config.filter = config.filter ?? []; + config.filterProd = config.filterProd ?? []; const filters = [ ...config.filter.map((filter) => ({ filter, followProdDepsOnly: false })), ...config.filterProd.map((filter) => ({ filter, followProdDepsOnly: true })) ]; const relativeWSDirPath = () => path_1.default.relative(process.cwd(), wsDir) || "."; if (config.workspaceRoot) { - filters.push({ filter: `{${relativeWSDirPath()}}`, followProdDepsOnly: false }); - } else if (config.useBetaCli && (cmd === "run" || cmd === "exec" || cmd === "add" || cmd === "test")) { - filters.push({ filter: `!{${relativeWSDirPath()}}`, followProdDepsOnly: false }); + filters.push({ filter: `{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config.filterProd.length) }); + } else if (!config.includeWorkspaceRoot && (cmd === "run" || cmd === "exec" || cmd === "add" || cmd === "test")) { + filters.push({ filter: `!{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config.filterProd.length) }); } - const filterResults = await filter_workspace_packages_1.filterPackages(allProjects, filters, { + const filterResults = await (0, filter_workspace_packages_1.filterPackagesFromDir)(wsDir, filters, { + engineStrict: config.engineStrict, + patterns: cliOptions["workspace-packages"], linkWorkspacePackages: !!config.linkWorkspacePackages, prefix: process.cwd(), workspaceDir: wsDir, testPattern: config.testPattern, changedFilesIgnorePattern: config.changedFilesIgnorePattern, - useGlobDirFiltering: config.useBetaCli + useGlobDirFiltering: !config.legacyDirFiltering }); + if (filterResults.allProjects.length === 0) { + if (printLogs) { + console.log(`No projects found in "${wsDir}"`); + } + process.exitCode = 0; + return; + } + config.allProjectsGraph = filterResults.allProjectsGraph; config.selectedProjectsGraph = filterResults.selectedProjectsGraph; - if (isEmpty_1.default(config.selectedProjectsGraph)) { - if (!config["parseable"]) { + if ((0, isEmpty_1.default)(config.selectedProjectsGraph)) { + if (printLogs) { console.log(`No projects matched the filters in "${wsDir}"`); } - process.exit(0); + process.exitCode = 0; + return; } - if (filterResults.unmatchedFilters.length !== 0 && !config["parseable"]) { + if (filterResults.unmatchedFilters.length !== 0 && printLogs) { console.log(`No projects matched the filters "${filterResults.unmatchedFilters.join(", ")}" in "${wsDir}"`); } - config.allProjects = allProjects; + config.allProjects = filterResults.allProjects; config.workspaceDir = wsDir; } let { output, exitCode } = await (async () => { - await new Promise((resolve) => setTimeout(() => resolve(), 0)); - if (!is_ci_1.default && !selfUpdate && !config.offline && !config.preferOffline && !config.fallbackCommandUsed) { - checkForUpdates_1.default(config).catch(() => { + await new Promise((resolve) => setTimeout(() => { + resolve(); + }, 0)); + if (config.updateNotifier !== false && !ci_info_1.isCI && !selfUpdate && !config.offline && !config.preferOffline && !config.fallbackCommandUsed && (cmd === "install" || cmd === "add")) { + (0, checkForUpdates_1.checkForUpdates)(config).catch(() => { }); } if (config.force === true && !config.fallbackCommandUsed) { - logger_1.default.warn({ + logger_1.logger.warn({ message: "using --force I sure hope you know what you are doing", prefix: config.dir }); @@ -133730,18 +224946,28 @@ var require_main2 = __commonJS({ if (config.useNodeVersion != null) { const nodePath = await plugin_commands_env_1.node.getNodeBinDir(config); config.extraBinPaths.push(nodePath); - } - let result = cmd_1.default[cmd !== null && cmd !== void 0 ? cmd : "help"](config, cliParams); - if (result instanceof Promise) { - result = await result; - } - if (!result) { + config.nodeVersion = config.useNodeVersion; + } + let result2 = cmd_1.pnpmCmds[cmd ?? "help"]( + // TypeScript doesn't currently infer that the type of config + // is `Omit` after the `delete config.reporter` statement + config, + cliParams + ); + if (result2 instanceof Promise) { + result2 = await result2; + } + core_loggers_1.executionTimeLogger.debug({ + startedAt: global["pnpm__startedAt"], + endedAt: Date.now() + }); + if (!result2) { return { output: null, exitCode: 0 }; } - if (typeof result === "string") { - return { output: result, exitCode: 0 }; + if (typeof result2 === "string") { + return { output: result2, exitCode: 0 }; } - return result; + return result2; })(); if (output) { if (!output.endsWith("\n")) { @@ -133751,15 +224977,15 @@ var require_main2 = __commonJS({ write(output); } if (!cmd) { - process.exit(1); + exitCode = 1; } if (exitCode) { - process.exit(exitCode); + process.exitCode = exitCode; } } - exports2.default = run; + exports2.main = main; function printError(message2, hint) { - console.error(`${chalk_1.default.bgRed.black("\u2009ERROR\u2009")} ${chalk_1.default.red(message2)}`); + console.log(`${chalk_1.default.bgRed.black("\u2009ERROR\u2009")} ${chalk_1.default.red(message2)}`); if (hint) { console.log(hint); } @@ -133767,91 +224993,126 @@ var require_main2 = __commonJS({ } }); +// lib/errorHandler.js +var require_errorHandler = __commonJS({ + "lib/errorHandler.js"(exports2) { + "use strict"; + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.errorHandler = void 0; + var util_1 = require("util"); + var logger_1 = require_lib6(); + var pidtree_1 = __importDefault4(require_pidtree2()); + var main_1 = require_main2(); + var getDescendentProcesses = (0, util_1.promisify)((pid, callback) => { + (0, pidtree_1.default)(pid, { root: false }, callback); + }); + async function errorHandler(error) { + if (error.name != null && error.name !== "pnpm" && !error.name.startsWith("pnpm:")) { + try { + error.name = "pnpm"; + } catch { + } + } + if (!global[main_1.REPORTER_INITIALIZED]) { + console.log(JSON.stringify({ + error: { + code: error.code ?? error.name, + message: error.message + } + }, null, 2)); + process.exitCode = 1; + return; + } + if (global[main_1.REPORTER_INITIALIZED] === "silent") { + process.exitCode = 1; + return; + } + logger_1.logger.error(error, error); + setTimeout(async () => { + await killProcesses(); + }, 0); + } + exports2.errorHandler = errorHandler; + async function killProcesses() { + try { + const descendentProcesses = await getDescendentProcesses(process.pid); + for (const pid of descendentProcesses) { + try { + process.kill(pid); + } catch (err) { + } + } + } catch (err) { + } + process.exit(1); + } + } +}); + // lib/runNpm.js var require_runNpm = __commonJS({ "lib/runNpm.js"(exports2) { "use strict"; - var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar2 = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding2(result, mod, k); - } - __setModuleDefault2(result, mod); - return result; - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { + var __importDefault4 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); - var cli_meta_1 = __importDefault(require_lib4()); - var config_1 = __importStar2(require_lib10()); - var run_npm_1 = __importDefault(require_lib104()); - var pick_1 = __importDefault(require_pick()); - async function run(args2) { - const { config } = await config_1.default({ + exports2.runNpm = void 0; + var cli_meta_1 = require_lib4(); + var config_1 = require_lib21(); + var run_npm_1 = require_lib94(); + var pick_1 = __importDefault4(require_pick()); + async function runNpm(args2) { + const { config } = await (0, config_1.getConfig)({ cliOptions: {}, - packageManager: cli_meta_1.default, + packageManager: cli_meta_1.packageManager, rcOptionsTypes: { - ...pick_1.default([ + ...(0, pick_1.default)([ "npm-path" ], config_1.types) } }); - return run_npm_1.default(config.npmPath, args2); + return (0, run_npm_1.runNpm)(config.npmPath, args2); } - exports2.default = run; + exports2.runNpm = runNpm; } }); // lib/pnpm.js -"use strict"; -var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) { +var __createBinding4 = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) { if (k2 === void 0) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); } : function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); -var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) { +var __setModuleDefault3 = exports && exports.__setModuleDefault || (Object.create ? function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); } : function(o, v) { o["default"] = v; }); -var __importStar = exports && exports.__importStar || function(mod) { +var __importStar4 = exports && exports.__importStar || function(mod) { if (mod && mod.__esModule) return mod; - var result = {}; + var result2 = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); + __createBinding4(result2, mod, k); } - __setModuleDefault(result, mod); - return result; + __setModuleDefault3(result2, mod); + return result2; }; process.setMaxListeners(0); var argv = process.argv.slice(2); @@ -133859,43 +225120,41 @@ var argv = process.argv.slice(2); switch (argv[0]) { case "-v": case "--version": { - const { version } = (await Promise.resolve().then(() => __importStar(require_lib4()))).default; - console.log(version); + const { version: version2 } = (await Promise.resolve().then(() => __importStar4(require_lib4()))).packageManager; + console.log(version2); break; } case "install-completion": { - const { install: installCompletion } = await Promise.resolve().then(() => __importStar(require_lib5())); + const { install: installCompletion } = await Promise.resolve().then(() => __importStar4(require_lib5())); await installCompletion({ name: "pnpm", completer: "pnpm", shell: argv[1] }); return; } case "uninstall-completion": { - const { uninstall: uninstallCompletion } = await Promise.resolve().then(() => __importStar(require_lib5())); + const { uninstall: uninstallCompletion } = await Promise.resolve().then(() => __importStar4(require_lib5())); await uninstallCompletion({ name: "pnpm" }); return; } case "access": case "adduser": case "bugs": - case "c": - case "config": case "deprecate": case "dist-tag": case "docs": case "edit": - case "get": case "info": - case "init": case "login": case "logout": case "owner": case "ping": case "prefix": case "profile": + case "pkg": case "repo": case "s": case "se": case "search": - case "set": + case "set-script": + case "show": case "star": case "stars": case "team": @@ -133915,117 +225174,147 @@ var argv = process.argv.slice(2); } })(); async function runPnpm() { - const errorHandler = (await Promise.resolve().then(() => __importStar(require_err()))).default; + const { errorHandler } = await Promise.resolve().then(() => __importStar4(require_errorHandler())); try { - const main = (await Promise.resolve().then(() => __importStar(require_main2()))).default; + const { main } = await Promise.resolve().then(() => __importStar4(require_main2())); await main(argv); } catch (err) { - errorHandler(err); + await errorHandler(err); } } async function passThruToNpm() { - const runNpm = (await Promise.resolve().then(() => __importStar(require_runNpm()))).default; + const { runNpm } = await Promise.resolve().then(() => __importStar4(require_runNpm())); const { status } = await runNpm(argv); process.exit(status); } -/*! - * @overview es6-promise - a tiny implementation of Promises/A+. - * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) - * @license Licensed under MIT license - * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE - * @version v4.2.8+1e68dce6 - */ -/*! - * depd - * Copyright(c) 2014 Douglas Christopher Wilson - * MIT Licensed - */ -/*! - * depd - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - */ -/*! - * depd - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - */ -/*! - * depd - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - */ -/*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * humanize-ms - index.js - * Copyright(c) 2014 dead_horse - * MIT Licensed - */ -/*! - * is-extglob - * - * Copyright (c) 2014-2016, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-glob - * - * Copyright (c) 2014-2017, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-number - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * is-windows - * - * Copyright © 2015-2018, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * normalize-path - * - * Copyright (c) 2014-2018, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * to-regex-range - * - * Copyright (c) 2015-present, Jon Schlinkert. - * Released under the MIT License. - */ -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ -/*! queue-microtask. MIT License. Feross Aboukhadijeh */ -/*! run-parallel. MIT License. Feross Aboukhadijeh */ -/** - * @preserve - * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013) - * - * @author Jens Taylor - * @see http://github.com/homebrewing/brauhaus-diff - * @author Gary Court - * @see http://github.com/garycourt/murmurhash-js - * @author Austin Appleby - * @see http://sites.google.com/site/murmurhash/ - */ +/*! Bundled license information: + +safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + +imurmurhash/imurmurhash.js: + (** + * @preserve + * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013) + * + * @author Jens Taylor + * @see http://github.com/homebrewing/brauhaus-diff + * @author Gary Court + * @see http://github.com/garycourt/murmurhash-js + * @author Austin Appleby + * @see http://sites.google.com/site/murmurhash/ + *) + +is-windows/index.js: + (*! + * is-windows + * + * Copyright © 2015-2018, Jon Schlinkert. + * Released under the MIT License. + *) + +normalize-path/index.js: + (*! + * normalize-path + * + * Copyright (c) 2014-2018, Jon Schlinkert. + * Released under the MIT License. + *) + +is-extglob/index.js: + (*! + * is-extglob + * + * Copyright (c) 2014-2016, Jon Schlinkert. + * Licensed under the MIT License. + *) + +is-glob/index.js: + (*! + * is-glob + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + *) + +is-number/index.js: + (*! + * is-number + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Released under the MIT License. + *) + +to-regex-range/index.js: + (*! + * to-regex-range + * + * Copyright (c) 2015-present, Jon Schlinkert. + * Released under the MIT License. + *) + +fill-range/index.js: + (*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + *) + +queue-microtask/index.js: + (*! queue-microtask. MIT License. Feross Aboukhadijeh *) + +run-parallel/index.js: + (*! run-parallel. MIT License. Feross Aboukhadijeh *) + +humanize-ms/index.js: + (*! + * humanize-ms - index.js + * Copyright(c) 2014 dead_horse + * MIT Licensed + *) + +depd/lib/compat/callsite-tostring.js: + (*! + * depd + * Copyright(c) 2014 Douglas Christopher Wilson + * MIT Licensed + *) + +depd/lib/compat/event-listener-count.js: + (*! + * depd + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +depd/lib/compat/index.js: + (*! + * depd + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +depd/index.js: + (*! + * depd + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +tslib/tslib.es6.js: + (*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** *) +*/